Files
FeatherLog/CMakeLists.txt
T
2026-08-17 09:28:06 +08:00

40 lines
972 B
CMake

cmake_minimum_required(VERSION 4.0.2)
project(FeatherLog)
set(CMAKE_CXX_STANDARD 20)
set(CMAKE_CXX_STANDARD_REQUIRED True)
if (MSVC)
add_compile_options(/Wall /utf-8)
else ()
add_compile_options(-Wextra -Wpedantic -Wall)
endif ()
set(CMAKE_BINARY_DIR "out")
set(sources
src/featherlog/log_manager.hpp
src/featherlog/log_outputter.hpp
src/featherlog/logger.hpp
src/featherlog/log_formatter.hpp
src/featherlog/log_level.hpp
src/featherlog/log_message.hpp
src/featherlog/log_manager.cpp)
# Shared Lib:
if (MSVC)
add_compile_options(/DFEATHER_LOG_EXPORT_DLL)
else ()
add_compile_options(-DFEATHER_LOG_EXPORT_DLL)
endif ()
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/shared")
add_library(${PROJECT_NAME} SHARED ${sources})
# Shared Lib End
#set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/static")
#add_library(${PROJECT_NAME} STATIC ${sources})
# Static Lib:
# Static Lib End