mirror of
https://github.com/flatcar/scripts.git
synced 2025-09-28 17:11:34 +02:00
gmp: update to latest stable upstream
This brings us a bug fix or two and x32 support. BUG=chromium-os:25655 TEST=`emerge gmp` works TEST=build_packages+build_image for x86-alex boots Change-Id: I7117e9a9e7a4dca7ad081efa727ca72be75e503f CQ-DEPENDS=Iaab88d2c2736fccc696ab0c950bb8e7391f975df Reviewed-on: https://gerrit.chromium.org/gerrit/15054 Reviewed-by: Matt Tennant <mtennant@chromium.org> Commit-Ready: Mike Frysinger <vapier@chromium.org> Tested-by: Mike Frysinger <vapier@chromium.org>
This commit is contained in:
parent
c0168afc2c
commit
40847edb13
@ -0,0 +1,21 @@
|
||||
|
||||
# HG changeset patch
|
||||
# User Torbjorn Granlund <tege@gmplib.org>
|
||||
# Date 1310730221 -7200
|
||||
# Node ID 538dfce27f410b910d5e2f011119269e224d16a3
|
||||
# Parent 03ed209dd7efd4f4fff0ce297bb3a8f7e7ba2366
|
||||
(mpn_dcpi1_bdiv_q): Get mpn_sub_1 size argument right.
|
||||
|
||||
diff -r 03ed209dd7ef -r 538dfce27f41 mpn/generic/dcpi1_bdiv_q.c
|
||||
--- a/mpn/generic/dcpi1_bdiv_q.c Thu Jun 16 12:22:24 2011 +0200
|
||||
+++ b/mpn/generic/dcpi1_bdiv_q.c Fri Jul 15 13:43:41 2011 +0200
|
||||
@@ -130,7 +129,7 @@
|
||||
qn = nn - qn;
|
||||
while (qn > dn)
|
||||
{
|
||||
- mpn_sub_1 (np + dn, np + dn, qn, cy);
|
||||
+ mpn_sub_1 (np + dn, np + dn, qn - dn, cy);
|
||||
cy = mpn_dcpi1_bdiv_qr_n (qp, np, dp, dn, dinv, tp);
|
||||
qp += dn;
|
||||
np += dn;
|
||||
|
94
sdk_container/src/third_party/portage-stable/dev-libs/gmp/files/gmp-5.0.2-x32-bugfix.patch
vendored
Normal file
94
sdk_container/src/third_party/portage-stable/dev-libs/gmp/files/gmp-5.0.2-x32-bugfix.patch
vendored
Normal file
@ -0,0 +1,94 @@
|
||||
UpstreamStatus: Pending
|
||||
|
||||
When LONG_MIN is passed to val, -val is undefined. This patch fixes
|
||||
it. See for details: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50066
|
||||
|
||||
Received this patch from H.J. Lu <hjl.tools@gmail.com>
|
||||
|
||||
Signed-Off-By: Nitin A Kamble <nitin.a.kamble@intel.com> 2011/12/01
|
||||
|
||||
--- gmp-4.3.2/mpf/iset_si.c.ll 2010-01-07 12:09:03.000000000 -0800
|
||||
+++ gmp-4.3.2/mpf/iset_si.c 2011-11-30 16:42:35.827944358 -0800
|
||||
@@ -31,7 +31,7 @@ mpf_init_set_si (mpf_ptr r, long int val
|
||||
r->_mp_prec = prec;
|
||||
r->_mp_d = (mp_ptr) (*__gmp_allocate_func) ((prec + 1) * BYTES_PER_MP_LIMB);
|
||||
|
||||
- vl = (mp_limb_t) (unsigned long int) (val >= 0 ? val : -val);
|
||||
+ vl = (mp_limb_t) (val >= 0 ? (unsigned long int) val : -(unsigned long int) val);
|
||||
|
||||
r->_mp_d[0] = vl & GMP_NUMB_MASK;
|
||||
size = vl != 0;
|
||||
--- gmp-4.3.2/mpf/set_si.c.ll 2010-01-07 12:09:03.000000000 -0800
|
||||
+++ gmp-4.3.2/mpf/set_si.c 2011-11-30 16:42:47.823878367 -0800
|
||||
@@ -27,7 +27,7 @@ mpf_set_si (mpf_ptr dest, long val)
|
||||
mp_size_t size;
|
||||
mp_limb_t vl;
|
||||
|
||||
- vl = (mp_limb_t) (unsigned long int) (val >= 0 ? val : -val);
|
||||
+ vl = (mp_limb_t) (val >= 0 ? (unsigned long int) val : -(unsigned long int) val);
|
||||
|
||||
dest->_mp_d[0] = vl & GMP_NUMB_MASK;
|
||||
size = vl != 0;
|
||||
--- gmp-4.3.2/mpz/cmp_si.c.ll 2010-01-07 12:09:03.000000000 -0800
|
||||
+++ gmp-4.3.2/mpz/cmp_si.c 2011-11-30 13:44:25.923319700 -0800
|
||||
@@ -27,7 +27,7 @@ _mpz_cmp_si (mpz_srcptr u, signed long i
|
||||
{
|
||||
mp_size_t usize = u->_mp_size;
|
||||
mp_size_t vsize;
|
||||
- mp_limb_t u_digit;
|
||||
+ mp_limb_t u_digit, vl_digit;
|
||||
|
||||
#if GMP_NAIL_BITS != 0
|
||||
/* FIXME. This isn't very pretty. */
|
||||
@@ -41,11 +41,14 @@ _mpz_cmp_si (mpz_srcptr u, signed long i
|
||||
|
||||
vsize = 0;
|
||||
if (v_digit > 0)
|
||||
- vsize = 1;
|
||||
+ {
|
||||
+ vsize = 1;
|
||||
+ vl_digit = (mp_limb_t) (unsigned long) v_digit;
|
||||
+ }
|
||||
else if (v_digit < 0)
|
||||
{
|
||||
vsize = -1;
|
||||
- v_digit = -v_digit;
|
||||
+ vl_digit = (mp_limb_t) -(unsigned long) v_digit;
|
||||
}
|
||||
|
||||
if (usize != vsize)
|
||||
@@ -56,10 +59,10 @@ _mpz_cmp_si (mpz_srcptr u, signed long i
|
||||
|
||||
u_digit = u->_mp_d[0];
|
||||
|
||||
- if (u_digit == (mp_limb_t) (unsigned long) v_digit)
|
||||
+ if (u_digit == vl_digit)
|
||||
return 0;
|
||||
|
||||
- if (u_digit > (mp_limb_t) (unsigned long) v_digit)
|
||||
+ if (u_digit > vl_digit)
|
||||
return usize;
|
||||
else
|
||||
return -usize;
|
||||
--- gmp-4.3.2/mpz/iset_si.c.ll 2010-01-07 12:09:03.000000000 -0800
|
||||
+++ gmp-4.3.2/mpz/iset_si.c 2011-11-30 13:44:25.924319695 -0800
|
||||
@@ -31,7 +31,7 @@ mpz_init_set_si (mpz_ptr dest, signed lo
|
||||
dest->_mp_alloc = 1;
|
||||
dest->_mp_d = (mp_ptr) (*__gmp_allocate_func) (BYTES_PER_MP_LIMB);
|
||||
|
||||
- vl = (mp_limb_t) (unsigned long int) (val >= 0 ? val : -val);
|
||||
+ vl = (mp_limb_t) (val >= 0 ? (unsigned long int) val : -(unsigned long int) val);
|
||||
|
||||
dest->_mp_d[0] = vl & GMP_NUMB_MASK;
|
||||
size = vl != 0;
|
||||
--- gmp-4.3.2/mpz/set_si.c.ll 2010-01-07 12:09:03.000000000 -0800
|
||||
+++ gmp-4.3.2/mpz/set_si.c 2011-11-30 13:44:25.947319574 -0800
|
||||
@@ -27,7 +27,7 @@ mpz_set_si (mpz_ptr dest, signed long in
|
||||
mp_size_t size;
|
||||
mp_limb_t vl;
|
||||
|
||||
- vl = (mp_limb_t) (unsigned long int) (val >= 0 ? val : -val);
|
||||
+ vl = (mp_limb_t) (val >= 0 ? (unsigned long int) val : -(unsigned long int) val);
|
||||
|
||||
dest->_mp_d[0] = vl & GMP_NUMB_MASK;
|
||||
size = vl != 0;
|
41
sdk_container/src/third_party/portage-stable/dev-libs/gmp/files/gmp-5.0.2-x32-support.patch
vendored
Normal file
41
sdk_container/src/third_party/portage-stable/dev-libs/gmp/files/gmp-5.0.2-x32-support.patch
vendored
Normal file
@ -0,0 +1,41 @@
|
||||
Upstream-Status: Pending
|
||||
|
||||
Add X32 support in gmp configure.
|
||||
|
||||
Patch Originator: H J Lu @ Intel
|
||||
Patch modified for Yocto by Nitin Kamble
|
||||
Signed Off By: Nitin A Kamble <nitin.a.kamble@intel.com> 2011/11/21
|
||||
|
||||
--- gmp-4.3.2/configure
|
||||
+++ gmp-4.3.2/configure
|
||||
@@ -1499,6 +1499,21 @@
|
||||
path_64="x86_64/atom x86_64"
|
||||
;;
|
||||
esac
|
||||
+
|
||||
+ # X32 support.
|
||||
+ case x"$path_64" in
|
||||
+ xx86_64*)
|
||||
+ abilist="x32 64 32"
|
||||
+ path_x32="$path_64"
|
||||
+ limb_x32=longlong
|
||||
+ cclist_x32="gcc"
|
||||
+ gcc_x32_cflags="-O2 -mx32"
|
||||
+ any_x32_testlist="sizeof-long-4"
|
||||
+ CALLING_CONVENTIONS_OBJS_x32='amd64call.lo amd64check$U.lo'
|
||||
+ SPEED_CYCLECOUNTER_OBJ_x32=x86_64.lo
|
||||
+ cyclecounter_size_x32=2
|
||||
+ ;;
|
||||
+ esac
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
@@ -3039,7 +3058,7 @@
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
- 64)
|
||||
+ 64|x32)
|
||||
|
||||
echo "include_mpn(\`x86_64/x86_64-defs.m4')" >> $gmp_tmpconfigm4i
|
||||
|
@ -1,28 +1,35 @@
|
||||
# Copyright 1999-2011 Gentoo Foundation
|
||||
# Copyright 1999-2012 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-libs/gmp/gmp-5.0.2.ebuild,v 1.5 2011/09/04 21:01:37 maekke Exp $
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-libs/gmp/gmp-5.0.2_p1.ebuild,v 1.10 2012/01/03 10:21:17 vapier Exp $
|
||||
|
||||
inherit flag-o-matic eutils libtool flag-o-matic toolchain-funcs
|
||||
inherit flag-o-matic eutils libtool toolchain-funcs
|
||||
|
||||
MY_PV=${PV/_p*}
|
||||
MY_P=${PN}-${MY_PV}
|
||||
PLEVEL=${PV/*p}
|
||||
DESCRIPTION="Library for arithmetic on arbitrary precision integers, rational numbers, and floating-point numbers"
|
||||
HOMEPAGE="http://gmplib.org/"
|
||||
SRC_URI="mirror://gnu/${PN}/${P}.tar.bz2"
|
||||
# doc? ( http://www.nada.kth.se/~tege/${PN}-man-${PV}.pdf )"
|
||||
SRC_URI="mirror://gnu/${PN}/${MY_P}.tar.bz2
|
||||
doc? ( http://gmplib.org/${PN}-man-${MY_PV}.pdf )"
|
||||
|
||||
LICENSE="LGPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc x86 ~sparc-fbsd ~x86-fbsd"
|
||||
IUSE="nocxx" #doc
|
||||
KEYWORDS="alpha amd64 arm hppa ia64 m68k ~mips ~ppc ~ppc64 s390 sh sparc x86 ~sparc-fbsd ~x86-fbsd"
|
||||
IUSE="doc cxx static-libs"
|
||||
|
||||
DEPEND="sys-devel/m4"
|
||||
RDEPEND=""
|
||||
|
||||
S=${WORKDIR}/${MY_P}
|
||||
|
||||
src_unpack() {
|
||||
unpack ${A}
|
||||
unpack ${MY_P}.tar.bz2
|
||||
cd "${S}"
|
||||
[[ -d ${FILESDIR}/${PV} ]] && EPATCH_SUFFIX="diff" EPATCH_FORCE="yes" epatch "${FILESDIR}"/${PV}
|
||||
epatch "${FILESDIR}"/${PN}-4.1.4-noexecstack.patch
|
||||
epatch "${FILESDIR}"/${PN}-5.0.0-s390.diff
|
||||
epatch "${FILESDIR}"/${MY_P}-unnormalised-dividends.patch
|
||||
has x32 $(get_all_abis) && epatch "${FILESDIR}"/${PN}-5.0.2*x32*.patch
|
||||
|
||||
# disable -fPIE -pie in the tests for x86 #236054
|
||||
if use x86 && gcc-specs-pie ; then
|
||||
@ -53,7 +60,7 @@ src_compile() {
|
||||
case ${ABI} in
|
||||
32|x86) GMPABI=32;;
|
||||
64|amd64|n64) GMPABI=64;;
|
||||
o32|n32) GMPABI=${ABI};;
|
||||
[onx]32) GMPABI=${ABI};;
|
||||
esac
|
||||
export GMPABI
|
||||
|
||||
@ -61,20 +68,29 @@ src_compile() {
|
||||
econf \
|
||||
--localstatedir=/var/state/gmp \
|
||||
--disable-mpbsd \
|
||||
$(use_enable !nocxx cxx) \
|
||||
|| die "configure failed"
|
||||
$(use_enable cxx) \
|
||||
$(use_enable static-libs static) \
|
||||
|| die
|
||||
|
||||
emake || die "emake failed"
|
||||
emake || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install || die "make install failed"
|
||||
emake DESTDIR="${D}" install || die
|
||||
|
||||
# should be a standalone lib
|
||||
rm -f "${D}"/usr/$(get_libdir)/libgmp.la
|
||||
# this requires libgmp
|
||||
local la="${D}/usr/$(get_libdir)/libgmpxx.la"
|
||||
use static-libs \
|
||||
&& sed -i 's:/[^ ]*/libgmp.la:-lgmp:' "${la}" \
|
||||
|| rm -f "${la}"
|
||||
|
||||
dodoc AUTHORS ChangeLog NEWS README
|
||||
dodoc doc/configuration doc/isa_abi_headache
|
||||
dohtml -r doc
|
||||
|
||||
#use doc && cp "${DISTDIR}"/gmp-man-${PV}.pdf "${D}"/usr/share/doc/${PF}/
|
||||
use doc && cp "${DISTDIR}"/gmp-man-${MY_PV}.pdf "${D}"/usr/share/doc/${PF}/
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
Loading…
x
Reference in New Issue
Block a user