2
0
mirror of https://codeberg.org/kiss-community/repo synced 2024-07-04 15:02:27 +00:00

qt5-qtwebengine: Progress

This commit is contained in:
Dylan Araps 2020-01-17 11:09:42 +02:00
parent a0a19a9826
commit 417cfcfebe
No known key found for this signature in database
GPG Key ID: 46D62DD9F1DE636E
9 changed files with 207 additions and 4 deletions

View File

@ -13,9 +13,14 @@ make -j1 -C nss nss_build_all
# TODO: Maybe install nss-config. Nothing uses it yet
# and this build system is terrible so shhh.
install -Dt "$1/usr/include/nss" -m644 dist/public/nss/*.h
install -Dt "$1/usr/include/nss" -m644 dist/Linux*/include/*.h
install -Dt "$1/usr/lib" dist/Linux*/lib/*.so
install -Dt "$1/usr/lib" -m644 dist/Linux*/lib/*.chk
# Yucky. This is needed by qtwebengine.
install -Dt "$1/usr/include/nss/obsolete" \
-m644 dist/Linux*/include/obsolete/*.h
# Install the NSPR files. This is a joint package as I'd
# rather not juggle which version of NSPR works best with NSS.
install -Dt "$1/usr/include/nspr" -m644 nspr/pr/include/*.h

View File

@ -1 +1 @@
3.49.1-r0 1
3.49.1 1

View File

@ -1 +1 @@
5.14.0 1
5.14.10 1

View File

@ -4,7 +4,7 @@ for patch in *.patch; do
patch -p1 < "$patch"
done
# Disable dbus.
# Remove dbus dependency.
{
sed -i 's/dbus//g' \
src/buildtools/config/support.pri
@ -17,6 +17,14 @@ done
sed -i '/CANONICALIZE_FILE_NAME/d' \
src/3rdparty/chromium/third_party/nasm/config/config-linux.h
# Remove glibc header.
sed -i '/execinfo.h/d' \
src/3rdparty/chromium/base/debug/stack_trace_posix.cc
# Remove udev dependency.
sed -i '/use_udev/s/=.*/=false/' \
src/3rdparty/chromium/build/config/features.gni
qmake -- \
-feature-webengine-system-ninja \
-feature-webengine-system-zlib \
@ -32,5 +40,5 @@ qmake -- \
-no-feature-webengine-webrtc \
-no-feature-webengine-proprietary-codecs \
make -j1
make
make install INSTALL_ROOT="$1"

View File

@ -1,6 +1,9 @@
74f8c11cc318612c8d9dc87cf791badb1efe7080c10d8b3ed5843b249a942d32 qtwebengine-everywhere-src-5.14.0.tar.xz
1be1f8e2851f6420f0676fb4f1562368125f93da8bff977be741f85bb453a9fe 0004-mkspecs-Allow-builds-with-libc-glibc.patch
9d0b16939513f998da00834b1823743807b6aba04df732e83d42f15620359b35 0012-chromium-musl-Avoid-mallinfo-APIs-on-non-glibc-linux.patch
1e87c3f07b134d8f4ded953a0d916b9d5754fb580e1b72b2752ebf49fed6fd19 0017-chromium-musl-Use-correct-member-name-__si_fields-fr.patch
eb03407950b724c2131b930fb4b1b330ed5ed30f5584b383b6ba345596552495 0020-chromium-musl-Adjust-default-pthread-stack-size.patch
a58627c95fef502a1a9eeaa29f77bd60d17ab39dd51c994dcc7073fe7590232e 0021-chromium-musl-Use-_fpstate-instead-of-_libc_fpstate-.patch
fe8057b83f02f19e169faa9e4e6ebd11a4e3ba33453ea46df6672293edf9dd09 0022-chromium-musl-elf_reader.cc-include-sys-reg.h-to-get.patch
bd58ef5468799716187e0783c9c0a595eeb17ac619104c35b456c58350cf9b3e 0023-chromium-musl-pread-pwrite.patch
2924bd45f2ca95aa19d303b55368cc72041a2367b233ea6b69c2febf856518f5 0030-chromium-musl-execinfo.patch

View File

