M7350v1_en_gpl

This commit is contained in:
T
2024-09-09 08:52:07 +00:00
commit f9cc65cfda
65988 changed files with 26357421 additions and 0 deletions

View File

@ -0,0 +1,33 @@
Upstream-Status: Pending
# "extern inline" in traditional gcc means that the function should be
# inlined wherever it's seen, while in C99, "extern inline" means that i
# the function should only be inlined where the inline definition is
# seen while in other places it's not inlined:
# http://gcc.gnu.org/ml/gcc/2006-11/msg00006.html
#
# gmp checks "--std=gnu99" to use C99 convention however it internally
# defines some "extern inline" functions in gmp.h, which is included
# by mainly .c files and finally lead a flood of redefinition function
# errors when linking objects together.
#
# So disable C99/ANSI detection to stick to tranditional gcc behavior
#
# by Kevin Tian <kevin.tian@intel.com>, 2010-08-13
#
# (this patch is licensed under GPLv2+)
diff --git a/configure.in b/configure.in
index 450cc92..aab0b59 100644
--- a/configure.in
+++ b/configure.in
@@ -1869,9 +1869,7 @@ AC_SUBST(DEFN_LONG_LONG_LIMB)
# The C compiler and preprocessor, put into ANSI mode if possible.
AC_PROG_CC
-AC_PROG_CC_STDC
AC_PROG_CPP
-GMP_H_ANSI
# The C compiler on the build system, and associated tests.

View File

@ -0,0 +1,23 @@
SECTION = "devel"
DESCRIPTION = "GNU multiprecision arithmetic library"
HOMEPAGE = "http://www.swox.com/gmp/"
LICENSE = "GPLv3 LGPLv3"
SRC_URI = "${GNU_MIRROR}/gmp/gmp-${PV}.tar.bz2 \
file://configure.patch \
file://amd64.patch "
inherit autotools
ARM_INSTRUCTION_SET = "arm"
acpaths = ""
BBCLASSEXTEND = "native nativesdk"
EXTRA_OECONF += " --enable-cxx=detect"
PACKAGES =+ "libgmpxx"
FILES_libgmpxx = "${libdir}/libgmpxx${SOLIBS}"
SSTATE_SCAN_FILES += "gmp.h"

View File

@ -0,0 +1,16 @@
Upstream-Status: Pending
--- gmp-4.1.4/longlong.h.orig 2004-04-22 00:34:28.000000000 +0200
+++ gmp-4.1.4/longlong.h 2005-07-18 01:13:06.000000000 +0200
@@ -738,8 +738,10 @@
count is only an int. */
#define count_trailing_zeros(count, x) \
do { \
+ UDItype __cbtmp; \
ASSERT ((x) != 0); \
- __asm__ ("bsfq %1,%q0" : "=r" (count) : "rm" ((UDItype)(x))); \
+ __asm__ ("bsfq %1,%0" : "=r" (__cbtmp) : "rm" ((UDItype)(x))); \
+ (count) = __cbtmp; \
} while (0)
#endif /* x86_64 */

View File

