unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#51084] [PATCH 0/12] gnu: aws-sdk-cpp: Update to 1.9.92.
@ 2021-10-07 14:09 Greg Hogan
  2021-10-15 22:05 ` bug#51084: " Ludovic Courtès
  0 siblings, 1 reply; 3+ messages in thread
From: Greg Hogan @ 2021-10-07 14:09 UTC (permalink / raw)
  To: 51084


[-- Attachment #1.1: Type: text/plain, Size: 311 bytes --]

The aws-sdk-cpp package no longer builds against the latest versions of its
aws library dependencies. These patches update aws-sdk-cpp to version 1.9
and sets the AWS library versions to those of the referenced git submodules.

This patchset replaces #48704 (which had downgrades to aws-c-common and
aws-c-io).

[-- Attachment #1.2: Type: text/html, Size: 382 bytes --]

[-- Attachment #2: 0012-gnu-aws-sdk-cpp-Update-to-1.9.92.patch --]
[-- Type: application/octet-stream, Size: 7722 bytes --]

From 9ee024eb3a7fb02f58aaa8ccb067622b6851b70a Mon Sep 17 00:00:00 2001
From: Greg Hogan <code@greghogan.com>
Date: Thu, 18 Mar 2021 17:53:12 +0000
Subject: [PATCH 12/12] gnu: aws-sdk-cpp: Update to 1.9.92.

* gnu/packages/patches/aws-sdk-cpp-cmake-prefix.patch,
gnu/packages/patches/aws-sdk-cpp-disable-networking-tests.patch,
gnu/packages/patches/aws-sdk-cpp-disable-werror.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/cpp.scm (aws-sdk-cpp): Update to 1.9.92.
[source]: Use patches.
[inputs, propagated-inputs]: Update AWS dependencies to Common Runtime.
---
 gnu/local.mk                                  |  3 ++
 gnu/packages/cpp.scm                          | 15 ++++---
 .../patches/aws-sdk-cpp-cmake-prefix.patch    | 18 ++++++++
 ...aws-sdk-cpp-disable-networking-tests.patch | 44 +++++++++++++++++++
 .../patches/aws-sdk-cpp-disable-werror.patch  | 11 +++++
 5 files changed, 85 insertions(+), 6 deletions(-)
 create mode 100644 gnu/packages/patches/aws-sdk-cpp-cmake-prefix.patch
 create mode 100644 gnu/packages/patches/aws-sdk-cpp-disable-networking-tests.patch
 create mode 100644 gnu/packages/patches/aws-sdk-cpp-disable-werror.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 65d91ffd9b..efe03953d5 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -878,6 +878,9 @@ dist_patch_DATA =						\
   %D%/packages/patches/aws-checksums-cmake-prefix.patch		\
   %D%/packages/patches/aws-crt-cpp-cmake-prefix.patch		\
   %D%/packages/patches/aws-crt-cpp-disable-networking-tests.patch	\
+  %D%/packages/patches/aws-sdk-cpp-cmake-prefix.patch		\
+  %D%/packages/patches/aws-sdk-cpp-disable-networking-tests.patch	\
+  %D%/packages/patches/aws-sdk-cpp-disable-werror.patch		\
   %D%/packages/patches/azr3.patch				\
   %D%/packages/patches/bash-reproducible-linux-pgrp-pipe.patch	\
   %D%/packages/patches/bash-completion-directories.patch	\
diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm
index 592320b3ef..1fb4aa481f 100644
--- a/gnu/packages/cpp.scm
+++ b/gnu/packages/cpp.scm
@@ -919,7 +919,7 @@ aws-c-http, aws-c-io, aws-c-mqtt, aws-checksums, and s2n.")
 (define-public aws-sdk-cpp
   (package
     (name "aws-sdk-cpp")
-    (version "1.8.159")
+    (version "1.9.92")
     (source (origin
               (method git-fetch)
               (uri (git-reference
@@ -928,7 +928,12 @@ aws-c-http, aws-c-io, aws-c-mqtt, aws-checksums, and s2n.")
               (file-name (git-file-name name version))
               (sha256
                (base32
-                "0jpfv9x82nq7hcix9in7qgrc8009dwpg6gr96hlgmcvqrqckd2r9"))))
+                "0nbq1qivykfg8jmrn8d0k6fcfa5dw9s90wnwddh7ia4zafmby7pd"))
+              (patches
+               (search-patches
+                "aws-sdk-cpp-cmake-prefix.patch"
+                "aws-sdk-cpp-disable-networking-tests.patch"
+                "aws-sdk-cpp-disable-werror.patch"))))
     (build-system cmake-build-system)
     (arguments
      '(;; Tests are run during the build phase.
@@ -937,11 +942,9 @@ aws-c-http, aws-c-io, aws-c-mqtt, aws-checksums, and s2n.")
        '("-DBUILD_SHARED_LIBS=ON"
          "-DBUILD_DEPS=OFF")))
     (propagated-inputs
-     `(("aws-c-common" ,aws-c-common)
-       ("aws-c-event-stream" ,aws-c-event-stream)))
+     `(("aws-crt-cpp" ,aws-crt-cpp)))
     (inputs
-     `(("aws-checksums" ,aws-checksums)
-       ("curl" ,curl)
+     `(("curl" ,curl)
        ("openssl" ,openssl)
        ("zlib" ,zlib)))
     (synopsis "Amazon Web Services SDK for C++")
diff --git a/gnu/packages/patches/aws-sdk-cpp-cmake-prefix.patch b/gnu/packages/patches/aws-sdk-cpp-cmake-prefix.patch
new file mode 100644
index 0000000000..efc1218834
--- /dev/null
+++ b/gnu/packages/patches/aws-sdk-cpp-cmake-prefix.patch
@@ -0,0 +1,18 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -98,9 +98,13 @@ set(PYTHON_CMD "python")
+ # CMAKE_MODULE_PATH is a CMAKE variable. It contains a list of paths
+ # which could be used to search CMAKE modules by "include()" or "find_package()", but the default value is empty.
+ # Add ${CMAKE_INSTALL_LIBDIR}/cmake and ${CMAKE_PREFIX_PATH}/lib/cmake to search list
++if (DEFINED ENV{CMAKE_PREFIX_PATH})
++    set(CMAKE_PREFIX_PATH $ENV{CMAKE_PREFIX_PATH})
++endif()
++
+ list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}/cmake")
+-set(AWS_MODULE_DIR "/${CMAKE_INSTALL_LIBDIR}/cmake")
+-string(REPLACE ";" "${AWS_MODULE_DIR};" AWS_MODULE_PATH "${CMAKE_PREFIX_PATH}${AWS_MODULE_DIR}")
++set(AWS_MODULE_DIR "${CMAKE_INSTALL_LIBDIR}/cmake")
++string(REPLACE ":" "${AWS_MODULE_DIR};" AWS_MODULE_PATH "${CMAKE_PREFIX_PATH}${AWS_MODULE_DIR}")
+ list(APPEND CMAKE_MODULE_PATH ${AWS_MODULE_PATH})
+ 
+ # include() will "load and run" cmake script
diff --git a/gnu/packages/patches/aws-sdk-cpp-disable-networking-tests.patch b/gnu/packages/patches/aws-sdk-cpp-disable-networking-tests.patch
new file mode 100644
index 0000000000..3b582d9628
--- /dev/null
+++ b/gnu/packages/patches/aws-sdk-cpp-disable-networking-tests.patch
@@ -0,0 +1,44 @@
+--- a/aws-cpp-sdk-core-tests/http/HttpClientTest.cpp
++++ b/aws-cpp-sdk-core-tests/http/HttpClientTest.cpp
+@@ -92,12 +92,12 @@ TEST(HttpClientTest, TestRandomURLWithNoProxy)
+     makeRandomHttpRequest(httpClient, false);
+ }
+ 
+-TEST(HttpClientTest, TestRandomURLWithProxy)
+-{
+-    ClientConfiguration configuration = makeClientConfigurationWithProxy();
+-    auto httpClient = CreateHttpClient(configuration);
+-    makeRandomHttpRequest(httpClient, true); // we expect it to try to use proxy that is invalid
+-}
++//TEST(HttpClientTest, TestRandomURLWithProxy)
++//{
++//    ClientConfiguration configuration = makeClientConfigurationWithProxy();
++//    auto httpClient = CreateHttpClient(configuration);
++//    makeRandomHttpRequest(httpClient, true); // we expect it to try to use proxy that is invalid
++//}
+ 
+ TEST(HttpClientTest, TestRandomURLWithProxyAndDeclaredAsNonProxyHost)
+ {
+@@ -119,14 +119,14 @@ TEST(HttpClientTest, TestRandomURLWithProxyAndDeclaredParentDomainAsNonProxyHost
+     makeRandomHttpRequest(httpClient, false);
+ }
+ 
+-TEST(HttpClientTest, TestRandomURLWithProxyAndOtherDeclaredAsNonProxyHost)
+-{
+-    ClientConfiguration configuration = makeClientConfigurationWithProxy();
+-    configuration.nonProxyHosts = Aws::Utils::Array<Aws::String>(1);
+-    configuration.nonProxyHosts[0] = "http://test.non.filtered.aws";
+-    auto httpClient = CreateHttpClient(configuration);
+-    makeRandomHttpRequest(httpClient, true);
+-}
++//TEST(HttpClientTest, TestRandomURLWithProxyAndOtherDeclaredAsNonProxyHost)
++//{
++//    ClientConfiguration configuration = makeClientConfigurationWithProxy();
++//    configuration.nonProxyHosts = Aws::Utils::Array<Aws::String>(1);
++//    configuration.nonProxyHosts[0] = "http://test.non.filtered.aws";
++//    auto httpClient = CreateHttpClient(configuration);
++//    makeRandomHttpRequest(httpClient, true);
++//}
+ 
+ // TODO: Pending Fix on Windows.
+ #if ENABLE_CURL_CLIENT
diff --git a/gnu/packages/patches/aws-sdk-cpp-disable-werror.patch b/gnu/packages/patches/aws-sdk-cpp-disable-werror.patch
new file mode 100644
index 0000000000..249c299239
--- /dev/null
+++ b/gnu/packages/patches/aws-sdk-cpp-disable-werror.patch
@@ -0,0 +1,11 @@
+--- a/cmake/compiler_settings.cmake
++++ b/cmake/compiler_settings.cmake
+@@ -53,7 +53,7 @@ macro(set_gcc_flags)
+ endmacro()
+ 
+ macro(set_gcc_warnings)
+-    list(APPEND AWS_COMPILER_WARNINGS "-Wall" "-Werror" "-pedantic" "-Wextra")
++    list(APPEND AWS_COMPILER_WARNINGS "-Wall" "-pedantic" "-Wextra")
+     if(COMPILER_CLANG)
+         if(PLATFORM_ANDROID)
+             # when using clang with libc and API lower than 21 we need to include Android support headers and ignore the gnu-include-next warning.
-- 
2.33.0


[-- Attachment #3: 0010-gnu-Add-aws-c-mqtt.patch --]
[-- Type: application/octet-stream, Size: 3291 bytes --]

From a331d891001314e5ca9ff3074dfee972b0e27a80 Mon Sep 17 00:00:00 2001
From: Greg Hogan <code@greghogan.com>
Date: Fri, 30 Apr 2021 14:02:44 +0000
Subject: [PATCH 10/12] gnu: Add aws-c-mqtt.

* gnu/packages/c.scm (aws-c-mqtt): New variable.
* gnu/packages/patches/aws-c-mqtt-cmake-prefix.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
---
 gnu/local.mk                                  |  1 +
 gnu/packages/c.scm                            | 28 +++++++++++++++++++
 .../patches/aws-c-mqtt-cmake-prefix.patch     | 13 +++++++++
 3 files changed, 42 insertions(+)
 create mode 100644 gnu/packages/patches/aws-c-mqtt-cmake-prefix.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index a869396fe9..4f5f3b7bdf 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -870,6 +870,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/aws-c-event-stream-cmake-prefix.patch  \
   %D%/packages/patches/aws-c-http-cmake-prefix.patch		\
   %D%/packages/patches/aws-c-http-disable-networking-tests.patch\
+  %D%/packages/patches/aws-c-mqtt-cmake-prefix.patch		\
   %D%/packages/patches/aws-c-io-cmake-prefix.patch		\
   %D%/packages/patches/aws-c-io-disable-networking-tests.patch	\
   %D%/packages/patches/aws-c-s3-cmake-prefix.patch		\
diff --git a/gnu/packages/c.scm b/gnu/packages/c.scm
index 7078eff4ad..13e8ffba75 100644
--- a/gnu/packages/c.scm
+++ b/gnu/packages/c.scm
@@ -834,3 +834,31 @@ authentication.")
 Service (S3) protocol for object storage.")
     (home-page "https://github.com/awslabs/aws-c-s3")
     (license license:asl2.0)))
+
+(define-public aws-c-mqtt
+  (package
+    (name "aws-c-mqtt")
+    (version "0.7.6")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url (string-append "https://github.com/awslabs/" name))
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "0qgblakp9n281z5w1kmmy9sjiz6s44kg487l76w7p43p1dp7s401"))
+              (patches (search-patches "aws-c-mqtt-cmake-prefix.patch"))))
+    (build-system cmake-build-system)
+    (arguments
+     '(#:configure-flags
+       '("-DBUILD_SHARED_LIBS=ON")))
+    (propagated-inputs
+     `(("aws-c-http" ,aws-c-http)
+       ("aws-c-io" ,aws-c-io)))
+    (synopsis "Amazon Web Services MQTT library")
+    (description
+     "This library provides a C99 implementation of the Message Queuing
+Telemetry Transport (MQTT) publish-subscribe messaging protocol.")
+    (home-page "https://github.com/awslabs/aws-c-mqtt")
+    (license license:asl2.0)))
diff --git a/gnu/packages/patches/aws-c-mqtt-cmake-prefix.patch b/gnu/packages/patches/aws-c-mqtt-cmake-prefix.patch
new file mode 100644
index 0000000000..987024b57c
--- /dev/null
+++ b/gnu/packages/patches/aws-c-mqtt-cmake-prefix.patch
@@ -0,0 +1,13 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -7,6 +7,10 @@ if (POLICY CMP0069)
+     cmake_policy(SET CMP0069 NEW) # Enable LTO/IPO if available in the compiler, see AwsCFlags
+ endif()
+ 
++if (DEFINED ENV{CMAKE_PREFIX_PATH})
++    set(CMAKE_PREFIX_PATH $ENV{CMAKE_PREFIX_PATH})
++endif()
++
+ if (DEFINED CMAKE_PREFIX_PATH)
+     file(TO_CMAKE_PATH "${CMAKE_PREFIX_PATH}" CMAKE_PREFIX_PATH)
+ endif()
-- 
2.33.0


