package/erlang: support build when gcc __atomic_* exist
authorFrank Hunleth <fhunleth@troodon-software.com>
Sat, 8 May 2021 22:24:19 +0000 (18:24 -0400)
committerThomas Petazzoni <thomas.petazzoni@bootlin.com>
Wed, 28 Jul 2021 21:32:48 +0000 (23:32 +0200)
While Erlang will use it's own atomic operations, it can also use gcc
__atomic_* builtins. This is now listed in Erlang's HOWTO/INSTALL.md.

This change was necessary on RISC-V, since Erlang didn't have a built-in
implementation, but it was able to use gcc's __atomic_* functions.

Signed-off-by: Frank Hunleth <fhunleth@troodon-software.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
package/erlang/Config.in

index ab87eab6fff417d888737cc89c3714d73a7b5252..b6b100f38bd2a958cdd26ceb3a5ce57b8b753555 100644 (file)
@@ -6,9 +6,11 @@ config BR2_PACKAGE_HOST_ERLANG_ARCH_SUPPORTS
 config BR2_PACKAGE_ERLANG_ARCH_SUPPORTS
        bool
        # see HOWTO/INSTALL.md for Erlang's supported platforms
-       # when using its native atomic ops implementation
+       # when using its native atomic ops implementation or gcc's
+       # __atomic_* builtins
        default y if BR2_i386 || BR2_x86_64 || BR2_powerpc || \
-               BR2_sparc_v9 || BR2_arm || BR2_aarch64 || BR2_mipsel
+               BR2_sparc_v9 || BR2_arm || BR2_aarch64 || BR2_mipsel || \
+               BR2_TOOLCHAIN_HAS_ATOMIC
        # erlang needs host-erlang
        depends on BR2_PACKAGE_HOST_ERLANG_ARCH_SUPPORTS