@ -0,0 +1,197 @@
Upstream-Status: Pending
acinclude.m4 | 26 ++++++++++++++------------
configure.in | 24 +++++++++---------------
2 files changed, 23 insertions(+), 27 deletions(-)
Index: gmp-5.0.1/acinclude.m4
===================================================================
--- gmp-5.0.1.orig/acinclude.m4
+++ gmp-5.0.1/acinclude.m4
@@ -30,20 +30,20 @@ dnl a_out.exe - OpenVMS DEC C called
dnl conftest.exe - various DOS compilers
-define(IA64_PATTERN,
+define([IA64_PATTERN],
[[ia64*-*-* | itanium-*-* | itanium2-*-*]])
dnl Need to be careful not to match m6811, m6812, m68hc11 and m68hc12, all
dnl of which config.sub accepts. (Though none of which are likely to work
dnl with GMP.)
dnl
-define(M68K_PATTERN,
+define([M68K_PATTERN],
[[m68k-*-* | m68[0-9][0-9][0-9]-*-*]])
-define(POWERPC64_PATTERN,
+define([POWERPC64_PATTERN],
[[powerpc64-*-* | powerpc64le-*-* | powerpc620-*-* | powerpc630-*-* | powerpc970-*-* | power[3-9]-*-*]])
-define(X86_PATTERN,
+define([X86_PATTERN],
[[i?86*-*-* | k[5-8]*-*-* | pentium*-*-* | athlon-*-* | viac3*-*-* | geode*-*-* | atom-*-*]])
define(X86_64_PATTERN,
@@ -64,7 +64,7 @@ dnl x86 -> x86
dnl x86/k6 -> k6
dnl x86/k6/mmx -> k6_mmx
-define(GMP_FAT_SUFFIX,
+define([GMP_FAT_SUFFIX],
[[$1=`echo $2 | sed -e '/\//s:^[^/]*/::' -e 's:[\\/]:_:g'`]])
@@ -73,7 +73,7 @@ dnl ----------------------------------
dnl Emit code to remove any occurrence of ITEM from $LISTVAR. ITEM can be a
dnl shell expression like $foo if desired.
-define(GMP_REMOVE_FROM_LIST,
+define([GMP_REMOVE_FROM_LIST],
[remove_from_list_tmp=
for remove_from_list_i in $[][$1]; do
if test $remove_from_list_i = [$2]; then :;
@@ -89,12 +89,12 @@ dnl GMP_STRIP_PATH(subdir)
dnl ----------------------
dnl Strip entries */subdir from $path and $fat_path.
-define(GMP_STRIP_PATH,
+define([GMP_STRIP_PATH],
[GMP_STRIP_PATH_VAR(path, [$1])
GMP_STRIP_PATH_VAR(fat_path, [$1])
])
-define(GMP_STRIP_PATH_VAR,
+define([GMP_STRIP_PATH_VAR],
[tmp_path=
for i in $[][$1]; do
case $i in
@@ -115,7 +115,7 @@ dnl
dnl Dummy value for GMP_LIMB_BITS is enough
dnl for all current configure-time uses of gmp.h.
-define(GMP_INCLUDE_GMP_H,
+define([GMP_INCLUDE_GMP_H],
[[#define __GMP_WITHIN_CONFIGURE 1 /* ignore template stuff */
#define GMP_NAIL_BITS $GMP_NAIL_BITS
#define GMP_LIMB_BITS 123
@@ -130,7 +130,7 @@ dnl Expand at autoconf time to the valu
dnl FILE. The regexps here aren't very rugged, but are enough for gmp.
dnl /dev/null as a parameter prevents a hang if $2 is accidentally omitted.
-define(GMP_HEADER_GETVAL,
+define([GMP_HEADER_GETVAL],
[patsubst(patsubst(
esyscmd([grep "^#define $1 " $2 /dev/null 2>/dev/null]),
[^.*$1[ ]+],[]),
@@ -144,7 +144,7 @@ dnl The gmp version number, extracted f
dnl autoconf time. Two digits like 3.0 if patchlevel <= 0, or three digits
dnl like 3.0.1 if patchlevel > 0.
-define(GMP_VERSION,
+define([GMP_VERSION],
[GMP_HEADER_GETVAL(__GNU_MP_VERSION,gmp-h.in)[]dnl
.GMP_HEADER_GETVAL(__GNU_MP_VERSION_MINOR,gmp-h.in)[]dnl
.GMP_HEADER_GETVAL(__GNU_MP_VERSION_PATCHLEVEL,gmp-h.in)])
@@ -1506,7 +1506,9 @@ esac
echo ["define(<CONFIG_TOP_SRCDIR>,<\`$tmp'>)"] >>$gmp_tmpconfigm4
# All CPUs use asm-defs.m4
-echo ["include][(CONFIG_TOP_SRCDIR\`/mpn/asm-defs.m4')"] >>$gmp_tmpconfigm4i
+echo -n ["include("] >>$gmp_tmpconfigm4i
+echo -n ["CONFIG_TOP_SRCDIR\`/mpn/asm-defs.m4'"] >>$gmp_tmpconfigm4i
+echo [")"] >>$gmp_tmpconfigm4i
])
Index: gmp-5.0.1/configure.in
===================================================================
--- gmp-5.0.1.orig/configure.in
+++ gmp-5.0.1/configure.in
@@ -29,12 +29,6 @@ AC_REVISION($Revision$)
AC_PREREQ(2.59)
AC_INIT(GNU MP, GMP_VERSION, gmp-bugs@gmplib.org, gmp)
AC_CONFIG_SRCDIR(gmp-impl.h)
-m4_pattern_forbid([^[ \t]*GMP_])
-m4_pattern_allow(GMP_LDFLAGS)
-m4_pattern_allow(GMP_LIMB_BITS)
-m4_pattern_allow(GMP_MPARAM_H_SUGGEST)
-m4_pattern_allow(GMP_NAIL_BITS)
-m4_pattern_allow(GMP_NUMB_BITS)
# If --target is not used then $target_alias is empty, but if say
# "./configure athlon-pc-freebsd3.5" is used, then all three of
@@ -303,7 +297,7 @@ AH_VERBATIM([HAVE_HOST_CPU_1],
# After GMP specific searches and tests, the standard autoconf AC_PROG_CC is
# called. User selections of CC etc are respected.
#
-# Care is taken not to use macros like AC_TRY_COMPILE during the GMP
+# Care is taken not to use macros like AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])],[],[]) during the GMP
# pre-testing, since they of course depend on AC_PROG_CC, and also some of
# them cache their results, which is not wanted.
#
@@ -395,7 +389,7 @@ abilist="standard"
# FIXME: We'd like to prefer an ANSI compiler, perhaps by preferring
# c89 over cc here. But note that on HP-UX c89 provides a castrated
# environment, and would want to be excluded somehow. Maybe
-# AC_PROG_CC_STDC already does enough to stick cc into ANSI mode and
+# already does enough to stick cc into ANSI mode and
# we don't need to worry.
#
cclist="gcc cc"
@@ -1580,7 +1574,7 @@ esac
CFLAGS_or_unset=${CFLAGS-'(unset)'}
CPPFLAGS_or_unset=${CPPFLAGS-'(unset)'}
-cat >&AC_FD_CC <<EOF
+cat >&AS_MESSAGE_LOG_FD() <<EOF
User:
ABI=$ABI
CC=$CC
@@ -1987,7 +1981,6 @@ AC_SUBST(DEFN_LONG_LONG_LIMB)
# The C compiler and preprocessor, put into ANSI mode if possible.
AC_PROG_CC
-AC_PROG_CC_STDC
AC_PROG_CPP
GMP_H_ANSI
@@ -2010,11 +2003,11 @@ AC_SUBST(CCAS)
# The C++ compiler, if desired.
want_cxx=no
+AC_PROG_CXX
if test $enable_cxx != no; then
test_CXXFLAGS=${CXXFLAGS+set}
- AC_PROG_CXX
- echo "CXXFLAGS chosen by autoconf: $CXXFLAGS" >&AC_FD_CC
+ echo "CXXFLAGS chosen by autoconf: $CXXFLAGS" >&AS_MESSAGE_LOG_FD()
cxxflags_ac_prog_cxx=$CXXFLAGS
cxxflags_list=ac_prog_cxx
@@ -2120,7 +2113,7 @@ case $host in
esac
-cat >&AC_FD_CC <<EOF
+cat >&AS_MESSAGE_LOG_FD() <<EOF
Decided:
ABI=$ABI
CC=$CC
@@ -3376,7 +3369,7 @@ GMP_FINISH
# FIXME: Upcoming version of autoconf/automake may not like broken lines.
# Right now automake isn't accepting the new AC_CONFIG_FILES scheme.
-AC_OUTPUT(Makefile \
+AC_CONFIG_FILES([Makefile \
mpbsd/Makefile mpf/Makefile mpn/Makefile mpq/Makefile \
mpz/Makefile printf/Makefile scanf/Makefile cxx/Makefile \
tests/Makefile tests/devel/Makefile tests/mpbsd/Makefile \
@@ -3385,4 +3378,5 @@ AC_OUTPUT(Makefile \
tests/cxx/Makefile \
doc/Makefile tune/Makefile \
demos/Makefile demos/calc/Makefile demos/expr/Makefile \
- gmp.h:gmp-h.in mp.h:mp-h.in)
+ gmp.h:gmp-h.in mp.h:mp-h.in])
+AC_OUTPUT

View File

@ -0,0 +1,94 @@
Upstream-Status: 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;

View 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.in.x32 2011-08-12 15:03:06.143548291 -0700
+++ gmp-4.3.2/configure.in 2011-08-12 15:06:20.580595316 -0700
@@ -1499,6 +1499,21 @@ case $host in
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 @@ if test "$gmp_asm_syntax_testing" != no;
GMP_INCLUDE_MPN(x86/darwin.m4) ;;
esac
;;
- 64)
+ 64|x32)
GMP_INCLUDE_MPN(x86_64/x86_64-defs.m4)
case $host in
*-*-darwin*)

View File

@ -0,0 +1,28 @@
Upstream-Status: Pending
--- gmp-4.1.4/mpn/sh/add_n.s 2005/11/17 08:44:00 1.1
+++ gmp-4.1.4/mpn/sh/add_n.s 2005/11/17 08:18:57
@@ -29,8 +29,8 @@
.text
.align 2
- .global ___gmpn_add_n
-___gmpn_add_n:
+ .global __gmpn_add_n
+__gmpn_add_n:
mov #0,r3 ! clear cy save reg
Loop: mov.l @r5+,r1
--- gmp-4.1.4/mpn/sh/sub_n.s 2005/11/17 08:44:04 1.1
+++ gmp-4.1.4/mpn/sh/sub_n.s 2005/11/17 08:18:59
@@ -29,8 +29,8 @@
.text
.align 2
- .global ___gmpn_sub_n
-___gmpn_sub_n:
+ .global __gmpn_sub_n
+__gmpn_sub_n:
mov #0,r3 ! clear cy save reg
Loop: mov.l @r5+,r1

View File

@ -0,0 +1,15 @@
Upstream-Status: Pending
Index: gmp-4.2.4/Makefile.am
===================================================================
--- gmp-4.2.4.orig/Makefile.am 2008-09-10 19:31:27.000000000 +0000
+++ gmp-4.2.4/Makefile.am 2009-07-06 20:19:19.000000000 +0000
@@ -106,7 +106,7 @@
# but anyone knowledgable enough to be playing with exec_prefix will be able
# to address that.
#
-includeexecdir = $(exec_prefix)/include
+includeexecdir = $(includedir)
include_HEADERS = $(GMPXX_HEADERS_OPTION)
nodist_includeexec_HEADERS = gmp.h $(MPBSD_HEADERS_OPTION)
lib_LTLIBRARIES = libgmp.la $(GMPXX_LTLIBRARIES_OPTION) $(MPBSD_LTLIBRARIES_OPTION)

View File

@ -0,0 +1,17 @@
DESCRIPTION = "GMP is a free library for arbitrary precision arithmetic, operating on signed integers, rational numbers, and floating point numbers"
HOMEPAGE = "http://gmplib.org/"
BUGTRACKER = "http://gmplib.org/mailman/listinfo/gmp-bugs"
# demo is licensed under GPLv2+, which however we don't package at all
LICENSE = "LGPLv2.1+"
LIC_FILES_CHKSUM = "file://COPYING;md5=892f569a555ba9c07a568a7c0c4fa63a \
file://COPYING.LIB;md5=fbc093901857fcd118f065f900982c24 \
file://gmp-h.in;startline=6;endline=21;md5=5e25ffd16996faba8c1cd27b04b16099"
PR = "r1"
SRC_URI = "${GNU_MIRROR}/gmp/${BP}.tar.bz2 \
file://disable-stdc.patch"
SRC_URI[md5sum] = "091c56e0e1cca6b09b17b69d47ef18e3"
SRC_URI[sha256sum] = "d07ffcb37eecec35c5ec72516d10b35fdf6e6fef1fcf1dcd37e30b8cbf8bf941"
inherit autotools

View File

@ -0,0 +1,15 @@
require gmp.inc
LICENSE="LGPLv3&GPLv3"
LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \
file://version.c;endline=18;md5=d8c56b52b9092346b9f93b4da65ef790"
PR = "r4"
SRC_URI_append += "file://sh4-asmfix.patch \
file://gmp_bugfix.patch \
file://use-includedir.patch \
file://gmp_fix_for_x32.patch"
export CC_FOR_BUILD = "${BUILD_CC}"
SRC_URI[md5sum] = "0bbaedc82fb30315b06b1588b9077cd3"
SRC_URI[sha256sum] = "dbc2db76fdd4e99f85d5e35aa378ed62c283e0d586b91bd8703aff75a7804c28"