diff options
author | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 13:49:04 -0700 |
---|---|---|
committer | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 17:38:18 -0700 |
commit | 56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch) | |
tree | 3f91093cdb475e565ae857f1c5a7fd339e2d781e /sci-physics/pythia | |
download | gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2 gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip |
proj/gentoo: Initial commit
This commit represents a new era for Gentoo:
Storing the gentoo-x86 tree in Git, as converted from CVS.
This commit is the start of the NEW history.
Any historical data is intended to be grafted onto this point.
Creation process:
1. Take final CVS checkout snapshot
2. Remove ALL ChangeLog* files
3. Transform all Manifests to thin
4. Remove empty Manifests
5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$
5.1. Do not touch files with -kb/-ko keyword flags.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests
X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project
X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration
X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn
X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts
X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration
X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging
X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'sci-physics/pythia')
-rw-r--r-- | sci-physics/pythia/Manifest | 13 | ||||
-rw-r--r-- | sci-physics/pythia/files/pythia8209-root-noninteractive.patch | 17 | ||||
-rw-r--r-- | sci-physics/pythia/files/pythia8209-run-tests.patch | 20 | ||||
-rw-r--r-- | sci-physics/pythia/metadata.xml | 22 | ||||
-rw-r--r-- | sci-physics/pythia/pythia-6.4.28.ebuild | 68 | ||||
-rw-r--r-- | sci-physics/pythia/pythia-8.1.86-r1.ebuild | 101 | ||||
-rw-r--r-- | sci-physics/pythia/pythia-8.1.86.ebuild | 101 | ||||
-rw-r--r-- | sci-physics/pythia/pythia-8.2.10.ebuild | 184 |
8 files changed, 526 insertions, 0 deletions
diff --git a/sci-physics/pythia/Manifest b/sci-physics/pythia/Manifest new file mode 100644 index 000000000000..32765731149b --- /dev/null +++ b/sci-physics/pythia/Manifest @@ -0,0 +1,13 @@ +DIST CT10.tar.gz 10246366 SHA256 bcef4600c5af42d6b151b60e29297609e3604f02f5e80f8ec7767a22b185f49d SHA512 90406bd102ab54b683fa3e6f3fc759febea2454a0b96c6a8d373cdec297f5d652097057a015c7d87241792ed9b5d9ac658a33155cdd7362f59110f8f06ecce73 WHIRLPOOL a433983f9938d848a0b23f94195c41a3caf2a4a131f225f8ec27b43d7ca88761e302ed7968c66492b1fee7288e921aa7a40644833d90eeb66a139a8524553003 +DIST MRST2004qed.tar.gz 185079 SHA256 f043f5385d828523169458c01e2d82767468002789ad792d3543efacc4fcb9cd SHA512 404aacf0e241f572cc42ad4cf963deef1acd3d365fa68cfa3518878f921858046377ea39caf663fdced2cdde07af2f6ce695737f7fea229489df3d3f38283c95 WHIRLPOOL 1eb5a8c5a63005b1087ad5b39faf5ba928071ca1edb3aa9e957b43b0a32a3ddb252b75c5fd30f2e364f628583834febc6ff14984b832f2916ad06a2fcdf0d77d +DIST MRST2007lomod.tar.gz 56685 SHA256 26533c463c17c96c467d40a0aa5603bbe657f986e05154e90782aac43f34598d SHA512 8e55627a01c85d90a62e4fb11b115c2faac2220479b6d558d3d6f1b801fc5c3e88abc377cd5437ccaeedd34b2ca42d6e833014566b796e5e1eebcf4d620e5dc0 WHIRLPOOL 16dfc110168fb3d865f3e743b4a8ce5e5995496fee53a286e82c647eff5afb7072e9d1ef8c940408c4a8184e5a9f7a190f9deea26e1b7bf227c1e5d6eaa3ff77 +DIST NNPDF23_nlo_as_0119_qed_mc.tar.gz 25223180 SHA256 61e36f3aec29e7b38d161a4ebc4978032e5e1f7af70764f6726cabdbac6283b1 SHA512 fc6998d50a61bbe65eef827021c0f453164795c079daef6a4932f825f8db4ae318bbf0e8781b61f1d3ffa9a495b5c4813af3aa31c77694657a44356d93fa970f WHIRLPOOL 31fe0ba55fac9d032441dc955a2117d42d2ab1cc697567e4b9350c4c1866982036178378a9ddeb5416ef1c2712e54cbba32dac4260fff0de07d7fc8c3a2b339d +DIST NNPDF23_nnlo_as_0119_qed_mc.tar.gz 28940412 SHA256 4f9598322452856e165ea419ef878bb9b5d8284933cef896b7bc339d1f8ae728 SHA512 5088c30acbd1da4e412ba9f6a997ceaa34f426f41c7ebacaf4d2e8aa49b8b45052913e8d873b293d9f140c01e82c05735b66dd527a9aa124b86f73bf5e4d8c53 WHIRLPOOL 1845bb1dbd7b23389fa45af43517e36abc941d6beb2fc650462e1ef875781d0ab40186ae4f4ddfc0ed6d819be056dd11fd63e2bdf02ae1d9365892476415235c +DIST cteq66.tar.gz 8647237 SHA256 1e1987c3b844d06bac8c205544ea1613515de2965e7e5565892acf37984a2626 SHA512 25d0fa01dcdb59d71c7092367af8258471a2bc6dfd146766cc79f90ffb0feafa0f2011d0a37a7d75315c10ba7c7a6e3fa583d9c0a28119b072228ac800294e48 WHIRLPOOL a8c34f0242fd6a2986484bf60793604a07ad0356b1fabb6350289afd4655f2eeb1953d0e558440b94ed30a7af4cd5d58d9fc07f3f06a72c3f3381094b8036321 +DIST cteq6l1.tar.gz 317834 SHA256 57c9c99d7b83c8ed1ca70480a0ec7bf2183bfa1bd9276a0e146772c5cf3bb5ac SHA512 7177608e97077eaf45a292db4ea74eb9a28b4b500ab8be02098b4837a5583cd397828abc3bf43ead448926eaa75ae3968bd059ecde333d90ed6e4295cbe1873c WHIRLPOOL cb0fff30e96dbcda1ac76550968bda22872d249d6fe14f31060aef5d1913b314365b933fb2bc57676ac5578f39ed3824cce2cd657086b4a92aa4d6e4ce037239 +DIST lutp0613man2.pdf 2902047 SHA256 03d637310ea80f0d7aea761492bd38452c602890d8cf913a1ec9edacd79fa43d SHA512 a8439b3b150b6f3924d4d3671a4fad6a815c374b1f46060072ca6c1faa797a2f73f8727920aaa7ae885c4f6f135c8d8f94d43e518cfe25271bb95652112def58 WHIRLPOOL dd74046a145264653efdc1f96c330a0aa1e71b72578f32b114d9041c6a50e6e03aa5b3e028ab737afa01d9f3fc9928fa3589238ff4c232e90c8362201792ef99 +DIST pythia-6.4.18-examples.tar.bz2 36366 SHA256 17b1809fb0cffba20115c2bc1032c24d8efece25bd3f1f632f88265ade4dd084 SHA512 ba921379a6df4ca417b60ea5b78af506f13135cdf896fa6beeca9713428ad6f298c94c0fe65fca3e583f8f268dcf84ebe4f1f81b46fd865d5f641f7c1e9fa7e1 WHIRLPOOL 5b53f523d0819400da791d471c207c4d0d6cfd43cbb9423900b593015aa4db68632d97615ffd213493ff0b0306ce7b8c4851e58672e1188df1a61352e1af0d17 +DIST pythia-6.4.28.tar.xz 490248 SHA256 6ca6acc172314cf7b56e2a8e18321d28ce57a511e34210a6c64ebbfd5e06d5f4 SHA512 f9db72658f2132ce08d31c8a9f7fe727466b184ef41cc4b762fe2bde48dbdfd7b5df19b21a869e20a1f107c96e9daec115c980e11592968eb2cad666b7c96bdc WHIRLPOOL d6ab42af092348b1ae5c5078c34ef17042b46f728d6c4068cd0930999ccbfefae9b55be05499188525c9fc6499c8cb8c490fe6a37f04bf9b45048f7cf8026cdb +DIST pythia6.tar.gz 567451 SHA256 ebc90b8ec94897d8b09030341323d2c7c6e5c7c65077f98b96c8cff00d40a5ce SHA512 baa18023de22c3e90f14d2a5a39efa171905f507a31a90f87c65dca271b3be4c9f0d1a56282f5a04b3efabe0b5b15c964e4569d1f9994a75750e52e0be4360b1 WHIRLPOOL e334779f77e938cde85ecd0fbc2dbf0d86a52fc1ef673c909b8533f779e51d6d6680bc5de3aceeb002015ccfdf03da3f975aaf0cc7a249c462cdd3b206c359a2 +DIST pythia8186.tgz 8921248 SHA256 1c0914fc04801ee922c1ad3b544a3cd48b34d9afa4407ae40afbacd009039bd2 SHA512 84729004abbdf522183c27918ae35db037a8954af761a2b452dcff54f82076b1e3bfc7fe9ea0a7cb2c0b6499aedb1c25cc13768d47b24edaa08d631b55d0b86b WHIRLPOOL ecef83d2cb018b1aac55225850cf2a3a8f2b87d08f99bd9c5881f4fa341f012eeabed3b9a43ffda3699daebc54c181d08aac30c1f6b514e98516c29e88a6fbaf +DIST pythia8210.tgz 14301345 SHA256 a2564c6011235a286115ba9da065f50c1233229b2f1a824583565dfeec0baa35 SHA512 fe2d02e32fd5d25bcdcc216754b91ca509a189c58f1a06ca8deba975af552586632fc8cf8ad3e62920884ee64c4af596fbe7c6872f5ddbd1f5a0cea4ba4bc90d WHIRLPOOL d2d3f212ed2ad700fa6ae44b2b670cce1623e80382af04072bee884a72ea269346c10728cc77cfa4c9377e8cd775febe9488427cb0b890e52c651efebd66f60c diff --git a/sci-physics/pythia/files/pythia8209-root-noninteractive.patch b/sci-physics/pythia/files/pythia8209-root-noninteractive.patch new file mode 100644 index 000000000000..4581eaea389b --- /dev/null +++ b/sci-physics/pythia/files/pythia8209-root-noninteractive.patch @@ -0,0 +1,17 @@ +--- pythia8209/examples/main91.cc.orig 2015-06-05 07:44:27.000000000 +0300 ++++ pythia8209/examples/main91.cc 2015-06-05 08:17:22.477228166 +0300 +@@ -62,13 +62,9 @@ + // Statistics on event generation. + pythia.stat(); + +- // Show histogram. Possibility to close it. +- mult->Draw(); +- std::cout << "\nDouble click on the histogram window to quit.\n"; +- gPad->WaitPrimitive(); +- + // Save histogram on file and close file. + mult->Write(); ++ outFile->Close(); + delete outFile; + + // Done. diff --git a/sci-physics/pythia/files/pythia8209-run-tests.patch b/sci-physics/pythia/files/pythia8209-run-tests.patch new file mode 100644 index 000000000000..d1edc8393726 --- /dev/null +++ b/sci-physics/pythia/files/pythia8209-run-tests.patch @@ -0,0 +1,20 @@ +--- pythia8209/examples/Makefile.orig 2015-06-04 22:21:53.000000000 +0300 ++++ pythia8209/examples/Makefile 2015-06-05 05:35:25.324262331 +0300 +@@ -139,3 +139,17 @@ + rm -f test[0-9][0-9][0-9]; rm -f out[0-9][0-9][0-9];\ + rm -f weakbosons.lhe; rm -f Pythia8.promc; rm -f hist.root;\ + rm -f *~; rm -f \#*; rm -f core*; rm -f *Dct.* ++ rm -f main*out *.dat ++ ++# Run tests, inject test-specific arguments when needed ++main%.out: main% ++ ./$< \ ++ $(if $(findstring $*,16 42 43 $(shell seq 81 89)), main$*.cmnd) \ ++ $(if $(findstring $*, $(shell seq 81 83)), w+_production_lhc_0.lhe) \ ++ $(if $(findstring $*, 84), hepmcout84.dat 2 w+_production_lhc) \ ++ $(if $(findstring $*, $(shell seq 85 88)), w_production) \ ++ $(if $(findstring $*, 42 43 $(shell seq 81 89)), histout$*.dat) \ ++ > $@ ++ ++main89.out: main89 ++ $(foreach cmd, $(wildcard main89*.cmnd), ./$< $(cmd) histout-$(cmd).dat >> $@ || exit;) diff --git a/sci-physics/pythia/metadata.xml b/sci-physics/pythia/metadata.xml new file mode 100644 index 000000000000..a0a2a6ec97b9 --- /dev/null +++ b/sci-physics/pythia/metadata.xml @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>sci-physics</herd> + <longdescription lang="en"> + PYTHIA is a program for the generation of high-energy physics + events, i.e. for the description of collisions at high energies + between elementary particles such as e+, e-, p and pbar in various + combinations. It contains theory and models for a number of physics + aspects, including hard and soft interactions, parton distributions, + initial- and final-state parton showers, multiple interactions, + fragmentation and decay. It is largely based on original research, + but also borrows many formulae and other knowledge from the + literature. +</longdescription> + <use> + <flag name="fastjet">Build jets using the <pkg>sci-physics/fastjet</pkg> package</flag> + <flag name="hepmc">Adds support for High Energy Physics Monte Carlo Generators <pkg>sci-physics/hepmc</pkg></flag> + <flag name="lhapdf">Support the use of external PDF sets via <pkg>sci-physics/lhapdf</pkg></flag> + <flag name="root">Use <pkg>sci-physics/root</pkg> trees and histograms (in examples only)</flag> + </use> +</pkgmetadata> diff --git a/sci-physics/pythia/pythia-6.4.28.ebuild b/sci-physics/pythia/pythia-6.4.28.ebuild new file mode 100644 index 000000000000..dc841de4d0b4 --- /dev/null +++ b/sci-physics/pythia/pythia-6.4.28.ebuild @@ -0,0 +1,68 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit autotools fortran-2 versionator + +MV=$(get_major_version) +MY_PN=${PN}${MV} +DOC_PV=0613 +EX_PV=6.4.18 + +DESCRIPTION="Lund Monte Carlo high-energy physics event generator" +HOMEPAGE="http://pythia6.hepforge.org/" + +# pythia6 from root is needed for some files to interface pythia6 with root. +# To produce a split version, replace the 6.4.x by the current version: +# svn export http://svn.hepforge.org/pythia6/tags/v_6_4_x/ pythia-6.4.x +# tar cJf pythia-6.4.x.tar.xz +SRC_URI=" + http://dev.gentoo.org/~bicatali/distfiles/${P}.tar.xz + ftp://root.cern.ch/root/pythia6.tar.gz + doc? ( http://home.thep.lu.se/~torbjorn/pythia/lutp${DOC_PV}man2.pdf ) + examples? ( mirror://gentoo/${PN}-${EX_PV}-examples.tar.bz2 )" + +SLOT="6" +LICENSE="public-domain" +KEYWORDS="amd64 x86 ~amd64-linux ~x86-linux" +IUSE="doc examples static-libs" + +src_prepare() { + cp ../pythia6/tpythia6_called_from_cc.F . + cp ../pythia6/pythia6_common_address.c . + cat > configure.ac <<-EOF + AC_INIT(${PN},${PV}) + AM_INIT_AUTOMAKE + AC_PROG_F77 + LT_INIT + AC_CHECK_LIB(m,sqrt) + AC_CONFIG_FILES(Makefile) + AC_OUTPUT + EOF + echo >> Makefile.am "lib_LTLIBRARIES = libpythia6.la" + echo >> Makefile.am "libpythia6_la_SOURCES = \ " + # replace wildcard from makefile to ls in shell + local f + for f in py*.f struct*.f up*.f fh*.f; do + echo >> Makefile.am " ${f} \\" + done + echo >> Makefile.am " ssmssm.f sugra.f visaje.f pdfset.f \\" + echo >> Makefile.am " tpythia6_called_from_cc.F pythia6_common_address.c" + eautoreconf +} + +src_configure() { + econf $(use_enable static-libs static) +} + +src_install() { + default + dodoc update_notes.txt + use doc && dodoc "${DISTDIR}"/lutp${DOC_PV}man2.pdf + if use examples; then + insinto /usr/share/doc/${PF} + doins -r "${WORKDIR}"/examples + fi +} diff --git a/sci-physics/pythia/pythia-8.1.86-r1.ebuild b/sci-physics/pythia/pythia-8.1.86-r1.ebuild new file mode 100644 index 000000000000..bfaafd213f52 --- /dev/null +++ b/sci-physics/pythia/pythia-8.1.86-r1.ebuild @@ -0,0 +1,101 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit eutils versionator toolchain-funcs multilib + +MV=$(get_major_version) +MY_P=${PN}$(replace_all_version_separators "" ${PV}) + +DESCRIPTION="Lund Monte Carlo high-energy physics event generator" +HOMEPAGE="http://pythia8.hepforge.org/" +SRC_URI="http://home.thep.lu.se/~torbjorn/${PN}${MV}/${MY_P}.tgz" + +SLOT="8" +LICENSE="GPL-2" +KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" +IUSE="doc examples gzip +hepmc static-libs" + +DEPEND=" + gzip? ( dev-libs/boost sys-libs/zlib ) + hepmc? ( sci-physics/hepmc:0= )" +RDEPEND="${DEPEND}" + +S="${WORKDIR}/${MY_P}" + +src_prepare() { + PYTHIADIR="${EPREFIX}/usr/share/pythia8" + # set datadir for xmldor in include file + sed -i \ + -e "s:../xmldoc:${PYTHIADIR}/xmldoc:" \ + include/Pythia8/Pythia.h || die + # respect libdir, prefix, flags + sed -i \ + -e "s:/lib:/$(get_libdir):g" \ + -e "s:/usr:${EPREFIX}/usr:g" \ + -e "s:-O2::g" \ + configure || die + sed -i \ + -e "s:LIBDIR=.*:LIBDIR=$(get_libdir):" \ + -e "s:LIBDIRARCH=.*:LIBDIRARCH=$(get_libdir):" \ + -e "s:cp -r lib:cp -r $(get_libdir):" \ + -e '/ln -fs/d' \ + Makefile examples/Makefile || die +} + +src_configure() { + export USRCXXFLAGS="${CXXFLAGS}" + export USRLDFLAGSSHARED="${LDFLAGS}" + tc-export CC CXX + # homemade configure script + ./configure \ + --installdir="${EPREFIX}/usr" \ + --datadir="${PYTHIADIR}" \ + --enable-shared \ + $(usex gzip "--enable-gzip=yes" "") \ + $(usex hepmc "--with-hepmcversion=2 --with-hepmc=${EPREFIX}/usr" "") \ + || die + if ! use static-libs; then + sed -i \ + -e '/targets.*=$(LIBDIR.*\.a$/d' \ + -e 's/+=\(.*libpythia8\.\)/=\1/' \ + Makefile || die + sed -i \ + -e 's:\.a:\.so:g' \ + -e 's:$(LIBDIRARCH):$(LIBDIR):g' \ + examples/Makefile || die + fi +} + +src_test() { + cd examples || die + # use emake for parallel instead of long runmains + local tests="$(echo main0{1..8})" t + use hepmc && tests="${tests} main31" + emake ${tests} + for t in ${tests}; do + LD_LIBRARY_PATH="${S}/$(get_libdir):${LD_LIBRARY_PATH}" \ + bin/${t}.exe > ${t}.out || die "test ${t} failed" + done + emake clean && rm main*out +} + +src_install() { + emake INSTALLDIR="${ED}/usr" DATADIR="${D}/${PYTHIADIR}" install + rm -r "${D}"/${PYTHIADIR}/{html,php}doc || die + echo "PYTHIA8DATA=${PYTHIADIR}/xmldoc" >> 99pythia8 + doenvd 99pythia8 + + dodoc GUIDELINES AUTHORS README + if use doc; then + dodoc worksheet.pdf htmldoc/pythia8100.pdf + dohtml -r htmldoc/* + fi + if use examples; then + insinto /usr/share/doc/${PF} + doins -r examples rootexamples + docompress -x /usr/share/doc/${PF}/{root,}examples + fi +} diff --git a/sci-physics/pythia/pythia-8.1.86.ebuild b/sci-physics/pythia/pythia-8.1.86.ebuild new file mode 100644 index 000000000000..d04b76e43f56 --- /dev/null +++ b/sci-physics/pythia/pythia-8.1.86.ebuild @@ -0,0 +1,101 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit eutils versionator toolchain-funcs multilib + +MV=$(get_major_version) +MY_P=${PN}$(replace_all_version_separators "" ${PV}) + +DESCRIPTION="Lund Monte Carlo high-energy physics event generator" +HOMEPAGE="http://pythia8.hepforge.org/" +SRC_URI="http://home.thep.lu.se/~torbjorn/${PN}${MV}/${MY_P}.tgz" + +SLOT="8" +LICENSE="GPL-2" +KEYWORDS="amd64 x86 ~amd64-linux ~x86-linux" +IUSE="doc examples gzip +hepmc static-libs" + +DEPEND=" + gzip? ( dev-libs/boost sys-libs/zlib ) + hepmc? ( sci-physics/hepmc:0= )" +RDEPEND="${DEPEND}" + +S="${WORKDIR}/${MY_P}" + +src_prepare() { + PYTHIADIR="${EPREFIX}/usr/share/pythia8" + # set datadir for xmldor in include file + sed -i \ + -e "s:../xmldoc:${PYTHIADIR}/xmldoc:" \ + include/Pythia8/Pythia.h || die + # respect libdir, prefix, flags + sed -i \ + -e "s:/lib:/$(get_libdir):g" \ + -e "s:/usr:${EPREFIX}/usr:g" \ + -e "s:-O2::g" \ + configure || die + sed -i \ + -e "s:LIBDIR=.*:LIBDIR=$(get_libdir):" \ + -e "s:LIBDIRARCH=.*:LIBDIRARCH=$(get_libdir):" \ + -e "s:cp -r lib:cp -r $(get_libdir):" \ + -e '/ln -fs/d' \ + Makefile examples/Makefile || die +} + +src_configure() { + export USRCXXFLAGS="${CXXFLAGS}" + export USRLDFLAGSSHARED="${LDFLAGS}" + tc-export CC CXX + # homemade configure script + ./configure \ + --installdir="${EPREFIX}/usr" \ + --datadir="${PYTHIADIR}" \ + --enable-shared \ + $(usex gzip "--enable-gzip=yes" "") \ + $(usex hepmc "--with-hepmcversion=2 --with-hepmc=${EPREFIX}/usr" "") \ + || die + if ! use static-libs; then + sed -i \ + -e '/targets.*=$(LIBDIR.*\.a$/d' \ + -e 's/+=\(.*libpythia8\.\)/=\1/' \ + Makefile || die + sed -i \ + -e 's:\.a:\.so:g' \ + -e 's:$(LIBDIRARCH):$(LIBDIR):g' \ + examples/Makefile || die + fi +} + +src_test() { + cd examples || die + # use emake for parallel instead of long runmains + local tests="$(echo main0{1..8})" t + use hepmc && tests="${tests} main31" + emake ${tests} + for t in ${tests}; do + LD_LIBRARY_PATH="${S}/$(get_libdir):${LD_LIBRARY_PATH}" \ + bin/${t}.exe > ${t}.out || die "test ${t} failed" + done + emake clean && rm main*out +} + +src_install() { + emake INSTALLDIR="${ED}/usr" DATADIR="${D}/${PYTHIADIR}" install + rm -r "${D}"/${PYTHIADIR}/{html,php}doc || die + echo "PYTHIA8DATA=${PYTHIADIR}/xmldoc" >> 99pythia8 + doenvd 99pythia8 + + dodoc GUIDELINES AUTHORS README + if use doc; then + dodoc worksheet.pdf + dohtml -r htmldoc/* + fi + if use examples; then + insinto /usr/share/doc/${PF} + doins -r examples + docompress -x /usr/share/doc/${PF}/examples + fi +} diff --git a/sci-physics/pythia/pythia-8.2.10.ebuild b/sci-physics/pythia/pythia-8.2.10.ebuild new file mode 100644 index 000000000000..a9d797450eb5 --- /dev/null +++ b/sci-physics/pythia/pythia-8.2.10.ebuild @@ -0,0 +1,184 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit eutils multilib toolchain-funcs versionator + +MV=$(get_major_version) +MY_P=${PN}$(replace_all_version_separators "" ${PV}) +LHA_VER="6.1" + +DESCRIPTION="Lund Monte Carlo high-energy physics event generator" +HOMEPAGE="http://pythia8.hepforge.org/" +SRC_URI="http://home.thep.lu.se/~torbjorn/${PN}${MV}/${MY_P}.tgz + test? ( lhapdf? ( + https://www.hepforge.org/archive/lhapdf/pdfsets/${LHA_VER}/CT10.tar.gz + https://www.hepforge.org/archive/lhapdf/pdfsets/${LHA_VER}/MRST2007lomod.tar.gz + https://www.hepforge.org/archive/lhapdf/pdfsets/${LHA_VER}/NNPDF23_nlo_as_0119_qed_mc.tar.gz + https://www.hepforge.org/archive/lhapdf/pdfsets/${LHA_VER}/NNPDF23_nnlo_as_0119_qed_mc.tar.gz + https://www.hepforge.org/archive/lhapdf/pdfsets/${LHA_VER}/cteq66.tar.gz + https://www.hepforge.org/archive/lhapdf/pdfsets/${LHA_VER}/cteq6l1.tar.gz + https://www.hepforge.org/archive/lhapdf/pdfsets/${LHA_VER}/unvalidated/MRST2004qed.tar.gz + ) )" + +SLOT="8" +LICENSE="GPL-2" +KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" +IUSE="doc examples gzip +hepmc fastjet lhapdf root static-libs test" + +RDEPEND=" + fastjet? ( >=sci-physics/fastjet-3 ) + gzip? ( sys-libs/zlib ) + hepmc? ( sci-physics/hepmc:0= ) + lhapdf? ( >=sci-physics/lhapdf-6:= ) +" +# ROOT is used only when building related tests +DEPEND="${RDEPEND} + test? ( root? ( sci-physics/root:= ) ) +" + +S="${WORKDIR}/${MY_P}" + +pkg_pretend() { + if use root && ! use test; then + ewarn "ROOT support will only affect examples code build during test stage." + ewarn "Since you have tests disabled, this is a no-op." + fi +} + +src_prepare() { + PYTHIADIR="/usr/share/pythia8" + EPYTHIADIR="${EPREFIX}${PYTHIADIR}" + # set datadir for xmldor in include file + sed -i \ + -e "s:../share/Pythia8/xmldoc:${EPYTHIADIR}/xmldoc:" \ + include/Pythia8/Pythia.h || die + # respect libdir, prefix, flags + sed -i \ + -e "s:/lib:/$(get_libdir):g" \ + -e "s:/usr:${EPREFIX}/usr:g" \ + -e "s:-O2:${CXXFLAGS}:g" \ + -e "s:Cint:Core:g" \ + configure || die + sed -i 's:$(CXX) $^ -o $@ $(CXX_COMMON) $(CXX_SHARED):$(CXX) $(LDFLAGS) $^ -o $@ $(CXX_COMMON) $(CXX_SHARED):g' \ + Makefile || die + sed -i 's:$(CXX):$(CXX) $(LDFLAGS):' examples/Makefile || die + # we use lhapdf6 instead of lhapdf5 + # some PDFs changed, use something similar + sed -i \ + -e "s:LHAPDF5:LHAPDF6:g" \ + -e "s:\.LHgrid::g" \ + -e "s:\.LHpdf::g" \ + -e "s:MRST2001lo:MRST2007lomod:g" \ + -e "s:cteq6ll:cteq6l1:g" \ + -e "s:cteq6m:cteq66:g" \ + examples/*.{cc,cmnd} || die + # After lhapdf5->6 migration PDFs are identical within ~1/1000 + # https://www.hepforge.org/archive/lhapdf/pdfsets/6.1/README + sed -i \ + -e "s:1e-8:3e-1:g" \ + -e "s:nlo_as_0119_qed:nlo_as_0119_qed_mc:g" \ + -e "s:xmldoc:share/Pythia8/xmldoc:g" \ + examples/main54.cc || die + # ask cflags from root + sed -i "s:root-config:root-config --cflags:g" examples/Makefile || die + if ! use static-libs; then + sed -i \ + -e '/TARGETS=$(LOCAL_LIB)\/libpythia8\.a/d' \ + -e 's:libpythia8\.a$:libpythia8\.so$:g' \ + Makefile || die + sed -i 's:libpythia8\.a:libpythia8\.so:g' \ + examples/Makefile || die + fi + + epatch "${FILESDIR}/${PN}8209-run-tests.patch" + epatch "${FILESDIR}/${PN}8209-root-noninteractive.patch" +} + +# TODO: the following optional packages are out of Gentoo tree: +# - EvtGen http://atlas-computing.web.cern.ch/atlas-computing/links/externalDirectory/EvtGen/ +# - PowHEG http://powhegbox.mib.infn.it/ +# - ProMC https://github.com/Argonne-National-Laboratory/ProMC/ +src_configure() { + # homemade configure script + ./configure \ + --arch=Linux \ + --cxx=$(tc-getCXX) \ + --enable-shared \ + --prefix="${EPREFIX}/usr" \ + --prefix-lib="$(get_libdir)" \ + --prefix-share="${EPYTHIADIR}" \ + $(usex fastjet "--with-fastjet3" "") \ + $(usex gzip "--with-gzip" "") \ + $(usex hepmc "--with-hepmc2" "") \ + $(usex lhapdf "--with-lhapdf6 + --with-lhapdf6-plugin=LHAPDF6.h + --with-lhapdf6-lib=${EPREFIX}/usr/$(get_libdir)" "") \ + $(usex root "--with-root + --with-root-include=${EPREFIX}/usr/include/root + --with-root-lib=${EPREFIX}/usr/$(get_libdir)/root" "") \ + || die + + # fix pythia config script + sed -i \ + -e 's:pythia8/examples/Makefile.inc:pythia8/Makefile.inc:' \ + -e 's:LINE%=:LINE%%=:' \ + bin/pythia8-config || die +} + +src_test() { + cd examples || die + + local tests="$(echo main{{01..32},37,38,61,62,73,80}.out)" + use hepmc && tests+=" $(echo main{41,42,85,86}.out)" + use hepmc && use lhapdf && tests+=" $(echo main{43,{87..89}}.out)" + use lhapdf && tests+=" $(echo main{51..54}.out)" + use fastjet && tests+=" $(echo main{71,72}.out)" + use fastjet && use hepmc && use lhapdf && tests+=" $(echo main{81..84}).out" + use root && tests+=" main91.out" + # Disabled tests: + # 33 needs PowHEG + # 46 needs ProMC + # 48 needs EvtGen + # 92 generated ROOT dictionary is badly broken + + # use emake for parallel instead of long runmains + LD_LIBRARY_PATH="${S}/$(get_libdir):${LD_LIBRARY_PATH}" \ + PYTHIA8DATA="../share/Pythia8/xmldoc/" \ + LHAPDF_DATA_PATH="${WORKDIR}" \ + emake ${tests} + emake clean +} + +src_install() { + # make install is too broken, much easier to install manually + dobin bin/pythia8-config + doheader -r include/* + dolib lib/* + insinto "${PYTHIADIR}" + doins -r share/Pythia8/xmldoc examples/Makefile.inc + + echo "PYTHIA8DATA=${EPYTHIADIR}/xmldoc" >> 99pythia8 + doenvd 99pythia8 + + dodoc AUTHORS GUIDELINES README + if use doc; then + dodoc share/Pythia8/pdfdoc/* + dohtml -r share/Pythia8/htmldoc/* + fi + if use examples; then + # reuse system Makefile.inc + rm examples/Makefile.inc || die + sed -i "s:include Makefile.inc:include ${EPYTHIADIR}:" \ + examples/Makefile || die + + insinto /usr/share/doc/${PF} + doins -r examples + docompress -x /usr/share/doc/${PF}/examples + fi + + # cleanup + unset PYTHIADIR EPYTHIADIR +} |