80 $$(shell $$(FIND) $$($1_SOURCE_DIRS) -type f \( -name "$$($1_PREFIX)*.c" \
81 -o -name "$$($1_PREFIX)*.cpp" \))
82
83 $1_EXCLUDE_PATTERN := $$(addprefix %/, $$($1_EXCLUDE))
84 $1_FILTERED_FILE_LIST := $$(filter-out $$($1_EXCLUDE_PATTERN), $$($1_FILE_LIST))
85
86 # Setup a compilation for each and every one of them
87 $$(foreach file, $$($1_FILTERED_FILE_LIST),\
88 $$(eval name := $$(strip $$(basename $$(notdir $$(file))))) \
89 $$(eval unprefixed_name := $$(patsubst $$($1_PREFIX)%, %, $$(name))) \
90 $$(eval $$(call SetupNativeCompilation, BUILD_TEST_$$(name), \
91 NAME := $$(unprefixed_name), \
92 TYPE := $$($1_COMPILATION_TYPE), \
93 SRC := $$(patsubst %/,%,$$(dir $$(file))), \
94 INCLUDE_FILES := $$(notdir $$(file)), \
95 OBJECT_DIR := $$($1_OUTPUT_DIR)/support/$$(name), \
96 OUTPUT_DIR := $$($1_OUTPUT_DIR)/$$($1_OUTPUT_SUBDIR), \
97 CFLAGS := $$($1_BASE_CFLAGS) $$($1_CFLAGS) $$($1_CFLAGS_$$(name)), \
98 CXXFLAGS := $$($1_BASE_CXXFLAGS) $$($1_CFLAGS) $$($1_CFLAGS_$$(name)), \
99 LDFLAGS := $$($1_LDFLAGS) $$($1_LDFLAGS_$$(name)), \
100 DISABLED_WARNINGS_CXX_solstudio := wvarhidenmem, \
101 DISABLED_WARNINGS_CXX_gcc := format, \
102 LIBS := $$($1_LIBS_$$(name)), \
103 TOOLCHAIN := $(if $$(filter %.cpp, $$(file)), TOOLCHAIN_LINK_CXX, TOOLCHAIN_DEFAULT), \
104 OPTIMIZATION := $$(if $$($1_OPTIMIZATION_$$(name)),$$($1_OPTIMIZATION_$$(name)),LOW), \
105 COPY_DEBUG_SYMBOLS := false, \
106 STRIP_SYMBOLS := false, \
107 )) \
108 $$(eval $1 += $$(BUILD_TEST_$$(name)) ) \
109 )
110
111 endef
112
113 endif # _TEST_FILES_COMPILATION_GMK
|
80 $$(shell $$(FIND) $$($1_SOURCE_DIRS) -type f \( -name "$$($1_PREFIX)*.c" \
81 -o -name "$$($1_PREFIX)*.cpp" \))
82
83 $1_EXCLUDE_PATTERN := $$(addprefix %/, $$($1_EXCLUDE))
84 $1_FILTERED_FILE_LIST := $$(filter-out $$($1_EXCLUDE_PATTERN), $$($1_FILE_LIST))
85
86 # Setup a compilation for each and every one of them
87 $$(foreach file, $$($1_FILTERED_FILE_LIST),\
88 $$(eval name := $$(strip $$(basename $$(notdir $$(file))))) \
89 $$(eval unprefixed_name := $$(patsubst $$($1_PREFIX)%, %, $$(name))) \
90 $$(eval $$(call SetupNativeCompilation, BUILD_TEST_$$(name), \
91 NAME := $$(unprefixed_name), \
92 TYPE := $$($1_COMPILATION_TYPE), \
93 SRC := $$(patsubst %/,%,$$(dir $$(file))), \
94 INCLUDE_FILES := $$(notdir $$(file)), \
95 OBJECT_DIR := $$($1_OUTPUT_DIR)/support/$$(name), \
96 OUTPUT_DIR := $$($1_OUTPUT_DIR)/$$($1_OUTPUT_SUBDIR), \
97 CFLAGS := $$($1_BASE_CFLAGS) $$($1_CFLAGS) $$($1_CFLAGS_$$(name)), \
98 CXXFLAGS := $$($1_BASE_CXXFLAGS) $$($1_CFLAGS) $$($1_CFLAGS_$$(name)), \
99 LDFLAGS := $$($1_LDFLAGS) $$($1_LDFLAGS_$$(name)), \
100 DISABLED_WARNINGS_gcc := format undef unused-function unused-value, \
101 DISABLED_WARNINGS_clang := undef format-nonliteral \
102 missing-field-initializers sometimes-uninitialized, \
103 DISABLED_WARNINGS_CXX_solstudio := wvarhidenmem, \
104 LIBS := $$($1_LIBS_$$(name)), \
105 TOOLCHAIN := $(if $$(filter %.cpp, $$(file)), TOOLCHAIN_LINK_CXX, TOOLCHAIN_DEFAULT), \
106 OPTIMIZATION := $$(if $$($1_OPTIMIZATION_$$(name)),$$($1_OPTIMIZATION_$$(name)),LOW), \
107 COPY_DEBUG_SYMBOLS := false, \
108 STRIP_SYMBOLS := false, \
109 )) \
110 $$(eval $1 += $$(BUILD_TEST_$$(name)) ) \
111 )
112
113 endef
114
115 endif # _TEST_FILES_COMPILATION_GMK
|