kumquat-buildroot/package/lttng-tools/Config.in
Samuel Martin a1a86ebfba liburcu: disable build with gcc-4.8.x on ARM
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>
2014-03-23 23:17:56 +01:00

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