summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStephen Hemminger <stephen@networkplumber.org>2017-08-09 08:45:04 -0700
committerStephen Hemminger <stephen@networkplumber.org>2017-08-09 09:10:52 -0700
commit69fed534a533f48b8772d935590f82206171ca96 (patch)
tree605993b7f2d87f1d6aa87ecc397ff88e5cdbfd09
parent2a80154fde40b48d0e8afd16ae0eaa046ca05c02 (diff)
change how Config is used in Makefile's
The recent LIBMNL changes was made more difficult to debug because of how Config is handle in clean make. The Config file is generated by top level make, but since it is not recursive, the values generated would not be visible on a clean make. The change is to not include Config in top level make, and move all the conditionals down into sub makefiles. Not ideal, but beter than going full autoconf route. Or forcing separate configure step. Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
-rw-r--r--Makefile15
-rw-r--r--bridge/Makefile5
-rw-r--r--genl/Makefile5
-rw-r--r--misc/Makefile5
-rw-r--r--netem/Makefile7
5 files changed, 23 insertions, 14 deletions
diff --git a/Makefile b/Makefile
index a4b0dea5..1f88f7f5 100644
--- a/Makefile
+++ b/Makefile
@@ -1,7 +1,4 @@
-# Include "Config" if already generated
-ifneq ($(wildcard Config),)
-include Config
-endif
+# Top level Makefile for iproute2
ifeq ($(VERBOSE),0)
MAKEFLAGS += --no-print-directory
@@ -57,16 +54,6 @@ SUBDIRS=lib ip tc bridge misc netem genl tipc devlink man
LIBNETLINK=../lib/libnetlink.a ../lib/libutil.a
LDLIBS += $(LIBNETLINK)
-ifeq ($(HAVE_ELF),y)
- CFLAGS += -DHAVE_ELF
- LDLIBS += -lelf
-endif
-
-ifeq ($(HAVE_MNL),y)
- CFLAGS += -DHAVE_LIBMNL $(shell $(PKG_CONFIG) libmnl --cflags)
- LDLIBS += $(shell $(PKG_CONFIG) libmnl --libs)
-endif
-
all: Config
@set -e; \
for i in $(SUBDIRS); \
diff --git a/bridge/Makefile b/bridge/Makefile
index 634c370a..fa448ea2 100644
--- a/bridge/Makefile
+++ b/bridge/Makefile
@@ -6,6 +6,11 @@ ifeq ($(IP_CONFIG_SETNS),y)
CFLAGS += -DHAVE_SETNS
endif
+ifeq ($(HAVE_MNL),y)
+ CFLAGS += -DHAVE_LIBMNL $(shell $(PKG_CONFIG) libmnl --cflags)
+ LDLIBS += $(shell $(PKG_CONFIG) libmnl --libs)
+endif
+
all: bridge
bridge: $(BROBJ) $(LIBNETLINK)
diff --git a/genl/Makefile b/genl/Makefile
index f5a0bfe4..f0efe1ac 100644
--- a/genl/Makefile
+++ b/genl/Makefile
@@ -17,6 +17,11 @@ LDFLAGS += -Wl,-export-dynamic
LDLIBS += -lm -ldl
endif
+ifeq ($(HAVE_MNL),y)
+ CFLAGS += -DHAVE_LIBMNL $(shell $(PKG_CONFIG) libmnl --cflags)
+ LDLIBS += $(shell $(PKG_CONFIG) libmnl --libs)
+endif
+
all: genl
genl: $(GENLOBJ) $(LIBNETLINK) $(LIBUTIL) $(GENLLIB)
diff --git a/misc/Makefile b/misc/Makefile
index 814a72fc..fa90308e 100644
--- a/misc/Makefile
+++ b/misc/Makefile
@@ -18,6 +18,11 @@ ifeq ($(IP_CONFIG_SETNS),y)
CFLAGS += -DHAVE_SETNS
endif
+ifeq ($(HAVE_MNL),y)
+ CFLAGS += -DHAVE_LIBMNL $(shell $(PKG_CONFIG) libmnl --cflags)
+ LDLIBS += $(shell $(PKG_CONFIG) libmnl --libs)
+endif
+
all: $(TARGETS)
ss: $(SSOBJ)
diff --git a/netem/Makefile b/netem/Makefile
index a68e2fdb..2499f086 100644
--- a/netem/Makefile
+++ b/netem/Makefile
@@ -1,3 +1,5 @@
+include ../Config
+
DISTGEN = maketable normal pareto paretonormal
DISTDATA = normal.dist pareto.dist paretonormal.dist experimental.dist
@@ -5,6 +7,11 @@ HOSTCC ?= $(CC)
CCOPTS = $(CBUILD_CFLAGS)
LDLIBS += -lm
+ifeq ($(HAVE_MNL),y)
+ CFLAGS += -DHAVE_LIBMNL $(shell $(PKG_CONFIG) libmnl --cflags)
+ LDLIBS += $(shell $(PKG_CONFIG) libmnl --libs)
+endif
+
all: $(DISTGEN) $(DISTDATA)
$(DISTGEN):