Skip to content

Commit

Permalink
CmakeLists.txt: Added version-number and debug suffixes + SPDLOG_BUIL…
Browse files Browse the repository at this point in the history
…D_SHARED property
  • Loading branch information
gabime committed Sep 7, 2019
1 parent 1857a44 commit 45a18a6
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 4 deletions.
19 changes: 15 additions & 4 deletions CMakeLists.txt
Expand Up @@ -41,6 +41,11 @@ if (NOT DEFINED SPDLOG_MASTER_PROJECT)
endif()
endif ()

# build shared option
if(NOT WIN32)
option(SPDLOG_BUILD_SHARED "Build shared library" OFF)
endif()

# example options
option(SPDLOG_BUILD_EXAMPLE "Build example" ${SPDLOG_MASTER_PROJECT})
option(SPDLOG_BUILD_EXAMPLE_HO "Build header only example" OFF)
Expand Down Expand Up @@ -81,11 +86,14 @@ set(SPDLOG_SRCS
src/file_sinks.cpp
src/async.cpp)

if (BUILD_SHARED_LIBS AND WIN32)
message(WARNING "shared libs is not supported in spdlog - building static instead")
add_library(spdlog STATIC ${SPDLOG_SRCS} ${SPDLOG_ALL_HEADERS})

if (SPDLOG_BUILD_SHARED)
if(WIN32)
message(FATAL_ERROR "spdlog shared lib is not yet supported under windows")
endif()
add_library(spdlog SHARED ${SPDLOG_SRCS} ${SPDLOG_ALL_HEADERS})
else()
add_library(spdlog ${SPDLOG_SRCS} ${SPDLOG_ALL_HEADERS})
add_library(spdlog STATIC ${SPDLOG_SRCS} ${SPDLOG_ALL_HEADERS})
endif()

add_library(spdlog::spdlog ALIAS spdlog)
Expand All @@ -97,6 +105,9 @@ target_include_directories(spdlog PUBLIC
target_link_libraries(spdlog PUBLIC Threads::Threads)
spdlog_enable_warnings(spdlog)

set_target_properties(spdlog PROPERTIES VERSION ${SPDLOG_VERSION} SOVERSION ${SPDLOG_VERSION_MAJOR})
set_target_properties(spdlog PROPERTIES DEBUG_POSTFIX d)

#---------------------------------------------------------------------------------------
# Header only version
#---------------------------------------------------------------------------------------
Expand Down
1 change: 1 addition & 0 deletions cmake/utils.cmake
Expand Up @@ -19,6 +19,7 @@ function(spdlog_extract_version)
endif()
set(ver_patch ${CMAKE_MATCH_1})

set(SPDLOG_VERSION_MAJOR ${ver_major} PARENT_SCOPE)
set (SPDLOG_VERSION "${ver_major}.${ver_minor}.${ver_patch}" PARENT_SCOPE)
endfunction()

Expand Down

0 comments on commit 45a18a6

Please sign in to comment.