我想爲我的項目創建兩個不同的包。在cmake中使用CPack生成兩個不同的包:Linux
- DCM(包括除RCM特定模塊的所有模塊)
- RCM
1. DCM(特定模塊。): SRC/CMakeList.txt
cmake_minimum_required (VERSION 2.8)
add_subdirectory(ecs) # Include all modules
set(CPACK_GENERATOR TGZ)
set(CPACK_PACKAGE_NAME "dcm")
set(CPACK_PACKAGE_VENDOR "AB")
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Device Control")
set(CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_CURRENT_SOURCE_DIR}/ReadMe.txt")
set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/Copyright.txt")
set(CPACK_PACKAGE_VERSION_MAJOR ${VERSION_MAJOR})
set(CPACK_PACKAGE_VERSION_MINOR ${VERSION_MINOR})
set(CPACK_PACKAGE_VERSION_PATCH ${VERSION_PATCH})
set(CPACK_PACKAGE_VERSION_BUILD ${BUILD_NUMBER})
set(CPACK_COMPONENTS_ALL DCM RCM)
# Include CPack to introduce the appropriate targets
include(CPack)
2. RCM: src/ecs/mqa/mqa_rcm/CMakeList.txt
set(RCM_SCRIPTS
commit.sh
install.sh
prepare_for_install.sh
system_check.sh
update_init.sh)
INSTALL(FILES ${RCM_SCRIPTS}
PERMISSIONS OWNER_EXECUTE OWNER_WRITE OWNER_READ GROUP_EXECUTE WORLD_EXECUTE
DESTINATION ${RCM_INSTALL_PREFIX}/install
COMPONENT RCM)
# Create version file
install(FILES "${CMAKE_BINARY_DIR}/version"
DESTINATION ${RCM_INSTALL_PREFIX}
COMPONENT RCM)
嘗試: 在Linux虛擬機的提示。
$make -j4
$make install
$make package
它只創建單個包裝DCM-1.90.0-Linux.tar.gz
。
參考: CMake Wiki 和 CPack 和 StackOverflow
問題: 我想創建1. DCM-1.90.0-Linux.tar.gz
和2 RCM-1.90.0-Linux.tar.gz
包。
我使用Google搜索,但無法找到確切的解決方案。
如果您需要更多信息,請告知我。
很多預先感謝。
是否有我缺少的東西..? – 2015-02-24 12:18:46