Updated CMake options and defaults
This commit is contained in:
		
							parent
							
								
									f09334dc6f
								
							
						
					
					
						commit
						bb0f3839c1
					
				@ -40,18 +40,28 @@ if (NOT DEFINED SPDLOG_MASTER_PROJECT)
 | 
			
		||||
    endif()
 | 
			
		||||
endif ()
 | 
			
		||||
 | 
			
		||||
option(SPDLOG_BUILD_EXAMPLES "Build examples" OFF)
 | 
			
		||||
# example options
 | 
			
		||||
option(SPDLOG_BUILD_EXAMPLE "Build example" ${SPDLOG_MASTER_PROJECT})
 | 
			
		||||
option(SPDLOG_BUILD_EXAMPLE_HO "Build header only example" OFF)
 | 
			
		||||
 | 
			
		||||
# testing options
 | 
			
		||||
option(SPDLOG_BUILD_TESTS "Build tests" ${SPDLOG_MASTER_PROJECT})
 | 
			
		||||
option(SPDLOG_BUILD_TESTS_HO "Build tests using the header only version" OFF)
 | 
			
		||||
 | 
			
		||||
# bench options
 | 
			
		||||
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_BUILD_HO_TESTS "Build tests using the header only version" OFF)
 | 
			
		||||
 | 
			
		||||
# sanitizer options
 | 
			
		||||
option(SPDLOG_SANITIZE_ADDRESS "Enable address sanitizer in tests" OFF)
 | 
			
		||||
 | 
			
		||||
# install options
 | 
			
		||||
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)
 | 
			
		||||
 | 
			
		||||
message(STATUS "Build type: " ${CMAKE_BUILD_TYPE})
 | 
			
		||||
 | 
			
		||||
#---------------------------------------------------------------------------------------
 | 
			
		||||
# Static/Shared library (shared not supported in windows yet)
 | 
			
		||||
#---------------------------------------------------------------------------------------
 | 
			
		||||
@ -101,12 +111,12 @@ endif()
 | 
			
		||||
#---------------------------------------------------------------------------------------
 | 
			
		||||
# Build binaries
 | 
			
		||||
#---------------------------------------------------------------------------------------
 | 
			
		||||
if(SPDLOG_BUILD_EXAMPLES)
 | 
			
		||||
if(SPDLOG_BUILD_EXAMPLE OR SPDLOG_BUILD_EXAMPLE_HO)
 | 
			
		||||
    message(STATUS "Generating examples")
 | 
			
		||||
    add_subdirectory(example)
 | 
			
		||||
endif()
 | 
			
		||||
 | 
			
		||||
if(SPDLOG_BUILD_TESTS)
 | 
			
		||||
if(SPDLOG_BUILD_TESTS OR SPDLOG_BUILD_TESTS_HO)
 | 
			
		||||
    message(STATUS "Generating tests")
 | 
			
		||||
    include(CTest)
 | 
			
		||||
    add_subdirectory(tests)
 | 
			
		||||
 | 
			
		||||
@ -19,9 +19,11 @@ target_link_libraries(example PRIVATE spdlog::spdlog)
 | 
			
		||||
#---------------------------------------------------------------------------------------
 | 
			
		||||
# Example of using header-only library
 | 
			
		||||
#---------------------------------------------------------------------------------------
 | 
			
		||||
if(SPDLOG_BUILD_EXAMPLE_HO)
 | 
			
		||||
    add_executable(example_header_only example.cpp)
 | 
			
		||||
    spdlog_enable_warnings(example_header_only)
 | 
			
		||||
    target_link_libraries(example_header_only PRIVATE spdlog::spdlog_header_only)
 | 
			
		||||
endif()
 | 
			
		||||
 | 
			
		||||
# Create logs directory
 | 
			
		||||
file(MAKE_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/logs")
 | 
			
		||||
 | 
			
		||||
@ -1,3 +1,5 @@
 | 
			
		||||
project(spdlog_utests CXX)
 | 
			
		||||
 | 
			
		||||
find_package(PkgConfig)
 | 
			
		||||
if(PkgConfig_FOUND)
 | 
			
		||||
	pkg_check_modules(systemd libsystemd)
 | 
			
		||||
@ -45,7 +47,7 @@ if(SPDLOG_BUILD_TESTS)
 | 
			
		||||
endif()
 | 
			
		||||
 | 
			
		||||
# The header-only library version tests
 | 
			
		||||
if(SPDLOG_BUILD_HO_TESTS)
 | 
			
		||||
if(SPDLOG_BUILD_TESTS_HO)
 | 
			
		||||
    add_executable(spdlog-utests-ho ${SPDLOG_UTESTS_SOURCES})
 | 
			
		||||
	spdlog_enable_warnings(spdlog-utests-ho)
 | 
			
		||||
    target_link_libraries(spdlog-utests-ho PRIVATE spdlog::spdlog_header_only)
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user