Since uClibc-ng v1.0.20 we can force libc to either use llock/scond
instructions for atomic ops or if those are missing use kernel-assisted
emulation. By default atomics are used so we disable that feature in
libc if we build for a target without LLSC.
This allows us to build and use NPTL on ARC750 for example which was not
possible before.
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
$(call KCONFIG_ENABLE_OPT,$(UCLIBC_ARC_PAGE_SIZE),$(@D)/.config)
endef
+ifeq ($(BR2_ARC_ATOMIC_EXT),)
+define UCLIBC_ARC_ATOMICS_CONFIG
+ $(call KCONFIG_DISABLE_OPT,CONFIG_ARC_HAS_ATOMICS,$(@D)/.config)
+endef
+endif
+
endif # arc
#
$(UCLIBC_BINFMT_CONFIG)
$(UCLIBC_ARC_TYPE_CONFIG)
$(UCLIBC_ARC_PAGE_SIZE_CONFIG)
+ $(UCLIBC_ARC_ATOMICS_CONFIG)
$(UCLIBC_ARM_ABI_CONFIG)
$(UCLIBC_ARM_BINFMT_FLAT)
$(UCLIBC_ARM_NO_CONTEXT_FUNCS)