[PATCH 0/4] gnu: Add aws-sdk-cpp.

  • Done
  • quality assurance status badge
Details
2 participants
  • Greg Hogan
  • Ludovic Courtès
Owner
unassigned
Submitted by
Greg Hogan
Severity
normal
G
G
Greg Hogan wrote on 10 Oct 2020 20:13
(address . guix-patches@gnu.org)
CA+3U0Zmi2puFkuccZ30OgA8VTbN7wvgyVT8wNVpe1vAB9R6YZQ@mail.gmail.com
2 0 gnu/local.mk
72 0 gnu/packages/c.scm
38 0 gnu/packages/cpp.scm
13 0
gnu/packages/patches/aws-c-event-stream-read-cmake-prefix-path.patch
13 0
gnu/packages/patches/aws-checksums-read-cmake-prefix-path.patch
Attachment: file
G
G
Greg Hogan wrote on 10 Oct 2020 20:16
[PATCH 1/4] gnu: Add aws-c-common.
(address . 43913@debbugs.gnu.org)
CA+3U0ZnWM=R0hcQZYZQKj5+q9+U7p_d8kr-v7YVdBmCKGfEgAA@mail.gmail.com
From 87e3b9f4503d8e986b2b3fa2a1fd4a55034c212d Mon Sep 17 00:00:00 2001
From: Greg Hogan <code@greghogan.com>
Date: Sat, 10 Oct 2020 17:03:28 +0000
Subject: [PATCH 1/4] gnu: Add aws-c-common.

* gnu/packages/c.scm (aws-c-common): New variable.
---
gnu/packages/c.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)

Toggle diff (41 lines)
diff --git a/gnu/packages/c.scm b/gnu/packages/c.scm
index c1ae98ddd3..a86af02258 100644
--- a/gnu/packages/c.scm
+++ b/gnu/packages/c.scm
@@ -31,6 +31,7 @@
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix git-download)
+ #:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (guix build-system trivial)
#:use-module (gnu packages bootstrap)
@@ -473,3 +474,24 @@ avoiding distractions when studying code that uses
@code{#ifdef} heavily for
portability.")
(license (list license:bsd-2 ;all files except...
license:bsd-3)))) ;...the unidef.1 manual page
+
+(define-public aws-c-common
+ (package
+ (name "aws-c-common")
+ (version "0.4.59")
+ (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
+ "0wfr9iby97yqiii6df4vb1m9vk5y9navgri92j698z90m73silpp"))))
+ (build-system cmake-build-system)
+ (synopsis "Core package for AWS SDK for C")
+ (description
+ "Provides C99 primitives, configuration, data structures, and error
+handling for the AWS SDK for C.")
+ (home-page "https://github.com/awslabs/aws-c-common")
+ (license license:asl2.0)))
--
2.28.0
Attachment: file
G
G
Greg Hogan wrote on 10 Oct 2020 20:18
[PATCH 2/4] gnu: Add aws-checksums.
(address . 43913@debbugs.gnu.org)
CA+3U0ZkjyeBfFQ=kxnsCc36V=VgwSQGwPB-tfA6u57i0HAK6mw@mail.gmail.com
From b7720ade357d033cd0e162f5bd319a1f7be0e090 Mon Sep 17 00:00:00 2001
From: Greg Hogan <code@greghogan.com>
Date: Sat, 10 Oct 2020 17:41:08 +0000
Subject: [PATCH 2/4] gnu: Add aws-checksums.

* gnu/packages/c.scm (aws-checksums): New variable.
---
gnu/local.mk | 1 +
gnu/packages/c.scm | 25 +++++++++++++++++++
...aws-checksums-read-cmake-prefix-path.patch | 13 ++++++++++
3 files changed, 39 insertions(+)
create mode 100644
gnu/packages/patches/aws-checksums-read-cmake-prefix-path.patch

