commit:     8d13af47b81cafc5c7c7605fff359980d5f90041
Author:     Gavin D. Howard <gavin <AT> gavinhoward <DOT> com>
AuthorDate: Mon Oct 16 20:07:25 2023 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
CommitDate: Fri Oct 27 08:15:18 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8d13af47

sci-calculators/bc-gh: add 6.7.2

Signed-off-by: Gavin D. Howard <gavin <AT> gavinhoward.com>
Closes: https://github.com/gentoo/gentoo/pull/33364
Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> gentoo.org>

 sci-calculators/bc-gh/Manifest           |  1 +
 sci-calculators/bc-gh/bc-gh-6.7.2.ebuild | 77 ++++++++++++++++++++++++++++++++
 2 files changed, 78 insertions(+)

diff --git a/sci-calculators/bc-gh/Manifest b/sci-calculators/bc-gh/Manifest
index 9fa4216e2395..02a89289eb80 100644
--- a/sci-calculators/bc-gh/Manifest
+++ b/sci-calculators/bc-gh/Manifest
@@ -1,2 +1,3 @@
 DIST bc-6.5.0.tar.xz 461380 BLAKE2B 
e4aa633162d03fc5723e967ba81f985ab1b16e47b3c9a3ca1c32e9a717db682ce88cc6ba453d5e9b09539dcb8ddbb258b7b7dbdd2e27279355e3c35028d56130
 SHA512 
1cb03038d828a0b10734c29931777add8b22f194c507b8ff538ec1aa52a2a97a4ac2733d72cdb0710fdc6937807074e929f7918c56aaf5be8fbe908ea7c5a401
 DIST bc-6.7.0.tar.xz 466672 BLAKE2B 
65e72095a1282d0861ad76b18aed2bf96bb3e92b2e9ec90cffce00ad70219071d6203e80b251dbcd13a7908a4219fe16b7120e29ac6924794ae1c217a3c3ca46
 SHA512 
a4b8c0b0ba8a214e2fdd271f5090d2977c8ee3053dc52d28cbd031a4a935f0e5d9c7be8df8e1cf106ac68c18faf136917a241f5e89597e271bf127df3d6d3f9f
+DIST bc-6.7.2.tar.xz 466432 BLAKE2B 
b0159a3171c2b21eb07832ed70e90a9d692f98a15bc1f3ef3aea502acf9bd1dcd12fba6f276b4c725a4bbff09fa5a3513d1f457f485808359e5b7774bd5afe3a
 SHA512 
8614277acd6b0b923a37fd84a22d868b33a44fcfdcc05e5e7a1637b7fd3c03e80bb9f578db9799c1c6d74a30c5c26bf53bd8f2328d7cb7f16f9e105ca98ff8a3

diff --git a/sci-calculators/bc-gh/bc-gh-6.7.2.ebuild 
b/sci-calculators/bc-gh/bc-gh-6.7.2.ebuild
new file mode 100644
index 000000000000..5a1b0d786bf9
--- /dev/null
+++ b/sci-calculators/bc-gh/bc-gh-6.7.2.ebuild
@@ -0,0 +1,77 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit edo
+
+MY_P="bc-${PV}"
+DESCRIPTION="Implementation of POSIX bc with GNU extensions"
+HOMEPAGE="
+       https://git.gavinhoward.com/gavin/bc/
+       https://github.com/gavinhoward/bc/
+"
+SRC_URI="
+       https://github.com/gavinhoward/bc/releases/download/${PV}/${MY_P}.tar.xz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~ppc ~ppc64 
~riscv ~s390 ~sparc ~x86"
+IUSE="libedit readline"
+
+DEPEND="
+       !readline? (
+               libedit? ( dev-libs/libedit:= )
+       )
+       readline? (
+               sys-libs/readline:=
+               sys-libs/ncurses:=
+       )
+"
+RDEPEND="
+       ${DEPEND}
+"
+
+src_configure() {
+       local myconf=(
+               # GNU and BSD bc's have slightly different behavior. This bc 
can act
+               # like both, changing at runtime with environment variables, 
but it
+               # needs defaults, which can be set at compile time. This option 
sets all
+               # of the defaults to match the GNU bc/dc since it's common on 
Linux.
+               -pGNU
+               # A lot of test results are generated first by a bc compatible 
with the
+               # GNU bc. If there is no GNU bc installed, then those tests 
should be
+               # skipped. That's what this option does. Without it, we would 
have a
+               # dependency cycle. Those tests are super long, anyway.
+               -G
+               # Disables the automatic stripping of binaries.
+               -T
+               # Enables installing all locales, which is important for 
packages.
+               -l
+               # Disables some "problematic" tests that need specific options 
on Linux
+               # to not trigger the OOM killer because malloc() lies.
+               -P
+       )
+       if use readline ; then
+               myconf+=( -r )
+       elif use libedit ; then
+               myconf+=( -e )
+       fi
+
+       local -x EXECSUFFIX="-gh"
+       local -x PREFIX="${EPREFIX}/usr"
+       edo ./configure.sh "${myconf[@]}"
+}
+
+src_test() {
+       # This is to fix a bug encountered on Arch. It is to ensure we don't get
+       # segfaults on `make check` when the error messages change because the 
error
+       # messages are passed to printf(); they have format specifiers. With 
these
+       # env vars, the internal error messages are used, instead of the 
installed
+       # locales, which might be different since the new locale files are not
+       # installed yet. (It is impossible to use uninstalled locales because 
of the
+       # poor design of POSIX locales.)
+       env LANG=C LC_ALL=C emake check
+}

Reply via email to