cmake_minimum_required(VERSION 3.16) project(AgentSim LANGUAGES CXX) set(CMAKE_CXX_STANDARD 20) set(CMAKE_CXX_STANDARD_REQUIRED ON) set(CMAKE_INCLUDE_CURRENT_DIR ON) set(CMAKE_AUTOMOC ON) set(CMAKE_DISABLE_IN_SOURCE_BUILD ON) set(TOOLS_BIN ${CMAKE_CURRENT_SOURCE_DIR}/../bin) file(MAKE_DIRECTORY ${TOOLS_BIN}) find_package(QT NAMES Qt6 Qt5 REQUIRED COMPONENTS Core Network) find_package(Qt${QT_VERSION_MAJOR} REQUIRED COMPONENTS Core Network) find_package(MsgUtils HINTS ${CMAKE_CURRENT_SOURCE_DIR}/../../lib/MsgUtils REQUIRED) set(INCLUDES AgentSimController.h ) set(SRCS AgentSimController.cpp main.cpp ) add_executable(${PROJECT_NAME} ${INCLUDES} ${SRCS} ) target_link_libraries(${PROJECT_NAME} PRIVATE MsgUtils Qt${QT_VERSION_MAJOR}::Core Qt${QT_VERSION_MAJOR}::Network ) set_target_properties(${PROJECT_NAME} PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${TOOLS_BIN} ) install(TARGETS ${PROJECT_NAME} RUNTIME DESTINATION ${TOOLS_BIN} )