a1a86ebfba
Because of a gcc bug [1], liburcu checks for compiler version [2] and stops the build prematurely if gcc-4.8.[0-2] is detected for ARM. However a bug fix exists [3] and may be backported by ARM toolchain providers; that's what is done in Buildroot [4] or Linaro [5]. So, this change: - add a patch in liburcu to allow build with ARM gcc-4.8.2; - adds a new hidden symbol to reflect the toolchain status with regard to this bug [1]; - and controls liburcu visibility. However, a limitation of this is when the user is using a custom toolchain; that's why the bug details have been added in the liburcu help message. [1] http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58854 [2] http://git.lttng.org/?p=userspace-rcu.git;a=commitdiff;h=4b79310 [3] http://gcc.gnu.org/viewcvs/gcc?view=revision&revision=204665 [4] http://git.buildroot.net/buildroot/commit/?id=c443c2be1768ebbdcb76c55d0a08fd7c983488c8 [5] http://bazaar.launchpad.net/~linaro-toolchain-dev/gcc-linaro/4.8/revision/122147 [Peter: hide normal toolchain comment if bug, add comment explaining issue if bug] Signed-off-by: Samuel Martin <s.martin49@gmail.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
39 lines
1.5 KiB
Plaintext
39 lines
1.5 KiB
Plaintext
config BR2_PACKAGE_LTTNG_TOOLS
|
|
bool "lttng-tools"
|
|
select BR2_PACKAGE_LIBURCU
|
|
select BR2_PACKAGE_POPT
|
|
select BR2_PACKAGE_UTIL_LINUX
|
|
select BR2_PACKAGE_UTIL_LINUX_LIBUUID
|
|
# liburcu only works on some architectures and requires thread support
|
|
depends on BR2_arm || BR2_armeb || BR2_i386 || BR2_powerpc || BR2_x86_64
|
|
depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_58854 # liburcu/gcc-4.8.x bug
|
|
depends on BR2_LARGEFILE
|
|
depends on BR2_USE_WCHAR # util-linux
|
|
depends on BR2_TOOLCHAIN_HAS_THREADS
|
|
help
|
|
Userspace utilities for the LTTng 2.0 tracing
|
|
infrastructure.
|
|
|
|
Those utilities are required on the target system to start
|
|
and stop tracing sessions. Analysis of the trace can be done
|
|
on the host machine using the babeltrace utility. This
|
|
utility is automatically built by Buildroot in
|
|
$(O)/host/usr/bin/babeltrace, as a dependency of
|
|
lttng-tools. However, there is also a lttng-babeltrace
|
|
package for the target, if babeltrace on the target is
|
|
interesting.
|
|
|
|
If userspace tracing is desired, you need to enable
|
|
lttng-libust.
|
|
|
|
http://lttng.org
|
|
|
|
comment "lttng-tools needs a toolchain w/ largefile, threads, wchar"
|
|
depends on BR2_arm || BR2_armeb || BR2_i386 || BR2_powerpc || BR2_x86_64
|
|
depends on !BR2_LARGEFILE || !BR2_TOOLCHAIN_HAS_THREADS || \
|
|
!BR2_USE_WCHAR
|
|
depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_58854 # liburcu/gcc-4.8.x bug
|
|
|
|
comment "lttng-tools needs a toolchain not affected by GCC bug 58854"
|
|
depends on BR2_TOOLCHAIN_HAS_GCC_BUG_58854
|