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

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).