summaryrefslogtreecommitdiffstats
path: root/bsp/meta-synopsys/recipes-qt
diff options
context:
space:
mode:
Diffstat (limited to 'bsp/meta-synopsys/recipes-qt')
-rw-r--r--bsp/meta-synopsys/recipes-qt/qt5/qtbase/0001-Add-ARC-support-in-double-conversion.patch26
-rw-r--r--bsp/meta-synopsys/recipes-qt/qt5/qtbase/0002-Fix-build-for-ARC-with-glibc-due-to-lack-of-FENV.patch54
-rw-r--r--bsp/meta-synopsys/recipes-qt/qt5/qtbase/0003-Disable-TLS-for-ARC.patch102
-rw-r--r--bsp/meta-synopsys/recipes-qt/qt5/qtbase_git.bbappend5
4 files changed, 187 insertions, 0 deletions
diff --git a/bsp/meta-synopsys/recipes-qt/qt5/qtbase/0001-Add-ARC-support-in-double-conversion.patch b/bsp/meta-synopsys/recipes-qt/qt5/qtbase/0001-Add-ARC-support-in-double-conversion.patch
new file mode 100644
index 00000000..de7fec59
--- /dev/null
+++ b/bsp/meta-synopsys/recipes-qt/qt5/qtbase/0001-Add-ARC-support-in-double-conversion.patch
@@ -0,0 +1,26 @@
+From e7da33f233ffb38f0e9d0bf839c7712911bce109 Mon Sep 17 00:00:00 2001
+From: Evgeniy Didin <Evgeniy.Didin@synopsys.com>
+Date: Tue, 26 Mar 2019 14:13:49 +0300
+Subject: [PATCH] double conversion: support ARC
+
+Signed-off-by: Evgeniy Didin <Evgeniy.Didin@synopsys.com>
+---
+ src/3rdparty/double-conversion/include/double-conversion/utils.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/3rdparty/double-conversion/include/double-conversion/utils.h b/src/3rdparty/double-conversion/include/double-conversion/utils.h
+index 69aa17171c..ae5342eb45 100644
+--- a/src/3rdparty/double-conversion/include/double-conversion/utils.h
++++ b/src/3rdparty/double-conversion/include/double-conversion/utils.h
+@@ -77,7 +77,7 @@ inline void abort_noreturn() { abort(); }
+ defined(__SH4__) || defined(__alpha__) || \
+ defined(_MIPS_ARCH_MIPS32R2) || \
+ defined(__AARCH64EL__) || defined(__AARCH64EB__) || defined(__aarch64__) || \
+- defined(__riscv)
++ defined(__riscv) || defined(__arc__)
+ #define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1
+ #elif defined(__mc68000__)
+ #undef DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS
+--
+2.16.2
+
diff --git a/bsp/meta-synopsys/recipes-qt/qt5/qtbase/0002-Fix-build-for-ARC-with-glibc-due-to-lack-of-FENV.patch b/bsp/meta-synopsys/recipes-qt/qt5/qtbase/0002-Fix-build-for-ARC-with-glibc-due-to-lack-of-FENV.patch
new file mode 100644
index 00000000..9a7e3666
--- /dev/null
+++ b/bsp/meta-synopsys/recipes-qt/qt5/qtbase/0002-Fix-build-for-ARC-with-glibc-due-to-lack-of-FENV.patch
@@ -0,0 +1,54 @@
+From 7e9d89afc13815f9a203e75c2a64abc075310a3d Mon Sep 17 00:00:00 2001
+From: Evgeniy Didin <Evgeniy.Didin@synopsys.com>
+Date: Tue, 26 Mar 2019 14:16:02 +0300
+Subject: [PATCH] Disable fenv.h for ARC with glibc
+
+Signed-off-by: Evgeniy Didin <Evgeniy.Didin@synopsys.com>
+---
+ src/corelib/tools/qlocale_tools.cpp | 2 +-
+ tests/auto/corelib/tools/qlocale/tst_qlocale.cpp | 2 +-
+ tests/auto/gui/painting/qpainter/tst_qpainter.cpp | 2 +-
+ 3 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/src/corelib/tools/qlocale_tools.cpp b/src/corelib/tools/qlocale_tools.cpp
+index 4d969a4723..130340e516 100644
+--- a/src/corelib/tools/qlocale_tools.cpp
++++ b/src/corelib/tools/qlocale_tools.cpp
+@@ -53,7 +53,7 @@
+ #include <stdlib.h>
+ #include <time.h>
+
+-#if defined(Q_OS_LINUX) && !defined(__UCLIBC__)
++#if defined(Q_OS_LINUX) && !defined(__UCLIBC__) && !defined(__arc__)
+ # include <fenv.h>
+ #endif
+
+diff --git a/tests/auto/corelib/tools/qlocale/tst_qlocale.cpp b/tests/auto/corelib/tools/qlocale/tst_qlocale.cpp
+index f6e6545948..48b6180c7b 100644
+--- a/tests/auto/corelib/tools/qlocale/tst_qlocale.cpp
++++ b/tests/auto/corelib/tools/qlocale/tst_qlocale.cpp
+@@ -46,7 +46,7 @@
+ #include <private/qlocale_tools_p.h>
+ #include <qnumeric.h>
+
+-#if defined(Q_OS_LINUX) && defined(__GLIBC__)
++#if defined(Q_OS_LINUX) && defined(__GLIBC__) && !defined(__arc__)
+ # define QT_USE_FENV
+ #endif
+
+diff --git a/tests/auto/gui/painting/qpainter/tst_qpainter.cpp b/tests/auto/gui/painting/qpainter/tst_qpainter.cpp
+index 181c609c6e..a5c86ec845 100644
+--- a/tests/auto/gui/painting/qpainter/tst_qpainter.cpp
++++ b/tests/auto/gui/painting/qpainter/tst_qpainter.cpp
+@@ -2828,7 +2828,7 @@ void tst_QPainter::monoImages()
+ }
+ }
+
+-#if !defined(Q_OS_AIX) && !defined(Q_CC_MSVC) && !defined(Q_OS_SOLARIS) && !defined(__UCLIBC__)
++#if !defined(Q_OS_AIX) && !defined(Q_CC_MSVC) && !defined(Q_OS_SOLARIS) && !defined(__UCLIBC__) && !defined(__arc__)
+ #include <fenv.h>
+
+ static const QString fpeExceptionString(int exception)
+--
+2.16.2
+
diff --git a/bsp/meta-synopsys/recipes-qt/qt5/qtbase/0003-Disable-TLS-for-ARC.patch b/bsp/meta-synopsys/recipes-qt/qt5/qtbase/0003-Disable-TLS-for-ARC.patch
new file mode 100644
index 00000000..1603744d
--- /dev/null
+++ b/bsp/meta-synopsys/recipes-qt/qt5/qtbase/0003-Disable-TLS-for-ARC.patch
@@ -0,0 +1,102 @@
+From c8a6ff84fd941c6c5ad2a312d05cf51f734fdd65 Mon Sep 17 00:00:00 2001
+From: Evgeniy Didin <Evgeniy.Didin@synopsys.com>
+Date: Tue, 26 Mar 2019 14:18:31 +0300
+Subject: [PATCH] Disable TLS for ARC
+
+Signed-off-by: Evgeniy Didin <Evgeniy.Didin@synopsys.com>
+---
+ src/corelib/global/qcompilerdetection.h | 9 ---------
+ src/corelib/thread/qthread_unix.cpp | 2 +-
+ 2 files changed, 1 insertion(+), 10 deletions(-)
+
+diff --git a/src/corelib/global/qcompilerdetection.h b/src/corelib/global/qcompilerdetection.h
+index f46ff73527..205a6b66d6 100644
+--- a/src/corelib/global/qcompilerdetection.h
++++ b/src/corelib/global/qcompilerdetection.h
+@@ -388,7 +388,6 @@
+ # define Q_COMPILER_RVALUE_REFS
+ # define Q_COMPILER_STATIC_ASSERT
+ # define Q_COMPILER_TEMPLATE_ALIAS
+-# define Q_COMPILER_THREAD_LOCAL
+ # define Q_COMPILER_THREADSAFE_STATICS
+ # define Q_COMPILER_UDL
+ # define Q_COMPILER_UNICODE_STRINGS
+@@ -539,7 +538,6 @@
+ * N2118 N2844 N3053 Q_COMPILER_RVALUE_REFS __cpp_rvalue_references = 200610
+ * N1720 Q_COMPILER_STATIC_ASSERT __cpp_static_assert = 200410
+ * N2258 Q_COMPILER_TEMPLATE_ALIAS
+- * N2659 Q_COMPILER_THREAD_LOCAL
+ * N2660 Q_COMPILER_THREADSAFE_STATICS
+ * N2765 Q_COMPILER_UDL __cpp_user_defined_literals = 200809
+ * N2442 Q_COMPILER_UNICODE_STRINGS __cpp_unicode_literals = 200710
+@@ -626,14 +624,12 @@
+ # define Q_COMPILER_ALIGNAS
+ # define Q_COMPILER_ALIGNOF
+ # define Q_COMPILER_INHERITING_CONSTRUCTORS
+-# define Q_COMPILER_THREAD_LOCAL
+ # define Q_COMPILER_UDL
+ # endif
+ # elif defined(__STDC_VERSION__) && __STDC_VERSION__ > 199901L
+ // C11 features supported. Only tested with ICC 17 and up.
+ # define Q_COMPILER_STATIC_ASSERT
+ # if __has_include(<threads.h>)
+-# define Q_COMPILER_THREAD_LOCAL
+ # endif
+ # endif
+ #endif
+@@ -741,7 +737,6 @@
+ # endif
+ # if __has_feature(cxx_thread_local)
+ # if !defined(__FreeBSD__) /* FreeBSD clang fails on __cxa_thread_atexit */
+-# define Q_COMPILER_THREAD_LOCAL
+ # endif
+ # endif
+ # if __has_feature(cxx_user_literals)
+@@ -793,7 +788,6 @@
+ # endif
+ # if __has_feature(c_thread_local) && __has_include(<threads.h>)
+ # if !defined(__FreeBSD__) /* FreeBSD clang fails on __cxa_thread_atexit */
+-# define Q_COMPILER_THREAD_LOCAL
+ # endif
+ # endif
+ # endif
+@@ -878,7 +872,6 @@
+ # define Q_COMPILER_ALIGNAS
+ # define Q_COMPILER_ALIGNOF
+ # define Q_COMPILER_INHERITING_CONSTRUCTORS
+-# define Q_COMPILER_THREAD_LOCAL
+ # if Q_CC_GNU > 408 || __GNUC_PATCHLEVEL__ >= 1
+ # define Q_COMPILER_REF_QUALIFIERS
+ # endif
+@@ -901,7 +894,6 @@
+ # if Q_CC_GNU >= 409
+ /* C11 features supported in GCC 4.9: */
+ # if __has_include(<threads.h>)
+-# define Q_COMPILER_THREAD_LOCAL
+ # endif
+ # endif
+ # endif
+@@ -951,7 +943,6 @@
+ # define Q_COMPILER_NOEXCEPT
+ # define Q_COMPILER_RANGE_FOR
+ # define Q_COMPILER_REF_QUALIFIERS
+-# define Q_COMPILER_THREAD_LOCAL
+ # define Q_COMPILER_UDL
+ # define Q_COMPILER_UNICODE_STRINGS
+ # define Q_COMPILER_UNRESTRICTED_UNIONS
+diff --git a/src/corelib/thread/qthread_unix.cpp b/src/corelib/thread/qthread_unix.cpp
+index 9ad32b162d..05911d5207 100644
+--- a/src/corelib/thread/qthread_unix.cpp
++++ b/src/corelib/thread/qthread_unix.cpp
+@@ -109,7 +109,7 @@ Q_STATIC_ASSERT(sizeof(pthread_t) <= sizeof(Qt::HANDLE));
+
+ enum { ThreadPriorityResetFlag = 0x80000000 };
+
+-#if defined(Q_OS_LINUX) && defined(__GLIBC__) && (defined(Q_CC_GNU) || defined(Q_CC_INTEL)) && !defined(QT_LINUXBASE)
++#if defined(Q_OS_LINUX) && defined(__GLIBC__) && !defined(__arc__) && (defined(Q_CC_GNU) || defined(Q_CC_INTEL)) && !defined(QT_LINUXBASE)
+ /* LSB doesn't have __thread, https://lsbbugs.linuxfoundation.org/show_bug.cgi?id=993 */
+ #define HAVE_TLS
+ #endif
+--
+2.16.2
+
diff --git a/bsp/meta-synopsys/recipes-qt/qt5/qtbase_git.bbappend b/bsp/meta-synopsys/recipes-qt/qt5/qtbase_git.bbappend
new file mode 100644
index 00000000..f3ad0fc2
--- /dev/null
+++ b/bsp/meta-synopsys/recipes-qt/qt5/qtbase_git.bbappend
@@ -0,0 +1,5 @@
+FILESEXTRAPATHS_prepend := "${THISDIR}/qtbase:"
+SRC_URI += "\
+ file://0001-Add-ARC-support-in-double-conversion.patch \
+ file://0002-Fix-build-for-ARC-with-glibc-due-to-lack-of-FENV.patch \
+"