diff options
| author | Robert Schumacher <roschuma@microsoft.com> | 2016-11-15 17:01:54 -0800 |
|---|---|---|
| committer | Robert Schumacher <roschuma@microsoft.com> | 2016-11-15 17:03:38 -0800 |
| commit | 4f0b17e3163e8dfdd8efb28d8f4c1c059b630a2c (patch) | |
| tree | c69cd24404928eb8c3db9b6dbee3968a4a508d15 | |
| parent | 13645a66b8610ab39997f968b95c3c142719e906 (diff) | |
| download | vcpkg-4f0b17e3163e8dfdd8efb28d8f4c1c059b630a2c.tar.gz vcpkg-4f0b17e3163e8dfdd8efb28d8f4c1c059b630a2c.zip | |
[signalrclient] Enable static builds
| -rw-r--r-- | ports/signalrclient/0001_cmake.patch | 50 | ||||
| -rw-r--r-- | ports/signalrclient/portfile.cmake | 10 |
2 files changed, 44 insertions, 16 deletions
diff --git a/ports/signalrclient/0001_cmake.patch b/ports/signalrclient/0001_cmake.patch index 0177d5d9b..809667960 100644 --- a/ports/signalrclient/0001_cmake.patch +++ b/ports/signalrclient/0001_cmake.patch @@ -1,16 +1,37 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt -index 0d78e1c..c952b2f 100644 +index 8c73730..4cd9074 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -16,4 +16,21 @@ set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/bin) +@@ -1,7 +1,9 @@ + cmake_minimum_required (VERSION 2.8.11) + project (signalrclient) + ++if(NOT WIN32) + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -fPIC -L -lcpprest") ++endif() + + set(CPPREST_INCLUDE_DIR "" CACHE FILEPATH "Path to casablanca include dir") + +@@ -16,4 +18,32 @@ 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) ++if(NOT DISABLE_TESTS) ++ add_subdirectory(test) ++endif() ++ ++if(BUILD_SHARED_LIBS) ++ install(FILES include/signalrclient/_exports.h DESTINATION include/signalrclient) ++else() ++ file(READ include/signalrclient/_exports.h EXPORTS_H) ++ string(REPLACE "#ifdef NO_SIGNALRCLIENT_EXPORTS" "#if 1" EXPORTS_H_2 ${EXPORTS_H}) ++ file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/_exports.h ${EXPORTS_H_2}) + -+set(HEADERS -+ include/signalrclient/_exports.h ++ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/_exports.h DESTINATION include/signalrclient) ++endif() ++ ++set(HEADERS + include/signalrclient/connection.h + include/signalrclient/connection_state.h + include/signalrclient/hub_connection.h @@ -25,17 +46,25 @@ index 0d78e1c..c952b2f 100644 + 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 +index 76a5e1b..db141eb 100644 --- a/src/signalrclient/CMakeLists.txt +++ b/src/signalrclient/CMakeLists.txt -@@ -24,4 +24,13 @@ set (SOURCES - - add_library (signalrclient SHARED ${SOURCES}) +@@ -22,6 +22,21 @@ set (SOURCES + websocket_transport.cpp + ) +-add_library (signalrclient SHARED ${SOURCES}) ++if(BUILD_SHARED_LIBS) ++ add_definitions(-DSIGNALRCLIENT_EXPORTS) ++else() ++ add_definitions(-DNO_SIGNALRCLIENT_EXPORTS) ++endif() ++ +add_definitions(-DUNICODE -D_UNICODE) + ++add_library (signalrclient ${SOURCES}) + target_link_libraries(signalrclient ${CPPREST_SO}) + +install( @@ -44,4 +73,3 @@ index 76a5e1b..47e7dc3 100644 + ARCHIVE DESTINATION lib + RUNTIME DESTINATION bin +) -\ No newline at end of file diff --git a/ports/signalrclient/portfile.cmake b/ports/signalrclient/portfile.cmake index 4b4fc3344..22e91acab 100644 --- a/ports/signalrclient/portfile.cmake +++ b/ports/signalrclient/portfile.cmake @@ -1,7 +1,3 @@ -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) @@ -20,9 +16,13 @@ vcpkg_apply_patches( vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} - OPTIONS + OPTIONS_DEBUG + -DCPPREST_SO=${CURRENT_INSTALLED_DIR}/debug/lib/cpprest_2_9.lib + OPTIONS_RELEASE -DCPPREST_SO=${CURRENT_INSTALLED_DIR}/lib/cpprest_2_9.lib + OPTIONS -DCPPREST_INCLUDE_DIR=${CURRENT_INSTALLED_DIR}/include + -DDISABLE_TESTS=ON ) vcpkg_install_cmake() |
