1set(CMAKE_BUILD_WITH_INSTALL_RPATH 1) 2 3# Some compilers do not add build id to binaries by default. 4if(CMAKE_CXX_COMPILER_ID MATCHES "^(IntelLLVM|PGI|NVHPC)$") 5 string(APPEND CMAKE_EXE_LINKER_FLAGS "-Wl,--build-id") 6 string(APPEND CMAKE_SHARED_LINKER_FLAGS "-Wl,--build-id") 7endif() 8 9set(CMAKE_BUILD_TYPE Debug) 10 11# for rpm packages execute flag must be set for shared libs if debuginfo 12# packages are generated 13set(CPACK_RPM_INSTALL_WITH_EXEC TRUE) 14 15file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/test_lib.hpp" 16 "int test_lib();\n") 17file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/test_lib.cpp" 18 "#include \"test_lib.hpp\"\nint test_lib() {return 0;}\n") 19add_library(test_lib SHARED "${CMAKE_CURRENT_BINARY_DIR}/test_lib.cpp") 20 21file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/main.cpp" 22 "#include \"test_lib.hpp\"\nint main() {return test_lib();}\n") 23add_executable(test_prog "${CMAKE_CURRENT_BINARY_DIR}/main.cpp") 24target_link_libraries(test_prog test_lib) 25 26install(FILES "${CMAKE_CURRENT_BINARY_DIR}/test_lib.hpp" DESTINATION include COMPONENT appheaders) 27install(TARGETS test_prog DESTINATION foo COMPONENT applications) 28install(FILES CMakeLists.txt DESTINATION bar COMPONENT headers) 29install(TARGETS test_lib DESTINATION bas COMPONENT libs) 30 31set(CPACK_DEBIAN_DEBUGINFO_PACKAGE ON) 32 33set(CPACK_RPM_APPLICATIONS_FILE_NAME "RPM-DEFAULT") 34set(CPACK_RPM_APPLICATIONS_DEBUGINFO_PACKAGE ON) 35set(CPACK_DEBIAN_APPLICATIONS_FILE_NAME "DEB-DEFAULT") 36set(CPACK_DEBIAN_APPLICATIONS_DEBUGINFO_PACKAGE ON) 37 38# test that components with debuginfo enabled still honor 39# CPACK_PACKAGE_FILE_NAME setting 40set(CPACK_RPM_PACKAGE_NAME "Debuginfo") 41set(CPACK_PACKAGE_FILE_NAME "TestDinfo-pkg") 42set(CPACK_RPM_LIBS_DEBUGINFO_PACKAGE ON) 43set(CPACK_DEBIAN_PACKAGE_NAME "Debuginfo") 44set(CPACK_DEBIAN_LIBS_DEBUGINFO_PACKAGE ON) 45 46# Test that a component with debug info requested but without any debug info produces none 47set(CPACK_RPM_APPHEADERS_DEBUGINFO_PACKAGE ON) 48set(CPACK_DEBIAN_APPHEADERS_DEBUGINFO_PACKAGE ON) 49 50# test debuginfo package rename 51set(CPACK_RPM_DEBUGINFO_FILE_NAME 52 "@cpack_component@-DebugInfoPackage.rpm") 53set(CPACK_RPM_APPLICATIONS_DEBUGINFO_FILE_NAME "RPM-DEFAULT") 54 55set(CPACK_RPM_BUILD_SOURCE_DIRS_PREFIX "/src") 56