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( # json # GIT_REPOSITORY https://github.com/nlohmann/json # GIT_PROGRESS TRUE # GIT_TAG main # ) # FetchContent_MakeAvailable(json) 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)