8ad58c5d28
* Build omnitrace-rt library
- Explicitly build dyninstAPI_RT as omnitrace-rt so that the SONAME in the ELF is omnitrace-rt instead of dyninstAPI_RT
- Create symbolic link lib/omnitrace/libdyninstAPI_RT.so which points to lib/libomnitrace-rt.so
- Simplify build tree location of libomnitrace-rt.so since it is ../lib from the bin directory even in the build tree
- Update dyninst submodule with minor tweaks to dyninstAPI_RT/CMakeLists.txt
* Update source/lib/omnitrace-rt/cmake/platform.cmake
* Use ftpmirror.gnu.org instead of ftp.gnu.org
- in timemory and dyninst submodules
- minor .clang-tidy tweak
[ROCm/rocprofiler-systems commit: 0cf017251e]
65 lines
2.4 KiB
CMake
65 lines
2.4 KiB
CMake
# ------------------------------------------------------------------------------#
|
|
#
|
|
# omnitrace object library
|
|
#
|
|
# ------------------------------------------------------------------------------#
|
|
|
|
add_library(omnitrace-object-library OBJECT)
|
|
add_library(omnitrace::omnitrace-object-library ALIAS omnitrace-object-library)
|
|
|
|
target_sources(
|
|
omnitrace-object-library
|
|
PRIVATE ${CMAKE_CURRENT_LIST_DIR}/library.cpp ${CMAKE_CURRENT_LIST_DIR}/regions.cpp
|
|
${CMAKE_CURRENT_LIST_DIR}/progress.cpp ${CMAKE_CURRENT_LIST_DIR}/api.cpp
|
|
${CMAKE_CURRENT_LIST_DIR}/timeout.cpp ${CMAKE_CURRENT_LIST_DIR}/api.hpp)
|
|
|
|
add_subdirectory(library)
|
|
|
|
target_link_libraries(omnitrace-object-library
|
|
PRIVATE omnitrace::omnitrace-interface-library)
|
|
|
|
# ------------------------------------------------------------------------------#
|
|
#
|
|
# omnitrace static library
|
|
#
|
|
# ------------------------------------------------------------------------------#
|
|
|
|
add_library(omnitrace-static-library STATIC $<TARGET_OBJECTS:omnitrace-object-library>)
|
|
add_library(omnitrace::libomnitrace-static ALIAS omnitrace-static-library)
|
|
|
|
target_link_libraries(
|
|
omnitrace-static-library
|
|
PRIVATE omnitrace::omnitrace-interface-library omnitrace::omnitrace-core
|
|
omnitrace::omnitrace-binary)
|
|
|
|
set_target_properties(omnitrace-static-library PROPERTIES OUTPUT_NAME omnitrace)
|
|
|
|
# ------------------------------------------------------------------------------#
|
|
#
|
|
# omnitrace shared library
|
|
#
|
|
# ------------------------------------------------------------------------------#
|
|
|
|
add_library(omnitrace-shared-library SHARED $<TARGET_OBJECTS:omnitrace-object-library>)
|
|
add_library(omnitrace::libomnitrace-shared ALIAS omnitrace-shared-library)
|
|
add_library(omnitrace::omnitrace-library ALIAS omnitrace-shared-library)
|
|
|
|
target_link_libraries(
|
|
omnitrace-shared-library
|
|
PRIVATE omnitrace::omnitrace-interface-library omnitrace::omnitrace-core
|
|
omnitrace::omnitrace-binary)
|
|
|
|
set_target_properties(
|
|
omnitrace-shared-library
|
|
PROPERTIES OUTPUT_NAME omnitrace
|
|
VERSION ${PROJECT_VERSION}
|
|
SOVERSION ${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}
|
|
INSTALL_RPATH "${OMNITRACE_LIB_INSTALL_RPATH}")
|
|
|
|
omnitrace_strip_target(omnitrace-shared-library)
|
|
|
|
install(
|
|
TARGETS omnitrace-shared-library
|
|
DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
|
OPTIONAL)
|