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

* Fix Android build

* Add versioning support

* Disable building tests for cURL

* Fix patch file

* Fix patch file

* Fix patch file

* Fix versioning

* Fix patch file

* [aws-sdk-cpp] Update patch

* update baseline

* Fix dependencies

* Simplify Android configuration

* Simplify Android configuration

* Simplify Android configuration
Add alternative Git CMake script

* Bump port version

* Bump version files

* Remove redundant file

* Bump port version

* Fix version files

* Do not build curl, zlib and OpenSSL

* Typo de pkgconfig script

* Fix cURL build for Android

* Add required flags

* Revert macro change

* Fix curl build for other platforms

* Fix curl build for other platforms

* [vcpkg baseline][gsoap] Update to 2.8.111

* Update versions

* [ktx/otl] Update download hash

* update version record

* Fix curl build for other platforms

* Update ports/aws-sdk-cpp/portfile.cmake

Co-authored-by: Jack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com>

* Update ports/aws-sdk-cpp/portfile.cmake

Co-authored-by: Jack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com>

* Remove FingGit

* Fix configuration step

* Bump cURL port version

* Bump cURL port version

* Bump AWS SDK C++ version

* Bump AWS SDK C++ version

* Bump AWS SDK C++ version

* Bump AWS SDK C++ version

* Update ports/curl/CONTROL

* Update ports/curl/portfile.cmake

* update baseline record

* Fix Git

* update version record

* Typo

* Fix cross-platform builds of OpenSSL on MinGW/Windows

* Update version

* Fix version

* update doc

* Update ports/aws-sdk-cpp/portfile.cmake

Co-authored-by: Robert Schumacher <roschuma@microsoft.com>

* Update ports/aws-sdk-cpp/portfile.cmake

Co-authored-by: Robert Schumacher <roschuma@microsoft.com>

* Add debug libraries to curl for Android
Simplify OpenSSL patch for curl
Update OpenSSL's port version

* Update aws-sdk-cpp, curl, and OpenSSL versions

* Fix libssh after latest update

* Update libssh version

* Update libssh version

* Update ports/libssh/portfile.cmake

Co-authored-by: nicole mazzuca <mazzucan@outlook.com>

* Update ports/curl/portfile.cmake

Co-authored-by: nicole mazzuca <mazzucan@outlook.com>

* Update ports/libssh/portfile.cmake

* Apply suggestions from code review

* Use correct variables for OpenSSL libraries when building curl for Android
Fix zlib building for Android
Remove redundant patch comments

* Bump zlib's port version

* Update zlib, libssh, and curl versions

* [vcpkg baseline][popsift] Fix vcpkg_find_cuda.cmake path

* update version record

* Update versions/o-/openssl.json

Co-authored-by: Jack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com>

Co-authored-by: Ahmed Yarub Hani Al Nuaimi <ahmed.alnuaimi@zwift.com>
Co-authored-by: JackBoosY <yuzaiyang@beyondsoft.com>
Co-authored-by: Nicole Mazzuca <mazzucan@outlook.com>
Co-authored-by: NancyLi1013 <lirui09@beyondsoft.com>
Co-authored-by: Jack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com>
Co-authored-by: Robert Schumacher <roschuma@microsoft.com>
This commit is contained in:
Ahmed Yarub Hani Al Nuaimi 2021-04-19 21:08:51 -03:00 committed by GitHub
parent f9bd4c8740
commit fe25e8ede8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
25 changed files with 172 additions and 40 deletions

View File

