summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJakov Smolic <jakov.smolic@sartura.hr>2021-02-13 23:51:35 +0100
committerDavid Seifert <soap@gentoo.org>2021-02-13 23:51:35 +0100
commit33aaf731b269f7bc0203b8e59dab80b7af336cc5 (patch)
treef810d0b653afed1b6df78940ccbb49fc51c2b774
parentsci-libs/libxc: Remove old (diff)
downloadgentoo-33aaf731b269f7bc0203b8e59dab80b7af336cc5.tar.gz
gentoo-33aaf731b269f7bc0203b8e59dab80b7af336cc5.tar.bz2
gentoo-33aaf731b269f7bc0203b8e59dab80b7af336cc5.zip
sci-physics/pythia: Port pythia:6 to EAPI 7
* Fix build with gcc-10 Closes: https://bugs.gentoo.org/766306 Signed-off-by: Jakov Smolic <jakov.smolic@sartura.hr> Signed-off-by: David Seifert <soap@gentoo.org>
-rw-r--r--sci-physics/pythia/files/pythia-6.4.28-fno-common.patch54
-rw-r--r--sci-physics/pythia/pythia-6.4.28-r2.ebuild (renamed from sci-physics/pythia/pythia-6.4.28-r1.ebuild)33
2 files changed, 74 insertions, 13 deletions
diff --git a/sci-physics/pythia/files/pythia-6.4.28-fno-common.patch b/sci-physics/pythia/files/pythia-6.4.28-fno-common.patch
new file mode 100644
index 00000000000..3ee9bc7c0f7
--- /dev/null
+++ b/sci-physics/pythia/files/pythia-6.4.28-fno-common.patch
@@ -0,0 +1,54 @@
+https://bugs.gentoo.org/766306
+--- a/pythia6_common_address.c
++++ b/pythia6_common_address.c
+@@ -48,28 +48,28 @@
+ # define pybins PYBINS
+ #endif
+
+-int pyjets[2+5*4000+2*2*5*4000];
+-int pydat1[200+2*200+200+2*200];
+-int pydat2[4*500+2*4*500+2*2000+2*4*4];
+-int pydat3[3*500+2*8000+2*8000+5*8000]; /* KNDCAY=8000 */
+-char pydat4[2*500*16];
+-int pydatr[6+2*100];
+-int pysubs[2+500+81*2+2*200];
+-int pypars[200+2*200+200+2*200];
+-int pyint1[400+2*400];
+-int pyint2[500+2*500+2*20*500+2*4*40];
+-int pyint3[2*81*2+3*1000+2*1000];
+-int pyint4[500+2*5*500];
+-int pyint5[1+3*501+2*3*501];
+-char pyint6[501*28];
+-int pyint7[2*6*7*7];
+-int pyint8[2*5*13];
+-int pyint9[2*4*13];
+-int pyuppr[1+7*20+1+2*10+2*5*20+2*11]; /* PYUPPR DOES NOT EXIST IN PYTHIA6 AT ALL!!! */
+-int pymssm[100+2*100];
+-int pyssmt[2*4*4+2*2*2+2*2*2+2*4+2*2+2*4*16+2*4*4+2*2*2+2*2*2];
+-int pyints[2*20];
+-int pybins[4+1000+2*20000];
++extern int pyjets[2+5*4000+2*2*5*4000];
++extern int pydat1[200+2*200+200+2*200];
++extern int pydat2[4*500+2*4*500+2*2000+2*4*4];
++extern int pydat3[3*500+2*8000+2*8000+5*8000]; /* KNDCAY=8000 */
++extern char pydat4[2*500*16];
++extern int pydatr[6+2*100];
++extern int pysubs[2+500+81*2+2*200];
++extern int pypars[200+2*200+200+2*200];
++extern int pyint1[400+2*400];
++extern int pyint2[500+2*500+2*20*500+2*4*40];
++extern int pyint3[2*81*2+3*1000+2*1000];
++extern int pyint4[500+2*5*500];
++extern int pyint5[1+3*501+2*3*501];
++extern char pyint6[501*28];
++extern int pyint7[2*6*7*7];
++extern int pyint8[2*5*13];
++extern int pyint9[2*4*13];
++extern int pyuppr[1+7*20+1+2*10+2*5*20+2*11]; /* PYUPPR DOES NOT EXIST IN PYTHIA6 AT ALL!!! */
++extern int pymssm[100+2*100];
++extern int pyssmt[2*4*4+2*2*2+2*2*2+2*4+2*2+2*4*16+2*4*4+2*2*2+2*2*2];
++extern int pyints[2*20];
++extern int pybins[4+1000+2*20000];
+
+ void *pythia6_common_address(const char* name) {
+ if (!strcmp(name,"PYJETS")) return pyjets;
diff --git a/sci-physics/pythia/pythia-6.4.28-r1.ebuild b/sci-physics/pythia/pythia-6.4.28-r2.ebuild
index 92d4af7849a..86fbe7d4358 100644
--- a/sci-physics/pythia/pythia-6.4.28-r1.ebuild
+++ b/sci-physics/pythia/pythia-6.4.28-r2.ebuild
@@ -1,11 +1,11 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-EAPI=5
+EAPI=7
-inherit autotools fortran-2 versionator
+inherit autotools fortran-2
-MV=$(get_major_version)
+MV=$(ver_cut 1)
MY_PN=${PN}${MV}
DOC_PV=0613
EX_PV=6.4.18
@@ -27,12 +27,16 @@ SRC_URI="
SLOT="6"
LICENSE="public-domain"
KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
-IUSE="doc examples static-libs"
+IUSE="doc examples"
+
+PATCHES=( "${FILESDIR}"/${P}-fno-common.patch )
src_prepare() {
cp ../pythia6/tpythia6_called_from_cc.F .
cp ../pythia6/pythia6_common_address.c .
- cat > configure.ac <<-EOF
+ default
+
+ cat > configure.ac <<-EOF || die
AC_INIT(${PN},${PV})
AM_INIT_AUTOMAKE
AC_PROG_F77
@@ -41,20 +45,21 @@ src_prepare() {
AC_CONFIG_FILES(Makefile)
AC_OUTPUT
EOF
- echo >> Makefile.am "lib_LTLIBRARIES = libpythia6.la"
- echo >> Makefile.am "libpythia6_la_SOURCES = \ "
+ echo >> Makefile.am "lib_LTLIBRARIES = libpythia6.la" || die
+ echo >> Makefile.am "libpythia6_la_SOURCES = \ " || die
# 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} \\"
+ echo >> Makefile.am " ${f} \\" || die
done
- echo >> Makefile.am " ssmssm.f sugra.f visaje.f pdfset.f \\"
- echo >> Makefile.am " tpythia6_called_from_cc.F pythia6_common_address.c"
+ echo >> Makefile.am " ssmssm.f sugra.f visaje.f pdfset.f \\" || die
+ echo >> Makefile.am " tpythia6_called_from_cc.F pythia6_common_address.c" || die
+
eautoreconf
}
src_configure() {
- econf $(use_enable static-libs static)
+ econf --disable-static
}
src_install() {
@@ -62,7 +67,9 @@ src_install() {
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
+ dodoc -r "${WORKDIR}"/examples
+ docompress -x /usr/share/doc/${PF}/examples
fi
+
+ find "${ED}" -name '*.la' -delete || die
}