Skip to content

Commit fe34667

Browse files
committed
Updated makefile
1 parent f23f38a commit fe34667

File tree

5 files changed

+38
-27
lines changed

5 files changed

+38
-27
lines changed

CHANGELOG

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
* Submitted x86/x86_64 AVX2-optimized linear interpolation functions.
88
* Submitted ARMv7 NEON-optimized linear interpolation functions.
99
* Submitted AArch64 ASIMD-optimized linear interpolation functions.
10+
* Updated build system.
1011

1112
=== 0.5.11 ===
1213
* Improved build: fixed many GCC warnings.

dependencies.mk

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,12 +19,12 @@
1919
#
2020

2121
# Variables that describe dependencies
22-
LSP_COMMON_LIB_VERSION := 1.0.11
22+
LSP_COMMON_LIB_VERSION := 1.0.12
2323
LSP_COMMON_LIB_NAME := lsp-common-lib
2424
LSP_COMMON_LIB_TYPE := src
2525
LSP_COMMON_LIB_URL := https://github.com/sadko4u/$(LSP_COMMON_LIB_NAME).git
2626

27-
LSP_TEST_FW_VERSION := 1.0.7
27+
LSP_TEST_FW_VERSION := 1.0.8
2828
LSP_TEST_FW_NAME := lsp-test-fw
2929
LSP_TEST_FW_TYPE := src
3030
LSP_TEST_FW_URL := https://github.com/sadko4u/$(LSP_TEST_FW_NAME).git

make/configure.mk

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,7 @@ define srcconfig =
9595
$(if $($(name)_CFLAGS),, $(eval $(name)_CFLAGS := "-I\"$($(name)_INC)\"" $(if $(builtin),"-D$(name)_BUILTIN")))
9696
$(if $($(name)_LDLAGS),, $(eval $(name)_LDFLAGS :=))
9797
$(if $($(name)_OBJ),, $(eval $(name)_OBJ := "$($(name)_BIN)/$($(name)_NAME).o"))
98+
$(if $($(name)_OBJ_TEST),,$(eval $(name)_OBJ_TEST:= "$($(name)_BIN)/$($(name)_NAME)-test.o"))
9899
$(if $($(name)_MFLAGS),, $(eval $(name)_MFLAGS := $(if $(builtin),"-D$(name)_BUILTIN -fvisibility=hidden")))
99100
endef
100101

@@ -159,6 +160,7 @@ CONFIG_VARS = \
159160
$(name)_MFLAGS \
160161
$(name)_LDFLAGS \
161162
$(name)_OBJ \
163+
$(name)_OBJ_TEST \
162164
)
163165

164166
.DEFAULT_GOAL := config

make/modules.mk

Lines changed: 18 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -18,42 +18,45 @@
1818
# along with lsp-dsp-lib. If not, see <https://www.gnu.org/licenses/>.
1919
#
2020

21-
BASEDIR := $(CURDIR)
22-
CONFIG := $(CURDIR)/.config.mk
21+
BASEDIR := $(CURDIR)
22+
DEPLIST := $(BASEDIR)/dependencies.mk
23+
PROJECT := $(BASEDIR)/project.mk
24+
CONFIG := $(BASEDIR)/.config.mk
2325

2426
include $(BASEDIR)/make/functions.mk
25-
include $(BASEDIR)/dependencies.mk
26-
ifneq ($(TREE),1)
27+
ifeq ($(TREE),1)
28+
include $(DEPLIST)
29+
else
2730
-include $(CONFIG)
2831
endif
29-
include $(BASEDIR)/project.mk
32+
include $(PROJECT)
3033

31-
SYS_DEPENDENCIES = $(DEPENDENCIES) $(TEST_DEPENDENCIES)
32-
ALL_DEPENDENCIES_UNIQ = $(call uniq,$(ALL_DEPENDENCIES))
34+
UNIQ_DEPENDENCIES = $(call uniq,$(DEPENDENCIES) $(TEST_DEPENDENCIES))
35+
UNIQ_ALL_DEPENDENCIES := $(call uniq,$(ALL_DEPENDENCIES))
3336

3437
# Find the proper branch of the GIT repository
3538
ifeq ($(TREE),1)
36-
MODULES := $(BASEDIR)/modules
37-
GIT := git
39+
MODULES := $(BASEDIR)/modules
40+
GIT := git
3841