@ -0,0 +1,52 @@
From 4b16ad982ff10945a37a7dd90735a5a1be3d6a8b 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
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
chromium/base/process/process_metrics_posix.cc | 4 ++--
chromium/base/trace_event/malloc_dump_provider.cc | 2 ++
2 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/chromium/base/process/process_metrics_posix.cc b/chromium/base/process/process_metrics_posix.cc
index 5763432aa4f..ff00b7307c0 100644
--- a/src/3rdparty/chromium/base/process/process_metrics_posix.cc
+++ b/src/3rdparty/chromium/base/process/process_metrics_posix.cc
@@ -109,14 +109,14 @@ size_t ProcessMetrics::GetMallocUsage() {
malloc_statistics_t stats = {0};
malloc_zone_statistics(nullptr, &stats);
return stats.size_in_use;
-#elif defined(OS_LINUX) || defined(OS_ANDROID)
+#elif defined(__GLIBC__) || defined(OS_ANDROID)
struct mallinfo minfo = mallinfo();
#if defined(USE_TCMALLOC)
return minfo.uordblks;
#else
return minfo.hblkhd + minfo.arena;
#endif
-#elif defined(OS_FUCHSIA)
+#else
// TODO(fuchsia): Not currently exposed. https://crbug.com/735087.
return 0;
#endif
diff --git a/chromium/base/trace_event/malloc_dump_provider.cc b/chromium/base/trace_event/malloc_dump_provider.cc
index 0077d8b0aec..c69f893f4e9 100644
--- a/src/3rdparty/chromium/base/trace_event/malloc_dump_provider.cc
+++ b/src/3rdparty/chromium/base/trace_event/malloc_dump_provider.cc
@@ -77,6 +77,7 @@ MallocDumpProvider::~MallocDumpProvider() = default;
// the current process.
bool MallocDumpProvider::OnMemoryDump(const MemoryDumpArgs& args,
ProcessMemoryDump* pmd) {
+#if defined(__GLIBC__)
{
base::AutoLock auto_lock(emit_metrics_on_memory_dump_lock_);
if (!emit_metrics_on_memory_dump_)
@@ -172,6 +173,7 @@ bool MallocDumpProvider::OnMemoryDump(const MemoryDumpArgs& args,
MemoryAllocatorDump::kUnitsBytes,
resident_size - allocated_objects_size);
}
+#endif // __GLIBC__
return true;
}

View File

@ -0,0 +1,24 @@
From b8735496287b7c2a15224f7d837dc74a09434bdb 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
LinuxSigInfo
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
chromium/sandbox/linux/seccomp-bpf/trap.cc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/chromium/sandbox/linux/seccomp-bpf/trap.cc b/chromium/sandbox/linux/seccomp-bpf/trap.cc
index 003708d2c89..0fef3148f9d 100644
--- a/src/3rdparty/chromium/sandbox/linux/seccomp-bpf/trap.cc
+++ b/src/3rdparty/chromium/sandbox/linux/seccomp-bpf/trap.cc
@@ -168,7 +168,7 @@ void Trap::SigSys(int nr, LinuxSigInfo* info, ucontext_t* ctx) {
// most versions of glibc don't include this information in siginfo_t. So,
// we need to explicitly copy it into a arch_sigsys structure.
struct arch_sigsys sigsys;
- memcpy(&sigsys, &info->_sifields, sizeof(sigsys));
+ memcpy(&sigsys, &info->__si_fields, sizeof(sigsys));
#if defined(__mips__)
// When indirect syscall (syscall(__NR_foo, ...)) is made on Mips, the

View File

@ -0,0 +1,108 @@
diff --git a/src/3rdparty/chromium/base/debug/stack_trace.cc b/src/3rdparty/chromium/base/debug/stack_trace.cc
index d8ca822d9..f6f3d9c69 100644
--- a/src/3rdparty/chromium/base/debug/stack_trace.cc
+++ b/src/3rdparty/chromium/base/debug/stack_trace.cc
@@ -233,14 +233,14 @@ std::string StackTrace::ToString() const {
}
std::string StackTrace::ToStringWithPrefix(const char* prefix_string) const {
std::stringstream stream;
-#if !defined(__UCLIBC__) && !defined(_AIX)
+#if defined(__GLIBC__) && !defined(_AIX)
OutputToStreamWithPrefix(&stream, prefix_string);
#endif
return stream.str();
}
std::ostream& operator<<(std::ostream& os, const StackTrace& s) {
-#if !defined(__UCLIBC__) & !defined(_AIX)
+#if defined(__GLIBC__) & !defined(_AIX)
s.OutputToStream(&os);
#else
os << "StackTrace::OutputToStream not implemented.";
diff --git a/src/3rdparty/chromium/base/debug/stack_trace_posix.cc b/src/3rdparty/chromium/base/debug/stack_trace_posix.cc
index f4ddf9c1e..aef993613 100644
--- a/src/3rdparty/chromium/base/debug/stack_trace_posix.cc
+++ b/src/3rdparty/chromium/base/debug/stack_trace_posix.cc
@@ -27,7 +27,7 @@
#if !defined(USE_SYMBOLIZE)
#include <cxxabi.h>
#endif
-#if !defined(__UCLIBC__) && !defined(_AIX)
+#if defined(__GLIBC__) && !defined(_AIX)
#include <execinfo.h>
#endif
@@ -88,7 +88,7 @@ void DemangleSymbols(std::string* text) {
// Note: code in this function is NOT async-signal safe (std::string uses
// malloc internally).
-#if !defined(__UCLIBC__) && !defined(_AIX)
+#if defined(__GLIBC__) && !defined(_AIX)
std::string::size_type search_from = 0;
while (search_from < text->size()) {
// Look for the start of a mangled symbol, from search_from.
@@ -123,7 +123,7 @@ void DemangleSymbols(std::string* text) {
search_from = mangled_start + 2;
}
}
-#endif // !defined(__UCLIBC__) && !defined(_AIX)
+#endif // defined(__GLIBC__) && !defined(_AIX)
}
#endif // !defined(USE_SYMBOLIZE)
@@ -135,7 +135,7 @@ class BacktraceOutputHandler {
virtual ~BacktraceOutputHandler() = default;
};
-#if !defined(__UCLIBC__) && !defined(_AIX)
+#if defined(__GLIBC__) && !defined(_AIX)
void OutputPointer(void* pointer, BacktraceOutputHandler* handler) {
// This should be more than enough to store a 64-bit number in hex:
// 16 hex digits + 1 for null-terminator.
@@ -218,7 +218,7 @@ void ProcessBacktrace(void* const* trace,
}
#endif // defined(USE_SYMBOLIZE)
}
-#endif // !defined(__UCLIBC__) && !defined(_AIX)
+#endif // defined(__GLIBC__) && !defined(_AIX)
void PrintToStderr(const char* output) {
// NOTE: This code MUST be async-signal safe (it's used by in-process
@@ -834,7 +834,7 @@ size_t CollectStackTrace(void** trace, size_t count) {
// NOTE: This code MUST be async-signal safe (it's used by in-process
// stack dumping signal handler). NO malloc or stdio is allowed here.
-#if !defined(__UCLIBC__) && !defined(_AIX)
+#if defined(__GLIBC__) && !defined(_AIX)
// Though the backtrace API man page does not list any possible negative
// return values, we take no chance.
return base::saturated_cast<size_t>(backtrace(trace, count));
@@ -847,13 +847,13 @@ void StackTrace::PrintWithPrefix(const char* prefix_string) const {
// NOTE: This code MUST be async-signal safe (it's used by in-process
// stack dumping signal handler). NO malloc or stdio is allowed here.
-#if !defined(__UCLIBC__) && !defined(_AIX)
+#if defined(__GLIBC__) && !defined(_AIX)
PrintBacktraceOutputHandler handler;
ProcessBacktrace(trace_, count_, prefix_string, &handler);
#endif
}
-#if !defined(__UCLIBC__) && !defined(_AIX)
+#if defined(__GLIBC__) && !defined(_AIX)
void StackTrace::OutputToStreamWithPrefix(std::ostream* os,
const char* prefix_string) const {
StreamBacktraceOutputHandler handler(os);
diff --git a/src/3rdparty/chromium/base/logging.cc b/src/3rdparty/chromium/base/logging.cc
index 4c4bfa6af..0ca5c2159 100644
--- a/src/3rdparty/chromium/base/logging.cc
+++ b/src/3rdparty/chromium/base/logging.cc
@@ -618,7 +618,7 @@ LogMessage::LogMessage(const char* file, int line, LogSeverity severity,
LogMessage::~LogMessage() {
size_t stack_start = stream_.tellp();
-#if !defined(OFFICIAL_BUILD) && !defined(OS_NACL) && !defined(__UCLIBC__) && \
+#if !defined(OFFICIAL_BUILD) && !defined(OS_NACL) && defined(__GLIBC__) && \
!defined(OS_AIX)
if (severity_ == LOG_FATAL && !base::debug::BeingDebugged()) {
// Include a stack trace on a fatal, unless a debugger is attached.

View File

@ -1,6 +1,9 @@
http://download.qt-project.org/official_releases/qt/5.14/5.14.0/submodules/qtwebengine-everywhere-src-5.14.0.tar.xz
patches/0004-mkspecs-Allow-builds-with-libc-glibc.patch
patches/0012-chromium-musl-Avoid-mallinfo-APIs-on-non-glibc-linux.patch
patches/0017-chromium-musl-Use-correct-member-name-__si_fields-fr.patch
patches/0020-chromium-musl-Adjust-default-pthread-stack-size.patch
patches/0021-chromium-musl-Use-_fpstate-instead-of-_libc_fpstate-.patch
patches/0022-chromium-musl-elf_reader.cc-include-sys-reg.h-to-get.patch
patches/0023-chromium-musl-pread-pwrite.patch
patches/0030-chromium-musl-execinfo.patch