From 71c4c3709473ca5286f90a2263aae3cadfa70497 Mon Sep 17 00:00:00 2001 From: Thomas Beierlein Date: Sat, 8 Feb 2020 13:14:41 +0100 Subject: [PATCH] media-radio/ax25-apps: fix build with -fno-common Closes: https://bugs.gentoo.org/707630 Package-Manager: Portage-2.3.87, Repoman-2.3.20 Signed-off-by: Thomas Beierlein --- .../ax25-apps/ax25-apps-0.0.8_rc4.ebuild | 5 +- .../files/ax25-apps-0.0.8-fno-common.patch | 87 +++++++++++++++++++ 2 files changed, 90 insertions(+), 2 deletions(-) create mode 100644 media-radio/ax25-apps/files/ax25-apps-0.0.8-fno-common.patch diff --git a/media-radio/ax25-apps/ax25-apps-0.0.8_rc4.ebuild b/media-radio/ax25-apps/ax25-apps-0.0.8_rc4.ebuild index 21b6d557a2c5..2d61a7513cb4 100644 --- a/media-radio/ax25-apps/ax25-apps-0.0.8_rc4.ebuild +++ b/media-radio/ax25-apps/ax25-apps-0.0.8_rc4.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2015 Gentoo Foundation +# Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=5 @@ -12,7 +12,7 @@ SRC_URI="http://www.linux-ax25.org/pub/${PN}/${MY_P}.tar.gz" LICENSE="GPL-2" SLOT="0" -KEYWORDS="amd64 ppc x86" +KEYWORDS="~amd64 ~ppc ~x86" IUSE="" RDEPEND=">=dev-libs/libax25-0.0.12_rc2 @@ -26,6 +26,7 @@ S=${WORKDIR}/${MY_P} src_prepare() { epatch "$FILESDIR"/$PN-0.8.4-tinfo.patch + epatch "$FILESDIR"/$PN-0.0.8-fno-common.patch eautoreconf } diff --git a/media-radio/ax25-apps/files/ax25-apps-0.0.8-fno-common.patch b/media-radio/ax25-apps/files/ax25-apps-0.0.8-fno-common.patch new file mode 100644 index 000000000000..1ea5c779ff38 --- /dev/null +++ b/media-radio/ax25-apps/files/ax25-apps-0.0.8-fno-common.patch @@ -0,0 +1,87 @@ +diff --git a/ax25ipd/ax25ipd.c b/ax25ipd/ax25ipd.c +index 461147d..e85b44d 100644 +--- a/ax25ipd/ax25ipd.c ++++ b/ax25ipd/ax25ipd.c +@@ -35,6 +35,25 @@ int opt_help = 0; + char opt_configfile[PATH_MAX]; + char opt_ttydevice[PATH_MAX]; + ++struct stats_s stats; ++ ++int udp_mode; ++int ip_mode; ++unsigned short my_udp; ++char ttydevice[PATH_MAX]; ++int ttyspeed; ++signed char mycallsign[7]; ++unsigned char mycallsign2[7]; ++unsigned char myalias[7]; ++unsigned char myalias2[7]; ++char bc_text[128]; ++int bc_interval; ++int bc_every; ++ ++int digi; ++int loglevel; ++int dual_port; ++ + struct option options[] = { + {"version", 0, NULL, 'v'}, + {"loglevel", 1, NULL, 'l'}, +diff --git a/ax25ipd/ax25ipd.h b/ax25ipd/ax25ipd.h +index b088247..367024b 100644 +--- a/ax25ipd/ax25ipd.h ++++ b/ax25ipd/ax25ipd.h +@@ -72,24 +72,25 @@ + #include + #include + +-int udp_mode; /* true if we need a UDP socket */ +-int ip_mode; /* true if we need the raw IP socket */ +-unsigned short my_udp; /* the UDP port to use (network byte order) */ +-char ttydevice[PATH_MAX]; /* the tty device for serial comms */ +-int ttyspeed; /* The baud rate on the tty device */ +-unsigned char mycallsign[7]; /* My callsign, shifted ASCII with SSID */ +-unsigned char mycallsign2[7]; /* My seconds port callsign, shifted ASCII with SSID */ +-unsigned char myalias[7]; /* An alias to use */ +-unsigned char myalias2[7]; /* An alias for second port */ +-char bc_text[128]; /* The text for beacon messages */ +-int bc_interval; /* The interval, in seconds, between beacons */ +-int bc_every; /* true=every, false=after */ +-int digi; /* True if we are connected to a TNC */ +-int loglevel; /* Verbosity level */ ++extern int udp_mode; /* true if we need a UDP socket */ ++extern int ip_mode; /* true if we need the raw IP socket */ ++extern unsigned short my_udp; /* the UDP port to use (network byte order) */ ++extern char ttydevice[PATH_MAX]; /* the tty device for serial comms */ ++extern int ttyspeed; /* The baud rate on the tty device */ ++extern signed char mycallsign[7]; /* My callsign, shifted ASCII with SSID */ ++extern unsigned char mycallsign2[7]; /* My seconds port callsign, shifted ASCII with SSID */ ++extern unsigned char myalias[7]; /* An alias to use */ ++extern unsigned char myalias2[7]; /* An alias for second port */ ++extern char bc_text[128]; /* The text for beacon messages */ ++extern int bc_interval; /* The interval, in seconds, between beacons */ ++extern int bc_every; /* true=every, false=after */ ++ ++extern int digi; /* True if we are connected to a TNC */ ++extern int loglevel; /* Verbosity level */ + /* addition for dual port flag */ +-int dual_port; ++extern int dual_port; + +-struct { ++struct stats_s { + int kiss_in; /* # packets received */ + int kiss_toobig; /* packet too large */ + int kiss_badtype; /* control byte non-zero */ +@@ -107,7 +108,9 @@ struct { + int ip_tooshort; /* packet too short to be a valid frame */ + int ip_not_for_me; /* packet not for me (in digi mode) */ + int ip_i_am_dest; /* I am destination (in digi mode) */ +-} stats; ++}; ++ ++extern struct stats_s stats; + + #define MAX_FRAME 2048 + -- 2.26.2