Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[aws-cpp-sdk] [zlib] [openssl] [curl] Fix zlib, OpenSSL, curl and AWS SDK for Android #15725

Merged
merged 136 commits into from
Apr 20, 2021

Conversation

ahmedyarub
Copy link
Contributor

Describe the pull request
Adds toolchain chaining to external builds

  • What does your PR fix? Fixes #
    Fixes Android builds. Same solution can be used in the future for any cross-platform builds.

  • Which triplets are supported/not supported? Have you updated the CI baseline?
    x64-Android

  • Does your PR follow the maintainer guide?
    Yes

@JackBoosY JackBoosY self-assigned this Jan 18, 2021
@JackBoosY JackBoosY added category:community-triplet A PR or issue related to community triplets not officially validated by the vcpkg team. category:port-feature The issue is with a library, which is requesting new capabilities that didn’t exist labels Jan 18, 2021
@ahmedyarub
Copy link
Contributor Author

Done

@JackBoosY
Copy link
Contributor

CMake Error at scripts/cmake/vcpkg_apply_patches.cmake:63 (message):
  Applying patch failed.  error: corrupt patch at line 70

Call Stack (most recent call first):
  scripts/cmake/vcpkg_extract_source_archive_ex.cmake:145 (vcpkg_apply_patches)

@ahmedyarub
Copy link
Contributor Author

CMake Error at scripts/cmake/vcpkg_apply_patches.cmake:63 (message):
  Applying patch failed.  error: corrupt patch at line 70

Call Stack (most recent call first):
  scripts/cmake/vcpkg_extract_source_archive_ex.cmake:145 (vcpkg_apply_patches)

I'm struggling to fix it but I don't understand why it works in some envs and not in others!

ports/aws-sdk-cpp/portfile.cmake Outdated Show resolved Hide resolved
@JackBoosY
Copy link
Contributor

@ahmedyarub Is my patch correct?

@ahmedyarub
Copy link
Contributor Author

@ahmedyarub Is my patch correct?

Yes! I've just tested it. Thank you very much.

@JackBoosY
Copy link
Contributor

Need test all features.

@JackBoosY
Copy link
Contributor

When building aws-sdk-cpp[*]:x86-windows:

