# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 inherit flag-o-matic toolchain-funcs DESCRIPTION="Hardware RNG based on CPU timing jitter" HOMEPAGE="https://github.com/smuellerDD/jitterentropy-library" SRC_URI="https://github.com/smuellerDD/jitterentropy-library/archive/v${PV}.tar.gz -> ${P}.tar.gz" S="${WORKDIR}/${PN}-library-${PV}" # For future reference, tests/raw-entropy/validation-{restart,runtime} # have a weird license clause where it says: # The licensee IS NOT granted permission to redistribute the source code or # derivatives of the source code, and the binaries compiled from the source # code or its derivatives to any third parties. # Do not package these two components! LICENSE="BSD" SLOT="0/3" KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" IUSE="static-libs" src_prepare() { default # Disable man page compression on install sed -e '/\tgzip.*man/ d' -i Makefile || die } src_compile() { # Upstream defines some of CFLAGS in the Makefile using '?=' # This allows those default flags to be overwritten by # user-defined CFLAGS. Restore some of the defaults. append-cflags '-fwrapv' '-fvisibility=hidden' '-fPIE' # Optimizations are not allowed by upstream, which already # overrides CFLAGS in Makefile. We need to handle CPPFLAGS here. append-cppflags '-O0' emake AR="$(tc-getAR)" CC="$(tc-getCC)" } src_install() { emake PREFIX="${EPREFIX}/usr" \ LIBDIR="$(get_libdir)" \ DESTDIR="${D}" \ INSTALL_STRIP="install" \ install $(usex static-libs install-static '') }