@ -2,7 +2,7 @@
The latest version of this document lives in the [vcpkg repo](https://github.com/Microsoft/vcpkg/blob/master/docs/maintainers/vcpkg_common_definitions.md). The latest version of this document lives in the [vcpkg repo](https://github.com/Microsoft/vcpkg/blob/master/docs/maintainers/vcpkg_common_definitions.md).
This file defines the following variabls which are commonly needed or used in portfiles: This file defines the following variables which are commonly needed or used in portfiles:
```cmake ```cmake
VCPKG_TARGET_IS_<target> with <target> being one of the following: WINDOWS, UWP, LINUX, OSX, ANDROID, FREEBSD, OPENBSD. only defined if <target> VCPKG_TARGET_IS_<target> with <target> being one of the following: WINDOWS, UWP, LINUX, OSX, ANDROID, FREEBSD, OPENBSD. only defined if <target>

View File

@ -2,7 +2,7 @@
The latest version of this document lives in the [vcpkg repo](https://github.com/Microsoft/vcpkg/blob/master/docs/maintainers/vcpkg_fixup_pkgconfig.md). The latest version of this document lives in the [vcpkg repo](https://github.com/Microsoft/vcpkg/blob/master/docs/maintainers/vcpkg_fixup_pkgconfig.md).
Fix common paths in *.pc files and make everything relativ to $(prefix) Fix common paths in *.pc files and make everything relative to $(prefix)
## Usage ## Usage
```cmake ```cmake

View File

@ -17,8 +17,23 @@ set(BUILD_ONLY core)
include(${CMAKE_CURRENT_LIST_DIR}/compute_build_only.cmake) include(${CMAKE_CURRENT_LIST_DIR}/compute_build_only.cmake)
set(EXTRA_ARGS)
if(VCPKG_TARGET_IS_OSX OR VCPKG_TARGET_IS_IOS) if(VCPKG_TARGET_IS_OSX OR VCPKG_TARGET_IS_IOS)
set(rpath "@loader_path") set(rpath "@loader_path")
elseif (VCPKG_TARGET_IS_ANDROID)
set(EXTRA_ARGS "-DTARGET_ARCH=ANDROID"
"-DGIT_EXECUTABLE=--invalid-git-executable--"
"-DGIT_FOUND=TRUE"
"-DNDK_DIR=$ENV{ANDROID_NDK_HOME}"
"-DANDROID_BUILD_ZLIB=FALSE"
"-DANDROID_BUILD_CURL=FALSE"
"-DANDROID_BUILD_OPENSSL=FALSE"
"-DENABLE_HW_OPTIMIZATION=OFF"
"-DCURL_HAS_H2_EXITCODE=0"
"-DCURL_HAS_H2_EXITCODE__TRYRUN_OUTPUT=\"\""
"-DCURL_HAS_TLS_PROXY_EXITCODE=0"
"-DCURL_HAS_TLS_PROXY_EXITCODE__TRYRUN_OUTPUT=\"\""
)
else() else()
set(rpath "\$ORIGIN") set(rpath "\$ORIGIN")
endif() endif()
@ -27,6 +42,7 @@ vcpkg_configure_cmake(
DISABLE_PARALLEL_CONFIGURE DISABLE_PARALLEL_CONFIGURE
PREFER_NINJA PREFER_NINJA
OPTIONS OPTIONS
${EXTRA_ARGS}
-DENABLE_UNITY_BUILD=ON -DENABLE_UNITY_BUILD=ON
-DENABLE_TESTING=OFF -DENABLE_TESTING=OFF
-DFORCE_SHARED_CRT=${FORCE_SHARED_CRT} -DFORCE_SHARED_CRT=${FORCE_SHARED_CRT}

View File

@ -1,7 +1,7 @@
{ {
"name": "aws-sdk-cpp", "name": "aws-sdk-cpp",
"version": "1.8.126", "version": "1.8.126",
"port-version": 7, "port-version": 8,
"description": "AWS SDK for C++", "description": "AWS SDK for C++",
"homepage": "https://github.com/aws/aws-sdk-cpp", "homepage": "https://github.com/aws/aws-sdk-cpp",
"dependencies": [ "dependencies": [

View File

@ -1,7 +1,7 @@
{ {
"name": "aws-sdk-cpp", "name": "aws-sdk-cpp",
"version": "1.8.126", "version": "1.8.126",
"port-version": 7, "port-version": 8,
"description": "AWS SDK for C++", "description": "AWS SDK for C++",
"homepage": "https://github.com/aws/aws-sdk-cpp", "homepage": "https://github.com/aws/aws-sdk-cpp",
"dependencies": [ "dependencies": [

View File

@ -1,12 +1,27 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt diff --git a/CMakeLists.txt b/CMakeLists.txt
index 5a13333..5a7ece0 100644 --- a/CMakeLists.txt (revision e052859759b34d0e05ce0f17244873e5cd7b457b)
--- a/CMakeLists.txt +++ b/CMakeLists.txt (date 1617452756163)
+++ b/CMakeLists.txt @@ -383,14 +383,21 @@
@@ -361,6 +361,7 @@ if(CMAKE_USE_SECTRANSP) endif()
list(APPEND CURL_LIBS "${COREFOUNDATION_FRAMEWORK}" "${SECURITY_FRAMEWORK}")
endif() if(CMAKE_USE_OPENSSL)
- find_package(OpenSSL REQUIRED)
+set(USE_OPENSSL OFF) + if(ANDROID)
if(CMAKE_USE_OPENSSL) + message(WARNING "Setting paths manually (instead of using pkg-config) since this is an android build" )
find_package(OpenSSL REQUIRED) +
set(SSL_ENABLED ON) + set(OPENSSL_LIBRARIES ${OPENSSL_LIBRARY} ${CRYPT_LIBRARY})
+ include_directories("${OPENSSL_INCLUDE}")
+ else()
+ find_package(OpenSSL REQUIRED)
+ endif()
set(SSL_ENABLED ON)
set(USE_OPENSSL ON)
# Depend on OpenSSL via imported targets if supported by the running
# version of CMake. This allows our dependents to get our dependencies
# transitively.
- if(NOT CMAKE_VERSION VERSION_LESS 3.4)
+ if(NOT CMAKE_VERSION VERSION_LESS 3.4 AND NOT ANDROID)
list(APPEND CURL_LIBS OpenSSL::SSL OpenSSL::Crypto)
else()
list(APPEND CURL_LIBS ${OPENSSL_LIBRARIES})

View File

@ -1,5 +1,5 @@
Source: curl Source: curl
Port-Version: 3 Port-Version: 4
Version: 7.74.0 Version: 7.74.0
Build-Depends: zlib Build-Depends: zlib
Homepage: https://github.com/curl/curl Homepage: https://github.com/curl/curl
@ -56,4 +56,4 @@ Description: brotli support (brotli)
Feature: idn2 Feature: idn2
Build-Depends: libidn2 Build-Depends: libidn2
Description: idn2 support (libidn2) Description: idn2 support (libidn2)

View File

@ -0,0 +1,16 @@
# Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
# SPDX-License-Identifier: Apache-2.0.
#
SET( HAVE_GLIBC_STRERROR_R 1 CACHE STRING "Result from TRY_RUN" FORCE)
SET( HAVE_GLIBC_STRERROR_R__TRYRUN_OUTPUT "" CACHE STRING "Output from TRY_RUN" FORCE)
SET( HAVE_POSIX_STRERROR_R 0 CACHE STRING "Result from TRY_RUN" FORCE)
SET( HAVE_POSIX_STRERROR_R__TRYRUN_OUTPUT "" CACHE STRING "Output from TRY_RUN" FORCE)
SET( HAVE_POLL_FINE_EXITCODE 0 CACHE STRING "Result from TRY_RUN" FORCE )
SET( HAVE_POLL_FINE_EXITCODE__TRYRUN_OUTPUT "" CACHE STRING "Output from TRY_RUN" FORCE)
SET( CURL_HAS_H2_EXITCODE 0 CACHE STRING "Result from TRY_RUN" FORCE )
SET( CURL_HAS_H2_EXITCODE__TRYRUN_OUTPUT "" CACHE STRING "Output from TRY_RUN" FORCE)
SET( CURL_HAS_TLS_PROXY_EXITCODE 0 CACHE STRING "Result from TRY_RUN" FORCE )
SET( CURL_HAS_TLS_PROXY_EXITCODE__TRYRUN_OUTPUT "" CACHE STRING "Output from TRY_RUN" FORCE)
SET( OPENSSL_CRYPTO_LIBRARY crypto CACHE STRING "Set crypto" FORCE )
SET( OPENSSL_SSL_LIBRARY ssl CACHE STRING "Set ssl" FORCE )

View File

@ -43,7 +43,7 @@ vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
schannel CMAKE_USE_SCHANNEL schannel CMAKE_USE_SCHANNEL
sectransp CMAKE_USE_SECTRANSP sectransp CMAKE_USE_SECTRANSP
idn2 CMAKE_USE_IDN2 idn2 CMAKE_USE_IDN2
INVERTED_FEATURES INVERTED_FEATURES
non-http HTTP_ONLY non-http HTTP_ONLY
) )
@ -64,11 +64,29 @@ if(VCPKG_TARGET_IS_UWP)
) )
endif() endif()
if(VCPKG_TARGET_IS_ANDROID)
set(ADDITIONAL_SCRIPTS -C "${CMAKE_CURRENT_LIST_DIR}/CurlAndroidCrossCompile.cmake")
set(EXTRA_ARGS -DOPENSSL_INCLUDE="${CURRENT_INSTALLED_DIR}/include")
set(EXTRA_ARGS_DEBUG
-DOPENSSL_LIBRARY="${CURRENT_INSTALLED_DIR}/debug/lib/libssl.so"
-DCRYPT_LIBRARY="${CURRENT_INSTALLED_DIR}/debug/lib/libcrypto.so"
)
set(EXTRA_ARGS_RELEASE
-DOPENSSL_LIBRARY="${CURRENT_INSTALLED_DIR}/lib/libssl.so"
-DCRYPT_LIBRARY="${CURRENT_INSTALLED_DIR}/lib/libcrypto.so"
)
endif()
vcpkg_configure_cmake( vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH} SOURCE_PATH ${SOURCE_PATH}
PREFER_NINJA PREFER_NINJA
OPTIONS ${FEATURE_OPTIONS} OPTIONS ${FEATURE_OPTIONS}
${UWP_OPTIONS} ${UWP_OPTIONS}
${ADDITIONAL_SCRIPTS}
${EXTRA_ARGS}
${SECTRANSP_OPTIONS} ${SECTRANSP_OPTIONS}
-DBUILD_TESTING=OFF -DBUILD_TESTING=OFF
-DENABLE_MANUAL=OFF -DENABLE_MANUAL=OFF
@ -76,6 +94,10 @@ vcpkg_configure_cmake(
-DCMAKE_DISABLE_FIND_PACKAGE_Perl=ON -DCMAKE_DISABLE_FIND_PACKAGE_Perl=ON
-DENABLE_DEBUG=ON -DENABLE_DEBUG=ON
-DCURL_CA_FALLBACK=ON -DCURL_CA_FALLBACK=ON
OPTIONS_DEBUG
${EXTRA_ARGS_DEBUG}
OPTIONS_RELEASE
${EXTRA_ARGS_RELEASE}
) )
vcpkg_install_cmake() vcpkg_install_cmake()
@ -127,14 +149,14 @@ if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug")
vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/libcurl.pc "${CURRENT_INSTALLED_DIR}/debug/lib/libssh2.lib" "-lssh2") vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/libcurl.pc "${CURRENT_INSTALLED_DIR}/debug/lib/libssh2.lib" "-lssh2")
vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/libcurl.pc "${CURRENT_INSTALLED_DIR}/debug/lib/cares.lib" "-lcares") vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/libcurl.pc "${CURRENT_INSTALLED_DIR}/debug/lib/cares.lib" "-lcares")
vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/libcurl.pc "${CURRENT_INSTALLED_DIR}/debug/lib/brotlicommon.lib" "-lbrotlicommon") vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/libcurl.pc "${CURRENT_INSTALLED_DIR}/debug/lib/brotlicommon.lib" "-lbrotlicommon")
vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/libcurl.pc "${CURRENT_INSTALLED_DIR}/debug/lib/brotlidec.lib" "-lbrotlidec") vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/libcurl.pc "${CURRENT_INSTALLED_DIR}/debug/lib/brotlidec.lib" "-lbrotlidec")
vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/libcurl.pc "${CURRENT_INSTALLED_DIR}/debug/lib/pthreadVC3d.lib" "-lpthreadVC3d") vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/libcurl.pc "${CURRENT_INSTALLED_DIR}/debug/lib/pthreadVC3d.lib" "-lpthreadVC3d")
vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/libcurl.pc " ${CURRENT_INSTALLED_DIR}/lib/pthreadVC3.lib" "") vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/libcurl.pc " ${CURRENT_INSTALLED_DIR}/lib/pthreadVC3.lib" "")
vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/libcurl.pc " -loptimized" "") vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/libcurl.pc " -loptimized" "")
vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/libcurl.pc " -ldebug" "") vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/libcurl.pc " -ldebug" "")
elseif(VCPKG_TARGET_IS_LINUX) elseif(VCPKG_TARGET_IS_LINUX)
vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/libcurl.pc "-lcurl" "-lcurl-d") vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/libcurl.pc "-lcurl" "-lcurl-d")
vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/libcurl.pc "${CURRENT_INSTALLED_DIR}/debug/lib/libssl.a" "-lssl") vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/libcurl.pc "${CURRENT_INSTALLED_DIR}/debug/lib/libssl.a" "-lssl")
vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/libcurl.pc "${CURRENT_INSTALLED_DIR}/debug/lib/libcrypto.a" "-lcrypto") vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/libcurl.pc "${CURRENT_INSTALLED_DIR}/debug/lib/libcrypto.a" "-lcrypto")
vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/libcurl.pc "${CURRENT_INSTALLED_DIR}/debug/lib/libmbedtls.a" "-lmbedtls") vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/libcurl.pc "${CURRENT_INSTALLED_DIR}/debug/lib/libmbedtls.a" "-lmbedtls")
@ -142,7 +164,7 @@ if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug")
vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/libcurl.pc "${CURRENT_INSTALLED_DIR}/debug/lib/libmbedcrypto.a" "-lmbedcrypto") vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/libcurl.pc "${CURRENT_INSTALLED_DIR}/debug/lib/libmbedcrypto.a" "-lmbedcrypto")
vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/libcurl.pc "${CURRENT_INSTALLED_DIR}/debug/lib/libnghttp2.a" "-lnghttp2") vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/libcurl.pc "${CURRENT_INSTALLED_DIR}/debug/lib/libnghttp2.a" "-lnghttp2")
vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/libcurl.pc "${CURRENT_INSTALLED_DIR}/debug/lib/libssh2.a" "-lssh2") vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/libcurl.pc "${CURRENT_INSTALLED_DIR}/debug/lib/libssh2.a" "-lssh2")
vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/libcurl.pc "${CURRENT_INSTALLED_DIR}/debug/lib/libcares.a" "-lcares") vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/libcurl.pc "${CURRENT_INSTALLED_DIR}/debug/lib/libcares.a" "-lcares")
vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/libcurl.pc "${CURRENT_INSTALLED_DIR}/debug/lib/libz.a" "-lz") vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/libcurl.pc "${CURRENT_INSTALLED_DIR}/debug/lib/libz.a" "-lz")
endif() endif()
file(COPY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/libcurl.pc DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib/pkgconfig) file(COPY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/libcurl.pc DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib/pkgconfig)
@ -162,11 +184,11 @@ if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release")
vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/libcurl.pc "${CURRENT_INSTALLED_DIR}/lib/libssh2.lib" "-lssh2") vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/libcurl.pc "${CURRENT_INSTALLED_DIR}/lib/libssh2.lib" "-lssh2")
vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/libcurl.pc "${CURRENT_INSTALLED_DIR}/lib/cares.lib" "-lcares") vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/libcurl.pc "${CURRENT_INSTALLED_DIR}/lib/cares.lib" "-lcares")
vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/libcurl.pc "${CURRENT_INSTALLED_DIR}/lib/brotlicommon.lib" "-lbrotlicommon") vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/libcurl.pc "${CURRENT_INSTALLED_DIR}/lib/brotlicommon.lib" "-lbrotlicommon")
vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/libcurl.pc "${CURRENT_INSTALLED_DIR}/lib/brotlidec.lib" "-lbrotlidec") vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/libcurl.pc "${CURRENT_INSTALLED_DIR}/lib/brotlidec.lib" "-lbrotlidec")
vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/libcurl.pc "${CURRENT_INSTALLED_DIR}/lib/pthreadVC3.lib" "-lpthreadVC3") vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/libcurl.pc "${CURRENT_INSTALLED_DIR}/lib/pthreadVC3.lib" "-lpthreadVC3")
vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/libcurl.pc " ${CURRENT_INSTALLED_DIR}/debug/lib/pthreadVC3d.lib" "") vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/libcurl.pc " ${CURRENT_INSTALLED_DIR}/debug/lib/pthreadVC3d.lib" "")
vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/libcurl.pc " -loptimized" "") vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/libcurl.pc " -loptimized" "")
vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/libcurl.pc " -ldebug" "") vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/libcurl.pc " -ldebug" "")
elseif(VCPKG_TARGET_IS_LINUX) elseif(VCPKG_TARGET_IS_LINUX)
#vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/libcurl.pc "-lcurl" "-lcurl") #vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/libcurl.pc "-lcurl" "-lcurl")
vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/libcurl.pc "${CURRENT_INSTALLED_DIR}/lib/libssl.a" "-lssl") vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/libcurl.pc "${CURRENT_INSTALLED_DIR}/lib/libssl.a" "-lssl")
@ -176,15 +198,17 @@ if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release")
vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/libcurl.pc "${CURRENT_INSTALLED_DIR}/lib/libmbedcrypto.a" "-lmbedcrypto") vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/libcurl.pc "${CURRENT_INSTALLED_DIR}/lib/libmbedcrypto.a" "-lmbedcrypto")
vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/libcurl.pc "${CURRENT_INSTALLED_DIR}/lib/libnghttp2.a" "-lnghttp2") vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/libcurl.pc "${CURRENT_INSTALLED_DIR}/lib/libnghttp2.a" "-lnghttp2")
vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/libcurl.pc "${CURRENT_INSTALLED_DIR}/lib/libssh2.a" "-lssh2") vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/libcurl.pc "${CURRENT_INSTALLED_DIR}/lib/libssh2.a" "-lssh2")
vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/libcurl.pc "${CURRENT_INSTALLED_DIR}/lib/libcares.a" "-lcares") vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/libcurl.pc "${CURRENT_INSTALLED_DIR}/lib/libcares.a" "-lcares")
vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/libcurl.pc "${CURRENT_INSTALLED_DIR}/lib/libz.a" "-lz") vcpkg_replace_string(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/libcurl.pc "${CURRENT_INSTALLED_DIR}/lib/libz.a" "-lz")
endif() endif()
file(COPY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/libcurl.pc DESTINATION ${CURRENT_PACKAGES_DIR}/lib/pkgconfig) file(COPY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/libcurl.pc DESTINATION ${CURRENT_PACKAGES_DIR}/lib/pkgconfig)
endif() endif()
if(VCPKG_TARGET_IS_WINDOWS) if(VCPKG_TARGET_IS_WINDOWS)
vcpkg_fixup_pkgconfig() vcpkg_fixup_pkgconfig()
elseif(VCPKG_TARGET_IS_LINUX) elseif(VCPKG_TARGET_IS_LINUX)
vcpkg_fixup_pkgconfig(SYSTEM_LIBRARIES pthread dl c) vcpkg_fixup_pkgconfig(SYSTEM_LIBRARIES pthread dl c)
elseif(VCPKG_TARGET_IS_ANDROID)
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/bin" "${CURRENT_PACKAGES_DIR}/debug/bin")
endif() endif()
file(INSTALL ${CURRENT_PORT_DIR}/vcpkg-cmake-wrapper.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT}) file(INSTALL ${CURRENT_PORT_DIR}/vcpkg-cmake-wrapper.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT})

