CMake用户选项的命令行帮助

时间:2013-12-12 04:42:06

标签: cmake

我的CMakeLists.txt文件中有一些选项,可以在命令行中使用-D进行选择,如下所示:

# Set some options the user may choose
OPTION(USE_MPI "Use the MPI library for parallelization" OFF)
OPTION(USE_OPENMP "Use OpenMP for parallelization" OFF)
OPTION(TESTING "Enable testing of both Fortran and Python code" OFF)
OPTION(PYTHON_TOOLS "Build the python helper tools" OFF)
OPTION(BUILD_DOCS "Build the documentation; turns on PYTHON_TOOLS" OFF)

我可以用

之类的东西激活其中一个
$ cmake . -DUSE_MPI=ON

有时我会忘记我选择的选项。如果有一些-h标志可以用来以自动方式在命令行上显示(以python的argparse样式),那将是很好的。

是否有自动生成特定CMakeLists.txt帮助文档的方法,和/或使用某种-h--help标记调用该帮助文档?我正在寻找能给我这种行为的东西:

$ cmake . --help
USE_MPI - Use the MPI library for parallelization (Default: OFF)
USE_OPENMP - Use OpenMP for parallelization (Default: OFF)
TESTING - Enable testing of both Fortran and Python code (Default: OFF)
PYTHON_TOOLS - Build the python helper tools (Default: OFF)
BUILD_DOCS - Build the documentation; turns on PYTHON_TOOLS (Default: OFF)

如果没有自动方式,是否至少有一种简单的方法可以将--help-h传递给CMakeLists.txt,以便我可以手动编写帮助信息?

1 个答案:

答案 0 :(得分:5)

我认为最接近你要找的是-L命令行arg。运行cmake . -LH应该配置项目,然后输出所有缓存的非高级变量及其帮助字符串。

i arg还允许您查看option的当前值,但这实际上在命令行“向导模式”中运行cmake - 它配置项目,要求您设置/更新每个变量一次一个。