diff options
-rw-r--r-- | recipes-qt/qt5/qtwebkit/0009-Riscv-Add-support-for-riscv.patch | 83 | ||||
-rw-r--r-- | recipes-qt/qt5/qtwebkit_git.bb | 5 |
2 files changed, 87 insertions, 1 deletions
diff --git a/recipes-qt/qt5/qtwebkit/0009-Riscv-Add-support-for-riscv.patch b/recipes-qt/qt5/qtwebkit/0009-Riscv-Add-support-for-riscv.patch new file mode 100644 index 00000000..2bfb72fe --- /dev/null +++ b/recipes-qt/qt5/qtwebkit/0009-Riscv-Add-support-for-riscv.patch | |||
@@ -0,0 +1,83 @@ | |||
1 | From b5a58d2c001689b07591fdce8820773d57a74002 Mon Sep 17 00:00:00 2001 | ||
2 | From: Chenxi Mao <chenxi.mao2013@gmail.com> | ||
3 | Date: Fri, 3 Apr 2020 08:33:10 +0800 | ||
4 | Subject: [PATCH 1/1] Riscv: Add support for riscv | ||
5 | |||
6 | --- | ||
7 | CMakeLists.txt | 2 ++ | ||
8 | Source/JavaScriptCore/CMakeLists.txt | 1 + | ||
9 | Source/WTF/wtf/Platform.h | 12 ++++++++++-- | ||
10 | Source/WTF/wtf/dtoa/utils.h | 2 +- | ||
11 | 4 files changed, 14 insertions(+), 3 deletions(-) | ||
12 | |||
13 | diff --git a/CMakeLists.txt b/CMakeLists.txt | ||
14 | index 31a2ea1fd..516476729 100644 | ||
15 | --- a/CMakeLists.txt | ||
16 | +++ b/CMakeLists.txt | ||
17 | @@ -83,6 +83,8 @@ elseif (LOWERCASE_CMAKE_SYSTEM_PROCESSOR MATCHES "s390") | ||
18 | set(WTF_CPU_S390 1) | ||
19 | elseif (LOWERCASE_CMAKE_SYSTEM_PROCESSOR MATCHES "s390x") | ||
20 | set(WTF_CPU_S390X 1) | ||
21 | +elseif (LOWERCASE_CMAKE_SYSTEM_PROCESSOR MATCHES "riscv64") | ||
22 | + set(WTF_CPU_RISCV64 1) | ||
23 | else () | ||
24 | message(FATAL_ERROR "Unknown CPU '${LOWERCASE_CMAKE_SYSTEM_PROCESSOR}'") | ||
25 | endif () | ||
26 | diff --git a/Source/JavaScriptCore/CMakeLists.txt b/Source/JavaScriptCore/CMakeLists.txt | ||
27 | index 937b3ed00..2fff29f9d 100644 | ||
28 | --- a/Source/JavaScriptCore/CMakeLists.txt | ||
29 | +++ b/Source/JavaScriptCore/CMakeLists.txt | ||
30 | @@ -1286,6 +1286,7 @@ elseif (WTF_CPU_S390) | ||
31 | elseif (WTF_CPU_S390X) | ||
32 | elseif (WTF_CPU_MIPS) | ||
33 | elseif (WTF_CPU_SH4) | ||
34 | +elseif (WTF_CPU_RISCV64) | ||
35 | elseif (WTF_CPU_X86) | ||
36 | elseif (WTF_CPU_X86_64) | ||
37 | if (MSVC AND ENABLE_JIT) | ||
38 | diff --git a/Source/WTF/wtf/Platform.h b/Source/WTF/wtf/Platform.h | ||
39 | index 5717f3ea1..8fac85f72 100644 | ||
40 | --- a/Source/WTF/wtf/Platform.h | ||
41 | +++ b/Source/WTF/wtf/Platform.h | ||
42 | @@ -349,7 +349,14 @@ | ||
43 | |||
44 | #endif /* ARM */ | ||
45 | |||
46 | -#if CPU(ARM) || CPU(MIPS) || CPU(SH4) || CPU(ALPHA) || CPU(HPPA) | ||
47 | +#if defined(__riscv) | ||
48 | +#define WTF_CPU_RISCV 1 | ||
49 | +#if __riscv_xlen == 64 | ||
50 | +#define WTF_CPU_RISCV64 1 | ||
51 | +#endif | ||
52 | +#endif | ||
53 | + | ||
54 | +#if CPU(ARM) || CPU(MIPS) || CPU(SH4) || CPU(ALPHA) || CPU(HPPA) || CPU(RISCV) | ||
55 | #define WTF_CPU_NEEDS_ALIGNED_ACCESS 1 | ||
56 | #endif | ||
57 | |||
58 | @@ -707,7 +714,8 @@ | ||
59 | || CPU(S390X) \ | ||
60 | || CPU(MIPS64) \ | ||
61 | || CPU(PPC64) \ | ||
62 | - || CPU(PPC64LE) | ||
63 | + || CPU(PPC64LE) \ | ||
64 | + || CPU(RISCV64) | ||
65 | #define USE_JSVALUE64 1 | ||
66 | #else | ||
67 | #define USE_JSVALUE32_64 1 | ||
68 | diff --git a/Source/WTF/wtf/dtoa/utils.h b/Source/WTF/wtf/dtoa/utils.h | ||
69 | index 05302e6e6..25dd352ee 100644 | ||
70 | --- a/Source/WTF/wtf/dtoa/utils.h | ||
71 | +++ b/Source/WTF/wtf/dtoa/utils.h | ||
72 | @@ -49,7 +49,7 @@ | ||
73 | defined(__ARMEL__) || \ | ||
74 | defined(_MIPS_ARCH_MIPS32R2) | ||
75 | #define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1 | ||
76 | -#elif CPU(MIPS) || CPU(MIPS64) || CPU(PPC) || CPU(PPC64) || CPU(PPC64LE) || CPU(SH4) || CPU(S390) || CPU(S390X) || CPU(IA64) || CPU(ALPHA) || CPU(ARM64) || CPU(HPPA) || CPU(ARM) | ||
77 | +#elif CPU(MIPS) || CPU(MIPS64) || CPU(PPC) || CPU(PPC64) || CPU(PPC64LE) || CPU(SH4) || CPU(S390) || CPU(S390X) || CPU(IA64) || CPU(ALPHA) || CPU(ARM64) || CPU(HPPA) || CPU(ARM) || CPU(RISCV) | ||
78 | #define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1 | ||
79 | #elif defined(_M_IX86) || defined(__i386__) | ||
80 | #if defined(_WIN32) | ||
81 | -- | ||
82 | 2.17.1 | ||
83 | |||
diff --git a/recipes-qt/qt5/qtwebkit_git.bb b/recipes-qt/qt5/qtwebkit_git.bb index 6aa1ded8..9e3aa551 100644 --- a/recipes-qt/qt5/qtwebkit_git.bb +++ b/recipes-qt/qt5/qtwebkit_git.bb | |||
@@ -20,6 +20,7 @@ SRC_URI += "\ | |||
20 | file://0006-Disable-code-related-to-HTTP-2-when-Qt-is-configured.patch \ | 20 | file://0006-Disable-code-related-to-HTTP-2-when-Qt-is-configured.patch \ |
21 | file://0007-Fix-compilation-with-Python-3.9-avoid-passing-encodi.patch \ | 21 | file://0007-Fix-compilation-with-Python-3.9-avoid-passing-encodi.patch \ |
22 | file://0008-Fix-build-with-icu-68.patch \ | 22 | file://0008-Fix-build-with-icu-68.patch \ |
23 | file://0009-Riscv-Add-support-for-riscv.patch \ | ||
23 | " | 24 | " |
24 | 25 | ||
25 | inherit cmake_qt5 perlnative | 26 | inherit cmake_qt5 perlnative |
@@ -57,9 +58,11 @@ EXTRA_OECMAKE += " \ | |||
57 | 58 | ||
58 | EXTRA_OECMAKE_append_toolchain-clang = " -DCMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES:PATH='${STAGING_INCDIR}'" | 59 | EXTRA_OECMAKE_append_toolchain-clang = " -DCMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES:PATH='${STAGING_INCDIR}'" |
59 | 60 | ||
60 | # JIT not supported on MIPS/PPC | 61 | # JIT not supported on MIPS/PPC/RISCV |
61 | EXTRA_OECMAKE_append_mipsarch = " -DENABLE_JIT=OFF -DENABLE_C_LOOP=ON " | 62 | EXTRA_OECMAKE_append_mipsarch = " -DENABLE_JIT=OFF -DENABLE_C_LOOP=ON " |
62 | EXTRA_OECMAKE_append_powerpc = " -DENABLE_JIT=OFF -DENABLE_C_LOOP=ON " | 63 | EXTRA_OECMAKE_append_powerpc = " -DENABLE_JIT=OFF -DENABLE_C_LOOP=ON " |
64 | EXTRA_OECMAKE_append_riscv64 = " -DENABLE_JIT=OFF -DENABLE_C_LOOP=ON " | ||
65 | |||
63 | # Disable gold on mips64/clang | 66 | # Disable gold on mips64/clang |
64 | # mips64-yoe-linux-musl-ld.gold: internal error in get_got_page_offset, at ../../gold/mips.cc:6260 | 67 | # mips64-yoe-linux-musl-ld.gold: internal error in get_got_page_offset, at ../../gold/mips.cc:6260 |
65 | # mips-yoe-linux-musl-ld.gold: error: Can't find matching LO16 reloc | 68 | # mips-yoe-linux-musl-ld.gold: error: Can't find matching LO16 reloc |