summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2023-08-19 20:55:24 +0100
committerSam James <sam@gentoo.org>2023-08-19 21:00:00 +0100
commit9047b8f11ff8af6c91651ef5a3301943b8285203 (patch)
treebe17380395b6b59bd578573c41c4e1bd14049858 /dev-libs/mpfr
parentdev-python/sqlalchemy: Stabilize 2.0.19 ppc, #912636 (diff)
downloadgentoo-9047b8f11ff8af6c91651ef5a3301943b8285203.tar.gz
gentoo-9047b8f11ff8af6c91651ef5a3301943b8285203.tar.bz2
gentoo-9047b8f11ff8af6c91651ef5a3301943b8285203.zip
dev-libs/mpfr: add 4.2.1_rc1 (unkeyworded)
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'dev-libs/mpfr')
-rw-r--r--dev-libs/mpfr/Manifest2
-rw-r--r--dev-libs/mpfr/mpfr-4.2.1_rc1.ebuild98
2 files changed, 100 insertions, 0 deletions
diff --git a/dev-libs/mpfr/Manifest b/dev-libs/mpfr/Manifest
index 8c4b067f2169..f3333f12f8dd 100644
--- a/dev-libs/mpfr/Manifest
+++ b/dev-libs/mpfr/Manifest
@@ -12,3 +12,5 @@ DIST mpfr-4.2.0-patch11.patch 2179 BLAKE2B c902fc9f1e29712d415cf859b616b3c038d13
DIST mpfr-4.2.0-patch12.patch 1809 BLAKE2B 1796b4e539e25e22a22ad9862fd1f641f9d88ee64e7234a9cbc1ef442fc8ba4876b3e6523704c6400ebb2a98f762454f3bf10403913b110011887561cc6d6914 SHA512 81ae9c0a4df9632b5bd3bd60f71a900725dc50773ac0fff6264b18bca2b4560c148fea71806dfe8bd35624aba673effc9dc72fb0448bfd6146bad08e03482445
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
+DIST mpfr-4.2.1-rc1.tar.xz 1487292 BLAKE2B 6e5a8e4355085858cce6553b12ca8e98ae44d0351701a7ba3e48b1f3233eb14261629e32d871d94bb766bae16bcea32fa8e0378f0f4a139d67e26bce84d89257 SHA512 bf3ae8f6e6b63ae929aaf7bab891c75f46b4f2ccc1bbc63f7589034616d6f7df48dba0396f9181d974cbe197c2e1718099ac7ec8e596f105e079b73774bc825b
+DIST mpfr-4.2.1-rc1.tar.xz.asc 228 BLAKE2B 7e9508c63f0e43a70072f812a453fd742d6dc39be9e36b8d3f68e34d69bf218a2ab829d3e0040b04ea32dc7607248d76fde1f119ca2d0c37680f63f6b125d154 SHA512 ebaa8e75b5df43abef640c2fb5ee3733576ed6dece2b2f164ff83c249d529582a9cf0d198e121eaf1420171e8386ab531609de67db3fb7dec49687fa03ab4d64
diff --git a/dev-libs/mpfr/mpfr-4.2.1_rc1.ebuild b/dev-libs/mpfr/mpfr-4.2.1_rc1.ebuild
new file mode 100644
index 000000000000..3436f7912a8f
--- /dev/null
+++ b/dev-libs/mpfr/mpfr-4.2.1_rc1.ebuild
@@ -0,0 +1,98 @@
+# 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.
+ patch_url_base="https://www.mpfr.org/${MY_P}"
+ my_patch_index=
+
+ for ((my_patch_index=1; my_patch_index <= MY_PATCH ; my_patch_index++)) ; do
+ printf -v mangled_patch_ver "patch%02d" "${my_patch_index}"
+
+ SRC_URI+=" ${patch_url_base}/${mangled_patch_ver} -> ${MY_P}-${mangled_patch_ver}.patch"
+
+ MY_PATCHES+=( "${DISTDIR}"/${MY_P}-${mangled_patch_ver}.patch )
+ done
+
+ unset patch_url_base my_patch_index mangled_patch_ver
+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 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-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
+}