Serial-Studio/libs/CuteLogger/CMakeLists.txt
2021-01-09 16:47:35 -08:00

57 lines
1.3 KiB
CMake

CMAKE_MINIMUM_REQUIRED(VERSION 2.8.11)
SET(CMAKE_CXX_STANDARD 11)
SET(CMAKE_CXX_STANDARD_REQUIRED ON)
PROJECT(CuteLogger)
FIND_PACKAGE(Qt5Core REQUIRED)
ADD_DEFINITIONS(-DCUTELOGGER_LIBRARY)
INCLUDE_DIRECTORIES(BEFORE include)
SET(sources
src/Logger.cpp
src/AbstractAppender.cpp
src/AbstractStringAppender.cpp
src/ConsoleAppender.cpp
src/FileAppender.cpp
src/RollingFileAppender.cpp
)
SET(includes
include/Logger.h
include/FileAppender.h
include/CuteLogger_global.h
include/ConsoleAppender.h
include/AbstractStringAppender.h
include/AbstractAppender.h
include/RollingFileAppender.h
)
# OutputDebugAppender is only for Windows systems
IF(WIN32)
SET(sources ${sources} src/OutputDebugAppender.cpp)
SET(includes ${includes} include/OutputDebugAppender.h)
ENDIF(WIN32)
SET(library_target CuteLogger)
ADD_LIBRARY(${library_target} SHARED ${sources} ${includes})
TARGET_LINK_LIBRARIES(${library_target} Qt5::Core)
TARGET_INCLUDE_DIRECTORIES(${library_target} PUBLIC include)
INSTALL(TARGETS ${library_target} DESTINATION lib)
SET(ENABLE_TESTS OFF CACHE BOOL "Enable building CuteLogger tests")
IF (ENABLE_TESTS)
SET(CMAKE_AUTOMOC ON)
FIND_PACKAGE(Qt5Test REQUIRED)
ADD_EXECUTABLE(basictest test/basictest.cpp)
TARGET_LINK_LIBRARIES(basictest Qt5::Core Qt5::Test CuteLogger)
ENDIF ()