5 |
5 |
|
6 |
6 |
inherit toolchain-funcs
|
7 |
7 |
|
8 |
|
MV=$(ver_cut 1)$(ver_cut 2)
|
|
8 |
MV=$(ver_cut 1-2)
|
9 |
9 |
MY_P="${PN}${PV//./}"
|
10 |
|
LHA_VER="6.1"
|
|
10 |
LHA_VER="6.2.1"
|
11 |
11 |
|
12 |
12 |
DESCRIPTION="Lund Monte Carlo high-energy physics event generator"
|
13 |
13 |
HOMEPAGE="https://pythia.org/"
|
14 |
|
SRC_URI="https://pythia.org/download/${PN}${MV}/${MY_P}.tgz
|
|
14 |
SRC_URI="https://pythia.org/download/${PN}${MV//./}/${MY_P}.tgz
|
15 |
15 |
test? ( lhapdf? (
|
16 |
|
https://www.hepforge.org/archive/lhapdf/pdfsets/${LHA_VER}/CT10.tar.gz
|
17 |
|
https://www.hepforge.org/archive/lhapdf/pdfsets/${LHA_VER}/MRST2007lomod.tar.gz
|
18 |
|
https://www.hepforge.org/archive/lhapdf/pdfsets/${LHA_VER}/NNPDF23_nlo_as_0119_qed_mc.tar.gz
|
19 |
|
https://www.hepforge.org/archive/lhapdf/pdfsets/${LHA_VER}/NNPDF23_nnlo_as_0119_qed_mc.tar.gz
|
20 |
|
https://www.hepforge.org/archive/lhapdf/pdfsets/${LHA_VER}/cteq66.tar.gz
|
21 |
|
https://www.hepforge.org/archive/lhapdf/pdfsets/${LHA_VER}/cteq6l1.tar.gz
|
22 |
|
https://www.hepforge.org/archive/lhapdf/pdfsets/${LHA_VER}/unvalidated/MRST2004qed.tar.gz
|
|
16 |
https://lhapdfsets.web.cern.ch/lhapdfsets/current/CT10.tar.gz
|
|
17 |
https://lhapdfsets.web.cern.ch/lhapdfsets/current/MRST2007lomod.tar.gz
|
|
18 |
https://lhapdfsets.web.cern.ch/lhapdfsets/current/NNPDF23_nlo_as_0119_qed_mc.tar.gz
|
|
19 |
https://lhapdfsets.web.cern.ch/lhapdfsets/current/NNPDF23_nnlo_as_0119_qed_mc.tar.gz
|
|
20 |
https://lhapdfsets.web.cern.ch/lhapdfsets/current/cteq66.tar.gz
|
|
21 |
https://lhapdfsets.web.cern.ch/lhapdfsets/current/cteq6l1.tar.gz
|
|
22 |
https://www.hepforge.org/downloads/lhapdf/pdfsets/v6.backup/${LHA_VER}/MRST2004qed.tar.gz
|
23 |
23 |
) )"
|
24 |
24 |
|
25 |
25 |
SLOT="8"
|
26 |
26 |
LICENSE="GPL-2"
|
27 |
|
KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
|
28 |
|
IUSE="doc examples fastjet +hepmc lhapdf root test zlib"
|
|
27 |
KEYWORDS="~amd64 ~x86"
|
|
28 |
IUSE="doc examples fastjet +hepmc3 hepmc2 lhapdf root test zlib"
|
29 |
29 |
RESTRICT="!test? ( test )"
|
|
30 |
REQUIRED_USE="
|
|
31 |
?? ( hepmc3 hepmc2 )
|
|
32 |
"
|
30 |
33 |
|
31 |
34 |
RDEPEND="
|
32 |
35 |
fastjet? ( sci-physics/fastjet )
|
33 |
|
hepmc? ( sci-physics/hepmc:2= )
|
|
36 |
hepmc3? ( sci-physics/hepmc:3= )
|
|
37 |
hepmc2? ( sci-physics/hepmc:2= )
|
34 |
38 |
lhapdf? ( sci-physics/lhapdf:= )
|
35 |
39 |
zlib? ( sys-libs/zlib )"
|
36 |
40 |
# ROOT is used only when building related tests
|
... | ... | |
53 |
57 |
}
|
54 |
58 |
|
55 |
59 |
src_prepare() {
|
56 |
|
PYTHIADIR="/usr/share/pythia8"
|
|
60 |
PYTHIADIR="/usr/share/Pythia8"
|
57 |
61 |
EPYTHIADIR="${EPREFIX}${PYTHIADIR}"
|
58 |
62 |
|
59 |
63 |
default
|
... | ... | |
91 |
95 |
# ask cflags from root
|
92 |
96 |
sed -i "s|root-config|root-config --cflags|g" examples/Makefile || die
|
93 |
97 |
|
94 |
|
sed -i \
|
95 |
|
-e '/TARGETS=$(LOCAL_LIB)\/libpythia8\.a/d' \
|
96 |
|
-e 's|libpythia8\.a$|libpythia8$(LIB_SUFFIX)|g' \
|
97 |
|
Makefile || die
|
98 |
98 |
sed -i 's|libpythia8\.a|libpythia8$(LIB_SUFFIX)|g' \
|
99 |
99 |
examples/Makefile || die
|
100 |
100 |
}
|
... | ... | |
108 |
108 |
./configure \
|
109 |
109 |
--arch=Linux \
|
110 |
110 |
--cxx="$(tc-getCXX)" \
|
111 |
|
--enable-shared \
|
112 |
111 |
--prefix="${EPREFIX}/usr" \
|
113 |
|
--prefix-lib="$(get_libdir)" \
|
|
112 |
--prefix-lib="${EPREFIX}/usr/$(get_libdir)" \
|
114 |
113 |
--prefix-share="${EPYTHIADIR}" \
|
115 |
114 |
$(usex fastjet "--with-fastjet3" "") \
|
116 |
115 |
$(usex zlib "--with-gzip" "") \
|
117 |
|
$(usex hepmc "--with-hepmc2" "") \
|
|
116 |
$(use_with hepmc3) \
|
|
117 |
$(use_with hepmc2) \
|
118 |
118 |
$(usex lhapdf "--with-lhapdf6
|
119 |
119 |
--with-lhapdf6-plugin=LHAPDF6.h
|
120 |
120 |
--with-lhapdf6-lib=${EPREFIX}/usr/$(get_libdir)" "") \
|
... | ... | |
125 |
125 |
|
126 |
126 |
# fix pythia config script
|
127 |
127 |
sed -i \
|
128 |
|
-e 's|pythia8/examples/Makefile.inc|pythia8/Makefile.inc|' \
|
|
128 |
-e 's|Pythia8/examples/Makefile.inc|Pythia8/Makefile.inc|' \
|
129 |
129 |
-e 's|LINE%=|LINE%%=|' \
|
130 |
130 |
bin/pythia8-config || die
|
131 |
131 |
}
|
... | ... | |
134 |
134 |
cd examples || die
|
135 |
135 |
|
136 |
136 |
local tests="$(echo main{{01..32},37,38,61,62,73,80}.out)"
|
137 |
|
use hepmc && tests+=" $(echo main{41,42,85,86}.out)"
|
138 |
|
use hepmc && use lhapdf && tests+=" $(echo main{43,{87..89}}.out)"
|
|
137 |
use hepmc3 && tests+=" $(echo main{41,42,85,86}.out)"
|
|
138 |
use hepmc3 && use lhapdf && tests+=" $(echo main{43,{87..89}}.out)"
|
139 |
139 |
use lhapdf && tests+=" $(echo main{51..54}.out)"
|
140 |
140 |
use fastjet && tests+=" $(echo main{71,72}.out)"
|
141 |
|
use fastjet && use hepmc && use lhapdf && tests+=" $(echo main{81..84}).out"
|
|
141 |
use fastjet && use hepmc3 && use lhapdf && tests+=" $(echo main{81..84}).out"
|
142 |
142 |
use root && tests+=" main91.out"
|
143 |
143 |
# Disabled tests:
|
144 |
144 |
# 33 needs PowHEG
|
... | ... | |
161 |
161 |
dolib.so lib/libpythia8.so
|
162 |
162 |
use lhapdf && dolib.so lib/libpythia8lhapdf6.so
|
163 |
163 |
insinto "${PYTHIADIR}"
|
164 |
|
doins -r share/Pythia8/xmldoc examples/Makefile.inc
|
|
164 |
doins -r share/Pythia8/xmldoc share/Pythia8/pdfdata examples/Makefile.inc
|
165 |
165 |
|
166 |
166 |
newenvd - 99pythia8 <<- _EOF_
|
167 |
167 |
PYTHIA8DATA=${EPYTHIADIR}/xmldoc
|