我正在尝试理解makefile,但gnu文档让我失望。以下是罐装食谱。我无法理解$ 1,$ 2,$ 3,并且它们没有出现在代码中的任何其他位置。
define make-depend-cpp
g++ -MM -MF $3 -MP -MT $2 $(CXXFLAGS) $(CXXDEFINES) $(INCLUDES) $1
endef
答案 0 :(得分:3)
这是一个宏观定义,这些是宏观的争论。因此,如果您在Makefile中的其他位置看到:
$(call make-depend-cpp, file1, file2, file3)
它将被替换为:
g++ -MM -MF file3 -MP -MT file2 $(CXXFLAGS) $(CXXDEFINES) $(INCLUDES) file1