View File

@ -0,0 +1,12 @@
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
--- a/src/CMakeLists.txt (revision 0cceefd49d4d397eb21bd36e314ac87739da51ff)
+++ b/src/CMakeLists.txt (date 1617870624653)
@@ -361,7 +361,7 @@
set_target_properties(ssh PROPERTIES COMPILE_FLAGS "-fvisibility=hidden")
endif (WITH_VISIBILITY_HIDDEN)
-if (MINGW)
+if (MINGW AND NOT ANDROID)
set_target_properties(ssh PROPERTIES LINK_FLAGS "-Wl,--enable-stdcall-fixup")
set_target_properties(ssh PROPERTIES COMPILE_FLAGS "-D_POSIX_SOURCE")
endif ()

View File

@ -1,6 +1,6 @@
Source: libssh Source: libssh
Version: 0.9.5 Version: 0.9.5
Port-Version: 2 Port-Version: 3
Homepage: https://www.libssh.org/ Homepage: https://www.libssh.org/
Build-Depends: libssh[core,mbedtls] (android) Build-Depends: libssh[core,mbedtls] (android)
Description: libssh is a multiplatform C library implementing the SSHv2 protocol on client and server side Description: libssh is a multiplatform C library implementing the SSHv2 protocol on client and server side

View File

