diff options
-rw-r--r-- | sci-calculators/bc-gh/Manifest | 1 | ||||
-rw-r--r-- | sci-calculators/bc-gh/bc-gh-6.6.1.ebuild | 77 |
2 files changed, 78 insertions, 0 deletions
diff --git a/sci-calculators/bc-gh/Manifest b/sci-calculators/bc-gh/Manifest index b175ff439d06..59b442925a85 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.5.0.tar.xz 461380 BLAKE2B e4aa633162d03fc5723e967ba81f985ab1b16e47b3c9a3ca1c32e9a717db682ce88cc6ba453d5e9b09539dcb8ddbb258b7b7dbdd2e27279355e3c35028d56130 SHA512 1cb03038d828a0b10734c29931777add8b22f194c507b8ff538ec1aa52a2a97a4ac2733d72cdb0710fdc6937807074e929f7918c56aaf5be8fbe908ea7c5a401 DIST bc-6.6.0.tar.xz 465272 BLAKE2B 489f6e20a06f2903421a2c8ba7249f52a52dadfd354de920bac098c6181d79e944c696aa787a143d72a12af1c1893b7b48341cf6e6c4003ceace88812dc72c96 SHA512 5d8e32a7e8bf34d36919f9ab4a84d410747bcaf66d8846c536e41b8a447fe0066d8b0de5a10011d77d50a880290423bae6dea1404f01edf6dfd5247d41ca19a0 +DIST bc-6.6.1.tar.xz 466420 BLAKE2B ddf22c13e33e5526a07824900ad8294913a76ae2bc7e8a6489ee3dc5dd0c18005f74abeaf39ce81ac686fe82889f708e2e581307709966adb15355199aaf046a SHA512 5459ac61dc3fe39be9687616a801ecaf60caabb76cccc76d9e2e5aa4dc3efbb1cc33e2ad059d037c71ad3cce0cd9571d68bc13d09696cb43e5c3dfcdee117f9c diff --git a/sci-calculators/bc-gh/bc-gh-6.6.1.ebuild b/sci-calculators/bc-gh/bc-gh-6.6.1.ebuild new file mode 100644 index 000000000000..5a1b0d786bf9 --- /dev/null +++ b/sci-calculators/bc-gh/bc-gh-6.6.1.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 +} |