@@ -89,6 +89,7 @@ INSTALL ?= $(X_INSTALL_TOOL)
89
89
FLAG_RELRO := -Wl,-z,relro,-z,now
90
90
FLAG_STDLIB :=
91
91
FLAG_GC_SECTIONS := -Wl,--gc-sections
92
+ FLAG_AS_NEEDED := -Wl,-as-needed
92
93
NOARCH_CFLAGS :=
93
94
NOARCH_CXXFLAGS :=
94
95
NOARCH_EXE_FLAGS :=
@@ -108,7 +109,8 @@ else ifeq ($(PLATFORM),Windows)
108
109
NOARCH_LDFLAGS += -T $(CURDIR ) /make/ld-windows.script
109
110
else ifeq ($(PLATFORM),MacOS)
110
111
FLAG_RELRO =
111
- FLAG_GC_SECTIONS =
112
+ FLAG_GC_SECTIONS =
113
+ FLAG_AS_NEEDED =
112
114
NOARCH_CXXFLAGS += -std=c++0x
113
115
NOARCH_LDFLAGS += -keep_private_externs
114
116
else ifeq ($(PLATFORM),BSD)
@@ -200,11 +202,11 @@ NOARCH_LDFLAGS += -r
200
202
LDFLAGS := $(ARCHITECTURE_LDFLAGS ) $(NOARCH_LDFLAGS )
201
203
HOST_LDFLAGS := $(HOST_ARCHITECTURE_LDFLAGS ) $(NOARCH_LDFLAGS )
202
204
203
- NOARCH_EXE_FLAGS += $(FLAG_RELRO ) $(FLAG_GC_SECTIONS )
205
+ NOARCH_EXE_FLAGS += $(FLAG_RELRO ) $(FLAG_GC_SECTIONS ) $( FLAG_AS_NEEDED )
204
206
EXE_FLAGS := $(ARCHITECTURE_CFLAGS ) $(NOARCH_EXE_FLAGS )
205
207
HOST_EXE_FLAGS := $(HOST_ARCHITECTURE_CFLAGS ) $(NOARCH_EXE_FLAGS )
206
208
207
- NOARCH_SO_FLAGS += $(FLAG_RELRO ) $(FLAG_GC_SECTIONS ) -shared $(FLAG_STDLIB ) -fPIC
209
+ NOARCH_SO_FLAGS += $(FLAG_RELRO ) $(FLAG_GC_SECTIONS ) $( FLAG_AS_NEEDED ) -shared $(FLAG_STDLIB ) -fPIC
208
210
SO_FLAGS := $(ARCHITECTURE_CFLAGS ) $(NOARCH_SO_FLAGS )
209
211
HOST_SO_FLAGS := $(HOST_ARCHITECTURE_CFLAGS ) $(NOARCH_SO_FLAGS )
210
212
0 commit comments