summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorQiuwen Lu <[email protected]>2017-10-13 09:44:05 +0800
committerQiuwen Lu <[email protected]>2017-10-13 09:44:05 +0800
commit8d3bd791d0992f87ae0cf7e114a1c356e3e7d45b (patch)
treeff70c2c41d7291f68ff0d07ba679eac6642e66d4
parent528839e277fa7777c5499aeb078a7e3c2fbf4eaa (diff)
改进RPM打包方式,支持在编译Debug版本时,生成名为mrzcpd-debug的RPM包自动生成。
-rw-r--r--cmake/Package.cmake17
1 files changed, 16 insertions, 1 deletions
diff --git a/cmake/Package.cmake b/cmake/Package.cmake
index f11b153..83e2b53 100644
--- a/cmake/Package.cmake
+++ b/cmake/Package.cmake
@@ -1,4 +1,11 @@
-set(CPACK_PACKAGE_NAME "mrzcpd")
+if(CMAKE_BUILD_TYPE STREQUAL "Debug")
+ set(CPACK_PACKAGE_NAME "mrzcpd-debug")
+else()
+ set(CPACK_PACKAGE_NAME "mrzcpd")
+endif()
+
+message(STATUS "Package: ${CPACK_PACKAGE_NAME}")
+
set(CPACK_PACKAGE_VECDOR "Mesasoft@IIE")
set(CPACK_PACKAGE_VERSION_MAJOR "${MARSIO_VERSION_MAJOR}")
set(CPACK_PACKAGE_VERSION_MINOR "${MARSIO_VERSION_MINOR}")
@@ -18,6 +25,14 @@ set(CPACK_RPM_POST_INSTALL_SCRIPT_FILE ${CMAKE_SOURCE_DIR}/cmake/PostInstall.in)
set(CPACK_RPM_POST_UNINSTALL_SCRIPT_FILE ${CMAKE_SOURCE_DIR}/cmake/PostUninstall.in)
set(CPACK_RPM_PRE_UNINSTALL_SCRIPT_FILE ${CMAKE_SOURCE_DIR}/cmake/PreUninstall.in)
+# Must uninstall the debug package before install release package
+
+if(CMAKE_BUILD_TYPE STREQUAL "Debug")
+ set(CPACK_RPM_PACKAGE_CONFLICTS "mrzcpd")
+else()
+ set(CPACK_RPM_PACKAGE_CONFLICTS "mrzcpd-debug")
+endif()
+
# setup %config(noreplace)
set(CPACK_RPM_USER_FILELIST "/usr/lib/systemd/system/mrenv.service"
"/usr/lib/systemd/system/mrzcpd.service"