Archived
1
0
Fork 0
This repository has been archived on 2023-06-17. You can view files and clone it, but cannot push or open issues or pull requests.
tuxiflux/CMakeLists.txt
2021-05-22 14:33:00 +00:00

61 lines
1.5 KiB
CMake

cmake_minimum_required(VERSION 3.5)
project(tuxiflux LANGUAGES CXX)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
include(embed.cmake)
include(cdlpp.cmake)
add_compile_definitions(COMPILER_ID="${CMAKE_CXX_COMPILER_ID}")
add_compile_definitions(COMPILER_VERSION="${CMAKE_CXX_COMPILER_VERSION}")
add_compile_definitions(COMPILER_PLATFORM="${CMAKE_CXX_PLATFORM_ID}")
add_executable(tuxiflux
bot/src/cust.cpp
bot/src/help_pages.cpp
bot/modules/useful.cpp
bot/modules/servermanagement.cpp
bot/modules/warns.cpp
bot/modules/misc.cpp
bot/modules/help.cpp
bot/modules/money.cpp
bot/modules/fun.cpp
bot/modules/eval.cpp
)
include_directories(
bot/include/
lib/cdlpp-db/include/
${EMBED_OUTDIR}
)
find_package(cpuid QUIET)
if (cpuid_FOUND)
target_link_libraries(${PROJECT_NAME} PUBLIC
cpuid::cpuid)
add_compile_definitions(HAS_CPUID)
endif()
find_package(PkgConfig REQUIRED)
pkg_check_modules(fmt REQUIRED IMPORTED_TARGET fmt)
target_link_libraries(${PROJECT_NAME} PUBLIC
PkgConfig::fmt cdlpp-db)
use_cdlpp(${PROJECT_NAME} lib/cdlpp)
if (${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
option(ENABLE_EVAL "ENABLE_EVAL" ON)
if (${ENABLE_EVAL})
target_link_libraries(${PROJECT_NAME} PUBLIC
dl)
add_compile_definitions(ENABLE_EVAL)
endif()
endif()
configure_file(config.json ./ COPYONLY)
embed(help/*)
add_subdirectory(lib/cdlpp-db)
add_compile_definitions(WITH_CDLPPDB)