SHA256
40 lines
972 B
CMake
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
|