3942
ifeq ($(findstring -devel,$(ARTIFACT_VERSION)),-devel)
40-
$(foreach dep, $(ALL_DEPENDENCIES_UNIQ), \
43+
$(foreach dep, $(UNIQ_ALL_DEPENDENCIES), \
4144
$(eval $(dep)_BRANCH=devel) \
4245
$(eval $(dep)_PATH=$(MODULES)/$($(dep)_NAME)) \
4346
)
4447
else
45-
$(foreach dep, $(ALL_DEPENDENCIES_UNIQ), \
48+
$(foreach dep, $(UNIQ_ALL_DEPENDENCIES), \
4649
$(eval $(dep)_BRANCH="$($(dep)_VERSION)") \
4750
$(eval $(dep)_PATH=$(MODULES)/$($(dep)_NAME)) \
4851
)
4952
endif
5053
endif
5154

5255
# Form list of modules, exclude all modules that have 'system' version
53-
SRC_MODULES = $(foreach dep, $(SYS_DEPENDENCIES), $(if $(findstring src,$($(dep)_TYPE)),$(dep)))
54-
HDR_MODULES = $(foreach dep, $(SYS_DEPENDENCIES), $(if $(findstring hdr,$($(dep)_TYPE)),$(dep)))
55-
ALL_SRC_MODULES = $(foreach dep, $(ALL_DEPENDENCIES_UNIQ), $(if $(findstring src,$($(dep)_TYPE)),$(dep)))
56-
ALL_HDR_MODULES = $(foreach dep, $(ALL_DEPENDENCIES_UNIQ), $(if $(findstring hdr,$($(dep)_TYPE)),$(dep)))
56+
SRC_MODULES = $(foreach dep, $(UNIQ_DEPENDENCIES), $(if $(findstring src,$($(dep)_TYPE)),$(dep)))
57+
HDR_MODULES = $(foreach dep, $(UNIQ_DEPENDENCIES), $(if $(findstring hdr,$($(dep)_TYPE)),$(dep)))
58+
ALL_SRC_MODULES = $(foreach dep, $(UNIQ_ALL_DEPENDENCIES), $(if $(findstring src,$($(dep)_TYPE)),$(dep)))
59+
ALL_HDR_MODULES = $(foreach dep, $(UNIQ_ALL_DEPENDENCIES), $(if $(findstring hdr,$($(dep)_TYPE)),$(dep)))
5760
ALL_PATHS = $(foreach dep, $(ALL_SRC_MODULES) $(ALL_HDR_MODULES), $($(dep)_PATH))
5861

5962
# Branches

src/Makefile

Lines changed: 15 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ ARTIFACT_LIBLINK = $(LIBRARY_PREFIX)$(ARTIFACT_NAME)$(LIBRARY_EXT)
4242
ARTIFACT_SLIBLINK = $(LIBRARY_PREFIX)$(ARTIFACT_NAME)$(STATICLIB_EXT)
4343
ARTIFACT_PC = $(ARTIFACT_BIN)/$(ARTIFACT_NAME)$(PKGCONFIG_EXT)
4444
ARTIFACT_OBJ = $($(ARTIFACT_ID)_OBJ)
45+
ARTIFACT_OBJ_TEST = $($(ARTIFACT_ID)_OBJ_TEST)
4546
ARTIFACT_MFLAGS = $($(ARTIFACT_ID)_MFLAGS) $(foreach dep,$(DEPENDENCIES),-DUSE_$(dep))
4647
ARTIFACT_DEPS = $(call dquery, OBJ, $(DEPENDENCIES))
4748
ARTIFACT_CFLAGS = $(call query, CFLAGS, $(DEPENDENCIES) $(ARTIFACT_ID))
@@ -53,11 +54,13 @@ ARTIFACT_TARGETS = $(ARTIFACT_LIB) $(ARTIFACT_SLIB) $(ARTIFACT_PC)
5354
# Source code
5455
CXX_SRC_MAIN = main/dsp.cpp main/generic/generic.cpp
5556
CXX_SRC_TEST = $(call rwildcard, test, *.cpp)
57+
CXX_SRC_NOTEST =
5658
CXX_SRC_EXT = $(patsubst $($(ARTIFACT_ID)_BIN)/%.o, %.cpp, $(CXX_OBJ_EXT))
5759
CXX_SRC = $(CXX_SRC_MAIN) $(CXX_SRC_EXT)
5860

5961
CXX_OBJ_MAIN = $(patsubst %.cpp, $($(ARTIFACT_ID)_BIN)/%.o, $(CXX_SRC_MAIN))
6062
CXX_OBJ_TEST = $(patsubst %.cpp, $($(ARTIFACT_ID)_BIN)/%.o, $(CXX_SRC_TEST))
63+
CXX_OBJ_NOTEST = $(patsubst %.cpp, $($(ARTIFACT_ID)_BIN)/%.o, $(CXX_SRC_NOTEST))
6164
CXX_OBJ_EXT =
6265
CXX_OBJ_X86 = $(ARTIFACT_BIN)/main/x86/x86.o
6366
CXX_OBJ_SSE = $(ARTIFACT_BIN)/main/x86/sse.o
@@ -100,8 +103,6 @@ CXX_ASIMD_CFLAGS = -march=armv8-a+simd
100103
BUILD_ALL = $(ARTIFACT_LIB) $(ARTIFACT_SLIB) $(ARTIFACT_PC)
101104

102105
ifeq ($($(ARTIFACT_ID)_TESTING),1)
103-
CXX_SRC += $(CXX_SRC_TEST)
104-
CXX_OBJ += $(CXX_OBJ_TEST)
105106
ARTIFACT_TARGETS += $(ARTIFACT_TEST_BIN)
106107
endif
107108

@@ -139,7 +140,7 @@ $(ARTIFACT_DEPS):
139140
# Compilation
140141
compile: $(ARTIFACT_OBJ)
141142

142-
$(CXX_OBJ_MAIN) $(CXX_OBJ_EXT) $(CXX_OBJ_TEST):
143+
$(CXX_OBJ_MAIN) $(CXX_OBJ_EXT) $(CXX_OBJ_TEST) $(CXX_OBJ_NOTEST):
143144
@echo " $(CXX) [$(ARTIFACT_NAME)] $(CXX_FILE)"
144145
@mkdir -p $(dir $@)
145146
@$(CXX) -o $(@) -c $(CXX_FILE) -fPIC $(CXXFLAGS) $(ARTIFACT_MFLAGS) $(EXT_FLAGS) $(INCLUDE) $(ARTIFACT_CFLAGS)
@@ -148,21 +149,25 @@ $(CXX_OBJ_MAIN) $(CXX_OBJ_EXT) $(CXX_OBJ_TEST):
148149
$(ARTIFACT_OBJ): $(CXX_OBJ)
149150
@echo " $(LD) [$(ARTIFACT_NAME)] $(notdir $(ARTIFACT_OBJ))"
150151
@$(LD) -o $(ARTIFACT_OBJ) -r $(CXX_OBJ)
151-
152+
153+
$(ARTIFACT_OBJ_TEST): $(CXX_OBJ_TEST)
154+
@echo " $(LD) [$(ARTIFACT_NAME)] $(notdir $(ARTIFACT_OBJ_TEST))"
155+
@$(LD) -o $(ARTIFACT_OBJ_TEST) -r $(CXX_OBJ_TEST)
156+
152157
# Linking
153158
all: $(ARTIFACT_TARGETS)
154159

155-
$(ARTIFACT_LIB): $(ARTIFACT_DEPS) $(ARTIFACT_OBJ)
160+
$(ARTIFACT_LIB): $(ARTIFACT_DEPS) $(ARTIFACT_OBJ) $(CXX_OBJ_NOTEST)
156161
@echo " $(CXX) [$(ARTIFACT_NAME)] $(notdir $(ARTIFACT_LIB))"
157-
@$(CXX) -o $(ARTIFACT_LIB) $(ARTIFACT_OBJFILES) $(SO_FLAGS) $(ARTIFACT_LDFLAGS)
162+
@$(CXX) -o $(ARTIFACT_LIB) $(ARTIFACT_OBJFILES) $(CXX_OBJ_NOTEST) $(SO_FLAGS) $(ARTIFACT_LDFLAGS)
158163

159-
$(ARTIFACT_SLIB): $(ARTIFACT_DEPS) $(ARTIFACT_OBJ)
164+
$(ARTIFACT_SLIB): $(ARTIFACT_DEPS) $(ARTIFACT_OBJ) $(CXX_OBJ_NOTEST)
160165
@echo " $(AR) [$(ARTIFACT_NAME)] $(notdir $(ARTIFACT_SLIB))"
161-
@$(AR) rcs $(ARTIFACT_SLIB) $(ARTIFACT_OBJFILES)
166+
@$(AR) rcs $(ARTIFACT_SLIB) $(ARTIFACT_OBJFILES) $(CXX_OBJ_NOTEST)
162167

163-
$(ARTIFACT_TEST_BIN): $(ARTIFACT_DEPS) $(ARTIFACT_OBJ) $(ARTIFACT_TEST_OBJ)
168+
$(ARTIFACT_TEST_BIN): $(ARTIFACT_DEPS) $(ARTIFACT_OBJ) $(ARTIFACT_OBJ_TEST)
164169
@echo " $(CXX) [$(ARTIFACT_NAME)] $(notdir $(ARTIFACT_TEST_BIN))"
165-
@$(CXX) -o $(ARTIFACT_TEST_BIN) $(ARTIFACT_OBJFILES) $(EXE_FLAGS) $(ARTIFACT_LDFLAGS)
170+
@$(CXX) -o $(ARTIFACT_TEST_BIN) $(ARTIFACT_OBJFILES) $(ARTIFACT_OBJ_TEST) $(EXE_FLAGS) $(ARTIFACT_LDFLAGS)
166171

167172
$(ARTIFACT_PC):
168173
@mkdir -p $(dir $(ARTIFACT_PC))

0 commit comments

Comments
 (0)