@@ -88,6 +88,7 @@ INSTALL ?= $(X_INSTALL_TOOL)
8888# Patch flags and tools for (cross) build
8989FLAG_RELRO := -Wl,-z,relro,-z,now
9090FLAG_STDLIB :=
91+ FLAG_GC_SECTIONS := -Wl,--gc-sections
9192NOARCH_CFLAGS :=
9293NOARCH_CXXFLAGS :=
9394NOARCH_EXE_FLAGS :=
@@ -105,6 +106,11 @@ else ifeq ($(PLATFORM),Windows)
105106 NOARCH_EXE_FLAGS += -static-libgcc -static-libstdc++
106107 NOARCH_SO_FLAGS += -static-libgcc -static-libstdc++
107108 NOARCH_LDFLAGS += -T $(CURDIR ) /make/ld-windows.script
109+ else ifeq ($(PLATFORM),MacOS)
110+ FLAG_RELRO =
111+ FLAG_GC_SECTIONS =
112+ NOARCH_CXXFLAGS += -std=c++0x
113+ NOARCH_LDFLAGS += -keep_private_externs
108114else ifeq ($(PLATFORM),BSD)
109115 NOARCH_EXE_FLAGS += -L/usr/local/lib
110116 NOARCH_SO_FLAGS += -L/usr/local/lib
@@ -194,11 +200,11 @@ NOARCH_LDFLAGS += -r
194200LDFLAGS := $(ARCHITECTURE_LDFLAGS ) $(NOARCH_LDFLAGS )
195201HOST_LDFLAGS := $(HOST_ARCHITECTURE_LDFLAGS ) $(NOARCH_LDFLAGS )
196202
197- NOARCH_EXE_FLAGS += $(FLAG_RELRO ) -Wl,--gc-sections
203+ NOARCH_EXE_FLAGS += $(FLAG_RELRO ) $( FLAG_GC_SECTIONS )
198204EXE_FLAGS := $(ARCHITECTURE_CFLAGS ) $(NOARCH_EXE_FLAGS )
199205HOST_EXE_FLAGS := $(HOST_ARCHITECTURE_CFLAGS ) $(NOARCH_EXE_FLAGS )
200206
201- NOARCH_SO_FLAGS += $(FLAG_RELRO ) -Wl,--gc-sections -shared $(FLAG_STDLIB ) -fPIC
207+ NOARCH_SO_FLAGS += $(FLAG_RELRO ) $( FLAG_GC_SECTIONS ) -shared $(FLAG_STDLIB ) -fPIC
202208SO_FLAGS := $(ARCHITECTURE_CFLAGS ) $(NOARCH_SO_FLAGS )
203209HOST_SO_FLAGS := $(HOST_ARCHITECTURE_CFLAGS ) $(NOARCH_SO_FLAGS )
204210
0 commit comments