[-- Attachment #4: 0011-gnu-Add-aws-crt-cpp.patch --]
[-- Type: application/octet-stream, Size: 6857 bytes --]

From c3dd495e5aa55f0f86344963009ae55f5a65328b Mon Sep 17 00:00:00 2001
From: Greg Hogan <code@greghogan.com>
Date: Fri, 30 Apr 2021 14:06:34 +0000
Subject: [PATCH 11/12] gnu: Add aws-crt-cpp.

* gnu/packages/cpp.scm (aws-crt-cpp): New variable.
* gnu/packages/patches/aws-crt-cpp-cmake-prefix.patch,
gnu/packages/patches/aws-crt-cpp-disable-networking-tests.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
---
 gnu/local.mk                                  |  2 +
 gnu/packages/cpp.scm                          | 39 +++++++++++++++
 .../patches/aws-crt-cpp-cmake-prefix.patch    | 13 +++++
 ...aws-crt-cpp-disable-networking-tests.patch | 47 +++++++++++++++++++
 4 files changed, 101 insertions(+)
 create mode 100644 gnu/packages/patches/aws-crt-cpp-cmake-prefix.patch
 create mode 100644 gnu/packages/patches/aws-crt-cpp-disable-networking-tests.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 4f5f3b7bdf..65d91ffd9b 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -876,6 +876,8 @@ dist_patch_DATA =						\
   %D%/packages/patches/aws-c-s3-cmake-prefix.patch		\
   %D%/packages/patches/aws-c-s3-disable-networking-tests.patch	\
   %D%/packages/patches/aws-checksums-cmake-prefix.patch		\
+  %D%/packages/patches/aws-crt-cpp-cmake-prefix.patch		\
+  %D%/packages/patches/aws-crt-cpp-disable-networking-tests.patch	\
   %D%/packages/patches/azr3.patch				\
   %D%/packages/patches/bash-reproducible-linux-pgrp-pipe.patch	\
   %D%/packages/patches/bash-completion-directories.patch	\
diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm
index 5fd9002440..592320b3ef 100644
--- a/gnu/packages/cpp.scm
+++ b/gnu/packages/cpp.scm
@@ -877,6 +877,45 @@ of C++14 components that complements @code{std} and Boost.")
     (supported-systems '("aarch64-linux" "x86_64-linux"))
     (license license:asl2.0)))
 