@ -7,6 +7,7 @@ vcpkg_from_git(
SHA512 64e692a0bfa7f73585ea7b7b8b1d4c9a7f9be59565bfd4de32ca8cd9db121f87e7ad51f5c80269fbd99545af34dcf1894374ed8a6d6c1ac5f8601c026572ac18 SHA512 64e692a0bfa7f73585ea7b7b8b1d4c9a7f9be59565bfd4de32ca8cd9db121f87e7ad51f5c80269fbd99545af34dcf1894374ed8a6d6c1ac5f8601c026572ac18
PATCHES PATCHES
0001-export-pkgconfig-file.patch 0001-export-pkgconfig-file.patch
0002-mingw_for_Android.patch
) )
vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS

View File

@ -1,4 +1,5 @@
Source: openssl Source: openssl
Version: 1.1.1j Version: 1.1.1j
Port-Version: 1
Homepage: https://www.openssl.org Homepage: https://www.openssl.org
Description: OpenSSL is an open source project that provides a robust, commercial-grade, and full-featured toolkit for the Transport Layer Security (TLS) and Secure Sockets Layer (SSL) protocols. It is also a general-purpose cryptography library. Description: OpenSSL is an open source project that provides a robust, commercial-grade, and full-featured toolkit for the Transport Layer Security (TLS) and Secure Sockets Layer (SSL) protocols. It is also a general-purpose cryptography library.

