diff --git a/chromium-67.0.3396.62-boolfix.patch b/chromium-67.0.3396.62-boolfix.patch new file mode 100644 index 00000000..d0ed189c --- /dev/null +++ b/chromium-67.0.3396.62-boolfix.patch @@ -0,0 +1,36 @@ +diff -up chromium-67.0.3396.62/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix chromium-67.0.3396.62/mojo/public/cpp/bindings/associated_interface_ptr_info.h +--- chromium-67.0.3396.62/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix 2018-05-30 04:43:17.000000000 -0400 ++++ chromium-67.0.3396.62/mojo/public/cpp/bindings/associated_interface_ptr_info.h 2018-05-30 12:33:03.268912315 -0400 +@@ -45,7 +45,7 @@ class AssociatedInterfacePtrInfo { + + bool is_valid() const { return handle_.is_valid(); } + +- explicit operator bool() const { return handle_; } ++ explicit operator bool() const { return (bool) handle_; } + + ScopedInterfaceEndpointHandle PassHandle() { + return std::move(handle_); +diff -up chromium-67.0.3396.62/mojo/public/cpp/bindings/associated_interface_request.h.boolfix chromium-67.0.3396.62/mojo/public/cpp/bindings/associated_interface_request.h +--- chromium-67.0.3396.62/mojo/public/cpp/bindings/associated_interface_request.h.boolfix 2018-05-30 04:43:17.000000000 -0400 ++++ chromium-67.0.3396.62/mojo/public/cpp/bindings/associated_interface_request.h 2018-05-30 12:33:03.269912294 -0400 +@@ -50,7 +50,7 @@ class AssociatedInterfaceRequest { + // handle. + bool is_pending() const { return handle_.is_valid(); } + +- explicit operator bool() const { return handle_; } ++ explicit operator bool() const { return (bool) handle_; } + + ScopedInterfaceEndpointHandle PassHandle() { return std::move(handle_); } + +diff -up chromium-67.0.3396.62/mojo/public/cpp/bindings/interface_request.h.boolfix chromium-67.0.3396.62/mojo/public/cpp/bindings/interface_request.h +--- chromium-67.0.3396.62/mojo/public/cpp/bindings/interface_request.h.boolfix 2018-05-30 12:33:03.270912274 -0400 ++++ chromium-67.0.3396.62/mojo/public/cpp/bindings/interface_request.h 2018-05-30 12:34:05.156637922 -0400 +@@ -54,7 +54,7 @@ class InterfaceRequest { + // Indicates whether the request currently contains a valid message pipe. + bool is_pending() const { return handle_.is_valid(); } + +- explicit operator bool() const { return handle_.is_valid(); } ++ explicit operator bool() const { return (bool) handle_.is_valid(); } + + // Removes the message pipe from the request and returns it. + ScopedMessagePipeHandle PassMessagePipe() { return std::move(handle_); } diff --git a/chromium-67.0.3396.62-gcc5.patch b/chromium-67.0.3396.62-gcc5.patch new file mode 100644 index 00000000..ceef85d9 --- /dev/null +++ b/chromium-67.0.3396.62-gcc5.patch @@ -0,0 +1,12 @@ +diff -up chromium-67.0.3396.62/third_party/webgl/src/specs/latest/2.0/webgl2.idl.gcc5 chromium-67.0.3396.62/third_party/webgl/src/specs/latest/2.0/webgl2.idl +--- chromium-67.0.3396.62/third_party/webgl/src/specs/latest/2.0/webgl2.idl.gcc5 2018-05-30 04:44:33.000000000 -0400 ++++ chromium-67.0.3396.62/third_party/webgl/src/specs/latest/2.0/webgl2.idl 2018-05-30 11:59:26.218625660 -0400 +@@ -262,7 +262,7 @@ interface mixin WebGL2RenderingContextBa + const GLenum UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES = 0x8A43; + const GLenum UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER = 0x8A44; + const GLenum UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER = 0x8A46; +- const GLenum INVALID_INDEX = 0xFFFFFFFF; ++ const GLenum INVALID_INDEX = 256; + const GLenum MAX_VERTEX_OUTPUT_COMPONENTS = 0x9122; + const GLenum MAX_FRAGMENT_INPUT_COMPONENTS = 0x9125; + const GLenum MAX_SERVER_WAIT_TIMEOUT = 0x9111; diff --git a/chromium-67.0.3396.62-gn-system.patch b/chromium-67.0.3396.62-gn-system.patch new file mode 100644 index 00000000..4a08e94c --- /dev/null +++ b/chromium-67.0.3396.62-gn-system.patch @@ -0,0 +1,208 @@ +diff -up chromium-67.0.3396.62/build/linux/unbundle/libjpeg.gn.gnsystem chromium-67.0.3396.62/build/linux/unbundle/libjpeg.gn +diff -up chromium-67.0.3396.62/build/linux/unbundle/libusb.gn.gnsystem chromium-67.0.3396.62/build/linux/unbundle/libusb.gn +--- chromium-67.0.3396.62/build/linux/unbundle/libusb.gn.gnsystem 2018-05-30 12:18:36.949488683 -0400 ++++ chromium-67.0.3396.62/build/linux/unbundle/libusb.gn 2018-05-30 12:18:36.949488683 -0400 +@@ -0,0 +1,24 @@ ++# Copyright 2016 The Chromium Authors. All rights reserved. ++# Use of this source code is governed by a BSD-style license that can be ++# found in the LICENSE file. ++ ++import("//build/config/linux/pkg_config.gni") ++import("//build/shim_headers.gni") ++ ++pkg_config("system_libusb") { ++ packages = [ "libusb-1.0" ] ++} ++ ++shim_headers("libusb_shim") { ++ root_path = "src/libusb" ++ headers = [ ++ "libusb.h", ++ ] ++} ++ ++source_set("libusb") { ++ deps = [ ++ ":libusb_shim", ++ ] ++ public_configs = [ ":system_libusb" ] ++} +diff -up chromium-67.0.3396.62/build/linux/unbundle/opus.gn.gnsystem chromium-67.0.3396.62/build/linux/unbundle/opus.gn +--- chromium-67.0.3396.62/build/linux/unbundle/opus.gn.gnsystem 2018-05-30 04:43:03.000000000 -0400 ++++ chromium-67.0.3396.62/build/linux/unbundle/opus.gn 2018-05-30 12:18:36.950488661 -0400 +@@ -1,3 +1,164 @@ ++# Copyright 2016 The Chromium Authors. All rights reserved. ++# Use of this source code is governed by a BSD-style license that can be ++# found in the LICENSE file. ++ ++import("//build/config/linux/pkg_config.gni") ++import("//build/shim_headers.gni") ++import("//testing/test.gni") ++ ++pkg_config("system_opus") { ++ packages = [ "opus" ] ++} ++ ++shim_headers("opus_shim") { ++ root_path = "src/include" ++ headers = [ ++ "opus_custom.h", ++ "opus_defines.h", ++ "opus_multistream.h", ++ "opus_types.h", ++ "opus.h", ++ ] ++} ++ ++source_set("opus") { ++ deps = [ ++ ":opus_shim", ++ ] ++ public_configs = [ ":system_opus" ] ++} ++ ++config("opus_test_config") { ++ include_dirs = [ ++ "src/celt", ++ "src/silk", ++ ] ++ ++ if (is_win) { ++ defines = [ "inline=__inline" ] ++ } ++ if (is_android) { ++ libs = [ "log" ] ++ } ++ if (is_clang) { ++ cflags = [ "-Wno-absolute-value" ] ++ } ++} ++ ++executable("opus_compare") { ++ sources = [ ++ "src/src/opus_compare.c", ++ ] ++ ++ configs -= [ "//build/config/compiler:chromium_code" ] ++ configs += [ ++ "//build/config/compiler:no_chromium_code", ++ ":opus_test_config", ++ ] ++ ++ deps = [ ++ ":opus", ++ "//build/config/sanitizers:deps", ++ "//build/win:default_exe_manifest", ++ ] ++} ++ ++executable("opus_demo") { ++ sources = [ ++ "src/src/opus_demo.c", ++ ] ++ ++ configs -= [ "//build/config/compiler:chromium_code" ] ++ configs += [ ++ "//build/config/compiler:no_chromium_code", ++ ":opus_test_config", ++ ] ++ ++ deps = [ ++ ":opus", ++ "//build/config/sanitizers:deps", ++ "//build/win:default_exe_manifest", ++ ] ++} ++ ++test("test_opus_api") { ++ sources = [ ++ "src/tests/test_opus_api.c", ++ ] ++ ++ configs -= [ "//build/config/compiler:chromium_code" ] ++ configs += [ ++ "//build/config/compiler:no_chromium_code", ++ ":opus_test_config", ++ ] ++ ++ deps = [ ++ ":opus", ++ ] ++} ++ ++test("test_opus_encode") { ++ sources = [ ++ "src/tests/test_opus_encode.c", ++ ] ++ ++ configs -= [ "//build/config/compiler:chromium_code" ] ++ configs += [ ++ "//build/config/compiler:no_chromium_code", ++ ":opus_test_config", ++ ] ++ ++ deps = [ ++ ":opus", ++ ] ++} ++ ++# GN orders flags on a target before flags from configs. The default config ++# adds -Wall, and this flag have to be after -Wall -- so they need to ++# come from a config and can't be on the target directly. ++config("test_opus_decode_config") { ++ # test_opus_decode passes a null pointer to opus_decode() for an argument ++ # marked as requiring a non-null value by the nonnull function attribute, ++ # and expects opus_decode() to fail. Disable the -Wnonnull option to avoid ++ # a compilation error if -Werror is specified. ++ if (is_posix) { ++ cflags = [ "-Wno-nonnull" ] ++ } ++} ++ ++test("test_opus_decode") { ++ sources = [ ++ "src/tests/test_opus_decode.c", ++ ] ++ ++ configs -= [ "//build/config/compiler:chromium_code" ] ++ configs += [ ++ "//build/config/compiler:no_chromium_code", ++ ":opus_test_config", ++ ":test_opus_decode_config", ++ ] ++ ++ deps = [ ++ ":opus", ++ ] ++} ++ ++test("test_opus_padding") { ++ sources = [ ++ "src/tests/test_opus_padding.c", ++ ] ++ ++ configs -= [ "//build/config/compiler:chromium_code" ] ++ configs += [ ++ "//build/config/compiler:no_chromium_code", ++ ":opus_test_config", ++ ] ++ ++ deps = [ ++ ":opus", ++ ] ++} ++ + # Copyright 2017 The Chromium Authors. All rights reserved. + # Use of this source code is governed by a BSD-style license that can be + # found in the LICENSE file. +diff -up chromium-67.0.3396.62/build/linux/unbundle/replace_gn_files.py.gnsystem chromium-67.0.3396.62/build/linux/unbundle/replace_gn_files.py +--- chromium-67.0.3396.62/build/linux/unbundle/replace_gn_files.py.gnsystem 2018-05-30 12:18:36.951488638 -0400 ++++ chromium-67.0.3396.62/build/linux/unbundle/replace_gn_files.py 2018-05-30 12:20:02.542534270 -0400 +@@ -27,6 +27,7 @@ REPLACEMENTS = { + 'libevent': 'base/third_party/libevent/BUILD.gn', + 'libjpeg': 'third_party/libjpeg.gni', + 'libpng': 'third_party/libpng/BUILD.gn', ++ 'libusb': 'third_party/libusb/BUILD.gn', + 'libvpx': 'third_party/libvpx/BUILD.gn', + 'libwebp': 'third_party/libwebp/BUILD.gn', + 'libxml': 'third_party/libxml/BUILD.gn', diff --git a/chromium-67.0.3396.62-skia-aarch64-buildfix.patch b/chromium-67.0.3396.62-skia-aarch64-buildfix.patch new file mode 100644 index 00000000..6b37b08a --- /dev/null +++ b/chromium-67.0.3396.62-skia-aarch64-buildfix.patch @@ -0,0 +1,21 @@ +diff -up chromium-67.0.3396.62/third_party/skia/src/opts/SkRasterPipeline_opts.h.aarch64fix chromium-67.0.3396.62/third_party/skia/src/opts/SkRasterPipeline_opts.h +--- chromium-67.0.3396.62/third_party/skia/src/opts/SkRasterPipeline_opts.h.aarch64fix 2018-05-30 12:38:06.131467092 -0400 ++++ chromium-67.0.3396.62/third_party/skia/src/opts/SkRasterPipeline_opts.h 2018-05-30 12:38:39.861734819 -0400 +@@ -653,7 +653,7 @@ SI F approx_powf(F x, F y) { + } + + SI F from_half(U16 h) { +-#if defined(__aarch64__) && !defined(SK_BUILD_FOR_GOOGLE3) // Temporary workaround for some Google3 builds. ++#if defined(JUMPER_IS_NEON) && defined(__aarch64__) && !defined(SK_BUILD_FOR_GOOGLE3) // Temporary workaround for some Google3 builds. + return vcvt_f32_f16(h); + + #elif defined(JUMPER_IS_HSW) || defined(JUMPER_IS_AVX512) +@@ -673,7 +673,7 @@ SI F from_half(U16 h) { + } + + SI U16 to_half(F f) { +-#if defined(__aarch64__) && !defined(SK_BUILD_FOR_GOOGLE3) // Temporary workaround for some Google3 builds. ++#if defined(JUMPER_IS_NEON) && defined(__aarch64__) && !defined(SK_BUILD_FOR_GOOGLE3) // Temporary workaround for some Google3 builds. + return vcvt_f16_f32(f); + + #elif defined(JUMPER_IS_HSW) || defined(JUMPER_IS_AVX512)