最佳答案
我通常使用以下选项将宏定义从“ make 命令行”传递到“ makefile”: - Dname = value.
我还使用类似的编译器选项将宏定义从“ makefile”传递到“ source code”: - Dname = value (许多编译器都支持)。
我现在需要的是允许 makefile 的用户能够立即将任意的宏定义从“ mak.exe 命令行”传递到“ source code”,而不必更改 makefile 中的任何内容。
这样用户就可以输入: Make-f mymakefile.mk-SOMEOPTION var = 5
那么代码 main.c 可以直接看到 var:
int main()
{
int i = var;
}