summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastien Fabbro <bicatali@gentoo.org>2008-09-23 11:01:59 +0000
committerSebastien Fabbro <bicatali@gentoo.org>2008-09-23 11:01:59 +0000
commit3f38701e1d6df62929458cce07e75c0b8761d175 (patch)
treeb9ce049c8407f69eb9053f158aa0eb7faa24f772 /sci-physics/geant
parentStable for HPPA (bug #238000). (diff)
downloadhistorical-3f38701e1d6df62929458cce07e75c0b8761d175.tar.gz
historical-3f38701e1d6df62929458cce07e75c0b8761d175.tar.bz2
historical-3f38701e1d6df62929458cce07e75c0b8761d175.zip
Version bump. Closing bug #238132.
Package-Manager: portage-2.2_rc8/cvs/Linux 2.6.25-gentoo-r7 x86_64
Diffstat (limited to 'sci-physics/geant')
-rw-r--r--sci-physics/geant/ChangeLog8
-rw-r--r--sci-physics/geant/Manifest14
-rw-r--r--sci-physics/geant/geant-4.9.1_p03.ebuild226
3 files changed, 236 insertions, 12 deletions
diff --git a/sci-physics/geant/ChangeLog b/sci-physics/geant/ChangeLog
index 5278074204e7..166b849e205c 100644
--- a/sci-physics/geant/ChangeLog
+++ b/sci-physics/geant/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for sci-physics/geant
# Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sci-physics/geant/ChangeLog,v 1.15 2008/08/06 16:19:10 ulm Exp $
+# $Header: /var/cvsroot/gentoo-x86/sci-physics/geant/ChangeLog,v 1.16 2008/09/23 11:01:59 bicatali Exp $
+
+*geant-4.9.1_p03 (23 Sep 2008)
+
+ 23 Sep 2008; SĂ©bastien Fabbro <bicatali@gentoo.org>
+ +geant-4.9.1_p03.ebuild:
+ Version bump. Closing bug #238132.
06 Aug 2008; Ulrich Mueller <ulm@gentoo.org> metadata.xml:
Add USE flag description to metadata wrt GLEP 56.
diff --git a/sci-physics/geant/Manifest b/sci-physics/geant/Manifest
index f1d100aa8149..2abaa347236a 100644
--- a/sci-physics/geant/Manifest
+++ b/sci-physics/geant/Manifest
@@ -1,6 +1,3 @@
------BEGIN PGP SIGNED MESSAGE-----
-Hash: SHA1
-
DIST G4ABLA.3.0.tar.gz 54909 RMD160 5a032ee8e90d00f39b67114fe257ec47001f347b SHA1 5f38676f1650a508e49d35f9405ac96984388135 SHA256 ff0b77be6b36204eeeba71099f6b7530edd80b79eb015994535bc4334bc821eb
DIST G4EMLOW.5.1.tar.gz 8287134 RMD160 163f76c359bf9d4f8a2eb3d734de50c2b6dc4d72 SHA1 092e27f2befe10f3e4b2f7450d1ba3f9fe0435bb SHA256 b1bebb1a502257ba9d379e6719be7a453b0aa31c9b01d5026866e9bd811c17d9
DIST G4NDL.3.12.tar.gz 54904967 RMD160 5ea321deb3c1ddc8094c3d28457d627cacd6f2f0 SHA1 d42d0835e8921c15902d7aa410f1207edfbd54df SHA256 05a4d74ff1faa8fa3382fbda780ea258b2e4af7e5ae29856d1deaf72b4235290
@@ -9,14 +6,9 @@ DIST PhotonEvaporation.2.0.tar.gz 7506068 RMD160 24d46b08b2ffeca5b3be186baffb650
DIST geant321_3.21.14.dfsg-8.diff.gz 41909 RMD160 4edbe5d3dd93a78198fa2d2d83770c8b85eee4de SHA1 39f48c4263f543b74eee6095c11f5ade9798f253 SHA256 785277dab1e1d3e17d60c85f3826bc67bbd6de7e6a6d40ff7af901371c4d2ce1
DIST geant321_3.21.14.dfsg.orig.tar.gz 10922928 RMD160 253b35bd9cda82c2213ec042274f7e6ff6b9e333 SHA1 ae6f39ccc18eacd576a3493992db5da3b3d3b128 SHA256 186fe98a08ad1de39f68698a09a46e7c2f14c37b22f8f990257b0bd66215c5b4
DIST geant4.9.1.p02.tar.gz 17538957 RMD160 284c8bc5f7786fda50c8c5954bdf8dea2aace2e5 SHA1 216b705635c838e0d86878953b82525ba9b9ed51 SHA256 0c8c0a5c2e091edd658637d38dea1fa3879493df7ad008cd9d88138758c9402d
+DIST geant4.9.1.p03.tar.gz 17582985 RMD160 ff2d24b65f19809992e3254e8069c35bbc7f0159 SHA1 970f5afd8e649faaa71d400b748f62224f538d34 SHA256 d791b7aa9da983af4f06f3f271574df0d3a01102c5584469bdabd9675be3ad33
EBUILD geant-3.21.14-r2.ebuild 1878 RMD160 898e60bbacea833a3e59e1ef33c30c8874320fba SHA1 25fd7be7e6943f01fb9dc1afa23c33b287caceaa SHA256 ed1d7b84a70306d49bb697723264339cd1de02bc7d1da173f4d35bb69395d602
EBUILD geant-4.9.1_p02.ebuild 6848 RMD160 a5c9bea73a6b55bf97507c7daaa82eb5eeedec81 SHA1 660cd12349cb23b8640818b103858ef635877f6d SHA256 1949551774deecfb8b6462e7cb430577b31b20163d5592115731e6d866de5e8f
-MISC ChangeLog 2897 RMD160 de670afedb92e9f78b6d6f0a4716f5271e8e8117 SHA1 e2b51b5cb8b96fbc71c570a259dac255bc5a3107 SHA256 e306cb50cd2b9d84acb965ab819a95856281ef1c249ab0216484938f9d8a284e
+EBUILD geant-4.9.1_p03.ebuild 6848 RMD160 70296cc92319dc3b7ffc675335f56e17a74bab2b SHA1 098eb2e25f5f895a0157fb4a3b8e1bcf5688fc1c SHA256 38d3fe15c6d77db6083055d4ca0557521410ef6e00803e822f5d06218fd27b97
+MISC ChangeLog 3054 RMD160 e4f96fd5548d4de7a940ad89b5cd093ce44e3676 SHA1 1f10da61fae36334e78193b07bf2468699a41043 SHA256 df4472754eb09cd07e3bc18e3d36544e08b508a1906dc6efabb3cd5575e43a7f
MISC metadata.xml 1398 RMD160 b6c91f04fffa3b84c1b680944363dd49bf34c8f9 SHA1 b56fe0e1425e823d63054db467c2d543d0386046 SHA256 666fb94f71ea2aa76ed69003fe3d374c0ac89f3c6dda33910e470a99d667d323
------BEGIN PGP SIGNATURE-----
-Version: GnuPG v1.4.9 (GNU/Linux)
-
-iEYEARECAAYFAkiZzw8ACgkQOeoy/oIi7uyAmACfSqRJuR922ycSoj66oVbtQ1+U
-AJoAmwQFYoSxSt4ROAiPVyPyysfd4aDY
-=5ZBs
------END PGP SIGNATURE-----
diff --git a/sci-physics/geant/geant-4.9.1_p03.ebuild b/sci-physics/geant/geant-4.9.1_p03.ebuild
new file mode 100644
index 000000000000..54bb33a2dbae
--- /dev/null
+++ b/sci-physics/geant/geant-4.9.1_p03.ebuild
@@ -0,0 +1,226 @@
+# Copyright 1999-2008 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sci-physics/geant/geant-4.9.1_p03.ebuild,v 1.1 2008/09/23 11:01:59 bicatali Exp $
+
+EAPI="1"
+
+inherit eutils fortran multilib versionator toolchain-funcs
+
+PV1=$(get_version_component_range 1 ${PV})
+PV2=$(get_version_component_range 2 ${PV})
+PV3=$(get_version_component_range 3 ${PV})
+MY_P=${PN}$(replace_version_separator 3 .)
+
+DESCRIPTION="CERN's detector description and simulation Tool"
+HOMEPAGE="http://www.geant4.org/"
+
+SRC_COM="http://geant4.web.cern.ch/geant4/support/source"
+SRC_URI="${SRC_COM}/${MY_P}.tar.gz"
+GEANT4_DATA="G4NDL.3.12
+ G4EMLOW.5.1
+ G4RadioactiveDecay.3.2
+ PhotonEvaporation.2.0
+ G4ABLA.3.0"
+for d in ${GEANT4_DATA}; do
+ SRC_URI="${SRC_URI} data? ( ${SRC_COM}/${d}.tar.gz )"
+done
+
+LICENSE="geant4"
+SLOT="4"
+KEYWORDS="~amd64 ~hppa ~sparc ~x86"
+IUSE="athena +data dawn debug examples gdml geant3 global minimal +motif
+ +opengl openinventor +raytracerx static +vrml zlib"
+
+DEPEND="sci-physics/clhep
+ motif? ( x11-libs/openmotif )
+ athena? ( x11-libs/libXaw )
+ openinventor? ( media-libs/openinventor )
+ raytracerx? ( x11-libs/libX11 x11-libs/libXmu )
+ opengl? ( virtual/opengl
+ athena? ( x11-libs/Xaw3d ) )
+ gdml? ( dev-libs/xerces-c )
+ geant3? ( sci-physics/geant:3 )
+ dawn? ( media-gfx/dawn )"
+
+S="${WORKDIR}/${MY_P}"
+
+pkg_setup() {
+ FORTRAN="gfortran g77 ifc"
+ use geant3 && fortran_pkg_setup
+ eval unset ${!G4*}
+}
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+
+ # propagate user's flags.
+ sed -i \
+ -e "/CXXFLAGS[[:space:]]*.=[[:space:]]-O2/s:=.*:= ${CXXFLAGS}:" \
+ -e "/FCFLAGS[[:space:]]*.=[[:space:]]-O2/s:=.*:= ${FFLAGS:--O2}:" \
+ -e "/CCFLAGS[[:space:]]*.=[[:space:]]-O2/s:=.*:= ${CFLAGS}:" \
+ config/sys/Linux*gmk || die "flag substitution failed"
+
+ # fix forced lib directory
+ sed -i \
+ -e 's:$(G4LIB)/$(G4SYSTEM):$(G4LIB):g' \
+ config/binmake.gmk || die "sed binmake.gmk failed"
+ sed -i \
+ -e '/$(G4LIB)\/$(G4SYSTEM)/d' \
+ config/architecture.gmk || die "sed architecture.gmk failed"
+ sed -i \
+ -e 's:$(G4LIB)/$(G4SYSTEM):$(G4TMP):g' \
+ config/common.gmk || die "sed common.gmk failed"
+ sed -i \
+ -e 's:$(G4LIB)/$(G4SYSTEM):$(G4TMP):g' \
+ -e 's:$(G4BIN)/$(G4SYSTEM):$(G4TMP):g' \
+ -e 's:$(G4TMP)/$(G4SYSTEM):$(G4TMP):g' \
+ source/GNUmakefile || die "sed GNUmakefile failed"
+ sed -i \
+ -e 's:$(G4LIB)/$(G4SYSTEM):$(G4TMP):g' \
+ config/globlib.gmk || die "sed globlib.gmk failed"
+}
+
+src_compile() {
+ export GEANT4_DIR="/usr/share/${PN}${PV1}"
+ # where to put compiled libraries;
+ # we set env var G4LIB in src_install()
+ # to avoid confusing make
+ export GEANT4_LIBDIR=/usr/$(get_libdir)/${PN}${PV1}
+
+ # these should always to be set
+ [[ $(tc-getCXX) = ic*c ]] && export G4SYSTEM=Linux-icc \
+ || export G4SYSTEM=Linux-g++
+ export G4INSTALL="${S}"
+ export G4INCLUDE="${D}/usr/include/${PN}"
+ export CLHEP_BASE_DIR=/usr
+
+ # parse USE; just set flags of drivers to build, G4*_USE_* vars are set
+ # later automatically for G4*_BUILD_*_DRIVER
+ use minimal && export G4UI_NONE=y \
+ && export G4VIS_NONE=y
+
+ use motif && export G4UI_BUILD_XM_SESSION=y
+ use athena && export G4UI_BUILD_XAW_SESSION=y
+
+ use dawn && export G4VIS_BUILD_DAWN_DRIVER=y
+ use raytracerx && export G4VIS_BUILD_RAYTRACERX_DRIVER=y
+ use openinventor && export G4VIS_BUILD_OI_DRIVER=y
+ use opengl && export G4VIS_BUILD_OPENGLX_DRIVER=y
+ use opengl && use motif && export G4VIS_BUILD_OPENGLXM_DRIVER=y
+
+ use geant3 && export G4LIB_BUILD_G3TOG4=y
+ use zlib && export G4LIB_BUILD_ZLIB=y
+ use vrml && export G4VIS_BUILD_VRML_DRIVER=y \
+ && export G4VIS_BUILD_VRMLFILE_DRIVER=y
+
+ use data && export G4DATA="${GEANT4_DIR}/data"
+ use debug && export G4DEBUG=y || export G4OPTIMIZE=y
+
+ # switch to see compiling flags
+ export CPPVERBOSE=y
+
+ # if shared libs are built, the script will also build static libs
+ # with pic flags
+ # avoid that by building it twice and removing temporary objects
+ cd "${S}/source/"
+ export G4LIB_BUILD_SHARED=y
+ emake || die "Building shared geant failed"
+
+ if use global; then
+ export G4LIB_USE_GRANULAR=y
+ emake global || die "Building global libraries failed"
+ emake || die "Rebuilding shared geant failed"
+ fi
+
+ if use static; then
+ rm -rf tmp
+ export G4LIB_BUILD_STATIC=y ; unset G4LIB_BUILD_SHARED
+ emake || die "Building static geant failed"
+ fi
+}
+
+g4_create_env_script() {
+ # we need to change some variables to the final values since we hide these
+ # from make during the compile
+ export G4INSTALL=${GEANT4_DIR}
+ export G4LIB=${GEANT4_LIBDIR}
+ export G4INCLUDE=${G4INCLUDE/${D}/}
+ export G4WORKDIR=\${HOME}/${PN}${PV1}
+
+ local g4env=99${PN}${PV1}
+ cat <<-EOF > ${g4env}
+ LDPATH=${G4LIB}
+ CLHEP_BASE_DIR=${CLHEP_BASE_DIR}
+ EOF
+
+ # detailed data file locations
+ if $(use data); then
+ export G4LEVELGAMMADATA="${G4DATA}/PhotonEvaporation2.0"
+ export G4RADIOACTIVEDATA="${G4DATA}/RadioactiveDecay3.2"
+ export G4LEDATA="${G4DATA}/G4EMLOW5.1"
+ export G4NEUTRONHPCROSSSECTIONS="${G4DATA}/G4NDL3.12"
+ fi
+
+ # read env variables defined upto now
+ printenv | grep ^G4 | uniq >> ${g4env}
+ # define env vars for capabilities we can build into user projects
+ printenv | uniq | \
+ sed -n -e '/^G4/s:BUILD\(.*\)_DRIVER:USE\1:gp' >> ${g4env}
+ doenvd ${g4env} || die "Installing environment scripts failed "
+}
+
+src_install() {
+ # install headers via make since we want them in a single directory
+ cd "${S}/source/"
+ einfo "Installing Geant4 headers"
+ emake includes || die 'Installing headers failed'
+ cd "${S}"
+
+ # but install libraries and Geant library tool manually
+ einfo "Installing Geant4 libraries"
+ insinto ${GEANT4_LIBDIR}
+ doins tmp/*.so || die
+ doins tmp/libname.map || die
+ if use static; then
+ doins tmp/*.a || die
+ fi
+ exeinto ${GEANT4_LIBDIR}
+ doexe tmp/liblist || die
+
+ g4_create_env_script
+
+ # configs
+ insinto ${GEANT4_DIR}
+ doins -r config || die
+
+ # install data
+ if use data; then
+ einfo "Installing Geant4 data"
+ insinto ${G4DATA}
+ pushd "${WORKDIR}" > /dev/null
+ for d in ${GEANT4_DATA}; do
+ local p=${d/.}
+ doins -r *${p/G4} || die "installing data ${d} failed"
+ done
+ popd > /dev/null
+ fi
+
+ # doc and examples
+ insinto /usr/share/doc/${PF}
+ local mypv="${PV1}.${PV2}.${PV3}"
+ doins ReleaseNotes/ReleaseNotes${mypv}.html
+ [[ -e ReleaseNotes/Patch${mypv}-1.txt ]] && \
+ dodoc ReleaseNotes/Patch${mypv}-*.txt
+
+ use examples && doins -r examples
+
+ # TODO: g4py will probably need a split ebuild since it seems to
+ # rely on on geant4 existence.
+ # TODO: momo with momo or java flag, and check java stuff
+}
+
+pkg_postinst() {
+ elog "Geant4 projects are by default build in \$HOME/geant4."
+ elog "If you want to change, set \$G4WORKDIR to another directory."
+}