omnitrace find_package support (#3)

* omnitrace find_package support

- Fix to INSTALL_DESTINATION for configure_package_config_file
- Fixes to ConfigInstall.cmake and omnitrace-config.cmake.in

* Test find_package
Tento commit je obsažen v:
Jonathan R. Madsen
2022-05-24 22:45:26 -05:00
odevzdal GitHub
rodič 6491ce7808
revize d2e635ed3c
18 změnil soubory, kde provedl 364 přidání a 49 odebrání
+6
Zobrazit soubor
@@ -124,6 +124,12 @@ jobs:
for i in omnitrace-ls-output/*; do echo -e "\n\n --> ${i} \n\n"; cat ${i}; done
omnitrace -e -v 1 -- ls
- name: Test User API
timeout-minutes: 10
run: |
set -v
./scripts/test-find-package.sh --install-dir /opt/omnitrace
- name: CTest Artifacts
if: success() || failure()
uses: actions/upload-artifact@v2
+6
Zobrazit soubor
@@ -111,6 +111,12 @@ jobs:
omnitrace -e -v 1 -- ls
du -m ls-perfetto-trace.proto
- name: Test User API
timeout-minutes: 10
run: |
set -v
./scripts/test-find-package.sh --install-dir /opt/omnitrace
- name: CTest Artifacts
if: success() || failure()
uses: actions/upload-artifact@v2
+6
Zobrazit soubor
@@ -100,6 +100,12 @@ jobs:
for i in omnitrace-ls-output/*; do echo -e "\n\n --> ${i} \n\n"; cat ${i}; done
omnitrace -e -v 1 -- ls
- name: Test User API
timeout-minutes: 10
run: |
set -v
./scripts/test-find-package.sh --install-dir /opt/omnitrace
- name: CTest Artifacts
if: success() || failure()
uses: actions/upload-artifact@v2
+6
Zobrazit soubor
@@ -99,6 +99,12 @@ jobs:
for i in omnitrace-ls-output/*; do echo -e "\n\n --> ${i} \n\n"; cat ${i}; done
omnitrace -e -v 1 -- ls
- name: Test User API
timeout-minutes: 10
run: |
set -v
${{ github.workspace }}/scripts/test-find-package.sh --install-dir /opt/omnitrace
- name: CTest Artifacts
if: success() || failure()
uses: actions/upload-artifact@v2
+5
Zobrazit soubor
@@ -91,6 +91,10 @@ omnitrace_add_option(CMAKE_CXX_STANDARD_REQUIRED "Require C++ language standard"
omnitrace_add_option(CMAKE_CXX_EXTENSIONS "Compiler specific language extensions" OFF)
omnitrace_add_option(CMAKE_INSTALL_RPATH_USE_LINK_PATH "Enable rpath to linked libraries"
ON)
set(CMAKE_INSTALL_MESSAGE
"LAZY"
CACHE STRING "Installation message")
mark_as_advanced(CMAKE_INSTALL_MESSAGE)
omnitrace_add_option(OMNITRACE_USE_CLANG_TIDY "Enable clang-tidy" OFF)
omnitrace_add_option(OMNITRACE_USE_MPI "Enable MPI support" OFF)
@@ -269,6 +273,7 @@ endif()
#
# ------------------------------------------------------------------------------#
include(ConfigInstall)
include(ConfigCPack)
# ------------------------------------------------------------------------------#
+24 -9
Zobrazit soubor
@@ -1,6 +1,4 @@
# include guard
include_guard(DIRECTORY)
# ########################################################################################
#
# Compilers
@@ -31,8 +29,11 @@ if("${LIBNAME}" STREQUAL "")
string(TOLOWER "${PROJECT_NAME}" LIBNAME)
endif()
omnitrace_add_interface_library(
${LIBNAME}-compile-options "Adds the standard set of compiler flags used by timemory")
if(NOT TARGET ${LIBNAME}-compile-options)
omnitrace_add_interface_library(
${LIBNAME}-compile-options
"Adds the standard set of compiler flags used by timemory")
endif()
# ----------------------------------------------------------------------------------------#
# macro converting string to list
@@ -116,10 +117,17 @@ endmacro()
# add C flag to target
# ----------------------------------------------------------------------------------------#
macro(ADD_TARGET_C_FLAG _TARG)
get_target_property(_TARG_TYPE ${_TARG} TYPE)
if("${_TARG_TYPE}" MATCHES "INTERFACE_LIBRARY")
set(_SCOPE INTERFACE)
else()
set(_SCOPE PRIVATE)
endif()
string(REPLACE "-" "_" _MAKE_TARG "${_TARG}")
list(APPEND OMNITRACE_MAKE_TARGETS ${_MAKE_TARG})
target_compile_options(${_TARG} INTERFACE $<$<COMPILE_LANGUAGE:C>:${ARGN}>)
target_compile_options(${_TARG} ${_SCOPE} $<$<COMPILE_LANGUAGE:C>:${ARGN}>)
list(APPEND ${_MAKE_TARG}_C_FLAGS ${ARGN})
endmacro()
@@ -211,18 +219,25 @@ endmacro()
# add CXX flag to target
# ----------------------------------------------------------------------------------------#
macro(ADD_TARGET_CXX_FLAG _TARG)
get_target_property(_TARG_TYPE ${_TARG} TYPE)
if("${_TARG_TYPE}" MATCHES "INTERFACE_LIBRARY")
set(_SCOPE INTERFACE)
else()
set(_SCOPE PRIVATE)
endif()
string(REPLACE "-" "_" _MAKE_TARG "${_TARG}")
list(APPEND OMNITRACE_MAKE_TARGETS ${_MAKE_TARG})
target_compile_options(${_TARG} INTERFACE $<$<COMPILE_LANGUAGE:CXX>:${ARGN}>)
target_compile_options(${_TARG} ${_SCOPE} $<$<COMPILE_LANGUAGE:CXX>:${ARGN}>)
list(APPEND ${_MAKE_TARG}_CXX_FLAGS ${ARGN})
get_property(LANGUAGES GLOBAL PROPERTY ENABLED_LANGUAGES)
if(CMAKE_CUDA_COMPILER_IS_NVIDIA)
target_compile_options(${_TARG}
INTERFACE $<$<COMPILE_LANGUAGE:CUDA>:-Xcompiler=${ARGN}>)
target_compile_options(${_TARG} ${_SCOPE}
$<$<COMPILE_LANGUAGE:CUDA>:-Xcompiler=${ARGN}>)
list(APPEND ${_MAKE_TARG}_CUDA_FLAGS -Xcompiler=${ARGN})
elseif(CMAKE_CUDA_COMPILER_IS_CLANG)
target_compile_options(${_TARG} INTERFACE $<$<COMPILE_LANGUAGE:CUDA>:${ARGN}>)
target_compile_options(${_TARG} ${_SCOPE} $<$<COMPILE_LANGUAGE:CUDA>:${ARGN}>)
list(APPEND ${_MAKE_TARG}_CUDA_FLAGS ${ARGN})
endif()
endmacro()
+38
Zobrazit soubor
@@ -0,0 +1,38 @@
# include guard
include_guard(GLOBAL)
include(CMakePackageConfigHelpers)
install(
EXPORT omnitrace-library-targets
FILE omnitrace-library-targets.cmake
NAMESPACE omnitrace::
DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/cmake/omnitrace)
# ------------------------------------------------------------------------------#
# install tree
#
set(PROJECT_INSTALL_DIR ${CMAKE_INSTALL_PREFIX})
set(INCLUDE_INSTALL_DIR ${CMAKE_INSTALL_INCLUDEDIR})
set(LIB_INSTALL_DIR ${CMAKE_INSTALL_LIBDIR})
set(PROJECT_BUILD_TARGETS user dl)
configure_package_config_file(
${PROJECT_SOURCE_DIR}/cmake/Templates/${PROJECT_NAME}-config.cmake.in
${PROJECT_BINARY_DIR}/install-tree/${PROJECT_NAME}-config.cmake
INSTALL_DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/cmake/omnitrace
INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX}
PATH_VARS PROJECT_INSTALL_DIR INCLUDE_INSTALL_DIR LIB_INSTALL_DIR)
write_basic_package_version_file(
${PROJECT_BINARY_DIR}/install-tree/${PROJECT_NAME}-version.cmake
VERSION ${PROJECT_VERSION}
COMPATIBILITY SameMajorVersion)
install(
FILES ${PROJECT_BINARY_DIR}/install-tree/${PROJECT_NAME}-config.cmake
${PROJECT_BINARY_DIR}/install-tree/${PROJECT_NAME}-version.cmake
DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/cmake/${PROJECT_NAME}
OPTIONAL)
export(PACKAGE ${PROJECT_NAME})
+3
Zobrazit soubor
@@ -598,6 +598,9 @@ target_link_libraries(omnitrace-ptl INTERFACE PTL::ptl-object)
#
# ----------------------------------------------------------------------------------------#
# override compiler macros
include(Compilers)
if(OMNITRACE_BUILD_STATIC_LIBSTDCXX)
if(CMAKE_CXX_COMPILER_ID MATCHES "GNU")
omnitrace_restore_variables(STATIC_LIBSTDCXX_CXX VARIABLES CMAKE_CXX_FLAGS)
+56
Zobrazit soubor
@@ -0,0 +1,56 @@
# - Config file for @PROJECT_NAME@ and its component libraries
# It defines the following variables:
#
# @PROJECT_NAME@_INCLUDE_DIRS
# @PROJECT_NAME@_LIBRARIES
# @PROJECT_NAME@_INTERNAL_DEFINES - used by the test suite
# compute paths
get_filename_component(@PROJECT_NAME@_CMAKE_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH)
# version
include(${CMAKE_CURRENT_LIST_DIR}/@PROJECT_NAME@-version.cmake)
@PACKAGE_INIT@
set_and_check(@PROJECT_NAME@_INCLUDE_DIR "@PACKAGE_INCLUDE_INSTALL_DIR@")
set_and_check(@PROJECT_NAME@_LIB_DIR "@PACKAGE_LIB_INSTALL_DIR@")
get_filename_component(@PROJECT_NAME@_ROOT_DIR ${@PROJECT_NAME@_INCLUDE_DIR} PATH)
set(@PROJECT_NAME@_LIBRARIES)
add_library(@PROJECT_NAME@::@PROJECT_NAME@ INTERFACE IMPORTED)
include("${@PROJECT_NAME@_CMAKE_DIR}/@PROJECT_NAME@-library-targets.cmake")
# Library dependencies
foreach(TARG @PROJECT_BUILD_TARGETS@)
set(TARG @PROJECT_NAME@-${TARG}-library)
if(NOT @PROJECT_NAME@_FIND_COMPONENTS)
list(APPEND @PROJECT_NAME@_LIBRARIES @PROJECT_NAME@::${TARG})
target_link_libraries(@PROJECT_NAME@::@PROJECT_NAME@
INTERFACE @PROJECT_NAME@::${TARG})
endif()
endforeach()
if(@PROJECT_NAME@_FIND_COMPONENTS)
foreach(COMP ${@PROJECT_NAME@_FIND_COMPONENTS})
set(TARG @PROJECT_NAME@::@PROJECT_NAME@-${COMP}-library)
if(TARGET ${TARG})
set(@PROJECT_NAME@_${COMP}_FOUND 1)
list(APPEND @PROJECT_NAME@_LIBRARIES ${TARG})
target_link_libraries(@PROJECT_NAME@::@PROJECT_NAME@
INTERFACE ${TARG})
else()
set(@PROJECT_NAME@_${COMP}_FOUND 0)
endif()
endforeach()
endif()
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(
@PROJECT_NAME@
FOUND_VAR @PROJECT_NAME@_FOUND
REQUIRED_VARS @PROJECT_NAME@_ROOT_DIR @PROJECT_NAME@_INCLUDE_DIR @PROJECT_NAME@_LIBRARIES
VERSION_VAR @PROJECT_NAME@_VERSION
HANDLE_COMPONENTS)
+1 -1
Zobrazit soubor
@@ -19,7 +19,7 @@ ARG NJOBS="12"
RUN zypper update -y && \
zypper dist-upgrade -y && \
zypper install -y -t pattern devel_basis && \
zypper install -y python3-pip openmpi3-devel gcc-c++ git libnuma-devel dpkg-devel rpm-build papi-devel curl wget && \
zypper install -y python3-pip openmpi3-devel gcc-c++ git libnuma-devel dpkg-devel rpm-build papi-devel curl wget binutils-gold && \
python3 -m pip install 'cmake==3.18.4'
COPY ./dyninst-source /tmp/dyninst
Spustitelný soubor
+154
Zobrazit soubor
@@ -0,0 +1,154 @@
#!/bin/bash -e
SCRIPT_DIR=$(realpath $(dirname ${BASH_SOURCE[0]}))
cd $(dirname ${SCRIPT_DIR})
echo -e "Working directory: $(pwd)"
error-message()
{
echo -e "\nError! ${@}\n"
exit -1
}
verbose-run()
{
echo -e "\n##### Executing \"${@}\"... #####\n"
eval $@
}
if [ -d "$(realpath /tmp)" ]; then
: ${TMPDIR:=/tmp}
export TMPDIR
fi
: ${EXAMPLE_DIR:=examples}
: ${EXAMPLE_NAME:=user-api}
: ${SOURCE_DIR:=$(mktemp -t -d omnitrace-test-source-XXXX)}
: ${BINARY_DIR:=$(mktemp -t -d omnitrace-test-build-XXXX)}
: ${INSTALL_DIR:=$(mktemp -t -d omnitrace-install-XXXX)}
: ${INSTALL_SCRIPT:=""}
usage()
{
print_option() { printf " --%-10s %-24s %s (default: %s)\n" "${1}" "${2}" "${3}" "${4}"; }
echo "Options:"
print_option example-name "<NAME>" "Name of the example project" "${EXAMPLE_NAME}"
print_option example-dir "<PATH>" "Directory containing example" "${EXAMPLE_DIR}"
print_option source-dir "<PATH>" "Location to copy example to" "${SOURCE_DIR}"
print_option binary-dir "<PATH>" "Location to build" "${BINARY_DIR}"
print_option install-dir "<PATH>" "Location of omnitrace installation" "${INSTALL_DIR}"
print_option install-script "<FILEPATH>" "Absolute path to the installer script" ""
}
while [[ $# -gt 0 ]]
do
ARG=${1}
shift
VAL=""
while [[ $# -gt 0 ]]
do
VAL=${1}
shift
break
done
if [ -z "${VAL}" ]; then
echo "Error! Missing value for argument \"${ARG}\""
usage
exit -1
fi
case "${ARG}" in
--example-name)
EXAMPLE_NAME=${VAL}
continue
;;
--example-dir)
EXAMPLE_DIR=${VAL}
continue
;;
--source-dir)
SOURCE_DIR=${VAL}
continue
;;
--binary-dir)
BINARY_DIR=${VAL}
continue
;;
--install-dir)
INSTALL_DIR=${VAL}
continue
;;
--install-script)
INSTALL_SCRIPT=${VAL}
continue
;;
*)
echo -e "Error! Unknown option : ${ARG}"
usage
exit -1
;;
esac
done
if [ ! -f "${INSTALL_DIR}/include/omnitrace/user.h" ]; then
if [ -z "${INSTALL_SCRIPT}" ]; then
error-message "Unable to find \"omnitrace/user.h\" in \"${INSTALL_DIR}/include\" and installation script not provided"
elif [ ! -f "${INSTALL_SCRIPT}" ]; then
error-message "Unable to locate \"${INSTALL_SCRIPT}\" in directory \"${PWD}\""
else
verbose-run mkdir -p ${INSTALL_DIR}
verbose-run $(realpath ${INSTALL_SCRIPT}) --prefix=${INSTALL_DIR} --skip-license --exclude-subdir
fi
fi
if [ ! -d ${SOURCE_DIR} ]; then
verbose-run mkdir -p ${SOURCE_DIR}
fi
verbose-run cp -v -r ${EXAMPLE_DIR}/${EXAMPLE_NAME}/* ${SOURCE_DIR}/
verbose-run pushd ${SOURCE_DIR}
cat << EOF > CMakeLists.txt
cmake_minimum_required(VERSION 3.16.0 FATAL_ERROR)
project(test LANGUAGES C CXX)
set(CMAKE_C_STANDARD 11)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_C_STANDARD_REQUIRED ON)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
find_package(omnitrace REQUIRED COMPONENTS user dl)
find_package(Threads REQUIRED)
get_target_property(LIBS omnitrace::omnitrace INTERFACE_LINK_LIBRARIES)
foreach(_LIB \${LIBS})
foreach(_VAR LINK_LIBRARIES INCLUDE_DIRECTORIES)
get_target_property(_VAL \${_LIB} INTERFACE_\${_VAR})
if(_VAL)
message(STATUS "\${_LIB} :: \${_VAR} :: \${_VAL}")
endif()
endforeach()
endforeach()
file(GLOB sources \${CMAKE_CURRENT_LIST_DIR}/*.cpp \${CMAKE_CURRENT_LIST_DIR}/*.c)
add_executable(app \${sources})
target_link_libraries(app PRIVATE Threads::Threads omnitrace::omnitrace)
EOF
export CMAKE_PREFIX_PATH=${INSTALL_DIR}:${CMAKE_PREFIX_PATH}
verbose-run find .
verbose-run cmake -B ${BINARY_DIR} ${SOURCE_DIR}
verbose-run cmake --build ${BINARY_DIR} --target all --parallel 2 -- VERBOSE=1
set +e
verbose-run pushd ${BINARY_DIR}
verbose-run ./app
verbose-run popd
verbose-run popd
+9 -12
Zobrazit soubor
@@ -18,15 +18,16 @@ target_sources(omnitrace-dl-library PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/dl.cpp
target_include_directories(
omnitrace-dl-library
PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/../omnitrace-user>)
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/../omnitrace-user>
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>)
target_link_libraries(
omnitrace-dl-library
PUBLIC
${dl_LIBRARY}
$<BUILD_INTERFACE:omnitrace::common-library>
$<BUILD_INTERFACE:omnitrace::omnitrace-compile-definitions>
$<IF:$<BOOL:${OMNITRACE_BUILD_STATIC_LIBGCC}>,$<BUILD_INTERFACE:omnitrace::omnitrace-static-libgcc>,>
$<IF:$<BOOL:${OMNITRACE_BUILD_STATIC_LIBSTDCXX}>,$<BUILD_INTERFACE:omnitrace::omnitrace-static-libstdcxx>,>
$<BUILD_INTERFACE:$<IF:$<BOOL:${OMNITRACE_BUILD_STATIC_LIBGCC}>,omnitrace::omnitrace-static-libgcc,>>
$<BUILD_INTERFACE:$<IF:$<BOOL:${OMNITRACE_BUILD_STATIC_LIBSTDCXX}>,omnitrace::omnitrace-static-libstdcxx,>>
)
add_target_cxx_flag_if_avail(omnitrace-dl-library "-ftls-model=global-dynamic")
@@ -42,14 +43,10 @@ set_target_properties(
omnitrace_strip_target(omnitrace-dl-library)
install(
TARGETS omnitrace-dl-library
EXPORT omnitrace-dl-library-targets
DESTINATION ${CMAKE_INSTALL_LIBDIR}
OPTIONAL)
install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/dl.hpp
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/omnitrace)
install(
EXPORT omnitrace-dl-library-targets
FILE omnitrace-dl-library-targets.cmake
NAMESPACE omnitrace::
DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/cmake/omnitrace)
TARGETS omnitrace-dl-library
EXPORT omnitrace-library-targets
DESTINATION ${CMAKE_INSTALL_LIBDIR})
+1
Zobrazit soubor
@@ -33,6 +33,7 @@
#include "common/join.hpp"
#include <cassert>
#include <gnu/libc-version.h>
//--------------------------------------------------------------------------------------//
+12 -3
Zobrazit soubor
@@ -20,9 +20,17 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
// SOFTWARE.
#pragma once
#ifndef OMNITRACE_DL_HPP_
#define OMNITRACE_DL_HPP_ 1
#if defined(OMNITRACE_DL_SOURCE) && (OMNITRACE_DL_SOURCE > 0)
# include "common/defines.h"
#else
# if !defined(OMNITRACE_PUBLIC_API)
# define OMNITRACE_PUBLIC_API
# endif
#endif
#include "common/defines.h"
#include "omnitrace/user.h"
#include <atomic>
@@ -32,7 +40,6 @@
#include <cstring>
#include <dlfcn.h>
#include <functional>
#include <gnu/libc-version.h>
#include <iostream>
#include <limits>
#include <memory>
@@ -88,3 +95,5 @@ extern "C"
# endif
#endif
}
#endif // OMNITRACE_DL_HPP_ 1
+5 -14
Zobrazit soubor
@@ -33,19 +33,10 @@ set_target_properties(
omnitrace_strip_target(omnitrace-user-library)
install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/omnitrace/user.h
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/omnitrace)
install(
TARGETS omnitrace-user-library
EXPORT omnitrace-user-library-targets
DESTINATION ${CMAKE_INSTALL_LIBDIR}
OPTIONAL)
install(
FILES ${CMAKE_CURRENT_SOURCE_DIR}/omnitrace/user.h
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/omnitrace
OPTIONAL)
install(
EXPORT omnitrace-user-library-targets
FILE omnitrace-user-library-targets.cmake
NAMESPACE omnitrace::
DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/cmake/omnitrace)
EXPORT omnitrace-library-targets
DESTINATION ${CMAKE_INSTALL_LIBDIR})
+21 -4
Zobrazit soubor
@@ -23,10 +23,27 @@
#ifndef OMNITRACE_USER_H_
#define OMNITRACE_USER_H_ 1
#define OMNITRACE_ATTRIBUTE(...) __attribute__((__VA_ARGS__))
#define OMNITRACE_VISIBILITY(MODE) OMNITRACE_ATTRIBUTE(visibility(MODE))
#define OMNITRACE_PUBLIC_API OMNITRACE_VISIBILITY("default")
#define OMNITRACE_HIDDEN_API OMNITRACE_VISIBILITY("hidden")
#if defined(OMNITRACE_USER_SOURCE) && (OMNITRACE_USER_SOURCE > 0)
# if !defined(OMNITRACE_ATTRIBUTE)
# define OMNITRACE_ATTRIBUTE(...) __attribute__((__VA_ARGS__))
# endif
# if !defined(OMNITRACE_VISIBILITY)
# define OMNITRACE_VISIBILITY(MODE) OMNITRACE_ATTRIBUTE(visibility(MODE))
# endif
# if !defined(OMNITRACE_PUBLIC_API)
# define OMNITRACE_PUBLIC_API OMNITRACE_VISIBILITY("default")
# endif
# if !defined(OMNITRACE_HIDDEN_API)
# define OMNITRACE_HIDDEN_API OMNITRACE_VISIBILITY("hidden")
# endif
#else
# if !defined(OMNITRACE_PUBLIC_API)
# define OMNITRACE_PUBLIC_API
# endif
# if !defined(OMNITRACE_HIDDEN_API)
# define OMNITRACE_HIDDEN_API
# endif
#endif
#if defined(__cplusplus)
extern "C"
+3 -1
Zobrazit soubor
@@ -20,7 +20,9 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
// SOFTWARE.
#define OMNITRACE_SOURCE 1
#if !defined(OMNITRACE_USER_SOURCE)
# define OMNITRACE_USER_SOURCE 1
#endif
#include "omnitrace/user.h"
+8 -5
Zobrazit soubor
@@ -13,8 +13,10 @@ target_include_directories(
target_compile_definitions(
omnitrace-interface-library
INTERFACE OMNITRACE_MAX_THREADS=${OMNITRACE_MAX_THREADS}
$<IF:$<BOOL:${OMNITRACE_CUSTOM_DATA_SOURCE}>,CUSTOM_DATA_SOURCE,>)
INTERFACE
OMNITRACE_MAX_THREADS=${OMNITRACE_MAX_THREADS}
$<BUILD_INTERFACE:$<IF:$<BOOL:${OMNITRACE_CUSTOM_DATA_SOURCE}>,CUSTOM_DATA_SOURCE,>>
)
target_link_libraries(
omnitrace-interface-library
@@ -30,9 +32,10 @@ target_link_libraries(
$<BUILD_INTERFACE:omnitrace::omnitrace-hip>
$<BUILD_INTERFACE:omnitrace::omnitrace-roctracer>
$<BUILD_INTERFACE:omnitrace::omnitrace-rocm-smi>
$<IF:$<BOOL:${OMNITRACE_BUILD_STATIC_LIBGCC}>,$<BUILD_INTERFACE:omnitrace::omnitrace-static-libgcc>,>
$<IF:$<BOOL:${OMNITRACE_BUILD_STATIC_LIBSTDCXX}>,$<BUILD_INTERFACE:omnitrace::omnitrace-static-libstdcxx>,>
$<IF:$<BOOL:${OMNITRACE_USE_SANITIZER}>,omnitrace::omnitrace-sanitizer,>)
$<BUILD_INTERFACE:$<IF:$<BOOL:${OMNITRACE_BUILD_STATIC_LIBGCC}>,omnitrace::omnitrace-static-libgcc,>>
$<BUILD_INTERFACE:$<IF:$<BOOL:${OMNITRACE_BUILD_STATIC_LIBSTDCXX}>,omnitrace::omnitrace-static-libstdcxx,>>
$<BUILD_INTERFACE:$<IF:$<BOOL:${OMNITRACE_USE_SANITIZER}>,omnitrace::omnitrace-sanitizer,>>
)
# ------------------------------------------------------------------------------#
#