Commit Graph

249 Commits

Author SHA1 Message Date
Bernd Kuhls
2720755adc package/uclibc: Fix removal of libintl.h
Needed to fix
http://autobuild.buildroot.net/results/6be/6be94fe2542f3ac9fb785dd22f504e25c2a7802e/

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-01-17 14:53:02 +11:00
Waldemar Brodkorb
dcef07e652 uclibc: add locale/iconv related bugfixes
- do not remove iconv.h when UCLIBC_HAS_LOCALE enabled
- select UCLIBC_HAS_LIBICONV when UCLIBC_HAS_LOCALE enabled

Fixes:
   http://autobuild.buildroot.net/?reason=libglib2-2.50.2&step=250

Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2017-01-08 21:58:48 +01:00
Waldemar Brodkorb
ffad94e6dd uclibc: add kernel module syscall wrappers
Revert the decision to remove the wrappers, but remove the extra
Config symbol and add it by default. Required for kmod package.

Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2017-01-06 19:52:14 +01:00
Waldemar Brodkorb
463cb478a9 uclibc: update to 1.0.21
Remove all patches as they are upstream.
Remove MALLOC_GLIBC_COMPAT and UCLIBC_HAS_OBSTACK as they got removed.

Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-12-27 10:37:27 +01:00
Thomas Petazzoni
cafa98b797 uclibc: add patch to fix <stdlib.h>
This commit adds a patch to <stdlib.h>, to fix a bug introduced in
uClibc-ng 1.0.20, and which was causing build failures for at least one
package in Buildroot: freeswitch.

