66 lines
1.4 KiB
CMake
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)
|