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:
authorgabime <gmelman1@gmail.com>2019-05-23 23:35:30 +0300
committergabime <gmelman1@gmail.com>2019-05-23 23:35:30 +0300
commit6636ae6e633b3f888ab5504db09f91091fdab9a5 (patch)
treeeb9f2fe9e7f5ab46c55bc67a61140bf597991b57 /CMakeLists.txt
parent2e75f42c691498229bdc0dbe7631cc5acdb2c76b (diff)
CmakeLists.txt compiler warnings
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt35
1 files changed, 18 insertions, 17 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index b3fa77a3..ea4b3167 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -25,32 +25,23 @@ set(CMAKE_CXX_EXTENSIONS OFF)
#---------------------------------------------------------------------------------------
# Check if spdlog is being used directly or via add_subdirectory, but allow overriding
if (NOT DEFINED SPDLOG_MASTER_PROJECT)
-if (CMAKE_CURRENT_SOURCE_DIR STREQUAL CMAKE_SOURCE_DIR)
- set(SPDLOG_MASTER_PROJECT ON)
-else()
- set(SPDLOG_MASTER_PROJECT OFF)
-endif()
+ if (CMAKE_CURRENT_SOURCE_DIR STREQUAL CMAKE_SOURCE_DIR)
+ set(SPDLOG_MASTER_PROJECT ON)
+ else()
+ set(SPDLOG_MASTER_PROJECT OFF)
+ endif()
endif ()
-option(SPDLOG_FMT_EXTERNAL "Use external fmt library instead of bundled" OFF)
-option(SPDLOG_BUILD_EXAMPLES "Build examples" OFF)
+option(SPDLOG_BUILD_EXAMPLES "Build examples" ON)
option(SPDLOG_BUILD_BENCH "Build benchmarks (Requires https://github.com/google/benchmark.git to be installed)" OFF)
option(SPDLOG_BUILD_TESTS "Build tests" OFF)
option(SPDLOG_INSTALL "Generate the install target." ${SPDLOG_MASTER_PROJECT})
+option(SPDLOG_FMT_EXTERNAL "Use external fmt library instead of bundled" OFF)
message(STATUS "Build type: " ${CMAKE_BUILD_TYPE})
find_package(Threads REQUIRED)
-if(SPDLOG_MASTER_PROJECT AND ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" OR "${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang"))
- add_compile_options("-Wall")
- add_compile_options("-Wextra")
- add_compile_options("-Wconversion")
- add_compile_options("-pedantic")
- add_compile_options("-Wfatal-errors")
-endif()
-
-
#---------------------------------------------------------------------------------------
# Static library version
#---------------------------------------------------------------------------------------
@@ -71,10 +62,20 @@ target_include_directories(spdlog_header_only INTERFACE
"$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>")
target_link_libraries(spdlog_header_only INTERFACE Threads::Threads)
+
#---------------------------------------------------------------------------------------
-# address sanitizers check
+# Turn on compiler warnings and sanitizers if we build our own project
#---------------------------------------------------------------------------------------
if(SPDLOG_MASTER_PROJECT)
+ if (CMAKE_CXX_COMPILER_ID MATCHES "GNU|Clang|AppleClang")
+ target_compile_options( spdlog PRIVATE -Wall -Wextra -Wconversion -pedantic -Wfatal-errors)
+ target_compile_options( spdlog_header_only INTERFACE -Wall -Wextra -Wconversion -pedantic -Wfatal-errors)
+ endif()
+ if (CMAKE_CXX_COMPILER_ID MATCHES "MSVC")
+ target_compile_options( spdlog PRIVATE /W3 /WX )
+ target_compile_options( spdlog_header_only INTERFACE /W3 /WX)
+ endif()
+
include(cmake/sanitizers.cmake)
endif()