+(define-public aws-crt-cpp
+  (let* ((commit "c2d6ffa5597825111cc76ad71ffc6aef664d0f25")
+         (revision "1"))
+    (package
+      (name "aws-crt-cpp")
+      (version (git-version "0.14.2" revision commit))
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url "https://github.com/awslabs/aws-crt-cpp")
+                      (commit commit)))
+                (file-name (git-file-name name version))
+                (sha256
+                 (base32
+                  "0l7iwynk2rgzjnr1hi1raazghmk4m7pj47vdq2kf2cfz0b6v9jf5"))
+                (patches
+                 (search-patches
+                  "aws-crt-cpp-cmake-prefix.patch"
+                  "aws-crt-cpp-disable-networking-tests.patch"))))
+      (build-system cmake-build-system)
+      (arguments
+       '(#:configure-flags
+         '("-DBUILD_SHARED_LIBS=ON"
+           "-DBUILD_DEPS=OFF")))
+      (propagated-inputs
+       `(("aws-c-auth" ,aws-c-auth)
+         ("aws-c-cal" ,aws-c-cal)
+         ("aws-c-event-stream" ,aws-c-event-stream)
+         ("aws-c-http" ,aws-c-http)
+         ("aws-c-mqtt" ,aws-c-mqtt)
+         ("aws-c-s3" ,aws-c-s3)))
+      (synopsis "C++ wrapper for Amazon Web Services C libraries")
+      (description "The AWS Common Runtime (CRT) library provides a C++ wrapper
+implementation for the following @acronym{AWS,Amazon Web Services} C libraries:
+aws-c-auth, aws-c-cal, aws-c-common, aws-c-compression, aws-c-event-stream,
+aws-c-http, aws-c-io, aws-c-mqtt, aws-checksums, and s2n.")
+      (home-page "https://github.com/awslabs/aws-crt-cpp")
+      (license license:asl2.0))))
+
 (define-public aws-sdk-cpp
   (package
     (name "aws-sdk-cpp")
diff --git a/gnu/packages/patches/aws-crt-cpp-cmake-prefix.patch b/gnu/packages/patches/aws-crt-cpp-cmake-prefix.patch
new file mode 100644
index 0000000000..b45818875f
--- /dev/null
+++ b/gnu/packages/patches/aws-crt-cpp-cmake-prefix.patch
@@ -0,0 +1,13 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -39,6 +39,10 @@ list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
+ include(AwsCheckHeadersCxx)
+ include(CTest)
+ 
++if (DEFINED ENV{CMAKE_PREFIX_PATH})
++    set(CMAKE_PREFIX_PATH $ENV{CMAKE_PREFIX_PATH})
++endif()
++
+ if (DEFINED CMAKE_PREFIX_PATH)
+     file(TO_CMAKE_PATH "${CMAKE_PREFIX_PATH}" CMAKE_PREFIX_PATH)
+ endif()
diff --git a/gnu/packages/patches/aws-crt-cpp-disable-networking-tests.patch b/gnu/packages/patches/aws-crt-cpp-disable-networking-tests.patch
new file mode 100644
index 0000000000..4c1be7d028
--- /dev/null
+++ b/gnu/packages/patches/aws-crt-cpp-disable-networking-tests.patch
@@ -0,0 +1,47 @@
+--- a/tests/CMakeLists.txt
++++ b/tests/CMakeLists.txt
+@@ -13,9 +13,9 @@ add_test_case(ApiMultiDefaultCreateDestroy)
+ add_test_case(EventLoopResourceSafety)
+ add_test_case(ClientBootstrapResourceSafety)
+ if (NOT BYO_CRYPTO)
+-    add_net_test_case(MqttClientResourceSafety)
++    #add_net_test_case(MqttClientResourceSafety)
+     add_net_test_case(MqttClientNewConnectionUninitializedTlsContext)
+-    add_net_test_case(TLSContextResourceSafety)
++    #add_net_test_case(TLSContextResourceSafety)
+     add_net_test_case(TLSContextUninitializedNewConnectionOptions)
+ endif ()
+ add_test_case(Base64RoundTrip)
+@@ -29,15 +29,15 @@ add_test_case(SHA256ResourceSafety)
+ add_test_case(MD5ResourceSafety)
+ add_test_case(SHA256HMACResourceSafety)
+ if (NOT BYO_CRYPTO)
+-    add_net_test_case(HttpDownloadNoBackPressureHTTP1_1)
+-    add_net_test_case(HttpDownloadNoBackPressureHTTP2)
+-    add_net_test_case(HttpStreamUnActivated)
++    #add_net_test_case(HttpDownloadNoBackPressureHTTP1_1)
++    #add_net_test_case(HttpDownloadNoBackPressureHTTP2)
++    #add_net_test_case(HttpStreamUnActivated)
+     add_net_test_case(HttpCreateConnectionInvalidTlsConnectionOptions)
+     add_net_test_case(IotPublishSubscribe)
+-    add_net_test_case(HttpClientConnectionManagerResourceSafety)
++    #add_net_test_case(HttpClientConnectionManagerResourceSafety)
+     add_net_test_case(HttpClientConnectionManagerInvalidTlsConnectionOptions)
+-    add_net_test_case(HttpClientConnectionWithPendingAcquisitions)
+-    add_net_test_case(HttpClientConnectionWithPendingAcquisitionsAndClosedConnections)
++    #add_net_test_case(HttpClientConnectionWithPendingAcquisitions)
++    #add_net_test_case(HttpClientConnectionWithPendingAcquisitionsAndClosedConnections)
+ endif ()
+ add_test_case(DefaultResolution)
+ add_test_case(OptionalCopySafety)
+@@ -55,8 +55,8 @@ add_test_case(TestProviderEnvironmentGet)
+ add_test_case(TestProviderProfileGet)
+ add_test_case(TestProviderImdsGet)
+ if (NOT BYO_CRYPTO)
+-    add_net_test_case(TestProviderDefaultChainGet)
+-    add_net_test_case(TestProviderDefaultChainManualTlsContextGet)
++    #add_net_test_case(TestProviderDefaultChainGet)
++    #add_net_test_case(TestProviderDefaultChainManualTlsContextGet)
+ endif ()
+ add_test_case(TestProviderDelegateGet)
+ add_test_case(HttpRequestTestCreateDestroy)
-- 
2.33.0


[-- Attachment #5: 0008-gnu-Add-aws-c-auth.patch --]
[-- Type: application/octet-stream, Size: 8386 bytes --]

From a42899064c7d3bb4c706cd9e9d1c49eb68cd2762 Mon Sep 17 00:00:00 2001
From: Greg Hogan <code@greghogan.com>
Date: Fri, 30 Apr 2021 14:00:27 +0000
Subject: [PATCH 08/12] gnu: Add aws-c-auth.

* gnu/packages/c.scm (aws-c-auth): New variable.
* gnu/packages/patches/aws-c-auth-cmake-prefix.patch,
gnu/packages/patches/aws-c-auth-disable-networking-tests.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
---
 gnu/local.mk                                  |  2 +
 gnu/packages/c.scm                            | 33 ++++++++++
 .../patches/aws-c-auth-cmake-prefix.patch     | 13 ++++
 .../aws-c-auth-disable-networking-tests.patch | 64 +++++++++++++++++++
 4 files changed, 112 insertions(+)
 create mode 100644 gnu/packages/patches/aws-c-auth-cmake-prefix.patch
 create mode 100644 gnu/packages/patches/aws-c-auth-disable-networking-tests.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 5c163b7dc7..0220ff9391 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -863,6 +863,8 @@ dist_patch_DATA =						\
   %D%/packages/patches/avahi-localstatedir.patch		\
   %D%/packages/patches/avidemux-install-to-lib.patch		\
   %D%/packages/patches/awesome-reproducible-png.patch		\
+  %D%/packages/patches/aws-c-auth-cmake-prefix.patch		\
+  %D%/packages/patches/aws-c-auth-disable-networking-tests.patch\
   %D%/packages/patches/aws-c-cal-cmake-prefix.patch		\
   %D%/packages/patches/aws-c-compression-cmake-prefix.patch	\
   %D%/packages/patches/aws-c-event-stream-cmake-prefix.patch  \
diff --git a/gnu/packages/c.scm b/gnu/packages/c.scm
index a9b92cb6a1..94e731c9bf 100644
--- a/gnu/packages/c.scm
+++ b/gnu/packages/c.scm
@@ -770,3 +770,36 @@ specifications.")
 currently limited to Huffman encoding and decoding.")
     (home-page "https://github.com/awslabs/aws-c-compression")
     (license license:asl2.0)))
+
+(define-public aws-c-auth
+  (package
+    (name "aws-c-auth")
+    (version "0.6.0")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url (string-append "https://github.com/awslabs/" name))
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "0yh9s6q3ahq39xgvihp2a5cn9h39qlq8wfjc32m0ayi9x739rbqg"))
+              (patches
+               (search-patches
+                "aws-c-auth-cmake-prefix.patch"
+                "aws-c-auth-disable-networking-tests.patch"))))
+    (build-system cmake-build-system)
+    (arguments
+     '(#:configure-flags
+       '("-DBUILD_SHARED_LIBS=ON")))
+    (propagated-inputs
+     `(("aws-c-cal" ,aws-c-cal)
+       ("aws-c-common" ,aws-c-common)
+       ("aws-c-http" ,aws-c-http)
+       ("aws-c-io" ,aws-c-io)))
+    (synopsis "Amazon Web Services client-side authentication library")
+    (description
+     "This library provides a C99 implementation for AWS client-side
+authentication.")
+    (home-page "https://github.com/awslabs/aws-c-auth")
+    (license license:asl2.0)))
diff --git a/gnu/packages/patches/aws-c-auth-cmake-prefix.patch b/gnu/packages/patches/aws-c-auth-cmake-prefix.patch
new file mode 100644
index 0000000000..da3e4eb4a5
--- /dev/null
+++ b/gnu/packages/patches/aws-c-auth-cmake-prefix.patch
@@ -0,0 +1,13 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -6,6 +6,10 @@ if (POLICY CMP0069)
+     cmake_policy(SET CMP0069 NEW) # Enable LTO/IPO if available in the compiler, see AwsCFlags
+ endif()
+ 
++if (DEFINED ENV{CMAKE_PREFIX_PATH})
++    set(CMAKE_PREFIX_PATH $ENV{CMAKE_PREFIX_PATH})
++endif()
++
+ if (DEFINED CMAKE_PREFIX_PATH)
+     file(TO_CMAKE_PATH "${CMAKE_PREFIX_PATH}" CMAKE_PREFIX_PATH)
+ endif()
diff --git a/gnu/packages/patches/aws-c-auth-disable-networking-tests.patch b/gnu/packages/patches/aws-c-auth-disable-networking-tests.patch
new file mode 100644
index 0000000000..905247f528
--- /dev/null
+++ b/gnu/packages/patches/aws-c-auth-disable-networking-tests.patch
@@ -0,0 +1,64 @@
+--- a/tests/CMakeLists.txt
++++ b/tests/CMakeLists.txt
+@@ -19,8 +19,8 @@ add_test_case(profile_credentials_provider_environment_test)
+ add_test_case(credentials_provider_first_in_chain_test)
+ add_test_case(credentials_provider_second_in_chain_test)
+ add_test_case(credentials_provider_null_chain_test)
+-add_test_case(credentials_provider_default_basic_test)
+-add_test_case(credentials_provider_default_manual_tls_test)
++#add_test_case(credentials_provider_default_basic_test)
++#add_test_case(credentials_provider_default_manual_tls_test)
+ add_test_case(credentials_provider_imds_new_destroy)
+ add_test_case(credentials_provider_imds_connect_failure)
+ add_test_case(credentials_provider_imds_token_request_failure)
+@@ -58,28 +58,28 @@ add_test_case(credentials_provider_x509_basic_success)
+ add_test_case(credentials_provider_x509_success_multi_part_doc)
+ add_test_case(credentials_provider_x509_real_new_destroy)
+ 
+-add_net_test_case(credentials_provider_sts_web_identity_new_destroy_from_env)
+-add_net_test_case(credentials_provider_sts_web_identity_new_destroy_from_config)
+-add_net_test_case(credentials_provider_sts_web_identity_new_failed_without_env_and_config)
+-add_net_test_case(credentials_provider_sts_web_identity_connect_failure)
+-add_net_test_case(credentials_provider_sts_web_identity_request_failure)
+-add_net_test_case(credentials_provider_sts_web_identity_bad_document_failure)
+-add_net_test_case(credentials_provider_sts_web_identity_test_retry_error1)
+-add_net_test_case(credentials_provider_sts_web_identity_test_retry_error2)
+-add_net_test_case(credentials_provider_sts_web_identity_basic_success_env)
+-add_net_test_case(credentials_provider_sts_web_identity_basic_success_config)
+-add_net_test_case(credentials_provider_sts_web_identity_success_multi_part_doc)
+-add_net_test_case(credentials_provider_sts_web_identity_real_new_destroy)
+-
+-add_net_test_case(credentials_provider_sts_direct_config_succeeds)
+-add_net_test_case(credentials_provider_sts_direct_config_succeeds_after_retry)
+-add_net_test_case(credentials_provider_sts_direct_config_invalid_doc)
+-add_net_test_case(credentials_provider_sts_direct_config_connection_failed)
+-add_net_test_case(credentials_provider_sts_direct_config_service_fails)
+-add_net_test_case(credentials_provider_sts_from_profile_config_succeeds)
+-add_net_test_case(credentials_provider_sts_from_profile_config_manual_tls_succeeds)
+-add_net_test_case(credentials_provider_sts_from_profile_config_environment_succeeds)
+-add_net_test_case(credentials_provider_sts_cache_expiration_conflict)
++#add_net_test_case(credentials_provider_sts_web_identity_new_destroy_from_env)
++#add_net_test_case(credentials_provider_sts_web_identity_new_destroy_from_config)
++#add_net_test_case(credentials_provider_sts_web_identity_new_failed_without_env_and_config)
++#add_net_test_case(credentials_provider_sts_web_identity_connect_failure)
++#add_net_test_case(credentials_provider_sts_web_identity_request_failure)
++#add_net_test_case(credentials_provider_sts_web_identity_bad_document_failure)
++#add_net_test_case(credentials_provider_sts_web_identity_test_retry_error1)
++#add_net_test_case(credentials_provider_sts_web_identity_test_retry_error2)
++#add_net_test_case(credentials_provider_sts_web_identity_basic_success_env)
++#add_net_test_case(credentials_provider_sts_web_identity_basic_success_config)
++#add_net_test_case(credentials_provider_sts_web_identity_success_multi_part_doc)
++#add_net_test_case(credentials_provider_sts_web_identity_real_new_destroy)
++
++#add_net_test_case(credentials_provider_sts_direct_config_succeeds)
++#add_net_test_case(credentials_provider_sts_direct_config_succeeds_after_retry)
++#add_net_test_case(credentials_provider_sts_direct_config_invalid_doc)
++#add_net_test_case(credentials_provider_sts_direct_config_connection_failed)
++#add_net_test_case(credentials_provider_sts_direct_config_service_fails)
++#add_net_test_case(credentials_provider_sts_from_profile_config_succeeds)
++#add_net_test_case(credentials_provider_sts_from_profile_config_manual_tls_succeeds)
++#add_net_test_case(credentials_provider_sts_from_profile_config_environment_succeeds)
++#add_net_test_case(credentials_provider_sts_cache_expiration_conflict)
+ 
+ add_test_case(credentials_provider_process_new_destroy_from_config)
+ add_test_case(credentials_provider_process_new_failed)
-- 
2.33.0