View File

@ -106,7 +106,7 @@ if(BUILD_SHARED_LIBS)
if(CMAKE_SYSTEM_NAME STREQUAL "Darwin" OR CMAKE_SYSTEM_NAME STREQUAL "iOS") if(CMAKE_SYSTEM_NAME STREQUAL "Darwin" OR CMAKE_SYSTEM_NAME STREQUAL "iOS")
set(LIB_EXT dylib) set(LIB_EXT dylib)
set(LIB_EXTS ${SHLIB_VERSION}.${LIB_EXT}) set(LIB_EXTS ${SHLIB_VERSION}.${LIB_EXT})
elseif(MINGW) elseif(VCPKG_TARGET_IS_MINGW)
string(REPLACE "." "_" SHLIB_VERSION "${SHLIB_VERSION}") string(REPLACE "." "_" SHLIB_VERSION "${SHLIB_VERSION}")
set(BIN_EXT dll) set(BIN_EXT dll)
set(LIB_EXT dll.a) set(LIB_EXT dll.a)

View File

@ -0,0 +1,21 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
--- a/CMakeLists.txt (date 1618364429263)
+++ b/CMakeLists.txt (date 1618364429263)
@@ -170,7 +170,7 @@
string(REGEX REPLACE ".*#define[ \t]+ZLIB_VERSION[ \t]+\"([-0-9A-Za-z.]+)\".*"
"\\1" ZLIB_FULL_VERSION ${_zlib_h_contents})
-if(MINGW)
+if(MINGW AND NOT ANDROID)
# This gets us DLL resource information when compiling on MinGW.
if(NOT CMAKE_RC_COMPILER)
set(CMAKE_RC_COMPILER windres.exe)
@@ -186,7 +186,7 @@
if(BUILD_SHARED_LIBS)
set(ZLIB_DLL_SRCS ${CMAKE_CURRENT_BINARY_DIR}/zlib1rc.obj)
endif()
-endif(MINGW)
+endif(MINGW AND NOT ANDROID)
add_library(zlib ${ZLIB_SRCS} ${ZLIB_ASMS} ${ZLIB_DLL_SRCS} ${ZLIB_PUBLIC_HDRS} ${ZLIB_PRIVATE_HDRS})
set_target_properties(zlib PROPERTIES DEFINE_SYMBOL ZLIB_DLL)

