diff --git a/CMakeLists.txt b/CMakeLists.txt index 35e2fec3e6..d6e0d0173a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -489,7 +489,7 @@ if (USE_MAINTAINER_MODE) find_program(AWK_EXECUTABLE awk) endif () -include(ArangoDBInstall) +include(dbugInformation) find_program(FILE_EXECUTABLE file) detect_binary_id_type(CMAKE_DEBUG_FILENAMES_SHA_SUM) @@ -822,6 +822,7 @@ if (MSVC) include(generate_product_version) endif() +include(ArangoDBInstall) if (NOT(SKIP_PACKAGING)) include(packages/packages) endif() diff --git a/cmake/InstallMacros.cmake b/cmake/InstallMacros.cmake index f0ca20ac26..a9ad21de67 100644 --- a/cmake/InstallMacros.cmake +++ b/cmake/InstallMacros.cmake @@ -157,65 +157,3 @@ macro(to_native_path sourceVarName) endif() set("INC_${sourceVarName}" ${myVar}) endmacro() - -macro(install_debinfo - STRIP_DIR - USER_SUB_DEBINFO_DIR - USER_FILE - USER_STRIP_FILE) - - set(SUB_DEBINFO_DIR ${USER_SUB_DEBINFO_DIR}) - set(FILE ${USER_FILE}) - set(STRIP_FILE ${STRIP_DIR}/${USER_STRIP_FILE}) - - execute_process(COMMAND mkdir -p ${STRIP_DIR}) - if (NOT MSVC AND CMAKE_STRIP AND FILE_EXECUTABLE) - execute_process(COMMAND "rm" -f ${STRIP_FILE}) - - execute_process( - COMMAND ${FILE_EXECUTABLE} ${FILE} - OUTPUT_VARIABLE FILE_RESULT) - - string(REGEX - REPLACE ".*=([a-z0-9]*),.*" "\\1" - FILE_CHECKSUM - ${FILE_RESULT} - ) - string(LENGTH ${FILE_CHECKSUM} FILE_CHECKSUM_LEN) - - if (FILE_CHECKSUM_LEN EQUAL 40) - string(SUBSTRING ${FILE_CHECKSUM} 0 2 SUB_DIR) - string(SUBSTRING ${FILE_CHECKSUM} 2 -1 STRIP_FILE) - set(SUB_DEBINFO_DIR .build-id/${SUB_DIR}) - set(STRIP_FILE "${STRIP_FILE}.debug") - else () - set(STRIP_FILE ${USER_STRIP_FILE}) - endif() - execute_process(COMMAND ${CMAKE_OBJCOPY} --only-keep-debug ${FILE} ${STRIP_DIR}/${STRIP_FILE}) - set(FILE ${STRIP_DIR}/${STRIP_FILE}) - install( - PROGRAMS ${FILE} - DESTINATION ${CMAKE_INSTALL_DEBINFO_DIR}/${SUB_DEBINFO_DIR}) - endif() -endmacro() - - -# Detect whether this system has SHA checksums -macro(detect_binary_id_type sourceVar) - set(${sourceVar} false) - if (NOT MSVC AND CMAKE_STRIP AND FILE_EXECUTABLE) - execute_process( - COMMAND ${FILE_EXECUTABLE} ${FILE_EXECUTABLE} - OUTPUT_VARIABLE FILE_RESULT) - - string(REGEX - REPLACE ".*=([a-z0-9]*),.*" "\\1" - FILE_CHECKSUM - ${FILE_RESULT} - ) - string(LENGTH ${FILE_CHECKSUM} FILE_CHECKSUM_LEN) - if (FILE_CHECKSUM_LEN EQUAL 40) - set(${sourceVar} true) - endif() - endif() -endmacro() diff --git a/cmake/packages/dbg/deb.txt b/cmake/packages/dbg/deb.txt index 7930ac8cf3..fc81cad386 100644 --- a/cmake/packages/dbg/deb.txt +++ b/cmake/packages/dbg/deb.txt @@ -115,6 +115,7 @@ set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-${AR set(INSTALL_MACROS_NO_TARGET_INSTALL TRUE) +include(${ORIGINAL_SOURCE_DIR}/cmake/dbugInformation.cmake) include(${ORIGINAL_SOURCE_DIR}/cmake/InstallMacros.cmake) include(${ORIGINAL_SOURCE_DIR}/arangosh/dbg.cmake) include(${ORIGINAL_SOURCE_DIR}/arangod/dbg.cmake)