[-- Attachment #6: 0009-gnu-Add-aws-c-s3.patch --]
[-- Type: application/octet-stream, Size: 12245 bytes --]

From 08d545b4be7e41d451063a8f49d375a07d82d40e Mon Sep 17 00:00:00 2001
From: Greg Hogan <code@greghogan.com>
Date: Fri, 30 Apr 2021 14:02:11 +0000
Subject: [PATCH 09/12] gnu: Add aws-c-s3.

* gnu/packages/c.scm (aws-c-s3): New variable.
* gnu/packages/patches/aws-c-s3-cmake-prefix.patch,
gnu/packages/patches/aws-c-s3-disable-networking-tests.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
---
 gnu/local.mk                                  |   2 +
 gnu/packages/c.scm                            |  31 ++++
 .../patches/aws-c-s3-cmake-prefix.patch       |  13 ++
 .../aws-c-s3-disable-networking-tests.patch   | 153 ++++++++++++++++++
 4 files changed, 199 insertions(+)
 create mode 100644 gnu/packages/patches/aws-c-s3-cmake-prefix.patch
 create mode 100644 gnu/packages/patches/aws-c-s3-disable-networking-tests.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 0220ff9391..a869396fe9 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -872,6 +872,8 @@ dist_patch_DATA =						\
   %D%/packages/patches/aws-c-http-disable-networking-tests.patch\
   %D%/packages/patches/aws-c-io-cmake-prefix.patch		\
   %D%/packages/patches/aws-c-io-disable-networking-tests.patch	\
+  %D%/packages/patches/aws-c-s3-cmake-prefix.patch		\
+  %D%/packages/patches/aws-c-s3-disable-networking-tests.patch	\
   %D%/packages/patches/aws-checksums-cmake-prefix.patch		\
   %D%/packages/patches/azr3.patch				\
   %D%/packages/patches/bash-reproducible-linux-pgrp-pipe.patch	\
diff --git a/gnu/packages/c.scm b/gnu/packages/c.scm
index 94e731c9bf..7078eff4ad 100644
--- a/gnu/packages/c.scm
+++ b/gnu/packages/c.scm
@@ -803,3 +803,34 @@ currently limited to Huffman encoding and decoding.")
 authentication.")
     (home-page "https://github.com/awslabs/aws-c-auth")
     (license license:asl2.0)))
