mirror of
https://codeberg.org/kiss-community/repo
synced 2025-04-01 10:42:52 -06:00
chromium: Add all the patches.
This commit is contained in:
parent
e466328429
commit
88dd5993ab
@ -1,7 +1,8 @@
|
||||
#!/bin/sh -e
|
||||
|
||||
patch -p1 < chromium-optional-atk-r1.patch
|
||||
patch -p1 < chromium-optional-dbus-r5.patch
|
||||
for patch in *.patch; do
|
||||
patch -p1 < "$patch"
|
||||
done
|
||||
|
||||
# Fix 'python2' shebangs.
|
||||
find . -type f -name \*.py -exec sed -i '1s|python$|&2|' {} \;
|
||||
@ -18,12 +19,16 @@ exec python2 "\$@"
|
||||
EOF
|
||||
chmod +x ./fix-python-bin/python
|
||||
|
||||
# Ensure these ENVARS are used.
|
||||
tc-export AR CC CXX NM
|
||||
|
||||
python2 tools/gn/bootstrap/bootstrap.py -s -v \
|
||||
--gn-gen-args 'is_debug=false use_jumbo_build=true enable_nacl=false symbol_level=0 blink_symbol_level=0 enable_nacl_nonsfi=false use_gtk3=true use_gold=false treat_warnings_as_errors=false fatal_linker_warnings=false use_sysroot=false use_cups=false rtc_use_x11=true use_atk=false use_dbus=false safe_browsing_mode=0 use_pulseaudio=false use_use_gconf=false use_gio=false use_gnome_keyring=false use_kerberos=false'
|
||||
|
||||
out/Release/gn gen out/Release \
|
||||
--args='is_debug=false use_jumbo_build=true enable_nacl=false symbol_level=0 blink_symbol_level=0 enable_nacl_nonsfi=false use_gtk3=true use_gold=false treat_warnings_as_errors=false fatal_linker_warnings=false use_sysroot=false use_cups=false rtc_use_x11=true use_atk=false use_dbus=false safe_browsing_mode=0 use_pulseaudio=false use_use_gconf=false use_gio=false use_gnome_keyring=false use_kerberos=false' \
|
||||
--script-executable=/usr/bin/python2
|
||||
|
||||
ninja -C out/Release chrome chromedriver
|
||||
|
||||
# Temporary.
|
||||
sh
|
||||
|
@ -1,3 +1,35 @@
|
||||
510e6ca7ccc218b401b375c13656f6aecab196b03142026dc3602b9d1804a5ac chromium-75.0.3770.142.tar.xz
|
||||
ece2d462169429541a7fa1cc7f3f72698e883292500dde6f1c64ce165dd6abd9 chromium-75-fix-gn-gen.patch
|
||||
b386cb54d0229c640cc44012a9dbb0b822c979810a62be92dc44e1a3c8a457d3 chromium-75-gcc-angle-fix.patch
|
||||
1830b37534e2adf7fd22569c1bbe10eb29bcf85bd9437dc5039c91e7097dc627 chromium-75-llvm8.patch
|
||||
3376f7868124a45a8ee325b1fbd607aabdfd86adba6b77d49b1399dcddc70605 chromium-75-lss.patch
|
||||
a53cf274de7b13ab06fb7867b45b4bfdb1229c5686f3874b2854e3172824ce19 chromium-75-noexcept.patch
|
||||
788ad2094f5c6991c3c4514000d153a1ecb3a23767594092748b6e85a367ddbd chromium-75-pure-virtual.patch
|
||||
762f707ebd9397e7be2ba47bc106911dc2535ff82f37dbbeeded683b66bffa32 chromium-75-unique_ptr.patch
|
||||
365e1a76dc3e508846a221d4490d134ed7fa3d36a3a28ce0b03f5d66c1503778 chromium-compiler-r9.patch
|
||||
daa26bab3a3a9f8b8539dffefa7a07f6d7ac07476d7ae762e3f0169985e429ff chromium-fix-char_traits.patch
|
||||
75c31df557238c5bdc2b91401b13b381b68c812594d89f8f053e0e489d4991c2 chromium-optional-atk-r1.patch
|
||||
6592a17ac557d4cdd5dbb9cd2445c95c1668f17d8c95a7f5ebf42ebbde35430e chromium-optional-dbus-r5.patch
|
||||
f0e59aee57bffc87ab8d51f1f893ec8ed561769328352a9124f717e886b8054f chromium-url-formatter.patch
|
||||
8c6ecc26aab9f4acc911350d9bb1e40f32cad144b6a08c9d7b188e9598d0f2de chromium-widevine-r4.patch
|
||||
6d921355eaef7101a0713e0e7a88b7a7c4e8aa28391325399fdd0a59f2358d13 musl-cdefs-r2.patch
|
||||
fec5590225bf3d0238ee45f8f67fcb032946abe351383653c3026ce4e706d48f musl-dlopen.patch
|
||||
f1375a3acd205ee46dd5d7c729e09d19982833f71e5eb1fb9c3ec5d3de5ffe90 musl-dns-r2.patch
|
||||
f1f414b16acc1986eca620c264fffc1a73e6468e4d8ae076b8ab7c2266c66c58 musl-execinfo-r8.patch
|
||||
49537286728fe29d2e9d3e9040480576aa13be862fb68596fb9629462aab30c1 musl-fpstate-r1.patch
|
||||
f2f8d67f26dc69e050950b522410cab6ab8ee4170ad810f15ed75ce30fe0ae8d musl-headers-r1.patch
|
||||
a7bffd948d4f55c7d57985f85b6fbbbbea3a6638be223b6b7863008dd1b72006 musl-libcpp.patch
|
||||
50505f127d17e25c298848b8a02664fd03083ebbd33e3318f818cd4657a51fee musl-mallinfo-r7.patch
|
||||
2fbc6fba166788e5f6d8a4846fcffc00f703f47b37f16a5e832132e01cc8c565 musl-pthread-r5.patch
|
||||
375df387335a82bea9362f819a93575877de94eae96528347726e6b5d9c4a4cd musl-ptrace.patch
|
||||
c8dac5abf0cd34f1eee71c6c1bce619ec213d9d2f9511654ccc947a2ad0e6850 musl-realpath.patch
|
||||
ebde3be74f0db9486cf99cd7faafb29f1472f432046b8801c494cff5713c8d94 musl-sandbox-r3.patch
|
||||
8b183ce939a5ec37dee6af3e473ce71bd86c9cf1e647a667b4a3f760b56404de musl-secure_getenv-r1.patch
|
||||
3ff4f1eb041048efe9ff8ce5d91fcb092d2fc06e373459ca2d9d590ee176dfb9 musl-siginfo.patch
|
||||
675c056977f396ec135c50b25601cf10b545c357e5a21baf7e0e4fe71e3ecdf1 musl-socket.patch
|
||||
5813a3031e97178a3e36fe48b24f3ddec934f43505819b66dcea5c0dd340644c musl-stacksize-r3.patch
|
||||
4e96a1204c6cc0d9ab38a7232121709b48ed1704391c30ed3ba7b22bc0881b92 musl-stacktrace-r2.patch
|
||||
1f10590d5322968667874c4aa5a4314e9dc5f659091de67f032ebe9654cd5482 musl-syscall.patch
|
||||
a4b0374c536128483cdaeb706f2b1a7144168ae6e44d9ca2df7445d1be780afc musl-ucontext-r1.patch
|
||||
72d806af57a729d36b1eb482419245fba4c58d035fc20e58dbbcf88c35d50e97 musl-v8-monotonic-pthread-cont_timedwait.patch
|
||||
e191334207865e43b831492913d58cae4c89449d32b362b9f9aa7e1d196837a9 musl-wordsize-r1.patch
|
||||
|
27
testing/chromium/patches/chromium-75-fix-gn-gen.patch
Normal file
27
testing/chromium/patches/chromium-75-fix-gn-gen.patch
Normal file
@ -0,0 +1,27 @@
|
||||
Fix 'gn gen' when gn is built in debug config
|
||||
|
||||
Fixes this DCHECK:
|
||||
https://cs.chromium.org/chromium/gn/tools/gn/source_file.cc?q=source_file.cc&sq=package:chromium&dr&l=21
|
||||
|
||||
BUG=None
|
||||
|
||||
Change-Id: Ide60a650c800d4a0981b4f28cf0427fa91616464
|
||||
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1613888
|
||||
Reviewed-by: Brian Sheedy <bsheedy@chromium.org>
|
||||
Commit-Queue: Brian Sheedy <bsheedy@chromium.org>
|
||||
Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
|
||||
Auto-Submit: Thomas Anderson <thomasanderson@chromium.org>
|
||||
Cr-Commit-Position: refs/heads/master@{#660103}
|
||||
diff --git a/tools/perf/contrib/vr_benchmarks/BUILD.gn b/tools/perf/contrib/vr_benchmarks/BUILD.gn
|
||||
index 758057a..51644e0 100644
|
||||
--- a/tools/perf/contrib/vr_benchmarks/BUILD.gn
|
||||
+++ b/tools/perf/contrib/vr_benchmarks/BUILD.gn
|
||||
@@ -72,7 +72,7 @@
|
||||
"//chrome/browser/resources/vr/assets/vr_assets_component_files.json",
|
||||
]
|
||||
outputs = [
|
||||
- "$target_gen_dir/vr_assets_profile/",
|
||||
+ "$target_gen_dir/vr_assets_profile",
|
||||
]
|
||||
args = [
|
||||
"--output",
|
20
testing/chromium/patches/chromium-75-gcc-angle-fix.patch
Normal file
20
testing/chromium/patches/chromium-75-gcc-angle-fix.patch
Normal file
@ -0,0 +1,20 @@
|
||||
--- a/third_party/angle/src/common/debug.h 2019-06-02 17:59:16.698392030 -0000
|
||||
+++ b/third_party/angle/src/common/debug.h 2019-06-02 17:59:48.738265672 -0000
|
||||
@@ -248,7 +248,7 @@
|
||||
# define EVENT(message, ...) (void(0))
|
||||
#endif
|
||||
|
||||
-#if defined(COMPILER_GCC) || defined(__clang__)
|
||||
+#if defined(__GNUC__) || defined(__clang__)
|
||||
# define ANGLE_CRASH() __builtin_trap()
|
||||
#else
|
||||
# define ANGLE_CRASH() ((void)(*(volatile char *)0 = 0)), __assume(0)
|
||||
@@ -336,7 +336,7 @@
|
||||
# define ANGLE_ENABLE_STRUCT_PADDING_WARNINGS \
|
||||
_Pragma("clang diagnostic push") _Pragma("clang diagnostic error \"-Wpadded\"")
|
||||
# define ANGLE_DISABLE_STRUCT_PADDING_WARNINGS _Pragma("clang diagnostic pop")
|
||||
-#elif defined(COMPILER_GCC)
|
||||
+#elif defined(__GNUC__)
|
||||
# define ANGLE_ENABLE_STRUCT_PADDING_WARNINGS \
|
||||
_Pragma("GCC diagnostic push") _Pragma("GCC diagnostic error \"-Wpadded\"")
|
||||
# define ANGLE_DISABLE_STRUCT_PADDING_WARNINGS _Pragma("GCC diagnostic pop")
|
17
testing/chromium/patches/chromium-75-llvm8.patch
Normal file
17
testing/chromium/patches/chromium-75-llvm8.patch
Normal file
@ -0,0 +1,17 @@
|
||||
Issue 945938: Build fails with clang/llvm-8
|
||||
https://bugs.chromium.org/p/chromium/issues/detail?id=945938&q=TabStripModelChange&colspec=ID%20Pri%20M%20Stars%20ReleaseBlock%20Component%20Status%20Owner%20Summary%20OS%20Modified
|
||||
|
||||
diff --git a/chrome/browser/ui/tabs/tab_strip_model_observer.h b/chrome/browser/ui/tabs/tab_strip_model_observer.h
|
||||
index 6c8bce5..7f67b7d 100644
|
||||
--- a/chrome/browser/ui/tabs/tab_strip_model_observer.h
|
||||
+++ b/chrome/browser/ui/tabs/tab_strip_model_observer.h
|
||||
@@ -135,7 +135,7 @@ class TabStripModelChange {
|
||||
|
||||
private:
|
||||
const Type type_ = kSelectionOnly;
|
||||
- const std::vector<Delta> deltas_;
|
||||
+ std::vector<Delta> deltas_;
|
||||
|
||||
DISALLOW_COPY_AND_ASSIGN(TabStripModelChange);
|
||||
};
|
||||
|
63
testing/chromium/patches/chromium-75-lss.patch
Normal file
63
testing/chromium/patches/chromium-75-lss.patch
Normal file
@ -0,0 +1,63 @@
|
||||
--- a/third_party/lss/BUILD.gn
|
||||
+++ b/third_party/lss/BUILD.gn
|
||||
@@ -0,0 +1,31 @@
|
||||
+# Copyright 2019 The Crashpad Authors. All rights reserved.
|
||||
+#
|
||||
+# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
+# you may not use this file except in compliance with the License.
|
||||
+# You may obtain a copy of the License at
|
||||
+#
|
||||
+# http://www.apache.org/licenses/LICENSE-2.0
|
||||
+#
|
||||
+# Unless required by applicable law or agreed to in writing, software
|
||||
+# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
+# See the License for the specific language governing permissions and
|
||||
+# limitations under the License.
|
||||
+
|
||||
+import("../../build/crashpad_buildconfig.gni")
|
||||
+
|
||||
+config("lss_config") {
|
||||
+ if (crashpad_is_in_chromium) {
|
||||
+ defines = [ "CRASHPAD_LSS_SOURCE_EXTERNAL" ]
|
||||
+ } else {
|
||||
+ defines = [ "CRASHPAD_LSS_SOURCE_EMBEDDED" ]
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
+source_set("lss") {
|
||||
+ public_configs = [ ":lss_config" ]
|
||||
+
|
||||
+ sources = [
|
||||
+ "lss.h",
|
||||
+ ]
|
||||
+}
|
||||
--- a/third_party/lss/lss.h
|
||||
+++ b/third_party/lss/lss.h
|
||||
@@ -0,0 +1,26 @@
|
||||
+// Copyright 2019 The Crashpad Authors. All rights reserved.
|
||||
+//
|
||||
+// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
+// you may not use this file except in compliance with the License.
|
||||
+// You may obtain a copy of the License at
|
||||
+//
|
||||
+// http://www.apache.org/licenses/LICENSE-2.0
|
||||
+//
|
||||
+// Unless required by applicable law or agreed to in writing, software
|
||||
+// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
+// See the License for the specific language governing permissions and
|
||||
+// limitations under the License.
|
||||
+
|
||||
+#ifndef CRASHPAD_THIRD_PARTY_LSS_LSS_H_
|
||||
+#define CRASHPAD_THIRD_PARTY_LSS_LSS_H_
|
||||
+
|
||||
+#if defined(CRASHPAD_LSS_SOURCE_EXTERNAL)
|
||||
+#include "third_party/lss/linux_syscall_support.h"
|
||||
+#elif defined(CRASHPAD_LSS_SOURCE_EMBEDDED)
|
||||
+#include "third_party/lss/lss/linux_syscall_support.h"
|
||||
+#else
|
||||
+#error Unknown lss source
|
||||
+#endif
|
||||
+
|
||||
+#endif // CRASHPAD_THIRD_PARTY_LSS_LSS_H_
|
101
testing/chromium/patches/chromium-75-noexcept.patch
Normal file
101
testing/chromium/patches/chromium-75-noexcept.patch
Normal file
@ -0,0 +1,101 @@
|
||||
From 41d954dec0669c9a85730c0bde7df7ba7a0ff43e Mon Sep 17 00:00:00 2001
|
||||
From: Jose Dapena Paz <jose.dapena@lge.com>
|
||||
Date: Thu, 06 Jun 2019 15:30:49 +0000
|
||||
Subject: [PATCH] Fix AutocompleteMatch move constructor/assign operator noexcept
|
||||
|
||||
For AutocompleteMatch to declare noexcept them, all the contained
|
||||
properties need to be noexcept too. This is required at least
|
||||
for SuggestionAnswer, because base::string16 will make default
|
||||
calculated signature of the move operator noexcept(false).
|
||||
|
||||
To avoid this issue we explicitely declare them on SuggestionAnswer,
|
||||
and its member classes TextField and ImageLine.
|
||||
|
||||
Bug: 819294
|
||||
Change-Id: I8714f2c6352a3292bdebdc3aed9790270e49c580
|
||||
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1554669
|
||||
Reviewed-by: Kevin Bailey <krb@chromium.org>
|
||||
Commit-Queue: José Dapena Paz <jose.dapena@lge.com>
|
||||
Cr-Commit-Position: refs/heads/master@{#666714}
|
||||
---
|
||||
|
||||
diff --git a/components/omnibox/browser/suggestion_answer.cc b/components/omnibox/browser/suggestion_answer.cc
|
||||
index 151e55f..a0c9049 100644
|
||||
--- a/components/omnibox/browser/suggestion_answer.cc
|
||||
+++ b/components/omnibox/browser/suggestion_answer.cc
|
||||
@@ -55,6 +55,12 @@
|
||||
|
||||
SuggestionAnswer::TextField::TextField() = default;
|
||||
SuggestionAnswer::TextField::~TextField() = default;
|
||||
+SuggestionAnswer::TextField::TextField(const TextField&) = default;
|
||||
+SuggestionAnswer::TextField::TextField(TextField&&) noexcept = default;
|
||||
+SuggestionAnswer::TextField& SuggestionAnswer::TextField::operator=(
|
||||
+ const TextField&) = default;
|
||||
+SuggestionAnswer::TextField& SuggestionAnswer::TextField::operator=(
|
||||
+ TextField&&) noexcept = default;
|
||||
|
||||
// static
|
||||
bool SuggestionAnswer::TextField::ParseTextField(const base::Value& field_json,
|
||||
@@ -93,9 +99,12 @@
|
||||
SuggestionAnswer::ImageLine::ImageLine()
|
||||
: num_text_lines_(1) {}
|
||||
SuggestionAnswer::ImageLine::ImageLine(const ImageLine& line) = default;
|
||||
+SuggestionAnswer::ImageLine::ImageLine(ImageLine&&) noexcept = default;
|
||||
|
||||
SuggestionAnswer::ImageLine& SuggestionAnswer::ImageLine::operator=(
|
||||
const ImageLine& line) = default;
|
||||
+SuggestionAnswer::ImageLine& SuggestionAnswer::ImageLine::operator=(
|
||||
+ ImageLine&&) noexcept = default;
|
||||
|
||||
SuggestionAnswer::ImageLine::~ImageLine() {}
|
||||
|
||||
@@ -251,9 +260,14 @@
|
||||
|
||||
SuggestionAnswer::SuggestionAnswer(const SuggestionAnswer& answer) = default;
|
||||
|
||||
+SuggestionAnswer::SuggestionAnswer(SuggestionAnswer&&) noexcept = default;
|
||||
+
|
||||
SuggestionAnswer& SuggestionAnswer::operator=(const SuggestionAnswer& answer) =
|
||||
default;
|
||||
|
||||
+SuggestionAnswer& SuggestionAnswer::operator=(SuggestionAnswer&&) noexcept =
|
||||
+ default;
|
||||
+
|
||||
SuggestionAnswer::~SuggestionAnswer() = default;
|
||||
|
||||
// static
|
||||
diff --git a/components/omnibox/browser/suggestion_answer.h b/components/omnibox/browser/suggestion_answer.h
|
||||
index 31be937..2840ace 100644
|
||||
--- a/components/omnibox/browser/suggestion_answer.h
|
||||
+++ b/components/omnibox/browser/suggestion_answer.h
|
||||
@@ -125,6 +125,10 @@
|
||||
public:
|
||||
TextField();
|
||||
~TextField();
|
||||
+ TextField(const TextField&);
|
||||
+ TextField(TextField&&) noexcept;
|
||||
+ TextField& operator=(const TextField&);
|
||||
+ TextField& operator=(TextField&&) noexcept;
|
||||
|
||||
// Parses |field_json| dictionary and populates |text_field| with the
|
||||
// contents. If any of the required elements is missing, returns false and
|
||||
@@ -162,7 +166,9 @@
|
||||
public:
|
||||
ImageLine();
|
||||
explicit ImageLine(const ImageLine& line);
|
||||
+ ImageLine(ImageLine&&) noexcept;
|
||||
ImageLine& operator=(const ImageLine& line);
|
||||
+ ImageLine& operator=(ImageLine&&) noexcept;
|
||||
~ImageLine();
|
||||
|
||||
// Parses dictionary |line_json| and populates |image_line| with the
|
||||
@@ -213,7 +219,9 @@
|
||||
|
||||
SuggestionAnswer();
|
||||
SuggestionAnswer(const SuggestionAnswer& answer);
|
||||
+ SuggestionAnswer(SuggestionAnswer&&) noexcept;
|
||||
SuggestionAnswer& operator=(const SuggestionAnswer& answer);
|
||||
+ SuggestionAnswer& operator=(SuggestionAnswer&&) noexcept;
|
||||
~SuggestionAnswer();
|
||||
|
||||
// Parses dictionary |answer_json| and fills a SuggestionAnswer containing the
|
50
testing/chromium/patches/chromium-75-pure-virtual.patch
Normal file
50
testing/chromium/patches/chromium-75-pure-virtual.patch
Normal file
@ -0,0 +1,50 @@
|
||||
From cdf306db81efaaaa954487585d5a5a16205a5ebd Mon Sep 17 00:00:00 2001
|
||||
From: Jose Dapena Paz <jose.dapena@lge.com>
|
||||
Date: Wed, 05 Jun 2019 14:45:06 +0000
|
||||
Subject: [PATCH] Avoid pure virtual crash destroying RenderProcessUserData
|
||||
|
||||
When RenderProcessUserData is destroyed from the destructor of
|
||||
RenderProcessHostImpl, it is done in the destructor of RenderProcessHost.
|
||||
At this point RemoveObserver override is already freed, so RenderProcessHost
|
||||
is pure virtual. This crash happens at least building with GCC:
|
||||
|
||||
at /usr/include/c++/8/ext/new_allocator.h:140
|
||||
(this=0x7fffffffcb50, __in_chrg=<optimized out>) at /usr/include/c++/8/bits/stl_tree.h:964
|
||||
|
||||
We need to destroy RenderProcessUserData before that happens. To do that
|
||||
we can just override RenderProcessHostDestroyed.
|
||||
|
||||
Bug: 910288
|
||||
Change-Id: I38107b178829b0cb7494f5333b765e5b087d82cd
|
||||
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645366
|
||||
Commit-Queue: Sigurður Ásgeirsson <siggi@chromium.org>
|
||||
Reviewed-by: Sigurður Ásgeirsson <siggi@chromium.org>
|
||||
Cr-Commit-Position: refs/heads/master@{#666279}
|
||||
---
|
||||
|
||||
diff --git a/chrome/browser/performance_manager/render_process_user_data.cc b/chrome/browser/performance_manager/render_process_user_data.cc
|
||||
index 2e2c199..ef6e1fb 100644
|
||||
--- a/chrome/browser/performance_manager/render_process_user_data.cc
|
||||
+++ b/chrome/browser/performance_manager/render_process_user_data.cc
|
||||
@@ -116,4 +116,9 @@
|
||||
base::Unretained(process_node_.get()), info.exit_code));
|
||||
}
|
||||
|
||||
+void RenderProcessUserData::RenderProcessHostDestroyed(
|
||||
+ content::RenderProcessHost* host) {
|
||||
+ host->RemoveUserData(kRenderProcessUserDataKey);
|
||||
+}
|
||||
+
|
||||
} // namespace performance_manager
|
||||
diff --git a/chrome/browser/performance_manager/render_process_user_data.h b/chrome/browser/performance_manager/render_process_user_data.h
|
||||
index ac74b1d..f3b4d16 100644
|
||||
--- a/chrome/browser/performance_manager/render_process_user_data.h
|
||||
+++ b/chrome/browser/performance_manager/render_process_user_data.h
|
||||
@@ -47,6 +47,7 @@
|
||||
void RenderProcessExited(
|
||||
content::RenderProcessHost* host,
|
||||
const content::ChildProcessTerminationInfo& info) override;
|
||||
+ void RenderProcessHostDestroyed(content::RenderProcessHost* host) override;
|
||||
|
||||
// All instances are linked together in a doubly linked list to allow orderly
|
||||
// destruction at browser shutdown time.
|
31
testing/chromium/patches/chromium-75-unique_ptr.patch
Normal file
31
testing/chromium/patches/chromium-75-unique_ptr.patch
Normal file
@ -0,0 +1,31 @@
|
||||
From aeed4d1f15ce84a17ea0bc219e258dc4982b2368 Mon Sep 17 00:00:00 2001
|
||||
From: Jose Dapena Paz <jose.dapena@lge.com>
|
||||
Date: Fri, 26 Apr 2019 20:07:05 +0000
|
||||
Subject: [PATCH] libstdc++: do not assume unique_ptr has ostream operator
|
||||
|
||||
CompositorFrameReportingController is using DCHECK_NE to compare
|
||||
several unique_ptr. This is valid in libc++, but on libstdc++ unique_ptr
|
||||
does not have an ostream operator.
|
||||
|
||||
Change-Id: I9f23ef17f02b9e107694ba493f6f8f3caf5cac4d
|
||||
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1584292
|
||||
Reviewed-by: Sunny Sachanandani <sunnyps@chromium.org>
|
||||
Commit-Queue: José Dapena Paz <jose.dapena@lge.com>
|
||||
Cr-Commit-Position: refs/heads/master@{#654570}
|
||||
---
|
||||
|
||||
diff --git a/cc/scheduler/compositor_frame_reporting_controller.cc b/cc/scheduler/compositor_frame_reporting_controller.cc
|
||||
index f1587ed..1b17021 100644
|
||||
--- a/cc/scheduler/compositor_frame_reporting_controller.cc
|
||||
+++ b/cc/scheduler/compositor_frame_reporting_controller.cc
|
||||
@@ -31,8 +31,8 @@
|
||||
|
||||
void CompositorFrameReportingController::WillBeginMainFrame() {
|
||||
DCHECK(reporters_[PipelineStage::kBeginImplFrame]);
|
||||
- DCHECK_NE(reporters_[PipelineStage::kBeginMainFrame],
|
||||
- reporters_[PipelineStage::kBeginImplFrame]);
|
||||
+ DCHECK(reporters_[PipelineStage::kBeginMainFrame] !=
|
||||
+ reporters_[PipelineStage::kBeginImplFrame]);
|
||||
reporters_[PipelineStage::kBeginImplFrame]->StartStage(
|
||||
"SendBeginMainFrameToCommit");
|
||||
AdvanceReporterStage(PipelineStage::kBeginImplFrame,
|
196
testing/chromium/patches/chromium-compiler-r9.patch
Normal file
196
testing/chromium/patches/chromium-compiler-r9.patch
Normal file
@ -0,0 +1,196 @@
|
||||
From a1207cc75454e653030716948d27ec27412f6fe8 Mon Sep 17 00:00:00 2001
|
||||
From: Mike Gilbert <floppym@gentoo.org>
|
||||
Date: Sat, 1 Jun 2019 14:22:57 +0100
|
||||
Subject: [PATCH] Disable various compiler configs
|
||||
|
||||
---
|
||||
build/config/compiler/BUILD.gn | 68 +++++++++++++++-------------------
|
||||
1 file changed, 29 insertions(+), 39 deletions(-)
|
||||
|
||||
diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
|
||||
index 4b24c76..0737326 100644
|
||||
--- a/build/config/compiler/BUILD.gn
|
||||
+++ b/build/config/compiler/BUILD.gn
|
||||
@@ -230,8 +230,6 @@ config("compiler") {
|
||||
|
||||
configs += [
|
||||
# See the definitions below.
|
||||
- ":clang_revision",
|
||||
- ":compiler_cpu_abi",
|
||||
":compiler_codegen",
|
||||
":compiler_deterministic",
|
||||
]
|
||||
@@ -471,20 +469,6 @@ config("compiler") {
|
||||
}
|
||||
}
|
||||
|
||||
- if (is_clang && !is_nacl && !use_xcode_clang) {
|
||||
- cflags += [ "-fcrash-diagnostics-dir=" +
|
||||
- rebase_path("//tools/clang/crashreports", root_build_dir) ]
|
||||
-
|
||||
- cflags += [
|
||||
- # TODO(hans): Remove this once Clang generates better optimized debug info
|
||||
- # by default. https://crbug.com/765793
|
||||
- "-Xclang",
|
||||
- "-mllvm",
|
||||
- "-Xclang",
|
||||
- "-instcombine-lower-dbg-declare=0",
|
||||
- ]
|
||||
- }
|
||||
-
|
||||
# C11/C++11 compiler flags setup.
|
||||
# ---------------------------
|
||||
if (is_linux || is_android || (is_nacl && is_clang) || current_os == "aix") {
|
||||
@@ -1433,6 +1417,12 @@ config("default_warnings") {
|
||||
"-Wno-narrowing",
|
||||
]
|
||||
|
||||
+ # -Wno-class-memaccess warns about hash table and vector in blink.
|
||||
+ # But the violation is intentional.
|
||||
+ if (!is_nacl) {
|
||||
+ cflags_cc += [ "-Wno-class-memaccess" ]
|
||||
+ }
|
||||
+
|
||||
# -Wunused-local-typedefs is broken in gcc,
|
||||
# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63872
|
||||
cflags += [ "-Wno-unused-local-typedefs" ]
|
||||
@@ -1447,6 +1437,10 @@ config("default_warnings") {
|
||||
# comments
|
||||
# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61638
|
||||
cflags += [ "-Wno-comments" ]
|
||||
+
|
||||
+ # -Wpacked-not-aligned complains all generated mojom-shared-internal.h
|
||||
+ # files.
|
||||
+ cflags += [ "-Wno-packed-not-aligned" ]
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1523,7 +1517,7 @@ config("chromium_code") {
|
||||
defines = [ "_HAS_NODISCARD" ]
|
||||
}
|
||||
} else {
|
||||
- cflags = [ "-Wall" ]
|
||||
+ cflags = []
|
||||
if (treat_warnings_as_errors) {
|
||||
cflags += [ "-Werror" ]
|
||||
|
||||
@@ -1532,10 +1526,6 @@ config("chromium_code") {
|
||||
# well.
|
||||
ldflags = [ "-Werror" ]
|
||||
}
|
||||
- if (is_clang) {
|
||||
- # Enable extra warnings for chromium_code when we control the compiler.
|
||||
- cflags += [ "-Wextra" ]
|
||||
- }
|
||||
|
||||
# In Chromium code, we define __STDC_foo_MACROS in order to get the
|
||||
# C99 macros on Mac and Linux.
|
||||
@@ -1544,15 +1534,6 @@ config("chromium_code") {
|
||||
"__STDC_FORMAT_MACROS",
|
||||
]
|
||||
|
||||
- if (!is_debug && !using_sanitizer && current_cpu != "s390x" &&
|
||||
- current_cpu != "s390" && current_cpu != "ppc64" &&
|
||||
- current_cpu != "mips" && current_cpu != "mips64") {
|
||||
- # Non-chromium code is not guaranteed to compile cleanly with
|
||||
- # _FORTIFY_SOURCE. Also, fortified build may fail when optimizations are
|
||||
- # disabled, so only do that for Release build.
|
||||
- defines += [ "_FORTIFY_SOURCE=2" ]
|
||||
- }
|
||||
-
|
||||
if (is_mac) {
|
||||
cflags_objc = [ "-Wobjc-missing-property-synthesis" ]
|
||||
cflags_objcc = [ "-Wobjc-missing-property-synthesis" ]
|
||||
@@ -1941,7 +1922,8 @@ config("default_stack_frames") {
|
||||
}
|
||||
|
||||
# Default "optimization on" config.
|
||||
-config("optimize") {
|
||||
+config("optimize") { }
|
||||
+config("xoptimize") {
|
||||
if (is_win) {
|
||||
# TODO(thakis): Remove is_clang here, https://crbug.com/598772
|
||||
if (is_official_build && full_wpo_on_official && !is_clang) {
|
||||
@@ -1975,7 +1957,8 @@ config("optimize") {
|
||||
}
|
||||
|
||||
# Same config as 'optimize' but without the WPO flag.
|
||||
-config("optimize_no_wpo") {
|
||||
+config("optimize_no_wpo") { }
|
||||
+config("xoptimize_no_wpo") {
|
||||
if (is_win) {
|
||||
# Favor size over speed, /O1 must be before the common flags. The GYP
|
||||
# build also specifies /Os and /GF but these are implied by /O1.
|
||||
@@ -1998,7 +1981,8 @@ config("optimize_no_wpo") {
|
||||
}
|
||||
|
||||
# Turn off optimizations.
|
||||
-config("no_optimize") {
|
||||
+config("no_optimize") { }
|
||||
+config("xno_optimize") {
|
||||
if (is_win) {
|
||||
cflags = [
|
||||
"/Od", # Disable optimization.
|
||||
@@ -2026,7 +2010,8 @@ config("no_optimize") {
|
||||
# Turns up the optimization level. On Windows, this implies whole program
|
||||
# optimization and link-time code generation which is very expensive and should
|
||||
# be used sparingly.
|
||||
-config("optimize_max") {
|
||||
+config("optimize_max") { }
|
||||
+config("xoptimize_max") {
|
||||
if (is_nacl && is_nacl_irt) {
|
||||
# The NaCl IRT is a special case and always wants its own config.
|
||||
# Various components do:
|
||||
@@ -2073,7 +2058,8 @@ config("optimize_max") {
|
||||
#
|
||||
# TODO(crbug.com/621335) - rework how all of these configs are related
|
||||
# so that we don't need this disclaimer.
|
||||
-config("optimize_speed") {
|
||||
+config("optimize_speed") { }
|
||||
+config("xoptimize_speed") {
|
||||
if (is_nacl && is_nacl_irt) {
|
||||
# The NaCl IRT is a special case and always wants its own config.
|
||||
# Various components do:
|
||||
@@ -2111,7 +2097,8 @@ config("optimize_speed") {
|
||||
}
|
||||
}
|
||||
|
||||
-config("optimize_fuzzing") {
|
||||
+config("optimize_fuzzing") { }
|
||||
+config("xoptimize_fuzzing") {
|
||||
cflags = [ "-O1" ] + common_optimize_on_cflags
|
||||
ldflags = common_optimize_on_ldflags
|
||||
visibility = [ ":default_optimization" ]
|
||||
@@ -2213,7 +2200,8 @@ config("win_pdbaltpath") {
|
||||
}
|
||||
|
||||
# Full symbols.
|
||||
-config("symbols") {
|
||||
+config("symbols") { }
|
||||
+config("xsymbols") {
|
||||
if (is_win) {
|
||||
if (use_goma || is_clang) {
|
||||
# Note that with VC++ this requires is_win_fastlink, enforced elsewhere.
|
||||
@@ -2323,7 +2311,8 @@ config("symbols") {
|
||||
# Minimal symbols.
|
||||
# This config guarantees to hold symbol for stack trace which are shown to user
|
||||
# when crash happens in unittests running on buildbot.
|
||||
-config("minimal_symbols") {
|
||||
+config("minimal_symbols") { }
|
||||
+config("xminimal_symbols") {
|
||||
if (is_win) {
|
||||
# Linker symbols for backtraces only.
|
||||
cflags = []
|
||||
@@ -2380,7 +2369,8 @@ config("minimal_symbols") {
|
||||
}
|
||||
|
||||
# No symbols.
|
||||
-config("no_symbols") {
|
||||
+config("no_symbols") { }
|
||||
+config("xno_symbols") {
|
||||
if (!is_win) {
|
||||
cflags = [ "-g0" ]
|
||||
asmflags = cflags
|
||||
--
|
||||
2.21.0
|
||||
|
14
testing/chromium/patches/chromium-fix-char_traits.patch
Normal file
14
testing/chromium/patches/chromium-fix-char_traits.patch
Normal file
@ -0,0 +1,14 @@
|
||||
--- a/base/strings/char_traits.h
|
||||
+++ b/base/strings/char_traits.h
|
||||
@@ -67,9 +67,9 @@
|
||||
return __builtin_memcmp(s1, s2, n);
|
||||
#else
|
||||
for (; n; --n, ++s1, ++s2) {
|
||||
- if (*s1 < *s2)
|
||||
+ if ((unsigned char)*s1 < (unsigned char)*s2)
|
||||
return -1;
|
||||
- if (*s1 > *s2)
|
||||
+ if ((unsigned char)*s1 > (unsigned char)*s2)
|
||||
return 1;
|
||||
}
|
||||
return 0;
|
27
testing/chromium/patches/chromium-url-formatter.patch
Normal file
27
testing/chromium/patches/chromium-url-formatter.patch
Normal file
@ -0,0 +1,27 @@
|
||||
diff --git chromium-73.0.3683.103/components/url_formatter/url_formatter.cc chromium-73.0.3683.103/components/url_formatter/url_formatter.cc
|
||||
index 97bc67e4b..caead697b 100644
|
||||
--- chromium-73.0.3683.103/components/url_formatter/url_formatter.cc
|
||||
+++ chromium-73.0.3683.103/components/url_formatter/url_formatter.cc
|
||||
@@ -410,14 +410,14 @@ IDNConversionStatus IDNToUnicodeOneComponent(const base::char16* comp,
|
||||
} // namespace
|
||||
|
||||
const FormatUrlType kFormatUrlOmitNothing = 0;
|
||||
-const FormatUrlType kFormatUrlOmitUsernamePassword = 1 << 0;
|
||||
-const FormatUrlType kFormatUrlOmitHTTP = 1 << 1;
|
||||
-const FormatUrlType kFormatUrlOmitTrailingSlashOnBareHostname = 1 << 2;
|
||||
-const FormatUrlType kFormatUrlOmitHTTPS = 1 << 3;
|
||||
-const FormatUrlType kFormatUrlOmitTrivialSubdomains = 1 << 5;
|
||||
-const FormatUrlType kFormatUrlTrimAfterHost = 1 << 6;
|
||||
-const FormatUrlType kFormatUrlOmitFileScheme = 1 << 7;
|
||||
-const FormatUrlType kFormatUrlOmitMailToScheme = 1 << 8;
|
||||
+const FormatUrlType kFormatUrlOmitUsernamePassword = 0;
|
||||
+const FormatUrlType kFormatUrlOmitHTTP = 0;
|
||||
+const FormatUrlType kFormatUrlOmitTrailingSlashOnBareHostname = 0;
|
||||
+const FormatUrlType kFormatUrlOmitHTTPS = 0;
|
||||
+const FormatUrlType kFormatUrlOmitTrivialSubdomains = 0;
|
||||
+const FormatUrlType kFormatUrlTrimAfterHost = 0;
|
||||
+const FormatUrlType kFormatUrlOmitFileScheme = 0;
|
||||
+const FormatUrlType kFormatUrlOmitMailToScheme = 0;
|
||||
|
||||
const FormatUrlType kFormatUrlOmitDefaults =
|
||||
kFormatUrlOmitUsernamePassword | kFormatUrlOmitHTTP |
|
26
testing/chromium/patches/chromium-widevine-r4.patch
Normal file
26
testing/chromium/patches/chromium-widevine-r4.patch
Normal file
@ -0,0 +1,26 @@
|
||||
Define WIDEVINE_CDM_VERSION_STRING && re-re-re-patch for latest ninja
|
||||
|
||||
Stolen from Arch basically.
|
||||
|
||||
gmt
|
||||
|
||||
--- a/chrome/common/chrome_content_client.cc
|
||||
+++ b/chrome/common/chrome_content_client.cc
|
||||
@@ -99,7 +99,7 @@
|
||||
// Registers Widevine CDM if Widevine is enabled, the Widevine CDM is
|
||||
// bundled and not a component. When the Widevine CDM is a component, it is
|
||||
// registered in widevine_cdm_component_installer.cc.
|
||||
-#if BUILDFLAG(BUNDLE_WIDEVINE_CDM) && !BUILDFLAG(ENABLE_WIDEVINE_CDM_COMPONENT)
|
||||
+#if BUILDFLAG(ENABLE_WIDEVINE) && !BUILDFLAG(ENABLE_WIDEVINE_CDM_COMPONENT)
|
||||
#define REGISTER_BUNDLED_WIDEVINE_CDM
|
||||
#include "third_party/widevine/cdm/widevine_cdm_common.h" // nogncheck
|
||||
// TODO(crbug.com/663554): Needed for WIDEVINE_CDM_VERSION_STRING. Support
|
||||
--- a/third_party/widevine/cdm/widevine_cdm_version.h
|
||||
+++ b/third_party/widevine/cdm/widevine_cdm_version.h
|
||||
@@ -11,5 +11,6 @@
|
||||
// If the Widevine CDM is available define the following:
|
||||
// - WIDEVINE_CDM_VERSION_STRING (with the version of the CDM that's available
|
||||
// as a string, e.g., "1.0.123.456").
|
||||
+#define WIDEVINE_CDM_VERSION_STRING "unknown"
|
||||
|
||||
#endif // WIDEVINE_CDM_VERSION_H_
|
78
testing/chromium/patches/musl-cdefs-r2.patch
Normal file
78
testing/chromium/patches/musl-cdefs-r2.patch
Normal file
@ -0,0 +1,78 @@
|
||||
diff --git chromium-75.0.3770.100/base/allocator/allocator_shim_internals.h chromium-75.0.3770.100/base/allocator/allocator_shim_internals.h
|
||||
index 0196f89..bb42b5d 100644
|
||||
--- chromium-75.0.3770.100/base/allocator/allocator_shim_internals.h
|
||||
+++ chromium-75.0.3770.100/base/allocator/allocator_shim_internals.h
|
||||
@@ -7,7 +7,9 @@
|
||||
|
||||
#if defined(__GNUC__)
|
||||
|
||||
+#if defined(__GLIBC__)
|
||||
#include <sys/cdefs.h> // for __THROW
|
||||
+#endif
|
||||
|
||||
#ifndef __THROW // Not a glibc system
|
||||
#ifdef _NOEXCEPT // LLVM libc++ uses noexcept instead
|
||||
diff --git chromium-75.0.3770.100/sandbox/linux/suid/sandbox.c chromium-75.0.3770.100/sandbox/linux/suid/sandbox.c
|
||||
index 854819b..39937e4 100644
|
||||
--- chromium-75.0.3770.100/sandbox/linux/suid/sandbox.c
|
||||
+++ chromium-75.0.3770.100/sandbox/linux/suid/sandbox.c
|
||||
@@ -44,7 +44,16 @@
|
||||
|
||||
static bool DropRoot();
|
||||
|
||||
+#if defined(TEMP_FAILURE_RETRY)
|
||||
#define HANDLE_EINTR(x) TEMP_FAILURE_RETRY(x)
|
||||
+#else
|
||||
+#define HANDLE_EINTR(expression) \
|
||||
+ (__extension__ \
|
||||
+ ({ long __result; \
|
||||
+ do __result = (long) (expression); \
|
||||
+ while (__result == -1L && errno == EINTR); \
|
||||
+ __result; }))
|
||||
+#endif
|
||||
|
||||
static void FatalError(const char* msg, ...)
|
||||
__attribute__((noreturn, format(printf, 1, 2)));
|
||||
diff --git chromium-75.0.3770.100/third_party/crashpad/crashpad/compat/linux/sys/ptrace.h chromium-75.0.3770.100/third_party/crashpad/crashpad/compat/linux/sys/ptrace.h
|
||||
index f8be372..c07e4c8 100644
|
||||
--- chromium-75.0.3770.100/third_party/crashpad/crashpad/compat/linux/sys/ptrace.h
|
||||
+++ chromium-75.0.3770.100/third_party/crashpad/crashpad/compat/linux/sys/ptrace.h
|
||||
@@ -17,8 +17,6 @@
|
||||
|
||||
#include_next <sys/ptrace.h>
|
||||
|
||||
-#include <sys/cdefs.h>
|
||||
-
|
||||
// https://sourceware.org/bugzilla/show_bug.cgi?id=22433
|
||||
#if !defined(PTRACE_GET_THREAD_AREA) && !defined(PT_GET_THREAD_AREA) && \
|
||||
defined(__GLIBC__)
|
||||
diff --git chromium-69.0.3497.100/third_party/libsync/src/include/sync/sync.h
|
||||
index 50ed0ac..7552a49 100644
|
||||
--- chromium-69.0.3497.100/third_party/libsync/src/include/sync/sync.h
|
||||
+++ chromium-69.0.3497.100/third_party/libsync/src/include/sync/sync.h
|
||||
@@ -19,12 +19,13 @@
|
||||
#ifndef __SYS_CORE_SYNC_H
|
||||
#define __SYS_CORE_SYNC_H
|
||||
|
||||
-#include <sys/cdefs.h>
|
||||
#include <stdint.h>
|
||||
|
||||
#include <linux/types.h>
|
||||
|
||||
-__BEGIN_DECLS
|
||||
+#ifdef __cplusplus
|
||||
+extern "C" {
|
||||
+#endif /* __cplusplus */
|
||||
|
||||
struct sync_legacy_merge_data {
|
||||
int32_t fd2;
|
||||
@@ -158,6 +159,8 @@ struct sync_pt_info *sync_pt_info(struct sync_fence_info_data *info,
|
||||
struct sync_pt_info *itr);
|
||||
void sync_fence_info_free(struct sync_fence_info_data *info);
|
||||
|
||||
-__END_DECLS
|
||||
+#ifdef __cplusplus
|
||||
+}
|
||||
+#endif /* __cplusplus */
|
||||
|
||||
#endif /* __SYS_CORE_SYNC_H */
|
13
testing/chromium/patches/musl-dlopen.patch
Normal file
13
testing/chromium/patches/musl-dlopen.patch
Normal file
@ -0,0 +1,13 @@
|
||||
diff --git chromium-75.0.3770.100/base/native_library_posix.cc chromium-75.0.3770.100/base/native_library_posix.cc
|
||||
index 7a5c6f5..6e8a5fa 100644
|
||||
--- chromium-75.0.3770.100/base/native_library_posix.cc
|
||||
+++ chromium-75.0.3770.100/base/native_library_posix.cc
|
||||
@@ -34,7 +34,7 @@ NativeLibrary LoadNativeLibraryWithOptions(const FilePath& library_path,
|
||||
// further investigation, as it might vary across versions. Crash here to
|
||||
// warn developers that they're trying to rely on uncertain behavior.
|
||||
CHECK(!options.prefer_own_symbols);
|
||||
-#else
|
||||
+#elif defined(RTLD_DEEPBIND)
|
||||
if (options.prefer_own_symbols)
|
||||
flags |= RTLD_DEEPBIND;
|
||||
#endif
|
71
testing/chromium/patches/musl-dns-r2.patch
Normal file
71
testing/chromium/patches/musl-dns-r2.patch
Normal file
@ -0,0 +1,71 @@
|
||||
diff --git chromium-75.0.3770.100/net/dns/dns_config_service_posix.cc chromium-75.0.3770.100/net/dns/dns_config_service_posix.cc
|
||||
index 48ee925..3bf8756 100644
|
||||
--- chromium-75.0.3770.100/net/dns/dns_config_service_posix.cc
|
||||
+++ chromium-75.0.3770.100/net/dns/dns_config_service_posix.cc
|
||||
@@ -150,7 +150,7 @@ ConfigParsePosixResult ReadDnsConfig(DnsConfig* dns_config) {
|
||||
#if !defined(OS_ANDROID)
|
||||
ConfigParsePosixResult result;
|
||||
// TODO(fuchsia): Use res_ninit() when it's implemented on Fuchsia.
|
||||
-#if defined(OS_OPENBSD) || defined(OS_FUCHSIA)
|
||||
+#if defined(OS_OPENBSD) || defined(OS_FUCHSIA) || (defined(OS_LINUX) && !defined(__GLIBC__))
|
||||
// Note: res_ninit in glibc always returns 0 and sets RES_INIT.
|
||||
// res_init behaves the same way.
|
||||
memset(&_res, 0, sizeof(_res));
|
||||
@@ -173,7 +173,7 @@ ConfigParsePosixResult ReadDnsConfig(DnsConfig* dns_config) {
|
||||
#else
|
||||
res_nclose(&res);
|
||||
#endif // defined(OS_MACOSX) || defined(OS_FREEBSD)
|
||||
-#endif // defined(OS_OPENBSD)
|
||||
+#endif // defined(OS_OPENBSD) || defined(OS_FUCHSIA) || (defined(OS_LINUX) && !defined(__GLIBC__))
|
||||
|
||||
#if defined(OS_MACOSX) && !defined(OS_IOS)
|
||||
ConfigParsePosixResult error = DnsConfigWatcher::CheckDnsConfig();
|
||||
diff --git chromium-75.0.3770.100/net/dns/dns_reloader.cc chromium-75.0.3770.100/net/dns/dns_reloader.cc
|
||||
index 03e248c..6135fcc 100644
|
||||
--- chromium-75.0.3770.100/net/dns/dns_reloader.cc
|
||||
+++ chromium-75.0.3770.100/net/dns/dns_reloader.cc
|
||||
@@ -4,8 +4,7 @@
|
||||
|
||||
#include "net/dns/dns_reloader.h"
|
||||
|
||||
-#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_OPENBSD) && \
|
||||
- !defined(OS_ANDROID) && !defined(OS_FUCHSIA)
|
||||
+#if defined(__GLIBC__)
|
||||
|
||||
#include <resolv.h>
|
||||
|
||||
@@ -108,5 +107,4 @@ void DnsReloaderMaybeReload() {
|
||||
|
||||
} // namespace net
|
||||
|
||||
-#endif // defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_OPENBSD) &&
|
||||
- // !defined(OS_ANDROID)
|
||||
+#endif // defined(__GLIBC__)
|
||||
diff --git chromium-75.0.3770.100/net/dns/host_resolver_manager.cc chromium-75.0.3770.100/net/dns/host_resolver_manager.cc
|
||||
index 3c75dde..c748d94 100644
|
||||
--- chromium-75.0.3770.100/net/dns/host_resolver_manager.cc
|
||||
+++ chromium-75.0.3770.100/net/dns/host_resolver_manager.cc
|
||||
@@ -2266,8 +2266,7 @@ HostResolverManager::HostResolverManager(const Options& options,
|
||||
NetworkChangeNotifier::AddIPAddressObserver(this);
|
||||
NetworkChangeNotifier::AddConnectionTypeObserver(this);
|
||||
NetworkChangeNotifier::AddDNSObserver(this);
|
||||
-#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_OPENBSD) && \
|
||||
- !defined(OS_ANDROID)
|
||||
+#if defined(__GLIBC__)
|
||||
EnsureDnsReloaderInit();
|
||||
#endif
|
||||
|
||||
diff --git chromium-75.0.3770.100/net/dns/host_resolver_proc.cc chromium-75.0.3770.100/net/dns/host_resolver_proc.cc
|
||||
index 90d9958..71d9b4a 100644
|
||||
--- chromium-75.0.3770.100/net/dns/host_resolver_proc.cc
|
||||
+++ chromium-75.0.3770.100/net/dns/host_resolver_proc.cc
|
||||
@@ -197,8 +197,7 @@ int SystemHostResolverCall(const std::string& host,
|
||||
base::ScopedBlockingCall scoped_blocking_call(FROM_HERE,
|
||||
base::BlockingType::WILL_BLOCK);
|
||||
|
||||
-#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_OPENBSD) && \
|
||||
- !defined(OS_ANDROID) && !defined(OS_FUCHSIA)
|
||||
+#if defined(__GLIBC__)
|
||||
DnsReloaderMaybeReload();
|
||||
#endif
|
||||
int err = getaddrinfo(host.c_str(), nullptr, &hints, &ai);
|
96
testing/chromium/patches/musl-execinfo-r8.patch
Normal file
96
testing/chromium/patches/musl-execinfo-r8.patch
Normal file
@ -0,0 +1,96 @@
|
||||
diff --git chromium-75.0.3770.100/base/debug/stack_trace_posix.cc chromium-75.0.3770.100/base/debug/stack_trace_posix.cc
|
||||
index d4b8b3a..bd26968 100644
|
||||
--- chromium-75.0.3770.100/base/debug/stack_trace_posix.cc
|
||||
+++ chromium-75.0.3770.100/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(__UCLIBC__) && !defined(_AIX)
|
||||
#include <execinfo.h>
|
||||
#endif
|
||||
|
||||
@@ -86,7 +86,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(__UCLIBC__) && !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.
|
||||
@@ -121,7 +121,7 @@ void DemangleSymbols(std::string* text) {
|
||||
search_from = mangled_start + 2;
|
||||
}
|
||||
}
|
||||
-#endif // !defined(__UCLIBC__) && !defined(_AIX)
|
||||
+#endif // defined(__GLIBC__) && !defined(__UCLIBC__) && !defined(_AIX)
|
||||
}
|
||||
#endif // !defined(USE_SYMBOLIZE)
|
||||
|
||||
@@ -133,7 +133,7 @@ class BacktraceOutputHandler {
|
||||
virtual ~BacktraceOutputHandler() = default;
|
||||
};
|
||||
|
||||
-#if !defined(__UCLIBC__) && !defined(_AIX)
|
||||
+#if defined(__GLIBC__) && !defined(__UCLIBC__) && !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.
|
||||
@@ -216,7 +216,7 @@ void ProcessBacktrace(void* const* trace,
|
||||
}
|
||||
#endif // defined(USE_SYMBOLIZE)
|
||||
}
|
||||
-#endif // !defined(__UCLIBC__) && !defined(_AIX)
|
||||
+#endif // defined(__GLIBC__) && !defined(__UCLIBC__) && !defined(_AIX)
|
||||
|
||||
void PrintToStderr(const char* output) {
|
||||
// NOTE: This code MUST be async-signal safe (it's used by in-process
|
||||
@@ -812,7 +812,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(__UCLIBC__) && !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));
|
||||
@@ -825,13 +825,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(__UCLIBC__) && !defined(_AIX)
|
||||
PrintBacktraceOutputHandler handler;
|
||||
ProcessBacktrace(trace_, count_, prefix_string, &handler);
|
||||
#endif
|
||||
}
|
||||
|
||||
-#if !defined(__UCLIBC__) && !defined(_AIX)
|
||||
+#if defined(__GLIBC__) && !defined(__UCLIBC__) && !defined(_AIX)
|
||||
void StackTrace::OutputToStreamWithPrefix(std::ostream* os,
|
||||
const char* prefix_string) const {
|
||||
StreamBacktraceOutputHandler handler(os);
|
||||
diff --git chromium-69.0.3497.100/third_party/swiftshader/third_party/llvm-subzero/build/Linux/include/llvm/Config/config.h
|
||||
index e14edbd..dfeca51 100644
|
||||
--- chromium-69.0.3497.100/third_party/swiftshader/third_party/llvm-subzero/build/Linux/include/llvm/Config/config.h
|
||||
+++ chromium-69.0.3497.100/third_party/swiftshader/third_party/llvm-subzero/build/Linux/include/llvm/Config/config.h
|
||||
@@ -14,7 +14,7 @@
|
||||
#define ENABLE_CRASH_OVERRIDES 1
|
||||
|
||||
/* Define to 1 if you have the `backtrace' function. */
|
||||
-#define HAVE_BACKTRACE 1
|
||||
+/* #undef HAVE_BACKTRACE */
|
||||
|
||||
/* Define to 1 if you have the <CrashReporterClient.h> header file. */
|
||||
/* #undef HAVE_CRASHREPORTERCLIENT_H */
|
||||
@@ -55,7 +55,7 @@
|
||||
#define HAVE_ERRNO_H 1
|
||||
|
||||
/* Define to 1 if you have the <execinfo.h> header file. */
|
||||
-#define HAVE_EXECINFO_H 1
|
||||
+/* #undef HAVE_EXECINFO_H */
|
||||
|
||||
/* Define to 1 if you have the <fcntl.h> header file. */
|
||||
#define HAVE_FCNTL_H 1
|
48
testing/chromium/patches/musl-fpstate-r1.patch
Normal file
48
testing/chromium/patches/musl-fpstate-r1.patch
Normal file
@ -0,0 +1,48 @@
|
||||
diff --git chromium-69.0.3497.100/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc
|
||||
index 052ce37..95b0fb4 100644
|
||||
--- chromium-69.0.3497.100/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc
|
||||
+++ chromium-69.0.3497.100/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc
|
||||
@@ -49,7 +49,7 @@ uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) {
|
||||
}
|
||||
|
||||
void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
|
||||
- const struct _libc_fpstate* fp) {
|
||||
+ const struct _fpstate* fp) {
|
||||
const greg_t* regs = uc->uc_mcontext.gregs;
|
||||
|
||||
out->context_flags = MD_CONTEXT_X86_FULL |
|
||||
@@ -97,7 +97,7 @@ uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) {
|
||||
}
|
||||
|
||||
void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
|
||||
- const struct _libc_fpstate* fpregs) {
|
||||
+ const struct _fpstate* fpregs) {
|
||||
const greg_t* regs = uc->uc_mcontext.gregs;
|
||||
|
||||
out->context_flags = MD_CONTEXT_AMD64_FULL;
|
||||
diff --git chromium-69.0.3497.100/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h
|
||||
index f830618..f3dde1f 100644
|
||||
--- chromium-69.0.3497.100/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h
|
||||
+++ chromium-69.0.3497.100/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h
|
||||
@@ -50,7 +50,7 @@ struct UContextReader {
|
||||
// info: the collection of register structures.
|
||||
#if defined(__i386__) || defined(__x86_64)
|
||||
static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
|
||||
- const struct _libc_fpstate* fp);
|
||||
+ const struct _fpstate* fp);
|
||||
#elif defined(__aarch64__)
|
||||
static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
|
||||
const struct fpsimd_context* fpregs);
|
||||
diff --git chromium-69.0.3497.100/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.h
|
||||
index d1dc331..d1cc562 100644
|
||||
--- chromium-69.0.3497.100/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.h
|
||||
+++ chromium-69.0.3497.100/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.h
|
||||
@@ -48,7 +48,7 @@ class ExceptionHandler;
|
||||
#if defined(__aarch64__)
|
||||
typedef struct fpsimd_context fpstate_t;
|
||||
#elif !defined(__ARM_EABI__) && !defined(__mips__)
|
||||
-typedef struct _libc_fpstate fpstate_t;
|
||||
+typedef struct _fpstate fpstate_t;
|
||||
#endif
|
||||
|
||||
// These entries store a list of memory regions that the client wants included
|
35
testing/chromium/patches/musl-headers-r1.patch
Normal file
35
testing/chromium/patches/musl-headers-r1.patch
Normal file
@ -0,0 +1,35 @@
|
||||
diff --git chromium-75.0.3770.100/chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.cc chromium-75.0.3770.100/chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.cc
|
||||
index 3ae4f3c..08ed693 100644
|
||||
--- chromium-75.0.3770.100/chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.cc
|
||||
+++ chromium-75.0.3770.100/chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.cc
|
||||
@@ -43,7 +43,9 @@
|
||||
#endif // defined(OS_ANDROID) && defined(__arm__)
|
||||
|
||||
#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
|
||||
+#if defined(__GLIBC__)
|
||||
#include <gnu/libc-version.h>
|
||||
+#endif // defined(__GLIBC__)
|
||||
|
||||
#include "base/linux_util.h"
|
||||
#include "base/strings/string_split.h"
|
||||
@@ -326,7 +328,7 @@ void RecordLinuxDistro() {
|
||||
#endif // defined(OS_LINUX) && !defined(OS_CHROMEOS)
|
||||
|
||||
void RecordLinuxGlibcVersion() {
|
||||
-#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
|
||||
+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && defined(__GLIBC__)
|
||||
base::Version version(gnu_get_libc_version());
|
||||
|
||||
UMALinuxGlibcVersion glibc_version_result = UMA_LINUX_GLIBC_NOT_PARSEABLE;
|
||||
diff --git chromium-75.0.3770.100/services/device/serial/serial_io_handler_posix.cc chromium-75.0.3770.100/services/device/serial/serial_io_handler_posix.cc
|
||||
index daed079..5470a35 100644
|
||||
--- chromium-75.0.3770.100/services/device/serial/serial_io_handler_posix.cc
|
||||
+++ chromium-75.0.3770.100/services/device/serial/serial_io_handler_posix.cc
|
||||
@@ -4,6 +4,7 @@
|
||||
|
||||
#include "services/device/serial/serial_io_handler_posix.h"
|
||||
|
||||
+#include <asm/ioctls.h>
|
||||
#include <sys/ioctl.h>
|
||||
#include <termios.h>
|
||||
|
13
testing/chromium/patches/musl-libcpp.patch
Normal file
13
testing/chromium/patches/musl-libcpp.patch
Normal file
@ -0,0 +1,13 @@
|
||||
diff --git chromium-69.0.3497.100/buildtools/third_party/libc++/trunk/include/__config
|
||||
index 52c7142..ca187dd 100644
|
||||
--- chromium-69.0.3497.100/buildtools/third_party/libc++/trunk/include/__config
|
||||
+++ chromium-69.0.3497.100/buildtools/third_party/libc++/trunk/include/__config
|
||||
@@ -11,6 +11,8 @@
|
||||
#ifndef _LIBCPP_CONFIG
|
||||
#define _LIBCPP_CONFIG
|
||||
|
||||
+#define _LIBCPP_HAS_MUSL_LIBC
|
||||
+
|
||||
#if defined(_MSC_VER) && !defined(__clang__)
|
||||
# if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
|
||||
# define _LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER
|
47
testing/chromium/patches/musl-mallinfo-r7.patch
Normal file
47
testing/chromium/patches/musl-mallinfo-r7.patch
Normal file
@ -0,0 +1,47 @@
|
||||
diff --git chromium-75.0.3770.100/base/process/process_metrics_posix.cc chromium-75.0.3770.100/base/process/process_metrics_posix.cc
|
||||
index a09bbf2..f0a439f 100644
|
||||
--- chromium-75.0.3770.100/base/process/process_metrics_posix.cc
|
||||
+++ chromium-75.0.3770.100/base/process/process_metrics_posix.cc
|
||||
@@ -100,14 +100,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(OS_LINUX) && 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 chromium-75.0.3770.100/base/trace_event/malloc_dump_provider.cc chromium-75.0.3770.100/base/trace_event/malloc_dump_provider.cc
|
||||
index 0077d8b..13ef0f3 100644
|
||||
--- chromium-75.0.3770.100/base/trace_event/malloc_dump_provider.cc
|
||||
+++ chromium-75.0.3770.100/base/trace_event/malloc_dump_provider.cc
|
||||
@@ -132,7 +132,7 @@ bool MallocDumpProvider::OnMemoryDump(const MemoryDumpArgs& args,
|
||||
}
|
||||
#elif defined(OS_FUCHSIA)
|
||||
// TODO(fuchsia): Port, see https://crbug.com/706592.
|
||||
-#else
|
||||
+#elif defined(OS_LINUX) && defined(__GLIBC__)
|
||||
struct mallinfo info = mallinfo();
|
||||
DCHECK_GE(info.arena + info.hblkhd, info.uordblks);
|
||||
|
||||
diff --git chromium-69.0.3497.100/third_party/swiftshader/third_party/llvm-subzero/build/Linux/include/llvm/Config/config.h
|
||||
index e14edbd..154fefe 100644
|
||||
--- chromium-69.0.3497.100/third_party/swiftshader/third_party/llvm-subzero/build/Linux/include/llvm/Config/config.h
|
||||
+++ chromium-69.0.3497.100/third_party/swiftshader/third_party/llvm-subzero/build/Linux/include/llvm/Config/config.h
|
||||
@@ -130,7 +130,7 @@
|
||||
/* #undef HAVE_MALLCTL */
|
||||
|
||||
/* Define to 1 if you have the `mallinfo' function. */
|
||||
-#define HAVE_MALLINFO 1
|
||||
+/* #undef HAVE_MALLINFO */
|
||||
|
||||
/* Define to 1 if you have the <malloc.h> header file. */
|
||||
#define HAVE_MALLOC_H 1
|
40
testing/chromium/patches/musl-pthread-r5.patch
Normal file
40
testing/chromium/patches/musl-pthread-r5.patch
Normal file
@ -0,0 +1,40 @@
|
||||
diff --git chromium-75.0.3770.100/third_party/blink/renderer/platform/wtf/stack_util.cc chromium-75.0.3770.100/third_party/blink/renderer/platform/wtf/stack_util.cc
|
||||
index b242164..93f8f08 100644
|
||||
--- chromium-75.0.3770.100/third_party/blink/renderer/platform/wtf/stack_util.cc
|
||||
+++ chromium-75.0.3770.100/third_party/blink/renderer/platform/wtf/stack_util.cc
|
||||
@@ -29,7 +29,7 @@ size_t GetUnderestimatedStackSize() {
|
||||
// FIXME: On Mac OSX and Linux, this method cannot estimate stack size
|
||||
// correctly for the main thread.
|
||||
|
||||
-#if defined(__GLIBC__) || defined(OS_ANDROID) || defined(OS_FREEBSD) || \
|
||||
+#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_FREEBSD) || \
|
||||
defined(OS_FUCHSIA)
|
||||
// pthread_getattr_np() can fail if the thread is not invoked by
|
||||
// pthread_create() (e.g., the main thread of blink_unittests).
|
||||
@@ -55,6 +55,9 @@ size_t GetUnderestimatedStackSize() {
|
||||
pthread_attr_destroy(&attr);
|
||||
#endif
|
||||
|
||||
+#if defined(OS_LINUX) && !defined(__GLIBC__)
|
||||
+ return 0;
|
||||
+#else
|
||||
// Return a 512k stack size, (conservatively) assuming the following:
|
||||
// - that size is much lower than the pthreads default (x86 pthreads has a 2M
|
||||
// default.)
|
||||
@@ -62,6 +65,7 @@ size_t GetUnderestimatedStackSize() {
|
||||
// low as 512k.
|
||||
//
|
||||
return 512 * 1024;
|
||||
+#endif
|
||||
#elif defined(OS_MACOSX)
|
||||
// pthread_get_stacksize_np() returns too low a value for the main thread on
|
||||
// OSX 10.9,
|
||||
@@ -97,7 +101,7 @@ return Threading::ThreadStackSize();
|
||||
}
|
||||
|
||||
void* GetStackStart() {
|
||||
-#if defined(__GLIBC__) || defined(OS_ANDROID) || defined(OS_FREEBSD) || \
|
||||
+#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_FREEBSD) || \
|
||||
defined(OS_FUCHSIA)
|
||||
pthread_attr_t attr;
|
||||
int error;
|
22
testing/chromium/patches/musl-ptrace.patch
Normal file
22
testing/chromium/patches/musl-ptrace.patch
Normal file
@ -0,0 +1,22 @@
|
||||
diff --git chromium-75.0.3770.100/third_party/crashpad/crashpad/util/linux/ptracer.cc chromium-75.0.3770.100/third_party/crashpad/crashpad/util/linux/ptracer.cc
|
||||
index c6c9229..6731148 100644
|
||||
--- chromium-75.0.3770.100/third_party/crashpad/crashpad/util/linux/ptracer.cc
|
||||
+++ chromium-75.0.3770.100/third_party/crashpad/crashpad/util/linux/ptracer.cc
|
||||
@@ -66,6 +66,7 @@ bool GetThreadArea32(pid_t tid,
|
||||
const ThreadContext& context,
|
||||
LinuxVMAddress* address,
|
||||
bool can_log) {
|
||||
+#ifdef PTRACE_GET_THREAD_AREA
|
||||
size_t index = (context.t32.xgs & 0xffff) >> 3;
|
||||
user_desc desc;
|
||||
if (ptrace(
|
||||
@@ -77,6 +78,9 @@ bool GetThreadArea32(pid_t tid,
|
||||
|
||||
*address = desc.base_addr;
|
||||
return true;
|
||||
+#else
|
||||
+ return false;
|
||||
+#endif
|
||||
}
|
||||
|
||||
bool GetThreadArea64(pid_t tid,
|
13
testing/chromium/patches/musl-realpath.patch
Normal file
13
testing/chromium/patches/musl-realpath.patch
Normal file
@ -0,0 +1,13 @@
|
||||
diff --git chromium-75.0.3770.100/third_party/nasm/config/config-linux.h
|
||||
index 7eb7c20..882b736 100644
|
||||
--- chromium-75.0.3770.100/third_party/nasm/config/config-linux.h.orig
|
||||
+++ chromium-75.0.3770.100/third_party/nasm/config/config-linux.h
|
||||
@@ -117,7 +117,7 @@
|
||||
#define HAVE_ACCESS 1
|
||||
|
||||
/* Define to 1 if you have the `canonicalize_file_name' function. */
|
||||
-#define HAVE_CANONICALIZE_FILE_NAME 1
|
||||
+/* #undef HAVE_CANONICALIZE_FILE_NAME */
|
||||
|
||||
/* Define to 1 if you have the `cpu_to_le16' intrinsic function. */
|
||||
/* #undef HAVE_CPU_TO_LE16 */
|
120
testing/chromium/patches/musl-sandbox-r3.patch
Normal file
120
testing/chromium/patches/musl-sandbox-r3.patch
Normal file
@ -0,0 +1,120 @@
|
||||
diff --git chromium-75.0.3770.100/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc chromium-75.0.3770.100/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
|
||||
index 479d1ed..b06cec7 100644
|
||||
--- chromium-75.0.3770.100/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
|
||||
+++ chromium-75.0.3770.100/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
|
||||
@@ -216,6 +216,9 @@ ResultExpr EvaluateSyscallImpl(int fs_denied_errno,
|
||||
if (sysno == __NR_prctl)
|
||||
return RestrictPrctl();
|
||||
|
||||
+ if (sysno == __NR_set_tid_address)
|
||||
+ return RestrictSetTIDAddress();
|
||||
+
|
||||
#if defined(__x86_64__) || defined(__arm__) || defined(__mips__) || \
|
||||
defined(__aarch64__)
|
||||
if (sysno == __NR_socketpair) {
|
||||
diff --git chromium-75.0.3770.100/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc chromium-75.0.3770.100/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
|
||||
index 348ab6e..2e91cf7 100644
|
||||
--- chromium-75.0.3770.100/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
|
||||
+++ chromium-75.0.3770.100/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
|
||||
@@ -140,20 +140,11 @@ namespace sandbox {
|
||||
ResultExpr RestrictCloneToThreadsAndEPERMFork() {
|
||||
const Arg<unsigned long> flags(0);
|
||||
|
||||
- // TODO(mdempsky): Extend DSL to support (flags & ~mask1) == mask2.
|
||||
- const uint64_t kAndroidCloneMask = CLONE_VM | CLONE_FS | CLONE_FILES |
|
||||
- CLONE_SIGHAND | CLONE_THREAD |
|
||||
- CLONE_SYSVSEM;
|
||||
- const uint64_t kObsoleteAndroidCloneMask = kAndroidCloneMask | CLONE_DETACHED;
|
||||
-
|
||||
- const uint64_t kGlibcPthreadFlags =
|
||||
- CLONE_VM | CLONE_FS | CLONE_FILES | CLONE_SIGHAND | CLONE_THREAD |
|
||||
- CLONE_SYSVSEM | CLONE_SETTLS | CLONE_PARENT_SETTID | CLONE_CHILD_CLEARTID;
|
||||
- const BoolExpr glibc_test = flags == kGlibcPthreadFlags;
|
||||
-
|
||||
- const BoolExpr android_test =
|
||||
- AnyOf(flags == kAndroidCloneMask, flags == kObsoleteAndroidCloneMask,
|
||||
- flags == kGlibcPthreadFlags);
|
||||
+ const int required = CLONE_VM | CLONE_FS | CLONE_FILES | CLONE_SIGHAND |
|
||||
+ CLONE_THREAD | CLONE_SYSVSEM;
|
||||
+ const int safe = CLONE_SETTLS | CLONE_PARENT_SETTID | CLONE_CHILD_CLEARTID |
|
||||
+ CLONE_DETACHED;
|
||||
+ const BoolExpr thread_clone_ok = (flags&~safe)==required;
|
||||
|
||||
// The following two flags are the two important flags in any vfork-emulating
|
||||
// clone call. EPERM any clone call that contains both of them.
|
||||
@@ -163,7 +154,7 @@ ResultExpr RestrictCloneToThreadsAndEPERMFork() {
|
||||
AnyOf((flags & (CLONE_VM | CLONE_THREAD)) == 0,
|
||||
(flags & kImportantCloneVforkFlags) == kImportantCloneVforkFlags);
|
||||
|
||||
- return If(IsAndroid() ? android_test : glibc_test, Allow())
|
||||
+ return If(thread_clone_ok, Allow())
|
||||
.ElseIf(is_fork_or_clone_vfork, Error(EPERM))
|
||||
.Else(CrashSIGSYSClone());
|
||||
}
|
||||
@@ -427,4 +418,10 @@ ResultExpr RestrictPtrace() {
|
||||
}
|
||||
#endif // defined(OS_NACL_NONSFI)
|
||||
|
||||
+ResultExpr RestrictSetTIDAddress() {
|
||||
+ const Arg<uintptr_t> address(0);
|
||||
+ // Only allow clearing the TID address.
|
||||
+ return If(address == 0, Allow()).Else(CrashSIGSYS());
|
||||
+}
|
||||
+
|
||||
} // namespace sandbox.
|
||||
diff --git chromium-75.0.3770.100/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.h chromium-75.0.3770.100/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.h
|
||||
index cb563df..8aef632 100644
|
||||
--- chromium-75.0.3770.100/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.h
|
||||
+++ chromium-75.0.3770.100/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.h
|
||||
@@ -107,6 +107,9 @@ SANDBOX_EXPORT bpf_dsl::ResultExpr RestrictPrlimit(pid_t target_pid);
|
||||
// reporting. See https://crbug.com/933418 for details.
|
||||
SANDBOX_EXPORT bpf_dsl::ResultExpr RestrictPtrace();
|
||||
|
||||
+// Restrict the address to NULL.
|
||||
+SANDBOX_EXPORT bpf_dsl::ResultExpr RestrictSetTIDAddress();
|
||||
+
|
||||
} // namespace sandbox.
|
||||
|
||||
#endif // SANDBOX_LINUX_SECCOMP_BPF_HELPERS_SYSCALL_PARAMETERS_RESTRICTIONS_H_
|
||||
diff --git chromium-75.0.3770.100/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc chromium-75.0.3770.100/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
|
||||
index 7dbcc87..41f3fd5 100644
|
||||
--- chromium-75.0.3770.100/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
|
||||
+++ chromium-75.0.3770.100/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
|
||||
@@ -386,6 +386,7 @@ bool SyscallSets::IsAllowedProcessStartOrDeath(int sysno) {
|
||||
switch (sysno) {
|
||||
case __NR_exit:
|
||||
case __NR_exit_group:
|
||||
+ case __NR_membarrier:
|
||||
case __NR_wait4:
|
||||
case __NR_waitid:
|
||||
#if defined(__i386__)
|
||||
@@ -513,6 +514,7 @@ bool SyscallSets::IsAllowedAddressSpaceAccess(int sysno) {
|
||||
case __NR_mlock:
|
||||
case __NR_munlock:
|
||||
case __NR_munmap:
|
||||
+ case __NR_mremap:
|
||||
return true;
|
||||
case __NR_madvise:
|
||||
case __NR_mincore:
|
||||
@@ -530,7 +532,6 @@ bool SyscallSets::IsAllowedAddressSpaceAccess(int sysno) {
|
||||
case __NR_modify_ldt:
|
||||
#endif
|
||||
case __NR_mprotect:
|
||||
- case __NR_mremap:
|
||||
case __NR_msync:
|
||||
case __NR_munlockall:
|
||||
case __NR_readahead:
|
||||
diff --git chromium-75.0.3770.100/sandbox/linux/system_headers/x86_64_linux_syscalls.h chromium-75.0.3770.100/sandbox/linux/system_headers/x86_64_linux_syscalls.h
|
||||
index 349504a..ea3c7c9 100644
|
||||
--- chromium-75.0.3770.100/sandbox/linux/system_headers/x86_64_linux_syscalls.h
|
||||
+++ chromium-75.0.3770.100/sandbox/linux/system_headers/x86_64_linux_syscalls.h
|
||||
@@ -1290,5 +1290,9 @@
|
||||
#define __NR_memfd_create 319
|
||||
#endif
|
||||
|
||||
+#if !defined(__NR_membarrier)
|
||||
+#define __NR_membarrier 324
|
||||
+#endif
|
||||
+
|
||||
#endif // SANDBOX_LINUX_SYSTEM_HEADERS_X86_64_LINUX_SYSCALLS_H_
|
||||
|
15
testing/chromium/patches/musl-secure_getenv-r1.patch
Normal file
15
testing/chromium/patches/musl-secure_getenv-r1.patch
Normal file
@ -0,0 +1,15 @@
|
||||
diff --git chromium-69.0.3497.100/third_party/angle/third_party/vulkan-loader/BUILD.gn
|
||||
index 0d662fd..de5a0b1 100644
|
||||
--- chromium-69.0.3497.100/third_party/angle/third_party/vulkan-loader/BUILD.gn
|
||||
+++ chromium-69.0.3497.100/third_party/angle/third_party/vulkan-loader/BUILD.gn
|
||||
@@ -192,10 +192,6 @@ config("vulkan_loader_config") {
|
||||
if (is_win) {
|
||||
cflags = [ "/wd4201" ]
|
||||
}
|
||||
- if (is_linux) {
|
||||
- # assume secure_getenv() is available
|
||||
- defines += [ "HAVE_SECURE_GETENV" ]
|
||||
- }
|
||||
}
|
||||
|
||||
if (!is_android) {
|
13
testing/chromium/patches/musl-siginfo.patch
Normal file
13
testing/chromium/patches/musl-siginfo.patch
Normal file
@ -0,0 +1,13 @@
|
||||
diff --git chromium-75.0.3770.100/sandbox/linux/seccomp-bpf/trap.cc chromium-75.0.3770.100/sandbox/linux/seccomp-bpf/trap.cc
|
||||
index 003708d..0fef314 100644
|
||||
--- chromium-75.0.3770.100/sandbox/linux/seccomp-bpf/trap.cc
|
||||
+++ chromium-75.0.3770.100/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
|
25
testing/chromium/patches/musl-socket.patch
Normal file
25
testing/chromium/patches/musl-socket.patch
Normal file
@ -0,0 +1,25 @@
|
||||
diff --git chromium-69.0.3497.100/third_party/swiftshader/src/Common/Socket.hpp
|
||||
index b6b9abd..aa61d9f 100644
|
||||
--- chromium-69.0.3497.100/third_party/swiftshader/src/Common/Socket.hpp
|
||||
+++ chromium-69.0.3497.100/third_party/swiftshader/src/Common/Socket.hpp
|
||||
@@ -18,6 +18,7 @@
|
||||
#if defined(_WIN32)
|
||||
#include <winsock2.h>
|
||||
#else
|
||||
+ #include <sys/select.h>
|
||||
#include <sys/socket.h>
|
||||
typedef int SOCKET;
|
||||
#endif
|
||||
diff --git chromium-75.0.3770.100/net/socket/udp_socket_posix.cc
|
||||
index 08bf79c..3ee5353 100644
|
||||
--- chromium-75.0.3770.100/net/socket/udp_socket_posix.cc.orig
|
||||
+++ chromium-75.0.3770.100/net/socket/udp_socket_posix.cc
|
||||
@@ -1194,7 +1194,7 @@ SendResult UDPSocketPosixSender::InternalSendmmsgBuffers(
|
||||
msg_iov->push_back({const_cast<char*>(buffer->data()), buffer->length()});
|
||||
msgvec->reserve(buffers.size());
|
||||
for (size_t j = 0; j < buffers.size(); j++)
|
||||
- msgvec->push_back({{nullptr, 0, &msg_iov[j], 1, nullptr, 0, 0}, 0});
|
||||
+ msgvec->push_back({{nullptr, 0, &msg_iov[j], 1, 0, nullptr, 0, 0, 0}, 0});
|
||||
int result = HANDLE_EINTR(Sendmmsg(fd, &msgvec[0], buffers.size(), 0));
|
||||
SendResult send_result(0, 0, std::move(buffers));
|
||||
if (result < 0) {
|
46
testing/chromium/patches/musl-stacksize-r3.patch
Normal file
46
testing/chromium/patches/musl-stacksize-r3.patch
Normal file
@ -0,0 +1,46 @@
|
||||
diff --git chromium-75.0.3770.100/base/threading/platform_thread_linux.cc chromium-75.0.3770.100/base/threading/platform_thread_linux.cc
|
||||
index 095c49b..b81b050 100644
|
||||
--- chromium-75.0.3770.100/base/threading/platform_thread_linux.cc
|
||||
+++ chromium-75.0.3770.100/base/threading/platform_thread_linux.cc
|
||||
@@ -185,12 +185,14 @@ void InitThreading() {}
|
||||
void TerminateOnThread() {}
|
||||
|
||||
size_t GetDefaultThreadStackSize(const pthread_attr_t& attributes) {
|
||||
-#if !defined(THREAD_SANITIZER)
|
||||
- return 0;
|
||||
-#else
|
||||
+#if defined(THREAD_SANITIZER)
|
||||
// ThreadSanitizer bloats the stack heavily. Evidence has been that the
|
||||
// default stack size isn't enough for some browser tests.
|
||||
return 2 * (1 << 23); // 2 times 8192K (the default stack size on Linux).
|
||||
+#elif defined(__GLIBC__)
|
||||
+ return 0;
|
||||
+#else
|
||||
+ return 1 * (1 << 23); // 8192K (the default stack size on glibc)
|
||||
#endif
|
||||
}
|
||||
|
||||
diff --git chromium-75.0.3770.100/chrome/app/shutdown_signal_handlers_posix.cc chromium-75.0.3770.100/chrome/app/shutdown_signal_handlers_posix.cc
|
||||
index 621d441..132e0f2 100644
|
||||
--- chromium-75.0.3770.100/chrome/app/shutdown_signal_handlers_posix.cc
|
||||
+++ chromium-75.0.3770.100/chrome/app/shutdown_signal_handlers_posix.cc
|
||||
@@ -186,12 +186,19 @@ void InstallShutdownSignalHandlers(
|
||||
g_pipe_pid = getpid();
|
||||
g_shutdown_pipe_read_fd = pipefd[0];
|
||||
g_shutdown_pipe_write_fd = pipefd[1];
|
||||
+#ifdef __GLIBC__
|
||||
#if !defined(ADDRESS_SANITIZER)
|
||||
const size_t kShutdownDetectorThreadStackSize = PTHREAD_STACK_MIN * 2;
|
||||
#else
|
||||
// ASan instrumentation bloats the stack frames, so we need to increase the
|
||||
// stack size to avoid hitting the guard page.
|
||||
const size_t kShutdownDetectorThreadStackSize = PTHREAD_STACK_MIN * 4;
|
||||
+#endif
|
||||
+#else
|
||||
+ // PTHREAD_STACK_MIN is much smaller on musl. ConstructTlsVector uses
|
||||
+ // 6616 bytes of stack by itself. This matches the value of the GLIBC
|
||||
+ // minumum * 2.
|
||||
+ const size_t kShutdownDetectorThreadStackSize = 32768;
|
||||
#endif
|
||||
ShutdownDetector* detector = new ShutdownDetector(
|
||||
g_shutdown_pipe_read_fd, std::move(shutdown_callback), task_runner);
|
38
testing/chromium/patches/musl-stacktrace-r2.patch
Normal file
38
testing/chromium/patches/musl-stacktrace-r2.patch
Normal file
@ -0,0 +1,38 @@
|
||||
diff --git chromium-75.0.3770.100/base/debug/stack_trace.cc chromium-75.0.3770.100/base/debug/stack_trace.cc
|
||||
index d8ca822..d78f128 100644
|
||||
--- chromium-75.0.3770.100/base/debug/stack_trace.cc
|
||||
+++ chromium-75.0.3770.100/base/debug/stack_trace.cc
|
||||
@@ -225,7 +225,9 @@ void StackTrace::Print() const {
|
||||
}
|
||||
|
||||
void StackTrace::OutputToStream(std::ostream* os) const {
|
||||
+#if defined(__GLIBC__) && !defined(__UCLIBC__) && !defined(_AIX)
|
||||
OutputToStreamWithPrefix(os, nullptr);
|
||||
+#endif
|
||||
}
|
||||
|
||||
std::string StackTrace::ToString() const {
|
||||
@@ -233,7 +235,7 @@ 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(__UCLIBC__) && !defined(_AIX)
|
||||
OutputToStreamWithPrefix(&stream, prefix_string);
|
||||
#endif
|
||||
return stream.str();
|
||||
diff --git chromium-75.0.3770.100/base/logging.cc chromium-75.0.3770.100/base/logging.cc
|
||||
index 52720c4..8b759c7 100644
|
||||
--- chromium-75.0.3770.100/base/logging.cc
|
||||
+++ chromium-75.0.3770.100/base/logging.cc
|
||||
@@ -582,8 +582,8 @@ 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__) && \
|
||||
- !defined(OS_AIX)
|
||||
+#if !defined(OFFICIAL_BUILD) && !defined(OS_NACL) && defined(__GLIBC__) && \
|
||||
+ !defined(__UCLIBC__) && !defined(OS_AIX)
|
||||
if (severity_ == LOG_FATAL && !base::debug::BeingDebugged()) {
|
||||
// Include a stack trace on a fatal, unless a debugger is attached.
|
||||
base::debug::StackTrace stack_trace;
|
18
testing/chromium/patches/musl-syscall.patch
Normal file
18
testing/chromium/patches/musl-syscall.patch
Normal file
@ -0,0 +1,18 @@
|
||||
diff --git chromium-69.0.3497.100/third_party/lss/linux_syscall_support.h
|
||||
index 5d9c2e8..2682349 100644
|
||||
--- chromium-69.0.3497.100/third_party/lss/linux_syscall_support.h
|
||||
+++ chromium-69.0.3497.100/third_party/lss/linux_syscall_support.h
|
||||
@@ -166,6 +166,13 @@ extern "C" {
|
||||
# undef __NR_waitpid
|
||||
#endif
|
||||
|
||||
+#ifdef pread64
|
||||
+#undef pread64
|
||||
+#endif
|
||||
+#ifdef pwrite64
|
||||
+#undef pwrite64
|
||||
+#endif
|
||||
+
|
||||
/* As glibc often provides subtly incompatible data structures (and implicit
|
||||
* wrapper functions that convert them), we provide our own kernel data
|
||||
* structures for use by the system calls.
|
25
testing/chromium/patches/musl-ucontext-r1.patch
Normal file
25
testing/chromium/patches/musl-ucontext-r1.patch
Normal file
@ -0,0 +1,25 @@
|
||||
diff --git chromium-69.0.3497.100/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc
|
||||
index b895f6d..4f13352 100644
|
||||
--- chromium-69.0.3497.100/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc
|
||||
+++ chromium-69.0.3497.100/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc
|
||||
@@ -490,7 +490,9 @@ bool ExceptionHandler::SimulateSignalDelivery(int sig) {
|
||||
siginfo.si_code = SI_USER;
|
||||
siginfo.si_pid = getpid();
|
||||
ucontext_t context;
|
||||
+#if defined(__GLIBC__)
|
||||
getcontext(&context);
|
||||
+#endif
|
||||
return HandleSignal(sig, &siginfo, &context);
|
||||
}
|
||||
|
||||
@@ -675,8 +677,10 @@ bool ExceptionHandler::WriteMinidump() {
|
||||
sys_prctl(PR_SET_DUMPABLE, 1, 0, 0, 0);
|
||||
|
||||
CrashContext context;
|
||||
+#if defined(__GLIBC__)
|
||||
int getcontext_result = getcontext(&context.context);
|
||||
if (getcontext_result)
|
||||
+#endif
|
||||
return false;
|
||||
|
||||
#if defined(__i386__)
|
@ -0,0 +1,24 @@
|
||||
Use monotonic clock for pthread_cond_timedwait with musl too.
|
||||
|
||||
diff --git a/v8/src/base/platform/condition-variable.cc b/v8/src/base/platform/condition-variable.cc
|
||||
index 5ea7083..c13027e 100644
|
||||
--- ./v8/src/base/platform/condition-variable.cc
|
||||
+++ ./v8/src/base/platform/condition-variable.cc
|
||||
@@ -16,7 +16,7 @@ namespace base {
|
||||
|
||||
ConditionVariable::ConditionVariable() {
|
||||
#if (V8_OS_FREEBSD || V8_OS_NETBSD || V8_OS_OPENBSD || \
|
||||
- (V8_OS_LINUX && V8_LIBC_GLIBC))
|
||||
+ V8_OS_LINUX)
|
||||
// On Free/Net/OpenBSD and Linux with glibc we can change the time
|
||||
// source for pthread_cond_timedwait() to use the monotonic clock.
|
||||
pthread_condattr_t attr;
|
||||
@@ -92,7 +92,7 @@ bool ConditionVariable::WaitFor(Mutex* mutex, const TimeDelta& rel_time) {
|
||||
&native_handle_, &mutex->native_handle(), &ts);
|
||||
#else
|
||||
#if (V8_OS_FREEBSD || V8_OS_NETBSD || V8_OS_OPENBSD || \
|
||||
- (V8_OS_LINUX && V8_LIBC_GLIBC))
|
||||
+ V8_OS_LINUX)
|
||||
// On Free/Net/OpenBSD and Linux with glibc we can change the time
|
||||
// source for pthread_cond_timedwait() to use the monotonic clock.
|
||||
result = clock_gettime(CLOCK_MONOTONIC, &ts);
|
24
testing/chromium/patches/musl-wordsize-r1.patch
Normal file
24
testing/chromium/patches/musl-wordsize-r1.patch
Normal file
@ -0,0 +1,24 @@
|
||||
diff --git chromium-69.0.3497.100/third_party/breakpad/breakpad/src/common/linux/elf_core_dump.h
|
||||
index d03c7a8..78ca9dd 100644
|
||||
--- chromium-69.0.3497.100/third_party/breakpad/breakpad/src/common/linux/elf_core_dump.h
|
||||
+++ chromium-69.0.3497.100/third_party/breakpad/breakpad/src/common/linux/elf_core_dump.h
|
||||
@@ -36,6 +36,7 @@
|
||||
#include <elf.h>
|
||||
#include <link.h>
|
||||
#include <stddef.h>
|
||||
+#include <limits.h>
|
||||
|
||||
#include "common/memory_range.h"
|
||||
|
||||
@@ -51,9 +52,9 @@ class ElfCoreDump {
|
||||
typedef ElfW(Phdr) Phdr;
|
||||
typedef ElfW(Word) Word;
|
||||
typedef ElfW(Addr) Addr;
|
||||
-#if __WORDSIZE == 32
|
||||
+#if ULONG_MAX == 0xffffffff
|
||||
static const int kClass = ELFCLASS32;
|
||||
-#elif __WORDSIZE == 64
|
||||
+#elif ULONG_MAX == 0xffffffffffffffff
|
||||
static const int kClass = ELFCLASS64;
|
||||
#else
|
||||
#error "Unsupported __WORDSIZE for ElfCoreDump."
|
@ -1,3 +1,35 @@
|
||||
https://commondatastorage.googleapis.com/chromium-browser-official/chromium-75.0.3770.142.tar.xz
|
||||
patches/chromium-75-fix-gn-gen.patch
|
||||
patches/chromium-75-gcc-angle-fix.patch
|
||||
patches/chromium-75-llvm8.patch
|
||||
patches/chromium-75-lss.patch
|
||||
patches/chromium-75-noexcept.patch
|
||||
patches/chromium-75-pure-virtual.patch
|
||||
patches/chromium-75-unique_ptr.patch
|
||||
patches/chromium-compiler-r9.patch
|
||||
patches/chromium-fix-char_traits.patch
|
||||
patches/chromium-optional-atk-r1.patch
|
||||
patches/chromium-optional-dbus-r5.patch
|
||||
patches/chromium-url-formatter.patch
|
||||
patches/chromium-widevine-r4.patch
|
||||
patches/musl-cdefs-r2.patch
|
||||
patches/musl-dlopen.patch
|
||||
patches/musl-dns-r2.patch
|
||||
patches/musl-execinfo-r8.patch
|
||||
patches/musl-fpstate-r1.patch
|
||||
patches/musl-headers-r1.patch
|
||||
patches/musl-libcpp.patch
|
||||
patches/musl-mallinfo-r7.patch
|
||||
patches/musl-pthread-r5.patch
|
||||
patches/musl-ptrace.patch
|
||||
patches/musl-realpath.patch
|
||||
patches/musl-sandbox-r3.patch
|
||||
patches/musl-secure_getenv-r1.patch
|
||||
patches/musl-siginfo.patch
|
||||
patches/musl-socket.patch
|
||||
patches/musl-stacksize-r3.patch
|
||||
patches/musl-stacktrace-r2.patch
|
||||
patches/musl-syscall.patch
|
||||
patches/musl-ucontext-r1.patch
|
||||
patches/musl-v8-monotonic-pthread-cont_timedwait.patch
|
||||
patches/musl-wordsize-r1.patch
|
||||
|
Loading…
Reference in New Issue
Block a user