# ========================================================================== # 2015 by KjellKod.cc. This is PUBLIC DOMAIN to use at your own risk and comes # with no warranties. This code is yours to share, use and modify with no # strings attached and no restrictions or obligations. # # For more information see g3log/LICENSE or refer refer to http://unlicense.org # ============================================================================*/ IF(${CMAKE_SYSTEM_NAME} MATCHES "Linux") IF(NOT CPACK_PACKAGING_INSTALL_PREFIX) IF(NOT CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) SET(CPACK_PACKAGING_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX}) # set(CMAKE_INSTALL_RPATH ${CMAKE_INSTALL_PREFIX}) ELSE() SET(CPACK_PACKAGING_INSTALL_PREFIX /usr/local) ENDIF() ENDIF() # message("Install rpath location: ${CMAKE_INSTALL_RPATH}") ENDIF() INCLUDE(CMakePackageConfigHelpers) INCLUDE(GNUInstallDirs) SET(CPACK_PACKAGE_NAME g3log) SET(CPACK_PACKAGE_VERSION_MAJOR ${MAJOR_VERSION}) SET(CPACK_PACKAGE_VERSION_MINOR ${MINOR_VERSION}) SET(CPACK_PACKAGE_VERSION_PATCH ${GIT_RELEASE_COMMITS}) SET(CPACK_PACKAGE_DESCRIPTION "Asynchronous 'crash safe' logger License: http://unlicense.org Repository: https://github.com/KjellKod/g3log") SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY ${CPACK_PACKAGE_DESCRIPTION}) SET(CPACK_PACKAGE_CONTACT "Kjell Hedstrom hedstrom@kjellkoc.cc") SET(CPACK_RESOURCE_FILE_LICENSE ${g3log_SOURCE_DIR}/LICENSE) SET(CPACK_PACKAGE_VENDOR "KjellKod") IF(INSTALL_G3LOG) INSTALL( TARGETS g3log EXPORT g3log-targets ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT libraries LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT libraries RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT libraries INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} ) INSTALL( FILES ${HEADER_FILES} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/g3log COMPONENT headers) INSTALL( EXPORT g3log-targets FILE g3logTargets.cmake DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/g3log ) CONFIGURE_PACKAGE_CONFIG_FILE( ${PROJECT_SOURCE_DIR}/cmake/g3logConfig.cmake ${CMAKE_CURRENT_BINARY_DIR}/g3logConfig.cmake INSTALL_DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/g3log ) install( FILES ${CMAKE_CURRENT_BINARY_DIR}/g3logConfig.cmake DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/g3log ) ENDIF() SET(CPACK_COMPONENTS_ALL libraries headers) SET(CPACK_COMPONENT_LIBRARIES_DISPLAY_NAME "g3log libraries") SET(CPACK_COMPONENT_HEADERS_DISPLAY_NAME "g3log C++ headers") IF(${CMAKE_SYSTEM_NAME} MATCHES "Linux") SET(CPACK_GENERATOR "DEB") SET(CPACK_DEBIAN_PACKAGE_MAINTAINER "KjellKod - Kjell Hedstrom") ELSEIF(${CMAKE_SYSTEM_NAME} MATCHES "Windows") SET(CPACK_GENERATOR "ZIP") # Otherwise, NSIS is needed. ENDIF() message( STATUS "\nTo create installation package: " ) message( STATUS "make package" ) message( STATUS "\nOption to install using 'make install'" ) message( STATUS "Installation locations: " ) message( STATUS "====================" ) message( STATUS "Headers: ${CPACK_PACKAGING_INSTALL_PREFIX}/${CMAKE_INSTALL_INCLUDEDIR}/g3log" ) message( STATUS "Library installation directory: ${CPACK_PACKAGING_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}" ) message( STATUS "For more information please see g3log/CPackLists.txt\n\n" ) IF(NOT MINGW) message( STATUS "To install: sudo dpkg -i g3log-***Linux.deb" ) message( STATUS "To list package contents: sudo dpkg --contents g3log-***Linux.deb" ) message( STATUS "List content of the installed package: sudo dpkg -L g3log" ) message( STATUS "To remove: sudo dpkg -r g3log" ) ENDIF() # NOTE: to change installation locations you can use the settings below # examples: # CPACK_PACKAGING_INSTALL_PREFIX # CPACK_OUTPUT_FILE_PREFIX # CMAKE_INSTALL_PREFIX INCLUDE(CPack)