[391/413] "C:\PROGRA~2\Microsoft Visual Studio\2017\Enterprise\VC\Tools\MSVC\14.16.27023\bin\Hostx64\x86\cl.exe"   /TP -DAWS_CHECKSUMS_USE_IMPORT_EXPORT -DAWS_COMMON_USE_IMPORT_EXPORT -DAWS_EVENT_STREAM_USE_IMPORT_EXPORT -DAWS_SDK_VERSION_MAJOR=1 -DAWS_SDK_VERSION_MINOR=8 -DAWS_SDK_VERSION_PATCH=83 -DAWS_TRANSFER_EXPORTS -DENABLE_BCRYPT_ENCRYPTION -DENABLE_WINDOWS_CLIENT -DPLATFORM_WINDOWS -DUSE_IMPORT_EXPORT=1 -DUSE_WINDOWS_DLL_SEMANTICS -Daws_cpp_sdk_transfer_EXPORTS -IG:\15725\vcpkg\buildtrees\aws-sdk-cpp\src\1c85d0a8c9-4ee9b543a6.clean\aws-cpp-sdk-transfer\include -IG:\15725\vcpkg\buildtrees\aws-sdk-cpp\src\1c85d0a8c9-4ee9b543a6.clean\aws-cpp-sdk-s3\include -IG:\15725\vcpkg\buildtrees\aws-sdk-cpp\src\1c85d0a8c9-4ee9b543a6.clean\aws-cpp-sdk-core\include -IG:\15725\vcpkg\installed\x86-windows\include /nologo /DWIN32 /D_WINDOWS /W4 /utf-8 /GR /EHsc /MP  /MP /bigobj /WX /D_DEBUG /MDd /Z7 /Ob0 /Od /RTC1 /showIncludes /Foaws-cpp-sdk-transfer\CMakeFiles\aws-cpp-sdk-transfer.dir\source\transfer\TransferManager.cpp.obj /Fdaws-cpp-sdk-transfer\CMakeFiles\aws-cpp-sdk-transfer.dir\ /FS -c G:\15725\vcpkg\buildtrees\aws-sdk-cpp\src\1c85d0a8c9-4ee9b543a6.clean\aws-cpp-sdk-transfer\source\transfer\TransferManager.cpp
FAILED: aws-cpp-sdk-transfer/CMakeFiles/aws-cpp-sdk-transfer.dir/source/transfer/TransferManager.cpp.obj 
"C:\PROGRA~2\Microsoft Visual Studio\2017\Enterprise\VC\Tools\MSVC\14.16.27023\bin\Hostx64\x86\cl.exe"   /TP -DAWS_CHECKSUMS_USE_IMPORT_EXPORT -DAWS_COMMON_USE_IMPORT_EXPORT -DAWS_EVENT_STREAM_USE_IMPORT_EXPORT -DAWS_SDK_VERSION_MAJOR=1 -DAWS_SDK_VERSION_MINOR=8 -DAWS_SDK_VERSION_PATCH=83 -DAWS_TRANSFER_EXPORTS -DENABLE_BCRYPT_ENCRYPTION -DENABLE_WINDOWS_CLIENT -DPLATFORM_WINDOWS -DUSE_IMPORT_EXPORT=1 -DUSE_WINDOWS_DLL_SEMANTICS -Daws_cpp_sdk_transfer_EXPORTS -IG:\15725\vcpkg\buildtrees\aws-sdk-cpp\src\1c85d0a8c9-4ee9b543a6.clean\aws-cpp-sdk-transfer\include -IG:\15725\vcpkg\buildtrees\aws-sdk-cpp\src\1c85d0a8c9-4ee9b543a6.clean\aws-cpp-sdk-s3\include -IG:\15725\vcpkg\buildtrees\aws-sdk-cpp\src\1c85d0a8c9-4ee9b543a6.clean\aws-cpp-sdk-core\include -IG:\15725\vcpkg\installed\x86-windows\include /nologo /DWIN32 /D_WINDOWS /W4 /utf-8 /GR /EHsc /MP  /MP /bigobj /WX /D_DEBUG /MDd /Z7 /Ob0 /Od /RTC1 /showIncludes /Foaws-cpp-sdk-transfer\CMakeFiles\aws-cpp-sdk-transfer.dir\source\transfer\TransferManager.cpp.obj /Fdaws-cpp-sdk-transfer\CMakeFiles\aws-cpp-sdk-transfer.dir\ /FS -c G:\15725\vcpkg\buildtrees\aws-sdk-cpp\src\1c85d0a8c9-4ee9b543a6.clean\aws-cpp-sdk-transfer\source\transfer\TransferManager.cpp
G:\15725\vcpkg\buildtrees\aws-sdk-cpp\src\1c85d0a8c9-4ee9b543a6.clean\aws-cpp-sdk-transfer\source\transfer\TransferManager.cpp(772): error C2220: warning treated as error - no 'object' file generated
G:\15725\vcpkg\buildtrees\aws-sdk-cpp\src\1c85d0a8c9-4ee9b543a6.clean\aws-cpp-sdk-transfer\source\transfer\TransferManager.cpp(772): warning C4244: 'initializing': conversion from 'const _Ty' to 'size_t', possible loss of data
        with
        [
            _Ty=uint64_t
        ]
