[aws-sdk-cpp] [openssl] Fix iOS build#17338
Conversation
Don't set compiler when compiling for iOS
|
I think you should wait for my PR #17341 merge. |
…sdk_ios � Conflicts: � ports/aws-sdk-cpp/portfile.cmake � versions/a-/aws-sdk-cpp.json � versions/o-/openssl.json
ras0219-msft
left a comment
There was a problem hiding this comment.
Thanks for the PR!
Generally, this smells like we simply aren't correctly propagating flags to the build -- we're missing some flags from the big list on lines 50-77 or so.
This file comes from a time before we had https://github.com/microsoft/vcpkg/blob/master/scripts/cmake/vcpkg_internal_get_cmake_vars.cmake, which is the new way of approaching this problem. See https://github.com/microsoft/vcpkg/blob/master/scripts/get_cmake_vars/CMakeLists.txt for the "modern" version.
I'm not opposed to this stop-gap for now as long as it's better integrated with the existing behavior, but the long term goal will be to move to vcpkg_internal_get_cmake_vars().
…sdk_ios � Conflicts: � versions/o-/openssl.json
Appreciate the feedback @ras0219-msft . Please give me a couple of days to redo this PR and the Emscripten/WASM32. I'll make the suggested modernization and test on Windows, Ubuntu 20.04 (WSL), MacOS Big Sur, latest Android NDK, iOS and Emscripten SDK on WSL. |
|
@ahmedyarub could you rebase onto latest? |
…sdk_ios � Conflicts: � ports/openssl/unix/CMakeLists.txt � versions/o-/openssl.json
Please hold on merging I need to make more tests since the rebase... |
|
OK tested both on iOS and Emscripten on Ubuntu. Fixed a couple of bugs and not it should be good to go. |
…sdk_ios � Conflicts: � ports/openssl/unix/CMakeLists.txt � versions/o-/openssl.json
|
Thanks @ahmedyarub :) |
Don't pass the the compiler to OpenSSL when building for iOS. That would end generating a MacOS library which would cause linking errors when the libraries are used. The OpenSSL configuration scripts know how to detect the target OS and compile using the correct command, example:
xcrun -sdk iphonesimulator cc. Note that this change should fix building for all iOS targets, including both simulators and actual devices.Add try_compile() parameters required to test the features of curl when cross-compiling AWS SDK for C++.
What does your PR fix?
Fixes building OpenSSL and AWS SDK for C++ for iOS.
Which triplets are supported/not supported? Have you updated the CI baseline?
All iOS triplets
Does your PR follow the maintainer guide?
Yes
If you have added/updated a port: Have you run
./vcpkg x-add-version --alland committed the result?Yes
If you are still working on the PR, open it as a Draft: https://github.blog/2019-02-14-introducing-draft-pull-requests/