@@ -86,74 +86,63 @@ GIT ?= $(X_GIT_TOOL)
86
86
INSTALL ?= $(X_INSTALL_TOOL )
87
87
88
88
# Patch flags and tools for (cross) build
89
- FLAG_RELRO = -Wl,-z,relro,-z,now
90
- FLAG_GC_SECTIONS = -Wl,--gc-sections
91
- FLAG_STDLIB =
92
- CFLAGS_EXT = $(ARCHITECTURE_CFLAGS )
93
- CXXFLAGS_EXT = $(ARCHITECTURE_CFLAGS )
94
- EXE_FLAGS_EXT = $(ARCHITECTURE_CFLAGS )
95
- SO_FLAGS_EXT = $(ARCHITECTURE_CFLAGS )
96
- LDFLAGS_EXT = $(ARCHITECTURE_LDFLAGS )
89
+ FLAG_RELRO := -Wl,-z,relro,-z,now
90
+ FLAG_STDLIB :=
91
+ NOARCH_CFLAGS :=
92
+ NOARCH_CXXFLAGS :=
93
+ NOARCH_EXE_FLAGS :=
94
+ NOARCH_SO_FLAGS :=
95
+ NOARCH_LDFLAGS :=
97
96
98
97
ifeq ($(PLATFORM ) ,Solaris)
99
98
FLAG_RELRO =
100
99
LD = gld
101
100
else ifeq ($(PLATFORM),Windows)
102
101
FLAG_RELRO =
103
102
FLAG_STDLIB =
104
- CFLAGS_EXT += -DWINVER=0x600 -D_WIN32_WINNT=0x600
105
- CXXFLAGS_EXT += -DWINVER=0x600 -D_WIN32_WINNT=0x600
106
- EXE_FLAGS_EXT += -static-libgcc -static-libstdc++
107
- SO_FLAGS_EXT += -static-libgcc -static-libstdc++
108
- LDFLAGS_EXT += -T $(CURDIR ) /make/ld-windows.script
109
- else ifeq ($(PLATFORM),MacOS)
110
- FLAG_RELRO =
111
- FLAG_GC_SECTIONS =
112
- CXXFLAGS_EXT += --std=c++11
113
- else ifeq ($(PLATFORM),Haiku)
114
- EXE_FLAGS_EXT += -L/system/lib -L/system/develop/lib
115
- SO_FLAGS_EXT += -L/system/lib -L/system/develop/lib
116
- CXXFLAGS_EXT += -D_GNU_SOURCE -D_BSD_SOURCE
117
- CFLAGS_EXT += -D_GNU_SOURCE -D_BSD_SOURCE
118
- LDFLAGS_EXT += -L/system/develop/lib/
103
+ NOARCH_CFLAGS += -DWINVER=0x600 -D_WIN32_WINNT=0x600
104
+ NOARCH_CXXFLAGS += -DWINVER=0x600 -D_WIN32_WINNT=0x600
105
+ NOARCH_EXE_FLAGS += -static-libgcc -static-libstdc++
106
+ NOARCH_SO_FLAGS += -static-libgcc -static-libstdc++
107
+ NOARCH_LDFLAGS += -T $(CURDIR ) /make/ld-windows.script
119
108
else ifeq ($(PLATFORM),BSD)
120
- EXE_FLAGS_EXT += -L/usr/local/lib
121
- SO_FLAGS_EXT += -L/usr/local/lib
109
+ NOARCH_EXE_FLAGS += -L/usr/local/lib
110
+ NOARCH_SO_FLAGS += -L/usr/local/lib
122
111
endif
123
112
124
113
ifeq ($(DEBUG ) ,1)
125
- CFLAGS_EXT += -Og -g3 -DLSP_DEBUG -falign-functions=16
126
- CXXFLAGS_EXT += -Og -g3 -DLSP_DEBUG -falign-functions=16
114
+ NOARCH_CFLAGS += -Og -g3 -DLSP_DEBUG -falign-functions=16
115
+ NOARCH_CXXFLAGS += -Og -g3 -DLSP_DEBUG -falign-functions=16
127
116
else
128
- CFLAGS_EXT += -O2
129
- CXXFLAGS_EXT += -O2
117
+ NOARCH_CFLAGS += -O2
118
+ NOARCH_CXXFLAGS += -O2
130
119
endif
131
120
132
121
ifeq ($(ASAN ) ,1)
133
- CFLAGS_EXT += -fsanitize=address
134
- CXXFLAGS_EXT += -fsanitize=address
135
- EXE_FLAGS_EXT += -fsanitize=address
136
- SO_FLAGS_EXT += -fsanitize=address
122
+ NOARCH_CFLAGS += -fsanitize=address
123
+ NOARCH_CXXFLAGS += -fsanitize=address
124
+ NOARCH_EXE_FLAGS += -fsanitize=address
125
+ NOARCH_SO_FLAGS += -fsanitize=address
137
126
endif
138
127
139
128
ifeq ($(PROFILE ) ,1)
140
- CFLAGS_EXT += -pg -DLSP_PROFILE
141
- CXXFLAGS_EXT += -pg -DLSP_PROFILE
129
+ NOARCH_CFLAGS += -pg -DLSP_PROFILE
130
+ NOARCH_CXXFLAGS += -pg -DLSP_PROFILE
142
131
endif
143
132
144
133
ifeq ($(TRACE ) ,1)
145
- CFLAGS_EXT += -DLSP_TRACE
146
- CXXFLAGS_EXT += -DLSP_TRACE
134
+ NOARCH_CFLAGS += -DLSP_TRACE
135
+ NOARCH_CXXFLAGS += -DLSP_TRACE
147
136
endif
148
137
149
138
ifeq ($(STRICT ) ,1)
150
- CFLAGS_EXT += -Werror
151
- CXXFLAGS_EXT += -Werror
139
+ NOARCH_CFLAGS += -Werror
140
+ NOARCH_CXXFLAGS += -Werror
152
141
endif
153
142
154
143
ifeq ($(TEST ) ,1)
155
- CFLAGS_EXT += -DLSP_TESTING
156
- CXXFLAGS_EXT += -DLSP_TESTING
144
+ NOARCH_CFLAGS += -DLSP_TESTING
145
+ NOARCH_CXXFLAGS += -DLSP_TESTING
157
146
EXPORT_SYMBOLS ?= 1
158
147
else
159
148
ifeq ($(ARTIFACT_EXPORT_SYMBOLS),1)
164
153
endif
165
154
166
155
ifneq ($(EXPORT_SYMBOLS ) ,1)
167
- CFLAGS_EXT += -fvisibility=hidden
168
- CXXFLAGS_EXT += -fvisibility=hidden
156
+ NOARCH_CFLAGS += -fvisibility=hidden
157
+ NOARCH_CXXFLAGS += -fvisibility=hidden
169
158
endif
170
159
171
160
ifneq ($(ARTIFACT_EXPORT_HEADERS ) ,0)
@@ -175,41 +164,43 @@ else
175
164
endif
176
165
177
166
# Define flags for (cross) build
178
- CFLAGS += \
179
- $(CFLAGS_EXT ) \
167
+ NOARCH_CFLAGS += \
180
168
-fdata-sections \
181
169
-ffunction-sections \
182
170
-fno-asynchronous-unwind-tables \
183
171
-pipe \
184
172
-Wall
173
+ CFLAGS += $(ARCHITECTURE_CFLAGS ) $(NOARCH_CFLAGS )
174
+ HOST_CFLAGS += $(HOST_ARCHITECTURE_CFLAGS ) $(NOARCH_CFLAGS )
185
175
186
176
CDEFS += -DLSP_INSTALL_PREFIX=\\\"$(PREFIX ) \\\"
187
177
188
- CXXFLAGS += \
189
- $(CXXFLAGS_EXT ) \
178
+ NOARCH_CXXFLAGS += \
190
179
-fno-exceptions \
191
180
-fno-rtti \
192
181
-fdata-sections \
193
182
-ffunction-sections \
194
183
-fno-asynchronous-unwind-tables \
195
184
-pipe \
196
185
-Wall
186
+ CXXFLAGS += $(ARCHITECTURE_CFLAGS ) $(NOARCH_CXXFLAGS )
187
+ HOST_CXXFLAGS += $(HOST_ARCHITECTURE_CFLAGS ) $(NOARCH_CXXFLAGS )
197
188
198
189
CXXDEFS += -DLSP_INSTALL_PREFIX=\\\"$(PREFIX ) \\\"
199
190
200
191
INCLUDE :=
201
- LDFLAGS := $(LDFLAGS_EXT ) -r
202
- EXE_FLAGS := $(EXE_FLAGS_EXT ) $(FLAG_RELRO ) $(FLAG_GC_SECTIONS )
203
- SO_FLAGS := $(SO_FLAGS_EXT ) $(FLAG_RELRO ) $(FLAG_GC_SECTIONS ) -shared $(FLAG_STDLIB ) -fPIC
204
192
205
- # Define flags for host build
206
- HOST_CFLAGS := $(CFLAGS )
207
- HOST_CDEFS := $(CDEFS )
208
- HOST_CXXFLAGS := $(CXXFLAGS )
209
- HOST_CXXDEFS := $(CXXDEFS )
210
- HOST_LDFLAGS := $(LDFLAGS )
211
- HOST_EXE_FLAGS := $(EXE_FLAGS )
212
- HOST_SO_FLAGS := $(SO_FLAGS )
193
+ NOARCH_LDFLAGS += -r
194
+ LDFLAGS := $(ARCHITECTURE_LDFLAGS ) $(NOARCH_LDFLAGS )
195
+ HOST_LDFLAGS := $(HOST_ARCHITECTURE_LDFLAGS ) $(NOARCH_LDFLAGS )
196
+
197
+ NOARCH_EXE_FLAGS += $(FLAG_RELRO ) -Wl,--gc-sections
198
+ EXE_FLAGS := $(ARCHITECTURE_CFLAGS ) $(NOARCH_EXE_FLAGS )
199
+ HOST_EXE_FLAGS := $(HOST_ARCHITECTURE_CFLAGS ) $(NOARCH_EXE_FLAGS )
200
+
201
+ NOARCH_SO_FLAGS += $(FLAG_RELRO ) -Wl,--gc-sections -shared $(FLAG_STDLIB ) -fPIC
202
+ SO_FLAGS := $(ARCHITECTURE_CFLAGS ) $(NOARCH_SO_FLAGS )
203
+ HOST_SO_FLAGS := $(HOST_ARCHITECTURE_CFLAGS ) $(NOARCH_SO_FLAGS )
213
204
214
205
# The overall list of exported variables
215
206
TOOL_VARS := \
0 commit comments