你可以"非珍贵"配置变量(AC_ARG_VAR的反转)?

时间:2015-12-13 23:44:46

标签: autotools autoconf

AC_ARG_VAR宏声明了一个变量,它具有一定的缓存检查含义。

某些配置宏声明某些变量很珍贵,我想撤消它。例如,AC_PROG_CC会将CFLAGS声称为珍贵,我需要将其设为非珍贵。

动机

执行此操作将允许我修改顶级配置中的CFLAGS并允许子包配置执行而不会与缓存的CFLAGS值发生冲突。有关更多背景信息,请参阅this question

1 个答案:

答案 0 :(得分:0)

AC_DEFUN([AX_UNPRECIOUS], [
    m4_define([_AC_PRECIOUS_VARS], m4_bpatsubst(_AC_PRECIOUS_VARS, [$1
], []))
])

AX_UNPRECIOUS([CFLAGS])
AX_UNPRECIOUS([CXXFLAGS])
...