我通常使用选项:-Dname = value将宏定义从"make命令行"传递给"makefile".该定义可在makefile中访问.
我还使用类似的编译器选项将宏定义从"makefile"传递到"源代码":-Dname = value(在许多编译器中都支持).可以在源代码中访问此定义.
我现在需要的是允许我的makefile用户能够立即将"make.exe命令行"中的任意宏定义传递给"源代码",而无需更改makefile中的任何内容.
所以用户可以输入:make -f mymakefile.mk -SOMEOPTION var = 5
然后直接代码main.c可以看到var:
int main()
{
int i = var;
}
Run Code Online (Sandbox Code Playgroud)