From ffcccfed51200ac2a82781f07ee419c8eadbf08c Mon Sep 17 00:00:00 2001 From: Jan Henke Date: Sun, 25 Dec 2022 19:54:36 +0100 Subject: [PATCH] dev-embedded/etlcpp: new package, add 20.35.8 Signed-off-by: Jan Henke --- dev-embedded/etlcpp/Manifest | 1 + dev-embedded/etlcpp/etlcpp-20.35.8.ebuild | 44 +++++++++++++++++++++++ dev-embedded/etlcpp/metadata.xml | 24 +++++++++++++ 3 files changed, 69 insertions(+) create mode 100644 dev-embedded/etlcpp/Manifest create mode 100644 dev-embedded/etlcpp/etlcpp-20.35.8.ebuild create mode 100644 dev-embedded/etlcpp/metadata.xml diff --git a/dev-embedded/etlcpp/Manifest b/dev-embedded/etlcpp/Manifest new file mode 100644 index 0000000000..34285c205b --- /dev/null +++ b/dev-embedded/etlcpp/Manifest @@ -0,0 +1 @@ +DIST etlcpp-20.35.8.tar.gz 4413632 BLAKE2B b8292ea0395dbd0ef7d77d58dc2cb1cca16822da39054c1937e3f2a6b5828f9c2816e91b6c9ca4ef2088cdc691245d1aadf9f9c9283fa293265520c3fd4352db SHA512 d417760dd35ad5796f9ce8b7f96ac2d71f7b8e4896e5fc12e844912f34f867dee13582d2621521b5dfa66f21cd77abfd4e48a11e71fe87de2f98eaa6dcf6204f diff --git a/dev-embedded/etlcpp/etlcpp-20.35.8.ebuild b/dev-embedded/etlcpp/etlcpp-20.35.8.ebuild new file mode 100644 index 0000000000..e888aee4a7 --- /dev/null +++ b/dev-embedded/etlcpp/etlcpp-20.35.8.ebuild @@ -0,0 +1,44 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake + +DESCRIPTION="A C++ template library for embedded applications" +HOMEPAGE="https://www.etlcpp.com/" +SRC_URI="https://github.com/ETLCPP/etl/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz" + +S="${WORKDIR}/etl-${PV}" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64" +IUSE="test" +RESTRICT="!test? ( test )" + +# Run-time dependencies. Must be defined to whatever this depends on to run. +# Example: +# ssl? ( >=dev-libs/openssl-1.0.2q:0= ) +# >=dev-lang/perl-5.24.3-r1 +# It is advisable to use the >= syntax show above, to reflect what you +# had installed on your system when you tested the package. Then +# other users hopefully won't be caught without the right version of +# a dependency. +#RDEPEND="" + +# Build-time dependencies that need to be binary compatible with the system +# being built (CHOST). These include libraries that we link against. +# The below is valid if the same run-time depends are required to compile. +#DEPEND="${RDEPEND}" + +# Build-time dependencies that are executed during the emerge process, and +# only need to be present in the native build system (CBUILD). Example: +#BDEPEND="virtual/pkgconfig" + +src_configure() { + local mycmakeargs=( + -DBUILD_TESTS=$(usex test) + ) + cmake_src_configure +} diff --git a/dev-embedded/etlcpp/metadata.xml b/dev-embedded/etlcpp/metadata.xml new file mode 100644 index 0000000000..256436884c --- /dev/null +++ b/dev-embedded/etlcpp/metadata.xml @@ -0,0 +1,24 @@ + + + + + Jan Henke + gentoo@taujhe.de + Primary maintainer + + + C++ is a great language to use for embedded applications and templates are + a powerful aspect. The standard library can offer a great deal of well + tested functionality, but there are some parts of the standard library that + do not fit well with deterministic behaviour and limited resource + requirements. These limitations usually preclude the use of dynamically + allocated memory and containers with open ended sizes. + + What is needed is a template library where the user can declare the size, + or maximum size of any object upfront. Most embedded compilers do not + currently support the standard beyond C++ 03, therefore excluding the + programmer from using the enhanced features of the later library. + + This is what the ETL attempts to achieve. + +