diff --git a/ports/aws-sdk-cpp/CONTROL b/ports/aws-sdk-cpp/CONTROL new file mode 100644 index 000000000..bfeed7a0b --- /dev/null +++ b/ports/aws-sdk-cpp/CONTROL @@ -0,0 +1,3 @@ +Source: aws-sdk-cpp +Version: 1.0.34 +Description: AWS SDK for C++ diff --git a/ports/aws-sdk-cpp/drop_git.patch b/ports/aws-sdk-cpp/drop_git.patch new file mode 100644 index 000000000..491831bd7 --- /dev/null +++ b/ports/aws-sdk-cpp/drop_git.patch @@ -0,0 +1,13 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 9d2a98a..ce58b68 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -22,7 +22,7 @@ if(CMAKE_MAJOR_VERSION LESS 3) + endif() + + # git is required for Android builds and optional for all other platforms +-find_package(Git) ++#find_package(Git) + + # Cmake invocation variables: + # CUSTOM_MEMORY_MANAGEMENT - if set to 1, generates the sdk project files with custom memory management enabled, otherwise disables it diff --git a/ports/aws-sdk-cpp/portfile.cmake b/ports/aws-sdk-cpp/portfile.cmake new file mode 100644 index 000000000..a1f1a40b9 --- /dev/null +++ b/ports/aws-sdk-cpp/portfile.cmake @@ -0,0 +1,55 @@ +include(vcpkg_common_functions) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/aws-sdk-cpp-1.0.34) +vcpkg_download_distfile(ARCHIVE + URLS "https://github.com/aws/aws-sdk-cpp/archive/1.0.34.tar.gz" + FILENAME "1.0.34.tar.gz" + SHA512 21ca03eb323eecb55c29866b73c07956a36aad7c9c051eb7ca201cfd356c3f9732c89898cf0c89660d6c1279dc52438bb389b37d613bf741bae81bb3e773a3c5 +) +vcpkg_extract_source_archive(${ARCHIVE}) + +vcpkg_apply_patches( + SOURCE_PATH ${SOURCE_PATH} + PATCHES + ${CMAKE_CURRENT_LIST_DIR}/drop_git.patch +) + +if(VCPKG_LIBRARY_LINKAGE STREQUAL static) + set(FORCE_SHARED_CRT OFF) +else() + set(FORCE_SHARED_CRT ON) +endif() + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + OPTIONS + -DENABLE_TESTING=OFF + -DFORCE_SHARED_CRT=${FORCE_SHARED_CRT} +) + +vcpkg_install_cmake() + +file(REMOVE_RECURSE + ${CURRENT_PACKAGES_DIR}/debug/include + ${CURRENT_PACKAGES_DIR}/lib/cmake + ${CURRENT_PACKAGES_DIR}/lib/pkgconfig + ${CURRENT_PACKAGES_DIR}/debug/lib/cmake + ${CURRENT_PACKAGES_DIR}/debug/lib/pkgconfig + ${CURRENT_PACKAGES_DIR}/nuget + ${CURRENT_PACKAGES_DIR}/debug/nuget) + +if(${VCPKG_LIBRARY_LINKAGE} STREQUAL dynamic) + file(GLOB LIB_FILES ${CURRENT_PACKAGES_DIR}/bin/*.lib) + file(GLOB DEBUG_LIB_FILES ${CURRENT_PACKAGES_DIR}/debug/bin/*.lib) + file(COPY ${LIB_FILES} DESTINATION ${CURRENT_PACKAGES_DIR}/lib) + file(COPY ${DEBUG_LIB_FILES} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib) + file(REMOVE ${LIB_FILES} ${DEBUG_LIB_FILES}) + + vcpkg_apply_patches( #define USE_IMPORT_EXPORT in SDKConfig.h + SOURCE_PATH ${CURRENT_PACKAGES_DIR}/include + PATCHES + ${CMAKE_CURRENT_LIST_DIR}/shared_define.patch + ) +endif() + +# Handle copyright +file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/aws-sdk-cpp RENAME copyright) \ No newline at end of file diff --git a/ports/aws-sdk-cpp/shared_define.patch b/ports/aws-sdk-cpp/shared_define.patch new file mode 100644 index 000000000..96657b33e --- /dev/null +++ b/ports/aws-sdk-cpp/shared_define.patch @@ -0,0 +1,10 @@ +diff --git a/aws/core/SDKConfig.h b/aws/core/SDKConfig.h +index 130c9dd..66b2630 100644 +--- a/aws/core/SDKConfig.h ++++ b/aws/core/SDKConfig.h +@@ -17,3 +17,4 @@ + + #define JSON_USE_EXCEPTION 0 + ++#define USE_IMPORT_EXPORT +\ No newline at end of file