+
+(define-public aws-c-s3
+  (package
+    (name "aws-c-s3")
+    (version "0.1.19")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url (string-append "https://github.com/awslabs/" name))
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "1vkjd8dh99d8qsl7irnbkcdf9vjmcznx0jz186la0472z4h48wjj"))
+              (patches
+               (search-patches
+                "aws-c-s3-cmake-prefix.patch"
+                "aws-c-s3-disable-networking-tests.patch"))))
+    (build-system cmake-build-system)
+    (arguments
+     '(#:configure-flags
+       '("-DBUILD_SHARED_LIBS=ON")))
+    (propagated-inputs
+     `(("aws-c-auth" ,aws-c-auth)
+       ("aws-c-http" ,aws-c-http)))
+    (synopsis "Amazon Web Services client library for Amazon S3")
+    (description
+     "This library provides a C99 client implementation of the Simple Storage
+Service (S3) protocol for object storage.")
+    (home-page "https://github.com/awslabs/aws-c-s3")
+    (license license:asl2.0)))
diff --git a/gnu/packages/patches/aws-c-s3-cmake-prefix.patch b/gnu/packages/patches/aws-c-s3-cmake-prefix.patch
new file mode 100644
index 0000000000..da3e4eb4a5
--- /dev/null
+++ b/gnu/packages/patches/aws-c-s3-cmake-prefix.patch
@@ -0,0 +1,13 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -6,6 +6,10 @@ if (POLICY CMP0069)
+     cmake_policy(SET CMP0069 NEW) # Enable LTO/IPO if available in the compiler, see AwsCFlags
+ endif()
+ 
++if (DEFINED ENV{CMAKE_PREFIX_PATH})
++    set(CMAKE_PREFIX_PATH $ENV{CMAKE_PREFIX_PATH})
++endif()
++
+ if (DEFINED CMAKE_PREFIX_PATH)
+     file(TO_CMAKE_PATH "${CMAKE_PREFIX_PATH}" CMAKE_PREFIX_PATH)
+ endif()
diff --git a/gnu/packages/patches/aws-c-s3-disable-networking-tests.patch b/gnu/packages/patches/aws-c-s3-disable-networking-tests.patch
new file mode 100644
index 0000000000..e8a3d8ed6a
--- /dev/null
+++ b/gnu/packages/patches/aws-c-s3-disable-networking-tests.patch
@@ -0,0 +1,153 @@
+--- a/tests/CMakeLists.txt
++++ b/tests/CMakeLists.txt
+@@ -23,8 +23,8 @@ add_test_case(test_s3_upload_part_message_new)
+ add_test_case(test_s3_complete_multipart_message_new)
+ add_test_case(test_s3_abort_multipart_upload_message_new)
+ 
+-add_net_test_case(test_s3_client_create_destroy)
+-add_net_test_case(test_s3_client_max_active_connections_override)
++#add_net_test_case(test_s3_client_create_destroy)
++#add_net_test_case(test_s3_client_max_active_connections_override)
+ add_test_case(test_s3_client_get_max_active_connections)
+ add_test_case(test_s3_request_create_destroy)
+ add_test_case(test_s3_client_queue_requests)
+@@ -37,75 +37,75 @@ add_test_case(test_s3_client_update_connections_too_many_conns)
+ add_test_case(test_s3_client_update_connections_finish_result)
+ add_test_case(test_s3_client_update_connections_clean_up)
+ 
+-add_net_test_case(test_s3_vip_create_destroy)
+-add_net_test_case(test_s3_client_add_remove_vips)
+-add_net_test_case(test_s3_client_resolve_vips)
++#add_net_test_case(test_s3_vip_create_destroy)
++#add_net_test_case(test_s3_client_add_remove_vips)
++#add_net_test_case(test_s3_client_resolve_vips)
+ add_test_case(test_s3_client_set_vip_connection_warm)
+ add_test_case(test_s3_client_set_vip_connection_active)
+ 
+-add_net_test_case(test_s3_client_exceed_retries)
+-add_net_test_case(test_s3_client_acquire_connection_fail)
+-add_net_test_case(test_s3_meta_request_fail_prepare_request)
+-add_net_test_case(test_s3_meta_request_sign_request_fail)
+-add_net_test_case(test_s3_meta_request_send_request_finish_fail)
+-add_net_test_case(test_s3_auto_range_put_missing_upload_id)
++#add_net_test_case(test_s3_client_exceed_retries)
++#add_net_test_case(test_s3_client_acquire_connection_fail)
++#add_net_test_case(test_s3_meta_request_fail_prepare_request)
++#add_net_test_case(test_s3_meta_request_sign_request_fail)
++#add_net_test_case(test_s3_meta_request_send_request_finish_fail)
++#add_net_test_case(test_s3_auto_range_put_missing_upload_id)
+ 
+-add_net_test_case(test_s3_cancel_mpu_create_not_sent)
+-add_net_test_case(test_s3_cancel_mpu_create_completed)
+-add_net_test_case(test_s3_cancel_mpu_one_part_completed)
+-add_net_test_case(test_s3_cancel_mpu_all_parts_completed)
+-add_net_test_case(test_s3_cancel_mpd_nothing_sent)
+-add_net_test_case(test_s3_cancel_mpd_one_part_sent)
+-add_net_test_case(test_s3_cancel_mpd_one_part_completed)
+-add_net_test_case(test_s3_cancel_mpd_two_parts_completed)
+-add_net_test_case(test_s3_cancel_mpd_head_object_sent)
+-add_net_test_case(test_s3_cancel_mpd_head_object_completed)
+-add_net_test_case(test_s3_cancel_mpd_get_without_range_sent)
+-add_net_test_case(test_s3_cancel_mpd_get_without_range_completed)
++#add_net_test_case(test_s3_cancel_mpu_create_not_sent)
++#add_net_test_case(test_s3_cancel_mpu_create_completed)
++#add_net_test_case(test_s3_cancel_mpu_one_part_completed)
++#add_net_test_case(test_s3_cancel_mpu_all_parts_completed)
++#add_net_test_case(test_s3_cancel_mpd_nothing_sent)
++#add_net_test_case(test_s3_cancel_mpd_one_part_sent)
++#add_net_test_case(test_s3_cancel_mpd_one_part_completed)
++#add_net_test_case(test_s3_cancel_mpd_two_parts_completed)
++#add_net_test_case(test_s3_cancel_mpd_head_object_sent)
++#add_net_test_case(test_s3_cancel_mpd_head_object_completed)
++#add_net_test_case(test_s3_cancel_mpd_get_without_range_sent)
++#add_net_test_case(test_s3_cancel_mpd_get_without_range_completed)
+ 
+-add_net_test_case(test_s3_get_object_tls_disabled)
+-add_net_test_case(test_s3_get_object_tls_enabled)
+-add_net_test_case(test_s3_get_object_tls_default)
+-add_net_test_case(test_s3_get_object_less_than_part_size)
+-add_net_test_case(test_s3_get_object_empty_object)
+-add_net_test_case(test_s3_get_object_multiple)
+-add_net_test_case(test_s3_get_object_sse_kms)
+-add_net_test_case(test_s3_get_object_sse_aes256)
+-add_net_test_case(test_s3_no_signing)
+-add_net_test_case(test_s3_signing_override)
+-add_net_test_case(test_s3_put_object_tls_disabled)
+-add_net_test_case(test_s3_put_object_tls_enabled)
+-add_net_test_case(test_s3_put_object_tls_default)
+-add_net_test_case(test_s3_multipart_put_object_with_acl)
+-add_net_test_case(test_s3_put_object_multiple)
+-add_net_test_case(test_s3_put_object_less_than_part_size)
+-add_net_test_case(test_s3_put_object_empty_object)
+-add_net_test_case(test_s3_put_object_with_part_remainder)
+-add_net_test_case(test_s3_put_object_sse_kms)
+-add_net_test_case(test_s3_put_object_sse_kms_multipart)
+-add_net_test_case(test_s3_put_object_sse_aes256)
+-add_net_test_case(test_s3_put_object_sse_aes256_multipart)
+-add_net_test_case(test_s3_put_object_double_slashes)
+-add_net_test_case(test_s3_meta_request_default)
+-add_net_test_case(test_s3_put_object_fail_headers_callback)
+-add_net_test_case(test_s3_put_object_fail_body_callback)
+-add_net_test_case(test_s3_get_object_fail_headers_callback)
+-add_net_test_case(test_s3_get_object_fail_body_callback)
+-add_net_test_case(test_s3_default_fail_headers_callback)
+-add_net_test_case(test_s3_default_fail_body_callback)
+-add_net_test_case(test_s3_error_missing_file)
+-add_net_test_case(test_s3_existing_host_entry)
+-add_net_test_case(test_s3_put_fail_object_invalid_request)
+-add_net_test_case(test_s3_put_fail_object_inputstream_fail_reading)
+-add_net_test_case(test_s3_put_single_part_fail_object_inputstream_fail_reading)
+-add_net_test_case(test_s3_bad_endpoint)
+-add_net_test_case(test_s3_put_object_clamp_part_size)
+-add_net_test_case(test_s3_different_endpoints)
+-add_net_test_case(test_s3_auto_ranged_get_sending_user_agent)
+-add_net_test_case(test_s3_auto_ranged_put_sending_user_agent)
+-add_net_test_case(test_s3_default_sending_meta_request_user_agent)
+-add_net_test_case(test_s3_range_requests)
+-add_net_test_case(test_s3_not_satisfiable_range)
++#add_net_test_case(test_s3_get_object_tls_disabled)
++#add_net_test_case(test_s3_get_object_tls_enabled)
++#add_net_test_case(test_s3_get_object_tls_default)
++#add_net_test_case(test_s3_get_object_less_than_part_size)
++#add_net_test_case(test_s3_get_object_empty_object)
++#add_net_test_case(test_s3_get_object_multiple)
++#add_net_test_case(test_s3_get_object_sse_kms)
++#add_net_test_case(test_s3_get_object_sse_aes256)
++#add_net_test_case(test_s3_no_signing)
++#add_net_test_case(test_s3_signing_override)
++#add_net_test_case(test_s3_put_object_tls_disabled)
++#add_net_test_case(test_s3_put_object_tls_enabled)
++#add_net_test_case(test_s3_put_object_tls_default)
++#add_net_test_case(test_s3_multipart_put_object_with_acl)
++#add_net_test_case(test_s3_put_object_multiple)
++#add_net_test_case(test_s3_put_object_less_than_part_size)
++#add_net_test_case(test_s3_put_object_empty_object)
++#add_net_test_case(test_s3_put_object_with_part_remainder)
++#add_net_test_case(test_s3_put_object_sse_kms)
++#add_net_test_case(test_s3_put_object_sse_kms_multipart)
++#add_net_test_case(test_s3_put_object_sse_aes256)
++#add_net_test_case(test_s3_put_object_sse_aes256_multipart)
++#add_net_test_case(test_s3_put_object_double_slashes)
++#add_net_test_case(test_s3_meta_request_default)
++#add_net_test_case(test_s3_put_object_fail_headers_callback)
++#add_net_test_case(test_s3_put_object_fail_body_callback)
++#add_net_test_case(test_s3_get_object_fail_headers_callback)
++#add_net_test_case(test_s3_get_object_fail_body_callback)
++#add_net_test_case(test_s3_default_fail_headers_callback)
++#add_net_test_case(test_s3_default_fail_body_callback)
++#add_net_test_case(test_s3_error_missing_file)
++#add_net_test_case(test_s3_existing_host_entry)
++#add_net_test_case(test_s3_put_fail_object_invalid_request)
++#add_net_test_case(test_s3_put_fail_object_inputstream_fail_reading)
++#add_net_test_case(test_s3_put_single_part_fail_object_inputstream_fail_reading)
++#add_net_test_case(test_s3_bad_endpoint)
++#add_net_test_case(test_s3_put_object_clamp_part_size)
++#add_net_test_case(test_s3_different_endpoints)
++#add_net_test_case(test_s3_auto_ranged_get_sending_user_agent)
++#add_net_test_case(test_s3_auto_ranged_put_sending_user_agent)
++#add_net_test_case(test_s3_default_sending_meta_request_user_agent)
++#add_net_test_case(test_s3_range_requests)
++#add_net_test_case(test_s3_not_satisfiable_range)
+ 
+ add_test_case(test_s3_replace_quote_entities)
+ add_test_case(test_s3_parse_content_range_response_header)
-- 
2.33.0


[-- Attachment #7: 0007-gnu-Add-aws-c-compression.patch --]
[-- Type: application/octet-stream, Size: 3341 bytes --]

From 2485b297e4ee93b4096ae33144a6e229db33df34 Mon Sep 17 00:00:00 2001
From: Greg Hogan <code@greghogan.com>
Date: Fri, 30 Apr 2021 13:59:30 +0000
Subject: [PATCH 07/12] gnu: Add aws-c-compression.

* gnu/packages/c.scm (aws-c-compression): New variable.
* gnu/packages/patches/aws-c-compression-cmake-prefix.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
---
 gnu/local.mk                                  |  1 +
 gnu/packages/c.scm                            | 27 +++++++++++++++++++
 .../aws-c-compression-cmake-prefix.patch      | 13 +++++++++
 3 files changed, 41 insertions(+)
 create mode 100644 gnu/packages/patches/aws-c-compression-cmake-prefix.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 7b22b80eba..5c163b7dc7 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -864,6 +864,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/avidemux-install-to-lib.patch		\
   %D%/packages/patches/awesome-reproducible-png.patch		\
   %D%/packages/patches/aws-c-cal-cmake-prefix.patch		\
+  %D%/packages/patches/aws-c-compression-cmake-prefix.patch	\
   %D%/packages/patches/aws-c-event-stream-cmake-prefix.patch  \
   %D%/packages/patches/aws-c-http-cmake-prefix.patch		\
   %D%/packages/patches/aws-c-http-disable-networking-tests.patch\
diff --git a/gnu/packages/c.scm b/gnu/packages/c.scm
index 3bd9234767..a9b92cb6a1 100644
--- a/gnu/packages/c.scm
+++ b/gnu/packages/c.scm
@@ -743,3 +743,30 @@ low level functionality for coroutines.")
 specifications.")
     (home-page "https://github.com/awslabs/aws-c-http")
     (license license:asl2.0)))
+
+(define-public aws-c-compression
+  (package
+    (name "aws-c-compression")
+    (version "0.2.13")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url (string-append "https://github.com/awslabs/" name))
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "0zqfxi0fdgapfsfgvsindv63pq7vyl1s376qkpv4jgflyb1v6gp5"))
+              (patches (search-patches "aws-c-compression-cmake-prefix.patch"))))
+    (build-system cmake-build-system)
+    (arguments
+     '(#:configure-flags
+       '("-DBUILD_SHARED_LIBS=ON")))
+    (propagated-inputs
+     `(("aws-c-common" ,aws-c-common)))
+    (synopsis "Amazon Web Services compression library")
+    (description
+     "This library provides a C99 implementation of compression algorithms,
+currently limited to Huffman encoding and decoding.")
+    (home-page "https://github.com/awslabs/aws-c-compression")
+    (license license:asl2.0)))
diff --git a/gnu/packages/patches/aws-c-compression-cmake-prefix.patch b/gnu/packages/patches/aws-c-compression-cmake-prefix.patch
new file mode 100644
index 0000000000..eefae19c4a
--- /dev/null
+++ b/gnu/packages/patches/aws-c-compression-cmake-prefix.patch
@@ -0,0 +1,13 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -5,6 +5,10 @@ if (POLICY CMP0069)
+     cmake_policy(SET CMP0069 NEW) # Enable LTO/IPO if available in the compiler, see AwsCFlags
+ endif()
+ 
++if (DEFINED ENV{CMAKE_PREFIX_PATH})
++    set(CMAKE_PREFIX_PATH $ENV{CMAKE_PREFIX_PATH})
++endif()
++
+ if (DEFINED CMAKE_PREFIX_PATH)
+     file(TO_CMAKE_PATH "${CMAKE_PREFIX_PATH}" CMAKE_PREFIX_PATH)
+ endif()
-- 
2.33.0