Fixes:

  http://autobuild.buildroot.net/results/12c246b058224f68494b84355a29dc4efb85df6d/

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-12-21 11:13:17 +01:00
Waldemar Brodkorb
41e5c94c56 uclibc: add various upstream patches
Fix some static linking issues for Xtensa/Blackfin.
Optimize the size for non-threaded static binaries and
fix static C/C++ applications when running on the target.
Fix noMMU madvise declarations.

Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-12-10 15:59:28 +01:00
Yann E. MORIN
70da1d7c46 package/uclibc: needs a host with an UTF8 locale to build locales
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-12-04 15:38:08 +01:00
Waldemar Brodkorb
a44d7f2dbb uclibc: update to 1.0.20
The test suite is removed from the package and is already a separate
package in buildroot. All patches are upstream, so remove them.
The UCLIBC_HAS_LFS option is removed upstream.

Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
[Thomas: remove BR2_UCLIBC_INSTALL_TEST_SUITE option, add it to
Config.in.legacy.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-12-04 15:35:04 +01:00
Waldemar Brodkorb
0689e77eec uclibc: disable posix_madvise for noMMU
Now that the madvise defines are disabled for noMMU targets,
architectures with MMU and noMMU support as ARM are failing to compile
in noMMU mode, since the defines are used internally in posix_madvise.c.

Disable compilation for posix_madvise() for noMMU.

Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-11-30 16:14:47 +01:00
Waldemar Brodkorb
9d67242653 uclibc: add madvise macro patch from upstream
Fixes:
  http://autobuild.buildroot.net/results/6f296139633df24031b20d8bd5191e0f5928ec68

Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-11-27 22:19:52 +01:00
Petri Gynther
8218ab8019 toolchain: configs: improve toolchain config readability
Add (or move) comment lines in toolchain-related Config.in files
to improve readability of the toolchain config section.

Source linux-headers/Config.in.host after toolchain-buildroot items.

For toolchain-buildroot case, the config file now looks like this:
*
* Toolchain
*

*
* Toolchain Buildroot Options
*

*
* Kernel Header Options
*

*
* uClibc Options
*

*
* Binutils Options
*

*
* GCC Options
*

*
* Host GDB Options
*

*
* Toolchain Generic Options
*

Signed-off-by: Petri Gynther <pgynther@google.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-25 23:31:47 +02:00
Waldemar Brodkorb
90e38737a6 uclibc: fix pthread.h
Fixes:
 bfin: http://autobuild.buildroot.net/results/fbf/fbf63bbe0974b490b875a95fb930ba601364b85a/
 m68k: http://autobuild.buildroot.net/results/cc9/cc9b87c4c695f97a056cc53f19e7662750dffeff/
 microblazeel: http://autobuild.buildroot.net/results/941/941c06e29f6542e258f20799dc6f3f94b2f8af88/

Reported-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Waldemar Brodkorb <wbx@uclibc-ng.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-24 14:50:00 +02:00
Waldemar Brodkorb
446debc47e uclibc: update to 1.0.19
All patches are upstream.

Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-10-23 14:25:17 +02:00
Arnout Vandecappelle
a7c13c1b28 gcc: remove deprecated 4.7.x
We will remove BR2_DEPRECATED, so remove this deprecated option.

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-10-15 23:14:44 +02:00
Vicente Olivert Riera
45c92c60b1 MIPS: replace every BR2_mips_* with the new MIPS CPU options
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-10-15 13:22:17 +02:00
Waldemar Brodkorb
6e99c712bc uclibc: fix mips/mips64 build with older compilers
For example gcc 4.8.x fails to build uClibc-ng for mips/mips64.
Check if feature exist before using it.

Reported-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-09 22:06:49 +02:00
Waldemar Brodkorb
8a45d08c4a uclibc: fix two more regressions introduced in 1.0.18
Fixes:
  http://autobuild.buildroot.net/results/e4c/e4c65ecf3ec011c39a80fd5d39ea0742c6171b06/
  http://autobuild.buildroot.net/results/1c1/1c1080795c5f65c3e8a6b1bd79ca9dd997409260/

Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-09 13:54:17 +02:00
Waldemar Brodkorb
3608bf022a uclibc: remove linker scripts for libubacktrace/libuargp
They are not required anymore and break some builds.

Tested-by: Lance Fredrickson <lancethepants@gmail.com>
Signed-off-by: Waldemar Brodkorb <wbx@uclibc-ng.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-03 23:19:46 +02:00
Waldemar Brodkorb
fa280211bc uclibc: fix compile if locales are enabled
Reported via #buildroot, the newly activated locale
tool should only build for the target, not for the host.

Fix from upstream.

Signed-off-by: Waldemar Brodkorb <wbx@uclibc-ng.org>
Tested-by: Yegor Yefremov <yegorslists@googlemail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-09-30 11:34:51 +02:00
Waldemar Brodkorb
56b9cb5b4f uclibc: update to 1.0.18
Update to 1.0.18

This includes all patches, so remove them.

Signed-off-by: Waldemar Brodkorb <wbx@uclibc-ng.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-09-28 13:40:09 +02:00
Rahul Bedarkar
250ed6568a uclibc: add upstream patch to fix glog build on bfin
glog has been failing on bfin because of issue in uclibc which is now
fixed in upstream.

Fixes:
  http://autobuild.buildroot.net/results/a10/a10ed48e6eb8411a3d8372f57c05fd11130da0e0/

Signed-off-by: Rahul Bedarkar <rahul.bedarkar@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-09-20 20:08:02 +02:00
Zakharov Vlad
9914215d89 uclibc: ARC: Support syscall ABI v4
When used with GCC 6 ABIv4 is used.
Missing this patch leads to numerous runtime errors.

The patch has already been accepted in uclibc-ng:
http://cgit.uclibc-ng.org/cgi/cgit/uclibc-ng.git/commit/?id=3e40f9669279f005f7154892539166f5081fbcb2

So the patch should be removed after update to a new version of uclibc-ng.

Signed-off-by: Vlad Zakharov <vzakhar@synopsys.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-08-19 00:08:24 +02:00
Waldemar Brodkorb
efbd36a141 uclibc: add upstream patch for CVE-2016-4429
Add security related bugfix to fix CVE-2016-4429 from
GNU libc project.

Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-08-16 08:02:28 +02:00
Yann E. MORIN
72b75c428d package/uclibc: add upstream patch to fix Thumb2 builds
When uClibc-ng 1.0.17 was released, there was a regression when building
Thumb2-only for a CPU that is capable of running in arm mode (e.g. an
armv7a cpu).

We hastily added a patch to revert the upstream commit, as a stop-gap
measure, waiting for the actual fix.

That actual fix is there, now. :-)

Drop our revert-patch, and add the upstream patch.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-08-08 23:46:00 +02:00
Thomas Petazzoni
f82441bfa4 uclibc: proper thread default on m68k and Microblaze
Traditionally, Buildroot has a default of enabling thread
support. However, with the current construct of the thread choice in the
uclibc package, the m68k and microblaze architecture end up with no
thread support as the default.

In order to avoid having to explicit a more complicated "default" value
for the choice, we take a simple approach: we order the 3 possible
choices by order of "preference", since Kconfig selects the first
selectable option in a choice by default.

So, NPTL is first and is the default when available. Then comes
linuxthreads which only gets selected as the default when NPTL is
available. None is offered as a last choice (in the current
implementation, it is never the default, since all architectures can
have thread support, either through NPTL or linuxthreads).

