From: Greg Hogan <code@greghogan.com>
To: 48704@debbugs.gnu.org
Subject: [bug#48704] [PATCH 0/10] Update aws-sdk-cpp
Date: Thu, 27 May 2021 11:32:17 -0400 [thread overview]
Message-ID: <CA+3U0ZkficRHSAYTaaN35Bkgty+DPM177r3QYTCcPcBWLWpm+A@mail.gmail.com> (raw)
[-- Attachment #1.1: Type: text/plain, Size: 281 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 set the aws library versions to those of the referenced git submodules,
forcing downgrades to aws-c-common and aws-c-io.
Greg
[-- Attachment #1.2: Type: text/html, Size: 364 bytes --]
[-- Attachment #2: 0002-gnu-aws-c-common-Downgrade-to-0.5.1-6e57830a.patch --]
[-- Type: application/octet-stream, Size: 2610 bytes --]
From 3c17883add8372e3b1e59c221edec2f69b963771 Mon Sep 17 00:00:00 2001
From: Greg Hogan <code@greghogan.com>
Date: Fri, 30 Apr 2021 13:51:13 +0000
Subject: [PATCH 02/10] gnu: aws-c-common: Downgrade to 0.5.1-6e57830a.
* gnu/packages/c.scm (aws-c-common): Downgrade to 0.5.1-6e57830a.
---
gnu/packages/c.scm | 44 +++++++++++++++++++++++---------------------
1 file changed, 23 insertions(+), 21 deletions(-)
diff --git a/gnu/packages/c.scm b/gnu/packages/c.scm
index 931eb2bf3f..16e46fb87c 100644
--- a/gnu/packages/c.scm
+++ b/gnu/packages/c.scm
@@ -551,28 +551,30 @@ portability.")
license:bsd-3)))) ;...the unidef.1 manual page
(define-public aws-c-common
- (package
- (name "aws-c-common")
- (version "0.5.3")
- (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
- "03fcvh3l1l6fkzkcbaprk10qmy8l77zhmh60h1px2ik09sqd9p72"))))
- (build-system cmake-build-system)
- (arguments
- '(#:configure-flags
- '("-DBUILD_SHARED_LIBS=ON")))
- (synopsis "Amazon Web Services core C library")
- (description
- "This library provides common C99 primitives, configuration, data
+ (let* ((commit "6e57830a116b7b74eda407eeb96195eaa1aadb63")
+ (revision "0"))
+ (package
+ (name "aws-c-common")
+ (version (git-version "0.5.1" 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
+ "13hs8nl34nzbjclvc6nmv4ib6yz9m1gxb3yisckfg81ghmp08ank"))))
+ (build-system cmake-build-system)
+ (arguments
+ '(#:configure-flags
+ '("-DBUILD_SHARED_LIBS=ON")))
+ (synopsis "Amazon Web Services core C library")
+ (description
+ "This library provides common C99 primitives, configuration, data
structures, and error handling for the @acronym{AWS,Amazon Web Services} SDK.")
- (home-page "https://github.com/awslabs/aws-c-common")
- (license license:asl2.0)))
+ (home-page "https://github.com/awslabs/aws-c-common")
+ (license license:asl2.0))))
(define-public aws-checksums
(package
--
2.31.1
[-- Attachment #3: 0005-gnu-Add-aws-c-compression.patch --]
[-- Type: application/octet-stream, Size: 3373 bytes --]
From 580b5a936bd91f5daf00b20ae41b551ee3465ed2 Mon Sep 17 00:00:00 2001
From: Greg Hogan <code@greghogan.com>
Date: Fri, 30 Apr 2021 13:59:30 +0000
Subject: [PATCH 05/10] 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 5b38a26391..37573b5b7a 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -836,6 +836,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 f9037db005..08ce250333 100644
--- a/gnu/packages/c.scm
+++ b/gnu/packages/c.scm
@@ -726,3 +726,30 @@ cryptographic primitives for the @acronym{AWS,Amazon Web Services} SDK.")
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.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
+ "01l4z7i07qhrw0dqsr0wvdwrn4bd494a1klxsyjvq0dah6iswvlv"))
+ (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.31.1
[-- Attachment #4: 0004-gnu-Add-aws-c-http.patch --]
[-- Type: application/octet-stream, Size: 6486 bytes --]
From 3f80148ef55e16cf29d6388589e97bfcbcea4495 Mon Sep 17 00:00:00 2001
From: Greg Hogan <code@greghogan.com>
Date: Fri, 30 Apr 2021 13:58:33 +0000
Subject: [PATCH 04/10] 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 3ca711d4a5..5b38a26391 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -837,6 +837,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 985a1d9de7..f9037db005 100644
--- a/gnu/packages/c.scm
+++ b/gnu/packages/c.scm
@@ -695,3 +695,34 @@ event-driven, asynchronous network application protocols.")
cryptographic primitives for the @acronym{AWS,Amazon Web Services} SDK.")
(home-page "https://github.com/awslabs/aws-c-cal")
(license license:asl2.0)))
+
+(define-public aws-c-http
+ (package
+ (name "aws-c-http")
+ (version "0.6.2")
+ (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
+ "03d23yi1iprk3pic6i05ygljs687yanzp5r3m3s943mzd91axnd9"))
+ (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.31.1
[-- Attachment #5: 0001-gnu-s2n-Update-to-1.0.8.patch --]
[-- Type: application/octet-stream, Size: 1917 bytes --]
From 46da509fb753bf96f112958fefa4fc9de4904721 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/10] gnu: s2n: Update to 1.0.8.
* gnu/packages/tls.scm (s2n): Update to 1.0.8.
[source, home-page]: Remove URL redirect.
[arguments]: Enable testing.
---
gnu/packages/tls.scm | 14 ++++++--------
1 file changed, 6 insertions(+), 8 deletions(-)
diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm
index 174438ad87..464f1663d1 100644
--- a/gnu/packages/tls.scm
+++ b/gnu/packages/tls.scm
@@ -1046,26 +1046,24 @@ derived from Mozilla's collection.")
(define-public s2n
(package
(name "s2n")
- (version "1.0.0")
+ (version "1.0.8")
(source (origin
(method git-fetch)
(uri (git-reference
- (url (string-append "https://github.com/awslabs/" name))
+ (url "https://github.com/aws/s2n-tls")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
- "1q6kmgwb8jxmc4ijzk9pkqzz8lsbfsv9hyzqvy944w7306zx1r5h"))))
+ "07pa4yw48ai2li3slwmb55diaqila2aiwkihilkjcgkqli0sw91i"))))
(build-system cmake-build-system)
(arguments
- '(#:tests? #f ; tests fail to build for static library
- #:configure-flags
- '("-DBUILD_TESTING=OFF"
- "-DBUILD_SHARED_LIBS=ON")))
+ '(#:configure-flags
+ '("-DBUILD_SHARED_LIBS=ON")))
(propagated-inputs
`(("openssl" ,openssl)
("openssl:static" ,openssl "static")))
(synopsis "SSL/TLS implementation")
(description "This library provides a C99 implementation of SSL/TLS.")
- (home-page "https://github.com/awslabs/s2n")
+ (home-page "https://github.com/aws/s2n-tls")
(license license:asl2.0)))
--
2.31.1
[-- Attachment #6: 0003-gnu-aws-c-io-Downgrade-to-0.9.0.patch --]
[-- Type: application/octet-stream, Size: 6962 bytes --]
From 7569ac3f4f7fbb4ecc2b7d370a7f9b2e94f1ab64 Mon Sep 17 00:00:00 2001
From: Greg Hogan <code@greghogan.com>
Date: Fri, 30 Apr 2021 13:51:36 +0000
Subject: [PATCH 03/10] gnu: aws-c-io: Downgrade to 0.9.0.
* gnu/packages/c.scm (aws-c-io): Downgrade to 0.9.0.
* gnu/packages/patches/aws-c-io-disable-networking-tests.patch: Update.
* gnu/local.mk: Fix formatting.
---
gnu/local.mk | 2 +-
gnu/packages/c.scm | 4 +-
.../aws-c-io-disable-networking-tests.patch | 64 +++++++++----------
3 files changed, 35 insertions(+), 35 deletions(-)
diff --git a/gnu/local.mk b/gnu/local.mk
index f7d2b1146b..3ca711d4a5 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -838,7 +838,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 16e46fb87c..985a1d9de7 100644
--- a/gnu/packages/c.scm
+++ b/gnu/packages/c.scm
@@ -639,7 +639,7 @@ communication.")
(define-public aws-c-io
(package
(name "aws-c-io")
- (version "0.9.2")
+ (version "0.9.0")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -648,7 +648,7 @@ communication.")
(file-name (git-file-name name version))
(sha256
(base32
- "1vwyf1pm0hhcypyjc9xh9x7y50ic79xlbck1yf9d9wz0bnh43p7v"))
+ "0i1i88fb8cazrbx3cy5vn1a09zlx6kdk3rr3m7s7165b6drix8bm"))
(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..2999457e5a 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,33 +49,33 @@
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)
- 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_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_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)
-- 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_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_server_multiple_connections)
- add_net_test_case(tls_server_hangup_during_negotiation)
-- add_net_test_case(tls_client_channel_no_verify)
-+ #add_net_test_case(tls_client_channel_no_verify)
- add_net_test_case(test_tls_negotiation_timeout)
- add_net_test_case(tls_double_channel)
- add_net_test_case(alpn_successfully_negotiates)
+@@ -118,20 +118,20 @@ add_test_case(socket_handler_echo_and_backpressure)
+ add_test_case(socket_handler_close)
+
+ 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_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_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)
+-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_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_server_multiple_connections)
+ add_net_test_case(tls_server_hangup_during_negotiation)
+-add_net_test_case(tls_client_channel_no_verify)
++#add_net_test_case(tls_client_channel_no_verify)
+ add_net_test_case(test_tls_negotiation_timeout)
+ add_net_test_case(tls_double_channel)
+ add_test_case(tls_destroy_null_context)
--
2.31.1
[-- Attachment #7: 0006-gnu-Add-aws-c-auth.patch --]
[-- Type: application/octet-stream, Size: 8386 bytes --]
From 0f6ad66b9df547da0a32c1cd75f77af5664235ee Mon Sep 17 00:00:00 2001
From: Greg Hogan <code@greghogan.com>
Date: Fri, 30 Apr 2021 14:00:27 +0000
Subject: [PATCH 06/10] 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 37573b5b7a..9991877469 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -835,6 +835,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 08ce250333..2596580720 100644
--- a/gnu/packages/c.scm
+++ b/gnu/packages/c.scm
@@ -753,3 +753,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.5.1")
+ (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
+ "05gcm2218m2gdj2b96bp9zjqc2wfflkjzkz1lvy39vhw33lgrskh"))
+ (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.31.1
[-- Attachment #8: 0007-gnu-Add-aws-c-s3.patch --]
[-- Type: application/octet-stream, Size: 11280 bytes --]
From 5bb11bf4abbd229d6cc5659863a81f5787f545f4 Mon Sep 17 00:00:00 2001
From: Greg Hogan <code@greghogan.com>
Date: Fri, 30 Apr 2021 14:02:11 +0000
Subject: [PATCH 07/10] 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 | 137 ++++++++++++++++++
4 files changed, 183 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 9991877469..f42abbadbe 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -844,6 +844,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 2596580720..d81ab3a6c2 100644
--- a/gnu/packages/c.scm
+++ b/gnu/packages/c.scm
@@ -786,3 +786,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.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
+ "1nzwk41r5fbkh0r02lk3zjys8j95rknkw8j4206csszpbc1wnlsd"))
+ (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..ed5527479f
--- /dev/null
+++ b/gnu/packages/patches/aws-c-s3-disable-networking-tests.patch
@@ -0,0 +1,137 @@
+--- a/tests/CMakeLists.txt
++++ b/tests/CMakeLists.txt
+@@ -14,8 +14,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)
+@@ -28,68 +28,68 @@ 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_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_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_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_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_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_replace_quote_entities)
+-add_net_test_case(test_s3_different_endpoints)
++#add_net_test_case(test_s3_different_endpoints)
+ add_test_case(test_add_user_agent_header)
+-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)
++#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)
+
+ add_test_case(test_get_existing_compute_platform_info)
+ add_test_case(test_get_nonexistent_compute_platform_info)
--
2.31.1
[-- Attachment #9: 0008-gnu-Add-aws-c-mqtt.patch --]
[-- Type: application/octet-stream, Size: 3291 bytes --]
From ec1ba6a0cbae0baf0f1458a991d012912402f2b5 Mon Sep 17 00:00:00 2001
From: Greg Hogan <code@greghogan.com>
Date: Fri, 30 Apr 2021 14:02:44 +0000
Subject: [PATCH 08/10] 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 f42abbadbe..3b92a38030 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -842,6 +842,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 d81ab3a6c2..410d026ecf 100644
--- a/gnu/packages/c.scm
+++ b/gnu/packages/c.scm
@@ -817,3 +817,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.1")
+ (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
+ "1v9wfma0d784f49qan4m63j2vsvnywrfra0dbjbv60w90kx9xrjm"))
+ (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.31.1
[-- Attachment #10: 0009-gnu-Add-aws-crt-cpp.patch --]
[-- Type: application/octet-stream, Size: 6734 bytes --]
From c31527e457208fa54a179a4b2cf554625b11f74a Mon Sep 17 00:00:00 2001
From: Greg Hogan <code@greghogan.com>
Date: Fri, 30 Apr 2021 14:06:34 +0000
Subject: [PATCH 09/10] 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 | 46 +++++++++++++++++++
4 files changed, 100 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 3b92a38030..f64bbd4054 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -848,6 +848,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 3089094eb8..189f0b5132 100644
--- a/gnu/packages/cpp.scm
+++ b/gnu/packages/cpp.scm
@@ -821,6 +821,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 "e7c13cd8c49c3cf073da1840ad8a14032e6ec89a")
+ (revision "1"))
+ (package
+ (name "aws-crt-cpp")
+ (version (git-version "0.8.4" 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
+ "1wga2b483cjqvay05q20vqfxbir4baqkdy7drfkv1y0k0nm6dp4z"))
+ (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..48aec3255b
--- /dev/null
+++ b/gnu/packages/patches/aws-crt-cpp-disable-networking-tests.patch
@@ -0,0 +1,46 @@
+--- a/tests/CMakeLists.txt
++++ b/tests/CMakeLists.txt
+@@ -9,10 +9,10 @@ file(GLOB TESTS ${TEST_HDRS} ${TEST_SRC})
+ set(TEST_BINARY_NAME ${PROJECT_NAME}-tests)
+
+ add_test_case(EventLoopResourceSafety)
+-add_net_test_case(MqttClientResourceSafety)
++#add_net_test_case(MqttClientResourceSafety)
+ add_net_test_case(MqttClientNewConnectionUninitializedTlsContext)
+ add_test_case(ClientBootstrapResourceSafety)
+-add_net_test_case(TLSContextResourceSafety)
++#add_net_test_case(TLSContextResourceSafety)
+ add_net_test_case(TLSContextUninitializedNewConnectionOptions)
+ add_test_case(Base64RoundTrip)
+ add_test_case(DateTimeBinding)
+@@ -23,13 +23,13 @@ add_test_case(JsonExplicitNull)
+ add_test_case(SHA256ResourceSafety)
+ add_test_case(MD5ResourceSafety)
+ add_test_case(SHA256HMACResourceSafety)
+-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(IotPublishSubscribe)
+-add_net_test_case(HttpClientConnectionManagerResourceSafety)
+-add_net_test_case(HttpClientConnectionWithPendingAcquisitions)
+-add_net_test_case(HttpClientConnectionWithPendingAcquisitionsAndClosedConnections)
++#add_net_test_case(HttpClientConnectionManagerResourceSafety)
++#add_net_test_case(HttpClientConnectionWithPendingAcquisitions)
++#add_net_test_case(HttpClientConnectionWithPendingAcquisitionsAndClosedConnections)
+ add_test_case(DefaultResolution)
+ add_test_case(OptionalCopySafety)
+ add_test_case(OptionalMoveSafety)
+@@ -45,8 +45,8 @@ add_test_case(TestProviderStaticGet)
+ add_test_case(TestProviderEnvironmentGet)
+ add_test_case(TestProviderProfileGet)
+ add_test_case(TestProviderImdsGet)
+-add_test_case(TestProviderDefaultChainGet)
+-add_test_case(TestProviderDefaultChainManualTlsContextGet)
++#add_test_case(TestProviderDefaultChainGet)
++#add_test_case(TestProviderDefaultChainManualTlsContextGet)
+ add_test_case(TestProviderDelegateGet)
+ add_test_case(HttpRequestTestCreateDestroy)
+ add_test_case(Sigv4SigningTestCreateDestroy)
--
2.31.1
[-- Attachment #11: 0010-gnu-aws-sdk-cpp-Update-to-1.9.25.patch --]
[-- Type: application/octet-stream, Size: 7722 bytes --]
From 0562be5d4e1fce5a8a2bcc7d594ccf411393c292 Mon Sep 17 00:00:00 2001
From: Greg Hogan <code@greghogan.com>
Date: Thu, 18 Mar 2021 17:53:12 +0000
Subject: [PATCH 10/10] gnu: aws-sdk-cpp: Update to 1.9.25.
* 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.25.
[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 f64bbd4054..0a2b263676 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -850,6 +850,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 189f0b5132..f041e9ccc3 100644
--- a/gnu/packages/cpp.scm
+++ b/gnu/packages/cpp.scm
@@ -863,7 +863,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.25")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -872,7 +872,12 @@ aws-c-http, aws-c-io, aws-c-mqtt, aws-checksums, and s2n.")
(file-name (git-file-name name version))
(sha256
(base32
- "0jpfv9x82nq7hcix9in7qgrc8009dwpg6gr96hlgmcvqrqckd2r9"))))
+ "0gkyfq80sha511gjk9ldr4ip8kspg56nd6nc7dby693pxg68j5jw"))
+ (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.
@@ -881,11 +886,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.31.1
next reply other threads:[~2021-05-27 15:35 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-05-27 15:32 Greg Hogan [this message]
[not found] ` <handler.48704.B.16221295593683.ack@debbugs.gnu.org>
2021-10-18 12:49 ` bug#48704: Acknowledgement ([PATCH 0/10] Update aws-sdk-cpp) Greg Hogan
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://guix.gnu.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=CA+3U0ZkficRHSAYTaaN35Bkgty+DPM177r3QYTCcPcBWLWpm+A@mail.gmail.com \
--to=code@greghogan.com \
--cc=48704@debbugs.gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).