From 507d4434455f2af902fd5dcd7958905784dd97d3 Mon Sep 17 00:00:00 2001 From: Silvan Calarco Date: Fri, 5 Jan 2024 22:37:52 +0100 Subject: [PATCH] arm: added patch to provide futex atomic functions _M_futex_notify_all and _M_futex_wait_until (armv7) [release 10.1.0-2mamba;Mon Jun 08 2020] --- ...0-arm-provide-futex-atomic-functions.patch | 24 +++++++++++++++++++ gcc.spec | 7 +++++- 2 files changed, 30 insertions(+), 1 deletion(-) create mode 100644 gcc-10.1.0-arm-provide-futex-atomic-functions.patch diff --git a/gcc-10.1.0-arm-provide-futex-atomic-functions.patch b/gcc-10.1.0-arm-provide-futex-atomic-functions.patch new file mode 100644 index 0000000..6b876b6 --- /dev/null +++ b/gcc-10.1.0-arm-provide-futex-atomic-functions.patch @@ -0,0 +1,24 @@ +diff -ru gcc-10.1.0/libstdc++-v3/include/bits/atomic_futex.h gcc-10.1.0.patched/libstdc++-v3/include/bits/atomic_futex.h +--- gcc-10.1.0/libstdc++-v3/include/bits/atomic_futex.h 2020-05-07 12:50:02.000000000 +0200 ++++ gcc-10.1.0.patched/libstdc++-v3/include/bits/atomic_futex.h 2020-06-08 18:18:38.544259479 +0200 +@@ -49,7 +49,7 @@ + _GLIBCXX_BEGIN_NAMESPACE_VERSION + + #ifdef _GLIBCXX_HAS_GTHREADS +-#if defined(_GLIBCXX_HAVE_LINUX_FUTEX) && ATOMIC_INT_LOCK_FREE > 1 ++#if defined(_GLIBCXX_HAVE_LINUX_FUTEX) + struct __atomic_futex_unsigned_base + { + // Returns false iff a timeout occurred. +diff -ru gcc-10.1.0/libstdc++-v3/src/c++11/futex.cc gcc-10.1.0.patched/libstdc++-v3/src/c++11/futex.cc +--- gcc-10.1.0/libstdc++-v3/src/c++11/futex.cc 2020-05-07 12:50:02.000000000 +0200 ++++ gcc-10.1.0.patched/libstdc++-v3/src/c++11/futex.cc 2020-06-08 18:19:20.413501894 +0200 +@@ -24,7 +24,7 @@ + + #include + #ifdef _GLIBCXX_HAS_GTHREADS +-#if defined(_GLIBCXX_HAVE_LINUX_FUTEX) && ATOMIC_INT_LOCK_FREE > 1 ++#if defined(_GLIBCXX_HAVE_LINUX_FUTEX) + #include + #include + #include diff --git a/gcc.spec b/gcc.spec index cb77918..5ab3932 100644 --- a/gcc.spec +++ b/gcc.spec @@ -40,7 +40,7 @@ Name: gcc Version: 10.1.0 -Release: 1mamba +Release: 2mamba Summary: GNU Compiler Collection (C, C++, Fortran, Go, Ada) Group: Applications/Development Vendor: openmamba @@ -67,6 +67,7 @@ Patch14: gcc-4.8.0-libffi-texinfo.patch Patch15: gcc-4.9.0-upstream-fixes-1.patch Patch16: gcc-4.9.2-arm-lra-bootstrap.patch Patch19: gcc-7.1.0-cross-ftbfs-ucontet_t.patch +Patch20: gcc-10.1.0-arm-provide-futex-atomic-functions.patch License: GPL ## AUTOBUILDREQ-BEGIN ## AUTOBUILDREQ-END @@ -600,6 +601,7 @@ Cross Platform gcc for %{_target_platform}. %patch11 -p1 %ifarch arm +%patch20 -p1 # workaround for gcc-go cp libgo/go/internal/syscall/unix/{getrandom_linux_arm.go,dummy.go} %endif @@ -1466,6 +1468,9 @@ rm -f %{buildroot}%{_infodir}/libffi.info* %endif # cross-platform %changelog +* Mon Jun 08 2020 Silvan Calarco 10.1.0-2mamba +- arm: added patch to provide futex atomic functions _M_futex_notify_all and _M_futex_wait_until (armv7) + * Mon May 11 2020 Automatic Build System 10.1.0-1mamba - automatic version update by autodist