commit: 68bb8a1fe263b56cbdfb66d2327018860bf56291
Author: Gavin D. Howard <gavin <AT> gavinhoward <DOT> com>
AuthorDate: Fri Mar 10 06:22:57 2023 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Mar 10 06:53:13 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=68bb8a1f
sci-calculators/bc-gh: bump to 6.4.0
Signed-off-by: Gavin D. Howard <gavin <AT> gavinhoward.com>
Signed-off-by: Sam James <sam <AT> gentoo.org>
sci-calculators/bc-gh/Manifest | 1 +
sci-calculators/bc-gh/bc-gh-6.4.0.ebuild | 75 ++++++++++++++++++++++++++++++++
2 files changed, 76 insertions(+)
diff --git a/sci-calculators/bc-gh/Manifest b/sci-calculators/bc-gh/Manifest
index d05a497499b0..692c02ce8143 100644
--- a/sci-calculators/bc-gh/Manifest
+++ b/sci-calculators/bc-gh/Manifest
@@ -1,3 +1,4 @@
DIST bc-6.1.1.tar.xz 455456 BLAKE2B
7945ac623740abd9cbd894c20b8a03006caf64d2ce9770ade930d912c52b4e29b107b524d4a95ebea99e31921b7940e39e1afdeec837b4a03d3ed4e11b9f517b
SHA512
0e7fb4d4223ace8ba5c1961cc0d7eba475174f92b75529fde64446b5d80db5729f848fd95507570711d2b8928996c87e837e926d31028f32e3f97cad47567d39
DIST bc-6.2.6.tar.xz 457640 BLAKE2B
ab134928292d73ebd41921d8931420b037837f82fe8338a7b5f84137bd05d8d6db1cfce19b506dc2b470a44aa277b73202b599866343d6978c219d65c9f27bf6
SHA512
f3631ff2378e93f9758a133400749973681f142f3eeaf1ae8ffc60f1a31b9ca9a9bcdf14435b72fea8b8ea486d0fb6b53954a511c5db62d834bf6cf270d7e4a5
DIST bc-6.3.1.tar.xz 457868 BLAKE2B
1bb4e2b3e776e6d30194805b7b695d704a749d227a6228cb1835777bfd0b4d48f09ed65f15f6208674007e9f629e0593e700235d3420626a016569824a90a56d
SHA512
a2904fa120b3a891fbb0cf5052596fb9b727143882dc838fa49978a7d05c709ba1ae4d9a976a353b6311cd0d8483b208aa4967d0fd553a3079b80f7ccb879582
+DIST bc-6.4.0.tar.xz 460460 BLAKE2B
91d70f3907fde6d3c97c37872d57ac67e98990ab1e37324801a95184d7961002b68f2b6904520ab4c77c45a571c369fb0a6455553bb3db79553e01aece28e212
SHA512
6c7a86c534214e765e3890dffe77fb85ddf0764cde0c6ceb0385cce7de4c0d2db0815faf6bcf161fad75591461c346811a61c42c5eced7c3d84fe5b7eb719b60
diff --git a/sci-calculators/bc-gh/bc-gh-6.4.0.ebuild
b/sci-calculators/bc-gh/bc-gh-6.4.0.ebuild
new file mode 100644
index 000000000000..7b4e6bc4cbf5
--- /dev/null
+++ b/sci-calculators/bc-gh/bc-gh-6.4.0.ebuild
@@ -0,0 +1,75 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+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"
+ ./configure.sh "${myconf[@]}" || die
+}
+
+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
+}