You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
50 lines
1.2 KiB
50 lines
1.2 KiB
cmake_minimum_required(VERSION 3.15) |
|
|
|
set(PROJECT_NAME "markov bot") |
|
project (${PROJECT_NAME}) |
|
|
|
set_property (GLOBAL PROPERTY USE_FOLDERS ON) |
|
|
|
set (CMAKE_CXX_STANDARD 17) |
|
set (CMAKE_CXX_STANDARD_REQUIRED ON) |
|
set (CMAKE_BUILD_TYPE Debug) |
|
set (CMAKE_CXX_FLAGS_DEBUG_INIT "-Wall -g -Werror=format-security -Werror=implicit-function-declaration -fsanitize=address") |
|
|
|
set (THREADS_PREFER_PTHREAD_FLAG ON) |
|
|
|
find_package (Threads REQUIRED) |
|
find_package(Boost 1.66 REQUIRED COMPONENTS system) |
|
|
|
IF(Boost_FOUND) |
|
include_directories(${Boost_INCLUDE_DIRS}) |
|
ELSE() |
|
message(FATAL "${CMAKE_SOURCE_DIR}/libtelegram/include") |
|
ENDIF(Boost_FOUND) |
|
|
|
find_package(OpenSSL REQUIRED) |
|
|
|
add_subdirectory(${CMAKE_CURRENT_LIST_DIR}/SQLiteCpp) |
|
|
|
include_directories( |
|
${CMAKE_CURRENT_LIST_DIR}/SQLiteCpp/include |
|
) |
|
|
|
set(include_dir "${CMAKE_SOURCE_DIR}/libtelegram/include") |
|
message(STATUS "include_dir: ${include_dir}") |
|
include_directories (${include_dir}) |
|
|
|
set(link_libs |
|
Threads::Threads |
|
OpenSSL::SSL |
|
Boost::system |
|
SQLiteCpp |
|
sqlite3 |
|
dl) |
|
|
|
macro(add_tg_example name) |
|
set(target_name ${name}) |
|
add_executable(${target_name} ${name}.cpp) |
|
target_link_libraries(${target_name} ${link_libs}) |
|
endmacro(add_tg_example name) |
|
|
|
add_tg_example(bot)
|
|
|