summaryrefslogtreecommitdiffstats
path: root/package/uclibc
diff options
context:
space:
mode:
Diffstat (limited to 'package/uclibc')
-rw-r--r--package/uclibc/0001-sync-features.h-with-GNU-C-library-fixes-gcc-7.1-too.patch64
-rw-r--r--package/uclibc/uclibc.mk6
2 files changed, 64 insertions, 6 deletions
diff --git a/package/uclibc/0001-sync-features.h-with-GNU-C-library-fixes-gcc-7.1-too.patch b/package/uclibc/0001-sync-features.h-with-GNU-C-library-fixes-gcc-7.1-too.patch
new file mode 100644
index 0000000000..eb1459be81
--- /dev/null
+++ b/package/uclibc/0001-sync-features.h-with-GNU-C-library-fixes-gcc-7.1-too.patch
@@ -0,0 +1,64 @@
+From 5b0f49037e8ea8500b05c8f31ee88529ccac4cee Mon Sep 17 00:00:00 2001
+From: Waldemar Brodkorb <wbx@openadk.org>
+Date: Sun, 7 May 2017 16:28:14 +0200
+Subject: [PATCH] sync features.h with GNU C library, fixes gcc 7.1 toolchain
+ creation
+
+[Romain: backport to uClibc-ng 1.0.24]
+Signed-off-by: Romain Naour <romain.naour@gmail.com>
+---
+ include/features.h | 17 ++++++++++++-----
+ 1 file changed, 12 insertions(+), 5 deletions(-)
+
+diff --git a/include/features.h b/include/features.h
+index e76bbba..f982079 100644
+--- a/include/features.h
++++ b/include/features.h
+@@ -55,6 +55,7 @@
+ These are defined by this file and are used by the
+ header files to decide what to declare or define:
+
++ __USE_ISOC11 Define ISO C11 things.
+ __USE_ISOC99 Define ISO C99 things.
+ __USE_ISOC95 Define ISO C90 AMD1 (C95) things.
+ __USE_POSIX Define IEEE Std 1003.1 things.
+@@ -91,6 +92,7 @@
+
+
+ /* Undefine everything, so we get a clean slate. */
++#undef __USE_ISOC11
+ #undef __USE_ISOC99
+ #undef __USE_ISOC95
+ #undef __USE_POSIX
+@@ -151,6 +153,8 @@
+ #ifdef _GNU_SOURCE
+ # undef _ISOC99_SOURCE
+ # define _ISOC99_SOURCE 1
++# undef _ISOC11_SOURCE
++# define _ISOC11_SOURCE 1
+ # undef _POSIX_SOURCE
+ # define _POSIX_SOURCE 1
+ # undef _POSIX_C_SOURCE
+@@ -223,11 +227,14 @@
+ # define _SVID_SOURCE 1
+ #endif
+
+-/* This is to enable the ISO C99 extension. Also recognize the old macro
+- which was used prior to the standard acceptance. This macro will
+- eventually go away and the features enabled by default once the ISO C99
+- standard is widely adopted. */
+-#if (defined _ISOC99_SOURCE || defined _ISOC9X_SOURCE \
++/* This is to enable the ISO C11 extension. */
++#if (defined _ISOC11_SOURCE \
++ || (defined __STDC_VERSION__ && __STDC_VERSION__ >= 201112L))
++# define __USE_ISOC11 1
++#endif
++
++/* This is to enable the ISO C99 extension. */
++#if (defined _ISOC99_SOURCE || defined _ISOC11_SOURCE \
+ || (defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L))
+ # define __USE_ISOC99 1
+ #endif
+--
+2.9.3
+
diff --git a/package/uclibc/uclibc.mk b/package/uclibc/uclibc.mk
index bbf389e327..a5a20ea51f 100644
--- a/package/uclibc/uclibc.mk
+++ b/package/uclibc/uclibc.mk
@@ -119,12 +119,6 @@ define UCLIBC_ARM_ABI_CONFIG
$(call KCONFIG_ENABLE_OPT,CONFIG_ARM_EABI,$(@D)/.config)
endef
-# Thumb1 build is broken with threads with old gcc versions (< 4.8). Since
-# all cores supporting Thumb1 also support ARM, we use ARM code in this case.
-ifeq ($(BR2_GCC_VERSION_4_8_X)$(BR2_ARM_INSTRUCTIONS_THUMB)$(BR2_TOOLCHAIN_HAS_THREADS),yyy)
-UCLIBC_EXTRA_CFLAGS += -marm
-endif
-
ifeq ($(BR2_BINFMT_FLAT),y)
define UCLIBC_ARM_BINFMT_FLAT
$(call KCONFIG_DISABLE_OPT,DOPIC,$(@D)/.config)
OpenPOWER on IntegriCloud