From e2e1c7d778c5063f8967bd26c35f9aeca4fbf757 Mon Sep 17 00:00:00 2001 From: sdcb Date: Mon, 28 Nov 2016 19:15:42 +0800 Subject: Add aws-sdk-cpp Note: 1. I add a patch to not using git, because git will emit a wrong version number in initialize_project_version.cmake file. 2. building aws-sdk-cpp will emit some very long file(longer than 258 in my machine), to make it work, you must moving vcpkg into some shorter path like: C:\vcpkg --- ports/aws-sdk-cpp/CONTROL | 3 +++ ports/aws-sdk-cpp/drop_git.patch | 13 +++++++++++++ ports/aws-sdk-cpp/portfile.cmake | 23 +++++++++++++++++++++++ 3 files changed, 39 insertions(+) create mode 100644 ports/aws-sdk-cpp/CONTROL create mode 100644 ports/aws-sdk-cpp/drop_git.patch create mode 100644 ports/aws-sdk-cpp/portfile.cmake 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..8af7d0e94 --- /dev/null +++ b/ports/aws-sdk-cpp/portfile.cmake @@ -0,0 +1,23 @@ +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 +) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} +) + +vcpkg_install_cmake() + +# Handle copyright +file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/aws-sdk-cpp RENAME copyright) \ No newline at end of file -- cgit v1.2.3 From 94776cec0e831234a6d07bc535615c13f5344a8d Mon Sep 17 00:00:00 2001 From: flysha Date: Mon, 28 Nov 2016 23:03:26 +0800 Subject: [aws-sdk-cpp] correct the lib file --- ports/aws-sdk-cpp/portfile.cmake | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/ports/aws-sdk-cpp/portfile.cmake b/ports/aws-sdk-cpp/portfile.cmake index 8af7d0e94..6a72cda14 100644 --- a/ports/aws-sdk-cpp/portfile.cmake +++ b/ports/aws-sdk-cpp/portfile.cmake @@ -19,5 +19,20 @@ vcpkg_configure_cmake( 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) + +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}) + # Handle copyright file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/aws-sdk-cpp RENAME copyright) \ No newline at end of file -- cgit v1.2.3 From 84c99801c4142e937ed76b5c8b77747f6865d862 Mon Sep 17 00:00:00 2001 From: flysha Date: Mon, 28 Nov 2016 23:06:04 +0800 Subject: [aws-sdk-cpp] specify dynamic only --- ports/aws-sdk-cpp/portfile.cmake | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/ports/aws-sdk-cpp/portfile.cmake b/ports/aws-sdk-cpp/portfile.cmake index 6a72cda14..7912f8b11 100644 --- a/ports/aws-sdk-cpp/portfile.cmake +++ b/ports/aws-sdk-cpp/portfile.cmake @@ -1,3 +1,8 @@ +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/aws-sdk-cpp-1.0.34) vcpkg_download_distfile(ARCHIVE -- cgit v1.2.3 From a4b593ac627ef9a47a95277a05ed22083ddca955 Mon Sep 17 00:00:00 2001 From: sdcb Date: Tue, 29 Nov 2016 10:32:38 +0800 Subject: [aws-sdk] drop static block because aws-sdk actually works in static builds. --- ports/aws-sdk-cpp/portfile.cmake | 5 ----- 1 file changed, 5 deletions(-) diff --git a/ports/aws-sdk-cpp/portfile.cmake b/ports/aws-sdk-cpp/portfile.cmake index 7912f8b11..6a72cda14 100644 --- a/ports/aws-sdk-cpp/portfile.cmake +++ b/ports/aws-sdk-cpp/portfile.cmake @@ -1,8 +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/aws-sdk-cpp-1.0.34) vcpkg_download_distfile(ARCHIVE -- cgit v1.2.3 From 865faa40172be0d61166bac87eadc43517463f0b Mon Sep 17 00:00:00 2001 From: sdcb Date: Tue, 29 Nov 2016 11:04:32 +0800 Subject: [aws-sdk] issues occurs in static build, revert code. --- ports/aws-sdk-cpp/portfile.cmake | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/ports/aws-sdk-cpp/portfile.cmake b/ports/aws-sdk-cpp/portfile.cmake index 6a72cda14..16ba1916c 100644 --- a/ports/aws-sdk-cpp/portfile.cmake +++ b/ports/aws-sdk-cpp/portfile.cmake @@ -1,3 +1,8 @@ +if (VCPKG_LIBRARY_LINKAGE STREQUAL static) + message(STATUS "Warning: Static building not supported yet. Building dynamic.") #Blocked by CRT MD link issue. + set(VCPKG_LIBRARY_LINKAGE dynamic) +endif() + include(vcpkg_common_functions) set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/aws-sdk-cpp-1.0.34) vcpkg_download_distfile(ARCHIVE @@ -28,11 +33,13 @@ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/nuget ${CURRENT_PACKAGES_DIR}/debug/nuget) -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}) +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}) +endif() # Handle copyright file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/aws-sdk-cpp RENAME copyright) \ No newline at end of file -- cgit v1.2.3 From 5b2d836e1436c8557909797285131e46eac81d88 Mon Sep 17 00:00:00 2001 From: flysha Date: Wed, 30 Nov 2016 23:03:49 +0800 Subject: [aws-sdk-cpp] enable static and disable test --- ports/aws-sdk-cpp/portfile.cmake | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/ports/aws-sdk-cpp/portfile.cmake b/ports/aws-sdk-cpp/portfile.cmake index 16ba1916c..321ec5f8c 100644 --- a/ports/aws-sdk-cpp/portfile.cmake +++ b/ports/aws-sdk-cpp/portfile.cmake @@ -1,8 +1,3 @@ -if (VCPKG_LIBRARY_LINKAGE STREQUAL static) - message(STATUS "Warning: Static building not supported yet. Building dynamic.") #Blocked by CRT MD link issue. - set(VCPKG_LIBRARY_LINKAGE dynamic) -endif() - include(vcpkg_common_functions) set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/aws-sdk-cpp-1.0.34) vcpkg_download_distfile(ARCHIVE @@ -18,8 +13,15 @@ vcpkg_apply_patches( ${CMAKE_CURRENT_LIST_DIR}/drop_git.patch ) +if(VCPKG_LIBRARY_LINKAGE STREQUAL static) + 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() -- cgit v1.2.3 From 915d99ecb751c3607adac689e7353f59d30f13f6 Mon Sep 17 00:00:00 2001 From: flysha Date: Wed, 30 Nov 2016 23:06:00 +0800 Subject: [aws-sdk-cpp] correct FORCE_SHARED_CRT --- ports/aws-sdk-cpp/portfile.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ports/aws-sdk-cpp/portfile.cmake b/ports/aws-sdk-cpp/portfile.cmake index 321ec5f8c..f012719a8 100644 --- a/ports/aws-sdk-cpp/portfile.cmake +++ b/ports/aws-sdk-cpp/portfile.cmake @@ -14,7 +14,7 @@ vcpkg_apply_patches( ) if(VCPKG_LIBRARY_LINKAGE STREQUAL static) - set(FORCE_SHARED_CRT ON) + set(FORCE_SHARED_CRT OFF) endif() vcpkg_configure_cmake( -- cgit v1.2.3 From 76f99eecfce01ef1ab4262f179819eb250b8d56e Mon Sep 17 00:00:00 2001 From: sdcb Date: Thu, 1 Dec 2016 10:23:35 +0800 Subject: [aws-sdk-cpp] add patch to define USE_IMPORT_EXPORT to fix dynamic build link issue --- ports/aws-sdk-cpp/portfile.cmake | 6 ++++++ ports/aws-sdk-cpp/shared_define.patch | 10 ++++++++++ 2 files changed, 16 insertions(+) create mode 100644 ports/aws-sdk-cpp/shared_define.patch diff --git a/ports/aws-sdk-cpp/portfile.cmake b/ports/aws-sdk-cpp/portfile.cmake index f012719a8..5ff1ba6b7 100644 --- a/ports/aws-sdk-cpp/portfile.cmake +++ b/ports/aws-sdk-cpp/portfile.cmake @@ -41,6 +41,12 @@ if(${VCPKG_LIBRARY_LINKAGE} STREQUAL dynamic) 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 ${SOURCE_PATH} + PATCHES + ${CURRENT_PACKAGES_DIR}/include/shared_define.patch + ) endif() # Handle copyright 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 -- cgit v1.2.3 From e6a26aaa314a1267f5a1176d067fe7a2e1063ab2 Mon Sep 17 00:00:00 2001 From: sdcb Date: Thu, 1 Dec 2016 10:27:27 +0800 Subject: [aws-sdk-cpp] set FORCE_SHARED_CRT ON when building dynamic. --- ports/aws-sdk-cpp/portfile.cmake | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ports/aws-sdk-cpp/portfile.cmake b/ports/aws-sdk-cpp/portfile.cmake index 5ff1ba6b7..888a492d9 100644 --- a/ports/aws-sdk-cpp/portfile.cmake +++ b/ports/aws-sdk-cpp/portfile.cmake @@ -15,6 +15,8 @@ vcpkg_apply_patches( if(VCPKG_LIBRARY_LINKAGE STREQUAL static) set(FORCE_SHARED_CRT OFF) +else() + set(FORCE_SHARED_CRT ON) endif() vcpkg_configure_cmake( -- cgit v1.2.3 From 007de30723ade2ef68047b9c1f705a72b4f28f96 Mon Sep 17 00:00:00 2001 From: sdcb Date: Thu, 1 Dec 2016 10:56:43 +0800 Subject: [aws-sdk-cpp] correct patch path --- ports/aws-sdk-cpp/portfile.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ports/aws-sdk-cpp/portfile.cmake b/ports/aws-sdk-cpp/portfile.cmake index 888a492d9..a1f1a40b9 100644 --- a/ports/aws-sdk-cpp/portfile.cmake +++ b/ports/aws-sdk-cpp/portfile.cmake @@ -45,9 +45,9 @@ if(${VCPKG_LIBRARY_LINKAGE} STREQUAL dynamic) file(REMOVE ${LIB_FILES} ${DEBUG_LIB_FILES}) vcpkg_apply_patches( #define USE_IMPORT_EXPORT in SDKConfig.h - SOURCE_PATH ${SOURCE_PATH} + SOURCE_PATH ${CURRENT_PACKAGES_DIR}/include PATCHES - ${CURRENT_PACKAGES_DIR}/include/shared_define.patch + ${CMAKE_CURRENT_LIST_DIR}/shared_define.patch ) endif() -- cgit v1.2.3