summaryrefslogtreecommitdiff
path: root/Modules/CPackRPM.cmake
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2017-03-27 13:13:28 +0000
committerKitware Robot <kwrobot@kitware.com>2017-03-27 09:13:31 -0400
commit89e2c92f546c3d1b702b2c0ca206eabfc3f7caab (patch)
treece1fc1adbf299d4e347424e104be3e00fac2d7db /Modules/CPackRPM.cmake
parent42b7d132a8a20f06fec3a8a7d1dc1820f95e6896 (diff)
parentf237f5f851df64e009f97304e6569f7e259d44e6 (diff)
downloadcmake-89e2c92f546c3d1b702b2c0ca206eabfc3f7caab.tar.gz
Merge topic 'cpack-rpm-debuginfo-honor-package-filename'
f237f5f8 CPack/RPM: support for debuginfo package renaming 6c09c5d6 CPack/RPM honor package file name on debuginfo enabled Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !620
Diffstat (limited to 'Modules/CPackRPM.cmake')
-rw-r--r--Modules/CPackRPM.cmake44
1 files changed, 42 insertions, 2 deletions
diff --git a/Modules/CPackRPM.cmake b/Modules/CPackRPM.cmake
index 3766a3def1..cc54032cbe 100644
--- a/Modules/CPackRPM.cmake
+++ b/Modules/CPackRPM.cmake
@@ -817,6 +817,30 @@
# is set then :variable:`CPACK_RPM_DEBUGINFO_PACKAGE` is automatically set to
# ``ON`` when :variable:`CPACK_RPM_DEBUGINFO_SINGLE_PACKAGE` is set.
#
+# .. variable:: CPACK_RPM_DEBUGINFO_FILE_NAME
+# CPACK_RPM_<component>_DEBUGINFO_FILE_NAME
+#
+# Debuginfo package file name.
+#
+# * Mandatory : NO
+# * Default : rpmbuild tool generated package file name
+#
+# Alternatively provided debuginfo package file name must end with ``.rpm``
+# suffix and should differ from file names of other generated packages.
+#
+# Variable may contain ``@cpack_component@`` placeholder which will be
+# replaced by component name if component packaging is enabled otherwise it
+# deletes the placeholder.
+#
+# Setting the variable to ``RPM-DEFAULT`` may be used to explicitly set
+# filename generation to default.
+#
+# .. note::
+#
+# :variable:`CPACK_RPM_FILE_NAME` also supports rpmbuild tool generated package
+# file name - disabled by default but can be enabled by setting the variable to
+# ``RPM-DEFAULT``.
+#
# Packaging of sources (SRPM)
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^
#
@@ -2640,11 +2664,27 @@ mv %_topdir/tmpBBroot $RPM_BUILD_ROOT
unset(expected_filenames_)
unset(filenames_)
if(CPACK_RPM_DEBUGINFO_PACKAGE AND NOT CPACK_RPM_FILE_NAME STREQUAL "RPM-DEFAULT")
- string(TOLOWER "${CPACK_RPM_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}.*\\.rpm" efn_)
- list(APPEND expected_filenames_ "${efn_}")
+ list(APPEND expected_filenames_
+ "${CPACK_RPM_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}.*\\.rpm")
list(APPEND filenames_ "${CPACK_RPM_FILE_NAME}")
endif()
+ if(CPACK_RPM_DEBUGINFO_PACKAGE)
+ cpack_rpm_variable_fallback("CPACK_RPM_DEBUGINFO_FILE_NAME"
+ "CPACK_RPM_${CPACK_RPM_PACKAGE_COMPONENT}_DEBUGINFO_FILE_NAME"
+ "CPACK_RPM_${CPACK_RPM_PACKAGE_COMPONENT_UPPER}_DEBUGINFO_FILE_NAME"
+ "CPACK_RPM_DEBUGINFO_FILE_NAME")
+
+ if(CPACK_RPM_DEBUGINFO_FILE_NAME AND
+ NOT CPACK_RPM_DEBUGINFO_FILE_NAME STREQUAL "RPM-DEFAULT")
+ list(APPEND expected_filenames_
+ "${CPACK_RPM_PACKAGE_NAME}-debuginfo-${CPACK_PACKAGE_VERSION}.*\\.rpm")
+ string(REPLACE "@cpack_component@" "${CPACK_RPM_PACKAGE_COMPONENT}"
+ CPACK_RPM_DEBUGINFO_FILE_NAME "${CPACK_RPM_DEBUGINFO_FILE_NAME}")
+ list(APPEND filenames_ "${CPACK_RPM_DEBUGINFO_FILE_NAME}")
+ endif()
+ endif()
+
# check if other files have to be renamed
file(GLOB rename_files_ "${CPACK_RPM_DIRECTORY}/SPECS/*.rpm_name")
if(rename_files_)