Skip to content

Commit 0790e7f

Browse files
committed
Updated build scripts
1 parent 89d987e commit 0790e7f

File tree

4 files changed

+65
-67
lines changed

4 files changed

+65
-67
lines changed

make/configure.mk

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#
2-
# Copyright (C) 2020 Linux Studio Plugins Project <https://lsp-plug.in/>
3-
# (C) 2020 Vladimir Sadovnikov <[email protected]>
2+
# Copyright (C) 2024 Linux Studio Plugins Project <https://lsp-plug.in/>
3+
# (C) 2024 Vladimir Sadovnikov <[email protected]>
44
#
55
# This file is part of lsp-dsp-lib
66
#
@@ -268,8 +268,9 @@ $(CONFIG_VARS): prepare
268268
echo "$(@)=$($(@))" >> "$(CONFIG)"
269269

270270
config: $(CONFIG_VARS)
271-
echo "Architecture: $(ARCHITECTURE_FAMILY)/$(ARCHITECTURE) ($(ARCHITECTURE_CFLAGS))"
272-
echo "Features: $(FEATURES)"
271+
echo "Host architecture: $(HOST_ARCHITECTURE_FAMILY)/$(HOST_ARCHITECTURE) ($(HOST_ARCHITECTURE_CFLAGS))"
272+
echo "Architecture: $(ARCHITECTURE_FAMILY)/$(ARCHITECTURE) ($(ARCHITECTURE_CFLAGS))"
273+
echo "Features: $(FEATURES)"
273274
echo "Configured OK"
274275

275276
help: | pathvars toolvars sysvars

make/functions.mk

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#
2-
# Copyright (C) 2020 Linux Studio Plugins Project <https://lsp-plug.in/>
3-
# (C) 2020 Vladimir Sadovnikov <[email protected]>
2+
# Copyright (C) 2024 Linux Studio Plugins Project <https://lsp-plug.in/>
3+
# (C) 2024 Vladimir Sadovnikov <[email protected]>
44
#
55
# This file is part of lsp-dsp-lib
66
#

make/modules.mk

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#
2-
# Copyright (C) 2020 Linux Studio Plugins Project <https://lsp-plug.in/>
3-
# (C) 2020 Vladimir Sadovnikov <[email protected]>
2+
# Copyright (C) 2024 Linux Studio Plugins Project <https://lsp-plug.in/>
3+
# (C) 2024 Vladimir Sadovnikov <[email protected]>
44
#
55
# This file is part of lsp-dsp-lib
66
#
@@ -45,9 +45,15 @@ UNIQ_ALL_DEPENDENCIES := $(filter-out $(ARTIFACT_ID),$(call uniq, $(ALL_DEP
4545
MODULES ?= $(BASEDIR)/modules
4646
GIT ?= git
4747

48+
ifeq ($(DEVEL),1)
49+
X_URL_SUFFIX = _RW
50+
else
51+
X_URL_SUFFIX = _RO
52+
endif
53+
4854
ifeq ($(TREE),1)
4955
$(foreach dep,$(UNIQ_ALL_DEPENDENCIES), \
50-
$(eval $(dep)_URL=$($(dep)_URL_RO)) \
56+
$(eval $(dep)_URL=$($(dep)_URL$(X_URL_SUFFIX))) \
5157
)
5258

5359
ifeq ($(findstring -devel,$(ARTIFACT_VERSION)),-devel)

make/tools.mk

Lines changed: 49 additions & 58 deletions
Original file line numberDiff line numberDiff line change
@@ -86,74 +86,63 @@ GIT ?= $(X_GIT_TOOL)
8686
INSTALL ?= $(X_INSTALL_TOOL)
8787

8888
# 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 :=
9796

9897
ifeq ($(PLATFORM),Solaris)
9998
FLAG_RELRO =
10099
LD = gld
101100
else ifeq ($(PLATFORM),Windows)
102101
FLAG_RELRO =
103102
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
119108
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
122111
endif
123112

124113
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
127116
else
128-
CFLAGS_EXT += -O2
129-
CXXFLAGS_EXT += -O2
117+
NOARCH_CFLAGS += -O2
118+
NOARCH_CXXFLAGS += -O2
130119
endif
131120

132121
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
137126
endif
138127

139128
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
142131
endif
143132

144133
ifeq ($(TRACE),1)
145-
CFLAGS_EXT += -DLSP_TRACE
146-
CXXFLAGS_EXT += -DLSP_TRACE
134+
NOARCH_CFLAGS += -DLSP_TRACE
135+
NOARCH_CXXFLAGS += -DLSP_TRACE
147136
endif
148137

149138
ifeq ($(STRICT),1)
150-
CFLAGS_EXT += -Werror
151-
CXXFLAGS_EXT += -Werror
139+
NOARCH_CFLAGS += -Werror
140+
NOARCH_CXXFLAGS += -Werror
152141
endif
153142

154143
ifeq ($(TEST),1)
155-
CFLAGS_EXT += -DLSP_TESTING
156-
CXXFLAGS_EXT += -DLSP_TESTING
144+
NOARCH_CFLAGS += -DLSP_TESTING
145+
NOARCH_CXXFLAGS += -DLSP_TESTING
157146
EXPORT_SYMBOLS ?= 1
158147
else
159148
ifeq ($(ARTIFACT_EXPORT_SYMBOLS),1)
@@ -164,8 +153,8 @@ else
164153
endif
165154

166155
ifneq ($(EXPORT_SYMBOLS),1)
167-
CFLAGS_EXT += -fvisibility=hidden
168-
CXXFLAGS_EXT += -fvisibility=hidden
156+
NOARCH_CFLAGS += -fvisibility=hidden
157+
NOARCH_CXXFLAGS += -fvisibility=hidden
169158
endif
170159

171160
ifneq ($(ARTIFACT_EXPORT_HEADERS),0)
@@ -175,41 +164,43 @@ else
175164
endif
176165

177166
# Define flags for (cross) build
178-
CFLAGS += \
179-
$(CFLAGS_EXT) \
167+
NOARCH_CFLAGS += \
180168
-fdata-sections \
181169
-ffunction-sections \
182170
-fno-asynchronous-unwind-tables \
183171
-pipe \
184172
-Wall
173+
CFLAGS += $(ARCHITECTURE_CFLAGS) $(NOARCH_CFLAGS)
174+
HOST_CFLAGS += $(HOST_ARCHITECTURE_CFLAGS) $(NOARCH_CFLAGS)
185175

186176
CDEFS += -DLSP_INSTALL_PREFIX=\\\"$(PREFIX)\\\"
187177

188-
CXXFLAGS += \
189-
$(CXXFLAGS_EXT) \
178+
NOARCH_CXXFLAGS += \
190179
-fno-exceptions \
191180
-fno-rtti \
192181
-fdata-sections \
193182
-ffunction-sections \
194183
-fno-asynchronous-unwind-tables \
195184
-pipe \
196185
-Wall
186+
CXXFLAGS += $(ARCHITECTURE_CFLAGS) $(NOARCH_CXXFLAGS)
187+
HOST_CXXFLAGS += $(HOST_ARCHITECTURE_CFLAGS) $(NOARCH_CXXFLAGS)
197188

198189
CXXDEFS += -DLSP_INSTALL_PREFIX=\\\"$(PREFIX)\\\"
199190

200191
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
204192

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)
213204

214205
# The overall list of exported variables
215206
TOOL_VARS := \

0 commit comments

Comments
 (0)