我正在编写一个Makefile,执行一些依赖项生成,但是因为现有代码库包含混合的.cpp
和.cc
文件,所以我不得不复制规则。这似乎有点不美观。是否有办法指定目标的先决条件可以是.cpp
或.cc
文件?
因此,不需要像这样重复:
%.d : %.cpp
$(CPP) -MM $(CPPFLAGS) $<
%.d : %.cc
$(CPP) -MM $(CPPFLAGS) $<
创建不带重复的内容,例如:
%.d : %.(cpp | cc)
$(CPP) -MM $(CPPFLAGS) $<
这种强制冗余是GNU Make设计中不幸的元素吗?