0
我已代碼排序的嵌套目錄,如Makefile文件 - 與SRC-和OBJ-文件嵌套目錄
src/cmn/abc.cpp
src/voc/xyz.cpp
和期望的目標輸出應該
obj/cmn/abc.o
obj/voc/xyz.o
Makefile的條目是通用的目標規則
SRC_FILES := src/cmn/abc.cpp src/voc/xyz.cpp
OBJ_FILES := $(patsubst %.cpp,*.o,$(patsubst src/%,obj%,$SRC_FILES))
通用目標規則很簡單(太簡單),不能按需要工作。它會在src文件旁邊創建obj文件,因爲它會錯過模式替換。此外它會錯過目錄創建(如obj/voc
)。
.cpp.o:
@$(CC) $(CC_FLAGS) $< -o [email protected]
如何定義目標以實現上述目標?