summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBenda XU <heroxbd@gentoo.org>2013-12-20 06:09:22 +0000
committerBenda XU <heroxbd@gentoo.org>2013-12-20 06:09:22 +0000
commit03f5957740a9ba4a601f95fa03d446eebeb805e8 (patch)
tree7e3cb52e8301b906f055a953b8f0f5e4f5c75441 /sci-physics
parentversion bump (diff)
downloadgentoo-2-03f5957740a9ba4a601f95fa03d446eebeb805e8.tar.gz
gentoo-2-03f5957740a9ba4a601f95fa03d446eebeb805e8.tar.bz2
gentoo-2-03f5957740a9ba4a601f95fa03d446eebeb805e8.zip
version bump
(Portage version: 2.2.7/cvs/Linux x86_64, unsigned Manifest commit)
Diffstat (limited to 'sci-physics')
-rw-r--r--sci-physics/geant-python/ChangeLog9
-rw-r--r--sci-physics/geant-python/files/geant-python-4.10.0-config.patch27
-rw-r--r--sci-physics/geant-python/files/geant-python-4.10.0-polycone.patch15
-rw-r--r--sci-physics/geant-python/geant-python-4.10.00.ebuild122
4 files changed, 172 insertions, 1 deletions
diff --git a/sci-physics/geant-python/ChangeLog b/sci-physics/geant-python/ChangeLog
index 60274c3e136e..96bcb6f596d7 100644
--- a/sci-physics/geant-python/ChangeLog
+++ b/sci-physics/geant-python/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for sci-physics/geant-python
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sci-physics/geant-python/ChangeLog,v 1.10 2013/09/05 19:44:53 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/sci-physics/geant-python/ChangeLog,v 1.11 2013/12/20 06:09:22 heroxbd Exp $
+
+*geant-python-4.10.00 (20 Dec 2013)
+
+ 20 Dec 2013; Benda Xu <heroxbd@gentoo.org>
+ +files/geant-python-4.10.0-config.patch,
+ +files/geant-python-4.10.0-polycone.patch, +geant-python-4.10.00.ebuild:
+ version bump
05 Sep 2013; Michał Górny <mgorny@gentoo.org> geant-python-4.9.6_p02.ebuild:
Clean up PYTHON_COMPAT from old implementations.
diff --git a/sci-physics/geant-python/files/geant-python-4.10.0-config.patch b/sci-physics/geant-python/files/geant-python-4.10.0-config.patch
new file mode 100644
index 000000000000..50f4dabb43c3
--- /dev/null
+++ b/sci-physics/geant-python/files/geant-python-4.10.0-config.patch
@@ -0,0 +1,27 @@
+do not hard code PATH; QGSP.hh is renamed to G4QGSParticipants.hh in geant-4.10
+
+http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1545
+http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1546
+Index: g4py/configure
+===================================================================
+--- g4py.orig/configure
++++ g4py/configure
+@@ -4,9 +4,6 @@
+ # ======================================================================
+ export LANG=C
+
+-PATH=/bin:/usr/bin
+-export PATH
+-
+ # ======================================================================
+ # testing the echo features
+ # ======================================================================
+@@ -377,7 +374,7 @@ fi
+
+ # ---
+ echo $ac_n "Checking for physics list support ...$ac_c"
+-if [ -f "$g4_incdir"/QGSP.hh ]; then
++if [ -f "$g4_incdir"/G4QGSParticipants.hh ]; then
+ enable_physicslist=1
+ fi
+ if [ $enable_physicslist = 0 ]; then
diff --git a/sci-physics/geant-python/files/geant-python-4.10.0-polycone.patch b/sci-physics/geant-python/files/geant-python-4.10.0-polycone.patch
new file mode 100644
index 000000000000..492e4700ac4f
--- /dev/null
+++ b/sci-physics/geant-python/files/geant-python-4.10.0-polycone.patch
@@ -0,0 +1,15 @@
+polycone API has been changed.
+
+http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1544
+Index: g4py/source/geometry/pyG4Polycone.cc
+===================================================================
+--- g4py.orig/source/geometry/pyG4Polycone.cc
++++ g4py/source/geometry/pyG4Polycone.cc
+@@ -96,7 +96,6 @@ void export_G4Polycone()
+ .def("GetStartPhi", &G4Polycone::GetStartPhi)
+ .def("GetEndPhi", &G4Polycone::GetEndPhi)
+ .def("IsOpen", &G4Polycone::IsOpen)
+- .def("IsGeneric", &G4Polycone::IsGeneric)
+ .def("GetNumRZCorner", &G4Polycone::GetNumRZCorner)
+
+ // operators
diff --git a/sci-physics/geant-python/geant-python-4.10.00.ebuild b/sci-physics/geant-python/geant-python-4.10.00.ebuild
new file mode 100644
index 000000000000..ac84b3f91060
--- /dev/null
+++ b/sci-physics/geant-python/geant-python-4.10.00.ebuild
@@ -0,0 +1,122 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sci-physics/geant-python/geant-python-4.10.00.ebuild,v 1.1 2013/12/20 06:09:22 heroxbd Exp $
+
+EAPI=5
+
+PYTHON_COMPAT=( python{2_6,2_7,3_2,3_3} )
+
+inherit python-r1 versionator multilib eutils
+
+MYP="geant$(replace_version_separator 3 .)"
+
+DESCRIPTION="Python bindings for Geant4"
+HOMEPAGE="http://geant4.cern.ch/"
+SRC_URI="http://geant4.cern.ch/support/source/${MYP}.tar.gz"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+
+LICENSE="geant4"
+SLOT="0"
+IUSE="examples"
+
+RDEPEND="
+ ${PYTHON_DEPS}
+ dev-libs/boost[${PYTHON_USEDEP}]
+ dev-libs/xerces-c
+ =sci-physics/geant-${PV}*"
+DEPEND="${RDEPEND}"
+
+S="${WORKDIR}/${MYP}/environments/g4py"
+
+pkg_setup() {
+ if use amd64; then
+ ARG=linux64
+ elif use x86; then
+ ARG=linux
+ else
+ die "platform unknown"
+ fi
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-4.9.5-visverbose.patch
+ epatch "${FILESDIR}"/${PN}-4.10.0-config.patch
+ epatch "${FILESDIR}"/${PN}-4.10.0-polycone.patch
+ sed -i -e "s/lib64/$(get_libdir)/g" configure || die
+ sed -i -e 's/-lG4clhep/-lCLHEP/g' config/g4py.gmk || die
+ # respect user toolchain and flags
+ sed -i \
+ -e '/^CXX.*:=/d' \
+ -e '/CXXFLAGS/s/-f\(template-depth-255\|inline-functions\|permissive\)//g' \
+ -e "/CXXFLAGS/s/-O2/${CXXFLAGS}/g" \
+ -e '/^rpathflag/s|:\($(rpath.)\)| -Wl,-rpath,\1 |g' \
+ -e "s/\$(rpathflag)/\$(LDFLAGS) \$(rpathflag)/g" \
+ config/sys/linux* || die
+ python_copy_sources
+
+ run_sed() {
+ sed -i -e "s/\(python_exe=\)python/\1${EPYTHON}/" configure || die
+ [[ ${EPYTHON} == python3* ]] && sed -i -e "s/with_python3=0/with_python3=1/" configure
+ # let Geant4 module installed into python sitedir instead of default
+ sed -i \
+ -e "/G4PY_LIBDIR :=/cG4PY_LIBDIR := $\(DESTDIR\)$(python_get_sitedir)/Geant4" \
+ config/install.gmk || die "sed failed on config/install.gmk"
+
+ local mfile
+ for mfile in source/python{3,}/GNUmakefile
+ do
+ sed -i \
+ -e "/install_dir :=/cinstall_dir := $\(DESTDIR\)$(python_get_sitedir)/Geant4" \
+ "${mfile}" || die "sed failed on ${mfile}"
+ done
+
+ # let g4py module installed into python sitedir instead of default
+ sed -i \
+ -e "/install_dir :=/cinstall_dir := $\(DESTDIR\)$(python_get_sitedir)/g4py" \
+ config/site-install.gmk || die "sed failed on config/site-install.gmk"
+ for mfile in {processes/emcalculator,utils/MCScore}/{python3/,}GNUmakefile python/GNUmakefile
+ do
+ sed -i \
+ -e "/install_dir :=/cinstall_dir := $\(DESTDIR\)$(python_get_sitedir)/g4py" \
+ "site-modules/${mfile}" || die "sed failed on site-modules/${mfile}"
+ done
+
+ }
+ python_foreach_impl run_in_build_dir run_sed
+}
+
+src_configure() {
+ run_configure() {
+ # not the autotools configure
+ ./configure ${ARG} \
+ --prefix="${EPREFIX}/usr" \
+ --with-g4install-dir="${EPREFIX}/usr" \
+ --with-python-incdir="$(python_get_includedir)" \
+ --with-python-libdir="${EPREFIX}/usr/$(get_libdir)" \
+ --with-boost-incdir="${EPREFIX}/usr/include" \
+ --with-boost-libdir="${EPREFIX}/usr/$(get_libdir)" \
+ --with-boost-python-lib="boost_python-${EPYTHON#python}" \
+ --with-xercesc-incdir="${EPREFIX}/usr/include" \
+ --with-xercesc-libdir="${EPREFIX}/usr/$(get_libdir)" \
+ || die "configure failed"
+ }
+ python_foreach_impl run_in_build_dir run_configure
+}
+
+src_compile() {
+ python_foreach_impl run_in_build_dir emake CPPVERBOSE=1
+}
+
+src_test() {
+ run_test() {
+ emake -C tests
+ }
+ python_foreach_impl run_in_build_dir run_test
+}
+
+src_install() {
+ python_foreach_impl run_in_build_dir emake DESTDIR="${D}" install
+ dodoc README.md History
+ insinto /usr/share/doc/${PF}
+ use examples && doins -r examples
+}