Re: [Buildroot] [PATCH 1/1] package/mono: force internal libatomic-ops for some arm variants
From: Illia Bitkov <hidden>
Date: 2021-08-19 12:13:09
Hello Thomas, All On Thu, Aug 19, 2021 at 12:05 AM Thomas Petazzoni < thomas.petazzoni@bootlin.com> wrote:
Hello Illia, On Wed, 18 Aug 2021 21:03:45 +0200 Illia Bitkov [off-list ref] wrote:quoted
Fixes:http://autobuild.buildroot.net/results/18b017dd5b9c1d8d6c91303ea4f1fdd3e1b086e0/quoted
http://autobuild.buildroot.net/results/1d262e9ad5bf8bf437bc3f2a709d84acf854d298/quoted
Signed-off-by: Illia Bitkov <redacted>
Thanks a lot, but this needs more explanation. Why is libatomic_ops not
working for those platforms ?
Currently I don't have a clear answer. I've tested building external libatomic-ops with configuration keys I've taken from the build of internal one. I'll look into them more. Also I think I'll try to downgrade lib to version used in mono(7.6.10 -> 7.4.2) I suspect it currently doesn't build mono on the whole ARMv5 but I've failed to test it.
quoted
--- package/mono/Config.in | 2 +- package/mono/mono.mk | 10 ++++++++-- 2 files changed, 9 insertions(+), 3 deletions(-)diff --git a/package/mono/Config.in b/package/mono/Config.in index 44b8cf8581..3f26bd4092 100644 --- a/package/mono/Config.in +++ b/package/mono/Config.in@@ -16,7 +16,7 @@ config BR2_PACKAGE_MONO depends on BR2_INSTALL_LIBSTDCPP depends on BR2_TOOLCHAIN_HAS_THREADS depends on !BR2_STATIC_LIBS - select BR2_PACKAGE_LIBATOMIC_OPS + select BR2_PACKAGE_LIBATOMIC_OPS if !BR2_xscale && !BR2_arm926t help An open source, cross-platform, implementation of C# and the CLR that is binary compatible with Microsoft.NET.diff --git a/package/mono/mono.mk b/package/mono/mono.mk index 27f7886224..e697ed7ea2 100644 --- a/package/mono/mono.mk +++ b/package/mono/mono.mk@@ -43,8 +43,14 @@ endif MONO_DEPENDENCIES += \ host-mono \ - $(if $(BR2_PACKAGE_LIBUNWIND),libunwind) \ - libatomic_ops + $(if $(BR2_PACKAGE_LIBUNWIND),libunwind) + +ifeq ($(BR2_xscale)$(BR2_arm926t),nn)This is wrong, options never have the value "n" Thanks, I'll fix it
quoted
+MONO_DEPENDENCIES += libatomic_ops +else +#force use of internal libatomic-ops +MONO_CONF_OPTS += --with-libatomic-ops=no +endifThanks, Thomas -- Thomas Petazzoni, co-owner and CEO, Bootlin Embedded Linux and Kernel engineering https://bootlin.com