diff options
author | Sam James <sam@gentoo.org> | 2023-12-19 11:27:22 +0000 |
---|---|---|
committer | Sam James <sam@gentoo.org> | 2023-12-19 11:27:22 +0000 |
commit | ac62c5917a3a871982b477ebcfe1e7bac07b9e7e (patch) | |
tree | b1811a4b4c95b986ec8b9cfb9bee52b3d24d69eb | |
parent | sys-cluster/openmpi: add 4.1.6 (diff) | |
download | gentoo-ac62c5917a3a871982b477ebcfe1e7bac07b9e7e.tar.gz gentoo-ac62c5917a3a871982b477ebcfe1e7bac07b9e7e.tar.bz2 gentoo-ac62c5917a3a871982b477ebcfe1e7bac07b9e7e.zip |
sys-apps/rng-tools: fix modern C issue in configure
Closes: https://bugs.gentoo.org/919399
Signed-off-by: Sam James <sam@gentoo.org>
-rw-r--r-- | sys-apps/rng-tools/files/rng-tools-6.16-c99.patch | 22 | ||||
-rw-r--r-- | sys-apps/rng-tools/rng-tools-6.16-r1.ebuild | 90 |
2 files changed, 112 insertions, 0 deletions
diff --git a/sys-apps/rng-tools/files/rng-tools-6.16-c99.patch b/sys-apps/rng-tools/files/rng-tools-6.16-c99.patch new file mode 100644 index 000000000000..dad35eeed1ff --- /dev/null +++ b/sys-apps/rng-tools/files/rng-tools-6.16-c99.patch @@ -0,0 +1,22 @@ +https://bugs.gentoo.org/919399 +https://github.com/nhorman/rng-tools/pull/205 + +From 593e326815ba7ee820ee2f0a3c45279282f07c34 Mon Sep 17 00:00:00 2001 +From: Florian Weimer <fweimer@redhat.com> +Date: Tue, 19 Dec 2023 10:32:11 +0100 +Subject: [PATCH] configure: Fix m4 quoting issue in libargp probe + +Without the surrounding [], m4 drops the inner [], treating, argv[] as +argv. This results in an incorrect argument type for argp_parse, +causing the probe to fail with future compilers due to type error. +--- a/configure.ac ++++ b/configure.ac +@@ -196,7 +196,7 @@ AS_IF( + AC_LINK_IFELSE( + [AC_LANG_PROGRAM( + [#include <argp.h>], +- [int argc=1; char *argv[]={"test"}; argp_parse(0,argc,argv,0,0,0); return 0;] ++ [[int argc=1; char *argv[]={"test"}; argp_parse(0,argc,argv,0,0,0); return 0;]] + )], + [need_libargp=no], + [need_libargp=yes diff --git a/sys-apps/rng-tools/rng-tools-6.16-r1.ebuild b/sys-apps/rng-tools/rng-tools-6.16-r1.ebuild new file mode 100644 index 000000000000..3dd714dfc810 --- /dev/null +++ b/sys-apps/rng-tools/rng-tools-6.16-r1.ebuild @@ -0,0 +1,90 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools readme.gentoo-r1 systemd + +DESCRIPTION="Daemon to use hardware random number generators" +HOMEPAGE="https://github.com/nhorman/rng-tools" +SRC_URI="https://github.com/nhorman/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" +IUSE="jitterentropy nistbeacon pkcs11 qrypt rtlsdr selinux test" +REQUIRED_USE="test? ( jitterentropy )" +RESTRICT="!test? ( test )" + +DEPEND=" + dev-libs/openssl:= + sys-libs/libcap + jitterentropy? ( app-crypt/jitterentropy:= ) + nistbeacon? ( + dev-libs/jansson:= + dev-libs/libxml2:2= + net-misc/curl[ssl] + ) + pkcs11? ( dev-libs/libp11:= ) + qrypt? ( + dev-libs/jansson:= + net-misc/curl[ssl] + ) + rtlsdr? ( net-wireless/rtl-sdr ) + elibc_musl? ( sys-libs/argp-standalone ) +" +RDEPEND=" + ${DEPEND} + selinux? ( sec-policy/selinux-rngd ) +" +BDEPEND="virtual/pkgconfig" + +PATCHES=( + "${FILESDIR}"/${PN}-6.16-c99.patch +) + +src_prepare() { + sed -i "s/sleep 30/sleep 120/g" tests/rngtestjitter.sh || die + default + + eautoreconf +} + +src_configure() { + local myeconfargs=( + $(use_enable jitterentropy) + $(use_with nistbeacon) + $(use_with pkcs11) + $(use_with rtlsdr) + $(use_with qrypt) + ) + + econf "${myeconfargs[@]}" +} + +src_test() { + RNGD_JITTER_TIMEOUT=90 default +} + +src_install() { + default + + newinitd "${FILESDIR}"/rngd-initd-6.11 rngd + newconfd "${FILESDIR}"/rngd-confd-6.11 rngd + systemd_dounit rngd.service + + if use pkcs11; then + local DISABLE_AUTOFORMATTING=1 + local DOC_CONTENTS=" +The PKCS11 entropy source may require extra packages (e.g. 'dev-libs/opensc') +to support various smartcard readers. Make sure 'PKCS11_OPTIONS' in: + '${EPREFIX}/etc/conf.d/rngd' +reflects the correct PKCS11 engine path to be used by rngd. +" + readme.gentoo_create_doc + fi +} + +pkg_postinst() { + use pkcs11 && readme.gentoo_print_elog +} |