net-dialup/mgetty: Fix building with gcc7 (#639076 by Toralf Förster)
authorPacho Ramos <pacho@gentoo.org>
Tue, 28 Nov 2017 19:38:19 +0000 (20:38 +0100)
committerPacho Ramos <pacho@gentoo.org>
Tue, 28 Nov 2017 19:46:18 +0000 (20:46 +0100)
Package-Manager: Portage-2.3.14, Repoman-2.3.6

net-dialup/mgetty/Manifest
net-dialup/mgetty/files/mgetty-1.1.37-gcc7.patch [new file with mode: 0644]
net-dialup/mgetty/mgetty-1.1.37-r1.ebuild

index 6140bbf22a726e1ac3c803b3645a94d0223a9901..2f1f5770f19495fd8ff6c85f913feaf35850069b 100644 (file)
@@ -1 +1 @@
-DIST mgetty1.1.37-Jun05.tar.gz 1057939 SHA256 6ff8cbc4f8aacd3dd7f247ff96715141bc6173745ea916dd98b8381a85ecdf0e SHA512 577d740c7d209b830bf8e783bf71edb666cb8bbfe8e7dceaa51dda6095d88724715394bcbd24eacfb1c377999f5779b547a7ec79cd9cdc13de6de18c4d857188 WHIRLPOOL f00d22ab213cd00f392ead46804ad1c3b192ae816b7518f1a73b4d65c180ba78fb2f193ceacf1f5aa88aeca4431eecb87e0960f0b6196a7e00247690083e937e
+DIST mgetty1.1.37-Jun05.tar.gz 1057939 BLAKE2B de22751e72d72d19293794739c29ed115a6810cd7d57c07228526817120898ca597ba35afad36c324562c220ab67dd44655247ac46a2d6612c704557f3ec149d SHA512 577d740c7d209b830bf8e783bf71edb666cb8bbfe8e7dceaa51dda6095d88724715394bcbd24eacfb1c377999f5779b547a7ec79cd9cdc13de6de18c4d857188
diff --git a/net-dialup/mgetty/files/mgetty-1.1.37-gcc7.patch b/net-dialup/mgetty/files/mgetty-1.1.37-gcc7.patch
new file mode 100644 (file)
index 0000000..6a4fa87
--- /dev/null
@@ -0,0 +1,102 @@
+From 09227cacda77d7785e864c0fec3854c22b3273f7 Mon Sep 17 00:00:00 2001
+From: Michal Sekletar <msekleta@redhat.com>
+Date: Thu, 2 Mar 2017 09:25:45 +0100
+Subject: [PATCH] Fix build failure with gcc-7
+
+When function is declared inline but it is not static then compiler
+assumes it could be potentially called from other translation
+units. Hence it will inline the function within the translation unit and
+at the same time it will generate object code for function with external
+linkage. However both extern and inline variant *must* be the same and
+therefore such function can not use any variables with static storage
+duration. In our case functions in g3cat.c and pbm2g3.c are not called
+from other translation units hence it is fine to mark then explicitly as
+static and compiler won't generate other (problematic) extern variant.
+---
+ g3/g3cat.c  | 8 ++++----
+ g3/pbm2g3.c | 8 ++++----
+ 2 files changed, 8 insertions(+), 8 deletions(-)
+
+diff --git a/g3/g3cat.c b/g3/g3cat.c
+index 8a4b708..1951210 100644
+--- a/g3/g3cat.c
++++ b/g3/g3cat.c
+@@ -44,7 +44,7 @@ static int b_written = 0;            /* bytes of a line already */
+                                       /* written */
+ #ifdef __GNUC__
+-inline
++static inline
+ #endif
+ void putcode _P2( (code, len), int code, int len )
+ {
+@@ -67,7 +67,7 @@ void putcode _P2( (code, len), int code, int len )
+ }
+ #ifdef __GNUC__
+-inline
++static inline
+ #endif
+ void putwhitespan _P1( (l), int l )
+ {
+@@ -98,7 +98,7 @@ void putwhitespan _P1( (l), int l )
+ }
+ #ifdef __GNUC__
+-inline
++static inline
+ #endif
+ void putblackspan _P1( (l), int l )
+ {
+@@ -129,7 +129,7 @@ void putblackspan _P1( (l), int l )
+ }
+ #ifdef __GNUC__
+-inline
++static inline
+ #endif
+ void puteol _P0( void )                       /* write byte-aligned EOL */
+ {
+diff --git a/g3/pbm2g3.c b/g3/pbm2g3.c
+index 283a728..57cb69a 100644
+--- a/g3/pbm2g3.c
++++ b/g3/pbm2g3.c
+@@ -40,7 +40,7 @@ static unsigned int out_hibit = 0;
+ static int out_byte_tab[ 256 ];                       /* for g3 byte reversal */
+ #ifdef __GNUC__
+-inline
++static inline
+ #endif
+ void putcode _P2( (code, len), int code, int len )
+ {
+@@ -60,7 +60,7 @@ void putcode _P2( (code, len), int code, int len )
+ }
+ #ifdef __GNUC__
+-inline
++static inline
+ #endif
+ void puteol _P0( void )                       /* write byte-aligned EOL */
+ {
+@@ -69,7 +69,7 @@ void puteol _P0( void )                      /* write byte-aligned EOL */
+ }
+ #ifdef __GNUC__
+-inline
++static inline
+ #endif
+ void putwhitespan _P1( (l), int l )
+ {
+@@ -100,7 +100,7 @@ void putwhitespan _P1( (l), int l )
+ }
+ #ifdef __GNUC__
+-inline
++static inline
+ #endif
+ void putblackspan _P1( (l), int l )
+ {
+-- 
+2.9.3
+
index f071ac4d388ee3e40f86368b2c2b17423b66fef7..a6305c0271c8c7f84288f7ce5aa8cbbf2f4b7261 100644 (file)
@@ -1,14 +1,15 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2017 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI=5
-inherit eutils flag-o-matic toolchain-funcs user
+EAPI=6
+inherit flag-o-matic toolchain-funcs user
 
 DESCRIPTION="fax and voice modem programs"
 SRC_URI="ftp://mgetty.greenie.net/pub/mgetty/source/1.1/${PN}${PV}-Jun05.tar.gz"
 HOMEPAGE="http://mgetty.greenie.net/"
 
-DEPEND="doc? ( virtual/latex-base virtual/texi2dvi )
+DEPEND="
+       doc? ( virtual/latex-base virtual/texi2dvi )
        >=sys-apps/sed-4
        sys-apps/groff
        dev-lang/perl
@@ -17,9 +18,11 @@ DEPEND="doc? ( virtual/latex-base virtual/texi2dvi )
        fax? (
                !net-misc/efax
                !net-misc/hylafax
-       )"
+       )
+"
 RDEPEND="${DEPEND}
-       fax? ( media-libs/netpbm app-text/ghostscript-gpl )"
+       fax? ( media-libs/netpbm app-text/ghostscript-gpl )
+"
 
 SLOT="0"
 LICENSE="GPL-2"
@@ -32,12 +35,13 @@ pkg_setup() {
 }
 
 src_prepare() {
-       epatch "${FILESDIR}/${P}-gentoo.patch"
-       epatch "${FILESDIR}/${P}-qa-fixes.patch"
-       epatch "${FILESDIR}/${PN}-1.1.36-callback.patch" # add callback install to Makefile
-       epatch "${FILESDIR}/Lucent.c.patch" # Lucent modem CallerID patch - bug #80366
-       use fax || epatch "${FILESDIR}/${P}-nofax.patch" # don't install fax related files - bug #195467
-       epatch "${FILESDIR}/${PN}-1.1.36-tmpfile.patch" # fix security bug 235806
+       eapply "${FILESDIR}/${P}-gentoo.patch"
+       eapply "${FILESDIR}/${P}-qa-fixes.patch"
+       eapply "${FILESDIR}/${PN}-1.1.36-callback.patch" # add callback install to Makefile
+       eapply "${FILESDIR}/Lucent.c.patch" # Lucent modem CallerID patch - bug #80366
+       use fax || eapply "${FILESDIR}/${P}-nofax.patch" # don't install fax related files - bug #195467
+       eapply "${FILESDIR}/${PN}-1.1.36-tmpfile.patch" # fix security bug 235806
+       eapply "${FILESDIR}/${P}-gcc7.patch"
 
        sed -e 's:var/log/mgetty:var/log/mgetty/mgetty:' \
                -e 's:var/log/sendfax:var/log/mgetty/sendfax:' \
@@ -60,6 +64,8 @@ src_prepare() {
        # Support user's CFLAGS and LDFLAGS.
        sed -e "s/\$(CFLAGS) -o newslock/${CFLAGS} ${LDFLAGS} -Wall -o newslock/" \
                -e "s/\$(LDLAGS)/${LDFLAGS}/" -i {,fax/}Makefile || die
+
+       default
 }
 
 src_compile() {
@@ -157,7 +163,4 @@ pkg_postinst() {
        elog
        elog "If you want to grab voice messages from a remote location, you must save"
        elog "the password in /var/spool/voice/.code file"
-       echo
-       ewarn "/var/spool/voice/.code and /var/spool/voice/messages/Index"
-       ewarn "are not longer created by this automatically!"
 }