39 baris
1.3 KiB
CMake
39 baris
1.3 KiB
CMake
|
|
include_guard(GLOBAL)
|
||
|
|
|
||
|
|
if(ROCPROFSYS_BUILD_SPDLOG)
|
||
|
|
message(STATUS "Building spdlog from source!")
|
||
|
|
|
||
|
|
include(FetchContent)
|
||
|
|
|
||
|
|
rocprofiler_systems_checkout_git_submodule(
|
||
|
|
RELATIVE_PATH external/spdlog
|
||
|
|
WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}
|
||
|
|
REPO_URL https://github.com/gabime/spdlog.git
|
||
|
|
TEST_FILE CMakeLists.txt
|
||
|
|
REPO_BRANCH "v1.16.0"
|
||
|
|
)
|
||
|
|
|
||
|
|
FetchContent_Declare(spdlog SOURCE_DIR ${PROJECT_SOURCE_DIR}/external/spdlog)
|
||
|
|
|
||
|
|
set(SPDLOG_BUILD_SHARED OFF CACHE BOOL "" FORCE)
|
||
|
|
set(SPDLOG_BUILD_EXAMPLE OFF CACHE BOOL "" FORCE)
|
||
|
|
set(SPDLOG_BUILD_TESTS OFF CACHE BOOL "" FORCE)
|
||
|
|
set(SPDLOG_INSTALL OFF CACHE BOOL "" FORCE)
|
||
|
|
set(SPDLOG_FMT_EXTERNAL OFF CACHE BOOL "" FORCE)
|
||
|
|
|
||
|
|
# Spdlog workaround for building static library
|
||
|
|
set(_ROCPROFSYS_BUILD_SHARED_LIBS_BACKUP ${BUILD_SHARED_LIBS})
|
||
|
|
set(BUILD_SHARED_LIBS OFF)
|
||
|
|
|
||
|
|
FetchContent_MakeAvailable(spdlog)
|
||
|
|
|
||
|
|
set(BUILD_SHARED_LIBS ${_ROCPROFSYS_BUILD_SHARED_LIBS_BACKUP})
|
||
|
|
unset(_ROCPROFSYS_BUILD_SHARED_LIBS_BACKUP)
|
||
|
|
|
||
|
|
target_link_libraries(rocprofiler-systems-spdlog INTERFACE spdlog::spdlog)
|
||
|
|
else()
|
||
|
|
message(STATUS "Using system spdlog library")
|
||
|
|
find_package(spdlog REQUIRED)
|
||
|
|
target_link_libraries(rocprofiler-systems-spdlog INTERFACE spdlog::spdlog)
|
||
|
|
endif()
|