diff --git a/CMakeLists.txt b/CMakeLists.txt index 177fb1d6..623208a8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -32,20 +32,20 @@ endif () # if (CMAKE_INSTALL_LIBDIR) message(STATUS "CMAKE_INSTALL_LIBDIR ${CMAKE_INSTALL_LIBDIR}") - set(DYAD_INSTALL_BINDIR ${CMAKE_INSTALL_BINDIR}) - set(DYAD_INSTALL_LIBDIR ${CMAKE_INSTALL_LIBDIR}) + set(DYAD_INSTALL_BINDIR ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_BINDIR}) + set(DYAD_INSTALL_LIBDIR ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}) set(DYAD_INSTALL_INCLUDEDIR - ${CMAKE_INSTALL_INCLUDEDIR}) + ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_INCLUDEDIR}) set(DYAD_INSTALL_DOCDIR - ${CMAKE_INSTALL_DOCDIR}) + ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_DOCDIR}) set(DYAD_INSTALL_SYSCONFDIR - ${CMAKE_INSTALL_SYSCONFDIR}/modulefiles) + ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_SYSCONFDIR}/modulefiles) else () - set(DYAD_INSTALL_BINDIR "bin") - set(DYAD_INSTALL_LIBDIR "lib") - set(DYAD_INSTALL_INCLUDEDIR "include") - set(DYAD_INSTALL_DOCDIR "doc") - set(DYAD_INSTALL_SYSCONFDIR "etc/modulefiles") + set(DYAD_INSTALL_BINDIR "${CMAKE_INSTALL_PREFIX}/bin") + set(DYAD_INSTALL_LIBDIR "${CMAKE_INSTALL_PREFIX}/lib") + set(DYAD_INSTALL_INCLUDEDIR "${CMAKE_INSTALL_PREFIX}/include") + set(DYAD_INSTALL_DOCDIR "${CMAKE_INSTALL_PREFIX}/doc") + set(DYAD_INSTALL_SYSCONFDIR "${CMAKE_INSTALL_PREFIX}/etc/modulefiles") message(STATUS "DYAD_INSTALL_LIBDIR set to ${DYAD_INSTALL_LIBDIR}") endif () @@ -56,17 +56,17 @@ endif () set(CMAKE_PREFIX_PATH ${CMAKE_PREFIX_PATH} ${CMAKE_BINARY_DIR} ${CMAKE_INSTALL_PREFIX}) # This sets where to look for dependent library's cmake files list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules) -list(APPEND CMAKE_MODULE_PATH ${CMAKE_BINARY_DIR}/${DYAD_INSTALL_LIBDIR}/cmake) +list(APPEND CMAKE_MODULE_PATH ${CMAKE_BINARY_DIR}/lib/cmake) list(APPEND CMAKE_MODULE_PATH ${CMAKE_BINARY_DIR}/share/cmake) #------------------------------------------------------------------------------ # This doesn't really need to be in an 'if' statement since they're cache variables # if (NOT DYAD_EXTERNALLY_CONFIGURED) -set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/${DYAD_INSTALL_BINDIR} CACHE PATH "Single Directory for all Executables.") -set(CMAKE_INCLUDE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/${DYAD_INSTALL_INCLUDEDIR} CACHE PATH "Store the headers.") +set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin CACHE PATH "Single Directory for all Executables.") +set(CMAKE_INCLUDE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/include CACHE PATH "Store the headers.") set(EXECUTABLE_OUTPUT_PATH ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}) -set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/${DYAD_INSTALL_LIBDIR} CACHE PATH "Single Directory for all Libraries") -set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/${DYAD_INSTALL_LIBDIR} CACHE PATH "Single Directory for all static libraries.") +set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib CACHE PATH "Single Directory for all Libraries") +set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib CACHE PATH "Single Directory for all static libraries.") # endif () #----------------------------------------------------------------------------- @@ -374,7 +374,7 @@ configure_package_config_file(${CMAKE_CURRENT_SOURCE_DIR}/cmake/configure_files/ # Write the configure file for the install tree set(EXTRA_CMAKE_MODULE_DIR "") set(INCLUDE_INSTALL_DIRS "${DYAD_INSTALL_INCLUDEDIR}") -set(LIB_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/${DYAD_INSTALL_LIBDIR}") +set(LIB_INSTALL_DIR "${DYAD_INSTALL_LIBDIR}") configure_package_config_file(cmake/configure_files/DYADConfig.cmake.in "${DYAD_INSTALL_TMP_CMAKE_DIR}/DYADConfig.cmake" INSTALL_DESTINATION "${DYAD_INSTALL_CMAKE_DIR}" diff --git a/cmake/modules/SetupCompiler.cmake b/cmake/modules/SetupCompiler.cmake index 9855f106..a2bceb23 100644 --- a/cmake/modules/SetupCompiler.cmake +++ b/cmake/modules/SetupCompiler.cmake @@ -210,15 +210,15 @@ set(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE) # which point to directories outside the build tree to the install RPATH set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE) -set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/${DYAD_INSTALL_LIBDIR}") +set(CMAKE_INSTALL_RPATH "${DYAD_INSTALL_LIBDIR}") list(FIND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES - "${CMAKE_INSTALL_PREFIX}/${DYAD_INSTALL_LIBDIR}" _IS_SYSTEM_DIR) + "${DYAD_INSTALL_LIBDIR}" _IS_SYSTEM_DIR) if (${_IS_SYSTEM_DIR} STREQUAL "-1") # Set the install RPATH correctly list(APPEND CMAKE_INSTALL_RPATH - "${CMAKE_INSTALL_PREFIX}/${DYAD_INSTALL_LIBDIR}") + "${DYAD_INSTALL_LIBDIR}") endif () diff --git a/src/dyad/core/CMakeLists.txt b/src/dyad/core/CMakeLists.txt index 73577406..649b98a1 100644 --- a/src/dyad/core/CMakeLists.txt +++ b/src/dyad/core/CMakeLists.txt @@ -22,7 +22,7 @@ set(DYAD_CTX_PRIVATE_HEADERS ${CMAKE_CURRENT_SOURCE_DIR}/dyad_ctx.h add_library(${PROJECT_NAME}_core SHARED ${DYAD_CORE_SRC} ${DYAD_CORE_PUBLIC_HEADERS} ${DYAD_CORE_PRIVATE_HEADERS}) set_target_properties(${PROJECT_NAME}_core PROPERTIES CMAKE_INSTALL_RPATH - "${CMAKE_INSTALL_PREFIX}/${DYAD_INSTALL_LIBDIR}") + "${DYAD_INSTALL_LIBDIR}") target_link_libraries(${PROJECT_NAME}_core PRIVATE Jansson::Jansson flux::core) target_link_libraries(${PROJECT_NAME}_core PRIVATE ${PROJECT_NAME}_ctx ${PROJECT_NAME}_utils ${PROJECT_NAME}_murmur3 ${PROJECT_NAME}_dtl) diff --git a/src/dyad/dtl/CMakeLists.txt b/src/dyad/dtl/CMakeLists.txt index 5b825a12..5be46898 100644 --- a/src/dyad/dtl/CMakeLists.txt +++ b/src/dyad/dtl/CMakeLists.txt @@ -29,7 +29,7 @@ endif() add_library(${PROJECT_NAME}_dtl SHARED ${DTL_SRC} ${DTL_PUBLIC_HEADERS} ${DTL_PRIVATE_HEADERS}) target_link_libraries(${PROJECT_NAME}_dtl PRIVATE ${PROJECT_NAME}_utils Jansson::Jansson flux::core flux::optparse) set_target_properties(${PROJECT_NAME}_dtl PROPERTIES CMAKE_INSTALL_RPATH - "${CMAKE_INSTALL_PREFIX}/${DYAD_INSTALL_LIBDIR}") + "${DYAD_INSTALL_LIBDIR}") if(DYAD_ENABLE_UCX_DTL OR DYAD_ENABLE_UCX_DATA_RMA) target_link_libraries(${PROJECT_NAME}_dtl PRIVATE ucx::ucp ucx::ucs) diff --git a/src/dyad/modules/CMakeLists.txt b/src/dyad/modules/CMakeLists.txt index aca78ff6..fe700534 100644 --- a/src/dyad/modules/CMakeLists.txt +++ b/src/dyad/modules/CMakeLists.txt @@ -15,7 +15,7 @@ add_library(${PROJECT_NAME} SHARED ${DYAD_MODULE_SRC} ${DYAD_MODULE_PRIVATE_HEADERS} ${DYAD_MODULE_PUBLIC_HEADERS}) set_target_properties(${PROJECT_NAME} PROPERTIES PREFIX "") set_target_properties(${PROJECT_NAME} PROPERTIES CMAKE_INSTALL_RPATH - "${CMAKE_INSTALL_PREFIX}/${DYAD_INSTALL_LIBDIR}") + "${DYAD_INSTALL_LIBDIR}") target_link_libraries(${PROJECT_NAME} PRIVATE Jansson::Jansson) target_link_libraries(${PROJECT_NAME} PRIVATE ${PROJECT_NAME}_dtl) target_link_libraries(${PROJECT_NAME} PRIVATE ${PROJECT_NAME}_ctx) diff --git a/src/dyad/stream/CMakeLists.txt b/src/dyad/stream/CMakeLists.txt index fcd24cfe..55fb0004 100644 --- a/src/dyad/stream/CMakeLists.txt +++ b/src/dyad/stream/CMakeLists.txt @@ -12,7 +12,7 @@ set(DYAD_FSTREAM_PUBLIC_HEADERS ${CMAKE_CURRENT_SOURCE_DIR}/../../../include/dya add_library(${PROJECT_NAME}_fstream SHARED ${DYAD_FSTREAM_SRC} ${DYAD_FSTREAM_PRIVATE_HEADERS} ${DYAD_FSTREAM_PUBLIC_HEADERS}) set_target_properties(${PROJECT_NAME}_fstream PROPERTIES CMAKE_INSTALL_RPATH - "${CMAKE_INSTALL_PREFIX}/${DYAD_INSTALL_LIBDIR}") + "${DYAD_INSTALL_LIBDIR}") target_compile_features(${PROJECT_NAME}_fstream PRIVATE) target_link_libraries(${PROJECT_NAME}_fstream PRIVATE ${PROJECT_NAME}_ctx ${PROJECT_NAME}_core ${PROJECT_NAME}_utils flux::core) diff --git a/src/dyad/utils/CMakeLists.txt b/src/dyad/utils/CMakeLists.txt index c9a7246f..27e6d9af 100644 --- a/src/dyad/utils/CMakeLists.txt +++ b/src/dyad/utils/CMakeLists.txt @@ -14,7 +14,7 @@ set(DYAD_MURMUR3_PUBLIC_HEADERS) add_library(${PROJECT_NAME}_utils SHARED ${DYAD_UTILS_SRC} ${DYAD_UTILS_PRIVATE_HEADERS} ${DYAD_UTILS_PUBLIC_HEADERS}) set_target_properties(${PROJECT_NAME}_utils PROPERTIES CMAKE_INSTALL_RPATH - "${CMAKE_INSTALL_PREFIX}/${DYAD_INSTALL_LIBDIR}") + "${DYAD_INSTALL_LIBDIR}") target_link_libraries(${PROJECT_NAME}_utils PUBLIC ${PROJECT_NAME}_base64 ${PROJECT_NAME}_murmur3) @@ -33,7 +33,7 @@ target_include_directories(${PROJECT_NAME}_utils PUBLIC add_library(${PROJECT_NAME}_murmur3 SHARED ${DYAD_MURMUR3_SRC}) set_target_properties(${PROJECT_NAME}_murmur3 PROPERTIES CMAKE_INSTALL_RPATH - "${CMAKE_INSTALL_PREFIX}/${DYAD_INSTALL_LIBDIR}") + "${DYAD_INSTALL_LIBDIR}") add_executable(test_cmp_canonical_path_prefix test_cmp_canonical_path_prefix.c ${CMAKE_CURRENT_SOURCE_DIR}/../common/dyad_structures.h) diff --git a/src/dyad/utils/base64/CMakeLists.txt b/src/dyad/utils/base64/CMakeLists.txt index d1743259..d6708e5e 100644 --- a/src/dyad/utils/base64/CMakeLists.txt +++ b/src/dyad/utils/base64/CMakeLists.txt @@ -5,7 +5,7 @@ set(DYAD_BASE64_PUBLIC_HEADERS) add_library(${PROJECT_NAME}_base64 SHARED ${DYAD_BASE64_SRC} ${DYAD_BASE64_PRIVATE_HEADERS} ${DYAD_BASE64_PUBLIC_HEADERS}) set_target_properties(${PROJECT_NAME}_base64 PROPERTIES CMAKE_INSTALL_RPATH - "${CMAKE_INSTALL_PREFIX}/${DYAD_INSTALL_LIBDIR}") + "${DYAD_INSTALL_LIBDIR}") target_include_directories(${PROJECT_NAME}_base64 PUBLIC $ $) diff --git a/src/dyad/wrapper/CMakeLists.txt b/src/dyad/wrapper/CMakeLists.txt index 38987d36..3541e784 100644 --- a/src/dyad/wrapper/CMakeLists.txt +++ b/src/dyad/wrapper/CMakeLists.txt @@ -8,7 +8,7 @@ set(DYAD_WRAPPER_PUBLIC_HEADERS) add_library(${PROJECT_NAME}_wrapper SHARED ${DYAD_WRAPPER_SRC} ${DYAD_WRAPPER_PRIVATE_HEADERS} ${DYAD_WRAPPER_PUBLIC_HEADERS}) set_target_properties(${PROJECT_NAME}_wrapper PROPERTIES CMAKE_INSTALL_RPATH - "${CMAKE_INSTALL_PREFIX}/${DYAD_INSTALL_LIBDIR}") + "${DYAD_INSTALL_LIBDIR}") target_link_libraries(${PROJECT_NAME}_wrapper PRIVATE ${PROJECT_NAME}_ctx ${PROJECT_NAME}_core) target_link_libraries(${PROJECT_NAME}_wrapper PRIVATE ${PROJECT_NAME}_utils flux::core) target_compile_definitions(${PROJECT_NAME}_wrapper PUBLIC BUILDING_DYAD=1)