metal-kompanion/CMakeLists.txt

33 lines
971 B
CMake

cmake_minimum_required(VERSION 3.22)
project(metal_kompanion_mcp LANGUAGES CXX)
set(CMAKE_CXX_STANDARD 20)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
# Placeholder: find Qt and qtmcp when available
# find_package(Qt6 COMPONENTS Core Network REQUIRED)
# find_package(qtmcp REQUIRED)
find_package(PkgConfig REQUIRED)
pkg_check_modules(PQXX REQUIRED libpqxx)
add_executable(kom_mcp
src/main.cpp
src/dal/PgDal.cpp
)
# target_link_libraries(kom_mcp PRIVATE Qt6::Core Qt6::Network qtmcp)
target_include_directories(kom_mcp PRIVATE src ${PQXX_INCLUDE_DIRS})
target_link_libraries(kom_mcp PRIVATE ${PQXX_LIBRARIES})
install(TARGETS kom_mcp RUNTIME DESTINATION bin)
add_executable(test_mcp_tools
tests/contract/test_mcp_tools.cpp
src/dal/PgDal.cpp
)
target_include_directories(test_mcp_tools PRIVATE src ${PQXX_INCLUDE_DIRS})
target_link_libraries(test_mcp_tools PRIVATE ${PQXX_LIBRARIES})
enable_testing()
add_test(NAME contract_mcp_tools COMMAND test_mcp_tools)