config BR2_PACKAGE_LIBURCU_ARCH_SUPPORTS bool default y depends on BR2_arm || BR2_armeb || BR2_aarch64 || BR2_aarch64_be || \ BR2_i386 || BR2_mips || BR2_mips64 || BR2_mipsel || \ BR2_mips64el || BR2_nios2 || BR2_powerpc || BR2_powerpc64 || \ BR2_powerpc64le || BR2_riscv || BR2_sparc64 || BR2_s390x || BR2_x86_64 depends on BR2_USE_MMU # fork() in test config BR2_PACKAGE_LIBURCU bool "liburcu" depends on BR2_PACKAGE_LIBURCU_ARCH_SUPPORTS depends on BR2_TOOLCHAIN_HAS_THREADS help Userspace implementation of the Read-Copy-Update (RCU) synchronization mechanism. This library is mainly used by the LTTng tracing infrastructure, but can be used for other purposes as well. On ARM, because of bug: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58854 liburcu cannot be built using gcc 4.8.0, 4.8.1 or 4.8.2 without the following bug fix: http://gcc.gnu.org/viewcvs/gcc?view=revision&revision=204665 http://lttng.org/urcu comment "liburcu needs a toolchain w/ threads" depends on BR2_PACKAGE_LIBURCU_ARCH_SUPPORTS depends on !BR2_TOOLCHAIN_HAS_THREADS