commit: 81e89e6f30ef16742a3cb4f61f8869eaf1f3d55c Author: Sven Eden <sven.eden <AT> prydeworx <DOT> com> AuthorDate: Tue Dec 8 09:14:59 2020 +0000 Commit: Joonas Niilola <juippis <AT> gentoo <DOT> org> CommitDate: Sun Dec 13 10:50:21 2020 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=81e89e6f
dev-libs/aws-c-io: IO/TLS module, for dev-libs/aws-c-event-stream This is a new dependency of dev-libs/aws-c-event-stream. Package-Manager: Portage-3.0.11, Repoman-3.0.2 Signed-off-by: Sven Eden <sven.eden <AT> prydeworx.com> Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org> dev-libs/aws-c-io/Manifest | 1 + dev-libs/aws-c-io/aws-c-io-0.7.0.ebuild | 40 ++++++++++++++++++++++ .../files/aws-c-io-0.7.0-cmake-prefix.patch | 12 +++++++ dev-libs/aws-c-io/metadata.xml | 23 +++++++++++++ 4 files changed, 76 insertions(+) diff --git a/dev-libs/aws-c-io/Manifest b/dev-libs/aws-c-io/Manifest new file mode 100644 index 00000000000..bca18fcf622 --- /dev/null +++ b/dev-libs/aws-c-io/Manifest @@ -0,0 +1 @@ +DIST aws-c-io-0.7.0.tar.gz 561762 BLAKE2B ffe8ac5de9fd5f57e7bc18e1d956f28567413d34ec23a7d0869065718039b1ab56aeae82fd8e24bf77f7393df2c1140308195cd8a4c6ff06cbc7843ae62d76c8 SHA512 b858a5a14cfea86c39f96963c4238ca0f90339befcbd6480e6353719d9846079764f8b42fbdc0cec2f99223bfe1c07fa2a014543fa3fe8a6357440e3cd1007f5 diff --git a/dev-libs/aws-c-io/aws-c-io-0.7.0.ebuild b/dev-libs/aws-c-io/aws-c-io-0.7.0.ebuild new file mode 100644 index 00000000000..9418e8ca2f4 --- /dev/null +++ b/dev-libs/aws-c-io/aws-c-io-0.7.0.ebuild @@ -0,0 +1,40 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit cmake + +DESCRIPTION="AWS SDK for C module, handles IO and TLS work for application protocols." +HOMEPAGE="https://github.com/awslabs/aws-c-io" +SRC_URI="https://github.com/awslabs/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="static-libs test" + +RESTRICT="!test? ( test )" + +BDEPEND=" + || ( <dev-util/cmake-3.19.0 + >dev-util/cmake-3.19.1 ) +" + +DEPEND=" + >=dev-libs/aws-c-cal-0.4.5:=[static-libs=] + >=dev-libs/aws-c-common-0.4.62:=[static-libs=] + >=dev-libs/s2n-0.10.21:=[static-libs=] +" + +PATCHES=( + "${FILESDIR}"/${P}-cmake-prefix.patch +) + +src_configure() { + local mycmakeargs=( + -DBUILD_SHARED_LIBS=$(usex !static-libs) + -DBUILD_TESTING=$(usex test) + ) + cmake_src_configure +} diff --git a/dev-libs/aws-c-io/files/aws-c-io-0.7.0-cmake-prefix.patch b/dev-libs/aws-c-io/files/aws-c-io-0.7.0-cmake-prefix.patch new file mode 100644 index 00000000000..39cab922b3d --- /dev/null +++ b/dev-libs/aws-c-io/files/aws-c-io-0.7.0-cmake-prefix.patch @@ -0,0 +1,12 @@ +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -23,7 +23,7 @@ elseif(NOT DEFINED CMAKE_INSTALL_LIBDIR) + endif() + + # This is required in order to append /lib/cmake to each element in CMAKE_PREFIX_PATH +-set(AWS_MODULE_DIR "/${CMAKE_INSTALL_LIBDIR}/cmake") ++set(AWS_MODULE_DIR "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}/cmake") + string(REPLACE ";" "${AWS_MODULE_DIR};" AWS_MODULE_PATH "${CMAKE_PREFIX_PATH}${AWS_MODULE_DIR}") + # Append that generated list to the module search path + list(APPEND CMAKE_MODULE_PATH ${AWS_MODULE_PATH}) + diff --git a/dev-libs/aws-c-io/metadata.xml b/dev-libs/aws-c-io/metadata.xml new file mode 100644 index 00000000000..6e6c8ed7af3 --- /dev/null +++ b/dev-libs/aws-c-io/metadata.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>sven.e...@prydeworx.com</email> + <name>Sven Eden</name> + </maintainer> + <maintainer type="project"> + <email>proxy-ma...@gentoo.org</email> + <name>Proxy Maintainers</name> + </maintainer> + <longdescription> +This is a module for the AWS SDK for C. It handles all IO and TLS work for application protocols. + +aws-c-io is an event driven framework for implementing application protocols. It is built on top of cross-platform +abstractions that allow you as a developer to think only about the state machine and API for your protocols. A typical +use-case would be to write something like Http on top of asynchronous-io with TLS already baked in. All of the platform +and security concerns are already handled for you. + +It is designed to be light-weight, fast, portable, and flexible for multiple domain use-cases such as: embedded, +server, client, and mobile. + </longdescription> +</pkgmetadata>