G:\15725\vcpkg\buildtrees\aws-sdk-cpp\src\1c85d0a8c9-4ee9b543a6.clean\aws-cpp-sdk-transfer\source\transfer\TransferManager.cpp(777): warning C4244: 'initializing': conversion from 'uint64_t' to 'size_t', possible loss of data
G:\15725\vcpkg\buildtrees\aws-sdk-cpp\src\1c85d0a8c9-4ee9b543a6.clean\aws-cpp-sdk-transfer\source\transfer\TransferManager.cpp(927): warning C4244: 'argument': conversion from 'uint64_t' to 'size_t', possible loss of data
G:\15725\vcpkg\buildtrees\aws-sdk-cpp\src\1c85d0a8c9-4ee9b543a6.clean\aws-cpp-sdk-core\include\aws/core/utils/memory/AWSMemory.h(66): warning C4244: 'argument': conversion from '_Ty' to 'size_t', possible loss of data
        with
        [
            _Ty=uint64_t
        ]
G:\15725\vcpkg\buildtrees\aws-sdk-cpp\src\1c85d0a8c9-4ee9b543a6.clean\aws-cpp-sdk-core\include\aws/core/utils/memory/AWSMemory.h(258): note: see reference to function template instantiation 'T *Aws::New<T,const _Ty&,unsigned __int64>(const char *,const _Ty &,unsigned __int64 &&)' being compiled
        with
        [
            T=Aws::Utils::Stream::PreallocatedStreamBuf,
            _Ty=unsigned char *
        ]
G:\15725\vcpkg\buildtrees\aws-sdk-cpp\src\1c85d0a8c9-4ee9b543a6.clean\aws-cpp-sdk-transfer\source\transfer\TransferManager.cpp(827): note: see reference to function template instantiation 'std::unique_ptr<Aws::Utils::Stream::PreallocatedStreamBuf,Aws::Deleter<Aws::Utils::Stream::PreallocatedStreamBuf>> Aws::MakeUnique<Aws::Utils::Stream::PreallocatedStreamBuf,const RESOURCE_TYPE&,uint64_t>(const char *,const RESOURCE_TYPE &,uint64_t &&)' being compiled
        with
        [
            RESOURCE_TYPE=unsigned char *
        ]

@ahmedyarub
Copy link
Contributor Author

When building aws-sdk-cpp[*]:x86-windows:

