summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2023-04-18 03:36:15 +0100
committerSam James <sam@gentoo.org>2023-04-18 03:36:15 +0100
commitde9c3feb504ff147939d38b4dfc027e0b11b4de6 (patch)
treeb72b57e6228eefab4b89e1d820e255c0cae0e517 /dev-libs/mpfr
parentapp-crypt/gnupg: update libgpg-error min. version for gpgrt_reallocarray (diff)
downloadgentoo-de9c3feb504ff147939d38b4dfc027e0b11b4de6.tar.gz
gentoo-de9c3feb504ff147939d38b4dfc027e0b11b4de6.tar.bz2
gentoo-de9c3feb504ff147939d38b4dfc027e0b11b4de6.zip
dev-libs/mpfr: add 4.2.0_p4
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'dev-libs/mpfr')
-rw-r--r--dev-libs/mpfr/Manifest4
-rw-r--r--dev-libs/mpfr/mpfr-4.2.0_p4.ebuild90
2 files changed, 94 insertions, 0 deletions
diff --git a/dev-libs/mpfr/Manifest b/dev-libs/mpfr/Manifest
index f278ebd18e1a..f73e8f1b0dcc 100644
--- a/dev-libs/mpfr/Manifest
+++ b/dev-libs/mpfr/Manifest
@@ -14,5 +14,9 @@ DIST mpfr-4.1.0-patch13.patch 3344 BLAKE2B 1239cf16dfe32a71bb6fc7b156978cd451bcb
DIST mpfr-4.1.0.tar.xz 1525476 BLAKE2B 41d1be0c4b557760f12a4525ad3a84b6e2cd6f0927c935fcfba577ac0490e582d1ae4b581dce58e21e705cf9d7c88373054d7fb7a94bb32c69b339f99a25dc68 SHA512 1bd1c349741a6529dfa53af4f0da8d49254b164ece8a46928cdb13a99460285622d57fe6f68cef19c6727b3f9daa25ddb3d7d65c201c8f387e421c7f7bee6273
DIST mpfr-4.1.1-patch01.patch 2985 BLAKE2B d6bed1d6fca2319db457096a81aca060c1bd934fcdf9c5f98ba44920a7e97c2a5e9c539ec554feb723fb98c84096e1cb615c0d973133c67f3c2097edc1c5b803 SHA512 aa98173d59a24d0f59acff0c2143db5623746db3f6445e300a018a124b35a6b57d631c357a9a890f23c748591f621a95d3a801bed7341b6c8b6ddcc86ecfb107
DIST mpfr-4.1.1.tar.xz 1429836 BLAKE2B ce20baee2f060acb28b877ffe6fc40c5619cf6af231bd54ca6cfb3e42ef2d74a4ffbab96cf0b5dd6a162e558099a54701d42f34f5bf2256f256fe6f5ae2505d0 SHA512 be468749bd88870dec37be35e544983a8fb7bda638eb9414c37334b9d553099ea2aa067045f51ae2c8ab86d852ef833e18161d173e414af0928e9a438c9b91f1
+DIST mpfr-4.2.0-patch01.patch 2927 BLAKE2B 15f2003b9b423065ea8e7db9191fd56d9832263a87290652b906c0360e1599017659c5650635410825a1ed66eb9ec4c93aefa746dd2505984e07c6ff8b06312c SHA512 a97791ba106cd843e279b913a776f2e1221462978c27ba2e97afa4d3b1763ef87cec991cf337f98897100c5554dd47d7a6342cb51878d351fcc516d951a5cf6b
+DIST mpfr-4.2.0-patch02.patch 8009 BLAKE2B 094ece68c41e4945d3713a919b39cd3d9a574efe2a84202fceaa5067e74ace109e342732a2221165e2e911796e386e47d3360688fc07bb57eb2a1ed90a93b4be SHA512 b5c3f885c086fe13f91fdc411dc4cdcbba93a140563932d46a98e1bbf0714d3c98cc97468eb48cff917527b2c69ac756ad30e4bbec9f4a974f257141741cb1c7
+DIST mpfr-4.2.0-patch03.patch 4678 BLAKE2B 356f4c2dc522dc44deab4f92b27590be8bca38e17c98db07348aae8959ae3314fd5dfe8c08dcfa30c31fddb1b90ec55499ce9fb4853e8b7ecc3aab314ac7a251 SHA512 cc646867498279530e1c593e129361d7f56e81736b2c2f7563c18c53c139698fbff88b48ae5c8f6856ac1abb47fe39e0148cecf8a41771c962b005d2a239835f
+DIST mpfr-4.2.0-patch04.patch 2622 BLAKE2B 42fe01ce698d335070469518c42f8f3d4bbff9b69cb2a6bd9a3e504d4970be562a504cfc7495b5a2bfcc9fea2a35ccd4fa39db829e63b016f627140349b0ca31 SHA512 73b03be27abacf3b845405aca58b5f77a243f2adf3994e5d8eba74c926132b62d2aa55931c4ed70752aaf45fcfa3676c5c597b723d919306aad40675d5ea51b8
DIST mpfr-4.2.0.tar.xz 1477532 BLAKE2B dd88ae3a6a910ad8faeb791b49c3b1085de5d0d4c49c637c124bf4d9bc79fb621d0d1d69e07d0642b9b678f6d355a5830d083dfd189e1e91d0e04c970c10bd64 SHA512 58e843125884ca58837ae5159cd4092af09e8f21931a2efd19c15de057c9d1dc0753ae95c592e2ce59a727fbc491af776db8b00a055320413cdcf2033b90505c
DIST mpfr-4.2.0.tar.xz.asc 228 BLAKE2B b281a11528a69418739b0122b4130d9cf212569f9ded8def685b31afe700ea776dd40ac0de7aa6de1bbd5d03a1dc9726ed4278cc6cccfacd1147681a6de27f70 SHA512 ce64346cce89bc38fee161a5e01c349c97c69b626547e54a522b741949cb27bba1668d123143fd03b015f9bdd692bcba08c7b85cf4d4cea9f7834383e04d4bbc
diff --git a/dev-libs/mpfr/mpfr-4.2.0_p4.ebuild b/dev-libs/mpfr/mpfr-4.2.0_p4.ebuild
new file mode 100644
index 000000000000..b80366c8f91b
--- /dev/null
+++ b/dev-libs/mpfr/mpfr-4.2.0_p4.ebuild
@@ -0,0 +1,90 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/vincentlefevre.asc
+inherit multilib-minimal verify-sig
+
+# Upstream distribute patches before a new release is made
+# See https://www.mpfr.org/mpfr-current/#bugs for the latest version (and patches)
+
+# Check whether any patches touch e.g. manuals!
+# https://archives.gentoo.org/gentoo-releng-autobuilds/message/c2dd39fc4ebc849db6bb0f551739e2ed
+MY_PV=${PV%%_p*}
+MY_PATCH=$(ver_cut 5-)
+MY_PATCHES=()
+MY_P=${PN}-${MY_PV/_/-}
+
+DESCRIPTION="Library for multiple-precision floating-point computations with exact rounding"
+HOMEPAGE="https://www.mpfr.org/ https://gitlab.inria.fr/mpfr"
+SRC_URI="https://www.mpfr.org/${PN}-$(ver_cut 1-3)/${MY_P}.tar.xz"
+SRC_URI+=" verify-sig? ( https://www.mpfr.org/${PN}-$(ver_cut 1-3)/${MY_P}.tar.xz.asc )"
+
+if [[ ${PV} == *_p* ]] ; then
+ # If this is a patch release, we have to download each of the patches:
+ # -_pN = N patches
+ # - patch file names are like: patch01, patch02, ..., patch10, patch12, ..
+ #
+ # => name the ebuild _pN where N is the number of patches on the 'bugs' page.
+ for ((my_patch_index=1; my_patch_index <= MY_PATCH; my_patch_index++)); do
+ SRC_URI+=" $(printf "https://www.mpfr.org/${PN}-$(ver_cut 1-3)/patch%02d -> ${PN}-$(ver_cut 1-3)-patch%02d.patch " ${my_patch_index}{,})"
+ MY_PATCHES+=( "${DISTDIR}"/$(printf ${PN}-$(ver_cut 1-3)-patch%02d.patch ${my_patch_index}) )
+ done
+ unset my_patch_index
+fi
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="LGPL-2.1"
+# This is a critical package; if SONAME changes, bump subslot but also add
+# preserve-libs.eclass usage to pkg_*inst! See e.g. the readline ebuild.
+SLOT="0/6" # libmpfr.so version
+if [[ ${PV} != *_rc* ]] ; then
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+fi
+IUSE="static-libs"
+
+RDEPEND=">=dev-libs/gmp-5.0.0:=[${MULTILIB_USEDEP},static-libs?]"
+DEPEND="${RDEPEND}"
+BDEPEND="verify-sig? ( sec-keys/openpgp-keys-vincentlefevre )"
+
+PATCHES=(
+ # Apply the upstream patches released out-of-band; generated above
+ "${MY_PATCHES[@]}"
+
+ # Additional patches
+)
+
+HTML_DOCS=( doc/FAQ.html )
+
+src_unpack() {
+ use verify-sig && verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.asc}
+
+ # Avoid src_unpack noise from patches
+ unpack ${MY_P}.tar.xz
+}
+
+src_prepare() {
+ default
+
+ # 4.1.0_p13's patch10 patches a .texi file *and* the corresponding
+ # info file. We need to make sure the info file is newer, so the
+ # build doesn't try to run makeinfo. Won't be needed on next release.
+ #touch "${S}/doc/mpfr.info" || die
+}
+
+multilib_src_configure() {
+ # bug #476336#19
+ # Make sure mpfr doesn't go probing toolchains it shouldn't
+ ECONF_SOURCE="${S}" \
+ user_redefine_cc=yes \
+ econf $(use_enable static-libs static)
+}
+
+multilib_src_install_all() {
+ rm "${ED}"/usr/share/doc/${PF}/COPYING* || die
+
+ if ! use static-libs ; then
+ find "${ED}"/usr -name '*.la' -delete || die
+ fi
+}