From f83c1ca79b7ea5b0a61038faf18ed84927879e23 Mon Sep 17 00:00:00 2001 From: Martin Jansa Date: Fri, 1 Mar 2019 12:12:11 +0000 Subject: qtscript: add fix for build with gcc 8.3 * fixes issue introduced with gcc upgrade to 8.3: | /OE/build/luneos-master/webos-ports/tmp-glibc/work/i586-webos-linux/qtscript/5.12.0+gitAUTOINC+0be84da600-r0/git/src/3rdparty/javascriptcore/JavaScriptCore/jit/JITStubs.cpp:157:5: error: expected '(' before 'volatile' | asm volatile ( | ^~~~~~~~ | ( | /OE/build/luneos-master/webos-ports/tmp-glibc/work/i586-webos-linux/qtscript/5.12.0+gitAUTOINC+0be84da600-r0/git/src/3rdparty/javascriptcore/JavaScriptCore/jit/JITStubs.cpp:158:1: error: expected unqualified-id before string constant | ".globl " SYMBOL_STRING(ctiOpThrowNotCaught) "\n" | ^~~~~~~~~ Signed-off-by: Martin Jansa --- .../qt5/qtscript/0002-Fix-build-with-GCC-8.3.patch | 235 +++++++++++++++++++++ recipes-qt/qt5/qtscript_git.bb | 1 + 2 files changed, 236 insertions(+) create mode 100644 recipes-qt/qt5/qtscript/0002-Fix-build-with-GCC-8.3.patch diff --git a/recipes-qt/qt5/qtscript/0002-Fix-build-with-GCC-8.3.patch b/recipes-qt/qt5/qtscript/0002-Fix-build-with-GCC-8.3.patch new file mode 100644 index 00000000..629cf8e8 --- /dev/null +++ b/recipes-qt/qt5/qtscript/0002-Fix-build-with-GCC-8.3.patch @@ -0,0 +1,235 @@ +From 03cdaf779e0d8587c6e110f1f834a15e2d3317fd Mon Sep 17 00:00:00 2001 +From: Thiago Macieira +Date: Mon, 28 Jan 2019 14:33:12 -0800 +Subject: [PATCH] Fix build with GCC 8.3 + +Qualifiers in the asm statement are not allowed in the global scope. I +thought they were necessary for LTO, but I the commit to this file that +added them predates my work on setting up LTO for GCC. + +Change-Id: Id98140e1c2f0426cabbefffd157e23e5ece67a49 +Reviewed-by: Allan Sandfeld Jensen +--- + .../JavaScriptCore/jit/JITStubs.cpp | 48 +++++++++---------- + 1 file changed, 24 insertions(+), 24 deletions(-) + +diff --git a/src/3rdparty/javascriptcore/JavaScriptCore/jit/JITStubs.cpp b/src/3rdparty/javascriptcore/JavaScriptCore/jit/JITStubs.cpp +index 1abdf8b..9f60761 100644 +--- a/src/3rdparty/javascriptcore/JavaScriptCore/jit/JITStubs.cpp ++++ b/src/3rdparty/javascriptcore/JavaScriptCore/jit/JITStubs.cpp +@@ -116,7 +116,7 @@ COMPILE_ASSERT(offsetof(struct JITStackFrame, savedEBX) == 0x3c, JITStackFrame_s + COMPILE_ASSERT(offsetof(struct JITStackFrame, callFrame) == 0x58, JITStackFrame_callFrame_offset_matches_ctiTrampoline); + COMPILE_ASSERT(offsetof(struct JITStackFrame, code) == 0x50, JITStackFrame_code_offset_matches_ctiTrampoline); + +-asm volatile ( ++asm ( + ".text\n" + ".globl " SYMBOL_STRING(ctiTrampoline) "\n" + HIDE_SYMBOL(ctiTrampoline) "\n" +@@ -138,7 +138,7 @@ SYMBOL_STRING(ctiTrampoline) ":" "\n" + "ret" "\n" + ); + +-asm volatile ( ++asm ( + ".globl " SYMBOL_STRING(ctiVMThrowTrampoline) "\n" + HIDE_SYMBOL(ctiVMThrowTrampoline) "\n" + SYMBOL_STRING(ctiVMThrowTrampoline) ":" "\n" +@@ -154,7 +154,7 @@ SYMBOL_STRING(ctiVMThrowTrampoline) ":" "\n" + "ret" "\n" + ); + +-asm volatile ( ++asm ( + ".globl " SYMBOL_STRING(ctiOpThrowNotCaught) "\n" + HIDE_SYMBOL(ctiOpThrowNotCaught) "\n" + SYMBOL_STRING(ctiOpThrowNotCaught) ":" "\n" +@@ -179,7 +179,7 @@ COMPILE_ASSERT(offsetof(struct JITStackFrame, savedRBX) == 0x48, JITStackFrame_s + COMPILE_ASSERT(offsetof(struct JITStackFrame, callFrame) == 0x90, JITStackFrame_callFrame_offset_matches_ctiTrampoline); + COMPILE_ASSERT(offsetof(struct JITStackFrame, code) == 0x80, JITStackFrame_code_offset_matches_ctiTrampoline); + +-asm volatile ( ++asm ( + ".globl " SYMBOL_STRING(ctiTrampoline) "\n" + HIDE_SYMBOL(ctiTrampoline) "\n" + SYMBOL_STRING(ctiTrampoline) ":" "\n" +@@ -206,7 +206,7 @@ SYMBOL_STRING(ctiTrampoline) ":" "\n" + "ret" "\n" + ); + +-asm volatile ( ++asm ( + ".globl " SYMBOL_STRING(ctiVMThrowTrampoline) "\n" + HIDE_SYMBOL(ctiVMThrowTrampoline) "\n" + SYMBOL_STRING(ctiVMThrowTrampoline) ":" "\n" +@@ -222,7 +222,7 @@ SYMBOL_STRING(ctiVMThrowTrampoline) ":" "\n" + "ret" "\n" + ); + +-asm volatile ( ++asm ( + ".globl " SYMBOL_STRING(ctiOpThrowNotCaught) "\n" + HIDE_SYMBOL(ctiOpThrowNotCaught) "\n" + SYMBOL_STRING(ctiOpThrowNotCaught) ":" "\n" +@@ -242,7 +242,7 @@ SYMBOL_STRING(ctiOpThrowNotCaught) ":" "\n" + #error "JIT_STUB_ARGUMENT_VA_LIST not supported on ARMv7." + #endif + +-asm volatile ( ++asm ( + ".text" "\n" + ".align 2" "\n" + ".globl " SYMBOL_STRING(ctiTrampoline) "\n" +@@ -269,7 +269,7 @@ SYMBOL_STRING(ctiTrampoline) ":" "\n" + "bx lr" "\n" + ); + +-asm volatile ( ++asm ( + ".text" "\n" + ".align 2" "\n" + ".globl " SYMBOL_STRING(ctiVMThrowTrampoline) "\n" +@@ -287,7 +287,7 @@ SYMBOL_STRING(ctiVMThrowTrampoline) ":" "\n" + "bx lr" "\n" + ); + +-asm volatile ( ++asm ( + ".text" "\n" + ".align 2" "\n" + ".globl " SYMBOL_STRING(ctiOpThrowNotCaught) "\n" +@@ -305,7 +305,7 @@ SYMBOL_STRING(ctiOpThrowNotCaught) ":" "\n" + + #elif COMPILER(GCC) && CPU(ARM_TRADITIONAL) + +-asm volatile ( ++asm ( + ".globl " SYMBOL_STRING(ctiTrampoline) "\n" + HIDE_SYMBOL(ctiTrampoline) "\n" + SYMBOL_STRING(ctiTrampoline) ":" "\n" +@@ -323,7 +323,7 @@ SYMBOL_STRING(ctiTrampoline) ":" "\n" + "mov pc, lr" "\n" + ); + +-asm volatile ( ++asm ( + ".globl " SYMBOL_STRING(ctiVMThrowTrampoline) "\n" + HIDE_SYMBOL(ctiVMThrowTrampoline) "\n" + SYMBOL_STRING(ctiVMThrowTrampoline) ":" "\n" +@@ -418,7 +418,7 @@ COMPILE_ASSERT(offsetof(struct JITStackFrame, callFrame) == 0x38, JITStackFrame_ + COMPILE_ASSERT(offsetof(struct JITStackFrame, code) == 0x30, JITStackFrame_code_offset_matches_ctiTrampoline); + COMPILE_ASSERT(offsetof(struct JITStackFrame, savedEBX) == 0x1c, JITStackFrame_stub_argument_space_matches_ctiTrampoline); + +-asm volatile ( ++asm ( + ".text\n" + ".globl " SYMBOL_STRING(ctiTrampoline) "\n" + HIDE_SYMBOL(ctiTrampoline) "\n" +@@ -440,7 +440,7 @@ SYMBOL_STRING(ctiTrampoline) ":" "\n" + "ret" "\n" + ); + +-asm volatile ( ++asm ( + ".globl " SYMBOL_STRING(ctiVMThrowTrampoline) "\n" + HIDE_SYMBOL(ctiVMThrowTrampoline) "\n" + SYMBOL_STRING(ctiVMThrowTrampoline) ":" "\n" +@@ -456,7 +456,7 @@ SYMBOL_STRING(ctiVMThrowTrampoline) ":" "\n" + "ret" "\n" + ); + +-asm volatile ( ++asm ( + ".globl " SYMBOL_STRING(ctiOpThrowNotCaught) "\n" + HIDE_SYMBOL(ctiOpThrowNotCaught) "\n" + SYMBOL_STRING(ctiOpThrowNotCaught) ":" "\n" +@@ -480,7 +480,7 @@ COMPILE_ASSERT(offsetof(struct JITStackFrame, callFrame) == 0x58, JITStackFrame_ + COMPILE_ASSERT(offsetof(struct JITStackFrame, code) == 0x48, JITStackFrame_code_offset_matches_ctiTrampoline); + COMPILE_ASSERT(offsetof(struct JITStackFrame, savedRBX) == 0x78, JITStackFrame_stub_argument_space_matches_ctiTrampoline); + +-asm volatile ( ++asm ( + ".text\n" + ".globl " SYMBOL_STRING(ctiTrampoline) "\n" + HIDE_SYMBOL(ctiTrampoline) "\n" +@@ -515,7 +515,7 @@ SYMBOL_STRING(ctiTrampoline) ":" "\n" + "ret" "\n" + ); + +-asm volatile ( ++asm ( + ".globl " SYMBOL_STRING(ctiVMThrowTrampoline) "\n" + HIDE_SYMBOL(ctiVMThrowTrampoline) "\n" + SYMBOL_STRING(ctiVMThrowTrampoline) ":" "\n" +@@ -531,7 +531,7 @@ SYMBOL_STRING(ctiVMThrowTrampoline) ":" "\n" + "ret" "\n" + ); + +-asm volatile ( ++asm ( + ".globl " SYMBOL_STRING(ctiOpThrowNotCaught) "\n" + HIDE_SYMBOL(ctiOpThrowNotCaught) "\n" + SYMBOL_STRING(ctiOpThrowNotCaught) ":" "\n" +@@ -551,7 +551,7 @@ SYMBOL_STRING(ctiOpThrowNotCaught) ":" "\n" + #error "JIT_STUB_ARGUMENT_VA_LIST not supported on ARMv7." + #endif + +-asm volatile ( ++asm ( + ".text" "\n" + ".align 2" "\n" + ".globl " SYMBOL_STRING(ctiTrampoline) "\n" +@@ -578,7 +578,7 @@ SYMBOL_STRING(ctiTrampoline) ":" "\n" + "bx lr" "\n" + ); + +-asm volatile ( ++asm ( + ".text" "\n" + ".align 2" "\n" + ".globl " SYMBOL_STRING(ctiVMThrowTrampoline) "\n" +@@ -596,7 +596,7 @@ SYMBOL_STRING(ctiVMThrowTrampoline) ":" "\n" + "bx lr" "\n" + ); + +-asm volatile ( ++asm ( + ".text" "\n" + ".align 2" "\n" + ".globl " SYMBOL_STRING(ctiOpThrowNotCaught) "\n" +@@ -614,7 +614,7 @@ SYMBOL_STRING(ctiOpThrowNotCaught) ":" "\n" + + #elif COMPILER(GCC) && CPU(ARM_TRADITIONAL) + +-asm volatile ( ++asm ( + ".text\n" + ".globl " SYMBOL_STRING(ctiTrampoline) "\n" + HIDE_SYMBOL(ctiTrampoline) "\n" +@@ -632,7 +632,7 @@ SYMBOL_STRING(ctiTrampoline) ":" "\n" + "mov pc, lr" "\n" + ); + +-asm volatile ( ++asm ( + ".globl " SYMBOL_STRING(ctiVMThrowTrampoline) "\n" + HIDE_SYMBOL(ctiVMThrowTrampoline) "\n" + SYMBOL_STRING(ctiVMThrowTrampoline) ":" "\n" +@@ -1024,7 +1024,7 @@ static NEVER_INLINE void throwStackOverflowError(CallFrame* callFrame, JSGlobalD + extern "C" { \ + rtype JITStubThunked_##op(STUB_ARGS_DECLARATION); \ + }; \ +- asm volatile ( \ ++ asm ( \ + ".text" "\n" \ + ".align 2" "\n" \ + ".globl " SYMBOL_STRING(cti_##op) "\n" \ +@@ -1053,7 +1053,7 @@ COMPILE_ASSERT(offsetof(struct JITStackFrame, thunkReturnAddress) == THUNK_RETUR + extern "C" { \ + rtype JITStubThunked_##op(STUB_ARGS_DECLARATION); \ + }; \ +- asm volatile ( \ ++ asm ( \ + ".globl " SYMBOL_STRING(cti_##op) "\n" \ + HIDE_SYMBOL(cti_##op) "\n" \ + SYMBOL_STRING(cti_##op) ":" "\n" \ diff --git a/recipes-qt/qt5/qtscript_git.bb b/recipes-qt/qt5/qtscript_git.bb index e172ba33..f020b19c 100644 --- a/recipes-qt/qt5/qtscript_git.bb +++ b/recipes-qt/qt5/qtscript_git.bb @@ -16,6 +16,7 @@ LIC_FILES_CHKSUM = " \ SRC_URI += " \ file://0001-3rdparty-javascriptcore-Add-RISC-V-support.patch \ file://0002-Include-asm-sgidefs.h-on-non-glibc-systems.patch \ + file://0002-Fix-build-with-GCC-8.3.patch \ " # qemuarm build fails with: -- cgit v1.2.3