View File

@ -1,5 +1,5 @@
Source: zlib Source: zlib
Version: 1.2.11 Version: 1.2.11
Port-Version: 9 Port-Version: 10
Homepage: https://www.zlib.net/ Homepage: https://www.zlib.net/
Description: A compression library Description: A compression library

View File

@ -14,6 +14,7 @@ vcpkg_extract_source_archive_ex(
"cmake_dont_build_more_than_needed.patch" "cmake_dont_build_more_than_needed.patch"
"0001-Prevent-invalid-inclusions-when-HAVE_-is-set-to-0.patch" "0001-Prevent-invalid-inclusions-when-HAVE_-is-set-to-0.patch"
"add_debug_postfix_on_mingw.patch" "add_debug_postfix_on_mingw.patch"
"0002-android-build-mingw.patch"
) )
# This is generated during the cmake build # This is generated during the cmake build

View File

@ -1,7 +1,7 @@
#[===[.md: #[===[.md:
# vcpkg_common_definitions # vcpkg_common_definitions
This file defines the following variabls which are commonly needed or used in portfiles: This file defines the following variables which are commonly needed or used in portfiles:
```cmake ```cmake
VCPKG_TARGET_IS_<target> with <target> being one of the following: WINDOWS, UWP, LINUX, OSX, ANDROID, FREEBSD, OPENBSD. only defined if <target> VCPKG_TARGET_IS_<target> with <target> being one of the following: WINDOWS, UWP, LINUX, OSX, ANDROID, FREEBSD, OPENBSD. only defined if <target>

