chromium: update to 90.0.4430.72.

- Built for x86_64, i686, x86_64-musl.
- Tested on x86_64.

- Removes API key.
- Changes by q66: ppc patch fixes

Closes https://github.com/void-linux/void-packages/pull/30271
This commit is contained in:
Peter Bui 2021-04-16 14:29:31 -04:00 committed by q66
parent 34e751e869
commit 25a251151a
16 changed files with 264 additions and 333 deletions

View file

@ -107,8 +107,8 @@ diff --git a/chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.cc b
#include <algorithm>
#include <utility>
diff --git a/third_party/ots/include/opentype-sanitiser.h b/third_party/ots/include/opentype-sanitiser.h
--- third_party/ots/include/opentype-sanitiser.h
+++ third_party/ots/include/opentype-sanitiser.h
--- third_party/ots/src/include/opentype-sanitiser.h
+++ third_party/ots/src/include/opentype-sanitiser.h
@@ -20,6 +20,7 @@ typedef unsigned __int64 uint64_t;
#define htonl(x) _byteswap_ulong (x)
#define htons(x) _byteswap_ushort (x)
@ -200,3 +200,24 @@ diff --git a/third_party/ots/include/opentype-sanitiser.h b/third_party/ots/incl
#include <sys/socket.h>
#include <sys/un.h>
#include <unistd.h>
--- third_party/perfetto/include/perfetto/ext/base/thread_utils.h
+++ third_party/perfetto/include/perfetto/ext/base/thread_utils.h
@@ -29,7 +29,7 @@
#include <algorithm>
#endif
-#if PERFETTO_BUILDFLAG(PERFETTO_OS_ANDROID)
+#if 1
#include <sys/prctl.h>
#endif
@@ -58,7 +58,7 @@ inline bool MaybeSetThreadName(const std::string& name) {
inline bool GetThreadName(std::string& out_result) {
char buf[16] = {};
-#if PERFETTO_BUILDFLAG(PERFETTO_OS_ANDROID)
+#if 1
if (prctl(PR_GET_NAME, buf) != 0)
return false;
#else

View file

@ -52,3 +52,23 @@
/* Define to 1 if you have the <malloc.h> header file. */
#define HAVE_MALLOC_H 1
--- third_party/tflite/src/tensorflow/lite/profiling/memory_info.cc.orig 2021-04-16 17:34:36.666385207 -0400
+++ third_party/tflite/src/tensorflow/lite/profiling/memory_info.cc 2021-04-16 17:36:01.197602953 -0400
@@ -27,7 +27,7 @@
const int MemoryUsage::kValueNotSet = 0;
bool MemoryUsage::IsSupported() {
-#ifdef __linux__
+#ifdef defined(__GLIBC__)
return true;
#endif
return false;
@@ -35,7 +35,7 @@
MemoryUsage GetMemoryUsage() {
MemoryUsage result;
-#ifdef __linux__
+#ifdef defined(__GLIBC__)
rusage res;
if (getrusage(RUSAGE_SELF, &res) == 0) {
result.max_rss_kb = res.ru_maxrss;

View file

@ -1,3 +1,18 @@
diff --git base/allocator/partition_allocator/partition_freelist_entry.h base/allocator/partition_allocator/partition_freelist_entry.h
index f7703ee..57b6e6c 100644
--- base/allocator/partition_allocator/partition_freelist_entry.h
+++ base/allocator/partition_allocator/partition_freelist_entry.h
@@ -19,8 +19,10 @@
// Disabled on ARM64 Macs, as this crashes very early (crbug.com/1172236).
// TODO(lizeb): Enable in as many configurations as possible.
#if !(defined(OS_MAC) && defined(ARCH_CPU_ARM64))
+#if !defined(__powerpc64__)
#define PA_HAS_FREELIST_HARDENING
#endif
+#endif
namespace base {
namespace internal {
diff --git sandbox/linux/bpf_dsl/seccomp_macros.h sandbox/linux/bpf_dsl/seccomp_macros.h
index a6aec544e..2a4a7f1bc 100644
--- sandbox/linux/bpf_dsl/seccomp_macros.h

View file

@ -1,25 +0,0 @@
From c06ddc4935bf1394812c011ce5d93898ccc8a53a Mon Sep 17 00:00:00 2001
From: Stephan Hartmann <stha09@googlemail.com>
Date: Tue, 09 Feb 2021 19:22:57 +0000
Subject: [PATCH] IWYU: add ctime for std::time
Bug: None
Change-Id: I8bdae43209984242b9f5e538d74ece4409b65e3c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2679610
Reviewed-by: Katie Dektar <katie@chromium.org>
Commit-Queue: Katie Dektar <katie@chromium.org>
Cr-Commit-Position: refs/heads/master@{#852287}
---
diff --git a/ui/accessibility/ax_tree_serializer.h b/ui/accessibility/ax_tree_serializer.h
index ddbbdcd..1790e3b 100644
--- ui/accessibility/ax_tree_serializer.h
+++ ui/accessibility/ax_tree_serializer.h
@@ -8,6 +8,7 @@
#include <stddef.h>
#include <stdint.h>
+#include <ctime>
#include <ostream>
#include <unordered_map>
#include <unordered_set>

View file

@ -1,43 +0,0 @@
From b5b80df7dafba8cafa4c6c0ba2153dfda467dfc9 Mon Sep 17 00:00:00 2001
From: Stephan Hartmann <stha09@googlemail.com>
Date: Wed, 27 Jan 2021 20:31:51 +0000
Subject: [PATCH] add dependency on opus in webcodecs
webcodecs uses opus, but dependency is missing. With unbundled
opus library build fails, because include path is incomplete.
Bug: 1169758
Change-Id: I01369364327461196a81002479636cf45017669a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2644623
Reviewed-by: Dale Curtis <dalecurtis@chromium.org>
Commit-Queue: Dale Curtis <dalecurtis@chromium.org>
Cr-Commit-Position: refs/heads/master@{#847754}
---
third_party/blink/renderer/modules/webcodecs/BUILD.gn | 1 +
third_party/blink/renderer/modules/webcodecs/DEPS | 1 +
2 files changed, 2 insertions(+)
diff --git a/third_party/blink/renderer/modules/webcodecs/BUILD.gn b/third_party/blink/renderer/modules/webcodecs/BUILD.gn
index fdf4ca0fafc72..01a7bf809ffca 100644
--- third_party/blink/renderer/modules/webcodecs/BUILD.gn
+++ third_party/blink/renderer/modules/webcodecs/BUILD.gn
@@ -65,6 +65,7 @@ blink_modules_sources("webcodecs") {
"//media/mojo/clients",
"//media/mojo/mojom",
"//third_party/libyuv:libyuv",
+ "//third_party/opus",
]
if (media_use_openh264) {
deps += [ "//third_party/openh264:encoder" ]
diff --git a/third_party/blink/renderer/modules/webcodecs/DEPS b/third_party/blink/renderer/modules/webcodecs/DEPS
index b8dd596da8caf..ea1919d12205a 100644
--- third_party/blink/renderer/modules/webcodecs/DEPS
+++ third_party/blink/renderer/modules/webcodecs/DEPS
@@ -19,6 +19,7 @@ include_rules = [
"+third_party/libyuv",
"+third_party/openh264",
+ "+third_party/opus",
"+ui/gfx/color_space.h",
"+ui/gfx/geometry/rect.h",

View file

@ -1,28 +0,0 @@
From 5a56bfe8d281250a1deee0d116a9fcde65b9c29a Mon Sep 17 00:00:00 2001
From: Stephan Hartmann <stha09@googlemail.com>
Date: Fri, 15 Jan 2021 18:37:05 +0000
Subject: [PATCH] IWYU: add various missing includes
std::weak_ptr and std::shared_ptr require map
*int*_t types require cstdint
---
third_party/dawn/src/dawn_wire/client/Device.h | 2 ++
1 file changed, 2 insertions(+)
diff --git a/third_party/dawn/src/dawn_wire/client/Device.h b/third_party/dawn/src/dawn_wire/client/Device.h
index 3f16700..1082549 100644
--- third_party/dawn/src/dawn_wire/client/Device.h
+++ third_party/dawn/src/dawn_wire/client/Device.h
@@ -22,7 +22,9 @@
#include "dawn_wire/client/ApiObjects_autogen.h"
#include "dawn_wire/client/ObjectBase.h"
+#include <cstdint>
#include <map>
+#include <memory>
namespace dawn_wire { namespace client {
--
2.26.2

View file

@ -1,29 +0,0 @@
From 7cd4eab0bfca6192f14d6143410e1ae774eb1c29 Mon Sep 17 00:00:00 2001
From: Stephan Hartmann <stha09@googlemail.com>
Date: Thu, 31 Dec 2020 11:57:22 +0000
Subject: [PATCH] GCC: do not pass unique_ptr to DCHECK_NE, but the actual
pointer
DCHECK_NE comparison requires CheckOpValueStr to be defined for the
type, or providing an output stream operator. A unique_ptr does not
provide any. USE DCHECK instead.
---
net/third_party/quiche/src/quic/core/quic_path_validator.cc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/net/third_party/quiche/src/quic/core/quic_path_validator.cc b/net/third_party/quiche/src/quic/core/quic_path_validator.cc
index 0722216..fb2aeaf 100644
--- net/third_party/quiche/src/quic/core/quic_path_validator.cc
+++ net/third_party/quiche/src/quic/core/quic_path_validator.cc
@@ -68,7 +68,7 @@ void QuicPathValidator::OnPathResponse(const QuicPathFrameBuffer& probing_data,
void QuicPathValidator::StartPathValidation(
std::unique_ptr<QuicPathValidationContext> context,
std::unique_ptr<ResultDelegate> result_delegate) {
- DCHECK_NE(nullptr, context);
+ DCHECK(context);
QUIC_DLOG(INFO) << "Start validating path " << *context
<< " via writer: " << context->WriterToUse();
if (path_context_ != nullptr) {
--
2.26.2

View file

@ -1,38 +0,0 @@
diff --git a/third_party/skia/include/effects/SkImageFilters.h b/third_party/skia/include/effects/SkImageFilters.h
index 04cce0a..d06b007 100644
--- third_party/skia/include/effects/SkImageFilters.h
+++ third_party/skia/include/effects/SkImageFilters.h
@@ -23,6 +23,9 @@ class SkColorFilter;
class SkPaint;
class SkRegion;
+constexpr SkRect kNoCropRect = {SK_ScalarNegativeInfinity, SK_ScalarNegativeInfinity,
+ SK_ScalarInfinity, SK_ScalarInfinity};
+
// A set of factory functions providing useful SkImageFilter effects. For image filters that take an
// input filter, providing nullptr means it will automatically use the dynamic source image. This
// source depends on how the filter is applied, but is either the contents of a saved layer when
@@ -33,8 +36,6 @@ public:
// to those types as a crop rect for the image filter factories. It's not intended to be used
// directly.
struct CropRect {
- static constexpr SkRect kNoCropRect = {SK_ScalarNegativeInfinity, SK_ScalarNegativeInfinity,
- SK_ScalarInfinity, SK_ScalarInfinity};
CropRect() : fCropRect(kNoCropRect) {}
// Intentionally not explicit so callers don't have to use this type but can use SkIRect or
// SkRect as desired.
diff --git a/third_party/skia/src/effects/imagefilters/SkImageFilters.cpp b/third_party/skia/src/effects/imagefilters/SkImageFilters.cpp
index 5290b00..fb97fc1 100644
--- third_party/skia/src/effects/imagefilters/SkImageFilters.cpp
+++ third_party/skia/src/effects/imagefilters/SkImageFilters.cpp
@@ -47,10 +47,6 @@ static SkImageFilter::CropRect to_legacy_crop_rect(const SkImageFilters::CropRec
: SkImageFilter::CropRect(SkRect::MakeEmpty(), 0x0);
}
-// Allow kNoCropRect to be referenced (for certain builds, e.g. macOS libFuzzer chromium target,
-// see crbug.com/1139725)
-constexpr SkRect SkImageFilters::CropRect::kNoCropRect;
-
void SkImageFilters::RegisterFlattenables() {
SkAlphaThresholdFilter::RegisterFlattenables();
SkArithmeticImageFilter::RegisterFlattenables();

View file

@ -1,135 +0,0 @@
From 5e3a738b1204941aab9f15c0eb3d06e20fefd96e Mon Sep 17 00:00:00 2001
From: Scott Violet <sky@chromium.org>
Date: Mon, 8 Mar 2021 21:07:39 +0000
Subject: [PATCH] x11/ozone: fix two edge cases
WindowTreeHost::OnHostMovedInPixels() may trigger a nested message
loop (tab dragging), which when the stack unravels means this may
be deleted. This adds an early out if this happens.
X11WholeScreenMoveLoop has a similar issue, in so far as notifying
the delegate may delete this.
BUG=1185482
TEST=WindowTreeHostPlatform.DeleteHostFromOnHostMovedInPixels
Change-Id: Ieca1c90b3e4358da50b332abe2941fdbb50c5c25
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2743555
Reviewed-by: Thomas Anderson <thomasanderson@chromium.org>
Commit-Queue: Scott Violet <sky@chromium.org>
Cr-Commit-Position: refs/heads/master@{#860852}
---
ui/aura/window_tree_host_platform.cc | 10 ++++-
ui/aura/window_tree_host_platform_unittest.cc | 40 ++++++++++++++++++-
ui/base/x/x11_whole_screen_move_loop.cc | 4 ++
3 files changed, 51 insertions(+), 3 deletions(-)
diff --git a/ui/aura/window_tree_host_platform.cc b/ui/aura/window_tree_host_platform.cc
index ce8395fe07..7589542026 100644
--- ui/aura/window_tree_host_platform.cc
+++ ui/aura/window_tree_host_platform.cc
@@ -214,13 +214,21 @@ void WindowTreeHostPlatform::OnBoundsChanged(const gfx::Rect& new_bounds) {
float current_scale = compositor()->device_scale_factor();
float new_scale = ui::GetScaleFactorForNativeView(window());
gfx::Rect old_bounds = bounds_in_pixels_;
+ auto weak_ref = GetWeakPtr();
bounds_in_pixels_ = new_bounds;
- if (bounds_in_pixels_.origin() != old_bounds.origin())
+ if (bounds_in_pixels_.origin() != old_bounds.origin()) {
OnHostMovedInPixels(bounds_in_pixels_.origin());
+ // Changing the bounds may destroy this.
+ if (!weak_ref)
+ return;
+ }
if (bounds_in_pixels_.size() != old_bounds.size() ||
current_scale != new_scale) {
pending_size_ = gfx::Size();
OnHostResizedInPixels(bounds_in_pixels_.size());
+ // Changing the size may destroy this.
+ if (!weak_ref)
+ return;
}
DCHECK_GT(on_bounds_changed_recursion_depth_, 0);
if (--on_bounds_changed_recursion_depth_ == 0) {
diff --git a/ui/aura/window_tree_host_platform_unittest.cc b/ui/aura/window_tree_host_platform_unittest.cc
index eda14e2f0c..4de039c88a 100644
--- ui/aura/window_tree_host_platform_unittest.cc
+++ ui/aura/window_tree_host_platform_unittest.cc
@@ -34,7 +34,7 @@ class TestWindowTreeHost : public WindowTreeHostPlatform {
// OnHostWill/DidProcessBoundsChange. Additionally, this triggers a bounds
// change from within OnHostResized(). Such a scenario happens in production
// code.
-class TestWindowTreeHostObserver : public aura::WindowTreeHostObserver {
+class TestWindowTreeHostObserver : public WindowTreeHostObserver {
public:
TestWindowTreeHostObserver(WindowTreeHostPlatform* host,
ui::PlatformWindow* platform_window)
@@ -51,7 +51,7 @@ class TestWindowTreeHostObserver : public aura::WindowTreeHostObserver {
return on_host_will_process_bounds_change_count_;
}
- // aura::WindowTreeHostObserver:
+ // WindowTreeHostObserver:
void OnHostResized(WindowTreeHost* host) override {
if (!should_change_bounds_in_on_resized_)
return;
@@ -92,5 +92,41 @@ TEST_F(WindowTreeHostPlatformTest, HostWillProcessBoundsChangeRecursion) {
EXPECT_EQ(1, observer.on_host_will_process_bounds_change_count());
}
+// Deletes WindowTreeHostPlatform from OnHostMovedInPixels().
+class DeleteHostWindowTreeHostObserver : public WindowTreeHostObserver {
+ public:
+ explicit DeleteHostWindowTreeHostObserver(
+ std::unique_ptr<TestWindowTreeHost> host)
+ : host_(std::move(host)) {
+ host_->AddObserver(this);
+ }
+ ~DeleteHostWindowTreeHostObserver() override = default;
+
+ TestWindowTreeHost* host() { return host_.get(); }
+
+ // WindowTreeHostObserver:
+ void OnHostMovedInPixels(WindowTreeHost* host,
+ const gfx::Point& new_origin_in_pixels) override {
+ host_->RemoveObserver(this);
+ host_.reset();
+ }
+
+ private:
+ std::unique_ptr<TestWindowTreeHost> host_;
+
+ DISALLOW_COPY_AND_ASSIGN(DeleteHostWindowTreeHostObserver);
+};
+
+// Verifies WindowTreeHostPlatform can be safely deleted when calling
+// OnHostMovedInPixels().
+// Regression test for https://crbug.com/1185482
+TEST_F(WindowTreeHostPlatformTest, DeleteHostFromOnHostMovedInPixels) {
+ std::unique_ptr<TestWindowTreeHost> host =
+ std::make_unique<TestWindowTreeHost>();
+ DeleteHostWindowTreeHostObserver observer(std::move(host));
+ observer.host()->SetBoundsInPixels(gfx::Rect(1, 2, 3, 4));
+ EXPECT_EQ(nullptr, observer.host());
+}
+
} // namespace
} // namespace aura
diff --git a/ui/base/x/x11_whole_screen_move_loop.cc b/ui/base/x/x11_whole_screen_move_loop.cc
index 5ed215db66..db678799db 100644
--- ui/base/x/x11_whole_screen_move_loop.cc
+++ ui/base/x/x11_whole_screen_move_loop.cc
@@ -78,9 +78,13 @@ X11WholeScreenMoveLoop::~X11WholeScreenMoveLoop() {
void X11WholeScreenMoveLoop::DispatchMouseMovement() {
if (!last_motion_in_screen_)
return;
+ auto weak_ref = weak_factory_.GetWeakPtr();
delegate_->OnMouseMovement(last_motion_in_screen_->root_location(),
last_motion_in_screen_->flags(),
last_motion_in_screen_->time_stamp());
+ // The delegate may delete this during dispatch.
+ if (!weak_ref)
+ return;
last_motion_in_screen_.reset();
}

View file

@ -0,0 +1,24 @@
From 30dcae908492a3ec811b5f5b9f518d792a01da38 Mon Sep 17 00:00:00 2001
From: Stephan Hartmann <stha09@googlemail.com>
Date: Sun, 28 Feb 2021 12:36:04 +0000
Subject: [PATCH] IWYU: include missing cstring for strlen
---
.../translate/core/language_detection/ngram_hash_ops_utils.cc | 1 +
1 file changed, 1 insertion(+)
diff --git a/components/translate/core/language_detection/ngram_hash_ops_utils.cc b/components/translate/core/language_detection/ngram_hash_ops_utils.cc
index cf91033..dd03a3d 100644
--- components/translate/core/language_detection/ngram_hash_ops_utils.cc
+++ components/translate/core/language_detection/ngram_hash_ops_utils.cc
@@ -4,6 +4,7 @@
#include "components/translate/core/language_detection/ngram_hash_ops_utils.h"
+#include <cstring>
#include <vector>
#include "third_party/utf/src/include/utf.h"
--
2.26.2

View file

@ -0,0 +1,28 @@
From b1669139f475ebe39ded6f7905f4c901f17eef83 Mon Sep 17 00:00:00 2001
From: Stephan Hartmann <stha09@googlemail.com>
Date: Wed, 24 Feb 2021 07:38:37 +0000
Subject: [PATCH] add missing static constexpr member definition
C++14 requires to definition of static constexpr members to
emit a linker symbol.
---
.../angle/src/libANGLE/renderer/glslang_wrapper_utils.cpp | 3 +++
1 file changed, 3 insertions(+)
diff --git a/third_party/angle/src/libANGLE/renderer/glslang_wrapper_utils.cpp b/third_party/angle/src/libANGLE/renderer/glslang_wrapper_utils.cpp
index 56b46e6..8f8158c 100644
--- third_party/angle/src/libANGLE/renderer/glslang_wrapper_utils.cpp
+++ third_party/angle/src/libANGLE/renderer/glslang_wrapper_utils.cpp
@@ -2069,6 +2069,9 @@ class SpirvTransformFeedbackCodeGenerator final : angle::NonCopyable
spirv::IdRef mTransformFeedbackExtensionPositionId;
};
+constexpr size_t SpirvTransformFeedbackCodeGenerator::kXfbDecorationCount;
+constexpr spv::Decoration SpirvTransformFeedbackCodeGenerator::kXfbDecorations[kXfbDecorationCount];
+
void SpirvTransformFeedbackCodeGenerator::visitVariable(const ShaderInterfaceVariableInfo &info,
gl::ShaderType shaderType,
const spirv::LiteralString &name,
--
2.26.2

View file

@ -0,0 +1,24 @@
From 980ae0fbe6d985efce517c8f6c9aa139b076322b Mon Sep 17 00:00:00 2001
From: Stephan Hartmann <stha09@googlemail.com>
Date: Sun, 28 Feb 2021 12:55:19 +0000
Subject: [PATCH] IWYU: add missing cstdint for uint32_t
---
.../translate/core/language_detection/quantization_utils.h | 1 +
1 file changed, 1 insertion(+)
diff --git a/components/translate/core/language_detection/quantization_utils.h b/components/translate/core/language_detection/quantization_utils.h
index eb8f6d1..699a488 100644
--- components/translate/core/language_detection/quantization_utils.h
+++ components/translate/core/language_detection/quantization_utils.h
@@ -7,6 +7,7 @@
#include <algorithm>
#include <cmath>
+#include <cstdint>
namespace translate {
--
2.26.2

View file

@ -0,0 +1,25 @@
--- base/check.h.orig 2021-04-15 19:44:05.656259734 -0400
+++ base/check.h 2021-04-15 19:44:13.386279197 -0400
@@ -85,7 +85,7 @@
// Stream for adding optional details to the error message.
std::ostream& stream();
- NOMERGE ~CheckError();
+ ~CheckError();
CheckError(const CheckError& other) = delete;
CheckError& operator=(const CheckError& other) = delete;
--- base/compiler_specific.h.orig 2021-04-15 19:44:28.781317968 -0400
+++ base/compiler_specific.h 2021-04-15 19:44:54.136381820 -0400
@@ -332,11 +332,4 @@
#endif // defined(__clang_analyzer__)
-// Use nomerge attribute to disable optimization of merging multiple same calls.
-#if defined(__clang__) && __has_attribute(nomerge) && !defined(OS_CHROMEOS)
-#define NOMERGE [[clang::nomerge]]
-#else
-#define NOMERGE
-#endif
-
#endif // BASE_COMPILER_SPECIFIC_H_

View file

@ -0,0 +1,24 @@
From 714092f336bb14d2fcc27396ec323b3d843bb962 Mon Sep 17 00:00:00 2001
From: Stephan Hartmann <stha09@googlemail.com>
Date: Thu, 4 Mar 2021 15:05:46 +0000
Subject: [PATCH] IWYU: include limits for std::numeric_limits
---
third_party/ruy/src/ruy/block_map.cc | 1 +
1 file changed, 1 insertion(+)
diff --git a/third_party/ruy/src/ruy/block_map.cc b/third_party/ruy/src/ruy/block_map.cc
index 44e5039..a7a7559 100644
--- third_party/ruy/src/ruy/block_map.cc
+++ third_party/ruy/src/ruy/block_map.cc
@@ -17,6 +17,7 @@ limitations under the License.
#include <algorithm>
#include <cstdint>
+#include <limits>
#ifdef RUY_MAKEBLOCKMAP_DEBUG
#include <cstdio>
--
2.26.2

View file

@ -195,21 +195,21 @@ index 6a1ec2389..f20c582dd 100644
#endif
diff --git sandbox/linux/seccomp-bpf-helpers/baseline_policy_unittest.cc sandbox/linux/seccomp-bpf-helpers/baseline_policy_unittest.cc
index 01c046dda..7e5a6be82 100644
--- sandbox/linux/seccomp-bpf-helpers/baseline_policy_unittest.cc
+++ sandbox/linux/seccomp-bpf-helpers/baseline_policy_unittest.cc
@@ -302,7 +302,7 @@ TEST_BASELINE_SIGSYS(__NR_sysinfo)
--- sandbox/linux/seccomp-bpf-helpers/baseline_policy_unittest.cc.orig 2021-04-15 13:11:10.481579470 -0400
+++ sandbox/linux/seccomp-bpf-helpers/baseline_policy_unittest.cc 2021-04-15 13:12:43.524831376 -0400
@@ -302,7 +302,7 @@
TEST_BASELINE_SIGSYS(__NR_syslog)
TEST_BASELINE_SIGSYS(__NR_timer_create)
-#if !defined(__aarch64__)
+#if !defined(__aarch64__) && !defined(__powerpc64__)
TEST_BASELINE_SIGSYS(__NR_eventfd)
TEST_BASELINE_SIGSYS(__NR_inotify_init)
TEST_BASELINE_SIGSYS(__NR_vserver)
#endif
diff --git sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
index 2a97d3916..8e81aa6cf 100644
--- sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
+++ sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
--- sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc.orig 2021-04-14 14:41:08.000000000 -0400
+++ sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc 2021-04-15 13:17:57.808715733 -0400
@@ -40,7 +40,8 @@
#include <sys/ptrace.h>
#if (defined(OS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)) && \
@ -232,7 +232,7 @@ index 2a97d3916..8e81aa6cf 100644
#if defined(OS_ANDROID)
#if !defined(F_DUPFD_CLOEXEC)
@@ -98,6 +104,15 @@ inline bool IsArchitectureMips() {
@@ -98,6 +104,15 @@
#endif
}
@ -248,7 +248,7 @@ index 2a97d3916..8e81aa6cf 100644
// Ubuntu's version of glibc has a race condition in sem_post that can cause
// it to call futex(2) with bogus op arguments. To workaround this, we need
// to allow those futex(2) calls to fail with EINVAL, instead of crashing the
@@ -239,6 +254,8 @@ ResultExpr RestrictFcntlCommands() {
@@ -239,6 +254,8 @@
uint64_t kOLargeFileFlag = O_LARGEFILE;
if (IsArchitectureX86_64() || IsArchitectureI386() || IsArchitectureMips())
kOLargeFileFlag = 0100000;
@ -257,12 +257,11 @@ index 2a97d3916..8e81aa6cf 100644
const Arg<int> cmd(1);
const Arg<long> long_arg(2);
@@ -253,14 +270,23 @@ ResultExpr RestrictFcntlCommands() {
@@ -256,7 +273,16 @@
F_SETLKW,
F_GETLK,
F_DUPFD,
- F_DUPFD_CLOEXEC),
- Allow())
+ F_DUPFD_CLOEXEC
+#if defined(__powerpc64__)
+// On PPC64, F_SETLK, F_GETLK, F_SETLKW are defined as the 64-bit variants
@ -272,11 +271,12 @@ index 2a97d3916..8e81aa6cf 100644
+ 6, /* F_SETLK (32) */
+ 7 /* F_SETLKW (32) */
+#endif
+ ),
+ Allow())
+ ),
Allow())
.Case(F_SETFL,
If((long_arg & ~kAllowedMask) == 0, Allow()).Else(CrashSIGSYS()))
.Default(CrashSIGSYS());
@@ -266,7 +292,7 @@
// clang-format on
}
-#if defined(__i386__) || defined(__mips__)
@ -284,7 +284,7 @@ index 2a97d3916..8e81aa6cf 100644
ResultExpr RestrictSocketcallCommand() {
// Unfortunately, we are unable to restrict the first parameter to
// socketpair(2). Whilst initially sounding bad, it's noteworthy that very
@@ -413,7 +439,7 @@ ResultExpr RestrictPtrace() {
@@ -419,7 +445,7 @@
#endif
return Switch(request)
.CASES((
@ -3379,17 +3379,16 @@ index c59cb0821..3060284a8 100644
"libdav1d/src/cdef_tmpl.c",
diff --git third_party/dav1d/generate_source.py third_party/dav1d/generate_source.py
index 9ab5e00b8..ad3feffee 100755
--- third_party/dav1d/generate_source.py
+++ third_party/dav1d/generate_source.py
@@ -50,7 +50,8 @@ def WriteGn(fd):
WriteArray(fd, "arm32_asm_sources", glob.glob("libdav1d/src/arm/32/*.S"))
WriteArray(fd, "arm64_asm_sources", glob.glob("libdav1d/src/arm/64/*.S"))
WriteArray(fd, "arm_template_sources", glob.glob("libdav1d/src/arm/*_tmpl.c"))
-
+ WriteArray(fd, "ppc64_template_sources", glob.glob("libdav1d/src/ppc/*_tmpl.c"))
+
template_sources = glob.glob("libdav1d/src/*_tmpl.c")
WriteArray(fd, "template_sources", template_sources)
--- third_party/dav1d/generate_source.py.orig 2021-04-15 13:11:10.489579490 -0400
+++ third_party/dav1d/generate_source.py 2021-04-15 13:19:08.229913892 -0400
@@ -57,6 +57,8 @@
_WriteArray(fd, "arm64_asm_sources", _Glob("libdav1d/src/arm/64/*.S"))
_WriteArray(fd, "arm_template_sources", _Glob("libdav1d/src/arm/*_tmpl.c"))
+ _WriteArray(fd, "ppc64_template_sources", glob.glob("libdav1d/src/ppc/*_tmpl.c"))
+
template_sources = _Glob("libdav1d/src/*_tmpl.c")
_WriteArray(fd, "template_sources", template_sources)
diff --git third_party/dav1d/libdav1d/src/ppc/types.h third_party/dav1d/libdav1d/src/ppc/types.h
index 0b4bd72f0..a0caa5e71 100644
@ -3415,6 +3414,44 @@ index 0b4bd72f0..a0caa5e71 100644
+#endif
+
#endif /* DAV1D_SRC_PPC_TYPES_H */
diff --git third_party/eigen3/BUILD.gn third_party/eigen3/BUILD.gn
index 0d4e184..f2ce484 100644
--- third_party/eigen3/BUILD.gn
+++ third_party/eigen3/BUILD.gn
@@ -22,4 +22,8 @@ config("eigen_includes") {
# for this component on Windows on Arm due to compilation errors.
defines += [ "EIGEN_DONT_VECTORIZE" ]
}
+
+ if (target_cpu == "ppc64") {
+ defines += [ "EIGEN_DONT_VECTORIZE" ]
+ }
}
diff --git third_party/libaom/BUILD.gn third_party/libaom/BUILD.gn
index 9b065bd..df3af02 100644
--- third_party/libaom/BUILD.gn
+++ third_party/libaom/BUILD.gn
@@ -36,6 +36,8 @@ if (enable_libaom) {
} else {
cpu_arch_full = "arm"
}
+ } else if (current_cpu == "ppc64") {
+ cpu_arch_full = "generic"
} else {
cpu_arch_full = current_cpu
}
diff --git third_party/libgav1/options.gni third_party/libgav1/options.gni
index 11af801..4b13d05 100644
--- third_party/libgav1/options.gni
+++ third_party/libgav1/options.gni
@@ -12,5 +12,5 @@ declare_args() {
is_chromeos_ash && (target_cpu == "arm" || target_cpu == "arm64")
use_libgav1_parser =
(is_chromeos || is_linux || is_win) &&
- (target_cpu == "x86" || target_cpu == "x64" || target_cpu == "arm64")
+ (target_cpu == "x86" || target_cpu == "x64" || target_cpu == "arm64" || target_cpu == "ppc64")
}
diff --git third_party/lss/linux_syscall_support.h third_party/lss/linux_syscall_support.h
index e4ac22644..1c57015db 100644
--- third_party/lss/linux_syscall_support.h
@ -3437,6 +3474,23 @@ index e4ac22644..1c57015db 100644
(defined(__s390__) && !defined(__s390x__))
/* On these architectures, implement mmap() with mmap2(). */
LSS_INLINE void* LSS_NAME(mmap)(void *s, size_t l, int p, int f, int d,
diff --git third_party/pdfium/third_party/libpng16/pngpriv.h third_party/pdfium/third_party/libpng16/pngpriv.h
index 583c26f..e03d697 100644
--- third_party/pdfium/third_party/libpng16/pngpriv.h
+++ third_party/pdfium/third_party/libpng16/pngpriv.h
@@ -196,11 +196,7 @@
#endif
#ifndef PNG_POWERPC_VSX_OPT
-# if defined(__PPC64__) && defined(__ALTIVEC__) && defined(__VSX__)
-# define PNG_POWERPC_VSX_OPT 2
-# else
-# define PNG_POWERPC_VSX_OPT 0
-# endif
+# define PNG_POWERPC_VSX_OPT 0
#endif
#ifndef PNG_INTEL_SSE_OPT
diff --git third_party/pffft/src/pffft.c third_party/pffft/src/pffft.c
index bdac4d784..51e0f2cac 100644
--- third_party/pffft/src/pffft.c

View file

@ -1,7 +1,7 @@
# Template file for 'chromium'
pkgname=chromium
# See http://www.chromium.org/developers/calendar for the latest version
version=89.0.4389.82
version=90.0.4430.72
revision=1
archs="i686* x86_64* aarch64* armv7l* ppc64le*"
short_desc="Google's attempt at creating a safer, faster, and more stable browser"
@ -9,7 +9,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
license="BSD-3-Clause"
homepage="https://www.chromium.org/"
distfiles="https://commondatastorage.googleapis.com/chromium-browser-official/${pkgname}-${version}.tar.xz"
checksum=df4914407b68afdc6449cb8e3f1b08d110eb8689ac41f86490e337fa4d1be379
checksum=a5cc88ca8fffac21ec4d1646980f698dfb6f388a225dd7a2c5a3d252a4098943
nocross=yes
lib32disabled=yes
@ -156,12 +156,6 @@ do_configure() {
third_party/libaddressinput/chromium/tools/update-strings.py
# Google API keys (see http://www.chromium.org/developers/how-tos/api-keys)
# Note: These are for Void Linux use ONLY.
conf+=(
'google_api_key="AIzaSyA9gWazKaHaNIPPg2hrMj6_ZSG8AFmq738"'
)
conf+=(
'enable_nacl=false'
'enable_nacl_nonsfi=false'