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 <tomjbe@gentoo.org>
This commit is contained in:
Thomas Beierlein
2020-02-08 13:14:41 +01:00
parent 8e823883f2
commit 71c4c37094
2 changed files with 90 additions and 2 deletions
@@ -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
}
@@ -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 <sys/types.h>
#include <netax25/daemon.h>
-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