View File

@ -1,7 +1,7 @@
#[===[.md: #[===[.md:
# vcpkg_fixup_pkgconfig # vcpkg_fixup_pkgconfig
Fix common paths in *.pc files and make everything relativ to $(prefix) Fix common paths in *.pc files and make everything relative to $(prefix)
## Usage ## Usage
```cmake ```cmake

View File

@ -1,5 +1,10 @@
{ {
"versions": [ "versions": [
{
"git-tree": "e1cf5cdb2c16125d532b8281d6901839f11a25f5",
"version": "1.8.126",
"port-version": 8
},
{ {
"git-tree": "f1baa5b35e752a0576d9d81d70d15b2c44a467db", "git-tree": "f1baa5b35e752a0576d9d81d70d15b2c44a467db",
"version": "1.8.126", "version": "1.8.126",

View File

@ -234,7 +234,7 @@
}, },
"aws-sdk-cpp": { "aws-sdk-cpp": {
"baseline": "1.8.126", "baseline": "1.8.126",
"port-version": 7 "port-version": 8
}, },
"azmq": { "azmq": {
"baseline": "2020-03-03", "baseline": "2020-03-03",
@ -1534,7 +1534,7 @@
}, },
"curl": { "curl": {
"baseline": "7.74.0", "baseline": "7.74.0",
"port-version": 3 "port-version": 4
}, },
"curlpp": { "curlpp": {
"baseline": "2018-06-15-3", "baseline": "2018-06-15-3",
@ -3502,7 +3502,7 @@
}, },
"libssh": { "libssh": {
"baseline": "0.9.5", "baseline": "0.9.5",
"port-version": 2 "port-version": 3
}, },
"libssh2": { "libssh2": {
"baseline": "1.9.0", "baseline": "1.9.0",
@ -4514,7 +4514,7 @@
}, },
"openssl": { "openssl": {
"baseline": "1.1.1j", "baseline": "1.1.1j",
"port-version": 0 "port-version": 1
}, },
"openssl-unix": { "openssl-unix": {
"baseline": "1.1.1h", "baseline": "1.1.1h",
@ -6590,7 +6590,7 @@
}, },
"zlib": { "zlib": {
"baseline": "1.2.11", "baseline": "1.2.11",
"port-version": 9 "port-version": 10
}, },
"zookeeper": { "zookeeper": {
"baseline": "3.5.5-1", "baseline": "3.5.5-1",

View File

@ -1,5 +1,10 @@
{ {
"versions": [ "versions": [
{
"git-tree": "883db9cb07e4982bf1bf327d5b3fa5a88b6304d8",
"version-string": "7.74.0",
"port-version": 4
},
{ {
"git-tree": "1f69a2a2ce714cb05b0c419b07c4da22ca0f40a6", "git-tree": "1f69a2a2ce714cb05b0c419b07c4da22ca0f40a6",
"version-string": "7.74.0", "version-string": "7.74.0",

View File

@ -1,5 +1,10 @@
{ {
"versions": [ "versions": [
{
"git-tree": "7436981a351a747649d03c4a27a06dc0bc3a0d16",
"version-string": "0.9.5",
"port-version": 3
},
{ {
"git-tree": "a9b49412296a9eec38c564afa33555a92898a11f", "git-tree": "a9b49412296a9eec38c564afa33555a92898a11f",
"version-string": "0.9.5", "version-string": "0.9.5",

View File

@ -1,5 +1,10 @@
{ {
"versions": [ "versions": [
{
"git-tree": "2695b5d292f012836d962b22293d4dc081f75bff",
"version-string": "1.1.1j",
"port-version": 1
},
{ {
"git-tree": "009a7ee95741b939859c77b8e1ddd6c146ffe54e", "git-tree": "009a7ee95741b939859c77b8e1ddd6c146ffe54e",
"version-string": "1.1.1j", "version-string": "1.1.1j",

View File

@ -1,5 +1,10 @@
{ {
"versions": [ "versions": [
{
"git-tree": "53a4615c8bb9b98a3864b834a6bbe51cc6c849ef",
"version-string": "1.2.11",
"port-version": 10
},
{ {
"git-tree": "827111046e37c98153d9d82bb6fa4183b6d728e4", "git-tree": "827111046e37c98153d9d82bb6fa4183b6d728e4",
"version-string": "1.2.11", "version-string": "1.2.11",