重用 makefile 规则

Ala*_*anT 6 nmake makefile

我正在学习 makefile,并试图找出如何重用规则。现在我有以下内容:

CPP = cl

CPPFLAGS = /Od /D "WIN32" /D "_CONSOLE" /D "_UNICODE" /D "UNICODE" /Gm /EHsc /RTC1 /MDd /Fo"Debug\\" /Fd"Debug\vc90.pdb" /W3 /nologo /c /ZI /TP /errorReport:prompt

.SUFFIXES: .exe .cpp

Exercise35.exe:
    $(CPP) Exercise35.cpp $(CPPFLAGS)

debug:
    $(CPP) Exercise35.cpp $(CPPFLAGS) /D "_DEBUG"
Run Code Online (Sandbox Code Playgroud)

该规则本质上是使用额外的命令行参数debug重复该规则,这似乎很糟糕。Exercise35有没有更好的办法?

edu*_*ffy 3

递归make,并将调试标志附加到CPPFLAGS.

debug:
    $(MAKE) CPPFLAGS="$(CPPFLAGS) /D _DBEBUG" Exercise35.exe
Run Code Online (Sandbox Code Playgroud)