[-- Attachment #8: 0006-gnu-Add-aws-c-http.patch --]
[-- Type: application/octet-stream, Size: 6491 bytes --]

From 8b4006ef6c7c1c3a295a602357f8e48b760238a4 Mon Sep 17 00:00:00 2001
From: Greg Hogan <code@greghogan.com>
Date: Fri, 30 Apr 2021 13:58:33 +0000
Subject: [PATCH 06/12] gnu: Add aws-c-http.

* gnu/packages/c.scm (aws-c-http): New variable.
* gnu/packages/patches/aws-c-http-cmake-prefix.patch,
gnu/packages/patches/aws-c-http-disable-networking-tests.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
---
 gnu/local.mk                                  |  2 +
 gnu/packages/c.scm                            | 31 ++++++++++++
 .../patches/aws-c-http-cmake-prefix.patch     | 13 +++++
 .../aws-c-http-disable-networking-tests.patch | 48 +++++++++++++++++++
 4 files changed, 94 insertions(+)
 create mode 100644 gnu/packages/patches/aws-c-http-cmake-prefix.patch
 create mode 100644 gnu/packages/patches/aws-c-http-disable-networking-tests.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index e1b6b79343..7b22b80eba 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -865,6 +865,8 @@ dist_patch_DATA =						\
   %D%/packages/patches/awesome-reproducible-png.patch		\
   %D%/packages/patches/aws-c-cal-cmake-prefix.patch		\
   %D%/packages/patches/aws-c-event-stream-cmake-prefix.patch  \
+  %D%/packages/patches/aws-c-http-cmake-prefix.patch		\
+  %D%/packages/patches/aws-c-http-disable-networking-tests.patch\
   %D%/packages/patches/aws-c-io-cmake-prefix.patch		\
   %D%/packages/patches/aws-c-io-disable-networking-tests.patch	\
   %D%/packages/patches/aws-checksums-cmake-prefix.patch		\
diff --git a/gnu/packages/c.scm b/gnu/packages/c.scm
index 35e8c5e1d0..3bd9234767 100644
--- a/gnu/packages/c.scm
+++ b/gnu/packages/c.scm
@@ -712,3 +712,34 @@ cryptographic primitives for the @acronym{AWS,Amazon Web Services} SDK.")
     (description "The @acronym{PCL, Portable Coroutine Library} implements the
 low level functionality for coroutines.")
     (license license:gpl2+)))
