diff options
author | Thomas Petazzoni <thomas.petazzoni@free-electrons.com> | 2010-12-13 17:27:44 +0100 |
---|---|---|
committer | Peter Korsgaard <jacmet@sunsite.dk> | 2010-12-13 22:26:41 +0100 |
commit | 9eaad202f1579630598c160952da4b29e56d5bdb (patch) | |
tree | 226dc901ba77cb5ee26b048f080c006e7d3c57b7 /toolchain/toolchain-external | |
parent | a72a670489547a3ca645ff7c3a0d9c3fb66eab51 (diff) | |
download | buildroot-novena-9eaad202f1579630598c160952da4b29e56d5bdb.tar.gz buildroot-novena-9eaad202f1579630598c160952da4b29e56d5bdb.zip |
toolchain: rework thread options
The selection of linuxthreads, linuxthreads old or NPTL doesn't make a
lot of sense for external toolchains. So, instead, we :
* Introduce an hidden BR2_TOOLCHAIN_HAS_THREADS option, which must be
selected by toolchain specific options when thread support is
available. Package needing to test thread support should use this
option.
* Move the none/linuxthreads/linuxthreads old/NPTL selection to
Buildroot internal toolchain configuration.
* Add an option in external toolchain to tell if thread support is
available or not in the external toolchain. We assume that glibc
without threads is not possible, as Ulrich Drepper said in
http://sourceware.org/ml/libc-alpha/2005-08/msg00091.html
ffmpeg, dmalloc and openvpn are fixed to use the new
BR2_TOOLCHAIN_HAS_THREADS option. For openvpn, --enable-threads=posix
is no longer used, as the configure script doesn't even understand
this option.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Diffstat (limited to 'toolchain/toolchain-external')
-rw-r--r-- | toolchain/toolchain-external/Config.in | 9 | ||||
-rw-r--r-- | toolchain/toolchain-external/ext-tool.mk | 2 |
2 files changed, 10 insertions, 1 deletions
diff --git a/toolchain/toolchain-external/Config.in b/toolchain/toolchain-external/Config.in index bd22e0cc3..2ed65bf30 100644 --- a/toolchain/toolchain-external/Config.in +++ b/toolchain/toolchain-external/Config.in @@ -149,6 +149,7 @@ config BR2_TOOLCHAIN_EXTERNAL_GLIBC select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_PROGRAM_INVOCATION + select BR2_TOOLCHAIN_HAS_THREADS config BR2_TOOLCHAIN_EXTERNAL_UCLIBC bool @@ -220,6 +221,14 @@ config BR2_TOOLCHAIN_EXTERNAL_PROGRAM_INVOCATION invocation support. If you don't know, leave the default value, Buildroot will tell you if it's correct or not. +config BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS + bool "Toolchain has threads support?" + select BR2_TOOLCHAIN_HAS_THREADS + help + Select this option if your external toolchain has thread + support. If you don't know, leave the default value, + Buildroot will tell you if it's correct or not. + endif # BR2_TOOLCHAIN_EXTERNAL_CUSTOM_UCLIBC config BR2_TOOLCHAIN_EXTERNAL_CXX diff --git a/toolchain/toolchain-external/ext-tool.mk b/toolchain/toolchain-external/ext-tool.mk index 027fbbdf5..d6153f14d 100644 --- a/toolchain/toolchain-external/ext-tool.mk +++ b/toolchain/toolchain-external/ext-tool.mk @@ -53,7 +53,7 @@ ifeq ($(BR2_INSTALL_LIBSTDCPP),y) USR_LIB_EXTERNAL_LIBS+=libstdc++.so endif -ifneq ($(BR2_PTHREADS_NONE),y) +ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),y) LIB_EXTERNAL_LIBS+=libpthread.so ifeq ($(BR2_PACKAGE_GDB_SERVER),y) LIB_EXTERNAL_LIBS+=libthread_db.so |