重新创建一个配置
你可以用'--recheck'选项调用'config.status'以更新它自身。如果你修改了configure, 该选项是有用的,这是因为某些测试的结果可能会与上一次运行的结果不同。选项'--recheck'以与从前使用的参数 相同的参数,再加上'--no-create'选项以防
止configure运行'config.status'并创建 'Makefile'和其它文件,再加上'--no-recursion'选项以防止configure在子目录中运行 其它的configure,来重新运行configure。(这样做是让其它的'Makefile'规则可以在 'config.status'改变时运行它 关于一个例子,参见 自动地重新创建 )。
'config.status'还接受选项'--help',它打印'config.status'接受的选项的概述。 还接受选项'--version',它打印用于创建生成'config.status'的configure脚本的 Autoconf的版本号。'config.status'检查几个能够改变它的行为的可选的环境变鼠: 变鼠: CONFIG_SHELL
用于运行带有'--recheck'选项的configure的脚本。它必须是Bourne兼容的。 缺省shell是'/bin/sh'。
变鼠: CONFIG_STATUS
为shell脚本提供的,用于记录配置的文件名。缺省的文件名是'./config.status'。该变鼠在一个包使用了另一个 包的一部分,并且由于两个包是分开维护的而不能把configure合成一个的时候有用。
以下的变鼠为分开发布的包提供了一种共享由configure计算的结果的方式。如果某些包需要它们中某个包, 可能是一个通用库,所需要的特征的超集那么这样做就是有用的。这些变鼠允许一个'config.status'文件创建 由它的'configure.in'所指明的文件之外的文
件,因此它就可以被用于不同的包。
变鼠: CONFIG_FILES
用于执行'@variable@'替换的文件。缺省的文件在'configure.in'中作为参数提供给 AC—OUTPUT。变鼠: CONFIG_HEADERS
用于替换C #define语旬的文件。缺省的文件作为参数提供给AC—CONFIG—HEADER 如果没有调用那个宏,'config.status'就忽略本变鼠。
这些变鼠还允许你编写只重新生成一部分文件的'Makefile'规则。例如,在上面给出的依赖性之中 (参见 自动地重新创建 ),
在'configure.in'发生改变时, 'config.status'将运行两次。如果你对此感到厌烦,你可以使得每次运行都仅仅重新生成关于 那条规则的文件。
config.h: stamp-hstamp-h: config.h.in config.statusCONFIG—FILES= CONFIG—HEADERS=config.h ./config.status echo > stamp-hMakefile: Makefile.in config.statusCONFIG—FILES=Makefile CONFIG—HEADERS= ./config.status(如果'configure.in'并不调用AC—CONFIG—HEADER,就不必在make规则中设置 CONFIG—HEADERS。)