From 9a1fa0eebca9770e0d77c3ba62382ff29da6617c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Linas=20Vep=C5=A1tas?= Date: Wed, 11 Jun 2025 16:30:37 -0500 Subject: [PATCH 1/2] Create an install target --- src/CMakeLists.txt | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 2a50d21..02920e8 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -1,6 +1,7 @@ set(TARGET mcp) -add_library(${TARGET} STATIC +# Create shared library +add_library(${TARGET} SHARED ../include/mcp_client.h mcp_message.cpp ../include/mcp_message.h @@ -22,3 +23,17 @@ target_link_libraries(${TARGET} PUBLIC ${CMAKE_THREAD_LIBS_INIT}) if(OPENSSL_FOUND) target_link_libraries(${TARGET} PUBLIC ${OPENSSL_LIBRARIES}) endif() + +# Set properties for shared library +set_target_properties(${TARGET} PROPERTIES + VERSION ${PROJECT_VERSION} + SOVERSION 1 + PUBLIC_HEADER "../include/mcp_client.h;../include/mcp_message.h;../include/mcp_resource.h;../include/mcp_server.h;../include/mcp_tool.h;../include/mcp_stdio_client.h;../include/mcp_sse_client.h" +) + +# Install rules +include(GNUInstallDirs) +install(TARGETS ${TARGET} + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} + PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/mcp +) From bece59a00138d9809bf7624cad1924bab72ca821 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Linas=20Vep=C5=A1tas?= Date: Wed, 11 Jun 2025 18:58:41 -0500 Subject: [PATCH 2/2] Install two more missing files --- src/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 02920e8..f3a95d7 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -28,7 +28,7 @@ endif() set_target_properties(${TARGET} PROPERTIES VERSION ${PROJECT_VERSION} SOVERSION 1 - PUBLIC_HEADER "../include/mcp_client.h;../include/mcp_message.h;../include/mcp_resource.h;../include/mcp_server.h;../include/mcp_tool.h;../include/mcp_stdio_client.h;../include/mcp_sse_client.h" + PUBLIC_HEADER "../include/mcp_client.h;../include/mcp_message.h;../include/mcp_resource.h;../include/mcp_server.h;../include/mcp_tool.h;../include/mcp_stdio_client.h;../include/mcp_sse_client.h;../include/mcp_thread_pool.h;../include/mcp_logger.h;../common/json.hpp" ) # Install rules