Makefile目标使用不同的源

时间:2015-08-12 15:06:40

标签: makefile

我试图通过在目标中添加源代码来构建不同的源文件并将其链接到二进制文件中:

...

C_SOURCE_FILES  = common_file_1.c
C_SOURCE_FILES += common_file_2.c

target_1: C_SOURCE_FILES += target_1_specific_file.c
target_1: all

target_2: C_SOURCE_FILES += target_2_specific_file.c
target_2: all

C_SOURCE_FILE_NAMES = $(notdir $(C_SOURCE_FILES))
C_PATHS = $(call remduplicates, $(dir $(C_SOURCE_FILES) ) )
OBJECTS = $(addprefix _build/, $(C_SOURCE_FILE_NAMES:.c=.o) )

all:
    $(CC) $(LDFLAGS) $(OBJECTS) $(LIBS) -o _build/output_file.out

_build/%.o: %.c
    $(CC) $(CFLAGS) $(INC_PATHS) -c -o $@ $<

但由于某些原因,特定于目标的文件永远不会构建,即使我以这种方式启动:make target_1

编辑:

添加了OBJECTS的定义。

0 个答案:

没有答案