[Thomas: reworked according to Yann's comment that we could rely on the
Kconfig behavior that selects the first available choice option.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-08-07 23:01:56 +02:00
Yann E. MORIN
feedf86615 package/uclibc: fix build on thumb2-only arm cpus
Add a patch to revert an upstream commit that broke building for armv7
thumb2-only CPUs.

Commit pointed out by Thomas.

Fixes:
    https://travis-ci.org/buildroot/buildroot-defconfig-testing/jobs/150333657
    https://travis-ci.org/buildroot/buildroot-defconfig-testing/jobs/150333658
    ... and all the other atmel_sama5d* defconfigs
    https://travis-ci.org/buildroot/buildroot-defconfig-testing/jobs/150333643
    https://travis-ci.org/buildroot/buildroot-defconfig-testing/jobs/150333644

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-08-07 22:52:58 +02:00
Waldemar Brodkorb
11785a20c1 uclibc: update to 1.0.17
Many cleanups and ARC improvements including PIE support.
Patches included upstream and removed.

Signed-off-by: Waldemar Brodkorb <wbx@uclibc-ng.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-08-01 22:11:58 +02:00
Waldemar Brodkorb
48f8ed2bae uclibc: add missing defines for m68k/microblaze
POLLRDHUP supported since Linux 2.6.17.
http://man7.org/linux/man-pages/man2/poll.2.html

Fixes:
http://autobuild.buildroot.net/results/0f5ed287f1756fbec710454e9c694202c3206dbe/

Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-07-31 23:23:56 +02:00
Waldemar Brodkorb
f253455584 uclibc: add ldd compile fix from upstream
Fixes a build error, when uclibc utils is selected targeting Blackfin.

Reported-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-07-06 09:07:43 +02:00
Waldemar Brodkorb
6565825f27 uclibc: enable Linuxthreads for Blackfin
Enable Linuxthreads, a small binutils patch from upstream is
required.

Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-07-05 12:16:16 +02:00
Waldemar Brodkorb
2d6fe1d3ec toolchain-buildroot: add bfin support
With gcc 6.1.0 and binutils 2.26 internal bfin toolchain can be used. A
gcc patch is required, which was reported upstream.

Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-07-04 11:00:15 +02:00
Waldemar Brodkorb
ea6daf6193 uclibc: update to 1.0.16
Update uClibc-ng to latest stable release (1.0.16).

Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-07-03 18:00:14 +02:00
Yann E. MORIN
72122c50af package/uclibc: use the generic help rules
Note that the uclibc-menuconfig rule was guarded behind
BR2_TOOLCHAIN_BUILDROOT, which is wrong since we can build
glibc or musl toolchains too...

This is de facto fixed by moving the help text to the uClibc package.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Arnout Vandecappelle <arnout@mind.be>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Thomas: don't use the helper.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-06-07 22:10:56 +02:00
Waldemar Brodkorb
2704f23589 uclibc: use shell script testsuite runner
There is no need for GNU make to run the testsuite.
The benefit is you can even try it on noMMU targets as
the script runs with busybox hush.
Parallel build of the testsuite seems to work well.

Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-06-06 22:35:52 +02:00
Waldemar Brodkorb
843fc19259 uclibc: add microblaze support
Latest uClibc-ng 1.0.15 release fixed open issues with
microblaze shared library and linuxthreads support.
gcc 4.9.3 and gcc 5.3.0 require a small patch.

Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-06-05 22:16:45 +02:00
Waldemar Brodkorb
f253c146de uclibc: update to 1.0.15
The Linuxthreads support got reorganized.
LT.new is removed, LT.old is the default for
Linuxthreads.

Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-06-01 21:23:29 +02:00
Waldemar Brodkorb
0310a3b2a3 uclibc: generate valid config for BFLT/FDPIC
Generate a valid configuration for architectures with
FDPIC and BFLT support.

Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-05-28 15:29:49 +02:00
Peter Seiderer
e35c2c1ae1 uclibc: enable debug build option
Set uClibc DODEBUG in case BR2_ENABLE_DEBUG is set.

Setting DODEBUG was removed with commit 70b7079d37
in Dec. 2013 because of build failures with the old uClibc (now replaced
with uClibc-ng), no build failure with raspberrypi3_defconfig and
BR2_ENABLE_DEBUG enabled.

Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-05-17 22:32:31 +02:00
Waldemar Brodkorb
015322fccb toolchain: add coldfire support
Add support for m68k/coldfire. A gcc patch is required
to avoid gcc ICE.

Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-04-30 18:50:46 +02:00
Gustavo Zacarias
de56d58e5d uclibc/defconfig: enable XSI math
ARM926 size delta +12 KB.
It's required for the upcoming mpv package.

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-04-23 11:40:00 +02:00
Thomas Petazzoni
6cb4814c87 arch/x86: remove support for i386
The Linux kernel doesn't even support i386 anymore, there is no NPTL
support for i386 and uClibc-ng only supports NPTL on x86, so there is
essentially no usable thread implementation. Most likely glibc and
musl also don't support i386 either. So it's time to remove the
support for this architecture variant.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-04-18 23:38:34 +02:00
Waldemar Brodkorb
62bc3f0a5f uclibc: update to uClibc-ng 1.0.14
Remove patch, which was applied upstream.

Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-04-18 21:21:11 +02:00
Thomas Petazzoni
696db77484 uclibc: context functions are not Thumb-compatible
The context functions in uClibc unconditionally use the classic ARM
instruction set.

On platforms that do support the ARM instruction set, there is no problem -
However, on platforms that only support the Thumb instruction set, the
context functions cannot be built since the assembler code is not
Thumb-ready. Therefore, these functions must be disabled on such
platforms. All Thumb1 platforms support ARM instructions, so this is
only relevant for Thumb2-only platforms (i.e., Cortex-M).

Note that some packages require the context functions, so these will
fail to build on these platforms. It is worth mentioning that musl
also doesn't provide the context functions, and those are rarely
used. Affected packages will be handled in later patches.

[Peter: slightly reworded]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-04-08 10:20:37 +02:00
Thomas Petazzoni
cfb4c03204 uclibc: use upstreamed patch for ARM Thumb simplification
The uClibc patches to simplify the ARM Thumb configuration options
have been merged, but instead of being 5 separate patches, they have
been merged as a single patch.

This commit updates the Buildroot uClibc package to use the patch that
was actually upstreamed.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-04-08 10:19:46 +02:00
Max Filippov
8706e865d8 uclibc: enable linuxthreads for xtensa
linuxthreads is the only threading option for noMMU xtensa, enable it.

Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-03-31 03:56:32 +02:00
Thomas Petazzoni
c218c337c7 uclibc: NPTL thread implementation only available on MMU platforms
As indicated by the uClibc-ng source code, the NPTL thread
implementation is only available on MMU platforms, so we replicate
this dependency in Buildroot so that the appropriate thread
implementation is chosen by default on ARM noMMU.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-03-30 00:23:00 +02:00
Thomas Petazzoni
8c2170c76a uclibc: disable DOPIC on ARM FLAT
As explained by Waldemar, enabling DOPIC in uClibc will lead to the
creation of a Position Independent library. In turn, this will cause
elf2flt to generate a "Has-PIC-GOT" flat binary, which doesn't work on
ARM. In fact, elf2flt on ARM really expect to have non-PIC code as
input, so we must disable DOPIC in the uClibc configuration.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-03-30 00:15:48 +02:00
Thomas Petazzoni
45d7f01451 uclibc: gcc >= 4.9 can build a thumb/thread uclibc
Older gcc were not capable of building a uClibc library, with threads
enabled, in Thumb1. However, the issues have been fixed since gcc 4.9,
so this commit narrows down the condition to just gcc 4.7 and 4.8.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-03-30 00:15:14 +02:00
Thomas Petazzoni
0bbe85e6ea uclibc: remove USE_BX handling
Now that uClibc is capable of figuring out by itself whether 'bx' can
be used or not, we can simplify the logic in Buildroot.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-03-30 00:14:55 +02:00
Thomas Petazzoni
15a2901d36 uclibc: add patches to simplify Thumb handling
This commit adds a number of patches to uClibc that radically
simplifies the Thumb handling. uClibc currently has three options that
you need to toggle on Thumb configurations depending on the specific
ARM CPU being targeted.

However, it turns out that none of those options are necessary:

 - USE_BX can simply be guessed by looking at the ARM core being
   used. The bx instruction is available for all ARM cores >=
   ARMv4T. This is exactly what glibc is doing.

 - USE_LDREXSTREX can also be guessed by looking at the ARM core being
   used: whenever you have Thumb2, ldrex/strex is available.

 - COMPILE_IN_THUMB becomes useless, since all it does is passing
   -mthumb. But just like the uClibc config options to set
   --march=<foo> have been removed a long time ago, there's no need to
   -have an option to pass -mthumb.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-03-30 00:14:48 +02:00