在 CPacCKConfig.cmake 中添加 -D 选项
Posted
技术标签:
【中文标题】在 CPacCKConfig.cmake 中添加 -D 选项【英文标题】:Add -D options in the CPacCKConfig.cmake 【发布时间】:2017-06-20 10:49:00 【问题描述】:我想知道当我们创建没有 CMake 的 Cpack-NSIS 安装程序时,是否可以添加 -D 选项。
例如:
在 CMAKE 中:cmake -DPRODUCT=MyProduct --build ...
在 CPACK 中:cpack.exe' -DPRODUCT=MyProduct -C Release --config CPackConfig.cmake
感谢您的帮助。
【问题讨论】:
【参考方案1】:cpack /?
表明您绝对可以使用 -D、-C 和 --config 选项。
【讨论】:
对不起,我的问题不是很精确。我知道我可以使用 -D 选项。但是文档表明 -D 定义了一个 CPACK 变量。我的选择不是。我想在 CPackConfig.cmake 中使用if(MyProduct)
然后 INSTALL(Files ...)
就像我会在 CmakeLists 中那样,但我认为这是不可能的。
@sovif 这不是直接可能的,因为 CPack 中使用的 CMake 语言处理器与 CMake 中的不同 - 它是一个受限制的子集,更像是“cmake -P”脚本模式而不是 CMake本身。您不能做与实际构建或安装相关的大多数事情,而是主要用于设置与可能运行其他脚本的 CPack 相关的变量。你也许可以使用execute_process()
或同等工具破解类似 CMake 的东西,但这可能不值得。以上是关于在 CPacCKConfig.cmake 中添加 -D 选项的主要内容,如果未能解决你的问题,请参考以下文章