diff --git a/.gitignore b/.gitignore index bd5c9b7..9d46e4c 100644 --- a/.gitignore +++ b/.gitignore @@ -148,3 +148,8 @@ cython_debug/ # Test files generated tmp*.py + +# dependencies +deps/artifacts/ +deps/aws-lambda-cpp-*/ +deps/curl-*/ diff --git a/deps/curl-7.83.1.tar.gz b/deps/curl-7.83.1.tar.gz index b71926a..305bb4f 100644 Binary files a/deps/curl-7.83.1.tar.gz and b/deps/curl-7.83.1.tar.gz differ diff --git a/deps/patches/libcurl-configure-template.patch b/deps/patches/libcurl-configure-template.patch new file mode 100644 index 0000000..e26be47 --- /dev/null +++ b/deps/patches/libcurl-configure-template.patch @@ -0,0 +1,131 @@ +diff --git a/configure.ac b/configure.ac +index d24daea..64aca7f 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -193,87 +193,96 @@ AS_HELP_STRING([--with-schannel],[enable Windows native SSL/TLS]), + + OPT_SECURETRANSPORT=no + AC_ARG_WITH(secure-transport,dnl +-AS_HELP_STRING([--with-secure-transport],[enable Apple OS native SSL/TLS]), ++AS_HELP_STRING([--with-secure-transport],[enable Apple OS native SSL/TLS]),[ + OPT_SECURETRANSPORT=$withval + test -z "TLSCHOICE" || TLSCHOICE="${TLSCHOICE:+$TLSCHOICE, }Secure-Transport" +-) ++]) + + OPT_AMISSL=no + AC_ARG_WITH(amissl,dnl +-AS_HELP_STRING([--with-amissl],[enable Amiga native SSL/TLS (AmiSSL)]), ++AS_HELP_STRING([--with-amissl],[enable Amiga native SSL/TLS (AmiSSL)]),[ + OPT_AMISSL=$withval +- test -z "TLSCHOICE" || TLSCHOICE="${TLSCHOICE:+$TLSCHOICE, }AmiSSL") ++ test -z "TLSCHOICE" || TLSCHOICE="${TLSCHOICE:+$TLSCHOICE, }AmiSSL" ++]) ++ + + OPT_OPENSSL=no + dnl Default to no CA bundle + ca="no" + AC_ARG_WITH(ssl,dnl + AS_HELP_STRING([--with-ssl=PATH],[old version of --with-openssl]) +-AS_HELP_STRING([--without-ssl], [build without any TLS library]), ++AS_HELP_STRING([--without-ssl], [build without any TLS library]),[ + OPT_SSL=$withval + OPT_OPENSSL=$withval + if test X"$withval" != Xno; then +- test -z "TLSCHOICE" || TLSCHOICE="${TLSCHOICE:+$TLSCHOICE, }OpenSSL") ++ test -z "TLSCHOICE" || TLSCHOICE="${TLSCHOICE:+$TLSCHOICE, }OpenSSL" + fi ++]) + + AC_ARG_WITH(openssl,dnl +-AS_HELP_STRING([--with-openssl=PATH],[Where to look for OpenSSL, PATH points to the SSL installation (default: /usr/local/ssl); when possible, set the PKG_CONFIG_PATH environment variable instead of using this option]), ++AS_HELP_STRING([--with-openssl=PATH],[Where to look for OpenSSL, PATH points to the SSL installation (default: /usr/local/ssl); when possible, set the PKG_CONFIG_PATH environment variable instead of using this option]),[ + OPT_OPENSSL=$withval + if test X"$withval" != Xno; then +- test -z "TLSCHOICE" || TLSCHOICE="${TLSCHOICE:+$TLSCHOICE, }OpenSSL") ++ test -z "TLSCHOICE" || TLSCHOICE="${TLSCHOICE:+$TLSCHOICE, }OpenSSL" + fi ++]) + + OPT_GNUTLS=no + AC_ARG_WITH(gnutls,dnl +-AS_HELP_STRING([--with-gnutls=PATH],[where to look for GnuTLS, PATH points to the installation root]), ++AS_HELP_STRING([--with-gnutls=PATH],[where to look for GnuTLS, PATH points to the installation root]),[ + OPT_GNUTLS=$withval + if test X"$withval" != Xno; then +- test -z "TLSCHOICE" || TLSCHOICE="${TLSCHOICE:+$TLSCHOICE, }GnuTLS") ++ test -z "TLSCHOICE" || TLSCHOICE="${TLSCHOICE:+$TLSCHOICE, }GnuTLS" + fi ++]) + + OPT_MBEDTLS=no + AC_ARG_WITH(mbedtls,dnl +-AS_HELP_STRING([--with-mbedtls=PATH],[where to look for mbedTLS, PATH points to the installation root]), ++AS_HELP_STRING([--with-mbedtls=PATH],[where to look for mbedTLS, PATH points to the installation root]),[ + OPT_MBEDTLS=$withval + if test X"$withval" != Xno; then +- test -z "TLSCHOICE" || TLSCHOICE="${TLSCHOICE:+$TLSCHOICE, }mbedTLS") ++ test -z "TLSCHOICE" || TLSCHOICE="${TLSCHOICE:+$TLSCHOICE, }mbedTLS" + fi ++]) + + OPT_WOLFSSL=no + AC_ARG_WITH(wolfssl,dnl +-AS_HELP_STRING([--with-wolfssl=PATH],[where to look for WolfSSL, PATH points to the installation root (default: system lib default)]), ++AS_HELP_STRING([--with-wolfssl=PATH],[where to look for WolfSSL, PATH points to the installation root (default: system lib default)]),[ + OPT_WOLFSSL=$withval + if test X"$withval" != Xno; then +- test -z "TLSCHOICE" || TLSCHOICE="${TLSCHOICE:+$TLSCHOICE, }wolfSSL") ++ test -z "TLSCHOICE" || TLSCHOICE="${TLSCHOICE:+$TLSCHOICE, }wolfSSL" + fi ++]) + + OPT_BEARSSL=no + AC_ARG_WITH(bearssl,dnl +-AS_HELP_STRING([--with-bearssl=PATH],[where to look for BearSSL, PATH points to the installation root]), ++AS_HELP_STRING([--with-bearssl=PATH],[where to look for BearSSL, PATH points to the installation root]),[ + OPT_BEARSSL=$withval + if test X"$withval" != Xno; then +- test -z "TLSCHOICE" || TLSCHOICE="${TLSCHOICE:+$TLSCHOICE, }BearSSL") ++ test -z "TLSCHOICE" || TLSCHOICE="${TLSCHOICE:+$TLSCHOICE, }BearSSL" + fi ++]) + + OPT_RUSTLS=no + AC_ARG_WITH(rustls,dnl +-AS_HELP_STRING([--with-rustls=PATH],[where to look for rustls, PATH points to the installation root]), ++AS_HELP_STRING([--with-rustls=PATH],[where to look for rustls, PATH points to the installation root]),[ + OPT_RUSTLS=$withval + if test X"$withval" != Xno; then +- test -z "TLSCHOICE" || TLSCHOICE="${TLSCHOICE:+$TLSCHOICE, }rustls") ++ test -z "TLSCHOICE" || TLSCHOICE="${TLSCHOICE:+$TLSCHOICE, }rustls" + fi ++]) + + OPT_NSS_AWARE=no + AC_ARG_WITH(nss-deprecated,dnl +-AS_HELP_STRING([--with-nss-deprecated],[confirm you realize NSS is going away]), ++AS_HELP_STRING([--with-nss-deprecated],[confirm you realize NSS is going away]),[ + if test X"$withval" != Xno; then + OPT_NSS_AWARE=$withval + fi +-) ++]) + + OPT_NSS=no + AC_ARG_WITH(nss,dnl +-AS_HELP_STRING([--with-nss=PATH],[where to look for NSS, PATH points to the installation root]), ++AS_HELP_STRING([--with-nss=PATH],[where to look for NSS, PATH points to the installation root]),[ + OPT_NSS=$withval + if test X"$withval" != Xno; then + +@@ -283,7 +292,7 @@ AS_HELP_STRING([--with-nss=PATH],[where to look for NSS, PATH points to the inst + + test -z "TLSCHOICE" || TLSCHOICE="${TLSCHOICE:+$TLSCHOICE, }NSS" + fi +-) ++]) + + dnl If no TLS choice has been made, check if it was explicitly disabled or + dnl error out to force the user to decide. diff --git a/scripts/update_deps.sh b/scripts/update_deps.sh index 4ec4ec1..0baa3f9 100755 --- a/scripts/update_deps.sh +++ b/scripts/update_deps.sh @@ -1,6 +1,6 @@ #!/bin/bash # Copyright 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved. -set -e +set -x cd deps source versions @@ -8,8 +8,17 @@ source versions # Clean up old files rm -f aws-lambda-cpp-*.tar.gz && rm -f curl-*.tar.gz + +LIBCURL="curl-${CURL_MAJOR_VERSION}.${CURL_MINOR_VERSION}.${CURL_PATCH_VERSION}" + # Grab Curl -wget -c "https://github.com/curl/curl/releases/download/curl-${CURL_MAJOR_VERSION}_${CURL_MINOR_VERSION}_${CURL_PATCH_VERSION}/curl-${CURL_MAJOR_VERSION}.${CURL_MINOR_VERSION}.${CURL_PATCH_VERSION}.tar.gz" +wget -c "https://github.com/curl/curl/releases/download/curl-${CURL_MAJOR_VERSION}_${CURL_MINOR_VERSION}_${CURL_PATCH_VERSION}/$LIBCURL.tar.gz" -O - | tar -xz +( + cd $LIBCURL && \ + patch -p1 < ../patches/libcurl-configure-template.patch +) + +tar -czf $LIBCURL.tar.gz $LIBCURL --no-same-owner && rm -rf $LIBCURL # Grab aws-lambda-cpp wget -c https://github.com/awslabs/aws-lambda-cpp/archive/v$AWS_LAMBDA_CPP_RELEASE.tar.gz -O - | tar -xz @@ -25,5 +34,5 @@ wget -c https://github.com/awslabs/aws-lambda-cpp/archive/v$AWS_LAMBDA_CPP_RELEA ) ## Pack again and remove the folder -tar -czvf aws-lambda-cpp-$AWS_LAMBDA_CPP_RELEASE.tar.gz aws-lambda-cpp-$AWS_LAMBDA_CPP_RELEASE --no-same-owner && \ +tar -czf aws-lambda-cpp-$AWS_LAMBDA_CPP_RELEASE.tar.gz aws-lambda-cpp-$AWS_LAMBDA_CPP_RELEASE --no-same-owner && \ rm -rf aws-lambda-cpp-$AWS_LAMBDA_CPP_RELEASE diff --git a/tests/integration/codebuild/buildspec.os.alpine.yml b/tests/integration/codebuild/buildspec.os.alpine.yml index 563451f..f3c53e1 100644 --- a/tests/integration/codebuild/buildspec.os.alpine.yml +++ b/tests/integration/codebuild/buildspec.os.alpine.yml @@ -15,9 +15,8 @@ batch: env: variables: DISTRO_VERSION: - - "3.17" - - "3.18" - "3.19" + - "3.20" RUNTIME_VERSION: - "3.9" - "3.10"