[391/413] "C:\PROGRA~2\Microsoft Visual Studio\2017\Enterprise\VC\Tools\MSVC\14.16.27023\bin\Hostx64\x86\cl.exe"   /TP -DAWS_CHECKSUMS_USE_IMPORT_EXPORT -DAWS_COMMON_USE_IMPORT_EXPORT -DAWS_EVENT_STREAM_USE_IMPORT_EXPORT -DAWS_SDK_VERSION_MAJOR=1 -DAWS_SDK_VERSION_MINOR=8 -DAWS_SDK_VERSION_PATCH=83 -DAWS_TRANSFER_EXPORTS -DENABLE_BCRYPT_ENCRYPTION -DENABLE_WINDOWS_CLIENT -DPLATFORM_WINDOWS -DUSE_IMPORT_EXPORT=1 -DUSE_WINDOWS_DLL_SEMANTICS -Daws_cpp_sdk_transfer_EXPORTS -IG:\15725\vcpkg\buildtrees\aws-sdk-cpp\src\1c85d0a8c9-4ee9b543a6.clean\aws-cpp-sdk-transfer\include -IG:\15725\vcpkg\buildtrees\aws-sdk-cpp\src\1c85d0a8c9-4ee9b543a6.clean\aws-cpp-sdk-s3\include -IG:\15725\vcpkg\buildtrees\aws-sdk-cpp\src\1c85d0a8c9-4ee9b543a6.clean\aws-cpp-sdk-core\include -IG:\15725\vcpkg\installed\x86-windows\include /nologo /DWIN32 /D_WINDOWS /W4 /utf-8 /GR /EHsc /MP  /MP /bigobj /WX /D_DEBUG /MDd /Z7 /Ob0 /Od /RTC1 /showIncludes /Foaws-cpp-sdk-transfer\CMakeFiles\aws-cpp-sdk-transfer.dir\source\transfer\TransferManager.cpp.obj /Fdaws-cpp-sdk-transfer\CMakeFiles\aws-cpp-sdk-transfer.dir\ /FS -c G:\15725\vcpkg\buildtrees\aws-sdk-cpp\src\1c85d0a8c9-4ee9b543a6.clean\aws-cpp-sdk-transfer\source\transfer\TransferManager.cpp
FAILED: aws-cpp-sdk-transfer/CMakeFiles/aws-cpp-sdk-transfer.dir/source/transfer/TransferManager.cpp.obj 
"C:\PROGRA~2\Microsoft Visual Studio\2017\Enterprise\VC\Tools\MSVC\14.16.27023\bin\Hostx64\x86\cl.exe"   /TP -DAWS_CHECKSUMS_USE_IMPORT_EXPORT -DAWS_COMMON_USE_IMPORT_EXPORT -DAWS_EVENT_STREAM_USE_IMPORT_EXPORT -DAWS_SDK_VERSION_MAJOR=1 -DAWS_SDK_VERSION_MINOR=8 -DAWS_SDK_VERSION_PATCH=83 -DAWS_TRANSFER_EXPORTS -DENABLE_BCRYPT_ENCRYPTION -DENABLE_WINDOWS_CLIENT -DPLATFORM_WINDOWS -DUSE_IMPORT_EXPORT=1 -DUSE_WINDOWS_DLL_SEMANTICS -Daws_cpp_sdk_transfer_EXPORTS -IG:\15725\vcpkg\buildtrees\aws-sdk-cpp\src\1c85d0a8c9-4ee9b543a6.clean\aws-cpp-sdk-transfer\include -IG:\15725\vcpkg\buildtrees\aws-sdk-cpp\src\1c85d0a8c9-4ee9b543a6.clean\aws-cpp-sdk-s3\include -IG:\15725\vcpkg\buildtrees\aws-sdk-cpp\src\1c85d0a8c9-4ee9b543a6.clean\aws-cpp-sdk-core\include -IG:\15725\vcpkg\installed\x86-windows\include /nologo /DWIN32 /D_WINDOWS /W4 /utf-8 /GR /EHsc /MP  /MP /bigobj /WX /D_DEBUG /MDd /Z7 /Ob0 /Od /RTC1 /showIncludes /Foaws-cpp-sdk-transfer\CMakeFiles\aws-cpp-sdk-transfer.dir\source\transfer\TransferManager.cpp.obj /Fdaws-cpp-sdk-transfer\CMakeFiles\aws-cpp-sdk-transfer.dir\ /FS -c G:\15725\vcpkg\buildtrees\aws-sdk-cpp\src\1c85d0a8c9-4ee9b543a6.clean\aws-cpp-sdk-transfer\source\transfer\TransferManager.cpp
G:\15725\vcpkg\buildtrees\aws-sdk-cpp\src\1c85d0a8c9-4ee9b543a6.clean\aws-cpp-sdk-transfer\source\transfer\TransferManager.cpp(772): error C2220: warning treated as error - no 'object' file generated
G:\15725\vcpkg\buildtrees\aws-sdk-cpp\src\1c85d0a8c9-4ee9b543a6.clean\aws-cpp-sdk-transfer\source\transfer\TransferManager.cpp(772): warning C4244: 'initializing': conversion from 'const _Ty' to 'size_t', possible loss of data
        with
        [
            _Ty=uint64_t
        ]
G:\15725\vcpkg\buildtrees\aws-sdk-cpp\src\1c85d0a8c9-4ee9b543a6.clean\aws-cpp-sdk-transfer\source\transfer\TransferManager.cpp(777): warning C4244: 'initializing': conversion from 'uint64_t' to 'size_t', possible loss of data
G:\15725\vcpkg\buildtrees\aws-sdk-cpp\src\1c85d0a8c9-4ee9b543a6.clean\aws-cpp-sdk-transfer\source\transfer\TransferManager.cpp(927): warning C4244: 'argument': conversion from 'uint64_t' to 'size_t', possible loss of data
G:\15725\vcpkg\buildtrees\aws-sdk-cpp\src\1c85d0a8c9-4ee9b543a6.clean\aws-cpp-sdk-core\include\aws/core/utils/memory/AWSMemory.h(66): warning C4244: 'argument': conversion from '_Ty' to 'size_t', possible loss of data
        with
        [
            _Ty=uint64_t
        ]
