From: "Nowa Ammerlaan" <nowa@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: sci-physics/pythia/
Date: Mon, 05 May 2025 18:33:03 +0000 (UTC) [thread overview]
Message-ID: <1746469970.f99973d2f5532b3529325c6c654e3313f762f08b.nowa@gentoo> (raw)
commit: f99973d2f5532b3529325c6c654e3313f762f08b
Author: Alexander Puck Neuwirth <alexander <AT> neuwirth-informatik <DOT> de>
AuthorDate: Sat Apr 26 17:45:37 2025 +0000
Commit: Nowa Ammerlaan <nowa <AT> gentoo <DOT> org>
CommitDate: Mon May 5 18:32:50 2025 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f99973d2
sci-physics/pythia: add 8.3.14
Signed-off-by: Alexander Puck Neuwirth <alexander <AT> neuwirth-informatik.de>
Part-of: https://github.com/gentoo/gentoo/pull/41774
Closes: https://github.com/gentoo/gentoo/pull/41774
Signed-off-by: Nowa Ammerlaan <nowa <AT> gentoo.org>
sci-physics/pythia/Manifest | 1 +
sci-physics/pythia/pythia-8.3.14.ebuild | 214 ++++++++++++++++++++++++++++++++
2 files changed, 215 insertions(+)
diff --git a/sci-physics/pythia/Manifest b/sci-physics/pythia/Manifest
index 3ce7764a3930..0f84aa8bbe3a 100644
--- a/sci-physics/pythia/Manifest
+++ b/sci-physics/pythia/Manifest
@@ -14,3 +14,4 @@ DIST pythia8309.tgz 28407620 BLAKE2B 0ef226e2e65829952d670b57c24bff2108d916ca547
DIST pythia8311.tgz 28757044 BLAKE2B 93a7cc26682bc6418f85e41def94a8cdfe39e180fa9fec2a6e47e9237fc2d42800dca2b76f54e2d56cb1d3a2b9a0008baf7b77610aabac2a6505fe08b2b4ffe2 SHA512 e0ae6cb444f11f3e3cf84d738b8c135f07ceafb28911b855bb63e3c596c5b9fd312a1f4ff78a098b707bfbb8f517a46177c4dbc57b4882cf03b12b0be49e2885
DIST pythia8312.tgz 30218597 BLAKE2B 71efca55572a241cf369e90186b033fbcd2326de82867f3f13057fbda372885632cab3d7b34ac5b444419bba4dd8d6c4bb90e12bf2424a43ae313c21268e8d89 SHA512 683ece1bd2cfd49d9cee742ce3fab693c5bf15017a6584d33e2a00bd0f0a67d1b84ff48da75f39cb4a4b564b9a35f997ab5187fe691f1f4b724cec5a4d717a23
DIST pythia8313.tgz 29957501 BLAKE2B 2149cafba036d09a66b874c775f4a425d5bbdd65d37f23c851f9cd3f7026ae45581187542d11ae5bbc18b7280fbc14e4daabd684b71c4437b3d9d1a4429f254a SHA512 1753323aa021ec5d999056517dc021fd73b7331441ff4c841d559df884700cc997e6384043de7c15a054ec8a3b2d76f1cb9f5edc7c6141f08f70d49ca5f6fb84
+DIST pythia8314.tgz 30007148 BLAKE2B e953496c67e7678d6bb30660b83eba4928e7696e582924971ffb07aedc76baab5ab9103e720b49eac5d4f8014131926726df322e808e38416f395aa9f9f4776f SHA512 bd21f56a8a07f3f9198328cddaa5b6c7fb0f048e2ab17d2f4e9da17dc98039dbb0df3cb1022a0d1030bc9eeda59036bc0a7299a5df38d202ee3c58f484e1635e
diff --git a/sci-physics/pythia/pythia-8.3.14.ebuild b/sci-physics/pythia/pythia-8.3.14.ebuild
new file mode 100644
index 000000000000..def740a93eae
--- /dev/null
+++ b/sci-physics/pythia/pythia-8.3.14.ebuild
@@ -0,0 +1,214 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{11..13} )
+inherit toolchain-funcs python-single-r1
+
+MV=$(ver_cut 1-2)
+MY_P="${PN}${PV//./}"
+LHA_VER="6.2.1"
+
+DESCRIPTION="Lund Monte Carlo high-energy physics event generator"
+HOMEPAGE="https://pythia.org/"
+SRC_URI="test? ( lhapdf? (
+ https://lhapdfsets.web.cern.ch/lhapdfsets/current/CT10.tar.gz
+ https://lhapdfsets.web.cern.ch/lhapdfsets/current/MRST2007lomod.tar.gz
+ https://lhapdfsets.web.cern.ch/lhapdfsets/current/NNPDF23_nlo_as_0119_qed_mc.tar.gz
+ https://lhapdfsets.web.cern.ch/lhapdfsets/current/NNPDF23_nnlo_as_0119_qed_mc.tar.gz
+ https://lhapdfsets.web.cern.ch/lhapdfsets/current/cteq66.tar.gz
+ https://lhapdfsets.web.cern.ch/lhapdfsets/current/cteq6l1.tar.gz
+ https://www.hepforge.org/downloads/lhapdf/pdfsets/v6.backup/${LHA_VER}/MRST2004qed.tar.gz
+ ) )
+"
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://gitlab.com/Pythia8/releases"
+else
+ SRC_URI="https://pythia.org/download/${PN}${MV//./}/${MY_P}.tgz
+ ${SRC_URI}"
+ KEYWORDS="~amd64 ~x86"
+ S="${WORKDIR}/${MY_P}"
+fi
+
+LICENSE="GPL-2"
+SLOT="8"
+IUSE="doc examples fastjet +hepmc3 hepmc2 lhapdf root test zlib python highfive mpich rivet" # evtgen mg5mes rivet powheg
+RESTRICT="!test? ( test )"
+REQUIRED_USE="
+ ?? ( hepmc3 hepmc2 )
+ python? ( ${PYTHON_REQUIRED_USE} )
+"
+
+RDEPEND="
+ fastjet? ( sci-physics/fastjet )
+ hepmc3? ( sci-physics/hepmc:3= )
+ hepmc2? ( sci-physics/hepmc:2= )
+ lhapdf? ( sci-physics/lhapdf:= )
+ zlib? ( sys-libs/zlib )
+ highfive? (
+ sci-libs/HighFive
+ sci-libs/hdf5[cxx]
+ )
+ rivet? (
+ sci-physics/rivet:*
+ )
+ mpich? ( sys-cluster/mpich )
+ python? ( ${PYTHON_DEPS} )
+ "
+DEPEND="${RDEPEND}"
+# ROOT is used only when building related tests
+BDEPEND="
+ test? (
+ root? ( sci-physics/root:= )
+ )
+"
+
+pkg_setup() {
+ use python && python-single-r1_pkg_setup
+}
+
+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}"
+
+ default
+ # 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
+ # 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/main203.cc || die
+ # ask cflags from root
+ sed -i "s|root-config|root-config --cflags|g" examples/Makefile || die
+
+ sed -i 's|libpythia8\.a|libpythia8$(LIB_SUFFIX)|g' \
+ examples/Makefile || die
+}
+
+# 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
+ local -x CXX="$(tc-getCXX) ${CXXFLAGS} ${LDFLAGS}"
+ ./configure \
+ --arch=Linux \
+ --prefix="${EPREFIX}/usr" \
+ --prefix-lib="${EPREFIX}/usr/$(get_libdir)" \
+ --prefix-share="${EPYTHIADIR}" \
+ $(usex fastjet "--with-fastjet3" "") \
+ $(usex zlib "--with-gzip" "") \
+ $(use_with hepmc3) \
+ $(use_with highfive) \
+ $(usex highfive --with-hdf5 "") \
+ $(use_with python) \
+ $(use_with rivet) \
+ $(use_with mpich) \
+ $(use_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|CFG_FILE=.*|CFG_FILE=${EPYTHIADIR}/Makefile.inc|" \
+ -e 's|LINE%=|LINE%%=|' \
+ bin/pythia8-config || die
+}
+
+src_test() {
+ cd examples || die
+
+ local tests="$(echo main{{101..103},{121..127}})"
+ use hepmc3 && tests+=" $(echo main{131..135})"
+ use hepmc3 && use mpich && use highfive && tests+=" $(echo main136)"
+ use lhapdf && tests+=" $(echo main{201..204})"
+ use fastjet && tests+=" $(echo main{{211..214},216})" # 215 fails...
+ use root && tests+=" main143"
+ use hepmc3 && use lhapdf && tests+=" $(echo main{133,162})"
+ use fastjet && use hepmc3 && use lhapdf && tests+=" $(echo main161)"
+ # Other tests disabled due to missing dependencies
+
+ # 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.so lib/libpythia8.so
+ use lhapdf && dolib.so lib/libpythia8lhapdf6.so
+ insinto "${PYTHIADIR}"
+ doins -r share/Pythia8/tunes share/Pythia8/xmldoc share/Pythia8/pdfdata examples/Makefile.inc
+
+ newenvd - 99pythia8 <<- _EOF_
+ PYTHIA8DATA=${EPYTHIADIR}/xmldoc
+ _EOF_
+
+ dodoc AUTHORS GUIDELINES README
+
+ if use doc; then
+ dodoc -r share/Pythia8/pdfdoc/.
+ dodoc -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/${PN}
+ doins -r examples
+ docompress -x /usr/share/doc/${PF}/examples
+ fi
+ if use python; then
+ local site_dir=$(python_get_sitedir)
+ insinto "${site_dir#${EPREFIX}}"
+ doins lib/pythia8.so
+ fi
+
+ # cleanup
+ unset PYTHIADIR EPYTHIADIR
+}
next reply other threads:[~2025-05-05 18:33 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-05-05 18:33 Nowa Ammerlaan [this message]
-- strict thread matches above, loose matches on Subject: below --
2025-05-09 12:23 [gentoo-commits] repo/gentoo:master commit in: sci-physics/pythia/ Nowa Ammerlaan
2025-05-05 18:33 Nowa Ammerlaan
2025-02-06 14:34 Nowa Ammerlaan
2025-02-06 14:34 Nowa Ammerlaan
2024-10-20 16:32 Andrew Ammerlaan
2024-07-09 3:08 Eli Schwartz
2024-05-15 10:29 Andrew Ammerlaan
2023-08-17 9:05 Andrew Ammerlaan
2023-08-17 9:05 Andrew Ammerlaan
2023-06-09 15:06 Arthur Zamarin
2022-12-11 17:55 Arthur Zamarin
2022-10-18 13:57 Andrew Ammerlaan
2022-08-26 11:13 Andrew Ammerlaan
2022-08-26 11:13 Andrew Ammerlaan
2022-03-20 18:51 Sam James
2021-07-20 16:42 Matt Turner
2021-05-23 13:29 Andrew Savchenko
2021-02-25 19:07 Sam James
2021-02-25 6:17 Sam James
2021-02-24 23:51 Sam James
2021-02-14 10:27 David Seifert
2021-02-13 22:52 David Seifert
2021-01-20 10:16 David Seifert
2016-04-14 0:30 Andrew Savchenko
2016-04-13 13:55 Guilherme Amadio
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1746469970.f99973d2f5532b3529325c6c654e3313f762f08b.nowa@gentoo \
--to=nowa@gentoo.org \
--cc=gentoo-commits@lists.gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox