diff options
author | Sergei Trofimovich <slyfox@gentoo.org> | 2017-12-26 20:19:35 +0000 |
---|---|---|
committer | Sergei Trofimovich <slyfox@gentoo.org> | 2017-12-26 20:19:50 +0000 |
commit | 7bc22dd56bb01e3f89420d09f56ead431fd52cd8 (patch) | |
tree | 2b17f1990e49a3a11c50fed0ca1d05440eb82280 /dev-libs/mpc | |
parent | media-gfx/imagemagick: stable 7.0.7.14 for ia64, bug #640692 (diff) | |
download | gentoo-7bc22dd56bb01e3f89420d09f56ead431fd52cd8.tar.gz gentoo-7bc22dd56bb01e3f89420d09f56ead431fd52cd8.tar.bz2 gentoo-7bc22dd56bb01e3f89420d09f56ead431fd52cd8.zip |
dev-libs/mpc: remove 'mpfr_add_one_ulp' use, mpfr-4.0.0 fix part 2
It's a backport of https://scm.gforge.inria.fr/anonscm/gitweb?p=mpc/mpc.git;a=commitdiff;h=5eaa17651b759c7856a118835802fecbebcf46ad
("replace obsolete mpfr_add_one_ulp/mpfr_sub_one_ulp functions")
mpfr-4.0.0 does not provide those functions anymore.
Unfortunately 'mpc' does not fail to build against such
mpfr but links broken library. One of the hints is usage
of undeclared function:
mpc-1.0.3/src/mpc-impl.h:63:29: warning: implicit declaration of function
‘mpfr_add_one_ulp’ [-Wimplicit-function-declaration]
Package-Manager: Portage-2.3.19, Repoman-2.3.6
Diffstat (limited to 'dev-libs/mpc')
-rw-r--r-- | dev-libs/mpc/files/mpc-1.0.3-no-ulp.patch | 25 | ||||
-rw-r--r-- | dev-libs/mpc/mpc-1.0.3-r1.ebuild | 40 |
2 files changed, 65 insertions, 0 deletions
diff --git a/dev-libs/mpc/files/mpc-1.0.3-no-ulp.patch b/dev-libs/mpc/files/mpc-1.0.3-no-ulp.patch new file mode 100644 index 000000000000..445e94191030 --- /dev/null +++ b/dev-libs/mpc/files/mpc-1.0.3-no-ulp.patch @@ -0,0 +1,25 @@ +mpfr-4.0.0 removed 'mpfr_add_one_ulp' and 'mpfr_sub_one_ulp' + +From 5eaa17651b759c7856a118835802fecbebcf46ad Mon Sep 17 00:00:00 2001 +From: Paul Zimmermann <Paul.Zimmermann@inria.fr> +Date: Wed, 4 Oct 2017 22:09:40 +0200 +Subject: [PATCH] replace obsolete mpfr_add_one_ulp/mpfr_sub_one_ulp functions + +--- + src/mpc-impl.h | 6 ++++-- + 1 file changed, 4 insertions(+), 2 deletions(-) + +diff --git a/src/mpc-impl.h b/src/mpc-impl.h +index 4026765..5420691 100644 +--- a/src/mpc-impl.h ++++ b/src/mpc-impl.h +@@ -60,2 +60,4 @@ along with this program. If not, see http://www.gnu.org/licenses/ . +-#define MPFR_ADD_ONE_ULP(x) mpfr_add_one_ulp (x, GMP_RNDN) +-#define MPFR_SUB_ONE_ULP(x) mpfr_sub_one_ulp (x, GMP_RNDN) ++#define MPFR_ADD_ONE_ULP(x) \ ++ (mpfr_sgn (x) > 0 ? mpfr_nextabove (x) : mpfr_nextbelow (x)) ++#define MPFR_SUB_ONE_ULP(x) \ ++ (mpfr_sgn (x) > 0 ? mpfr_nextbelow (x) : mpfr_nextabove (x)) +-- +2.15.1 + diff --git a/dev-libs/mpc/mpc-1.0.3-r1.ebuild b/dev-libs/mpc/mpc-1.0.3-r1.ebuild new file mode 100644 index 000000000000..c35082341337 --- /dev/null +++ b/dev-libs/mpc/mpc-1.0.3-r1.ebuild @@ -0,0 +1,40 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit autotools eutils libtool multilib-minimal + +DESCRIPTION="A library for multiprecision complex arithmetic with exact rounding" +HOMEPAGE="http://mpc.multiprecision.org/" +SRC_URI="http://www.multiprecision.org/mpc/download/${P}.tar.gz" + +LICENSE="LGPL-2.1" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +IUSE="static-libs" + +DEPEND=">=dev-libs/gmp-4.3.2:0=[${MULTILIB_USEDEP},static-libs?] + >=dev-libs/mpfr-2.4.2:0=[${MULTILIB_USEDEP},static-libs?]" +RDEPEND="${DEPEND}" + +PATCHES=( + "${FILESDIR}"/${P}-mpfr-4.0.0.patch + "${FILESDIR}"/${P}-no-ulp.patch +) + +src_prepare() { + default + + eautoreconf + elibtoolize #347317 +} + +multilib_src_configure() { + ECONF_SOURCE=${S} econf $(use_enable static-libs static) +} + +multilib_src_install_all() { + einstalldocs + prune_libtool_files +} |