|
@@ -0,0 +1,46 @@
|
|
|
|
+From 035dc537bee26e3b63a211b2835d8560439e161f Mon Sep 17 00:00:00 2001
|
|
|
|
+From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
|
|
|
|
+Date: Fri, 27 Aug 2021 16:28:32 +0200
|
|
|
|
+Subject: Fix build on riscv32
|
|
|
|
+
|
|
|
|
+riscv32 fails to build because __NR_futex is not defined on this
|
|
|
|
+architecture:
|
|
|
|
+
|
|
|
|
+In file included from thread/qmutex_linux.cpp:45,
|
|
|
|
+ from thread/qmutex.cpp:804:
|
|
|
|
+thread/qfutex_p.h: In function 'int QtLinuxFutex::_q_futex(int*, int, int, quintptr, int*, int)':
|
|
|
|
+thread/qfutex_p.h:116:30: error: '__NR_futex' was not declared in this scope; did you mean '_q_futex'?
|
|
|
|
+ 116 | int result = syscall(__NR_futex, addr, op | FUTEX_PRIVATE_FLAG, val, val2, addr2, val3);
|
|
|
|
+ | ^~~~~~~~~~
|
|
|
|
+ | _q_futex
|
|
|
|
+
|
|
|
|
+Pick-to: 6.1 6.2
|
|
|
|
+Fixes: QTBUG-96067
|
|
|
|
+Change-Id: Ib6a9bcc496f37e69ac39362cb0a021fccaf311f5
|
|
|
|
+Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
|
|
|
+[Retrieved from:
|
|
|
|
+https://code.qt.io/cgit/qt/qtbase.git/commit/?id=035dc537bee26e3b63a211b2835d8560439e161f]
|
|
|
|
+Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
|
|
|
|
+---
|
|
|
|
+ src/corelib/thread/qfutex_p.h | 5 +++++
|
|
|
|
+ 1 file changed, 5 insertions(+)
|
|
|
|
+
|
|
|
|
+diff --git a/src/corelib/thread/qfutex_p.h b/src/corelib/thread/qfutex_p.h
|
|
|
|
+index 40482b6fc1..037207a5c0 100644
|
|
|
|
+--- a/src/corelib/thread/qfutex_p.h
|
|
|
|
++++ b/src/corelib/thread/qfutex_p.h
|
|
|
|
+@@ -103,6 +103,11 @@ QT_END_NAMESPACE
|
|
|
|
+ // if not defined in linux/futex.h
|
|
|
|
+ # define FUTEX_PRIVATE_FLAG 128 // added in v2.6.22
|
|
|
|
+
|
|
|
|
++// RISC-V does not supply __NR_futex
|
|
|
|
++# ifndef __NR_futex
|
|
|
|
++# define __NR_futex __NR_futex_time64
|
|
|
|
++# endif
|
|
|
|
++
|
|
|
|
+ QT_BEGIN_NAMESPACE
|
|
|
|
+ namespace QtLinuxFutex {
|
|
|
|
+ constexpr inline bool futexAvailable() { return true; }
|
|
|
|
+--
|
|
|
|
+cgit v1.2.1
|
|
|
|
+
|