summaryrefslogtreecommitdiffstats
path: root/Modules/CPackRPM.cmake
diff options
context:
space:
mode:
authorEric NOULARD <eric.noulard@gmail.com>2011-04-17 15:12:38 (GMT)
committerEric NOULARD <eric.noulard@gmail.com>2011-04-17 15:12:38 (GMT)
commitd3fd945900f1fc09816cb59745c2fb241fa9b36c (patch)
treed5776be634c94ea6d17a538ef1ed3ed1c99ff970 /Modules/CPackRPM.cmake
parent046b615bc87eb339d185627a82bab99d27c071e6 (diff)
downloadCMake-d3fd945900f1fc09816cb59745c2fb241fa9b36c.zip
CMake-d3fd945900f1fc09816cb59745c2fb241fa9b36c.tar.gz
CMake-d3fd945900f1fc09816cb59745c2fb241fa9b36c.tar.bz2
CPackRPM Fix #12096: handle absolute install path with component install
Diffstat (limited to 'Modules/CPackRPM.cmake')
-rw-r--r--Modules/CPackRPM.cmake14
1 files changed, 14 insertions, 0 deletions
diff --git a/Modules/CPackRPM.cmake b/Modules/CPackRPM.cmake
index 26209a7..d9d074c 100644
--- a/Modules/CPackRPM.cmake
+++ b/Modules/CPackRPM.cmake
@@ -495,6 +495,20 @@ EXECUTE_PROCESS(COMMAND find -type f -o -type l
WORKING_DIRECTORY "${WDIR}"
OUTPUT_VARIABLE CPACK_RPM_INSTALL_FILES)
+# In component case, replace CPACK_ABSOLUTE_DESTINATION_FILES
+# with the content of CPACK_ABSOLUTE_DESTINATION_FILES_<COMPONENT>
+# This must be done BEFORE the CPACK_ABSOLUTE_DESTINATION_FILES handling
+if(CPACK_RPM_PACKAGE_COMPONENT)
+ if(CPACK_ABSOLUTE_DESTINATION_FILES)
+ set(COMPONENT_FILES_TAG "CPACK_ABSOLUTE_DESTINATION_FILES_${CPACK_RPM_PACKAGE_COMPONENT}")
+ set(CPACK_ABSOLUTE_DESTINATION_FILES "${${COMPONENT_FILES_TAG}}")
+ if(CPACK_RPM_PACKAGE_DEBUG)
+ message("CPackRPM:Debug: Handling Absolute Destination Files ${CPACK_ABSOLUTE_DESTINATION_FILES}")
+ message("CPackRPM:Debug: in component = ${CPACK_RPM_PACKAGE_COMPONENT}")
+ endif(CPACK_RPM_PACKAGE_DEBUG)
+ endif()
+endif()
+
if (CPACK_ABSOLUTE_DESTINATION_FILES)
IF(CPACK_RPM_PACKAGE_DEBUG)
message("CPackRPM:Debug: Handling Absolute Destination Files: ${CPACK_ABSOLUTE_DESTINATION_FILES}")