mirror of
https://github.com/thead-yocto-mirror/meta-qt5
synced 2026-09-06 22:24:36 +02:00
qtwebengine: Fix build with musl/gcc9
Provide couple of patches to fix build with x86_64/musl and a new bug found lss via gcc9 Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
This commit is contained in:
@@ -0,0 +1,67 @@
|
||||
From d517836886eee72503aecc3e866fb7f08e6b0c49 Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Sun, 23 Dec 2018 16:58:04 -0800
|
||||
Subject: [PATCH] chromium: stack pointer clobber
|
||||
|
||||
Do not add stack pointer to clobber list
|
||||
|
||||
it was being ignored until gcc 9.0 became capable
|
||||
of flagging this silent ignoring via [1]
|
||||
|
||||
[1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=52813<Paste>
|
||||
|
||||
Upstream-Status: Submitted [https://chromium-review.googlesource.com/c/linux-syscall-support/+/1390160]
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
chromium/third_party/lss/linux_syscall_support.h | 10 +++++-----
|
||||
1 file changed, 5 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/chromium/third_party/lss/linux_syscall_support.h b/chromium/third_party/lss/linux_syscall_support.h
|
||||
index 5d9c2e8582f..e19e51dd304 100644
|
||||
--- a/chromium/third_party/lss/linux_syscall_support.h
|
||||
+++ b/chromium/third_party/lss/linux_syscall_support.h
|
||||
@@ -1964,7 +1964,7 @@ struct kernel_statfs {
|
||||
__asm__ volatile(LSS_ENTRYPOINT \
|
||||
: "=a" (__res) \
|
||||
: "0" (__NR_##name) \
|
||||
- : "esp", "memory"); \
|
||||
+ : "memory"); \
|
||||
LSS_RETURN(type,__res); \
|
||||
}
|
||||
#undef _syscall1
|
||||
@@ -2012,7 +2012,7 @@ struct kernel_statfs {
|
||||
: "i" (__NR_##name), "ri" ((long)(arg1)), \
|
||||
"c" ((long)(arg2)), "d" ((long)(arg3)), \
|
||||
"S" ((long)(arg4)), "D" ((long)(arg5)) \
|
||||
- : "esp", "memory"); \
|
||||
+ : "memory"); \
|
||||
LSS_RETURN(type,__res); \
|
||||
}
|
||||
#undef _syscall6
|
||||
@@ -2034,7 +2034,7 @@ struct kernel_statfs {
|
||||
: "i" (__NR_##name), "0" ((long)(&__s)), \
|
||||
"c" ((long)(arg2)), "d" ((long)(arg3)), \
|
||||
"S" ((long)(arg4)), "D" ((long)(arg5)) \
|
||||
- : "esp", "memory"); \
|
||||
+ : "memory"); \
|
||||
LSS_RETURN(type,__res); \
|
||||
}
|
||||
LSS_INLINE int LSS_NAME(clone)(int (*fn)(void *), void *child_stack,
|
||||
@@ -2120,7 +2120,7 @@ struct kernel_statfs {
|
||||
: "0"(-EINVAL), "i"(__NR_clone),
|
||||
"m"(fn), "m"(child_stack), "m"(flags), "m"(arg),
|
||||
"m"(parent_tidptr), "m"(newtls), "m"(child_tidptr)
|
||||
- : "esp", "memory", "ecx", "edx", "esi", "edi");
|
||||
+ : "memory", "ecx", "edx", "esi", "edi");
|
||||
LSS_RETURN(int, __res);
|
||||
}
|
||||
|
||||
@@ -2405,7 +2405,7 @@ struct kernel_statfs {
|
||||
"d"(LSS_SYSCALL_ARG(parent_tidptr)),
|
||||
"r"(LSS_SYSCALL_ARG(newtls)),
|
||||
"r"(LSS_SYSCALL_ARG(child_tidptr))
|
||||
- : "rsp", "memory", "r8", "r10", "r11", "rcx");
|
||||
+ : "memory", "r8", "r10", "r11", "rcx");
|
||||
}
|
||||
LSS_RETURN(int, __res);
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
From 4d4bc57f9ac9769ef8d7fb4b73889f36ae078bf2 Mon Sep 17 00:00:00 2001
|
||||
From 3386b5df27ec6dfd42fa5bc30b5e307b293a0a5f Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Fri, 7 Jul 2017 14:01:12 -0700
|
||||
Subject: [PATCH] chromium: musl: sandbox: Define TEMP_FAILURE_RETRY if not
|
||||
@@ -1,4 +1,4 @@
|
||||
From 3b0cfcacac04a47778d6af6088073bb49bd9b2d9 Mon Sep 17 00:00:00 2001
|
||||
From 8a99b4662109d03502baa1578d5484bfdd399caf Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Fri, 7 Jul 2017 14:09:06 -0700
|
||||
Subject: [PATCH] chromium: musl: Avoid mallinfo() APIs on non-glibc/linux
|
||||
@@ -1,4 +1,4 @@
|
||||
From 6bd670aee3ce52e9a546fd680753b66cba1d05fe Mon Sep 17 00:00:00 2001
|
||||
From f451b8f55b6258a725a2ba470ca8feaa600f621e Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Fri, 7 Jul 2017 14:37:49 -0700
|
||||
Subject: [PATCH] chromium: musl: include fcntl.h for loff_t
|
||||
@@ -1,4 +1,4 @@
|
||||
From 83295f6b1b72683ffe042d362a36f9c8482e64e2 Mon Sep 17 00:00:00 2001
|
||||
From 36d8ce0f390678080a670d1c48340c341d33bfad Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Fri, 7 Jul 2017 14:38:37 -0700
|
||||
Subject: [PATCH] chromium: musl: use off64_t instead of the internal __off64_t
|
||||
@@ -1,4 +1,4 @@
|
||||
From 4710eba530c905803965811071aced2e793fedad Mon Sep 17 00:00:00 2001
|
||||
From 606a0f86fdfb600ab43221e079483d5de5db39bb Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Fri, 7 Jul 2017 14:54:38 -0700
|
||||
Subject: [PATCH] chromium: musl: linux != glibc, make the distinction
|
||||
@@ -1,4 +1,4 @@
|
||||
From da9611b55a773e1193af56d4391bf8a0fb83b02b Mon Sep 17 00:00:00 2001
|
||||
From 418261c2f6f4c5ec81e390af265aa22b7adba272 Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Fri, 7 Jul 2017 15:09:02 -0700
|
||||
Subject: [PATCH] chromium: musl: allocator: Do not include glibc_weak_symbols
|
||||
@@ -1,4 +1,4 @@
|
||||
From bd65922ed04167888d751f438457d1c33081b8f4 Mon Sep 17 00:00:00 2001
|
||||
From 69d01ff29ba4e338c9d13369a511e90ab0168afa Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Fri, 7 Jul 2017 15:12:39 -0700
|
||||
Subject: [PATCH] chromium: musl: Use correct member name __si_fields from
|
||||
@@ -1,4 +1,4 @@
|
||||
From 3f7f5a5ad9e3f3c5fa998bf6a905b6759e028dbc Mon Sep 17 00:00:00 2001
|
||||
From ad6c7f73c56dc465b0554437da971adf763c4032 Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Fri, 7 Jul 2017 15:27:50 -0700
|
||||
Subject: [PATCH] chromium: musl: Define res_ninit and res_nclose for non-glibc
|
||||
@@ -1,4 +1,4 @@
|
||||
From 18cc6e16f45eafb89f19d507c02d573ab5429246 Mon Sep 17 00:00:00 2001
|
||||
From f1060910189ba7760b7285a4b221065c1d677241 Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Fri, 7 Jul 2017 15:39:57 -0700
|
||||
Subject: [PATCH] chromium: musl: Do not define __sbrk on musl
|
||||
@@ -1,4 +1,4 @@
|
||||
From 2da25a561f24b3a759c1c26e98b252e47aea19c9 Mon Sep 17 00:00:00 2001
|
||||
From 7f95397de67e00390fd90ed6b2f70dcfde8d7285 Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Fri, 7 Jul 2017 16:41:23 -0700
|
||||
Subject: [PATCH] chromium: musl: Adjust default pthread stack size
|
||||
@@ -1,4 +1,4 @@
|
||||
From 72f0f29fa6372a1b45f33f04e61968dd21870d64 Mon Sep 17 00:00:00 2001
|
||||
From 010cff20ca97bba43ed9d6332bd3e9b0198c97a4 Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Fri, 7 Jul 2017 17:15:34 -0700
|
||||
Subject: [PATCH] chromium: musl: include asm-generic/ioctl.h for TCGETS2
|
||||
@@ -1,4 +1,4 @@
|
||||
From e38a35fcad87a4c8279138d4ee6eaadac297548a Mon Sep 17 00:00:00 2001
|
||||
From 7bc63fb1e62c906db5be40acd1d10095461cd4bd Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Tue, 25 Sep 2018 12:35:07 -0700
|
||||
Subject: [PATCH] chromium: musl: Use _fpstate instead of _libc_fpstate on
|
||||
@@ -1,4 +1,4 @@
|
||||
From 26fdb49d41d1a5474c1fcfce9d60eda8191bdab7 Mon Sep 17 00:00:00 2001
|
||||
From 7652de3ab9dbc9eacf73a3fe16559a1651a48b1a Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Tue, 25 Sep 2018 12:59:05 -0700
|
||||
Subject: [PATCH] chromium: musl: elf_reader.cc: include <sys/reg.h> to get
|
||||
@@ -0,0 +1,31 @@
|
||||
From b8d97e253b4df62b2ab8b313a34d69d29c63b24c Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Sun, 23 Dec 2018 16:58:04 -0800
|
||||
Subject: [PATCH] chromium: musl: pread pwrite
|
||||
|
||||
Redefine pread/pwrite in terms of 64bit variants on musl
|
||||
since 32bit variants don't exist and aliases are not defined in
|
||||
libc either
|
||||
|
||||
Upstream-Status: Submitted [https://codereview.chromium.org/1743093002/]
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
chromium/third_party/lss/linux_syscall_support.h | 5 +++++
|
||||
1 file changed, 5 insertions(+)
|
||||
|
||||
diff --git a/chromium/third_party/lss/linux_syscall_support.h b/chromium/third_party/lss/linux_syscall_support.h
|
||||
index e19e51dd304..5c661949d1e 100644
|
||||
--- a/chromium/third_party/lss/linux_syscall_support.h
|
||||
+++ b/chromium/third_party/lss/linux_syscall_support.h
|
||||
@@ -1239,6 +1239,11 @@ struct kernel_statfs {
|
||||
#ifndef __NR_fallocate
|
||||
#define __NR_fallocate 285
|
||||
#endif
|
||||
+#undef __NR_pread
|
||||
+#define __NR_pread __NR_pread64
|
||||
+#undef __NR_pwrite
|
||||
+#define __NR_pwrite __NR_pwrite64
|
||||
+
|
||||
/* End of x86-64 definitions */
|
||||
#elif defined(__mips__)
|
||||
#if _MIPS_SIM == _MIPS_SIM_ABI32
|
||||
@@ -147,27 +147,29 @@ SRC_URI_append_libc-musl = "\
|
||||
"
|
||||
|
||||
# Patches from https://github.com/meta-qt5/qtwebengine-chromium/commits/69-based
|
||||
# 69-based.meta-qt5.2
|
||||
# 69-based.meta-qt5.3
|
||||
SRC_URI += " \
|
||||
file://chromium/0001-chromium-Force-host-toolchain-configuration.patch;patchdir=src/3rdparty \
|
||||
file://chromium/0002-chromium-workaround-for-too-long-.rps-file-name.patch;patchdir=src/3rdparty \
|
||||
file://chromium/0003-chromium-Fix-build-with-gcc8.patch;patchdir=src/3rdparty \
|
||||
file://chromium/0004-chromium-stack-pointer-clobber.patch;patchdir=src/3rdparty \
|
||||
"
|
||||
|
||||
SRC_URI_append_libc-musl = "\
|
||||
file://chromium/0004-chromium-musl-sandbox-Define-TEMP_FAILURE_RETRY-if-n.patch;patchdir=src/3rdparty \
|
||||
file://chromium/0005-chromium-musl-Avoid-mallinfo-APIs-on-non-glibc-linux.patch;patchdir=src/3rdparty \
|
||||
file://chromium/0006-chromium-musl-include-fcntl.h-for-loff_t.patch;patchdir=src/3rdparty \
|
||||
file://chromium/0007-chromium-musl-use-off64_t-instead-of-the-internal-__.patch;patchdir=src/3rdparty \
|
||||
file://chromium/0008-chromium-musl-linux-glibc-make-the-distinction.patch;patchdir=src/3rdparty \
|
||||
file://chromium/0009-chromium-musl-allocator-Do-not-include-glibc_weak_sy.patch;patchdir=src/3rdparty \
|
||||
file://chromium/0010-chromium-musl-Use-correct-member-name-__si_fields-fr.patch;patchdir=src/3rdparty \
|
||||
file://chromium/0011-chromium-musl-Define-res_ninit-and-res_nclose-for-no.patch;patchdir=src/3rdparty \
|
||||
file://chromium/0012-chromium-musl-Do-not-define-__sbrk-on-musl.patch;patchdir=src/3rdparty \
|
||||
file://chromium/0013-chromium-musl-Adjust-default-pthread-stack-size.patch;patchdir=src/3rdparty \
|
||||
file://chromium/0014-chromium-musl-include-asm-generic-ioctl.h-for-TCGETS.patch;patchdir=src/3rdparty \
|
||||
file://chromium/0015-chromium-musl-Use-_fpstate-instead-of-_libc_fpstate-.patch;patchdir=src/3rdparty \
|
||||
file://chromium/0016-chromium-musl-elf_reader.cc-include-sys-reg.h-to-get.patch;patchdir=src/3rdparty \
|
||||
file://chromium/0005-chromium-musl-sandbox-Define-TEMP_FAILURE_RETRY-if-n.patch;patchdir=src/3rdparty \
|
||||
file://chromium/0006-chromium-musl-Avoid-mallinfo-APIs-on-non-glibc-linux.patch;patchdir=src/3rdparty \
|
||||
file://chromium/0007-chromium-musl-include-fcntl.h-for-loff_t.patch;patchdir=src/3rdparty \
|
||||
file://chromium/0008-chromium-musl-use-off64_t-instead-of-the-internal-__.patch;patchdir=src/3rdparty \
|
||||
file://chromium/0009-chromium-musl-linux-glibc-make-the-distinction.patch;patchdir=src/3rdparty \
|
||||
file://chromium/0010-chromium-musl-allocator-Do-not-include-glibc_weak_sy.patch;patchdir=src/3rdparty \
|
||||
file://chromium/0011-chromium-musl-Use-correct-member-name-__si_fields-fr.patch;patchdir=src/3rdparty \
|
||||
file://chromium/0012-chromium-musl-Define-res_ninit-and-res_nclose-for-no.patch;patchdir=src/3rdparty \
|
||||
file://chromium/0013-chromium-musl-Do-not-define-__sbrk-on-musl.patch;patchdir=src/3rdparty \
|
||||
file://chromium/0014-chromium-musl-Adjust-default-pthread-stack-size.patch;patchdir=src/3rdparty \
|
||||
file://chromium/0015-chromium-musl-include-asm-generic-ioctl.h-for-TCGETS.patch;patchdir=src/3rdparty \
|
||||
file://chromium/0016-chromium-musl-Use-_fpstate-instead-of-_libc_fpstate-.patch;patchdir=src/3rdparty \
|
||||
file://chromium/0017-chromium-musl-elf_reader.cc-include-sys-reg.h-to-get.patch;patchdir=src/3rdparty \
|
||||
file://chromium/0018-chromium-musl-pread-pwrite.patch;patchdir=src/3rdparty \
|
||||
"
|
||||
|
||||
SRCREV_qtwebengine = "4f1e0003d98116e33a847360e0e95c46daae25fc"
|
||||
|
||||
Reference in New Issue
Block a user