Skip to contentSkip to conversation

rt-tests: Make it available only when NPLT is selected

PATCH New Markos Chandras 3 participants 3 messages Apr 2, 2012 – Apr 3, 2012

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 rt-tests: Make it available only when NPLT is selected

rt-tests package requires some definitions (like PTHREAD_PRIO_INHERIT etc) which are only available in Native Posix Linux Thread implementation.

---
 package/rt-tests/Config.in |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)
package/rt-tests/Config.in +2 -0
index e645266..0043989 100644
@@ -1,3 +1,4 @@
+if BR2_PTHREADS_NATIVE
 config BR2_PACKAGE_RT_TESTS
 	bool "rt-tests"
 	help
@@ -11,3 +12,4 @@ config BR2_PACKAGE_RT_TESTS
 	  Buildroot configuration.
 
 	  http://rt.wiki.kernel.org
+endif
Signature · 1 line
1.7.1
#1 lore raw

PATCH 1/1 rt-tests: Make it available only when NPLT is selected

Le Mon, 2 Apr 2012 15:15:54 +0100,
Markos Chandras <[email protected]> a ?crit :

Quoted 5 lines

rt-tests package requires some definitions (like PTHREAD_PRIO_INHERIT etc) which are only available in Native Posix Linux Thread implementation.

I agree there is a problem, but unfortunately this solution will break external toolchains and crosstool-ng toolchains that use glibc or eglibc. Those toolchains have NPTL support, but BR2_PTHREADS_NATIVE is not defined when using such toolchains.

I guess the real solution would be something like:

config BR2_TOOLCHAIN_HAS_NPTL
bool

and then for internal backend, select this option is BR2_PTHREADS_NATIVE is enabled. For external backend, select this option when glibc/eglibc is used, and add an option when the uClibc library is used. Some similar solution must be found for the crosstool-NG backend.

Regards,

Thomas

Signature · 4 lines
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
#2 lore raw

PATCH 1/1 rt-tests: Make it available only when NPLT is selected

Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Thomas" == Thomas Petazzoni <[email protected]> writes:

Thomas> Le Mon, 2 Apr 2012 15:15:54 +0100,
Thomas> Markos Chandras <[email protected]> a ?crit :

Quoted 5 lines
Quoted 5 lines

rt-tests package requires some definitions (like PTHREAD_PRIO_INHERIT etc) which are only available in Native Posix Linux Thread implementation.

Thomas> I agree there is a problem, but unfortunately this solution will break Thomas> external toolchains and crosstool-ng toolchains that use glibc or Thomas> eglibc. Those toolchains have NPTL support, but BR2_PTHREADS_NATIVE is Thomas> not defined when using such toolchains.

Thomas> I guess the real solution would be something like:

Thomas> config BR2_TOOLCHAIN_HAS_NPTL
Thomas> bool

Thomas> and then for internal backend, select this option is Thomas> BR2_PTHREADS_NATIVE is enabled. For external backend, select this Thomas> option when glibc/eglibc is used, and add an option when the uClibc Thomas> library is used. Some similar solution must be found for the Thomas> crosstool-NG backend.

Alternatively you can make it depend on !pthreads (ugly because it is so verbose)

depends on !(BR2_TOOLCHAIN_CTNG_THREADS_NONE ||
         BR2_TOOLCHAIN_CTNG_THREADS_PTHREADS ||
         BR2_TOOLCHAIN_CTNG_THREADS_PTHREADS_OLD ||
         BR2_PTHREADS_NONE || BR2_PTHREADS || BR2_PTHREADS_OLD)
Signature · 1 line
Bye, Peter Korsgaard