diff options
author | Adrian Dudau <adrian.dudau@enea.com> | 2013-12-12 13:38:32 +0100 |
---|---|---|
committer | Adrian Dudau <adrian.dudau@enea.com> | 2013-12-12 13:50:20 +0100 |
commit | e2e6f6fe07049f33cb6348780fa975162752e421 (patch) | |
tree | b1813295411235d1297a0ed642b1346b24fdfb12 /meta/recipes-support/gmp | |
download | poky-e2e6f6fe07049f33cb6348780fa975162752e421.tar.gz |
initial commit of Enea Linux 3.1
Migrated from the internal git server on the dora-enea branch
Signed-off-by: Adrian Dudau <adrian.dudau@enea.com>
Diffstat (limited to 'meta/recipes-support/gmp')
-rw-r--r-- | meta/recipes-support/gmp/gmp-4.2.1/configure.patch | 209 | ||||
-rw-r--r-- | meta/recipes-support/gmp/gmp-4.2.1/disable-stdc.patch | 33 | ||||
-rw-r--r-- | meta/recipes-support/gmp/gmp-4.2.1/gmp_fix_for_automake-1.12.patch | 48 | ||||
-rw-r--r-- | meta/recipes-support/gmp/gmp-5.1.1/configure.patch | 210 | ||||
-rw-r--r-- | meta/recipes-support/gmp/gmp.inc | 25 | ||||
-rw-r--r-- | meta/recipes-support/gmp/gmp/amd64.patch | 18 | ||||
-rw-r--r-- | meta/recipes-support/gmp/gmp/use-includedir.patch | 15 | ||||
-rw-r--r-- | meta/recipes-support/gmp/gmp_4.2.1.bb | 19 | ||||
-rw-r--r-- | meta/recipes-support/gmp/gmp_5.1.1.bb | 10 |
9 files changed, 587 insertions, 0 deletions
diff --git a/meta/recipes-support/gmp/gmp-4.2.1/configure.patch b/meta/recipes-support/gmp/gmp-4.2.1/configure.patch new file mode 100644 index 0000000000..7597a935a2 --- /dev/null +++ b/meta/recipes-support/gmp/gmp-4.2.1/configure.patch | |||
@@ -0,0 +1,209 @@ | |||
1 | Upstream-Status: Pending | ||
2 | |||
3 | acinclude.m4 | 26 ++++++++++++++------------ | ||
4 | configure.in | 24 +++++++++--------------- | ||
5 | 2 files changed, 23 insertions(+), 27 deletions(-) | ||
6 | |||
7 | Index: gmp-5.0.3/acinclude.m4 | ||
8 | =================================================================== | ||
9 | --- gmp-5.0.3.orig/acinclude.m4 | ||
10 | +++ gmp-5.0.3/acinclude.m4 | ||
11 | @@ -30,29 +30,29 @@ dnl a_out.exe - OpenVMS DEC C called | ||
12 | dnl conftest.exe - various DOS compilers | ||
13 | |||
14 | |||
15 | -define(IA64_PATTERN, | ||
16 | +define([IA64_PATTERN], | ||
17 | [[ia64*-*-* | itanium-*-* | itanium2-*-*]]) | ||
18 | |||
19 | dnl Need to be careful not to match m6811, m6812, m68hc11 and m68hc12, all | ||
20 | dnl of which config.sub accepts. (Though none of which are likely to work | ||
21 | dnl with GMP.) | ||
22 | dnl | ||
23 | -define(M68K_PATTERN, | ||
24 | +define([M68K_PATTERN], | ||
25 | [[m68k-*-* | m68[0-9][0-9][0-9]-*-*]]) | ||
26 | |||
27 | -define(POWERPC64_PATTERN, | ||
28 | +define([POWERPC64_PATTERN], | ||
29 | [[powerpc64-*-* | powerpc64le-*-* | powerpc620-*-* | powerpc630-*-* | powerpc970-*-* | power[3-9]-*-*]]) | ||
30 | |||
31 | -define(S390_PATTERN, | ||
32 | +define([S390_PATTERN], | ||
33 | [[s390-*-* | z900esa-*-* | z990esa-*-* | z9esa-*-* | z10esa-*-* | z196esa-*-*]]) | ||
34 | |||
35 | -define(S390X_PATTERN, | ||
36 | +define([S390X_PATTERN], | ||
37 | [[s390x-*-* | z900-*-* | z990-*-* | z9-*-* | z10-*-* | z196-*-*]]) | ||
38 | |||
39 | -define(X86_PATTERN, | ||
40 | +define([X86_PATTERN], | ||
41 | [[i?86*-*-* | k[5-8]*-*-* | pentium*-*-* | athlon-*-* | viac3*-*-* | geode*-*-* | atom-*-*]]) | ||
42 | |||
43 | -define(X86_64_PATTERN, | ||
44 | +define([X86_64_PATTERN], | ||
45 | [[athlon64-*-* | k8-*-* | k10-*-* | bobcat-*-* | bulldozer-*-* | pentium4-*-* | atom-*-* | core2-*-* | corei*-*-* | x86_64-*-* | nano-*-*]]) | ||
46 | |||
47 | dnl GMP_FAT_SUFFIX(DSTVAR, DIRECTORY) | ||
48 | @@ -70,7 +70,7 @@ dnl x86 -> x86 | ||
49 | dnl x86/k6 -> k6 | ||
50 | dnl x86/k6/mmx -> k6_mmx | ||
51 | |||
52 | -define(GMP_FAT_SUFFIX, | ||
53 | +define([GMP_FAT_SUFFIX], | ||
54 | [[$1=`echo $2 | sed -e '/\//s:^[^/]*/::' -e 's:[\\/]:_:g'`]]) | ||
55 | |||
56 | |||
57 | @@ -79,7 +79,7 @@ dnl ---------------------------------- | ||
58 | dnl Emit code to remove any occurrence of ITEM from $LISTVAR. ITEM can be a | ||
59 | dnl shell expression like $foo if desired. | ||
60 | |||
61 | -define(GMP_REMOVE_FROM_LIST, | ||
62 | +define([GMP_REMOVE_FROM_LIST], | ||
63 | [remove_from_list_tmp= | ||
64 | for remove_from_list_i in $[][$1]; do | ||
65 | if test $remove_from_list_i = [$2]; then :; | ||
66 | @@ -95,12 +95,12 @@ dnl GMP_STRIP_PATH(subdir) | ||
67 | dnl ---------------------- | ||
68 | dnl Strip entries */subdir from $path and $fat_path. | ||
69 | |||
70 | -define(GMP_STRIP_PATH, | ||
71 | +define([GMP_STRIP_PATH], | ||
72 | [GMP_STRIP_PATH_VAR(path, [$1]) | ||
73 | GMP_STRIP_PATH_VAR(fat_path, [$1]) | ||
74 | ]) | ||
75 | |||
76 | -define(GMP_STRIP_PATH_VAR, | ||
77 | +define([GMP_STRIP_PATH_VAR], | ||
78 | [tmp_path= | ||
79 | for i in $[][$1]; do | ||
80 | case $i in | ||
81 | @@ -121,7 +121,7 @@ dnl | ||
82 | dnl Dummy value for GMP_LIMB_BITS is enough | ||
83 | dnl for all current configure-time uses of gmp.h. | ||
84 | |||
85 | -define(GMP_INCLUDE_GMP_H, | ||
86 | +define([GMP_INCLUDE_GMP_H], | ||
87 | [[#define __GMP_WITHIN_CONFIGURE 1 /* ignore template stuff */ | ||
88 | #define GMP_NAIL_BITS $GMP_NAIL_BITS | ||
89 | #define GMP_LIMB_BITS 123 | ||
90 | @@ -136,7 +136,7 @@ dnl Expand at autoconf time to the valu | ||
91 | dnl FILE. The regexps here aren't very rugged, but are enough for gmp. | ||
92 | dnl /dev/null as a parameter prevents a hang if $2 is accidentally omitted. | ||
93 | |||
94 | -define(GMP_HEADER_GETVAL, | ||
95 | +define([GMP_HEADER_GETVAL], | ||
96 | [patsubst(patsubst( | ||
97 | esyscmd([grep "^#define $1 " $2 /dev/null 2>/dev/null]), | ||
98 | [^.*$1[ ]+],[]), | ||
99 | @@ -150,7 +150,7 @@ dnl The gmp version number, extracted f | ||
100 | dnl autoconf time. Two digits like 3.0 if patchlevel <= 0, or three digits | ||
101 | dnl like 3.0.1 if patchlevel > 0. | ||
102 | |||
103 | -define(GMP_VERSION, | ||
104 | +define([GMP_VERSION], | ||
105 | [GMP_HEADER_GETVAL(__GNU_MP_VERSION,gmp-h.in)[]dnl | ||
106 | .GMP_HEADER_GETVAL(__GNU_MP_VERSION_MINOR,gmp-h.in)[]dnl | ||
107 | .GMP_HEADER_GETVAL(__GNU_MP_VERSION_PATCHLEVEL,gmp-h.in)]) | ||
108 | @@ -1512,7 +1512,9 @@ esac | ||
109 | echo ["define(<CONFIG_TOP_SRCDIR>,<\`$tmp'>)"] >>$gmp_tmpconfigm4 | ||
110 | |||
111 | # All CPUs use asm-defs.m4 | ||
112 | -echo ["include][(CONFIG_TOP_SRCDIR\`/mpn/asm-defs.m4')"] >>$gmp_tmpconfigm4i | ||
113 | +echo -n ["include("] >>$gmp_tmpconfigm4i | ||
114 | +echo -n ["CONFIG_TOP_SRCDIR\`/mpn/asm-defs.m4'"] >>$gmp_tmpconfigm4i | ||
115 | +echo [")"] >>$gmp_tmpconfigm4i | ||
116 | ]) | ||
117 | |||
118 | |||
119 | Index: gmp-5.0.3/configure.in | ||
120 | =================================================================== | ||
121 | --- gmp-5.0.3.orig/configure.in | ||
122 | +++ gmp-5.0.3/configure.in | ||
123 | @@ -29,12 +29,6 @@ AC_REVISION($Revision$) | ||
124 | AC_PREREQ(2.59) | ||
125 | AC_INIT(GNU MP, GMP_VERSION, [gmp-bugs@gmplib.org, see http://gmplib.org/manual/Reporting-Bugs.html], gmp) | ||
126 | AC_CONFIG_SRCDIR(gmp-impl.h) | ||
127 | -m4_pattern_forbid([^[ \t]*GMP_]) | ||
128 | -m4_pattern_allow(GMP_LDFLAGS) | ||
129 | -m4_pattern_allow(GMP_LIMB_BITS) | ||
130 | -m4_pattern_allow(GMP_MPARAM_H_SUGGEST) | ||
131 | -m4_pattern_allow(GMP_NAIL_BITS) | ||
132 | -m4_pattern_allow(GMP_NUMB_BITS) | ||
133 | |||
134 | # If --target is not used then $target_alias is empty, but if say | ||
135 | # "./configure athlon-pc-freebsd3.5" is used, then all three of | ||
136 | @@ -311,7 +305,7 @@ AH_VERBATIM([HAVE_HOST_CPU_1], | ||
137 | # After GMP specific searches and tests, the standard autoconf AC_PROG_CC is | ||
138 | # called. User selections of CC etc are respected. | ||
139 | # | ||
140 | -# Care is taken not to use macros like AC_TRY_COMPILE during the GMP | ||
141 | +# Care is taken not to use macros like AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])],[],[]) during the GMP | ||
142 | # pre-testing, since they of course depend on AC_PROG_CC, and also some of | ||
143 | # them cache their results, which is not wanted. | ||
144 | # | ||
145 | @@ -403,7 +397,7 @@ abilist="standard" | ||
146 | # FIXME: We'd like to prefer an ANSI compiler, perhaps by preferring | ||
147 | # c89 over cc here. But note that on HP-UX c89 provides a castrated | ||
148 | # environment, and would want to be excluded somehow. Maybe | ||
149 | -# AC_PROG_CC_STDC already does enough to stick cc into ANSI mode and | ||
150 | +# already does enough to stick cc into ANSI mode and | ||
151 | # we don't need to worry. | ||
152 | # | ||
153 | cclist="gcc cc" | ||
154 | @@ -1666,7 +1660,7 @@ esac | ||
155 | CFLAGS_or_unset=${CFLAGS-'(unset)'} | ||
156 | CPPFLAGS_or_unset=${CPPFLAGS-'(unset)'} | ||
157 | |||
158 | -cat >&AC_FD_CC <<EOF | ||
159 | +cat >&AS_MESSAGE_LOG_FD() <<EOF | ||
160 | User: | ||
161 | ABI=$ABI | ||
162 | CC=$CC | ||
163 | @@ -2073,7 +2067,6 @@ AC_SUBST(DEFN_LONG_LONG_LIMB) | ||
164 | |||
165 | # The C compiler and preprocessor, put into ANSI mode if possible. | ||
166 | AC_PROG_CC | ||
167 | -AC_PROG_CC_STDC | ||
168 | AC_PROG_CPP | ||
169 | GMP_H_ANSI | ||
170 | |||
171 | @@ -2096,11 +2089,11 @@ AC_SUBST(CCAS) | ||
172 | |||
173 | # The C++ compiler, if desired. | ||
174 | want_cxx=no | ||
175 | +AC_PROG_CXX | ||
176 | if test $enable_cxx != no; then | ||
177 | test_CXXFLAGS=${CXXFLAGS+set} | ||
178 | - AC_PROG_CXX | ||
179 | |||
180 | - echo "CXXFLAGS chosen by autoconf: $CXXFLAGS" >&AC_FD_CC | ||
181 | + echo "CXXFLAGS chosen by autoconf: $CXXFLAGS" >&AS_MESSAGE_LOG_FD() | ||
182 | cxxflags_ac_prog_cxx=$CXXFLAGS | ||
183 | cxxflags_list=ac_prog_cxx | ||
184 | |||
185 | @@ -2206,7 +2199,7 @@ case $host in | ||
186 | esac | ||
187 | |||
188 | |||
189 | -cat >&AC_FD_CC <<EOF | ||
190 | +cat >&AS_MESSAGE_LOG_FD() <<EOF | ||
191 | Decided: | ||
192 | ABI=$ABI | ||
193 | CC=$CC | ||
194 | @@ -3465,7 +3458,7 @@ GMP_FINISH | ||
195 | # FIXME: Upcoming version of autoconf/automake may not like broken lines. | ||
196 | # Right now automake isn't accepting the new AC_CONFIG_FILES scheme. | ||
197 | |||
198 | -AC_OUTPUT(Makefile \ | ||
199 | +AC_CONFIG_FILES([Makefile \ | ||
200 | mpbsd/Makefile mpf/Makefile mpn/Makefile mpq/Makefile \ | ||
201 | mpz/Makefile printf/Makefile scanf/Makefile cxx/Makefile \ | ||
202 | tests/Makefile tests/devel/Makefile tests/mpbsd/Makefile \ | ||
203 | @@ -3474,4 +3467,5 @@ AC_OUTPUT(Makefile \ | ||
204 | tests/cxx/Makefile \ | ||
205 | doc/Makefile tune/Makefile \ | ||
206 | demos/Makefile demos/calc/Makefile demos/expr/Makefile \ | ||
207 | - gmp.h:gmp-h.in mp.h:mp-h.in) | ||
208 | + gmp.h:gmp-h.in mp.h:mp-h.in]) | ||
209 | +AC_OUTPUT | ||
diff --git a/meta/recipes-support/gmp/gmp-4.2.1/disable-stdc.patch b/meta/recipes-support/gmp/gmp-4.2.1/disable-stdc.patch new file mode 100644 index 0000000000..aaffaf14c5 --- /dev/null +++ b/meta/recipes-support/gmp/gmp-4.2.1/disable-stdc.patch | |||
@@ -0,0 +1,33 @@ | |||
1 | Upstream-Status: Pending | ||
2 | |||
3 | # "extern inline" in traditional gcc means that the function should be | ||
4 | # inlined wherever it's seen, while in C99, "extern inline" means that i | ||
5 | # the function should only be inlined where the inline definition is | ||
6 | # seen while in other places it's not inlined: | ||
7 | # http://gcc.gnu.org/ml/gcc/2006-11/msg00006.html | ||
8 | # | ||
9 | # gmp checks "--std=gnu99" to use C99 convention however it internally | ||
10 | # defines some "extern inline" functions in gmp.h, which is included | ||
11 | # by mainly .c files and finally lead a flood of redefinition function | ||
12 | # errors when linking objects together. | ||
13 | # | ||
14 | # So disable C99/ANSI detection to stick to tranditional gcc behavior | ||
15 | # | ||
16 | # by Kevin Tian <kevin.tian@intel.com>, 2010-08-13 | ||
17 | # | ||
18 | # (this patch is licensed under GPLv2+) | ||
19 | |||
20 | diff --git a/configure.in b/configure.in | ||
21 | index 450cc92..aab0b59 100644 | ||
22 | --- a/configure.in | ||
23 | +++ b/configure.in | ||
24 | @@ -1869,9 +1869,7 @@ AC_SUBST(DEFN_LONG_LONG_LIMB) | ||
25 | |||
26 | # The C compiler and preprocessor, put into ANSI mode if possible. | ||
27 | AC_PROG_CC | ||
28 | -AC_PROG_CC_STDC | ||
29 | AC_PROG_CPP | ||
30 | -GMP_H_ANSI | ||
31 | |||
32 | |||
33 | # The C compiler on the build system, and associated tests. | ||
diff --git a/meta/recipes-support/gmp/gmp-4.2.1/gmp_fix_for_automake-1.12.patch b/meta/recipes-support/gmp/gmp-4.2.1/gmp_fix_for_automake-1.12.patch new file mode 100644 index 0000000000..fbd8a39d01 --- /dev/null +++ b/meta/recipes-support/gmp/gmp-4.2.1/gmp_fix_for_automake-1.12.patch | |||
@@ -0,0 +1,48 @@ | |||
1 | Upstream-Status: Pending | ||
2 | |||
3 | automake 1.12 has depricated automatic de-ANSI-fication support | ||
4 | |||
5 | this patch avoids these kinds of errors: | ||
6 | |||
7 | | configure.in:2240: error: automatic de-ANSI-fication support has been removed | ||
8 | | Makefile.am:28: error: automatic de-ANSI-fication support has been removed | ||
9 | |||
10 | Signed-Off-By: Nitin A Kamble <nitin.a.kamble@intel.com> | ||
11 | 2012/05/02 | ||
12 | |||
13 | Index: gmp-4.2.1/configure.in | ||
14 | =================================================================== | ||
15 | --- gmp-4.2.1.orig/configure.in | ||
16 | +++ gmp-4.2.1/configure.in | ||
17 | @@ -67,7 +67,7 @@ dnl | ||
18 | dnl Note that there's a copy of these options in the top-level Makefile.am, | ||
19 | dnl so update there too if changing anything. | ||
20 | dnl | ||
21 | -AM_INIT_AUTOMAKE([1.8 gnu no-dependencies $(top_builddir)/ansi2knr]) | ||
22 | +AM_INIT_AUTOMAKE([1.8 gnu no-dependencies]) | ||
23 | AM_CONFIG_HEADER(config.h:config.in) | ||
24 | AM_MAINTAINER_MODE | ||
25 | |||
26 | @@ -2022,9 +2022,6 @@ fi | ||
27 | echo " MPN_PATH=\"$path\"" | ||
28 | |||
29 | |||
30 | -# Automake ansi2knr support. | ||
31 | -AM_C_PROTOTYPES | ||
32 | - | ||
33 | GMP_PROG_AR | ||
34 | GMP_PROG_NM | ||
35 | |||
36 | Index: gmp-4.2.1/Makefile.am | ||
37 | =================================================================== | ||
38 | --- gmp-4.2.1.orig/Makefile.am | ||
39 | +++ gmp-4.2.1/Makefile.am | ||
40 | @@ -27,7 +27,7 @@ | ||
41 | # Makefiles in subdirectories, but here we must omit it so automake gives | ||
42 | # the actual ansi2knr build rule, not "cd $(top_builddir) && make ansi2knr". | ||
43 | # | ||
44 | -AUTOMAKE_OPTIONS = 1.8 gnu no-dependencies ansi2knr | ||
45 | +AUTOMAKE_OPTIONS = 1.8 gnu no-dependencies | ||
46 | |||
47 | |||
48 | # Libtool -version-info for libgmp.la and libmp.la. See "Versioning" in the | ||
diff --git a/meta/recipes-support/gmp/gmp-5.1.1/configure.patch b/meta/recipes-support/gmp/gmp-5.1.1/configure.patch new file mode 100644 index 0000000000..591ea79051 --- /dev/null +++ b/meta/recipes-support/gmp/gmp-5.1.1/configure.patch | |||
@@ -0,0 +1,210 @@ | |||
1 | Upstream-Status: Pending | ||
2 | |||
3 | Updated to apply to gmp-5.1.0 | ||
4 | |||
5 | Signed-off-by: Marko Lindqvist <cazfi74@gmail.com> | ||
6 | |||
7 | diff -Nurd gmp-5.1.0/acinclude.m4 gmp-5.1.0/acinclude.m4 | ||
8 | --- gmp-5.1.0/acinclude.m4 2012-12-18 21:05:09.000000000 +0200 | ||
9 | +++ gmp-5.1.0/acinclude.m4 2013-01-02 05:19:26.977013073 +0200 | ||
10 | @@ -30,29 +30,29 @@ | ||
11 | dnl conftest.exe - various DOS compilers | ||
12 | |||
13 | |||
14 | -define(IA64_PATTERN, | ||
15 | +define([IA64_PATTERN], | ||
16 | [[ia64*-*-* | itanium-*-* | itanium2-*-*]]) | ||
17 | |||
18 | dnl Need to be careful not to match m6811, m6812, m68hc11 and m68hc12, all | ||
19 | dnl of which config.sub accepts. (Though none of which are likely to work | ||
20 | dnl with GMP.) | ||
21 | dnl | ||
22 | -define(M68K_PATTERN, | ||
23 | +define([M68K_PATTERN], | ||
24 | [[m68k-*-* | m68[0-9][0-9][0-9]-*-*]]) | ||
25 | |||
26 | -define(POWERPC64_PATTERN, | ||
27 | +define([POWERPC64_PATTERN], | ||
28 | [[powerpc64-*-* | powerpc64le-*-* | powerpc620-*-* | powerpc630-*-* | powerpc970-*-* | power[3-9]-*-*]]) | ||
29 | |||
30 | -define(S390_PATTERN, | ||
31 | +define([S390_PATTERN], | ||
32 | [[s390-*-* | z900esa-*-* | z990esa-*-* | z9esa-*-* | z10esa-*-* | z196esa-*-*]]) | ||
33 | |||
34 | -define(S390X_PATTERN, | ||
35 | +define([S390X_PATTERN], | ||
36 | [[s390x-*-* | z900-*-* | z990-*-* | z9-*-* | z10-*-* | z196-*-*]]) | ||
37 | |||
38 | -define(X86_PATTERN, | ||
39 | +define([X86_PATTERN], | ||
40 | [[i?86*-*-* | k[5-8]*-*-* | pentium*-*-* | athlon-*-* | viac3*-*-* | geode*-*-* | atom-*-*]]) | ||
41 | |||
42 | -define(X86_64_PATTERN, | ||
43 | +define([X86_64_PATTERN], | ||
44 | [[athlon64-*-* | k8-*-* | k10-*-* | bobcat-*-* | bulldozer-*-* | pentium4-*-* | atom-*-* | core2-*-* | corei*-*-* | x86_64-*-* | nano-*-*]]) | ||
45 | |||
46 | dnl GMP_FAT_SUFFIX(DSTVAR, DIRECTORY) | ||
47 | @@ -70,7 +70,7 @@ | ||
48 | dnl x86/k6 -> k6 | ||
49 | dnl x86/k6/mmx -> k6_mmx | ||
50 | |||
51 | -define(GMP_FAT_SUFFIX, | ||
52 | +define([GMP_FAT_SUFFIX], | ||
53 | [[$1=`echo $2 | sed -e '/\//s:^[^/]*/::' -e 's:[\\/]:_:g'`]]) | ||
54 | |||
55 | |||
56 | @@ -79,7 +79,7 @@ | ||
57 | dnl Emit code to remove any occurrence of ITEM from $LISTVAR. ITEM can be a | ||
58 | dnl shell expression like $foo if desired. | ||
59 | |||
60 | -define(GMP_REMOVE_FROM_LIST, | ||
61 | +define([GMP_REMOVE_FROM_LIST], | ||
62 | [remove_from_list_tmp= | ||
63 | for remove_from_list_i in $[][$1]; do | ||
64 | if test $remove_from_list_i = [$2]; then :; | ||
65 | @@ -95,12 +95,12 @@ | ||
66 | dnl ---------------------- | ||
67 | dnl Strip entries */subdir from $path and $fat_path. | ||
68 | |||
69 | -define(GMP_STRIP_PATH, | ||
70 | +define([GMP_STRIP_PATH], | ||
71 | [GMP_STRIP_PATH_VAR(path, [$1]) | ||
72 | GMP_STRIP_PATH_VAR(fat_path, [$1]) | ||
73 | ]) | ||
74 | |||
75 | -define(GMP_STRIP_PATH_VAR, | ||
76 | +define([GMP_STRIP_PATH_VAR], | ||
77 | [tmp_path= | ||
78 | for i in $[][$1]; do | ||
79 | case $i in | ||
80 | @@ -121,7 +121,7 @@ | ||
81 | dnl Dummy value for GMP_LIMB_BITS is enough | ||
82 | dnl for all current configure-time uses of gmp.h. | ||
83 | |||
84 | -define(GMP_INCLUDE_GMP_H, | ||
85 | +define([GMP_INCLUDE_GMP_H], | ||
86 | [[#define __GMP_WITHIN_CONFIGURE 1 /* ignore template stuff */ | ||
87 | #define GMP_NAIL_BITS $GMP_NAIL_BITS | ||
88 | #define GMP_LIMB_BITS 123 | ||
89 | @@ -136,7 +136,7 @@ | ||
90 | dnl FILE. The regexps here aren't very rugged, but are enough for gmp. | ||
91 | dnl /dev/null as a parameter prevents a hang if $2 is accidentally omitted. | ||
92 | |||
93 | -define(GMP_HEADER_GETVAL, | ||
94 | +define([GMP_HEADER_GETVAL], | ||
95 | [patsubst(patsubst( | ||
96 | esyscmd([grep "^#define $1 " $2 /dev/null 2>/dev/null]), | ||
97 | [^.*$1[ ]+],[]), | ||
98 | @@ -150,7 +150,7 @@ | ||
99 | dnl autoconf time. Two digits like 3.0 if patchlevel <= 0, or three digits | ||
100 | dnl like 3.0.1 if patchlevel > 0. | ||
101 | |||
102 | -define(GMP_VERSION, | ||
103 | +define([GMP_VERSION], | ||
104 | [GMP_HEADER_GETVAL(__GNU_MP_VERSION,gmp-h.in)[]dnl | ||
105 | .GMP_HEADER_GETVAL(__GNU_MP_VERSION_MINOR,gmp-h.in)[]dnl | ||
106 | .GMP_HEADER_GETVAL(__GNU_MP_VERSION_PATCHLEVEL,gmp-h.in)]) | ||
107 | @@ -1512,7 +1512,9 @@ | ||
108 | echo ["define(<CONFIG_TOP_SRCDIR>,<\`$tmp'>)"] >>$gmp_tmpconfigm4 | ||
109 | |||
110 | # All CPUs use asm-defs.m4 | ||
111 | -echo ["include][(CONFIG_TOP_SRCDIR\`/mpn/asm-defs.m4')"] >>$gmp_tmpconfigm4i | ||
112 | +echo -n ["include("] >>$gmp_tmpconfigm4i | ||
113 | +echo -n ["CONFIG_TOP_SRCDIR\`/mpn/asm-defs.m4'"] >>$gmp_tmpconfigm4i | ||
114 | +echo [")"] >>$gmp_tmpconfigm4i | ||
115 | ]) | ||
116 | |||
117 | |||
118 | diff -Nurd gmp-5.1.0/configure.ac gmp-5.1.0/configure.ac | ||
119 | --- gmp-5.1.0/configure.ac 2012-12-18 21:05:09.000000000 +0200 | ||
120 | +++ gmp-5.1.0/configure.ac 2013-01-02 05:19:26.977013073 +0200 | ||
121 | @@ -29,13 +29,6 @@ | ||
122 | AC_PREREQ(2.59) | ||
123 | AC_INIT(GNU MP, GMP_VERSION, [gmp-bugs@gmplib.org, see http://gmplib.org/manual/Reporting-Bugs.html], gmp) | ||
124 | AC_CONFIG_SRCDIR(gmp-impl.h) | ||
125 | -m4_pattern_forbid([^[ \t]*GMP_]) | ||
126 | -m4_pattern_allow(GMP_LDFLAGS) | ||
127 | -m4_pattern_allow(GMP_LIMB_BITS) | ||
128 | -m4_pattern_allow(GMP_MPARAM_H_SUGGEST) | ||
129 | -m4_pattern_allow(GMP_NAIL_BITS) | ||
130 | -m4_pattern_allow(GMP_NUMB_BITS) | ||
131 | -m4_pattern_allow(GMP_NONSTD_ABI) | ||
132 | |||
133 | # If --target is not used then $target_alias is empty, but if say | ||
134 | # "./configure athlon-pc-freebsd3.5" is used, then all three of | ||
135 | @@ -314,7 +307,7 @@ | ||
136 | # After GMP specific searches and tests, the standard autoconf AC_PROG_CC is | ||
137 | # called. User selections of CC etc are respected. | ||
138 | # | ||
139 | -# Care is taken not to use macros like AC_TRY_COMPILE during the GMP | ||
140 | +# Care is taken not to use macros like AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])],[],[]) during the GMP | ||
141 | # pre-testing, since they of course depend on AC_PROG_CC, and also some of | ||
142 | # them cache their results, which is not wanted. | ||
143 | # | ||
144 | @@ -406,7 +399,7 @@ | ||
145 | # FIXME: We'd like to prefer an ANSI compiler, perhaps by preferring | ||
146 | # c89 over cc here. But note that on HP-UX c89 provides a castrated | ||
147 | # environment, and would want to be excluded somehow. Maybe | ||
148 | -# AC_PROG_CC_STDC already does enough to stick cc into ANSI mode and | ||
149 | +# already does enough to stick cc into ANSI mode and | ||
150 | # we don't need to worry. | ||
151 | # | ||
152 | cclist="gcc cc" | ||
153 | @@ -1727,7 +1720,7 @@ | ||
154 | CFLAGS_or_unset=${CFLAGS-'(unset)'} | ||
155 | CPPFLAGS_or_unset=${CPPFLAGS-'(unset)'} | ||
156 | |||
157 | -cat >&AC_FD_CC <<EOF | ||
158 | +cat >&AS_MESSAGE_LOG_FD() <<EOF | ||
159 | User: | ||
160 | ABI=$ABI | ||
161 | CC=$CC | ||
162 | @@ -2147,7 +2140,6 @@ | ||
163 | |||
164 | # The C compiler and preprocessor, put into ANSI mode if possible. | ||
165 | AC_PROG_CC | ||
166 | -AC_PROG_CC_STDC | ||
167 | AC_PROG_CPP | ||
168 | |||
169 | |||
170 | @@ -2169,11 +2161,11 @@ | ||
171 | |||
172 | # The C++ compiler, if desired. | ||
173 | want_cxx=no | ||
174 | +AC_PROG_CXX | ||
175 | if test $enable_cxx != no; then | ||
176 | test_CXXFLAGS=${CXXFLAGS+set} | ||
177 | - AC_PROG_CXX | ||
178 | |||
179 | - echo "CXXFLAGS chosen by autoconf: $CXXFLAGS" >&AC_FD_CC | ||
180 | + echo "CXXFLAGS chosen by autoconf: $CXXFLAGS" >&AS_MESSAGE_LOG_FD() | ||
181 | cxxflags_ac_prog_cxx=$CXXFLAGS | ||
182 | cxxflags_list=ac_prog_cxx | ||
183 | |||
184 | @@ -2289,7 +2281,7 @@ | ||
185 | fi | ||
186 | |||
187 | |||
188 | -cat >&AC_FD_CC <<EOF | ||
189 | +cat >&AS_MESSAGE_LOG_FD() <<EOF | ||
190 | Decided: | ||
191 | ABI=$ABI | ||
192 | CC=$CC | ||
193 | @@ -3638,7 +3630,7 @@ | ||
194 | # FIXME: Upcoming version of autoconf/automake may not like broken lines. | ||
195 | # Right now automake isn't accepting the new AC_CONFIG_FILES scheme. | ||
196 | |||
197 | -AC_OUTPUT(Makefile \ | ||
198 | +AC_CONFIG_FILES([Makefile \ | ||
199 | mpf/Makefile mpn/Makefile mpq/Makefile \ | ||
200 | mpz/Makefile printf/Makefile scanf/Makefile rand/Makefile cxx/Makefile \ | ||
201 | tests/Makefile tests/devel/Makefile \ | ||
202 | @@ -3647,7 +3639,8 @@ | ||
203 | tests/cxx/Makefile \ | ||
204 | doc/Makefile tune/Makefile \ | ||
205 | demos/Makefile demos/calc/Makefile demos/expr/Makefile \ | ||
206 | - gmp.h:gmp-h.in) | ||
207 | + gmp.h:gmp-h.in]) | ||
208 | +AC_OUTPUT | ||
209 | |||
210 | AC_MSG_NOTICE([summary of build options: | ||
diff --git a/meta/recipes-support/gmp/gmp.inc b/meta/recipes-support/gmp/gmp.inc new file mode 100644 index 0000000000..bec06ecd69 --- /dev/null +++ b/meta/recipes-support/gmp/gmp.inc | |||
@@ -0,0 +1,25 @@ | |||
1 | SECTION = "devel" | ||
2 | DESCRIPTION = "GNU multiprecision arithmetic library" | ||
3 | HOMEPAGE = "http://gmplib.org/" | ||
4 | LICENSE = "GPLv3 LGPLv3" | ||
5 | |||
6 | REVISION = "" | ||
7 | |||
8 | SRC_URI = "ftp://ftp.gmplib.org/pub/gmp-${PV}/gmp-${PV}${REVISION}.tar.bz2 \ | ||
9 | file://configure.patch \ | ||
10 | file://amd64.patch " | ||
11 | |||
12 | inherit autotools | ||
13 | |||
14 | ARM_INSTRUCTION_SET = "arm" | ||
15 | |||
16 | acpaths = "" | ||
17 | |||
18 | BBCLASSEXTEND = "native nativesdk" | ||
19 | |||
20 | EXTRA_OECONF += " --enable-cxx=detect" | ||
21 | |||
22 | PACKAGES =+ "libgmpxx" | ||
23 | FILES_libgmpxx = "${libdir}/libgmpxx${SOLIBS}" | ||
24 | |||
25 | SSTATE_SCAN_FILES += "gmp.h" | ||
diff --git a/meta/recipes-support/gmp/gmp/amd64.patch b/meta/recipes-support/gmp/gmp/amd64.patch new file mode 100644 index 0000000000..564d12d42b --- /dev/null +++ b/meta/recipes-support/gmp/gmp/amd64.patch | |||
@@ -0,0 +1,18 @@ | |||
1 | Upstream-Status: Pending | ||
2 | |||
3 | Index: gmp-5.0.3/longlong.h | ||
4 | =================================================================== | ||
5 | --- gmp-5.0.3.orig/longlong.h | ||
6 | +++ gmp-5.0.3/longlong.h | ||
7 | @@ -994,8 +994,10 @@ extern UWtype __MPN(udiv_qrnnd) _PROTO ( | ||
8 | count is only an int. */ | ||
9 | #define count_trailing_zeros(count, x) \ | ||
10 | do { \ | ||
11 | + UDItype __cbtmp; \ | ||
12 | ASSERT ((x) != 0); \ | ||
13 | - __asm__ ("bsfq %1,%q0" : "=r" (count) : "rm" ((UDItype)(x))); \ | ||
14 | + __asm__ ("bsfq %1,%0" : "=r" (__cbtmp) : "rm" ((UDItype)(x))); \ | ||
15 | + (count) = __cbtmp; \ | ||
16 | } while (0) | ||
17 | #endif /* x86_64 */ | ||
18 | |||
diff --git a/meta/recipes-support/gmp/gmp/use-includedir.patch b/meta/recipes-support/gmp/gmp/use-includedir.patch new file mode 100644 index 0000000000..74904a2530 --- /dev/null +++ b/meta/recipes-support/gmp/gmp/use-includedir.patch | |||
@@ -0,0 +1,15 @@ | |||
1 | Upstream-Status: Pending | ||
2 | |||
3 | Index: gmp-4.2.4/Makefile.am | ||
4 | =================================================================== | ||
5 | --- gmp-4.2.4.orig/Makefile.am 2008-09-10 19:31:27.000000000 +0000 | ||
6 | +++ gmp-4.2.4/Makefile.am 2009-07-06 20:19:19.000000000 +0000 | ||
7 | @@ -106,7 +106,7 @@ | ||
8 | # but anyone knowledgable enough to be playing with exec_prefix will be able | ||
9 | # to address that. | ||
10 | # | ||
11 | -includeexecdir = $(exec_prefix)/include | ||
12 | +includeexecdir = $(includedir) | ||
13 | include_HEADERS = $(GMPXX_HEADERS_OPTION) | ||
14 | nodist_includeexec_HEADERS = gmp.h $(MPBSD_HEADERS_OPTION) | ||
15 | lib_LTLIBRARIES = libgmp.la $(GMPXX_LTLIBRARIES_OPTION) $(MPBSD_LTLIBRARIES_OPTION) | ||
diff --git a/meta/recipes-support/gmp/gmp_4.2.1.bb b/meta/recipes-support/gmp/gmp_4.2.1.bb new file mode 100644 index 0000000000..4da8381345 --- /dev/null +++ b/meta/recipes-support/gmp/gmp_4.2.1.bb | |||
@@ -0,0 +1,19 @@ | |||
1 | DESCRIPTION = "GMP is a free library for arbitrary precision arithmetic, operating on signed integers, rational numbers, and floating point numbers" | ||
2 | HOMEPAGE = "http://gmplib.org/" | ||
3 | BUGTRACKER = "http://gmplib.org/mailman/listinfo/gmp-bugs" | ||
4 | # demo is licensed under GPLv2+, which however we don't package at all | ||
5 | LICENSE = "LGPLv2.1+" | ||
6 | LIC_FILES_CHKSUM = "file://COPYING;md5=892f569a555ba9c07a568a7c0c4fa63a \ | ||
7 | file://COPYING.LIB;md5=fbc093901857fcd118f065f900982c24 \ | ||
8 | file://gmp-h.in;beginline=6;endline=21;md5=e056f74a12c3277d730dbcfb85d2ca34" | ||
9 | PR = "r2" | ||
10 | |||
11 | SRC_URI = "${GNU_MIRROR}/gmp/${BP}.tar.bz2 \ | ||
12 | file://disable-stdc.patch \ | ||
13 | file://gmp_fix_for_automake-1.12.patch \ | ||
14 | " | ||
15 | |||
16 | SRC_URI[md5sum] = "091c56e0e1cca6b09b17b69d47ef18e3" | ||
17 | SRC_URI[sha256sum] = "d07ffcb37eecec35c5ec72516d10b35fdf6e6fef1fcf1dcd37e30b8cbf8bf941" | ||
18 | |||
19 | inherit autotools | ||
diff --git a/meta/recipes-support/gmp/gmp_5.1.1.bb b/meta/recipes-support/gmp/gmp_5.1.1.bb new file mode 100644 index 0000000000..d6dcb97f3e --- /dev/null +++ b/meta/recipes-support/gmp/gmp_5.1.1.bb | |||
@@ -0,0 +1,10 @@ | |||
1 | require gmp.inc | ||
2 | LICENSE="LGPLv3&GPLv3" | ||
3 | LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \ | ||
4 | file://version.c;endline=18;md5=d8c56b52b9092346b9f93b4da65ef790" | ||
5 | |||
6 | SRC_URI_append = " file://use-includedir.patch \ | ||
7 | " | ||
8 | |||
9 | SRC_URI[md5sum] = "2fa018a7cd193c78494525f236d02dd6" | ||
10 | SRC_URI[sha256sum] = "a0d4779f48b36519dfaceb5f987a7c76fcac223258bebea3bb2244310970afad" | ||