diff --git a/.gitmodules b/.gitmodules index 0b1ce3d0..01eb879c 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,6 +1,6 @@ [submodule "external/timemory"] path = external/timemory - url = https://github.com/NERSC/timemory.git + url = https://github.com/ajanicijamd/timemory.git [submodule "external/perfetto"] path = external/perfetto url = https://github.com/google/perfetto.git diff --git a/CMakeLists.txt b/CMakeLists.txt index bd161996..89e90f72 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -98,13 +98,9 @@ if("${CMAKE_BUILD_TYPE}" STREQUAL "Release") set(_STRIP_LIBRARIES_DEFAULT ON) endif() -if(DEFINED CMAKE_INSTALL_LIBDIR AND NOT DEFINED CMAKE_DEFAULT_INSTALL_LIBDIR) - # always have a fresh install - unset(CMAKE_INSTALL_LIBDIR CACHE) - include(GNUInstallDirs) # install directories - # force this because dyninst always installs to lib - set(CMAKE_DEFAULT_INSTALL_LIBDIR - "${CMAKE_INSTALL_LIBDIR}" +if(NOT DEFINED CMAKE_INSTALL_LIBDIR) + set(CMAKE_INSTALL_LIBDIR + "lib" CACHE STRING "Object code libraries" FORCE) endif() @@ -150,9 +146,6 @@ endif() include(Compilers) # compiler identification include(BuildSettings) # compiler flags -set(CMAKE_INSTALL_LIBDIR - "lib" - CACHE STRING "Object code libraries (lib)" FORCE) set(CMAKE_CXX_STANDARD 17 CACHE STRING "CXX language standard") diff --git a/cmake/ElfUtils.cmake b/cmake/ElfUtils.cmake index 8a829557..c23419f6 100644 --- a/cmake/ElfUtils.cmake +++ b/cmake/ElfUtils.cmake @@ -93,11 +93,14 @@ endif() set(_eu_root ${PROJECT_BINARY_DIR}/external/elfutils) set(_eu_inc_dirs $) -set(_eu_lib_dirs $) -set(_eu_libs $ - $) -set(_eu_build_byproducts "${_eu_root}/lib/libdw${CMAKE_STATIC_LIBRARY_SUFFIX}" - "${_eu_root}/lib/libelf${CMAKE_STATIC_LIBRARY_SUFFIX}") +set(_eu_lib_dirs $) +set(_eu_libs + $ + $ + ) +set(_eu_build_byproducts + "${_eu_root}/${CMAKE_INSTALL_LIBDIR}/libdw${CMAKE_STATIC_LIBRARY_SUFFIX}" + "${_eu_root}/${CMAKE_INSTALL_LIBDIR}/libelf${CMAKE_STATIC_LIBRARY_SUFFIX}") externalproject_add( rocprofiler-systems-elfutils-build diff --git a/cmake/PAPI.cmake b/cmake/PAPI.cmake index 5d0d0f45..499b7d82 100644 --- a/cmake/PAPI.cmake +++ b/cmake/PAPI.cmake @@ -33,16 +33,17 @@ if(NOT EXISTS "${ROCPROFSYS_PAPI_INSTALL_DIR}") execute_process(COMMAND ${CMAKE_COMMAND} -E make_directory ${ROCPROFSYS_PAPI_INSTALL_DIR}/include) execute_process(COMMAND ${CMAKE_COMMAND} -E make_directory - ${ROCPROFSYS_PAPI_INSTALL_DIR}/lib) + ${ROCPROFSYS_PAPI_INSTALL_DIR}/${CMAKE_INSTALL_LIBDIR}) execute_process( COMMAND - ${CMAKE_COMMAND} -E touch ${ROCPROFSYS_PAPI_INSTALL_DIR}/lib/libpapi.a - ${ROCPROFSYS_PAPI_INSTALL_DIR}/lib/libpfm.a - ${ROCPROFSYS_PAPI_INSTALL_DIR}/lib/libpfm.so) + ${CMAKE_COMMAND} -E touch + ${ROCPROFSYS_PAPI_INSTALL_DIR}/${CMAKE_INSTALL_LIBDIR}/libpapi.a + ${ROCPROFSYS_PAPI_INSTALL_DIR}/${CMAKE_INSTALL_LIBDIR}/libpfm.a + ${ROCPROFSYS_PAPI_INSTALL_DIR}/${CMAKE_INSTALL_LIBDIR}/libpfm.so) set(_ROCPROFSYS_PAPI_BUILD_BYPRODUCTS - ${ROCPROFSYS_PAPI_INSTALL_DIR}/lib/libpapi.a - ${ROCPROFSYS_PAPI_INSTALL_DIR}/lib/libpfm.a - ${ROCPROFSYS_PAPI_INSTALL_DIR}/lib/libpfm.so) + ${ROCPROFSYS_PAPI_INSTALL_DIR}/${CMAKE_INSTALL_LIBDIR}/libpapi.a + ${ROCPROFSYS_PAPI_INSTALL_DIR}/${CMAKE_INSTALL_LIBDIR}/libpfm.a + ${ROCPROFSYS_PAPI_INSTALL_DIR}/${CMAKE_INSTALL_LIBDIR}/libpfm.so) endif() rocprofiler_systems_add_option(ROCPROFSYS_PAPI_AUTO_COMPONENTS @@ -232,11 +233,13 @@ add_custom_target( rocprofiler-systems-papi-clean COMMAND ${MAKE_EXECUTABLE} distclean COMMAND ${CMAKE_COMMAND} -E rm -rf ${ROCPROFSYS_PAPI_INSTALL_DIR}/include/* - COMMAND ${CMAKE_COMMAND} -E rm -rf ${ROCPROFSYS_PAPI_INSTALL_DIR}/lib/* + COMMAND ${CMAKE_COMMAND} -E rm -rf + ${ROCPROFSYS_PAPI_INSTALL_DIR}/${CMAKE_INSTALL_LIBDIR}/* COMMAND - ${CMAKE_COMMAND} -E touch ${ROCPROFSYS_PAPI_INSTALL_DIR}/lib/libpapi.a - ${ROCPROFSYS_PAPI_INSTALL_DIR}/lib/libpfm.a - ${ROCPROFSYS_PAPI_INSTALL_DIR}/lib/libpfm.so + ${CMAKE_COMMAND} -E touch + ${ROCPROFSYS_PAPI_INSTALL_DIR}/${CMAKE_INSTALL_LIBDIR}/libpapi.a + ${ROCPROFSYS_PAPI_INSTALL_DIR}/${CMAKE_INSTALL_LIBDIR}/libpfm.a + ${ROCPROFSYS_PAPI_INSTALL_DIR}/${CMAKE_INSTALL_LIBDIR}/libpfm.so WORKING_DIRECTORY ${ROCPROFSYS_PAPI_SOURCE_DIR}/src COMMENT "Cleaning PAPI...") @@ -247,16 +250,16 @@ set(PAPI_INCLUDE_DIR ${ROCPROFSYS_PAPI_INSTALL_DIR}/include CACHE PATH "PAPI include folder" FORCE) set(PAPI_LIBRARY - ${ROCPROFSYS_PAPI_INSTALL_DIR}/lib/libpapi.a + ${ROCPROFSYS_PAPI_INSTALL_DIR}/${CMAKE_INSTALL_LIBDIR}/libpapi.a CACHE FILEPATH "PAPI library" FORCE) set(PAPI_pfm_LIBRARY - ${ROCPROFSYS_PAPI_INSTALL_DIR}/lib/libpfm.so + ${ROCPROFSYS_PAPI_INSTALL_DIR}/${CMAKE_INSTALL_LIBDIR}/libpfm.so CACHE FILEPATH "PAPI library" FORCE) set(PAPI_STATIC_LIBRARY - ${ROCPROFSYS_PAPI_INSTALL_DIR}/lib/libpapi.a + ${ROCPROFSYS_PAPI_INSTALL_DIR}/${CMAKE_INSTALL_LIBDIR}/libpapi.a CACHE FILEPATH "PAPI library" FORCE) set(PAPI_pfm_STATIC_LIBRARY - ${ROCPROFSYS_PAPI_INSTALL_DIR}/lib/libpfm.a + ${ROCPROFSYS_PAPI_INSTALL_DIR}/${CMAKE_INSTALL_LIBDIR}/libpfm.a CACHE FILEPATH "PAPI library" FORCE) target_include_directories(rocprofiler-systems-papi SYSTEM @@ -269,7 +272,7 @@ rocprofiler_systems_target_compile_definitions( $) install( - DIRECTORY ${ROCPROFSYS_PAPI_INSTALL_DIR}/lib/ + DIRECTORY ${ROCPROFSYS_PAPI_INSTALL_DIR}/${CMAKE_INSTALL_LIBDIR}/ DESTINATION ${CMAKE_INSTALL_LIBDIR}/${PROJECT_NAME} COMPONENT papi FILES_MATCHING diff --git a/cmake/Packages.cmake b/cmake/Packages.cmake index f3383505..598d267d 100644 --- a/cmake/Packages.cmake +++ b/cmake/Packages.cmake @@ -706,7 +706,8 @@ install( COMPONENT gotcha) if(ROCPROFSYS_BUILD_LIBUNWIND) install( - DIRECTORY ${PROJECT_BINARY_DIR}/external/timemory/external/libunwind/install/lib/ + DIRECTORY + ${PROJECT_BINARY_DIR}/external/timemory/external/libunwind/install/${CMAKE_INSTALL_LIBDIR}/ DESTINATION ${CMAKE_INSTALL_LIBDIR}/${PROJECT_NAME} COMPONENT libunwind FILES_MATCHING diff --git a/external/dyninst b/external/dyninst index 3d1942de..8db15749 160000 --- a/external/dyninst +++ b/external/dyninst @@ -1 +1 @@ -Subproject commit 3d1942dee70a0008a7bb9e5f18d8b4abc0a91290 +Subproject commit 8db1574934daa453dd9a3883f30e4e3eed52a9af diff --git a/external/timemory b/external/timemory index 9ce43f32..3485e974 160000 --- a/external/timemory +++ b/external/timemory @@ -1 +1 @@ -Subproject commit 9ce43f32939dd71aa8905f5c72537e9a3ffcc7c2 +Subproject commit 3485e97412c27178122af4a2c8d44208edf368b5