在 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 选项的主要内容,如果未能解决你的问题,请参考以下文章

怎样在EXCEL中添加页眉/页脚?

怎么在QListWidgetItem中添加按钮

如何在vs2008 MFC中添加、删除成员变量

如何在AST中添加注释模板

在 UITextView 中添加按钮和文本

从 C# 添加新行时如何在 GridView 中添加删除链接?