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.
52 lines
1.5 KiB
52 lines
1.5 KiB
cmake_minimum_required(VERSION 3.14)
|
|
set(CMAKE_POLICY_DEFAULT_CMP0077 NEW)
|
|
|
|
project(planificador)
|
|
|
|
include(FetchContent)
|
|
|
|
FetchContent_Declare(
|
|
tomlplusplus
|
|
GIT_REPOSITORY https://github.com/marzer/tomlplusplus.git
|
|
GIT_TAG v3.3.0
|
|
)
|
|
FetchContent_MakeAvailable(tomlplusplus)
|
|
|
|
list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_LIST_DIR}/libzmq-pkg-config)
|
|
find_package(ZeroMQ QUIET)
|
|
|
|
add_executable(planificador src/host.cpp src/runner.cpp src/network.cpp src/config.cpp src/main.cpp)
|
|
if (NOT ZeroMQ_FOUND)
|
|
message(STATUS "ZeroMQ not found, using bundled version")
|
|
FetchContent_Declare(
|
|
zmq
|
|
GIT_REPOSITORY https://github.com/zeromq/libzmq.git
|
|
GIT_TAG v4.3.5
|
|
)
|
|
FetchContent_Declare(
|
|
cppzmq
|
|
GIT_REPOSITORY https://github.com/zeromq/cppzmq.git
|
|
GIT_TAG v4.10.0
|
|
)
|
|
set(WITH_PERF_TOOL OFF)
|
|
set(ENABLE_CPACK OFF)
|
|
set(ZMQ_BUILD_TESTS OFF)
|
|
set(WITH_TLS OFF)
|
|
set(WITH_DOC OFF)
|
|
set(BUILD_STATIC OFF)
|
|
set(BUILD_SHARED ON)
|
|
set(ZMQ_BUILD_TESTS OFF)
|
|
set(CPPZMQ_BUILD_TESTS OFF)
|
|
FetchContent_MakeAvailable(zmq cppzmq)
|
|
include_directories(${zmq_SOURCE_DIR}/include)
|
|
include_directories(${cppzmq_SOURCE_DIR})
|
|
target_link_libraries(planificador PRIVATE libzmq)
|
|
else ()
|
|
target_link_libraries(planificador PRIVATE zmq)
|
|
endif ()
|
|
|
|
target_compile_options(planificador PUBLIC -Wall -Wextra -pedantic)
|
|
target_compile_features(planificador PUBLIC cxx_std_17)
|
|
|
|
include_directories(${tomlplusplus_SOURCE_DIR}/include)
|