36 lines
812 B
CMake
36 lines
812 B
CMake
cmake_minimum_required(VERSION 3.16)
|
|
project(notification-pusher LANGUAGES CXX)
|
|
|
|
set(CMAKE_CXX_STANDARD 23)
|
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
|
set(CMAKE_CXX_EXTENSIONS OFF)
|
|
|
|
if (NOT CMAKE_CXX_COMPILER_ID MATCHES "Clang")
|
|
message(FATAL_ERROR "Please configure with Clang: cmake -DCMAKE_CXX_COMPILER=clang++ ..")
|
|
endif()
|
|
|
|
find_package(fmt REQUIRED)
|
|
find_package(spdlog REQUIRED)
|
|
find_package(PahoMqttCpp REQUIRED)
|
|
find_package(cpr REQUIRED)
|
|
|
|
add_executable(${PROJECT_NAME} src/main.cpp
|
|
src/definitions.cpp
|
|
src/daemon.cpp
|
|
)
|
|
|
|
target_compile_options(${PROJECT_NAME} PRIVATE
|
|
-Wall -Wextra -Wpedantic
|
|
-Wshadow -Wconversion
|
|
-O2
|
|
)
|
|
|
|
target_link_libraries(${PROJECT_NAME}
|
|
PRIVATE
|
|
fmt::fmt
|
|
spdlog::spdlog
|
|
PahoMqttCpp::paho-mqttpp3
|
|
cpr::cpr
|
|
)
|
|
|