G:\15725\vcpkg\buildtrees\aws-sdk-cpp\src\1c85d0a8c9-4ee9b543a6.clean\aws-cpp-sdk-core\include\aws/core/utils/memory/AWSMemory.h(258): note: see reference to function template instantiation 'T *Aws::New<T,const _Ty&,unsigned __int64>(const char *,const _Ty &,unsigned __int64 &&)' being compiled
        with
        [
            T=Aws::Utils::Stream::PreallocatedStreamBuf,
            _Ty=unsigned char *
        ]
G:\15725\vcpkg\buildtrees\aws-sdk-cpp\src\1c85d0a8c9-4ee9b543a6.clean\aws-cpp-sdk-transfer\source\transfer\TransferManager.cpp(827): note: see reference to function template instantiation 'std::unique_ptr<Aws::Utils::Stream::PreallocatedStreamBuf,Aws::Deleter<Aws::Utils::Stream::PreallocatedStreamBuf>> Aws::MakeUnique<Aws::Utils::Stream::PreallocatedStreamBuf,const RESOURCE_TYPE&,uint64_t>(const char *,const RESOURCE_TYPE &,uint64_t &&)' being compiled
        with
        [
            RESOURCE_TYPE=unsigned char *
        ]

This is not related at all to my changes. The current VCPKG version has this bug: aws/aws-sdk-cpp#1512
My version makes changes to Android only. Do you want me to update to the latest AWS version?

ports/curl/0009_fix_openssl_config.patch Outdated Show resolved Hide resolved
ports/curl/0009_fix_openssl_config.patch Outdated Show resolved Hide resolved
ports/curl/0009_fix_openssl_config.patch Outdated Show resolved Hide resolved
@ahmedyarub ahmedyarub changed the title Fix OpenSSL, curl and AWS SDK for Android Fix zlib, OpenSSL, curl and AWS SDK for Android Apr 14, 2021
Copy link
Contributor

@JackBoosY JackBoosY left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you please merge from master?

Thanks.

versions/o-/openssl.json Outdated Show resolved Hide resolved
@JackBoosY JackBoosY removed the info:reviewed Pull Request changes follow basic guidelines label Apr 15, 2021
Ahmed Yarub Hani Al Nuaimi and others added 2 commits April 14, 2021 23:30
Co-authored-by: Jack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com>
@ahmedyarub
Copy link
Contributor Author

Can you please merge from master?

Thanks.

Done

@JackBoosY
Copy link
Contributor

Ping @ras0219 @ras0219-msft for review again.

@JackBoosY JackBoosY added info:reviewed Pull Request changes follow basic guidelines and removed requires:author-response labels Apr 15, 2021
@ahmedyarub
Copy link
Contributor Author

Something is really wrong with the pipelines. Here it says that the pipelines are still in progress but here https://dev.azure.com/vcpkg/public/_build/results?buildId=52107&view=results all the tests passed successfully hours ago!

@strega-nil
Copy link
Contributor

@ahmedyarub it was an issue with the oauth token we think

@ahmedyarub ahmedyarub changed the title Fix zlib, OpenSSL, curl and AWS SDK for Android [aws-cpp-sdk] [zlib] [openssl] [curl] Fix zlib, OpenSSL, curl and AWS SDK for Android Apr 19, 2021
@strega-nil strega-nil merged commit fe25e8e into microsoft:master Apr 20, 2021
@ahmedyarub ahmedyarub deleted the fix_aws_sdk_android branch April 22, 2021 12:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
category:community-triplet A PR or issue related to community triplets not officially validated by the vcpkg team. category:port-feature The issue is with a library, which is requesting new capabilities that didn’t exist info:reviewed Pull Request changes follow basic guidelines
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants