diff --git a/ports/signalrclient/0001_cmake.patch b/ports/signalrclient/0001_cmake.patch new file mode 100644 index 000000000..0177d5d9b --- /dev/null +++ b/ports/signalrclient/0001_cmake.patch @@ -0,0 +1,47 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 0d78e1c..c952b2f 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -16,4 +16,21 @@ set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/bin) + set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/bin) + + add_subdirectory(src/signalrclient) +-add_subdirectory(test) ++#add_subdirectory(test) ++ ++set(HEADERS ++ include/signalrclient/_exports.h ++ include/signalrclient/connection.h ++ include/signalrclient/connection_state.h ++ include/signalrclient/hub_connection.h ++ include/signalrclient/hub_exception.h ++ include/signalrclient/hub_proxy.h ++ include/signalrclient/log_writer.h ++ include/signalrclient/trace_level.h ++ include/signalrclient/transport_type.h ++ include/signalrclient/web_exception.h) ++ ++install( ++ FILES ${HEADERS} ++ DESTINATION "include/signalrclient" ++) +\ No newline at end of file +diff --git a/src/signalrclient/CMakeLists.txt b/src/signalrclient/CMakeLists.txt +index 76a5e1b..47e7dc3 100644 +--- a/src/signalrclient/CMakeLists.txt ++++ b/src/signalrclient/CMakeLists.txt +@@ -24,4 +24,13 @@ set (SOURCES + + add_library (signalrclient SHARED ${SOURCES}) + ++add_definitions(-DUNICODE -D_UNICODE) ++ + target_link_libraries(signalrclient ${CPPREST_SO}) ++ ++install( ++ TARGETS signalrclient ++ LIBRARY DESTINATION lib ++ ARCHIVE DESTINATION lib ++ RUNTIME DESTINATION bin ++) +\ No newline at end of file diff --git a/ports/signalrclient/CONTROL b/ports/signalrclient/CONTROL new file mode 100644 index 000000000..a5673e964 --- /dev/null +++ b/ports/signalrclient/CONTROL @@ -0,0 +1,4 @@ +Source: signalrclient +Version: 1.0.0-beta1 +Build-Depends: cpprestsdk +Description: C++ client for SignalR. \ No newline at end of file diff --git a/ports/signalrclient/portfile.cmake b/ports/signalrclient/portfile.cmake new file mode 100644 index 000000000..4b4fc3344 --- /dev/null +++ b/ports/signalrclient/portfile.cmake @@ -0,0 +1,34 @@ +if (VCPKG_LIBRARY_LINKAGE STREQUAL static) + message(STATUS "Warning: Static building not supported yet. Building dynamic.") + set(VCPKG_LIBRARY_LINKAGE dynamic) +endif() +include(vcpkg_common_functions) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/SignalR-Client-Cpp-1.0.0-beta1) + +vcpkg_download_distfile(ARCHIVE + URLS "https://github.com/aspnet/SignalR-Client-Cpp/archive/1.0.0-beta1.tar.gz" + FILENAME "SignalR-Client-Cpp-1.0.0-beta1.tar.gz" + SHA512 e0090415aa724087dbe2a317a4642d6359b134e00e836ea70c71bc9186dc8d6bba097666711ab18d9b0a390e1e5f59be2f55279b6859ac20d558b901bf5fe2f2 +) +vcpkg_extract_source_archive(${ARCHIVE}) + +vcpkg_apply_patches( + SOURCE_PATH ${SOURCE_PATH} + PATCHES + ${CMAKE_CURRENT_LIST_DIR}/0001_cmake.patch +) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + OPTIONS + -DCPPREST_SO=${CURRENT_INSTALLED_DIR}/lib/cpprest_2_9.lib + -DCPPREST_INCLUDE_DIR=${CURRENT_INSTALLED_DIR}/include +) + +vcpkg_install_cmake() + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) + +# copy license +file(COPY ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/signalrclient) +file(RENAME ${CURRENT_PACKAGES_DIR}/share/signalrclient/LICENSE.txt ${CURRENT_PACKAGES_DIR}/share/signalrclient/copyright) \ No newline at end of file