blob: 266f9975902f1aa8f5299b096ec254c8cd70c40f [file] [log] [blame]
From 6933f4f69d6a0f5f83b6af6070418d789a48f663 Mon Sep 17 00:00:00 2001
From: Jean-Francois Thibert <jfthibert@google.com>
Date: Thu, 4 Feb 2016 15:41:49 -0500
Subject: [PATCH] Enable long double on mips for C++11 functions
diff --git a/package/uclibc/0.9.33.2/uclibc-0074-allow-long-double-on-mips.patch b/package/uclibc/0.9.33.2/uclibc-0074-allow-long-double-on-mips.patch
new file mode 100644
index 0000000..e357857
--- /dev/null
+++ b/package/uclibc/0.9.33.2/uclibc-0074-allow-long-double-on-mips.patch
@@ -0,0 +1,26 @@
+--- a/extra/Configs/Config.in.arch 2012-05-15 03:20:09.000000000 -0400
++++ b/extra/Configs/Config.in.arch 2016-01-08 11:16:53.007031385 -0500
+@@ -189,7 +189,7 @@
+ config UCLIBC_HAS_LONG_DOUBLE_MATH
+ bool "Enable long double support"
+ depends on DO_C99_MATH
+- depends on TARGET_i386 || TARGET_m68k || TARGET_sparc || TARGET_x86_64 || TARGET_powerpc || TARGET_sh || TARGET_microblaze
++ depends on TARGET_i386 || TARGET_m68k || TARGET_sparc || TARGET_x86_64 || TARGET_powerpc || TARGET_sh || TARGET_microblaze || TARGET_mips
+ default y
+ help
+ If you want the uClibc math library to contain the full set of C99
+
+--- a/libc/sysdeps/linux/mips/bits/mathdef.h 2012-05-15 03:20:09.000000000 -0400
++++ b/libc/sysdeps/linux/mips/bits/mathdef.h 2016-02-03 16:09:21.976717193 -0500
+@@ -39,10 +39,6 @@
+
+ #endif /* ISO C99 */
+
+-#if ! defined __NO_LONG_DOUBLE_MATH && _MIPS_SIM == _ABIO32
+-/* Signal that we do not really have a `long double'. This disables the
+- declaration of all the `long double' function variants. */
+-# define __NO_LONG_DOUBLE_MATH 1
+-#elif !defined __NO_LONG_DOUBLE_MATH && !defined __UCLIBC_HAS_LONG_DOUBLE_MATH__
++#if !defined __NO_LONG_DOUBLE_MATH && !defined __UCLIBC_HAS_LONG_DOUBLE_MATH__
+ # define __NO_LONG_DOUBLE_MATH 1
+ #endif