31 lines
982 B
CMake
31 lines
982 B
CMake
get_directory_property(INSTALL_TARGETS DIRECTORY
|
|
${CMAKE_SOURCE_DIR} BUILDSYSTEM_TARGETS)
|
|
|
|
# Iterate over all the targets that have an INSTALL_DESTINATION
|
|
# property (set by set_output_dirs) and call install() on them
|
|
foreach(TARGET IN LISTS INSTALL_TARGETS)
|
|
get_target_property(DESTINATION ${TARGET} INSTALL_DESTINATION)
|
|
if(NOT DESTINATION)
|
|
continue()
|
|
endif()
|
|
|
|
install(TARGETS ${TARGET}
|
|
RUNTIME DESTINATION ${DESTINATION}
|
|
LIBRARY DESTINATION ${DESTINATION}
|
|
BUNDLE DESTINATION ${DESTINATION}
|
|
ARCHIVE EXCLUDE_FROM_ALL)
|
|
endforeach()
|
|
|
|
if(NOT CPACK_GENERATOR)
|
|
return()
|
|
endif()
|
|
|
|
set(CPACK_PACKAGE_NAME ${PROJECT_NAME})
|
|
set(CPACK_PACKAGE_INSTALL_DIRECTORY ${PROJECT_NAME})
|
|
set(CPACK_PACKAGE_EXECUTABLES ${CLIENT_NAME} ${PROJECT_NAME})
|
|
set(CPACK_PACKAGE_FILE_NAME ${PROJECT_NAME}-${PRODUCT_VERSION})
|
|
set(CPACK_PACKAGE_CONTACT ${CONTACT_EMAIL})
|
|
set(CPACK_RESOURCE_FILE_LICENSE ${CMAKE_SOURCE_DIR}/COPYING.txt)
|
|
|
|
include(CPack)
|