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 )