+
+(define-public aws-c-http
+  (package
+    (name "aws-c-http")
+    (version "0.6.4")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url (string-append "https://github.com/awslabs/" name))
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "18xlgz68zizkcp784bs6hkyx0gvp0f1p076i46z653bcd3qa87b4"))
+              (patches
+               (search-patches
+                "aws-c-http-cmake-prefix.patch"
+                "aws-c-http-disable-networking-tests.patch"))))
+    (build-system cmake-build-system)
+    (arguments
+     '(#:configure-flags
+       '("-DBUILD_SHARED_LIBS=ON")))
+    (propagated-inputs
+     `(("aws-c-compression" ,aws-c-compression)
+       ("aws-c-io" ,aws-c-io)))
+    (synopsis "Amazon Web Services HTTP library")
+    (description
+     "This library provides a C99 implementation of the HTTP/1.1 and HTTP/2
+specifications.")
+    (home-page "https://github.com/awslabs/aws-c-http")
+    (license license:asl2.0)))
diff --git a/gnu/packages/patches/aws-c-http-cmake-prefix.patch b/gnu/packages/patches/aws-c-http-cmake-prefix.patch
new file mode 100644
index 0000000000..ec650a7e82
--- /dev/null
+++ b/gnu/packages/patches/aws-c-http-cmake-prefix.patch
@@ -0,0 +1,13 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -7,6 +7,10 @@ endif()
+ 
+ option(ENABLE_PROXY_INTEGRATION_TESTS "Whether to run the proxy integration tests that rely on a proxy server installed and running locally" OFF)
+ 
++if (DEFINED ENV{CMAKE_PREFIX_PATH})
++    set(CMAKE_PREFIX_PATH $ENV{CMAKE_PREFIX_PATH})
++endif()
++
+ if (DEFINED CMAKE_PREFIX_PATH)
+     file(TO_CMAKE_PATH "${CMAKE_PREFIX_PATH}" CMAKE_PREFIX_PATH)
+ endif()
diff --git a/gnu/packages/patches/aws-c-http-disable-networking-tests.patch b/gnu/packages/patches/aws-c-http-disable-networking-tests.patch
new file mode 100644
index 0000000000..9bfd422341
--- /dev/null
+++ b/gnu/packages/patches/aws-c-http-disable-networking-tests.patch
@@ -0,0 +1,48 @@
+--- a/tests/CMakeLists.txt
++++ b/tests/CMakeLists.txt
+@@ -136,8 +136,8 @@ add_test_case(strutil_trim_http_whitespace)
+ add_test_case(strutil_is_http_token)
+ add_test_case(strutil_is_lowercase_http_token)
+ 
+-add_net_test_case(tls_download_medium_file_h1)
+-add_net_test_case(tls_download_medium_file_h2)
++#add_net_test_case(tls_download_medium_file_h1)
++#add_net_test_case(tls_download_medium_file_h2)
+ 
+ add_test_case(websocket_decoder_sanity_check)
+ add_test_case(websocket_decoder_simplest_frame)
+@@ -438,21 +438,21 @@ add_test_case(connection_setup_shutdown)
+ 
+ # connection manager tests
+ # unit tests where connections are mocked
+-add_net_test_case(test_connection_manager_setup_shutdown)
+-add_net_test_case(test_connection_manager_acquire_release_mix_synchronous)
+-add_net_test_case(test_connection_manager_connect_callback_failure)
+-add_net_test_case(test_connection_manager_connect_immediate_failure)
+-add_net_test_case(test_connection_manager_proxy_setup_shutdown)
+-add_net_test_case(test_connection_manager_idle_culling_single)
+-add_net_test_case(test_connection_manager_idle_culling_many)
+-add_net_test_case(test_connection_manager_idle_culling_mixture)
++#add_net_test_case(test_connection_manager_setup_shutdown)
++#add_net_test_case(test_connection_manager_acquire_release_mix_synchronous)
++#add_net_test_case(test_connection_manager_connect_callback_failure)
++#add_net_test_case(test_connection_manager_connect_immediate_failure)
++#add_net_test_case(test_connection_manager_proxy_setup_shutdown)
++#add_net_test_case(test_connection_manager_idle_culling_single)
++#add_net_test_case(test_connection_manager_idle_culling_many)
++#add_net_test_case(test_connection_manager_idle_culling_mixture)
+ 
+ # tests where we establish real connections
+-add_net_test_case(test_connection_manager_single_connection)
+-add_net_test_case(test_connection_manager_many_connections)
+-add_net_test_case(test_connection_manager_acquire_release)
+-add_net_test_case(test_connection_manager_close_and_release)
+-add_net_test_case(test_connection_manager_acquire_release_mix)
++#add_net_test_case(test_connection_manager_single_connection)
++#add_net_test_case(test_connection_manager_many_connections)
++#add_net_test_case(test_connection_manager_acquire_release)
++#add_net_test_case(test_connection_manager_close_and_release)
++#add_net_test_case(test_connection_manager_acquire_release_mix)
+ 
+ 
+ add_test_case(h1_server_sanity_check)
-- 
2.33.0


[-- Attachment #9: 0003-gnu-aws-c-common-Update-to-0.6.2.patch --]
[-- Type: application/octet-stream, Size: 1105 bytes --]

From 98f216b533108b19b15e78b98be112d453cea4fa Mon Sep 17 00:00:00 2001
From: Greg Hogan <code@greghogan.com>
Date: Fri, 30 Apr 2021 13:51:13 +0000
Subject: [PATCH 03/12] gnu: aws-c-common: Update to 0.6.2.

* gnu/packages/c.scm (aws-c-common): Update to 0.6.2.
---
 gnu/packages/c.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/c.scm b/gnu/packages/c.scm
index 7fdac40a97..0b58e9a527 100644
--- a/gnu/packages/c.scm
+++ b/gnu/packages/c.scm
@@ -553,7 +553,7 @@ portability.")
 (define-public aws-c-common
   (package
     (name "aws-c-common")
-    (version "0.5.3")
+    (version "0.6.2")
     (source (origin
               (method git-fetch)
               (uri (git-reference
@@ -562,7 +562,7 @@ portability.")
               (file-name (git-file-name name version))
               (sha256
                (base32
-                "03fcvh3l1l6fkzkcbaprk10qmy8l77zhmh60h1px2ik09sqd9p72"))))
+                "17iknzqs6dl0ixajplc47ylkyynwpi3x2dxh56wa8ylhgy53d09x"))))
     (build-system cmake-build-system)
     (arguments
      '(#:configure-flags
-- 
2.33.0


[-- Attachment #10: 0005-gnu-aws-c-cal-Update-to-0.5.11.patch --]
[-- Type: application/octet-stream, Size: 1231 bytes --]

From ebc2580813b6d29c9da5fa35746d3eebf2a7c478 Mon Sep 17 00:00:00 2001
From: Greg Hogan <code@greghogan.com>
Date: Wed, 30 Jun 2021 15:35:04 +0000
Subject: [PATCH 05/12] gnu: aws-c-cal: Update to 0.5.11.

* gnu/packages/c.scm (aws-c-cal): Update to 0.5.11.
---
 gnu/packages/c.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/c.scm b/gnu/packages/c.scm
index 61a45b6330..35e8c5e1d0 100644
--- a/gnu/packages/c.scm
+++ b/gnu/packages/c.scm
@@ -668,7 +668,7 @@ event-driven, asynchronous network application protocols.")
 (define-public aws-c-cal
   (package
     (name "aws-c-cal")
-    (version "0.4.5")
+    (version "0.5.11")
     (source (origin
               (method git-fetch)
               (uri (git-reference
@@ -677,7 +677,7 @@ event-driven, asynchronous network application protocols.")
               (file-name (git-file-name name version))
               (sha256
                (base32
-                "04acra1mnzw9q7jycs5966akfbgnx96hkrq90nq0dhw8pvarlyv6"))
+                "0rqqk4n56h8sf4q070rhgjwas04j8h0vq4wl1alq5l1rqq72qqdf"))
               (patches (search-patches "aws-c-cal-cmake-prefix.patch"))))
     (build-system cmake-build-system)
     (arguments
-- 
2.33.0


[-- Attachment #11: 0004-gnu-aws-c-io-Update-to-0.10.5.patch --]
[-- Type: application/octet-stream, Size: 6276 bytes --]

From f07af24876fc1da88439afda9fd0651c5c3aab63 Mon Sep 17 00:00:00 2001
From: Greg Hogan <code@greghogan.com>
Date: Fri, 30 Apr 2021 13:51:36 +0000
Subject: [PATCH 04/12] gnu: aws-c-io: Update to 0.10.5.

* gnu/packages/c.scm (aws-c-io): Update to 0.10.5.
* gnu/packages/patches/aws-c-io-disable-networking-tests.patch: Update.
* gnu/local.mk: Fix formatting.

aws-c-io 0.10.5
---
 gnu/local.mk                                  |  2 +-
 gnu/packages/c.scm                            |  4 +--
 .../aws-c-io-disable-networking-tests.patch   | 28 +++++++++++++++++--
 3 files changed, 28 insertions(+), 6 deletions(-)

diff --git a/gnu/local.mk b/gnu/local.mk
index ac5de2a0df..e1b6b79343 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -866,7 +866,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/aws-c-cal-cmake-prefix.patch		\
   %D%/packages/patches/aws-c-event-stream-cmake-prefix.patch  \
   %D%/packages/patches/aws-c-io-cmake-prefix.patch		\
-  %D%/packages/patches/aws-c-io-disable-networking-tests.patch		\
+  %D%/packages/patches/aws-c-io-disable-networking-tests.patch	\
   %D%/packages/patches/aws-checksums-cmake-prefix.patch		\
   %D%/packages/patches/azr3.patch				\
   %D%/packages/patches/bash-reproducible-linux-pgrp-pipe.patch	\
diff --git a/gnu/packages/c.scm b/gnu/packages/c.scm
index 0b58e9a527..61a45b6330 100644
--- a/gnu/packages/c.scm
+++ b/gnu/packages/c.scm
@@ -637,7 +637,7 @@ communication.")
 (define-public aws-c-io
   (package
     (name "aws-c-io")
-    (version "0.9.2")
+    (version "0.10.5")
     (source (origin
               (method git-fetch)
               (uri (git-reference
@@ -646,7 +646,7 @@ communication.")
               (file-name (git-file-name name version))
               (sha256
                (base32
-                "1vwyf1pm0hhcypyjc9xh9x7y50ic79xlbck1yf9d9wz0bnh43p7v"))
+                "1jrnzs803jqprnvbw6rqr834qld5sd7flaqzgssp3099m189szpq"))
               (patches
                (search-patches
                 "aws-c-io-cmake-prefix.patch"
diff --git a/gnu/packages/patches/aws-c-io-disable-networking-tests.patch b/gnu/packages/patches/aws-c-io-disable-networking-tests.patch
index 09fe11310c..e2e3afea13 100644
--- a/gnu/packages/patches/aws-c-io-disable-networking-tests.patch
+++ b/gnu/packages/patches/aws-c-io-disable-networking-tests.patch
@@ -26,7 +26,7 @@
  add_test_case(channel_duplicate_shutdown)
 -add_net_test_case(channel_connect_some_hosts_timeout)
 +#add_net_test_case(channel_connect_some_hosts_timeout)
-
+ 
 -add_net_test_case(test_default_with_ipv6_lookup)
 +#add_net_test_case(test_default_with_ipv6_lookup)
  add_test_case(test_resolver_ipv6_address_lookup)
@@ -38,7 +38,7 @@
  add_test_case(test_resolver_ttls)
  add_test_case(test_resolver_connect_failure_recording)
  add_test_case(test_resolver_ttl_refreshes_on_resolve)
-
+ 
  add_net_test_case(test_resolver_listener_create_destroy)
 -add_net_test_case(test_resolver_add_listener_before_host)
 -add_net_test_case(test_resolver_add_listener_after_host)
@@ -49,25 +49,41 @@
  add_net_test_case(test_resolver_listener_host_re_add_fn)
  add_net_test_case(test_resolver_listener_multiple_results)
  add_net_test_case(test_resolver_listener_address_expired_fn)
-@@ -119,20 +119,20 @@ add_test_case(socket_handler_close)
+@@ -121,11 +121,11 @@ add_test_case(socket_handler_close)
  if (NOT BYO_CRYPTO)
      add_net_test_case(test_concurrent_cert_import)
      add_test_case(tls_channel_echo_and_backpressure_test)
 -    add_net_test_case(tls_client_channel_negotiation_error_expired)
 -    add_net_test_case(tls_client_channel_negotiation_error_wrong_host)
+-    add_net_test_case(tls_client_channel_negotiation_error_wrong_host_with_ca_override)
 -    add_net_test_case(tls_client_channel_negotiation_error_self_signed)
 -    add_net_test_case(tls_client_channel_negotiation_error_untrusted_root)
 +    #add_net_test_case(tls_client_channel_negotiation_error_expired)
 +    #add_net_test_case(tls_client_channel_negotiation_error_wrong_host)
++    #add_net_test_case(tls_client_channel_negotiation_error_wrong_host_with_ca_override)
 +    #add_net_test_case(tls_client_channel_negotiation_error_self_signed)
 +    #add_net_test_case(tls_client_channel_negotiation_error_untrusted_root)
      #track these down in s2n and find out why that aren't failing.
      #add_net_test_case(tls_client_channel_negotiation_error_revoked)
      #add_net_test_case(tls_client_channel_negotiation_error_pinning)
+@@ -133,23 +133,23 @@ if (NOT BYO_CRYPTO)
+     # once done, add these tests as well
+     #add_net_test_case(tls_client_channel_negotiation_no_verify_revoked)
+     #add_net_test_case(tls_client_channel_negotiation_no_verify_pinning)
+-    add_net_test_case(tls_client_channel_negotiation_no_verify_expired)
+-    add_net_test_case(tls_client_channel_negotiation_no_verify_wrong_host)
+-    add_net_test_case(tls_client_channel_negotiation_no_verify_self_signed)
+-    add_net_test_case(tls_client_channel_negotiation_no_verify_untrusted_root)
+-
 -    add_net_test_case(tls_client_channel_negotiation_error_socket_closed)
 -    add_net_test_case(tls_client_channel_negotiation_success)
 -    add_net_test_case(tls_client_channel_negotiation_success_ecc256)
 -    add_net_test_case(tls_client_channel_negotiation_success_ecc384)
++    #add_net_test_case(tls_client_channel_negotiation_no_verify_expired)
++    #add_net_test_case(tls_client_channel_negotiation_no_verify_wrong_host)
++    #add_net_test_case(tls_client_channel_negotiation_no_verify_self_signed)
++    #add_net_test_case(tls_client_channel_negotiation_no_verify_untrusted_root)
++
 +    #add_net_test_case(tls_client_channel_negotiation_error_socket_closed)
 +    #add_net_test_case(tls_client_channel_negotiation_success)
 +    #add_net_test_case(tls_client_channel_negotiation_success_ecc256)
@@ -79,3 +95,9 @@
      add_net_test_case(test_tls_negotiation_timeout)
      add_net_test_case(tls_double_channel)
      add_net_test_case(alpn_successfully_negotiates)
+     add_net_test_case(alpn_no_protocol_message)
+-    add_net_test_case(test_ecc_cert_import)
++    #add_net_test_case(test_ecc_cert_import)
+     add_test_case(alpn_error_creating_handler)
+     add_test_case(tls_destroy_null_context)
+     add_test_case(tls_channel_statistics_test)
-- 
2.33.0


[-- Attachment #12: 0001-gnu-s2n-Update-to-1.0.10-7f43b102.patch --]
[-- Type: application/octet-stream, Size: 3394 bytes --]

From 416b84dae25ba0e0d4b2aa3fcf5e3414fd857818 Mon Sep 17 00:00:00 2001
From: Greg Hogan <code@greghogan.com>
Date: Thu, 18 Mar 2021 17:28:07 +0000
Subject: [PATCH 01/12] gnu: s2n: Update to 1.0.10-7f43b102.

* gnu/packages/tls.scm (s2n): Update to 1.0.10-7f43b102.
[source, home-page]: Remove URL redirect.
[arguments]: Enable testing.
---
 gnu/packages/tls.scm | 56 ++++++++++++++++++++++----------------------
 1 file changed, 28 insertions(+), 28 deletions(-)

diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm
index 69ed9de11f..564e52086a 100644
--- a/gnu/packages/tls.scm
+++ b/gnu/packages/tls.scm
@@ -1141,39 +1141,39 @@ derived from Mozilla's collection.")
       (license license:mpl2.0))))
 
 (define-public s2n
-  (package
-    (name "s2n")
-    (version "1.0.10")
-    (source (origin
-              (method git-fetch)
-              (uri (git-reference
-                    (url (string-append "https://github.com/awslabs/" name))
-                    (commit (string-append "v" version))))
-              (file-name (git-file-name name version))
-              (sha256
-               (base32
-                "0ampvh2n235hhd9nabgjjvja7d5r5kj45q56ass1k8g52a6xg0jq"))))
-    (build-system cmake-build-system)
-    (arguments
-     '(#:tests? #f                      ; tests fail to build for static library
-       #:configure-flags
-       '("-DBUILD_TESTING=OFF"
-         "-DBUILD_SHARED_LIBS=ON")))
-    (propagated-inputs
-     `(("openssl" ,openssl)
-       ("openssl:static" ,openssl "static")))
-    (synopsis "SSL/TLS implementation in C99")
-    (description
-     "This library provides a C99 implementation of SSL/TLS.  It is designed to
-be familiar to users of the widely-used POSIX I/O APIs.  It supports blocking,
-non-blocking, and full-duplex I/O.  There are no locks or mutexes.
+  (let* ((commit "7f43b102def1d52422f6c3e48d5cb3e6dd26c646")
+         (revision "1"))
+    (package
+      (name "s2n")
+      (version (git-version "1.0.10" revision commit))
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url "https://github.com/aws/s2n-tls")
+                      (commit commit)))
+                (file-name (git-file-name name version))
+                (sha256
+                 (base32
+                  "06rqg0vcispi63cmcza9j7ix80l0w6wmbw81qlg4fq8l1lg9nyvl"))))
+      (build-system cmake-build-system)
+      (arguments
+       '(#:configure-flags
+         '("-DBUILD_SHARED_LIBS=ON")))
+      (propagated-inputs
+       `(("openssl" ,openssl)
+         ("openssl:static" ,openssl "static")))
+      (synopsis "SSL/TLS implementation in C99")
+      (description
+       "This library provides a C99 implementation of SSL/TLS.  It is designed
+to be familiar to users of the widely-used POSIX I/O APIs.  It supports
+blocking, non-blocking, and full-duplex I/O.  There are no locks or mutexes.
 
 As it can be difficult to keep track of which encryption algorithms and
 protocols are best to use, s2n-tls features a simple API to use the latest
 default set of preferences.  Remaining on a specific version for backwards
 compatibility is also supported.")
-    (home-page "https://github.com/awslabs/s2n")
-    (license license:asl2.0)))
+    (home-page "https://github.com/aws/s2n-tls")
+    (license license:asl2.0))))
 
 (define-public wolfssl
   (package
-- 
2.33.0


[-- Attachment #13: 0002-gnu-Add-aws-lc.patch --]
[-- Type: application/octet-stream, Size: 1876 bytes --]

From b63e7fa3b6e0ca93de1bbd7f4e555466630adfce Mon Sep 17 00:00:00 2001
From: Greg Hogan <code@greghogan.com>
Date: Thu, 1 Jul 2021 14:37:50 +0000
Subject: [PATCH 02/12] gnu: Add aws-lc.

* gnu/packages/tls.scm (aws-lc): New variable.
---
 gnu/packages/tls.scm | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm
index 564e52086a..74a88e1b3d 100644
--- a/gnu/packages/tls.scm
+++ b/gnu/packages/tls.scm
@@ -1205,3 +1205,30 @@ and DTLS 1.2, is up to 20 times smaller than OpenSSL, and offers progressive
 ciphers such as ChaCha20, Curve25519, NTRU, and Blake2b.")
     (home-page "https://www.wolfssl.com/")
     (license license:gpl2+))) ; Audit
+
+(define-public aws-lc
+  (let ((commit "d0a5455417d80e68581e197d95720c3fb25e3926")
+        (revision "0"))
+    (package
+      (name "aws-lc")
+      (version (git-version "0.0.0" revision commit))
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url (string-append "https://github.com/awslabs/" name))
+                      (commit commit)))
+                (file-name (git-file-name name version))
+                (sha256
+                 (base32
+                  "1ysj3x1f2lcdvwzyb9x3waykz1j7r21viv5z5vgc0ja9xv7znm9g"))))
+      (build-system cmake-build-system)
+      (arguments
+       '(#:tests? #f ; re-enable but with go and perl dependencies
+         #:configure-flags
+         '("-DBUILD_SHARED_LIBS=ON")))
+      (synopsis "General purpose cryptographic library")
+      (description "AWS libcrypto (aws-lc) contains portable C implementations
+of algorithms needed for TLS and common applications, and includes optimized
+assembly versions for x86 and ARM.")
+      (home-page "https://github.com/awslabs/aws-lc")
+      (license license:asl2.0))))
-- 
2.33.0


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* bug#51084: [PATCH 0/12] gnu: aws-sdk-cpp: Update to 1.9.92.
  2021-10-07 14:09 [bug#51084] [PATCH 0/12] gnu: aws-sdk-cpp: Update to 1.9.92 Greg Hogan
@ 2021-10-15 22:05 ` Ludovic Courtès
  2021-10-18 12:47   ` [bug#51084] " Greg Hogan
  0 siblings, 1 reply; 3+ messages in thread
From: Ludovic Courtès @ 2021-10-15 22:05 UTC (permalink / raw)
  To: Greg Hogan; +Cc: 51084-done

Hi,

Greg Hogan <code@greghogan.com> skribis:

> The aws-sdk-cpp package no longer builds against the latest versions of its
> aws library dependencies. These patches update aws-sdk-cpp to version 1.9
> and sets the AWS library versions to those of the referenced git submodules.
>
> This patchset replaces #48704 (which had downgrades to aws-c-common and
> aws-c-io).

I pushed the whole series (the latest patch is 7-month old!):

  ef0c65969b gnu: aws-sdk-cpp: Update to 1.9.92.
  5ed42eb9a0 gnu: Add aws-crt-cpp.
  2a0fcc31f7 gnu: Add aws-c-mqtt.
  b3c1c37d74 gnu: Add aws-c-s3.
  1f1bb634c3 gnu: Add aws-c-auth.
  2069238cb3 gnu: Add aws-c-compression.
  d9b8cfd6c6 gnu: Add aws-c-http.
  d061193e78 gnu: aws-c-cal: Update to 0.5.11.
  64aaf61762 gnu: aws-c-io: Update to 0.10.5.
  14a282aa50 gnu: aws-c-common: Update to 0.6.2.
  da9272fa00 gnu: Add aws-lc.
  02f849ad7a gnu: s2n: Update to 1.0.10-7f43b102.

Note that some patches lack comments, as reported by ‘guix lint’.  It’s
okay in this case but it’d be nice to systematically have at least one
line at the top describing the content and status of the patch.

Thanks!

Ludo’.




^ permalink raw reply	[flat|nested] 3+ messages in thread

* [bug#51084] [PATCH 0/12] gnu: aws-sdk-cpp: Update to 1.9.92.
  2021-10-15 22:05 ` bug#51084: " Ludovic Courtès
@ 2021-10-18 12:47   ` Greg Hogan
  0 siblings, 0 replies; 3+ messages in thread
From: Greg Hogan @ 2021-10-18 12:47 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: 51084-done

[-- Attachment #1: Type: text/plain, Size: 683 bytes --]

On Fri, Oct 15, 2021 at 6:05 PM Ludovic Courtès <ludo@gnu.org> wrote:

> Note that some patches lack comments, as reported by ‘guix lint’.  It’s
>
okay in this case but it’d be nice to systematically have at least one
> line at the top describing the content and status of the patch.
>

Thanks, Ludo’.

I will submit a new patchset with many of the patches removed and replaced
with the configure flag "ENABLE_NET_TESTS=OFF". This is much more
sustainable and I should have looked for this earlier given the distinction
between "add_net_test_case" and "add_test_case" when defining tests. I will
document the remaining patches and the upgrade tree.

Greg

[-- Attachment #2: Type: text/html, Size: 1170 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2021-10-18 13:11 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-10-07 14:09 [bug#51084] [PATCH 0/12] gnu: aws-sdk-cpp: Update to 1.9.92 Greg Hogan
2021-10-15 22:05 ` bug#51084: " Ludovic Courtès
2021-10-18 12:47   ` [bug#51084] " Greg Hogan

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).