aboutsummaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/gmp/gmp-4.2.1/disable-stdc.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-devtools/gmp/gmp-4.2.1/disable-stdc.patch')
-rw-r--r--meta/recipes-devtools/gmp/gmp-4.2.1/disable-stdc.patch31
1 files changed, 31 insertions, 0 deletions
diff --git a/meta/recipes-devtools/gmp/gmp-4.2.1/disable-stdc.patch b/meta/recipes-devtools/gmp/gmp-4.2.1/disable-stdc.patch
new file mode 100644
index 0000000000..83c9eae36a
--- /dev/null
+++ b/meta/recipes-devtools/gmp/gmp-4.2.1/disable-stdc.patch
@@ -0,0 +1,31 @@
+# "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.