Hi Willy,
please see the attached patch that fixes linking / LDFLAGS order of some
contrib modules which is related to e.g. linking with -Wl,--as-needed.
--
Regards,
Christian RuppertFrom c702537864f7e062d18f4ccce3e29d14d4ccf05f Mon Sep 17 00:00:00 2001
From: Christian Ruppert
Date: Thu, 30 Nov 2017 10:11:36 +0100
Subject: [PATCH] Fix LDFLAGS vs. LIBS re linking order
Signed-off-by: Christian Ruppert
---
contrib/mod_defender/Makefile | 5 ++---
contrib/modsecurity/Makefile | 5 ++---
contrib/spoa_example/Makefile | 5 ++---
3 files changed, 6 insertions(+), 9 deletions(-)
diff --git a/contrib/mod_defender/Makefile b/contrib/mod_defender/Makefile
index ac17774d..efc7d7f6 100644
--- a/contrib/mod_defender/Makefile
+++ b/contrib/mod_defender/Makefile
@@ -28,9 +28,8 @@ EVENT_INC := /usr/include
endif
CFLAGS += -g -Wall -pthread
-LDFLAGS += -lpthread $(EVENT_LIB) -levent_pthreads -lapr-1 -laprutil-1 -lstdc++ -lm
INCS += -I../../include -I../../ebtree -I$(MOD_DEFENDER_SRC) -I$(APACHE2_INC) -I$(APR_INC) -I$(EVENT_INC)
-LIBS =
+LIBS += -lpthread $(EVENT_LIB) -levent_pthreads -lapr-1 -laprutil-1 -lstdc++ -lm
CXXFLAGS = -g -std=gnu++11
CXXINCS += -I$(MOD_DEFENDER_SRC) -I$(MOD_DEFENDER_SRC)/deps -I$(APACHE2_INC) -I$(APR_INC)
@@ -43,7 +42,7 @@ CXXSRCS = $(wildcard $(MOD_DEFENDER_SRC)/*.cpp)
CXXOBJS = $(patsubst %.cpp, %.o, $(CXXSRCS))
defender: $(OBJS) $(CXXOBJS)
- $(LD) -o $@ $^ $(LDFLAGS) $(LIBS)
+ $(LD) $(LDFLAGS) -o $@ $^ $(LIBS)
install: defender
install defender $(DESTDIR)$(BINDIR)
diff --git a/contrib/modsecurity/Makefile b/contrib/modsecurity/Makefile
index bb918c30..aa0d6e38 100644
--- a/contrib/modsecurity/Makefile
+++ b/contrib/modsecurity/Makefile
@@ -34,14 +34,13 @@ EVENT_INC := /usr/include
endif
CFLAGS += -g -Wall -pthread
-LDFLAGS += -lpthread $(EVENT_LIB) -levent_pthreads -lcurl -lapr-1 -laprutil-1 -lxml2 -lpcre -lyajl
INCS += -I../../include -I../../ebtree -I$(MODSEC_INC) -I$(APACHE2_INC) -I$(APR_INC) -I$(LIBXML_INC) -I$(EVENT_INC)
-LIBS =
+LIBS += -lpthread $(EVENT_LIB) -levent_pthreads -lcurl -lapr-1 -laprutil-1 -lxml2 -lpcre -lyajl
OBJS = spoa.o modsec_wrapper.o
modsecurity: $(OBJS)
- $(LD) $(LDFLAGS) $(LIBS) -o $@ $^ $(MODSEC_LIB)/standalone.a
+ $(LD) $(LDFLAGS) -o $@ $^ $(MODSEC_LIB)/standalone.a $(LIBS)
install: modsecurity
install modsecurity $(DESTDIR)$(BINDIR)
diff --git a/contrib/spoa_example/Makefile b/contrib/spoa_example/Makefile
index d04a01e1..c44c2b87 100644
--- a/contrib/spoa_example/Makefile
+++ b/contrib/spoa_example/Makefile
@@ -6,15 +6,14 @@ CC = gcc
LD = $(CC)
CFLAGS = -g -O2 -Wall -Werror -pthread
-LDFLAGS = -lpthread -levent -levent_pthreads
INCS += -I../../ebtree -I./include
-LIBS =
+LIBS = -lpthread -levent -levent_pthreads
OBJS = spoa.o
spoa: $(OBJS)
- $(LD) $(LDFLAGS) $(LIBS) -o $@ $^
+ $(LD) $(LDFLAGS) -o $@ $^ $(LIBS)
install: spoa
install spoa $(DESTDIR)$(BINDIR)
--
2.13.6