summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorFilippo Falezza2023-01-19 09:57:41 +0100
committerFilippo Falezza2023-01-19 09:57:41 +0100
commit2b0b987d87effac0fc24d95e37cde83d0ee0ca20 (patch)
treed95d53f079614b2925219064e4b37026b0d342dc
downloadaur-2b0b987d87effac0fc24d95e37cde83d0ee0ca20.tar.gz
initial pkgbuild - v11.0.0 compativle with Geant4 v11.1.0
-rw-r--r--.SRCINFO20
-rw-r--r--Geant4Config_cmake.patch15
-rw-r--r--PKGBUILD53
-rw-r--r--config_cmake.patch25
-rw-r--r--g4python.install9
5 files changed, 122 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..55000c0cbe34
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,20 @@
+pkgbase = g4python-git
+ pkgdesc = Geant4 python Bindings
+ pkgver = 11.0.0
+ pkgrel = 1
+ install = g4python.install
+ arch = x86_64
+ makedepends = cmake
+ depends = pybind11
+ depends = geant4
+ provides = g4python
+ source = g4python-git::git+https://github.com/koichi-murakami/g4python.git
+ source = g4python.install
+ source = Geant4Config_cmake.patch
+ source = config_cmake.patch
+ sha256sums = SKIP
+ sha256sums = 34c4d158305d85a9408bf15683557395a250019e653a5e7f740992be50b950d4
+ sha256sums = d1fc6a1fc5716ba915ad8a88b1505557cf34dff54db40fbf1d4e145814c4d38b
+ sha256sums = c8731e74b01d563ba23cfa7b68097af17d944917a4c7f8eb804612ab608c43ae
+
+pkgname = g4python-git
diff --git a/Geant4Config_cmake.patch b/Geant4Config_cmake.patch
new file mode 100644
index 000000000000..67e994272c74
--- /dev/null
+++ b/Geant4Config_cmake.patch
@@ -0,0 +1,15 @@
+--- Geant4Config.cmake 2023-01-17 16:44:10.219109803 +0100
++++ Geant4Config_new.cmake 2023-01-17 16:38:30.956894149 +0100
+@@ -72,9 +72,9 @@
+ G4RayTracer G4VRML G4vis_management G4modeling
+ G4interfaces G4persistency G4analysis
+ G4error_propagation G4readout G4physicslists
+- G4tasking G4run G4event G4tracking G4parmodels
++ G4run G4event G4parmodels
+ G4processes G4digits_hits G4track G4particles
+ G4geometry G4materials G4graphics_reps G4intercoms
+- G4global G4ptl G4clhep G4zlib)
++ G4global G4ptl G4clhep)
+
+-set(GEANT4_LIBRARIES_WITH_OGL G4OpenGL G4gl2ps ${GEANT4_LIBRARIES})
++set(GEANT4_LIBRARIES_WITH_OGL G4OpenGL ${GEANT4_LIBRARIES})
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..40a7b5c91b8d
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,53 @@
+# Maintainer: Filippo Falezza <filippo dot falezza at outlook dot it>
+
+pkgname='g4python-git'
+pkgrel=1
+pkgver=11.0.0
+pkgdesc="Geant4 python Bindings"
+depends=('pybind11' 'geant4')
+makedepends=('cmake')
+provides=('g4python')
+arch=('x86_64')
+source=(
+ "$pkgname"::"git+https://github.com/koichi-murakami/g4python.git"
+ "g4python.install"
+ "Geant4Config_cmake.patch"
+ "config_cmake.patch"
+)
+sha256sums=(
+ 'SKIP'
+ '34c4d158305d85a9408bf15683557395a250019e653a5e7f740992be50b950d4'
+ 'd1fc6a1fc5716ba915ad8a88b1505557cf34dff54db40fbf1d4e145814c4d38b'
+ 'c8731e74b01d563ba23cfa7b68097af17d944917a4c7f8eb804612ab608c43ae'
+ )
+install=g4python.install
+# The GIT repository does not have tags, but the last version there is 11.0.0
+#
+#pkgver() {
+# cd "$pkgname"
+# git describe --long | sed 's/\([^-]*-g\)/r\1/;s/-/./g'
+#}
+
+build() {
+ cd ${srcdir}
+ echo "
+export PYTHONPATH=/opt/Geant4/geant4py-11.0.0/site-packages" > g4python.sh
+
+cd ${srcdir}/g4python-git
+ patch config.cmake < ${srcdir}/config_cmake.patch
+
+ cd ${srcdir}/g4python-git/cmake
+ patch Geant4Config.cmake < ${srcdir}/Geant4Config_cmake.patch
+
+}
+
+package() {
+ [ -d ${srcdir}/build ] || mkdir ${srcdir}/build
+ cd ${srcdir}/build
+ cmake ../g4python-git -DGEANT4_LIBRARY_DIR=/opt/Geant4/Geant4-v11.1.0/lib -DCMAKE_INSTALL_PREFIX=${pkgdir}/opt/Geant4/geant4py-${pkgver}
+ make
+ make install prefix=${pkgdir}/opt/Geant4/geant4py-${pkgver}
+
+ cd ${srcdir}
+ install -D -m 755 g4python.sh $pkgdir/etc/profile.d/g4python.sh
+}
diff --git a/config_cmake.patch b/config_cmake.patch
new file mode 100644
index 000000000000..4101b9d71097
--- /dev/null
+++ b/config_cmake.patch
@@ -0,0 +1,25 @@
+--- config.cmake 2023-01-17 16:44:51.915732371 +0100
++++ config_new.cmake 2023-01-17 14:13:37.911503681 +0100
+@@ -6,19 +6,15 @@
+ #==============================================================================
+ # Installation prefixes
+ if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
+- set(CMAKE_INSTALL_PREFIX $ENV{HOME}/opt/geant4/geant4py-11.0.0
++ set(CMAKE_INSTALL_PREFIX /opt/Geant4/geant4py-11.0.0
+ CACHE PATH "Install prefix" FORCE)
+ endif()
+
+ # Geant4 installation path
+-set(GEANT4_INSTALL $ENV{HOME}/opt/geant4/11.0
++set(GEANT4_INSTALL /opt/Geant4/Geant4-v11.1.0
+ CACHE STRING "Geant4 installation path")
+
+ # Pybind11 cmake files location
+ # Mac Homebrew
+-set(pybind11_DIR /opt/homebrew/share/cmake/pybind11
++set(pybind11_DIR /usr/lib/cmake/pybind11/
+ CACHE STRING "Pybind11 search path")
+-
+-# alternaive pybind11 path
+-#set(pybind11_DIR /opt/pybind11/share/cmake/pybind11
+-# CACHE STRING "Pybind11 search path")
diff --git a/g4python.install b/g4python.install
new file mode 100644
index 000000000000..df2fab2db98f
--- /dev/null
+++ b/g4python.install
@@ -0,0 +1,9 @@
+#!/bin/bash
+post_install(){
+echo "Please remember to preload libG4run.so before use"
+echo "export LD_PRELOAD=libG4run.so"
+}
+post_upgrade(){
+echo "Please remember to preload libG4run.so before use"
+echo "export LD_PRELOAD=libG4run.so"
+}