Message ID | 1333376154-20432-1-git-send-email-markos.chandras@imgtec.com |
---|---|
State | Changes Requested |
Headers | show |
Le Mon, 2 Apr 2012 15:15:54 +0100, Markos Chandras <markos.chandras@imgtec.com> a écrit : > rt-tests package requires some definitions (like PTHREAD_PRIO_INHERIT > etc) which are only available in Native Posix Linux Thread > implementation. > > Signed-off-by: Markos Chandras <markos.chandras@imgtec.com> 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
>>>>> "Thomas" == Thomas Petazzoni <thomas.petazzoni@free-electrons.com> writes: Thomas> Le Mon, 2 Apr 2012 15:15:54 +0100, Thomas> Markos Chandras <markos.chandras@imgtec.com> a écrit : >> rt-tests package requires some definitions (like PTHREAD_PRIO_INHERIT >> etc) which are only available in Native Posix Linux Thread >> implementation. >> >> Signed-off-by: Markos Chandras <markos.chandras@imgtec.com> 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)
diff --git a/package/rt-tests/Config.in b/package/rt-tests/Config.in index e645266..0043989 100644 --- a/package/rt-tests/Config.in +++ b/package/rt-tests/Config.in @@ -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
rt-tests package requires some definitions (like PTHREAD_PRIO_INHERIT etc) which are only available in Native Posix Linux Thread implementation. Signed-off-by: Markos Chandras <markos.chandras@imgtec.com> --- package/rt-tests/Config.in | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-)