如何使CPack DebugInfo RPM取决于运行时RPM

时间:2019-06-03 09:40:36

标签: cmake rpm cpack

我已成功使用Cmake版本3.13.4(在CentOS 7上)构建C ++ 项目,然后使用CPack(来自CMake)构建两个RPM,一个RUNTIME和一个 一个DEVEL。我已经使用以下命令将DEVEL设置为取决于运行时间:

SET(CPACK_RPM_DEVEL_PACKAGE_REQUIRES "${PROJECT_NAME} == ${FULL_VERSION}-${RELEASE_STRING}%{?dist}")

这完全符合我的期望;要求DEVEL软件包具有 与安装的RUNTIME完全相同的发行版。

我还使用:SET(CPACK_RPM_RUNTIME_DEBUGINFO_PACKAGE ON)为运行时RPM中的代码创建一个单独的debuginfo RPM。这也是 可以按预期工作。如果用户已安装所有三个RPM,则 一切都好。然后,他们了解到(所有三个RPM)的更新。 放置在仓库中,因此他们运行“ sudo yum update myRpm-devel”,知道 这还将更新运行时程序包。不幸的是,这没有更新 debuginfo软件包,因此它们不再同步。

我四处搜寻,并尝试使用 CPACK_RPM_<COMPONENT_NAME>_DEBUGINFO_PACKAGE_REQUIRES来自CMake的变量, 但它不起作用,而且由于我正在使用CPack生成我的SPEC文件,因此无法 看到另一种修改它们的方法。 CPack仅生成两个SPEC文件,一个用于 DEVEL和一个RUNTIME,以及其他说明 生成debuginfo都在RUNTIME的SPEC文件中。

是否可以为debuginfo RPM设置软件包需求?

0 个答案:

没有答案