module-arch-POC/CMakeLists.txt

66 lines
1.4 KiB
CMake

cmake_minimum_required(VERSION 3.14)
include(FetchContent)
set(FETCHCONTENT_QUIET FALSE)
set(FTXUI_BUILD_EXAMPLES ON)
FetchContent_Declare(
fmt
GIT_REPOSITORY https://github.com/fmtlib/fmt
GIT_PROGRESS TRUE
)
FetchContent_MakeAvailable(fmt)
FetchContent_Declare(
inja
GIT_REPOSITORY https://github.com/pantor/inja
GIT_PROGRESS TRUE
GIT_TAG main
)
FetchContent_MakeAvailable(inja)
FetchContent_Declare(
libzmq
GIT_REPOSITORY https://github.com/zeromq/libzmq
GIT_PROGRESS TRUE
)
FetchContent_MakeAvailable(libzmq)
FetchContent_Declare(
cppzmq
GIT_REPOSITORY https://github.com/zeromq/cppzmq
GIT_PROGRESS TRUE
)
FetchContent_MakeAvailable(cppzmq)
project(module_arch_POC)
set(CMAKE_CXX_STANDARD 23)
set(CMAKE_BUILD_TYPE Debug)
set(CMAKE_MESSAGE_LOG_LEVEL TRACE)
set(CMAKE_VERBOSE_MAKEFILE OFF)
set(CMAKE_CXX_COMPILER /usr/bin/clang++)
file(GLOB_RECURSE SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/src/*.hpp ${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp)
add_executable(${CMAKE_PROJECT_NAME} ${SOURCES})
target_include_directories(${CMAKE_PROJECT_NAME} PRIVATE
${CMAKE_CURRENT_SOURCE_DIR}
${fmt_SOURCE_DIR}/include
${inja_SOURCE_DIR}/include
${libzmq_SOURCE_DIR}/include
${cppzmq_SOURCE_DIR}/include
)
target_link_directories(${CMAKE_PROJECT_NAME}
PRIVATE
${fmt_BINARY_DIR}
${inja_BINARY_DIR}
${libzmq_BINARY_DIR}
${cppzmq_BINARY_DIR}
)
target_link_libraries(${CMAKE_PROJECT_NAME} PRIVATE zmq)