如何用make
解决以下问题?
SRCS1 = a.c b,c
SRCS2 = d.c e.c
SRCS= $(SRCS1) $(SRCS2)
OBJS1 = $(subst .c,.o,$(SRCS1))
OBJS2 = $(subst .c,.o,$(SRCS2))
OBJS = $(OBJS1) $(OBJS2)
include ../Makeconf
(其中包含
CPPFLAGS=-Dfoo
)(主生成文件也位于../)现在我要编译定义了
SRCS1
的foo
和未定义了SRCS2
的foo
。我试过了
ifneq (,$(findstring $(OBJS2),$(OBJS)))
CPPFLAGS += -Ufoo
endif
但这会在编译时将
-Ufoo
添加到所有文件中。有什么想法吗? 最佳答案
您没有向我们展示足够的makefile来给出完整的答案,但我认为这正是您所要寻找的:
$(OBJS2): CPPFLAGS += -Ufoo