iproute2/no-double-definitions.patch

117 lines
2.7 KiB
Diff

From 3346c4e96148c4fea1113aab40ab4cdab11bb2f5 Mon Sep 17 00:00:00 2001
From: Jan Engelhardt <jengelh@inai.de>
Date: Wed, 8 Jan 2020 10:56:59 +0100
Subject: [PATCH] build: fix build failure with -fno-common
Message-Id: <20200108100424.26642-1-jengelh@inai.de>
X-Mailer: git-send-email 2.24.1
$ make CCOPTS=-fno-common
gcc ... -o ip
ld: rt_names.o (symbol from plugin): in function "rtnl_rtprot_n2a":
(.text+0x0): multiple definition of "numeric"; ip.o (symbol from plugin):(.text+0x0): first defined here
gcc ... -o tipc
ld: ../lib/libutil.a(utils.o):(.bss+0xc): multiple definition of `pretty';
tipc.o:tipc.c:28: first defined here
References: https://bugzilla.opensuse.org/1160244
Signed-off-by: Jan Engelhardt <jengelh@inai.de>
---
include/rt_names.h | 2 ++
ip/ip.c | 2 +-
misc/ss.c | 2 +-
tc/tc.c | 2 +-
tipc/tipc.c | 2 +-
5 files changed, 6 insertions(+), 4 deletions(-)
diff --git a/include/rt_names.h b/include/rt_names.h
index 62ebbd6a..7afce170 100644
--- a/include/rt_names.h
+++ b/include/rt_names.h
@@ -33,4 +33,6 @@ int ll_proto_a2n(unsigned short *id, const char *buf);
const char *nl_proto_n2a(int id, char *buf, int len);
int nl_proto_a2n(__u32 *id, const char *arg);
+extern int numeric;
+
#endif
diff --git a/ip/ip.c b/ip/ip.c
index fed26f8d..90392c2a 100644
--- a/ip/ip.c
+++ b/ip/ip.c
@@ -23,6 +23,7 @@
#include "ip_common.h"
#include "namespace.h"
#include "color.h"
+#include "rt_names.h"
int preferred_family = AF_UNSPEC;
int human_readable;
@@ -36,7 +37,6 @@ int timestamp;
int force;
int max_flush_loops = 10;
int batch_mode;
-int numeric;
bool do_all;
struct rtnl_handle rth = { .fd = -1 };
diff --git a/misc/ss.c b/misc/ss.c
index 95f1d37a..1e8bca5a 100644
--- a/misc/ss.c
+++ b/misc/ss.c
@@ -35,6 +35,7 @@
#include "libnetlink.h"
#include "namespace.h"
#include "SNAPSHOT.h"
+#include "rt_names.h"
#include <linux/tcp.h>
#include <linux/sock_diag.h>
@@ -121,7 +122,6 @@ static int follow_events;
static int sctp_ino;
static int show_tipcinfo;
static int show_tos;
-int numeric;
int oneline;
enum col_id {
diff --git a/tc/tc.c b/tc/tc.c
index 37294b31..b72657ec 100644
--- a/tc/tc.c
+++ b/tc/tc.c
@@ -29,6 +29,7 @@
#include "tc_util.h"
#include "tc_common.h"
#include "namespace.h"
+#include "rt_names.h"
int show_stats;
int show_details;
@@ -43,7 +44,6 @@ bool use_names;
int json;
int color;
int oneline;
-int numeric;
static char *conf_file;
diff --git a/tipc/tipc.c b/tipc/tipc.c
index f85ddee0..60176a04 100644
--- a/tipc/tipc.c
+++ b/tipc/tipc.c
@@ -22,10 +22,10 @@
#include "node.h"
#include "peer.h"
#include "cmdl.h"
+#include "utils.h"
int help_flag;
int json;
-int pretty;
static void about(struct cmdl *cmdl)
{
--
2.24.1