commit:     33aaf731b269f7bc0203b8e59dab80b7af336cc5
Author:     Jakov Smolic <jakov.smolic <AT> sartura <DOT> hr>
AuthorDate: Sat Feb 13 22:51:35 2021 +0000
Commit:     David Seifert <soap <AT> gentoo <DOT> org>
CommitDate: Sat Feb 13 22:51:35 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=33aaf731

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 <AT> sartura.hr>
Signed-off-by: David Seifert <soap <AT> gentoo.org>

 .../pythia/files/pythia-6.4.28-fno-common.patch    | 54 ++++++++++++++++++++++
 ...ia-6.4.28-r1.ebuild => pythia-6.4.28-r2.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
similarity index 72%
rename from sci-physics/pythia/pythia-6.4.28-r1.ebuild
rename to 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
 }

Reply via email to