我正在使用 CMake 构建一个大型库,我希望用户能够有选择地启用/禁用我的构建过程的某些部分。
如何向我的 CMake 构建添加命令行选项,例如,以便用户可以键入类似 cmake --build-partone --nobuild-parttwo --dothis=true --dothat=false ..
的内容?
显然 OPTION 关键字将创建可以从 CMake GUI 设置的变量,但我不知道如何从命令行执行此操作。
是的,您应该使用 option
命令。您可以通过这种方式从命令行设置选项:
//CMakeLists.txt
option(MyOption "MyOption" OFF)
//Command line
cmake -DMyOption=ON MyProjectFolder
请注意,-DMyOption
必须位于路径之前。
稍微修正一下:
如果您还有其他变量要传递,建议指明这些变量的类型:
//CMakeLists.txt
option(MyOption "MyOption" OFF)
//Command line
cmake -DMyOption:BOOL=ON MyProjectFolder -D...
cmake MyProjectFolder -DMyOption
不会打开(或关闭)该选项-DMyOption=ON
或-DMyOption=OFF
打开或关闭。