Toggle diff (78 lines)
diff --git a/gnu/local.mk b/gnu/local.mk
index 155de6c590..87e832d0c7 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -813,6 +813,7 @@ dist_patch_DATA = \
%D%/packages/patches/avogadro-python-eigen-lib.patch \
%D%/packages/patches/avidemux-install-to-lib.patch \
%D%/packages/patches/awesome-reproducible-png.patch \
+ %D%/packages/patches/aws-checksums-read-cmake-prefix-path.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/c.scm b/gnu/packages/c.scm
index a86af02258..a30e589753 100644
--- a/gnu/packages/c.scm
+++ b/gnu/packages/c.scm
@@ -34,6 +34,7 @@
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (guix build-system trivial)
+ #:use-module (gnu packages)
#:use-module (gnu packages bootstrap)
#:use-module (gnu packages bison)
#:use-module (gnu packages check)
@@ -495,3 +496,27 @@ portability.")
handling for the AWS SDK for C.")
(home-page "https://github.com/awslabs/aws-c-common")
(license license:asl2.0)))
+
+(define-public aws-checksums
+ (package
+ (name "aws-checksums")
+ (version "0.1.9")
+ (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
+ "0s3vfqks3i7jqc12anmcyrjv9rqpxiw0laykfpcmkh2j12017svz"))
+ (patches (search-patches
"aws-checksums-read-cmake-prefix-path.patch"))))
+ (build-system cmake-build-system)
+ (inputs
+ `(("aws-c-common" ,aws-c-common)))
+ (synopsis "Checksum package for AWS SDK for C")
+ (description
+ "Cross-Platform hardware accelerated CRC32c and CRC32 with fallback to
+efficient software implementations.")
+ (home-page "https://github.com/awslabs/aws-checksums")
+ (license license:asl2.0)))
diff --git
a/gnu/packages/patches/aws-checksums-read-cmake-prefix-path.patch
b/gnu/packages/patches/aws-checksums-read-cmake-prefix-path.patch
new file mode 100644
index 0000000000..f6a5c9ad9c
--- /dev/null
+++ b/gnu/packages/patches/aws-checksums-read-cmake-prefix-path.patch
@@ -0,0 +1,13 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -8,6 +8,10 @@
+ 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.28.0
Attachment: file
G
G
Greg Hogan wrote on 10 Oct 2020 20:19
[PATCH 3/4] gnu: Add aws-c-event-stream.
(address . 43913@debbugs.gnu.org)
CA+3U0ZnSQmaRuM0C64maP82zHkPayhi2c=Gj-ajYQY3d-KW78Q@mail.gmail.com
From f159d18e8444e4026a0b0ac16fcc7b6896ca96ba Mon Sep 17 00:00:00 2001
From: Greg Hogan <code@greghogan.com>
Date: Sat, 10 Oct 2020 17:47:45 +0000
Subject: [PATCH 3/4] gnu: Add aws-c-event-stream.

* gnu/packages/c.scm (aws-c-event-stream): New variable.
---
gnu/local.mk | 1 +
gnu/packages/c.scm | 25 +++++++++++++++++++
...-event-stream-read-cmake-prefix-path.patch | 13 ++++++++++
3 files changed, 39 insertions(+)
create mode 100644
gnu/packages/patches/aws-c-event-stream-read-cmake-prefix-path.patch

Toggle diff (70 lines)
diff --git a/gnu/local.mk b/gnu/local.mk
index 87e832d0c7..223c6346a9 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -813,6 +813,7 @@ dist_patch_DATA = \
%D%/packages/patches/avogadro-python-eigen-lib.patch \
%D%/packages/patches/avidemux-install-to-lib.patch \
%D%/packages/patches/awesome-reproducible-png.patch \
+ %D%/packages/patches/aws-c-event-stream-read-cmake-prefix-path.patch \
%D%/packages/patches/aws-checksums-read-cmake-prefix-path.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 a30e589753..e4e859b098 100644
--- a/gnu/packages/c.scm
+++ b/gnu/packages/c.scm
@@ -520,3 +520,28 @@ handling for the AWS SDK for C.")
efficient software implementations.")
(home-page "https://github.com/awslabs/aws-checksums")
(license license:asl2.0)))
+
+(define-public aws-c-event-stream
+ (package
+ (name "aws-c-event-stream")
+ (version "0.1.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
+ "1vl9ainc4klv0g9gk1iv4833bsllni6jxn6mwb0fnv2dnlz7zv9q"))
+ (patches (search-patches
"aws-c-event-stream-read-cmake-prefix-path.patch"))))
+ (build-system cmake-build-system)
+ (propagated-inputs
+ `(("aws-c-common" ,aws-c-common)))
+ (inputs
+ `(("aws-checksums" ,aws-checksums)))
+ (synopsis "Eventstream package for AWS SDK for C")
+ (description
+ "C99 implementation of the AWS EventStream content-type.")
+ (home-page "https://github.com/awslabs/aws-c-event-stream")
+ (license license:asl2.0)))
diff --git
a/gnu/packages/patches/aws-c-event-stream-read-cmake-prefix-path.patch
b/gnu/packages/patches/aws-c-event-stream-read-cmake-prefix-path.patch
new file mode 100644
index 0000000000..79655a910b
--- /dev/null
+++ b/gnu/packages/patches/aws-c-event-stream-read-cmake-prefix-path.patch
@@ -0,0 +1,13 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -3,6 +3,10 @@
+ cmake_minimum_required (VERSION 3.1)
+ project (aws-c-event-stream C)
+
++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.28.0
Attachment: file
G
G
Greg Hogan wrote on 10 Oct 2020 21:14
[PATCH 4/4] gnu: Add aws-sdk-cpp.
(address . 43913@debbugs.gnu.org)
CA+3U0ZksXLwwf5NdA0NThowN+MT7BY_Vh7oUNbeaCc7Q3OtPBA@mail.gmail.com
From 29da385ef4c5d164d479a86925260784a819b897 Mon Sep 17 00:00:00 2001
From: Greg Hogan <code@greghogan.com>
Date: Sat, 10 Oct 2020 17:52:19 +0000
Subject: [PATCH 4/4] gnu: Add aws-sdk-cpp.

* gnu/packages/cpp.scm (aws-sdk-cpp): New variable.
---
gnu/packages/cpp.scm | 36 ++++++++++++++++++++++++++++++++++++
1 file changed, 36 insertions(+)

Toggle diff (59 lines)
diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm
index 680a2ad520..3d3cc74c69 100644
--- a/gnu/packages/cpp.scm
+++ b/gnu/packages/cpp.scm
@@ -42,10 +42,12 @@
#:use-module (gnu packages)
#:use-module (gnu packages autotools)
#:use-module (gnu packages boost)
+ #:use-module (gnu packages c)
#:use-module (gnu packages check)
#:use-module (gnu packages code)
#:use-module (gnu packages compression)
#:use-module (gnu packages crypto)
+ #:use-module (gnu packages curl)
#:use-module (gnu packages gcc)
#:use-module (gnu packages libevent)
#:use-module (gnu packages libunwind)
@@ -730,3 +732,37 @@ of C++14 components which complements @code{std} and
Boost.")
; 32bit is not supported: https://github.com/facebook/folly/issues/103
(supported-systems '("aarch64" "x86_64-linux"))
(license license:asl2.0)))
+
+(define-public aws-sdk-cpp
+ (package
+ (name "aws-sdk-cpp")
+ (version "1.8.65")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url (string-append "https://github.com/awslabs/"
name))
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "057arm6c98hckbg0q5l9zr58659igysmx8nx4fgxcr4qrkdadh9l"))))
+ (build-system cmake-build-system)
+ (arguments
+ '(;; Tests are run during the build phase.
+ #:tests? #f
+ #:configure-flags
+ '("-DBUILD_SHARED_LIBS=OFF"
+ "-DBUILD_DEPS=OFF")))
+ (propagated-inputs
+ `(("aws-c-common" ,aws-c-common)
+ ("aws-c-event-stream" ,aws-c-event-stream)))
+ (inputs
+ `(("aws-checksums" ,aws-checksums)
+ ("curl" ,curl)
+ ("openssl" ,openssl)
+ ("zlib" ,zlib)))
+ (synopsis "AWS SDK for C++")
+ (description
+ "The AWS SDK for C++ provides a C++11 interface for AWS.")
+ (home-page "https://github.com/awslabs/aws-c-event-stream")
+ (license license:asl2.0)))
--
2.28.0
Attachment: file
L
L
Ludovic Courtès wrote on 23 Oct 2020 15:34
Re: [bug#43913] [PATCH 0/4] gnu: Add aws-sdk-cpp.
(name . Greg Hogan)(address . code@greghogan.com)(address . 43913@debbugs.gnu.org)
87d019nk11.fsf@gnu.org
Hi Greg,

Overall the patches LGTM. Two minor issues:

1. They were mangled on the way. Could you send them as attachments
or with ‘git send-email’ to this address?

2. Could you improve descriptions? In particular, please write full
sentences, explain acronyms, and expound a bit as you see fit:


Could you send updated patches?

Thanks, and sorry for the delay!

Ludo’.
G
G
Greg Hogan wrote on 9 Dec 2020 23:35
(name . Ludovic Courtès)(address . ludo@gnu.org)(address . 43913@debbugs.gnu.org)
CA+3U0ZmsGGkXukcZtun_VnONYxmc-HM_NE1dTYn8fMeZW595pQ@mail.gmail.com
Sending as attachments with improved descriptions; also, updated versions.

On Fri, Oct 23, 2020 at 9:34 AM Ludovic Courtès <ludo@gnu.org> wrote:

Toggle quote (19 lines)
> Hi Greg,
>
> Overall the patches LGTM. Two minor issues:
>
> 1. They were mangled on the way. Could you send them as attachments
> or with ‘git send-email’ to this address?
>
> 2. Could you improve descriptions? In particular, please write full
> sentences, explain acronyms, and expound a bit as you see fit:
>
>
> https://guix.gnu.org/manual/en/html_node/Synopses-and-Descriptions.html
>
> Could you send updated patches?
>
> Thanks, and sorry for the delay!
>
> Ludo’.
>
Attachment: file
L
L
Ludovic Courtès wrote on 17 Dec 2020 14:55
(name . Greg Hogan)(address . code@greghogan.com)(address . 43913-done@debbugs.gnu.org)
87r1noilkf.fsf@gnu.org
Hi Greg,

I pushed all four patches as commit
5686f5d7cdde6ba3149ef960149ff2ff323d49e2. I modified a couple of issues
reported by ‘guix lint’ on the way, notably patch file names that were
too long.

Thanks!

Ludo’.
Closed
?