Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/gabime/spdlog.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Zemon <david@zemon.name>2019-05-18 07:23:51 +0300
committerDavid Zemon <david@zemon.name>2019-05-18 07:28:53 +0300
commit6fe899af104930c381b8bb0498e93b7a09418241 (patch)
treeb3e333f707ca23758e25fd0b08ef4b9436fb4bde
parent107fe0a14231587a03921a22300fb988e0a9ebe0 (diff)
Set Threads::Threads dependency on spdlog libs - don't make user do it
-rw-r--r--CMakeLists.txt20
-rw-r--r--bench/CMakeLists.txt8
-rw-r--r--example/CMakeLists.txt4
-rw-r--r--tests/CMakeLists.txt1
4 files changed, 19 insertions, 14 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index b1971b26..2ef3b16f 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -56,24 +56,30 @@ set(HEADER_BASE "${CMAKE_CURRENT_SOURCE_DIR}/include/spdlog")
message(STATUS "Build type: " ${CMAKE_BUILD_TYPE})
+find_package(Threads REQUIRED)
+
# Build library
add_library(spdlog src/spdlog.cpp)
target_compile_definitions(spdlog PUBLIC SPDLOG_COMPILED_LIB )
target_include_directories(spdlog PUBLIC "$<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/include>")
set_target_properties(spdlog PROPERTIES OUTPUT_NAME "spdlog")
set_target_properties(spdlog PROPERTIES DEBUG_POSTFIX "-debug")
+target_link_libraries(spdlog PUBLIC Threads::Threads)
-# Headr only
+# Header only
add_library(spdlog_header_only INTERFACE)
-target_include_directories(spdlog_header_only INTERFACE "$<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/include>")
+target_include_directories(spdlog_header_only INTERFACE "${CMAKE_CURRENT_LIST_DIR}/include")
+target_link_libraries(spdlog_header_only INTERFACE Threads::Threads)
-if(SPDLOG_FMT_EXTERNAL AND NOT TARGET fmt::fmt)
- find_package(fmt REQUIRED CONFIG)
-endif()
if(SPDLOG_FMT_EXTERNAL)
- target_compile_definitions(spdlog INTERFACE SPDLOG_FMT_EXTERNAL)
- target_link_libraries(spdlog INTERFACE fmt::fmt)
+ if (NOT TARGET fmt::fmt)
+ find_package(fmt REQUIRED)
+ endif ()
+
+ target_compile_definitions(spdlog PUBLIC SPDLOG_FMT_EXTERNAL)
+ target_link_libraries(spdlog PUBLIC fmt::fmt)
+
target_compile_definitions(spdlog_header_only INTERFACE SPDLOG_FMT_EXTERNAL)
target_link_libraries(spdlog_header_only INTERFACE fmt::fmt)
endif()
diff --git a/bench/CMakeLists.txt b/bench/CMakeLists.txt
index 3c4a3f9d..dcb03a9e 100644
--- a/bench/CMakeLists.txt
+++ b/bench/CMakeLists.txt
@@ -33,16 +33,16 @@ find_package(Threads REQUIRED)
find_package(benchmark CONFIG REQUIRED)
add_executable(bench bench.cpp)
-target_link_libraries(bench PRIVATE spdlog::spdlog Threads::Threads)
+target_link_libraries(bench PRIVATE spdlog::spdlog)
add_executable(async_bench async_bench.cpp)
-target_link_libraries(async_bench PRIVATE spdlog::spdlog Threads::Threads)
+target_link_libraries(async_bench PRIVATE spdlog::spdlog)
add_executable(latency latency.cpp)
-target_link_libraries(latency PRIVATE benchmark::benchmark spdlog::spdlog Threads::Threads)
+target_link_libraries(latency PRIVATE benchmark::benchmark spdlog::spdlog)
add_executable(formatter-bench formatter-bench.cpp)
-target_link_libraries(formatter-bench PRIVATE benchmark::benchmark spdlog::spdlog Threads::Threads)
+target_link_libraries(formatter-bench PRIVATE benchmark::benchmark spdlog::spdlog)
file(MAKE_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/logs")
diff --git a/example/CMakeLists.txt b/example/CMakeLists.txt
index b25ca252..033e7af6 100644
--- a/example/CMakeLists.txt
+++ b/example/CMakeLists.txt
@@ -38,7 +38,7 @@ find_package(Threads REQUIRED)
# Example of using pre-compiled library
add_executable(example example.cpp)
-target_link_libraries(example spdlog::spdlog Threads::Threads)
+target_link_libraries(example spdlog::spdlog)
if(CMAKE_SYSTEM_NAME STREQUAL "Android")
find_library(log-lib log)
target_link_libraries(example log)
@@ -54,7 +54,7 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Android")
endif ()
add_executable(multisink multisink.cpp)
-target_link_libraries(multisink spdlog::spdlog Threads::Threads)
+target_link_libraries(multisink spdlog::spdlog)
file(MAKE_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/logs")
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
index 8679174d..f02dea91 100644
--- a/tests/CMakeLists.txt
+++ b/tests/CMakeLists.txt
@@ -20,7 +20,6 @@ set(SPDLOG_UTESTS_SOURCES
test_fmt_helper.cpp)
add_executable(${PROJECT_NAME} ${SPDLOG_UTESTS_SOURCES})
-target_link_libraries(${PROJECT_NAME} PRIVATE Threads::Threads)
target_link_libraries(${PROJECT_NAME} PRIVATE spdlog)
file(MAKE_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/logs")