【问题标题】:defining default values in makefile在 makefile 中定义默认值
【发布时间】:2012-05-22 09:43:53
【问题描述】:

我的makefile有这样的一行

   CFLAGS = -c -g -D OPT1 -D OPT2

我想像这样通过命令行传递这个参数

 make ARG1= OPT1 ARG2 =OPT2    

如果我不通过命令行传递这些参数,我希望 makefile 使用 makefile 中定义的默认值。我该怎么做?

【问题讨论】:

标签: command-line makefile


【解决方案1】:

只需在 makefile 中做这样的事情:

OPT1 = MY_OPT_1 # defaults
OPT2 = MY_OPT_2

CFLAGS = -c -g -D $(OPT1) -D $(OPT2)

然后在命令行上:

$ make -e OPT1=SOME_OTHER_OPT1 OPT2=SOME_OTHER_OPT2

当您在命令行中为OPT1 和/或OPT2 指定值时,这些值将覆盖makefile 中的默认值。

请注意,在大多数情况下,您可能希望带有make-e 选项强制使用新的OPT1OPT2 值重新构建所有内容。

【讨论】:

  • 在你的 c/cpp 文件中使用 #ifdef OPT2 #endif
猜你喜欢
  • 2014-08-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-11-25
  • 2021-05-01
  • 2010-11-08
  • 2021-03-04
相关资源
最近更新 更多