diff options
Diffstat (limited to 'ports/aws-crt-cpp')
| -rw-r--r-- | ports/aws-crt-cpp/fix-cmake-target-path.patch | 28 | ||||
| -rw-r--r-- | ports/aws-crt-cpp/portfile.cmake | 48 | ||||
| -rw-r--r-- | ports/aws-crt-cpp/vcpkg.json | 31 |
3 files changed, 107 insertions, 0 deletions
diff --git a/ports/aws-crt-cpp/fix-cmake-target-path.patch b/ports/aws-crt-cpp/fix-cmake-target-path.patch new file mode 100644 index 000000000..69158ef74 --- /dev/null +++ b/ports/aws-crt-cpp/fix-cmake-target-path.patch @@ -0,0 +1,28 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 4d935e2..7b0501c 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -338,7 +338,7 @@ else() + endif() + + install(EXPORT "${PROJECT_NAME}-targets" +- DESTINATION "${CMAKE_INSTALL_LIBDIR}/${PROJECT_NAME}/cmake/${TARGET_DIR}" ++ DESTINATION "${LIBRARY_DIRECTORY}/${PROJECT_NAME}/cmake/" + NAMESPACE AWS:: + COMPONENT Development) + +diff --git a/cmake/aws-crt-cpp-config.cmake b/cmake/aws-crt-cpp-config.cmake +index 4b20a07..faac626 100644 +--- a/cmake/aws-crt-cpp-config.cmake ++++ b/cmake/aws-crt-cpp-config.cmake +@@ -7,8 +7,4 @@ find_dependency(aws-c-auth) + find_dependency(aws-c-event-stream) + find_dependency(aws-c-s3) + +-if (BUILD_SHARED_LIBS) +- include(${CMAKE_CURRENT_LIST_DIR}/shared/@PROJECT_NAME@-targets.cmake) +-else () +- include(${CMAKE_CURRENT_LIST_DIR}/static/@PROJECT_NAME@-targets.cmake) +-endif() ++include(${CMAKE_CURRENT_LIST_DIR}/@CMAKE_PROJECT_NAME@-targets.cmake) +\ No newline at end of file diff --git a/ports/aws-crt-cpp/portfile.cmake b/ports/aws-crt-cpp/portfile.cmake new file mode 100644 index 000000000..7dc30421a --- /dev/null +++ b/ports/aws-crt-cpp/portfile.cmake @@ -0,0 +1,48 @@ +vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO awslabs/aws-crt-cpp
+ REF 9ef58ff20df19e613c91c5f761e381c763da6810 # v0.15.1
+ SHA512 3409b3e6a546ed585b90180807383e8731b36b0db149b5ff92701a43164c4282b1cea4a551bf4c7b1edec7b264098575cf919faee8a2520bb10bbae62258d463
+ PATCHES
+ fix-cmake-target-path.patch
+)
+
+string(COMPARE EQUAL "${VCPKG_CRT_LINKAGE}" "static" STATIC_CRT)
+
+vcpkg_cmake_configure(
+ SOURCE_PATH "${SOURCE_PATH}"
+ PREFER_NINJA
+ OPTIONS
+ "-DSTATIC_CRT=${STATIC_CRT}"
+ "-DBUILD_DEPS=OFF"
+ "-DCMAKE_MODULE_PATH=${CURRENT_INSTALLED_DIR}/share/aws-c-common" # use extra cmake files
+)
+
+vcpkg_cmake_install()
+
+vcpkg_cmake_config_fixup(CONFIG_PATH lib/aws-crt-cpp/cmake)
+
+vcpkg_copy_tools(
+ TOOL_NAMES elasticurl_cpp
+ AUTO_CLEAN
+)
+
+if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
+ file(REMOVE_RECURSE
+ "${CURRENT_PACKAGES_DIR}/bin"
+ "${CURRENT_PACKAGES_DIR}/debug/bin"
+ )
+endif()
+
+file(REMOVE_RECURSE
+ "${CURRENT_PACKAGES_DIR}/debug/include"
+ "${CURRENT_PACKAGES_DIR}/debug/lib/aws-crt-cpp"
+ "${CURRENT_PACKAGES_DIR}/lib/aws-crt-cpp"
+)
+
+vcpkg_copy_pdbs()
+
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share")
+
+# Handle copyright
+file(INSTALL "${SOURCE_PATH}/LICENSE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
diff --git a/ports/aws-crt-cpp/vcpkg.json b/ports/aws-crt-cpp/vcpkg.json new file mode 100644 index 000000000..6112538db --- /dev/null +++ b/ports/aws-crt-cpp/vcpkg.json @@ -0,0 +1,31 @@ +{ + "name": "aws-crt-cpp", + "version": "0.15.1", + "description": "Cross-Platform HW accelerated CRC32c and CRC32 with fallback to efficient SW implementations.", + "homepage": "https://github.com/awslabs/aws-crt-cpp", + "supports": "!arm & !uwp", + "dependencies": [ + "aws-c-auth", + "aws-c-cal", + "aws-c-common", + "aws-c-compression", + "aws-c-event-stream", + "aws-c-http", + "aws-c-io", + "aws-c-mqtt", + "aws-c-s3", + "aws-checksums", + { + "name": "s2n", + "platform": "!uwp & !windows" + }, + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ] +} |
