From f66ad8517046c77404cdc236dc5fafc0e7ca00c0 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 19 Jul 2016 14:10:57 -0400 Subject: [PATCH 0001/1449] HONK HONK! TRUCK FULL OF RADIOACTIVE WASTE AND ZOMBIE BITS COMING THROUGH --- .gitignore | 3 + chrome-remote-desktop.service | 12 + chromium-45.0.2454.101-linux-path-max.patch | 44 + chromium-46.0.2490.71-gcc5.patch | 354 ++++ chromium-46.0.2490.71-notest.patch | 11 + chromium-46.0.2490.86-use_system_opus.patch | 12 + ...526.80-nacl-ignore-broken-fd-counter.patch | 27 + ...m-47.0.2526.80-pnacl-fgnu-inline-asm.patch | 11 + chromium-48.0.2564.103-gcc6.patch | 204 ++ ...4.116-libusb_interrupt_event_handler.patch | 15 + chromium-50.0.2661.86-addrfix.patch | 11 + chromium-50.0.2661.94-unbundle-re2-fix.patch | 12 + ...52.0.2723.2-PNGImageDecoder-fix-cast.patch | 12 + chromium-52.0.2723.2-sync_link_zlib.patch | 11 + ...-54-does-not-have-detectHostTimeZone.patch | 12 + ...mium-52.0.2723.2-use_system_harfbuzz.patch | 12 + chromium-browser.desktop | 140 ++ chromium-browser.sh | 57 + chromium-browser.xml | 18 + chromium-latest.py | 337 ++++ chromium.spec | 1663 +++++++++++++++++ clean_ffmpeg.sh | 212 +++ get_free_ffmpeg_source_files.py | 73 + get_linux_tests_names.py | 121 ++ sources | 3 + 25 files changed, 3387 insertions(+) create mode 100644 chrome-remote-desktop.service create mode 100644 chromium-45.0.2454.101-linux-path-max.patch create mode 100644 chromium-46.0.2490.71-gcc5.patch create mode 100644 chromium-46.0.2490.71-notest.patch create mode 100644 chromium-46.0.2490.86-use_system_opus.patch create mode 100644 chromium-47.0.2526.80-nacl-ignore-broken-fd-counter.patch create mode 100644 chromium-47.0.2526.80-pnacl-fgnu-inline-asm.patch create mode 100644 chromium-48.0.2564.103-gcc6.patch create mode 100644 chromium-48.0.2564.116-libusb_interrupt_event_handler.patch create mode 100644 chromium-50.0.2661.86-addrfix.patch create mode 100644 chromium-50.0.2661.94-unbundle-re2-fix.patch create mode 100644 chromium-52.0.2723.2-PNGImageDecoder-fix-cast.patch create mode 100644 chromium-52.0.2723.2-sync_link_zlib.patch create mode 100644 chromium-52.0.2723.2-system-icu-54-does-not-have-detectHostTimeZone.patch create mode 100644 chromium-52.0.2723.2-use_system_harfbuzz.patch create mode 100644 chromium-browser.desktop create mode 100755 chromium-browser.sh create mode 100644 chromium-browser.xml create mode 100755 chromium-latest.py create mode 100644 chromium.spec create mode 100755 clean_ffmpeg.sh create mode 100755 get_free_ffmpeg_source_files.py create mode 100755 get_linux_tests_names.py diff --git a/.gitignore b/.gitignore index e69de29..ab677cd 100644 --- a/.gitignore +++ b/.gitignore @@ -0,0 +1,3 @@ +/chromium-52.0.2743.75-clean.tar.xz +/depot_tools.git-master.tar.gz +/policy_templates.zip diff --git a/chrome-remote-desktop.service b/chrome-remote-desktop.service new file mode 100644 index 0000000..5889bc7 --- /dev/null +++ b/chrome-remote-desktop.service @@ -0,0 +1,12 @@ +[Unit] +Description="Chrome Remote Desktop host daemon" + +[Service] +ExecStart=@@CRD_PATH@@/chrome-remote-desktop --start --foreground +ExecStop=@@CRD_PATH@@/chrome-remote-desktop --stop +ExecReload=@@CRD_PATH@@/chrome-remote-desktop --reload +Restart=always +TimeoutStopSec=10 + +[Install] +WantedBy=multi-user.target diff --git a/chromium-45.0.2454.101-linux-path-max.patch b/chromium-45.0.2454.101-linux-path-max.patch new file mode 100644 index 0000000..3146349 --- /dev/null +++ b/chromium-45.0.2454.101-linux-path-max.patch @@ -0,0 +1,44 @@ +diff -up chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/path.h.pathmax chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/path.h +--- chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/path.h.pathmax 2015-10-07 11:26:11.813477839 -0400 ++++ chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/path.h 2015-10-07 11:26:40.845845054 -0400 +@@ -12,6 +12,11 @@ + + #include "sdk_util/macros.h" + ++/* Needed for PATH_MAX */ ++#ifndef PATH_MAX ++#define PATH_MAX 4096 ++#endif ++ + namespace nacl_io { + + class Path { +diff -up chromium-45.0.2454.101/native_client/src/untrusted/nacl/getcwd.c.pathmax chromium-45.0.2454.101/native_client/src/untrusted/nacl/getcwd.c +--- chromium-45.0.2454.101/native_client/src/untrusted/nacl/getcwd.c.pathmax 2015-08-22 15:02:08.000000000 -0400 ++++ chromium-45.0.2454.101/native_client/src/untrusted/nacl/getcwd.c 2015-10-07 10:58:56.172018783 -0400 +@@ -11,6 +11,10 @@ + + #include + #include ++/* Needed for PATH_MAX */ ++#ifndef PATH_MAX ++#define PATH_MAX 4096 ++#endif + #include + #include + #include +diff -up chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/syscalls/realpath.c.pathmax chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/syscalls/realpath.c +--- chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/syscalls/realpath.c.pathmax 2015-10-09 10:57:38.424348662 -0400 ++++ chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/syscalls/realpath.c 2015-10-09 10:57:51.541059938 -0400 +@@ -13,6 +13,11 @@ + + #include "sdk_util/macros.h" + ++/* Needed for PATH_MAX */ ++#ifndef PATH_MAX ++#define PATH_MAX 4096 ++#endif ++ + EXTERN_C_BEGIN + + #if defined(__native_client__) diff --git a/chromium-46.0.2490.71-gcc5.patch b/chromium-46.0.2490.71-gcc5.patch new file mode 100644 index 0000000..02ae2d6 --- /dev/null +++ b/chromium-46.0.2490.71-gcc5.patch @@ -0,0 +1,354 @@ +diff -up chromium-46.0.2490.71/third_party/cld_2/src/internal/cld_generated_cjk_uni_prop_80.cc.gcc5 chromium-46.0.2490.71/third_party/cld_2/src/internal/cld_generated_cjk_uni_prop_80.cc +--- chromium-46.0.2490.71/third_party/cld_2/src/internal/cld_generated_cjk_uni_prop_80.cc.gcc5 2015-10-06 22:42:52.000000000 -0400 ++++ chromium-46.0.2490.71/third_party/cld_2/src/internal/cld_generated_cjk_uni_prop_80.cc 2015-10-15 23:42:00.645518701 -0400 +@@ -165,8 +165,8 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + // state[16 + 2] 0x000000 Byte 2 of 3 (relative offsets) + X__,X__,X__,X__,X__,X__,X__,X__, X__,X__,X__,X__,X__,X__,X__,X__, + X__,X__,X__,X__,X__,X__,X__,X__, X__,X__,X__,X__,X__,X__,X__,X__, +--14,-14,-14,-14,-14,-14,-14,-14, -14,-14,-14,-14,-14,-14,-14,-14, +--14,-14,-14,-14,-14,-14,-14,-14, -14,-14,-14,-14,-14,-14,-14,-14, ++(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14, (uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14, ++(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14, (uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14, + + // state[17 + 2] 0x0031c0 Byte 3 of 3 (property) + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, +@@ -259,10 +259,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 229,229,229, 3,208, 0,229, 5, 233, 0,229,229,229,208,229,229, + + // state[32 + 2] 0x002000 Byte 2 of 3 (relative offsets) +--30,-30,-30,-30,-30,-30,-30,-30, -30,-30,-30,-30,-30,-30,-30,-30, +--30,-30,-30,-30,-30,-30,-30,-30, -30,-30,-30,-30,-30,-30,-30,-30, +--30,-30,-30,-30,-30,-30,-30,-30, -30,-30,-30,-30,-30,-30,-30,-30, +--30,-30,-30,-30,-30,-30,-30,-30, -30,-30,-30,-30,-30,-30,-30,-30, ++(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, (uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, ++(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, (uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, ++(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, (uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, ++(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, (uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, + + // state[33 + 2] 0x003780 Byte 3 of 3 (property) + 229,208,229,229,208,229,229,229, 208,208,208,208,208, 4, 6,208, +@@ -355,10 +355,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 228,229,229,229,229,233,233, 6, 208,229, 3,229,233, 6, 6, 0, + + // state[48 + 2] 0x001000 Byte 2 of 3 (relative offsets) +--46,-46,-46,-46,-42,-41,-40,-39, -46,-46,-46,-46,-46,-46,-46,-46, +--46,-46,-46,-46,-46,-46,-46,-46, -46,-46,-46,-46,-46,-46,-46,-46, +--46,-46,-46,-46,-46,-46,-46,-46, -46,-46,-46,-46,-46,-46,-46,-46, +--46,-46,-46,-46,-46,-46,-46,-46, -46,-46,-46,-46,-46,-46,-46,-46, ++(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-42,(uint8)-41,(uint8)-40,(uint8)-39, (uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, ++(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, (uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, ++(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, (uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, ++(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, (uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, + + // state[49 + 2] 0x003b40 Byte 3 of 3 (property) + 6,227,208,233,208, 3, 3,208, 208,229, 0,229,233,219, 0, 6, +@@ -451,10 +451,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 229,208,208,208,217,208,229,229, 229,229,208,217,208,229,229,229, + + // state[64 + 2] 0x003000 Byte 2 of 3 (relative offsets) +--54,-53,-52,-51,-50,-58,-49,-47, -62,-62,-62,-62,-62,-62,-62,-62, +--46,-45,-44,-43,-42,-41,-40,-39, -38,-37,-36,-35,-34,-33,-31,-30, +--29,-28,-27,-26,-25,-24,-23,-22, -21,-20,-19,-18,-17,-15,-14,-13, +--12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, ++(uint8)-54,(uint8)-53,(uint8)-52,(uint8)-51,(uint8)-50,(uint8)-58,(uint8)-49,(uint8)-47, (uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62, ++(uint8)-46,(uint8)-45,(uint8)-44,(uint8)-43,(uint8)-42,(uint8)-41,(uint8)-40,(uint8)-39, (uint8)-38,(uint8)-37,(uint8)-36,(uint8)-35,(uint8)-34,(uint8)-33,(uint8)-31,(uint8)-30, ++(uint8)-29,(uint8)-28,(uint8)-27,(uint8)-26,(uint8)-25,(uint8)-24,(uint8)-23,(uint8)-22, (uint8)-21,(uint8)-20,(uint8)-19,(uint8)-18,(uint8)-17,(uint8)-15,(uint8)-14,(uint8)-13, ++(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, + + // state[65 + 2] 0x003f00 Byte 3 of 3 (property) + 217,217,208, 3,208,217,208,208, 6,229,208,228,229,229,208,229, +@@ -547,10 +547,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 229,208,229,229,208,229,233, 0, 208,208,229,208,227,229,229,229, + + // state[80 + 2] 0x004000 Byte 2 of 3 (relative offsets) +--11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, ++(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, + 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, +- 38, 39, 40, 41, 42, 43, 44,-78, 45, 46, 47, 48, 49, 50, 51, 52, ++ 38, 39, 40, 41, 42, 43, 44,(uint8)-78, 45, 46, 47, 48, 49, 50, 51, 52, + + // state[81 + 2] 0x0042c0 Byte 3 of 3 (property) + 229, 0,229,229,229, 3, 4, 4, 229,229,229,229,208,229, 0,208, +@@ -931,7 +931,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 0,142, 98, 28,117,206,212,212, 220, 15, 0,231,199,231,111, 28, + + // state[144 + 2] 0x005000 Byte 2 of 3 (relative offsets) +--11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, ++(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, + 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, + 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, +@@ -1315,7 +1315,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 16, 15,211,118, 0,231, 68,231, 0, 99,161, 0,115,221,144,140, + + // state[208 + 2] 0x006000 Byte 2 of 3 (relative offsets) +--10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, ++(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, + 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, + 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, +@@ -1699,7 +1699,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 119, 16, 51, 0, 0, 68,136, 72, 144,118, 87,201,191,136, 78,233, + + // state[272 + 2] 0x007000 Byte 2 of 3 (relative offsets) +- -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, ++ (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, + 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, + 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, + 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, +@@ -2083,7 +2083,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 212,212, 0,126,140,220,220, 0, 0, 0,127,118,106, 0,199, 0, + + // state[336 + 2] 0x008000 Byte 2 of 3 (relative offsets) +- -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, 8, ++ (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, + 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, + 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, +@@ -2467,7 +2467,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 0,122, 0,231,100,232, 0, 0, 117, 0,206,231, 0, 0,231, 0, + + // state[400 + 2] 0x009000 Byte 2 of 3 (relative offsets) +- -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, 8, 9, ++ (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, 9, + 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, + 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, + 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, +@@ -2851,10 +2851,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + + // state[464 + 2] 0x00a000 Byte 2 of 3 (relative offsets) +- -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, +- -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, +- -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, +- -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, ++ (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, ++ (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, ++ (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, ++ (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, + + // state[465 + 2] 0x000080 Byte 2 of 2 (property) + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, +@@ -2947,10 +2947,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 208,208,208,208, 5, 6,208, 2, 0, 6, 6, 5,208,208,208, 6, + + // state[480 + 2] 0x00b000 Byte 2 of 3 (relative offsets) +--20,-20,-20,-20,-20,-20,-20,-20, -20,-20,-20,-20,-20,-20,-20,-20, +--20,-20,-20,-20,-20,-20,-20,-20, -20,-20,-20,-20,-20,-20,-20,-20, +--20,-20,-20,-20,-20,-20,-20,-20, -20,-20,-20,-20,-20,-20,-20,-20, +--20,-20,-20,-20,-20,-20,-20,-20, -20,-20,-20,-20,-20,-20,-20,-20, ++(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, (uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, ++(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, (uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, ++(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, (uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, ++(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, (uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, + + // state[481 + 2] 0x020100 Byte 4 of 4 (property) + 2, 6, 5, 6, 5,229, 5,208, 208,208,208,208,208,208,208,229, +@@ -3043,10 +3043,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 208,208, 5, 5, 5,208,208, 2, 229, 5, 5, 5, 5, 5, 6,208, + + // state[496 + 2] 0x00d000 Byte 2 of 3 (relative offsets) +--35,-35,-35,-35,-35,-35,-35,-35, -35,-35,-35,-35,-35,-35,-35,-35, +--35,-35,-35,-35,-35,-35,-35,-35, -35,-35,-35,-35,-35,-35,-34,-33, +--33,-33,-33,-33,-33,-33,-33,-33, -33,-33,-33,-33,-33,-33,-33,-33, +--33,-33,-33,-33,-33,-33,-33,-33, -33,-33,-33,-33,-33,-33,-33,-33, ++(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35, (uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35, ++(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35, (uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-34,(uint8)-33, ++(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33, (uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33, ++(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33, (uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33, + + // state[497 + 2] 0x0204c0 Byte 4 of 4 (property) + 2, 2, 5, 5, 5, 2,208, 2, 5, 5, 6,208,208, 5, 5, 5, +@@ -3139,10 +3139,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 208,208, 5, 5, 5, 5, 6, 6, 208,208, 2,208,208,208,208,208, + + // state[512 + 2] 0x00f000 Byte 2 of 3 (relative offsets) +--47,-47,-47,-47,-47,-47,-47,-47, -47,-47,-47,-47,-47,-47,-47,-47, +--47,-47,-47,-47,-47,-47,-47,-47, -47,-47,-47,-47,-47,-47,-47,-47, +--47,-47,-47,-47,-46,-45,-44,-43, -42,-41,-44,-40,-47,-47,-47,-47, +--47,-47,-47,-47,-47,-47,-47,-47, -47,-47,-47,-47,-47,-39,-38,-37, ++(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, (uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, ++(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, (uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, ++(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-46,(uint8)-45,(uint8)-44,(uint8)-43, (uint8)-42,(uint8)-41,(uint8)-44,(uint8)-40,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, ++(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, (uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-39,(uint8)-38,(uint8)-37, + + // state[513 + 2] 0x020880 Byte 4 of 4 (property) + 5, 5, 5, 6,208,208,208,208, 208,208, 5, 5, 6, 6,208,208, +@@ -3235,10 +3235,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 5, 6,208,218,208,208,208,218, 208, 6,227,229, 6, 6, 6,208, + + // state[528 + 2] 0x020000 Byte 3 of 4 (relative offsets) +--52,-51,-50,-49,-47,-46,-45,-44, -43,-42,-41,-40,-39,-38,-37,-36, +--35,-34,-33,-31,-30,-29,-28,-27, -26,-25,-24,-23,-22,-21,-20,-19, +--18,-17,-15,-14,-13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, +- -1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, ++(uint8)-52,(uint8)-51,(uint8)-50,(uint8)-49,(uint8)-47,(uint8)-46,(uint8)-45,(uint8)-44, (uint8)-43,(uint8)-42,(uint8)-41,(uint8)-40,(uint8)-39,(uint8)-38,(uint8)-37,(uint8)-36, ++(uint8)-35,(uint8)-34,(uint8)-33,(uint8)-31,(uint8)-30,(uint8)-29,(uint8)-28,(uint8)-27, (uint8)-26,(uint8)-25,(uint8)-24,(uint8)-23,(uint8)-22,(uint8)-21,(uint8)-20,(uint8)-19, ++(uint8)-18,(uint8)-17,(uint8)-15,(uint8)-14,(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, ++ (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, + + // state[529 + 2] 0x020c40 Byte 4 of 4 (property) + 227, 5, 5, 5, 2, 2, 2, 2, 213, 2, 2, 2, 2, 2,208, 6, +@@ -3427,7 +3427,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 208,208,208,208,208,208,208,208, 208, 6, 6, 6, 6, 2, 5, 5, + + // state[560 + 2] 0x021000 Byte 3 of 4 (relative offsets) +--16,-15,-14,-13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, ++(uint8)-16,(uint8)-15,(uint8)-14,(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, + 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, + 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, + 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, +@@ -3811,7 +3811,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 5, 5, 5, 6, 6, 6, 5,208, 208,229,208,208, 5, 5, 5, 5, + + // state[624 + 2] 0x022000 Byte 3 of 4 (relative offsets) +--15,-14,-13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, ++(uint8)-15,(uint8)-14,(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, + 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, + 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, + 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, +@@ -4195,7 +4195,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 6, 6, 4, 5,208,208,208,208, 208,208,229, 6, 5, 6, 6, 6, + + // state[688 + 2] 0x023000 Byte 3 of 4 (relative offsets) +--14,-13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, ++(uint8)-14,(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, + 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, + 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, + 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, +@@ -4579,7 +4579,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 5, 5, 5, 5, 5, 5, 5, 6, 208,208,208,208,208,208, 6, 6, + + // state[752 + 2] 0x024000 Byte 3 of 4 (relative offsets) +--13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, ++(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, + 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, + 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, +@@ -4963,7 +4963,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 229, 6, 2, 2, 2, 2, 2, 2, 2, 2, 2, 5, 2, 2, 6,229, + + // state[816 + 2] 0x025000 Byte 3 of 4 (relative offsets) +--12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, ++(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, + 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, + 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, + 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, +@@ -5347,7 +5347,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 6, 6, 6, 5, 5, 5, 5, 6, 6, 6, 3, 6,229,208,208,229, + + // state[880 + 2] 0x026000 Byte 3 of 4 (relative offsets) +--11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, ++(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, + 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, + 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, +@@ -5731,7 +5731,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 208, 6, 6,208,208,208,208,208, 6, 6, 6,216, 5, 5, 5, 5, + + // state[944 + 2] 0x027000 Byte 3 of 4 (relative offsets) +--10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, ++(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, + 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, + 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, +@@ -6115,7 +6115,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 5, 5, 5, 6,208,208, 6, 6, 208,229,208,208,208, 5, 5, 5, + + // state[1008 + 2] 0x028000 Byte 3 of 4 (relative offsets) +- -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, ++ (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, + 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, + 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, + 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, +@@ -6499,7 +6499,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 208,208, 5, 5, 6,208,208, 5, 208,208,208, 6,208, 6,208,208, + + // state[1072 + 2] 0x029000 Byte 3 of 4 (relative offsets) +- -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, 8, ++ (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, + 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, + 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, +@@ -6883,7 +6883,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 229,229,229,229,208,208,208,229, 208,208,208,229, 0,229,208,208, + + // state[1136 + 2] 0x02a000 Byte 3 of 4 (relative offsets) +- -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, 8, 9, ++ (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, 9, + 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 22, 22, 22, + 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, + 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, +@@ -7075,10 +7075,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, + + // state[1168 + 2] 0x02f000 Byte 3 of 4 (relative offsets) +- -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, +- -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, +- -8, -7, -6, -5, -4, -3, -2, -1, 1, -9, -9, -9, -9, -9, -9, -9, +- -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, ++ (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, ++ (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, ++ (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, ++ (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, + + // state[1169 + 2] 0x02fa00 Byte 4 of 4 (property) + 217, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,217, 5, 5, +diff -up chromium-46.0.2490.71/third_party/webgl/src/specs/latest/2.0/webgl2.idl.gcc5 chromium-46.0.2490.71/third_party/webgl/src/specs/latest/2.0/webgl2.idl +--- chromium-46.0.2490.71/third_party/webgl/src/specs/latest/2.0/webgl2.idl.gcc5 2015-10-13 15:04:44.000000000 -0400 ++++ chromium-46.0.2490.71/third_party/webgl/src/specs/latest/2.0/webgl2.idl 2015-10-16 00:54:16.603896492 -0400 +@@ -261,7 +261,7 @@ interface WebGL2RenderingContextBase + 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 -up chromium-46.0.2490.71/third_party/WebKit/Source/core/dom/NodeFilter.h.gcc5 chromium-46.0.2490.71/third_party/WebKit/Source/core/dom/NodeFilter.h +--- chromium-46.0.2490.71/third_party/WebKit/Source/core/dom/NodeFilter.h.gcc5 2015-10-06 22:42:25.000000000 -0400 ++++ chromium-46.0.2490.71/third_party/WebKit/Source/core/dom/NodeFilter.h 2015-10-15 23:42:00.651518569 -0400 +@@ -52,7 +52,7 @@ public: + * to the value of NodeType for the equivalent node type. + */ + enum { +- SHOW_ALL = 0xFFFFFFFF, ++ SHOW_ALL = 256 /* 0xFFFFFFFF */, + SHOW_ELEMENT = 0x00000001, + SHOW_ATTRIBUTE = 0x00000002, + SHOW_TEXT = 0x00000004, +diff -up chromium-46.0.2490.71/third_party/WebKit/Source/core/dom/NodeFilter.idl.gcc5 chromium-46.0.2490.71/third_party/WebKit/Source/core/dom/NodeFilter.idl +--- chromium-46.0.2490.71/third_party/WebKit/Source/core/dom/NodeFilter.idl.gcc5 2015-10-06 22:42:25.000000000 -0400 ++++ chromium-46.0.2490.71/third_party/WebKit/Source/core/dom/NodeFilter.idl 2015-10-15 23:42:00.653518525 -0400 +@@ -31,7 +31,7 @@ + const unsigned short FILTER_SKIP = 3; + + // Constants for whatToShow +- const unsigned long SHOW_ALL = 0xFFFFFFFF; ++ const unsigned long SHOW_ALL = 256; // 0xFFFFFFFF + const unsigned long SHOW_ELEMENT = 0x1; + const unsigned long SHOW_ATTRIBUTE = 0x2; // historical + const unsigned long SHOW_TEXT = 0x4; +diff -up chromium-46.0.2490.71/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl.gcc5 chromium-46.0.2490.71/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl +--- chromium-46.0.2490.71/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl.gcc5 2015-10-13 15:04:34.000000000 -0400 ++++ chromium-46.0.2490.71/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl 2015-10-16 00:54:52.061105191 -0400 +@@ -254,7 +254,7 @@ typedef long long GLint64; + 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; +@@ -297,7 +297,7 @@ typedef long long GLint64; + const GLenum MAX_ELEMENT_INDEX = 0x8D6B; + const GLenum NUM_SAMPLE_COUNTS = 0x9380; + const GLenum TEXTURE_IMMUTABLE_LEVELS = 0x82DF; +- const GLint TIMEOUT_IGNORED = -1; ++ const GLint TIMEOUT_IGNORED = 256; + + /* WebGL-specific enums */ + const GLenum MAX_CLIENT_WAIT_TIMEOUT_WEBGL = 0x9247; diff --git a/chromium-46.0.2490.71-notest.patch b/chromium-46.0.2490.71-notest.patch new file mode 100644 index 0000000..e4e3448 --- /dev/null +++ b/chromium-46.0.2490.71-notest.patch @@ -0,0 +1,11 @@ +diff -up chromium-46.0.2490.71/chrome/test/data/webui_test_resources.grd.notest chromium-46.0.2490.71/chrome/test/data/webui_test_resources.grd +--- chromium-46.0.2490.71/chrome/test/data/webui_test_resources.grd.notest 2015-10-16 02:01:56.644149741 -0400 ++++ chromium-46.0.2490.71/chrome/test/data/webui_test_resources.grd 2015-10-16 02:02:36.217285227 -0400 +@@ -8,7 +8,6 @@ + + + +- + + + diff --git a/chromium-46.0.2490.86-use_system_opus.patch b/chromium-46.0.2490.86-use_system_opus.patch new file mode 100644 index 0000000..d54938b --- /dev/null +++ b/chromium-46.0.2490.86-use_system_opus.patch @@ -0,0 +1,12 @@ +diff -up chromium-46.0.2490.86/media/cast/receiver/audio_decoder_unittest.cc.use_system_opus chromium-46.0.2490.86/media/cast/receiver/audio_decoder_unittest.cc +--- chromium-46.0.2490.86/media/cast/receiver/audio_decoder_unittest.cc.use_system_opus 2015-10-07 04:42:12.000000000 +0200 ++++ chromium-46.0.2490.86/media/cast/receiver/audio_decoder_unittest.cc 2015-11-11 16:11:13.535250609 +0100 +@@ -13,7 +13,7 @@ + #include "media/cast/test/utility/audio_utility.h" + #include "media/cast/test/utility/standalone_cast_environment.h" + #include "testing/gtest/include/gtest/gtest.h" +-#include "third_party/opus/src/include/opus.h" ++#include + + namespace media { + namespace cast { diff --git a/chromium-47.0.2526.80-nacl-ignore-broken-fd-counter.patch b/chromium-47.0.2526.80-nacl-ignore-broken-fd-counter.patch new file mode 100644 index 0000000..c422957 --- /dev/null +++ b/chromium-47.0.2526.80-nacl-ignore-broken-fd-counter.patch @@ -0,0 +1,27 @@ +diff -up chromium-47.0.2526.80/components/nacl/loader/sandbox_linux/nacl_sandbox_linux.cc.ignore-fd-count chromium-47.0.2526.80/components/nacl/loader/sandbox_linux/nacl_sandbox_linux.cc +--- chromium-47.0.2526.80/components/nacl/loader/sandbox_linux/nacl_sandbox_linux.cc.ignore-fd-count 2015-12-15 14:48:07.119011866 -0500 ++++ chromium-47.0.2526.80/components/nacl/loader/sandbox_linux/nacl_sandbox_linux.cc 2015-12-15 14:48:14.151850055 -0500 +@@ -153,6 +153,14 @@ void NaClSandbox::InitializeLayerOneSand + } + + void NaClSandbox::CheckForExpectedNumberOfOpenFds() { ++ // Whatever logic this code is using is wrong more often than it is right. ++ // If you set expected_num_fds to 6, it finds 7. ++ // If you set expected_num_fds to 7, it finds 6. ++ // Code like this makes a packager drink. And not the good stuff either. ++ // Instead, we're just going to smile and tell it to never care about the ++ // number of FDs open. Stupid code. We hates it. ++ ++#if 0 + // We expect to have the following FDs open: + // 1-3) stdin, stdout, stderr. + // 4) The /dev/urandom FD used by base::GetUrandomFD(). +@@ -171,6 +179,8 @@ void NaClSandbox::CheckForExpectedNumber + } + + CHECK_EQ(expected_num_fds, sandbox::ProcUtil::CountOpenFds(proc_fd_.get())); ++#endif ++ + } + + void NaClSandbox::InitializeLayerTwoSandbox(bool uses_nonsfi_mode) { diff --git a/chromium-47.0.2526.80-pnacl-fgnu-inline-asm.patch b/chromium-47.0.2526.80-pnacl-fgnu-inline-asm.patch new file mode 100644 index 0000000..bfe0422 --- /dev/null +++ b/chromium-47.0.2526.80-pnacl-fgnu-inline-asm.patch @@ -0,0 +1,11 @@ +diff -up chromium-47.0.2526.80/native_client/build/untrusted.gypi.fixme chromium-47.0.2526.80/native_client/build/untrusted.gypi +--- chromium-47.0.2526.80/native_client/build/untrusted.gypi.fixme 2015-12-09 11:54:27.584962337 -0500 ++++ chromium-47.0.2526.80/native_client/build/untrusted.gypi 2015-12-09 11:54:45.033571750 -0500 +@@ -1564,6 +1564,7 @@ + '-Wno-char-subscripts', + '-Wno-unused-function', + '-std=gnu++11', ++ '-fgnu-inline-asm', + ], + 'native_irt_compile_flags': [ + # IRT compile/link flags to make the binary smaller. diff --git a/chromium-48.0.2564.103-gcc6.patch b/chromium-48.0.2564.103-gcc6.patch new file mode 100644 index 0000000..5f1340f --- /dev/null +++ b/chromium-48.0.2564.103-gcc6.patch @@ -0,0 +1,204 @@ +diff -up chromium-48.0.2564.103/third_party/skia/src/opts/SkXfermode_opts.h.gcc6 chromium-48.0.2564.103/third_party/skia/src/opts/SkXfermode_opts.h +--- chromium-48.0.2564.103/third_party/skia/src/opts/SkXfermode_opts.h.gcc6 2016-02-16 15:01:13.200131996 -0500 ++++ chromium-48.0.2564.103/third_party/skia/src/opts/SkXfermode_opts.h 2016-02-17 13:31:50.216198258 -0500 +@@ -109,76 +109,71 @@ XFERMODE(Lighten) { + } + #undef XFERMODE + +-// Some xfermodes use math like divide or sqrt that's best done in floats. +-// We write it generically, then call it 1 or 2 pixels at a time (T == Sk4f or Sk8f). +-#define XFERMODE(Name) struct Name { template T operator()(const T&, const T&); }; \ +- template T Name::operator()(const T& d, const T& s) ++// Some xfermodes use math like divide or sqrt that's best done in floats 1 pixel at a time. ++#define XFERMODE(Name) static Sk4f SK_VECTORCALL Name(Sk4f d, Sk4f s) + +-static_assert(SK_A32_SHIFT == 24, ""); + static inline Sk4f a_rgb(const Sk4f& a, const Sk4f& rgb) { ++ static_assert(SK_A32_SHIFT == 24, ""); + return a * Sk4f(0,0,0,1) + rgb * Sk4f(1,1,1,0); + } +-static inline Sk8f a_rgb(const Sk8f& a, const Sk8f& rgb) { +- // TODO: SkNx_blend<0,0,0,1,0,0,0,1>(a, rgb) to let us use _mm256_blend_ps? +- return a * Sk8f(0,0,0,1,0,0,0,1) + rgb * Sk8f(1,1,1,0,1,1,1,0); ++static inline Sk4f alphas(const Sk4f& f) { ++ return SkNx_dup(f); + } +-static inline Sk4f alphas(const Sk4f& f) { return SkNx_shuffle<3,3,3,3> (f); } +-static inline Sk8f alphas(const Sk8f& f) { return SkNx_shuffle<3,3,3,3,7,7,7,7>(f); } + + XFERMODE(ColorDodge) { + auto sa = alphas(s), + da = alphas(d), +- isa = T(1)-sa, +- ida = T(1)-da; ++ isa = Sk4f(1)-sa, ++ ida = Sk4f(1)-da; + + auto srcover = s + d*isa, + dstover = d + s*ida, +- otherwise = sa * T::Min(da, (d*sa)*(sa-s).approxInvert()) + s*ida + d*isa; ++ otherwise = sa * Sk4f::Min(da, (d*sa)*(sa-s).approxInvert()) + s*ida + d*isa; + + // Order matters here, preferring d==0 over s==sa. +- auto colors = (d == 0).thenElse(dstover, +- (s == sa).thenElse(srcover, +- otherwise)); ++ auto colors = (d == Sk4f(0)).thenElse(dstover, ++ (s == sa).thenElse(srcover, ++ otherwise)); + return a_rgb(srcover, colors); + } + XFERMODE(ColorBurn) { + auto sa = alphas(s), + da = alphas(d), +- isa = T(1)-sa, +- ida = T(1)-da; ++ isa = Sk4f(1)-sa, ++ ida = Sk4f(1)-da; + + auto srcover = s + d*isa, + dstover = d + s*ida, +- otherwise = sa*(da-T::Min(da, (da-d)*sa*s.approxInvert())) + s*ida + d*isa; ++ otherwise = sa*(da-Sk4f::Min(da, (da-d)*sa*s.approxInvert())) + s*ida + d*isa; + + // Order matters here, preferring d==da over s==0. +- auto colors = (d == da).thenElse(dstover, +- (s == 0).thenElse(srcover, +- otherwise)); ++ auto colors = (d == da).thenElse(dstover, ++ (s == Sk4f(0)).thenElse(srcover, ++ otherwise)); + return a_rgb(srcover, colors); + } + XFERMODE(SoftLight) { + auto sa = alphas(s), + da = alphas(d), +- isa = T(1)-sa, +- ida = T(1)-da; ++ isa = Sk4f(1)-sa, ++ ida = Sk4f(1)-da; + + // Some common terms. +- auto m = (da > 0).thenElse(d / da, 0), +- s2 = s*2, +- m4 = m*4; ++ auto m = (da > Sk4f(0)).thenElse(d / da, Sk4f(0)), ++ s2 = Sk4f(2)*s, ++ m4 = Sk4f(4)*m; + + // The logic forks three ways: + // 1. dark src? + // 2. light src, dark dst? + // 3. light src, light dst? +- auto darkSrc = d*(sa + (s2 - sa)*(T(1) - m)), // Used in case 1. +- darkDst = (m4*m4 + m4)*(m - 1) + m*7, // Used in case 2. +- liteDst = m.sqrt() - m, // Used in case 3. +- liteSrc = d*sa + da*(s2-sa)*(d*4 <= da).thenElse(darkDst, liteDst); // Case 2 or 3? ++ auto darkSrc = d*(sa + (s2 - sa)*(Sk4f(1) - m)), // Used in case 1. ++ darkDst = (m4*m4 + m4)*(m - Sk4f(1)) + Sk4f(7)*m, // Used in case 2. ++ liteDst = m.sqrt() - m, // Used in case 3. ++ liteSrc = d*sa + da*(s2-sa)*(Sk4f(4)*d <= da).thenElse(darkDst, liteDst); // Case 2 or 3? + + auto alpha = s + d*isa; +- auto colors = s*ida + d*isa + (s2 <= sa).thenElse(darkSrc, liteSrc); // Case 1 or 2/3? ++ auto colors = s*ida + d*isa + (s2 <= sa).thenElse(darkSrc, liteSrc); // Case 1 or 2/3? + + return a_rgb(alpha, colors); + } +@@ -245,52 +240,53 @@ private: + typedef SkProcCoeffXfermode INHERITED; + }; + +-template +-class FloatXfermode : public SkProcCoeffXfermode { ++class Sk4fXfermode : public SkProcCoeffXfermode { + public: +- FloatXfermode(const ProcCoeff& rec, SkXfermode::Mode mode) +- : INHERITED(rec, mode) {} ++ typedef Sk4f (SK_VECTORCALL *ProcF)(Sk4f, Sk4f); ++ Sk4fXfermode(const ProcCoeff& rec, SkXfermode::Mode mode, ProcF procf) ++ : INHERITED(rec, mode) ++ , fProcF(procf) {} + + void xfer32(SkPMColor dst[], const SkPMColor src[], int n, const SkAlpha aa[]) const override { +- BlendFn blend; +- while (n >= 2) { +- auto d = Sk8f::FromBytes((const uint8_t*)dst) * (1.0f/255), +- s = Sk8f::FromBytes((const uint8_t*)src) * (1.0f/255), +- b = blend(d, s); +- if (aa) { +- auto a255 = Sk8f(aa[0],aa[0],aa[0],aa[0], aa[1],aa[1],aa[1],aa[1]); +- (b*a255 + d*(Sk8f(255)-a255) + 0.5).toBytes((uint8_t*)dst); +- aa += 2; +- } else { +- (b * 255 + 0.5).toBytes((uint8_t*)dst); +- } +- dst += 2; +- src += 2; +- n -= 2; +- } +- if (n) { +- auto d = Sk4f::FromBytes((const uint8_t*)dst) * (1.0f/255), +- s = Sk4f::FromBytes((const uint8_t*)src) * (1.0f/255), +- b = blend(d, s); +- if (aa) { +- auto a255 = Sk4f(aa[0],aa[0],aa[0],aa[0]); +- (b*a255 + d*(Sk4f(255)-a255) + 0.5).toBytes((uint8_t*)dst); +- aa++; +- } else { +- (b * 255 + 0.5).toBytes((uint8_t*)dst); +- } ++ for (int i = 0; i < n; i++) { ++ dst[i] = aa ? this->xfer32(dst[i], src[i], aa[i]) ++ : this->xfer32(dst[i], src[i]); + } + } + + void xfer16(uint16_t dst[], const SkPMColor src[], int n, const SkAlpha aa[]) const override { + for (int i = 0; i < n; i++) { +- SkPMColor dst32 = SkPixel16ToPixel32(dst[i]); // Convert dst up to 8888. +- this->xfer32(&dst32, src+i, 1, aa ? aa+i : nullptr); // Blend 1 pixel. +- dst[i] = SkPixel32ToPixel16(dst32); // Repack dst to 565 and store. ++ SkPMColor dst32 = SkPixel16ToPixel32(dst[i]); ++ dst32 = aa ? this->xfer32(dst32, src[i], aa[i]) ++ : this->xfer32(dst32, src[i]); ++ dst[i] = SkPixel32ToPixel16(dst32); + } + } + + private: ++ static Sk4f Load(SkPMColor c) { ++ return Sk4f::FromBytes((uint8_t*)&c) * Sk4f(1.0f/255); ++ } ++ static SkPMColor Round(const Sk4f& f) { ++ SkPMColor c; ++ (f * Sk4f(255) + Sk4f(0.5f)).toBytes((uint8_t*)&c); ++ return c; ++ } ++ inline SkPMColor xfer32(SkPMColor dst, SkPMColor src) const { ++ return Round(fProcF(Load(dst), Load(src))); ++ } ++ ++ inline SkPMColor xfer32(SkPMColor dst, SkPMColor src, SkAlpha aa) const { ++ Sk4f s(Load(src)), ++ d(Load(dst)), ++ b(fProcF(d,s)); ++ // We do aa in full float precision before going back down to bytes, because we can! ++ Sk4f a = Sk4f(aa) * Sk4f(1.0f/255); ++ b = b*a + d*(Sk4f(1)-a); ++ return Round(b); ++ } ++ ++ ProcF fProcF; + typedef SkProcCoeffXfermode INHERITED; + }; + +@@ -327,7 +323,7 @@ static SkXfermode* create_xfermode(const + #undef CASE + + #define CASE(Mode) \ +- case SkXfermode::k##Mode##_Mode: return new FloatXfermode(rec, mode) ++ case SkXfermode::k##Mode##_Mode: return new Sk4fXfermode(rec, mode, &Mode) + CASE(ColorDodge); + CASE(ColorBurn); + CASE(SoftLight); diff --git a/chromium-48.0.2564.116-libusb_interrupt_event_handler.patch b/chromium-48.0.2564.116-libusb_interrupt_event_handler.patch new file mode 100644 index 0000000..d0b2484 --- /dev/null +++ b/chromium-48.0.2564.116-libusb_interrupt_event_handler.patch @@ -0,0 +1,15 @@ +diff -up chromium-48.0.2564.116/device/usb/usb_context.cc.modern-libusbx chromium-48.0.2564.116/device/usb/usb_context.cc +--- chromium-48.0.2564.116/device/usb/usb_context.cc.modern-libusbx 2016-02-24 10:21:10.534996028 -0500 ++++ chromium-48.0.2564.116/device/usb/usb_context.cc 2016-02-24 10:22:28.270499864 -0500 +@@ -57,7 +57,11 @@ void UsbContext::UsbEventHandler::Run() + + void UsbContext::UsbEventHandler::Stop() { + base::subtle::Release_Store(&running_, 0); ++#ifdef LIBUSB_API_VERSION >= 0x01000105 ++ libusb_interrupt_event_handler(context_); ++#else + libusb_interrupt_handle_event(context_); ++#endif + } + + UsbContext::UsbContext(PlatformUsbContext context) : context_(context) { diff --git a/chromium-50.0.2661.86-addrfix.patch b/chromium-50.0.2661.86-addrfix.patch new file mode 100644 index 0000000..fd0023a --- /dev/null +++ b/chromium-50.0.2661.86-addrfix.patch @@ -0,0 +1,11 @@ +diff -up chromium-50.0.2661.86/third_party/boringssl/boringssl.gyp.addrfix chromium-50.0.2661.86/third_party/boringssl/boringssl.gyp +--- chromium-50.0.2661.86/third_party/boringssl/boringssl.gyp.addrfix 2016-04-27 13:26:38.483282586 -0400 ++++ chromium-50.0.2661.86/third_party/boringssl/boringssl.gyp 2016-04-27 13:28:19.843065230 -0400 +@@ -18,6 +18,7 @@ + 'BORINGSSL_IMPLEMENTATION', + 'BORINGSSL_NO_STATIC_INITIALIZER', + 'OPENSSL_SMALL', ++ '_POSIX_C_SOURCE=200112L', + ], + 'dependencies': [ 'boringssl_asm' ], + # TODO(davidben): Fix size_t truncations in BoringSSL. diff --git a/chromium-50.0.2661.94-unbundle-re2-fix.patch b/chromium-50.0.2661.94-unbundle-re2-fix.patch new file mode 100644 index 0000000..306de99 --- /dev/null +++ b/chromium-50.0.2661.94-unbundle-re2-fix.patch @@ -0,0 +1,12 @@ +diff -up chromium-50.0.2661.94/build/linux/unbundle/re2.gyp.unbundle-fix chromium-50.0.2661.94/build/linux/unbundle/re2.gyp +--- chromium-50.0.2661.94/build/linux/unbundle/re2.gyp.unbundle-fix 2016-03-25 09:04:44.000000000 -0400 ++++ chromium-50.0.2661.94/build/linux/unbundle/re2.gyp 2016-05-03 12:24:38.850296350 -0400 +@@ -8,7 +8,7 @@ + 'target_name': 're2', + 'type': 'none', + 'variables': { +- 'headers_root_path': '.', ++ 'headers_root_path': 'src/', + 'header_filenames': [ + 're2/filtered_re2.h', + 're2/re2.h', diff --git a/chromium-52.0.2723.2-PNGImageDecoder-fix-cast.patch b/chromium-52.0.2723.2-PNGImageDecoder-fix-cast.patch new file mode 100644 index 0000000..9e94d0e --- /dev/null +++ b/chromium-52.0.2723.2-PNGImageDecoder-fix-cast.patch @@ -0,0 +1,12 @@ +diff -up chromium-52.0.2723.2/third_party/WebKit/Source/platform/image-decoders/png/PNGImageDecoder.cpp.fixcast chromium-52.0.2723.2/third_party/WebKit/Source/platform/image-decoders/png/PNGImageDecoder.cpp +--- chromium-52.0.2723.2/third_party/WebKit/Source/platform/image-decoders/png/PNGImageDecoder.cpp.fixcast 2016-05-10 09:43:31.637003844 -0400 ++++ chromium-52.0.2723.2/third_party/WebKit/Source/platform/image-decoders/png/PNGImageDecoder.cpp 2016-05-10 09:43:43.523741296 -0400 +@@ -234,7 +234,7 @@ void PNGImageDecoder::headerAvailable() + #endif + png_uint_32 profileLength = 0; + if (png_get_iCCP(png, info, &profileName, &compressionType, &profile, &profileLength)) { +- setColorProfileAndTransform(profile, profileLength, imageHasAlpha, false /* useSRGB */); ++ setColorProfileAndTransform((const char*)profile, profileLength, imageHasAlpha, false /* useSRGB */); + } + } + #endif // PNG_iCCP_SUPPORTED diff --git a/chromium-52.0.2723.2-sync_link_zlib.patch b/chromium-52.0.2723.2-sync_link_zlib.patch new file mode 100644 index 0000000..71d0f16 --- /dev/null +++ b/chromium-52.0.2723.2-sync_link_zlib.patch @@ -0,0 +1,11 @@ +diff -up chromium-52.0.2723.2/sync/sync_tests.gypi.sync_link_zlib chromium-52.0.2723.2/sync/sync_tests.gypi +--- chromium-52.0.2723.2/sync/sync_tests.gypi.sync_link_zlib 2016-05-09 14:22:30.884719562 -0400 ++++ chromium-52.0.2723.2/sync/sync_tests.gypi 2016-05-09 14:24:06.337517725 -0400 +@@ -264,6 +264,7 @@ + '../testing/gtest.gyp:gtest', + '../third_party/leveldatabase/leveldatabase.gyp:leveldatabase', + '../third_party/protobuf/protobuf.gyp:protobuf_lite', ++ '../third_party/zlib/zlib.gyp:zlib', + 'sync', + 'test_support_sync_api', + 'test_support_sync_core', diff --git a/chromium-52.0.2723.2-system-icu-54-does-not-have-detectHostTimeZone.patch b/chromium-52.0.2723.2-system-icu-54-does-not-have-detectHostTimeZone.patch new file mode 100644 index 0000000..1af90ff --- /dev/null +++ b/chromium-52.0.2723.2-system-icu-54-does-not-have-detectHostTimeZone.patch @@ -0,0 +1,12 @@ +diff -up chromium-52.0.2723.2/content/browser/time_zone_monitor.cc.system-icu chromium-52.0.2723.2/content/browser/time_zone_monitor.cc +--- chromium-52.0.2723.2/content/browser/time_zone_monitor.cc.system-icu 2016-05-09 14:01:42.751588803 -0400 ++++ chromium-52.0.2723.2/content/browser/time_zone_monitor.cc 2016-05-09 14:09:22.663951240 -0400 +@@ -23,7 +23,7 @@ TimeZoneMonitor::~TimeZoneMonitor() { + + void TimeZoneMonitor::NotifyRenderers() { + DCHECK_CURRENTLY_ON(BrowserThread::UI); +-#if defined(OS_CHROMEOS) ++#if defined(OS_CHROMEOS) || U_ICU_VERSION_MAJOR_NUM < 55 + // On CrOS, ICU's default tz is already set to a new zone. No + // need to redetect it with detectHostTimeZone(). + std::unique_ptr new_zone(icu::TimeZone::createDefault()); diff --git a/chromium-52.0.2723.2-use_system_harfbuzz.patch b/chromium-52.0.2723.2-use_system_harfbuzz.patch new file mode 100644 index 0000000..dcdc9aa --- /dev/null +++ b/chromium-52.0.2723.2-use_system_harfbuzz.patch @@ -0,0 +1,12 @@ +diff -up chromium-52.0.2723.2/ui/gfx/render_text_harfbuzz.h.use_system_harfbuzz chromium-52.0.2723.2/ui/gfx/render_text_harfbuzz.h +--- chromium-52.0.2723.2/ui/gfx/render_text_harfbuzz.h.use_system_harfbuzz 2016-05-09 14:17:34.867555791 -0400 ++++ chromium-52.0.2723.2/ui/gfx/render_text_harfbuzz.h 2016-05-09 14:18:56.131677853 -0400 +@@ -13,7 +13,7 @@ + #include "base/gtest_prod_util.h" + #include "base/macros.h" + #include "base/memory/scoped_vector.h" +-#include "third_party/harfbuzz-ng/src/hb.h" ++#include + #include "third_party/icu/source/common/unicode/ubidi.h" + #include "third_party/icu/source/common/unicode/uscript.h" + #include "ui/gfx/render_text.h" diff --git a/chromium-browser.desktop b/chromium-browser.desktop new file mode 100644 index 0000000..f532848 --- /dev/null +++ b/chromium-browser.desktop @@ -0,0 +1,140 @@ +[Desktop Entry] +Version=1.0 +Name=Chromium Web Browser +Name[ast]=Restolador web Chromium +Name[ca]=Navegador web Chromium +Name[de]=Chromium-Webbrowser +Name[es]=Navegador web Chromium +Name[fr]=Navigateur Web Chromium +Name[gl]=Navegador web Chromium +Name[he]=דפדפן האינטרנט Chromium +Name[hr]=Chromium web preglednik +Name[hu]=Chromium webböngésző +Name[id]=Peramban Web Chromium +Name[it]=Browser web Chromium +Name[ja]=Chromium ウェブ・ブラウザ +Name[ko]=Chromium 웹 브라우저 +Name[pt_BR]=Chromium Navegador da Internet +Name[ru]=Веб-браузер Chromium +Name[sl]=Chromium spletni brskalnik +Name[sv]=Webbläsaren Chromium +Name[ug]=Chromium توركۆرگۈ +Name[zh_CN]=Chromium 网页浏览器 +Name[zh_HK]=Chromium 網頁瀏覽器 +Name[zh_TW]=Chromium 網頁瀏覽器 +Comment=Access the Internet +Comment[ar]=الدخول إلى الإنترنت +Comment[ast]=Accesu a Internet +Comment[bg]=Достъп до интернет +Comment[bn]=ইন্টারনেটটি অ্যাক্সেস করুন +Comment[ca]=Accediu a Internet +Comment[cs]=Přístup k internetu +Comment[da]=Få adgang til internettet +Comment[de]=Internetzugriff +Comment[el]=Πρόσβαση στο Διαδίκτυο +Comment[en_GB]=Access the Internet +Comment[es]=Acceda a Internet +Comment[et]=Pääs Internetti +Comment[fi]=Käytä internetiä +Comment[fil]=I-access ang Internet +Comment[fr]=Explorer le Web +Comment[gl]=Acceda a Internet +Comment[gu]=ઇંટરનેટ ઍક્સેસ કરો +Comment[he]=גישה לאינטרנט +Comment[hi]=इंटरनेट तक पहुंच स्थापित करें +Comment[hr]=Pristupite Internetu +Comment[hu]=Az internet elérése +Comment[id]=Akses Internet +Comment[it]=Accesso a Internet +Comment[ja]=インターネットにアクセス +Comment[kn]=ಇಂಟರ್ನೆಟ್ ಅನ್ನು ಪ್ರವೇಶಿಸಿs +Comment[ko]=인터넷에 연결합니다 +Comment[lt]=Interneto prieiga +Comment[lv]=Piekļūt internetam +Comment[ml]=ഇന്റര്‍‌നെറ്റ് ആക്‌സസ് ചെയ്യുക +Comment[mr]=इंटरनेटमध्ये प्रवेश करा +Comment[nb]=Gå til Internett +Comment[nl]=Verbinding maken met internet +Comment[or]=ଇଣ୍ଟର୍ନେଟ୍ ପ୍ରବେଶ କରନ୍ତୁ +Comment[pl]=Skorzystaj z internetu +Comment[pt]=Aceder à Internet +Comment[pt_BR]=Acessar a internet +Comment[ro]=Accesaţi Internetul +Comment[ru]=Доступ в Интернет +Comment[sk]=Prístup do siete Internet +Comment[sl]=Dostop do interneta +Comment[sr]=Приступите Интернету +Comment[sv]=Surfa på Internet +Comment[ta]=இணையத்தை அணுகுதல் +Comment[te]=ఇంటర్నెట్‌ను ఆక్సెస్ చెయ్యండి +Comment[th]=เข้าถึงอินเทอร์เน็ต +Comment[tr]=İnternet'e erişin +Comment[ug]=ئىنتېرنېتنى زىيارەت قىلىش +Comment[uk]=Доступ до Інтернету +Comment[vi]=Truy cập Internet +Comment[zh_CN]=访问互联网 +Comment[zh_HK]=連線到網際網路 +Comment[zh_TW]=連線到網際網路 +GenericName=Web Browser +GenericName[ar]=متصفح الشبكة +GenericName[ast]=Restolador web +GenericName[bg]=Уеб браузър +GenericName[bn]=ওয়েব ব্রাউজার +GenericName[ca]=Navegador web +GenericName[cs]=WWW prohlížeč +GenericName[da]=Browser +GenericName[de]=Web-Browser +GenericName[el]=Περιηγητής ιστού +GenericName[en_GB]=Web Browser +GenericName[es]=Navegador web +GenericName[et]=Veebibrauser +GenericName[fi]=WWW-selain +GenericName[fil]=Web Browser +GenericName[fr]=Navigateur Web +GenericName[gl]=Navegador web +GenericName[gu]=વેબ બ્રાઉઝર +GenericName[he]=דפדפן אינטרנט +GenericName[hi]=वेब ब्राउज़र +GenericName[hr]=Web preglednik +GenericName[hu]=Webböngésző +GenericName[id]=Peramban Web +GenericName[it]=Browser web +GenericName[ja]=ウェブ・ブラウザ +GenericName[kn]=ಜಾಲ ವೀಕ್ಷಕ +GenericName[ko]=웹 브라우저 +GenericName[lt]=Žiniatinklio naršyklė +GenericName[lv]=Tīmekļa pārlūks +GenericName[ml]=വെബ് ബ്രൌസര്‍ +GenericName[mr]=वेब ब्राऊजर +GenericName[nb]=Nettleser +GenericName[nl]=Webbrowser +GenericName[or]=ଓ୍ବେବ ବ୍ରାଉଜର +GenericName[pl]=Przeglądarka WWW +GenericName[pt]=Navegador Web +GenericName[pt_BR]=Navegador da Internet +GenericName[ro]=Navigator de Internet +GenericName[ru]=Веб-браузер +GenericName[sk]=WWW prehliadač +GenericName[sl]=Spletni brskalnik +GenericName[sr]=Интернет прегледник +GenericName[sv]=Webbläsare +GenericName[ta]=இணைய உலாவி +GenericName[te]=మహాతల అన్వేషి +GenericName[th]=เว็บเบราว์เซอร์ +GenericName[tr]=Web Tarayıcı +GenericName[ug]=توركۆرگۈ +GenericName[uk]=Навігатор Тенет +GenericName[vi]=Bộ duyệt Web +GenericName[zh_CN]=网页浏览器 +GenericName[zh_HK]=網頁瀏覽器 +GenericName[zh_TW]=網頁瀏覽器 +Exec=/usr/bin/chromium-browser %U +Terminal=false +X-MultipleArgs=false +Type=Application +Icon=chromium-browser +Categories=Network;WebBrowser; +MimeType=text/html;text/xml;application/xhtml+xml;x-scheme-handler/http;x-scheme-handler/https;x-scheme-handler/ftp; +StartupWMClass=Chromium-browser +StartupNotify=true + diff --git a/chromium-browser.sh b/chromium-browser.sh new file mode 100755 index 0000000..887bd26 --- /dev/null +++ b/chromium-browser.sh @@ -0,0 +1,57 @@ +#!/bin/bash +# +# Copyright (c) 2011 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. + +# Let the wrapped binary know that it has been run through the wrapper. +export CHROME_WRAPPER="`readlink -f "$0"`" + +HERE="`dirname "$CHROME_WRAPPER"`" + +# We include some xdg utilities next to the binary, and we want to prefer them +# over the system versions when we know the system versions are very old. We +# detect whether the system xdg utilities are sufficiently new to be likely to +# work for us by looking for xdg-settings. If we find it, we leave $PATH alone, +# so that the system xdg utilities (including any distro patches) will be used. +if ! which xdg-settings &> /dev/null; then + # Old xdg utilities. Prepend $HERE to $PATH to use ours instead. + export PATH="$HERE:$PATH" +else + # Use system xdg utilities. But first create mimeapps.list if it doesn't + # exist; some systems have bugs in xdg-mime that make it fail without it. + xdg_app_dir="${XDG_DATA_HOME:-$HOME/.local/share/applications}" + mkdir -p "$xdg_app_dir" + [ -f "$xdg_app_dir/mimeapps.list" ] || touch "$xdg_app_dir/mimeapps.list" +fi + +# Always use our versions of ffmpeg libs. +# This also makes RPMs find the compatibly-named library symlinks. +if [[ -n "$LD_LIBRARY_PATH" ]]; then + LD_LIBRARY_PATH="$HERE:$HERE/lib:$LD_LIBRARY_PATH" +else + LD_LIBRARY_PATH="$HERE:$HERE/lib" +fi +export LD_LIBRARY_PATH + +export CHROME_VERSION_EXTRA="Built from source for @@BUILD_TARGET@@" + +# We don't want bug-buddy intercepting our crashes. http://crbug.com/24120 +export GNOME_DISABLE_CRASH_DIALOG=SET_BY_GOOGLE_CHROME + +CHROMIUM_DISTRO_FLAGS=" --enable-plugins \ + --enable-extensions \ + --enable-user-scripts \ + --enable-printing \ + --enable-sync \ + --auto-ssl-client-auth @@EXTRA_FLAGS@@" + +if [ -f "$HERE/PepperFlash/libpepflashplayer.so" ] && [ -f "$HERE/PepperFlash/manifest.json" ] ; then + CHROMIUM_FLASH_VERSION=$(grep '"version":' "$HERE/PepperFlash/manifest.json" | awk -F\" '{ print $4 }') + CHROMIUM_FLASH_FLAGS=" --ppapi-flash-path=$HERE/PepperFlash/libpepflashplayer.so \ + --ppapi-flash-version=$CHROMIUM_FLASH_VERSION" +else + CHROMIUM_FLASH_FLAGS="" +fi + +exec -a "$0" "$HERE/@@CHROMIUM_BROWSER_CHANNEL@@" $CHROMIUM_DISTRO_FLAGS $CHROMIUM_FLASH_FLAGS "$@" diff --git a/chromium-browser.xml b/chromium-browser.xml new file mode 100644 index 0000000..159e05c --- /dev/null +++ b/chromium-browser.xml @@ -0,0 +1,18 @@ + + + + + + Chromium + chromium-browser + /usr/bin/chromium-browser %s + chromium-browser + false + false + + + + diff --git a/chromium-latest.py b/chromium-latest.py new file mode 100755 index 0000000..88703db --- /dev/null +++ b/chromium-latest.py @@ -0,0 +1,337 @@ +#!/usr/bin/python +# Copyright 2010,2015-2016 Tom Callaway +# Copyright 2013-2016 Tomas Popela +# Permission is hereby granted, free of charge, to any person obtaining +# a copy of this software and associated documentation files (the +# "Software"), to deal in the Software without restriction, including +# without limitation the rights to use, copy, modify, merge, publish, +# distribute, sublicense, and/or sell copies of the Software, and to +# permit persons to whom the Software is furnished to do so, subject to +# the following conditions: +# +# The above copyright notice and this permission notice shall be included +# in all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +# IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +# CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +# SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +try: + import argparse + optparse = False +except ImportError: + from optparse import OptionParser + optparse = True +import csv +import glob +import hashlib +import locale +import os +import shutil +import StringIO +import sys +import urllib + +chromium_url = "http://commondatastorage.googleapis.com/chromium-browser-official/" + +chromium_root_dir = "." +version_string = "stable" + +name = 'Chromium Latest' +script_version = 0.8 +my_description = '{0} {1}'.format(name, script_version) + + +def dlProgress(count, blockSize, totalSize): + + if (totalSize <= blockSize): + percent = int(count * 100) + else: + percent = int(count * blockSize * 100 / totalSize) + sys.stdout.write("\r" + "Downloading ... %d%%" % percent) + sys.stdout.flush() + + +def delete_chromium_dir(ch_dir): + + full_dir = "%s/%s" % (latest_dir, ch_dir) + print 'Deleting %s ' % full_dir + if os.path.isdir(full_dir): + shutil.rmtree(full_dir) + print '[DONE]' + else: + print '[NOT FOUND]' + + +def delete_chromium_files(files): + + full_path = "%s/%s" % (latest_dir, files) + print 'Deleting ' + full_path + ' ', + for filename in glob.glob(full_path): + print 'Deleting ' + filename + ' ', + os.remove(filename) + print '[DONE]' + + +def check_omahaproxy(channel="stable"): + + version = 0 + status_url = "http://omahaproxy.appspot.com/all?os=linux&channel=" + channel + + usock = urllib.urlopen(status_url) + status_dump = usock.read() + usock.close() + status_list = StringIO.StringIO(status_dump) + status_reader = list(csv.reader(status_list, delimiter=',')) + linux_channels = [s for s in status_reader if "linux" in s] + linux_channel = [s for s in linux_channels if channel in s] + version = linux_channel[0][2] + + if version == 0: + print 'I could not find the latest %s build. Bailing out.' % channel + sys.exit(1) + else: + print 'Latest Chromium Version on %s at %s is %s' % (channel, status_url, version) + return version + + +def remove_file_if_exists(filename): + + if os.path.isfile("./%s" % filename): + try: + os.remove(filename) + except Exception: + pass + + +def download_file_and_compare_hashes(file_to_download): + + hashes_file = '%s.hashes' % file_to_download + + if (args.clean): + remove_file_if_exists(file_to_download) + remove_file_if_exists(hashes_file) + + # Let's make sure we haven't already downloaded it. + tarball_local_file = "./%s" % file_to_download + if os.path.isfile(tarball_local_file): + print "%s already exists!" % file_to_download + else: + path = '%s%s' % (chromium_url, file_to_download) + print "Downloading %s" % path + # Perhaps look at using python-progressbar at some point? + info=urllib.urlretrieve(path, file_to_download, reporthook=dlProgress)[1] + urllib.urlcleanup() + print "" + if (info["Content-Type"] != "application/x-tar"): + print 'Chromium tarballs for %s are not on servers.' % file_to_download + remove_file_if_exists (file_to_download) + sys.exit(1) + + hashes_local_file = "./%s" % hashes_file + if not os.path.isfile(hashes_local_file): + path = '%s%s' % (chromium_url, hashes_file) + print "Downloading %s" % path + # Perhaps look at using python-progressbar at some point? + info=urllib.urlretrieve(path, hashes_file, reporthook=dlProgress)[1] + urllib.urlcleanup() + print "" + + if os.path.isfile(hashes_local_file): + with open(hashes_local_file, "r") as input_file: + md5sum = input_file.readline().split()[1] + md5 = hashlib.md5() + with open(tarball_local_file, "rb") as f: + for block in iter(lambda: f.read(65536), b""): + md5.update(block) + if (md5sum == md5.hexdigest()): + print "MD5 matches for %s!" % file_to_download + else: + print "MD5 mismatch for %s!" % file_to_download + sys.exit(1) + else: + print "Cannot compare hashes for %s!" % file_to_download + + +def download_version(version): + + download_file_and_compare_hashes ('chromium-%s.tar.xz' % version) + + if (args.tests): + download_file_and_compare_hashes ('chromium-%s-testdata.tar.xz' % version) + +def nacl_versions(version): + myvars = {} + chrome_dir = './chromium-%s' % version + with open(chrome_dir + "/native_client/tools/REVISIONS") as myfile: + for line in myfile: + name, var = line.partition("=")[::2] + myvars[name] = var + print "nacl-binutils commit: %s" % myvars["NACL_BINUTILS_COMMIT"] + print "nacl-gcc commit: %s" % myvars["NACL_GCC_COMMIT"] + print "nacl-newlib commit: %s" % myvars["NACL_NEWLIB_COMMIT"] + + # Parse GIT_REVISIONS dict from toolchain_build.py + + sys.path.append(os.path.abspath(chrome_dir + "/native_client/toolchain_build")) + from toolchain_build import GIT_REVISIONS + print "nacl-arm-binutils commit: %s" % GIT_REVISIONS['binutils']['rev'] + print "nacl-arm-gcc commit: %s" % GIT_REVISIONS['gcc']['rev'] + + +def download_chrome_latest_rpm(arch): + + chrome_rpm = 'google-chrome-%s_current_%s.rpm' % (version_string, arch) + path = 'https://dl.google.com/linux/direct/%s' % chrome_rpm + + if (args.clean): + remove_file_if_exists(chrome_rpm) + + # Let's make sure we haven't already downloaded it. + if os.path.isfile("./%s" % chrome_rpm): + print "%s already exists!" % chrome_rpm + else: + print "Downloading %s" % path + # Perhaps look at using python-progressbar at some point? + info=urllib.urlretrieve(path, chrome_rpm, reporthook=dlProgress)[1] + urllib.urlcleanup() + print "" + if (info["Content-Type"] != "binary/octet-stream" and info["Content-Type"] != "application/x-redhat-package-manager"): + print 'Chrome %s rpms are not on servers.' % version_string + remove_file_if_exists (chrome_rpm) + sys.exit(1) + + +# This is where the magic happens +if __name__ == '__main__': + + # Locale magic + locale.setlocale(locale.LC_ALL, '') + + # Create the parser object + if optparse: + parser = OptionParser(description=my_description) + parser_add_argument = parser.add_option + else: + parser = argparse.ArgumentParser(description=my_description) + parser_add_argument = parser.add_argument + + parser_add_argument( + '--ffmpegarm', action='store_true', + help='Leave arm sources when cleaning ffmpeg') + parser_add_argument( + '--beta', action='store_true', + help='Get the latest beta Chromium source') + parser_add_argument( + '--clean', action='store_true', + help='Re-download all previously downloaded sources') + parser_add_argument( + '--cleansources', action='store_true', + help='Get the latest Chromium release from given channel and clean various directories to from unnecessary or unwanted stuff') + parser_add_argument( + '--dev', action='store_true', + help='Get the latest dev Chromium source') + parser_add_argument( + '--ffmpegclean', action='store_true', + help='Get the latest Chromium release from given channel and cleans ffmpeg sources from proprietary stuff') + parser_add_argument( + '--chrome', action='store_true', + help='Get the latest Chrome rpms for the given channel') + parser_add_argument( + '--prep', action='store_true', + help='Prepare everything, but don\'t compress the result') + parser_add_argument( + '--stable', action='store_true', + help='Get the latest stable Chromium source') + parser_add_argument( + '--tests', action='store_true', + help='Get the additional data for running tests') + parser_add_argument( + '--version', + help='Download a specific version of Chromium') + + # Parse the args + if optparse: + args, options = parser.parse_args() + else: + args = parser.parse_args() + + if args.stable: + version_string = "stable" + elif args.beta: + version_string = "beta" + elif args.dev: + version_string = "dev" + elif (not (args.stable or args.beta or args.dev)): + if (not args.version): + print 'No version specified, downloading STABLE' + args.stable = True + + chromium_version = args.version if args.version else check_omahaproxy(version_string) + + if args.dev: + version_string = "unstable" + + if args.chrome: + if args.version: + print 'You cannot specify a Chrome RPM version!' + sys.exit(1) + latest = 'google-chrome-%s_current_i386' % version_string + download_chrome_latest_rpm("i386") + latest = 'google-chrome-%s_current_x86_64' % version_string + download_chrome_latest_rpm("x86_64") + if (not (args.ffmpegclean or args.tests)): + sys.exit(0) + + latest = 'chromium-%s.tar.xz' % chromium_version + + download_version(chromium_version) + + # Lets make sure we haven't unpacked it already + latest_dir = "%s/chromium-%s" % (chromium_root_dir, chromium_version) + if (args.clean and os.path.isdir(latest_dir)): + shutil.rmtree(latest_dir) + + if os.path.isdir(latest_dir): + print "%s already exists, perhaps %s has already been unpacked?" % (latest_dir, latest) + else: + print "Unpacking %s into %s, please wait." % (latest, latest_dir) + if (os.system("tar -xJf %s" % latest) != 0): + print "%s is possibly corrupted, exiting." % (latest) + sys.exit(1) + + nacl_versions(chromium_version) + + if (args.cleansources): + junk_dirs = ['third_party/WebKit/Tools/Scripts/webkitpy/layout_tests', + 'webkit/data/layout_tests', 'third_party/hunspell/dictionaries', + 'chrome/test/data', 'native_client/tests', + 'third_party/WebKit/LayoutTests'] + + # First, the dirs: + for directory in junk_dirs: + delete_chromium_dir(directory) + + # There has got to be a better, more portable way to do this. + os.system("find %s -depth -name reference_build -type d -exec rm -rf {} \;" % latest_dir) + + # I could not find good bindings for xz/lzma support, so we system call here too. + chromium_clean_xz_file = "chromium-" + chromium_version + "-clean.tar.xz" + + remove_file_if_exists(chromium_clean_xz_file) + + if (args.ffmpegclean): + print("Cleaning ffmpeg from proprietary things...") + os.system("./clean_ffmpeg.sh %s %d" % (latest_dir, 0 if args.ffmpegarm else 1)) + print "Done!" + + if (not args.prep): + print "Compressing cleaned tree, please wait..." + os.chdir(chromium_root_dir) + os.system("tar --exclude=\.svn -cf - chromium-%s | xz -9 -T 0 -f > %s" % (chromium_version, chromium_clean_xz_file)) + + print "Finished!" diff --git a/chromium.spec b/chromium.spec new file mode 100644 index 0000000..573fcbc --- /dev/null +++ b/chromium.spec @@ -0,0 +1,1663 @@ +# %%{nil} for Stable; -beta for Beta; -dev for Devel +# dash in -beta and -dev is intentional ! +%global chromium_channel %{nil} +%global chromium_browser_channel chromium-browser%{chromium_channel} +%global chromium_path %{_libdir}/chromium-browser%{chromium_channel} +%global crd_path %{_libdir}/chrome-remote-desktop +%global tests 0 +# Try to not use the Xvfb as it is slow.. +%global tests_force_display 0 +# If we build with shared on, then chrome-remote-desktop depends on chromium libs. +# If we build with shared off, then users cannot swap out libffmpeg (and i686 gets a lot harder to build) +%global shared 1 +# We should not need to turn this on. The app in the webstore _should_ work. +%global build_remoting_app 0 + +# AddressSanitizer mode +# https://www.chromium.org/developers/testing/addresssanitizer +%global asan 0 + +# Only flip this on if stuff is really broken re: nacl. +%if 0%{?fedora} >= 24 +%global killnacl 1 +%else +%global killnacl 0 +%endif + +%if 0%{?killnacl} + %global nacl 0 + %global nonacl 1 +%else +# TODO: Try arm (nacl disabled) +%if 0%{?fedora} + %ifarch i686 + %global nacl 0 + %global nonacl 1 + %else + %global nacl 1 + %global nonacl 0 + %endif +%endif +%endif + +%if 0 +# Chromium's fork of ICU is now something we can't unbundle. +# This is left here to ease the change if that ever switches. +BuildRequires: libicu-devel >= 5.4 +%global bundleicu 0 +%else +%global bundleicu 1 +%endif + +%global bundlere2 0 + +### Google API keys (see http://www.chromium.org/developers/how-tos/api-keys) +### Note: These are for Fedora use ONLY. +### For your own distribution, please get your own set of keys. +### http://lists.debian.org/debian-legal/2013/11/msg00006.html +%global api_key AIzaSyDUIXvzVrt5OkVsgXhQ6NFfvWlA44by-aw +%global default_client_id 449907151817.apps.googleusercontent.com +%global default_client_secret miEreAep8nuvTdvLums6qyLK +%global chromoting_client_id 449907151817-8vnlfih032ni8c4jjps9int9t86k546t.apps.googleusercontent.com + +Name: chromium%{chromium_channel} +Version: 52.0.2743.75 +Release: 1%{?dist} +Summary: A WebKit (Blink) powered web browser +Url: http://www.chromium.org/Home +License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) +Group: Applications/Internet + +### Chromium Fedora Patches ### +Patch0: chromium-46.0.2490.71-gcc5.patch +Patch1: chromium-45.0.2454.101-linux-path-max.patch +Patch2: chromium-50.0.2661.86-addrfix.patch +# Google patched their bundled copy of icu 54 to include API functionality that wasn't added until 55. +# :P +Patch3: chromium-52.0.2723.2-system-icu-54-does-not-have-detectHostTimeZone.patch +Patch4: chromium-46.0.2490.71-notest.patch +# In file included from ../linux/directory.c:21: +# In file included from ../../../../native_client/src/nonsfi/linux/abi_conversion.h:20: +# ../../../../native_client/src/nonsfi/linux/linux_syscall_structs.h:44:13: error: GNU-style inline assembly is disabled +# __asm__ __volatile__("mov %%gs, %0" : "=r"(gs)); +# ^ +# 1 error generated. +Patch6: chromium-47.0.2526.80-pnacl-fgnu-inline-asm.patch +# Ignore broken nacl open fd counter +Patch7: chromium-47.0.2526.80-nacl-ignore-broken-fd-counter.patch +# Fixups for gcc6 +Patch8: chromium-48.0.2564.103-gcc6.patch +# Use libusb_interrupt_event_handler from current libusbx (1.0.21-0.1.git448584a) +Patch9: chromium-48.0.2564.116-libusb_interrupt_event_handler.patch +# Fix re2 unbundle gyp +Patch10: chromium-50.0.2661.94-unbundle-re2-fix.patch +# Fix PNGImageDecoder code +Patch11: chromium-52.0.2723.2-PNGImageDecoder-fix-cast.patch + +### Chromium Tests Patches ### +Patch100: chromium-46.0.2490.86-use_system_opus.patch +Patch101: chromium-52.0.2723.2-use_system_harfbuzz.patch +Patch102: chromium-52.0.2723.2-sync_link_zlib.patch + +# Use chromium-latest.py to generate clean tarball from released build tarballs, found here: +# http://build.chromium.org/buildbot/official/ +# For Chromium Fedora use chromium-latest.py --stable --ffmpegclean --ffmpegarm +# If you want to include the ffmpeg arm sources append the --ffmpegarm switch +# https://commondatastorage.googleapis.com/chromium-browser-official/chromium-%%{version}.tar.xz +Source0: chromium-%{version}-clean.tar.xz +%if 0%{tests} +Source1: https://commondatastorage.googleapis.com/chromium-browser-official/chromium-%{version}-testdata.tar.xz +%endif +# https://chromium.googlesource.com/chromium/tools/depot_tools.git/+archive/7e7a454f9afdddacf63e10be48f0eab603be654e.tar.gz +Source2: depot_tools.git-master.tar.gz +Source3: chromium-browser.sh +Source4: %{chromium_browser_channel}.desktop +# Also, only used if you want to reproduce the clean tarball. +Source5: clean_ffmpeg.sh +Source6: chromium-latest.py +Source7: get_free_ffmpeg_source_files.py +# Get the names of all tests (gtests) for Linux +# Usage: get_linux_tests_name.py chromium-%%{version} --spec +Source8: get_linux_tests_names.py +# GNOME stuff +Source9: chromium-browser.xml +Source10: https://dl.google.com/dl/edgedl/chrome/policy/policy_templates.zip +Source11: chrome-remote-desktop.service + +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) + +# We can assume gcc and binutils. +BuildRequires: gcc-c++ + +BuildRequires: alsa-lib-devel +BuildRequires: atk-devel +BuildRequires: bison +BuildRequires: cups-devel +BuildRequires: dbus-devel +BuildRequires: desktop-file-utils +BuildRequires: expat-devel +BuildRequires: flex +BuildRequires: fontconfig-devel +BuildRequires: GConf2-devel +BuildRequires: glib2-devel +BuildRequires: gnome-keyring-devel +BuildRequires: gtk2-devel +BuildRequires: glibc-devel +BuildRequires: gperf +BuildRequires: libatomic +BuildRequires: libcap-devel +BuildRequires: libdrm-devel +BuildRequires: libexif-devel +BuildRequires: libgcrypt-devel +BuildRequires: libudev-devel +BuildRequires: libusb-devel +BuildRequires: libXdamage-devel +BuildRequires: libXScrnSaver-devel +BuildRequires: libXtst-devel +BuildRequires: nss-devel +BuildRequires: pciutils-devel +BuildRequires: pulseaudio-libs-devel +%if 0%{?tests} +BuildRequires: pam-devel +# Tests needs X +BuildRequires: Xvfb +BuildRequires: liberation-sans-fonts +# For sandbox initialization +BuildRequires: sudo +%endif + +# Fedora turns on NaCl +# NaCl needs these +BuildRequires: libstdc++-devel, openssl-devel +%if 0%{?nacl} +BuildRequires: nacl-gcc, nacl-binutils, nacl-newlib +BuildRequires: nacl-arm-gcc, nacl-arm-binutils, nacl-arm-newlib +# pNaCl needs this monster +BuildRequires: native_client >= 50.0.2661.86 +%ifarch x86_64 +BuildRequires: glibc-devel(x86-32) libgcc(x86-32) +%endif +%endif +# Fedora tries to use system libs whenever it can. +BuildRequires: bzip2-devel +BuildRequires: dbus-glib-devel +BuildRequires: elfutils-libelf-devel +BuildRequires: flac-devel +BuildRequires: hwdata +BuildRequires: jsoncpp-devel +BuildRequires: kernel-headers +BuildRequires: libevent-devel +BuildRequires: libexif-devel +BuildRequires: libffi-devel +%if 0%{?bundleicu} +# If this is true, we're using the bundled icu. +# We'd like to use the system icu every time, but we cannot always do that. +%else +# Not newer than 54 (at least not right now) +BuildRequires: libicu-devel = 54.1 +%endif +BuildRequires: libjpeg-devel +BuildRequires: libpng-devel +%if 0 +# see https://code.google.com/p/chromium/issues/detail?id=501318 +BuildRequires: libsrtp-devel >= 1.4.4 +%endif +BuildRequires: libudev-devel +Requires: libusbx >= 1.0.21-0.1.git448584a +BuildRequires: libusbx-devel >= 1.0.21-0.1.git448584a +# We don't use libvpx anymore because Chromium loves to +# use bleeding edge revisions here that break other things +# ... so we just use the bundled libvpx. +# Same is true for libwebp. +BuildRequires: libxslt-devel +# Same here, it seems. +# BuildRequires: libyuv-devel +BuildRequires: minizip-devel +BuildRequires: nspr-devel +BuildRequires: opus-devel +BuildRequires: perl(Switch) +BuildRequires: pulseaudio-libs-devel +BuildRequires: python-beautifulsoup4 +BuildRequires: python-BeautifulSoup +BuildRequires: python-html5lib +BuildRequires: python-jinja2 +BuildRequires: python-markupsafe +BuildRequires: python-ply +BuildRequires: python-simplejson +%if 0%{?bundlere2} +# Using bundled bits, do nothing. +%else +Requires: re2 >= 20160401 +BuildRequires: re2-devel >= 20160401 +%endif +BuildRequires: speech-dispatcher-devel +BuildRequires: speex-devel = 1.2 +BuildRequires: yasm +BuildRequires: pkgconfig(gnome-keyring-1) +# remote desktop needs this +BuildRequires: pam-devel +BuildRequires: systemd +%if 0%{?asan} +BuildRequires: clang, compiler-rt +%endif + +# We pick up an automatic requires on the library, but we need the version check +# because the nss shared library is unversioned. +# This is to prevent someone from hitting http://code.google.com/p/chromium/issues/detail?id=26448 +Requires: nss%{_isa} >= 3.12.3 +Requires: nss-mdns%{_isa} + +# GTK modules it expects to find for some reason. +Requires: libcanberra-gtk2%{_isa} + +# This enables support for u2f tokens +Requires: u2f-hidraw-policy + +# Once upon a time, we tried to split these out... but that's not worth the effort anymore. +Provides: chromium-ffmpegsumo = %{version}-%{release} +Obsoletes: chromium-ffmpegsumo <= 35.0.1916.114 +# This is a lie. v8 has its own version... but I'm being lazy and not using it here. +# Barring Google getting much faster on the v8 side (or much slower on the Chromium side) +# the true v8 version will be much smaller than the Chromium version that it came from. +Provides: chromium-v8 = %{version}-%{release} +Obsoletes: chromium-v8 <= 3.25.28.18 +# This is a lie. webrtc never had any real version. 0.2 is greater than 0.1 +Provides: webrtc = 0.2 +Obsoletes: webrtc <= 0.1 +%if 0%{?shared} +Requires: chromium-libs%{_isa} = %{version}-%{release} +# Nothing to do here. chromium-libs is real. +%else +Provides: chromium-libs = %{version}-%{release} +Obsoletes: chromium-libs <= %{version}-%{release} +%endif + +ExclusiveArch: x86_64 i686 + +# Bundled bits (I'm sure I've missed some) +Provides: bundled(angle) = 2422 +Provides: bundled(bintrees) = 1.0.1 +# This is a fork of openssl. +Provides: bundled(boringssl) +Provides: bundled(brotli) +Provides: bundled(bspatch) +Provides: bundled(cacheinvalidation) = 20150720 +Provides: bundled(cardboard) = 0.5.4 +Provides: bundled(colorama) = 799604a104 +Provides: bundled(crashpad) +Provides: bundled(dmg_fp) +Provides: bundled(expat) = 2.1.0 +Provides: bundled(fdmlibm) = 5.3 +# Don't get too excited. MPEG and other legally problematic stuff is stripped out. +Provides: bundled(ffmpeg) = 2.6 +Provides: bundled(fips181) = 2.2.3 +Provides: bundled(fontconfig) = 2.11.0 +Provides: bundled(gperftools) = svn144 +Provides: bundled(gtk3) = 3.1.4 +Provides: bundled(hunspell) = 1.3.2 +Provides: bundled(iccjpeg) +%if 0%{?bundleicu} +Provides: bundled(icu) = 54.1 +%endif +Provides: bundled(kitchensink) = 1 +Provides: bundled(leveldb) = r80 +Provides: bundled(libaddressinput) = 0 +Provides: bundled(libjingle) = 9564 +Provides: bundled(libphonenumber) = svn584 +Provides: bundled(libsrtp) = 1.5.2 +Provides: bundled(libvpx) = 1.4.0 +Provides: bundled(libwebp) = 0.4.3 +Provides: bundled(libXNVCtrl) = 302.17 +Provides: bundled(libyuv) = 1444 +Provides: bundled(lzma) = 9.20 +Provides: bundled(libudis86) = 1.7.1 +Provides: bundled(mesa) = 9.0.3 +Provides: bundled(NSBezierPath) = 1.0 +Provides: bundled(mozc) +Provides: bundled(mt19937ar) = 2002.1.26 +Provides: bundled(ots) = 767d6040439e6ebcdb867271fcb686bd3f8ac739 +Provides: bundled(protobuf) = r476 +Provides: bundled(qcms) = 4 +%if 0%{?bundlere2} +Provides: bundled(re2) +%endif +Provides: bundled(sfntly) = svn111 +Provides: bundled(skia) +Provides: bundled(SMHasher) = 0 +Provides: bundled(snappy) = r80 +Provides: bundled(speech-dispatcher) = 0.7.1 +Provides: bundled(sqlite) = 3.8.7.4 +Provides: bundled(superfasthash) = 0 +Provides: bundled(talloc) = 2.0.1 +Provides: bundled(usrsctp) = 0 +Provides: bundled(v8) = 4.5.103.35 +Provides: bundled(webrtc) = 90usrsctp +Provides: bundled(woff2) = 445f541996fe8376f3976d35692fd2b9a6eedf2d +Provides: bundled(xdg-mime) +Provides: bundled(xdg-user-dirs) +Provides: bundled(x86inc) = 0 +Provides: bundled(zlib) = 1.2.5 + +%description +Chromium is an open-source web browser, powered by WebKit (Blink). + +%if 0%{?shared} +%package libs +Summary: Shared libraries used by chromium (and chrome-remote-desktop) + +%description libs +Shared libraries used by chromium (and chrome-remote-desktop). +%endif + +%package -n chrome-remote-desktop +Requires(pre): shadow-utils +Requires(post): systemd +Requires(preun): systemd +Requires(postun): systemd +Requires: xorg-x11-server-Xvfb +%if 0%{?shared} +Requires: chromium-libs%{_isa} = %{version}-%{release} +%endif +Summary: Remote desktop support for google-chrome & chromium + +%description -n chrome-remote-desktop +Remote desktop support for google-chrome & chromium. + +%prep +%setup -q -T -c -n %{name}-policies -a 10 +%setup -q -T -c -n depot_tools -a 2 +%if 0%{tests} +%setup -q -n chromium-%{version} -b 1 +%else +%setup -q -n chromium-%{version} +%endif + +### Chromium Fedora Patches ### +%patch0 -p1 -b .gcc5 +%patch1 -p1 -b .pathmax +%patch2 -p1 -b .addrfix +%patch3 -p1 -b .system-icu +%patch4 -p1 -b .notest +%patch6 -p1 -b .gnu-inline +%patch7 -p1 -b .ignore-fd-count +# %%patch8 -p1 -b .gcc6 +%patch9 -p1 -b .modern-libusbx +%patch10 -p1 -b .unbundle-fix +%patch11 -p1 -b .fixcast + +### Chromium Tests Patches ### +%patch100 -p1 -b .use_system_opus +%patch101 -p1 -b .use_system_harfbuzz +%patch102 -p1 -b .sync_link_zlib + +%if 0%{?asan} +export CC="clang" +export CXX="clang++" +%else +export CC="gcc" +export CXX="g++" +%endif +export AR="ar" +export RANLIB="ranlib" + +%if 0%{?nacl} +# prep the nacl tree +mkdir -p out/Release/gen/sdk/linux_x86/nacl_x86_newlib +cp -a --no-preserve=context /usr/%{_arch}-nacl/* out/Release/gen/sdk/linux_x86/nacl_x86_newlib + +mkdir -p out/Release/gen/sdk/linux_x86/nacl_arm_newlib +cp -a --no-preserve=context /usr/arm-nacl/* out/Release/gen/sdk/linux_x86/nacl_arm_newlib + +# Not sure if we need this or not, but better safe than sorry. +pushd out/Release/gen/sdk/linux_x86 +ln -s nacl_x86_newlib nacl_x86_newlib_raw +ln -s nacl_arm_newlib nacl_arm_newlib_raw +popd + +mkdir -p out/Release/gen/sdk/linux_x86/nacl_x86_newlib/bin +pushd out/Release/gen/sdk/linux_x86/nacl_x86_newlib/bin +ln -s /usr/bin/x86_64-nacl-gcc gcc +ln -s /usr/bin/x86_64-nacl-gcc x86_64-nacl-gcc +ln -s /usr/bin/x86_64-nacl-g++ g++ +ln -s /usr/bin/x86_64-nacl-g++ x86_64-nacl-g++ +# ln -s /usr/bin/x86_64-nacl-ar ar +ln -s /usr/bin/x86_64-nacl-ar x86_64-nacl-ar +# ln -s /usr/bin/x86_64-nacl-as as +ln -s /usr/bin/x86_64-nacl-as x86_64-nacl-as +# ln -s /usr/bin/x86_64-nacl-ranlib ranlib +ln -s /usr/bin/x86_64-nacl-ranlib x86_64-nacl-ranlib +# Cleanups +rm addr2line +ln -s /usr/bin/x86_64-nacl-addr2line addr2line +rm c++filt +ln -s /usr/bin/x86_64-nacl-c++filt c++filt +rm gprof +ln -s /usr/bin/x86_64-nacl-gprof gprof +rm readelf +ln -s /usr/bin/x86_64-nacl-readelf readelf +rm size +ln -s /usr/bin/x86_64-nacl-size size +rm strings +ln -s /usr/bin/x86_64-nacl-strings strings +popd + +mkdir -p out/Release/gen/sdk/linux_x86/nacl_arm_newlib/bin +pushd out/Release/gen/sdk/linux_x86/nacl_arm_newlib/bin +ln -s /usr/bin/arm-nacl-gcc gcc +ln -s /usr/bin/arm-nacl-gcc arm-nacl-gcc +ln -s /usr/bin/arm-nacl-g++ g++ +ln -s /usr/bin/arm-nacl-g++ arm-nacl-g++ +ln -s /usr/bin/arm-nacl-ar arm-nacl-ar +ln -s /usr/bin/arm-nacl-as arm-nacl-as +ln -s /usr/bin/arm-nacl-ranlib arm-nacl-ranlib +popd + +touch out/Release/gen/sdk/linux_x86/nacl_x86_newlib/stamp.untar out/Release/gen/sdk/linux_x86/nacl_x86_newlib/stamp.prep +touch out/Release/gen/sdk/linux_x86/nacl_x86_newlib/nacl_x86_newlib.json +touch out/Release/gen/sdk/linux_x86/nacl_arm_newlib/stamp.untar out/Release/gen/sdk/linux_x86/nacl_arm_newlib/stamp.prep +touch out/Release/gen/sdk/linux_x86/nacl_arm_newlib/nacl_arm_newlib.json + +pushd out/Release/gen/sdk/linux_x86/ +mkdir -p pnacl_newlib pnacl_translator +# Might be able to do symlinks here, but eh. +cp -a --no-preserve=context /usr/pnacl_newlib/* pnacl_newlib/ +cp -a --no-preserve=context /usr/pnacl_translator/* pnacl_translator/ +for i in lib/libc.a lib/libc++.a lib/libg.a lib/libm.a; do + /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/x86_64_bc-nacl/$i + /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/i686_bc-nacl/$i + /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/le32-nacl/$i +done + +for i in lib/clang/3.7.0/lib/x86_64_bc-nacl/libpnaclmm.a lib/clang/3.7.0/lib/i686_bc-nacl/libpnaclmm.a; do + /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/$i +done + +for i in lib/clang/3.7.0/lib/le32-nacl/libpnaclmm.a lib/clang/3.7.0/lib/le32-nacl/libgcc.a; do + /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/$i +done + +popd + +mkdir -p native_client/toolchain/.tars/linux_x86 +touch native_client/toolchain/.tars/linux_x86/pnacl_translator.json + +pushd native_client/toolchain +ln -s ../../out/Release/gen/sdk/linux_x86 linux_x86 +popd +%endif + +export CHROMIUM_BROWSER_GYP_DEFINES="\ +%ifarch x86_64 + -Dtarget_arch=x64 \ + -Dsystem_libdir=lib64 \ +%endif + -Dgoogle_api_key="%{api_key}" \ + -Dgoogle_default_client_id="%{default_client_id}" \ + -Dgoogle_default_client_secret="%{default_client_secret}" \ +%if 0%{?asan} + -Dasan=1 \ + -Dclang=1 \ + -Dhost_clang=1 \ + -Dclang_dynlib_flags="" \ + -Dclang_plugin_args="" \ + -Dclang_chrome_plugins_flags="" \ +%else + -Dclang=0 \ + -Dhost_clang=0 \ +%endif + -Ddisable_glibc=1 \ + -Ddisable_sse2=1 \ +%if 0%{?nonacl} + -Ddisable_nacl=1 \ +%else + -Ddisable_newlib_untar=1 \ + -Ddisable_pnacl_untar=1 \ + -Dpnacl_newlib_toolchain=out/Release/gen/sdk/linux_x86/pnacl_newlib/ \ + -Dpnacl_translator_dir=/usr/pnacl_translator \ +%endif + \ + -Duse_gconf=0 \ + -Duse_gio=1 \ + -Duse_gnome_keyring=1 \ + -Duse_pulseaudio=1 \ + -Duse_system_bzip2=1 \ + -Duse_system_flac=1 \ + -Duse_system_harfbuzz=1 \ +%if 0%{?bundleicu} +%else + -Duse_system_icu=1 \ +%endif + -Dicu_use_data_file_flag=1 \ + -Duse_system_jsoncpp=1 \ + -Duse_system_libevent=1 \ + -Duse_system_libexif=1 \ + -Duse_system_libjpeg=1 \ + -Duse_system_libpng=1 \ + -Duse_system_libusb=1 \ + -Duse_system_libxml=1 \ + -Duse_system_libxslt=1 \ + -Duse_system_minizip=1 \ + -Duse_system_nspr=1 \ + -Duse_system_opus=1 \ + -Duse_system_protobuf=0 \ +%if 0%{?bundlere2} +%else + -Duse_system_re2=1 \ +%endif + -Duse_system_speex=1 \ + -Duse_system_libsrtp=0 \ + -Duse_system_xdg_utils=1 \ + -Duse_system_yasm=1 \ + -Duse_system_zlib=0 \ + \ + -Dlinux_link_libspeechd=1 \ + -Dlinux_link_gnome_keyring=1 \ + -Dlinux_link_gsettings=1 \ + -Dlinux_link_libpci=1 \ + -Dlinux_link_libgps=0 \ + -Dlinux_sandbox_path=%{chromium_path}/chrome-sandbox \ + -Dlinux_sandbox_chrome_path=%{chromium_path}/chromium-browser \ + -Dlinux_strip_binary=1 \ + -Dlinux_use_bundled_binutils=0 \ + -Dlinux_use_bundled_gold=0 \ + -Dlinux_use_gold_binary=0 \ + -Dlinux_use_gold_flags=0 \ + -Dlinux_use_libgps=0 \ + \ + -Dusb_ids_path=/usr/share/hwdata/usb.ids \ + -Dlibspeechd_h_prefix=speech-dispatcher/ \ + \ + -Dffmpeg_branding=Chromium \ + -Dproprietary_codecs=0 \ +%if 0%{?shared} + -Dbuild_ffmpegsumo=1 \ + -Dffmpeg_component=shared_library \ +%else + -Dffmpeg_component=static_library \ +%endif + \ + -Dno_strict_aliasing=1 \ + -Dv8_no_strict_aliasing=1 \ + \ + -Dremove_webcore_debug_symbols=1 \ + -Dlogging_like_official_build=1 \ + -Denable_hotwording=0 \ +%if 0 + -Dbuildtype=Official \ +%endif + \ +%if 0%{?shared} + -Dcomponent=shared_library \ +%endif + -Duse_sysroot=0 \ + -Dwerror= -Dsysroot=" + +# Remove most of the bundled libraries. Libraries specified below (taken from +# Gentoo's Chromium ebuild) are the libraries that needs to be preserved. +build/linux/unbundle/remove_bundled_libraries.py \ +%if 0%{?asan} + 'buildtools/third_party/libc++' \ + 'buildtools/third_party/libc++abi' \ +%endif + 'third_party/ffmpeg' \ + 'third_party/adobe' \ + 'third_party/flac' \ + 'third_party/harfbuzz-ng' \ + 'third_party/icu' \ + 'base/third_party/libevent' \ + 'third_party/libjpeg_turbo' \ + 'third_party/libpng' \ + 'third_party/libsrtp' \ + 'third_party/libwebp' \ + 'third_party/libxml' \ + 'third_party/libxslt' \ +%if 0%{?bundlere2} + 'third_party/re2' \ +%endif + 'third_party/snappy' \ + 'third_party/speech-dispatcher' \ + 'third_party/usb_ids' \ + 'third_party/woff2' \ + 'third_party/xdg-utils' \ + 'third_party/yasm' \ + 'third_party/zlib' \ + 'base/third_party/dmg_fp' \ + 'base/third_party/dynamic_annotations' \ + 'base/third_party/icu' \ + 'base/third_party/nspr' \ + 'base/third_party/superfasthash' \ + 'base/third_party/symbolize' \ + 'base/third_party/valgrind' \ + 'base/third_party/xdg_mime' \ + 'base/third_party/xdg_user_dirs' \ + 'breakpad/src/third_party/curl' \ + 'chrome/third_party/mozilla_security_manager' \ + 'courgette/third_party' \ + 'native_client/src/third_party/dlmalloc' \ + 'net/third_party/mozilla_security_manager' \ + 'net/third_party/nss' \ + 'third_party/WebKit' \ + 'third_party/analytics' \ + 'third_party/angle' \ + 'third_party/angle/src/third_party/compiler' \ + 'third_party/angle/src/third_party/libXNVCtrl' \ + 'third_party/angle/src/third_party/murmurhash' \ + 'third_party/angle/src/third_party/trace_event' \ + 'third_party/boringssl' \ + 'third_party/brotli' \ + 'third_party/cacheinvalidation' \ + 'third_party/catapult' \ + 'third_party/catapult/tracing/third_party/components/polymer' \ + 'third_party/catapult/tracing/third_party/d3' \ + 'third_party/catapult/tracing/third_party/gl-matrix' \ + 'third_party/catapult/tracing/third_party/jszip' \ + 'third_party/catapult/third_party/py_vulcanize' \ + 'third_party/catapult/third_party/py_vulcanize/third_party/rcssmin' \ + 'third_party/catapult/third_party/py_vulcanize/third_party/rjsmin' \ + 'third_party/cld_2' \ + 'third_party/cros_system_api' \ + 'third_party/cython/python_flags.py' \ + 'third_party/devscripts' \ + 'third_party/dom_distiller_js' \ + 'third_party/dom_distiller_js/dist/proto_gen/third_party/dom_distiller_js' \ + 'third_party/fips181' \ + 'third_party/flot' \ + 'third_party/google_input_tools' \ + 'third_party/google_input_tools/third_party/closure_library' \ + 'third_party/google_input_tools/third_party/closure_library/third_party/closure' \ + 'third_party/hunspell' \ + 'third_party/iccjpeg' \ + 'third_party/jstemplate' \ + 'third_party/khronos' \ + 'third_party/leveldatabase' \ + 'third_party/libXNVCtrl' \ + 'third_party/libaddressinput' \ + 'third_party/libjingle' \ + 'third_party/libphonenumber' \ + 'third_party/libsecret' \ + 'third_party/libudev' \ + 'third_party/libusb' \ + 'third_party/libvpx' \ + 'third_party/libvpx/source/libvpx/third_party/x86inc' \ + 'third_party/libxml/chromium' \ + 'third_party/libwebm' \ + 'third_party/libyuv' \ + 'third_party/lss' \ + 'third_party/lzma_sdk' \ + 'third_party/mesa' \ + 'third_party/modp_b64' \ + 'third_party/mt19937ar' \ + 'third_party/openmax_dl' \ + 'third_party/opus' \ + 'third_party/ots' \ + 'third_party/pdfium' \ + 'third_party/pdfium/third_party/agg23' \ + 'third_party/pdfium/third_party/base' \ + 'third_party/pdfium/third_party/bigint' \ + 'third_party/pdfium/third_party/freetype' \ + 'third_party/pdfium/third_party/lcms2-2.6' \ + 'third_party/pdfium/third_party/libjpeg' \ + 'third_party/pdfium/third_party/libopenjpeg20' \ + 'third_party/pdfium/third_party/zlib_v128' \ + 'third_party/polymer' \ + 'third_party/protobuf' \ + 'third_party/protobuf/third_party/six' \ + 'third_party/ply' \ + 'third_party/qcms' \ + 'third_party/sfntly' \ + 'third_party/skia' \ + 'third_party/smhasher' \ + 'third_party/sqlite' \ + 'third_party/tcmalloc' \ + 'third_party/usrsctp' \ + 'third_party/web-animations-js' \ + 'third_party/webdriver' \ + 'third_party/webrtc' \ + 'third_party/widevine' \ + 'third_party/x86inc' \ + 'third_party/zlib/google' \ + 'url/third_party/mozilla' \ + 'v8/src/third_party/fdlibm' \ + 'v8/src/third_party/valgrind' \ + --do-remove + +# Look, I don't know. This package is spit and chewing gum. Sorry. +rm -rf third_party/jinja2 +ln -s %{python_sitelib}/jinja2 third_party/jinja2 +rm -rf third_party/markupsafe +ln -s %{python_sitearch}/markupsafe third_party/markupsafe +# We should look on removing other python packages as well i.e. ply + +# Fix hardcoded path in remoting code +sed -i 's|/opt/google/chrome-remote-desktop|%{crd_path}|g' remoting/host/setup/daemon_controller_delegate_linux.cc + +# Update gyp files according to our configuration +# If you will change something in the configuration please update it +# for build/gyp_chromium as well (and vice versa). +build/linux/unbundle/replace_gyp_files.py $CHROMIUM_BROWSER_GYP_DEFINES + +build/gyp_chromium \ + --depth . \ +%if 0%{?asan} + -Drelease_extra_cflags="-O1 -fno-inline-functions -fno-inline" \ +%endif + $CHROMIUM_BROWSER_GYP_DEFINES + +# hackity hack hack +rm -rf third_party/libusb/src/libusb/libusb.h + +%build + +%if %{?tests} +# Tests targets taken from testing/buildbot/chromium.linux.json and obtained with +# get_linux_tests_name.py PATH_TO_UNPACKED_CHROMIUM_SOURCES --spec +# You can also check if you have to update the tests in SPEC file by running +# get_linux_tests_name.py PATH_TO_UNPACKED_CHROMIUM_SOURCES --check PATH_TO_SPEC_FILE +export CHROMIUM_BROWSER_UNIT_TESTS="\ + accessibility_unittests \ + app_list_unittests \ + app_shell_unittests \ + aura_unittests \ + base_unittests \ + browser_tests \ + cacheinvalidation_unittests \ + cast_unittests \ + cc_unittests \ + chromedriver_unittests \ + components_browsertests \ + components_unittests \ + compositor_unittests \ + content_browsertests \ + content_unittests \ + crypto_unittests \ + dbus_unittests \ + device_unittests \ + display_unittests \ + events_unittests \ + extensions_browsertests \ + extensions_unittests \ + gcm_unit_tests \ + gfx_unittests \ + gl_unittests \ + gn_unittests \ + google_apis_unittests \ + gpu_unittests \ + interactive_ui_tests \ + ipc_mojo_unittests \ + ipc_tests \ + jingle_unittests \ + media_unittests \ + midi_unittests \ + mojo_common_unittests \ + mojo_public_bindings_unittests \ + mojo_public_environment_unittests \ + mojo_public_system_unittests \ + mojo_public_utility_unittests \ + mojo_system_unittests \ +%if 0%{?nacl} + nacl_loader_unittests \ +%endif + net_unittests \ + ppapi_unittests \ + printing_unittests \ + remoting_unittests \ + sandbox_linux_unittests \ + skia_unittests \ + sql_unittests \ + sync_integration_tests \ + sync_unit_tests \ + ui_base_unittests \ + ui_touch_selection_unittests \ + unit_tests \ + url_unittests \ + views_unittests \ + wm_unittests \ + " +%else +export CHROMIUM_BROWSER_UNIT_TESTS= +%endif + + +%global target out/Release + +../depot_tools/ninja -C %{target} -vvv chrome chrome_sandbox policy_templates $CHROMIUM_BROWSER_UNIT_TESTS + +# remote client +pushd remoting +../../depot_tools/ninja -C ../%{target} -vvv remoting_me2me_host remoting_start_host remoting_it2me_native_messaging_host remoting_me2me_native_messaging_host remoting_native_messaging_manifests remoting_resources +%if 0%{?build_remoting_app} +%if 0%{?nacl} +GOOGLE_CLIENT_ID_REMOTING_IDENTITY_API=%{chromoting_client_id} ../../depot_tools/ninja -vv -C ../out/Release/ remoting_webapp +%endif +%endif +popd + + +%install +rm -rf %{buildroot} +mkdir -p %{buildroot}%{_bindir} +mkdir -p %{buildroot}%{chromium_path} +cp -a %{SOURCE3} %{buildroot}%{chromium_path}/%{chromium_browser_channel}.sh +export BUILDTARGET=`cat /etc/redhat-release` +export CHROMIUM_PATH=%{chromium_path} +export CHROMIUM_BROWSER_CHANNEL=%{chromium_browser_channel} +sed -i "s|@@BUILDTARGET@@|$BUILDTARGET|g" %{buildroot}%{chromium_path}/%{chromium_browser_channel}.sh +sed -i "s|@@CHROMIUM_PATH@@|$CHROMIUM_PATH|g" %{buildroot}%{chromium_path}/%{chromium_browser_channel}.sh +sed -i "s|@@CHROMIUM_BROWSER_CHANNEL@@|$CHROMIUM_BROWSER_CHANNEL|g" %{buildroot}%{chromium_path}/%{chromium_browser_channel}.sh +%if "%{chromium_channel}" == "%%{nil}" +# Enable debug outputs for beta and dev channels +export EXTRA_FLAGS="--enable-logging=stderr --v=2" +sed -i "s|@@EXTRA_FLAGS@@|$EXTRA_FLAGS|g" %{buildroot}%{chromium_path}/%{chromium_browser_channel}.sh +%else +sed -i "s|@@EXTRA_FLAGS@@||g" %{buildroot}%{chromium_path}/%{chromium_browser_channel}.sh +%endif + +ln -s %{chromium_path}/%{chromium_browser_channel}.sh %{buildroot}%{_bindir}/%{chromium_browser_channel} +mkdir -p %{buildroot}%{_mandir}/man1/ + +pushd %{target} +cp -a *.pak locales resources icudtl.dat %{buildroot}%{chromium_path} +%if 0%{?nacl} +cp -a nacl_helper* *.nexe pnacl tls_edit %{buildroot}%{chromium_path} +chmod -x %{buildroot}%{chromium_path}/nacl_helper_bootstrap* *.nexe +%endif +cp -a protoc pseudo_locales pyproto %{buildroot}%{chromium_path} +cp -a chrome %{buildroot}%{chromium_path}/%{chromium_browser_channel} +cp -a chrome_sandbox %{buildroot}%{chromium_path}/chrome-sandbox +cp -a chrome.1 %{buildroot}%{_mandir}/man1/%{chromium_browser_channel}.1 +# V8 initial snapshots +# https://code.google.com/p/chromium/issues/detail?id=421063 +cp -a natives_blob.bin %{buildroot}%{chromium_path} +cp -a snapshot_blob.bin %{buildroot}%{chromium_path} +%if 0%{?shared} +cp -a lib %{buildroot}%{chromium_path} +%endif + +# Remote desktop bits +mkdir -p %{buildroot}%{crd_path} + +%if 0%{?shared} +pushd %{buildroot}%{crd_path} +ln -s %{chromium_path}/lib lib +popd +%endif + +# See remoting/host/installer/linux/Makefile for logic +cp -a native_messaging_host %{buildroot}%{crd_path}/native-messaging-host +cp -a remote_assistance_host %{buildroot}%{crd_path}/remote-assistance-host +cp -a remoting_locales %{buildroot}%{crd_path}/ +cp -a remoting_me2me_host %{buildroot}%{crd_path}/chrome-remote-desktop-host +cp -a remoting_start_host %{buildroot}%{crd_path}/start-host + +# chromium +mkdir -p %{buildroot}%{_sysconfdir}/chromium/native-messaging-hosts +# google-chrome +mkdir -p %{buildroot}%{_sysconfdir}/opt/chrome/ +cp -a remoting/* %{buildroot}%{_sysconfdir}/chromium/native-messaging-hosts/ +for i in %{buildroot}%{_sysconfdir}/chromium/native-messaging-hosts/*.json; do + sed -i 's|/opt/google/chrome-remote-desktop|%{crd_path}|g' $i +done +pushd %{buildroot}%{_sysconfdir}/opt/chrome/ +ln -s ../../chromium/native-messaging-hosts native-messaging-hosts +popd + +mkdir -p %{buildroot}/var/lib/chrome-remote-desktop +touch %{buildroot}/var/lib/chrome-remote-desktop/hashes + +mkdir -p %{buildroot}%{_sysconfdir}/pam.d/ +pushd %{buildroot}%{_sysconfdir}/pam.d/ +ln -s system-auth chrome-remote-desktop +popd + +%if 0%{?build_remoting_app} +%if 0%{?nacl} +cp -a remoting_client_plugin_newlib.* %{buildroot}%{chromium_path} +%endif +%endif +popd + +cp -a remoting/host/linux/linux_me2me_host.py %{buildroot}%{crd_path}/chrome-remote-desktop +cp -a remoting/host/installer/linux/is-remoting-session %{buildroot}%{crd_path}/ + +mkdir -p %{buildroot}%{_unitdir} +cp -a %{SOURCE11} %{buildroot}%{_unitdir}/ +sed -i 's|@@CRD_PATH@@|%{crd_path}|g' %{buildroot}%{_unitdir}/chrome-remote-desktop.service + +# Add directories for policy management +mkdir -p %{buildroot}%{_sysconfdir}/chromium/policies/managed +mkdir -p %{buildroot}%{_sysconfdir}/chromium/policies/recommended +cp -a ../%{name}-policies/common/html/en-US/*.html . + +# linux json files no longer in .zip file +#cp -a ../%{name}-policies/linux/examples/*.json . +cp -a out/Release/gen/chrome/app/policy/linux/examples/chrome.json . + +mkdir -p %{buildroot}%{_datadir}/icons/hicolor/256x256/apps +cp -a chrome/app/theme/chromium/product_logo_256.png %{buildroot}%{_datadir}/icons/hicolor/256x256/apps/%{chromium_browser_channel}.png + +mkdir -p %{buildroot}%{_datadir}/applications/ +desktop-file-install --dir %{buildroot}%{_datadir}/applications %{SOURCE4} + +mkdir -p %{buildroot}%{_datadir}/gnome-control-center/default-apps/ +cp -a %{SOURCE9} %{buildroot}%{_datadir}/gnome-control-center/default-apps/ + +%check +%if 0%{tests} +%if 0%{?tests_force_display} + export DISPLAY=:0 +%else + Xvfb :9 -screen 0 1024x768x24 & + + export XVFB_PID=$! + export DISPLAY=:9 +%endif + export LC_ALL="en_US.utf8" + + sleep 5 + + # Run tests and disable the failed ones + pushd %{target} + ( + cp -f chrome_sandbox chrome-sandbox + echo "Test sandbox needs to be owned by root and have the suid set" + if [ "$(id -u)" != "0" ]; then + sudo chown root:root chrome-sandbox && sudo chmod 4755 chrome-sandbox + else + chown root:root chrome-sandbox && chmod 4755 chrome-sandbox + fi + + # Example of failed or timed-out test annotation + # ./browser_tests \ + # --gtest_filter=-"\ + # `#failed`\ + # SandboxStatusUITest.testBPFSandboxEnabled:`#failed - not using BPF sandbox`\ + # :\ + # `#timed-out`\ + # CalculatorBrowserTest.Model:\ + # WebRtcBrowserTest.RunsAudioVideoWebRTCCallInTwoTabs\ + # " \ + + ./accessibility_unittests && \ + ./app_list_unittests && \ + ./app_shell_unittests && \ + ./aura_unittests && \ + ./base_unittests \ + --gtest_filter=-"\ + `#failed`\ + ICUStringConversionsTest.ConvertToUtf8AndNormalize\ + " \ + && \ + ./browser_tests \ + --gtest_filter=-"\ + `#failed`\ + DevToolsSanityTest.TestNetworkRawHeadersText:\ + DevToolsSanityTest.TestNetworkSize:\ + DevToolsSanityTest.TestNetworkSyncSize:\ + ExtensionWebstoreGetWebGLStatusTest.Allowed:\ + InlineLoginUISafeIframeBrowserTest.Basic:\ + InlineLoginUISafeIframeBrowserTest.ConfirmationRequiredForNonsecureSignin:\ + InlineLoginUISafeIframeBrowserTest.NoWebUIInIframe:\ + InlineLoginUISafeIframeBrowserTest.TopFrameNavigationDisallowed:\ + OutOfProcessPPAPITest.Graphics3D:\ + PolicyTest.Disable3DAPIs:\ + WebRtcWebcamBrowserTests/WebRtcWebcamBrowserTest.TestAcquiringAndReacquiringWebcam/0:\ + :\ + `#timed-out`\ + CalculatorBrowserTest.Model:\ + ImageFetcherImplBrowserTest.MultipleFetch:\ + ProfileManagerBrowserTest.DeletePasswords:\ + TabCaptureApiPixelTest.EndToEndThroughWebRTC:\ + WebRtcBrowserTest.RunsAudioVideoWebRTCCallInTwoTabs:\ + WebRtcSimulcastBrowserTest.TestVgaReturnsTwoSimulcastStreams\ + " \ + && \ + ./cacheinvalidation_unittests && \ + ./cast_unittests && \ + ./cc_unittests && \ + ./chromedriver_unittests && \ + ./components_unittests \ + --gtest_filter=-"\ + `#failed`\ + AutocompleteMatchTest.Duplicates:\ + BookmarkIndexTest.GetBookmarksMatchingWithURLs:\ + BookmarkIndexTest.MatchPositionsURLs:\ + InMemoryURLIndexTypesTest.StaticFunctions:\ + ScoredHistoryMatchTest.GetTopicalityScore:\ + ScoredHistoryMatchTest.Inlining:\ + ScoredHistoryMatchTest.ScoringTLD:\ + UrlFormatterTest.FormatUrlWithOffsets:\ + UrlFormatterTest.IDNToUnicodeFast:\ + UrlFormatterTest.IDNToUnicodeSlow\ + " \ + && \ + ./components_browsertests \ + --gtest_filter=-"\ + `#failed`\ + AutofillRiskFingerprintTest.GetFingerprint\ + " \ + && \ + ./compositor_unittests && \ + ./content_browsertests \ + --gtest_filter=-"\ + `#failed`\ + BrowserGpuChannelHostFactoryTest.:\ + BrowserGpuChannelHostFactoryTest.AlreadyEstablished:\ + BrowserGpuChannelHostFactoryTest.Basic:\ + ImageTransportFactoryBrowserTest.TestLostContext:\ + ImageTransportFactoryTearDownBrowserTest.LoseOnTearDown:\ + RenderViewImplTest.GetCompositionCharacterBoundsTest:\ + SignalTest.BasicSignalQueryTest:\ + SignalTest.BasicSignalSyncPointTest:\ + SignalTest.InvalidSignalQueryUnboundTest:\ + SignalTest.InvalidSignalSyncPointTest:\ + SignalTest.SignalQueryUnboundTest:\ + WebRtcBrowserTest.*:\ + :\ + `#timed-out`\ + WebRtcAecDumpBrowserTest.CallWithAecDump:\ + WebRtcAecDumpBrowserTest.CallWithAecDumpEnabledThenDisabled\ + " \ + && \ + ./content_unittests && \ + ./crypto_unittests && \ + ./dbus_unittests \ + --gtest_filter=-"\ + `#crashed`\ + EndToEndAsyncTest.InvalidObjectPath:\ + EndToEndAsyncTest.InvalidServiceName:\ + EndToEndSyncTest.InvalidObjectPath:\ + EndToEndSyncTest.InvalidServiceName:\ + MessageTest.SetInvalidHeaders\ + " \ + && \ + ./device_unittests && \ + ./display_unittests && \ + ./events_unittests && \ + ./extensions_browsertests && \ + ./extensions_unittests && \ + ./gcm_unit_tests && \ + ./gfx_unittests \ + --gtest_filter=-"\ + `#failed - missing Microsoft TrueType fonts`\ + FontListTest.Fonts_GetHeight_GetBaseline:\ + FontRenderParamsTest.Default:\ + FontRenderParamsTest.MissingFamily:\ + FontRenderParamsTest.Size:\ + FontRenderParamsTest.Style:\ + FontRenderParamsTest.SubstituteFamily:\ + FontRenderParamsTest.UseBitmaps:\ + FontTest.GetActualFontNameForTesting:\ + FontTest.LoadArial:\ + FontTest.LoadArialBold:\ + PlatformFontLinuxTest.DefaultFont:\ + RenderTextTest.HarfBuzz_FontListFallback:\ + RenderTextTest.SetFontList:\ + RenderTextTest.StringSizeRespectsFontListMetrics\ + :\ + `#crashed`\ + FontRenderParamsTest.Default:\ + FontRenderParamsTest.ForceFullHintingWhenAntialiasingIsDisabled:\ + FontRenderParamsTest.MissingFamily:\ + FontRenderParamsTest.NoFontconfigMatch:\ + FontRenderParamsTest.OnlySetConfiguredValues:\ + FontRenderParamsTest.Scalable:\ + FontRenderParamsTest.Size:\ + FontRenderParamsTest.Style:\ + FontRenderParamsTest.SubstituteFamily:\ + FontRenderParamsTest.UseBitmaps:\ + PlatformFontLinuxTest.DefaultFont\ + " \ + && \ + ./gl_unittests && \ + ./gn_unittests \ + --gtest_filter=-"\ + `#failed`\ + Format.004:\ + Format.007:\ + Format.012:\ + Format.013:\ + Format.014:\ + Format.015:\ + Format.017:\ + Format.019:\ + Format.020:\ + Format.021:\ + Format.023:\ + Format.031:\ + Format.033:\ + Format.038:\ + Format.043:\ + Format.046:\ + Format.048:\ + Format.056:\ + Format.057:\ + Format.062:\ + ParseTree.SortRangeExtraction:\ + Parser.CommentsAtEndOfBlock:\ + Parser.CommentsConnectedInList:\ + Parser.CommentsEndOfBlockSingleLine:\ + Parser.CommentsLineAttached:\ + Parser.CommentsSuffix:\ + Parser.CommentsSuffixDifferentLine:\ + Parser.CommentsSuffixMultiple\ + " \ + && \ + ./google_apis_unittests && \ + ./gpu_unittests && \ + ./interactive_ui_tests \ + --gtest_filter=-"\ + `#failed`\ + AshNativeCursorManagerTest.CursorChangeOnEnterNotify:\ + BookmarkBarViewTest5.DND:\ + OmniboxViewViewsTest.DeactivateTouchEditingOnExecuteCommand:\ + OmniboxViewViewsTest.SelectAllOnTap:\ + StartupBrowserCreatorTest.LastUsedProfileActivated:\ + X11TopmostWindowFinderTest.Basic:\ + X11TopmostWindowFinderTest.Menu:\ + :\ + `#timed-out`\ + BookmarkBarViewTest9.ScrollButtonScrolls:\ + DockedPanelBrowserTest.CloseSqueezedPanels:\ + DockedPanelBrowserTest.MinimizeSqueezedActive:\ + GlobalCommandsApiTest.GlobalCommand\ + " \ + && \ + ./ipc_mojo_unittests && \ + ./ipc_tests && \ + ./jingle_unittests && \ + ./midi_unittests && \ + ./media_unittests && \ + ./mojo_common_unittests && \ + ./mojo_public_bindings_unittests && \ + ./mojo_public_environment_unittests && \ + ./mojo_public_system_unittests && \ + ./mojo_public_utility_unittests && \ + ./mojo_system_unittests && \ +%if 0%{?nacl} + ./nacl_loader_unittests && \ +%endif + ./net_unittests \ + --gtest_filter=-"\ + `#failed`\ + CertVerifyProcTest.TestKnownRoot\ + " \ + && \ + ./ppapi_unittests && \ + ./printing_unittests && \ + ./remoting_unittests && \ + ./sandbox_linux_unittests && \ + ./skia_unittests && \ + ./sql_unittests && \ + ./ui_base_unittests && \ + ./ui_touch_selection_unittests && \ + ./sync_unit_tests && \ + ./unit_tests \ + --gtest_filter=-"\ + `#failed - some need https://chromium.googlesource.com/chromium/deps/hunspell_dictionaries/+/master`\ + BookmarkProviderTest.StripHttpAndAdjustOffsets:\ + HQPOrderingTest.TEAMatch:\ + HistoryQuickProviderTest.ContentsClass:\ + LimitedInMemoryURLIndexTest.Initialization:\ + MultilingualSpellCheckTest.MultilingualSpellCheckParagraph:\ + MultilingualSpellCheckTest.MultilingualSpellCheckSuggestions:\ + MultilingualSpellCheckTest.MultilingualSpellCheckWord:\ + MultilingualSpellCheckTest.MultilingualSpellCheckWordEnglishSpanish:\ + SpellCheckTest.CreateTextCheckingResultsKeepsMarkers:\ + SpellCheckTest.DictionaryFiles:\ + SpellCheckTest.EnglishWords:\ + SpellCheckTest.GetAutoCorrectionWord_EN_US:\ + SpellCheckTest.LogicalSuggestions:\ + SpellCheckTest.MisspelledWords:\ + SpellCheckTest.NoSuggest:\ + SpellCheckTest.SpellCheckParagraphLongSentenceMultipleMisspellings:\ + SpellCheckTest.SpellCheckParagraphMultipleMisspellings:\ + SpellCheckTest.SpellCheckParagraphSingleMisspellings:\ + SpellCheckTest.SpellCheckStrings_EN_US:\ + SpellCheckTest.SpellCheckSuggestions_EN_US:\ + SpellCheckTest.SpellingEngine_CheckSpelling:\ + SpellcheckWordIteratorTest.FindSkippableWordsKhmer:\ + :\ + `#crashed`\ + ListChangesTaskTest.UnderTrackedFolder:\ + ListChangesTaskTest.UnrelatedChange:\ + SpellCheckTest.RequestSpellCheckWithMisspellings:\ + SpellCheckTest.RequestSpellCheckWithMultipleRequests:\ + SpellCheckTest.RequestSpellCheckWithSingleMisspelling\ + " \ + && \ + ./url_unittests && \ + ./views_unittests \ + --gtest_filter=-"\ + `#failed`\ + DesktopWindowTreeHostX11HighDPITest.LocatedEventDispatchWithCapture:\ + LabelTest.FontPropertySymbol:\ + WidgetTest.WindowMouseModalityTest\ + " \ + && \ + ./wm_unittests \ + ) + popd + + if [ -n "$XVFB_PID" ]; then + kill $XVFB_PID + unset XVFB_PID + unset DISPLAY + fi +%endif + +%clean +rm -rf %{buildroot} + +%post +# Set SELinux labels - semanage itself will adjust the lib directory naming +semanage fcontext -a -t bin_t /usr/lib/%{chromium_browser_channel} +semanage fcontext -a -t bin_t /usr/lib/%{chromium_browser_channel}/%{chromium_browser_channel}.sh +semanage fcontext -a -t chrome_sandbox_exec_t /usr/lib/chrome-sandbox +restorecon -R -v %{chromium_path}/%{chromium_browser_channel} + +touch --no-create %{_datadir}/icons/hicolor &>/dev/null || : +update-desktop-database &> /dev/null || : + +%postun +if [ $1 -eq 0 ] ; then + touch --no-create %{_datadir}/icons/hicolor &>/dev/null + gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : +fi +update-desktop-database &> /dev/null || : + +%posttrans +gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : + +%pre -n chrome-remote-desktop +getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-desktop + +%post -n chrome-remote-desktop +%systemd_post chrome-remote-desktop.service + +%preun -n chrome-remote-desktop +%systemd_preun chrome-remote-desktop.service + +%postun -n chrome-remote-desktop +%systemd_postun_with_restart chrome-remote-desktop.service + +%files +%defattr(-,root,root,-) +%{_bindir}/%{chromium_browser_channel} +%dir %{chromium_path} +%{chromium_path}/*.bin +%{chromium_path}/*.pak +%{chromium_path}/icudtl.dat +%{chromium_path}/%{chromium_browser_channel} +%{chromium_path}/%{chromium_browser_channel}.sh +%if 0%{?nacl} +%{chromium_path}/nacl_helper* +%{chromium_path}/*.nexe +%{chromium_path}/pnacl/ +%{chromium_path}/tls_edit +%endif +%{chromium_path}/protoc +# %%{chromium_path}/remoting_locales/ +%{chromium_path}/pseudo_locales/ +# %%{chromium_path}/plugins/ +%{chromium_path}/pyproto/ +%attr(4755, root, root) %{chromium_path}/chrome-sandbox +%{chromium_path}/locales/ +%{chromium_path}/resources/ +%{_mandir}/man1/%{chromium_browser_channel}.* +%{_datadir}/icons/hicolor/256x256/apps/%{chromium_browser_channel}.png +%{_datadir}/applications/*.desktop +%{_datadir}/gnome-control-center/default-apps/chromium-browser.xml + +%dir %{_sysconfdir}/chromium/policies/managed +%dir %{_sysconfdir}/chromium/policies/recommended +%doc chrome_policy_list.html *.json + +%if 0%{?shared} +%files libs +%{chromium_path}/lib/ +%endif + +%files -n chrome-remote-desktop +%{crd_path}/chrome-remote-desktop +%{crd_path}/chrome-remote-desktop-host +%{crd_path}/is-remoting-session +%if 0%{?shared} +%{crd_path}/lib +%endif +%{crd_path}/native-messaging-host +%{crd_path}/remote-assistance-host +%{_sysconfdir}/pam.d/chrome-remote-desktop +%{_sysconfdir}/chromium/native-messaging-hosts/ +%{_sysconfdir}/opt/chrome/ +%{crd_path}/remoting_locales/ +%{crd_path}/start-host +%{_unitdir}/chrome-remote-desktop.service +/var/lib/chrome-remote-desktop/ +%if 0%{?build_remoting_app} +%if 0%{?nacl} +%{chromium_path}/remoting_client_plugin_newlib.* +%endif +%endif + +%changelog +* Tue Jul 19 2016 Tom Callaway 52.0.2743.75-1 +- update to 52.0.2743.75 + +* Wed Jul 6 2016 Tom Callaway 52.0.2743.60-1 +- bump to 52.0.2743.60, disable nacl for now + +* Mon May 9 2016 Tom Callaway 52.0.2723.2-1 +- force to dev to see if it works better on F24+ + +* Wed May 4 2016 Tom Callaway 50.0.2661.94-6 +- apply upstream fix for https://bugs.chromium.org/p/chromium/issues/detail?id=604534 + +* Tue May 3 2016 Tom Callaway 50.0.2661.94-5 +- use bundled re2 (conditionalize it) + +* Tue May 3 2016 Tom Callaway 50.0.2661.94-4 +- disable asan (it never quite built) +- do not preserve re2 bundled tree, causes header/library mismatch + +* Mon May 2 2016 Tom Callaway 50.0.2661.94-3 +- enable AddressSanize (ASan) for debugging + +* Sat Apr 30 2016 Tom Callaway 50.0.2661.94-2 +- use bundled icu always. *sigh* + +* Fri Apr 29 2016 Tom Callaway 50.0.2661.94-1 +- update to 50.0.2661.94 + +* Wed Apr 27 2016 Tom Callaway 50.0.2661.86-1 +- update to 50.0.2661.86 + +* Thu Mar 17 2016 Tom Callaway 49.0.2623.87-4 +- protect third_party/woff2 + +* Thu Mar 17 2016 Tom Callaway 49.0.2623.87-3 +- add BuildRequires: libffi-devel + +* Thu Mar 17 2016 Tom Callaway 49.0.2623.87-2 +- explicitly disable sysroot + +* Thu Mar 17 2016 Tom Callaway 49.0.2623.87-1 +- update to 49.0.2623.87 + +* Mon Feb 29 2016 Tom Callaway 48.0.2564.116-3 +- Happy Leap Day! +- add Requires: u2f-hidraw-policy for u2f token support +- add Requires: xorg-x11-server-Xvfb for chrome-remote-desktop + +* Fri Feb 26 2016 Tom Callaway 48.0.2564.116-2 +- fix icu BR + +* Wed Feb 24 2016 Tom Callaway 48.0.2564.116-1 +- Update to 48.0.2564.116 +- conditionalize icu properly +- fix libusbx handling (bz1270324) + +* Wed Feb 17 2016 Tom Callaway 48.0.2564.103-2 +- fixes for gcc6 + +* Mon Feb 8 2016 Tom Callaway 48.0.2564.103-1 +- update to 48.0.2564.103 +- use bundled libsrtp (because upstream has coded themselves into an ugly corner) + +* Fri Jan 22 2016 Tom Callaway 48.0.2564.82-1 +- update to 48.0.2564.82 + +* Fri Jan 15 2016 Tom Callaway 47.0.2526.111-1 +- update to 47.0.2526.111 + +* Thu Jan 07 2016 Tomas Popela 47.0.2526.106-2 +- compare hashes when downloading the tarballs +- Google started to include the Debian sysroots in tarballs - remove them while + processing the tarball +- add a way to not use the system display server for tests instead of Xvfb +- update the depot_tools checkout to get some GN fixes +- use the remove_bundled_libraries script +- update the clean_ffmpeg script to print errors when some files that we are + processing are missing +- update the clean_ffmpeg script to operate on tarball's toplevel folder +- don't show comments as removed tests in get_linux_tests_names script +- rework the process_ffmpeg_gyp script (also rename it to + get_free_ffmpeg_source_files) to use the GN files insted of GYP (but we still + didn't switched to GN build) + +* Wed Dec 16 2015 Tom Callaway 47.0.2526.106-1 +- update to 47.0.2526.106 + +* Tue Dec 15 2015 Tom Callaway 47.0.2526.80-4 +- entirely patch out the broken fd counter from the nacl loader code + killing it with fire would be better, but then chromium is on fire + and that somehow makes it worse. + +* Mon Dec 14 2015 Tom Callaway 47.0.2526.80-3 +- revert nacl fd patch (now we see 6 fds! 6 LIGHTS!) + +* Fri Dec 11 2015 Tom Callaway 47.0.2526.80-2 +- build everything shared, but when we do shared builds, make -libs subpackage +- make chrome-remote-desktop dep on -libs subpackage in shared builds + +* Wed Dec 9 2015 Tom Callaway 47.0.2526.80-1 +- update to 47.0.2526.80 +- only build ffmpeg shared, not any other libs + this is because if we build the other libs shared, then our + chrome-remote-desktop build deps on those libs and we do not want that + +* Tue Dec 8 2015 Tom Callaway 47.0.2526.73-2 +- The nacl loader claims it sees 7 fds open ALL THE TIME, and fails + So, we tell it that it is supposed to see 7. + I suspect building with shared objects is causing this disconnect. + +* Wed Dec 2 2015 Tom Callaway 47.0.2526.73-1 +- update to 47.0.2526.73 +- rework chrome-remote-desktop subpackage to work for google-chrome and chromium + +* Wed Dec 2 2015 Tomas Popela 47.0.2526.69-1 +- Update to 47.0.2526.69 + +* Tue Dec 1 2015 Tom Callaway 46.0.2490.86-4 +- still more remote desktop changes + +* Mon Nov 30 2015 Tom Callaway 46.0.2490.86-3 +- lots of remote desktop cleanups + +* Thu Nov 12 2015 Tom Callaway 46.0.2490.86-2 +- re-enable Requires/BuildRequires for libusbx +- add remote-desktop subpackage + +* Wed Nov 11 2015 Tomas Popela 46.0.2490.86-1 +- update to 46.0.2490.86 +- clean the SPEC file +- add support for policies: https://www.chromium.org/administrators/linux-quick-start +- replace exec_mem_t SELinux label with bin_t - see rhbz#1281437 +- refresh scripts that are used for processing the original tarball + +* Fri Oct 30 2015 Tom Callaway 46.0.2490.80-5 +- tls_edit is a nacl thing. who knew? + +* Thu Oct 29 2015 Tom Callaway 46.0.2490.80-4 +- more nacl fixups for i686 case + +* Thu Oct 29 2015 Tom Callaway 46.0.2490.80-3 +- conditionalize nacl/nonacl, disable nacl on i686, build for i686 + +* Mon Oct 26 2015 Tom Callaway 46.0.2490.80-2 +- conditionalize shared bits (enable by default) + +* Fri Oct 23 2015 Tom Callaway 46.0.2490.80-1 +- update to 46.0.2490.80 + +* Thu Oct 15 2015 Tom Callaway 46.0.2490.71-1 +- update to 46.0.2490.71 + +* Thu Oct 15 2015 Tom Callaway 45.0.2454.101-2 +- fix icu handling for f21 and older + +* Mon Oct 5 2015 Tom Callaway 45.0.2454.101-1 +- update to 45.0.2454.101 + +* Thu Jun 11 2015 Tom Callaway 43.0.2357.124-1 +- update to 43.0.2357.124 + +* Tue Jun 2 2015 Tom Callaway 43.0.2357.81-1 +- update to 43.0.2357.81 + +* Thu Feb 26 2015 Tom Callaway 40.0.2214.115-1 +- update to 40.0.2214.115 + +* Thu Feb 19 2015 Tom Callaway 40.0.2214.111-1 +- update to 40.0.2214.111 + +* Mon Feb 2 2015 Tom Callaway 40.0.2214.94-1 +- update to 40.0.2214.94 + +* Tue Jan 27 2015 Tom Callaway 40.0.2214.93-1 +- update to 40.0.2214.93 + +* Sat Jan 24 2015 Tom Callaway 40.0.2214.91-1 +- update to 40.0.2214.91 + +* Wed Jan 21 2015 Tom Callaway 39.0.2171.95-3 +- use bundled icu on Fedora < 21, we need 5.2 + +* Tue Jan 6 2015 Tom Callaway 39.0.2171.95-2 +- rebase off Tomas's spec file for Fedora + +* Fri Dec 12 2014 Tomas Popela 39.0.2171.95-1 +- Update to 39.0.2171.95 +- Resolves: rhbz#1173448 + +* Wed Nov 26 2014 Tomas Popela 39.0.2171.71-1 +- Update to 39.0.2171.71 +- Resolves: rhbz#1168128 + +* Wed Nov 19 2014 Tomas Popela 39.0.2171.65-2 +- Revert the chrome-sandbox rename to chrome_sandbox +- Resolves: rhbz#1165653 + +* Wed Nov 19 2014 Tomas Popela 39.0.2171.65-1 +- Update to 39.0.2171.65 +- Use Red Hat Developer Toolset for compilation +- Set additional SELinux labels +- Add more unit tests +- Resolves: rhbz#1165653 + +* Fri Nov 14 2014 Tomas Popela 38.0.2125.122-1 +- Update to 38.0.2125.122 +- Resolves: rhbz#1164116 + +* Wed Oct 29 2014 Tomas Popela 38.0.2125.111-1 +- Update to 38.0.2125.111 +- Resolves: rhbz#1158347 + +* Fri Oct 24 2014 Tomas Popela 38.0.2125.104-2 +- Fix the situation when the return key (and keys from numpad) does not work + in HTML elements with input +- Resolves: rhbz#1153988 +- Dynamically determine the presence of the PepperFlash plugin +- Resolves: rhbz#1154118 + +* Thu Oct 16 2014 Tomas Popela 38.0.2125.104-1 +- Update to 38.0.2125.104 +- Resolves: rhbz#1153012 + +* Thu Oct 09 2014 Tomas Popela 38.0.2125.101-2 +- The boringssl is used for tests, without the possibility of using + the system openssl instead. Remove the openssl and boringssl sources + when not building the tests. +- Resolves: rhbz#1004948 + +* Wed Oct 08 2014 Tomas Popela 38.0.2125.101-1 +- Update to 38.0.2125.101 +- System openssl is used for tests, otherwise the bundled boringssl is used +- Don't build with clang +- Resolves: rhbz#1004948 + +* Wed Sep 10 2014 Tomas Popela 37.0.2062.120-1 +- Update to 37.0.2062.120 +- Resolves: rhbz#1004948 + +* Wed Aug 27 2014 Tomas Popela 37.0.2062.94-1 +- Update to 37.0.2062.94 +- Include the pdf viewer library + +* Wed Aug 13 2014 Tomas Popela 36.0.1985.143-1 +- Update to 36.0.1985.143 +- Use system openssl instead of bundled one +- Resolves: rhbz#1004948 + +* Thu Jul 17 2014 Tomas Popela 36.0.1985.125-1 +- Update to 36.0.1985.125 +- Add libexif as BR +- Resolves: rhbz#1004948 + +* Wed Jun 11 2014 Tomas Popela 35.0.1916.153-1 +- Update to 35.0.1916.153 +- Resolves: rhbz#1004948 + +* Wed May 21 2014 Tomas Popela 35.0.1916.114-1 +- Update to 35.0.1916.114 +- Bundle python-argparse +- Resolves: rhbz#1004948 + +* Wed May 14 2014 Tomas Popela 34.0.1847.137-1 +- Update to 34.0.1847.137 +- Resolves: rhbz#1004948 + +* Mon May 5 2014 Tomas Popela 34.0.1847.132-1 +- Update to 34.0.1847.132 +- Bundle depot_tools and switch from make to ninja +- Remove PepperFlash +- Resolves: rhbz#1004948 + +* Mon Feb 3 2014 Tomas Popela 32.0.1700.102-1 +- Update to 32.0.1700.102 + +* Thu Jan 16 2014 Tomas Popela 32.0.1700.77-1 +- Update to 32.0.1700.77 +- Properly kill Xvfb when tests fails +- Add libdrm as BR +- Add libcap as BR + +* Tue Jan 7 2014 Tomas Popela 31.0.1650.67-2 +- Minor changes in spec files and scripts +- Add Xvfb as BR for tests +- Add policycoreutils-python as Requires +- Compile unittests and run them in chech phase, but turn them off by default + as many of them are failing in Brew + +* Thu Dec 5 2013 Tomas Popela 31.0.1650.67-1 +- Update to 31.0.1650.63 + +* Thu Nov 21 2013 Tomas Popela 31.0.1650.57-1 +- Update to 31.0.1650.57 + +* Wed Nov 13 2013 Tomas Popela 31.0.1650.48-1 +- Update to 31.0.1650.48 +- Minimal supported RHEL6 version is now RHEL 6.5 due to GTK+ + +* Fri Oct 25 2013 Tomas Popela 30.0.1599.114-1 +- Update to 30.0.1599.114 +- Hide the infobar with warning that this version of OS is not supported +- Polished the chromium-latest.py + +* Thu Oct 17 2013 Tomas Popela 30.0.1599.101-1 +- Update to 30.0.1599.101 +- Minor changes in scripts + +* Wed Oct 2 2013 Tomas Popela 30.0.1599.66-1 +- Update to 30.0.1599.66 +- Automated the script for cleaning the proprietary sources from ffmpeg. + +* Thu Sep 19 2013 Tomas Popela 29.0.1547.76-1 +- Update to 29.0.1547.76 +- Added script for removing the proprietary sources from ffmpeg. This script is called during cleaning phase of ./chromium-latest --rhel + +* Mon Sep 16 2013 Tomas Popela 29.0.1547.65-2 +- Compile with Dproprietary_codecs=0 and Dffmpeg_branding=Chromium to disable proprietary codecs (i.e. MP3) + +* Mon Sep 9 2013 Tomas Popela 29.0.1547.65-1 +- Initial version based on Tom Callaway's work + diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh new file mode 100755 index 0000000..07eb0a3 --- /dev/null +++ b/clean_ffmpeg.sh @@ -0,0 +1,212 @@ +#!/bin/bash +# Copyright 2013-2015 Tomas Popela +# Permission is hereby granted, free of charge, to any person obtaining +# a copy of this software and associated documentation files (the +# "Software"), to deal in the Software without restriction, including +# without limitation the rights to use, copy, modify, merge, publish, +# distribute, sublicense, and/or sell copies of the Software, and to +# permit persons to whom the Software is furnished to do so, subject to +# the following conditions: +# +# The above copyright notice and this permission notice shall be included +# in all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +# IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +# CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +# SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +# $1 files +# $2 verbose +function copy_files() { + for file in $1 + do + dir_name=`echo $file | sed 's%/[^/]*$%/%'` + if [[ $dir_name == */* ]]; then + tmp_dir_name="tmp_"$dir_name + mkdir -p ../tmp_ffmpeg/$tmp_dir_name + else + tmp_dir_name=$file + fi + + if [ "$2" -eq 1 ]; then + cp $file ../tmp_ffmpeg/$tmp_dir_name + else + cp $file ../tmp_ffmpeg/$tmp_dir_name > /dev/null 2>&1 + fi + done +} + +where=`pwd` + +generated_files=`./get_free_ffmpeg_source_files.py $1 $2` +# As the build system files does not contain the header files, cheat here +# and generate the header files names from source files. These that does not +# exist will be later skipped while copying. +generated_files_headers="${generated_files//.c/.h}" +generated_files_headers="$generated_files_headers ${generated_files//.c/_internal.h}" +if [ "$2" -ne "1" ]; then + generated_files_headers="$generated_files_headers ${generated_files//.S/.h}" +fi +generated_files_headers="$generated_files_headers ${generated_files//.asm/.h}" + +header_files=" libavcodec/x86/inline_asm.h \ + libavcodec/x86/mathops.h \ + libavcodec/x86/vp56_arith.h \ + libavcodec/avcodec.h \ + libavcodec/blockdsp.h \ + libavcodec/bytestream.h \ + libavcodec/dct.h \ + libavcodec/error_resilience.h \ + libavcodec/fdctdsp.h \ + libavcodec/fft.h \ + libavcodec/fft-internal.h \ + libavcodec/fft_table.h \ + libavcodec/flac.h \ + libavcodec/frame_thread_encoder.h \ + libavcodec/get_bits.h \ + libavcodec/h263dsp.h \ + libavcodec/h264chroma.h \ + libavcodec/idctdsp.h \ + libavcodec/internal.h \ + libavcodec/mathops.h \ + libavcodec/me_cmp.h \ + libavcodec/motion_est.h \ + libavcodec/mpegpicture.h \ + libavcodec/mpegutils.h \ + libavcodec/mpegvideo.h \ + libavcodec/mpegvideodsp.h \ + libavcodec/mpegvideoencdsp.h \ + libavcodec/options_table.h \ + libavcodec/pcm_tablegen.h \ + libavcodec/pixblockdsp.h \ + libavcodec/pixels.h \ + libavcodec/put_bits.h \ + libavcodec/qpeldsp.h \ + libavcodec/ratecontrol.h \ + libavcodec/rectangle.h \ + libavcodec/rl.h \ + libavcodec/rnd_avg.h \ + libavcodec/thread.h \ + libavcodec/version.h \ + libavcodec/vp3data.h \ + libavcodec/vp56.h \ + libavcodec/vp56dsp.h \ + libavcodec/vp8data.h \ + libavformat/audiointerleave.h \ + libavformat/avformat.h \ + libavformat/dv.h \ + libavformat/internal.h \ + libavformat/pcm.h \ + libavformat/rdt.h \ + libavformat/rtp.h \ + libavformat/rtpdec.h \ + libavformat/spdif.h \ + libavformat/srtp.h \ + libavformat/options_table.h \ + libavformat/version.h \ + libavformat/w64.h \ + libavutil/x86/asm.h \ + libavutil/x86/bswap.h \ + libavutil/x86/cpu.h \ + libavutil/x86/emms.h + libavutil/x86/intreadwrite.h \ + libavutil/x86/intmath.h + libavutil/x86/timer.h \ + libavutil/atomic.h \ + libavutil/atomic_gcc.h \ + libavutil/attributes.h \ + libavutil/audio_fifo.h \ + libavutil/avassert.h \ + libavutil/avutil.h \ + libavutil/bswap.h \ + libavutil/common.h \ + libavutil/colorspace.h \ + libavutil/cpu.h \ + libavutil/cpu_internal.h \ + libavutil/dynarray.h \ + libavutil/internal.h \ + libavutil/intfloat.h \ + libavutil/intreadwrite.h \ + libavutil/libm.h \ + libavutil/lls.h \ + libavutil/macros.h \ + libavutil/pixfmt.h \ + libavutil/qsort.h \ + libavutil/replaygain.h \ + libavutil/thread.h \ + libavutil/timer.h \ + libavutil/timestamp.h \ + libavutil/version.h \ + libswresample/swresample.h \ + libswresample/version.h \ + compat/va_copy.h " + +manual_files=" libavcodec/x86/hpeldsp_rnd_template.c \ + libavcodec/x86/rnd_template.c \ + libavcodec/x86/videodsp_init.c \ + libavcodec/x86/vorbisdsp_init.c \ + libavcodec/bit_depth_template.c \ + libavcodec/fft_template.c \ + libavcodec/h264pred_template.c \ + libavcodec/hpel_template.c \ + libavcodec/mdct_template.c \ + libavcodec/pel_template.c \ + libavcodec/utils.c \ + libavcodec/videodsp_template.c \ + libavformat/options.c \ + libavformat/pcm.c \ + libavformat/utils.c \ + libavutil/cpu.c \ + libavutil/x86/cpu.c \ + libavutil/x86/float_dsp_init.c \ + libavutil/x86/x86inc.asm \ + libavutil/x86/x86util.asm " + +other_files=" BUILD.gn \ + Changelog \ + COPYING.GPLv2 \ + COPYING.GPLv3 \ + COPYING.LGPLv2.1 \ + COPYING.LGPLv3 \ + CREDITS \ + CREDITS.chromium \ + ffmpeg.gyp \ + ffmpeg_generated.gypi \ + ffmpeg_generated.gni \ + ffmpeg_options.gni \ + ffmpegsumo.ver \ + INSTALL.md \ + LICENSE.md \ + MAINTAINERS \ + OWNERS \ + README.chromium \ + README.md \ + RELEASE \ + xcode_hack.c " + +cd $1/third_party/ffmpeg + +copy_files "$generated_files" 0 +copy_files "$generated_files_headers" 0 +copy_files "$manual_files" 1 +copy_files "$other_files" 1 +copy_files "$header_files" 1 + +mkdir -p ../tmp_ffmpeg/tmp_chromium/config +cp -r chromium/config ../tmp_ffmpeg/tmp_chromium + +cd ../tmp_ffmpeg +for tmp_directory in $(find . -type d -name 'tmp_*') + do + new_name=`echo $tmp_directory | sed 's/tmp_//'` + mv $tmp_directory $new_name + done + +cd $where + +rm -rf $1/third_party/ffmpeg +mv $1/third_party/tmp_ffmpeg $1/third_party/ffmpeg diff --git a/get_free_ffmpeg_source_files.py b/get_free_ffmpeg_source_files.py new file mode 100755 index 0000000..e659d63 --- /dev/null +++ b/get_free_ffmpeg_source_files.py @@ -0,0 +1,73 @@ +#!/usr/bin/python +# Copyright 2015 Tomas Popela +# Permission is hereby granted, free of charge, to any person obtaining +# a copy of this software and associated documentation files (the +# "Software"), to deal in the Software without restriction, including +# without limitation the rights to use, copy, modify, merge, publish, +# distribute, sublicense, and/or sell copies of the Software, and to +# permit persons to whom the Software is furnished to do so, subject to +# the following conditions: +# +# The above copyright notice and this permission notice shall be included +# in all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +# IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +# CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +# SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +import sys +import re + +def append_sources (input_sources, output_sources): + + # Get the source files. + source_files = re.findall(r"\"(.*?)\"", input_sources) + output_sources += source_files + + +def parse_sources(input_sources, output_sources, arch_not_arm): + + # Get the type of sources in one group and sources itself in the other one. + blocks = re.findall(r"(ffmpeg[^\s]*).*?\[(.*?)]", input_sources, re.DOTALL) + for block in blocks: + if (arch_not_arm): + if not 'ffmpeg_gas_sources' in block[0]: + append_sources (block[1], output_sources) + else: + append_sources (block[1], output_sources) + + +def parse_ffmpeg_gyni_file(gyni_path, arch_not_arm): + + with open(gyni_path, "r") as input_file: + content = input_file.read().replace('\n', '') + + output_sources = [] + # Get all the sections. + sections = re.findall(r"if (.*?})", content, re.DOTALL) + for section in sections: + # Get all the conditions (first group) and sources (second group)for the + # current section. + blocks = re.findall(r"(\(.*?\))\s\{(.*?)\}", section, re.DOTALL) + for block in blocks: + conditions = re.findall(r"\(?\((.*?)\)", block[0]) + for condition in conditions: + limitations = ['is_linux', 'ffmpeg_branding == "Chromium"'] + if all(limitation in condition for limitation in limitations): + if (arch_not_arm): + if ('x64' in condition) or ('x86' in condition): + parse_sources (block[1], output_sources, arch_not_arm) + else: + parse_sources (block[1], output_sources, arch_not_arm) + + print ' '.join(output_sources) + + +if __name__ == "__main__": + + path = "%s/third_party/ffmpeg/ffmpeg_generated.gni" % sys.argv[1] + parse_ffmpeg_gyni_file (path, False if sys.argv[2] == "0" else True) diff --git a/get_linux_tests_names.py b/get_linux_tests_names.py new file mode 100755 index 0000000..08a913a --- /dev/null +++ b/get_linux_tests_names.py @@ -0,0 +1,121 @@ +#!/usr/bin/python +# Copyright 2015 Tomas Popela +# Permission is hereby granted, free of charge, to any person obtaining +# a copy of this software and associated documentation files (the +# "Software"), to deal in the Software without restriction, including +# without limitation the rights to use, copy, modify, merge, publish, +# distribute, sublicense, and/or sell copies of the Software, and to +# permit persons to whom the Software is furnished to do so, subject to +# the following conditions: +# +# The above copyright notice and this permission notice shall be included +# in all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +# IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +# CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +# SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +try: + import argparse + optparse = False +except ImportError: + from optparse import OptionParser + optparse = True +import locale +import simplejson as json +import sys +import os + +if __name__ == "__main__": + + added = [] + + # Create the parser object + if optparse: + parser = OptionParser() + parser_add_argument = parser.add_option + else: + parser = argparse.ArgumentParser() + parser_add_argument = parser.add_argument + + parser_add_argument( + '--check', + help='Check the tests against given SPEC file') + parser_add_argument( + '--spec', action='store_true', + help='Prints the test targets in format suitable for SPEC file') + parser_add_argument( + 'path', nargs='?', default=os.getcwd(), + help='Path to Chromium sources') + + # Parse the args + if optparse: + args, options = parser.parse_args() + else: + args = parser.parse_args() + + tests_path = "%s/testing/buildbot/chromium.linux.json" % args.path + + try: + with open(tests_path, "r") as input_file: + json_file = json.load(input_file) + except IOError: + print "Cannot find JSON file with tests in path '%s'!" % args.path + sys.exit(1) + + + for test in json_file['Linux Tests']['gtest_tests']: + if isinstance(test, dict): + added.append(test['test']) + else: + added.append(test) + + if args.check: + removed = [] + disabled = [] + in_tests = False + spec_file = None + + with open(args.check) as f: + for line in f: + if "CHROMIUM_BROWSER_UNIT_TESTS=" in line: + in_tests = True + continue + + if in_tests and line.endswith('"\n'): + break + + if in_tests: + found = False + for test in added: + if test in line: + if "#" in line: + disabled.append(test) + added.remove(test) + found = True + break + if not found: + if not "%" in line: + removed.append(line) + + for test in removed: + print "REMOVED" + print "\t" + test; + for test in added: + print "ADDED" + print "\t" + test; + for test in disabled: + print "DISABLED" + print "\t" + test; + + sys.exit(0) + + for name in added: + if args.spec: + print "\t" + name + " \\" + else: + print name diff --git a/sources b/sources index e69de29..c0b5f56 100644 --- a/sources +++ b/sources @@ -0,0 +1,3 @@ +ceaa558c5a94789d5a7a69837ce035ef chromium-52.0.2743.75-clean.tar.xz +49a7f897775cce21d2b69968b8af1cea depot_tools.git-master.tar.gz +af24ec9bc5e86e10841f44397db5ffda policy_templates.zip From c30bb16136367bab9bc67a8b0c4567ccb7588fe2 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 21 Jul 2016 11:49:12 -0400 Subject: [PATCH 0002/1449] 52.0.2743.82 --- .gitignore | 1 + chromium-52.0.2743.82-cups22.patch | 24 ++++++++++ chromium.spec | 71 ++++++++++++++++++++++++++---- sources | 4 +- 4 files changed, 90 insertions(+), 10 deletions(-) create mode 100644 chromium-52.0.2743.82-cups22.patch diff --git a/.gitignore b/.gitignore index ab677cd..271132b 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ /chromium-52.0.2743.75-clean.tar.xz /depot_tools.git-master.tar.gz /policy_templates.zip +/chromium-52.0.2743.82-clean.tar.xz diff --git a/chromium-52.0.2743.82-cups22.patch b/chromium-52.0.2743.82-cups22.patch new file mode 100644 index 0000000..b3823db --- /dev/null +++ b/chromium-52.0.2743.82-cups22.patch @@ -0,0 +1,24 @@ +diff -up chromium-52.0.2743.82/printing/BUILD.gn.cups22 chromium-52.0.2743.82/printing/BUILD.gn +--- chromium-52.0.2743.82/printing/BUILD.gn.cups22 2016-07-21 11:27:05.597507544 -0400 ++++ chromium-52.0.2743.82/printing/BUILD.gn 2016-07-21 11:27:25.565390048 -0400 +@@ -147,7 +147,7 @@ component("printing") { + ], + "trim string") + +- if (cups_version == "1.6" || cups_version == "1.7") { ++ if (cups_version == "1.6" || cups_version == "1.7" || cups_version == "2.2") { + cflags += [ + # CUPS 1.6 deprecated the PPD APIs, but we will stay with this + # API for now as supported Linux and Mac OS'es are still using +diff -up chromium-52.0.2743.82/printing/printing.gyp.cups22 chromium-52.0.2743.82/printing/printing.gyp +--- chromium-52.0.2743.82/printing/printing.gyp.cups22 2016-07-21 11:26:26.622746918 -0400 ++++ chromium-52.0.2743.82/printing/printing.gyp 2016-07-21 11:26:44.517632794 -0400 +@@ -142,7 +142,7 @@ + 'cups_version': '/dev/null || groupadd -r chrome-remote-deskt %systemd_postun_with_restart chrome-remote-desktop.service %files -%defattr(-,root,root,-) %{_bindir}/%{chromium_browser_channel} %dir %{chromium_path} %{chromium_path}/*.bin @@ -1301,7 +1298,60 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt # %%{chromium_path}/plugins/ %{chromium_path}/pyproto/ %attr(4755, root, root) %{chromium_path}/chrome-sandbox -%{chromium_path}/locales/ +%dir %{chromium_path}/locales/ +%lang(am) %{chromium_path}/locales/am.pak +%lang(ar) %{chromium_path}/locales/ar.pak +%lang(bg) %{chromium_path}/locales/bg.pak +%lang(bn) %{chromium_path}/locales/bn.pak +%lang(ca) %{chromium_path}/locales/ca.pak +%lang(cs) %{chromium_path}/locales/cs.pak +%lang(da) %{chromium_path}/locales/da.pak +%lang(de) %{chromium_path}/locales/de.pak +%lang(el) %{chromium_path}/locales/el.pak +%lang(en_GB) %{chromium_path}/locales/en-GB.pak +%lang(en_US) %{chromium_path}/locales/en-US.pak +%lang(es) %{chromium_path}/locales/es.pak +%lang(es) %{chromium_path}/locales/es-419.pak +%lang(et) %{chromium_path}/locales/et.pak +%lang(fa) %{chromium_path}/locales/fa.pak +%lang(fi) %{chromium_path}/locales/fi.pak +%lang(fil) %{chromium_path}/locales/fil.pak +%lang(fr) %{chromium_path}/locales/fr.pak +%lang(gu) %{chromium_path}/locales/gu.pak +%lang(he) %{chromium_path}/locales/he.pak +%lang(hi) %{chromium_path}/locales/hi.pak +%lang(hr) %{chromium_path}/locales/hr.pak +%lang(hu) %{chromium_path}/locales/hu.pak +%lang(id) %{chromium_path}/locales/id.pak +%lang(it) %{chromium_path}/locales/it.pak +%lang(ja) %{chromium_path}/locales/ja.pak +%lang(kn) %{chromium_path}/locales/kn.pak +%lang(ko) %{chromium_path}/locales/ko.pak +%lang(lt) %{chromium_path}/locales/lt.pak +%lang(lv) %{chromium_path}/locales/lv.pak +%lang(ml) %{chromium_path}/locales/ml.pak +%lang(mr) %{chromium_path}/locales/mr.pak +%lang(ms) %{chromium_path}/locales/ms.pak +%lang(nb) %{chromium_path}/locales/nb.pak +%lang(nl) %{chromium_path}/locales/nl.pak +%lang(pl) %{chromium_path}/locales/pl.pak +%lang(pt_BR) %{chromium_path}/locales/pt-BR.pak +%lang(pt_PT) %{chromium_path}/locales/pt-PT.pak +%lang(ro) %{chromium_path}/locales/ro.pak +%lang(ru) %{chromium_path}/locales/ru.pak +%lang(sk) %{chromium_path}/locales/sk.pak +%lang(sl) %{chromium_path}/locales/sl.pak +%lang(sr) %{chromium_path}/locales/sr.pak +%lang(sv) %{chromium_path}/locales/sv.pak +%lang(sw) %{chromium_path}/locales/sw.pak +%lang(ta) %{chromium_path}/locales/ta.pak +%lang(te) %{chromium_path}/locales/te.pak +%lang(th) %{chromium_path}/locales/th.pak +%lang(tr) %{chromium_path}/locales/tr.pak +%lang(uk) %{chromium_path}/locales/uk.pak +%lang(vi) %{chromium_path}/locales/vi.pak +%lang(zh_CN) %{chromium_path}/locales/zh-CN.pak +%lang(zh_TW) %{chromium_path}/locales/zh-TW.pak %{chromium_path}/resources/ %{_mandir}/man1/%{chromium_browser_channel}.* %{_datadir}/icons/hicolor/256x256/apps/%{chromium_browser_channel}.png @@ -1340,6 +1390,11 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %endif %changelog +* Thu Jul 21 2016 Tom Callaway 52.0.2743.82-1 +- update to 52.0.2743.82 +- handle locales properly +- cleanup spec + * Tue Jul 19 2016 Tom Callaway 52.0.2743.75-1 - update to 52.0.2743.75 diff --git a/sources b/sources index c0b5f56..316af98 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ -ceaa558c5a94789d5a7a69837ce035ef chromium-52.0.2743.75-clean.tar.xz 49a7f897775cce21d2b69968b8af1cea depot_tools.git-master.tar.gz -af24ec9bc5e86e10841f44397db5ffda policy_templates.zip +1389b4f03dfb2e44697e138314bd13ed chromium-52.0.2743.82-clean.tar.xz +8ce432ed9e6b1edca19f0057f5ad76bf policy_templates.zip From 67f9e82fd01c5b5f3230740a27fc3dba09ab11a3 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 21 Jul 2016 11:49:49 -0400 Subject: [PATCH 0003/1449] 52.0.2743.82 --- chromium.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 893e7a4..1982f9e 100644 --- a/chromium.spec +++ b/chromium.spec @@ -61,7 +61,7 @@ BuildRequires: libicu-devel >= 5.4 %global chromoting_client_id 449907151817-8vnlfih032ni8c4jjps9int9t86k546t.apps.googleusercontent.com Name: chromium%{chromium_channel} -Version: 52.0.2743.75 +Version: 52.0.2743.82 Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home From 098c7ea5bda01d99a9ac92b1b2e135f7c0929669 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 21 Jul 2016 14:38:19 -0400 Subject: [PATCH 0004/1449] try to fix cups22 again (hackishly) --- chromium-52.0.2743.82-cups22.patch | 20 ++++++++++++++++---- chromium.spec | 6 +++++- 2 files changed, 21 insertions(+), 5 deletions(-) diff --git a/chromium-52.0.2743.82-cups22.patch b/chromium-52.0.2743.82-cups22.patch index b3823db..63d5116 100644 --- a/chromium-52.0.2743.82-cups22.patch +++ b/chromium-52.0.2743.82-cups22.patch @@ -1,7 +1,7 @@ diff -up chromium-52.0.2743.82/printing/BUILD.gn.cups22 chromium-52.0.2743.82/printing/BUILD.gn --- chromium-52.0.2743.82/printing/BUILD.gn.cups22 2016-07-21 11:27:05.597507544 -0400 -+++ chromium-52.0.2743.82/printing/BUILD.gn 2016-07-21 11:27:25.565390048 -0400 -@@ -147,7 +147,7 @@ component("printing") { ++++ chromium-52.0.2743.82/printing/BUILD.gn 2016-07-21 14:36:45.574137758 -0400 +@@ -147,12 +147,13 @@ component("printing") { ], "trim string") @@ -10,10 +10,16 @@ diff -up chromium-52.0.2743.82/printing/BUILD.gn.cups22 chromium-52.0.2743.82/pr cflags += [ # CUPS 1.6 deprecated the PPD APIs, but we will stay with this # API for now as supported Linux and Mac OS'es are still using + # older versions of CUPS. More info: crbug.com/226176 + "-Wno-deprecated-declarations", ++ "-D_PPD_DEPRECATED=\"\"", + # CUPS 1.7 deprecates httpConnectEncrypt(), see the mac section + # below. + ] diff -up chromium-52.0.2743.82/printing/printing.gyp.cups22 chromium-52.0.2743.82/printing/printing.gyp --- chromium-52.0.2743.82/printing/printing.gyp.cups22 2016-07-21 11:26:26.622746918 -0400 -+++ chromium-52.0.2743.82/printing/printing.gyp 2016-07-21 11:26:44.517632794 -0400 -@@ -142,7 +142,7 @@ ++++ chromium-52.0.2743.82/printing/printing.gyp 2016-07-21 14:36:07.390373060 -0400 +@@ -142,12 +142,13 @@ 'cups_version': '= 5.4 Name: chromium%{chromium_channel} Version: 52.0.2743.82 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1390,11 +1390,15 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %endif %changelog +* Thu Jul 21 2016 Tom Callaway 52.0.2743.82-2 +- try to fix cups 2.2 support again (hackishly) + * Thu Jul 21 2016 Tom Callaway 52.0.2743.82-1 - update to 52.0.2743.82 - handle locales properly - cleanup spec + * Tue Jul 19 2016 Tom Callaway 52.0.2743.75-1 - update to 52.0.2743.75 From 4bca8d3763df185bcb21dd289d46759d6c9654cc Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 22 Jul 2016 14:24:09 -0400 Subject: [PATCH 0005/1449] actually fix compile against cups 2.2, add widevine compatibility support --- chromium-52.0.2743.82-cups22.patch | 11 +++++++++++ chromium-52.0.2743.82-widevinefix.patch | 25 +++++++++++++++++++++++++ chromium.spec | 9 ++++++++- 3 files changed, 44 insertions(+), 1 deletion(-) create mode 100644 chromium-52.0.2743.82-widevinefix.patch diff --git a/chromium-52.0.2743.82-cups22.patch b/chromium-52.0.2743.82-cups22.patch index 63d5116..ac0700a 100644 --- a/chromium-52.0.2743.82-cups22.patch +++ b/chromium-52.0.2743.82-cups22.patch @@ -1,3 +1,14 @@ +diff -up chromium-52.0.2743.82/printing/backend/print_backend_cups.cc.cups22 chromium-52.0.2743.82/printing/backend/print_backend_cups.cc +--- chromium-52.0.2743.82/printing/backend/print_backend_cups.cc.cups22 2016-07-22 09:20:15.794340886 -0400 ++++ chromium-52.0.2743.82/printing/backend/print_backend_cups.cc 2016-07-22 09:20:26.338261197 -0400 +@@ -16,6 +16,7 @@ + #include "base/synchronization/lock.h" + #include "base/values.h" + #include "printing/backend/cups_helper.h" ++#include + #include "printing/backend/print_backend_consts.h" + #include "url/gurl.h" + diff -up chromium-52.0.2743.82/printing/BUILD.gn.cups22 chromium-52.0.2743.82/printing/BUILD.gn --- chromium-52.0.2743.82/printing/BUILD.gn.cups22 2016-07-21 11:27:05.597507544 -0400 +++ chromium-52.0.2743.82/printing/BUILD.gn 2016-07-21 14:36:45.574137758 -0400 diff --git a/chromium-52.0.2743.82-widevinefix.patch b/chromium-52.0.2743.82-widevinefix.patch new file mode 100644 index 0000000..86414a6 --- /dev/null +++ b/chromium-52.0.2743.82-widevinefix.patch @@ -0,0 +1,25 @@ +diff -up chromium-52.0.2743.82/chrome/common/chrome_content_client.cc.widevinefix chromium-52.0.2743.82/chrome/common/chrome_content_client.cc +--- chromium-52.0.2743.82/chrome/common/chrome_content_client.cc.widevinefix 2016-07-22 12:18:49.505235856 -0400 ++++ chromium-52.0.2743.82/chrome/common/chrome_content_client.cc 2016-07-22 12:20:04.200789682 -0400 +@@ -203,10 +203,7 @@ void ComputeBuiltInPlugins(std::vectorpush_back(content::CdmInfo(kWidevineCdmType, version, cdm_path, + codecs_supported)); + } diff --git a/chromium.spec b/chromium.spec index 90b76ed..37467e1 100644 --- a/chromium.spec +++ b/chromium.spec @@ -95,6 +95,8 @@ Patch11: chromium-52.0.2723.2-PNGImageDecoder-fix-cast.patch # Ignore deprecations in cups 2.2 # https://bugs.chromium.org/p/chromium/issues/detail?id=622493 Patch12: chromium-52.0.2743.82-cups22.patch +# Fix widevine compilation +Patch13: chromium-52.0.2743.82-widevinefix.patch ### Chromium Tests Patches ### Patch100: chromium-46.0.2490.86-use_system_opus.patch @@ -385,6 +387,7 @@ Remote desktop support for google-chrome & chromium. %patch10 -p1 -b .unbundle-fix %patch11 -p1 -b .fixcast %patch12 -p1 -b .cups22 +%patch13 -p1 -b .widevinefix ### Chromium Tests Patches ### %patch100 -p1 -b .use_system_opus @@ -583,6 +586,9 @@ export CHROMIUM_BROWSER_GYP_DEFINES="\ -Dremove_webcore_debug_symbols=1 \ -Dlogging_like_official_build=1 \ -Denable_hotwording=0 \ + -Denable_pepper_cdms=1 \ + -Denable_webrtc=1 \ + -Denable_widevine=1 \ %if 0 -Dbuildtype=Official \ %endif @@ -1391,7 +1397,8 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog * Thu Jul 21 2016 Tom Callaway 52.0.2743.82-2 -- try to fix cups 2.2 support again (hackishly) +- fix cups 2.2 support +- try to enable widevine compatibility (you still need to get the binary .so files from chrome) * Thu Jul 21 2016 Tom Callaway 52.0.2743.82-1 - update to 52.0.2743.82 From 7fe5f2bbe96092b6e658bbbe44ac1871488891c7 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 27 Jul 2016 11:25:22 -0400 Subject: [PATCH 0006/1449] compile with -fno-delete-null-pointer-checks (fixes v8 crashes, nacl/pnacl), prep for chromium-native_client enablement --- chromium.spec | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/chromium.spec b/chromium.spec index 37467e1..3061c53 100644 --- a/chromium.spec +++ b/chromium.spec @@ -62,7 +62,7 @@ BuildRequires: libicu-devel >= 5.4 Name: chromium%{chromium_channel} Version: 52.0.2743.82 -Release: 2%{?dist} +Release: 4%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -175,7 +175,7 @@ BuildRequires: libstdc++-devel, openssl-devel BuildRequires: nacl-gcc, nacl-binutils, nacl-newlib BuildRequires: nacl-arm-gcc, nacl-arm-binutils, nacl-arm-newlib # pNaCl needs this monster -BuildRequires: native_client >= 50.0.2661.86 +BuildRequires: chromium-native_client >= 50.0.2661.86 %ifarch x86_64 BuildRequires: glibc-devel(x86-32) libgcc(x86-32) %endif @@ -597,6 +597,7 @@ export CHROMIUM_BROWSER_GYP_DEFINES="\ -Dcomponent=shared_library \ %endif -Duse_sysroot=0 \ + -Drelease_extra_cflags="-fno-delete-null-pointer-checks" \ -Dwerror= -Dsysroot=" # Remove most of the bundled libraries. Libraries specified below (taken from @@ -1396,6 +1397,13 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %endif %changelog +* Wed Jul 27 2016 Tom Callaway 52.0.2743.82-4 +- compile with -fno-delete-null-pointer-checks (fixes v8 crashes, nacl/pnacl) +- turn nacl/pnacl off until chromium-native_client lands in Fedora + +* Tue Jul 26 2016 Tom Callaway 52.0.2743.82-3 +- turn nacl back on for x86_64 + * Thu Jul 21 2016 Tom Callaway 52.0.2743.82-2 - fix cups 2.2 support - try to enable widevine compatibility (you still need to get the binary .so files from chrome) @@ -1405,7 +1413,6 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt - handle locales properly - cleanup spec - * Tue Jul 19 2016 Tom Callaway 52.0.2743.75-1 - update to 52.0.2743.75 From 87abbbdaa337887665ddf9067fdf717c652877aa Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 27 Jul 2016 20:49:34 -0400 Subject: [PATCH 0007/1449] enable nacl/pnacl (chromium-native_client has landed in Fedora), fix chromium-browser.sh to report Fedora build target properly --- chromium.spec | 23 +++++++++++++++++------ 1 file changed, 17 insertions(+), 6 deletions(-) diff --git a/chromium.spec b/chromium.spec index 3061c53..4295b56 100644 --- a/chromium.spec +++ b/chromium.spec @@ -18,7 +18,7 @@ %global asan 0 # Only flip this on if stuff is really broken re: nacl. -%if 0%{?fedora} >= 24 +%if 0 %global killnacl 1 %else %global killnacl 0 @@ -62,7 +62,7 @@ BuildRequires: libicu-devel >= 5.4 Name: chromium%{chromium_channel} Version: 52.0.2743.82 -Release: 4%{?dist} +Release: 5%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -175,9 +175,16 @@ BuildRequires: libstdc++-devel, openssl-devel BuildRequires: nacl-gcc, nacl-binutils, nacl-newlib BuildRequires: nacl-arm-gcc, nacl-arm-binutils, nacl-arm-newlib # pNaCl needs this monster -BuildRequires: chromium-native_client >= 50.0.2661.86 +# It's possible that someday this dep will stabilize, but +# right now, it needs to be updated everytime chromium bumps +# a major version. +BuildRequires: chromium-native_client >= 52.0.2743.82 %ifarch x86_64 -BuildRequires: glibc-devel(x86-32) libgcc(x86-32) +# Really, this is what we want: +# BuildRequires: glibc-devel(x86-32) libgcc(x86-32) +# But, koji only offers glibc32. Maybe that's enough. +# This BR will pull in either glibc.i686 or glibc32. +BuildRequires: /lib/libc.so.6 /usr/lib/libc.so %endif %endif # Fedora tries to use system libs whenever it can. @@ -846,10 +853,10 @@ rm -rf %{buildroot} mkdir -p %{buildroot}%{_bindir} mkdir -p %{buildroot}%{chromium_path} cp -a %{SOURCE3} %{buildroot}%{chromium_path}/%{chromium_browser_channel}.sh -export BUILDTARGET=`cat /etc/redhat-release` +export BUILD_TARGET=`cat /etc/redhat-release` export CHROMIUM_PATH=%{chromium_path} export CHROMIUM_BROWSER_CHANNEL=%{chromium_browser_channel} -sed -i "s|@@BUILDTARGET@@|$BUILDTARGET|g" %{buildroot}%{chromium_path}/%{chromium_browser_channel}.sh +sed -i "s|@@BUILD_TARGET@@|$BUILD_TARGET|g" %{buildroot}%{chromium_path}/%{chromium_browser_channel}.sh sed -i "s|@@CHROMIUM_PATH@@|$CHROMIUM_PATH|g" %{buildroot}%{chromium_path}/%{chromium_browser_channel}.sh sed -i "s|@@CHROMIUM_BROWSER_CHANNEL@@|$CHROMIUM_BROWSER_CHANNEL|g" %{buildroot}%{chromium_path}/%{chromium_browser_channel}.sh %if "%{chromium_channel}" == "%%{nil}" @@ -1397,6 +1404,10 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %endif %changelog +* Wed Jul 27 2016 Tom Callaway 52.0.2743.82-5 +- enable nacl/pnacl (chromium-native_client has landed in Fedora) +- fix chromium-browser.sh to report Fedora build target properly + * Wed Jul 27 2016 Tom Callaway 52.0.2743.82-4 - compile with -fno-delete-null-pointer-checks (fixes v8 crashes, nacl/pnacl) - turn nacl/pnacl off until chromium-native_client lands in Fedora From a7e232457a0c4fce4f4a243a88c73fb5866e093e Mon Sep 17 00:00:00 2001 From: Richard Hughes Date: Thu, 28 Jul 2016 10:38:12 +0100 Subject: [PATCH 0008/1449] Add an AppData file so that Chromium appears in the software center --- chromium-browser.appdata.xml | 38 ++++++++++++++++++++++++++++++++++++ chromium.spec | 13 +++++++++++- 2 files changed, 50 insertions(+), 1 deletion(-) create mode 100644 chromium-browser.appdata.xml diff --git a/chromium-browser.appdata.xml b/chromium-browser.appdata.xml new file mode 100644 index 0000000..a02cfc7 --- /dev/null +++ b/chromium-browser.appdata.xml @@ -0,0 +1,38 @@ + + + + chromium-browser.desktop + richard@hughsie.com + CC0-1.0 + BSD-3-Clause and LGPL-2.1+ and Apache-2.0 and IJG and MIT and GPL-2.0+ and ISC and OpenSSL and (MPL-1.1 or GPL-2.0 or LGPL-2.0) + Chromium + Web Browser + +

+ Chromium is an open-source browser that aims to build a safer, faster, and + more stable way to experience the web. + We invite you to join us in our effort to build a powerful platform for + developing a new generation of web applications. +

+

+ Chromium does not include the non-free AAC, H.264, MP3 or Adobe Flash code + that is found in Chrome, although it does support Vorbis, Theora, WebM and + HTML5 audio and video standards. +

+
+ https://www.chromium.org/Home + + + https://raw.githubusercontent.com/hughsie/fedora-appstream/master/screenshots-extra/chromium-browser/a.png + + + + https://raw.githubusercontent.com/hughsie/fedora-appstream/master/screenshots-extra/chromium-browser/b.png + + + + + Google + https://www.chromium.org/for-testers/bug-reporting-guidelines + https://chromium.googlesource.com/chromium/src/+/master/docs/linux_debugging.md +
diff --git a/chromium.spec b/chromium.spec index 4295b56..e2138f2 100644 --- a/chromium.spec +++ b/chromium.spec @@ -62,7 +62,7 @@ BuildRequires: libicu-devel >= 5.4 Name: chromium%{chromium_channel} Version: 52.0.2743.82 -Release: 5%{?dist} +Release: 6%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -127,6 +127,7 @@ Source8: get_linux_tests_names.py Source9: chromium-browser.xml Source10: https://dl.google.com/dl/edgedl/chrome/policy/policy_templates.zip Source11: chrome-remote-desktop.service +Source12: chromium-browser.appdata.xml # We can assume gcc and binutils. BuildRequires: gcc-c++ @@ -168,6 +169,9 @@ BuildRequires: liberation-sans-fonts BuildRequires: sudo %endif +# for /usr/bin/appstream-util +BuildRequires: libappstream-glib + # Fedora turns on NaCl # NaCl needs these BuildRequires: libstdc++-devel, openssl-devel @@ -953,6 +957,9 @@ cp -a chrome/app/theme/chromium/product_logo_256.png %{buildroot}%{_datadir}/ico mkdir -p %{buildroot}%{_datadir}/applications/ desktop-file-install --dir %{buildroot}%{_datadir}/applications %{SOURCE4} +install -D -m0644 %{SOURCE12} ${RPM_BUILD_ROOT}%{_datadir}/appdata/%{chromium_browser_channel}.appdata.xml +appstream-util validate-relax --nonet ${RPM_BUILD_ROOT}%{_datadir}/appdata/%{chromium_browser_channel}.appdata.xml + mkdir -p %{buildroot}%{_datadir}/gnome-control-center/default-apps/ cp -a %{SOURCE9} %{buildroot}%{_datadir}/gnome-control-center/default-apps/ @@ -1370,6 +1377,7 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{_mandir}/man1/%{chromium_browser_channel}.* %{_datadir}/icons/hicolor/256x256/apps/%{chromium_browser_channel}.png %{_datadir}/applications/*.desktop +%{_datadir}/appdata/*.appdata.xml %{_datadir}/gnome-control-center/default-apps/chromium-browser.xml %dir %{_sysconfdir}/chromium/policies/managed @@ -1404,6 +1412,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %endif %changelog +* Thu Jul 28 2016 Richard Hughes 52.0.2743.82-6 +- Add an AppData file so that Chromium appears in the software center + * Wed Jul 27 2016 Tom Callaway 52.0.2743.82-5 - enable nacl/pnacl (chromium-native_client has landed in Fedora) - fix chromium-browser.sh to report Fedora build target properly From fc6709f09bd146b3916e92ba63271a12d05b47b9 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 28 Jul 2016 09:48:15 -0400 Subject: [PATCH 0009/1449] fix post scriptlet so that selinux stuff only happens when selinux is enabled --- chromium.spec | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/chromium.spec b/chromium.spec index e2138f2..c58a672 100644 --- a/chromium.spec +++ b/chromium.spec @@ -62,7 +62,7 @@ BuildRequires: libicu-devel >= 5.4 Name: chromium%{chromium_channel} Version: 52.0.2743.82 -Release: 6%{?dist} +Release: 7%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1269,10 +1269,13 @@ cp -a %{SOURCE9} %{buildroot}%{_datadir}/gnome-control-center/default-apps/ %post # Set SELinux labels - semanage itself will adjust the lib directory naming -semanage fcontext -a -t bin_t /usr/lib/%{chromium_browser_channel} -semanage fcontext -a -t bin_t /usr/lib/%{chromium_browser_channel}/%{chromium_browser_channel}.sh -semanage fcontext -a -t chrome_sandbox_exec_t /usr/lib/chrome-sandbox -restorecon -R -v %{chromium_path}/%{chromium_browser_channel} +# But only do it when selinux is enabled, otherwise, it gets noisy. +if selinuxenabled; then + semanage fcontext -a -t bin_t /usr/lib/%{chromium_browser_channel} + semanage fcontext -a -t bin_t /usr/lib/%{chromium_browser_channel}/%{chromium_browser_channel}.sh + semanage fcontext -a -t chrome_sandbox_exec_t /usr/lib/chrome-sandbox + restorecon -R -v %{chromium_path}/%{chromium_browser_channel} +fi touch --no-create %{_datadir}/icons/hicolor &>/dev/null || : update-desktop-database &> /dev/null || : @@ -1412,6 +1415,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %endif %changelog +* Thu Jul 28 2016 Tom Callaway 52.0.2743.82-7 +- fix post scriptlet so that selinux stuff only happens when selinux is enabled + * Thu Jul 28 2016 Richard Hughes 52.0.2743.82-6 - Add an AppData file so that Chromium appears in the software center From 98f362e5e4444332838e6b2c9a9adc5a1d6cfc84 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 28 Jul 2016 10:05:58 -0400 Subject: [PATCH 0010/1449] disable nacl/pnacl for Fedora 23 (and older) --- chromium.spec | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index c58a672..bb8ec2c 100644 --- a/chromium.spec +++ b/chromium.spec @@ -18,7 +18,9 @@ %global asan 0 # Only flip this on if stuff is really broken re: nacl. -%if 0 +# chromium-native_client doesn't build on Fedora 23 because +# clang is too old and buggy. +%if 0%{?fedora} <= 23 %global killnacl 1 %else %global killnacl 0 @@ -1415,6 +1417,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %endif %changelog +* Thu Jul 28 2016 Tom Callaway 52.0.2743.82-8 +- disable nacl/pnacl for Fedora 23 (and older) + * Thu Jul 28 2016 Tom Callaway 52.0.2743.82-7 - fix post scriptlet so that selinux stuff only happens when selinux is enabled From 4839518160ec7a93eed30f4dabdb659a53009a30 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 28 Jul 2016 10:09:31 -0400 Subject: [PATCH 0011/1449] remember to bump release --- chromium.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index bb8ec2c..503d4d0 100644 --- a/chromium.spec +++ b/chromium.spec @@ -64,7 +64,7 @@ BuildRequires: libicu-devel >= 5.4 Name: chromium%{chromium_channel} Version: 52.0.2743.82 -Release: 7%{?dist} +Release: 8%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) From f5b63ce20f332e0c0608bc8c2d9bd875128f2606 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 28 Jul 2016 12:56:55 -0400 Subject: [PATCH 0012/1449] fix conditional to disable verbose logging output unless beta/dev --- chromium.spec | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/chromium.spec b/chromium.spec index 503d4d0..ba81688 100644 --- a/chromium.spec +++ b/chromium.spec @@ -64,7 +64,7 @@ BuildRequires: libicu-devel >= 5.4 Name: chromium%{chromium_channel} Version: 52.0.2743.82 -Release: 8%{?dist} +Release: 9%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -866,11 +866,11 @@ sed -i "s|@@BUILD_TARGET@@|$BUILD_TARGET|g" %{buildroot}%{chromium_path}/%{chrom sed -i "s|@@CHROMIUM_PATH@@|$CHROMIUM_PATH|g" %{buildroot}%{chromium_path}/%{chromium_browser_channel}.sh sed -i "s|@@CHROMIUM_BROWSER_CHANNEL@@|$CHROMIUM_BROWSER_CHANNEL|g" %{buildroot}%{chromium_path}/%{chromium_browser_channel}.sh %if "%{chromium_channel}" == "%%{nil}" +sed -i "s|@@EXTRA_FLAGS@@||g" %{buildroot}%{chromium_path}/%{chromium_browser_channel}.sh +%else # Enable debug outputs for beta and dev channels export EXTRA_FLAGS="--enable-logging=stderr --v=2" sed -i "s|@@EXTRA_FLAGS@@|$EXTRA_FLAGS|g" %{buildroot}%{chromium_path}/%{chromium_browser_channel}.sh -%else -sed -i "s|@@EXTRA_FLAGS@@||g" %{buildroot}%{chromium_path}/%{chromium_browser_channel}.sh %endif ln -s %{chromium_path}/%{chromium_browser_channel}.sh %{buildroot}%{_bindir}/%{chromium_browser_channel} @@ -1417,6 +1417,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %endif %changelog +* Thu Jul 28 2016 Tom Callaway 52.0.2743.82-9 +- fix conditional to disable verbose logging output unless beta/dev + * Thu Jul 28 2016 Tom Callaway 52.0.2743.82-8 - disable nacl/pnacl for Fedora 23 (and older) From f96d8c8ea7fd1b6b8258901246e7e2d8e745e60b Mon Sep 17 00:00:00 2001 From: Richard Hughes Date: Mon, 8 Aug 2016 16:53:23 +0100 Subject: [PATCH 0013/1449] trivial: Fix up the tag in the AppData file --- chromium-browser.appdata.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium-browser.appdata.xml b/chromium-browser.appdata.xml index a02cfc7..71531d8 100644 --- a/chromium-browser.appdata.xml +++ b/chromium-browser.appdata.xml @@ -31,7 +31,7 @@ - + chromium-browser Google https://www.chromium.org/for-testers/bug-reporting-guidelines https://chromium.googlesource.com/chromium/src/+/master/docs/linux_debugging.md From a5504ee4ceb62f64c0b16520e51575f7ad5dbead Mon Sep 17 00:00:00 2001 From: Richard Hughes Date: Mon, 8 Aug 2016 16:53:23 +0100 Subject: [PATCH 0014/1449] trivial: Fix up the tag in the AppData file --- chromium-browser.appdata.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium-browser.appdata.xml b/chromium-browser.appdata.xml index a02cfc7..71531d8 100644 --- a/chromium-browser.appdata.xml +++ b/chromium-browser.appdata.xml @@ -31,7 +31,7 @@ - + chromium-browser Google https://www.chromium.org/for-testers/bug-reporting-guidelines https://chromium.googlesource.com/chromium/src/+/master/docs/linux_debugging.md From 8a15fdfccca6239b2ae167d7200a37c4fb86ab39 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 8 Aug 2016 13:37:48 -0400 Subject: [PATCH 0015/1449] 52.0.2743.116 --- .gitignore | 1 + chromium-52.0.2743.82-arm-icu-fix.patch | 12 ++ chromium-52.0.2743.82-arm-webrtc.patch | 51 ++++++ chromium-52.0.2743.82-master-prefs-path.patch | 15 ++ ...mium-52.0.2743.82-more-codec-aliases.patch | 15 ++ chromium-52.0.2743.82-sandbox-pie.patch | 15 ++ chromium.spec | 158 +++++++++++++++++- master_preferences | 18 ++ sources | 4 +- 9 files changed, 282 insertions(+), 7 deletions(-) create mode 100644 chromium-52.0.2743.82-arm-icu-fix.patch create mode 100644 chromium-52.0.2743.82-arm-webrtc.patch create mode 100644 chromium-52.0.2743.82-master-prefs-path.patch create mode 100644 chromium-52.0.2743.82-more-codec-aliases.patch create mode 100644 chromium-52.0.2743.82-sandbox-pie.patch create mode 100644 master_preferences diff --git a/.gitignore b/.gitignore index 271132b..a553dc5 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,4 @@ /depot_tools.git-master.tar.gz /policy_templates.zip /chromium-52.0.2743.82-clean.tar.xz +/chromium-52.0.2743.116-clean.tar.xz diff --git a/chromium-52.0.2743.82-arm-icu-fix.patch b/chromium-52.0.2743.82-arm-icu-fix.patch new file mode 100644 index 0000000..acac356 --- /dev/null +++ b/chromium-52.0.2743.82-arm-icu-fix.patch @@ -0,0 +1,12 @@ +diff -up chromium-52.0.2743.82/third_party/icu/icu.gyp.armfix chromium-52.0.2743.82/third_party/icu/icu.gyp +--- chromium-52.0.2743.82/third_party/icu/icu.gyp.armfix 2016-08-03 09:39:02.159874067 +0200 ++++ chromium-52.0.2743.82/third_party/icu/icu.gyp 2016-08-03 09:39:17.953765034 +0200 +@@ -44,7 +44,7 @@ + }], + ['(OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="solaris" \ + or OS=="netbsd" or OS=="mac" or OS=="android" or OS=="qnx") and \ +- (target_arch=="arm" or target_arch=="ia32" or \ ++ (target_arch=="ia32" or \ + target_arch=="mipsel")', { + 'target_conditions': [ + ['_toolset=="host"', { diff --git a/chromium-52.0.2743.82-arm-webrtc.patch b/chromium-52.0.2743.82-arm-webrtc.patch new file mode 100644 index 0000000..f1a6629 --- /dev/null +++ b/chromium-52.0.2743.82-arm-webrtc.patch @@ -0,0 +1,51 @@ +diff -up chromium-52.0.2743.82/third_party/webrtc/system_wrappers/source/cpu_features.cc.armwebrtc chromium-52.0.2743.82/third_party/webrtc/system_wrappers/source/cpu_features.cc +--- chromium-52.0.2743.82/third_party/webrtc/system_wrappers/source/cpu_features.cc.armwebrtc 2016-08-03 09:30:53.922861020 +0200 ++++ chromium-52.0.2743.82/third_party/webrtc/system_wrappers/source/cpu_features.cc 2016-08-03 09:32:00.337498174 +0200 +@@ -18,6 +18,47 @@ + + #include "webrtc/typedefs.h" + ++#include ++#ifdef __arm__ ++#include ++#include ++#include ++#include ++#endif ++ ++#ifdef __arm__ ++uint64_t WebRtc_GetCPUFeaturesARM() { ++ static bool detected = false; ++ static uint64_t have_neon = 0; ++ ++ int fd; ++ Elf32_auxv_t auxv; ++ unsigned int hwcaps; ++ ++ if (!detected) { ++ int fd; ++ Elf32_auxv_t auxv; ++ unsigned int hwcaps; ++ ++ fd = open("/proc/self/auxv", O_RDONLY); ++ if (fd >= 0) { ++ while (read(fd, &auxv, sizeof(Elf32_auxv_t)) == sizeof(Elf32_auxv_t)) { ++ if (auxv.a_type == AT_HWCAP) { ++ have_neon = (auxv.a_un.a_val & HWCAP_NEON) ? kCPUFeatureNEON : 0; ++ break; ++ } ++ } ++ close (fd); ++ } else { ++ have_neon = 0; ++ } ++ detected = true; ++ } ++ ++ return 0 | have_neon; // others here as we need them ++} ++#endif ++ + // No CPU feature is available => straight C path. + int GetCPUInfoNoASM(CPUFeature feature) { + (void)feature; diff --git a/chromium-52.0.2743.82-master-prefs-path.patch b/chromium-52.0.2743.82-master-prefs-path.patch new file mode 100644 index 0000000..6ddd26f --- /dev/null +++ b/chromium-52.0.2743.82-master-prefs-path.patch @@ -0,0 +1,15 @@ +diff -up chromium-52.0.2743.82/chrome/browser/first_run/first_run_internal_linux.cc.etc chromium-52.0.2743.82/chrome/browser/first_run/first_run_internal_linux.cc +--- chromium-52.0.2743.82/chrome/browser/first_run/first_run_internal_linux.cc.etc 2016-08-03 10:15:57.980692109 +0200 ++++ chromium-52.0.2743.82/chrome/browser/first_run/first_run_internal_linux.cc 2016-08-03 10:16:44.553325229 +0200 +@@ -19,9 +19,9 @@ bool IsOrganicFirstRun() { + + base::FilePath MasterPrefsPath() { + // The standard location of the master prefs is next to the chrome binary. ++ // ...but we patch it to use /etc/chromium + base::FilePath master_prefs; +- if (!PathService::Get(base::DIR_EXE, &master_prefs)) +- return base::FilePath(); ++ master_prefs = base::FilePath("/etc/chromium"); + return master_prefs.AppendASCII(installer::kDefaultMasterPrefs); + } + diff --git a/chromium-52.0.2743.82-more-codec-aliases.patch b/chromium-52.0.2743.82-more-codec-aliases.patch new file mode 100644 index 0000000..606a5e6 --- /dev/null +++ b/chromium-52.0.2743.82-more-codec-aliases.patch @@ -0,0 +1,15 @@ +diff -up chromium-52.0.2743.82/third_party/WebKit/Source/wtf/text/TextCodecICU.cpp.morealiases chromium-52.0.2743.82/third_party/WebKit/Source/wtf/text/TextCodecICU.cpp +--- chromium-52.0.2743.82/third_party/WebKit/Source/wtf/text/TextCodecICU.cpp.morealiases 2016-08-03 08:55:48.293159940 +0200 ++++ chromium-52.0.2743.82/third_party/WebKit/Source/wtf/text/TextCodecICU.cpp 2016-08-03 08:57:05.192505191 +0200 +@@ -208,7 +208,11 @@ void TextCodecICU::registerEncodingNames + registrar("iso_8859-6", "ISO-8859-6"); + registrar("iso_8859-7", "ISO-8859-7"); + registrar("iso_8859-8", "ISO-8859-8"); ++ registrar("ISO_8859-8-I", "ISO-8859-8-I"); + registrar("iso_8859-9", "windows-1254"); ++ registrar("ISO_8859-10", "ISO-8859-10"); ++ registrar("ISO_8859-13", "ISO-8859-13"); ++ registrar("ISO_8859-14", "ISO-8859-14"); + registrar("iso_8859-15", "ISO-8859-15"); + registrar("koi8_r", "KOI8-R"); + registrar("x-cp1253", "windows-1253"); diff --git a/chromium-52.0.2743.82-sandbox-pie.patch b/chromium-52.0.2743.82-sandbox-pie.patch new file mode 100644 index 0000000..8913c12 --- /dev/null +++ b/chromium-52.0.2743.82-sandbox-pie.patch @@ -0,0 +1,15 @@ +diff -up chromium-52.0.2743.82/sandbox/linux/sandbox_linux.gypi.pie chromium-52.0.2743.82/sandbox/linux/sandbox_linux.gypi +--- chromium-52.0.2743.82/sandbox/linux/sandbox_linux.gypi.pie 2016-08-03 09:06:41.617923620 +0200 ++++ chromium-52.0.2743.82/sandbox/linux/sandbox_linux.gypi 2016-08-03 09:11:49.747463317 +0200 +@@ -205,7 +205,10 @@ + ], + 'cflags': [ + # For ULLONG_MAX +- '-std=gnu99', ++ '-std=gnu99 -fPIE', ++ ], ++ 'ldflags': [ ++ '-pie', + ], + 'include_dirs': [ + '../..', diff --git a/chromium.spec b/chromium.spec index ba81688..2b68728 100644 --- a/chromium.spec +++ b/chromium.spec @@ -53,6 +53,16 @@ BuildRequires: libicu-devel >= 5.4 %global bundlere2 0 +%global gtk3 1 + +%if 0%{?rhel} == 7 +%global bundleopus 1 +%global bundlelibusbx 1 +%else +%global bundleopus 0 +%global bundlelibusbx 0 +%endif + ### Google API keys (see http://www.chromium.org/developers/how-tos/api-keys) ### Note: These are for Fedora use ONLY. ### For your own distribution, please get your own set of keys. @@ -63,8 +73,8 @@ BuildRequires: libicu-devel >= 5.4 %global chromoting_client_id 449907151817-8vnlfih032ni8c4jjps9int9t86k546t.apps.googleusercontent.com Name: chromium%{chromium_channel} -Version: 52.0.2743.82 -Release: 9%{?dist} +Version: 52.0.2743.116 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -99,6 +109,16 @@ Patch11: chromium-52.0.2723.2-PNGImageDecoder-fix-cast.patch Patch12: chromium-52.0.2743.82-cups22.patch # Fix widevine compilation Patch13: chromium-52.0.2743.82-widevinefix.patch +# Add ICU Text Codec aliases (from openSUSE via Russian Fedora) +Patch14: chromium-52.0.2743.82-more-codec-aliases.patch +# Use PIE in the Linux sandbox (from openSUSE via Russian Fedora) +Patch15: chromium-52.0.2743.82-sandbox-pie.patch +# Enable ARM CPU detection for webrtc (from archlinux via Russian Fedora) +Patch16: chromium-52.0.2743.82-arm-webrtc.patch +# Do not force -m32 in icu compile on ARM (from archlinux via Russian Fedora) +Patch17: chromium-52.0.2743.82-arm-icu-fix.patch +# Use /etc/chromium for master_prefs +Patch18: chromium-52.0.2743.82-master-prefs-path.patch ### Chromium Tests Patches ### Patch100: chromium-46.0.2490.86-use_system_opus.patch @@ -130,6 +150,7 @@ Source9: chromium-browser.xml Source10: https://dl.google.com/dl/edgedl/chrome/policy/policy_templates.zip Source11: chrome-remote-desktop.service Source12: chromium-browser.appdata.xml +Source13: master_preferences # We can assume gcc and binutils. BuildRequires: gcc-c++ @@ -218,8 +239,12 @@ BuildRequires: libpng-devel BuildRequires: libsrtp-devel >= 1.4.4 %endif BuildRequires: libudev-devel +%if %{bundlelibusbx} +# Do nothing +%else Requires: libusbx >= 1.0.21-0.1.git448584a BuildRequires: libusbx-devel >= 1.0.21-0.1.git448584a +%endif # We don't use libvpx anymore because Chromium loves to # use bleeding edge revisions here that break other things # ... so we just use the bundled libvpx. @@ -229,8 +254,15 @@ BuildRequires: libxslt-devel # BuildRequires: libyuv-devel BuildRequires: minizip-devel BuildRequires: nspr-devel +%if %{bundleopus} +# Do nothing +%else BuildRequires: opus-devel +%endif BuildRequires: perl(Switch) +%if 0%{gtk3} +BuildRequires: pkgconfig(gtk+-3.0) +%endif BuildRequires: pulseaudio-libs-devel BuildRequires: python-beautifulsoup4 BuildRequires: python-BeautifulSoup @@ -281,6 +313,8 @@ Provides: webrtc = 0.2 Obsoletes: webrtc <= 0.1 %if 0%{?shared} Requires: chromium-libs%{_isa} = %{version}-%{release} +# This is broken out so it can be replaced. +Requires: chromium-libs-media%{_isa} = %{version}-%{release} # Nothing to do here. chromium-libs is real. %else Provides: chromium-libs = %{version}-%{release} @@ -320,6 +354,9 @@ Provides: bundled(libaddressinput) = 0 Provides: bundled(libjingle) = 9564 Provides: bundled(libphonenumber) = svn584 Provides: bundled(libsrtp) = 1.5.2 +%if %{bundlelibusbx} +Provides: bundled(libusbx) = 1.0.17 +%endif Provides: bundled(libvpx) = 1.4.0 Provides: bundled(libwebp) = 0.4.3 Provides: bundled(libXNVCtrl) = 302.17 @@ -330,6 +367,9 @@ Provides: bundled(mesa) = 9.0.3 Provides: bundled(NSBezierPath) = 1.0 Provides: bundled(mozc) Provides: bundled(mt19937ar) = 2002.1.26 +%if %{bundleopus} +Provides: bundled(opus) = 1.1.2 +%endif Provides: bundled(ots) = 767d6040439e6ebcdb867271fcb686bd3f8ac739 Provides: bundled(protobuf) = r476 Provides: bundled(qcms) = 4 @@ -359,9 +399,16 @@ Chromium is an open-source web browser, powered by WebKit (Blink). %if 0%{?shared} %package libs Summary: Shared libraries used by chromium (and chrome-remote-desktop) +Requires: chromium-libs-media%{_isa} = %{version} %description libs Shared libraries used by chromium (and chrome-remote-desktop). + +%package libs-media +Summary: Shared libraries used by the chromium media subsystem + +%description libs-media +Shared libraries used by the chromium media subsystem. %endif %package -n chrome-remote-desktop @@ -378,6 +425,23 @@ Summary: Remote desktop support for google-chrome & chromium %description -n chrome-remote-desktop Remote desktop support for google-chrome & chromium. +%package -n chromedriver +Summary: WebDriver for Google Chrome/Chromium +%if 0%{?shared} +Requires: chromium-libs%{_isa} = %{version}-%{release} +%endif +# From Russian Fedora (minus the epoch) +Provides: chromedriver-stable = %{version}-%{release} +Conflicts: chromedriver-testing +Conflicts: chromedriver-unstable + +%description -n chromedriver +WebDriver is an open source tool for automated testing of webapps across many +browsers. It provides capabilities for navigating to web pages, user input, +JavaScript execution, and more. ChromeDriver is a standalone server which +implements WebDriver's wire protocol for Chromium. It is being developed by +members of the Chromium and WebDriver teams. + %prep %setup -q -T -c -n %{name}-policies -a 10 %setup -q -T -c -n depot_tools -a 2 @@ -401,6 +465,11 @@ Remote desktop support for google-chrome & chromium. %patch11 -p1 -b .fixcast %patch12 -p1 -b .cups22 %patch13 -p1 -b .widevinefix +%patch14 -p1 -b .morealiases +%patch15 -p1 -b .sandboxpie +%patch16 -p1 -b .armwebrtc +%patch17 -p1 -b .armfix +%patch18 -p1 -b .etc ### Chromium Tests Patches ### %patch100 -p1 -b .use_system_opus @@ -523,6 +592,7 @@ export CHROMIUM_BROWSER_GYP_DEFINES="\ -Dhost_clang=0 \ %endif -Ddisable_glibc=1 \ + -Dlinux_fpic=1 \ -Ddisable_sse2=1 \ %if 0%{?nonacl} -Ddisable_nacl=1 \ @@ -541,6 +611,7 @@ export CHROMIUM_BROWSER_GYP_DEFINES="\ -Duse_system_flac=1 \ -Duse_system_harfbuzz=1 \ %if 0%{?bundleicu} + -Duse_system_icu=0 \ %else -Duse_system_icu=1 \ %endif @@ -550,12 +621,20 @@ export CHROMIUM_BROWSER_GYP_DEFINES="\ -Duse_system_libexif=1 \ -Duse_system_libjpeg=1 \ -Duse_system_libpng=1 \ +%if %{bundlelibusbx} + -Duse_system_libusb=0 \ +%else -Duse_system_libusb=1 \ +%endif -Duse_system_libxml=1 \ -Duse_system_libxslt=1 \ -Duse_system_minizip=1 \ -Duse_system_nspr=1 \ +%if %{bundleopus} + -Duse_system_opus=0 \ +%else -Duse_system_opus=1 \ +%endif -Duse_system_protobuf=0 \ %if 0%{?bundlere2} %else @@ -582,7 +661,9 @@ export CHROMIUM_BROWSER_GYP_DEFINES="\ -Dlinux_use_libgps=0 \ \ -Dusb_ids_path=/usr/share/hwdata/usb.ids \ +%if 0%{?fedora} -Dlibspeechd_h_prefix=speech-dispatcher/ \ +%endif \ -Dffmpeg_branding=Chromium \ -Dproprietary_codecs=0 \ @@ -599,9 +680,17 @@ export CHROMIUM_BROWSER_GYP_DEFINES="\ -Dremove_webcore_debug_symbols=1 \ -Dlogging_like_official_build=1 \ -Denable_hotwording=0 \ + -Duse_aura=1 \ + -Denable_hidpi=1 \ + -Denable_touch_ui=1 \ -Denable_pepper_cdms=1 \ -Denable_webrtc=1 \ -Denable_widevine=1 \ +%if 0%{gtk3} + -Duse_gtk3=1 \ +%else + -Dtoolkit_uses_gtk=0 \ +%endif %if 0 -Dbuildtype=Official \ %endif @@ -764,8 +853,12 @@ build/gyp_chromium \ %endif $CHROMIUM_BROWSER_GYP_DEFINES +%if %{bundlelibusbx} +# no hackity hack hack +%else # hackity hack hack rm -rf third_party/libusb/src/libusb/libusb.h +%endif %build @@ -841,7 +934,7 @@ export CHROMIUM_BROWSER_UNIT_TESTS= %global target out/Release -../depot_tools/ninja -C %{target} -vvv chrome chrome_sandbox policy_templates $CHROMIUM_BROWSER_UNIT_TESTS +../depot_tools/ninja -C %{target} -vvv chrome chrome_sandbox chromedriver widevinecdmadapter clearkeycdm policy_templates $CHROMIUM_BROWSER_UNIT_TESTS # remote client pushd remoting @@ -894,6 +987,10 @@ cp -a snapshot_blob.bin %{buildroot}%{chromium_path} cp -a lib %{buildroot}%{chromium_path} %endif +# chromedriver +cp -a chromedriver %{buildroot}%{chromium_path}/chromedriver +ln -s %{chromium_path}/chromedriver %{buildroot}%{_bindir}/chromedriver + # Remote desktop bits mkdir -p %{buildroot}%{crd_path} @@ -956,6 +1053,10 @@ cp -a out/Release/gen/chrome/app/policy/linux/examples/chrome.json . mkdir -p %{buildroot}%{_datadir}/icons/hicolor/256x256/apps cp -a chrome/app/theme/chromium/product_logo_256.png %{buildroot}%{_datadir}/icons/hicolor/256x256/apps/%{chromium_browser_channel}.png +# Install the master_preferences file +mkdir -p %{buildroot}%{_sysconfdir}/%{name} +install -m 0644 %{SOURCE13} %{buildroot}%{_sysconfdir}/%{name}/ + mkdir -p %{buildroot}%{_datadir}/applications/ desktop-file-install --dir %{buildroot}%{_datadir}/applications %{SOURCE4} @@ -965,6 +1066,8 @@ appstream-util validate-relax --nonet ${RPM_BUILD_ROOT}%{_datadir}/appdata/%{chr mkdir -p %{buildroot}%{_datadir}/gnome-control-center/default-apps/ cp -a %{SOURCE9} %{buildroot}%{_datadir}/gnome-control-center/default-apps/ +mkdir -p %{buildroot}%{chromium_path}/PepperFlash + %check %if 0%{tests} %if 0%{?tests_force_display} @@ -1305,6 +1408,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %systemd_postun_with_restart chrome-remote-desktop.service %files +%doc AUTHORS +%license LICENSE +%config %{_sysconfdir}/%{name}/ %{_bindir}/%{chromium_browser_channel} %dir %{chromium_path} %{chromium_path}/*.bin @@ -1315,6 +1421,7 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %if 0%{?nacl} %{chromium_path}/nacl_helper* %{chromium_path}/*.nexe +%dir %{chromium_path}/PepperFlash/ %{chromium_path}/pnacl/ %{chromium_path}/tls_edit %endif @@ -1385,13 +1492,17 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{_datadir}/appdata/*.appdata.xml %{_datadir}/gnome-control-center/default-apps/chromium-browser.xml -%dir %{_sysconfdir}/chromium/policies/managed -%dir %{_sysconfdir}/chromium/policies/recommended %doc chrome_policy_list.html *.json %if 0%{?shared} %files libs +%exclude %{chromium_path}/lib/libffmpeg.so* +%exclude %{chromium_path}/lib/libmedia.so* %{chromium_path}/lib/ + +%files libs-media +%{chromium_path}/lib/libffmpeg.so* +%{chromium_path}/lib/libmedia.so* %endif %files -n chrome-remote-desktop @@ -1416,7 +1527,44 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %endif %endif +%files -n chromedriver +%doc AUTHORS +%license LICENSE +%{_bindir}/chromedriver +%{chromium_path}/chromedriver + %changelog +* Mon Aug 8 2016 Tom Callaway 52.0.2743.116-1 +- update to 52.0.2743.116 + +* Thu Aug 4 2016 Tom Callaway 52.0.2743.82-13 +- change libs split to "libs-media", as that actually works. +- add PepperFlash directory (nothing in it though, sorry) + +* Wed Aug 3 2016 Tom Callaway 52.0.2743.82-12 +- split out libs package beyond ffmpeg, into libs and libs-content +- fix libusbx conditional for el7 to not nuke libusb headers +- disable speech-dispatcher header prefix setting if not fedora (el7) + +* Wed Aug 3 2016 Tom Callaway 52.0.2743.82-11 +- split out chromium-libs-ffmpeg so it can be easily replaced +- conditionalize opus and libusbx for el7 + +* Wed Aug 3 2016 Tom Callaway 52.0.2743.82-10 +- Add ICU Text Codec aliases (from openSUSE via Russian Fedora) +- Use PIE in the Linux sandbox (from openSUSE via Russian Fedora) +- Enable ARM CPU detection for webrtc (from archlinux via Russian Fedora) +- Do not force -m32 in icu compile on ARM (from archlinux via Russian Fedora) +- Enable gtk3 support (via conditional) +- Enable fpic on linux +- Enable hidpi +- Force aura on +- Enable touch_ui +- Add chromedriver subpackage (from Russian Fedora) +- Set default master_preferences location to /etc/chromium +- Add master_preferences file as config file +- Improve chromium-browser.desktop (from Russian Fedora) + * Thu Jul 28 2016 Tom Callaway 52.0.2743.82-9 - fix conditional to disable verbose logging output unless beta/dev diff --git a/master_preferences b/master_preferences new file mode 100644 index 0000000..8a5347a --- /dev/null +++ b/master_preferences @@ -0,0 +1,18 @@ +{ + "distribution": { + "alternate_shortcut_text": false, + "oem_bubble": true, + "chrome_shortcut_icon_index": 0, + "create_all_shortcuts": true, + "show_welcome_page": true, + "system_level": false, + "verbose_logging": false + }, + }, + "first_run_tabs": [ + "https://start.fedoraproject.org", + "http://tools.google.com/chrome/intl/en/welcome.html" + ], + "homepage": "https://start.fedoraproject.org", + "homepage_is_newtabpage": false +} diff --git a/sources b/sources index 316af98..6df5f7a 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ 49a7f897775cce21d2b69968b8af1cea depot_tools.git-master.tar.gz -1389b4f03dfb2e44697e138314bd13ed chromium-52.0.2743.82-clean.tar.xz -8ce432ed9e6b1edca19f0057f5ad76bf policy_templates.zip +5d68885e80dec938f68f033a51639e57 chromium-52.0.2743.116-clean.tar.xz +c0a1a388c4fb32be8e4afb5ace9e801a policy_templates.zip From ed9314722e4305ff9772dc11500f6d9356ef36c2 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 15 Aug 2016 14:13:53 -0400 Subject: [PATCH 0016/1449] fixup widevine handling, fix PepperFlash dir, add freeworld conditional for testing only, disable hidpi setting, unset MADV_FREE if set --- chromium-52.0.2743.116-unset-madv_free.patch | 15 ++++ chromium.spec | 77 ++++++++++++++++++-- 2 files changed, 86 insertions(+), 6 deletions(-) create mode 100644 chromium-52.0.2743.116-unset-madv_free.patch diff --git a/chromium-52.0.2743.116-unset-madv_free.patch b/chromium-52.0.2743.116-unset-madv_free.patch new file mode 100644 index 0000000..2867c79 --- /dev/null +++ b/chromium-52.0.2743.116-unset-madv_free.patch @@ -0,0 +1,15 @@ +diff -up chromium-52.0.2743.116/third_party/WebKit/Source/wtf/allocator/PageAllocator.cpp.madv_free chromium-52.0.2743.116/third_party/WebKit/Source/wtf/allocator/PageAllocator.cpp +--- chromium-52.0.2743.116/third_party/WebKit/Source/wtf/allocator/PageAllocator.cpp.madv_free 2016-08-15 13:07:29.279655676 -0400 ++++ chromium-52.0.2743.116/third_party/WebKit/Source/wtf/allocator/PageAllocator.cpp 2016-08-15 13:08:38.447317416 -0400 +@@ -41,6 +41,11 @@ + #include + #include + ++#if OS(LINUX) && defined(MADV_FREE) ++// Added in Linux 4.5, but it breaks the sandbox. ++#undef MADV_FREE ++#endif ++ + #ifndef MADV_FREE + #define MADV_FREE MADV_DONTNEED + #endif diff --git a/chromium.spec b/chromium.spec index 2b68728..4bb9b21 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1,3 +1,6 @@ +# NEVER EVER EVER turn this on in official builds +%global freeworld 0 + # %%{nil} for Stable; -beta for Beta; -dev for Devel # dash in -beta and -dev is intentional ! %global chromium_channel %{nil} @@ -74,7 +77,7 @@ BuildRequires: libicu-devel >= 5.4 Name: chromium%{chromium_channel} Version: 52.0.2743.116 -Release: 1%{?dist} +Release: 6%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -107,8 +110,6 @@ Patch11: chromium-52.0.2723.2-PNGImageDecoder-fix-cast.patch # Ignore deprecations in cups 2.2 # https://bugs.chromium.org/p/chromium/issues/detail?id=622493 Patch12: chromium-52.0.2743.82-cups22.patch -# Fix widevine compilation -Patch13: chromium-52.0.2743.82-widevinefix.patch # Add ICU Text Codec aliases (from openSUSE via Russian Fedora) Patch14: chromium-52.0.2743.82-more-codec-aliases.patch # Use PIE in the Linux sandbox (from openSUSE via Russian Fedora) @@ -119,6 +120,9 @@ Patch16: chromium-52.0.2743.82-arm-webrtc.patch Patch17: chromium-52.0.2743.82-arm-icu-fix.patch # Use /etc/chromium for master_prefs Patch18: chromium-52.0.2743.82-master-prefs-path.patch +# Disable MADV_FREE (if set by glibc) +# https://bugzilla.redhat.com/show_bug.cgi?id=1361157 +Patch19: chromium-52.0.2743.116-unset-madv_free.patch ### Chromium Tests Patches ### Patch100: chromium-46.0.2490.86-use_system_opus.patch @@ -130,7 +134,11 @@ Patch102: chromium-52.0.2723.2-sync_link_zlib.patch # For Chromium Fedora use chromium-latest.py --stable --ffmpegclean --ffmpegarm # If you want to include the ffmpeg arm sources append the --ffmpegarm switch # https://commondatastorage.googleapis.com/chromium-browser-official/chromium-%%{version}.tar.xz +%if %{freeworld} +Source0: https://commondatastorage.googleapis.com/chromium-browser-official/chromium-%{version}.tar.xz +%else Source0: chromium-%{version}-clean.tar.xz +%endif %if 0%{tests} Source1: https://commondatastorage.googleapis.com/chromium-browser-official/chromium-%{version}-testdata.tar.xz %endif @@ -404,12 +412,25 @@ Requires: chromium-libs-media%{_isa} = %{version} %description libs Shared libraries used by chromium (and chrome-remote-desktop). +%if %{freeworld} +%package libs-media-freeworld +Summary: Chromium media libraries built with all possible codecs +Provides: chromium-libs-media = %{version}-%{release} +Provides: chromium-libs-media%{_isa} = %{version}-%{release} + +%description libs-media-freeworld +Chromium media libraries built with all possible codecs. Chromium is an +open-source web browser, powered by WebKit (Blink). This package replaces +the default chromium-libs-media package, which is limited in what it +can include. +%else %package libs-media Summary: Shared libraries used by the chromium media subsystem %description libs-media Shared libraries used by the chromium media subsystem. %endif +%endif %package -n chrome-remote-desktop Requires(pre): shadow-utils @@ -464,12 +485,12 @@ members of the Chromium and WebDriver teams. %patch10 -p1 -b .unbundle-fix %patch11 -p1 -b .fixcast %patch12 -p1 -b .cups22 -%patch13 -p1 -b .widevinefix %patch14 -p1 -b .morealiases %patch15 -p1 -b .sandboxpie %patch16 -p1 -b .armwebrtc %patch17 -p1 -b .armfix %patch18 -p1 -b .etc +%patch19 -p1 -b .madv_free ### Chromium Tests Patches ### %patch100 -p1 -b .use_system_opus @@ -665,8 +686,13 @@ export CHROMIUM_BROWSER_GYP_DEFINES="\ -Dlibspeechd_h_prefix=speech-dispatcher/ \ %endif \ +%if %{freeworld} + -Dffmpeg_branding=ChromeOS \ + -Dproprietary_codecs=1 \ +%else -Dffmpeg_branding=Chromium \ -Dproprietary_codecs=0 \ +%endif %if 0%{?shared} -Dbuild_ffmpegsumo=1 \ -Dffmpeg_component=shared_library \ @@ -681,7 +707,7 @@ export CHROMIUM_BROWSER_GYP_DEFINES="\ -Dlogging_like_official_build=1 \ -Denable_hotwording=0 \ -Duse_aura=1 \ - -Denable_hidpi=1 \ + -Denable_hidpi=0 \ -Denable_touch_ui=1 \ -Denable_pepper_cdms=1 \ -Denable_webrtc=1 \ @@ -721,6 +747,9 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/libwebp' \ 'third_party/libxml' \ 'third_party/libxslt' \ +%if %{freeworld} + 'third_party/openh264' \ +%endif %if 0%{?bundlere2} 'third_party/re2' \ %endif @@ -860,6 +889,13 @@ build/gyp_chromium \ rm -rf third_party/libusb/src/libusb/libusb.h %endif +# make up a version for widevine +sed '14i#define WIDEVINE_CDM_VERSION_STRING "Something fresh"' -i "third_party/widevine/cdm/stub/widevine_cdm_version.h" + +# Hard code extra version +FILE=chrome/common/channel_info_posix.cc +sed -i.orig -e 's/getenv("CHROME_VERSION_EXTRA")/"Fedora Project"/' $FILE + %build %if %{?tests} @@ -986,6 +1022,12 @@ cp -a snapshot_blob.bin %{buildroot}%{chromium_path} %if 0%{?shared} cp -a lib %{buildroot}%{chromium_path} %endif +# clearkeycdm and widevine bits +# EXCEPT libwidevinecdm*.so*. At least libwidevinecdm.so is just an empty shim, +# because the chromium sources don't have the prebuilt binary. +# You'll have to get libwidevinecdm*.so* +# from Google Chrome and copy it in /usr/lib64/chromium-browser/ +cp -a libclearkeycdm.so* %{buildroot}%{chromium_path} # chromedriver cp -a chromedriver %{buildroot}%{chromium_path}/chromedriver @@ -1421,10 +1463,10 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %if 0%{?nacl} %{chromium_path}/nacl_helper* %{chromium_path}/*.nexe -%dir %{chromium_path}/PepperFlash/ %{chromium_path}/pnacl/ %{chromium_path}/tls_edit %endif +%dir %{chromium_path}/PepperFlash/ %{chromium_path}/protoc # %%{chromium_path}/remoting_locales/ %{chromium_path}/pseudo_locales/ @@ -1499,8 +1541,13 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %exclude %{chromium_path}/lib/libffmpeg.so* %exclude %{chromium_path}/lib/libmedia.so* %{chromium_path}/lib/ +%{chromium_path}/libclearkeycdm.so* +%if %{freeworld} +%files libs-media-freeworld +%else %files libs-media +%endif %{chromium_path}/lib/libffmpeg.so* %{chromium_path}/lib/libmedia.so* %endif @@ -1534,6 +1581,24 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Mon Aug 15 2016 Tom Callaway 52.0.2743.116-6 +- disable the "hidpi" setting +- unset MADV_FREE if set (should get F25+ working again) + +* Fri Aug 12 2016 Tom Callaway 52.0.2743.116-5 +- do not package libwidevinecdm*.so, they are just empty shells + instead, to enable widevine, get these files from Google Chrome + +* Fri Aug 12 2016 Tom Callaway 52.0.2743.116-4 +- add "freeworld" conditional for testing netflix/widevine + +* Fri Aug 12 2016 Tom Callaway 52.0.2743.116-3 +- move PepperFlash directory out of the nacl conditional (thanks to churchyard) +- fix widevine (thanks to David Vásquez and UnitedRPMS) + +* Wed Aug 10 2016 Tom Callaway 52.0.2743.116-2 +- include clearkeycdm and widevinecdm files in libs-media + * Mon Aug 8 2016 Tom Callaway 52.0.2743.116-1 - update to 52.0.2743.116 From 5c56e25b5883596622451e6bd6b1aeb57bf77135 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 15 Aug 2016 16:31:57 -0400 Subject: [PATCH 0017/1449] add Requires(post) for selinux scriplet --- chromium.spec | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 4bb9b21..37b107c 100644 --- a/chromium.spec +++ b/chromium.spec @@ -77,7 +77,7 @@ BuildRequires: libicu-devel >= 5.4 Name: chromium%{chromium_channel} Version: 52.0.2743.116 -Release: 6%{?dist} +Release: 7%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -401,6 +401,10 @@ Provides: bundled(xdg-user-dirs) Provides: bundled(x86inc) = 0 Provides: bundled(zlib) = 1.2.5 +# For selinux scriptlet +Requires(post): /sbin/semanage +Requires(post): /usr/sbin/restorecon + %description Chromium is an open-source web browser, powered by WebKit (Blink). @@ -1581,6 +1585,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Mon Aug 15 2016 Tom Callaway 52.0.2743.116-7 +- add Requires(post) items for selinux scriptlets + * Mon Aug 15 2016 Tom Callaway 52.0.2743.116-6 - disable the "hidpi" setting - unset MADV_FREE if set (should get F25+ working again) From 4644b6d7e7e03f657fcd7b03baedeba8c228def8 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 16 Aug 2016 09:19:02 -0400 Subject: [PATCH 0018/1449] fix path on semanage Requires(post) line --- chromium.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/chromium.spec b/chromium.spec index 37b107c..af8c149 100644 --- a/chromium.spec +++ b/chromium.spec @@ -77,7 +77,7 @@ BuildRequires: libicu-devel >= 5.4 Name: chromium%{chromium_channel} Version: 52.0.2743.116 -Release: 7%{?dist} +Release: 8%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -402,7 +402,7 @@ Provides: bundled(x86inc) = 0 Provides: bundled(zlib) = 1.2.5 # For selinux scriptlet -Requires(post): /sbin/semanage +Requires(post): /usr/sbin/semanage Requires(post): /usr/sbin/restorecon %description @@ -1585,6 +1585,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Tue Aug 16 2016 Tom Callaway 52.0.2743.116-8 +- fix path on Requires(post) line for semanage + * Mon Aug 15 2016 Tom Callaway 52.0.2743.116-7 - add Requires(post) items for selinux scriptlets From a05dc02e80bed1923d168a96d024a766d770e691 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 16 Aug 2016 15:30:37 -0400 Subject: [PATCH 0019/1449] filter out private requires/provides --- chromium.spec | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index af8c149..afd0848 100644 --- a/chromium.spec +++ b/chromium.spec @@ -8,6 +8,13 @@ %global chromium_path %{_libdir}/chromium-browser%{chromium_channel} %global crd_path %{_libdir}/chrome-remote-desktop %global tests 0 + +# We don't want any libs in these directories to generate Provides +# Requires is trickier. +%global __provides_exclude_from %{chromium_path}/.*\\.so|%{chromium_path}/lib/.*\\.so +%global privlibs libaccessibility|libaura_extra|libaura|libbase_i18n|libbase|libblink_common|libblink_platform|libblink_web|libboringssl|libbrowser_ui_views|libcaptive_portal|libcc_blink|libcc_ipc|libcc_proto|libcc|libcc_surfaces|libchromium_sqlite3|libcloud_policy_proto_generated_compile|libcloud_policy_proto|libcompositor|libcontent|libcrcrypto|libdbus|libdevice_battery|libdevice_bluetooth|libdevice_core|libdevice_event_log_component|libdevice_vibration|libdisplay_compositor|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libevents_base|libevents_devices|libevents_devices_x11|libevents_ipc|libevents_ozone_layout|libevents_platform|libevents|libevents_x|libffmpeg|libgcm_driver_common|libgcm|libgesture_detection|libgfx_geometry|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx_range|libgfx|libgfx_vector_icons|libgfx_x11|libgin|libgles2_c_lib|libgles2_implementation|libgles2_utils|libGLESv2|libgl_init|libgl_wrapper|libgpu|libgtk2ui|libicui18n|libicuuc|libipc_mojo|libipc|libkeyboard|libkeyboard_with_content|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libmedia_blink|libmedia_gpu|libmedia|libmessage_center|libmidi|libmodules|libmojo_common_lib|libmojo_geometry_lib|libmojo_system_impl|libnative_theme|libnet|libnet_with_v8|libonc_component|libplatform_handle|libpolicy_component|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libsandbox_services|libscheduler|libseccomp_bpf_helpers|libseccomp_bpf|libsessions_content|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstorage_common|libstorage|libsuid_sandbox_client|libsurface|libsync_core|libsync_proto|libtracing|libtranslator|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_touch_selection|liburl_ipc|liburl_lib|liburl_matcher|libuser_prefs|libv8|libviews|libwallpaper|libwebcore_shared|libwebdata_common|libweb_dialogs|libwebview|libwm|libwtf|libx11_events_platform +%global __requires_exclude ^(%{privlibs})\\.so + # Try to not use the Xvfb as it is slow.. %global tests_force_display 0 # If we build with shared on, then chrome-remote-desktop depends on chromium libs. @@ -77,7 +84,7 @@ BuildRequires: libicu-devel >= 5.4 Name: chromium%{chromium_channel} Version: 52.0.2743.116 -Release: 8%{?dist} +Release: 9%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -430,6 +437,7 @@ can include. %else %package libs-media Summary: Shared libraries used by the chromium media subsystem +Requires: chromium-libs%{_isa} = %{version} %description libs-media Shared libraries used by the chromium media subsystem. @@ -1585,6 +1593,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Tue Aug 16 2016 Tom Callaway 52.0.2743.116-9 +- filter out Requires/Provides for chromium-only libs and plugins + * Tue Aug 16 2016 Tom Callaway 52.0.2743.116-8 - fix path on Requires(post) line for semanage From 496fc08b11ca8f65185bfeb211ac2c454fe17d2b Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 18 Aug 2016 09:37:04 -0400 Subject: [PATCH 0020/1449] disable gtk3 because it breaks lots of things --- chromium.spec | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/chromium.spec b/chromium.spec index afd0848..ead6778 100644 --- a/chromium.spec +++ b/chromium.spec @@ -63,7 +63,8 @@ BuildRequires: libicu-devel >= 5.4 %global bundlere2 0 -%global gtk3 1 +# Chromium breaks on wayland, hidpi, and colors with gtk3 enabled. +%global gtk3 0 %if 0%{?rhel} == 7 %global bundleopus 1 @@ -84,7 +85,7 @@ BuildRequires: libicu-devel >= 5.4 Name: chromium%{chromium_channel} Version: 52.0.2743.116 -Release: 9%{?dist} +Release: 10%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -719,7 +720,7 @@ export CHROMIUM_BROWSER_GYP_DEFINES="\ -Dlogging_like_official_build=1 \ -Denable_hotwording=0 \ -Duse_aura=1 \ - -Denable_hidpi=0 \ + -Denable_hidpi=1 \ -Denable_touch_ui=1 \ -Denable_pepper_cdms=1 \ -Denable_webrtc=1 \ @@ -1593,6 +1594,10 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Thu Aug 18 2016 Tom Callaway 52.0.2743.116-10 +- disable gtk3 because it breaks lots of things +- re-enable hidpi setting + * Tue Aug 16 2016 Tom Callaway 52.0.2743.116-9 - filter out Requires/Provides for chromium-only libs and plugins From d0d4125df53e5005d3847e335adbd7599642fc32 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 18 Aug 2016 15:47:59 -0400 Subject: [PATCH 0021/1449] disable unavailable Requires on epel7 --- chromium.spec | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index ead6778..9c914ee 100644 --- a/chromium.spec +++ b/chromium.spec @@ -85,7 +85,7 @@ BuildRequires: libicu-devel >= 5.4 Name: chromium%{chromium_channel} Version: 52.0.2743.116 -Release: 10%{?dist} +Release: 11%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -313,8 +313,10 @@ Requires: nss-mdns%{_isa} # GTK modules it expects to find for some reason. Requires: libcanberra-gtk2%{_isa} +%if 0%{?fedora} # This enables support for u2f tokens Requires: u2f-hidraw-policy +%endif # Once upon a time, we tried to split these out... but that's not worth the effort anymore. Provides: chromium-ffmpegsumo = %{version}-%{release} @@ -1594,6 +1596,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Thu Aug 18 2016 Tom Callaway 52.0.2743.116-11 +- conditionalize Requires: u2f-hidraw-policy so that it is only used on Fedora + * Thu Aug 18 2016 Tom Callaway 52.0.2743.116-10 - disable gtk3 because it breaks lots of things - re-enable hidpi setting From 2fd8ecc863e7d33adcc206975824e9d10acd5e45 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 29 Aug 2016 13:07:46 -0400 Subject: [PATCH 0022/1449] use bundled harfbuzz on EL7 --- chromium.spec | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 9c914ee..6355974 100644 --- a/chromium.spec +++ b/chromium.spec @@ -69,7 +69,9 @@ BuildRequires: libicu-devel >= 5.4 %if 0%{?rhel} == 7 %global bundleopus 1 %global bundlelibusbx 1 +%global bundleharfbuzz 1 %else +%global bundleharfbuzz 0 %global bundleopus 0 %global bundlelibusbx 0 %endif @@ -361,6 +363,9 @@ Provides: bundled(fips181) = 2.2.3 Provides: bundled(fontconfig) = 2.11.0 Provides: bundled(gperftools) = svn144 Provides: bundled(gtk3) = 3.1.4 +%if 0%{?bundleharfbuzz} +Provides: bundled(harfbuzz) = 1.2.7 +%endif Provides: bundled(hunspell) = 1.3.2 Provides: bundled(iccjpeg) %if 0%{?bundleicu} @@ -645,7 +650,11 @@ export CHROMIUM_BROWSER_GYP_DEFINES="\ -Duse_pulseaudio=1 \ -Duse_system_bzip2=1 \ -Duse_system_flac=1 \ +%if 0%{?bundleharfbuzz} + -Duse_system_harfbuzz=0 \ +%else -Duse_system_harfbuzz=1 \ +%endif %if 0%{?bundleicu} -Duse_system_icu=0 \ %else @@ -1596,8 +1605,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog -* Thu Aug 18 2016 Tom Callaway 52.0.2743.116-11 +* Mon Aug 29 2016 Tom Callaway 52.0.2743.116-11 - conditionalize Requires: u2f-hidraw-policy so that it is only used on Fedora +- use bundled harfbuzz on EL7 * Thu Aug 18 2016 Tom Callaway 52.0.2743.116-10 - disable gtk3 because it breaks lots of things From 0df9641b97490bb416253df0f618ab620248a10a Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 7 Sep 2016 15:13:21 -0400 Subject: [PATCH 0023/1449] 53.0.2785.92 --- .gitignore | 1 + chrome-remote-desktop.service | 1 + ...mium-53.0.2785.92-boringssl-time-fix.patch | 11 + chromium-53.0.2785.92-gn-system.patch | 252 ++++++++++++++++++ ...um-53.0.2785.92-last-commit-position.patch | 28 ++ chromium.spec | 113 ++++++-- sources | 4 +- 7 files changed, 388 insertions(+), 22 deletions(-) create mode 100644 chromium-53.0.2785.92-boringssl-time-fix.patch create mode 100644 chromium-53.0.2785.92-gn-system.patch create mode 100644 chromium-53.0.2785.92-last-commit-position.patch diff --git a/.gitignore b/.gitignore index a553dc5..68c0030 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ /policy_templates.zip /chromium-52.0.2743.82-clean.tar.xz /chromium-52.0.2743.116-clean.tar.xz +/chromium-53.0.2785.92-clean.tar.xz diff --git a/chrome-remote-desktop.service b/chrome-remote-desktop.service index 5889bc7..2713bf1 100644 --- a/chrome-remote-desktop.service +++ b/chrome-remote-desktop.service @@ -2,6 +2,7 @@ Description="Chrome Remote Desktop host daemon" [Service] +Environment=HOME=%h ExecStart=@@CRD_PATH@@/chrome-remote-desktop --start --foreground ExecStop=@@CRD_PATH@@/chrome-remote-desktop --stop ExecReload=@@CRD_PATH@@/chrome-remote-desktop --reload diff --git a/chromium-53.0.2785.92-boringssl-time-fix.patch b/chromium-53.0.2785.92-boringssl-time-fix.patch new file mode 100644 index 0000000..8d67957 --- /dev/null +++ b/chromium-53.0.2785.92-boringssl-time-fix.patch @@ -0,0 +1,11 @@ +diff -up chromium-53.0.2785.92/third_party/boringssl/src/crypto/x509/by_dir.c.timefix chromium-53.0.2785.92/third_party/boringssl/src/crypto/x509/by_dir.c +--- chromium-53.0.2785.92/third_party/boringssl/src/crypto/x509/by_dir.c.timefix 2016-09-06 15:20:06.094396255 -0400 ++++ chromium-53.0.2785.92/third_party/boringssl/src/crypto/x509/by_dir.c 2016-09-06 15:20:16.893187930 -0400 +@@ -56,6 +56,7 @@ + * [including the GNU Public Licence.] */ + + #include ++#include + #include + #include + diff --git a/chromium-53.0.2785.92-gn-system.patch b/chromium-53.0.2785.92-gn-system.patch new file mode 100644 index 0000000..8c4c664 --- /dev/null +++ b/chromium-53.0.2785.92-gn-system.patch @@ -0,0 +1,252 @@ +diff -up chromium-53.0.2785.92/build/linux/unbundle/libjpeg.gn.gnsystem chromium-53.0.2785.92/build/linux/unbundle/libjpeg.gn +--- chromium-53.0.2785.92/build/linux/unbundle/libjpeg.gn.gnsystem 2016-09-06 13:27:56.018365168 -0400 ++++ chromium-53.0.2785.92/build/linux/unbundle/libjpeg.gn 2016-09-06 13:27:56.018365168 -0400 +@@ -0,0 +1,9 @@ ++# 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. ++ ++source_set("libjpeg") { ++ libs = [ ++ "jpeg", ++ ] ++} +diff -up chromium-53.0.2785.92/build/linux/unbundle/libpng.gn.gnsystem chromium-53.0.2785.92/build/linux/unbundle/libpng.gn +--- chromium-53.0.2785.92/build/linux/unbundle/libpng.gn.gnsystem 2016-09-06 13:27:56.018365168 -0400 ++++ chromium-53.0.2785.92/build/linux/unbundle/libpng.gn 2016-09-06 13:27:56.018365168 -0400 +@@ -0,0 +1,25 @@ ++# 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_libpng") { ++ packages = [ "libpng" ] ++} ++ ++shim_headers("libpng_shim") { ++ root_path = "include" ++ headers = [ ++ "png.h", ++ "pngconf.h", ++ ] ++} ++ ++source_set("libpng") { ++ deps = [ ++ ":libpng_shim", ++ ] ++ public_configs = [ ":system_libpng" ] ++} +diff -up chromium-53.0.2785.92/build/linux/unbundle/libusb.gn.gnsystem chromium-53.0.2785.92/build/linux/unbundle/libusb.gn +--- chromium-53.0.2785.92/build/linux/unbundle/libusb.gn.gnsystem 2016-09-06 13:27:56.019365149 -0400 ++++ chromium-53.0.2785.92/build/linux/unbundle/libusb.gn 2016-09-06 13:27:56.018365168 -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-53.0.2785.92/build/linux/unbundle/opus.gn.gnsystem chromium-53.0.2785.92/build/linux/unbundle/opus.gn +--- chromium-53.0.2785.92/build/linux/unbundle/opus.gn.gnsystem 2016-09-06 13:27:56.019365149 -0400 ++++ chromium-53.0.2785.92/build/linux/unbundle/opus.gn 2016-09-06 13:31:11.546589545 -0400 +@@ -0,0 +1,161 @@ ++# 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", ++ ] ++} ++ +diff -up chromium-53.0.2785.92/build/linux/unbundle/replace_gn_files.py.gnsystem chromium-53.0.2785.92/build/linux/unbundle/replace_gn_files.py +--- chromium-53.0.2785.92/build/linux/unbundle/replace_gn_files.py.gnsystem 2016-09-02 15:02:02.000000000 -0400 ++++ chromium-53.0.2785.92/build/linux/unbundle/replace_gn_files.py 2016-09-06 13:27:56.020365130 -0400 +@@ -21,9 +21,13 @@ REPLACEMENTS = { + 'flac': 'third_party/flac/BUILD.gn', + 'harfbuzz-ng': 'third_party/harfbuzz-ng/BUILD.gn', + 'libevent': 'base/third_party/libevent/BUILD.gn', ++ 'libjpeg': 'third_party/libjpeg/BUILD.gn', ++ 'libpng': 'third_party/libpng/BUILD.gn', ++ 'libusb': 'third_party/libusb/BUILD.gn', + 'libwebp': 'third_party/libwebp/BUILD.gn', + 'libxml': 'third_party/libxml/BUILD.gn', + 'libxslt': 'third_party/libxslt/BUILD.gn', ++ 'opus': 'third_party/opus/BUILD.gn', + 'snappy': 'third_party/snappy/BUILD.gn', + 'yasm': 'third_party/yasm/yasm_assemble.gni', + 'zlib': 'third_party/zlib/BUILD.gn', diff --git a/chromium-53.0.2785.92-last-commit-position.patch b/chromium-53.0.2785.92-last-commit-position.patch new file mode 100644 index 0000000..46806f7 --- /dev/null +++ b/chromium-53.0.2785.92-last-commit-position.patch @@ -0,0 +1,28 @@ +diff -up chromium-53.0.2785.92/tools/gn/BUILD.gn.lastcommitfix chromium-53.0.2785.92/tools/gn/BUILD.gn +--- chromium-53.0.2785.92/tools/gn/BUILD.gn.lastcommitfix 2016-09-06 13:50:17.540459136 -0400 ++++ chromium-53.0.2785.92/tools/gn/BUILD.gn 2016-09-06 13:50:27.380269110 -0400 +@@ -259,7 +259,6 @@ executable("gn") { + + deps = [ + ":gn_lib", +- ":last_commit_position", + "//base", + "//build/config/sanitizers:deps", + "//build/win:default_exe_manifest", +diff -up chromium-53.0.2785.92/tools/gn/gn_main.cc.lastcommitfix chromium-53.0.2785.92/tools/gn/gn_main.cc +--- chromium-53.0.2785.92/tools/gn/gn_main.cc.lastcommitfix 2016-09-06 13:49:34.620288177 -0400 ++++ chromium-53.0.2785.92/tools/gn/gn_main.cc 2016-09-06 13:49:47.316042652 -0400 +@@ -12,13 +12,7 @@ + #include "tools/gn/standard_out.h" + #include "tools/gn/switches.h" + +-// Only the GN-generated build makes this header for now. +-// TODO(brettw) consider adding this if we need it in GYP. +-#if defined(GN_BUILD) +-#include "tools/gn/last_commit_position.h" +-#else + #define LAST_COMMIT_POSITION "UNKNOWN" +-#endif + + namespace { + diff --git a/chromium.spec b/chromium.spec index 6355974..ae9d12b 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1,6 +1,12 @@ # NEVER EVER EVER turn this on in official builds %global freeworld 0 +# gn is the new new new buildtool. *sigh* +%global use_gn 0 + +# Leave this alone, please. +%global target out/Release + # %%{nil} for Stable; -beta for Beta; -dev for Devel # dash in -beta and -dev is intentional ! %global chromium_channel %{nil} @@ -61,7 +67,7 @@ BuildRequires: libicu-devel >= 5.4 %global bundleicu 1 %endif -%global bundlere2 0 +%global bundlere2 1 # Chromium breaks on wayland, hidpi, and colors with gtk3 enabled. %global gtk3 0 @@ -86,8 +92,8 @@ BuildRequires: libicu-devel >= 5.4 %global chromoting_client_id 449907151817-8vnlfih032ni8c4jjps9int9t86k546t.apps.googleusercontent.com Name: chromium%{chromium_channel} -Version: 52.0.2743.116 -Release: 11%{?dist} +Version: 53.0.2785.92 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -109,14 +115,10 @@ Patch4: chromium-46.0.2490.71-notest.patch Patch6: chromium-47.0.2526.80-pnacl-fgnu-inline-asm.patch # Ignore broken nacl open fd counter Patch7: chromium-47.0.2526.80-nacl-ignore-broken-fd-counter.patch -# Fixups for gcc6 -Patch8: chromium-48.0.2564.103-gcc6.patch # Use libusb_interrupt_event_handler from current libusbx (1.0.21-0.1.git448584a) Patch9: chromium-48.0.2564.116-libusb_interrupt_event_handler.patch # Fix re2 unbundle gyp Patch10: chromium-50.0.2661.94-unbundle-re2-fix.patch -# Fix PNGImageDecoder code -Patch11: chromium-52.0.2723.2-PNGImageDecoder-fix-cast.patch # Ignore deprecations in cups 2.2 # https://bugs.chromium.org/p/chromium/issues/detail?id=622493 Patch12: chromium-52.0.2743.82-cups22.patch @@ -133,6 +135,13 @@ Patch18: chromium-52.0.2743.82-master-prefs-path.patch # Disable MADV_FREE (if set by glibc) # https://bugzilla.redhat.com/show_bug.cgi?id=1361157 Patch19: chromium-52.0.2743.116-unset-madv_free.patch +# Use gn system files +Patch20: chromium-53.0.2785.92-gn-system.patch +# Fix last commit position issue +# https://groups.google.com/a/chromium.org/forum/#!topic/gn-dev/7nlJv486bD4 +Patch21: chromium-53.0.2785.92-last-commit-position.patch +# Fix issue where timespec is not defined when sys/stat.h is included. +Patch22: chromium-53.0.2785.92-boringssl-time-fix.patch ### Chromium Tests Patches ### Patch100: chromium-46.0.2490.86-use_system_opus.patch @@ -191,7 +200,6 @@ BuildRequires: gperf BuildRequires: libatomic BuildRequires: libcap-devel BuildRequires: libdrm-devel -BuildRequires: libexif-devel BuildRequires: libgcrypt-devel BuildRequires: libudev-devel BuildRequires: libusb-devel @@ -238,10 +246,8 @@ BuildRequires: dbus-glib-devel BuildRequires: elfutils-libelf-devel BuildRequires: flac-devel BuildRequires: hwdata -BuildRequires: jsoncpp-devel BuildRequires: kernel-headers BuildRequires: libevent-devel -BuildRequires: libexif-devel BuildRequires: libffi-devel %if 0%{?bundleicu} # If this is true, we're using the bundled icu. @@ -270,8 +276,6 @@ BuildRequires: libusbx-devel >= 1.0.21-0.1.git448584a BuildRequires: libxslt-devel # Same here, it seems. # BuildRequires: libyuv-devel -BuildRequires: minizip-devel -BuildRequires: nspr-devel %if %{bundleopus} # Do nothing %else @@ -296,7 +300,6 @@ Requires: re2 >= 20160401 BuildRequires: re2-devel >= 20160401 %endif BuildRequires: speech-dispatcher-devel -BuildRequires: speex-devel = 1.2 BuildRequires: yasm BuildRequires: pkgconfig(gnome-keyring-1) # remote desktop needs this @@ -500,10 +503,8 @@ members of the Chromium and WebDriver teams. %patch4 -p1 -b .notest %patch6 -p1 -b .gnu-inline %patch7 -p1 -b .ignore-fd-count -# %%patch8 -p1 -b .gcc6 %patch9 -p1 -b .modern-libusbx %patch10 -p1 -b .unbundle-fix -%patch11 -p1 -b .fixcast %patch12 -p1 -b .cups22 %patch14 -p1 -b .morealiases %patch15 -p1 -b .sandboxpie @@ -511,6 +512,9 @@ members of the Chromium and WebDriver teams. %patch17 -p1 -b .armfix %patch18 -p1 -b .etc %patch19 -p1 -b .madv_free +%patch20 -p1 -b .gnsystem +%patch21 -p1 -b .lastcommit +%patch22 -p1 -b .timefix ### Chromium Tests Patches ### %patch100 -p1 -b .use_system_opus @@ -613,6 +617,36 @@ ln -s ../../out/Release/gen/sdk/linux_x86 linux_x86 popd %endif +CHROMIUM_BROWSER_GN_DEFINES="" +%ifarch x86_64 +CHROMIUM_BROWSER_GN_DEFINES+=' system_libdir="lib64"' +%endif +CHROMIUM_BROWSER_GN_DEFINES+=' google_api_key="%{api_key}" google_default_client_id="%{default_client_id}" google_default_client_secret="%{default_client_secret}"' +CHROMIUM_BROWSER_GN_DEFINES+=' is_clang=false use_sysroot=false use_gio=true use_pulseaudio=true icu_use_data_file_flag=true' +%if 0%{?nonacl} +CHROMIUM_BROWSER_GN_DEFINES+=' enable_nacl=false' +%endif +%if %{freeworld} +CHROMIUM_BROWSER_GN_DEFINES+=' ffmpeg_branding="ChromeOS" proprietary_codecs=true' +%else +CHROMIUM_BROWSER_GN_DEFINES+=' ffmpeg_branding="Chromium" proprietary_codecs=false' +%endif +%if 0%{?shared} +CHROMIUM_BROWSER_GN_DEFINES+=' is_component_ffmpeg=true is_component_build=true' +%else +CHROMIUM_BROWSER_GN_DEFINES+=' is_component_ffmpeg=false is_component_build=false' +%endif +CHROMIUM_BROWSER_GN_DEFINES+=' remove_webcore_debug_symbols=true enable_hangout_services_extension=true' +CHROMIUM_BROWSER_GN_DEFINES+=' enable_hotwording=false use_aura=true enable_hidpi=true' +CHROMIUM_BROWSER_GN_DEFINES+=' enable_webrtc=true enable_widevine=true' +%if 0%{gtk3} +CHROMIUM_BROWSER_GN_DEFINES+=' use_gtk3=true' +%else +CHROMIUM_BROWSER_GN_DEFINES+=' use_gtk3=false' +%endif +CHROMIUM_BROWSER_GN_DEFINES+=' extra_cflags="-fno-delete-null-pointer-checks" treat_warnings_as_errors=false' +export CHROMIUM_BROWSER_GN_DEFINES + export CHROMIUM_BROWSER_GYP_DEFINES="\ %ifarch x86_64 -Dtarget_arch=x64 \ @@ -661,9 +695,7 @@ export CHROMIUM_BROWSER_GYP_DEFINES="\ -Duse_system_icu=1 \ %endif -Dicu_use_data_file_flag=1 \ - -Duse_system_jsoncpp=1 \ -Duse_system_libevent=1 \ - -Duse_system_libexif=1 \ -Duse_system_libjpeg=1 \ -Duse_system_libpng=1 \ %if %{bundlelibusbx} @@ -673,8 +705,6 @@ export CHROMIUM_BROWSER_GYP_DEFINES="\ %endif -Duse_system_libxml=1 \ -Duse_system_libxslt=1 \ - -Duse_system_minizip=1 \ - -Duse_system_nspr=1 \ %if %{bundleopus} -Duse_system_opus=0 \ %else @@ -685,7 +715,6 @@ export CHROMIUM_BROWSER_GYP_DEFINES="\ %else -Duse_system_re2=1 \ %endif - -Duse_system_speex=1 \ -Duse_system_libsrtp=0 \ -Duse_system_xdg_utils=1 \ -Duse_system_yasm=1 \ @@ -797,11 +826,13 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'chrome/third_party/mozilla_security_manager' \ 'courgette/third_party' \ 'native_client/src/third_party/dlmalloc' \ + 'native_client/src/third_party/valgrind' \ 'net/third_party/mozilla_security_manager' \ 'net/third_party/nss' \ 'third_party/WebKit' \ 'third_party/analytics' \ 'third_party/angle' \ + 'third_party/angle/src/common/third_party/numerics' \ 'third_party/angle/src/third_party/compiler' \ 'third_party/angle/src/third_party/libXNVCtrl' \ 'third_party/angle/src/third_party/murmurhash' \ @@ -814,6 +845,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/catapult/tracing/third_party/d3' \ 'third_party/catapult/tracing/third_party/gl-matrix' \ 'third_party/catapult/tracing/third_party/jszip' \ + 'third_party/catapult/tracing/third_party/mannwhitneyu' \ 'third_party/catapult/third_party/py_vulcanize' \ 'third_party/catapult/third_party/py_vulcanize/third_party/rcssmin' \ 'third_party/catapult/third_party/py_vulcanize/third_party/rjsmin' \ @@ -894,6 +926,41 @@ ln -s %{python_sitearch}/markupsafe third_party/markupsafe # Fix hardcoded path in remoting code sed -i 's|/opt/google/chrome-remote-desktop|%{crd_path}|g' remoting/host/setup/daemon_controller_delegate_linux.cc +export PATH=$PATH:%{_builddir}/depot_tools + +%if %{use_gn} +build/linux/unbundle/replace_gn_files.py --system-libraries \ + flac \ +%if 0%{?bundleharfbuzz} +%else + harfbuzz-ng \ +%endif +%if 0%{?bundleicu} +%else + icu \ +%endif + libevent \ + libjpeg \ + libpng \ +%if %{bundlelibusbx} +%else + libusb \ +%endif + libxml \ + libxslt \ +%if %{bundleopus} +%else + opus \ +%endif +%if 0%{?bundlere2} +%else + re2 \ +%endif + yasm + +tools/gn/bootstrap/bootstrap.py -v --gn-gen-args "$CHROMIUM_BROWSER_GN_DEFINES" +%{target}/gn gen --args="$CHROMIUM_BROWSER_GN_DEFINES" %{target} +%else # Update gyp files according to our configuration # If you will change something in the configuration please update it # for build/gyp_chromium as well (and vice versa). @@ -905,6 +972,7 @@ build/gyp_chromium \ -Drelease_extra_cflags="-O1 -fno-inline-functions -fno-inline" \ %endif $CHROMIUM_BROWSER_GYP_DEFINES +%endif %if %{bundlelibusbx} # no hackity hack hack @@ -1605,6 +1673,11 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Wed Sep 7 2016 Tom Callaway 53.0.2785.92-1 +- add basic framework for gn tooling (disabled because it doesn't work yet) +- update to 53.0.2785.92 +- fix HOME environment issue in chrome-remote-desktop service file + * Mon Aug 29 2016 Tom Callaway 52.0.2743.116-11 - conditionalize Requires: u2f-hidraw-policy so that it is only used on Fedora - use bundled harfbuzz on EL7 diff --git a/sources b/sources index 6df5f7a..16ae8c6 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ 49a7f897775cce21d2b69968b8af1cea depot_tools.git-master.tar.gz -5d68885e80dec938f68f033a51639e57 chromium-52.0.2743.116-clean.tar.xz -c0a1a388c4fb32be8e4afb5ace9e801a policy_templates.zip +8280c0644492bac9f59f4e25ed11d309 policy_templates.zip +40aa0cc4407dc8a198aedc29532abeee chromium-53.0.2785.92-clean.tar.xz From 197955041f7593e93720f10fcc164f0392348d5d Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 9 Sep 2016 09:09:13 -0400 Subject: [PATCH 0024/1449] 53.0.2785.101 --- .gitignore | 1 + chromium-53.0.2785.101-crrev-415028.patch | 142 ++++++++++++++++++++++ chromium.spec | 16 ++- sources | 2 +- 4 files changed, 156 insertions(+), 5 deletions(-) create mode 100644 chromium-53.0.2785.101-crrev-415028.patch diff --git a/.gitignore b/.gitignore index 68c0030..e5acd24 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,4 @@ /chromium-52.0.2743.82-clean.tar.xz /chromium-52.0.2743.116-clean.tar.xz /chromium-53.0.2785.92-clean.tar.xz +/chromium-53.0.2785.101-clean.tar.xz diff --git a/chromium-53.0.2785.101-crrev-415028.patch b/chromium-53.0.2785.101-crrev-415028.patch new file mode 100644 index 0000000..11b60f4 --- /dev/null +++ b/chromium-53.0.2785.101-crrev-415028.patch @@ -0,0 +1,142 @@ +diff -up chromium-53.0.2785.101/sandbox/linux/BUILD.gn.415208 chromium-53.0.2785.101/sandbox/linux/BUILD.gn +--- chromium-53.0.2785.101/sandbox/linux/BUILD.gn.415208 2016-09-08 10:22:07.702555383 -0400 ++++ chromium-53.0.2785.101/sandbox/linux/BUILD.gn 2016-09-08 10:23:26.190044992 -0400 +@@ -41,10 +41,7 @@ group("sandbox") { + public_deps += [ ":suid_sandbox_client" ] + } + if (use_seccomp_bpf || is_nacl_nonsfi) { +- public_deps += [ +- ":seccomp_bpf", +- ":seccomp_bpf_helpers", +- ] ++ public_deps += [ ":seccomp_bpf" ] + } + } + +@@ -221,6 +218,14 @@ component("seccomp_bpf") { + "bpf_dsl/syscall_set.cc", + "bpf_dsl/syscall_set.h", + "bpf_dsl/trap_registry.h", ++ "seccomp-bpf-helpers/baseline_policy.cc", ++ "seccomp-bpf-helpers/baseline_policy.h", ++ "seccomp-bpf-helpers/sigsys_handlers.cc", ++ "seccomp-bpf-helpers/sigsys_handlers.h", ++ "seccomp-bpf-helpers/syscall_parameters_restrictions.cc", ++ "seccomp-bpf-helpers/syscall_parameters_restrictions.h", ++ "seccomp-bpf-helpers/syscall_sets.cc", ++ "seccomp-bpf-helpers/syscall_sets.h", + "seccomp-bpf/die.cc", + "seccomp-bpf/die.h", + "seccomp-bpf/sandbox_bpf.cc", +@@ -250,31 +255,6 @@ component("seccomp_bpf") { + "bpf_dsl/linux_syscall_ranges.h", + "bpf_dsl/seccomp_macros.h", + "bpf_dsl/trap_registry.h", +- ] +- } +-} +- +-component("seccomp_bpf_helpers") { +- sources = [ +- "seccomp-bpf-helpers/baseline_policy.cc", +- "seccomp-bpf-helpers/baseline_policy.h", +- "seccomp-bpf-helpers/sigsys_handlers.cc", +- "seccomp-bpf-helpers/sigsys_handlers.h", +- "seccomp-bpf-helpers/syscall_parameters_restrictions.cc", +- "seccomp-bpf-helpers/syscall_parameters_restrictions.h", +- "seccomp-bpf-helpers/syscall_sets.cc", +- "seccomp-bpf-helpers/syscall_sets.h", +- ] +- defines = [ "SANDBOX_IMPLEMENTATION" ] +- +- deps = [ +- ":sandbox_services", +- ":seccomp_bpf", +- "//base", +- ] +- +- if (is_nacl_nonsfi) { +- sources -= [ + "seccomp-bpf-helpers/baseline_policy.cc", + "seccomp-bpf-helpers/baseline_policy.h", + "seccomp-bpf-helpers/syscall_sets.cc", +diff -up chromium-53.0.2785.101/sandbox/linux/sandbox_linux.gypi.415208 chromium-53.0.2785.101/sandbox/linux/sandbox_linux.gypi +--- chromium-53.0.2785.101/sandbox/linux/sandbox_linux.gypi.415208 2016-09-08 10:20:50.263045995 -0400 ++++ chromium-53.0.2785.101/sandbox/linux/sandbox_linux.gypi 2016-09-08 10:21:51.341870321 -0400 +@@ -54,7 +54,6 @@ + [ 'use_seccomp_bpf==1', { + 'dependencies': [ + 'seccomp_bpf', +- 'seccomp_bpf_helpers', + ], + }], + ], +@@ -141,6 +140,14 @@ + 'bpf_dsl/syscall_set.cc', + 'bpf_dsl/syscall_set.h', + 'bpf_dsl/trap_registry.h', ++ 'seccomp-bpf-helpers/baseline_policy.cc', ++ 'seccomp-bpf-helpers/baseline_policy.h', ++ 'seccomp-bpf-helpers/sigsys_handlers.cc', ++ 'seccomp-bpf-helpers/sigsys_handlers.h', ++ 'seccomp-bpf-helpers/syscall_parameters_restrictions.cc', ++ 'seccomp-bpf-helpers/syscall_parameters_restrictions.h', ++ 'seccomp-bpf-helpers/syscall_sets.cc', ++ 'seccomp-bpf-helpers/syscall_sets.h', + 'seccomp-bpf/die.cc', + 'seccomp-bpf/die.h', + 'seccomp-bpf/sandbox_bpf.cc', +@@ -165,31 +172,6 @@ + ], + 'include_dirs': [ + '../..', +- ], +- }, +- { +- 'target_name': 'seccomp_bpf_helpers', +- 'type': '<(component)', +- 'sources': [ +- 'seccomp-bpf-helpers/baseline_policy.cc', +- 'seccomp-bpf-helpers/baseline_policy.h', +- 'seccomp-bpf-helpers/sigsys_handlers.cc', +- 'seccomp-bpf-helpers/sigsys_handlers.h', +- 'seccomp-bpf-helpers/syscall_parameters_restrictions.cc', +- 'seccomp-bpf-helpers/syscall_parameters_restrictions.h', +- 'seccomp-bpf-helpers/syscall_sets.cc', +- 'seccomp-bpf-helpers/syscall_sets.h', +- ], +- 'dependencies': [ +- '../base/base.gyp:base', +- 'sandbox_services', +- 'seccomp_bpf', +- ], +- 'defines': [ +- 'SANDBOX_IMPLEMENTATION', +- ], +- 'include_dirs': [ +- '../..', + ], + }, + { +diff -up chromium-53.0.2785.101/services/shell/runner/host/BUILD.gn.415208 chromium-53.0.2785.101/services/shell/runner/host/BUILD.gn +--- chromium-53.0.2785.101/services/shell/runner/host/BUILD.gn.415208 2016-09-08 10:20:17.591674773 -0400 ++++ chromium-53.0.2785.101/services/shell/runner/host/BUILD.gn 2016-09-08 10:20:27.742478927 -0400 +@@ -61,7 +61,6 @@ source_set("child_process_base") { + "//sandbox/linux:sandbox", + "//sandbox/linux:sandbox_services", + "//sandbox/linux:seccomp_bpf", +- "//sandbox/linux:seccomp_bpf_helpers", + ] + } + +diff -up chromium-53.0.2785.101/services/shell/shell.gyp.415208 chromium-53.0.2785.101/services/shell/shell.gyp +--- chromium-53.0.2785.101/services/shell/shell.gyp.415208 2016-09-08 10:19:52.543156283 -0400 ++++ chromium-53.0.2785.101/services/shell/shell.gyp 2016-09-08 10:20:03.894938333 -0400 +@@ -145,7 +145,6 @@ + '<(DEPTH)/sandbox/sandbox.gyp:sandbox', + '<(DEPTH)/sandbox/sandbox.gyp:sandbox_services', + '<(DEPTH)/sandbox/sandbox.gyp:seccomp_bpf', +- '<(DEPTH)/sandbox/sandbox.gyp:seccomp_bpf_helpers', + ], + }], + ['OS=="mac"', { diff --git a/chromium.spec b/chromium.spec index ae9d12b..e1e8e61 100644 --- a/chromium.spec +++ b/chromium.spec @@ -18,7 +18,7 @@ # We don't want any libs in these directories to generate Provides # Requires is trickier. %global __provides_exclude_from %{chromium_path}/.*\\.so|%{chromium_path}/lib/.*\\.so -%global privlibs libaccessibility|libaura_extra|libaura|libbase_i18n|libbase|libblink_common|libblink_platform|libblink_web|libboringssl|libbrowser_ui_views|libcaptive_portal|libcc_blink|libcc_ipc|libcc_proto|libcc|libcc_surfaces|libchromium_sqlite3|libcloud_policy_proto_generated_compile|libcloud_policy_proto|libcompositor|libcontent|libcrcrypto|libdbus|libdevice_battery|libdevice_bluetooth|libdevice_core|libdevice_event_log_component|libdevice_vibration|libdisplay_compositor|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libevents_base|libevents_devices|libevents_devices_x11|libevents_ipc|libevents_ozone_layout|libevents_platform|libevents|libevents_x|libffmpeg|libgcm_driver_common|libgcm|libgesture_detection|libgfx_geometry|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx_range|libgfx|libgfx_vector_icons|libgfx_x11|libgin|libgles2_c_lib|libgles2_implementation|libgles2_utils|libGLESv2|libgl_init|libgl_wrapper|libgpu|libgtk2ui|libicui18n|libicuuc|libipc_mojo|libipc|libkeyboard|libkeyboard_with_content|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libmedia_blink|libmedia_gpu|libmedia|libmessage_center|libmidi|libmodules|libmojo_common_lib|libmojo_geometry_lib|libmojo_system_impl|libnative_theme|libnet|libnet_with_v8|libonc_component|libplatform_handle|libpolicy_component|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libsandbox_services|libscheduler|libseccomp_bpf_helpers|libseccomp_bpf|libsessions_content|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstorage_common|libstorage|libsuid_sandbox_client|libsurface|libsync_core|libsync_proto|libtracing|libtranslator|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_touch_selection|liburl_ipc|liburl_lib|liburl_matcher|libuser_prefs|libv8|libviews|libwallpaper|libwebcore_shared|libwebdata_common|libweb_dialogs|libwebview|libwm|libwtf|libx11_events_platform +%global privlibs libaccessibility|libaura_extra|libaura|libbase_i18n|libbase|libblink_common|libblink_platform|libblink_web|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture|libcc_blink|libcc_ipc|libcc_proto|libcc|libcc_surfaces|libchromium_sqlite3|libcloud_policy_proto_generated_compile|libcloud_policy_proto|libcompositor|libcontent|libcrcrypto|libdbus|libdevice_battery|libdevice_bluetooth|libdevice_core|libdevice_event_log_component|libdevice_gamepad|libdevice_power_save_blocker|libdevice_vibration|libdisplay_compositor|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libevents_base|libevents_devices|libevents_devices_x11|libevents_ipc|libevents_ozone_layout|libevents_platform|libevents|libevents_x|libffmpeg|libgcm_driver_common|libgcm|libgesture_detection|libgfx_geometry|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx_range|libgfx|libgfx_vector_icons|libgfx_x11|libgin|libgles2_c_lib|libgles2_implementation|libgles2_utils|libGLESv2|libgl_init|libgl_wrapper|libgpu|libgtk2ui|libicui18n|libicuuc|libipc_mojo|libipc|libkeyboard|libkeyboard_with_content|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libmedia_blink|libmedia_gpu|libmedia|libmessage_center|libmidi|libmodules|libmojo_common_lib|libmojo_geometry_lib|libmojo_public_system|libmojo_system_impl|libnative_theme|libnet|libnet_with_v8|libonc_component|libplatform_handle|libpolicy_component|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libsandbox_services|libscheduler|libseccomp_bpf_helpers|libseccomp_bpf|libsessions_content|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstorage_common|libstorage|libsuid_sandbox_client|libsurface|libsync_core|libsync_proto|libtracing|libtranslator|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_touch_selection|liburl_ipc|liburl_lib|liburl_matcher|libuser_prefs|libv8|libviews|libwallpaper|libwebcore_shared|libwebdata_common|libweb_dialogs|libwebview|libwm|libwtf|libx11_events_platform %global __requires_exclude ^(%{privlibs})\\.so # Try to not use the Xvfb as it is slow.. @@ -92,7 +92,7 @@ BuildRequires: libicu-devel >= 5.4 %global chromoting_client_id 449907151817-8vnlfih032ni8c4jjps9int9t86k546t.apps.googleusercontent.com Name: chromium%{chromium_channel} -Version: 53.0.2785.92 +Version: 53.0.2785.101 Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home @@ -142,6 +142,9 @@ Patch20: chromium-53.0.2785.92-gn-system.patch Patch21: chromium-53.0.2785.92-last-commit-position.patch # Fix issue where timespec is not defined when sys/stat.h is included. Patch22: chromium-53.0.2785.92-boringssl-time-fix.patch +# Fix gn build on Linux +# https://crrev.com/415208 +Patch23: chromium-53.0.2785.101-crrev-415028.patch ### Chromium Tests Patches ### Patch100: chromium-46.0.2490.86-use_system_opus.patch @@ -257,7 +260,7 @@ BuildRequires: libffi-devel BuildRequires: libicu-devel = 54.1 %endif BuildRequires: libjpeg-devel -BuildRequires: libpng-devel +# BuildRequires: libpng-devel %if 0 # see https://code.google.com/p/chromium/issues/detail?id=501318 BuildRequires: libsrtp-devel >= 1.4.4 @@ -379,6 +382,7 @@ Provides: bundled(leveldb) = r80 Provides: bundled(libaddressinput) = 0 Provides: bundled(libjingle) = 9564 Provides: bundled(libphonenumber) = svn584 +Provides: bundled(libpng) = 1.6.22 Provides: bundled(libsrtp) = 1.5.2 %if %{bundlelibusbx} Provides: bundled(libusbx) = 1.0.17 @@ -515,6 +519,7 @@ members of the Chromium and WebDriver teams. %patch20 -p1 -b .gnsystem %patch21 -p1 -b .lastcommit %patch22 -p1 -b .timefix +%patch23 -p1 -b .415208 ### Chromium Tests Patches ### %patch100 -p1 -b .use_system_opus @@ -941,7 +946,6 @@ build/linux/unbundle/replace_gn_files.py --system-libraries \ %endif libevent \ libjpeg \ - libpng \ %if %{bundlelibusbx} %else libusb \ @@ -1673,6 +1677,10 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Thu Sep 8 2016 Tom Callaway 53.0.2785.101-1 +- 53.0.2785.101 +- happy star trek day. live long and prosper. + * Wed Sep 7 2016 Tom Callaway 53.0.2785.92-1 - add basic framework for gn tooling (disabled because it doesn't work yet) - update to 53.0.2785.92 diff --git a/sources b/sources index 16ae8c6..a807ef3 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ 49a7f897775cce21d2b69968b8af1cea depot_tools.git-master.tar.gz 8280c0644492bac9f59f4e25ed11d309 policy_templates.zip -40aa0cc4407dc8a198aedc29532abeee chromium-53.0.2785.92-clean.tar.xz +c0dc01cf6a7feb933e4798b39f35b012 chromium-53.0.2785.101-clean.tar.xz From 1413d68b9f456543e3b14f225146e475416eec9f Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 14 Sep 2016 10:21:41 -0400 Subject: [PATCH 0025/1449] 53.0.2785.113 --- .gitignore | 1 + chromium.spec | 5 ++++- sources | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index e5acd24..d48863e 100644 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,4 @@ /chromium-52.0.2743.116-clean.tar.xz /chromium-53.0.2785.92-clean.tar.xz /chromium-53.0.2785.101-clean.tar.xz +/chromium-53.0.2785.113-clean.tar.xz diff --git a/chromium.spec b/chromium.spec index e1e8e61..40e6de1 100644 --- a/chromium.spec +++ b/chromium.spec @@ -92,7 +92,7 @@ BuildRequires: libicu-devel >= 5.4 %global chromoting_client_id 449907151817-8vnlfih032ni8c4jjps9int9t86k546t.apps.googleusercontent.com Name: chromium%{chromium_channel} -Version: 53.0.2785.101 +Version: 53.0.2785.113 Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home @@ -1677,6 +1677,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Wed Sep 14 2016 Tom Callaway 53.0.2785.113-1 +- 53.0.2785.113 + * Thu Sep 8 2016 Tom Callaway 53.0.2785.101-1 - 53.0.2785.101 - happy star trek day. live long and prosper. diff --git a/sources b/sources index a807ef3..e7ec59a 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ 49a7f897775cce21d2b69968b8af1cea depot_tools.git-master.tar.gz 8280c0644492bac9f59f4e25ed11d309 policy_templates.zip -c0dc01cf6a7feb933e4798b39f35b012 chromium-53.0.2785.101-clean.tar.xz +858acaea978f3ade61aca8fe8548eda2 chromium-53.0.2785.113-clean.tar.xz From c50f789db5be3c9244fa6b98fb5e188098f9d8ff Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 20 Sep 2016 12:50:35 -0400 Subject: [PATCH 0026/1449] 53.0.2785.116 --- .gitignore | 1 + chromium.spec | 5 ++++- sources | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index d48863e..99ce05e 100644 --- a/.gitignore +++ b/.gitignore @@ -6,3 +6,4 @@ /chromium-53.0.2785.92-clean.tar.xz /chromium-53.0.2785.101-clean.tar.xz /chromium-53.0.2785.113-clean.tar.xz +/chromium-53.0.2785.116-clean.tar.xz diff --git a/chromium.spec b/chromium.spec index 40e6de1..4119153 100644 --- a/chromium.spec +++ b/chromium.spec @@ -92,7 +92,7 @@ BuildRequires: libicu-devel >= 5.4 %global chromoting_client_id 449907151817-8vnlfih032ni8c4jjps9int9t86k546t.apps.googleusercontent.com Name: chromium%{chromium_channel} -Version: 53.0.2785.113 +Version: 53.0.2785.116 Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home @@ -1677,6 +1677,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Tue Sep 20 2016 Tom Callaway 53.0.2785.116-1 +- 53.0.2785.116 + * Wed Sep 14 2016 Tom Callaway 53.0.2785.113-1 - 53.0.2785.113 diff --git a/sources b/sources index e7ec59a..542265c 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ 49a7f897775cce21d2b69968b8af1cea depot_tools.git-master.tar.gz 8280c0644492bac9f59f4e25ed11d309 policy_templates.zip -858acaea978f3ade61aca8fe8548eda2 chromium-53.0.2785.113-clean.tar.xz +2dee4584552df93d5808ef93c0c6c633 chromium-53.0.2785.116-clean.tar.xz From c496d29c6759ec142bff4b7e5e23a1e1f1b352ee Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 30 Sep 2016 14:04:31 -0400 Subject: [PATCH 0027/1449] 53.0.2785.143 --- .gitignore | 1 + chromium.spec | 5 ++++- sources | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 99ce05e..ef5a154 100644 --- a/.gitignore +++ b/.gitignore @@ -7,3 +7,4 @@ /chromium-53.0.2785.101-clean.tar.xz /chromium-53.0.2785.113-clean.tar.xz /chromium-53.0.2785.116-clean.tar.xz +/chromium-53.0.2785.143-clean.tar.xz diff --git a/chromium.spec b/chromium.spec index 4119153..7c59f58 100644 --- a/chromium.spec +++ b/chromium.spec @@ -92,7 +92,7 @@ BuildRequires: libicu-devel >= 5.4 %global chromoting_client_id 449907151817-8vnlfih032ni8c4jjps9int9t86k546t.apps.googleusercontent.com Name: chromium%{chromium_channel} -Version: 53.0.2785.116 +Version: 53.0.2785.143 Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home @@ -1677,6 +1677,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Fri Sep 30 2016 Tom Callaway 53.0.2785.143-1 +- 53.0.2785.143 + * Tue Sep 20 2016 Tom Callaway 53.0.2785.116-1 - 53.0.2785.116 diff --git a/sources b/sources index 542265c..b7997d5 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ 49a7f897775cce21d2b69968b8af1cea depot_tools.git-master.tar.gz 8280c0644492bac9f59f4e25ed11d309 policy_templates.zip -2dee4584552df93d5808ef93c0c6c633 chromium-53.0.2785.116-clean.tar.xz +d63d358591b6c8b43095b50f81196537 chromium-53.0.2785.143-clean.tar.xz From 6665291318884fdaad4cae5100be1cc043494df6 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 19 Oct 2016 09:23:05 -0400 Subject: [PATCH 0028/1449] 54.0.2840.59 --- .gitignore | 1 + chromium-54.0.2840.59-arm-icu-fix.patch | 12 + chromium-54.0.2840.59-gcc5.patch | 354 +++++++++++++++++++ chromium-54.0.2840.59-gn-system.patch | 223 ++++++++++++ chromium-54.0.2840.59-jpeg-include-dir.patch | 11 + chromium-54.0.2840.59-nullfix.patch | 35 ++ chromium.spec | 108 ++++-- sources | 1 + 8 files changed, 706 insertions(+), 39 deletions(-) create mode 100644 chromium-54.0.2840.59-arm-icu-fix.patch create mode 100644 chromium-54.0.2840.59-gcc5.patch create mode 100644 chromium-54.0.2840.59-gn-system.patch create mode 100644 chromium-54.0.2840.59-jpeg-include-dir.patch create mode 100644 chromium-54.0.2840.59-nullfix.patch diff --git a/.gitignore b/.gitignore index ef5a154..3ec75f8 100644 --- a/.gitignore +++ b/.gitignore @@ -8,3 +8,4 @@ /chromium-53.0.2785.113-clean.tar.xz /chromium-53.0.2785.116-clean.tar.xz /chromium-53.0.2785.143-clean.tar.xz +/chromium-54.0.2840.59-clean.tar.xz diff --git a/chromium-54.0.2840.59-arm-icu-fix.patch b/chromium-54.0.2840.59-arm-icu-fix.patch new file mode 100644 index 0000000..671ff38 --- /dev/null +++ b/chromium-54.0.2840.59-arm-icu-fix.patch @@ -0,0 +1,12 @@ +diff -up chromium-54.0.2840.59/third_party/icu/icu.gyp.armfix chromium-54.0.2840.59/third_party/icu/icu.gyp +--- chromium-54.0.2840.59/third_party/icu/icu.gyp.armfix 2016-10-13 14:57:47.148707100 -0400 ++++ chromium-54.0.2840.59/third_party/icu/icu.gyp 2016-10-13 14:59:24.294837176 -0400 +@@ -44,7 +44,7 @@ + }], + ['(OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="solaris" \ + or OS=="netbsd" or OS=="mac" or OS=="android" or OS=="qnx") and \ +- (target_arch=="arm" or target_arch=="ia32" or \ ++ (target_arch=="ia32" or \ + target_arch=="mipsel" or target_arch=="mips")', { + 'target_conditions': [ + ['_toolset=="host"', { diff --git a/chromium-54.0.2840.59-gcc5.patch b/chromium-54.0.2840.59-gcc5.patch new file mode 100644 index 0000000..33b9ffa --- /dev/null +++ b/chromium-54.0.2840.59-gcc5.patch @@ -0,0 +1,354 @@ +diff -up chromium-54.0.2840.59/third_party/cld_2/src/internal/cld_generated_cjk_uni_prop_80.cc.gcc5 chromium-54.0.2840.59/third_party/cld_2/src/internal/cld_generated_cjk_uni_prop_80.cc +--- chromium-54.0.2840.59/third_party/cld_2/src/internal/cld_generated_cjk_uni_prop_80.cc.gcc5 2016-10-12 15:05:10.000000000 -0400 ++++ chromium-54.0.2840.59/third_party/cld_2/src/internal/cld_generated_cjk_uni_prop_80.cc 2016-10-13 14:45:19.769110162 -0400 +@@ -165,8 +165,8 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + // state[16 + 2] 0x000000 Byte 2 of 3 (relative offsets) + X__,X__,X__,X__,X__,X__,X__,X__, X__,X__,X__,X__,X__,X__,X__,X__, + X__,X__,X__,X__,X__,X__,X__,X__, X__,X__,X__,X__,X__,X__,X__,X__, +--14,-14,-14,-14,-14,-14,-14,-14, -14,-14,-14,-14,-14,-14,-14,-14, +--14,-14,-14,-14,-14,-14,-14,-14, -14,-14,-14,-14,-14,-14,-14,-14, ++(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14, (uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14, ++(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14, (uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14, + + // state[17 + 2] 0x0031c0 Byte 3 of 3 (property) + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, +@@ -259,10 +259,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 229,229,229, 3,208, 0,229, 5, 233, 0,229,229,229,208,229,229, + + // state[32 + 2] 0x002000 Byte 2 of 3 (relative offsets) +--30,-30,-30,-30,-30,-30,-30,-30, -30,-30,-30,-30,-30,-30,-30,-30, +--30,-30,-30,-30,-30,-30,-30,-30, -30,-30,-30,-30,-30,-30,-30,-30, +--30,-30,-30,-30,-30,-30,-30,-30, -30,-30,-30,-30,-30,-30,-30,-30, +--30,-30,-30,-30,-30,-30,-30,-30, -30,-30,-30,-30,-30,-30,-30,-30, ++(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, (uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, ++(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, (uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, ++(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, (uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, ++(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, (uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, + + // state[33 + 2] 0x003780 Byte 3 of 3 (property) + 229,208,229,229,208,229,229,229, 208,208,208,208,208, 4, 6,208, +@@ -355,10 +355,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 228,229,229,229,229,233,233, 6, 208,229, 3,229,233, 6, 6, 0, + + // state[48 + 2] 0x001000 Byte 2 of 3 (relative offsets) +--46,-46,-46,-46,-42,-41,-40,-39, -46,-46,-46,-46,-46,-46,-46,-46, +--46,-46,-46,-46,-46,-46,-46,-46, -46,-46,-46,-46,-46,-46,-46,-46, +--46,-46,-46,-46,-46,-46,-46,-46, -46,-46,-46,-46,-46,-46,-46,-46, +--46,-46,-46,-46,-46,-46,-46,-46, -46,-46,-46,-46,-46,-46,-46,-46, ++(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-42,(uint8)-41,(uint8)-40,(uint8)-39, (uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, ++(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, (uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, ++(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, (uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, ++(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, (uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, + + // state[49 + 2] 0x003b40 Byte 3 of 3 (property) + 6,227,208,233,208, 3, 3,208, 208,229, 0,229,233,219, 0, 6, +@@ -451,10 +451,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 229,208,208,208,217,208,229,229, 229,229,208,217,208,229,229,229, + + // state[64 + 2] 0x003000 Byte 2 of 3 (relative offsets) +--54,-53,-52,-51,-50,-58,-49,-47, -62,-62,-62,-62,-62,-62,-62,-62, +--46,-45,-44,-43,-42,-41,-40,-39, -38,-37,-36,-35,-34,-33,-31,-30, +--29,-28,-27,-26,-25,-24,-23,-22, -21,-20,-19,-18,-17,-15,-14,-13, +--12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, ++(uint8)-54,(uint8)-53,(uint8)-52,(uint8)-51,(uint8)-50,(uint8)-58,(uint8)-49,(uint8)-47, (uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62, ++(uint8)-46,(uint8)-45,(uint8)-44,(uint8)-43,(uint8)-42,(uint8)-41,(uint8)-40,(uint8)-39, (uint8)-38,(uint8)-37,(uint8)-36,(uint8)-35,(uint8)-34,(uint8)-33,(uint8)-31,(uint8)-30, ++(uint8)-29,(uint8)-28,(uint8)-27,(uint8)-26,(uint8)-25,(uint8)-24,(uint8)-23,(uint8)-22, (uint8)-21,(uint8)-20,(uint8)-19,(uint8)-18,(uint8)-17,(uint8)-15,(uint8)-14,(uint8)-13, ++(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, + + // state[65 + 2] 0x003f00 Byte 3 of 3 (property) + 217,217,208, 3,208,217,208,208, 6,229,208,228,229,229,208,229, +@@ -547,10 +547,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 229,208,229,229,208,229,233, 0, 208,208,229,208,227,229,229,229, + + // state[80 + 2] 0x004000 Byte 2 of 3 (relative offsets) +--11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, ++(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, + 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, +- 38, 39, 40, 41, 42, 43, 44,-78, 45, 46, 47, 48, 49, 50, 51, 52, ++ 38, 39, 40, 41, 42, 43, 44,(uint8)-78, 45, 46, 47, 48, 49, 50, 51, 52, + + // state[81 + 2] 0x0042c0 Byte 3 of 3 (property) + 229, 0,229,229,229, 3, 4, 4, 229,229,229,229,208,229, 0,208, +@@ -931,7 +931,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 0,142, 98, 28,117,206,212,212, 220, 15, 0,231,199,231,111, 28, + + // state[144 + 2] 0x005000 Byte 2 of 3 (relative offsets) +--11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, ++(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, + 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, + 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, +@@ -1315,7 +1315,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 16, 15,211,118, 0,231, 68,231, 0, 99,161, 0,115,221,144,140, + + // state[208 + 2] 0x006000 Byte 2 of 3 (relative offsets) +--10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, ++(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, + 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, + 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, +@@ -1699,7 +1699,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 119, 16, 51, 0, 0, 68,136, 72, 144,118, 87,201,191,136, 78,233, + + // state[272 + 2] 0x007000 Byte 2 of 3 (relative offsets) +- -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, ++ (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, + 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, + 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, + 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, +@@ -2083,7 +2083,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 212,212, 0,126,140,220,220, 0, 0, 0,127,118,106, 0,199, 0, + + // state[336 + 2] 0x008000 Byte 2 of 3 (relative offsets) +- -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, 8, ++ (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, + 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, + 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, +@@ -2467,7 +2467,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 0,122, 0,231,100,232, 0, 0, 117, 0,206,231, 0, 0,231, 0, + + // state[400 + 2] 0x009000 Byte 2 of 3 (relative offsets) +- -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, 8, 9, ++ (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, 9, + 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, + 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, + 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, +@@ -2851,10 +2851,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + + // state[464 + 2] 0x00a000 Byte 2 of 3 (relative offsets) +- -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, +- -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, +- -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, +- -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, ++ (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, ++ (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, ++ (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, ++ (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, + + // state[465 + 2] 0x000080 Byte 2 of 2 (property) + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, +@@ -2947,10 +2947,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 208,208,208,208, 5, 6,208, 2, 0, 6, 6, 5,208,208,208, 6, + + // state[480 + 2] 0x00b000 Byte 2 of 3 (relative offsets) +--20,-20,-20,-20,-20,-20,-20,-20, -20,-20,-20,-20,-20,-20,-20,-20, +--20,-20,-20,-20,-20,-20,-20,-20, -20,-20,-20,-20,-20,-20,-20,-20, +--20,-20,-20,-20,-20,-20,-20,-20, -20,-20,-20,-20,-20,-20,-20,-20, +--20,-20,-20,-20,-20,-20,-20,-20, -20,-20,-20,-20,-20,-20,-20,-20, ++(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, (uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, ++(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, (uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, ++(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, (uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, ++(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, (uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, + + // state[481 + 2] 0x020100 Byte 4 of 4 (property) + 2, 6, 5, 6, 5,229, 5,208, 208,208,208,208,208,208,208,229, +@@ -3043,10 +3043,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 208,208, 5, 5, 5,208,208, 2, 229, 5, 5, 5, 5, 5, 6,208, + + // state[496 + 2] 0x00d000 Byte 2 of 3 (relative offsets) +--35,-35,-35,-35,-35,-35,-35,-35, -35,-35,-35,-35,-35,-35,-35,-35, +--35,-35,-35,-35,-35,-35,-35,-35, -35,-35,-35,-35,-35,-35,-34,-33, +--33,-33,-33,-33,-33,-33,-33,-33, -33,-33,-33,-33,-33,-33,-33,-33, +--33,-33,-33,-33,-33,-33,-33,-33, -33,-33,-33,-33,-33,-33,-33,-33, ++(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35, (uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35, ++(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35, (uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-34,(uint8)-33, ++(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33, (uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33, ++(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33, (uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33, + + // state[497 + 2] 0x0204c0 Byte 4 of 4 (property) + 2, 2, 5, 5, 5, 2,208, 2, 5, 5, 6,208,208, 5, 5, 5, +@@ -3139,10 +3139,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 208,208, 5, 5, 5, 5, 6, 6, 208,208, 2,208,208,208,208,208, + + // state[512 + 2] 0x00f000 Byte 2 of 3 (relative offsets) +--47,-47,-47,-47,-47,-47,-47,-47, -47,-47,-47,-47,-47,-47,-47,-47, +--47,-47,-47,-47,-47,-47,-47,-47, -47,-47,-47,-47,-47,-47,-47,-47, +--47,-47,-47,-47,-46,-45,-44,-43, -42,-41,-44,-40,-47,-47,-47,-47, +--47,-47,-47,-47,-47,-47,-47,-47, -47,-47,-47,-47,-47,-39,-38,-37, ++(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, (uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, ++(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, (uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, ++(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-46,(uint8)-45,(uint8)-44,(uint8)-43, (uint8)-42,(uint8)-41,(uint8)-44,(uint8)-40,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, ++(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, (uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-39,(uint8)-38,(uint8)-37, + + // state[513 + 2] 0x020880 Byte 4 of 4 (property) + 5, 5, 5, 6,208,208,208,208, 208,208, 5, 5, 6, 6,208,208, +@@ -3235,10 +3235,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 5, 6,208,218,208,208,208,218, 208, 6,227,229, 6, 6, 6,208, + + // state[528 + 2] 0x020000 Byte 3 of 4 (relative offsets) +--52,-51,-50,-49,-47,-46,-45,-44, -43,-42,-41,-40,-39,-38,-37,-36, +--35,-34,-33,-31,-30,-29,-28,-27, -26,-25,-24,-23,-22,-21,-20,-19, +--18,-17,-15,-14,-13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, +- -1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, ++(uint8)-52,(uint8)-51,(uint8)-50,(uint8)-49,(uint8)-47,(uint8)-46,(uint8)-45,(uint8)-44, (uint8)-43,(uint8)-42,(uint8)-41,(uint8)-40,(uint8)-39,(uint8)-38,(uint8)-37,(uint8)-36, ++(uint8)-35,(uint8)-34,(uint8)-33,(uint8)-31,(uint8)-30,(uint8)-29,(uint8)-28,(uint8)-27, (uint8)-26,(uint8)-25,(uint8)-24,(uint8)-23,(uint8)-22,(uint8)-21,(uint8)-20,(uint8)-19, ++(uint8)-18,(uint8)-17,(uint8)-15,(uint8)-14,(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, ++ (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, + + // state[529 + 2] 0x020c40 Byte 4 of 4 (property) + 227, 5, 5, 5, 2, 2, 2, 2, 213, 2, 2, 2, 2, 2,208, 6, +@@ -3427,7 +3427,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 208,208,208,208,208,208,208,208, 208, 6, 6, 6, 6, 2, 5, 5, + + // state[560 + 2] 0x021000 Byte 3 of 4 (relative offsets) +--16,-15,-14,-13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, ++(uint8)-16,(uint8)-15,(uint8)-14,(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, + 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, + 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, + 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, +@@ -3811,7 +3811,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 5, 5, 5, 6, 6, 6, 5,208, 208,229,208,208, 5, 5, 5, 5, + + // state[624 + 2] 0x022000 Byte 3 of 4 (relative offsets) +--15,-14,-13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, ++(uint8)-15,(uint8)-14,(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, + 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, + 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, + 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, +@@ -4195,7 +4195,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 6, 6, 4, 5,208,208,208,208, 208,208,229, 6, 5, 6, 6, 6, + + // state[688 + 2] 0x023000 Byte 3 of 4 (relative offsets) +--14,-13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, ++(uint8)-14,(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, + 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, + 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, + 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, +@@ -4579,7 +4579,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 5, 5, 5, 5, 5, 5, 5, 6, 208,208,208,208,208,208, 6, 6, + + // state[752 + 2] 0x024000 Byte 3 of 4 (relative offsets) +--13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, ++(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, + 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, + 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, +@@ -4963,7 +4963,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 229, 6, 2, 2, 2, 2, 2, 2, 2, 2, 2, 5, 2, 2, 6,229, + + // state[816 + 2] 0x025000 Byte 3 of 4 (relative offsets) +--12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, ++(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, + 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, + 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, + 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, +@@ -5347,7 +5347,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 6, 6, 6, 5, 5, 5, 5, 6, 6, 6, 3, 6,229,208,208,229, + + // state[880 + 2] 0x026000 Byte 3 of 4 (relative offsets) +--11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, ++(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, + 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, + 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, +@@ -5731,7 +5731,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 208, 6, 6,208,208,208,208,208, 6, 6, 6,216, 5, 5, 5, 5, + + // state[944 + 2] 0x027000 Byte 3 of 4 (relative offsets) +--10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, ++(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, + 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, + 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, +@@ -6115,7 +6115,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 5, 5, 5, 6,208,208, 6, 6, 208,229,208,208,208, 5, 5, 5, + + // state[1008 + 2] 0x028000 Byte 3 of 4 (relative offsets) +- -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, ++ (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, + 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, + 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, + 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, +@@ -6499,7 +6499,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 208,208, 5, 5, 6,208,208, 5, 208,208,208, 6,208, 6,208,208, + + // state[1072 + 2] 0x029000 Byte 3 of 4 (relative offsets) +- -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, 8, ++ (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, + 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, + 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, +@@ -6883,7 +6883,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 229,229,229,229,208,208,208,229, 208,208,208,229, 0,229,208,208, + + // state[1136 + 2] 0x02a000 Byte 3 of 4 (relative offsets) +- -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, 8, 9, ++ (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, 9, + 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 22, 22, 22, + 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, + 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, +@@ -7075,10 +7075,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, + + // state[1168 + 2] 0x02f000 Byte 3 of 4 (relative offsets) +- -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, +- -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, +- -8, -7, -6, -5, -4, -3, -2, -1, 1, -9, -9, -9, -9, -9, -9, -9, +- -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, ++ (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, ++ (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, ++ (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, ++ (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, + + // state[1169 + 2] 0x02fa00 Byte 4 of 4 (property) + 217, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,217, 5, 5, +diff -up chromium-54.0.2840.59/third_party/webgl/src/specs/latest/2.0/webgl2.idl.gcc5 chromium-54.0.2840.59/third_party/webgl/src/specs/latest/2.0/webgl2.idl +--- chromium-54.0.2840.59/third_party/webgl/src/specs/latest/2.0/webgl2.idl.gcc5 2016-10-12 15:05:45.000000000 -0400 ++++ chromium-54.0.2840.59/third_party/webgl/src/specs/latest/2.0/webgl2.idl 2016-10-13 14:45:19.770110142 -0400 +@@ -264,7 +264,7 @@ interface WebGL2RenderingContextBase + 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 -up chromium-54.0.2840.59/third_party/WebKit/Source/core/dom/NodeFilter.h.gcc5 chromium-54.0.2840.59/third_party/WebKit/Source/core/dom/NodeFilter.h +--- chromium-54.0.2840.59/third_party/WebKit/Source/core/dom/NodeFilter.h.gcc5 2016-10-13 14:45:19.771110122 -0400 ++++ chromium-54.0.2840.59/third_party/WebKit/Source/core/dom/NodeFilter.h 2016-10-13 14:54:50.328113956 -0400 +@@ -51,7 +51,7 @@ public: + * to the value of NodeType for the equivalent node type. + */ + enum { +- kShowAll = 0xFFFFFFFF, ++ kShowAll = 256 /* 0xFFFFFFFF */, + kShowElement = 0x00000001, + kShowAttribute = 0x00000002, + kShowText = 0x00000004, +diff -up chromium-54.0.2840.59/third_party/WebKit/Source/core/dom/NodeFilter.idl.gcc5 chromium-54.0.2840.59/third_party/WebKit/Source/core/dom/NodeFilter.idl +--- chromium-54.0.2840.59/third_party/WebKit/Source/core/dom/NodeFilter.idl.gcc5 2016-10-12 15:03:13.000000000 -0400 ++++ chromium-54.0.2840.59/third_party/WebKit/Source/core/dom/NodeFilter.idl 2016-10-13 14:45:19.771110122 -0400 +@@ -30,7 +30,7 @@ + const unsigned short FILTER_SKIP = 3; + + // Constants for whatToShow +- const unsigned long SHOW_ALL = 0xFFFFFFFF; ++ const unsigned long SHOW_ALL = 256; // 0xFFFFFFFF + const unsigned long SHOW_ELEMENT = 0x1; + const unsigned long SHOW_ATTRIBUTE = 0x2; // historical + const unsigned long SHOW_TEXT = 0x4; +diff -up chromium-54.0.2840.59/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl.gcc5 chromium-54.0.2840.59/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl +--- chromium-54.0.2840.59/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl.gcc5 2016-10-12 15:03:13.000000000 -0400 ++++ chromium-54.0.2840.59/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl 2016-10-13 14:45:19.772110102 -0400 +@@ -239,7 +239,7 @@ typedef long long GLint64; + 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; +@@ -282,7 +282,7 @@ typedef long long GLint64; + const GLenum MAX_ELEMENT_INDEX = 0x8D6B; + const GLenum NUM_SAMPLE_COUNTS = 0x9380; + const GLenum TEXTURE_IMMUTABLE_LEVELS = 0x82DF; +- const GLint TIMEOUT_IGNORED = -1; ++ const GLint TIMEOUT_IGNORED = 256; + + /* WebGL-specific enums */ + const GLenum MAX_CLIENT_WAIT_TIMEOUT_WEBGL = 0x9247; diff --git a/chromium-54.0.2840.59-gn-system.patch b/chromium-54.0.2840.59-gn-system.patch new file mode 100644 index 0000000..fc855ad --- /dev/null +++ b/chromium-54.0.2840.59-gn-system.patch @@ -0,0 +1,223 @@ +diff -up chromium-54.0.2840.59/build/linux/unbundle/libjpeg.gn.gnsystem chromium-54.0.2840.59/build/linux/unbundle/libjpeg.gn +--- chromium-54.0.2840.59/build/linux/unbundle/libjpeg.gn.gnsystem 2016-10-13 16:06:00.464796742 -0400 ++++ chromium-54.0.2840.59/build/linux/unbundle/libjpeg.gn 2016-10-13 16:06:08.976631824 -0400 +@@ -16,6 +16,10 @@ source_set("libjpeg") { + libs = [ "jpeg" ] + } + ++config("system_libjpeg") { ++ defines = [ "USE_SYSTEM_LIBJPEG=1" ] ++} ++ + source_set("simd") { + } + +diff -up chromium-54.0.2840.59/build/linux/unbundle/libusb.gn.gnsystem chromium-54.0.2840.59/build/linux/unbundle/libusb.gn +--- chromium-54.0.2840.59/build/linux/unbundle/libusb.gn.gnsystem 2016-10-13 15:47:48.147891525 -0400 ++++ chromium-54.0.2840.59/build/linux/unbundle/libusb.gn 2016-10-13 15:47:48.147891525 -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-54.0.2840.59/build/linux/unbundle/opus.gn.gnsystem chromium-54.0.2840.59/build/linux/unbundle/opus.gn +--- chromium-54.0.2840.59/build/linux/unbundle/opus.gn.gnsystem 2016-10-13 15:47:48.147891525 -0400 ++++ chromium-54.0.2840.59/build/linux/unbundle/opus.gn 2016-10-13 15:47:48.147891525 -0400 +@@ -0,0 +1,161 @@ ++# 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", ++ ] ++} ++ +diff -up chromium-54.0.2840.59/build/linux/unbundle/replace_gn_files.py.gnsystem chromium-54.0.2840.59/build/linux/unbundle/replace_gn_files.py +--- chromium-54.0.2840.59/build/linux/unbundle/replace_gn_files.py.gnsystem 2016-10-12 15:02:53.000000000 -0400 ++++ chromium-54.0.2840.59/build/linux/unbundle/replace_gn_files.py 2016-10-13 15:47:48.147891525 -0400 +@@ -23,10 +23,12 @@ REPLACEMENTS = { + 'libevent': 'base/third_party/libevent/BUILD.gn', + 'libjpeg': 'build/secondary/third_party/libjpeg_turbo/BUILD.gn', + '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', + 'libxslt': 'third_party/libxslt/BUILD.gn', ++ 'opus': 'third_party/opus/BUILD.gn', + 're2': 'third_party/re2/BUILD.gn', + 'snappy': 'third_party/snappy/BUILD.gn', + 'yasm': 'third_party/yasm/yasm_assemble.gni', diff --git a/chromium-54.0.2840.59-jpeg-include-dir.patch b/chromium-54.0.2840.59-jpeg-include-dir.patch new file mode 100644 index 0000000..f96a56c --- /dev/null +++ b/chromium-54.0.2840.59-jpeg-include-dir.patch @@ -0,0 +1,11 @@ +diff -up chromium-54.0.2840.59/third_party/BUILD.gn.jpegfix chromium-54.0.2840.59/third_party/BUILD.gn +--- chromium-54.0.2840.59/third_party/BUILD.gn.jpegfix 2016-10-17 11:45:44.995340495 -0400 ++++ chromium-54.0.2840.59/third_party/BUILD.gn 2016-10-17 11:46:35.254289872 -0400 +@@ -20,6 +20,7 @@ declare_args() { + config("system_libjpeg_config") { + libs = [ "jpeg" ] + defines = [ "USE_SYSTEM_LIBJPEG" ] ++ include_dirs = [ "/usr/include/" ] + } + + config("libjpeg_turbo_config") { diff --git a/chromium-54.0.2840.59-nullfix.patch b/chromium-54.0.2840.59-nullfix.patch new file mode 100644 index 0000000..53e2db1 --- /dev/null +++ b/chromium-54.0.2840.59-nullfix.patch @@ -0,0 +1,35 @@ +diff -up chromium-54.0.2840.59/build/toolchain/linux/BUILD.gn.nullfix chromium-54.0.2840.59/build/toolchain/linux/BUILD.gn +--- chromium-54.0.2840.59/build/toolchain/linux/BUILD.gn.nullfix 2016-10-13 16:49:26.844221023 -0400 ++++ chromium-54.0.2840.59/build/toolchain/linux/BUILD.gn 2016-10-13 16:50:49.882605484 -0400 +@@ -31,6 +31,7 @@ gcc_toolchain("arm") { + ld = cxx + readelf = "${toolprefix}readelf" + nm = "${toolprefix}nm" ++ extra_cppflags = "-fno-delete-null-pointer-checks" + + toolchain_args = { + current_cpu = "arm" +@@ -70,6 +71,7 @@ gcc_toolchain("x86") { + nm = "nm" + ar = "ar" + ld = cxx ++ extra_cppflags = "-fno-delete-null-pointer-checks" + + toolchain_args = { + current_cpu = "x86" +@@ -109,6 +111,7 @@ gcc_toolchain("x64") { + nm = "nm" + ar = "ar" + ld = cxx ++ extra_cppflags = "-fno-delete-null-pointer-checks" + + toolchain_args = { + current_cpu = "x64" +@@ -131,6 +134,7 @@ gcc_toolchain("mipsel") { + ld = cxx + readelf = "mipsel-linux-gnu-readelf" + nm = "mipsel-linux-gnu-nm" ++ extra_cppflags = "-fno-delete-null-pointer-checks" + + toolchain_args = { + cc_wrapper = "" diff --git a/chromium.spec b/chromium.spec index 7c59f58..2fef2a6 100644 --- a/chromium.spec +++ b/chromium.spec @@ -2,7 +2,7 @@ %global freeworld 0 # gn is the new new new buildtool. *sigh* -%global use_gn 0 +%global use_gn 1 # Leave this alone, please. %global target out/Release @@ -17,8 +17,9 @@ # We don't want any libs in these directories to generate Provides # Requires is trickier. + %global __provides_exclude_from %{chromium_path}/.*\\.so|%{chromium_path}/lib/.*\\.so -%global privlibs libaccessibility|libaura_extra|libaura|libbase_i18n|libbase|libblink_common|libblink_platform|libblink_web|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture|libcc_blink|libcc_ipc|libcc_proto|libcc|libcc_surfaces|libchromium_sqlite3|libcloud_policy_proto_generated_compile|libcloud_policy_proto|libcompositor|libcontent|libcrcrypto|libdbus|libdevice_battery|libdevice_bluetooth|libdevice_core|libdevice_event_log_component|libdevice_gamepad|libdevice_power_save_blocker|libdevice_vibration|libdisplay_compositor|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libevents_base|libevents_devices|libevents_devices_x11|libevents_ipc|libevents_ozone_layout|libevents_platform|libevents|libevents_x|libffmpeg|libgcm_driver_common|libgcm|libgesture_detection|libgfx_geometry|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx_range|libgfx|libgfx_vector_icons|libgfx_x11|libgin|libgles2_c_lib|libgles2_implementation|libgles2_utils|libGLESv2|libgl_init|libgl_wrapper|libgpu|libgtk2ui|libicui18n|libicuuc|libipc_mojo|libipc|libkeyboard|libkeyboard_with_content|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libmedia_blink|libmedia_gpu|libmedia|libmessage_center|libmidi|libmodules|libmojo_common_lib|libmojo_geometry_lib|libmojo_public_system|libmojo_system_impl|libnative_theme|libnet|libnet_with_v8|libonc_component|libplatform_handle|libpolicy_component|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libsandbox_services|libscheduler|libseccomp_bpf_helpers|libseccomp_bpf|libsessions_content|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstorage_common|libstorage|libsuid_sandbox_client|libsurface|libsync_core|libsync_proto|libtracing|libtranslator|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_touch_selection|liburl_ipc|liburl_lib|liburl_matcher|libuser_prefs|libv8|libviews|libwallpaper|libwebcore_shared|libwebdata_common|libweb_dialogs|libwebview|libwm|libwtf|libx11_events_platform +%global privlibs libaccessibility|libaura_extra|libaura|libbase_i18n|libbase|libblink_common|libblink_core|libblink_modules|libblink_platform|libblink_web|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture|libcc_blink|libcc_ipc|libcc_proto|libcc|libcc_surfaces|libchromium_sqlite3|libcloud_policy_proto_generated_compile|libcloud_policy_proto|libcommon|libcompositor|libcontent|libcrcrypto|libdbus|libdevice_battery|libdevice_core|libdevice_event_log|libdevice_gamepad|libdevice_geolocation|libdevices|libdevice_vibration|libdisplay_compositor|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libevents_base|libevents_devices_x11|libevents_ipc|libevents_ozone_layout|libevents|libevents_x|libffmpeg|libfont_service_library|libgcm|libgeometry|libgesture_detection|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_x11|libgin|libgles2_c_lib|libgles2_implementation|libgles2_utils|libGLESv2|libgl_init|libgl_wrapper|libgpu|libgtk2ui|libicui18n|libicuuc|libipc|libkeyboard|libkeyboard_with_content|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libmedia_blink|libmedia_gpu|libmedia|libmemory_coordinator_browswer|libmemory_coordinator_child|libmemory_coordinator_common|libmessage_center|libmidi|libmojo_blink_lib|libmojo_common_lib|libmojo_ime_lib|libmojo_public_system|libmojo_system_impl|libnative_theme|libnet|libnet_with_v8|libonc|libplatform|libpolicy_component|libpolicy_proto|libpower_save_blocker|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|librange|libsandbox_services|libseccomp_bpf|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libtranslator|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_library|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libuser_prefs|libv8|libviews|libwebdata_common|libweb_dialogs|libwebview|libwm|libwtf|libx11_events_platform|libx11_window %global __requires_exclude ^(%{privlibs})\\.so # Try to not use the Xvfb as it is slow.. @@ -78,7 +79,7 @@ BuildRequires: libicu-devel >= 5.4 %global bundleharfbuzz 1 %else %global bundleharfbuzz 0 -%global bundleopus 0 +%global bundleopus 1 %global bundlelibusbx 0 %endif @@ -92,14 +93,14 @@ BuildRequires: libicu-devel >= 5.4 %global chromoting_client_id 449907151817-8vnlfih032ni8c4jjps9int9t86k546t.apps.googleusercontent.com Name: chromium%{chromium_channel} -Version: 53.0.2785.143 +Version: 54.0.2840.59 Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) ### Chromium Fedora Patches ### -Patch0: chromium-46.0.2490.71-gcc5.patch +Patch0: chromium-54.0.2840.59-gcc5.patch Patch1: chromium-45.0.2454.101-linux-path-max.patch Patch2: chromium-50.0.2661.86-addrfix.patch # Google patched their bundled copy of icu 54 to include API functionality that wasn't added until 55. @@ -129,14 +130,14 @@ Patch15: chromium-52.0.2743.82-sandbox-pie.patch # Enable ARM CPU detection for webrtc (from archlinux via Russian Fedora) Patch16: chromium-52.0.2743.82-arm-webrtc.patch # Do not force -m32 in icu compile on ARM (from archlinux via Russian Fedora) -Patch17: chromium-52.0.2743.82-arm-icu-fix.patch +Patch17: chromium-54.0.2840.59-arm-icu-fix.patch # Use /etc/chromium for master_prefs Patch18: chromium-52.0.2743.82-master-prefs-path.patch # Disable MADV_FREE (if set by glibc) # https://bugzilla.redhat.com/show_bug.cgi?id=1361157 Patch19: chromium-52.0.2743.116-unset-madv_free.patch # Use gn system files -Patch20: chromium-53.0.2785.92-gn-system.patch +Patch20: chromium-54.0.2840.59-gn-system.patch # Fix last commit position issue # https://groups.google.com/a/chromium.org/forum/#!topic/gn-dev/7nlJv486bD4 Patch21: chromium-53.0.2785.92-last-commit-position.patch @@ -145,11 +146,15 @@ Patch22: chromium-53.0.2785.92-boringssl-time-fix.patch # Fix gn build on Linux # https://crrev.com/415208 Patch23: chromium-53.0.2785.101-crrev-415028.patch +# I wouldn't have to do this if there was a standard way to append extra compiler flags +Patch24: chromium-54.0.2840.59-nullfix.patch +# Add explicit includedir for jpeglib.h +Patch25: chromium-54.0.2840.59-jpeg-include-dir.patch + ### Chromium Tests Patches ### Patch100: chromium-46.0.2490.86-use_system_opus.patch Patch101: chromium-52.0.2723.2-use_system_harfbuzz.patch -Patch102: chromium-52.0.2723.2-sync_link_zlib.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ @@ -235,6 +240,7 @@ BuildRequires: nacl-arm-gcc, nacl-arm-binutils, nacl-arm-newlib # right now, it needs to be updated everytime chromium bumps # a major version. BuildRequires: chromium-native_client >= 52.0.2743.82 +BuildRequires: clang %ifarch x86_64 # Really, this is what we want: # BuildRequires: glibc-devel(x86-32) libgcc(x86-32) @@ -308,9 +314,6 @@ BuildRequires: pkgconfig(gnome-keyring-1) # remote desktop needs this BuildRequires: pam-devel BuildRequires: systemd -%if 0%{?asan} -BuildRequires: clang, compiler-rt -%endif # We pick up an automatic requires on the library, but we need the version check # because the nss shared library is unversioned. @@ -380,7 +383,9 @@ Provides: bundled(icu) = 54.1 Provides: bundled(kitchensink) = 1 Provides: bundled(leveldb) = r80 Provides: bundled(libaddressinput) = 0 +Provides: bundled(libevent) = 1.4.15 Provides: bundled(libjingle) = 9564 +Provides: bundled(libjpeg-turbo) = 1.4.90 Provides: bundled(libphonenumber) = svn584 Provides: bundled(libpng) = 1.6.22 Provides: bundled(libsrtp) = 1.5.2 @@ -398,7 +403,7 @@ Provides: bundled(NSBezierPath) = 1.0 Provides: bundled(mozc) Provides: bundled(mt19937ar) = 2002.1.26 %if %{bundleopus} -Provides: bundled(opus) = 1.1.2 +Provides: bundled(opus) = 1.1.3 %endif Provides: bundled(ots) = 767d6040439e6ebcdb867271fcb686bd3f8ac739 Provides: bundled(protobuf) = r476 @@ -520,11 +525,12 @@ members of the Chromium and WebDriver teams. %patch21 -p1 -b .lastcommit %patch22 -p1 -b .timefix %patch23 -p1 -b .415208 +%patch24 -p1 -b .nullfix +%patch25 -p1 -b .jpegfix ### Chromium Tests Patches ### %patch100 -p1 -b .use_system_opus %patch101 -p1 -b .use_system_harfbuzz -%patch102 -p1 -b .sync_link_zlib %if 0%{?asan} export CC="clang" @@ -604,6 +610,10 @@ for i in lib/libc.a lib/libc++.a lib/libg.a lib/libm.a; do /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/le32-nacl/$i done +for i in lib/libpthread.a lib/libnacl.a; do + /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/le32-nacl/$i +done + for i in lib/clang/3.7.0/lib/x86_64_bc-nacl/libpnaclmm.a lib/clang/3.7.0/lib/i686_bc-nacl/libpnaclmm.a; do /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/$i done @@ -620,6 +630,11 @@ touch native_client/toolchain/.tars/linux_x86/pnacl_translator.json pushd native_client/toolchain ln -s ../../out/Release/gen/sdk/linux_x86 linux_x86 popd + +mkdir -p third_party/llvm-build/Release+Asserts/bin +pushd third_party/llvm-build/Release+Asserts/bin +ln -s /usr/bin/clang clang +popd %endif CHROMIUM_BROWSER_GN_DEFINES="" @@ -627,7 +642,7 @@ CHROMIUM_BROWSER_GN_DEFINES="" CHROMIUM_BROWSER_GN_DEFINES+=' system_libdir="lib64"' %endif CHROMIUM_BROWSER_GN_DEFINES+=' google_api_key="%{api_key}" google_default_client_id="%{default_client_id}" google_default_client_secret="%{default_client_secret}"' -CHROMIUM_BROWSER_GN_DEFINES+=' is_clang=false use_sysroot=false use_gio=true use_pulseaudio=true icu_use_data_file_flag=true' +CHROMIUM_BROWSER_GN_DEFINES+=' is_clang=false use_sysroot=false use_gio=true use_pulseaudio=true icu_use_data_file=true' %if 0%{?nonacl} CHROMIUM_BROWSER_GN_DEFINES+=' enable_nacl=false' %endif @@ -642,14 +657,16 @@ CHROMIUM_BROWSER_GN_DEFINES+=' is_component_ffmpeg=true is_component_build=true' CHROMIUM_BROWSER_GN_DEFINES+=' is_component_ffmpeg=false is_component_build=false' %endif CHROMIUM_BROWSER_GN_DEFINES+=' remove_webcore_debug_symbols=true enable_hangout_services_extension=true' -CHROMIUM_BROWSER_GN_DEFINES+=' enable_hotwording=false use_aura=true enable_hidpi=true' +CHROMIUM_BROWSER_GN_DEFINES+=' enable_hotwording=false use_aura=true' CHROMIUM_BROWSER_GN_DEFINES+=' enable_webrtc=true enable_widevine=true' +CHROMIUM_BROWSER_GN_DEFINES+=' use_gold=false' %if 0%{gtk3} CHROMIUM_BROWSER_GN_DEFINES+=' use_gtk3=true' %else CHROMIUM_BROWSER_GN_DEFINES+=' use_gtk3=false' %endif -CHROMIUM_BROWSER_GN_DEFINES+=' extra_cflags="-fno-delete-null-pointer-checks" treat_warnings_as_errors=false' +# CHROMIUM_BROWSER_GN_DEFINES+=' use_system_libjpeg=true' +CHROMIUM_BROWSER_GN_DEFINES+=' treat_warnings_as_errors=false' export CHROMIUM_BROWSER_GN_DEFINES export CHROMIUM_BROWSER_GYP_DEFINES="\ @@ -700,7 +717,7 @@ export CHROMIUM_BROWSER_GYP_DEFINES="\ -Duse_system_icu=1 \ %endif -Dicu_use_data_file_flag=1 \ - -Duse_system_libevent=1 \ + -Duse_system_libevent=0 \ -Duse_system_libjpeg=1 \ -Duse_system_libpng=1 \ %if %{bundlelibusbx} @@ -830,6 +847,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'breakpad/src/third_party/curl' \ 'chrome/third_party/mozilla_security_manager' \ 'courgette/third_party' \ + 'native_client_sdk/src/libraries/third_party/newlib-extras' \ 'native_client/src/third_party/dlmalloc' \ 'native_client/src/third_party/valgrind' \ 'net/third_party/mozilla_security_manager' \ @@ -842,25 +860,28 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/angle/src/third_party/libXNVCtrl' \ 'third_party/angle/src/third_party/murmurhash' \ 'third_party/angle/src/third_party/trace_event' \ + 'third_party/blanketjs' \ 'third_party/boringssl' \ 'third_party/brotli' \ 'third_party/cacheinvalidation' \ 'third_party/catapult' \ - 'third_party/catapult/tracing/third_party/components/polymer' \ 'third_party/catapult/tracing/third_party/d3' \ 'third_party/catapult/tracing/third_party/gl-matrix' \ 'third_party/catapult/tracing/third_party/jszip' \ 'third_party/catapult/tracing/third_party/mannwhitneyu' \ + 'third_party/catapult/third_party/polymer' \ 'third_party/catapult/third_party/py_vulcanize' \ 'third_party/catapult/third_party/py_vulcanize/third_party/rcssmin' \ 'third_party/catapult/third_party/py_vulcanize/third_party/rjsmin' \ + 'third_party/ced' \ 'third_party/cld_2' \ 'third_party/cros_system_api' \ 'third_party/cython/python_flags.py' \ 'third_party/devscripts' \ 'third_party/dom_distiller_js' \ - 'third_party/dom_distiller_js/dist/proto_gen/third_party/dom_distiller_js' \ + 'third_party/expat' \ 'third_party/fips181' \ + 'third_party/flatbuffers' \ 'third_party/flot' \ 'third_party/google_input_tools' \ 'third_party/google_input_tools/third_party/closure_library' \ @@ -882,6 +903,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/libxml/chromium' \ 'third_party/libwebm' \ 'third_party/libyuv' \ + 'third_party/llvm-build' \ 'third_party/lss' \ 'third_party/lzma_sdk' \ 'third_party/mesa' \ @@ -904,7 +926,9 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/protobuf/third_party/six' \ 'third_party/ply' \ 'third_party/qcms' \ + 'third_party/qunit' \ 'third_party/sfntly' \ + 'third_party/sinonjs' \ 'third_party/skia' \ 'third_party/smhasher' \ 'third_party/sqlite' \ @@ -917,7 +941,6 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/x86inc' \ 'third_party/zlib/google' \ 'url/third_party/mozilla' \ - 'v8/src/third_party/fdlibm' \ 'v8/src/third_party/valgrind' \ --do-remove @@ -944,8 +967,9 @@ build/linux/unbundle/replace_gn_files.py --system-libraries \ %else icu \ %endif +%if 0 libevent \ - libjpeg \ +%endif %if %{bundlelibusbx} %else libusb \ @@ -992,6 +1016,9 @@ sed '14i#define WIDEVINE_CDM_VERSION_STRING "Something fresh"' -i "third_party/w FILE=chrome/common/channel_info_posix.cc sed -i.orig -e 's/getenv("CHROME_VERSION_EXTRA")/"Fedora Project"/' $FILE +# fix arm gcc +sed -i 's|arm-linux-gnueabihf-|arm-linux-gnu-|g' build/toolchain/linux/BUILD.gn + %build %if %{?tests} @@ -1070,7 +1097,9 @@ export CHROMIUM_BROWSER_UNIT_TESTS= # remote client pushd remoting -../../depot_tools/ninja -C ../%{target} -vvv remoting_me2me_host remoting_start_host remoting_it2me_native_messaging_host remoting_me2me_native_messaging_host remoting_native_messaging_manifests remoting_resources + +# ../../depot_tools/ninja -C ../%{target} -vvv remoting_me2me_host remoting_start_host remoting_it2me_native_messaging_host remoting_me2me_native_messaging_host remoting_native_messaging_manifests remoting_resources +../../depot_tools/ninja -C ../%{target} -vvv remoting_all %if 0%{?build_remoting_app} %if 0%{?nacl} GOOGLE_CLIENT_ID_REMOTING_IDENTITY_API=%{chromoting_client_id} ../../depot_tools/ninja -vv -C ../out/Release/ remoting_webapp @@ -1107,7 +1136,7 @@ cp -a *.pak locales resources icudtl.dat %{buildroot}%{chromium_path} cp -a nacl_helper* *.nexe pnacl tls_edit %{buildroot}%{chromium_path} chmod -x %{buildroot}%{chromium_path}/nacl_helper_bootstrap* *.nexe %endif -cp -a protoc pseudo_locales pyproto %{buildroot}%{chromium_path} +cp -a protoc pyproto %{buildroot}%{chromium_path} cp -a chrome %{buildroot}%{chromium_path}/%{chromium_browser_channel} cp -a chrome_sandbox %{buildroot}%{chromium_path}/chrome-sandbox cp -a chrome.1 %{buildroot}%{_mandir}/man1/%{chromium_browser_channel}.1 @@ -1116,14 +1145,8 @@ cp -a chrome.1 %{buildroot}%{_mandir}/man1/%{chromium_browser_channel}.1 cp -a natives_blob.bin %{buildroot}%{chromium_path} cp -a snapshot_blob.bin %{buildroot}%{chromium_path} %if 0%{?shared} -cp -a lib %{buildroot}%{chromium_path} +cp -a lib*.so* %{buildroot}%{chromium_path} %endif -# clearkeycdm and widevine bits -# EXCEPT libwidevinecdm*.so*. At least libwidevinecdm.so is just an empty shim, -# because the chromium sources don't have the prebuilt binary. -# You'll have to get libwidevinecdm*.so* -# from Google Chrome and copy it in /usr/lib64/chromium-browser/ -cp -a libclearkeycdm.so* %{buildroot}%{chromium_path} # chromedriver cp -a chromedriver %{buildroot}%{chromium_path}/chromedriver @@ -1134,7 +1157,10 @@ mkdir -p %{buildroot}%{crd_path} %if 0%{?shared} pushd %{buildroot}%{crd_path} -ln -s %{chromium_path}/lib lib +for i in ../chromium-browser%{?chromium_channel}/lib*.so; do + libname=`basename $i` + ln -s $i $libname +done popd %endif @@ -1565,7 +1591,7 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %dir %{chromium_path}/PepperFlash/ %{chromium_path}/protoc # %%{chromium_path}/remoting_locales/ -%{chromium_path}/pseudo_locales/ +# %%{chromium_path}/pseudo_locales/ # %%{chromium_path}/plugins/ %{chromium_path}/pyproto/ %attr(4755, root, root) %{chromium_path}/chrome-sandbox @@ -1623,6 +1649,7 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %lang(vi) %{chromium_path}/locales/vi.pak %lang(zh_CN) %{chromium_path}/locales/zh-CN.pak %lang(zh_TW) %{chromium_path}/locales/zh-TW.pak +%{chromium_path}/locales/fake-bidi.pak %{chromium_path}/resources/ %{_mandir}/man1/%{chromium_browser_channel}.* %{_datadir}/icons/hicolor/256x256/apps/%{chromium_browser_channel}.png @@ -1634,18 +1661,17 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %if 0%{?shared} %files libs -%exclude %{chromium_path}/lib/libffmpeg.so* -%exclude %{chromium_path}/lib/libmedia.so* -%{chromium_path}/lib/ -%{chromium_path}/libclearkeycdm.so* +%exclude %{chromium_path}/libffmpeg.so* +%exclude %{chromium_path}/libmedia.so* +%{chromium_path}/lib*.so* %if %{freeworld} %files libs-media-freeworld %else %files libs-media %endif -%{chromium_path}/lib/libffmpeg.so* -%{chromium_path}/lib/libmedia.so* +%{chromium_path}/libffmpeg.so* +%{chromium_path}/libmedia.so* %endif %files -n chrome-remote-desktop @@ -1653,7 +1679,7 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{crd_path}/chrome-remote-desktop-host %{crd_path}/is-remoting-session %if 0%{?shared} -%{crd_path}/lib +%{crd_path}/lib*.so %endif %{crd_path}/native-messaging-host %{crd_path}/remote-assistance-host @@ -1677,6 +1703,10 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Thu Oct 13 2016 Tom Callaway 54.0.2840.59-1 +- 54.0.2840.59 +- use bundled opus, libevent + * Fri Sep 30 2016 Tom Callaway 53.0.2785.143-1 - 53.0.2785.143 diff --git a/sources b/sources index b7997d5..5fe994b 100644 --- a/sources +++ b/sources @@ -1,3 +1,4 @@ 49a7f897775cce21d2b69968b8af1cea depot_tools.git-master.tar.gz 8280c0644492bac9f59f4e25ed11d309 policy_templates.zip d63d358591b6c8b43095b50f81196537 chromium-53.0.2785.143-clean.tar.xz +031e7cd6c6d4d24769d3901b99272d11 chromium-54.0.2840.59-clean.tar.xz From bcb8929b275d5116e8ec4a9fbbec3073431b0172 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 19 Oct 2016 09:46:37 -0400 Subject: [PATCH 0029/1449] conditionalize preservation of llvm-build dir for nacl --- chromium.spec | 2 ++ 1 file changed, 2 insertions(+) diff --git a/chromium.spec b/chromium.spec index 2fef2a6..10e0c30 100644 --- a/chromium.spec +++ b/chromium.spec @@ -903,7 +903,9 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/libxml/chromium' \ 'third_party/libwebm' \ 'third_party/libyuv' \ +%if 0%{?nacl} 'third_party/llvm-build' \ +%endif 'third_party/lss' \ 'third_party/lzma_sdk' \ 'third_party/mesa' \ From c88557480c58316c965a41a59985018509db43c7 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 19 Oct 2016 10:53:27 -0400 Subject: [PATCH 0030/1449] fixup cups patch --- chromium-52.0.2743.82-cups22.patch | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium-52.0.2743.82-cups22.patch b/chromium-52.0.2743.82-cups22.patch index ac0700a..fd09375 100644 --- a/chromium-52.0.2743.82-cups22.patch +++ b/chromium-52.0.2743.82-cups22.patch @@ -23,7 +23,7 @@ diff -up chromium-52.0.2743.82/printing/BUILD.gn.cups22 chromium-52.0.2743.82/pr # API for now as supported Linux and Mac OS'es are still using # older versions of CUPS. More info: crbug.com/226176 "-Wno-deprecated-declarations", -+ "-D_PPD_DEPRECATED=\"\"", ++ "-D_PPD_DEPRECATED=", # CUPS 1.7 deprecates httpConnectEncrypt(), see the mac section # below. ] From 15eb1472395e85ebd589bc61915003b04149d16e Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 19 Oct 2016 16:00:21 -0400 Subject: [PATCH 0031/1449] fix memory issues with ld on i686 --- chromium-54.0.2840.59-i686-ld-memory-tricks.patch | 11 +++++++++++ chromium.spec | 3 +++ 2 files changed, 14 insertions(+) create mode 100644 chromium-54.0.2840.59-i686-ld-memory-tricks.patch diff --git a/chromium-54.0.2840.59-i686-ld-memory-tricks.patch b/chromium-54.0.2840.59-i686-ld-memory-tricks.patch new file mode 100644 index 0000000..3af8c6b --- /dev/null +++ b/chromium-54.0.2840.59-i686-ld-memory-tricks.patch @@ -0,0 +1,11 @@ +diff -up chromium-54.0.2840.59/build/toolchain/linux/BUILD.gn.ldmemory chromium-54.0.2840.59/build/toolchain/linux/BUILD.gn +--- chromium-54.0.2840.59/build/toolchain/linux/BUILD.gn.ldmemory 2016-10-19 15:56:20.253096784 -0400 ++++ chromium-54.0.2840.59/build/toolchain/linux/BUILD.gn 2016-10-19 15:58:17.940833948 -0400 +@@ -72,6 +72,7 @@ gcc_toolchain("x86") { + ar = "ar" + ld = cxx + extra_cppflags = "-fno-delete-null-pointer-checks" ++ extra_ldflags = "--no-keep-memory --reduce-memory-overheads" + + toolchain_args = { + current_cpu = "x86" diff --git a/chromium.spec b/chromium.spec index 10e0c30..c443d3f 100644 --- a/chromium.spec +++ b/chromium.spec @@ -150,6 +150,8 @@ Patch23: chromium-53.0.2785.101-crrev-415028.patch Patch24: chromium-54.0.2840.59-nullfix.patch # Add explicit includedir for jpeglib.h Patch25: chromium-54.0.2840.59-jpeg-include-dir.patch +# On i686, pass --no-keep-memory --reduce-memory-overheads to ld. +Patch26: chromium-54.0.2840.59-i686-ld-memory-tricks.patch ### Chromium Tests Patches ### @@ -527,6 +529,7 @@ members of the Chromium and WebDriver teams. %patch23 -p1 -b .415208 %patch24 -p1 -b .nullfix %patch25 -p1 -b .jpegfix +%patch26 -p1 -b .ldmemory ### Chromium Tests Patches ### %patch100 -p1 -b .use_system_opus From d4df8bc3c4bef11396187403e30dfe272dba3893 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 19 Oct 2016 16:19:21 -0400 Subject: [PATCH 0032/1449] fix ldflags --- chromium-54.0.2840.59-i686-ld-memory-tricks.patch | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium-54.0.2840.59-i686-ld-memory-tricks.patch b/chromium-54.0.2840.59-i686-ld-memory-tricks.patch index 3af8c6b..3d2ebf1 100644 --- a/chromium-54.0.2840.59-i686-ld-memory-tricks.patch +++ b/chromium-54.0.2840.59-i686-ld-memory-tricks.patch @@ -5,7 +5,7 @@ diff -up chromium-54.0.2840.59/build/toolchain/linux/BUILD.gn.ldmemory chromium- ar = "ar" ld = cxx extra_cppflags = "-fno-delete-null-pointer-checks" -+ extra_ldflags = "--no-keep-memory --reduce-memory-overheads" ++ extra_ldflags = "-Wl,--no-keep-memory -Wl,--reduce-memory-overheads" toolchain_args = { current_cpu = "x86" From be4198f7e185aeb3607b9c87770f37867f130527 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 24 Oct 2016 09:57:45 -0400 Subject: [PATCH 0033/1449] try using gold to get i686 to build in koji --- chromium-54.0.2840.59-i686-ld-memory-tricks.patch | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium-54.0.2840.59-i686-ld-memory-tricks.patch b/chromium-54.0.2840.59-i686-ld-memory-tricks.patch index 3d2ebf1..eadc846 100644 --- a/chromium-54.0.2840.59-i686-ld-memory-tricks.patch +++ b/chromium-54.0.2840.59-i686-ld-memory-tricks.patch @@ -5,7 +5,7 @@ diff -up chromium-54.0.2840.59/build/toolchain/linux/BUILD.gn.ldmemory chromium- ar = "ar" ld = cxx extra_cppflags = "-fno-delete-null-pointer-checks" -+ extra_ldflags = "-Wl,--no-keep-memory -Wl,--reduce-memory-overheads" ++ extra_ldflags = "-fuse-ld=gold" toolchain_args = { current_cpu = "x86" From 94b2a9073c19bba3b1b03130bf2688dd57f8c00b Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 24 Oct 2016 16:35:21 -0400 Subject: [PATCH 0034/1449] more haxs --- chromium-54.0.2840.59-i686-ld-memory-tricks.patch | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium-54.0.2840.59-i686-ld-memory-tricks.patch b/chromium-54.0.2840.59-i686-ld-memory-tricks.patch index eadc846..bc95c01 100644 --- a/chromium-54.0.2840.59-i686-ld-memory-tricks.patch +++ b/chromium-54.0.2840.59-i686-ld-memory-tricks.patch @@ -5,7 +5,7 @@ diff -up chromium-54.0.2840.59/build/toolchain/linux/BUILD.gn.ldmemory chromium- ar = "ar" ld = cxx extra_cppflags = "-fno-delete-null-pointer-checks" -+ extra_ldflags = "-fuse-ld=gold" ++ extra_ldflags = "-fuse-ld=gold -Wl,--no-map-whole-file -Wl,--no-keep-memory -Wl,--no-keep-mapped-files" toolchain_args = { current_cpu = "x86" From 76530c5329dcd22999f51f681a66a8a94fcac8d3 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 24 Oct 2016 16:57:56 -0400 Subject: [PATCH 0035/1449] typo --- chromium-54.0.2840.59-i686-ld-memory-tricks.patch | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium-54.0.2840.59-i686-ld-memory-tricks.patch b/chromium-54.0.2840.59-i686-ld-memory-tricks.patch index bc95c01..48ffaae 100644 --- a/chromium-54.0.2840.59-i686-ld-memory-tricks.patch +++ b/chromium-54.0.2840.59-i686-ld-memory-tricks.patch @@ -5,7 +5,7 @@ diff -up chromium-54.0.2840.59/build/toolchain/linux/BUILD.gn.ldmemory chromium- ar = "ar" ld = cxx extra_cppflags = "-fno-delete-null-pointer-checks" -+ extra_ldflags = "-fuse-ld=gold -Wl,--no-map-whole-file -Wl,--no-keep-memory -Wl,--no-keep-mapped-files" ++ extra_ldflags = "-fuse-ld=gold -Wl,--no-map-whole-files -Wl,--no-keep-memory -Wl,--no-keep-mapped-files" toolchain_args = { current_cpu = "x86" From 27446e89384641b17801dbdb44a47aa73abf684b Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 25 Oct 2016 09:22:27 -0400 Subject: [PATCH 0036/1449] try different flags --- chromium-54.0.2840.59-i686-ld-memory-tricks.patch | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium-54.0.2840.59-i686-ld-memory-tricks.patch b/chromium-54.0.2840.59-i686-ld-memory-tricks.patch index 48ffaae..5908e97 100644 --- a/chromium-54.0.2840.59-i686-ld-memory-tricks.patch +++ b/chromium-54.0.2840.59-i686-ld-memory-tricks.patch @@ -5,7 +5,7 @@ diff -up chromium-54.0.2840.59/build/toolchain/linux/BUILD.gn.ldmemory chromium- ar = "ar" ld = cxx extra_cppflags = "-fno-delete-null-pointer-checks" -+ extra_ldflags = "-fuse-ld=gold -Wl,--no-map-whole-files -Wl,--no-keep-memory -Wl,--no-keep-mapped-files" ++ extra_ldflags = "-fuse-ld=gold -Wl,--no-map-whole-files -Wl,--no-keep-memory -Wl,--reduce-memory-overheads" toolchain_args = { current_cpu = "x86" From 25d98a004751d2a1a259d656acacbe6247081f18 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 25 Oct 2016 09:39:42 -0400 Subject: [PATCH 0037/1449] try different flags --- chromium-54.0.2840.59-i686-ld-memory-tricks.patch | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium-54.0.2840.59-i686-ld-memory-tricks.patch b/chromium-54.0.2840.59-i686-ld-memory-tricks.patch index 5908e97..6c57454 100644 --- a/chromium-54.0.2840.59-i686-ld-memory-tricks.patch +++ b/chromium-54.0.2840.59-i686-ld-memory-tricks.patch @@ -5,7 +5,7 @@ diff -up chromium-54.0.2840.59/build/toolchain/linux/BUILD.gn.ldmemory chromium- ar = "ar" ld = cxx extra_cppflags = "-fno-delete-null-pointer-checks" -+ extra_ldflags = "-fuse-ld=gold -Wl,--no-map-whole-files -Wl,--no-keep-memory -Wl,--reduce-memory-overheads" ++ extra_ldflags = "-fuse-ld=gold -Wl,--no-map-whole-files -Wl,--no-keep-memory" toolchain_args = { current_cpu = "x86" From e40f047866983599025aef37c45c7d343753d97e Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 25 Oct 2016 16:01:46 -0400 Subject: [PATCH 0038/1449] try limiting debug --- chromium-54.0.2840.59-i686-ld-memory-tricks.patch | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/chromium-54.0.2840.59-i686-ld-memory-tricks.patch b/chromium-54.0.2840.59-i686-ld-memory-tricks.patch index 6c57454..ff79fe8 100644 --- a/chromium-54.0.2840.59-i686-ld-memory-tricks.patch +++ b/chromium-54.0.2840.59-i686-ld-memory-tricks.patch @@ -1,10 +1,12 @@ diff -up chromium-54.0.2840.59/build/toolchain/linux/BUILD.gn.ldmemory chromium-54.0.2840.59/build/toolchain/linux/BUILD.gn --- chromium-54.0.2840.59/build/toolchain/linux/BUILD.gn.ldmemory 2016-10-19 15:56:20.253096784 -0400 +++ chromium-54.0.2840.59/build/toolchain/linux/BUILD.gn 2016-10-19 15:58:17.940833948 -0400 -@@ -72,6 +72,7 @@ gcc_toolchain("x86") { +@@ -71,7 +71,8 @@ gcc_toolchain("x86") { + nm = "nm" ar = "ar" ld = cxx - extra_cppflags = "-fno-delete-null-pointer-checks" +- extra_cppflags = "-fno-delete-null-pointer-checks" ++ extra_cppflags = "-fno-delete-null-pointer-checks -g1" + extra_ldflags = "-fuse-ld=gold -Wl,--no-map-whole-files -Wl,--no-keep-memory" toolchain_args = { From 2ec748f12630254434d97e1da6f32d94fe2cca81 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 26 Oct 2016 10:18:24 -0400 Subject: [PATCH 0039/1449] fix deps --- chromium.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/chromium.spec b/chromium.spec index c443d3f..3e71e4e 100644 --- a/chromium.spec +++ b/chromium.spec @@ -19,7 +19,7 @@ # Requires is trickier. %global __provides_exclude_from %{chromium_path}/.*\\.so|%{chromium_path}/lib/.*\\.so -%global privlibs libaccessibility|libaura_extra|libaura|libbase_i18n|libbase|libblink_common|libblink_core|libblink_modules|libblink_platform|libblink_web|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture|libcc_blink|libcc_ipc|libcc_proto|libcc|libcc_surfaces|libchromium_sqlite3|libcloud_policy_proto_generated_compile|libcloud_policy_proto|libcommon|libcompositor|libcontent|libcrcrypto|libdbus|libdevice_battery|libdevice_core|libdevice_event_log|libdevice_gamepad|libdevice_geolocation|libdevices|libdevice_vibration|libdisplay_compositor|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libevents_base|libevents_devices_x11|libevents_ipc|libevents_ozone_layout|libevents|libevents_x|libffmpeg|libfont_service_library|libgcm|libgeometry|libgesture_detection|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_x11|libgin|libgles2_c_lib|libgles2_implementation|libgles2_utils|libGLESv2|libgl_init|libgl_wrapper|libgpu|libgtk2ui|libicui18n|libicuuc|libipc|libkeyboard|libkeyboard_with_content|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libmedia_blink|libmedia_gpu|libmedia|libmemory_coordinator_browswer|libmemory_coordinator_child|libmemory_coordinator_common|libmessage_center|libmidi|libmojo_blink_lib|libmojo_common_lib|libmojo_ime_lib|libmojo_public_system|libmojo_system_impl|libnative_theme|libnet|libnet_with_v8|libonc|libplatform|libpolicy_component|libpolicy_proto|libpower_save_blocker|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|librange|libsandbox_services|libseccomp_bpf|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libtranslator|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_library|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libuser_prefs|libv8|libviews|libwebdata_common|libweb_dialogs|libwebview|libwm|libwtf|libx11_events_platform|libx11_window +%global privlibs libaccessibility|libaura_extra|libaura|libbase_i18n|libbase|libblink_common|libblink_core|libblink_modules|libblink_platform|libblink_web|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture|libcc_blink|libcc_ipc|libcc_proto|libcc|libcc_surfaces|libchromium_sqlite3|libcloud_policy_proto_generated_compile|libcloud_policy_proto|libcommon|libcompositor|libcontent|libcrcrypto|libdbus|libdevice_battery|libdevice_core|libdevice_event_log|libdevice_gamepad|libdevice_geolocation|libdevices|libdevice_vibration|libdisplay_compositor|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libevents_base|libevents_devices_x11|libevents_ipc|libevents_ozone_layout|libevents|libevents_x|libffmpeg|libfont_service_library|libgcm|libgeometry|libgesture_detection|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_x11|libgin|libgles2_c_lib|libgles2_implementation|libgles2_utils|libGLESv2|libgl_init|libgl_wrapper|libgpu|libgtk2ui|libicui18n|libicuuc|libipc|libkeyboard|libkeyboard_with_content|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libmedia_blink|libmedia_gpu|libmedia|libmemory_coordinator_browser|libmemory_coordinator_child|libmemory_coordinator_common|libmessage_center|libmidi|libmojo_blink_lib|libmojo_common_lib|libmojo_ime_lib|libmojo_public_system|libmojo_system_impl|libnative_theme|libnet|libnet_with_v8|libonc|libplatform|libpolicy_component|libpolicy_proto|libpower_save_blocker|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|librange|libsandbox_services|libseccomp_bpf|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libtranslator|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_library|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libuser_prefs|libv8|libviews|libwebdata_common|libweb_dialogs|libwebview|libwidevinecdm|libwm|libwtf|libx11_events_platform|libx11_window %global __requires_exclude ^(%{privlibs})\\.so # Try to not use the Xvfb as it is slow.. @@ -94,7 +94,7 @@ BuildRequires: libicu-devel >= 5.4 Name: chromium%{chromium_channel} Version: 54.0.2840.59 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1708,6 +1708,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Wed Oct 26 2016 Tom Callaway 54.0.2840.59-2 +- fix deps + * Thu Oct 13 2016 Tom Callaway 54.0.2840.59-1 - 54.0.2840.59 - use bundled opus, libevent From cf9fdde186985fc5043efb74b6cbf3faa56b2af2 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 26 Oct 2016 15:18:53 -0400 Subject: [PATCH 0040/1449] 54.0.2840.71 --- .gitignore | 1 + chromium.spec | 7 +++++-- sources | 3 +-- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 3ec75f8..ab7d441 100644 --- a/.gitignore +++ b/.gitignore @@ -9,3 +9,4 @@ /chromium-53.0.2785.116-clean.tar.xz /chromium-53.0.2785.143-clean.tar.xz /chromium-54.0.2840.59-clean.tar.xz +/chromium-54.0.2840.71-clean.tar.xz diff --git a/chromium.spec b/chromium.spec index 3e71e4e..2e4f934 100644 --- a/chromium.spec +++ b/chromium.spec @@ -93,8 +93,8 @@ BuildRequires: libicu-devel >= 5.4 %global chromoting_client_id 449907151817-8vnlfih032ni8c4jjps9int9t86k546t.apps.googleusercontent.com Name: chromium%{chromium_channel} -Version: 54.0.2840.59 -Release: 2%{?dist} +Version: 54.0.2840.71 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1708,6 +1708,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Wed Oct 26 2016 Tom Callaway 54.0.2840.71-1 +- update to 54.0.2840.71 + * Wed Oct 26 2016 Tom Callaway 54.0.2840.59-2 - fix deps diff --git a/sources b/sources index 5fe994b..046dbce 100644 --- a/sources +++ b/sources @@ -1,4 +1,3 @@ 49a7f897775cce21d2b69968b8af1cea depot_tools.git-master.tar.gz 8280c0644492bac9f59f4e25ed11d309 policy_templates.zip -d63d358591b6c8b43095b50f81196537 chromium-53.0.2785.143-clean.tar.xz -031e7cd6c6d4d24769d3901b99272d11 chromium-54.0.2840.59-clean.tar.xz +6a740f8337b291d5e8d6c8742af7c9bc chromium-54.0.2840.71-clean.tar.xz From 1b86e1c019838809caa386be2f250116b34f9606 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 1 Nov 2016 12:48:57 -0400 Subject: [PATCH 0041/1449] fixup master_preferences, disable debugging in build --- chromium.spec | 6 +++++- master_preferences | 7 +++---- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/chromium.spec b/chromium.spec index 2e4f934..6e2629c 100644 --- a/chromium.spec +++ b/chromium.spec @@ -94,7 +94,7 @@ BuildRequires: libicu-devel >= 5.4 Name: chromium%{chromium_channel} Version: 54.0.2840.71 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -641,6 +641,7 @@ popd %endif CHROMIUM_BROWSER_GN_DEFINES="" +CHROMIUM_BROWSER_GN_DEFINES+=' is_debug=false' %ifarch x86_64 CHROMIUM_BROWSER_GN_DEFINES+=' system_libdir="lib64"' %endif @@ -1708,6 +1709,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Tue Nov 1 2016 Tom Callaway 54.0.2840.71-2 +- disable debugging + * Wed Oct 26 2016 Tom Callaway 54.0.2840.71-1 - update to 54.0.2840.71 diff --git a/master_preferences b/master_preferences index 8a5347a..fbc2ff0 100644 --- a/master_preferences +++ b/master_preferences @@ -1,4 +1,6 @@ { + "homepage": "https://start.fedoraproject.org", + "homepage_is_newtabpage": false, "distribution": { "alternate_shortcut_text": false, "oem_bubble": true, @@ -8,11 +10,8 @@ "system_level": false, "verbose_logging": false }, - }, "first_run_tabs": [ "https://start.fedoraproject.org", "http://tools.google.com/chrome/intl/en/welcome.html" - ], - "homepage": "https://start.fedoraproject.org", - "homepage_is_newtabpage": false + ] } From 95a4b6088389ecef3a2dee0bb5865d3788c2b70c Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 2 Nov 2016 11:47:44 -0400 Subject: [PATCH 0042/1449] 54.0.2840.90, debugging disabled --- .gitignore | 1 + chromium-54.0.2840.59-i686-ld-memory-tricks.patch | 3 +-- chromium.spec | 8 ++++++-- sources | 2 +- 4 files changed, 9 insertions(+), 5 deletions(-) diff --git a/.gitignore b/.gitignore index ab7d441..3071ba6 100644 --- a/.gitignore +++ b/.gitignore @@ -10,3 +10,4 @@ /chromium-53.0.2785.143-clean.tar.xz /chromium-54.0.2840.59-clean.tar.xz /chromium-54.0.2840.71-clean.tar.xz +/chromium-54.0.2840.90-clean.tar.xz diff --git a/chromium-54.0.2840.59-i686-ld-memory-tricks.patch b/chromium-54.0.2840.59-i686-ld-memory-tricks.patch index ff79fe8..0ebec9e 100644 --- a/chromium-54.0.2840.59-i686-ld-memory-tricks.patch +++ b/chromium-54.0.2840.59-i686-ld-memory-tricks.patch @@ -1,13 +1,12 @@ diff -up chromium-54.0.2840.59/build/toolchain/linux/BUILD.gn.ldmemory chromium-54.0.2840.59/build/toolchain/linux/BUILD.gn --- chromium-54.0.2840.59/build/toolchain/linux/BUILD.gn.ldmemory 2016-10-19 15:56:20.253096784 -0400 +++ chromium-54.0.2840.59/build/toolchain/linux/BUILD.gn 2016-10-19 15:58:17.940833948 -0400 -@@ -71,7 +71,8 @@ gcc_toolchain("x86") { +@@ -71,7 +71,7 @@ gcc_toolchain("x86") { nm = "nm" ar = "ar" ld = cxx - extra_cppflags = "-fno-delete-null-pointer-checks" + extra_cppflags = "-fno-delete-null-pointer-checks -g1" -+ extra_ldflags = "-fuse-ld=gold -Wl,--no-map-whole-files -Wl,--no-keep-memory" toolchain_args = { current_cpu = "x86" diff --git a/chromium.spec b/chromium.spec index 6e2629c..5d0f089 100644 --- a/chromium.spec +++ b/chromium.spec @@ -93,8 +93,8 @@ BuildRequires: libicu-devel >= 5.4 %global chromoting_client_id 449907151817-8vnlfih032ni8c4jjps9int9t86k546t.apps.googleusercontent.com Name: chromium%{chromium_channel} -Version: 54.0.2840.71 -Release: 2%{?dist} +Version: 54.0.2840.90 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1709,6 +1709,10 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Wed Nov 2 2016 Tom Callaway 54.0.2840.90-1 +- update to 54.0.2840.90 +- undo ld manipulation for i686, just use -g1 there + * Tue Nov 1 2016 Tom Callaway 54.0.2840.71-2 - disable debugging diff --git a/sources b/sources index 046dbce..1361ac6 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ 49a7f897775cce21d2b69968b8af1cea depot_tools.git-master.tar.gz 8280c0644492bac9f59f4e25ed11d309 policy_templates.zip -6a740f8337b291d5e8d6c8742af7c9bc chromium-54.0.2840.71-clean.tar.xz +c4e24c20c266482941ecd75fd786492e chromium-54.0.2840.90-clean.tar.xz From c324e5831a29f390b9d71a64cd4627e41e1a26da Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 3 Nov 2016 13:38:46 -0400 Subject: [PATCH 0043/1449] fix build --- chromium-54.0.2840.90-setopaque.patch | 13 +++++++++++++ chromium.spec | 9 ++++++++- 2 files changed, 21 insertions(+), 1 deletion(-) create mode 100644 chromium-54.0.2840.90-setopaque.patch diff --git a/chromium-54.0.2840.90-setopaque.patch b/chromium-54.0.2840.90-setopaque.patch new file mode 100644 index 0000000..90d6edc --- /dev/null +++ b/chromium-54.0.2840.90-setopaque.patch @@ -0,0 +1,13 @@ +diff -up chromium-54.0.2840.90/cc/blink/web_layer_impl.h.setopaque chromium-54.0.2840.90/cc/blink/web_layer_impl.h +--- chromium-54.0.2840.90/cc/blink/web_layer_impl.h.setopaque 2016-11-03 09:07:03.422497483 -0400 ++++ chromium-54.0.2840.90/cc/blink/web_layer_impl.h 2016-11-03 09:07:13.302307531 -0400 +@@ -80,7 +80,7 @@ class WebLayerImpl : public blink::WebLa + blink::WebBlendMode blendMode() const override; + void setIsRootForIsolatedGroup(bool root) override; + bool isRootForIsolatedGroup() override; +- void setOpaque(bool opaque) override; ++ CC_BLINK_EXPORT void setOpaque(bool opaque) override; + bool opaque() const override; + void setPosition(const blink::WebFloatPoint& position) override; + blink::WebFloatPoint position() const override; +diff -up chromium-54.0.2840.90/content/renderer/child_frame_compositing_helper.cc.setopaque chromium-54.0.2840.90/content/renderer/child_frame_compositing_helper.cc diff --git a/chromium.spec b/chromium.spec index 5d0f089..650fe83 100644 --- a/chromium.spec +++ b/chromium.spec @@ -94,7 +94,7 @@ BuildRequires: libicu-devel >= 5.4 Name: chromium%{chromium_channel} Version: 54.0.2840.90 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -152,6 +152,9 @@ Patch24: chromium-54.0.2840.59-nullfix.patch Patch25: chromium-54.0.2840.59-jpeg-include-dir.patch # On i686, pass --no-keep-memory --reduce-memory-overheads to ld. Patch26: chromium-54.0.2840.59-i686-ld-memory-tricks.patch +# obj/content/renderer/renderer/child_frame_compositing_helper.o: In function `content::ChildFrameCompositingHelper::OnSetSurface(cc::SurfaceId const&, gfx::Size const&, float, cc::SurfaceSequence const&)': +# /builddir/build/BUILD/chromium-54.0.2840.90/out/Release/../../content/renderer/child_frame_compositing_helper.cc:214: undefined reference to `cc_blink::WebLayerImpl::setOpaque(bool)' +Patch27: chromium-54.0.2840.90-setopaque.patch ### Chromium Tests Patches ### @@ -530,6 +533,7 @@ members of the Chromium and WebDriver teams. %patch24 -p1 -b .nullfix %patch25 -p1 -b .jpegfix %patch26 -p1 -b .ldmemory +%patch27 -p1 -b .setopaque ### Chromium Tests Patches ### %patch100 -p1 -b .use_system_opus @@ -1709,6 +1713,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Wed Nov 2 2016 Tom Callaway 54.0.2840.90-2 +- export setOpaque in cc_blink + * Wed Nov 2 2016 Tom Callaway 54.0.2840.90-1 - update to 54.0.2840.90 - undo ld manipulation for i686, just use -g1 there From e456f1dcd25b761082a532e0899114b60c028f72 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 4 Nov 2016 13:32:06 -0400 Subject: [PATCH 0044/1449] fix el7 build, snapshot needs to be in if aura is --- ...m-54.0.2840.90-aura-browser-link-to-snapshot.patch | 11 +++++++++++ chromium.spec | 11 +++++++++-- 2 files changed, 20 insertions(+), 2 deletions(-) create mode 100644 chromium-54.0.2840.90-aura-browser-link-to-snapshot.patch diff --git a/chromium-54.0.2840.90-aura-browser-link-to-snapshot.patch b/chromium-54.0.2840.90-aura-browser-link-to-snapshot.patch new file mode 100644 index 0000000..0adb04a --- /dev/null +++ b/chromium-54.0.2840.90-aura-browser-link-to-snapshot.patch @@ -0,0 +1,11 @@ +diff -up chromium-54.0.2840.90/chrome/browser/BUILD.gn.fixme chromium-54.0.2840.90/chrome/browser/BUILD.gn +--- chromium-54.0.2840.90/chrome/browser/BUILD.gn.fixme 2016-11-04 09:52:43.712072361 -0400 ++++ chromium-54.0.2840.90/chrome/browser/BUILD.gn 2016-11-04 09:53:21.495864624 -0400 +@@ -605,6 +605,7 @@ split_static_library("browser") { + "//services/ui/public/cpp/input_devices", + "//ui/aura", + "//ui/compositor", ++ "//ui/snapshot", + "//ui/views/mus", + ] + } diff --git a/chromium.spec b/chromium.spec index 650fe83..e840bb3 100644 --- a/chromium.spec +++ b/chromium.spec @@ -94,7 +94,7 @@ BuildRequires: libicu-devel >= 5.4 Name: chromium%{chromium_channel} Version: 54.0.2840.90 -Release: 2%{?dist} +Release: 3%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -155,7 +155,10 @@ Patch26: chromium-54.0.2840.59-i686-ld-memory-tricks.patch # obj/content/renderer/renderer/child_frame_compositing_helper.o: In function `content::ChildFrameCompositingHelper::OnSetSurface(cc::SurfaceId const&, gfx::Size const&, float, cc::SurfaceSequence const&)': # /builddir/build/BUILD/chromium-54.0.2840.90/out/Release/../../content/renderer/child_frame_compositing_helper.cc:214: undefined reference to `cc_blink::WebLayerImpl::setOpaque(bool)' Patch27: chromium-54.0.2840.90-setopaque.patch - +# /usr/bin/ld.bfd: obj/chrome/browser/libbrowser.a(native_desktop_media_list.o): undefined reference to symbol '_ZN2ui31GrabWindowSnapshotAndScaleAsyncEPN4aura6WindowERKN3gfx4RectERKNS3_4SizeE13scoped_refptrIN4base10TaskRunnerEERKNSB_8CallbackIFvRKNS3_5ImageEELNSB_8internal8CopyModeE1EEE' +# /usr/bin/ld.bfd: note: '_ZN2ui31GrabWindowSnapshotAndScaleAsyncEPN4aura6WindowERKN3gfx4RectERKNS3_4SizeE13scoped_refptrIN4base10TaskRunnerEERKNSB_8CallbackIFvRKNS3_5ImageEELNSB_8internal8CopyModeE1EEE' is defined in DSO ./libsnapshot.so so try adding it to the linker command line +# ./libsnapshot.so: could not read symbols: Invalid operation +Patch28: chromium-54.0.2840.90-aura-browser-link-to-snapshot.patch ### Chromium Tests Patches ### Patch100: chromium-46.0.2490.86-use_system_opus.patch @@ -534,6 +537,7 @@ members of the Chromium and WebDriver teams. %patch25 -p1 -b .jpegfix %patch26 -p1 -b .ldmemory %patch27 -p1 -b .setopaque +%patch28 -p1 -b .aurasnapshot ### Chromium Tests Patches ### %patch100 -p1 -b .use_system_opus @@ -1713,6 +1717,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Fri Nov 4 2016 Tom Callaway 54.0.2840.90-3 +- when use_aura is on, chrome/browser needs to link to ui/snapshot + * Wed Nov 2 2016 Tom Callaway 54.0.2840.90-2 - export setOpaque in cc_blink From e05272a4af680b37f2ca4f6969bfa1f7e45fb3a4 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 2 Dec 2016 14:22:16 -0500 Subject: [PATCH 0045/1449] 54.0.2840.100 --- .gitignore | 2 ++ chromium.spec | 7 +++++-- sources | 2 +- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index 3071ba6..db8c3af 100644 --- a/.gitignore +++ b/.gitignore @@ -11,3 +11,5 @@ /chromium-54.0.2840.59-clean.tar.xz /chromium-54.0.2840.71-clean.tar.xz /chromium-54.0.2840.90-clean.tar.xz +/chromium-54.0.2840.100.tar.xz +/chromium-54.0.2840.100-clean.tar.xz diff --git a/chromium.spec b/chromium.spec index e840bb3..6537902 100644 --- a/chromium.spec +++ b/chromium.spec @@ -93,8 +93,8 @@ BuildRequires: libicu-devel >= 5.4 %global chromoting_client_id 449907151817-8vnlfih032ni8c4jjps9int9t86k546t.apps.googleusercontent.com Name: chromium%{chromium_channel} -Version: 54.0.2840.90 -Release: 3%{?dist} +Version: 54.0.2840.100 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1717,6 +1717,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Fri Dec 2 2016 Tom Callaway 54.0.2840.100-1 +- update to 54.0.2840.100 + * Fri Nov 4 2016 Tom Callaway 54.0.2840.90-3 - when use_aura is on, chrome/browser needs to link to ui/snapshot diff --git a/sources b/sources index 1361ac6..d150e97 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ 49a7f897775cce21d2b69968b8af1cea depot_tools.git-master.tar.gz 8280c0644492bac9f59f4e25ed11d309 policy_templates.zip -c4e24c20c266482941ecd75fd786492e chromium-54.0.2840.90-clean.tar.xz +783e9b05be053e9eb081a8632f56e8df chromium-54.0.2840.100-clean.tar.xz From 71163f6286516195e38a81405c66229350c7bb25 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 12 Dec 2016 16:42:21 -0500 Subject: [PATCH 0046/1449] 55 changes --- .gitignore | 1 + chromium-55.0.2883.75-addrfix.patch | 11 + chromium-55.0.2883.75-cups22.patch | 29 ++ chromium-55.0.2883.75-gcc5.patch | 354 ++++++++++++++++++ ...mium-55.0.2883.75-more-codec-aliases.patch | 15 + chromium-55.0.2883.75-sandbox-pie.patch | 30 ++ ...ium-55.0.2883.75-use_system_harfbuzz.patch | 12 + chromium.spec | 195 +--------- clean_ffmpeg.sh | 2 - sources | 6 +- 10 files changed, 474 insertions(+), 181 deletions(-) create mode 100644 chromium-55.0.2883.75-addrfix.patch create mode 100644 chromium-55.0.2883.75-cups22.patch create mode 100644 chromium-55.0.2883.75-gcc5.patch create mode 100644 chromium-55.0.2883.75-more-codec-aliases.patch create mode 100644 chromium-55.0.2883.75-sandbox-pie.patch create mode 100644 chromium-55.0.2883.75-use_system_harfbuzz.patch diff --git a/.gitignore b/.gitignore index db8c3af..58869a3 100644 --- a/.gitignore +++ b/.gitignore @@ -13,3 +13,4 @@ /chromium-54.0.2840.90-clean.tar.xz /chromium-54.0.2840.100.tar.xz /chromium-54.0.2840.100-clean.tar.xz +/chromium-55.0.2883.75-clean.tar.xz diff --git a/chromium-55.0.2883.75-addrfix.patch b/chromium-55.0.2883.75-addrfix.patch new file mode 100644 index 0000000..00c214c --- /dev/null +++ b/chromium-55.0.2883.75-addrfix.patch @@ -0,0 +1,11 @@ +diff -up chromium-55.0.2883.75/third_party/boringssl/BUILD.gn.addrfix chromium-55.0.2883.75/third_party/boringssl/BUILD.gn +--- chromium-55.0.2883.75/third_party/boringssl/BUILD.gn.addrfix 2016-12-12 15:30:27.727834891 -0500 ++++ chromium-55.0.2883.75/third_party/boringssl/BUILD.gn 2016-12-12 15:30:53.095709352 -0500 +@@ -24,6 +24,7 @@ config("internal_config") { + "BORINGSSL_IMPLEMENTATION", + "BORINGSSL_NO_STATIC_INITIALIZER", + "OPENSSL_SMALL", ++ "_POSIX_C_SOURCE=200112L", + ] + configs = [ + # TODO(davidben): Fix size_t truncations in BoringSSL. diff --git a/chromium-55.0.2883.75-cups22.patch b/chromium-55.0.2883.75-cups22.patch new file mode 100644 index 0000000..d1a2bf8 --- /dev/null +++ b/chromium-55.0.2883.75-cups22.patch @@ -0,0 +1,29 @@ +diff -up chromium-52.0.2743.82/printing/backend/print_backend_cups.cc.cups22 chromium-52.0.2743.82/printing/backend/print_backend_cups.cc +--- chromium-52.0.2743.82/printing/backend/print_backend_cups.cc.cups22 2016-07-22 09:20:15.794340886 -0400 ++++ chromium-52.0.2743.82/printing/backend/print_backend_cups.cc 2016-07-22 09:20:26.338261197 -0400 +@@ -16,6 +16,7 @@ + #include "base/synchronization/lock.h" + #include "base/values.h" + #include "printing/backend/cups_helper.h" ++#include + #include "printing/backend/print_backend_consts.h" + #include "url/gurl.h" + +diff -up chromium-52.0.2743.82/printing/BUILD.gn.cups22 chromium-52.0.2743.82/printing/BUILD.gn +--- chromium-52.0.2743.82/printing/BUILD.gn.cups22 2016-07-21 11:27:05.597507544 -0400 ++++ chromium-52.0.2743.82/printing/BUILD.gn 2016-07-21 14:36:45.574137758 -0400 +@@ -147,12 +147,13 @@ component("printing") { + ], + "trim string") + +- if (cups_version == "1.6" || cups_version == "1.7") { ++ if (cups_version == "1.6" || cups_version == "1.7" || cups_version == "2.2") { + cflags += [ + # CUPS 1.6 deprecated the PPD APIs, but we will stay with this + # API for now as supported Linux and Mac OS'es are still using + # older versions of CUPS. More info: crbug.com/226176 + "-Wno-deprecated-declarations", ++ "-D_PPD_DEPRECATED=", + # CUPS 1.7 deprecates httpConnectEncrypt(), see the mac section + # below. + ] diff --git a/chromium-55.0.2883.75-gcc5.patch b/chromium-55.0.2883.75-gcc5.patch new file mode 100644 index 0000000..12af26d --- /dev/null +++ b/chromium-55.0.2883.75-gcc5.patch @@ -0,0 +1,354 @@ +diff -up chromium-55.0.2883.75/third_party/cld_2/src/internal/cld_generated_cjk_uni_prop_80.cc.gcc5 chromium-55.0.2883.75/third_party/cld_2/src/internal/cld_generated_cjk_uni_prop_80.cc +--- chromium-55.0.2883.75/third_party/cld_2/src/internal/cld_generated_cjk_uni_prop_80.cc.gcc5 2016-12-01 18:03:09.000000000 -0500 ++++ chromium-55.0.2883.75/third_party/cld_2/src/internal/cld_generated_cjk_uni_prop_80.cc 2016-12-12 15:24:01.171747843 -0500 +@@ -165,8 +165,8 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + // state[16 + 2] 0x000000 Byte 2 of 3 (relative offsets) + X__,X__,X__,X__,X__,X__,X__,X__, X__,X__,X__,X__,X__,X__,X__,X__, + X__,X__,X__,X__,X__,X__,X__,X__, X__,X__,X__,X__,X__,X__,X__,X__, +--14,-14,-14,-14,-14,-14,-14,-14, -14,-14,-14,-14,-14,-14,-14,-14, +--14,-14,-14,-14,-14,-14,-14,-14, -14,-14,-14,-14,-14,-14,-14,-14, ++(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14, (uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14, ++(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14, (uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14, + + // state[17 + 2] 0x0031c0 Byte 3 of 3 (property) + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, +@@ -259,10 +259,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 229,229,229, 3,208, 0,229, 5, 233, 0,229,229,229,208,229,229, + + // state[32 + 2] 0x002000 Byte 2 of 3 (relative offsets) +--30,-30,-30,-30,-30,-30,-30,-30, -30,-30,-30,-30,-30,-30,-30,-30, +--30,-30,-30,-30,-30,-30,-30,-30, -30,-30,-30,-30,-30,-30,-30,-30, +--30,-30,-30,-30,-30,-30,-30,-30, -30,-30,-30,-30,-30,-30,-30,-30, +--30,-30,-30,-30,-30,-30,-30,-30, -30,-30,-30,-30,-30,-30,-30,-30, ++(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, (uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, ++(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, (uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, ++(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, (uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, ++(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, (uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, + + // state[33 + 2] 0x003780 Byte 3 of 3 (property) + 229,208,229,229,208,229,229,229, 208,208,208,208,208, 4, 6,208, +@@ -355,10 +355,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 228,229,229,229,229,233,233, 6, 208,229, 3,229,233, 6, 6, 0, + + // state[48 + 2] 0x001000 Byte 2 of 3 (relative offsets) +--46,-46,-46,-46,-42,-41,-40,-39, -46,-46,-46,-46,-46,-46,-46,-46, +--46,-46,-46,-46,-46,-46,-46,-46, -46,-46,-46,-46,-46,-46,-46,-46, +--46,-46,-46,-46,-46,-46,-46,-46, -46,-46,-46,-46,-46,-46,-46,-46, +--46,-46,-46,-46,-46,-46,-46,-46, -46,-46,-46,-46,-46,-46,-46,-46, ++(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-42,(uint8)-41,(uint8)-40,(uint8)-39, (uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, ++(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, (uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, ++(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, (uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, ++(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, (uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, + + // state[49 + 2] 0x003b40 Byte 3 of 3 (property) + 6,227,208,233,208, 3, 3,208, 208,229, 0,229,233,219, 0, 6, +@@ -451,10 +451,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 229,208,208,208,217,208,229,229, 229,229,208,217,208,229,229,229, + + // state[64 + 2] 0x003000 Byte 2 of 3 (relative offsets) +--54,-53,-52,-51,-50,-58,-49,-47, -62,-62,-62,-62,-62,-62,-62,-62, +--46,-45,-44,-43,-42,-41,-40,-39, -38,-37,-36,-35,-34,-33,-31,-30, +--29,-28,-27,-26,-25,-24,-23,-22, -21,-20,-19,-18,-17,-15,-14,-13, +--12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, ++(uint8)-54,(uint8)-53,(uint8)-52,(uint8)-51,(uint8)-50,(uint8)-58,(uint8)-49,(uint8)-47, (uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62, ++(uint8)-46,(uint8)-45,(uint8)-44,(uint8)-43,(uint8)-42,(uint8)-41,(uint8)-40,(uint8)-39, (uint8)-38,(uint8)-37,(uint8)-36,(uint8)-35,(uint8)-34,(uint8)-33,(uint8)-31,(uint8)-30, ++(uint8)-29,(uint8)-28,(uint8)-27,(uint8)-26,(uint8)-25,(uint8)-24,(uint8)-23,(uint8)-22, (uint8)-21,(uint8)-20,(uint8)-19,(uint8)-18,(uint8)-17,(uint8)-15,(uint8)-14,(uint8)-13, ++(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, + + // state[65 + 2] 0x003f00 Byte 3 of 3 (property) + 217,217,208, 3,208,217,208,208, 6,229,208,228,229,229,208,229, +@@ -547,10 +547,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 229,208,229,229,208,229,233, 0, 208,208,229,208,227,229,229,229, + + // state[80 + 2] 0x004000 Byte 2 of 3 (relative offsets) +--11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, ++(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, + 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, +- 38, 39, 40, 41, 42, 43, 44,-78, 45, 46, 47, 48, 49, 50, 51, 52, ++ 38, 39, 40, 41, 42, 43, 44,(uint8)-78, 45, 46, 47, 48, 49, 50, 51, 52, + + // state[81 + 2] 0x0042c0 Byte 3 of 3 (property) + 229, 0,229,229,229, 3, 4, 4, 229,229,229,229,208,229, 0,208, +@@ -931,7 +931,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 0,142, 98, 28,117,206,212,212, 220, 15, 0,231,199,231,111, 28, + + // state[144 + 2] 0x005000 Byte 2 of 3 (relative offsets) +--11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, ++(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, + 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, + 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, +@@ -1315,7 +1315,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 16, 15,211,118, 0,231, 68,231, 0, 99,161, 0,115,221,144,140, + + // state[208 + 2] 0x006000 Byte 2 of 3 (relative offsets) +--10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, ++(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, + 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, + 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, +@@ -1699,7 +1699,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 119, 16, 51, 0, 0, 68,136, 72, 144,118, 87,201,191,136, 78,233, + + // state[272 + 2] 0x007000 Byte 2 of 3 (relative offsets) +- -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, ++ (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, + 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, + 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, + 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, +@@ -2083,7 +2083,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 212,212, 0,126,140,220,220, 0, 0, 0,127,118,106, 0,199, 0, + + // state[336 + 2] 0x008000 Byte 2 of 3 (relative offsets) +- -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, 8, ++ (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, + 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, + 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, +@@ -2467,7 +2467,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 0,122, 0,231,100,232, 0, 0, 117, 0,206,231, 0, 0,231, 0, + + // state[400 + 2] 0x009000 Byte 2 of 3 (relative offsets) +- -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, 8, 9, ++ (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, 9, + 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, + 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, + 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, +@@ -2851,10 +2851,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + + // state[464 + 2] 0x00a000 Byte 2 of 3 (relative offsets) +- -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, +- -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, +- -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, +- -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, ++ (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, ++ (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, ++ (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, ++ (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, + + // state[465 + 2] 0x000080 Byte 2 of 2 (property) + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, +@@ -2947,10 +2947,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 208,208,208,208, 5, 6,208, 2, 0, 6, 6, 5,208,208,208, 6, + + // state[480 + 2] 0x00b000 Byte 2 of 3 (relative offsets) +--20,-20,-20,-20,-20,-20,-20,-20, -20,-20,-20,-20,-20,-20,-20,-20, +--20,-20,-20,-20,-20,-20,-20,-20, -20,-20,-20,-20,-20,-20,-20,-20, +--20,-20,-20,-20,-20,-20,-20,-20, -20,-20,-20,-20,-20,-20,-20,-20, +--20,-20,-20,-20,-20,-20,-20,-20, -20,-20,-20,-20,-20,-20,-20,-20, ++(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, (uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, ++(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, (uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, ++(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, (uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, ++(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, (uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, + + // state[481 + 2] 0x020100 Byte 4 of 4 (property) + 2, 6, 5, 6, 5,229, 5,208, 208,208,208,208,208,208,208,229, +@@ -3043,10 +3043,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 208,208, 5, 5, 5,208,208, 2, 229, 5, 5, 5, 5, 5, 6,208, + + // state[496 + 2] 0x00d000 Byte 2 of 3 (relative offsets) +--35,-35,-35,-35,-35,-35,-35,-35, -35,-35,-35,-35,-35,-35,-35,-35, +--35,-35,-35,-35,-35,-35,-35,-35, -35,-35,-35,-35,-35,-35,-34,-33, +--33,-33,-33,-33,-33,-33,-33,-33, -33,-33,-33,-33,-33,-33,-33,-33, +--33,-33,-33,-33,-33,-33,-33,-33, -33,-33,-33,-33,-33,-33,-33,-33, ++(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35, (uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35, ++(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35, (uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-34,(uint8)-33, ++(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33, (uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33, ++(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33, (uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33, + + // state[497 + 2] 0x0204c0 Byte 4 of 4 (property) + 2, 2, 5, 5, 5, 2,208, 2, 5, 5, 6,208,208, 5, 5, 5, +@@ -3139,10 +3139,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 208,208, 5, 5, 5, 5, 6, 6, 208,208, 2,208,208,208,208,208, + + // state[512 + 2] 0x00f000 Byte 2 of 3 (relative offsets) +--47,-47,-47,-47,-47,-47,-47,-47, -47,-47,-47,-47,-47,-47,-47,-47, +--47,-47,-47,-47,-47,-47,-47,-47, -47,-47,-47,-47,-47,-47,-47,-47, +--47,-47,-47,-47,-46,-45,-44,-43, -42,-41,-44,-40,-47,-47,-47,-47, +--47,-47,-47,-47,-47,-47,-47,-47, -47,-47,-47,-47,-47,-39,-38,-37, ++(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, (uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, ++(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, (uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, ++(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-46,(uint8)-45,(uint8)-44,(uint8)-43, (uint8)-42,(uint8)-41,(uint8)-44,(uint8)-40,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, ++(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, (uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-39,(uint8)-38,(uint8)-37, + + // state[513 + 2] 0x020880 Byte 4 of 4 (property) + 5, 5, 5, 6,208,208,208,208, 208,208, 5, 5, 6, 6,208,208, +@@ -3235,10 +3235,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 5, 6,208,218,208,208,208,218, 208, 6,227,229, 6, 6, 6,208, + + // state[528 + 2] 0x020000 Byte 3 of 4 (relative offsets) +--52,-51,-50,-49,-47,-46,-45,-44, -43,-42,-41,-40,-39,-38,-37,-36, +--35,-34,-33,-31,-30,-29,-28,-27, -26,-25,-24,-23,-22,-21,-20,-19, +--18,-17,-15,-14,-13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, +- -1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, ++(uint8)-52,(uint8)-51,(uint8)-50,(uint8)-49,(uint8)-47,(uint8)-46,(uint8)-45,(uint8)-44, (uint8)-43,(uint8)-42,(uint8)-41,(uint8)-40,(uint8)-39,(uint8)-38,(uint8)-37,(uint8)-36, ++(uint8)-35,(uint8)-34,(uint8)-33,(uint8)-31,(uint8)-30,(uint8)-29,(uint8)-28,(uint8)-27, (uint8)-26,(uint8)-25,(uint8)-24,(uint8)-23,(uint8)-22,(uint8)-21,(uint8)-20,(uint8)-19, ++(uint8)-18,(uint8)-17,(uint8)-15,(uint8)-14,(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, ++ (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, + + // state[529 + 2] 0x020c40 Byte 4 of 4 (property) + 227, 5, 5, 5, 2, 2, 2, 2, 213, 2, 2, 2, 2, 2,208, 6, +@@ -3427,7 +3427,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 208,208,208,208,208,208,208,208, 208, 6, 6, 6, 6, 2, 5, 5, + + // state[560 + 2] 0x021000 Byte 3 of 4 (relative offsets) +--16,-15,-14,-13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, ++(uint8)-16,(uint8)-15,(uint8)-14,(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, + 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, + 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, + 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, +@@ -3811,7 +3811,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 5, 5, 5, 6, 6, 6, 5,208, 208,229,208,208, 5, 5, 5, 5, + + // state[624 + 2] 0x022000 Byte 3 of 4 (relative offsets) +--15,-14,-13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, ++(uint8)-15,(uint8)-14,(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, + 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, + 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, + 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, +@@ -4195,7 +4195,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 6, 6, 4, 5,208,208,208,208, 208,208,229, 6, 5, 6, 6, 6, + + // state[688 + 2] 0x023000 Byte 3 of 4 (relative offsets) +--14,-13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, ++(uint8)-14,(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, + 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, + 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, + 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, +@@ -4579,7 +4579,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 5, 5, 5, 5, 5, 5, 5, 6, 208,208,208,208,208,208, 6, 6, + + // state[752 + 2] 0x024000 Byte 3 of 4 (relative offsets) +--13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, ++(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, + 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, + 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, +@@ -4963,7 +4963,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 229, 6, 2, 2, 2, 2, 2, 2, 2, 2, 2, 5, 2, 2, 6,229, + + // state[816 + 2] 0x025000 Byte 3 of 4 (relative offsets) +--12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, ++(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, + 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, + 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, + 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, +@@ -5347,7 +5347,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 6, 6, 6, 5, 5, 5, 5, 6, 6, 6, 3, 6,229,208,208,229, + + // state[880 + 2] 0x026000 Byte 3 of 4 (relative offsets) +--11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, ++(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, + 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, + 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, +@@ -5731,7 +5731,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 208, 6, 6,208,208,208,208,208, 6, 6, 6,216, 5, 5, 5, 5, + + // state[944 + 2] 0x027000 Byte 3 of 4 (relative offsets) +--10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, ++(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, + 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, + 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, +@@ -6115,7 +6115,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 5, 5, 5, 6,208,208, 6, 6, 208,229,208,208,208, 5, 5, 5, + + // state[1008 + 2] 0x028000 Byte 3 of 4 (relative offsets) +- -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, ++ (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, + 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, + 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, + 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, +@@ -6499,7 +6499,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 208,208, 5, 5, 6,208,208, 5, 208,208,208, 6,208, 6,208,208, + + // state[1072 + 2] 0x029000 Byte 3 of 4 (relative offsets) +- -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, 8, ++ (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, + 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, + 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, +@@ -6883,7 +6883,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 229,229,229,229,208,208,208,229, 208,208,208,229, 0,229,208,208, + + // state[1136 + 2] 0x02a000 Byte 3 of 4 (relative offsets) +- -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, 8, 9, ++ (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, 9, + 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 22, 22, 22, + 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, + 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, +@@ -7075,10 +7075,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, + + // state[1168 + 2] 0x02f000 Byte 3 of 4 (relative offsets) +- -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, +- -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, +- -8, -7, -6, -5, -4, -3, -2, -1, 1, -9, -9, -9, -9, -9, -9, -9, +- -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, ++ (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, ++ (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, ++ (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, ++ (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, + + // state[1169 + 2] 0x02fa00 Byte 4 of 4 (property) + 217, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,217, 5, 5, +diff -up chromium-55.0.2883.75/third_party/webgl/src/specs/latest/2.0/webgl2.idl.gcc5 chromium-55.0.2883.75/third_party/webgl/src/specs/latest/2.0/webgl2.idl +--- chromium-55.0.2883.75/third_party/webgl/src/specs/latest/2.0/webgl2.idl.gcc5 2016-12-01 18:03:16.000000000 -0500 ++++ chromium-55.0.2883.75/third_party/webgl/src/specs/latest/2.0/webgl2.idl 2016-12-12 15:24:01.209747655 -0500 +@@ -264,7 +264,7 @@ interface WebGL2RenderingContextBase + 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 -up chromium-55.0.2883.75/third_party/WebKit/Source/core/dom/NodeFilter.h.gcc5 chromium-55.0.2883.75/third_party/WebKit/Source/core/dom/NodeFilter.h +--- chromium-55.0.2883.75/third_party/WebKit/Source/core/dom/NodeFilter.h.gcc5 2016-12-12 15:24:01.210747650 -0500 ++++ chromium-55.0.2883.75/third_party/WebKit/Source/core/dom/NodeFilter.h 2016-12-12 15:26:23.176045106 -0500 +@@ -49,7 +49,7 @@ class NodeFilter final : public GarbageC + * to the value of NodeType for the equivalent node type. + */ + enum { +- kShowAll = 0xFFFFFFFF, ++ kShowAll = 256 /* 0xFFFFFFFF */, + kShowElement = 0x00000001, + kShowAttribute = 0x00000002, + kShowText = 0x00000004, +diff -up chromium-55.0.2883.75/third_party/WebKit/Source/core/dom/NodeFilter.idl.gcc5 chromium-55.0.2883.75/third_party/WebKit/Source/core/dom/NodeFilter.idl +--- chromium-55.0.2883.75/third_party/WebKit/Source/core/dom/NodeFilter.idl.gcc5 2016-12-01 18:02:30.000000000 -0500 ++++ chromium-55.0.2883.75/third_party/WebKit/Source/core/dom/NodeFilter.idl 2016-12-12 15:24:01.211747645 -0500 +@@ -30,7 +30,7 @@ + const unsigned short FILTER_SKIP = 3; + + // Constants for whatToShow +- const unsigned long SHOW_ALL = 0xFFFFFFFF; ++ const unsigned long SHOW_ALL = 256; // 0xFFFFFFFF + const unsigned long SHOW_ELEMENT = 0x1; + const unsigned long SHOW_ATTRIBUTE = 0x2; // historical + const unsigned long SHOW_TEXT = 0x4; +diff -up chromium-55.0.2883.75/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl.gcc5 chromium-55.0.2883.75/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl +--- chromium-55.0.2883.75/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl.gcc5 2016-12-01 18:02:32.000000000 -0500 ++++ chromium-55.0.2883.75/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl 2016-12-12 15:24:01.214747631 -0500 +@@ -239,7 +239,7 @@ typedef long long GLint64; + 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; +@@ -282,7 +282,7 @@ typedef long long GLint64; + const GLenum MAX_ELEMENT_INDEX = 0x8D6B; + const GLenum NUM_SAMPLE_COUNTS = 0x9380; + const GLenum TEXTURE_IMMUTABLE_LEVELS = 0x82DF; +- const GLint TIMEOUT_IGNORED = -1; ++ const GLint TIMEOUT_IGNORED = 256; + + /* WebGL-specific enums */ + const GLenum MAX_CLIENT_WAIT_TIMEOUT_WEBGL = 0x9247; diff --git a/chromium-55.0.2883.75-more-codec-aliases.patch b/chromium-55.0.2883.75-more-codec-aliases.patch new file mode 100644 index 0000000..1dd517f --- /dev/null +++ b/chromium-55.0.2883.75-more-codec-aliases.patch @@ -0,0 +1,15 @@ +diff -up chromium-55.0.2883.75/third_party/WebKit/Source/wtf/text/TextCodecICU.cpp.morealiases chromium-55.0.2883.75/third_party/WebKit/Source/wtf/text/TextCodecICU.cpp +--- chromium-55.0.2883.75/third_party/WebKit/Source/wtf/text/TextCodecICU.cpp.morealiases 2016-12-12 15:53:06.545149310 -0500 ++++ chromium-55.0.2883.75/third_party/WebKit/Source/wtf/text/TextCodecICU.cpp 2016-12-12 15:55:25.808468122 -0500 +@@ -213,7 +213,11 @@ void TextCodecICU::registerEncodingNames + registrar("iso_8859-6", "ISO-8859-6"); + registrar("iso_8859-7", "ISO-8859-7"); + registrar("iso_8859-8", "ISO-8859-8"); ++ registrar("iso_8859-8-I", "ISO-8859-8-I"); + registrar("iso_8859-9", "windows-1254"); ++ registrar("iso_8859-10", "ISO-8859-10"); ++ registrar("iso_8859-13", "ISO-8859-13"); ++ registrar("iso_8859-14", "ISO-8859-14"); + registrar("iso_8859-15", "ISO-8859-15"); + registrar("koi8_r", "KOI8-R"); + registrar("x-cp1253", "windows-1253"); diff --git a/chromium-55.0.2883.75-sandbox-pie.patch b/chromium-55.0.2883.75-sandbox-pie.patch new file mode 100644 index 0000000..6aae0b0 --- /dev/null +++ b/chromium-55.0.2883.75-sandbox-pie.patch @@ -0,0 +1,30 @@ +diff -up chromium-55.0.2883.75/sandbox/linux/BUILD.gn.sandboxpie chromium-55.0.2883.75/sandbox/linux/BUILD.gn +--- chromium-55.0.2883.75/sandbox/linux/BUILD.gn.sandboxpie 2016-12-01 18:02:17.000000000 -0500 ++++ chromium-55.0.2883.75/sandbox/linux/BUILD.gn 2016-12-12 16:26:06.863426221 -0500 +@@ -279,11 +279,17 @@ if (is_linux) { + # For ULLONG_MAX + "-std=gnu99", + ++ "-fPIE", ++ + # These files have a suspicious comparison. + # TODO fix this and re-enable this warning. + "-Wno-sign-compare", + ] + ++ ldflags = [ ++ "-pie", ++ ] ++ + import("//build/config/compiler/compiler.gni") + import("//build/config/sanitizers/sanitizers.gni") + if (is_component_build || using_sanitizer) { +@@ -293,7 +299,7 @@ if (is_linux) { + # other flags that executable_config might have. + configs -= [ "//build/config:executable_config" ] + if (!use_gold) { +- ldflags = [ "-Wl,--disable-new-dtags" ] ++ ldflags += [ "-Wl,--disable-new-dtags" ] + } + } + diff --git a/chromium-55.0.2883.75-use_system_harfbuzz.patch b/chromium-55.0.2883.75-use_system_harfbuzz.patch new file mode 100644 index 0000000..5711881 --- /dev/null +++ b/chromium-55.0.2883.75-use_system_harfbuzz.patch @@ -0,0 +1,12 @@ +diff -up chromium-55.0.2883.75/ui/gfx/render_text_harfbuzz.h.use_system_harfbuzz chromium-55.0.2883.75/ui/gfx/render_text_harfbuzz.h +--- chromium-55.0.2883.75/ui/gfx/render_text_harfbuzz.h.use_system_harfbuzz 2016-12-12 16:09:03.873466669 -0500 ++++ chromium-55.0.2883.75/ui/gfx/render_text_harfbuzz.h 2016-12-12 16:09:57.507204326 -0500 +@@ -12,7 +12,7 @@ + + #include "base/macros.h" + #include "base/memory/scoped_vector.h" +-#include "third_party/harfbuzz-ng/src/hb.h" ++#include + #include "third_party/icu/source/common/unicode/ubidi.h" + #include "third_party/icu/source/common/unicode/uscript.h" + #include "ui/gfx/render_text.h" diff --git a/chromium.spec b/chromium.spec index 6537902..8c426ac 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1,9 +1,6 @@ # NEVER EVER EVER turn this on in official builds %global freeworld 0 -# gn is the new new new buildtool. *sigh* -%global use_gn 1 - # Leave this alone, please. %global target out/Release @@ -92,20 +89,19 @@ BuildRequires: libicu-devel >= 5.4 %global default_client_secret miEreAep8nuvTdvLums6qyLK %global chromoting_client_id 449907151817-8vnlfih032ni8c4jjps9int9t86k546t.apps.googleusercontent.com +%global majorversion 55 + Name: chromium%{chromium_channel} -Version: 54.0.2840.100 +Version: %{majorversion}.0.2883.75 Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) ### Chromium Fedora Patches ### -Patch0: chromium-54.0.2840.59-gcc5.patch +Patch0: chromium-55.0.2883.75-gcc5.patch Patch1: chromium-45.0.2454.101-linux-path-max.patch -Patch2: chromium-50.0.2661.86-addrfix.patch -# Google patched their bundled copy of icu 54 to include API functionality that wasn't added until 55. -# :P -Patch3: chromium-52.0.2723.2-system-icu-54-does-not-have-detectHostTimeZone.patch +Patch2: chromium-55.0.2883.75-addrfix.patch Patch4: chromium-46.0.2490.71-notest.patch # In file included from ../linux/directory.c:21: # In file included from ../../../../native_client/src/nonsfi/linux/abi_conversion.h:20: @@ -118,19 +114,15 @@ Patch6: chromium-47.0.2526.80-pnacl-fgnu-inline-asm.patch Patch7: chromium-47.0.2526.80-nacl-ignore-broken-fd-counter.patch # Use libusb_interrupt_event_handler from current libusbx (1.0.21-0.1.git448584a) Patch9: chromium-48.0.2564.116-libusb_interrupt_event_handler.patch -# Fix re2 unbundle gyp -Patch10: chromium-50.0.2661.94-unbundle-re2-fix.patch # Ignore deprecations in cups 2.2 # https://bugs.chromium.org/p/chromium/issues/detail?id=622493 -Patch12: chromium-52.0.2743.82-cups22.patch +Patch12: chromium-55.0.2883.75-cups22.patch # Add ICU Text Codec aliases (from openSUSE via Russian Fedora) -Patch14: chromium-52.0.2743.82-more-codec-aliases.patch +Patch14: chromium-55.0.2883.75-more-codec-aliases.patch # Use PIE in the Linux sandbox (from openSUSE via Russian Fedora) -Patch15: chromium-52.0.2743.82-sandbox-pie.patch +Patch15: chromium-55.0.2883.75-sandbox-pie.patch # Enable ARM CPU detection for webrtc (from archlinux via Russian Fedora) Patch16: chromium-52.0.2743.82-arm-webrtc.patch -# Do not force -m32 in icu compile on ARM (from archlinux via Russian Fedora) -Patch17: chromium-54.0.2840.59-arm-icu-fix.patch # Use /etc/chromium for master_prefs Patch18: chromium-52.0.2743.82-master-prefs-path.patch # Disable MADV_FREE (if set by glibc) @@ -143,9 +135,6 @@ Patch20: chromium-54.0.2840.59-gn-system.patch Patch21: chromium-53.0.2785.92-last-commit-position.patch # Fix issue where timespec is not defined when sys/stat.h is included. Patch22: chromium-53.0.2785.92-boringssl-time-fix.patch -# Fix gn build on Linux -# https://crrev.com/415208 -Patch23: chromium-53.0.2785.101-crrev-415028.patch # I wouldn't have to do this if there was a standard way to append extra compiler flags Patch24: chromium-54.0.2840.59-nullfix.patch # Add explicit includedir for jpeglib.h @@ -162,7 +151,7 @@ Patch28: chromium-54.0.2840.90-aura-browser-link-to-snapshot.patch ### Chromium Tests Patches ### Patch100: chromium-46.0.2490.86-use_system_opus.patch -Patch101: chromium-52.0.2723.2-use_system_harfbuzz.patch +Patch101: chromium-55.0.2883.75-use_system_harfbuzz.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ @@ -446,7 +435,7 @@ Chromium is an open-source web browser, powered by WebKit (Blink). %if 0%{?shared} %package libs Summary: Shared libraries used by chromium (and chrome-remote-desktop) -Requires: chromium-libs-media%{_isa} = %{version} +Requires: chromium-libs-media%{_isa} >= %{majorversion} %description libs Shared libraries used by chromium (and chrome-remote-desktop). @@ -516,23 +505,19 @@ members of the Chromium and WebDriver teams. %patch0 -p1 -b .gcc5 %patch1 -p1 -b .pathmax %patch2 -p1 -b .addrfix -%patch3 -p1 -b .system-icu %patch4 -p1 -b .notest -%patch6 -p1 -b .gnu-inline +# %%patch6 -p1 -b .gnu-inline %patch7 -p1 -b .ignore-fd-count %patch9 -p1 -b .modern-libusbx -%patch10 -p1 -b .unbundle-fix %patch12 -p1 -b .cups22 %patch14 -p1 -b .morealiases %patch15 -p1 -b .sandboxpie %patch16 -p1 -b .armwebrtc -%patch17 -p1 -b .armfix %patch18 -p1 -b .etc %patch19 -p1 -b .madv_free %patch20 -p1 -b .gnsystem %patch21 -p1 -b .lastcommit %patch22 -p1 -b .timefix -%patch23 -p1 -b .415208 %patch24 -p1 -b .nullfix %patch25 -p1 -b .jpegfix %patch26 -p1 -b .ldmemory @@ -681,140 +666,6 @@ CHROMIUM_BROWSER_GN_DEFINES+=' use_gtk3=false' CHROMIUM_BROWSER_GN_DEFINES+=' treat_warnings_as_errors=false' export CHROMIUM_BROWSER_GN_DEFINES -export CHROMIUM_BROWSER_GYP_DEFINES="\ -%ifarch x86_64 - -Dtarget_arch=x64 \ - -Dsystem_libdir=lib64 \ -%endif - -Dgoogle_api_key="%{api_key}" \ - -Dgoogle_default_client_id="%{default_client_id}" \ - -Dgoogle_default_client_secret="%{default_client_secret}" \ -%if 0%{?asan} - -Dasan=1 \ - -Dclang=1 \ - -Dhost_clang=1 \ - -Dclang_dynlib_flags="" \ - -Dclang_plugin_args="" \ - -Dclang_chrome_plugins_flags="" \ -%else - -Dclang=0 \ - -Dhost_clang=0 \ -%endif - -Ddisable_glibc=1 \ - -Dlinux_fpic=1 \ - -Ddisable_sse2=1 \ -%if 0%{?nonacl} - -Ddisable_nacl=1 \ -%else - -Ddisable_newlib_untar=1 \ - -Ddisable_pnacl_untar=1 \ - -Dpnacl_newlib_toolchain=out/Release/gen/sdk/linux_x86/pnacl_newlib/ \ - -Dpnacl_translator_dir=/usr/pnacl_translator \ -%endif - \ - -Duse_gconf=0 \ - -Duse_gio=1 \ - -Duse_gnome_keyring=1 \ - -Duse_pulseaudio=1 \ - -Duse_system_bzip2=1 \ - -Duse_system_flac=1 \ -%if 0%{?bundleharfbuzz} - -Duse_system_harfbuzz=0 \ -%else - -Duse_system_harfbuzz=1 \ -%endif -%if 0%{?bundleicu} - -Duse_system_icu=0 \ -%else - -Duse_system_icu=1 \ -%endif - -Dicu_use_data_file_flag=1 \ - -Duse_system_libevent=0 \ - -Duse_system_libjpeg=1 \ - -Duse_system_libpng=1 \ -%if %{bundlelibusbx} - -Duse_system_libusb=0 \ -%else - -Duse_system_libusb=1 \ -%endif - -Duse_system_libxml=1 \ - -Duse_system_libxslt=1 \ -%if %{bundleopus} - -Duse_system_opus=0 \ -%else - -Duse_system_opus=1 \ -%endif - -Duse_system_protobuf=0 \ -%if 0%{?bundlere2} -%else - -Duse_system_re2=1 \ -%endif - -Duse_system_libsrtp=0 \ - -Duse_system_xdg_utils=1 \ - -Duse_system_yasm=1 \ - -Duse_system_zlib=0 \ - \ - -Dlinux_link_libspeechd=1 \ - -Dlinux_link_gnome_keyring=1 \ - -Dlinux_link_gsettings=1 \ - -Dlinux_link_libpci=1 \ - -Dlinux_link_libgps=0 \ - -Dlinux_sandbox_path=%{chromium_path}/chrome-sandbox \ - -Dlinux_sandbox_chrome_path=%{chromium_path}/chromium-browser \ - -Dlinux_strip_binary=1 \ - -Dlinux_use_bundled_binutils=0 \ - -Dlinux_use_bundled_gold=0 \ - -Dlinux_use_gold_binary=0 \ - -Dlinux_use_gold_flags=0 \ - -Dlinux_use_libgps=0 \ - \ - -Dusb_ids_path=/usr/share/hwdata/usb.ids \ -%if 0%{?fedora} - -Dlibspeechd_h_prefix=speech-dispatcher/ \ -%endif - \ -%if %{freeworld} - -Dffmpeg_branding=ChromeOS \ - -Dproprietary_codecs=1 \ -%else - -Dffmpeg_branding=Chromium \ - -Dproprietary_codecs=0 \ -%endif -%if 0%{?shared} - -Dbuild_ffmpegsumo=1 \ - -Dffmpeg_component=shared_library \ -%else - -Dffmpeg_component=static_library \ -%endif - \ - -Dno_strict_aliasing=1 \ - -Dv8_no_strict_aliasing=1 \ - \ - -Dremove_webcore_debug_symbols=1 \ - -Dlogging_like_official_build=1 \ - -Denable_hotwording=0 \ - -Duse_aura=1 \ - -Denable_hidpi=1 \ - -Denable_touch_ui=1 \ - -Denable_pepper_cdms=1 \ - -Denable_webrtc=1 \ - -Denable_widevine=1 \ -%if 0%{gtk3} - -Duse_gtk3=1 \ -%else - -Dtoolkit_uses_gtk=0 \ -%endif -%if 0 - -Dbuildtype=Official \ -%endif - \ -%if 0%{?shared} - -Dcomponent=shared_library \ -%endif - -Duse_sysroot=0 \ - -Drelease_extra_cflags="-fno-delete-null-pointer-checks" \ - -Dwerror= -Dsysroot=" - # Remove most of the bundled libraries. Libraries specified below (taken from # Gentoo's Chromium ebuild) are the libraries that needs to be preserved. build/linux/unbundle/remove_bundled_libraries.py \ @@ -843,7 +694,6 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/snappy' \ 'third_party/speech-dispatcher' \ 'third_party/usb_ids' \ - 'third_party/woff2' \ 'third_party/xdg-utils' \ 'third_party/yasm' \ 'third_party/zlib' \ @@ -887,8 +737,8 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/catapult/third_party/py_vulcanize/third_party/rjsmin' \ 'third_party/ced' \ 'third_party/cld_2' \ + 'third_party/cld_3' \ 'third_party/cros_system_api' \ - 'third_party/cython/python_flags.py' \ 'third_party/devscripts' \ 'third_party/dom_distiller_js' \ 'third_party/expat' \ @@ -908,6 +758,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/libjingle' \ 'third_party/libphonenumber' \ 'third_party/libsecret' \ + 'third_party/libsrtp' \ 'third_party/libudev' \ 'third_party/libusb' \ 'third_party/libvpx' \ @@ -934,6 +785,8 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/pdfium/third_party/lcms2-2.6' \ 'third_party/pdfium/third_party/libjpeg' \ 'third_party/pdfium/third_party/libopenjpeg20' \ + 'third_party/pdfium/third_party/libpng16' \ + 'third_party/pdfium/third_party/libtiff' \ 'third_party/pdfium/third_party/zlib_v128' \ 'third_party/polymer' \ 'third_party/protobuf' \ @@ -952,6 +805,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/webdriver' \ 'third_party/webrtc' \ 'third_party/widevine' \ + 'third_party/woff2' \ 'third_party/x86inc' \ 'third_party/zlib/google' \ 'url/third_party/mozilla' \ @@ -970,7 +824,6 @@ sed -i 's|/opt/google/chrome-remote-desktop|%{crd_path}|g' remoting/host/setup/d export PATH=$PATH:%{_builddir}/depot_tools -%if %{use_gn} build/linux/unbundle/replace_gn_files.py --system-libraries \ flac \ %if 0%{?bundleharfbuzz} @@ -1002,19 +855,6 @@ build/linux/unbundle/replace_gn_files.py --system-libraries \ tools/gn/bootstrap/bootstrap.py -v --gn-gen-args "$CHROMIUM_BROWSER_GN_DEFINES" %{target}/gn gen --args="$CHROMIUM_BROWSER_GN_DEFINES" %{target} -%else -# Update gyp files according to our configuration -# If you will change something in the configuration please update it -# for build/gyp_chromium as well (and vice versa). -build/linux/unbundle/replace_gyp_files.py $CHROMIUM_BROWSER_GYP_DEFINES - -build/gyp_chromium \ - --depth . \ -%if 0%{?asan} - -Drelease_extra_cflags="-O1 -fno-inline-functions -fno-inline" \ -%endif - $CHROMIUM_BROWSER_GYP_DEFINES -%endif %if %{bundlelibusbx} # no hackity hack hack @@ -1717,6 +1557,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Mon Dec 12 2016 Tom Callaway 55.0.2883.75-1 +- update to 55.0.2883.75 + * Fri Dec 2 2016 Tom Callaway 54.0.2840.100-1 - update to 54.0.2840.100 diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index 07eb0a3..69778b2 100755 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -174,8 +174,6 @@ other_files=" BUILD.gn \ COPYING.LGPLv3 \ CREDITS \ CREDITS.chromium \ - ffmpeg.gyp \ - ffmpeg_generated.gypi \ ffmpeg_generated.gni \ ffmpeg_options.gni \ ffmpegsumo.ver \ diff --git a/sources b/sources index d150e97..c0e7f5d 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ -49a7f897775cce21d2b69968b8af1cea depot_tools.git-master.tar.gz -8280c0644492bac9f59f4e25ed11d309 policy_templates.zip -783e9b05be053e9eb081a8632f56e8df chromium-54.0.2840.100-clean.tar.xz +SHA512 (chromium-55.0.2883.75-clean.tar.xz) = 51da876c2c964fe2338c43e2b4a99a9ddbf44ffa1e3464f6585fa5ef6eada72489dd4cab89f782b1cf2a407c383a42457c63f6b9c4084bb4fe06caf914efde72 +SHA512 (policy_templates.zip) = a297c5a6753e5607cb5d440b75cbc1c6153d09118d6401683aa2bca73eef7145c8964569fc12a0106cf1d2b9f93af32c1b91d25c742d878d30385498668fa0db +SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 From f81ff187ef0a9bbe55e2ded83ec611af0d76d940 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 13 Dec 2016 14:24:23 -0500 Subject: [PATCH 0047/1449] 55.0.2883.87 --- .gitignore | 1 + chromium.spec | 9 ++++++--- sources | 2 +- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 58869a3..738581c 100644 --- a/.gitignore +++ b/.gitignore @@ -14,3 +14,4 @@ /chromium-54.0.2840.100.tar.xz /chromium-54.0.2840.100-clean.tar.xz /chromium-55.0.2883.75-clean.tar.xz +/chromium-55.0.2883.87-clean.tar.xz diff --git a/chromium.spec b/chromium.spec index 8c426ac..537ea7d 100644 --- a/chromium.spec +++ b/chromium.spec @@ -16,7 +16,7 @@ # Requires is trickier. %global __provides_exclude_from %{chromium_path}/.*\\.so|%{chromium_path}/lib/.*\\.so -%global privlibs libaccessibility|libaura_extra|libaura|libbase_i18n|libbase|libblink_common|libblink_core|libblink_modules|libblink_platform|libblink_web|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture|libcc_blink|libcc_ipc|libcc_proto|libcc|libcc_surfaces|libchromium_sqlite3|libcloud_policy_proto_generated_compile|libcloud_policy_proto|libcommon|libcompositor|libcontent|libcrcrypto|libdbus|libdevice_battery|libdevice_core|libdevice_event_log|libdevice_gamepad|libdevice_geolocation|libdevices|libdevice_vibration|libdisplay_compositor|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libevents_base|libevents_devices_x11|libevents_ipc|libevents_ozone_layout|libevents|libevents_x|libffmpeg|libfont_service_library|libgcm|libgeometry|libgesture_detection|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_x11|libgin|libgles2_c_lib|libgles2_implementation|libgles2_utils|libGLESv2|libgl_init|libgl_wrapper|libgpu|libgtk2ui|libicui18n|libicuuc|libipc|libkeyboard|libkeyboard_with_content|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libmedia_blink|libmedia_gpu|libmedia|libmemory_coordinator_browser|libmemory_coordinator_child|libmemory_coordinator_common|libmessage_center|libmidi|libmojo_blink_lib|libmojo_common_lib|libmojo_ime_lib|libmojo_public_system|libmojo_system_impl|libnative_theme|libnet|libnet_with_v8|libonc|libplatform|libpolicy_component|libpolicy_proto|libpower_save_blocker|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|librange|libsandbox_services|libseccomp_bpf|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libtranslator|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_library|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libuser_prefs|libv8|libviews|libwebdata_common|libweb_dialogs|libwebview|libwidevinecdm|libwm|libwtf|libx11_events_platform|libx11_window +%global privlibs libaccessibility|libaura_extra|libaura|libbase_i18n|libbase|libbindings|libblink_common|libblink_core|libblink_modules|libblink_platform|libblink_web|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture|libcc_blink|libcc_ipc|libcc_proto|libcc|libcc_surfaces|libchromium_sqlite3|libcloud_policy_proto_generated_compile|libcommon|libcompositor|libcontent|libcrcrypto|libdbus|libdevice_battery|libdevice_core|libdevice_event_log|libdevice_gamepad|libdevices|libdevice_vibration|libdisplay_compositor|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libevents_base|libevents_devices_x11|libevents_ipc|libevents_ozone_layout|libevents|libevents_x|libffmpeg|libfont_service_library|libgcm|libgeometry|libgeolocation|libgesture_detection|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_x11|libgin|libgles2_c_lib|libgles2_implementation|libgles2_utils|libGLESv2|libgl_init|libgl_wrapper|libgpu|libgtk2ui|libicui18n|libicuuc|libipc|libkeyboard|libkeyboard_with_content|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libmedia_blink|libmedia_gpu|libmedia|libmessage_center|libmidi|libmojo_common_lib|libmojo_ime_lib|libmojo_public_system_cpp|libmojo_public_system|libmojo_system_impl|libnative_theme|libnet|libnet_with_v8|libonc|libplatform|libpolicy_component|libpolicy_proto|libpower_save_blocker|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|librange|libsandbox_services|libseccomp_bpf|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtest_ime_driver_library|libtime_zone_monitor|libtracing_library|libtracing|libtranslator|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_library|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libuser_manager|libuser_prefs|libv8|libviews|libwebdata_common|libweb_dialogs|libwebview|libwidevinecdm|libwm|libwtf|libx11_events_platform|libx11_window %global __requires_exclude ^(%{privlibs})\\.so # Try to not use the Xvfb as it is slow.. @@ -92,7 +92,7 @@ BuildRequires: libicu-devel >= 5.4 %global majorversion 55 Name: chromium%{chromium_channel} -Version: %{majorversion}.0.2883.75 +Version: %{majorversion}.0.2883.87 Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home @@ -1503,7 +1503,7 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %lang(vi) %{chromium_path}/locales/vi.pak %lang(zh_CN) %{chromium_path}/locales/zh-CN.pak %lang(zh_TW) %{chromium_path}/locales/zh-TW.pak -%{chromium_path}/locales/fake-bidi.pak +# %%{chromium_path}/locales/fake-bidi.pak %{chromium_path}/resources/ %{_mandir}/man1/%{chromium_browser_channel}.* %{_datadir}/icons/hicolor/256x256/apps/%{chromium_browser_channel}.png @@ -1557,6 +1557,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Tue Dec 13 2016 Tom Callaway 55.0.2883.87-1 +- update to 55.0.2883.87 + * Mon Dec 12 2016 Tom Callaway 55.0.2883.75-1 - update to 55.0.2883.75 diff --git a/sources b/sources index c0e7f5d..70a5cfc 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ -SHA512 (chromium-55.0.2883.75-clean.tar.xz) = 51da876c2c964fe2338c43e2b4a99a9ddbf44ffa1e3464f6585fa5ef6eada72489dd4cab89f782b1cf2a407c383a42457c63f6b9c4084bb4fe06caf914efde72 SHA512 (policy_templates.zip) = a297c5a6753e5607cb5d440b75cbc1c6153d09118d6401683aa2bca73eef7145c8964569fc12a0106cf1d2b9f93af32c1b91d25c742d878d30385498668fa0db SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 +SHA512 (chromium-55.0.2883.87-clean.tar.xz) = 36320758f10e644d49c95943330d49054a3f202ef25d96d8c3582a5ec6785e1465365924c4e535101ff58dd17076737b451790c4821bd2ddeb1f0061b0857fc5 From ae406ea2831f9b6546c074f721b713bd76a122ac Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 13 Dec 2016 15:18:50 -0500 Subject: [PATCH 0048/1449] use bundled jinja2 on RHEL (or Fedora older than 23) --- chromium.spec | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 537ea7d..ef6b813 100644 --- a/chromium.spec +++ b/chromium.spec @@ -93,7 +93,7 @@ BuildRequires: libicu-devel >= 5.4 Name: chromium%{chromium_channel} Version: %{majorversion}.0.2883.87 -Release: 1%{?dist} +Release: 1%{?dist}.1 Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -295,7 +295,9 @@ BuildRequires: pulseaudio-libs-devel BuildRequires: python-beautifulsoup4 BuildRequires: python-BeautifulSoup BuildRequires: python-html5lib +%if 0%{?fedora} >= 23 BuildRequires: python-jinja2 +%endif BuildRequires: python-markupsafe BuildRequires: python-ply BuildRequires: python-simplejson @@ -813,8 +815,11 @@ build/linux/unbundle/remove_bundled_libraries.py \ --do-remove # Look, I don't know. This package is spit and chewing gum. Sorry. +# RHEL jinja2 is too old, even in 7. +%if 0%{?fedora} >= 23 rm -rf third_party/jinja2 ln -s %{python_sitelib}/jinja2 third_party/jinja2 +%endif rm -rf third_party/markupsafe ln -s %{python_sitearch}/markupsafe third_party/markupsafe # We should look on removing other python packages as well i.e. ply @@ -1557,6 +1562,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Tue Dec 13 2016 Tom Callaway 55.0.2883.87-1.1 +- use bundled jinja2 on RHEL (or Fedora older than 23) + * Tue Dec 13 2016 Tom Callaway 55.0.2883.87-1 - update to 55.0.2883.87 From b4cff4b90b440ebfcb123b176ec562bd9f2a0424 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 13 Dec 2016 15:30:36 -0500 Subject: [PATCH 0049/1449] preserve jinja2 dir --- chromium.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/chromium.spec b/chromium.spec index ef6b813..d83a594 100644 --- a/chromium.spec +++ b/chromium.spec @@ -752,6 +752,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/google_input_tools/third_party/closure_library/third_party/closure' \ 'third_party/hunspell' \ 'third_party/iccjpeg' \ + 'third_party/jinja2' \ 'third_party/jstemplate' \ 'third_party/khronos' \ 'third_party/leveldatabase' \ From 96c125f161993ea81b6b7511e302edd9de8e5ac4 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 14 Dec 2016 11:22:24 -0500 Subject: [PATCH 0050/1449] fix rvalue issue in remoting code --- chromium-55.0.2883.87-rvalue-fix.patch | 17 +++++++++++++++++ chromium.spec | 5 +++++ 2 files changed, 22 insertions(+) create mode 100644 chromium-55.0.2883.87-rvalue-fix.patch diff --git a/chromium-55.0.2883.87-rvalue-fix.patch b/chromium-55.0.2883.87-rvalue-fix.patch new file mode 100644 index 0000000..d9ec022 --- /dev/null +++ b/chromium-55.0.2883.87-rvalue-fix.patch @@ -0,0 +1,17 @@ +diff -up chromium-55.0.2883.87/buildtools/third_party/libc++/trunk/test/std/input.output/iostream.format/input.streams/istream.rvalue chromium-55.0.2883.87/buildtools/third_party/libc++/trunk/test/std/input.output/iostream.format/input.streams/istream +Only in chromium-55.0.2883.87/buildtools/third_party/libc++/trunk/test/std/input.output/iostream.format/input.streams/istream: istream.assign +Only in chromium-55.0.2883.87/buildtools/third_party/libc++/trunk/test/std/input.output/iostream.format/input.streams/istream: istream.cons +Only in chromium-55.0.2883.87/buildtools/third_party/libc++/trunk/test/std/input.output/iostream.format/input.streams/istream: istream_sentry +diff -up chromium-55.0.2883.87/buildtools/third_party/libc++/trunk/test/std/input.output/iostream.format/output.streams/ostream.rvalue chromium-55.0.2883.87/buildtools/third_party/libc++/trunk/test/std/input.output/iostream.format/output.streams/ostream +diff -up chromium-55.0.2883.87/remoting/host/fake_desktop_environment.cc.rvalue chromium-55.0.2883.87/remoting/host/fake_desktop_environment.cc +--- chromium-55.0.2883.87/remoting/host/fake_desktop_environment.cc.rvalue 2016-12-14 11:19:16.150103994 -0500 ++++ chromium-55.0.2883.87/remoting/host/fake_desktop_environment.cc 2016-12-14 11:19:44.003563271 -0500 +@@ -84,7 +84,7 @@ FakeDesktopEnvironment::CreateVideoCaptu + std::unique_ptr result( + new DesktopCapturerProxy(capture_thread_)); + result->set_capturer(std::move(fake_capturer)); +- return result; ++ return std::move(result); + } + + std::unique_ptr diff --git a/chromium.spec b/chromium.spec index d83a594..c7fe854 100644 --- a/chromium.spec +++ b/chromium.spec @@ -148,6 +148,9 @@ Patch27: chromium-54.0.2840.90-setopaque.patch # /usr/bin/ld.bfd: note: '_ZN2ui31GrabWindowSnapshotAndScaleAsyncEPN4aura6WindowERKN3gfx4RectERKNS3_4SizeE13scoped_refptrIN4base10TaskRunnerEERKNSB_8CallbackIFvRKNS3_5ImageEELNSB_8internal8CopyModeE1EEE' is defined in DSO ./libsnapshot.so so try adding it to the linker command line # ./libsnapshot.so: could not read symbols: Invalid operation Patch28: chromium-54.0.2840.90-aura-browser-link-to-snapshot.patch +# Fix rvalue issue in remoting code +# https://chromium.googlesource.com/chromium/src.git/+/29bfbecb49572b61264de7acccf8b23942bba43d%5E%21/#F0 +Patch29: chromium-55.0.2883.87-rvalue-fix.patch ### Chromium Tests Patches ### Patch100: chromium-46.0.2490.86-use_system_opus.patch @@ -525,6 +528,7 @@ members of the Chromium and WebDriver teams. %patch26 -p1 -b .ldmemory %patch27 -p1 -b .setopaque %patch28 -p1 -b .aurasnapshot +%patch29 -p1 -b .rvalue ### Chromium Tests Patches ### %patch100 -p1 -b .use_system_opus @@ -1565,6 +1569,7 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog * Tue Dec 13 2016 Tom Callaway 55.0.2883.87-1.1 - use bundled jinja2 on RHEL (or Fedora older than 23) +- fix rvalue issue in remoting code * Tue Dec 13 2016 Tom Callaway 55.0.2883.87-1 - update to 55.0.2883.87 From 53efa602ea05438524f0e361cca2e4b536c29785 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 3 Feb 2017 03:52:09 -0500 Subject: [PATCH 0051/1449] update ffmpeg clean scripts, thanks to Tomas Popela --- clean_ffmpeg.sh | 23 +++++++++++++++++++++++ get_free_ffmpeg_source_files.py | 11 ++++++++--- 2 files changed, 31 insertions(+), 3 deletions(-) mode change 100755 => 100644 clean_ffmpeg.sh mode change 100755 => 100644 get_free_ffmpeg_source_files.py diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh old mode 100755 new mode 100644 index 69778b2..1643cdd --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -66,10 +66,12 @@ header_files=" libavcodec/x86/inline_asm.h \ libavcodec/fft-internal.h \ libavcodec/fft_table.h \ libavcodec/flac.h \ + libavcodec/flacdsp.h \ libavcodec/frame_thread_encoder.h \ libavcodec/get_bits.h \ libavcodec/h263dsp.h \ libavcodec/h264chroma.h \ + libavcodec/hpeldsp.h \ libavcodec/idctdsp.h \ libavcodec/internal.h \ libavcodec/mathops.h \ @@ -91,11 +93,17 @@ header_files=" libavcodec/x86/inline_asm.h \ libavcodec/rl.h \ libavcodec/rnd_avg.h \ libavcodec/thread.h \ + libavcodec/unary.h \ libavcodec/version.h \ + libavcodec/videodsp.h \ + libavcodec/vlc.h \ + libavcodec/vorbisdsp.h \ libavcodec/vp3data.h \ + libavcodec/vp3dsp.h \ libavcodec/vp56.h \ libavcodec/vp56dsp.h \ libavcodec/vp8data.h \ + libavcodec/vp8dsp.h \ libavformat/audiointerleave.h \ libavformat/avformat.h \ libavformat/dv.h \ @@ -128,6 +136,9 @@ header_files=" libavcodec/x86/inline_asm.h \ libavutil/cpu.h \ libavutil/cpu_internal.h \ libavutil/dynarray.h \ + libavutil/ffmath.h \ + libavutil/fixed_dsp.h \ + libavutil/float_dsp.h \ libavutil/internal.h \ libavutil/intfloat.h \ libavutil/intreadwrite.h \ @@ -147,20 +158,32 @@ header_files=" libavcodec/x86/inline_asm.h \ manual_files=" libavcodec/x86/hpeldsp_rnd_template.c \ libavcodec/x86/rnd_template.c \ + libavcodec/x86/videodsp.asm \ libavcodec/x86/videodsp_init.c \ libavcodec/x86/vorbisdsp_init.c \ libavcodec/bit_depth_template.c \ libavcodec/fft_template.c \ + libavcodec/flacdec.c \ + libavcodec/flacdsp.c \ + libavcodec/flacdsp_template.c \ + libavcodec/flacdsp_lpc_template.c \ libavcodec/h264pred_template.c \ libavcodec/hpel_template.c \ + libavcodec/hpeldsp.c \ libavcodec/mdct_template.c \ libavcodec/pel_template.c \ libavcodec/utils.c \ + libavcodec/videodsp.c \ libavcodec/videodsp_template.c \ + libavcodec/vorbisdsp.c \ + libavcodec/vp3dsp.c \ + libavcodec/vp8dsp.c \ libavformat/options.c \ libavformat/pcm.c \ libavformat/utils.c \ libavutil/cpu.c \ + libavutil/fixed_dsp.c \ + libavutil/float_dsp.c \ libavutil/x86/cpu.c \ libavutil/x86/float_dsp_init.c \ libavutil/x86/x86inc.asm \ diff --git a/get_free_ffmpeg_source_files.py b/get_free_ffmpeg_source_files.py old mode 100755 new mode 100644 index e659d63..5a0e421 --- a/get_free_ffmpeg_source_files.py +++ b/get_free_ffmpeg_source_files.py @@ -50,19 +50,24 @@ def parse_ffmpeg_gyni_file(gyni_path, arch_not_arm): # Get all the sections. sections = re.findall(r"if (.*?})", content, re.DOTALL) for section in sections: - # Get all the conditions (first group) and sources (second group)for the + # Get all the conditions (first group) and sources (second group) for the # current section. blocks = re.findall(r"(\(.*?\))\s\{(.*?)\}", section, re.DOTALL) for block in blocks: conditions = re.findall(r"\(?\((.*?)\)", block[0]) + inserted = False for condition in conditions: - limitations = ['is_linux', 'ffmpeg_branding == "Chromium"'] - if all(limitation in condition for limitation in limitations): + if inserted: + break + limitations = ['ffmpeg_branding == "Chrome"', 'ffmpeg_branding == "ChromeOS"'] + if ('is_linux' in condition) and not any(limitation in condition for limitation in limitations): if (arch_not_arm): if ('x64' in condition) or ('x86' in condition): parse_sources (block[1], output_sources, arch_not_arm) + inserted = True else: parse_sources (block[1], output_sources, arch_not_arm) + inserted = True print ' '.join(output_sources) From 634b9db1bfd19ef113a77b8d4fa7debb71112560 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 10 Feb 2017 07:29:06 +0000 Subject: [PATCH 0052/1449] - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild --- chromium.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index c7fe854..7444055 100644 --- a/chromium.spec +++ b/chromium.spec @@ -93,7 +93,7 @@ BuildRequires: libicu-devel >= 5.4 Name: chromium%{chromium_channel} Version: %{majorversion}.0.2883.87 -Release: 1%{?dist}.1 +Release: 2%{?dist}.1 Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1567,6 +1567,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Fri Feb 10 2017 Fedora Release Engineering - 55.0.2883.87-2.1 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + * Tue Dec 13 2016 Tom Callaway 55.0.2883.87-1.1 - use bundled jinja2 on RHEL (or Fedora older than 23) - fix rvalue issue in remoting code From 72f2502c91e598bd36f0f79cfeeae1d0e138d56d Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 10 Feb 2017 14:29:26 -0500 Subject: [PATCH 0053/1449] 56.0.2924.87 --- .gitignore | 1 + chromium-56.0.2924.87-gcc5.patch | 354 ++++++++++++++++++++++++++++ chromium.spec | 22 +- chromium_chrome_appdata_files.patch | 129 ++++++++++ sources | 4 +- 5 files changed, 497 insertions(+), 13 deletions(-) create mode 100644 chromium-56.0.2924.87-gcc5.patch create mode 100644 chromium_chrome_appdata_files.patch diff --git a/.gitignore b/.gitignore index 738581c..b8bbaec 100644 --- a/.gitignore +++ b/.gitignore @@ -15,3 +15,4 @@ /chromium-54.0.2840.100-clean.tar.xz /chromium-55.0.2883.75-clean.tar.xz /chromium-55.0.2883.87-clean.tar.xz +/chromium-56.0.2924.87-clean.tar.xz diff --git a/chromium-56.0.2924.87-gcc5.patch b/chromium-56.0.2924.87-gcc5.patch new file mode 100644 index 0000000..902f92b --- /dev/null +++ b/chromium-56.0.2924.87-gcc5.patch @@ -0,0 +1,354 @@ +diff -up chromium-56.0.2924.87/third_party/cld_2/src/internal/cld_generated_cjk_uni_prop_80.cc.gcc5 chromium-56.0.2924.87/third_party/cld_2/src/internal/cld_generated_cjk_uni_prop_80.cc +--- chromium-56.0.2924.87/third_party/cld_2/src/internal/cld_generated_cjk_uni_prop_80.cc.gcc5 2017-02-01 21:03:47.000000000 -0500 ++++ chromium-56.0.2924.87/third_party/cld_2/src/internal/cld_generated_cjk_uni_prop_80.cc 2017-02-09 10:38:38.319790897 -0500 +@@ -165,8 +165,8 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + // state[16 + 2] 0x000000 Byte 2 of 3 (relative offsets) + X__,X__,X__,X__,X__,X__,X__,X__, X__,X__,X__,X__,X__,X__,X__,X__, + X__,X__,X__,X__,X__,X__,X__,X__, X__,X__,X__,X__,X__,X__,X__,X__, +--14,-14,-14,-14,-14,-14,-14,-14, -14,-14,-14,-14,-14,-14,-14,-14, +--14,-14,-14,-14,-14,-14,-14,-14, -14,-14,-14,-14,-14,-14,-14,-14, ++(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14, (uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14, ++(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14, (uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14, + + // state[17 + 2] 0x0031c0 Byte 3 of 3 (property) + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, +@@ -259,10 +259,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 229,229,229, 3,208, 0,229, 5, 233, 0,229,229,229,208,229,229, + + // state[32 + 2] 0x002000 Byte 2 of 3 (relative offsets) +--30,-30,-30,-30,-30,-30,-30,-30, -30,-30,-30,-30,-30,-30,-30,-30, +--30,-30,-30,-30,-30,-30,-30,-30, -30,-30,-30,-30,-30,-30,-30,-30, +--30,-30,-30,-30,-30,-30,-30,-30, -30,-30,-30,-30,-30,-30,-30,-30, +--30,-30,-30,-30,-30,-30,-30,-30, -30,-30,-30,-30,-30,-30,-30,-30, ++(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, (uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, ++(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, (uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, ++(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, (uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, ++(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, (uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, + + // state[33 + 2] 0x003780 Byte 3 of 3 (property) + 229,208,229,229,208,229,229,229, 208,208,208,208,208, 4, 6,208, +@@ -355,10 +355,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 228,229,229,229,229,233,233, 6, 208,229, 3,229,233, 6, 6, 0, + + // state[48 + 2] 0x001000 Byte 2 of 3 (relative offsets) +--46,-46,-46,-46,-42,-41,-40,-39, -46,-46,-46,-46,-46,-46,-46,-46, +--46,-46,-46,-46,-46,-46,-46,-46, -46,-46,-46,-46,-46,-46,-46,-46, +--46,-46,-46,-46,-46,-46,-46,-46, -46,-46,-46,-46,-46,-46,-46,-46, +--46,-46,-46,-46,-46,-46,-46,-46, -46,-46,-46,-46,-46,-46,-46,-46, ++(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-42,(uint8)-41,(uint8)-40,(uint8)-39, (uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, ++(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, (uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, ++(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, (uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, ++(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, (uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, + + // state[49 + 2] 0x003b40 Byte 3 of 3 (property) + 6,227,208,233,208, 3, 3,208, 208,229, 0,229,233,219, 0, 6, +@@ -451,10 +451,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 229,208,208,208,217,208,229,229, 229,229,208,217,208,229,229,229, + + // state[64 + 2] 0x003000 Byte 2 of 3 (relative offsets) +--54,-53,-52,-51,-50,-58,-49,-47, -62,-62,-62,-62,-62,-62,-62,-62, +--46,-45,-44,-43,-42,-41,-40,-39, -38,-37,-36,-35,-34,-33,-31,-30, +--29,-28,-27,-26,-25,-24,-23,-22, -21,-20,-19,-18,-17,-15,-14,-13, +--12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, ++(uint8)-54,(uint8)-53,(uint8)-52,(uint8)-51,(uint8)-50,(uint8)-58,(uint8)-49,(uint8)-47, (uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62, ++(uint8)-46,(uint8)-45,(uint8)-44,(uint8)-43,(uint8)-42,(uint8)-41,(uint8)-40,(uint8)-39, (uint8)-38,(uint8)-37,(uint8)-36,(uint8)-35,(uint8)-34,(uint8)-33,(uint8)-31,(uint8)-30, ++(uint8)-29,(uint8)-28,(uint8)-27,(uint8)-26,(uint8)-25,(uint8)-24,(uint8)-23,(uint8)-22, (uint8)-21,(uint8)-20,(uint8)-19,(uint8)-18,(uint8)-17,(uint8)-15,(uint8)-14,(uint8)-13, ++(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, + + // state[65 + 2] 0x003f00 Byte 3 of 3 (property) + 217,217,208, 3,208,217,208,208, 6,229,208,228,229,229,208,229, +@@ -547,10 +547,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 229,208,229,229,208,229,233, 0, 208,208,229,208,227,229,229,229, + + // state[80 + 2] 0x004000 Byte 2 of 3 (relative offsets) +--11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, ++(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, + 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, +- 38, 39, 40, 41, 42, 43, 44,-78, 45, 46, 47, 48, 49, 50, 51, 52, ++ 38, 39, 40, 41, 42, 43, 44,(uint8)-78, 45, 46, 47, 48, 49, 50, 51, 52, + + // state[81 + 2] 0x0042c0 Byte 3 of 3 (property) + 229, 0,229,229,229, 3, 4, 4, 229,229,229,229,208,229, 0,208, +@@ -931,7 +931,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 0,142, 98, 28,117,206,212,212, 220, 15, 0,231,199,231,111, 28, + + // state[144 + 2] 0x005000 Byte 2 of 3 (relative offsets) +--11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, ++(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, + 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, + 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, +@@ -1315,7 +1315,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 16, 15,211,118, 0,231, 68,231, 0, 99,161, 0,115,221,144,140, + + // state[208 + 2] 0x006000 Byte 2 of 3 (relative offsets) +--10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, ++(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, + 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, + 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, +@@ -1699,7 +1699,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 119, 16, 51, 0, 0, 68,136, 72, 144,118, 87,201,191,136, 78,233, + + // state[272 + 2] 0x007000 Byte 2 of 3 (relative offsets) +- -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, ++ (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, + 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, + 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, + 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, +@@ -2083,7 +2083,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 212,212, 0,126,140,220,220, 0, 0, 0,127,118,106, 0,199, 0, + + // state[336 + 2] 0x008000 Byte 2 of 3 (relative offsets) +- -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, 8, ++ (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, + 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, + 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, +@@ -2467,7 +2467,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 0,122, 0,231,100,232, 0, 0, 117, 0,206,231, 0, 0,231, 0, + + // state[400 + 2] 0x009000 Byte 2 of 3 (relative offsets) +- -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, 8, 9, ++ (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, 9, + 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, + 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, + 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, +@@ -2851,10 +2851,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + + // state[464 + 2] 0x00a000 Byte 2 of 3 (relative offsets) +- -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, +- -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, +- -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, +- -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, ++ (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, ++ (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, ++ (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, ++ (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, + + // state[465 + 2] 0x000080 Byte 2 of 2 (property) + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, +@@ -2947,10 +2947,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 208,208,208,208, 5, 6,208, 2, 0, 6, 6, 5,208,208,208, 6, + + // state[480 + 2] 0x00b000 Byte 2 of 3 (relative offsets) +--20,-20,-20,-20,-20,-20,-20,-20, -20,-20,-20,-20,-20,-20,-20,-20, +--20,-20,-20,-20,-20,-20,-20,-20, -20,-20,-20,-20,-20,-20,-20,-20, +--20,-20,-20,-20,-20,-20,-20,-20, -20,-20,-20,-20,-20,-20,-20,-20, +--20,-20,-20,-20,-20,-20,-20,-20, -20,-20,-20,-20,-20,-20,-20,-20, ++(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, (uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, ++(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, (uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, ++(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, (uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, ++(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, (uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, + + // state[481 + 2] 0x020100 Byte 4 of 4 (property) + 2, 6, 5, 6, 5,229, 5,208, 208,208,208,208,208,208,208,229, +@@ -3043,10 +3043,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 208,208, 5, 5, 5,208,208, 2, 229, 5, 5, 5, 5, 5, 6,208, + + // state[496 + 2] 0x00d000 Byte 2 of 3 (relative offsets) +--35,-35,-35,-35,-35,-35,-35,-35, -35,-35,-35,-35,-35,-35,-35,-35, +--35,-35,-35,-35,-35,-35,-35,-35, -35,-35,-35,-35,-35,-35,-34,-33, +--33,-33,-33,-33,-33,-33,-33,-33, -33,-33,-33,-33,-33,-33,-33,-33, +--33,-33,-33,-33,-33,-33,-33,-33, -33,-33,-33,-33,-33,-33,-33,-33, ++(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35, (uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35, ++(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35, (uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-34,(uint8)-33, ++(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33, (uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33, ++(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33, (uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33, + + // state[497 + 2] 0x0204c0 Byte 4 of 4 (property) + 2, 2, 5, 5, 5, 2,208, 2, 5, 5, 6,208,208, 5, 5, 5, +@@ -3139,10 +3139,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 208,208, 5, 5, 5, 5, 6, 6, 208,208, 2,208,208,208,208,208, + + // state[512 + 2] 0x00f000 Byte 2 of 3 (relative offsets) +--47,-47,-47,-47,-47,-47,-47,-47, -47,-47,-47,-47,-47,-47,-47,-47, +--47,-47,-47,-47,-47,-47,-47,-47, -47,-47,-47,-47,-47,-47,-47,-47, +--47,-47,-47,-47,-46,-45,-44,-43, -42,-41,-44,-40,-47,-47,-47,-47, +--47,-47,-47,-47,-47,-47,-47,-47, -47,-47,-47,-47,-47,-39,-38,-37, ++(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, (uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, ++(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, (uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, ++(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-46,(uint8)-45,(uint8)-44,(uint8)-43, (uint8)-42,(uint8)-41,(uint8)-44,(uint8)-40,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, ++(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, (uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-39,(uint8)-38,(uint8)-37, + + // state[513 + 2] 0x020880 Byte 4 of 4 (property) + 5, 5, 5, 6,208,208,208,208, 208,208, 5, 5, 6, 6,208,208, +@@ -3235,10 +3235,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 5, 6,208,218,208,208,208,218, 208, 6,227,229, 6, 6, 6,208, + + // state[528 + 2] 0x020000 Byte 3 of 4 (relative offsets) +--52,-51,-50,-49,-47,-46,-45,-44, -43,-42,-41,-40,-39,-38,-37,-36, +--35,-34,-33,-31,-30,-29,-28,-27, -26,-25,-24,-23,-22,-21,-20,-19, +--18,-17,-15,-14,-13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, +- -1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, ++(uint8)-52,(uint8)-51,(uint8)-50,(uint8)-49,(uint8)-47,(uint8)-46,(uint8)-45,(uint8)-44, (uint8)-43,(uint8)-42,(uint8)-41,(uint8)-40,(uint8)-39,(uint8)-38,(uint8)-37,(uint8)-36, ++(uint8)-35,(uint8)-34,(uint8)-33,(uint8)-31,(uint8)-30,(uint8)-29,(uint8)-28,(uint8)-27, (uint8)-26,(uint8)-25,(uint8)-24,(uint8)-23,(uint8)-22,(uint8)-21,(uint8)-20,(uint8)-19, ++(uint8)-18,(uint8)-17,(uint8)-15,(uint8)-14,(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, ++ (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, + + // state[529 + 2] 0x020c40 Byte 4 of 4 (property) + 227, 5, 5, 5, 2, 2, 2, 2, 213, 2, 2, 2, 2, 2,208, 6, +@@ -3427,7 +3427,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 208,208,208,208,208,208,208,208, 208, 6, 6, 6, 6, 2, 5, 5, + + // state[560 + 2] 0x021000 Byte 3 of 4 (relative offsets) +--16,-15,-14,-13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, ++(uint8)-16,(uint8)-15,(uint8)-14,(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, + 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, + 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, + 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, +@@ -3811,7 +3811,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 5, 5, 5, 6, 6, 6, 5,208, 208,229,208,208, 5, 5, 5, 5, + + // state[624 + 2] 0x022000 Byte 3 of 4 (relative offsets) +--15,-14,-13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, ++(uint8)-15,(uint8)-14,(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, + 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, + 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, + 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, +@@ -4195,7 +4195,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 6, 6, 4, 5,208,208,208,208, 208,208,229, 6, 5, 6, 6, 6, + + // state[688 + 2] 0x023000 Byte 3 of 4 (relative offsets) +--14,-13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, ++(uint8)-14,(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, + 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, + 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, + 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, +@@ -4579,7 +4579,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 5, 5, 5, 5, 5, 5, 5, 6, 208,208,208,208,208,208, 6, 6, + + // state[752 + 2] 0x024000 Byte 3 of 4 (relative offsets) +--13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, ++(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, + 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, + 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, +@@ -4963,7 +4963,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 229, 6, 2, 2, 2, 2, 2, 2, 2, 2, 2, 5, 2, 2, 6,229, + + // state[816 + 2] 0x025000 Byte 3 of 4 (relative offsets) +--12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, ++(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, + 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, + 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, + 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, +@@ -5347,7 +5347,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 6, 6, 6, 5, 5, 5, 5, 6, 6, 6, 3, 6,229,208,208,229, + + // state[880 + 2] 0x026000 Byte 3 of 4 (relative offsets) +--11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, ++(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, + 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, + 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, +@@ -5731,7 +5731,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 208, 6, 6,208,208,208,208,208, 6, 6, 6,216, 5, 5, 5, 5, + + // state[944 + 2] 0x027000 Byte 3 of 4 (relative offsets) +--10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, ++(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, + 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, + 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, +@@ -6115,7 +6115,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 5, 5, 5, 6,208,208, 6, 6, 208,229,208,208,208, 5, 5, 5, + + // state[1008 + 2] 0x028000 Byte 3 of 4 (relative offsets) +- -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, ++ (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, + 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, + 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, + 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, +@@ -6499,7 +6499,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 208,208, 5, 5, 6,208,208, 5, 208,208,208, 6,208, 6,208,208, + + // state[1072 + 2] 0x029000 Byte 3 of 4 (relative offsets) +- -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, 8, ++ (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, + 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, + 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, +@@ -6883,7 +6883,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 229,229,229,229,208,208,208,229, 208,208,208,229, 0,229,208,208, + + // state[1136 + 2] 0x02a000 Byte 3 of 4 (relative offsets) +- -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, 8, 9, ++ (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, 9, + 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 22, 22, 22, + 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, + 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, +@@ -7075,10 +7075,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ + 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, + + // state[1168 + 2] 0x02f000 Byte 3 of 4 (relative offsets) +- -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, +- -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, +- -8, -7, -6, -5, -4, -3, -2, -1, 1, -9, -9, -9, -9, -9, -9, -9, +- -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, ++ (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, ++ (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, ++ (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, ++ (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, + + // state[1169 + 2] 0x02fa00 Byte 4 of 4 (property) + 217, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,217, 5, 5, +diff -up chromium-56.0.2924.87/third_party/webgl/src/specs/latest/2.0/webgl2.idl.gcc5 chromium-56.0.2924.87/third_party/webgl/src/specs/latest/2.0/webgl2.idl +--- chromium-56.0.2924.87/third_party/webgl/src/specs/latest/2.0/webgl2.idl.gcc5 2017-02-01 21:03:57.000000000 -0500 ++++ chromium-56.0.2924.87/third_party/webgl/src/specs/latest/2.0/webgl2.idl 2017-02-09 10:38:38.380789675 -0500 +@@ -265,7 +265,7 @@ interface WebGL2RenderingContextBase + 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 -up chromium-56.0.2924.87/third_party/WebKit/Source/core/dom/NodeFilter.h.gcc5 chromium-56.0.2924.87/third_party/WebKit/Source/core/dom/NodeFilter.h +--- chromium-56.0.2924.87/third_party/WebKit/Source/core/dom/NodeFilter.h.gcc5 2017-02-01 21:03:09.000000000 -0500 ++++ chromium-56.0.2924.87/third_party/WebKit/Source/core/dom/NodeFilter.h 2017-02-09 10:38:38.387789535 -0500 +@@ -49,7 +49,7 @@ class NodeFilter final : public GarbageC + * to the value of NodeType for the equivalent node type. + */ + enum { +- kShowAll = 0xFFFFFFFF, ++ kShowAll = 256 /* 0xFFFFFFFF */, + kShowElement = 0x00000001, + kShowAttribute = 0x00000002, + kShowText = 0x00000004, +diff -up chromium-56.0.2924.87/third_party/WebKit/Source/core/dom/NodeFilter.idl.gcc5 chromium-56.0.2924.87/third_party/WebKit/Source/core/dom/NodeFilter.idl +--- chromium-56.0.2924.87/third_party/WebKit/Source/core/dom/NodeFilter.idl.gcc5 2017-02-01 21:03:09.000000000 -0500 ++++ chromium-56.0.2924.87/third_party/WebKit/Source/core/dom/NodeFilter.idl 2017-02-09 10:38:38.394789395 -0500 +@@ -30,7 +30,7 @@ + const unsigned short FILTER_SKIP = 3; + + // Constants for whatToShow +- const unsigned long SHOW_ALL = 0xFFFFFFFF; ++ const unsigned long SHOW_ALL = 256; // 0xFFFFFFFF + const unsigned long SHOW_ELEMENT = 0x1; + const unsigned long SHOW_ATTRIBUTE = 0x2; // historical + const unsigned long SHOW_TEXT = 0x4; +diff -up chromium-56.0.2924.87/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl.gcc5 chromium-56.0.2924.87/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl +--- chromium-56.0.2924.87/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl.gcc5 2017-02-01 21:03:09.000000000 -0500 ++++ chromium-56.0.2924.87/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl 2017-02-09 11:07:32.828682863 -0500 +@@ -239,7 +239,7 @@ typedef unsigned long long GLuint64; + 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; +@@ -269,7 +269,7 @@ typedef unsigned long long GLuint64; + const GLenum TEXTURE_IMMUTABLE_FORMAT = 0x912F; + const GLenum MAX_ELEMENT_INDEX = 0x8D6B; + const GLenum TEXTURE_IMMUTABLE_LEVELS = 0x82DF; +- const GLint TIMEOUT_IGNORED = -1; ++ const GLint TIMEOUT_IGNORED = 256; + + /* WebGL-specific enums */ + const GLenum MAX_CLIENT_WAIT_TIMEOUT_WEBGL = 0x9247; diff --git a/chromium.spec b/chromium.spec index c7fe854..08e591f 100644 --- a/chromium.spec +++ b/chromium.spec @@ -16,7 +16,7 @@ # Requires is trickier. %global __provides_exclude_from %{chromium_path}/.*\\.so|%{chromium_path}/lib/.*\\.so -%global privlibs libaccessibility|libaura_extra|libaura|libbase_i18n|libbase|libbindings|libblink_common|libblink_core|libblink_modules|libblink_platform|libblink_web|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture|libcc_blink|libcc_ipc|libcc_proto|libcc|libcc_surfaces|libchromium_sqlite3|libcloud_policy_proto_generated_compile|libcommon|libcompositor|libcontent|libcrcrypto|libdbus|libdevice_battery|libdevice_core|libdevice_event_log|libdevice_gamepad|libdevices|libdevice_vibration|libdisplay_compositor|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libevents_base|libevents_devices_x11|libevents_ipc|libevents_ozone_layout|libevents|libevents_x|libffmpeg|libfont_service_library|libgcm|libgeometry|libgeolocation|libgesture_detection|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_x11|libgin|libgles2_c_lib|libgles2_implementation|libgles2_utils|libGLESv2|libgl_init|libgl_wrapper|libgpu|libgtk2ui|libicui18n|libicuuc|libipc|libkeyboard|libkeyboard_with_content|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libmedia_blink|libmedia_gpu|libmedia|libmessage_center|libmidi|libmojo_common_lib|libmojo_ime_lib|libmojo_public_system_cpp|libmojo_public_system|libmojo_system_impl|libnative_theme|libnet|libnet_with_v8|libonc|libplatform|libpolicy_component|libpolicy_proto|libpower_save_blocker|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|librange|libsandbox_services|libseccomp_bpf|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtest_ime_driver_library|libtime_zone_monitor|libtracing_library|libtracing|libtranslator|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_library|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libuser_manager|libuser_prefs|libv8|libviews|libwebdata_common|libweb_dialogs|libwebview|libwidevinecdm|libwm|libwtf|libx11_events_platform|libx11_window +%global privlibs libaccessibility|libaura_extra|libaura|libbase_i18n|libbase|libbindings|libblink_common|libblink_core|libblink_modules|libblink_platform|libblink_web|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture|libcc_blink|libcc_ipc|libcc_proto|libcc|libcc_surfaces|libchromium_sqlite3|libclearkeycdm|libcloud_policy_proto_generated_compile|libcommon|libcompositor|libcontent|libcpp|libcrcrypto|libdbus|libdevice_base|libdevice_battery|libdevice_event_log|libdevice_gamepad|libdevices|libdevice_vibration|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay_compositor|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libevents_base|libevents_devices_x11|libevents_ipc|libevents_ozone_layout|libevents|libevents_x|libffmpeg|libfont_service_library|libgcm|libgeneric_sensor|libgeolocation|libgeometry|libgesture_detection|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_x11|libgin|libgles2_c_lib|libgles2_implementation|libgles2_utils|libGLESv2|libgl_init|libgl_wrapper|libgpu|libgtk2ui|libicui18n|libicuuc|libipc|libjs|libkeyboard|libkeyboard_with_content|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libmedia_blink|libmedia_gpu|libmedia|libmessage_center|libmidi|libmojo_common_lib|libmojo_ime_lib|libmojo_public_system_cpp|libmojo_public_system|libmojo_system_impl|libnative_theme|libnet|libnet_with_v8|libonc|libplatform|libpolicy_component|libpolicy_proto|libpower_monitor|libpower_save_blocker|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|librange|libsandbox_services|libseccomp_bpf|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtest_ime_driver_library|libtime_zone_monitor|libtracing_library|libtracing|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_library|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libuser_manager|libuser_prefs|libv8_libbase|libv8_libplatform|libv8|libviews|libwebdata_common|libweb_dialogs|libwebview|libwidevinecdmadapter|libwidevinecdm|libwm|libwtf|libx11_events_platform|libx11_window %global __requires_exclude ^(%{privlibs})\\.so # Try to not use the Xvfb as it is slow.. @@ -89,17 +89,17 @@ BuildRequires: libicu-devel >= 5.4 %global default_client_secret miEreAep8nuvTdvLums6qyLK %global chromoting_client_id 449907151817-8vnlfih032ni8c4jjps9int9t86k546t.apps.googleusercontent.com -%global majorversion 55 +%global majorversion 56 Name: chromium%{chromium_channel} -Version: %{majorversion}.0.2883.87 -Release: 1%{?dist}.1 +Version: %{majorversion}.0.2924.87 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) ### Chromium Fedora Patches ### -Patch0: chromium-55.0.2883.75-gcc5.patch +Patch0: chromium-56.0.2924.87-gcc5.patch Patch1: chromium-45.0.2454.101-linux-path-max.patch Patch2: chromium-55.0.2883.75-addrfix.patch Patch4: chromium-46.0.2490.71-notest.patch @@ -144,10 +144,6 @@ Patch26: chromium-54.0.2840.59-i686-ld-memory-tricks.patch # obj/content/renderer/renderer/child_frame_compositing_helper.o: In function `content::ChildFrameCompositingHelper::OnSetSurface(cc::SurfaceId const&, gfx::Size const&, float, cc::SurfaceSequence const&)': # /builddir/build/BUILD/chromium-54.0.2840.90/out/Release/../../content/renderer/child_frame_compositing_helper.cc:214: undefined reference to `cc_blink::WebLayerImpl::setOpaque(bool)' Patch27: chromium-54.0.2840.90-setopaque.patch -# /usr/bin/ld.bfd: obj/chrome/browser/libbrowser.a(native_desktop_media_list.o): undefined reference to symbol '_ZN2ui31GrabWindowSnapshotAndScaleAsyncEPN4aura6WindowERKN3gfx4RectERKNS3_4SizeE13scoped_refptrIN4base10TaskRunnerEERKNSB_8CallbackIFvRKNS3_5ImageEELNSB_8internal8CopyModeE1EEE' -# /usr/bin/ld.bfd: note: '_ZN2ui31GrabWindowSnapshotAndScaleAsyncEPN4aura6WindowERKN3gfx4RectERKNS3_4SizeE13scoped_refptrIN4base10TaskRunnerEERKNSB_8CallbackIFvRKNS3_5ImageEELNSB_8internal8CopyModeE1EEE' is defined in DSO ./libsnapshot.so so try adding it to the linker command line -# ./libsnapshot.so: could not read symbols: Invalid operation -Patch28: chromium-54.0.2840.90-aura-browser-link-to-snapshot.patch # Fix rvalue issue in remoting code # https://chromium.googlesource.com/chromium/src.git/+/29bfbecb49572b61264de7acccf8b23942bba43d%5E%21/#F0 Patch29: chromium-55.0.2883.87-rvalue-fix.patch @@ -527,7 +523,6 @@ members of the Chromium and WebDriver teams. %patch25 -p1 -b .jpegfix %patch26 -p1 -b .ldmemory %patch27 -p1 -b .setopaque -%patch28 -p1 -b .aurasnapshot %patch29 -p1 -b .rvalue ### Chromium Tests Patches ### @@ -756,6 +751,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/google_input_tools/third_party/closure_library/third_party/closure' \ 'third_party/hunspell' \ 'third_party/iccjpeg' \ + 'third_party/inspector_protocol' \ 'third_party/jinja2' \ 'third_party/jstemplate' \ 'third_party/khronos' \ @@ -816,6 +812,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/x86inc' \ 'third_party/zlib/google' \ 'url/third_party/mozilla' \ + 'v8/third_party/inspector_protocol' \ 'v8/src/third_party/valgrind' \ --do-remove @@ -1029,7 +1026,7 @@ popd %endif # See remoting/host/installer/linux/Makefile for logic -cp -a native_messaging_host %{buildroot}%{crd_path}/native-messaging-host +cp -a remoting_native_messaging_host %{buildroot}%{crd_path}/native-messaging-host cp -a remote_assistance_host %{buildroot}%{crd_path}/remote-assistance-host cp -a remoting_locales %{buildroot}%{crd_path}/ cp -a remoting_me2me_host %{buildroot}%{crd_path}/chrome-remote-desktop-host @@ -1567,6 +1564,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Thu Feb 9 2017 Tom Callaway 56.0.2924.87-1 +- update to 56.0.2924.87 + * Tue Dec 13 2016 Tom Callaway 55.0.2883.87-1.1 - use bundled jinja2 on RHEL (or Fedora older than 23) - fix rvalue issue in remoting code diff --git a/chromium_chrome_appdata_files.patch b/chromium_chrome_appdata_files.patch new file mode 100644 index 0000000..5631898 --- /dev/null +++ b/chromium_chrome_appdata_files.patch @@ -0,0 +1,129 @@ +diff --git a/chrome/installer/linux/BUILD.gn b/chrome/installer/linux/BUILD.gn +index 1394af3..c3efe0d 100644 +--- a/chrome/installer/linux/BUILD.gn ++++ b/chrome/installer/linux/BUILD.gn +@@ -84,9 +84,15 @@ copy("common_packaging_files") { + ] + + if (is_chrome_branded) { +- sources += [ "common/google-chrome/google-chrome.info" ] ++ sources += [ ++ "common/google-chrome/google-chrome.appdata.xml.template", ++ "common/google-chrome/google-chrome.info" ++ ] + } else { +- sources += [ "common/chromium-browser/chromium-browser.info" ] ++ sources += [ ++ "common/chromium-browser/chromium-browser.appdata.xml", ++ "common/chromium-browser/chromium-browser.info" ++ ] + } + + if (current_cpu == "x86") { +diff --git a/chrome/installer/linux/common/chromium-browser/chromium-browser.appdata.xml b/chrome/installer/linux/common/chromium-browser/chromium-browser.appdata.xml +index e69de29..3bbe4f9 100644 +--- a/chrome/installer/linux/common/chromium-browser/chromium-browser.appdata.xml ++++ b/chrome/installer/linux/common/chromium-browser/chromium-browser.appdata.xml +@@ -0,0 +1,37 @@ ++ ++ ++ chromium-browser.desktop ++ chromium-dev@chromium.org ++ CC0-1.0 and (CC-BY-SA-3.0 or GFDL-1.2) and CC-BY-3.0 and CC-BY-SA-4.0 ++ BSD-3-Clause and LGPL-2.1+ and Apache-2.0 and IJG and MIT and GPL-2.0+ and ISC and OpenSSL and (MPL-1.1 or GPL-2.0 or LGPL-2.0) ++ Chromium Web Browser ++ Web Browser ++ ++

++ Chromium is an open-source browser that aims to build a safer, faster, and ++ more stable way to experience the web. ++ We invite you to join us in our effort to build a powerful platform for ++ developing a new generation of web applications. ++

++

++ Chromium does not include the AAC, H.264, MP3 or Adobe Flash code ++ that is found in Chrome, although it does support Vorbis, Theora, WebM and ++ HTML5 audio and video standards. ++

++
++ https://www.chromium.org/Home ++ ++ ++ https://raw.githubusercontent.com/hughsie/fedora-appstream/master/screenshots-extra/chromium-browser/a.png ++ ++ ++ ++ https://raw.githubusercontent.com/hughsie/fedora-appstream/master/screenshots-extra/chromium-browser/b.png ++ ++ ++ ++ ++ The Chromium Authors ++ https://www.chromium.org/for-testers/bug-reporting-guidelines ++ https://chromium.googlesource.com/chromium/src/+/master/docs/linux_debugging.md ++
+diff --git a/chrome/installer/linux/common/google-chrome/google-chrome.appdata.xml.template b/chrome/installer/linux/common/google-chrome/google-chrome.appdata.xml.template +index e69de29..2c45632 100644 +--- a/chrome/installer/linux/common/google-chrome/google-chrome.appdata.xml.template ++++ b/chrome/installer/linux/common/google-chrome/google-chrome.appdata.xml.template +@@ -0,0 +1,29 @@ ++ ++ ++ @@PACKAGE@@.desktop ++ chromium-dev@chromium.org ++ CC0-1.0 and (CC-BY-SA-3.0 or GFDL-1.2) and CC-BY-3.0 and CC-BY-SA-4.0 ++ Freeware under Google Chrome Terms of Service ++ @@MENUNAME@@ ++ Web Browser ++ ++

++ @@FULLDESC@@ ++

++
++ @@PRODUCTURL@@ ++ ++ ++ https://raw.githubusercontent.com/hughsie/fedora-appstream/master/screenshots-extra/chromium-browser/a.png ++ ++ ++ ++ https://raw.githubusercontent.com/hughsie/fedora-appstream/master/screenshots-extra/chromium-browser/b.png ++ ++ ++ ++ ++ Google ++ https://support.google.com/chrome/answer/95315 ++ https://support.google.com/chrome ++
+diff --git a/chrome/installer/linux/common/installer.include b/chrome/installer/linux/common/installer.include +index d606238..c2cb109 100644 +--- a/chrome/installer/linux/common/installer.include ++++ b/chrome/installer/linux/common/installer.include +@@ -228,6 +228,14 @@ stage_install_common() { + # desktop integration + install -m 755 "${BUILDDIR}/xdg-mime" "${STAGEDIR}${INSTALLDIR}/" + install -m 755 "${BUILDDIR}/xdg-settings" "${STAGEDIR}${INSTALLDIR}/" ++ if [ ${PACKAGE:0:6} = google ]; then ++ process_template "${BUILDDIR}/installer/common/google-chrome/google-chrome.appdata.xml.template" \ ++ "${STAGEDIR}/usr/share/appdata/${PACKAGE}.appdata.xml" ++ chmod 644 "${STAGEDIR}/usr/share/appdata/${PACKAGE}.appdata.xml" ++ else ++ install -m 644 "${BUILDDIR}/installer/common/chromium-browser/chromium-browser.appdata.xml" \ ++ "${STAGEDIR}/usr/share/appdata/${PACKAGE}.appdata.xml" ++ fi + process_template "${BUILDDIR}/installer/common/desktop.template" \ + "${STAGEDIR}/usr/share/applications/${PACKAGE}.desktop" + chmod 644 "${STAGEDIR}/usr/share/applications/${PACKAGE}.desktop" +diff --git a/chrome/installer/linux/rpm/chrome.spec.template b/chrome/installer/linux/rpm/chrome.spec.template +index 08c402c..e878a85 100644 +--- a/chrome/installer/linux/rpm/chrome.spec.template ++++ b/chrome/installer/linux/rpm/chrome.spec.template +@@ -89,6 +89,7 @@ rm -rf "$RPM_BUILD_ROOT" + /etc/cron.daily/@@PACKAGE@@ + %ghost %attr(755,root,root) /usr/bin/google-chrome + /usr/bin/@@USR_BIN_SYMLINK_NAME@@ ++/usr/share/appdata/@@PACKAGE@@.appdata.xml + /usr/share/applications/@@PACKAGE@@.desktop + /usr/share/gnome-control-center/default-apps/@@PACKAGE@@.xml + %docdir /usr/share/man/man1 diff --git a/sources b/sources index 70a5cfc..99dffc0 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ -SHA512 (policy_templates.zip) = a297c5a6753e5607cb5d440b75cbc1c6153d09118d6401683aa2bca73eef7145c8964569fc12a0106cf1d2b9f93af32c1b91d25c742d878d30385498668fa0db SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 -SHA512 (chromium-55.0.2883.87-clean.tar.xz) = 36320758f10e644d49c95943330d49054a3f202ef25d96d8c3582a5ec6785e1465365924c4e535101ff58dd17076737b451790c4821bd2ddeb1f0061b0857fc5 +SHA512 (chromium-56.0.2924.87-clean.tar.xz) = d238b7d2e1cbb6384e51854745e71746f0b01f498a8908f3bbf970149c312299e4a7f7487808bb3f2cd1094c0e02ef163b8227c5018db5b301c8bb96b55f983d +SHA512 (policy_templates.zip) = 6a0564da805ee8d290453c9e46550fa8eed42d0fbd51a90eda566d888d9d7cf35ec9bb39f2340ec1ed98e7e813815eceb1f11cd202746815a7c8f8ecbef73a85 From 85686cc28885b87f0ebf8cac508787bfa09d781c Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 10 Feb 2017 14:35:31 -0500 Subject: [PATCH 0054/1449] fix chronal corruption caused by TARDIS --- chromium.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 9b137bd..9e456b6 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1564,7 +1564,7 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog -* Thu Feb 9 2017 Tom Callaway 56.0.2924.87-1 +* Fri Feb 10 2017 Tom Callaway 56.0.2924.87-1 - update to 56.0.2924.87 * Fri Feb 10 2017 Fedora Release Engineering - 55.0.2883.87-2.1 From 407918e15795917d01d2a2c765c06ab37aab4b81 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 10 Feb 2017 15:35:23 -0500 Subject: [PATCH 0055/1449] add BR: gtk3-devel --- chromium.spec | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 9e456b6..b30ee3f 100644 --- a/chromium.spec +++ b/chromium.spec @@ -93,7 +93,7 @@ BuildRequires: libicu-devel >= 5.4 Name: chromium%{chromium_channel} Version: %{majorversion}.0.2924.87 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -199,6 +199,8 @@ BuildRequires: GConf2-devel BuildRequires: glib2-devel BuildRequires: gnome-keyring-devel BuildRequires: gtk2-devel +# Yes. This too. +BuildRequires: gtk3-devel BuildRequires: glibc-devel BuildRequires: gperf BuildRequires: libatomic @@ -1564,6 +1566,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Fri Feb 10 2017 Tom Callaway 56.0.2924.87-2 +- add BR: gtk3-devel + * Fri Feb 10 2017 Tom Callaway 56.0.2924.87-1 - update to 56.0.2924.87 From 86f726d9eb45b1401a42a815166961d79097aefd Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 13 Feb 2017 12:42:02 -0500 Subject: [PATCH 0056/1449] fix compilation issues --- chromium-56.0.2924.87-fpermissive.patch | 13 +++++++++++++ chromium-56.0.2924.87-gcc-49.patch | 12 ++++++++++++ chromium.spec | 13 ++++++++++++- 3 files changed, 37 insertions(+), 1 deletion(-) create mode 100644 chromium-56.0.2924.87-fpermissive.patch create mode 100644 chromium-56.0.2924.87-gcc-49.patch diff --git a/chromium-56.0.2924.87-fpermissive.patch b/chromium-56.0.2924.87-fpermissive.patch new file mode 100644 index 0000000..be68cf9 --- /dev/null +++ b/chromium-56.0.2924.87-fpermissive.patch @@ -0,0 +1,13 @@ +diff -up chromium-56.0.2924.87/third_party/WebKit/Source/BUILD.gn.permissive chromium-56.0.2924.87/third_party/WebKit/Source/BUILD.gn +--- chromium-56.0.2924.87/third_party/WebKit/Source/BUILD.gn.permissive 2017-02-13 12:32:23.419665971 -0500 ++++ chromium-56.0.2924.87/third_party/WebKit/Source/BUILD.gn 2017-02-13 12:33:16.146629190 -0500 +@@ -54,6 +54,9 @@ config("config") { + cflags = [] + defines = [] + ++ # error: there are no arguments to 'swapAnchor' that depend on a template parameter, so a declaration of 'swapAnchor' must be available [-fpermissive] ++ cflags += [ "-fpermissive" ] ++ + if (is_win) { + cflags += [ + "/wd4305", # Truncation from 'type1' to 'type2'. diff --git a/chromium-56.0.2924.87-gcc-49.patch b/chromium-56.0.2924.87-gcc-49.patch new file mode 100644 index 0000000..f5ff3d2 --- /dev/null +++ b/chromium-56.0.2924.87-gcc-49.patch @@ -0,0 +1,12 @@ +diff -up chromium-56.0.2924.87/third_party/webrtc/modules/desktop_capture/screen_capturer_x11.cc.gcc49 chromium-56.0.2924.87/third_party/webrtc/modules/desktop_capture/screen_capturer_x11.cc +--- chromium-56.0.2924.87/third_party/webrtc/modules/desktop_capture/screen_capturer_x11.cc.gcc49 2017-02-13 11:41:35.563497836 -0500 ++++ chromium-56.0.2924.87/third_party/webrtc/modules/desktop_capture/screen_capturer_x11.cc 2017-02-13 11:42:43.608161336 -0500 +@@ -412,7 +412,7 @@ std::unique_ptr Desktop + return nullptr; + } + +- return capturer; ++ return std::move(capturer); + } + + } // namespace webrtc diff --git a/chromium.spec b/chromium.spec index b30ee3f..dfd6f9e 100644 --- a/chromium.spec +++ b/chromium.spec @@ -93,7 +93,7 @@ BuildRequires: libicu-devel >= 5.4 Name: chromium%{chromium_channel} Version: %{majorversion}.0.2924.87 -Release: 2%{?dist} +Release: 3%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -147,6 +147,11 @@ Patch27: chromium-54.0.2840.90-setopaque.patch # Fix rvalue issue in remoting code # https://chromium.googlesource.com/chromium/src.git/+/29bfbecb49572b61264de7acccf8b23942bba43d%5E%21/#F0 Patch29: chromium-55.0.2883.87-rvalue-fix.patch +# Fix compiler issue with gcc 4.9 +# https://chromium.googlesource.com/external/webrtc/trunk/webrtc/+/69556b1c264da9e0f484eaab890ebd555966630c%5E%21/#F0 +Patch30: chromium-56.0.2924.87-gcc-49.patch +# Use -fpermissive to build WebKit +Patch31: chromium-56.0.2924.87-fpermissive.patch ### Chromium Tests Patches ### Patch100: chromium-46.0.2490.86-use_system_opus.patch @@ -526,6 +531,8 @@ members of the Chromium and WebDriver teams. %patch26 -p1 -b .ldmemory %patch27 -p1 -b .setopaque %patch29 -p1 -b .rvalue +%patch30 -p1 -b .gcc49 +%patch31 -p1 -b .permissive ### Chromium Tests Patches ### %patch100 -p1 -b .use_system_opus @@ -1566,6 +1573,10 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Mon Feb 13 2017 Tom Callaway 56.0.2924.87-3 +- fix compilation issue +- build third_party/WebKit with -fpermissive + * Fri Feb 10 2017 Tom Callaway 56.0.2924.87-2 - add BR: gtk3-devel From ff8c5622fe88e1e1e0be19641c7b99eaedc45eaa Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 13 Feb 2017 13:12:43 -0500 Subject: [PATCH 0057/1449] use bundled jinja everywhere --- chromium.spec | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/chromium.spec b/chromium.spec index dfd6f9e..714316c 100644 --- a/chromium.spec +++ b/chromium.spec @@ -301,9 +301,6 @@ BuildRequires: pulseaudio-libs-devel BuildRequires: python-beautifulsoup4 BuildRequires: python-BeautifulSoup BuildRequires: python-html5lib -%if 0%{?fedora} >= 23 -BuildRequires: python-jinja2 -%endif BuildRequires: python-markupsafe BuildRequires: python-ply BuildRequires: python-simplejson @@ -826,11 +823,6 @@ build/linux/unbundle/remove_bundled_libraries.py \ --do-remove # Look, I don't know. This package is spit and chewing gum. Sorry. -# RHEL jinja2 is too old, even in 7. -%if 0%{?fedora} >= 23 -rm -rf third_party/jinja2 -ln -s %{python_sitelib}/jinja2 third_party/jinja2 -%endif rm -rf third_party/markupsafe ln -s %{python_sitearch}/markupsafe third_party/markupsafe # We should look on removing other python packages as well i.e. ply @@ -1576,6 +1568,7 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt * Mon Feb 13 2017 Tom Callaway 56.0.2924.87-3 - fix compilation issue - build third_party/WebKit with -fpermissive +- use bundled jinja everywhere * Fri Feb 10 2017 Tom Callaway 56.0.2924.87-2 - add BR: gtk3-devel From f909a6c6a7c6c9b3cd76cbe3eaa5d9d7cf8bcbc7 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 23 Feb 2017 17:30:36 -0500 Subject: [PATCH 0058/1449] disable debuginfo. will not fix rawhide, but should fix everything else --- chromium.spec | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/chromium.spec b/chromium.spec index 714316c..87d48fd 100644 --- a/chromium.spec +++ b/chromium.spec @@ -4,6 +4,10 @@ # Leave this alone, please. %global target out/Release +# Debuginfo packages aren't very useful here. If you need to debug +# you should do a proper debug build (not implemented in this spec yet) +%global debug_package %{nil} + # %%{nil} for Stable; -beta for Beta; -dev for Devel # dash in -beta and -dev is intentional ! %global chromium_channel %{nil} @@ -1565,6 +1569,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Tue Feb 21 2017 Tom Callaway 56.0.2924.87-4 +- disable debuginfo + * Mon Feb 13 2017 Tom Callaway 56.0.2924.87-3 - fix compilation issue - build third_party/WebKit with -fpermissive From 2076c5a1aaa06fe1c89986eb2be6206e82c154ba Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 24 Feb 2017 07:55:05 -0500 Subject: [PATCH 0059/1449] fix issue with unique ptr move on return with old gcc --- chromium-56.0.2924.87-unique-ptr-fix.patch | 12 ++++++++++++ chromium.spec | 9 ++++++++- 2 files changed, 20 insertions(+), 1 deletion(-) create mode 100644 chromium-56.0.2924.87-unique-ptr-fix.patch diff --git a/chromium-56.0.2924.87-unique-ptr-fix.patch b/chromium-56.0.2924.87-unique-ptr-fix.patch new file mode 100644 index 0000000..4542143 --- /dev/null +++ b/chromium-56.0.2924.87-unique-ptr-fix.patch @@ -0,0 +1,12 @@ +diff -up chromium-56.0.2924.87/remoting/host/security_key/fake_security_key_ipc_server.cc.unique-ptr-fix chromium-56.0.2924.87/remoting/host/security_key/fake_security_key_ipc_server.cc +--- chromium-56.0.2924.87/remoting/host/security_key/fake_security_key_ipc_server.cc.unique-ptr-fix 2017-02-24 07:50:09.183551244 -0500 ++++ chromium-56.0.2924.87/remoting/host/security_key/fake_security_key_ipc_server.cc 2017-02-24 07:50:31.619111443 -0500 +@@ -130,7 +130,7 @@ std::unique_ptr Fa + + ipc_server_map_[connection_id] = fake_ipc_server->AsWeakPtr(); + +- return fake_ipc_server; ++ return std::move(fake_ipc_server); + } + + base::WeakPtr diff --git a/chromium.spec b/chromium.spec index 87d48fd..28374b8 100644 --- a/chromium.spec +++ b/chromium.spec @@ -97,7 +97,7 @@ BuildRequires: libicu-devel >= 5.4 Name: chromium%{chromium_channel} Version: %{majorversion}.0.2924.87 -Release: 3%{?dist} +Release: 4%{?dist}.1 Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -156,6 +156,9 @@ Patch29: chromium-55.0.2883.87-rvalue-fix.patch Patch30: chromium-56.0.2924.87-gcc-49.patch # Use -fpermissive to build WebKit Patch31: chromium-56.0.2924.87-fpermissive.patch +# Fix issue with unique_ptr move on return with older gcc +Patch32: chromium-56.0.2924.87-unique-ptr-fix.patch + ### Chromium Tests Patches ### Patch100: chromium-46.0.2490.86-use_system_opus.patch @@ -534,6 +537,7 @@ members of the Chromium and WebDriver teams. %patch29 -p1 -b .rvalue %patch30 -p1 -b .gcc49 %patch31 -p1 -b .permissive +%patch32 -p1 -b .unique-ptr-fix ### Chromium Tests Patches ### %patch100 -p1 -b .use_system_opus @@ -1569,6 +1573,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Fri Feb 24 2017 Tom Callaway 56.0.2924.87-4.1 +- fix issue with unique_ptr move on return with old gcc + * Tue Feb 21 2017 Tom Callaway 56.0.2924.87-4 - disable debuginfo From 26fbfad209bb47d7690f3fd94235c3b097bf0dc8 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 24 Feb 2017 08:37:34 -0500 Subject: [PATCH 0060/1449] versioning sync build on rawhide --- chromium.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 28374b8..2246369 100644 --- a/chromium.spec +++ b/chromium.spec @@ -97,7 +97,7 @@ BuildRequires: libicu-devel >= 5.4 Name: chromium%{chromium_channel} Version: %{majorversion}.0.2924.87 -Release: 4%{?dist}.1 +Release: 5%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1573,6 +1573,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Fri Feb 24 2017 Tom Callaway 56.0.2924.87-5 +- versioning sync build on rawhide + * Fri Feb 24 2017 Tom Callaway 56.0.2924.87-4.1 - fix issue with unique_ptr move on return with old gcc From 54f615ebbd7d276a0c218616583033afe5d48d17 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 28 Feb 2017 16:04:18 -0500 Subject: [PATCH 0061/1449] fix issue with gcc7 compile in v8 (thanks to Ben Noordhuis) --- chromium-56.0.2924.87-gcc7.patch | 71 ++++++++++++++++++++++++++++++++ chromium.spec | 9 +++- 2 files changed, 79 insertions(+), 1 deletion(-) create mode 100644 chromium-56.0.2924.87-gcc7.patch diff --git a/chromium-56.0.2924.87-gcc7.patch b/chromium-56.0.2924.87-gcc7.patch new file mode 100644 index 0000000..033b069 --- /dev/null +++ b/chromium-56.0.2924.87-gcc7.patch @@ -0,0 +1,71 @@ +diff -up chromium-56.0.2924.87/v8/src/objects-body-descriptors.h.gcc7 chromium-56.0.2924.87/v8/src/objects-body-descriptors.h +--- chromium-56.0.2924.87/v8/src/objects-body-descriptors.h.gcc7 2017-02-28 16:00:27.313172210 -0500 ++++ chromium-56.0.2924.87/v8/src/objects-body-descriptors.h 2017-02-28 16:00:46.016804708 -0500 +@@ -99,7 +99,7 @@ class FixedBodyDescriptor final : public + + template + static inline void IterateBody(HeapObject* obj, int object_size) { +- IterateBody(obj); ++ IterateBody(obj); + } + }; + +diff -up chromium-56.0.2924.87/v8/src/objects.h.gcc7 chromium-56.0.2924.87/v8/src/objects.h +--- chromium-56.0.2924.87/v8/src/objects.h.gcc7 2017-02-28 15:58:27.368527968 -0500 ++++ chromium-56.0.2924.87/v8/src/objects.h 2017-02-28 15:59:25.868379455 -0500 +@@ -3531,22 +3531,10 @@ class HashTable : public HashTableBase { + public: + typedef Shape ShapeT; + +- // Wrapper methods +- inline uint32_t Hash(Key key) { +- if (Shape::UsesSeed) { +- return Shape::SeededHash(key, GetHeap()->HashSeed()); +- } else { +- return Shape::Hash(key); +- } +- } +- +- inline uint32_t HashForObject(Key key, Object* object) { +- if (Shape::UsesSeed) { +- return Shape::SeededHashForObject(key, GetHeap()->HashSeed(), object); +- } else { +- return Shape::HashForObject(key, object); +- } +- } ++ // Wrapper methods. Defined in src/objects-inl.h ++ // to break a cycle with src/heap/heap.h. ++ inline uint32_t Hash(Key key); ++ inline uint32_t HashForObject(Key key, Object* object); + + // Returns a new HashTable object. + MUST_USE_RESULT static Handle New( +diff -up chromium-56.0.2924.87/v8/src/objects-inl.h.gcc7 chromium-56.0.2924.87/v8/src/objects-inl.h +--- chromium-56.0.2924.87/v8/src/objects-inl.h.gcc7 2017-02-28 15:59:44.293016928 -0500 ++++ chromium-56.0.2924.87/v8/src/objects-inl.h 2017-02-28 16:00:18.187351116 -0500 +@@ -39,6 +39,25 @@ + namespace v8 { + namespace internal { + ++template ++uint32_t HashTable::Hash(Key key) { ++ if (Shape::UsesSeed) { ++ return Shape::SeededHash(key, GetHeap()->HashSeed()); ++ } else { ++ return Shape::Hash(key); ++ } ++} ++ ++template ++uint32_t HashTable::HashForObject(Key key, ++ Object* object) { ++ if (Shape::UsesSeed) { ++ return Shape::SeededHashForObject(key, GetHeap()->HashSeed(), object); ++ } else { ++ return Shape::HashForObject(key, object); ++ } ++} ++ + PropertyDetails::PropertyDetails(Smi* smi) { + value_ = smi->value(); + } diff --git a/chromium.spec b/chromium.spec index 2246369..41b8ad8 100644 --- a/chromium.spec +++ b/chromium.spec @@ -97,7 +97,7 @@ BuildRequires: libicu-devel >= 5.4 Name: chromium%{chromium_channel} Version: %{majorversion}.0.2924.87 -Release: 5%{?dist} +Release: 6%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -158,6 +158,9 @@ Patch30: chromium-56.0.2924.87-gcc-49.patch Patch31: chromium-56.0.2924.87-fpermissive.patch # Fix issue with unique_ptr move on return with older gcc Patch32: chromium-56.0.2924.87-unique-ptr-fix.patch +# Fix issue with compilation on gcc7 +# Thanks to Ben Noordhuis +Patch33: chromium-56.0.2924.87-gcc7.patch ### Chromium Tests Patches ### @@ -538,6 +541,7 @@ members of the Chromium and WebDriver teams. %patch30 -p1 -b .gcc49 %patch31 -p1 -b .permissive %patch32 -p1 -b .unique-ptr-fix +%patch33 -p1 -b .gcc7 ### Chromium Tests Patches ### %patch100 -p1 -b .use_system_opus @@ -1573,6 +1577,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Tue Feb 28 2017 Tom Callaway 56.0.2924.87-6 +- fix issue with gcc7 compile in v8 (thanks to Ben Noordhuis) + * Fri Feb 24 2017 Tom Callaway 56.0.2924.87-5 - versioning sync build on rawhide From ce69059f1a86f21100a59593fdeb34a967296bf2 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 1 Mar 2017 11:41:40 -0500 Subject: [PATCH 0062/1449] more gcc7 --- chromium-56.0.2924.87-gcc7.patch | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/chromium-56.0.2924.87-gcc7.patch b/chromium-56.0.2924.87-gcc7.patch index 033b069..6d6e9ee 100644 --- a/chromium-56.0.2924.87-gcc7.patch +++ b/chromium-56.0.2924.87-gcc7.patch @@ -1,3 +1,14 @@ +diff -up chromium-56.0.2924.87/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 chromium-56.0.2924.87/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h +--- chromium-56.0.2924.87/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 2017-03-01 11:29:32.681142930 -0500 ++++ chromium-56.0.2924.87/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h 2017-03-01 11:30:19.396536499 -0500 +@@ -5,6 +5,7 @@ + #include "platform/PlatformExport.h" + #include "wtf/ThreadSpecific.h" + ++#include + #include + + namespace gpu { diff -up chromium-56.0.2924.87/v8/src/objects-body-descriptors.h.gcc7 chromium-56.0.2924.87/v8/src/objects-body-descriptors.h --- chromium-56.0.2924.87/v8/src/objects-body-descriptors.h.gcc7 2017-02-28 16:00:27.313172210 -0500 +++ chromium-56.0.2924.87/v8/src/objects-body-descriptors.h 2017-02-28 16:00:46.016804708 -0500 From 182a3ddd772be9cf08331116447c27dc14ca0132 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Sat, 4 Mar 2017 14:13:27 -0800 Subject: [PATCH 0063/1449] fix desktop file to have new window and new private window actions --- chromium-browser.desktop | 217 +++++++++++++++++++++++++++++++++++++++ chromium.spec | 5 +- 2 files changed, 221 insertions(+), 1 deletion(-) diff --git a/chromium-browser.desktop b/chromium-browser.desktop index f532848..fda8567 100644 --- a/chromium-browser.desktop +++ b/chromium-browser.desktop @@ -137,4 +137,221 @@ Categories=Network;WebBrowser; MimeType=text/html;text/xml;application/xhtml+xml;x-scheme-handler/http;x-scheme-handler/https;x-scheme-handler/ftp; StartupWMClass=Chromium-browser StartupNotify=true +Keywords=web;browser;internet; +Actions=new-window;new-private-window; +[Desktop Action new-window] +Name=Open a New Window +Name[ach]=Dirica manyen +Name[af]=Nuwe venster +Name[an]=Nueva finestra +Name[ar]=نافذة جديدة +Name[as]=নতুন উইন্ডো +Name[ast]=Ventana nueva +Name[az]=Yeni Pəncərə +Name[be]=Новае акно +Name[bg]=Нов прозорец +Name[bn-BD]=নতুন উইন্ডো (N) +Name[bn-IN]=নতুন উইন্ডো +Name[br]=Prenestr nevez +Name[brx]=गोदान उइन्ड'(N) +Name[bs]=Novi prozor +Name[ca]=Finestra nova +Name[cak]=K'ak'a' tzuwäch +Name[cs]=Nové okno +Name[cy]=Ffenestr Newydd +Name[da]=Nyt vindue +Name[de]=Neues Fenster +Name[dsb]=Nowe wokno +Name[el]=Νέο παράθυρο +Name[en-GB]=New Window +Name[en-US]=New Window +Name[en-ZA]=New Window +Name[eo]=Nova fenestro +Name[es-AR]=Nueva ventana +Name[es-CL]=Nueva ventana +Name[es-ES]=Nueva ventana +Name[es-MX]=Nueva ventana +Name[et]=Uus aken +Name[eu]=Leiho berria +Name[fa]=پنجره جدید‌ +Name[ff]=Henorde Hesere +Name[fi]=Uusi ikkuna +Name[fr]=Nouvelle fenêtre +Name[fy-NL]=Nij finster +Name[ga-IE]=Fuinneog Nua +Name[gd]=Uinneag ùr +Name[gl]=Nova xanela +Name[gn]=Ovetã pyahu +Name[gu-IN]=નવી વિન્ડો +Name[he]=חלון חדש +Name[hi-IN]=नया विंडो +Name[hr]=Novi prozor +Name[hsb]=Nowe wokno +Name[hu]=Új ablak +Name[hy-AM]=Նոր Պատուհան +Name[id]=Jendela Baru +Name[is]=Nýr gluggi +Name[it]=Nuova finestra +Name[ja]=新しいウィンドウ +Name[ja-JP-mac]=新規ウインドウ +Name[ka]=ახალი ფანჯარა +Name[kk]=Жаңа терезе +Name[km]=បង្អួច​​​ថ្មី +Name[kn]=ಹೊಸ ಕಿಟಕಿ +Name[ko]=새 창 +Name[kok]=नवें जनेल +Name[ks]=نئئ وِنڈو +Name[lij]=Neuvo barcon +Name[lo]=ຫນ້າຕ່າງໃຫມ່ +Name[lt]=Naujas langas +Name[ltg]=Jauns lūgs +Name[lv]=Jauns logs +Name[mai]=नव विंडो +Name[mk]=Нов прозорец +Name[ml]=പുതിയ ജാലകം +Name[mr]=नवीन पटल +Name[ms]=Tetingkap Baru +Name[my]=ဝင်းဒိုးအသစ် +Name[nb-NO]=Nytt vindu +Name[ne-NP]=नयाँ सञ्झ्याल +Name[nl]=Nieuw venster +Name[nn-NO]=Nytt vindauge +Name[or]=ନୂତନ ୱିଣ୍ଡୋ +Name[pa-IN]=ਨਵੀਂ ਵਿੰਡੋ +Name[pl]=Nowe okno +Name[pt-BR]=Nova janela +Name[pt-PT]=Nova janela +Name[rm]=Nova fanestra +Name[ro]=Fereastră nouă +Name[ru]=Новое окно +Name[sat]=नावा विंडो (N) +Name[si]=නව කවුළුවක් +Name[sk]=Nové okno +Name[sl]=Novo okno +Name[son]=Zanfun taaga +Name[sq]=Dritare e Re +Name[sr]=Нови прозор +Name[sv-SE]=Nytt fönster +Name[ta]=புதிய சாளரம் +Name[te]=కొత్త విండో +Name[th]=หน้าต่างใหม่ +Name[tr]=Yeni pencere +Name[tsz]=Eraatarakua jimpani +Name[uk]=Нове вікно +Name[ur]=نیا دریچہ +Name[uz]=Yangi oyna +Name[vi]=Cửa sổ mới +Name[wo]=Palanteer bu bees +Name[xh]=Ifestile entsha +Name[zh-CN]=新建窗口 +Name[zh-TW]=開新視窗 +Exec=chromium-browser %U + +[Desktop Action new-private-window] +Name=Open a New Private Window +Name[ach]=Dirica manyen me mung +Name[af]=Nuwe privaatvenster +Name[an]=Nueva finestra privada +Name[ar]=نافذة خاصة جديدة +Name[as]=নতুন ব্যক্তিগত উইন্ডো +Name[ast]=Ventana privada nueva +Name[az]=Yeni Məxfi Pəncərə +Name[be]=Новае акно адасаблення +Name[bg]=Нов прозорец за поверително сърфиране +Name[bn-BD]=নতুন ব্যক্তিগত উইন্ডো +Name[bn-IN]=নতুন ব্যক্তিগত উইন্ডো +Name[br]=Prenestr merdeiñ prevez nevez +Name[brx]=गोदान प्राइभेट उइन्ड' +Name[bs]=Novi privatni prozor +Name[ca]=Finestra privada nova +Name[cak]=K'ak'a' ichinan tzuwäch +Name[cs]=Nové anonymní okno +Name[cy]=Ffenestr Breifat Newydd +Name[da]=Nyt privat vindue +Name[de]=Neues privates Fenster +Name[dsb]=Nowe priwatne wokno +Name[el]=Νέο παράθυρο ιδιωτικής περιήγησης +Name[en-GB]=New Private Window +Name[en-US]=New Private Window +Name[en-ZA]=New Private Window +Name[eo]=Nova privata fenestro +Name[es-AR]=Nueva ventana privada +Name[es-CL]=Nueva ventana privada +Name[es-ES]=Nueva ventana privada +Name[es-MX]=Nueva ventana privada +Name[et]=Uus privaatne aken +Name[eu]=Leiho pribatu berria +Name[fa]=پنجره ناشناس جدید +Name[ff]=Henorde Suturo Hesere +Name[fi]=Uusi yksityinen ikkuna +Name[fr]=Nouvelle fenêtre de navigation privée +Name[fy-NL]=Nij priveefinster +Name[ga-IE]=Fuinneog Nua Phríobháideach +Name[gd]=Uinneag phrìobhaideach ùr +Name[gl]=Nova xanela privada +Name[gn]=Ovetã ñemi pyahu +Name[gu-IN]=નવી ખાનગી વિન્ડો +Name[he]=חלון פרטי חדש +Name[hi-IN]=नयी निजी विंडो +Name[hr]=Novi privatni prozor +Name[hsb]=Nowe priwatne wokno +Name[hu]=Új privát ablak +Name[hy-AM]=Սկսել Գաղտնի դիտարկում +Name[id]=Jendela Mode Pribadi Baru +Name[is]=Nýr huliðsgluggi +Name[it]=Nuova finestra anonima +Name[ja]=新しいプライベートウィンドウ +Name[ja-JP-mac]=新規プライベートウインドウ +Name[ka]=ახალი პირადი ფანჯარა +Name[kk]=Жаңа жекелік терезе +Name[km]=បង្អួច​ឯកជន​ថ្មី +Name[kn]=ಹೊಸ ಖಾಸಗಿ ಕಿಟಕಿ +Name[ko]=새 사생활 보호 모드 +Name[kok]=नवो खाजगी विंडो +Name[ks]=نْو پرایوٹ وینڈو& +Name[lij]=Neuvo barcon privou +Name[lo]=ເປີດຫນ້າຕ່າງສວນຕົວຂື້ນມາໃຫມ່ +Name[lt]=Naujas privataus naršymo langas +Name[ltg]=Jauns privatais lūgs +Name[lv]=Jauns privātais logs +Name[mai]=नया निज विंडो (W) +Name[mk]=Нов приватен прозорец +Name[ml]=പുതിയ സ്വകാര്യ ജാലകം +Name[mr]=नवीन वैयक्तिक पटल +Name[ms]=Tetingkap Persendirian Baharu +Name[my]=New Private Window +Name[nb-NO]=Nytt privat vindu +Name[ne-NP]=नयाँ निजी सञ्झ्याल +Name[nl]=Nieuw privévenster +Name[nn-NO]=Nytt privat vindauge +Name[or]=ନୂତନ ବ୍ୟକ୍ତିଗତ ୱିଣ୍ଡୋ +Name[pa-IN]=ਨਵੀਂ ਪ੍ਰਾਈਵੇਟ ਵਿੰਡੋ +Name[pl]=Nowe okno prywatne +Name[pt-BR]=Nova janela privativa +Name[pt-PT]=Nova janela privada +Name[rm]=Nova fanestra privata +Name[ro]=Fereastră privată nouă +Name[ru]=Новое приватное окно +Name[sat]=नावा निजेराक् विंडो (W ) +Name[si]=නව පුද්ගලික කවුළුව (W) +Name[sk]=Nové okno v režime Súkromné prehliadanie +Name[sl]=Novo zasebno okno +Name[son]=Sutura zanfun taaga +Name[sq]=Dritare e Re Private +Name[sr]=Нови приватан прозор +Name[sv-SE]=Nytt privat fönster +Name[ta]=புதிய தனிப்பட்ட சாளரம் +Name[te]=కొత్త ఆంతరంగిక విండో +Name[th]=หน้าต่างส่วนตัวใหม่ +Name[tr]=Yeni gizli pencere +Name[tsz]=Juchiiti eraatarakua jimpani +Name[uk]=Приватне вікно +Name[ur]=نیا نجی دریچہ +Name[uz]=Yangi maxfiy oyna +Name[vi]=Cửa sổ riêng tư mới +Name[wo]=Panlanteeru biir bu bees +Name[xh]=Ifestile yangasese entsha +Name[zh-CN]=新建隐私浏览窗口 +Name[zh-TW]=新增隱私視窗 +Exec=chromium-browser --incognito %U diff --git a/chromium.spec b/chromium.spec index 41b8ad8..f175974 100644 --- a/chromium.spec +++ b/chromium.spec @@ -97,7 +97,7 @@ BuildRequires: libicu-devel >= 5.4 Name: chromium%{chromium_channel} Version: %{majorversion}.0.2924.87 -Release: 6%{?dist} +Release: 7%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1577,6 +1577,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Sat Mar 4 2017 Tom Callaway 56.0.2924.87-7 +- fix desktop file to have "new window" and "new private window" actions + * Tue Feb 28 2017 Tom Callaway 56.0.2924.87-6 - fix issue with gcc7 compile in v8 (thanks to Ben Noordhuis) From 2a5a52f0fc54b66e11364e558c2de30f12751a6f Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Sun, 5 Mar 2017 12:12:09 -0800 Subject: [PATCH 0064/1449] enable mp3 support --- chromium-56.0.2924.87-enable-mp3.patch | 54 ++++++++++++++++++++++++++ chromium.spec | 8 +++- clean_ffmpeg.sh | 24 ++++++++++++ 3 files changed, 85 insertions(+), 1 deletion(-) create mode 100644 chromium-56.0.2924.87-enable-mp3.patch diff --git a/chromium-56.0.2924.87-enable-mp3.patch b/chromium-56.0.2924.87-enable-mp3.patch new file mode 100644 index 0000000..f05bec3 --- /dev/null +++ b/chromium-56.0.2924.87-enable-mp3.patch @@ -0,0 +1,54 @@ +diff -up chromium-56.0.2924.87/third_party/ffmpeg/ffmpeg_generated.gni.mp3condit chromium-56.0.2924.87/third_party/ffmpeg/ffmpeg_generated.gni +--- chromium-56.0.2924.87/third_party/ffmpeg/ffmpeg_generated.gni.mp3condit 2017-03-05 14:42:04.720461152 -0500 ++++ chromium-56.0.2924.87/third_party/ffmpeg/ffmpeg_generated.gni 2017-03-05 14:42:12.659306127 -0500 +@@ -175,17 +175,9 @@ if ((is_linux && current_cpu == "arm" && + ] + } + +-if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mips64el" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "arm" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "mipsel" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "ChromeOS") || (is_win && ffmpeg_branding == "Chrome")) { ++if ((current_cpu == "x64") || (is_android && current_cpu == "arm" && arm_use_neon) || (is_android && current_cpu == "arm64") || (is_android && current_cpu == "mips64el") || (is_android && current_cpu == "mipsel") || (is_android && current_cpu == "x86") || (is_linux && current_cpu == "arm" && arm_use_neon) || (is_linux && current_cpu == "arm" && arm_use_neon) || (is_linux && current_cpu == "arm") || (is_linux && current_cpu == "arm64") || (is_linux && current_cpu == "mipsel") || (is_linux && current_cpu == "x64") || (is_linux && current_cpu == "x86") || (is_win)) ++{ + ffmpeg_c_sources += [ +- "libavcodec/aac_ac3_parser.c", +- "libavcodec/aac_parser.c", +- "libavcodec/aacadtsdec.c", +- "libavcodec/aacps_float.c", +- "libavcodec/aacpsdsp_float.c", +- "libavcodec/aacsbr.c", +- "libavcodec/aactab.c", +- "libavcodec/ac3tab.c", +- "libavcodec/autorename_libavcodec_aacdec.c", + "libavcodec/autorename_libavcodec_mpegaudiodsp.c", + "libavcodec/autorename_libavcodec_sbrdsp.c", + "libavcodec/cbrt_data.c", +@@ -203,7 +195,6 @@ if ((current_cpu == "x64" && ffmpeg_bran + "libavcodec/mpegaudiodsp_float.c", + "libavcodec/sinewin.c", + "libavcodec/sinewin_fixed.c", +- "libavformat/aacdec.c", + "libavformat/apetag.c", + "libavformat/img2.c", + "libavformat/mov.c", +@@ -212,6 +203,22 @@ if ((current_cpu == "x64" && ffmpeg_bran + ] + } + ++if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mips64el" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "arm" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "mipsel" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "ChromeOS") || (is_win && ffmpeg_branding == "Chrome")) ++{ ++ ffmpeg_c_sources += [ ++ "libavcodec/aac_ac3_parser.c", ++ "libavcodec/aac_parser.c", ++ "libavcodec/aacadtsdec.c", ++ "libavcodec/aacps_float.c", ++ "libavcodec/aacpsdsp_float.c", ++ "libavcodec/aacsbr.c", ++ "libavcodec/aactab.c", ++ "libavcodec/ac3tab.c", ++ "libavcodec/autorename_libavcodec_aacdec.c", ++ "libavformat/aacdec.c", ++ ] ++} ++ + if ((is_android && current_cpu == "x64") || (is_android && current_cpu == "x86") || (is_linux && current_cpu == "x64") || (is_linux && current_cpu == "x86") || (is_mac) || (is_win)) { + ffmpeg_c_sources += [ + "libavcodec/x86/autorename_libavcodec_x86_vorbisdsp_init.c", diff --git a/chromium.spec b/chromium.spec index f175974..fa94812 100644 --- a/chromium.spec +++ b/chromium.spec @@ -97,7 +97,7 @@ BuildRequires: libicu-devel >= 5.4 Name: chromium%{chromium_channel} Version: %{majorversion}.0.2924.87 -Release: 7%{?dist} +Release: 8%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -161,6 +161,8 @@ Patch32: chromium-56.0.2924.87-unique-ptr-fix.patch # Fix issue with compilation on gcc7 # Thanks to Ben Noordhuis Patch33: chromium-56.0.2924.87-gcc7.patch +# Enable mp3 support +Patch34: chromium-56.0.2924.87-enable-mp3.patch ### Chromium Tests Patches ### @@ -542,6 +544,7 @@ members of the Chromium and WebDriver teams. %patch31 -p1 -b .permissive %patch32 -p1 -b .unique-ptr-fix %patch33 -p1 -b .gcc7 +%patch34 -p1 -b .mp3 ### Chromium Tests Patches ### %patch100 -p1 -b .use_system_opus @@ -1577,6 +1580,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Sun Mar 5 2017 Tom Callaway 56.0.2924.87-8 +- enable mp3 support + * Sat Mar 4 2017 Tom Callaway 56.0.2924.87-7 - fix desktop file to have "new window" and "new private window" actions diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index 1643cdd..5a86c24 100644 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -189,6 +189,29 @@ manual_files=" libavcodec/x86/hpeldsp_rnd_template.c \ libavutil/x86/x86inc.asm \ libavutil/x86/x86util.asm " +mp3_files=" libavcodec/autorename_libavcodec_mpegaudiodsp.c \ + libavcodec/autorename_libavcodec_sbrdsp.c \ + libavcodec/cbrt_data.c \ + libavcodec/dct.c \ + libavcodec/dct32_fixed.c \ + libavcodec/dct32_float.c \ + libavcodec/imdct15.c \ + libavcodec/kbdwin.c \ + libavcodec/mpegaudio.c \ + libavcodec/mpegaudio_parser.c \ + libavcodec/mpegaudiodec_fixed.c \ + libavcodec/mpegaudiodecheader.c \ + libavcodec/mpegaudiodsp_data.c \ + libavcodec/mpegaudiodsp_fixed.c \ + libavcodec/mpegaudiodsp_float.c \ + libavcodec/sinewin.c \ + libavcodec/sinewin_fixed.c \ + libavformat/apetag.c \ + libavformat/img2.c \ + libavformat/mov.c \ + libavformat/mov_chan.c \ + libavformat/mp3dec.c " + other_files=" BUILD.gn \ Changelog \ COPYING.GPLv2 \ @@ -216,6 +239,7 @@ copy_files "$generated_files_headers" 0 copy_files "$manual_files" 1 copy_files "$other_files" 1 copy_files "$header_files" 1 +copy_files "$mp3_files" 1 mkdir -p ../tmp_ffmpeg/tmp_chromium/config cp -r chromium/config ../tmp_ffmpeg/tmp_chromium From 62bb08504184d0f71b1be50220779d99af6fefd0 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Sun, 5 Mar 2017 14:07:32 -0800 Subject: [PATCH 0065/1449] fix sources --- sources | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sources b/sources index 99dffc0..27fdd8e 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 -SHA512 (chromium-56.0.2924.87-clean.tar.xz) = d238b7d2e1cbb6384e51854745e71746f0b01f498a8908f3bbf970149c312299e4a7f7487808bb3f2cd1094c0e02ef163b8227c5018db5b301c8bb96b55f983d SHA512 (policy_templates.zip) = 6a0564da805ee8d290453c9e46550fa8eed42d0fbd51a90eda566d888d9d7cf35ec9bb39f2340ec1ed98e7e813815eceb1f11cd202746815a7c8f8ecbef73a85 +SHA512 (chromium-56.0.2924.87-clean.tar.xz) = aa995eb83b9da15fda67b4e4489fe87a56b36219a40aadb40b0bd1b537a9ba8df2163aa10eaa93ba8bce78ea4b604ae014542519b8c3049a98fd7489f4edee95 From f2207432671daaccaed8b4e0838850a559f3bd66 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 8 Mar 2017 09:11:02 -0800 Subject: [PATCH 0066/1449] new source --- clean_ffmpeg.sh | 1 + sources | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index 5a86c24..0d62a21 100644 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -201,6 +201,7 @@ mp3_files=" libavcodec/autorename_libavcodec_mpegaudiodsp.c \ libavcodec/mpegaudio_parser.c \ libavcodec/mpegaudiodec_fixed.c \ libavcodec/mpegaudiodecheader.c \ + libavcodec/mpegaudiodsp.c \ libavcodec/mpegaudiodsp_data.c \ libavcodec/mpegaudiodsp_fixed.c \ libavcodec/mpegaudiodsp_float.c \ diff --git a/sources b/sources index 27fdd8e..33b1fb7 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 SHA512 (policy_templates.zip) = 6a0564da805ee8d290453c9e46550fa8eed42d0fbd51a90eda566d888d9d7cf35ec9bb39f2340ec1ed98e7e813815eceb1f11cd202746815a7c8f8ecbef73a85 -SHA512 (chromium-56.0.2924.87-clean.tar.xz) = aa995eb83b9da15fda67b4e4489fe87a56b36219a40aadb40b0bd1b537a9ba8df2163aa10eaa93ba8bce78ea4b604ae014542519b8c3049a98fd7489f4edee95 +SHA512 (chromium-56.0.2924.87-clean.tar.xz) = 4a8493cd31aff411294b567dc5e2ed420f8dfe6ae79bd36f9565167bb8db9dee6d54707d86d7d495690938879d6936e845d93e95b5dddfd1e09267fe9d4b436c From 4f30f8df52dfb509f181f40a754f333b00a77e2d Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 8 Mar 2017 11:05:53 -0800 Subject: [PATCH 0067/1449] more new sources --- clean_ffmpeg.sh | 5 +++++ sources | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index 0d62a21..b152cc9 100644 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -59,7 +59,9 @@ header_files=" libavcodec/x86/inline_asm.h \ libavcodec/avcodec.h \ libavcodec/blockdsp.h \ libavcodec/bytestream.h \ + libavcodec/cbrt_data.h \ libavcodec/dct.h \ + libavcodec/dct32.h \ libavcodec/error_resilience.h \ libavcodec/fdctdsp.h \ libavcodec/fft.h \ @@ -77,6 +79,7 @@ header_files=" libavcodec/x86/inline_asm.h \ libavcodec/mathops.h \ libavcodec/me_cmp.h \ libavcodec/motion_est.h \ + libavcodec/mpegaudiodsp.h \ libavcodec/mpegpicture.h \ libavcodec/mpegutils.h \ libavcodec/mpegvideo.h \ @@ -195,6 +198,7 @@ mp3_files=" libavcodec/autorename_libavcodec_mpegaudiodsp.c \ libavcodec/dct.c \ libavcodec/dct32_fixed.c \ libavcodec/dct32_float.c \ + libavcodec/dct32_template.c \ libavcodec/imdct15.c \ libavcodec/kbdwin.c \ libavcodec/mpegaudio.c \ @@ -205,6 +209,7 @@ mp3_files=" libavcodec/autorename_libavcodec_mpegaudiodsp.c \ libavcodec/mpegaudiodsp_data.c \ libavcodec/mpegaudiodsp_fixed.c \ libavcodec/mpegaudiodsp_float.c \ + libavcodec/sbrdsp.c \ libavcodec/sinewin.c \ libavcodec/sinewin_fixed.c \ libavformat/apetag.c \ diff --git a/sources b/sources index 33b1fb7..d8bb6af 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 SHA512 (policy_templates.zip) = 6a0564da805ee8d290453c9e46550fa8eed42d0fbd51a90eda566d888d9d7cf35ec9bb39f2340ec1ed98e7e813815eceb1f11cd202746815a7c8f8ecbef73a85 -SHA512 (chromium-56.0.2924.87-clean.tar.xz) = 4a8493cd31aff411294b567dc5e2ed420f8dfe6ae79bd36f9565167bb8db9dee6d54707d86d7d495690938879d6936e845d93e95b5dddfd1e09267fe9d4b436c +SHA512 (chromium-56.0.2924.87-clean.tar.xz) = f2c94254f5ce28d98e5c550b92fa80e565ebd0b038ece4f3dcec7b447bb2449c0be74be364acf0e90357cf8a8b0603b1bf1378745d2100642ac37a1976297244 From 76c310daad5c9e4bb9373b37a1baebbba160403b Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 8 Mar 2017 14:20:38 -0800 Subject: [PATCH 0068/1449] more new sources --- clean_ffmpeg.sh | 2 ++ sources | 1 + 2 files changed, 3 insertions(+) diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index b152cc9..f425538 100644 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -56,10 +56,12 @@ generated_files_headers="$generated_files_headers ${generated_files//.asm/.h}" header_files=" libavcodec/x86/inline_asm.h \ libavcodec/x86/mathops.h \ libavcodec/x86/vp56_arith.h \ + libavcodec/aac.h \ libavcodec/avcodec.h \ libavcodec/blockdsp.h \ libavcodec/bytestream.h \ libavcodec/cbrt_data.h \ + libavcodec/cbrt_tablegen.h \ libavcodec/dct.h \ libavcodec/dct32.h \ libavcodec/error_resilience.h \ diff --git a/sources b/sources index d8bb6af..dd7d6d0 100644 --- a/sources +++ b/sources @@ -1,3 +1,4 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 SHA512 (policy_templates.zip) = 6a0564da805ee8d290453c9e46550fa8eed42d0fbd51a90eda566d888d9d7cf35ec9bb39f2340ec1ed98e7e813815eceb1f11cd202746815a7c8f8ecbef73a85 SHA512 (chromium-56.0.2924.87-clean.tar.xz) = f2c94254f5ce28d98e5c550b92fa80e565ebd0b038ece4f3dcec7b447bb2449c0be74be364acf0e90357cf8a8b0603b1bf1378745d2100642ac37a1976297244 +SHA512 (chromium-56.0.2924.87-clean.tar.xz) = 7bc65966cb91a9bfacee95b699c5204a657ac2427a0401b0c91f621ae4652732943721493eae3dda826dd1c0b3d87d95caa36cc488e5547abb9f97c5fdc1f83f From 2923a188be784ce3b79ed360fcc762d8b9e629ce Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 8 Mar 2017 14:36:59 -0800 Subject: [PATCH 0069/1449] more new sources --- sources | 1 - 1 file changed, 1 deletion(-) diff --git a/sources b/sources index dd7d6d0..a0bb73d 100644 --- a/sources +++ b/sources @@ -1,4 +1,3 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 SHA512 (policy_templates.zip) = 6a0564da805ee8d290453c9e46550fa8eed42d0fbd51a90eda566d888d9d7cf35ec9bb39f2340ec1ed98e7e813815eceb1f11cd202746815a7c8f8ecbef73a85 -SHA512 (chromium-56.0.2924.87-clean.tar.xz) = f2c94254f5ce28d98e5c550b92fa80e565ebd0b038ece4f3dcec7b447bb2449c0be74be364acf0e90357cf8a8b0603b1bf1378745d2100642ac37a1976297244 SHA512 (chromium-56.0.2924.87-clean.tar.xz) = 7bc65966cb91a9bfacee95b699c5204a657ac2427a0401b0c91f621ae4652732943721493eae3dda826dd1c0b3d87d95caa36cc488e5547abb9f97c5fdc1f83f From 74ea286241de725e6704ed0592180e6e10f2cc83 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 21 Mar 2017 11:23:01 -0400 Subject: [PATCH 0070/1449] 57.0.2987.110 --- chromium-57.0.2987.110-enable-mp3.patch | 101 ++++++++++++++++++++++++ chromium.spec | 23 +++--- clean_ffmpeg.sh | 44 ++++++++++- 3 files changed, 156 insertions(+), 12 deletions(-) create mode 100644 chromium-57.0.2987.110-enable-mp3.patch diff --git a/chromium-57.0.2987.110-enable-mp3.patch b/chromium-57.0.2987.110-enable-mp3.patch new file mode 100644 index 0000000..676ade1 --- /dev/null +++ b/chromium-57.0.2987.110-enable-mp3.patch @@ -0,0 +1,101 @@ +diff -up chromium-57.0.2987.110/third_party/ffmpeg/ffmpeg_generated.gni.mp3 chromium-57.0.2987.110/third_party/ffmpeg/ffmpeg_generated.gni +--- chromium-57.0.2987.110/third_party/ffmpeg/ffmpeg_generated.gni.mp3 2017-03-20 13:53:24.000000000 -0400 ++++ chromium-57.0.2987.110/third_party/ffmpeg/ffmpeg_generated.gni 2017-03-20 13:59:11.214419428 -0400 +@@ -176,19 +176,12 @@ if ((is_linux && current_cpu == "arm" && + ] + } + +-if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mips64el" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "arm" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "mipsel" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "ChromeOS") || (is_win && ffmpeg_branding == "Chrome")) { ++if ((current_cpu == "x64") || (is_android && current_cpu == "arm" && arm_use_neon) || (is_android && current_cpu == "arm64") || (is_android && current_cpu == "mips64el") || (is_android && current_cpu == "mipsel") || (is_android && current_cpu == "x86") || (is_linux && current_cpu == "arm" && arm_use_neon) || (is_linux && current_cpu == "arm" && arm_use_neon) || (is_linux && current_cpu == "arm") || (is_linux && current_cpu == "arm64") || (is_linux && current_cpu == "mipsel") || (is_linux && current_cpu == "x64") || (is_linux && current_cpu == "x86") || (is_win)) ++{ + ffmpeg_c_sources += [ +- "libavcodec/aac_ac3_parser.c", +- "libavcodec/aac_parser.c", +- "libavcodec/aacadtsdec.c", +- "libavcodec/aacps_float.c", +- "libavcodec/aacpsdsp_float.c", +- "libavcodec/aacsbr.c", +- "libavcodec/aactab.c", +- "libavcodec/ac3tab.c", +- "libavcodec/autorename_libavcodec_aacdec.c", + "libavcodec/autorename_libavcodec_mpegaudiodsp.c", + "libavcodec/autorename_libavcodec_sbrdsp.c", ++ "libavcodec/ac3tab.c", + "libavcodec/cbrt_data.c", + "libavcodec/dct.c", + "libavcodec/dct32_fixed.c", +@@ -204,7 +197,6 @@ if ((current_cpu == "x64" && ffmpeg_bran + "libavcodec/mpegaudiodsp_float.c", + "libavcodec/sinewin.c", + "libavcodec/sinewin_fixed.c", +- "libavformat/aacdec.c", + "libavformat/apetag.c", + "libavformat/img2.c", + "libavformat/mov.c", +@@ -213,6 +205,21 @@ if ((current_cpu == "x64" && ffmpeg_bran + ] + } + ++if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mips64el" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "arm" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "mipsel" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "ChromeOS") || (is_win && ffmpeg_branding == "Chrome")) ++{ ++ ffmpeg_c_sources += [ ++ "libavcodec/aac_ac3_parser.c", ++ "libavcodec/aac_parser.c", ++ "libavcodec/aacadtsdec.c", ++ "libavcodec/aacps_float.c", ++ "libavcodec/aacpsdsp_float.c", ++ "libavcodec/aacsbr.c", ++ "libavcodec/aactab.c", ++ "libavcodec/autorename_libavcodec_aacdec.c", ++ "libavformat/aacdec.c", ++ ] ++} ++ + if ((is_android && current_cpu == "x64") || (is_android && current_cpu == "x86") || (is_linux && current_cpu == "x64") || (is_linux && current_cpu == "x86") || (is_mac) || (is_win)) { + ffmpeg_c_sources += [ + "libavcodec/x86/autorename_libavcodec_x86_vorbisdsp_init.c", +@@ -312,21 +319,31 @@ if ((is_linux && current_cpu == "x64") | + if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "ChromeOS") || (is_win && ffmpeg_branding == "Chrome")) { + ffmpeg_c_sources += [ + "libavcodec/x86/aacpsdsp_init.c", ++ ] ++} ++ ++if ((current_cpu == "x64") || (is_android && current_cpu == "x86") || (is_linux && current_cpu == "x64") || (is_linux && current_cpu == "x86") || (is_win)) { ++ ffmpeg_c_sources += [ + "libavcodec/x86/dct_init.c", + "libavcodec/x86/mpegaudiodsp.c", + "libavcodec/x86/sbrdsp_init.c", + ] + } + +-if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "ChromeOS") || (is_win && ffmpeg_branding == "Chrome")) { ++if ((current_cpu == "x64") || (is_android && current_cpu == "x86") || (is_linux && current_cpu == "x64") || (is_linux && current_cpu == "x86") || (is_win)) { + ffmpeg_yasm_sources += [ +- "libavcodec/x86/aacpsdsp.asm", + "libavcodec/x86/dct32.asm", + "libavcodec/x86/imdct36.asm", + "libavcodec/x86/sbrdsp.asm", + ] + } + ++if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "ChromeOS") || (is_win && ffmpeg_branding == "Chrome")) { ++ ffmpeg_yasm_sources += [ ++ "libavcodec/x86/aacpsdsp.asm", ++ ] ++} ++ + if ((is_linux && current_cpu == "arm" && arm_use_neon) || (is_linux && current_cpu == "arm")) { + ffmpeg_c_sources += [ + "libavcodec/arm/h264pred_init_arm.c", +diff -up chromium-57.0.2987.110/third_party/ffmpeg/libavcodec/sbrdsp.c.mp3 chromium-57.0.2987.110/third_party/ffmpeg/libavcodec/sbrdsp.c +--- chromium-57.0.2987.110/third_party/ffmpeg/libavcodec/sbrdsp.c.mp3 2017-03-20 14:15:22.068309439 -0400 ++++ chromium-57.0.2987.110/third_party/ffmpeg/libavcodec/sbrdsp.c 2017-03-20 14:15:47.826802603 -0400 +@@ -23,6 +23,7 @@ + #define USE_FIXED 0 + + #include "aac.h" ++#include "aacsbrdata.h" + #include "config.h" + #include "libavutil/attributes.h" + #include "libavutil/intfloat.h" diff --git a/chromium.spec b/chromium.spec index fa94812..1529937 100644 --- a/chromium.spec +++ b/chromium.spec @@ -93,11 +93,11 @@ BuildRequires: libicu-devel >= 5.4 %global default_client_secret miEreAep8nuvTdvLums6qyLK %global chromoting_client_id 449907151817-8vnlfih032ni8c4jjps9int9t86k546t.apps.googleusercontent.com -%global majorversion 56 +%global majorversion 57 Name: chromium%{chromium_channel} -Version: %{majorversion}.0.2924.87 -Release: 8%{?dist} +Version: %{majorversion}.0.2987.110 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -148,9 +148,6 @@ Patch26: chromium-54.0.2840.59-i686-ld-memory-tricks.patch # obj/content/renderer/renderer/child_frame_compositing_helper.o: In function `content::ChildFrameCompositingHelper::OnSetSurface(cc::SurfaceId const&, gfx::Size const&, float, cc::SurfaceSequence const&)': # /builddir/build/BUILD/chromium-54.0.2840.90/out/Release/../../content/renderer/child_frame_compositing_helper.cc:214: undefined reference to `cc_blink::WebLayerImpl::setOpaque(bool)' Patch27: chromium-54.0.2840.90-setopaque.patch -# Fix rvalue issue in remoting code -# https://chromium.googlesource.com/chromium/src.git/+/29bfbecb49572b61264de7acccf8b23942bba43d%5E%21/#F0 -Patch29: chromium-55.0.2883.87-rvalue-fix.patch # Fix compiler issue with gcc 4.9 # https://chromium.googlesource.com/external/webrtc/trunk/webrtc/+/69556b1c264da9e0f484eaab890ebd555966630c%5E%21/#F0 Patch30: chromium-56.0.2924.87-gcc-49.patch @@ -162,8 +159,7 @@ Patch32: chromium-56.0.2924.87-unique-ptr-fix.patch # Thanks to Ben Noordhuis Patch33: chromium-56.0.2924.87-gcc7.patch # Enable mp3 support -Patch34: chromium-56.0.2924.87-enable-mp3.patch - +Patch34: chromium-57.0.2987.110-enable-mp3.patch ### Chromium Tests Patches ### Patch100: chromium-46.0.2490.86-use_system_opus.patch @@ -531,7 +527,7 @@ members of the Chromium and WebDriver teams. %patch15 -p1 -b .sandboxpie %patch16 -p1 -b .armwebrtc %patch18 -p1 -b .etc -%patch19 -p1 -b .madv_free +# %%patch19 -p1 -b .madv_free %patch20 -p1 -b .gnsystem %patch21 -p1 -b .lastcommit %patch22 -p1 -b .timefix @@ -539,7 +535,6 @@ members of the Chromium and WebDriver teams. %patch25 -p1 -b .jpegfix %patch26 -p1 -b .ldmemory %patch27 -p1 -b .setopaque -%patch29 -p1 -b .rvalue %patch30 -p1 -b .gcc49 %patch31 -p1 -b .permissive %patch32 -p1 -b .unique-ptr-fix @@ -678,7 +673,7 @@ CHROMIUM_BROWSER_GN_DEFINES+=' is_component_ffmpeg=false is_component_build=fals CHROMIUM_BROWSER_GN_DEFINES+=' remove_webcore_debug_symbols=true enable_hangout_services_extension=true' CHROMIUM_BROWSER_GN_DEFINES+=' enable_hotwording=false use_aura=true' CHROMIUM_BROWSER_GN_DEFINES+=' enable_webrtc=true enable_widevine=true' -CHROMIUM_BROWSER_GN_DEFINES+=' use_gold=false' +CHROMIUM_BROWSER_GN_DEFINES+=' use_gold=false fieldtrial_testing_like_official_build=true' %if 0%{gtk3} CHROMIUM_BROWSER_GN_DEFINES+=' use_gtk3=true' %else @@ -1580,6 +1575,12 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Mon Mar 20 2017 Tom Callaway 57.0.2987.110-1 +- update to 57.0.2987.110 + +* Tue Mar 14 2017 Tom Callaway 57.0.2987.98-1 +- update to 57.0.2987.98 + * Sun Mar 5 2017 Tom Callaway 56.0.2924.87-8 - enable mp3 support diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index f425538..39e68f7 100644 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -57,6 +57,12 @@ header_files=" libavcodec/x86/inline_asm.h \ libavcodec/x86/mathops.h \ libavcodec/x86/vp56_arith.h \ libavcodec/aac.h \ + libavcodec/aacps.h \ + libavcodec/aacpsdsp.h \ + libavcodec/aacsbrdata.h \ + libavcodec/aac_defines.h \ + libavcodec/ac3.h \ + libavcodec/ac3tab.h \ libavcodec/avcodec.h \ libavcodec/blockdsp.h \ libavcodec/bytestream.h \ @@ -77,17 +83,25 @@ header_files=" libavcodec/x86/inline_asm.h \ libavcodec/h264chroma.h \ libavcodec/hpeldsp.h \ libavcodec/idctdsp.h \ + libavcodec/imdct15.h \ libavcodec/internal.h \ + libavcodec/kbdwin.h \ libavcodec/mathops.h \ libavcodec/me_cmp.h \ libavcodec/motion_est.h \ + libavcodec/mpeg12data.h \ + libavcodec/mpegaudio.h \ + libavcodec/mpegaudiodecheader.h \ + libavcodec/mpegaudiodectab.h \ libavcodec/mpegaudiodsp.h \ + libavcodec/mpegaudio_tablegen.h \ libavcodec/mpegpicture.h \ libavcodec/mpegutils.h \ libavcodec/mpegvideo.h \ libavcodec/mpegvideodsp.h \ libavcodec/mpegvideoencdsp.h \ libavcodec/options_table.h \ + libavcodec/opus_rc.h \ libavcodec/pcm_tablegen.h \ libavcodec/pixblockdsp.h \ libavcodec/pixels.h \ @@ -97,6 +111,10 @@ header_files=" libavcodec/x86/inline_asm.h \ libavcodec/rectangle.h \ libavcodec/rl.h \ libavcodec/rnd_avg.h \ + libavcodec/sbr.h \ + libavcodec/sbrdsp.h \ + libavcodec/sinewin.h \ + libavcodec/sinewin_tablegen.h \ libavcodec/thread.h \ libavcodec/unary.h \ libavcodec/version.h \ @@ -109,10 +127,13 @@ header_files=" libavcodec/x86/inline_asm.h \ libavcodec/vp56dsp.h \ libavcodec/vp8data.h \ libavcodec/vp8dsp.h \ + libavformat/apetag.h \ libavformat/audiointerleave.h \ libavformat/avformat.h \ libavformat/dv.h \ + libavformat/img2.h \ libavformat/internal.h \ + libavformat/mov_chan.h \ libavformat/pcm.h \ libavformat/rdt.h \ libavformat/rtp.h \ @@ -153,6 +174,8 @@ header_files=" libavcodec/x86/inline_asm.h \ libavutil/pixfmt.h \ libavutil/qsort.h \ libavutil/replaygain.h \ + libavutil/softfloat.h \ + libavutil/softfloat_tables.h \ libavutil/thread.h \ libavutil/timer.h \ libavutil/timestamp.h \ @@ -194,7 +217,16 @@ manual_files=" libavcodec/x86/hpeldsp_rnd_template.c \ libavutil/x86/x86inc.asm \ libavutil/x86/x86util.asm " -mp3_files=" libavcodec/autorename_libavcodec_mpegaudiodsp.c \ +mp3_files=" libavcodec/aac_ac3_parser.c \ + libavcodec/aac_parser.c \ + libavcodec/aacadtsdec.c \ + libavcodec/aacps_float.c \ + libavcodec/aacpsdsp_float.c \ + libavcodec/aacsbr.c \ + libavcodec/aactab.c \ + libavcodec/ac3tab.c \ + libavcodec/autorename_libavcodec_aacdec.c \ + libavcodec/autorename_libavcodec_mpegaudiodsp.c \ libavcodec/autorename_libavcodec_sbrdsp.c \ libavcodec/cbrt_data.c \ libavcodec/dct.c \ @@ -206,14 +238,24 @@ mp3_files=" libavcodec/autorename_libavcodec_mpegaudiodsp.c \ libavcodec/mpegaudio.c \ libavcodec/mpegaudio_parser.c \ libavcodec/mpegaudiodec_fixed.c \ + libavcodec/mpegaudiodec_template.c \ libavcodec/mpegaudiodecheader.c \ libavcodec/mpegaudiodsp.c \ libavcodec/mpegaudiodsp_data.c \ libavcodec/mpegaudiodsp_fixed.c \ libavcodec/mpegaudiodsp_float.c \ + libavcodec/mpegaudiodsp_template.c \ libavcodec/sbrdsp.c \ + libavcodec/sbrdsp_template.c \ libavcodec/sinewin.c \ libavcodec/sinewin_fixed.c \ + libavcodec/x86/dct_init.c \ + libavcodec/x86/dct32.asm \ + libavcodec/x86/imdct36.asm \ + libavcodec/x86/mpegaudiodsp.c \ + libavcodec/x86/sbrdsp_init.c \ + libavcodec/x86/sbrdsp.asm \ + libavformat/aacdec.c \ libavformat/apetag.c \ libavformat/img2.c \ libavformat/mov.c \ From 6d6dc4131f95c091b4644d211512be5b28ad5c26 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 21 Mar 2017 14:52:58 -0400 Subject: [PATCH 0071/1449] fix sources --- .gitignore | 1 + sources | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index b8bbaec..32bcb26 100644 --- a/.gitignore +++ b/.gitignore @@ -16,3 +16,4 @@ /chromium-55.0.2883.75-clean.tar.xz /chromium-55.0.2883.87-clean.tar.xz /chromium-56.0.2924.87-clean.tar.xz +/chromium-57.0.2987.110-clean.tar.xz diff --git a/sources b/sources index a0bb73d..920d0f1 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 SHA512 (policy_templates.zip) = 6a0564da805ee8d290453c9e46550fa8eed42d0fbd51a90eda566d888d9d7cf35ec9bb39f2340ec1ed98e7e813815eceb1f11cd202746815a7c8f8ecbef73a85 -SHA512 (chromium-56.0.2924.87-clean.tar.xz) = 7bc65966cb91a9bfacee95b699c5204a657ac2427a0401b0c91f621ae4652732943721493eae3dda826dd1c0b3d87d95caa36cc488e5547abb9f97c5fdc1f83f +SHA512 (chromium-57.0.2987.110-clean.tar.xz) = 9ea6a1ef5a553f9a51470248b8c0bb52ba8ff157aa6bc12515d8e589eff5e9dcaa55e37f5de4241bac96694c9b41ea260f827425ce1f07d5244369249373d4fc From 2270aa0181fe30edf08edc4a5a10f5f88cfad825 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 21 Mar 2017 20:27:32 -0400 Subject: [PATCH 0072/1449] fix privlibs --- chromium-56.0.2924.87-enable-mp3.patch | 54 -------------------------- chromium.spec | 7 +++- 2 files changed, 5 insertions(+), 56 deletions(-) delete mode 100644 chromium-56.0.2924.87-enable-mp3.patch diff --git a/chromium-56.0.2924.87-enable-mp3.patch b/chromium-56.0.2924.87-enable-mp3.patch deleted file mode 100644 index f05bec3..0000000 --- a/chromium-56.0.2924.87-enable-mp3.patch +++ /dev/null @@ -1,54 +0,0 @@ -diff -up chromium-56.0.2924.87/third_party/ffmpeg/ffmpeg_generated.gni.mp3condit chromium-56.0.2924.87/third_party/ffmpeg/ffmpeg_generated.gni ---- chromium-56.0.2924.87/third_party/ffmpeg/ffmpeg_generated.gni.mp3condit 2017-03-05 14:42:04.720461152 -0500 -+++ chromium-56.0.2924.87/third_party/ffmpeg/ffmpeg_generated.gni 2017-03-05 14:42:12.659306127 -0500 -@@ -175,17 +175,9 @@ if ((is_linux && current_cpu == "arm" && - ] - } - --if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mips64el" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "arm" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "mipsel" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "ChromeOS") || (is_win && ffmpeg_branding == "Chrome")) { -+if ((current_cpu == "x64") || (is_android && current_cpu == "arm" && arm_use_neon) || (is_android && current_cpu == "arm64") || (is_android && current_cpu == "mips64el") || (is_android && current_cpu == "mipsel") || (is_android && current_cpu == "x86") || (is_linux && current_cpu == "arm" && arm_use_neon) || (is_linux && current_cpu == "arm" && arm_use_neon) || (is_linux && current_cpu == "arm") || (is_linux && current_cpu == "arm64") || (is_linux && current_cpu == "mipsel") || (is_linux && current_cpu == "x64") || (is_linux && current_cpu == "x86") || (is_win)) -+{ - ffmpeg_c_sources += [ -- "libavcodec/aac_ac3_parser.c", -- "libavcodec/aac_parser.c", -- "libavcodec/aacadtsdec.c", -- "libavcodec/aacps_float.c", -- "libavcodec/aacpsdsp_float.c", -- "libavcodec/aacsbr.c", -- "libavcodec/aactab.c", -- "libavcodec/ac3tab.c", -- "libavcodec/autorename_libavcodec_aacdec.c", - "libavcodec/autorename_libavcodec_mpegaudiodsp.c", - "libavcodec/autorename_libavcodec_sbrdsp.c", - "libavcodec/cbrt_data.c", -@@ -203,7 +195,6 @@ if ((current_cpu == "x64" && ffmpeg_bran - "libavcodec/mpegaudiodsp_float.c", - "libavcodec/sinewin.c", - "libavcodec/sinewin_fixed.c", -- "libavformat/aacdec.c", - "libavformat/apetag.c", - "libavformat/img2.c", - "libavformat/mov.c", -@@ -212,6 +203,22 @@ if ((current_cpu == "x64" && ffmpeg_bran - ] - } - -+if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mips64el" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "arm" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "mipsel" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "ChromeOS") || (is_win && ffmpeg_branding == "Chrome")) -+{ -+ ffmpeg_c_sources += [ -+ "libavcodec/aac_ac3_parser.c", -+ "libavcodec/aac_parser.c", -+ "libavcodec/aacadtsdec.c", -+ "libavcodec/aacps_float.c", -+ "libavcodec/aacpsdsp_float.c", -+ "libavcodec/aacsbr.c", -+ "libavcodec/aactab.c", -+ "libavcodec/ac3tab.c", -+ "libavcodec/autorename_libavcodec_aacdec.c", -+ "libavformat/aacdec.c", -+ ] -+} -+ - if ((is_android && current_cpu == "x64") || (is_android && current_cpu == "x86") || (is_linux && current_cpu == "x64") || (is_linux && current_cpu == "x86") || (is_mac) || (is_win)) { - ffmpeg_c_sources += [ - "libavcodec/x86/autorename_libavcodec_x86_vorbisdsp_init.c", diff --git a/chromium.spec b/chromium.spec index 1529937..210c28c 100644 --- a/chromium.spec +++ b/chromium.spec @@ -20,7 +20,7 @@ # Requires is trickier. %global __provides_exclude_from %{chromium_path}/.*\\.so|%{chromium_path}/lib/.*\\.so -%global privlibs libaccessibility|libaura_extra|libaura|libbase_i18n|libbase|libbindings|libblink_common|libblink_core|libblink_modules|libblink_platform|libblink_web|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture|libcc_blink|libcc_ipc|libcc_proto|libcc|libcc_surfaces|libchromium_sqlite3|libclearkeycdm|libcloud_policy_proto_generated_compile|libcommon|libcompositor|libcontent|libcpp|libcrcrypto|libdbus|libdevice_base|libdevice_battery|libdevice_event_log|libdevice_gamepad|libdevices|libdevice_vibration|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay_compositor|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libevents_base|libevents_devices_x11|libevents_ipc|libevents_ozone_layout|libevents|libevents_x|libffmpeg|libfont_service_library|libgcm|libgeneric_sensor|libgeolocation|libgeometry|libgesture_detection|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_x11|libgin|libgles2_c_lib|libgles2_implementation|libgles2_utils|libGLESv2|libgl_init|libgl_wrapper|libgpu|libgtk2ui|libicui18n|libicuuc|libipc|libjs|libkeyboard|libkeyboard_with_content|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libmedia_blink|libmedia_gpu|libmedia|libmessage_center|libmidi|libmojo_common_lib|libmojo_ime_lib|libmojo_public_system_cpp|libmojo_public_system|libmojo_system_impl|libnative_theme|libnet|libnet_with_v8|libonc|libplatform|libpolicy_component|libpolicy_proto|libpower_monitor|libpower_save_blocker|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|librange|libsandbox_services|libseccomp_bpf|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtest_ime_driver_library|libtime_zone_monitor|libtracing_library|libtracing|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_library|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libuser_manager|libuser_prefs|libv8_libbase|libv8_libplatform|libv8|libviews|libwebdata_common|libweb_dialogs|libwebview|libwidevinecdmadapter|libwidevinecdm|libwm|libwtf|libx11_events_platform|libx11_window +%global privlibs libaccessibility|libaura_extra|libaura|libbase_i18n|libbase|libbindings|libblink_common|libblink_core|libblink_modules|libblink_platform|libblink_web|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture|libcc_animation|libcc_blink|libcc_ipc|libcc_proto|libcc|libcc_surfaces|libchromium_sqlite3|libclearkeycdm|libcloud_policy_proto_generated_compile|libcommon|libcompositor|libcontent|libcpp|libcrcrypto|libdbus|libdevice_base|libdevice_battery|libdevice_event_log|libdevice_gamepad|libdevices|libdevice_vibration|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay_compositor|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libevents_base|libevents_devices_x11|libevents_ipc|libevents_ozone_layout|libevents|libevents_x|libffmpeg|libfont_service_library|libgcm|libgeneric_sensor|libgeolocation|libgeometry|libgesture_detection|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_x11|libgin|libgles2_c_lib|libgles2_implementation|libgles2_utils|libGLESv2|libgl_in_process_context|libgl_init|libgl_wrapper|libgpu|libgtk2ui|libicui18n|libicuuc|libipc|libjs|libkeyboard|libkeyboard_with_content|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libmedia_blink|libmedia_gpu|libmedia|libmessage_center|libmidi|libmojo_common_lib|libmojo_ime_lib|libmojo_public_system_cpp|libmojo_public_system|libmojo_system_impl|libnative_theme|libnet|libnet_with_v8|libonc|libplatform|libpolicy_component|libpolicy_proto|libpower_monitor|libpower_save_blocker|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|librange|libsandbox_services|libseccomp_bpf|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtest_ime_driver_library|libtime_zone_monitor|libtracing_library|libtracing|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_library|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libuser_manager|libuser_prefs|libv8_libbase|libv8_libplatform|libv8|libviews|libwebdata_common|libweb_dialogs|libwebview|libwidevinecdmadapter|libwidevinecdm|libwm|libwtf|libx11_events_platform|libx11_window %global __requires_exclude ^(%{privlibs})\\.so # Try to not use the Xvfb as it is slow.. @@ -97,7 +97,7 @@ BuildRequires: libicu-devel >= 5.4 Name: chromium%{chromium_channel} Version: %{majorversion}.0.2987.110 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1575,6 +1575,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Tue Mar 21 2017 Tom Callaway 57.0.2987.110-2 +- fix privlibs + * Mon Mar 20 2017 Tom Callaway 57.0.2987.110-1 - update to 57.0.2987.110 From c7e1c43ab6ccfcab1d3d91ab58cc79dd43de6ceb Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Sun, 26 Mar 2017 11:15:12 -0400 Subject: [PATCH 0073/1449] fix mp3 enablement --- chromium-57.0.2987.110-enable-mp3.patch | 27 +++++++++++++++++++++++++ chromium.spec | 13 +++++++++++- 2 files changed, 39 insertions(+), 1 deletion(-) diff --git a/chromium-57.0.2987.110-enable-mp3.patch b/chromium-57.0.2987.110-enable-mp3.patch index 676ade1..a8b9ee6 100644 --- a/chromium-57.0.2987.110-enable-mp3.patch +++ b/chromium-57.0.2987.110-enable-mp3.patch @@ -99,3 +99,30 @@ diff -up chromium-57.0.2987.110/third_party/ffmpeg/libavcodec/sbrdsp.c.mp3 chrom #include "config.h" #include "libavutil/attributes.h" #include "libavutil/intfloat.h" +diff -up chromium-57.0.2987.110/media/base/mime_util_internal.cc.mp3 chromium-57.0.2987.110/media/base/mime_util_internal.cc +--- chromium-57.0.2987.110/media/base/mime_util_internal.cc.mp3 2017-03-26 11:11:41.480377812 -0400 ++++ chromium-57.0.2987.110/media/base/mime_util_internal.cc 2017-03-26 11:13:19.289810708 -0400 +@@ -291,10 +291,10 @@ void MimeUtil::AddSupportedMediaFormats( + CodecSet webm_codecs(webm_audio_codecs); + webm_codecs.insert(webm_video_codecs.begin(), webm_video_codecs.end()); + +-#if defined(USE_PROPRIETARY_CODECS) + CodecSet mp3_codecs; + mp3_codecs.insert(MP3); + ++#if defined(USE_PROPRIETARY_CODECS) + CodecSet aac; + aac.insert(MPEG2_AAC); + aac.insert(MPEG4_AAC); +@@ -335,10 +335,10 @@ void MimeUtil::AddSupportedMediaFormats( + AddContainerWithCodecs("application/ogg", ogg_codecs, false); + AddContainerWithCodecs("audio/flac", implicit_codec, false); + +-#if defined(USE_PROPRIETARY_CODECS) + AddContainerWithCodecs("audio/mpeg", mp3_codecs, true); // Allow "mp3". + AddContainerWithCodecs("audio/mp3", implicit_codec, true); + AddContainerWithCodecs("audio/x-mp3", implicit_codec, true); ++#if defined(USE_PROPRIETARY_CODECS) + AddContainerWithCodecs("audio/aac", implicit_codec, true); // AAC / ADTS. + AddContainerWithCodecs("audio/mp4", mp4_audio_codecs, true); + DCHECK(!mp4_video_codecs.empty()); diff --git a/chromium.spec b/chromium.spec index 210c28c..fd7718e 100644 --- a/chromium.spec +++ b/chromium.spec @@ -97,7 +97,7 @@ BuildRequires: libicu-devel >= 5.4 Name: chromium%{chromium_channel} Version: %{majorversion}.0.2987.110 -Release: 2%{?dist} +Release: 3%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -539,7 +539,14 @@ members of the Chromium and WebDriver teams. %patch31 -p1 -b .permissive %patch32 -p1 -b .unique-ptr-fix %patch33 -p1 -b .gcc7 +# RHEL 7 compiler is too old +# does not have stdatomic.h +# In file included from ../../third_party/ffmpeg/libavutil/autorename_libavutil_cpu.c:2:0: +# ../../third_party/ffmpeg/libavutil/cpu.c:24:23: fatal error: stdatomic.h: No such file or directory +# #include +%if 0%{?fedora} %patch34 -p1 -b .mp3 +%endif ### Chromium Tests Patches ### %patch100 -p1 -b .use_system_opus @@ -1575,6 +1582,10 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Sun Mar 26 2017 Tom Callaway 57.0.2987.110-3 +- fix mp3 enablement +- disable mp3 enablement on RHEL (compiler too old) + * Tue Mar 21 2017 Tom Callaway 57.0.2987.110-2 - fix privlibs From c02163cf2babda85ad2f9c2d02c3a3d5b7e13fd8 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Sun, 26 Mar 2017 17:08:07 -0400 Subject: [PATCH 0074/1449] add compat stdatomic.h --- chromium.spec | 22 ++++--- stdatomic.h | 173 ++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 186 insertions(+), 9 deletions(-) create mode 100644 stdatomic.h diff --git a/chromium.spec b/chromium.spec index fd7718e..aece18d 100644 --- a/chromium.spec +++ b/chromium.spec @@ -97,7 +97,7 @@ BuildRequires: libicu-devel >= 5.4 Name: chromium%{chromium_channel} Version: %{majorversion}.0.2987.110 -Release: 3%{?dist} +Release: 4%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -195,7 +195,11 @@ Source10: https://dl.google.com/dl/edgedl/chrome/policy/policy_templates.zip Source11: chrome-remote-desktop.service Source12: chromium-browser.appdata.xml Source13: master_preferences - +# Only needed for platforms where gcc doesn't have stdatomic.h +# RHEL 7 or older +# Taken from https://raw.githubusercontent.com/FFmpeg/FFmpeg/master/compat/atomics/gcc/stdatomic.h +# on 2017-03-26 +Source14: stdatomic.h # We can assume gcc and binutils. BuildRequires: gcc-c++ @@ -539,19 +543,16 @@ members of the Chromium and WebDriver teams. %patch31 -p1 -b .permissive %patch32 -p1 -b .unique-ptr-fix %patch33 -p1 -b .gcc7 -# RHEL 7 compiler is too old -# does not have stdatomic.h -# In file included from ../../third_party/ffmpeg/libavutil/autorename_libavutil_cpu.c:2:0: -# ../../third_party/ffmpeg/libavutil/cpu.c:24:23: fatal error: stdatomic.h: No such file or directory -# #include -%if 0%{?fedora} %patch34 -p1 -b .mp3 -%endif ### Chromium Tests Patches ### %patch100 -p1 -b .use_system_opus %patch101 -p1 -b .use_system_harfbuzz +%if ! %{?fedora} +cp -a %{SOURCE14} third_party/ffmpeg/libavutil/ +%endif + %if 0%{?asan} export CC="clang" export CXX="clang++" @@ -1582,6 +1583,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Sun Mar 26 2017 Tom Callaway 57.0.2987.110-4 +- copy compat stdatomic.h in for RHEL. Re-enable mp3 enablement. + * Sun Mar 26 2017 Tom Callaway 57.0.2987.110-3 - fix mp3 enablement - disable mp3 enablement on RHEL (compiler too old) diff --git a/stdatomic.h b/stdatomic.h new file mode 100644 index 0000000..2b64687 --- /dev/null +++ b/stdatomic.h @@ -0,0 +1,173 @@ +/* + * This file is part of FFmpeg. + * + * FFmpeg is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * FFmpeg is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with FFmpeg; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + +/* + * based on vlc_atomic.h from VLC + * Copyright (C) 2010 Rémi Denis-Courmont + */ + +#ifndef COMPAT_ATOMICS_GCC_STDATOMIC_H +#define COMPAT_ATOMICS_GCC_STDATOMIC_H + +#include +#include + +#define ATOMIC_FLAG_INIT 0 + +#define ATOMIC_VAR_INIT(value) (value) + +#define atomic_init(obj, value) \ +do { \ + *(obj) = (value); \ +} while(0) + +#define kill_dependency(y) ((void)0) + +#define atomic_thread_fence(order) \ + __sync_synchronize() + +#define atomic_signal_fence(order) \ + ((void)0) + +#define atomic_is_lock_free(obj) 0 + +typedef _Bool atomic_flag; +typedef _Bool atomic_bool; +typedef char atomic_char; +typedef signed char atomic_schar; +typedef unsigned char atomic_uchar; +typedef short atomic_short; +typedef unsigned short atomic_ushort; +typedef int atomic_int; +typedef unsigned int atomic_uint; +typedef long atomic_long; +typedef unsigned long atomic_ulong; +typedef long long atomic_llong; +typedef unsigned long long atomic_ullong; +typedef wchar_t atomic_wchar_t; +typedef int_least8_t atomic_int_least8_t; +typedef uint_least8_t atomic_uint_least8_t; +typedef int_least16_t atomic_int_least16_t; +typedef uint_least16_t atomic_uint_least16_t; +typedef int_least32_t atomic_int_least32_t; +typedef uint_least32_t atomic_uint_least32_t; +typedef int_least64_t atomic_int_least64_t; +typedef uint_least64_t atomic_uint_least64_t; +typedef int_fast8_t atomic_int_fast8_t; +typedef uint_fast8_t atomic_uint_fast8_t; +typedef int_fast16_t atomic_int_fast16_t; +typedef uint_fast16_t atomic_uint_fast16_t; +typedef int_fast32_t atomic_int_fast32_t; +typedef uint_fast32_t atomic_uint_fast32_t; +typedef int_fast64_t atomic_int_fast64_t; +typedef uint_fast64_t atomic_uint_fast64_t; +typedef intptr_t atomic_intptr_t; +typedef uintptr_t atomic_uintptr_t; +typedef size_t atomic_size_t; +typedef ptrdiff_t atomic_ptrdiff_t; +typedef intmax_t atomic_intmax_t; +typedef uintmax_t atomic_uintmax_t; + +#define atomic_store(object, desired) \ +do { \ + *(object) = (desired); \ + __sync_synchronize(); \ +} while (0) + +#define atomic_store_explicit(object, desired, order) \ + atomic_store(object, desired) + +#define atomic_load(object) \ + (__sync_synchronize(), *(object)) + +#define atomic_load_explicit(object, order) \ + atomic_load(object) + +#define atomic_exchange(object, desired) \ +({ \ + __typeof__(object) _obj = (object); \ + __typeof__(*object) _old; \ + do \ + _old = atomic_load(_obj); \ + while (!__sync_bool_compare_and_swap(_obj, _old, (desired))); \ + _old; \ +}) + +#define atomic_exchange_explicit(object, desired, order) \ + atomic_exchange(object, desired) + +#define atomic_compare_exchange_strong(object, expected, desired) \ +({ \ + __typeof__(object) _exp = (expected); \ + __typeof__(*object) _old = *_exp; \ + *_exp = __sync_val_compare_and_swap((object), _old, (desired)); \ + *_exp == _old; \ +}) + +#define atomic_compare_exchange_strong_explicit(object, expected, desired, success, failure) \ + atomic_compare_exchange_strong(object, expected, desired) + +#define atomic_compare_exchange_weak(object, expected, desired) \ + atomic_compare_exchange_strong(object, expected, desired) + +#define atomic_compare_exchange_weak_explicit(object, expected, desired, success, failure) \ + atomic_compare_exchange_weak(object, expected, desired) + +#define atomic_fetch_add(object, operand) \ + __sync_fetch_and_add(object, operand) + +#define atomic_fetch_add_explicit(object, operand, order) \ + atomic_fetch_add(object, operand) + +#define atomic_fetch_sub(object, operand) \ + __sync_fetch_and_sub(object, operand) + +#define atomic_fetch_sub_explicit(object, operand, order) \ + atomic_fetch_sub(object, operand) + +#define atomic_fetch_or(object, operand) \ + __sync_fetch_and_or(object, operand) + +#define atomic_fetch_or_explicit(object, operand, order) \ + atomic_fetch_or(object, operand) + +#define atomic_fetch_xor(object, operand) \ + __sync_fetch_and_sub(object, operand) + +#define atomic_fetch_xor_explicit(object, operand, order) \ + atomic_fetch_sub(object, operand) + +#define atomic_fetch_and(object, operand) \ + __sync_fetch_and_and(object, operand) + +#define atomic_fetch_and_explicit(object, operand, order) \ + atomic_fetch_and(object, operand) + +#define atomic_flag_test_and_set(object) \ + atomic_exchange(object, 1) + +#define atomic_flag_test_and_set_explicit(object, order) \ + atomic_flag_test_and_set(object) + +#define atomic_flag_clear(object) \ + atomic_store(object, 0) + +#define atomic_flag_clear_explicit(object, order) \ + atomic_flag_clear(object) + +#endif /* COMPAT_ATOMICS_GCC_STDATOMIC_H */ From acff0d62ae98c30ed6d69736f4625947221b352e Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Sun, 26 Mar 2017 17:08:41 -0400 Subject: [PATCH 0075/1449] add compat stdatomic.h --- chromium.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index aece18d..563f3dc 100644 --- a/chromium.spec +++ b/chromium.spec @@ -549,7 +549,7 @@ members of the Chromium and WebDriver teams. %patch100 -p1 -b .use_system_opus %patch101 -p1 -b .use_system_harfbuzz -%if ! %{?fedora} +%if !%{?fedora} cp -a %{SOURCE14} third_party/ffmpeg/libavutil/ %endif From 3818e774a5f0be0a49ca39f38301bf864e90d7ad Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Sun, 26 Mar 2017 17:09:48 -0400 Subject: [PATCH 0076/1449] add compat stdatomic.h --- chromium.spec | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 563f3dc..a93f242 100644 --- a/chromium.spec +++ b/chromium.spec @@ -549,7 +549,9 @@ members of the Chromium and WebDriver teams. %patch100 -p1 -b .use_system_opus %patch101 -p1 -b .use_system_harfbuzz -%if !%{?fedora} +%if 0%{?fedora} >= 24 +# Do nothing. We're modern enough to not need it. +%else cp -a %{SOURCE14} third_party/ffmpeg/libavutil/ %endif From f381d74a6c3b37d0bb9542e918595c30747daffc Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 28 Mar 2017 10:20:45 -0400 Subject: [PATCH 0077/1449] move header to include path --- chromium.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index a93f242..54b380d 100644 --- a/chromium.spec +++ b/chromium.spec @@ -552,7 +552,7 @@ members of the Chromium and WebDriver teams. %if 0%{?fedora} >= 24 # Do nothing. We're modern enough to not need it. %else -cp -a %{SOURCE14} third_party/ffmpeg/libavutil/ +cp -a %{SOURCE14} third_party/ffmpeg/ %endif %if 0%{?asan} From c18e243924af7fe83f77e2e776c26663b1e8ee93 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 28 Mar 2017 11:44:47 -0400 Subject: [PATCH 0078/1449] Fix issue in gtk_ui.cc --- chromium-57.0.2987.110-gtk_ui-gcc-fix.patch | 12 ++++++++++++ chromium.spec | 5 +++++ 2 files changed, 17 insertions(+) create mode 100644 chromium-57.0.2987.110-gtk_ui-gcc-fix.patch diff --git a/chromium-57.0.2987.110-gtk_ui-gcc-fix.patch b/chromium-57.0.2987.110-gtk_ui-gcc-fix.patch new file mode 100644 index 0000000..4e92fe4 --- /dev/null +++ b/chromium-57.0.2987.110-gtk_ui-gcc-fix.patch @@ -0,0 +1,12 @@ +diff -up chromium-57.0.2987.110/chrome/browser/ui/libgtkui/gtk_ui.cc.b95cf28 chromium-57.0.2987.110/chrome/browser/ui/libgtkui/gtk_ui.cc +--- chromium-57.0.2987.110/chrome/browser/ui/libgtkui/gtk_ui.cc.b95cf28 2017-03-28 11:42:53.308857207 -0400 ++++ chromium-57.0.2987.110/chrome/browser/ui/libgtkui/gtk_ui.cc 2017-03-28 11:43:04.172579015 -0400 +@@ -676,7 +676,7 @@ std::unique_ptr GtkUi::Cr + : nullptr); + } + +- return gtk_border; ++ return std::move(gtk_border); + } + + void GtkUi::AddWindowButtonOrderObserver( diff --git a/chromium.spec b/chromium.spec index 54b380d..db99530 100644 --- a/chromium.spec +++ b/chromium.spec @@ -160,6 +160,9 @@ Patch32: chromium-56.0.2924.87-unique-ptr-fix.patch Patch33: chromium-56.0.2924.87-gcc7.patch # Enable mp3 support Patch34: chromium-57.0.2987.110-enable-mp3.patch +# Fix issue in gtk_ui.cc +# https://chromium.googlesource.com/chromium/src.git/+/b95cf280873664a44297368676ff589721ddb6f2%5E%21/#F5 +Patch35: chromium-57.0.2987.110-gtk_ui-gcc-fix.patch ### Chromium Tests Patches ### Patch100: chromium-46.0.2490.86-use_system_opus.patch @@ -544,6 +547,7 @@ members of the Chromium and WebDriver teams. %patch32 -p1 -b .unique-ptr-fix %patch33 -p1 -b .gcc7 %patch34 -p1 -b .mp3 +%patch35 -p1 -b .gtkuifix ### Chromium Tests Patches ### %patch100 -p1 -b .use_system_opus @@ -1587,6 +1591,7 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog * Sun Mar 26 2017 Tom Callaway 57.0.2987.110-4 - copy compat stdatomic.h in for RHEL. Re-enable mp3 enablement. +- fix issue in gtk_ui.cc revealed by RHEL build * Sun Mar 26 2017 Tom Callaway 57.0.2987.110-3 - fix mp3 enablement From 3b749ca7b477337f9cb337bc117982626b18cc28 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 30 Mar 2017 14:11:23 -0400 Subject: [PATCH 0079/1449] 57.0.2987.133 --- .gitignore | 1 + chromium.spec | 11 +++++++++-- sources | 2 +- 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index 32bcb26..0bc1f69 100644 --- a/.gitignore +++ b/.gitignore @@ -17,3 +17,4 @@ /chromium-55.0.2883.87-clean.tar.xz /chromium-56.0.2924.87-clean.tar.xz /chromium-57.0.2987.110-clean.tar.xz +/chromium-57.0.2987.133-clean.tar.xz diff --git a/chromium.spec b/chromium.spec index db99530..8c1c8af 100644 --- a/chromium.spec +++ b/chromium.spec @@ -96,8 +96,8 @@ BuildRequires: libicu-devel >= 5.4 %global majorversion 57 Name: chromium%{chromium_channel} -Version: %{majorversion}.0.2987.110 -Release: 4%{?dist} +Version: %{majorversion}.0.2987.133 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -993,6 +993,10 @@ GOOGLE_CLIENT_ID_REMOTING_IDENTITY_API=%{chromoting_client_id} ../../depot_tools %endif popd +# Nuke nacl/pnacl bits at the end of the build +rm -rf out/Release/gen/sdk +rm -rf native_client/toolchain +rm -rf third_party/llvm-build/* %install rm -rf %{buildroot} @@ -1589,6 +1593,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Thu Mar 30 2017 Tom Callaway 57.0.2987.133-1 +- update to 57.0.2987.133 + * Sun Mar 26 2017 Tom Callaway 57.0.2987.110-4 - copy compat stdatomic.h in for RHEL. Re-enable mp3 enablement. - fix issue in gtk_ui.cc revealed by RHEL build diff --git a/sources b/sources index 920d0f1..44e8109 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 SHA512 (policy_templates.zip) = 6a0564da805ee8d290453c9e46550fa8eed42d0fbd51a90eda566d888d9d7cf35ec9bb39f2340ec1ed98e7e813815eceb1f11cd202746815a7c8f8ecbef73a85 -SHA512 (chromium-57.0.2987.110-clean.tar.xz) = 9ea6a1ef5a553f9a51470248b8c0bb52ba8ff157aa6bc12515d8e589eff5e9dcaa55e37f5de4241bac96694c9b41ea260f827425ce1f07d5244369249373d4fc +SHA512 (chromium-57.0.2987.133-clean.tar.xz) = 5b5b3b9b8da008c04a8519eee1199e042bd1ee022e3eeb22eb10c075aeac64abe9312350cb867ab17854815d2aaf91fb6387b45f41f475fd854ee20e47d49ef8 From f674d0a3de4f987238662c754b7e8fe02518e26e Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Sat, 22 Apr 2017 09:28:33 -0700 Subject: [PATCH 0080/1449] 58.0.3029.81 --- .gitignore | 1 + ....service => chrome-remote-desktop@.service | 1 + chromium-56.0.2924.87-gcc-49.patch | 12 --- chromium-56.0.2924.87-unique-ptr-fix.patch | 12 --- chromium-57.0.2987.110-gtk_ui-gcc-fix.patch | 12 --- ... => chromium-58.0.3029.81-enable-mp3.patch | 82 +++++++++++-------- chromium-58.0.3029.81-fix-gn.patch | 11 +++ ...ium-58.0.3029.81-use_system_harfbuzz.patch | 12 +++ chromium.spec | 37 +++++---- sources | 4 +- 10 files changed, 96 insertions(+), 88 deletions(-) rename chrome-remote-desktop.service => chrome-remote-desktop@.service (97%) delete mode 100644 chromium-56.0.2924.87-gcc-49.patch delete mode 100644 chromium-56.0.2924.87-unique-ptr-fix.patch delete mode 100644 chromium-57.0.2987.110-gtk_ui-gcc-fix.patch rename chromium-57.0.2987.110-enable-mp3.patch => chromium-58.0.3029.81-enable-mp3.patch (83%) create mode 100644 chromium-58.0.3029.81-fix-gn.patch create mode 100644 chromium-58.0.3029.81-use_system_harfbuzz.patch diff --git a/.gitignore b/.gitignore index 0bc1f69..62f8e77 100644 --- a/.gitignore +++ b/.gitignore @@ -18,3 +18,4 @@ /chromium-56.0.2924.87-clean.tar.xz /chromium-57.0.2987.110-clean.tar.xz /chromium-57.0.2987.133-clean.tar.xz +/chromium-58.0.3029.81-clean.tar.xz diff --git a/chrome-remote-desktop.service b/chrome-remote-desktop@.service similarity index 97% rename from chrome-remote-desktop.service rename to chrome-remote-desktop@.service index 2713bf1..4b5b1fc 100644 --- a/chrome-remote-desktop.service +++ b/chrome-remote-desktop@.service @@ -2,6 +2,7 @@ Description="Chrome Remote Desktop host daemon" [Service] +User=%i Environment=HOME=%h ExecStart=@@CRD_PATH@@/chrome-remote-desktop --start --foreground ExecStop=@@CRD_PATH@@/chrome-remote-desktop --stop diff --git a/chromium-56.0.2924.87-gcc-49.patch b/chromium-56.0.2924.87-gcc-49.patch deleted file mode 100644 index f5ff3d2..0000000 --- a/chromium-56.0.2924.87-gcc-49.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-56.0.2924.87/third_party/webrtc/modules/desktop_capture/screen_capturer_x11.cc.gcc49 chromium-56.0.2924.87/third_party/webrtc/modules/desktop_capture/screen_capturer_x11.cc ---- chromium-56.0.2924.87/third_party/webrtc/modules/desktop_capture/screen_capturer_x11.cc.gcc49 2017-02-13 11:41:35.563497836 -0500 -+++ chromium-56.0.2924.87/third_party/webrtc/modules/desktop_capture/screen_capturer_x11.cc 2017-02-13 11:42:43.608161336 -0500 -@@ -412,7 +412,7 @@ std::unique_ptr Desktop - return nullptr; - } - -- return capturer; -+ return std::move(capturer); - } - - } // namespace webrtc diff --git a/chromium-56.0.2924.87-unique-ptr-fix.patch b/chromium-56.0.2924.87-unique-ptr-fix.patch deleted file mode 100644 index 4542143..0000000 --- a/chromium-56.0.2924.87-unique-ptr-fix.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-56.0.2924.87/remoting/host/security_key/fake_security_key_ipc_server.cc.unique-ptr-fix chromium-56.0.2924.87/remoting/host/security_key/fake_security_key_ipc_server.cc ---- chromium-56.0.2924.87/remoting/host/security_key/fake_security_key_ipc_server.cc.unique-ptr-fix 2017-02-24 07:50:09.183551244 -0500 -+++ chromium-56.0.2924.87/remoting/host/security_key/fake_security_key_ipc_server.cc 2017-02-24 07:50:31.619111443 -0500 -@@ -130,7 +130,7 @@ std::unique_ptr Fa - - ipc_server_map_[connection_id] = fake_ipc_server->AsWeakPtr(); - -- return fake_ipc_server; -+ return std::move(fake_ipc_server); - } - - base::WeakPtr diff --git a/chromium-57.0.2987.110-gtk_ui-gcc-fix.patch b/chromium-57.0.2987.110-gtk_ui-gcc-fix.patch deleted file mode 100644 index 4e92fe4..0000000 --- a/chromium-57.0.2987.110-gtk_ui-gcc-fix.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-57.0.2987.110/chrome/browser/ui/libgtkui/gtk_ui.cc.b95cf28 chromium-57.0.2987.110/chrome/browser/ui/libgtkui/gtk_ui.cc ---- chromium-57.0.2987.110/chrome/browser/ui/libgtkui/gtk_ui.cc.b95cf28 2017-03-28 11:42:53.308857207 -0400 -+++ chromium-57.0.2987.110/chrome/browser/ui/libgtkui/gtk_ui.cc 2017-03-28 11:43:04.172579015 -0400 -@@ -676,7 +676,7 @@ std::unique_ptr GtkUi::Cr - : nullptr); - } - -- return gtk_border; -+ return std::move(gtk_border); - } - - void GtkUi::AddWindowButtonOrderObserver( diff --git a/chromium-57.0.2987.110-enable-mp3.patch b/chromium-58.0.3029.81-enable-mp3.patch similarity index 83% rename from chromium-57.0.2987.110-enable-mp3.patch rename to chromium-58.0.3029.81-enable-mp3.patch index a8b9ee6..7fbc0d0 100644 --- a/chromium-57.0.2987.110-enable-mp3.patch +++ b/chromium-58.0.3029.81-enable-mp3.patch @@ -1,6 +1,49 @@ -diff -up chromium-57.0.2987.110/third_party/ffmpeg/ffmpeg_generated.gni.mp3 chromium-57.0.2987.110/third_party/ffmpeg/ffmpeg_generated.gni ---- chromium-57.0.2987.110/third_party/ffmpeg/ffmpeg_generated.gni.mp3 2017-03-20 13:53:24.000000000 -0400 -+++ chromium-57.0.2987.110/third_party/ffmpeg/ffmpeg_generated.gni 2017-03-20 13:59:11.214419428 -0400 +diff -up chromium-58.0.3029.81/media/base/mime_util_internal.cc.mp3 chromium-58.0.3029.81/media/base/mime_util_internal.cc +--- chromium-58.0.3029.81/media/base/mime_util_internal.cc.mp3 2017-04-21 14:46:15.817743487 -0400 ++++ chromium-58.0.3029.81/media/base/mime_util_internal.cc 2017-04-21 14:52:58.544150880 -0400 +@@ -244,10 +244,10 @@ void MimeUtil::AddSupportedMediaFormats( + CodecSet webm_codecs(webm_audio_codecs); + webm_codecs.insert(webm_video_codecs.begin(), webm_video_codecs.end()); + +-#if BUILDFLAG(USE_PROPRIETARY_CODECS) + CodecSet mp3_codecs; + mp3_codecs.insert(MP3); + ++#if BUILDFLAG(USE_PROPRIETARY_CODECS) + CodecSet aac; + aac.insert(MPEG2_AAC); + aac.insert(MPEG4_AAC); +@@ -291,10 +291,10 @@ void MimeUtil::AddSupportedMediaFormats( + AddContainerWithCodecs("application/ogg", ogg_codecs, false); + AddContainerWithCodecs("audio/flac", implicit_codec, false); + +-#if BUILDFLAG(USE_PROPRIETARY_CODECS) + AddContainerWithCodecs("audio/mpeg", mp3_codecs, true); // Allow "mp3". + AddContainerWithCodecs("audio/mp3", implicit_codec, true); + AddContainerWithCodecs("audio/x-mp3", implicit_codec, true); ++#if BUILDFLAG(USE_PROPRIETARY_CODECS) + AddContainerWithCodecs("audio/aac", implicit_codec, true); // AAC / ADTS. + AddContainerWithCodecs("audio/mp4", mp4_audio_codecs, true); + DCHECK(!mp4_video_codecs.empty()); +@@ -715,7 +715,6 @@ bool MimeUtil::IsCodecProprietary(Codec + case INVALID_CODEC: + case AC3: + case EAC3: +- case MP3: + case MPEG2_AAC: + case MPEG4_AAC: + case H264: +@@ -723,6 +722,7 @@ bool MimeUtil::IsCodecProprietary(Codec + case DOLBY_VISION: + return true; + ++ case MP3: + case PCM: + case VORBIS: + case OPUS: +diff -up chromium-58.0.3029.81/third_party/ffmpeg/ffmpeg_generated.gni.mp3 chromium-58.0.3029.81/third_party/ffmpeg/ffmpeg_generated.gni +--- chromium-58.0.3029.81/third_party/ffmpeg/ffmpeg_generated.gni.mp3 2017-04-21 11:49:42.000000000 -0400 ++++ chromium-58.0.3029.81/third_party/ffmpeg/ffmpeg_generated.gni 2017-04-21 14:46:15.816743506 -0400 @@ -176,19 +176,12 @@ if ((is_linux && current_cpu == "arm" && ] } @@ -88,9 +131,9 @@ diff -up chromium-57.0.2987.110/third_party/ffmpeg/ffmpeg_generated.gni.mp3 chro if ((is_linux && current_cpu == "arm" && arm_use_neon) || (is_linux && current_cpu == "arm")) { ffmpeg_c_sources += [ "libavcodec/arm/h264pred_init_arm.c", -diff -up chromium-57.0.2987.110/third_party/ffmpeg/libavcodec/sbrdsp.c.mp3 chromium-57.0.2987.110/third_party/ffmpeg/libavcodec/sbrdsp.c ---- chromium-57.0.2987.110/third_party/ffmpeg/libavcodec/sbrdsp.c.mp3 2017-03-20 14:15:22.068309439 -0400 -+++ chromium-57.0.2987.110/third_party/ffmpeg/libavcodec/sbrdsp.c 2017-03-20 14:15:47.826802603 -0400 +diff -up chromium-58.0.3029.81/third_party/ffmpeg/libavcodec/sbrdsp.c.mp3 chromium-58.0.3029.81/third_party/ffmpeg/libavcodec/sbrdsp.c +--- chromium-58.0.3029.81/third_party/ffmpeg/libavcodec/sbrdsp.c.mp3 2017-04-21 11:49:43.000000000 -0400 ++++ chromium-58.0.3029.81/third_party/ffmpeg/libavcodec/sbrdsp.c 2017-04-21 14:46:15.817743487 -0400 @@ -23,6 +23,7 @@ #define USE_FIXED 0 @@ -99,30 +142,3 @@ diff -up chromium-57.0.2987.110/third_party/ffmpeg/libavcodec/sbrdsp.c.mp3 chrom #include "config.h" #include "libavutil/attributes.h" #include "libavutil/intfloat.h" -diff -up chromium-57.0.2987.110/media/base/mime_util_internal.cc.mp3 chromium-57.0.2987.110/media/base/mime_util_internal.cc ---- chromium-57.0.2987.110/media/base/mime_util_internal.cc.mp3 2017-03-26 11:11:41.480377812 -0400 -+++ chromium-57.0.2987.110/media/base/mime_util_internal.cc 2017-03-26 11:13:19.289810708 -0400 -@@ -291,10 +291,10 @@ void MimeUtil::AddSupportedMediaFormats( - CodecSet webm_codecs(webm_audio_codecs); - webm_codecs.insert(webm_video_codecs.begin(), webm_video_codecs.end()); - --#if defined(USE_PROPRIETARY_CODECS) - CodecSet mp3_codecs; - mp3_codecs.insert(MP3); - -+#if defined(USE_PROPRIETARY_CODECS) - CodecSet aac; - aac.insert(MPEG2_AAC); - aac.insert(MPEG4_AAC); -@@ -335,10 +335,10 @@ void MimeUtil::AddSupportedMediaFormats( - AddContainerWithCodecs("application/ogg", ogg_codecs, false); - AddContainerWithCodecs("audio/flac", implicit_codec, false); - --#if defined(USE_PROPRIETARY_CODECS) - AddContainerWithCodecs("audio/mpeg", mp3_codecs, true); // Allow "mp3". - AddContainerWithCodecs("audio/mp3", implicit_codec, true); - AddContainerWithCodecs("audio/x-mp3", implicit_codec, true); -+#if defined(USE_PROPRIETARY_CODECS) - AddContainerWithCodecs("audio/aac", implicit_codec, true); // AAC / ADTS. - AddContainerWithCodecs("audio/mp4", mp4_audio_codecs, true); - DCHECK(!mp4_video_codecs.empty()); diff --git a/chromium-58.0.3029.81-fix-gn.patch b/chromium-58.0.3029.81-fix-gn.patch new file mode 100644 index 0000000..d8b2207 --- /dev/null +++ b/chromium-58.0.3029.81-fix-gn.patch @@ -0,0 +1,11 @@ +diff -up chromium-58.0.3029.81/tools/gn/bootstrap/bootstrap.py.fixgn chromium-58.0.3029.81/tools/gn/bootstrap/bootstrap.py +--- chromium-58.0.3029.81/tools/gn/bootstrap/bootstrap.py.fixgn 2017-04-21 15:39:59.704874747 -0400 ++++ chromium-58.0.3029.81/tools/gn/bootstrap/bootstrap.py 2017-04-21 15:43:06.778809475 -0400 +@@ -384,6 +384,7 @@ def write_gn_ninja(path, root_gen_dir, o + 'base/base_paths.cc', + 'base/base_switches.cc', + 'base/build_time.cc', ++ 'base/callback_helpers.cc', + 'base/callback_internal.cc', + 'base/command_line.cc', + 'base/debug/activity_tracker.cc', diff --git a/chromium-58.0.3029.81-use_system_harfbuzz.patch b/chromium-58.0.3029.81-use_system_harfbuzz.patch new file mode 100644 index 0000000..df784fd --- /dev/null +++ b/chromium-58.0.3029.81-use_system_harfbuzz.patch @@ -0,0 +1,12 @@ +diff -up chromium-58.0.3029.81/ui/gfx/render_text_harfbuzz.h.use_system_harfbuzz chromium-58.0.3029.81/ui/gfx/render_text_harfbuzz.h +--- chromium-58.0.3029.81/ui/gfx/render_text_harfbuzz.h.use_system_harfbuzz 2017-04-21 14:58:23.182030756 -0400 ++++ chromium-58.0.3029.81/ui/gfx/render_text_harfbuzz.h 2017-04-21 15:06:22.681991351 -0400 +@@ -12,7 +12,7 @@ + #include + + #include "base/macros.h" +-#include "third_party/harfbuzz-ng/src/hb.h" ++#include + #include "third_party/icu/source/common/unicode/ubidi.h" + #include "third_party/icu/source/common/unicode/uscript.h" + #include "ui/gfx/render_text.h" diff --git a/chromium.spec b/chromium.spec index 8c1c8af..c1c9b79 100644 --- a/chromium.spec +++ b/chromium.spec @@ -93,10 +93,10 @@ BuildRequires: libicu-devel >= 5.4 %global default_client_secret miEreAep8nuvTdvLums6qyLK %global chromoting_client_id 449907151817-8vnlfih032ni8c4jjps9int9t86k546t.apps.googleusercontent.com -%global majorversion 57 +%global majorversion 58 Name: chromium%{chromium_channel} -Version: %{majorversion}.0.2987.133 +Version: %{majorversion}.0.3029.81 Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home @@ -148,25 +148,21 @@ Patch26: chromium-54.0.2840.59-i686-ld-memory-tricks.patch # obj/content/renderer/renderer/child_frame_compositing_helper.o: In function `content::ChildFrameCompositingHelper::OnSetSurface(cc::SurfaceId const&, gfx::Size const&, float, cc::SurfaceSequence const&)': # /builddir/build/BUILD/chromium-54.0.2840.90/out/Release/../../content/renderer/child_frame_compositing_helper.cc:214: undefined reference to `cc_blink::WebLayerImpl::setOpaque(bool)' Patch27: chromium-54.0.2840.90-setopaque.patch -# Fix compiler issue with gcc 4.9 -# https://chromium.googlesource.com/external/webrtc/trunk/webrtc/+/69556b1c264da9e0f484eaab890ebd555966630c%5E%21/#F0 -Patch30: chromium-56.0.2924.87-gcc-49.patch # Use -fpermissive to build WebKit Patch31: chromium-56.0.2924.87-fpermissive.patch -# Fix issue with unique_ptr move on return with older gcc -Patch32: chromium-56.0.2924.87-unique-ptr-fix.patch # Fix issue with compilation on gcc7 # Thanks to Ben Noordhuis Patch33: chromium-56.0.2924.87-gcc7.patch # Enable mp3 support -Patch34: chromium-57.0.2987.110-enable-mp3.patch -# Fix issue in gtk_ui.cc -# https://chromium.googlesource.com/chromium/src.git/+/b95cf280873664a44297368676ff589721ddb6f2%5E%21/#F5 -Patch35: chromium-57.0.2987.110-gtk_ui-gcc-fix.patch +Patch34: chromium-58.0.3029.81-enable-mp3.patch +# Fix gn build +# https://chromium.googlesource.com/chromium/src.git/+/379e35f6f3eaa41a97f2659249509ca599749b27%5E%21/tools/gn/bootstrap/bootstrap.py +Patch35: chromium-58.0.3029.81-fix-gn.patch + ### Chromium Tests Patches ### Patch100: chromium-46.0.2490.86-use_system_opus.patch -Patch101: chromium-55.0.2883.75-use_system_harfbuzz.patch +Patch101: chromium-58.0.3029.81-use_system_harfbuzz.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ @@ -195,7 +191,7 @@ Source8: get_linux_tests_names.py # GNOME stuff Source9: chromium-browser.xml Source10: https://dl.google.com/dl/edgedl/chrome/policy/policy_templates.zip -Source11: chrome-remote-desktop.service +Source11: chrome-remote-desktop@.service Source12: chromium-browser.appdata.xml Source13: master_preferences # Only needed for platforms where gcc doesn't have stdatomic.h @@ -232,6 +228,7 @@ BuildRequires: libusb-devel BuildRequires: libXdamage-devel BuildRequires: libXScrnSaver-devel BuildRequires: libXtst-devel +BuildRequires: nodejs BuildRequires: nss-devel BuildRequires: pciutils-devel BuildRequires: pulseaudio-libs-devel @@ -542,12 +539,10 @@ members of the Chromium and WebDriver teams. %patch25 -p1 -b .jpegfix %patch26 -p1 -b .ldmemory %patch27 -p1 -b .setopaque -%patch30 -p1 -b .gcc49 %patch31 -p1 -b .permissive -%patch32 -p1 -b .unique-ptr-fix %patch33 -p1 -b .gcc7 %patch34 -p1 -b .mp3 -%patch35 -p1 -b .gtkuifix +%patch35 -p1 -b .fixgn ### Chromium Tests Patches ### %patch100 -p1 -b .use_system_opus @@ -697,6 +692,9 @@ CHROMIUM_BROWSER_GN_DEFINES+=' use_gtk3=false' CHROMIUM_BROWSER_GN_DEFINES+=' treat_warnings_as_errors=false' export CHROMIUM_BROWSER_GN_DEFINES +mkdir -p third_party/node/linux/node-linux-x64/bin +ln -s %{_bindir}/node third_party/node/linux/node-linux-x64/bin/node + # Remove most of the bundled libraries. Libraries specified below (taken from # Gentoo's Chromium ebuild) are the libraries that needs to be preserved. build/linux/unbundle/remove_bundled_libraries.py \ @@ -807,6 +805,8 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/mesa' \ 'third_party/modp_b64' \ 'third_party/mt19937ar' \ + 'third_party/node' \ + 'third_party/node/node_modules/vulcanize/third_party/UglifyJS2' \ 'third_party/openmax_dl' \ 'third_party/opus' \ 'third_party/ots' \ @@ -1093,7 +1093,7 @@ cp -a remoting/host/installer/linux/is-remoting-session %{buildroot}%{crd_path}/ mkdir -p %{buildroot}%{_unitdir} cp -a %{SOURCE11} %{buildroot}%{_unitdir}/ -sed -i 's|@@CRD_PATH@@|%{crd_path}|g' %{buildroot}%{_unitdir}/chrome-remote-desktop.service +sed -i 's|@@CRD_PATH@@|%{crd_path}|g' %{buildroot}%{_unitdir}/chrome-remote-desktop@.service # Add directories for policy management mkdir -p %{buildroot}%{_sysconfdir}/chromium/policies/managed @@ -1593,6 +1593,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Fri Apr 21 2017 Tom Callaway 58.0.3029.81-1 +- update to 58.0.3029.81 + * Thu Mar 30 2017 Tom Callaway 57.0.2987.133-1 - update to 57.0.2987.133 diff --git a/sources b/sources index 44e8109..a80c737 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 -SHA512 (policy_templates.zip) = 6a0564da805ee8d290453c9e46550fa8eed42d0fbd51a90eda566d888d9d7cf35ec9bb39f2340ec1ed98e7e813815eceb1f11cd202746815a7c8f8ecbef73a85 -SHA512 (chromium-57.0.2987.133-clean.tar.xz) = 5b5b3b9b8da008c04a8519eee1199e042bd1ee022e3eeb22eb10c075aeac64abe9312350cb867ab17854815d2aaf91fb6387b45f41f475fd854ee20e47d49ef8 +SHA512 (policy_templates.zip) = 28f1f85eab1719dd1c6a70f7e4cd1c9bea46215adc327a32f2509098e70768a61dbb8b24c186279ec4e4e1299953c219e9eb71af6d5527fe9e422599ad0d785e +SHA512 (chromium-58.0.3029.81-clean.tar.xz) = b2ac41d6eccfd025d816b814354330fe4a9bb81c212fd7b98f79cc6f0c693d1b2ce5fbe0ce9397d43808ffcfa171585769c9db5d4b7d24e9bf548c450f8ad7f6 From 94cfba912645c02336889e3197758a89ff783c2b Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Sat, 22 Apr 2017 12:00:10 -0700 Subject: [PATCH 0081/1449] use new service file name in %files --- chromium.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index c1c9b79..f0b04a3 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1578,7 +1578,7 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{_sysconfdir}/opt/chrome/ %{crd_path}/remoting_locales/ %{crd_path}/start-host -%{_unitdir}/chrome-remote-desktop.service +%{_unitdir}/chrome-remote-desktop@.service /var/lib/chrome-remote-desktop/ %if 0%{?build_remoting_app} %if 0%{?nacl} From 850545ed64c0c3d70391eb98aecb5b06a7167297 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 15 May 2017 16:04:38 -0400 Subject: [PATCH 0082/1449] 58.0.3029.110 --- .gitignore | 1 + chromium-52.0.2743.82-widevinefix.patch | 25 --- chromium-58.0.3029.81-ffmpeg-stdatomic.patch | 14 ++ ...998819088f76b4cf44c8db6940240c563cf4.patch | 19 ++ chromium.spec | 36 ++-- clean_ffmpeg.sh | 3 +- sources | 1 + stdatomic.h | 173 ------------------ 8 files changed, 56 insertions(+), 216 deletions(-) delete mode 100644 chromium-52.0.2743.82-widevinefix.patch create mode 100644 chromium-58.0.3029.81-ffmpeg-stdatomic.patch create mode 100644 chromium-58.0.3029.96-revert-b794998819088f76b4cf44c8db6940240c563cf4.patch delete mode 100644 stdatomic.h diff --git a/.gitignore b/.gitignore index 62f8e77..351b0e3 100644 --- a/.gitignore +++ b/.gitignore @@ -19,3 +19,4 @@ /chromium-57.0.2987.110-clean.tar.xz /chromium-57.0.2987.133-clean.tar.xz /chromium-58.0.3029.81-clean.tar.xz +/chromium-58.0.3029.110-clean.tar.xz diff --git a/chromium-52.0.2743.82-widevinefix.patch b/chromium-52.0.2743.82-widevinefix.patch deleted file mode 100644 index 86414a6..0000000 --- a/chromium-52.0.2743.82-widevinefix.patch +++ /dev/null @@ -1,25 +0,0 @@ -diff -up chromium-52.0.2743.82/chrome/common/chrome_content_client.cc.widevinefix chromium-52.0.2743.82/chrome/common/chrome_content_client.cc ---- chromium-52.0.2743.82/chrome/common/chrome_content_client.cc.widevinefix 2016-07-22 12:18:49.505235856 -0400 -+++ chromium-52.0.2743.82/chrome/common/chrome_content_client.cc 2016-07-22 12:20:04.200789682 -0400 -@@ -203,10 +203,7 @@ void ComputeBuiltInPlugins(std::vectorpush_back(content::CdmInfo(kWidevineCdmType, version, cdm_path, - codecs_supported)); - } diff --git a/chromium-58.0.3029.81-ffmpeg-stdatomic.patch b/chromium-58.0.3029.81-ffmpeg-stdatomic.patch new file mode 100644 index 0000000..e08d5b2 --- /dev/null +++ b/chromium-58.0.3029.81-ffmpeg-stdatomic.patch @@ -0,0 +1,14 @@ +diff -up chromium-57.0.2987.21/third_party/ffmpeg/libavutil/cpu.c.ffmpeg_stdatomic chromium-57.0.2987.21/third_party/ffmpeg/libavutil/cpu.c +--- chromium-57.0.2987.21/third_party/ffmpeg/libavutil/cpu.c.ffmpeg_stdatomic 2017-02-03 07:07:36.000000000 +0100 ++++ chromium-57.0.2987.21/third_party/ffmpeg/libavutil/cpu.c 2017-02-09 11:54:34.083000442 +0100 +@@ -20,6 +20,10 @@ + // Chromium: Windows doesn't provide stdatomic.h, so use the compat version. + #if defined(_MSC_VER) + #include ++// GCC 4.8 didn't have stdatomic, but was advertising it. ++// https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58016 ++#elif !defined(__clang__) && defined(__GNUC__) && (__GNUC__ == 4 || (__GNUC__ == 4 && (__GNUC_MINOR__ == 8))) ++#include + #else + #include + #endif diff --git a/chromium-58.0.3029.96-revert-b794998819088f76b4cf44c8db6940240c563cf4.patch b/chromium-58.0.3029.96-revert-b794998819088f76b4cf44c8db6940240c563cf4.patch new file mode 100644 index 0000000..ddb94a0 --- /dev/null +++ b/chromium-58.0.3029.96-revert-b794998819088f76b4cf44c8db6940240c563cf4.patch @@ -0,0 +1,19 @@ +diff -up chromium-58.0.3029.96/ui/events/devices/x11/device_data_manager_x11.cc.revert chromium-58.0.3029.96/ui/events/devices/x11/device_data_manager_x11.cc +--- chromium-58.0.3029.96/ui/events/devices/x11/device_data_manager_x11.cc.revert 2017-05-08 14:58:11.767482431 -0400 ++++ chromium-58.0.3029.96/ui/events/devices/x11/device_data_manager_x11.cc 2017-05-08 14:58:37.722960109 -0400 +@@ -790,15 +790,6 @@ void DeviceDataManagerX11::UpdateScrollC + DCHECK(deviceid >= 0 && deviceid < kMaxDeviceNum); + ScrollInfo& info = scroll_data_[deviceid]; + +- bool legacy_scroll_available = +- (scroll_class_info->flags & XIScrollFlagNoEmulation) == 0; +- // If the device's highest resolution is lower than the resolution of xinput1 +- // then use xinput1's events instead (ie. don't configure smooth scrolling). +- if (legacy_scroll_available && +- std::abs(scroll_class_info->increment) <= 1.0) { +- return; +- } +- + switch (scroll_class_info->scroll_type) { + case XIScrollTypeVertical: + info.vertical.number = scroll_class_info->number; diff --git a/chromium.spec b/chromium.spec index f0b04a3..21fa094 100644 --- a/chromium.spec +++ b/chromium.spec @@ -20,7 +20,7 @@ # Requires is trickier. %global __provides_exclude_from %{chromium_path}/.*\\.so|%{chromium_path}/lib/.*\\.so -%global privlibs libaccessibility|libaura_extra|libaura|libbase_i18n|libbase|libbindings|libblink_common|libblink_core|libblink_modules|libblink_platform|libblink_web|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture|libcc_animation|libcc_blink|libcc_ipc|libcc_proto|libcc|libcc_surfaces|libchromium_sqlite3|libclearkeycdm|libcloud_policy_proto_generated_compile|libcommon|libcompositor|libcontent|libcpp|libcrcrypto|libdbus|libdevice_base|libdevice_battery|libdevice_event_log|libdevice_gamepad|libdevices|libdevice_vibration|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay_compositor|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libevents_base|libevents_devices_x11|libevents_ipc|libevents_ozone_layout|libevents|libevents_x|libffmpeg|libfont_service_library|libgcm|libgeneric_sensor|libgeolocation|libgeometry|libgesture_detection|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_x11|libgin|libgles2_c_lib|libgles2_implementation|libgles2_utils|libGLESv2|libgl_in_process_context|libgl_init|libgl_wrapper|libgpu|libgtk2ui|libicui18n|libicuuc|libipc|libjs|libkeyboard|libkeyboard_with_content|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libmedia_blink|libmedia_gpu|libmedia|libmessage_center|libmidi|libmojo_common_lib|libmojo_ime_lib|libmojo_public_system_cpp|libmojo_public_system|libmojo_system_impl|libnative_theme|libnet|libnet_with_v8|libonc|libplatform|libpolicy_component|libpolicy_proto|libpower_monitor|libpower_save_blocker|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|librange|libsandbox_services|libseccomp_bpf|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtest_ime_driver_library|libtime_zone_monitor|libtracing_library|libtracing|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_library|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libuser_manager|libuser_prefs|libv8_libbase|libv8_libplatform|libv8|libviews|libwebdata_common|libweb_dialogs|libwebview|libwidevinecdmadapter|libwidevinecdm|libwm|libwtf|libx11_events_platform|libx11_window +%global privlibs libaccessibility|libaura_extra|libaura|libbase_i18n|libbase|libbindings|libblink_common|libblink_core|libblink_modules|libblink_platform|libblink_web|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture|libcapture_base|libcapture_lib|libcc_animation|libcc_blink|libcc_ipc|libcc_paint|libcc_proto|libcc|libcc_surfaces|libchromium_sqlite3|libclearkeycdm|libcloud_policy_proto_generated_compile|libcommon|libcompositor|libcontent|libcpp|libcrcrypto|libdbus|libdevice_base|libdevice_battery|libdevice_event_log|libdevice_gamepad|libdevices|libdevice_vibration|libdevice_vr|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay_compositor|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libevents_base|libevents_devices_x11|libevents_ipc|libevents_ozone_layout|libevents|libevents_x|libfingerprint|libffmpeg|libfont_service_library|libgcm|libgeneric_sensor|libgeolocation|libgeometry|libgesture_detection|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_x11|libgin|libgles2_c_lib|libgles2_implementation|libgles2_utils|libGLESv2|libgl_in_process_context|libgl_init|libgl_wrapper|libgpu|libgtk2ui|libicui18n|libicuuc|libipc|libjs|libkeyboard|libkeyboard_with_content|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libmedia_blink|libmedia_gpu|libmedia|libmessage_center|libmidi|libmojo_common_lib|libmojo_ime_lib|libmojo_public_system_cpp|libmojo_public_system|libmojo_system_impl|libnative_theme|libnet|libnet_with_v8|libonc|libplatform|libpolicy_component|libpolicy_proto|libpower_monitor|libpower_save_blocker|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|librange|libsandbox_services|libseccomp_bpf|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtest_ime_driver_library|libtime_zone_monitor|libtracing_library|libtracing|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_library|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libuser_manager|libuser_prefs|libv8_libbase|libv8_libplatform|libv8|libviews|libwebdata_common|libweb_dialogs|libwebview|libwidevinecdmadapter|libwidevinecdm|libwm|libwtf|libx11_events_platform|libx11_window %global __requires_exclude ^(%{privlibs})\\.so # Try to not use the Xvfb as it is slow.. @@ -96,7 +96,7 @@ BuildRequires: libicu-devel >= 5.4 %global majorversion 58 Name: chromium%{chromium_channel} -Version: %{majorversion}.0.3029.81 +Version: %{majorversion}.0.3029.110 Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home @@ -158,7 +158,12 @@ Patch34: chromium-58.0.3029.81-enable-mp3.patch # Fix gn build # https://chromium.googlesource.com/chromium/src.git/+/379e35f6f3eaa41a97f2659249509ca599749b27%5E%21/tools/gn/bootstrap/bootstrap.py Patch35: chromium-58.0.3029.81-fix-gn.patch - +# Revert https://chromium.googlesource.com/chromium/src/+/b794998819088f76b4cf44c8db6940240c563cf4%5E%21/#F0 +# https://bugs.chromium.org/p/chromium/issues/detail?id=712737 +# https://bugzilla.redhat.com/show_bug.cgi?id=1446851 +Patch36: chromium-58.0.3029.96-revert-b794998819088f76b4cf44c8db6940240c563cf4.patch +# Correctly compile the stdatomic.h in ffmpeg with gcc 4.8 +Patch37: chromium-58.0.3029.81-ffmpeg-stdatomic.patch ### Chromium Tests Patches ### Patch100: chromium-46.0.2490.86-use_system_opus.patch @@ -194,11 +199,6 @@ Source10: https://dl.google.com/dl/edgedl/chrome/policy/policy_templates.zip Source11: chrome-remote-desktop@.service Source12: chromium-browser.appdata.xml Source13: master_preferences -# Only needed for platforms where gcc doesn't have stdatomic.h -# RHEL 7 or older -# Taken from https://raw.githubusercontent.com/FFmpeg/FFmpeg/master/compat/atomics/gcc/stdatomic.h -# on 2017-03-26 -Source14: stdatomic.h # We can assume gcc and binutils. BuildRequires: gcc-c++ @@ -543,17 +543,13 @@ members of the Chromium and WebDriver teams. %patch33 -p1 -b .gcc7 %patch34 -p1 -b .mp3 %patch35 -p1 -b .fixgn +%patch36 -p1 -b .revert +%patch37 -p1 -b .ffmpeg-stdatomic ### Chromium Tests Patches ### %patch100 -p1 -b .use_system_opus %patch101 -p1 -b .use_system_harfbuzz -%if 0%{?fedora} >= 24 -# Do nothing. We're modern enough to not need it. -%else -cp -a %{SOURCE14} third_party/ffmpeg/ -%endif - %if 0%{?asan} export CC="clang" export CXX="clang++" @@ -1453,13 +1449,13 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-desktop %post -n chrome-remote-desktop -%systemd_post chrome-remote-desktop.service +%systemd_post chrome-remote-desktop@.service %preun -n chrome-remote-desktop -%systemd_preun chrome-remote-desktop.service +%systemd_preun chrome-remote-desktop@.service %postun -n chrome-remote-desktop -%systemd_postun_with_restart chrome-remote-desktop.service +%systemd_postun_with_restart chrome-remote-desktop@.service %files %doc AUTHORS @@ -1593,6 +1589,12 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Mon May 15 2017 Tom Callaway 58.0.3029.110-1 +- update to 58.0.3029.110 + +* Mon May 8 2017 Tom Callaway 58.0.3029.96-1 +- update to 58.0.3029.96 + * Fri Apr 21 2017 Tom Callaway 58.0.3029.81-1 - update to 58.0.3029.81 diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index 39e68f7..01a89fc 100644 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -182,7 +182,8 @@ header_files=" libavcodec/x86/inline_asm.h \ libavutil/version.h \ libswresample/swresample.h \ libswresample/version.h \ - compat/va_copy.h " + compat/va_copy.h \ + compat/atomics/gcc/stdatomic.h " manual_files=" libavcodec/x86/hpeldsp_rnd_template.c \ libavcodec/x86/rnd_template.c \ diff --git a/sources b/sources index a80c737..5faaaee 100644 --- a/sources +++ b/sources @@ -1,3 +1,4 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 SHA512 (policy_templates.zip) = 28f1f85eab1719dd1c6a70f7e4cd1c9bea46215adc327a32f2509098e70768a61dbb8b24c186279ec4e4e1299953c219e9eb71af6d5527fe9e422599ad0d785e SHA512 (chromium-58.0.3029.81-clean.tar.xz) = b2ac41d6eccfd025d816b814354330fe4a9bb81c212fd7b98f79cc6f0c693d1b2ce5fbe0ce9397d43808ffcfa171585769c9db5d4b7d24e9bf548c450f8ad7f6 +SHA512 (chromium-58.0.3029.110-clean.tar.xz) = f26be2eaabe47d6294fd411bbb9abe07721c54fe06e6792a3ff0bd173571bb84ee673bc022f626883fc133e5285cf1386ba8539351d4eb82102feb3cab5f9852 diff --git a/stdatomic.h b/stdatomic.h deleted file mode 100644 index 2b64687..0000000 --- a/stdatomic.h +++ /dev/null @@ -1,173 +0,0 @@ -/* - * This file is part of FFmpeg. - * - * FFmpeg is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * FFmpeg is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with FFmpeg; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - */ - -/* - * based on vlc_atomic.h from VLC - * Copyright (C) 2010 Rémi Denis-Courmont - */ - -#ifndef COMPAT_ATOMICS_GCC_STDATOMIC_H -#define COMPAT_ATOMICS_GCC_STDATOMIC_H - -#include -#include - -#define ATOMIC_FLAG_INIT 0 - -#define ATOMIC_VAR_INIT(value) (value) - -#define atomic_init(obj, value) \ -do { \ - *(obj) = (value); \ -} while(0) - -#define kill_dependency(y) ((void)0) - -#define atomic_thread_fence(order) \ - __sync_synchronize() - -#define atomic_signal_fence(order) \ - ((void)0) - -#define atomic_is_lock_free(obj) 0 - -typedef _Bool atomic_flag; -typedef _Bool atomic_bool; -typedef char atomic_char; -typedef signed char atomic_schar; -typedef unsigned char atomic_uchar; -typedef short atomic_short; -typedef unsigned short atomic_ushort; -typedef int atomic_int; -typedef unsigned int atomic_uint; -typedef long atomic_long; -typedef unsigned long atomic_ulong; -typedef long long atomic_llong; -typedef unsigned long long atomic_ullong; -typedef wchar_t atomic_wchar_t; -typedef int_least8_t atomic_int_least8_t; -typedef uint_least8_t atomic_uint_least8_t; -typedef int_least16_t atomic_int_least16_t; -typedef uint_least16_t atomic_uint_least16_t; -typedef int_least32_t atomic_int_least32_t; -typedef uint_least32_t atomic_uint_least32_t; -typedef int_least64_t atomic_int_least64_t; -typedef uint_least64_t atomic_uint_least64_t; -typedef int_fast8_t atomic_int_fast8_t; -typedef uint_fast8_t atomic_uint_fast8_t; -typedef int_fast16_t atomic_int_fast16_t; -typedef uint_fast16_t atomic_uint_fast16_t; -typedef int_fast32_t atomic_int_fast32_t; -typedef uint_fast32_t atomic_uint_fast32_t; -typedef int_fast64_t atomic_int_fast64_t; -typedef uint_fast64_t atomic_uint_fast64_t; -typedef intptr_t atomic_intptr_t; -typedef uintptr_t atomic_uintptr_t; -typedef size_t atomic_size_t; -typedef ptrdiff_t atomic_ptrdiff_t; -typedef intmax_t atomic_intmax_t; -typedef uintmax_t atomic_uintmax_t; - -#define atomic_store(object, desired) \ -do { \ - *(object) = (desired); \ - __sync_synchronize(); \ -} while (0) - -#define atomic_store_explicit(object, desired, order) \ - atomic_store(object, desired) - -#define atomic_load(object) \ - (__sync_synchronize(), *(object)) - -#define atomic_load_explicit(object, order) \ - atomic_load(object) - -#define atomic_exchange(object, desired) \ -({ \ - __typeof__(object) _obj = (object); \ - __typeof__(*object) _old; \ - do \ - _old = atomic_load(_obj); \ - while (!__sync_bool_compare_and_swap(_obj, _old, (desired))); \ - _old; \ -}) - -#define atomic_exchange_explicit(object, desired, order) \ - atomic_exchange(object, desired) - -#define atomic_compare_exchange_strong(object, expected, desired) \ -({ \ - __typeof__(object) _exp = (expected); \ - __typeof__(*object) _old = *_exp; \ - *_exp = __sync_val_compare_and_swap((object), _old, (desired)); \ - *_exp == _old; \ -}) - -#define atomic_compare_exchange_strong_explicit(object, expected, desired, success, failure) \ - atomic_compare_exchange_strong(object, expected, desired) - -#define atomic_compare_exchange_weak(object, expected, desired) \ - atomic_compare_exchange_strong(object, expected, desired) - -#define atomic_compare_exchange_weak_explicit(object, expected, desired, success, failure) \ - atomic_compare_exchange_weak(object, expected, desired) - -#define atomic_fetch_add(object, operand) \ - __sync_fetch_and_add(object, operand) - -#define atomic_fetch_add_explicit(object, operand, order) \ - atomic_fetch_add(object, operand) - -#define atomic_fetch_sub(object, operand) \ - __sync_fetch_and_sub(object, operand) - -#define atomic_fetch_sub_explicit(object, operand, order) \ - atomic_fetch_sub(object, operand) - -#define atomic_fetch_or(object, operand) \ - __sync_fetch_and_or(object, operand) - -#define atomic_fetch_or_explicit(object, operand, order) \ - atomic_fetch_or(object, operand) - -#define atomic_fetch_xor(object, operand) \ - __sync_fetch_and_sub(object, operand) - -#define atomic_fetch_xor_explicit(object, operand, order) \ - atomic_fetch_sub(object, operand) - -#define atomic_fetch_and(object, operand) \ - __sync_fetch_and_and(object, operand) - -#define atomic_fetch_and_explicit(object, operand, order) \ - atomic_fetch_and(object, operand) - -#define atomic_flag_test_and_set(object) \ - atomic_exchange(object, 1) - -#define atomic_flag_test_and_set_explicit(object, order) \ - atomic_flag_test_and_set(object) - -#define atomic_flag_clear(object) \ - atomic_store(object, 0) - -#define atomic_flag_clear_explicit(object, order) \ - atomic_flag_clear(object) - -#endif /* COMPAT_ATOMICS_GCC_STDATOMIC_H */ From 8d1afda45e7bdaf4315a00bad09ed6c0ad2761dd Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 16 May 2017 10:40:14 -0400 Subject: [PATCH 0083/1449] strip provides/requires on libsensors --- chromium.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/chromium.spec b/chromium.spec index 21fa094..f3ac175 100644 --- a/chromium.spec +++ b/chromium.spec @@ -20,7 +20,7 @@ # Requires is trickier. %global __provides_exclude_from %{chromium_path}/.*\\.so|%{chromium_path}/lib/.*\\.so -%global privlibs libaccessibility|libaura_extra|libaura|libbase_i18n|libbase|libbindings|libblink_common|libblink_core|libblink_modules|libblink_platform|libblink_web|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture|libcapture_base|libcapture_lib|libcc_animation|libcc_blink|libcc_ipc|libcc_paint|libcc_proto|libcc|libcc_surfaces|libchromium_sqlite3|libclearkeycdm|libcloud_policy_proto_generated_compile|libcommon|libcompositor|libcontent|libcpp|libcrcrypto|libdbus|libdevice_base|libdevice_battery|libdevice_event_log|libdevice_gamepad|libdevices|libdevice_vibration|libdevice_vr|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay_compositor|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libevents_base|libevents_devices_x11|libevents_ipc|libevents_ozone_layout|libevents|libevents_x|libfingerprint|libffmpeg|libfont_service_library|libgcm|libgeneric_sensor|libgeolocation|libgeometry|libgesture_detection|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_x11|libgin|libgles2_c_lib|libgles2_implementation|libgles2_utils|libGLESv2|libgl_in_process_context|libgl_init|libgl_wrapper|libgpu|libgtk2ui|libicui18n|libicuuc|libipc|libjs|libkeyboard|libkeyboard_with_content|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libmedia_blink|libmedia_gpu|libmedia|libmessage_center|libmidi|libmojo_common_lib|libmojo_ime_lib|libmojo_public_system_cpp|libmojo_public_system|libmojo_system_impl|libnative_theme|libnet|libnet_with_v8|libonc|libplatform|libpolicy_component|libpolicy_proto|libpower_monitor|libpower_save_blocker|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|librange|libsandbox_services|libseccomp_bpf|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtest_ime_driver_library|libtime_zone_monitor|libtracing_library|libtracing|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_library|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libuser_manager|libuser_prefs|libv8_libbase|libv8_libplatform|libv8|libviews|libwebdata_common|libweb_dialogs|libwebview|libwidevinecdmadapter|libwidevinecdm|libwm|libwtf|libx11_events_platform|libx11_window +%global privlibs libaccessibility|libaura_extra|libaura|libbase_i18n|libbase|libbindings|libblink_common|libblink_core|libblink_modules|libblink_platform|libblink_web|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture|libcapture_base|libcapture_lib|libcc_animation|libcc_blink|libcc_ipc|libcc_paint|libcc_proto|libcc|libcc_surfaces|libchromium_sqlite3|libclearkeycdm|libcloud_policy_proto_generated_compile|libcommon|libcompositor|libcontent|libcpp|libcrcrypto|libdbus|libdevice_base|libdevice_battery|libdevice_event_log|libdevice_gamepad|libdevices|libdevice_vibration|libdevice_vr|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay_compositor|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libevents_base|libevents_devices_x11|libevents_ipc|libevents_ozone_layout|libevents|libevents_x|libfingerprint|libffmpeg|libfont_service_library|libgcm|libgeneric_sensor|libgeolocation|libgeometry|libgesture_detection|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_x11|libgin|libgles2_c_lib|libgles2_implementation|libgles2_utils|libGLESv2|libgl_in_process_context|libgl_init|libgl_wrapper|libgpu|libgtk2ui|libicui18n|libicuuc|libipc|libjs|libkeyboard|libkeyboard_with_content|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libmedia_blink|libmedia_gpu|libmedia|libmessage_center|libmidi|libmojo_common_lib|libmojo_ime_lib|libmojo_public_system_cpp|libmojo_public_system|libmojo_system_impl|libnative_theme|libnet|libnet_with_v8|libonc|libplatform|libpolicy_component|libpolicy_proto|libpower_monitor|libpower_save_blocker|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|librange|libsandbox_services|libseccomp_bpf|libsensors|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtest_ime_driver_library|libtime_zone_monitor|libtracing_library|libtracing|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_library|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libuser_manager|libuser_prefs|libv8_libbase|libv8_libplatform|libv8|libviews|libwebdata_common|libweb_dialogs|libwebview|libwidevinecdmadapter|libwidevinecdm|libwm|libwtf|libx11_events_platform|libx11_window %global __requires_exclude ^(%{privlibs})\\.so # Try to not use the Xvfb as it is slow.. @@ -97,7 +97,7 @@ BuildRequires: libicu-devel >= 5.4 Name: chromium%{chromium_channel} Version: %{majorversion}.0.3029.110 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1589,6 +1589,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Tue May 16 2017 Tom Callaway 58.0.3029.110-2 +- strip provides/requires on libsensors + * Mon May 15 2017 Tom Callaway 58.0.3029.110-1 - update to 58.0.3029.110 From 5180a1cefd81cf62eb89423dc3792346b15e0687 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 12 Jun 2017 15:12:01 -0400 Subject: [PATCH 0084/1449] 59.0.3071.86 --- .gitignore | 1 + ...ium-59.0.3071.86-dma-buf-header-hack.patch | 13 ++ chromium-59.0.3071.86-ffmpeg-stdatomic.patch | 17 +++ chromium-59.0.3071.86-gcc7.patch | 81 ++++++++++++ ...m-59.0.3071.86-i686-ld-memory-tricks.patch | 12 ++ chromium-59.0.3071.86-nullfix.patch | 43 ++++++ chromium-59.0.3071.86-setopaque.patch | 12 ++ chromium-59.0.3071.86-system-clang.patch | 10 ++ chromium.spec | 123 ++++++++++++------ clean_ffmpeg.sh | 3 +- sources | 5 +- 11 files changed, 275 insertions(+), 45 deletions(-) create mode 100644 chromium-59.0.3071.86-dma-buf-header-hack.patch create mode 100644 chromium-59.0.3071.86-ffmpeg-stdatomic.patch create mode 100644 chromium-59.0.3071.86-gcc7.patch create mode 100644 chromium-59.0.3071.86-i686-ld-memory-tricks.patch create mode 100644 chromium-59.0.3071.86-nullfix.patch create mode 100644 chromium-59.0.3071.86-setopaque.patch create mode 100644 chromium-59.0.3071.86-system-clang.patch diff --git a/.gitignore b/.gitignore index 351b0e3..5fdffca 100644 --- a/.gitignore +++ b/.gitignore @@ -20,3 +20,4 @@ /chromium-57.0.2987.133-clean.tar.xz /chromium-58.0.3029.81-clean.tar.xz /chromium-58.0.3029.110-clean.tar.xz +/chromium-59.0.3071.86-clean.tar.xz diff --git a/chromium-59.0.3071.86-dma-buf-header-hack.patch b/chromium-59.0.3071.86-dma-buf-header-hack.patch new file mode 100644 index 0000000..1e1ff43 --- /dev/null +++ b/chromium-59.0.3071.86-dma-buf-header-hack.patch @@ -0,0 +1,13 @@ +diff -up chromium-59.0.3071.86/ui/gfx/linux/client_native_pixmap_dmabuf.cc.headerhack chromium-59.0.3071.86/ui/gfx/linux/client_native_pixmap_dmabuf.cc +--- chromium-59.0.3071.86/ui/gfx/linux/client_native_pixmap_dmabuf.cc.headerhack 2017-06-09 15:12:49.684832489 -0400 ++++ chromium-59.0.3071.86/ui/gfx/linux/client_native_pixmap_dmabuf.cc 2017-06-09 15:13:13.907342001 -0400 +@@ -17,7 +17,8 @@ + #include "base/strings/stringprintf.h" + #include "base/trace_event/trace_event.h" + +-#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 6, 0) ++//#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 6, 0) ++#if 1 + #include + + struct local_dma_buf_sync { diff --git a/chromium-59.0.3071.86-ffmpeg-stdatomic.patch b/chromium-59.0.3071.86-ffmpeg-stdatomic.patch new file mode 100644 index 0000000..a512513 --- /dev/null +++ b/chromium-59.0.3071.86-ffmpeg-stdatomic.patch @@ -0,0 +1,17 @@ +diff -up chromium-59.0.3071.86/third_party/ffmpeg/libavutil/cpu.c.ffmpeg-stdatomic chromium-59.0.3071.86/third_party/ffmpeg/libavutil/cpu.c +--- chromium-59.0.3071.86/third_party/ffmpeg/libavutil/cpu.c.ffmpeg-stdatomic 2017-06-07 17:15:24.993945430 -0400 ++++ chromium-59.0.3071.86/third_party/ffmpeg/libavutil/cpu.c 2017-06-07 17:18:41.625997601 -0400 +@@ -17,7 +17,13 @@ + */ + + #include ++// GCC 4.8 didn't have stdatomic, but was advertising it. ++// https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58016 ++#if !defined(__clang__) && defined(__GNUC__) && (__GNUC__ == 4 || (__GNUC__ == 4 && (__GNUC_MINOR__ == 8))) ++#include ++#else + #include ++#endif + + #include "cpu.h" + #include "cpu_internal.h" diff --git a/chromium-59.0.3071.86-gcc7.patch b/chromium-59.0.3071.86-gcc7.patch new file mode 100644 index 0000000..7c1c30b --- /dev/null +++ b/chromium-59.0.3071.86-gcc7.patch @@ -0,0 +1,81 @@ +diff -up chromium-59.0.3071.86/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 chromium-59.0.3071.86/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h +--- chromium-59.0.3071.86/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 2017-06-07 16:30:12.351173420 -0400 ++++ chromium-59.0.3071.86/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h 2017-06-07 16:32:43.005163948 -0400 +@@ -5,6 +5,7 @@ + #include "platform/PlatformExport.h" + #include "platform/wtf/ThreadSpecific.h" + ++#include + #include + + namespace gpu { +diff -up chromium-59.0.3071.86/v8/src/objects-body-descriptors.h.gcc7 chromium-59.0.3071.86/v8/src/objects-body-descriptors.h +--- chromium-59.0.3071.86/v8/src/objects-body-descriptors.h.gcc7 2017-06-05 15:04:29.000000000 -0400 ++++ chromium-59.0.3071.86/v8/src/objects-body-descriptors.h 2017-06-07 16:30:12.352173401 -0400 +@@ -99,7 +99,7 @@ class FixedBodyDescriptor final : public + + template + static inline void IterateBody(HeapObject* obj, int object_size) { +- IterateBody(obj); ++ IterateBody(obj); + } + }; + +diff -up chromium-59.0.3071.86/v8/src/objects/hash-table.h.gcc7 chromium-59.0.3071.86/v8/src/objects/hash-table.h +--- chromium-59.0.3071.86/v8/src/objects/hash-table.h.gcc7 2017-06-07 16:35:26.052900374 -0400 ++++ chromium-59.0.3071.86/v8/src/objects/hash-table.h 2017-06-07 16:35:53.982340480 -0400 +@@ -135,22 +135,8 @@ class HashTable : public HashTableBase { + public: + typedef Shape ShapeT; + +- // Wrapper methods +- inline uint32_t Hash(Key key) { +- if (Shape::UsesSeed) { +- return Shape::SeededHash(key, GetHeap()->HashSeed()); +- } else { +- return Shape::Hash(key); +- } +- } +- +- inline uint32_t HashForObject(Key key, Object* object) { +- if (Shape::UsesSeed) { +- return Shape::SeededHashForObject(key, GetHeap()->HashSeed(), object); +- } else { +- return Shape::HashForObject(key, object); +- } +- } ++ inline uint32_t Hash(Key key); ++ inline uint32_t HashForObject(Key key, Object* object); + + // Returns a new HashTable object. + MUST_USE_RESULT static Handle New( +diff -up chromium-59.0.3071.86/v8/src/objects.h.gcc7 chromium-59.0.3071.86/v8/src/objects.h +diff -up chromium-59.0.3071.86/v8/src/objects-inl.h.gcc7 chromium-59.0.3071.86/v8/src/objects-inl.h +--- chromium-59.0.3071.86/v8/src/objects-inl.h.gcc7 2017-06-05 15:04:29.000000000 -0400 ++++ chromium-59.0.3071.86/v8/src/objects-inl.h 2017-06-07 16:30:12.477171021 -0400 +@@ -46,6 +46,25 @@ + namespace v8 { + namespace internal { + ++template ++uint32_t HashTable::Hash(Key key) { ++ if (Shape::UsesSeed) { ++ return Shape::SeededHash(key, GetHeap()->HashSeed()); ++ } else { ++ return Shape::Hash(key); ++ } ++} ++ ++template ++uint32_t HashTable::HashForObject(Key key, ++ Object* object) { ++ if (Shape::UsesSeed) { ++ return Shape::SeededHashForObject(key, GetHeap()->HashSeed(), object); ++ } else { ++ return Shape::HashForObject(key, object); ++ } ++} ++ + PropertyDetails::PropertyDetails(Smi* smi) { + value_ = smi->value(); + } diff --git a/chromium-59.0.3071.86-i686-ld-memory-tricks.patch b/chromium-59.0.3071.86-i686-ld-memory-tricks.patch new file mode 100644 index 0000000..9dde4c5 --- /dev/null +++ b/chromium-59.0.3071.86-i686-ld-memory-tricks.patch @@ -0,0 +1,12 @@ +diff -up chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn.ldmemory chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn +--- chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn.ldmemory 2017-06-07 15:37:09.436616113 -0400 ++++ chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn 2017-06-07 15:38:04.508519102 -0400 +@@ -93,7 +93,7 @@ gcc_toolchain("x86") { + nm = "nm" + ar = "ar" + ld = cxx +- extra_cppflags = "-fno-delete-null-pointer-checks" ++ extra_cppflags = "-fno-delete-null-pointer-checks -g1" + + # Output linker map files for binary size analysis. + enable_linker_map = true diff --git a/chromium-59.0.3071.86-nullfix.patch b/chromium-59.0.3071.86-nullfix.patch new file mode 100644 index 0000000..20e9d18 --- /dev/null +++ b/chromium-59.0.3071.86-nullfix.patch @@ -0,0 +1,43 @@ +diff -up chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn.nullfix chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn +--- chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn.nullfix 2017-06-05 15:03:01.000000000 -0400 ++++ chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn 2017-06-07 15:32:43.531911624 -0400 +@@ -31,6 +31,7 @@ gcc_toolchain("arm64") { + ld = cxx + readelf = "${toolprefix}readelf" + nm = "${toolprefix}nm" ++ extra_cppflags = "-fno-delete-null-pointer-checks" + + toolchain_args = { + current_cpu = "arm64" +@@ -49,6 +50,7 @@ gcc_toolchain("arm") { + ld = cxx + readelf = "${toolprefix}readelf" + nm = "${toolprefix}nm" ++ extra_cppflags = "-fno-delete-null-pointer-checks" + + toolchain_args = { + current_cpu = "arm" +@@ -91,6 +93,7 @@ gcc_toolchain("x86") { + nm = "nm" + ar = "ar" + ld = cxx ++ extra_cppflags = "-fno-delete-null-pointer-checks" + + # Output linker map files for binary size analysis. + enable_linker_map = true +@@ -136,6 +139,7 @@ gcc_toolchain("x64") { + nm = "nm" + ar = "ar" + ld = cxx ++ extra_cppflags = "-fno-delete-null-pointer-checks" + + # Output linker map files for binary size analysis. + enable_linker_map = true +@@ -161,6 +165,7 @@ gcc_toolchain("mipsel") { + ld = cxx + readelf = "mipsel-linux-gnu-readelf" + nm = "mipsel-linux-gnu-nm" ++ extra_cppflags = "-fno-delete-null-pointer-checks" + + toolchain_args = { + cc_wrapper = "" diff --git a/chromium-59.0.3071.86-setopaque.patch b/chromium-59.0.3071.86-setopaque.patch new file mode 100644 index 0000000..10d668f --- /dev/null +++ b/chromium-59.0.3071.86-setopaque.patch @@ -0,0 +1,12 @@ +diff -up chromium-59.0.3071.86/cc/blink/web_layer_impl.h.setopaque chromium-59.0.3071.86/cc/blink/web_layer_impl.h +--- chromium-59.0.3071.86/cc/blink/web_layer_impl.h.setopaque 2017-06-07 15:48:52.240620197 -0400 ++++ chromium-59.0.3071.86/cc/blink/web_layer_impl.h 2017-06-07 16:25:48.311448200 -0400 +@@ -69,7 +69,7 @@ class CC_BLINK_EXPORT WebLayerImpl : pub + blink::WebBlendMode BlendMode() const override; + void SetIsRootForIsolatedGroup(bool root) override; + bool IsRootForIsolatedGroup() override; +- void SetOpaque(bool opaque) override; ++ CC_BLINK_EXPORT void SetOpaque(bool opaque) override; + bool Opaque() const override; + void SetPosition(const blink::WebFloatPoint& position) override; + blink::WebFloatPoint GetPosition() const override; diff --git a/chromium-59.0.3071.86-system-clang.patch b/chromium-59.0.3071.86-system-clang.patch new file mode 100644 index 0000000..458834b --- /dev/null +++ b/chromium-59.0.3071.86-system-clang.patch @@ -0,0 +1,10 @@ +diff -up chromium-59.0.3071.86/build/config/clang/clang.gni.system-clang chromium-59.0.3071.86/build/config/clang/clang.gni +--- chromium-59.0.3071.86/build/config/clang/clang.gni.system-clang 2017-06-11 20:57:07.327949687 -0400 ++++ chromium-59.0.3071.86/build/config/clang/clang.gni 2017-06-11 20:57:24.085620826 -0400 +@@ -9,5 +9,5 @@ declare_args() { + # coding guidelines, etc. Only used when compiling with Clang. + clang_use_chrome_plugins = is_clang && !is_nacl && !use_xcode_clang + +- clang_base_path = "//third_party/llvm-build/Release+Asserts" ++ clang_base_path = "/usr" + } diff --git a/chromium.spec b/chromium.spec index f3ac175..0692b70 100644 --- a/chromium.spec +++ b/chromium.spec @@ -20,7 +20,7 @@ # Requires is trickier. %global __provides_exclude_from %{chromium_path}/.*\\.so|%{chromium_path}/lib/.*\\.so -%global privlibs libaccessibility|libaura_extra|libaura|libbase_i18n|libbase|libbindings|libblink_common|libblink_core|libblink_modules|libblink_platform|libblink_web|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture|libcapture_base|libcapture_lib|libcc_animation|libcc_blink|libcc_ipc|libcc_paint|libcc_proto|libcc|libcc_surfaces|libchromium_sqlite3|libclearkeycdm|libcloud_policy_proto_generated_compile|libcommon|libcompositor|libcontent|libcpp|libcrcrypto|libdbus|libdevice_base|libdevice_battery|libdevice_event_log|libdevice_gamepad|libdevices|libdevice_vibration|libdevice_vr|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay_compositor|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libevents_base|libevents_devices_x11|libevents_ipc|libevents_ozone_layout|libevents|libevents_x|libfingerprint|libffmpeg|libfont_service_library|libgcm|libgeneric_sensor|libgeolocation|libgeometry|libgesture_detection|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_x11|libgin|libgles2_c_lib|libgles2_implementation|libgles2_utils|libGLESv2|libgl_in_process_context|libgl_init|libgl_wrapper|libgpu|libgtk2ui|libicui18n|libicuuc|libipc|libjs|libkeyboard|libkeyboard_with_content|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libmedia_blink|libmedia_gpu|libmedia|libmessage_center|libmidi|libmojo_common_lib|libmojo_ime_lib|libmojo_public_system_cpp|libmojo_public_system|libmojo_system_impl|libnative_theme|libnet|libnet_with_v8|libonc|libplatform|libpolicy_component|libpolicy_proto|libpower_monitor|libpower_save_blocker|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|librange|libsandbox_services|libseccomp_bpf|libsensors|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtest_ime_driver_library|libtime_zone_monitor|libtracing_library|libtracing|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_library|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libuser_manager|libuser_prefs|libv8_libbase|libv8_libplatform|libv8|libviews|libwebdata_common|libweb_dialogs|libwebview|libwidevinecdmadapter|libwidevinecdm|libwm|libwtf|libx11_events_platform|libx11_window +%global privlibs libEGL|libGLESv2|libaccessibility|libanimation|libaura|libaura_extra|libbase|libbase_i18n|libbindings|libblink_core|libblink_modules|libblink_platform|libblink_web|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcc|libcc_animation|libcc_base|libcc_blink|libcc_debug|libcc_ipc|libcc_paint|libcc_surfaces|libchromium_sqlite3|libclearkeycdm|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent|libcpp|libcrcrypto|libdbus|libdevice_base|libdevice_battery|libdevice_event_log|libdevice_gamepad|libdevice_vibration|libdevice_vr|libdevices|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_compositor|libdisplay_types|libdisplay_util|libdomain_reliability|libembedder|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libffmpeg|libfingerprint|libgcm|libgeneric_ser|libgeolocation|libgeometry|libgeometry_skia|libgesture_detection|libgfx|libgfx_ipc|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_x11|libgin|libgin_features|libgl_in_process_context|libgl_init|libgl_wrapper|libgles2_c_lib|libgles2_implementation|libgles2_utils|libgpu|libgtk2ui|libicui18n|libicuuc|libipc|libjs|libkeyboard|libkeyboard_with_content|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libmanager|libmedia|libmedia_blink|libmedia_gpu|libmedia_mojo_services|libmessage_center|libmidi|libmojo_common_lib|libmojo_ime_lib|libmojo_public_system|libmojo_public_system_cpp|libmojo_system_impl|libnative_theme|libnet|libnet_with_v8|libonc|libosmesa|libplatform|libplatform_wtf|libpolicy_component|libpolicy_proto|libpower_save_blocker|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_globals|libproxy_config|librange|libsandbox_services|libseccomp_bpf|libsers|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libui_base|libui_base_ime|libui_base_x|libui_data_pack|libui_touch_selection|libui_views_mus_lib|liburl|liburl_ipc|liburl_matcher|libuser_manager|libuser_prefs|libv8|libv8_libbase|libv8_libplatform|libviews|libweb_dialogs|libwebdata_common|libwebview|libwidevinecdm|libwidevinecdmadapter|libwm|libwtf|libx11_events_platform|libx11_window %global __requires_exclude ^(%{privlibs})\\.so # Try to not use the Xvfb as it is slow.. @@ -71,6 +71,11 @@ BuildRequires: libicu-devel >= 5.4 %global bundlere2 1 +# The libxml_utils code depends on the specific bundled libxml checkout +# which is not compatible with the current code in the Fedora package as of +# 2017-06-08. +%global bundlelibxml 1 + # Chromium breaks on wayland, hidpi, and colors with gtk3 enabled. %global gtk3 0 @@ -84,6 +89,14 @@ BuildRequires: libicu-devel >= 5.4 %global bundlelibusbx 0 %endif +# Needs at least harfbuzz 1.4.2 now. +# 2017-06-12 +%if 0%{fedora} < 26 +%global bundleharfbuzz 1 +%else +%global bundleharfbuzz 0 +%endif + ### Google API keys (see http://www.chromium.org/developers/how-tos/api-keys) ### Note: These are for Fedora use ONLY. ### For your own distribution, please get your own set of keys. @@ -93,11 +106,11 @@ BuildRequires: libicu-devel >= 5.4 %global default_client_secret miEreAep8nuvTdvLums6qyLK %global chromoting_client_id 449907151817-8vnlfih032ni8c4jjps9int9t86k546t.apps.googleusercontent.com -%global majorversion 58 +%global majorversion 59 Name: chromium%{chromium_channel} -Version: %{majorversion}.0.3029.110 -Release: 2%{?dist} +Version: %{majorversion}.0.3071.86 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -121,8 +134,6 @@ Patch9: chromium-48.0.2564.116-libusb_interrupt_event_handler.patch # Ignore deprecations in cups 2.2 # https://bugs.chromium.org/p/chromium/issues/detail?id=622493 Patch12: chromium-55.0.2883.75-cups22.patch -# Add ICU Text Codec aliases (from openSUSE via Russian Fedora) -Patch14: chromium-55.0.2883.75-more-codec-aliases.patch # Use PIE in the Linux sandbox (from openSUSE via Russian Fedora) Patch15: chromium-55.0.2883.75-sandbox-pie.patch # Enable ARM CPU detection for webrtc (from archlinux via Russian Fedora) @@ -140,30 +151,34 @@ Patch21: chromium-53.0.2785.92-last-commit-position.patch # Fix issue where timespec is not defined when sys/stat.h is included. Patch22: chromium-53.0.2785.92-boringssl-time-fix.patch # I wouldn't have to do this if there was a standard way to append extra compiler flags -Patch24: chromium-54.0.2840.59-nullfix.patch +Patch24: chromium-59.0.3071.86-nullfix.patch # Add explicit includedir for jpeglib.h Patch25: chromium-54.0.2840.59-jpeg-include-dir.patch # On i686, pass --no-keep-memory --reduce-memory-overheads to ld. -Patch26: chromium-54.0.2840.59-i686-ld-memory-tricks.patch +Patch26: chromium-59.0.3071.86-i686-ld-memory-tricks.patch # obj/content/renderer/renderer/child_frame_compositing_helper.o: In function `content::ChildFrameCompositingHelper::OnSetSurface(cc::SurfaceId const&, gfx::Size const&, float, cc::SurfaceSequence const&)': # /builddir/build/BUILD/chromium-54.0.2840.90/out/Release/../../content/renderer/child_frame_compositing_helper.cc:214: undefined reference to `cc_blink::WebLayerImpl::setOpaque(bool)' -Patch27: chromium-54.0.2840.90-setopaque.patch +Patch27: chromium-59.0.3071.86-setopaque.patch # Use -fpermissive to build WebKit Patch31: chromium-56.0.2924.87-fpermissive.patch # Fix issue with compilation on gcc7 # Thanks to Ben Noordhuis -Patch33: chromium-56.0.2924.87-gcc7.patch +Patch33: chromium-59.0.3071.86-gcc7.patch # Enable mp3 support Patch34: chromium-58.0.3029.81-enable-mp3.patch -# Fix gn build -# https://chromium.googlesource.com/chromium/src.git/+/379e35f6f3eaa41a97f2659249509ca599749b27%5E%21/tools/gn/bootstrap/bootstrap.py -Patch35: chromium-58.0.3029.81-fix-gn.patch # Revert https://chromium.googlesource.com/chromium/src/+/b794998819088f76b4cf44c8db6940240c563cf4%5E%21/#F0 # https://bugs.chromium.org/p/chromium/issues/detail?id=712737 # https://bugzilla.redhat.com/show_bug.cgi?id=1446851 Patch36: chromium-58.0.3029.96-revert-b794998819088f76b4cf44c8db6940240c563cf4.patch # Correctly compile the stdatomic.h in ffmpeg with gcc 4.8 -Patch37: chromium-58.0.3029.81-ffmpeg-stdatomic.patch +Patch37: chromium-59.0.3071.86-ffmpeg-stdatomic.patch +# RHEL is too old to have this header in kernel-headers +# and some Fedora versions do not contain what Chromium expects to find +# so just use the hardcoded values instead +Patch38: chromium-59.0.3071.86-dma-buf-header-hack.patch +# Nacl can't die soon enough +Patch39: chromium-59.0.3071.86-system-clang.patch + ### Chromium Tests Patches ### Patch100: chromium-46.0.2490.86-use_system_opus.patch @@ -197,7 +212,6 @@ Source8: get_linux_tests_names.py Source9: chromium-browser.xml Source10: https://dl.google.com/dl/edgedl/chrome/policy/policy_templates.zip Source11: chrome-remote-desktop@.service -Source12: chromium-browser.appdata.xml Source13: master_preferences # We can assume gcc and binutils. BuildRequires: gcc-c++ @@ -371,46 +385,50 @@ Provides: bundled(angle) = 2422 Provides: bundled(bintrees) = 1.0.1 # This is a fork of openssl. Provides: bundled(boringssl) -Provides: bundled(brotli) +Provides: bundled(brotli) = 222564a95d9ab58865a096b8d9f7324ea5f2e03e Provides: bundled(bspatch) Provides: bundled(cacheinvalidation) = 20150720 -Provides: bundled(cardboard) = 0.5.4 Provides: bundled(colorama) = 799604a104 Provides: bundled(crashpad) Provides: bundled(dmg_fp) -Provides: bundled(expat) = 2.1.0 +Provides: bundled(expat) = 2.2.0 Provides: bundled(fdmlibm) = 5.3 # Don't get too excited. MPEG and other legally problematic stuff is stripped out. -Provides: bundled(ffmpeg) = 2.6 +Provides: bundled(ffmpeg) = 3.2git Provides: bundled(fips181) = 2.2.3 Provides: bundled(fontconfig) = 2.11.0 Provides: bundled(gperftools) = svn144 Provides: bundled(gtk3) = 3.1.4 %if 0%{?bundleharfbuzz} -Provides: bundled(harfbuzz) = 1.2.7 +Provides: bundled(harfbuzz) = 1.4.2 %endif -Provides: bundled(hunspell) = 1.3.2 +Provides: bundled(hunspell) = 1.6.0 Provides: bundled(iccjpeg) %if 0%{?bundleicu} -Provides: bundled(icu) = 54.1 +Provides: bundled(icu) = 58.1 %endif Provides: bundled(kitchensink) = 1 -Provides: bundled(leveldb) = r80 +Provides: bundled(leveldb) = 1.20 Provides: bundled(libaddressinput) = 0 +Provides: bundled(libdrm) = 2.4.70 Provides: bundled(libevent) = 1.4.15 Provides: bundled(libjingle) = 9564 Provides: bundled(libjpeg-turbo) = 1.4.90 -Provides: bundled(libphonenumber) = svn584 +Provides: bundled(libphonenumber) = a4da30df63a097d67e3c429ead6790ad91d36cf4 Provides: bundled(libpng) = 1.6.22 -Provides: bundled(libsrtp) = 1.5.2 +Provides: bundled(libsrtp) = 2cbd85085037dc7bf2eda48d4cf62e2829056e2d %if %{bundlelibusbx} Provides: bundled(libusbx) = 1.0.17 %endif -Provides: bundled(libvpx) = 1.4.0 -Provides: bundled(libwebp) = 0.4.3 +Provides: bundled(libvpx) = 1.6.0 +Provides: bundled(libwebp) = 0.6.0 +%if %{bundlelibxml} +# Well, it's actually newer than 2.9.4 and has code in it that has been reverted upstream... but eh. +Provides: bundled(libxml) = 2.9.4 +%endif Provides: bundled(libXNVCtrl) = 302.17 -Provides: bundled(libyuv) = 1444 -Provides: bundled(lzma) = 9.20 +Provides: bundled(libyuv) = 1651 +Provides: bundled(lzma) = 15.14 Provides: bundled(libudis86) = 1.7.1 Provides: bundled(mesa) = 9.0.3 Provides: bundled(NSBezierPath) = 1.0 @@ -419,28 +437,28 @@ Provides: bundled(mt19937ar) = 2002.1.26 %if %{bundleopus} Provides: bundled(opus) = 1.1.3 %endif -Provides: bundled(ots) = 767d6040439e6ebcdb867271fcb686bd3f8ac739 -Provides: bundled(protobuf) = r476 +Provides: bundled(ots) = 8d70cffebbfa58f67a5c3ed0e9bc84dccdbc5bc0 +Provides: bundled(protobuf) = 3.0.0.beta.3 Provides: bundled(qcms) = 4 %if 0%{?bundlere2} Provides: bundled(re2) %endif -Provides: bundled(sfntly) = svn111 +Provides: bundled(sfntly) = 04740d2600193b14aa3ef24cd9fbb3d5996b9f77 Provides: bundled(skia) Provides: bundled(SMHasher) = 0 -Provides: bundled(snappy) = r80 +Provides: bundled(snappy) = 1.1.4-head Provides: bundled(speech-dispatcher) = 0.7.1 -Provides: bundled(sqlite) = 3.8.7.4 +Provides: bundled(sqlite) = 3.17patched Provides: bundled(superfasthash) = 0 Provides: bundled(talloc) = 2.0.1 Provides: bundled(usrsctp) = 0 -Provides: bundled(v8) = 4.5.103.35 +Provides: bundled(v8) = 5.9.211.31 Provides: bundled(webrtc) = 90usrsctp Provides: bundled(woff2) = 445f541996fe8376f3976d35692fd2b9a6eedf2d Provides: bundled(xdg-mime) Provides: bundled(xdg-user-dirs) Provides: bundled(x86inc) = 0 -Provides: bundled(zlib) = 1.2.5 +Provides: bundled(zlib) = 1.2.11 # For selinux scriptlet Requires(post): /usr/sbin/semanage @@ -527,7 +545,6 @@ members of the Chromium and WebDriver teams. %patch7 -p1 -b .ignore-fd-count %patch9 -p1 -b .modern-libusbx %patch12 -p1 -b .cups22 -%patch14 -p1 -b .morealiases %patch15 -p1 -b .sandboxpie %patch16 -p1 -b .armwebrtc %patch18 -p1 -b .etc @@ -542,9 +559,10 @@ members of the Chromium and WebDriver teams. %patch31 -p1 -b .permissive %patch33 -p1 -b .gcc7 %patch34 -p1 -b .mp3 -%patch35 -p1 -b .fixgn %patch36 -p1 -b .revert %patch37 -p1 -b .ffmpeg-stdatomic +%patch38 -p1 -b .headerhack +%patch39 -p1 -b .system-clang ### Chromium Tests Patches ### %patch100 -p1 -b .use_system_opus @@ -704,6 +722,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/harfbuzz-ng' \ 'third_party/icu' \ 'base/third_party/libevent' \ + 'third_party/libdrm' \ 'third_party/libjpeg_turbo' \ 'third_party/libpng' \ 'third_party/libsrtp' \ @@ -718,6 +737,11 @@ build/linux/unbundle/remove_bundled_libraries.py \ %endif 'third_party/snappy' \ 'third_party/speech-dispatcher' \ + 'third_party/swiftshader' \ + 'third_party/swiftshader/third_party/subzero' \ + 'third_party/swiftshader/third_party/LLVM' \ + 'third_party/swiftshader/third_party/llvm-subzero' \ + 'third_party/swiftshader/third_party/pnacl-subzero' \ 'third_party/usb_ids' \ 'third_party/xdg-utils' \ 'third_party/yasm' \ @@ -770,6 +794,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/fips181' \ 'third_party/flatbuffers' \ 'third_party/flot' \ + 'third_party/freetype' \ 'third_party/google_input_tools' \ 'third_party/google_input_tools/third_party/closure_library' \ 'third_party/google_input_tools/third_party/closure_library/third_party/closure' \ @@ -810,13 +835,12 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/pdfium/third_party/agg23' \ 'third_party/pdfium/third_party/base' \ 'third_party/pdfium/third_party/bigint' \ + 'third_party/pdfium/third_party/build' \ 'third_party/pdfium/third_party/freetype' \ 'third_party/pdfium/third_party/lcms2-2.6' \ - 'third_party/pdfium/third_party/libjpeg' \ 'third_party/pdfium/third_party/libopenjpeg20' \ 'third_party/pdfium/third_party/libpng16' \ 'third_party/pdfium/third_party/libtiff' \ - 'third_party/pdfium/third_party/zlib_v128' \ 'third_party/polymer' \ 'third_party/protobuf' \ 'third_party/protobuf/third_party/six' \ @@ -869,7 +893,10 @@ build/linux/unbundle/replace_gn_files.py --system-libraries \ %else libusb \ %endif +%if %{bundlelibxml} +%else libxml \ +%endif libxslt \ %if %{bundleopus} %else @@ -1102,6 +1129,16 @@ cp -a out/Release/gen/chrome/app/policy/linux/examples/chrome.json . mkdir -p %{buildroot}%{_datadir}/icons/hicolor/256x256/apps cp -a chrome/app/theme/chromium/product_logo_256.png %{buildroot}%{_datadir}/icons/hicolor/256x256/apps/%{chromium_browser_channel}.png +mkdir -p %{buildroot}%{_datadir}/icons/hicolor/128x128/apps +cp -a chrome/app/theme/chromium/product_logo_128.png %{buildroot}%{_datadir}/icons/hicolor/128x128/apps/%{chromium_browser_channel}.png +mkdir -p %{buildroot}%{_datadir}/icons/hicolor/64x64/apps +cp -a chrome/app/theme/chromium/product_logo_64.png %{buildroot}%{_datadir}/icons/hicolor/64x64/apps/%{chromium_browser_channel}.png +mkdir -p %{buildroot}%{_datadir}/icons/hicolor/48x48/apps +cp -a chrome/app/theme/chromium/product_logo_48.png %{buildroot}%{_datadir}/icons/hicolor/48x48/apps/%{chromium_browser_channel}.png +mkdir -p %{buildroot}%{_datadir}/icons/hicolor/24x24/apps +cp -a chrome/app/theme/chromium/product_logo_24.png %{buildroot}%{_datadir}/icons/hicolor/24x24/apps/%{chromium_browser_channel}.png +mkdir -p %{buildroot}%{_datadir}/icons/hicolor/22x22/apps +cp -a chrome/app/theme/chromium/product_logo_22.png %{buildroot}%{_datadir}/icons/hicolor/22x22/apps/%{chromium_browser_channel}.png # Install the master_preferences file mkdir -p %{buildroot}%{_sysconfdir}/%{name} @@ -1110,7 +1147,7 @@ install -m 0644 %{SOURCE13} %{buildroot}%{_sysconfdir}/%{name}/ mkdir -p %{buildroot}%{_datadir}/applications/ desktop-file-install --dir %{buildroot}%{_datadir}/applications %{SOURCE4} -install -D -m0644 %{SOURCE12} ${RPM_BUILD_ROOT}%{_datadir}/appdata/%{chromium_browser_channel}.appdata.xml +install -D -m0644 chrome/installer/linux/common/chromium-browser/chromium-browser.appdata.xml ${RPM_BUILD_ROOT}%{_datadir}/appdata/%{chromium_browser_channel}.appdata.xml appstream-util validate-relax --nonet ${RPM_BUILD_ROOT}%{_datadir}/appdata/%{chromium_browser_channel}.appdata.xml mkdir -p %{buildroot}%{_datadir}/gnome-control-center/default-apps/ @@ -1589,6 +1626,10 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Mon Jun 12 2017 Tom Callaway 59.0.3071.86-1 +- update to 59.0.3071.86 +- include smaller logo files + * Tue May 16 2017 Tom Callaway 58.0.3029.110-2 - strip provides/requires on libsensors diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index 01a89fc..e703fa3 100644 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -83,10 +83,11 @@ header_files=" libavcodec/x86/inline_asm.h \ libavcodec/h264chroma.h \ libavcodec/hpeldsp.h \ libavcodec/idctdsp.h \ - libavcodec/imdct15.h \ libavcodec/internal.h \ libavcodec/kbdwin.h \ libavcodec/mathops.h \ + libavcodec/mdct15.c \ + libavcodec/mdct15.h \ libavcodec/me_cmp.h \ libavcodec/motion_est.h \ libavcodec/mpeg12data.h \ diff --git a/sources b/sources index 5faaaee..16f137c 100644 --- a/sources +++ b/sources @@ -1,4 +1,3 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 -SHA512 (policy_templates.zip) = 28f1f85eab1719dd1c6a70f7e4cd1c9bea46215adc327a32f2509098e70768a61dbb8b24c186279ec4e4e1299953c219e9eb71af6d5527fe9e422599ad0d785e -SHA512 (chromium-58.0.3029.81-clean.tar.xz) = b2ac41d6eccfd025d816b814354330fe4a9bb81c212fd7b98f79cc6f0c693d1b2ce5fbe0ce9397d43808ffcfa171585769c9db5d4b7d24e9bf548c450f8ad7f6 -SHA512 (chromium-58.0.3029.110-clean.tar.xz) = f26be2eaabe47d6294fd411bbb9abe07721c54fe06e6792a3ff0bd173571bb84ee673bc022f626883fc133e5285cf1386ba8539351d4eb82102feb3cab5f9852 +SHA512 (policy_templates.zip) = a997bd5d410cf8f0f104fb5b69b60699c9e60eb3f99b42e0aff167843f3a45923a9a99c881cac9cd4472a60ca9c7d1ba897e15d485fbfd66c996419e7fadd3f8 +SHA512 (chromium-59.0.3071.86-clean.tar.xz) = d9e1e1f4757b48ffc21708be9cf313677d52a46ebed222edd3851e533500b426b7fd6330463a030b1f273882ebd2f300f557f628c3f4da0a010f18b3dfc0f8f4 From a9d450abd7f0f61bd0969397d2cf16c5099d36d8 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 12 Jun 2017 15:12:45 -0400 Subject: [PATCH 0085/1449] fix condit --- chromium.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 0692b70..9cbeb9a 100644 --- a/chromium.spec +++ b/chromium.spec @@ -91,7 +91,7 @@ BuildRequires: libicu-devel >= 5.4 # Needs at least harfbuzz 1.4.2 now. # 2017-06-12 -%if 0%{fedora} < 26 +%if 0%{?fedora} < 26 %global bundleharfbuzz 1 %else %global bundleharfbuzz 0 From bc41d94d8961f88b0fbec2e23b4691c0935d5364 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 12 Jun 2017 16:00:29 -0400 Subject: [PATCH 0086/1449] pnacl/nacl now needs llvm to build the bootstrap lib --- chromium.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 9cbeb9a..921b349 100644 --- a/chromium.spec +++ b/chromium.spec @@ -110,7 +110,7 @@ BuildRequires: libicu-devel >= 5.4 Name: chromium%{chromium_channel} Version: %{majorversion}.0.3071.86 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -270,6 +270,7 @@ BuildRequires: nacl-arm-gcc, nacl-arm-binutils, nacl-arm-newlib # a major version. BuildRequires: chromium-native_client >= 52.0.2743.82 BuildRequires: clang +BuildRequires: llvm %ifarch x86_64 # Really, this is what we want: # BuildRequires: glibc-devel(x86-32) libgcc(x86-32) @@ -1626,6 +1627,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Mon Jun 12 2017 Tom Callaway 59.0.3071.86-2 +- pnacl/nacl now needs llvm to build the bootstrap lib + * Mon Jun 12 2017 Tom Callaway 59.0.3071.86-1 - update to 59.0.3071.86 - include smaller logo files From 76f7bf9c0853a75b63e2795346a2a49fbcce7b15 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 12 Jun 2017 17:21:11 -0400 Subject: [PATCH 0087/1449] fix hicolor file listing to be more inclusive --- chromium.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 921b349..c21d846 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1576,7 +1576,7 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt # %%{chromium_path}/locales/fake-bidi.pak %{chromium_path}/resources/ %{_mandir}/man1/%{chromium_browser_channel}.* -%{_datadir}/icons/hicolor/256x256/apps/%{chromium_browser_channel}.png +%{_datadir}/icons/hicolor/*/apps/%{chromium_browser_channel}.png %{_datadir}/applications/*.desktop %{_datadir}/appdata/*.appdata.xml %{_datadir}/gnome-control-center/default-apps/chromium-browser.xml From 356c8fbd7ab8a0a0d6e948e086d01cac9ff3dc76 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 13 Jun 2017 13:26:45 -0400 Subject: [PATCH 0088/1449] fix filtering --- chromium.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/chromium.spec b/chromium.spec index c21d846..9d618e9 100644 --- a/chromium.spec +++ b/chromium.spec @@ -20,7 +20,7 @@ # Requires is trickier. %global __provides_exclude_from %{chromium_path}/.*\\.so|%{chromium_path}/lib/.*\\.so -%global privlibs libEGL|libGLESv2|libaccessibility|libanimation|libaura|libaura_extra|libbase|libbase_i18n|libbindings|libblink_core|libblink_modules|libblink_platform|libblink_web|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcc|libcc_animation|libcc_base|libcc_blink|libcc_debug|libcc_ipc|libcc_paint|libcc_surfaces|libchromium_sqlite3|libclearkeycdm|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent|libcpp|libcrcrypto|libdbus|libdevice_base|libdevice_battery|libdevice_event_log|libdevice_gamepad|libdevice_vibration|libdevice_vr|libdevices|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_compositor|libdisplay_types|libdisplay_util|libdomain_reliability|libembedder|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libffmpeg|libfingerprint|libgcm|libgeneric_ser|libgeolocation|libgeometry|libgeometry_skia|libgesture_detection|libgfx|libgfx_ipc|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_x11|libgin|libgin_features|libgl_in_process_context|libgl_init|libgl_wrapper|libgles2_c_lib|libgles2_implementation|libgles2_utils|libgpu|libgtk2ui|libicui18n|libicuuc|libipc|libjs|libkeyboard|libkeyboard_with_content|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libmanager|libmedia|libmedia_blink|libmedia_gpu|libmedia_mojo_services|libmessage_center|libmidi|libmojo_common_lib|libmojo_ime_lib|libmojo_public_system|libmojo_public_system_cpp|libmojo_system_impl|libnative_theme|libnet|libnet_with_v8|libonc|libosmesa|libplatform|libplatform_wtf|libpolicy_component|libpolicy_proto|libpower_save_blocker|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_globals|libproxy_config|librange|libsandbox_services|libseccomp_bpf|libsers|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libui_base|libui_base_ime|libui_base_x|libui_data_pack|libui_touch_selection|libui_views_mus_lib|liburl|liburl_ipc|liburl_matcher|libuser_manager|libuser_prefs|libv8|libv8_libbase|libv8_libplatform|libviews|libweb_dialogs|libwebdata_common|libwebview|libwidevinecdm|libwidevinecdmadapter|libwm|libwtf|libx11_events_platform|libx11_window +%global privlibs libEGL|libGLESv2|libaccessibility|libanimation|libaura|libaura_extra|libbase|libbase_i18n|libbindings|libblink_core|libblink_modules|libblink_platform|libblink_web|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcc|libcc_animation|libcc_base|libcc_blink|libcc_debug|libcc_ipc|libcc_paint|libcc_surfaces|libchromium_sqlite3|libclearkeycdm|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent|libcpp|libcrcrypto|libdbus|libdevice_base|libdevice_battery|libdevice_event_log|libdevice_gamepad|libdevice_vibration|libdevice_vr|libdevices|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_compositor|libdisplay_types|libdisplay_util|libdomain_reliability|libembedder|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libffmpeg|libfingerprint|libgcm|libgeneric_sensor|libgeolocation|libgeometry|libgeometry_skia|libgesture_detection|libgfx|libgfx_ipc|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_x11|libgin|libgin_features|libgl_in_process_context|libgl_init|libgl_wrapper|libgles2_c_lib|libgles2_implementation|libgles2_utils|libgpu|libgtk2ui|libicui18n|libicuuc|libipc|libjs|libkeyboard|libkeyboard_with_content|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libmanager|libmedia|libmedia_blink|libmedia_gpu|libmedia_mojo_services|libmessage_center|libmidi|libmojo_common_lib|libmojo_ime_lib|libmojo_public_system|libmojo_public_system_cpp|libmojo_system_impl|libnative_theme|libnet|libnet_with_v8|libonc|libosmesa|libplatform|libplatform_wtf|libpolicy_component|libpolicy_proto|libpower_save_blocker|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_globals|libproxy_config|librange|libsandbox_services|libseccomp_bpf|libsensors|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libui_base|libui_base_ime|libui_base_x|libui_data_pack|libui_touch_selection|libui_views_mus_lib|liburl|liburl_ipc|liburl_matcher|libuser_manager|libuser_prefs|libv8|libv8_libbase|libv8_libplatform|libviews|libweb_dialogs|libwebdata_common|libwebview|libwidevinecdm|libwidevinecdmadapter|libwm|libwtf|libx11_events_platform|libx11_window %global __requires_exclude ^(%{privlibs})\\.so # Try to not use the Xvfb as it is slow.. @@ -110,7 +110,7 @@ BuildRequires: libicu-devel >= 5.4 Name: chromium%{chromium_channel} Version: %{majorversion}.0.3071.86 -Release: 2%{?dist} +Release: 3%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1627,6 +1627,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Tue Jun 13 2017 Tom Callaway 59.0.3071.86-3 +- fix filtering + * Mon Jun 12 2017 Tom Callaway 59.0.3071.86-2 - pnacl/nacl now needs llvm to build the bootstrap lib From 74ee2445dae5312b3cacf8970b1a7a0b369c6632 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 16 Jun 2017 15:40:59 -0400 Subject: [PATCH 0089/1449] actually fix mp3 playback support --- chromium-59.0.3071.86-enable-mp3.patch | 477 +++++++++++++++++++++++++ chromium.spec | 7 +- 2 files changed, 482 insertions(+), 2 deletions(-) create mode 100644 chromium-59.0.3071.86-enable-mp3.patch diff --git a/chromium-59.0.3071.86-enable-mp3.patch b/chromium-59.0.3071.86-enable-mp3.patch new file mode 100644 index 0000000..d727324 --- /dev/null +++ b/chromium-59.0.3071.86-enable-mp3.patch @@ -0,0 +1,477 @@ +diff -up chromium-59.0.3071.86/components/neterror/resources/sounds/button-press.mp3 chromium-59.0.3071.86/components/neterror/resources/sounds/button-press +diff -up chromium-59.0.3071.86/components/neterror/resources/sounds/hit.mp3 chromium-59.0.3071.86/components/neterror/resources/sounds/hit +diff -up chromium-59.0.3071.86/components/neterror/resources/sounds/score-reached.mp3 chromium-59.0.3071.86/components/neterror/resources/sounds/score-reached +diff -up chromium-59.0.3071.86/media/base/mime_util_internal.cc.mp3 chromium-59.0.3071.86/media/base/mime_util_internal.cc +--- chromium-59.0.3071.86/media/base/mime_util_internal.cc.mp3 2017-06-05 15:03:08.000000000 -0400 ++++ chromium-59.0.3071.86/media/base/mime_util_internal.cc 2017-06-15 12:37:05.162650032 -0400 +@@ -286,10 +286,10 @@ void MimeUtil::AddSupportedMediaFormats( + CodecSet webm_codecs(webm_audio_codecs); + webm_codecs.insert(webm_video_codecs.begin(), webm_video_codecs.end()); + +-#if BUILDFLAG(USE_PROPRIETARY_CODECS) + CodecSet mp3_codecs; + mp3_codecs.insert(MP3); + ++#if BUILDFLAG(USE_PROPRIETARY_CODECS) + CodecSet aac; + aac.insert(MPEG2_AAC); + aac.insert(MPEG4_AAC); +@@ -333,10 +333,10 @@ void MimeUtil::AddSupportedMediaFormats( + AddContainerWithCodecs("application/ogg", ogg_codecs, false); + AddContainerWithCodecs("audio/flac", implicit_codec, false); + +-#if BUILDFLAG(USE_PROPRIETARY_CODECS) + AddContainerWithCodecs("audio/mpeg", mp3_codecs, true); // Allow "mp3". + AddContainerWithCodecs("audio/mp3", implicit_codec, true); + AddContainerWithCodecs("audio/x-mp3", implicit_codec, true); ++#if BUILDFLAG(USE_PROPRIETARY_CODECS) + AddContainerWithCodecs("audio/aac", implicit_codec, true); // AAC / ADTS. + AddContainerWithCodecs("audio/mp4", mp4_audio_codecs, true); + DCHECK(!mp4_video_codecs.empty()); +@@ -789,7 +789,6 @@ bool MimeUtil::IsCodecProprietary(Codec + case INVALID_CODEC: + case AC3: + case EAC3: +- case MP3: + case MPEG2_AAC: + case MPEG4_AAC: + case H264: +@@ -797,6 +796,7 @@ bool MimeUtil::IsCodecProprietary(Codec + case DOLBY_VISION: + return true; + ++ case MP3: + case PCM: + case VORBIS: + case OPUS: +diff -up chromium-59.0.3071.86/media/BUILD.gn.mp3 chromium-59.0.3071.86/media/BUILD.gn +--- chromium-59.0.3071.86/media/BUILD.gn.mp3 2017-06-15 12:48:07.277772389 -0400 ++++ chromium-59.0.3071.86/media/BUILD.gn 2017-06-15 12:50:34.342911710 -0400 +@@ -229,6 +229,14 @@ component("media") { + "formats/webm/webm_video_client.h", + "formats/webm/webm_webvtt_parser.cc", + "formats/webm/webm_webvtt_parser.h", ++ "formats/mpeg/adts_constants.cc", ++ "formats/mpeg/adts_constants.h", ++ "formats/mpeg/adts_stream_parser.cc", ++ "formats/mpeg/adts_stream_parser.h", ++ "formats/mpeg/mpeg1_audio_stream_parser.cc", ++ "formats/mpeg/mpeg1_audio_stream_parser.h", ++ "formats/mpeg/mpeg_audio_stream_parser_base.cc", ++ "formats/mpeg/mpeg_audio_stream_parser_base.h", + "muxers/webm_muxer.cc", + "muxers/webm_muxer.h", + "renderers/audio_renderer_impl.cc", +@@ -442,14 +450,6 @@ component("media") { + "formats/mp4/sample_to_group_iterator.h", + "formats/mp4/track_run_iterator.cc", + "formats/mp4/track_run_iterator.h", +- "formats/mpeg/adts_constants.cc", +- "formats/mpeg/adts_constants.h", +- "formats/mpeg/adts_stream_parser.cc", +- "formats/mpeg/adts_stream_parser.h", +- "formats/mpeg/mpeg1_audio_stream_parser.cc", +- "formats/mpeg/mpeg1_audio_stream_parser.h", +- "formats/mpeg/mpeg_audio_stream_parser_base.cc", +- "formats/mpeg/mpeg_audio_stream_parser_base.h", + ] + if (enable_mse_mpeg2ts_stream_parser) { + sources += [ +diff -up chromium-59.0.3071.86/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h.mp3 chromium-59.0.3071.86/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h +--- chromium-59.0.3071.86/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h.mp3 2017-06-16 14:34:19.233333696 -0400 ++++ chromium-59.0.3071.86/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h 2017-06-16 14:35:36.235836034 -0400 +@@ -1,7 +1,7 @@ + /* Automatically generated by configure - do not modify! */ + #ifndef FFMPEG_CONFIG_H + #define FFMPEG_CONFIG_H +-#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/usr/local/google/home/tguilbert/Code/chromium/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-cross-compile --cross-prefix=/usr/bin/aarch64-linux-gnu- --target-os=linux --arch=aarch64 --enable-armv8 --extra-cflags='-march=armv8-a' --enable-pic" ++#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/usr/local/google/home/tguilbert/Code/chromium/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-cross-compile --cross-prefix=/usr/bin/aarch64-linux-gnu- --target-os=linux --arch=aarch64 --enable-armv8 --extra-cflags='-march=armv8-a' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" + #define FFMPEG_LICENSE "LGPL version 2.1 or later" + #define CONFIG_THIS_YEAR 2017 + #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" +@@ -550,7 +550,7 @@ + #define CONFIG_FFPROBE 0 + #define CONFIG_FFSERVER 0 + #define CONFIG_FFMPEG 0 +-#define CONFIG_DCT 0 ++#define CONFIG_DCT 1 + #define CONFIG_DWT 0 + #define CONFIG_ERROR_RESILIENCE 0 + #define CONFIG_FAAN 1 +@@ -617,8 +617,8 @@ + #define CONFIG_LZF 0 + #define CONFIG_ME_CMP 0 + #define CONFIG_MPEG_ER 0 +-#define CONFIG_MPEGAUDIO 0 +-#define CONFIG_MPEGAUDIODSP 0 ++#define CONFIG_MPEGAUDIO 1 ++#define CONFIG_MPEGAUDIODSP 1 + #define CONFIG_MPEGVIDEO 0 + #define CONFIG_MPEGVIDEOENC 0 + #define CONFIG_MSS34DSP 0 +@@ -957,7 +957,7 @@ + #define CONFIG_MP1FLOAT_DECODER 0 + #define CONFIG_MP2_DECODER 0 + #define CONFIG_MP2FLOAT_DECODER 0 +-#define CONFIG_MP3_DECODER 0 ++#define CONFIG_MP3_DECODER 1 + #define CONFIG_MP3FLOAT_DECODER 0 + #define CONFIG_MP3ADU_DECODER 0 + #define CONFIG_MP3ADUFLOAT_DECODER 0 +@@ -1263,7 +1263,7 @@ + #define CONFIG_MM_DEMUXER 0 + #define CONFIG_MMF_DEMUXER 0 + #define CONFIG_MOV_DEMUXER 0 +-#define CONFIG_MP3_DEMUXER 0 ++#define CONFIG_MP3_DEMUXER 1 + #define CONFIG_MPC_DEMUXER 0 + #define CONFIG_MPC8_DEMUXER 0 + #define CONFIG_MPEGPS_DEMUXER 0 +@@ -2196,7 +2196,7 @@ + #define CONFIG_MJPEG_PARSER 0 + #define CONFIG_MLP_PARSER 0 + #define CONFIG_MPEG4VIDEO_PARSER 0 +-#define CONFIG_MPEGAUDIO_PARSER 0 ++#define CONFIG_MPEGAUDIO_PARSER 1 + #define CONFIG_MPEGVIDEO_PARSER 0 + #define CONFIG_OPUS_PARSER 1 + #define CONFIG_PNG_PARSER 0 +diff -up chromium-59.0.3071.86/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h.mp3 chromium-59.0.3071.86/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h +--- chromium-59.0.3071.86/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h.mp3 2017-06-16 14:33:03.565804834 -0400 ++++ chromium-59.0.3071.86/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h 2017-06-16 14:34:00.538697021 -0400 +@@ -1,7 +1,7 @@ + /* Automatically generated by configure - do not modify! */ + #ifndef FFMPEG_CONFIG_H + #define FFMPEG_CONFIG_H +-#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/tguilbert/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --disable-neon --extra-cflags='-mfpu=vfpv3-d16' --enable-pic" ++#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/tguilbert/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --disable-neon --extra-cflags='-mfpu=vfpv3-d16' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" + #define FFMPEG_LICENSE "LGPL version 2.1 or later" + #define CONFIG_THIS_YEAR 2017 + #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" +@@ -550,7 +550,7 @@ + #define CONFIG_FFPROBE 0 + #define CONFIG_FFSERVER 0 + #define CONFIG_FFMPEG 0 +-#define CONFIG_DCT 0 ++#define CONFIG_DCT 1 + #define CONFIG_DWT 0 + #define CONFIG_ERROR_RESILIENCE 0 + #define CONFIG_FAAN 1 +@@ -617,8 +617,8 @@ + #define CONFIG_LZF 0 + #define CONFIG_ME_CMP 0 + #define CONFIG_MPEG_ER 0 +-#define CONFIG_MPEGAUDIO 0 +-#define CONFIG_MPEGAUDIODSP 0 ++#define CONFIG_MPEGAUDIO 1 ++#define CONFIG_MPEGAUDIODSP 1 + #define CONFIG_MPEGVIDEO 0 + #define CONFIG_MPEGVIDEOENC 0 + #define CONFIG_MSS34DSP 0 +@@ -957,7 +957,7 @@ + #define CONFIG_MP1FLOAT_DECODER 0 + #define CONFIG_MP2_DECODER 0 + #define CONFIG_MP2FLOAT_DECODER 0 +-#define CONFIG_MP3_DECODER 0 ++#define CONFIG_MP3_DECODER 1 + #define CONFIG_MP3FLOAT_DECODER 0 + #define CONFIG_MP3ADU_DECODER 0 + #define CONFIG_MP3ADUFLOAT_DECODER 0 +@@ -1263,7 +1263,7 @@ + #define CONFIG_MM_DEMUXER 0 + #define CONFIG_MMF_DEMUXER 0 + #define CONFIG_MOV_DEMUXER 0 +-#define CONFIG_MP3_DEMUXER 0 ++#define CONFIG_MP3_DEMUXER 1 + #define CONFIG_MPC_DEMUXER 0 + #define CONFIG_MPC8_DEMUXER 0 + #define CONFIG_MPEGPS_DEMUXER 0 +@@ -2196,7 +2196,7 @@ + #define CONFIG_MJPEG_PARSER 0 + #define CONFIG_MLP_PARSER 0 + #define CONFIG_MPEG4VIDEO_PARSER 0 +-#define CONFIG_MPEGAUDIO_PARSER 0 ++#define CONFIG_MPEGAUDIO_PARSER 1 + #define CONFIG_MPEGVIDEO_PARSER 0 + #define CONFIG_OPUS_PARSER 1 + #define CONFIG_PNG_PARSER 0 +diff -up chromium-59.0.3071.86/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h.mp3 chromium-59.0.3071.86/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h +--- chromium-59.0.3071.86/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h.mp3 2017-06-16 14:35:50.558558013 -0400 ++++ chromium-59.0.3071.86/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h 2017-06-16 14:36:34.140710462 -0400 +@@ -1,7 +1,7 @@ + /* Automatically generated by configure - do not modify! */ + #ifndef FFMPEG_CONFIG_H + #define FFMPEG_CONFIG_H +-#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/tguilbert/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --enable-neon --extra-cflags='-mfpu=neon' --enable-pic" ++#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/tguilbert/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --enable-neon --extra-cflags='-mfpu=neon' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" + #define FFMPEG_LICENSE "LGPL version 2.1 or later" + #define CONFIG_THIS_YEAR 2017 + #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" +@@ -550,7 +550,7 @@ + #define CONFIG_FFPROBE 0 + #define CONFIG_FFSERVER 0 + #define CONFIG_FFMPEG 0 +-#define CONFIG_DCT 0 ++#define CONFIG_DCT 1 + #define CONFIG_DWT 0 + #define CONFIG_ERROR_RESILIENCE 0 + #define CONFIG_FAAN 1 +@@ -617,8 +617,8 @@ + #define CONFIG_LZF 0 + #define CONFIG_ME_CMP 0 + #define CONFIG_MPEG_ER 0 +-#define CONFIG_MPEGAUDIO 0 +-#define CONFIG_MPEGAUDIODSP 0 ++#define CONFIG_MPEGAUDIO 1 ++#define CONFIG_MPEGAUDIODSP 1 + #define CONFIG_MPEGVIDEO 0 + #define CONFIG_MPEGVIDEOENC 0 + #define CONFIG_MSS34DSP 0 +@@ -957,7 +957,7 @@ + #define CONFIG_MP1FLOAT_DECODER 0 + #define CONFIG_MP2_DECODER 0 + #define CONFIG_MP2FLOAT_DECODER 0 +-#define CONFIG_MP3_DECODER 0 ++#define CONFIG_MP3_DECODER 1 + #define CONFIG_MP3FLOAT_DECODER 0 + #define CONFIG_MP3ADU_DECODER 0 + #define CONFIG_MP3ADUFLOAT_DECODER 0 +@@ -1263,7 +1263,7 @@ + #define CONFIG_MM_DEMUXER 0 + #define CONFIG_MMF_DEMUXER 0 + #define CONFIG_MOV_DEMUXER 0 +-#define CONFIG_MP3_DEMUXER 0 ++#define CONFIG_MP3_DEMUXER 1 + #define CONFIG_MPC_DEMUXER 0 + #define CONFIG_MPC8_DEMUXER 0 + #define CONFIG_MPEGPS_DEMUXER 0 +@@ -2196,7 +2196,7 @@ + #define CONFIG_MJPEG_PARSER 0 + #define CONFIG_MLP_PARSER 0 + #define CONFIG_MPEG4VIDEO_PARSER 0 +-#define CONFIG_MPEGAUDIO_PARSER 0 ++#define CONFIG_MPEGAUDIO_PARSER 1 + #define CONFIG_MPEGVIDEO_PARSER 0 + #define CONFIG_OPUS_PARSER 1 + #define CONFIG_PNG_PARSER 0 +diff -up chromium-59.0.3071.86/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h.mp3 chromium-59.0.3071.86/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h +--- chromium-59.0.3071.86/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h.mp3 2017-06-16 14:31:10.694999531 -0400 ++++ chromium-59.0.3071.86/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h 2017-06-16 14:32:48.921089988 -0400 +@@ -1,7 +1,7 @@ + /* Automatically generated by configure - do not modify! */ + #ifndef FFMPEG_CONFIG_H + #define FFMPEG_CONFIG_H +-#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/usr/local/google/home/tguilbert/Code/chromium/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=i686 --extra-cflags='\"-m32\"' --extra-ldflags='\"-m32\"' --enable-yasm --enable-pic" ++#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/usr/local/google/home/tguilbert/Code/chromium/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=i686 --extra-cflags='\"-m32\"' --extra-ldflags='\"-m32\"' --enable-yasm --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" + #define FFMPEG_LICENSE "LGPL version 2.1 or later" + #define CONFIG_THIS_YEAR 2017 + #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" +@@ -550,7 +550,7 @@ + #define CONFIG_FFPROBE 0 + #define CONFIG_FFSERVER 0 + #define CONFIG_FFMPEG 0 +-#define CONFIG_DCT 0 ++#define CONFIG_DCT 1 + #define CONFIG_DWT 0 + #define CONFIG_ERROR_RESILIENCE 0 + #define CONFIG_FAAN 1 +@@ -617,8 +617,8 @@ + #define CONFIG_LZF 0 + #define CONFIG_ME_CMP 0 + #define CONFIG_MPEG_ER 0 +-#define CONFIG_MPEGAUDIO 0 +-#define CONFIG_MPEGAUDIODSP 0 ++#define CONFIG_MPEGAUDIO 1 ++#define CONFIG_MPEGAUDIODSP 1 + #define CONFIG_MPEGVIDEO 0 + #define CONFIG_MPEGVIDEOENC 0 + #define CONFIG_MSS34DSP 0 +@@ -957,7 +957,7 @@ + #define CONFIG_MP1FLOAT_DECODER 0 + #define CONFIG_MP2_DECODER 0 + #define CONFIG_MP2FLOAT_DECODER 0 +-#define CONFIG_MP3_DECODER 0 ++#define CONFIG_MP3_DECODER 1 + #define CONFIG_MP3FLOAT_DECODER 0 + #define CONFIG_MP3ADU_DECODER 0 + #define CONFIG_MP3ADUFLOAT_DECODER 0 +@@ -1263,7 +1263,7 @@ + #define CONFIG_MM_DEMUXER 0 + #define CONFIG_MMF_DEMUXER 0 + #define CONFIG_MOV_DEMUXER 0 +-#define CONFIG_MP3_DEMUXER 0 ++#define CONFIG_MP3_DEMUXER 1 + #define CONFIG_MPC_DEMUXER 0 + #define CONFIG_MPC8_DEMUXER 0 + #define CONFIG_MPEGPS_DEMUXER 0 +@@ -2196,7 +2196,7 @@ + #define CONFIG_MJPEG_PARSER 0 + #define CONFIG_MLP_PARSER 0 + #define CONFIG_MPEG4VIDEO_PARSER 0 +-#define CONFIG_MPEGAUDIO_PARSER 0 ++#define CONFIG_MPEGAUDIO_PARSER 1 + #define CONFIG_MPEGVIDEO_PARSER 0 + #define CONFIG_OPUS_PARSER 1 + #define CONFIG_PNG_PARSER 0 +diff -up chromium-59.0.3071.86/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h.mp3 chromium-59.0.3071.86/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h +--- chromium-59.0.3071.86/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h.mp3 2017-06-16 14:27:17.782528334 -0400 ++++ chromium-59.0.3071.86/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h 2017-06-16 14:29:24.962054946 -0400 +@@ -1,7 +1,7 @@ + /* Automatically generated by configure - do not modify! */ + #ifndef FFMPEG_CONFIG_H + #define FFMPEG_CONFIG_H +-#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/usr/local/google/home/tguilbert/Code/chromium/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-pic --enable-lto" ++#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/usr/local/google/home/tguilbert/Code/chromium/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-pic --enable-lto --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" + #define FFMPEG_LICENSE "LGPL version 2.1 or later" + #define CONFIG_THIS_YEAR 2017 + #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" +@@ -550,7 +550,7 @@ + #define CONFIG_FFPROBE 0 + #define CONFIG_FFSERVER 0 + #define CONFIG_FFMPEG 0 +-#define CONFIG_DCT 0 ++#define CONFIG_DCT 1 + #define CONFIG_DWT 0 + #define CONFIG_ERROR_RESILIENCE 0 + #define CONFIG_FAAN 1 +@@ -617,8 +617,8 @@ + #define CONFIG_LZF 0 + #define CONFIG_ME_CMP 0 + #define CONFIG_MPEG_ER 0 +-#define CONFIG_MPEGAUDIO 0 +-#define CONFIG_MPEGAUDIODSP 0 ++#define CONFIG_MPEGAUDIO 1 ++#define CONFIG_MPEGAUDIODSP 1 + #define CONFIG_MPEGVIDEO 0 + #define CONFIG_MPEGVIDEOENC 0 + #define CONFIG_MSS34DSP 0 +@@ -957,7 +957,7 @@ + #define CONFIG_MP1FLOAT_DECODER 0 + #define CONFIG_MP2_DECODER 0 + #define CONFIG_MP2FLOAT_DECODER 0 +-#define CONFIG_MP3_DECODER 0 ++#define CONFIG_MP3_DECODER 1 + #define CONFIG_MP3FLOAT_DECODER 0 + #define CONFIG_MP3ADU_DECODER 0 + #define CONFIG_MP3ADUFLOAT_DECODER 0 +@@ -1263,7 +1263,7 @@ + #define CONFIG_MM_DEMUXER 0 + #define CONFIG_MMF_DEMUXER 0 + #define CONFIG_MOV_DEMUXER 0 +-#define CONFIG_MP3_DEMUXER 0 ++#define CONFIG_MP3_DEMUXER 1 + #define CONFIG_MPC_DEMUXER 0 + #define CONFIG_MPC8_DEMUXER 0 + #define CONFIG_MPEGPS_DEMUXER 0 +@@ -2196,7 +2196,7 @@ + #define CONFIG_MJPEG_PARSER 0 + #define CONFIG_MLP_PARSER 0 + #define CONFIG_MPEG4VIDEO_PARSER 0 +-#define CONFIG_MPEGAUDIO_PARSER 0 ++#define CONFIG_MPEGAUDIO_PARSER 1 + #define CONFIG_MPEGVIDEO_PARSER 0 + #define CONFIG_OPUS_PARSER 1 + #define CONFIG_PNG_PARSER 0 +diff -up chromium-59.0.3071.86/third_party/ffmpeg/ffmpeg_generated.gni.mp3 chromium-59.0.3071.86/third_party/ffmpeg/ffmpeg_generated.gni +--- chromium-59.0.3071.86/third_party/ffmpeg/ffmpeg_generated.gni.mp3 2017-06-08 11:40:39.000000000 -0400 ++++ chromium-59.0.3071.86/third_party/ffmpeg/ffmpeg_generated.gni 2017-06-15 12:37:05.163650012 -0400 +@@ -177,19 +177,12 @@ if ((is_linux && current_cpu == "arm" && + ] + } + +-if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mips64el" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "arm" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "mipsel" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "ChromeOS") || (is_win && ffmpeg_branding == "Chrome")) { ++if ((current_cpu == "x64") || (is_android && current_cpu == "arm" && arm_use_neon) || (is_android && current_cpu == "arm64") || (is_android && current_cpu == "mips64el") || (is_android && current_cpu == "mipsel") || (is_android && current_cpu == "x86") || (is_linux && current_cpu == "arm" && arm_use_neon) || (is_linux && current_cpu == "arm" && arm_use_neon) || (is_linux && current_cpu == "arm") || (is_linux && current_cpu == "arm64") || (is_linux && current_cpu == "mipsel") || (is_linux && current_cpu == "x64") || (is_linux && current_cpu == "x86") || (is_win)) ++{ + ffmpeg_c_sources += [ +- "libavcodec/aac_ac3_parser.c", +- "libavcodec/aac_parser.c", +- "libavcodec/aacadtsdec.c", +- "libavcodec/aacps_float.c", +- "libavcodec/aacpsdsp_float.c", +- "libavcodec/aacsbr.c", +- "libavcodec/aactab.c", +- "libavcodec/ac3tab.c", +- "libavcodec/autorename_libavcodec_aacdec.c", + "libavcodec/autorename_libavcodec_mpegaudiodsp.c", + "libavcodec/autorename_libavcodec_sbrdsp.c", ++ "libavcodec/ac3tab.c", + "libavcodec/cbrt_data.c", + "libavcodec/dct.c", + "libavcodec/dct32_fixed.c", +@@ -205,7 +198,6 @@ if ((current_cpu == "x64" && ffmpeg_bran + "libavcodec/mpegaudiodsp_float.c", + "libavcodec/sinewin.c", + "libavcodec/sinewin_fixed.c", +- "libavformat/aacdec.c", + "libavformat/apetag.c", + "libavformat/img2.c", + "libavformat/mov.c", +@@ -214,6 +206,21 @@ if ((current_cpu == "x64" && ffmpeg_bran + ] + } + ++if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mips64el" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "arm" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "mipsel" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "ChromeOS") || (is_win && ffmpeg_branding == "Chrome")) ++{ ++ ffmpeg_c_sources += [ ++ "libavcodec/aac_ac3_parser.c", ++ "libavcodec/aac_parser.c", ++ "libavcodec/aacadtsdec.c", ++ "libavcodec/aacps_float.c", ++ "libavcodec/aacpsdsp_float.c", ++ "libavcodec/aacsbr.c", ++ "libavcodec/aactab.c", ++ "libavcodec/autorename_libavcodec_aacdec.c", ++ "libavformat/aacdec.c", ++ ] ++} ++ + if ((is_android && current_cpu == "x64") || (is_android && current_cpu == "x86") || (is_linux && current_cpu == "x64") || (is_linux && current_cpu == "x86") || (is_mac) || (is_win)) { + ffmpeg_c_sources += [ + "libavcodec/x86/autorename_libavcodec_x86_vorbisdsp_init.c", +@@ -315,21 +322,31 @@ if ((is_linux && current_cpu == "x64") | + if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "ChromeOS") || (is_win && ffmpeg_branding == "Chrome")) { + ffmpeg_c_sources += [ + "libavcodec/x86/aacpsdsp_init.c", ++ ] ++} ++ ++if ((current_cpu == "x64") || (is_android && current_cpu == "x86") || (is_linux && current_cpu == "x64") || (is_linux && current_cpu == "x86") || (is_win)) { ++ ffmpeg_c_sources += [ + "libavcodec/x86/dct_init.c", + "libavcodec/x86/mpegaudiodsp.c", + "libavcodec/x86/sbrdsp_init.c", + ] + } + +-if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "ChromeOS") || (is_win && ffmpeg_branding == "Chrome")) { ++if ((current_cpu == "x64") || (is_android && current_cpu == "x86") || (is_linux && current_cpu == "x64") || (is_linux && current_cpu == "x86") || (is_win)) { + ffmpeg_yasm_sources += [ +- "libavcodec/x86/aacpsdsp.asm", + "libavcodec/x86/dct32.asm", + "libavcodec/x86/imdct36.asm", + "libavcodec/x86/sbrdsp.asm", + ] + } + ++if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "ChromeOS") || (is_win && ffmpeg_branding == "Chrome")) { ++ ffmpeg_yasm_sources += [ ++ "libavcodec/x86/aacpsdsp.asm", ++ ] ++} ++ + if ((is_linux && current_cpu == "arm" && arm_use_neon) || (is_linux && current_cpu == "arm")) { + ffmpeg_c_sources += [ + "libavcodec/arm/h264pred_init_arm.c", +diff -up chromium-59.0.3071.86/third_party/ffmpeg/libavcodec/sbrdsp.c.mp3 chromium-59.0.3071.86/third_party/ffmpeg/libavcodec/sbrdsp.c +--- chromium-59.0.3071.86/third_party/ffmpeg/libavcodec/sbrdsp.c.mp3 2017-06-08 11:40:41.000000000 -0400 ++++ chromium-59.0.3071.86/third_party/ffmpeg/libavcodec/sbrdsp.c 2017-06-15 12:37:05.163650012 -0400 +@@ -23,6 +23,7 @@ + #define USE_FIXED 0 + + #include "aac.h" ++#include "aacsbrdata.h" + #include "config.h" + #include "libavutil/attributes.h" + #include "libavutil/intfloat.h" +diff -up chromium-59.0.3071.86/third_party/webrtc/examples/objc/AppRTCMobile/ios/resources/mozart.mp3 chromium-59.0.3071.86/third_party/webrtc/examples/objc/AppRTCMobile/ios/resources/mozart +diff -up chromium-59.0.3071.86/tools/android/audio_focus_grabber/java/res/raw/ping.mp3 chromium-59.0.3071.86/tools/android/audio_focus_grabber/java/res/raw/ping diff --git a/chromium.spec b/chromium.spec index 9d618e9..27f27e0 100644 --- a/chromium.spec +++ b/chromium.spec @@ -110,7 +110,7 @@ BuildRequires: libicu-devel >= 5.4 Name: chromium%{chromium_channel} Version: %{majorversion}.0.3071.86 -Release: 3%{?dist} +Release: 4%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -165,7 +165,7 @@ Patch31: chromium-56.0.2924.87-fpermissive.patch # Thanks to Ben Noordhuis Patch33: chromium-59.0.3071.86-gcc7.patch # Enable mp3 support -Patch34: chromium-58.0.3029.81-enable-mp3.patch +Patch34: chromium-59.0.3071.86-enable-mp3.patch # Revert https://chromium.googlesource.com/chromium/src/+/b794998819088f76b4cf44c8db6940240c563cf4%5E%21/#F0 # https://bugs.chromium.org/p/chromium/issues/detail?id=712737 # https://bugzilla.redhat.com/show_bug.cgi?id=1446851 @@ -1627,6 +1627,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Fri Jun 16 2017 Tom Callaway 59.0.3071.86-4 +- actually fix mp3 playback support + * Tue Jun 13 2017 Tom Callaway 59.0.3071.86-3 - fix filtering From c68232bc2de6159fd88ba3947dd46795dd9c6e65 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 16 Jun 2017 16:43:48 -0400 Subject: [PATCH 0090/1449] actually fix mp3, update to .104 --- .gitignore | 1 + chromium.spec | 7 +++++-- clean_ffmpeg.sh | 1 - get_free_ffmpeg_source_files.py | 0 sources | 2 +- 5 files changed, 7 insertions(+), 4 deletions(-) mode change 100644 => 100755 clean_ffmpeg.sh mode change 100644 => 100755 get_free_ffmpeg_source_files.py diff --git a/.gitignore b/.gitignore index 5fdffca..53aaae1 100644 --- a/.gitignore +++ b/.gitignore @@ -21,3 +21,4 @@ /chromium-58.0.3029.81-clean.tar.xz /chromium-58.0.3029.110-clean.tar.xz /chromium-59.0.3071.86-clean.tar.xz +/chromium-59.0.3071.104-clean.tar.xz diff --git a/chromium.spec b/chromium.spec index 27f27e0..2be406c 100644 --- a/chromium.spec +++ b/chromium.spec @@ -109,8 +109,8 @@ BuildRequires: libicu-devel >= 5.4 %global majorversion 59 Name: chromium%{chromium_channel} -Version: %{majorversion}.0.3071.86 -Release: 4%{?dist} +Version: %{majorversion}.0.3071.104 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1627,6 +1627,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Fri Jun 16 2017 Tom Callaway 59.0.3071.104-1 +- update to .104 + * Fri Jun 16 2017 Tom Callaway 59.0.3071.86-4 - actually fix mp3 playback support diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh old mode 100644 new mode 100755 index e703fa3..755ce8a --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -235,7 +235,6 @@ mp3_files=" libavcodec/aac_ac3_parser.c \ libavcodec/dct32_fixed.c \ libavcodec/dct32_float.c \ libavcodec/dct32_template.c \ - libavcodec/imdct15.c \ libavcodec/kbdwin.c \ libavcodec/mpegaudio.c \ libavcodec/mpegaudio_parser.c \ diff --git a/get_free_ffmpeg_source_files.py b/get_free_ffmpeg_source_files.py old mode 100644 new mode 100755 diff --git a/sources b/sources index 16f137c..c84b1a0 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 SHA512 (policy_templates.zip) = a997bd5d410cf8f0f104fb5b69b60699c9e60eb3f99b42e0aff167843f3a45923a9a99c881cac9cd4472a60ca9c7d1ba897e15d485fbfd66c996419e7fadd3f8 -SHA512 (chromium-59.0.3071.86-clean.tar.xz) = d9e1e1f4757b48ffc21708be9cf313677d52a46ebed222edd3851e533500b426b7fd6330463a030b1f273882ebd2f300f557f628c3f4da0a010f18b3dfc0f8f4 +oSHA512 (chromium-59.0.3071.104-clean.tar.xz) = 956158dd4a975678ba097a983bb456a186b881962ff27abd1149b78d0c0ceea2903846424f6e854ea524498512afc83871d38148845ba0114a8b415b06358b29 From 6e0d3b5f406b29c627d3d1769d401a8850154a19 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 22 Jun 2017 13:20:23 -0400 Subject: [PATCH 0091/1449] 59.0.3071.109 --- .gitignore | 1 + chromium.spec | 13 ++++++++++--- sources | 2 +- 3 files changed, 12 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 53aaae1..3359d85 100644 --- a/.gitignore +++ b/.gitignore @@ -22,3 +22,4 @@ /chromium-58.0.3029.110-clean.tar.xz /chromium-59.0.3071.86-clean.tar.xz /chromium-59.0.3071.104-clean.tar.xz +/chromium-59.0.3071.109-clean.tar.xz diff --git a/chromium.spec b/chromium.spec index 2be406c..b807820 100644 --- a/chromium.spec +++ b/chromium.spec @@ -109,7 +109,7 @@ BuildRequires: libicu-devel >= 5.4 %global majorversion 59 Name: chromium%{chromium_channel} -Version: %{majorversion}.0.3071.104 +Version: %{majorversion}.0.3071.109 Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home @@ -1093,8 +1093,11 @@ cp -a remoting/* %{buildroot}%{_sysconfdir}/chromium/native-messaging-hosts/ for i in %{buildroot}%{_sysconfdir}/chromium/native-messaging-hosts/*.json; do sed -i 's|/opt/google/chrome-remote-desktop|%{crd_path}|g' $i done -pushd %{buildroot}%{_sysconfdir}/opt/chrome/ -ln -s ../../chromium/native-messaging-hosts native-messaging-hosts +mkdir -p %{buildroot}%{_sysconfdir}/opt/chrome/native-messaging-hosts +pushd %{buildroot}%{_sysconfdir}/opt/chrome/native-messaging-hosts +for i in ../../chromium/native-messaging-hosts/*; do + ln -s $i . +done popd mkdir -p %{buildroot}/var/lib/chrome-remote-desktop @@ -1627,6 +1630,10 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Thu Jun 22 2017 Tom Callaway 59.0.3071.109-1 +- update to .109 +- fix native-messaging-hosts dir to be a true dir instead of a symlink + * Fri Jun 16 2017 Tom Callaway 59.0.3071.104-1 - update to .104 diff --git a/sources b/sources index c84b1a0..be47170 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ +SHA512 (chromium-59.0.3071.109-clean.tar.xz) = 7158a5b1c228c077275cf1bde79c34d9eabf607c04424df02056700703f2fd2907fc011ad658d759d7c6dd78c303f9c2983eb811cc9f9b6b424b0af615f6eaa7 SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 SHA512 (policy_templates.zip) = a997bd5d410cf8f0f104fb5b69b60699c9e60eb3f99b42e0aff167843f3a45923a9a99c881cac9cd4472a60ca9c7d1ba897e15d485fbfd66c996419e7fadd3f8 -oSHA512 (chromium-59.0.3071.104-clean.tar.xz) = 956158dd4a975678ba097a983bb456a186b881962ff27abd1149b78d0c0ceea2903846424f6e854ea524498512afc83871d38148845ba0114a8b415b06358b29 From d0bdacb9f6ee2c6966aa590903609b10222452ab Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 22 Jun 2017 13:21:58 -0400 Subject: [PATCH 0092/1449] fix path --- chromium.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index b807820..5abdbe7 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1095,7 +1095,7 @@ for i in %{buildroot}%{_sysconfdir}/chromium/native-messaging-hosts/*.json; do done mkdir -p %{buildroot}%{_sysconfdir}/opt/chrome/native-messaging-hosts pushd %{buildroot}%{_sysconfdir}/opt/chrome/native-messaging-hosts -for i in ../../chromium/native-messaging-hosts/*; do +for i in ../../../chromium/native-messaging-hosts/*; do ln -s $i . done popd From 4b6e8a759010260ce58a29c11e8b95aadedc28ac Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 22 Jun 2017 14:41:57 -0400 Subject: [PATCH 0093/1449] fix duplication between chrome-remote-desktop and chromium --- chromium.spec | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/chromium.spec b/chromium.spec index 5abdbe7..7ad92c2 100644 --- a/chromium.spec +++ b/chromium.spec @@ -110,7 +110,7 @@ BuildRequires: libicu-devel >= 5.4 Name: chromium%{chromium_channel} Version: %{majorversion}.0.3071.109 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1502,6 +1502,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %doc AUTHORS %license LICENSE %config %{_sysconfdir}/%{name}/ +%dir %{_sysconfdir}/%{name}/native-messaging-hosts +# This is chrome-remote-desktop stuff +%exclude %{_sysconfdir}/%{name}/native-messaging-hosts/* %{_bindir}/%{chromium_browser_channel} %dir %{chromium_path} %{chromium_path}/*.bin @@ -1611,7 +1614,7 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{crd_path}/native-messaging-host %{crd_path}/remote-assistance-host %{_sysconfdir}/pam.d/chrome-remote-desktop -%{_sysconfdir}/chromium/native-messaging-hosts/ +%{_sysconfdir}/chromium/native-messaging-hosts/* %{_sysconfdir}/opt/chrome/ %{crd_path}/remoting_locales/ %{crd_path}/start-host @@ -1630,6 +1633,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Thu Jun 22 2017 Tom Callaway 59.0.3071.109-2 +- fix duplication between chrome-remote-desktop and chromium + * Thu Jun 22 2017 Tom Callaway 59.0.3071.109-1 - update to .109 - fix native-messaging-hosts dir to be a true dir instead of a symlink From 5efd1e814326d6579eed62a420ee08b7404e8b5d Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 23 Jun 2017 13:31:03 -0400 Subject: [PATCH 0094/1449] use pretrans scriptlet to remove symlink on /etc/opt/chrome/native-messaging-hosts (it is now a directory) --- chromium.spec | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 7ad92c2..895b03d 100644 --- a/chromium.spec +++ b/chromium.spec @@ -110,7 +110,7 @@ BuildRequires: libicu-devel >= 5.4 Name: chromium%{chromium_channel} Version: %{majorversion}.0.3071.109 -Release: 2%{?dist} +Release: 3%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1486,6 +1486,15 @@ update-desktop-database &> /dev/null || : %posttrans gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : +%pretrans -n chrome-remote-desktop -p +-- Define the path to the symlink being replaced below. +path = "/opt/etc/chrome/native-messaging-hosts" +st = posix.stat(path) +if st and st.type == "link" then + os.remove(path) +end + + %pre -n chrome-remote-desktop getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-desktop @@ -1633,6 +1642,10 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Fri Jun 23 2017 Tom Callaway 59.0.3071.109-3 +- use pretrans scriptlet to remove symlink on /etc/opt/chrome/native-messaging-hosts + (it is now a directory) + * Thu Jun 22 2017 Tom Callaway 59.0.3071.109-2 - fix duplication between chrome-remote-desktop and chromium From f88e19764b6d99aae269f713954d1d405b468806 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 23 Jun 2017 16:25:05 -0400 Subject: [PATCH 0095/1449] moar chrome-remote-desktop fixes --- chromium.spec | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/chromium.spec b/chromium.spec index 895b03d..b7fec5d 100644 --- a/chromium.spec +++ b/chromium.spec @@ -110,7 +110,7 @@ BuildRequires: libicu-devel >= 5.4 Name: chromium%{chromium_channel} Version: %{majorversion}.0.3071.109 -Release: 3%{?dist} +Release: 4%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1096,7 +1096,8 @@ done mkdir -p %{buildroot}%{_sysconfdir}/opt/chrome/native-messaging-hosts pushd %{buildroot}%{_sysconfdir}/opt/chrome/native-messaging-hosts for i in ../../../chromium/native-messaging-hosts/*; do - ln -s $i . +# rpm gets unhappy when we symlink here + cp -a $i . done popd @@ -1642,6 +1643,10 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Fri Jun 23 2017 Tom Callaway 59.0.3071.109-4 +- copy files into /etc/opt/chrome/native-messaging-hosts instead of making symlinks + this results in duplicate copies of the same files, but eh. making rpm happy. + * Fri Jun 23 2017 Tom Callaway 59.0.3071.109-3 - use pretrans scriptlet to remove symlink on /etc/opt/chrome/native-messaging-hosts (it is now a directory) From c23d66f1de0b635c4bf773c65e1e7c8443364366 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 26 Jun 2017 09:51:59 -0400 Subject: [PATCH 0096/1449] fix path in pretrans scriptlet --- chromium.spec | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/chromium.spec b/chromium.spec index b7fec5d..40de19b 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1488,8 +1488,7 @@ update-desktop-database &> /dev/null || : gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : %pretrans -n chrome-remote-desktop -p --- Define the path to the symlink being replaced below. -path = "/opt/etc/chrome/native-messaging-hosts" +path = "/etc/opt/chrome/native-messaging-hosts" st = posix.stat(path) if st and st.type == "link" then os.remove(path) @@ -1643,6 +1642,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chromedriver %changelog +* Mon Jun 26 2017 Tom Callaway 59.0.3071.109-5 +- fix path in pretrans scriptlet + * Fri Jun 23 2017 Tom Callaway 59.0.3071.109-4 - copy files into /etc/opt/chrome/native-messaging-hosts instead of making symlinks this results in duplicate copies of the same files, but eh. making rpm happy. From aeacc875b0f33774084c1c729d1bd7a0a14d64e7 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 26 Jun 2017 09:55:26 -0400 Subject: [PATCH 0097/1449] fix path in pretrans scriptlet --- chromium.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 40de19b..7b93976 100644 --- a/chromium.spec +++ b/chromium.spec @@ -110,7 +110,7 @@ BuildRequires: libicu-devel >= 5.4 Name: chromium%{chromium_channel} Version: %{majorversion}.0.3071.109 -Release: 4%{?dist} +Release: 5%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) From 8c7674af70d2a037c9c5616f2de1effdf4cfb3c4 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 12 Jul 2017 14:52:03 -0400 Subject: [PATCH 0098/1449] apply Rathann freeworld changes, update to 59.0.3071.115 --- .gitignore | 1 + chromium.spec | 119 +++++++++++++++++++++++++++++++++++++++++++++----- sources | 1 + 3 files changed, 111 insertions(+), 10 deletions(-) diff --git a/.gitignore b/.gitignore index 3359d85..8c60af5 100644 --- a/.gitignore +++ b/.gitignore @@ -23,3 +23,4 @@ /chromium-59.0.3071.86-clean.tar.xz /chromium-59.0.3071.104-clean.tar.xz /chromium-59.0.3071.109-clean.tar.xz +/chromium-59.0.3071.115-clean.tar.xz diff --git a/chromium.spec b/chromium.spec index 7b93976..435cb51 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1,5 +1,10 @@ # NEVER EVER EVER turn this on in official builds %global freeworld 0 +%if %{freeworld} +%global lsuffix freeworld +%else +%global lsuffix fedora +%endif # Leave this alone, please. %global target out/Release @@ -109,8 +114,8 @@ BuildRequires: libicu-devel >= 5.4 %global majorversion 59 Name: chromium%{chromium_channel} -Version: %{majorversion}.0.3071.109 -Release: 5%{?dist} +Version: %{majorversion}.0.3071.115 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -472,6 +477,8 @@ Chromium is an open-source web browser, powered by WebKit (Blink). %package libs Summary: Shared libraries used by chromium (and chrome-remote-desktop) Requires: chromium-libs-media%{_isa} >= %{majorversion} +Requires(post): %{_sbindir}/update-alternatives +Requires(preun): %{_sbindir}/update-alternatives %description libs Shared libraries used by chromium (and chrome-remote-desktop). @@ -481,6 +488,8 @@ Shared libraries used by chromium (and chrome-remote-desktop). Summary: Chromium media libraries built with all possible codecs Provides: chromium-libs-media = %{version}-%{release} Provides: chromium-libs-media%{_isa} = %{version}-%{release} +Requires(post): %{_sbindir}/update-alternatives +Requires(preun): %{_sbindir}/update-alternatives %description libs-media-freeworld Chromium media libraries built with all possible codecs. Chromium is an @@ -491,6 +500,8 @@ can include. %package libs-media Summary: Shared libraries used by the chromium media subsystem Requires: chromium-libs%{_isa} = %{version} +Requires(post): %{_sbindir}/update-alternatives +Requires(preun): %{_sbindir}/update-alternatives %description libs-media Shared libraries used by the chromium media subsystem. @@ -1003,6 +1014,9 @@ export CHROMIUM_BROWSER_UNIT_TESTS= %global target out/Release +%if 0%{freeworld} +../depot_tools/ninja -C %{target} -vvv media $CHROMIUM_BROWSER_UNIT_TESTS +%else ../depot_tools/ninja -C %{target} -vvv chrome chrome_sandbox chromedriver widevinecdmadapter clearkeycdm policy_templates $CHROMIUM_BROWSER_UNIT_TESTS # remote client @@ -1017,6 +1031,8 @@ GOOGLE_CLIENT_ID_REMOTING_IDENTITY_API=%{chromoting_client_id} ../../depot_tools %endif popd +%endif + # Nuke nacl/pnacl bits at the end of the build rm -rf out/Release/gen/sdk rm -rf native_client/toolchain @@ -1024,6 +1040,15 @@ rm -rf third_party/llvm-build/* %install rm -rf %{buildroot} + +%if 0%{freeworld} +mkdir -p %{buildroot}%{chromium_path} + +pushd %{target} +cp -a libffmpeg.so* %{buildroot}%{chromium_path} +cp -a libmedia.so* %{buildroot}%{chromium_path} +popd +%else mkdir -p %{buildroot}%{_bindir} mkdir -p %{buildroot}%{chromium_path} cp -a %{SOURCE3} %{buildroot}%{chromium_path}/%{chromium_browser_channel}.sh @@ -1060,6 +1085,11 @@ cp -a natives_blob.bin %{buildroot}%{chromium_path} cp -a snapshot_blob.bin %{buildroot}%{chromium_path} %if 0%{?shared} cp -a lib*.so* %{buildroot}%{chromium_path} +cp -p %{buildroot}%{chromium_path}/libwidevinecdm.so{,.fedora} +cp -p %{buildroot}%{chromium_path}/libffmpeg.so{,.%{lsuffix}} +cp -p %{buildroot}%{chromium_path}/libffmpeg.so.TOC{,.%{lsuffix}} +cp -p %{buildroot}%{chromium_path}/libmedia.so{,.%{lsuffix}} +cp -p %{buildroot}%{chromium_path}/libmedia.so.TOC{,.%{lsuffix}} %endif # chromedriver @@ -1160,6 +1190,9 @@ cp -a %{SOURCE9} %{buildroot}%{_datadir}/gnome-control-center/default-apps/ mkdir -p %{buildroot}%{chromium_path}/PepperFlash +# freeworld conditional +%endif + %check %if 0%{tests} %if 0%{?tests_force_display} @@ -1494,6 +1527,52 @@ if st and st.type == "link" then os.remove(path) end +%post libs +%{_sbindir}/update-alternatives --install \ + %{_libdir}/chromium-browser/libwidevinecdm.so libwidevinecdm.so \ + %{_libdir}/chromium-browser/libwidevinecdm.so.fedora 10 + +%preun libs +if [ $1 = 0 ]; then + %{_sbindir}/alternatives --remove libwidevinecdm.so \ + %{_libdir}/chromium-browser/libwidevinecdm.so.fedora +fi + +%if %{freeworld} +%post libs-media-freeworld +%{_sbindir}/update-alternatives --install \ + %{_libdir}/chromium-browser/libffmpeg.so libffmpeg.so \ + %{_libdir}/chromium-browser/libffmpeg.so.freeworld 5 + --slave %{_libdir}/chromium-browser/libffmpeg.so.TOC libffmpeg.so.TOC \ + %{_libdir}/chromium-browser/libffmpeg.so.TOC.freeworld + --slave %{_libdir}/chromium-browser/libmedia.so libmedia.so \ + %{_libdir}/chromium-browser/libmedia.so.freeworld + --slave %{_libdir}/chromium-browser/libmedia.so.TOC libmedia.so.TOC \ + %{_libdir}/chromium-browser/libmedia.so.TOC.freeworld + +%preun libs-media-freeworld +if [ $1 = 0 ]; then + %{_sbindir}/alternatives --remove libffmpeg.so \ + %{_libdir}/chromium-browser/libffmpeg.so.freeworld +fi +%else +%post libs-media +%{_sbindir}/update-alternatives --install \ + %{_libdir}/chromium-browser/libffmpeg.so libffmpeg.so \ + %{_libdir}/chromium-browser/libffmpeg.so.fedora 10 + --slave %{_libdir}/chromium-browser/libffmpeg.so.TOC libffmpeg.so.TOC \ + %{_libdir}/chromium-browser/libffmpeg.so.TOC.fedora + --slave %{_libdir}/chromium-browser/libmedia.so libmedia.so \ + %{_libdir}/chromium-browser/libmedia.so.fedora + --slave %{_libdir}/chromium-browser/libmedia.so.TOC libmedia.so.TOC \ + %{_libdir}/chromium-browser/libmedia.so.TOC.fedora + +%preun libs-media +if [ $1 = 0 ]; then + %{_sbindir}/alternatives --remove libffmpeg.so \ + %{_libdir}/chromium-browser/libffmpeg.so.fedora +fi +%endif %pre -n chrome-remote-desktop getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-desktop @@ -1507,6 +1586,10 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %postun -n chrome-remote-desktop %systemd_postun_with_restart chrome-remote-desktop@.service +%if 0%{freeworld} +# We only build libs-media-freeworld. +%else + %files %doc AUTHORS %license LICENSE @@ -1602,15 +1685,8 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %files libs %exclude %{chromium_path}/libffmpeg.so* %exclude %{chromium_path}/libmedia.so* +%exclude %{chromium_path}/libwidevinecdm.so %{chromium_path}/lib*.so* - -%if %{freeworld} -%files libs-media-freeworld -%else -%files libs-media -%endif -%{chromium_path}/libffmpeg.so* -%{chromium_path}/libmedia.so* %endif %files -n chrome-remote-desktop @@ -1641,7 +1717,30 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{_bindir}/chromedriver %{chromium_path}/chromedriver +%endif + +%if 0%{?shared} +%if %{freeworld} +%files libs-media-freeworld +%else +%files libs-media +%endif +%{chromium_path}/libffmpeg.so.%{lsuffix}* +%{chromium_path}/libffmpeg.so.TOC.%{lsuffix}* +%{chromium_path}/libmedia.so.%{lsuffix}* +%{chromium_path}/libmedia.so.TOC.%{lsuffix}* +%endif + + %changelog +* Wed Jul 12 2017 Tom Callaway 59.0.3071.115-1 +- 59.0.3071.115 +- conditionalize spec so it can be easily used to make -libs-media-freeworld + +* Wed Jun 28 2017 Dominik Mierzejewski 59.0.3071.109-6 +- use alternatives for widevine stub and media libs to allow third-party + packages to replace them without conflicts + * Mon Jun 26 2017 Tom Callaway 59.0.3071.109-5 - fix path in pretrans scriptlet diff --git a/sources b/sources index be47170..0cd1635 100644 --- a/sources +++ b/sources @@ -1,3 +1,4 @@ SHA512 (chromium-59.0.3071.109-clean.tar.xz) = 7158a5b1c228c077275cf1bde79c34d9eabf607c04424df02056700703f2fd2907fc011ad658d759d7c6dd78c303f9c2983eb811cc9f9b6b424b0af615f6eaa7 SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 SHA512 (policy_templates.zip) = a997bd5d410cf8f0f104fb5b69b60699c9e60eb3f99b42e0aff167843f3a45923a9a99c881cac9cd4472a60ca9c7d1ba897e15d485fbfd66c996419e7fadd3f8 +SHA512 (chromium-59.0.3071.115-clean.tar.xz) = 001e6d9b4cae244767de7e85575d4071421d588422ca434461939e9652549bcd43c56fe0c510ab0d7d0a050e97d98f4086b8bf102dbadd7f83dc8827b9ea7ed1 From d9e2499e5472fd94cdfe7ccfbaa25b2ea44faa4c Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 12 Jul 2017 15:41:05 -0400 Subject: [PATCH 0099/1449] Change struct ucontext to ucontext_t in breakpad --- chromium-59.0.3071.115-ucontext-fix.patch | 214 ++++++++++++++++++++++ chromium.spec | 5 +- 2 files changed, 218 insertions(+), 1 deletion(-) create mode 100644 chromium-59.0.3071.115-ucontext-fix.patch diff --git a/chromium-59.0.3071.115-ucontext-fix.patch b/chromium-59.0.3071.115-ucontext-fix.patch new file mode 100644 index 0000000..96bfadb --- /dev/null +++ b/chromium-59.0.3071.115-ucontext-fix.patch @@ -0,0 +1,214 @@ +diff -up chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc.ucontextfix chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc +--- chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc.ucontextfix 2017-07-12 15:23:33.019591380 -0400 ++++ chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc 2017-07-12 15:32:52.069197546 -0400 +@@ -36,19 +36,19 @@ namespace google_breakpad { + + // Minidump defines register structures which are different from the raw + // structures which we get from the kernel. These are platform specific +-// functions to juggle the ucontext and user structures into minidump format. ++// functions to juggle the ucontext_t and user structures into minidump format. + + #if defined(__i386__) + +-uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) { ++uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) { + return uc->uc_mcontext.gregs[REG_ESP]; + } + +-uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) { ++uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) { + return uc->uc_mcontext.gregs[REG_EIP]; + } + +-void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc, ++void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc, + const struct _libc_fpstate* fp) { + const greg_t* regs = uc->uc_mcontext.gregs; + +@@ -88,15 +88,15 @@ void UContextReader::FillCPUContext(RawC + + #elif defined(__x86_64) + +-uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) { ++uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) { + return uc->uc_mcontext.gregs[REG_RSP]; + } + +-uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) { ++uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) { + return uc->uc_mcontext.gregs[REG_RIP]; + } + +-void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc, ++void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc, + const struct _libc_fpstate* fpregs) { + const greg_t* regs = uc->uc_mcontext.gregs; + +@@ -145,15 +145,15 @@ void UContextReader::FillCPUContext(RawC + + #elif defined(__ARM_EABI__) + +-uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) { ++uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) { + return uc->uc_mcontext.arm_sp; + } + +-uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) { ++uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) { + return uc->uc_mcontext.arm_pc; + } + +-void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc) { ++void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc) { + out->context_flags = MD_CONTEXT_ARM_FULL; + + out->iregs[0] = uc->uc_mcontext.arm_r0; +@@ -184,15 +184,15 @@ void UContextReader::FillCPUContext(RawC + + #elif defined(__aarch64__) + +-uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) { ++uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) { + return uc->uc_mcontext.sp; + } + +-uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) { ++uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) { + return uc->uc_mcontext.pc; + } + +-void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc, ++void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc, + const struct fpsimd_context* fpregs) { + out->context_flags = MD_CONTEXT_ARM64_FULL; + +@@ -210,15 +210,15 @@ void UContextReader::FillCPUContext(RawC + + #elif defined(__mips__) + +-uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) { ++uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) { + return uc->uc_mcontext.gregs[MD_CONTEXT_MIPS_REG_SP]; + } + +-uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) { ++uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) { + return uc->uc_mcontext.pc; + } + +-void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc) { ++void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc) { + #if _MIPS_SIM == _ABI64 + out->context_flags = MD_CONTEXT_MIPS64_FULL; + #elif _MIPS_SIM == _ABIO32 +diff -up chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h.ucontextfix chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h +--- chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h.ucontextfix 2017-07-12 15:33:08.486806743 -0400 ++++ chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h 2017-07-12 15:33:57.299644808 -0400 +@@ -39,23 +39,23 @@ + + namespace google_breakpad { + +-// Wraps platform-dependent implementations of accessors to ucontext structs. ++// Wraps platform-dependent implementations of accessors to ucontext_t structs. + struct UContextReader { +- static uintptr_t GetStackPointer(const struct ucontext* uc); ++ static uintptr_t GetStackPointer(const ucontext_t* uc); + +- static uintptr_t GetInstructionPointer(const struct ucontext* uc); ++ static uintptr_t GetInstructionPointer(const ucontext_t* uc); + +- // Juggle a arch-specific ucontext into a minidump format ++ // Juggle a arch-specific ucontext_t into a minidump format + // out: the minidump structure + // info: the collection of register structures. + #if defined(__i386__) || defined(__x86_64) +- static void FillCPUContext(RawContextCPU *out, const ucontext *uc, ++ static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc, + const struct _libc_fpstate* fp); + #elif defined(__aarch64__) +- static void FillCPUContext(RawContextCPU *out, const ucontext *uc, ++ static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc, + const struct fpsimd_context* fpregs); + #else +- static void FillCPUContext(RawContextCPU *out, const ucontext *uc); ++ static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc); + #endif + }; + +diff -up chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.cc.ucontextfix chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.cc +--- chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.cc.ucontextfix 2017-07-12 15:34:09.094364048 -0400 ++++ chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.cc 2017-07-12 15:35:36.483283853 -0400 +@@ -439,9 +439,9 @@ bool ExceptionHandler::HandleSignal(int + // Fill in all the holes in the struct to make Valgrind happy. + memset(&g_crash_context_, 0, sizeof(g_crash_context_)); + memcpy(&g_crash_context_.siginfo, info, sizeof(siginfo_t)); +- memcpy(&g_crash_context_.context, uc, sizeof(struct ucontext)); ++ memcpy(&g_crash_context_.context, uc, sizeof(ucontext_t)); + #if defined(__aarch64__) +- struct ucontext* uc_ptr = (struct ucontext*)uc; ++ ucontext_t* uc_ptr = (ucontext_t*)uc; + struct fpsimd_context* fp_ptr = + (struct fpsimd_context*)&uc_ptr->uc_mcontext.__reserved; + if (fp_ptr->head.magic == FPSIMD_MAGIC) { +@@ -450,9 +450,9 @@ bool ExceptionHandler::HandleSignal(int + } + #elif !defined(__ARM_EABI__) && !defined(__mips__) + // FP state is not part of user ABI on ARM Linux. +- // In case of MIPS Linux FP state is already part of struct ucontext ++ // In case of MIPS Linux FP state is already part of ucontext_t + // and 'float_state' is not a member of CrashContext. +- struct ucontext* uc_ptr = (struct ucontext*)uc; ++ ucontext_t* uc_ptr = (ucontext_t*)uc; + if (uc_ptr->uc_mcontext.fpregs) { + memcpy(&g_crash_context_.float_state, uc_ptr->uc_mcontext.fpregs, + sizeof(g_crash_context_.float_state)); +@@ -476,7 +476,7 @@ bool ExceptionHandler::SimulateSignalDel + // ExceptionHandler::HandleSignal(). + siginfo.si_code = SI_USER; + siginfo.si_pid = getpid(); +- struct ucontext context; ++ ucontext_t context; + getcontext(&context); + return HandleSignal(sig, &siginfo, &context); + } +diff -up chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.h.ucontextfix chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.h +--- chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.h.ucontextfix 2017-07-12 15:35:48.559996380 -0400 ++++ chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.h 2017-07-12 15:36:32.615948562 -0400 +@@ -191,11 +191,11 @@ class ExceptionHandler { + struct CrashContext { + siginfo_t siginfo; + pid_t tid; // the crashing thread. +- struct ucontext context; ++ ucontext_t context; + #if !defined(__ARM_EABI__) && !defined(__mips__) + // #ifdef this out because FP state is not part of user ABI for Linux ARM. + // In case of MIPS Linux FP state is already part of struct +- // ucontext so 'float_state' is not required. ++ // ucontext_t so 'float_state' is not required. + fpstate_t float_state; + #endif + }; +diff -up chromium-59.0.3071.115/breakpad/src/client/linux/microdump_writer/microdump_writer.cc.ucontextfix chromium-59.0.3071.115/breakpad/src/client/linux/microdump_writer/microdump_writer.cc +--- chromium-59.0.3071.115/breakpad/src/client/linux/microdump_writer/microdump_writer.cc.ucontextfix 2017-07-12 15:37:26.232674196 -0400 ++++ chromium-59.0.3071.115/breakpad/src/client/linux/microdump_writer/microdump_writer.cc 2017-07-12 15:37:39.032369973 -0400 +@@ -579,7 +579,7 @@ class MicrodumpWriter { + + void* Alloc(unsigned bytes) { return dumper_->allocator()->Alloc(bytes); } + +- const struct ucontext* const ucontext_; ++ const ucontext_t* const ucontext_; + #if !defined(__ARM_EABI__) && !defined(__mips__) + const google_breakpad::fpstate_t* const float_state_; + #endif +diff -up chromium-59.0.3071.115/breakpad/src/client/linux/minidump_writer/minidump_writer.cc.ucontextfix chromium-59.0.3071.115/breakpad/src/client/linux/minidump_writer/minidump_writer.cc +--- chromium-59.0.3071.115/breakpad/src/client/linux/minidump_writer/minidump_writer.cc.ucontextfix 2017-07-12 15:37:54.041013246 -0400 ++++ chromium-59.0.3071.115/breakpad/src/client/linux/minidump_writer/minidump_writer.cc 2017-07-12 15:38:19.600405748 -0400 +@@ -1323,7 +1323,7 @@ class MinidumpWriter { + const int fd_; // File descriptor where the minidum should be written. + const char* path_; // Path to the file where the minidum should be written. + +- const struct ucontext* const ucontext_; // also from the signal handler ++ const ucontext_t* const ucontext_; // also from the signal handler + #if !defined(__ARM_EABI__) && !defined(__mips__) + const google_breakpad::fpstate_t* const float_state_; // ditto + #endif diff --git a/chromium.spec b/chromium.spec index 435cb51..2bf42f7 100644 --- a/chromium.spec +++ b/chromium.spec @@ -183,7 +183,9 @@ Patch37: chromium-59.0.3071.86-ffmpeg-stdatomic.patch Patch38: chromium-59.0.3071.86-dma-buf-header-hack.patch # Nacl can't die soon enough Patch39: chromium-59.0.3071.86-system-clang.patch - +# Change struct ucontext to ucontext_t in breakpad +# https://patchwork.openembedded.org/patch/141358/ +Patch40: chromium-59.0.3071.115-ucontext-fix.patch ### Chromium Tests Patches ### Patch100: chromium-46.0.2490.86-use_system_opus.patch @@ -575,6 +577,7 @@ members of the Chromium and WebDriver teams. %patch37 -p1 -b .ffmpeg-stdatomic %patch38 -p1 -b .headerhack %patch39 -p1 -b .system-clang +%patch40 -p1 -b .ucontextfix ### Chromium Tests Patches ### %patch100 -p1 -b .use_system_opus From 03f0b9be077019eb073d32292cc30e2fdb2c97de Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 12 Jul 2017 16:32:37 -0400 Subject: [PATCH 0100/1449] include copy of third_party/freetype from previous source tree --- .gitignore | 1 + chromium.spec | 8 ++++++-- sources | 2 +- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index 8c60af5..ce8a184 100644 --- a/.gitignore +++ b/.gitignore @@ -24,3 +24,4 @@ /chromium-59.0.3071.104-clean.tar.xz /chromium-59.0.3071.109-clean.tar.xz /chromium-59.0.3071.115-clean.tar.xz +/chromium-59.0.3071.109-freetype.tar.bz2 diff --git a/chromium.spec b/chromium.spec index 2bf42f7..d1a58a0 100644 --- a/chromium.spec +++ b/chromium.spec @@ -220,6 +220,10 @@ Source9: chromium-browser.xml Source10: https://dl.google.com/dl/edgedl/chrome/policy/policy_templates.zip Source11: chrome-remote-desktop@.service Source13: master_preferences +# Upstream did not include third_party/freetype source code in the tarball for 59.0.3071.115 +# So we copy it from the previous build. :/ +Source14: chromium-59.0.3071.109-freetype.tar.bz2 + # We can assume gcc and binutils. BuildRequires: gcc-c++ @@ -545,9 +549,9 @@ members of the Chromium and WebDriver teams. %setup -q -T -c -n %{name}-policies -a 10 %setup -q -T -c -n depot_tools -a 2 %if 0%{tests} -%setup -q -n chromium-%{version} -b 1 +%setup -q -n chromium-%{version} -b 1 -a 14 %else -%setup -q -n chromium-%{version} +%setup -q -n chromium-%{version} -a 14 %endif ### Chromium Fedora Patches ### diff --git a/sources b/sources index 0cd1635..db65c06 100644 --- a/sources +++ b/sources @@ -1,4 +1,4 @@ -SHA512 (chromium-59.0.3071.109-clean.tar.xz) = 7158a5b1c228c077275cf1bde79c34d9eabf607c04424df02056700703f2fd2907fc011ad658d759d7c6dd78c303f9c2983eb811cc9f9b6b424b0af615f6eaa7 SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 SHA512 (policy_templates.zip) = a997bd5d410cf8f0f104fb5b69b60699c9e60eb3f99b42e0aff167843f3a45923a9a99c881cac9cd4472a60ca9c7d1ba897e15d485fbfd66c996419e7fadd3f8 SHA512 (chromium-59.0.3071.115-clean.tar.xz) = 001e6d9b4cae244767de7e85575d4071421d588422ca434461939e9652549bcd43c56fe0c510ab0d7d0a050e97d98f4086b8bf102dbadd7f83dc8827b9ea7ed1 +SHA512 (chromium-59.0.3071.109-freetype.tar.bz2) = 62a698c0229c0eb5ed4d31efd211db70f1183f4f86558bd68a6110214b2f0a61eecdde27efcab359ecee684b3df819b37a75505c1b9ea6bec407d289d6e78a66 From 7c2fb50f20ceb9c3ddc44616ecf83348acc6c564 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 13 Jul 2017 14:00:05 -0400 Subject: [PATCH 0101/1449] fix scriptlets --- chromium.spec | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/chromium.spec b/chromium.spec index d1a58a0..7486118 100644 --- a/chromium.spec +++ b/chromium.spec @@ -115,7 +115,7 @@ BuildRequires: libicu-devel >= 5.4 Name: chromium%{chromium_channel} Version: %{majorversion}.0.3071.115 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1549,11 +1549,11 @@ fi %post libs-media-freeworld %{_sbindir}/update-alternatives --install \ %{_libdir}/chromium-browser/libffmpeg.so libffmpeg.so \ - %{_libdir}/chromium-browser/libffmpeg.so.freeworld 5 + %{_libdir}/chromium-browser/libffmpeg.so.freeworld 5 \ --slave %{_libdir}/chromium-browser/libffmpeg.so.TOC libffmpeg.so.TOC \ %{_libdir}/chromium-browser/libffmpeg.so.TOC.freeworld --slave %{_libdir}/chromium-browser/libmedia.so libmedia.so \ - %{_libdir}/chromium-browser/libmedia.so.freeworld + %{_libdir}/chromium-browser/libmedia.so.freeworld \ --slave %{_libdir}/chromium-browser/libmedia.so.TOC libmedia.so.TOC \ %{_libdir}/chromium-browser/libmedia.so.TOC.freeworld @@ -1566,11 +1566,11 @@ fi %post libs-media %{_sbindir}/update-alternatives --install \ %{_libdir}/chromium-browser/libffmpeg.so libffmpeg.so \ - %{_libdir}/chromium-browser/libffmpeg.so.fedora 10 + %{_libdir}/chromium-browser/libffmpeg.so.fedora 10 \ --slave %{_libdir}/chromium-browser/libffmpeg.so.TOC libffmpeg.so.TOC \ - %{_libdir}/chromium-browser/libffmpeg.so.TOC.fedora + %{_libdir}/chromium-browser/libffmpeg.so.TOC.fedora \ --slave %{_libdir}/chromium-browser/libmedia.so libmedia.so \ - %{_libdir}/chromium-browser/libmedia.so.fedora + %{_libdir}/chromium-browser/libmedia.so.fedora \ --slave %{_libdir}/chromium-browser/libmedia.so.TOC libmedia.so.TOC \ %{_libdir}/chromium-browser/libmedia.so.TOC.fedora @@ -1740,6 +1740,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Thu Jul 13 2017 Tom Callaway 59.0.3071.115-2 +- fix scriptlets + * Wed Jul 12 2017 Tom Callaway 59.0.3071.115-1 - 59.0.3071.115 - conditionalize spec so it can be easily used to make -libs-media-freeworld From b7162c3694417dea98c380eb254affe6acc62898 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 17 Jul 2017 12:56:43 -0400 Subject: [PATCH 0102/1449] add missing \ in freeworld scriptlet --- chromium.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 7486118..b3b2262 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1551,7 +1551,7 @@ fi %{_libdir}/chromium-browser/libffmpeg.so libffmpeg.so \ %{_libdir}/chromium-browser/libffmpeg.so.freeworld 5 \ --slave %{_libdir}/chromium-browser/libffmpeg.so.TOC libffmpeg.so.TOC \ - %{_libdir}/chromium-browser/libffmpeg.so.TOC.freeworld + %{_libdir}/chromium-browser/libffmpeg.so.TOC.freeworld \ --slave %{_libdir}/chromium-browser/libmedia.so libmedia.so \ %{_libdir}/chromium-browser/libmedia.so.freeworld \ --slave %{_libdir}/chromium-browser/libmedia.so.TOC libmedia.so.TOC \ From d2fc3a146dc3ad3a8251f5da6fa387ed79cd975c Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 21 Jul 2017 10:17:22 -0400 Subject: [PATCH 0103/1449] use posttrans to ensure that old shared libs are gone before trying to make symlinks --- chromium.spec | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/chromium.spec b/chromium.spec index b3b2262..045fffb 100644 --- a/chromium.spec +++ b/chromium.spec @@ -115,7 +115,7 @@ BuildRequires: libicu-devel >= 5.4 Name: chromium%{chromium_channel} Version: %{majorversion}.0.3071.115 -Release: 2%{?dist} +Release: 3%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1534,7 +1534,7 @@ if st and st.type == "link" then os.remove(path) end -%post libs +%posttrans libs %{_sbindir}/update-alternatives --install \ %{_libdir}/chromium-browser/libwidevinecdm.so libwidevinecdm.so \ %{_libdir}/chromium-browser/libwidevinecdm.so.fedora 10 @@ -1546,7 +1546,7 @@ if [ $1 = 0 ]; then fi %if %{freeworld} -%post libs-media-freeworld +%posttrans libs-media-freeworld %{_sbindir}/update-alternatives --install \ %{_libdir}/chromium-browser/libffmpeg.so libffmpeg.so \ %{_libdir}/chromium-browser/libffmpeg.so.freeworld 5 \ @@ -1563,7 +1563,7 @@ if [ $1 = 0 ]; then %{_libdir}/chromium-browser/libffmpeg.so.freeworld fi %else -%post libs-media +%posttrans libs-media %{_sbindir}/update-alternatives --install \ %{_libdir}/chromium-browser/libffmpeg.so libffmpeg.so \ %{_libdir}/chromium-browser/libffmpeg.so.fedora 10 \ @@ -1740,6 +1740,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Fri Jul 21 2017 Tom Callaway 59.0.3071.115-3 +- use posttrans to ensure that old libs are gone before trying to make alternative symlinks + * Thu Jul 13 2017 Tom Callaway 59.0.3071.115-2 - fix scriptlets From 2d02baa29cd7f388c10c1d14ce9d3df9be890ba4 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 21 Jul 2017 11:42:08 -0400 Subject: [PATCH 0104/1449] BR: mesa-libGL-devel --- chromium.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/chromium.spec b/chromium.spec index 045fffb..e5043e4 100644 --- a/chromium.spec +++ b/chromium.spec @@ -253,6 +253,7 @@ BuildRequires: libusb-devel BuildRequires: libXdamage-devel BuildRequires: libXScrnSaver-devel BuildRequires: libXtst-devel +BuildRequires: mesa-libGL-devel BuildRequires: nodejs BuildRequires: nss-devel BuildRequires: pciutils-devel From 5a7429033fe66743abaa1a707b3b27082efd22cc Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 26 Jul 2017 04:48:28 +0000 Subject: [PATCH 0105/1449] - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild --- chromium.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index e5043e4..55bd1f7 100644 --- a/chromium.spec +++ b/chromium.spec @@ -115,7 +115,7 @@ BuildRequires: libicu-devel >= 5.4 Name: chromium%{chromium_channel} Version: %{majorversion}.0.3071.115 -Release: 3%{?dist} +Release: 4%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1741,6 +1741,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Wed Jul 26 2017 Fedora Release Engineering - 59.0.3071.115-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + * Fri Jul 21 2017 Tom Callaway 59.0.3071.115-3 - use posttrans to ensure that old libs are gone before trying to make alternative symlinks From b5526c1f70ac026e4af6702ea6fa764ff7d99882 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 2 Aug 2017 18:47:02 +0000 Subject: [PATCH 0106/1449] - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild --- chromium.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 55bd1f7..5d26a88 100644 --- a/chromium.spec +++ b/chromium.spec @@ -115,7 +115,7 @@ BuildRequires: libicu-devel >= 5.4 Name: chromium%{chromium_channel} Version: %{majorversion}.0.3071.115 -Release: 4%{?dist} +Release: 5%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1741,6 +1741,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Wed Aug 02 2017 Fedora Release Engineering - 59.0.3071.115-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + * Wed Jul 26 2017 Fedora Release Engineering - 59.0.3071.115-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild From 29aa9da06f1bef43aa62660954446d8a03d9a141 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Sat, 5 Aug 2017 17:16:08 -0400 Subject: [PATCH 0107/1449] 60.0.3112.90 + headless + fixes for freeworld --- .gitignore | 1 + chromium-60.0.3112.78-enable-mp3.patch | 479 ++++++++++++++ chromium-60.0.3112.78-fix-gn-bootstrap.patch | 11 + chromium-60.0.3112.78-gcc7.patch | 80 +++ chromium-60.0.3112.78-gn-system.patch | 221 +++++++ chromium-60.0.3112.78-gtk2fix.patch | 612 ++++++++++++++++++ chromium-60.0.3112.78-jpeg-nomangle.patch | 14 + ...um-60.0.3112.78-last-commit-position.patch | 28 + chromium-60.0.3112.78-no-libpng-prefix.patch | 17 + chromium-60.0.3112.78-no-zlib-mangle.patch | 13 + chromium.spec | 236 ++++--- sources | 5 +- 12 files changed, 1640 insertions(+), 77 deletions(-) create mode 100644 chromium-60.0.3112.78-enable-mp3.patch create mode 100644 chromium-60.0.3112.78-fix-gn-bootstrap.patch create mode 100644 chromium-60.0.3112.78-gcc7.patch create mode 100644 chromium-60.0.3112.78-gn-system.patch create mode 100644 chromium-60.0.3112.78-gtk2fix.patch create mode 100644 chromium-60.0.3112.78-jpeg-nomangle.patch create mode 100644 chromium-60.0.3112.78-last-commit-position.patch create mode 100644 chromium-60.0.3112.78-no-libpng-prefix.patch create mode 100644 chromium-60.0.3112.78-no-zlib-mangle.patch diff --git a/.gitignore b/.gitignore index ce8a184..19bd92f 100644 --- a/.gitignore +++ b/.gitignore @@ -25,3 +25,4 @@ /chromium-59.0.3071.109-clean.tar.xz /chromium-59.0.3071.115-clean.tar.xz /chromium-59.0.3071.109-freetype.tar.bz2 +/chromium-60.0.3112.90-clean.tar.xz diff --git a/chromium-60.0.3112.78-enable-mp3.patch b/chromium-60.0.3112.78-enable-mp3.patch new file mode 100644 index 0000000..3dfdab2 --- /dev/null +++ b/chromium-60.0.3112.78-enable-mp3.patch @@ -0,0 +1,479 @@ +diff -up chromium-60.0.3112.78/components/neterror/resources/sounds/button-press.mp3 chromium-60.0.3112.78/components/neterror/resources/sounds/button-press +diff -up chromium-60.0.3112.78/components/neterror/resources/sounds/hit.mp3 chromium-60.0.3112.78/components/neterror/resources/sounds/hit +diff -up chromium-60.0.3112.78/components/neterror/resources/sounds/score-reached.mp3 chromium-60.0.3112.78/components/neterror/resources/sounds/score-reached +diff -up chromium-60.0.3112.78/media/base/mime_util_internal.cc.mp3 chromium-60.0.3112.78/media/base/mime_util_internal.cc +--- chromium-60.0.3112.78/media/base/mime_util_internal.cc.mp3 2017-07-25 15:04:57.000000000 -0400 ++++ chromium-60.0.3112.78/media/base/mime_util_internal.cc 2017-07-31 10:57:55.054231795 -0400 +@@ -278,10 +278,10 @@ void MimeUtil::AddSupportedMediaFormats( + CodecSet webm_codecs(webm_audio_codecs); + webm_codecs.insert(webm_video_codecs.begin(), webm_video_codecs.end()); + +-#if BUILDFLAG(USE_PROPRIETARY_CODECS) + CodecSet mp3_codecs; + mp3_codecs.insert(MP3); + ++#if BUILDFLAG(USE_PROPRIETARY_CODECS) + CodecSet aac; + aac.insert(MPEG2_AAC); + aac.insert(MPEG4_AAC); +@@ -325,10 +325,10 @@ void MimeUtil::AddSupportedMediaFormats( + AddContainerWithCodecs("application/ogg", ogg_codecs, false); + AddContainerWithCodecs("audio/flac", implicit_codec, false); + +-#if BUILDFLAG(USE_PROPRIETARY_CODECS) + AddContainerWithCodecs("audio/mpeg", mp3_codecs, true); // Allow "mp3". + AddContainerWithCodecs("audio/mp3", implicit_codec, true); + AddContainerWithCodecs("audio/x-mp3", implicit_codec, true); ++#if BUILDFLAG(USE_PROPRIETARY_CODECS) + AddContainerWithCodecs("audio/aac", implicit_codec, true); // AAC / ADTS. + AddContainerWithCodecs("audio/mp4", mp4_audio_codecs, true); + DCHECK(!mp4_video_codecs.empty()); +@@ -928,7 +928,6 @@ bool MimeUtil::IsCodecProprietary(Codec + case INVALID_CODEC: + case AC3: + case EAC3: +- case MP3: + case MPEG2_AAC: + case MPEG4_AAC: + case H264: +@@ -936,6 +935,7 @@ bool MimeUtil::IsCodecProprietary(Codec + case DOLBY_VISION: + return true; + ++ case MP3: + case PCM: + case VORBIS: + case OPUS: +diff -up chromium-60.0.3112.78/media/BUILD.gn.mp3 chromium-60.0.3112.78/media/BUILD.gn +diff -up chromium-60.0.3112.78/media/formats/BUILD.gn.mp3 chromium-60.0.3112.78/media/formats/BUILD.gn +--- chromium-60.0.3112.78/media/formats/BUILD.gn.mp3 2017-07-31 11:00:08.486638957 -0400 ++++ chromium-60.0.3112.78/media/formats/BUILD.gn 2017-07-31 11:01:17.867290730 -0400 +@@ -12,6 +12,14 @@ source_set("formats") { + "ac3/ac3_util.h", + "common/offset_byte_queue.cc", + "common/offset_byte_queue.h", ++ "mpeg/adts_constants.cc", ++ "mpeg/adts_constants.h", ++ "mpeg/adts_stream_parser.cc", ++ "mpeg/adts_stream_parser.h", ++ "mpeg/mpeg1_audio_stream_parser.cc", ++ "mpeg/mpeg1_audio_stream_parser.h", ++ "mpeg/mpeg_audio_stream_parser_base.cc", ++ "mpeg/mpeg_audio_stream_parser_base.h", + "webm/webm_audio_client.cc", + "webm/webm_audio_client.h", + "webm/webm_cluster_parser.cc", +@@ -76,14 +84,6 @@ source_set("formats") { + "mp4/sample_to_group_iterator.h", + "mp4/track_run_iterator.cc", + "mp4/track_run_iterator.h", +- "mpeg/adts_constants.cc", +- "mpeg/adts_constants.h", +- "mpeg/adts_stream_parser.cc", +- "mpeg/adts_stream_parser.h", +- "mpeg/mpeg1_audio_stream_parser.cc", +- "mpeg/mpeg1_audio_stream_parser.h", +- "mpeg/mpeg_audio_stream_parser_base.cc", +- "mpeg/mpeg_audio_stream_parser_base.h", + ] + } + +diff -up chromium-60.0.3112.78/third_party/catapult/third_party/gsutil/gslib/tests/test_data/test.mp3 chromium-60.0.3112.78/third_party/catapult/third_party/gsutil/gslib/tests/test_data/test +diff -up chromium-60.0.3112.78/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h.mp3 chromium-60.0.3112.78/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h +--- chromium-60.0.3112.78/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h.mp3 2017-07-31 10:18:49.000000000 -0400 ++++ chromium-60.0.3112.78/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h 2017-07-31 10:57:55.056231757 -0400 +@@ -1,7 +1,7 @@ + /* Automatically generated by configure - do not modify! */ + #ifndef FFMPEG_CONFIG_H + #define FFMPEG_CONFIG_H +-#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/usr/local/google/home/tguilbert/Code/chromium/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-cross-compile --cross-prefix=/usr/bin/aarch64-linux-gnu- --target-os=linux --arch=aarch64 --enable-armv8 --extra-cflags='-march=armv8-a' --enable-pic" ++#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/usr/local/google/home/tguilbert/Code/chromium/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-cross-compile --cross-prefix=/usr/bin/aarch64-linux-gnu- --target-os=linux --arch=aarch64 --enable-armv8 --extra-cflags='-march=armv8-a' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" + #define FFMPEG_LICENSE "LGPL version 2.1 or later" + #define CONFIG_THIS_YEAR 2017 + #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" +@@ -550,7 +550,7 @@ + #define CONFIG_FFPROBE 0 + #define CONFIG_FFSERVER 0 + #define CONFIG_FFMPEG 0 +-#define CONFIG_DCT 0 ++#define CONFIG_DCT 1 + #define CONFIG_DWT 0 + #define CONFIG_ERROR_RESILIENCE 0 + #define CONFIG_FAAN 1 +@@ -617,8 +617,8 @@ + #define CONFIG_LZF 0 + #define CONFIG_ME_CMP 0 + #define CONFIG_MPEG_ER 0 +-#define CONFIG_MPEGAUDIO 0 +-#define CONFIG_MPEGAUDIODSP 0 ++#define CONFIG_MPEGAUDIO 1 ++#define CONFIG_MPEGAUDIODSP 1 + #define CONFIG_MPEGVIDEO 0 + #define CONFIG_MPEGVIDEOENC 0 + #define CONFIG_MSS34DSP 0 +@@ -957,7 +957,7 @@ + #define CONFIG_MP1FLOAT_DECODER 0 + #define CONFIG_MP2_DECODER 0 + #define CONFIG_MP2FLOAT_DECODER 0 +-#define CONFIG_MP3_DECODER 0 ++#define CONFIG_MP3_DECODER 1 + #define CONFIG_MP3FLOAT_DECODER 0 + #define CONFIG_MP3ADU_DECODER 0 + #define CONFIG_MP3ADUFLOAT_DECODER 0 +@@ -1263,7 +1263,7 @@ + #define CONFIG_MM_DEMUXER 0 + #define CONFIG_MMF_DEMUXER 0 + #define CONFIG_MOV_DEMUXER 0 +-#define CONFIG_MP3_DEMUXER 0 ++#define CONFIG_MP3_DEMUXER 1 + #define CONFIG_MPC_DEMUXER 0 + #define CONFIG_MPC8_DEMUXER 0 + #define CONFIG_MPEGPS_DEMUXER 0 +@@ -2196,7 +2196,7 @@ + #define CONFIG_MJPEG_PARSER 0 + #define CONFIG_MLP_PARSER 0 + #define CONFIG_MPEG4VIDEO_PARSER 0 +-#define CONFIG_MPEGAUDIO_PARSER 0 ++#define CONFIG_MPEGAUDIO_PARSER 1 + #define CONFIG_MPEGVIDEO_PARSER 0 + #define CONFIG_OPUS_PARSER 1 + #define CONFIG_PNG_PARSER 0 +diff -up chromium-60.0.3112.78/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h.mp3 chromium-60.0.3112.78/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h +--- chromium-60.0.3112.78/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h.mp3 2017-07-31 10:18:49.000000000 -0400 ++++ chromium-60.0.3112.78/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h 2017-07-31 10:57:55.057231738 -0400 +@@ -1,7 +1,7 @@ + /* Automatically generated by configure - do not modify! */ + #ifndef FFMPEG_CONFIG_H + #define FFMPEG_CONFIG_H +-#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/tguilbert/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --disable-neon --extra-cflags='-mfpu=vfpv3-d16' --enable-pic" ++#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/tguilbert/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --disable-neon --extra-cflags='-mfpu=vfpv3-d16' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" + #define FFMPEG_LICENSE "LGPL version 2.1 or later" + #define CONFIG_THIS_YEAR 2017 + #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" +@@ -550,7 +550,7 @@ + #define CONFIG_FFPROBE 0 + #define CONFIG_FFSERVER 0 + #define CONFIG_FFMPEG 0 +-#define CONFIG_DCT 0 ++#define CONFIG_DCT 1 + #define CONFIG_DWT 0 + #define CONFIG_ERROR_RESILIENCE 0 + #define CONFIG_FAAN 1 +@@ -617,8 +617,8 @@ + #define CONFIG_LZF 0 + #define CONFIG_ME_CMP 0 + #define CONFIG_MPEG_ER 0 +-#define CONFIG_MPEGAUDIO 0 +-#define CONFIG_MPEGAUDIODSP 0 ++#define CONFIG_MPEGAUDIO 1 ++#define CONFIG_MPEGAUDIODSP 1 + #define CONFIG_MPEGVIDEO 0 + #define CONFIG_MPEGVIDEOENC 0 + #define CONFIG_MSS34DSP 0 +@@ -957,7 +957,7 @@ + #define CONFIG_MP1FLOAT_DECODER 0 + #define CONFIG_MP2_DECODER 0 + #define CONFIG_MP2FLOAT_DECODER 0 +-#define CONFIG_MP3_DECODER 0 ++#define CONFIG_MP3_DECODER 1 + #define CONFIG_MP3FLOAT_DECODER 0 + #define CONFIG_MP3ADU_DECODER 0 + #define CONFIG_MP3ADUFLOAT_DECODER 0 +@@ -1263,7 +1263,7 @@ + #define CONFIG_MM_DEMUXER 0 + #define CONFIG_MMF_DEMUXER 0 + #define CONFIG_MOV_DEMUXER 0 +-#define CONFIG_MP3_DEMUXER 0 ++#define CONFIG_MP3_DEMUXER 1 + #define CONFIG_MPC_DEMUXER 0 + #define CONFIG_MPC8_DEMUXER 0 + #define CONFIG_MPEGPS_DEMUXER 0 +@@ -2196,7 +2196,7 @@ + #define CONFIG_MJPEG_PARSER 0 + #define CONFIG_MLP_PARSER 0 + #define CONFIG_MPEG4VIDEO_PARSER 0 +-#define CONFIG_MPEGAUDIO_PARSER 0 ++#define CONFIG_MPEGAUDIO_PARSER 1 + #define CONFIG_MPEGVIDEO_PARSER 0 + #define CONFIG_OPUS_PARSER 1 + #define CONFIG_PNG_PARSER 0 +diff -up chromium-60.0.3112.78/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h.mp3 chromium-60.0.3112.78/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h +--- chromium-60.0.3112.78/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h.mp3 2017-07-31 10:18:49.000000000 -0400 ++++ chromium-60.0.3112.78/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h 2017-07-31 10:57:55.106230806 -0400 +@@ -1,7 +1,7 @@ + /* Automatically generated by configure - do not modify! */ + #ifndef FFMPEG_CONFIG_H + #define FFMPEG_CONFIG_H +-#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/tguilbert/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --enable-neon --extra-cflags='-mfpu=neon' --enable-pic" ++#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/tguilbert/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --enable-neon --extra-cflags='-mfpu=neon' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" + #define FFMPEG_LICENSE "LGPL version 2.1 or later" + #define CONFIG_THIS_YEAR 2017 + #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" +@@ -550,7 +550,7 @@ + #define CONFIG_FFPROBE 0 + #define CONFIG_FFSERVER 0 + #define CONFIG_FFMPEG 0 +-#define CONFIG_DCT 0 ++#define CONFIG_DCT 1 + #define CONFIG_DWT 0 + #define CONFIG_ERROR_RESILIENCE 0 + #define CONFIG_FAAN 1 +@@ -617,8 +617,8 @@ + #define CONFIG_LZF 0 + #define CONFIG_ME_CMP 0 + #define CONFIG_MPEG_ER 0 +-#define CONFIG_MPEGAUDIO 0 +-#define CONFIG_MPEGAUDIODSP 0 ++#define CONFIG_MPEGAUDIO 1 ++#define CONFIG_MPEGAUDIODSP 1 + #define CONFIG_MPEGVIDEO 0 + #define CONFIG_MPEGVIDEOENC 0 + #define CONFIG_MSS34DSP 0 +@@ -957,7 +957,7 @@ + #define CONFIG_MP1FLOAT_DECODER 0 + #define CONFIG_MP2_DECODER 0 + #define CONFIG_MP2FLOAT_DECODER 0 +-#define CONFIG_MP3_DECODER 0 ++#define CONFIG_MP3_DECODER 1 + #define CONFIG_MP3FLOAT_DECODER 0 + #define CONFIG_MP3ADU_DECODER 0 + #define CONFIG_MP3ADUFLOAT_DECODER 0 +@@ -1263,7 +1263,7 @@ + #define CONFIG_MM_DEMUXER 0 + #define CONFIG_MMF_DEMUXER 0 + #define CONFIG_MOV_DEMUXER 0 +-#define CONFIG_MP3_DEMUXER 0 ++#define CONFIG_MP3_DEMUXER 1 + #define CONFIG_MPC_DEMUXER 0 + #define CONFIG_MPC8_DEMUXER 0 + #define CONFIG_MPEGPS_DEMUXER 0 +@@ -2196,7 +2196,7 @@ + #define CONFIG_MJPEG_PARSER 0 + #define CONFIG_MLP_PARSER 0 + #define CONFIG_MPEG4VIDEO_PARSER 0 +-#define CONFIG_MPEGAUDIO_PARSER 0 ++#define CONFIG_MPEGAUDIO_PARSER 1 + #define CONFIG_MPEGVIDEO_PARSER 0 + #define CONFIG_OPUS_PARSER 1 + #define CONFIG_PNG_PARSER 0 +diff -up chromium-60.0.3112.78/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h.mp3 chromium-60.0.3112.78/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h +--- chromium-60.0.3112.78/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h.mp3 2017-07-31 10:18:49.000000000 -0400 ++++ chromium-60.0.3112.78/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h 2017-07-31 10:57:55.107230787 -0400 +@@ -1,7 +1,7 @@ + /* Automatically generated by configure - do not modify! */ + #ifndef FFMPEG_CONFIG_H + #define FFMPEG_CONFIG_H +-#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/usr/local/google/home/tguilbert/Code/chromium/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=i686 --extra-cflags='\"-m32\"' --extra-ldflags='\"-m32\"' --enable-yasm --enable-pic" ++#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/usr/local/google/home/tguilbert/Code/chromium/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=i686 --extra-cflags='\"-m32\"' --extra-ldflags='\"-m32\"' --enable-yasm --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" + #define FFMPEG_LICENSE "LGPL version 2.1 or later" + #define CONFIG_THIS_YEAR 2017 + #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" +@@ -550,7 +550,7 @@ + #define CONFIG_FFPROBE 0 + #define CONFIG_FFSERVER 0 + #define CONFIG_FFMPEG 0 +-#define CONFIG_DCT 0 ++#define CONFIG_DCT 1 + #define CONFIG_DWT 0 + #define CONFIG_ERROR_RESILIENCE 0 + #define CONFIG_FAAN 1 +@@ -617,8 +617,8 @@ + #define CONFIG_LZF 0 + #define CONFIG_ME_CMP 0 + #define CONFIG_MPEG_ER 0 +-#define CONFIG_MPEGAUDIO 0 +-#define CONFIG_MPEGAUDIODSP 0 ++#define CONFIG_MPEGAUDIO 1 ++#define CONFIG_MPEGAUDIODSP 1 + #define CONFIG_MPEGVIDEO 0 + #define CONFIG_MPEGVIDEOENC 0 + #define CONFIG_MSS34DSP 0 +@@ -957,7 +957,7 @@ + #define CONFIG_MP1FLOAT_DECODER 0 + #define CONFIG_MP2_DECODER 0 + #define CONFIG_MP2FLOAT_DECODER 0 +-#define CONFIG_MP3_DECODER 0 ++#define CONFIG_MP3_DECODER 1 + #define CONFIG_MP3FLOAT_DECODER 0 + #define CONFIG_MP3ADU_DECODER 0 + #define CONFIG_MP3ADUFLOAT_DECODER 0 +@@ -1263,7 +1263,7 @@ + #define CONFIG_MM_DEMUXER 0 + #define CONFIG_MMF_DEMUXER 0 + #define CONFIG_MOV_DEMUXER 0 +-#define CONFIG_MP3_DEMUXER 0 ++#define CONFIG_MP3_DEMUXER 1 + #define CONFIG_MPC_DEMUXER 0 + #define CONFIG_MPC8_DEMUXER 0 + #define CONFIG_MPEGPS_DEMUXER 0 +@@ -2196,7 +2196,7 @@ + #define CONFIG_MJPEG_PARSER 0 + #define CONFIG_MLP_PARSER 0 + #define CONFIG_MPEG4VIDEO_PARSER 0 +-#define CONFIG_MPEGAUDIO_PARSER 0 ++#define CONFIG_MPEGAUDIO_PARSER 1 + #define CONFIG_MPEGVIDEO_PARSER 0 + #define CONFIG_OPUS_PARSER 1 + #define CONFIG_PNG_PARSER 0 +diff -up chromium-60.0.3112.78/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h.mp3 chromium-60.0.3112.78/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h +--- chromium-60.0.3112.78/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h.mp3 2017-07-31 10:18:49.000000000 -0400 ++++ chromium-60.0.3112.78/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h 2017-07-31 10:57:55.108230768 -0400 +@@ -1,7 +1,7 @@ + /* Automatically generated by configure - do not modify! */ + #ifndef FFMPEG_CONFIG_H + #define FFMPEG_CONFIG_H +-#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/usr/local/google/home/tguilbert/Code/chromium/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-pic --enable-lto" ++#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/usr/local/google/home/tguilbert/Code/chromium/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-pic --enable-lto --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" + #define FFMPEG_LICENSE "LGPL version 2.1 or later" + #define CONFIG_THIS_YEAR 2017 + #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" +@@ -550,7 +550,7 @@ + #define CONFIG_FFPROBE 0 + #define CONFIG_FFSERVER 0 + #define CONFIG_FFMPEG 0 +-#define CONFIG_DCT 0 ++#define CONFIG_DCT 1 + #define CONFIG_DWT 0 + #define CONFIG_ERROR_RESILIENCE 0 + #define CONFIG_FAAN 1 +@@ -617,8 +617,8 @@ + #define CONFIG_LZF 0 + #define CONFIG_ME_CMP 0 + #define CONFIG_MPEG_ER 0 +-#define CONFIG_MPEGAUDIO 0 +-#define CONFIG_MPEGAUDIODSP 0 ++#define CONFIG_MPEGAUDIO 1 ++#define CONFIG_MPEGAUDIODSP 1 + #define CONFIG_MPEGVIDEO 0 + #define CONFIG_MPEGVIDEOENC 0 + #define CONFIG_MSS34DSP 0 +@@ -957,7 +957,7 @@ + #define CONFIG_MP1FLOAT_DECODER 0 + #define CONFIG_MP2_DECODER 0 + #define CONFIG_MP2FLOAT_DECODER 0 +-#define CONFIG_MP3_DECODER 0 ++#define CONFIG_MP3_DECODER 1 + #define CONFIG_MP3FLOAT_DECODER 0 + #define CONFIG_MP3ADU_DECODER 0 + #define CONFIG_MP3ADUFLOAT_DECODER 0 +@@ -1263,7 +1263,7 @@ + #define CONFIG_MM_DEMUXER 0 + #define CONFIG_MMF_DEMUXER 0 + #define CONFIG_MOV_DEMUXER 0 +-#define CONFIG_MP3_DEMUXER 0 ++#define CONFIG_MP3_DEMUXER 1 + #define CONFIG_MPC_DEMUXER 0 + #define CONFIG_MPC8_DEMUXER 0 + #define CONFIG_MPEGPS_DEMUXER 0 +@@ -2196,7 +2196,7 @@ + #define CONFIG_MJPEG_PARSER 0 + #define CONFIG_MLP_PARSER 0 + #define CONFIG_MPEG4VIDEO_PARSER 0 +-#define CONFIG_MPEGAUDIO_PARSER 0 ++#define CONFIG_MPEGAUDIO_PARSER 1 + #define CONFIG_MPEGVIDEO_PARSER 0 + #define CONFIG_OPUS_PARSER 1 + #define CONFIG_PNG_PARSER 0 +diff -up chromium-60.0.3112.78/third_party/ffmpeg/ffmpeg_generated.gni.mp3 chromium-60.0.3112.78/third_party/ffmpeg/ffmpeg_generated.gni +--- chromium-60.0.3112.78/third_party/ffmpeg/ffmpeg_generated.gni.mp3 2017-07-31 10:18:46.000000000 -0400 ++++ chromium-60.0.3112.78/third_party/ffmpeg/ffmpeg_generated.gni 2017-07-31 10:57:55.109230749 -0400 +@@ -177,19 +177,12 @@ if ((is_linux && current_cpu == "arm" && + ] + } + +-if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mips64el" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "arm" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "mipsel" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "ChromeOS") || (is_win && ffmpeg_branding == "Chrome")) { ++if ((current_cpu == "x64") || (is_android && current_cpu == "arm" && arm_use_neon) || (is_android && current_cpu == "arm64") || (is_android && current_cpu == "mips64el") || (is_android && current_cpu == "mipsel") || (is_android && current_cpu == "x86") || (is_linux && current_cpu == "arm" && arm_use_neon) || (is_linux && current_cpu == "arm" && arm_use_neon) || (is_linux && current_cpu == "arm") || (is_linux && current_cpu == "arm64") || (is_linux && current_cpu == "mipsel") || (is_linux && current_cpu == "x64") || (is_linux && current_cpu == "x86") || (is_win)) ++{ + ffmpeg_c_sources += [ +- "libavcodec/aac_ac3_parser.c", +- "libavcodec/aac_parser.c", +- "libavcodec/aacadtsdec.c", +- "libavcodec/aacps_float.c", +- "libavcodec/aacpsdsp_float.c", +- "libavcodec/aacsbr.c", +- "libavcodec/aactab.c", +- "libavcodec/ac3tab.c", +- "libavcodec/autorename_libavcodec_aacdec.c", + "libavcodec/autorename_libavcodec_mpegaudiodsp.c", + "libavcodec/autorename_libavcodec_sbrdsp.c", ++ "libavcodec/ac3tab.c", + "libavcodec/cbrt_data.c", + "libavcodec/dct.c", + "libavcodec/dct32_fixed.c", +@@ -205,7 +198,6 @@ if ((current_cpu == "x64" && ffmpeg_bran + "libavcodec/mpegaudiodsp_float.c", + "libavcodec/sinewin.c", + "libavcodec/sinewin_fixed.c", +- "libavformat/aacdec.c", + "libavformat/apetag.c", + "libavformat/img2.c", + "libavformat/mov.c", +@@ -214,6 +206,21 @@ if ((current_cpu == "x64" && ffmpeg_bran + ] + } + ++if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mips64el" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "arm" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "mipsel" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "ChromeOS") || (is_win && ffmpeg_branding == "Chrome")) ++{ ++ ffmpeg_c_sources += [ ++ "libavcodec/aac_ac3_parser.c", ++ "libavcodec/aac_parser.c", ++ "libavcodec/aacadtsdec.c", ++ "libavcodec/aacps_float.c", ++ "libavcodec/aacpsdsp_float.c", ++ "libavcodec/aacsbr.c", ++ "libavcodec/aactab.c", ++ "libavcodec/autorename_libavcodec_aacdec.c", ++ "libavformat/aacdec.c", ++ ] ++} ++ + if ((is_android && current_cpu == "x64") || (is_android && current_cpu == "x86") || (is_linux && current_cpu == "x64") || (is_linux && current_cpu == "x86") || (is_mac) || (is_win)) { + ffmpeg_c_sources += [ + "libavcodec/x86/autorename_libavcodec_x86_vorbisdsp_init.c", +@@ -315,21 +322,31 @@ if ((is_linux && current_cpu == "x64") | + if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "ChromeOS") || (is_win && ffmpeg_branding == "Chrome")) { + ffmpeg_c_sources += [ + "libavcodec/x86/aacpsdsp_init.c", ++ ] ++} ++ ++if ((current_cpu == "x64") || (is_android && current_cpu == "x86") || (is_linux && current_cpu == "x64") || (is_linux && current_cpu == "x86") || (is_win)) { ++ ffmpeg_c_sources += [ + "libavcodec/x86/dct_init.c", + "libavcodec/x86/mpegaudiodsp.c", + "libavcodec/x86/sbrdsp_init.c", + ] + } + +-if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "ChromeOS") || (is_win && ffmpeg_branding == "Chrome")) { ++if ((current_cpu == "x64") || (is_android && current_cpu == "x86") || (is_linux && current_cpu == "x64") || (is_linux && current_cpu == "x86") || (is_win)) { + ffmpeg_yasm_sources += [ +- "libavcodec/x86/aacpsdsp.asm", + "libavcodec/x86/dct32.asm", + "libavcodec/x86/imdct36.asm", + "libavcodec/x86/sbrdsp.asm", + ] + } + ++if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "ChromeOS") || (is_win && ffmpeg_branding == "Chrome")) { ++ ffmpeg_yasm_sources += [ ++ "libavcodec/x86/aacpsdsp.asm", ++ ] ++} ++ + if ((is_linux && current_cpu == "arm" && arm_use_neon) || (is_linux && current_cpu == "arm")) { + ffmpeg_c_sources += [ + "libavcodec/arm/h264pred_init_arm.c", +diff -up chromium-60.0.3112.78/third_party/ffmpeg/libavcodec/sbrdsp.c.mp3 chromium-60.0.3112.78/third_party/ffmpeg/libavcodec/sbrdsp.c +--- chromium-60.0.3112.78/third_party/ffmpeg/libavcodec/sbrdsp.c.mp3 2017-07-31 10:18:48.000000000 -0400 ++++ chromium-60.0.3112.78/third_party/ffmpeg/libavcodec/sbrdsp.c 2017-07-31 10:57:55.110230730 -0400 +@@ -23,6 +23,7 @@ + #define USE_FIXED 0 + + #include "aac.h" ++#include "aacsbrdata.h" + #include "config.h" + #include "libavutil/attributes.h" + #include "libavutil/intfloat.h" +diff -up chromium-60.0.3112.78/third_party/webrtc/examples/objc/AppRTCMobile/ios/resources/mozart.mp3 chromium-60.0.3112.78/third_party/webrtc/examples/objc/AppRTCMobile/ios/resources/mozart +diff -up chromium-60.0.3112.78/tools/android/audio_focus_grabber/java/res/raw/ping.mp3 chromium-60.0.3112.78/tools/android/audio_focus_grabber/java/res/raw/ping diff --git a/chromium-60.0.3112.78-fix-gn-bootstrap.patch b/chromium-60.0.3112.78-fix-gn-bootstrap.patch new file mode 100644 index 0000000..b67d18f --- /dev/null +++ b/chromium-60.0.3112.78-fix-gn-bootstrap.patch @@ -0,0 +1,11 @@ +diff -up chromium-60.0.3112.78/tools/gn/bootstrap/bootstrap.py.fixme chromium-60.0.3112.78/tools/gn/bootstrap/bootstrap.py +--- chromium-60.0.3112.78/tools/gn/bootstrap/bootstrap.py.fixme 2017-07-31 11:47:11.660774702 -0400 ++++ chromium-60.0.3112.78/tools/gn/bootstrap/bootstrap.py 2017-07-31 11:47:32.859362600 -0400 +@@ -487,6 +487,7 @@ def write_gn_ninja(path, root_gen_dir, o + 'base/sys_info.cc', + 'base/task_runner.cc', + 'base/task_scheduler/delayed_task_manager.cc', ++ 'base/task_scheduler/environment_config.cc', + 'base/task_scheduler/post_task.cc', + 'base/task_scheduler/priority_queue.cc', + 'base/task_scheduler/scheduler_lock_impl.cc', diff --git a/chromium-60.0.3112.78-gcc7.patch b/chromium-60.0.3112.78-gcc7.patch new file mode 100644 index 0000000..ae8f5c8 --- /dev/null +++ b/chromium-60.0.3112.78-gcc7.patch @@ -0,0 +1,80 @@ +diff -up chromium-60.0.3112.78/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 chromium-60.0.3112.78/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h +--- chromium-60.0.3112.78/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 2017-07-25 15:05:15.000000000 -0400 ++++ chromium-60.0.3112.78/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h 2017-07-31 10:51:08.530131802 -0400 +@@ -8,6 +8,7 @@ + #include "platform/PlatformExport.h" + #include "platform/wtf/ThreadSpecific.h" + ++#include + #include + + namespace gpu { +diff -up chromium-60.0.3112.78/v8/src/objects-body-descriptors.h.gcc7 chromium-60.0.3112.78/v8/src/objects-body-descriptors.h +--- chromium-60.0.3112.78/v8/src/objects-body-descriptors.h.gcc7 2017-07-31 10:51:08.531131782 -0400 ++++ chromium-60.0.3112.78/v8/src/objects-body-descriptors.h 2017-07-31 10:55:08.989458924 -0400 +@@ -99,7 +99,7 @@ class FixedBodyDescriptor final : public + + template + static inline void IterateBody(HeapObject* obj, int object_size) { +- IterateBody(obj); ++ IterateBody(obj); + } + + static inline int SizeOf(Map* map, HeapObject* object) { return kSize; } +diff -up chromium-60.0.3112.78/v8/src/objects/hash-table.h.gcc7 chromium-60.0.3112.78/v8/src/objects/hash-table.h +--- chromium-60.0.3112.78/v8/src/objects/hash-table.h.gcc7 2017-07-25 15:06:36.000000000 -0400 ++++ chromium-60.0.3112.78/v8/src/objects/hash-table.h 2017-07-31 10:51:08.531131782 -0400 +@@ -138,22 +138,8 @@ class HashTable : public HashTableBase { + public: + typedef Shape ShapeT; + +- // Wrapper methods +- inline uint32_t Hash(Key key) { +- if (Shape::UsesSeed) { +- return Shape::SeededHash(key, GetHeap()->HashSeed()); +- } else { +- return Shape::Hash(key); +- } +- } +- +- inline uint32_t HashForObject(Key key, Object* object) { +- if (Shape::UsesSeed) { +- return Shape::SeededHashForObject(key, GetHeap()->HashSeed(), object); +- } else { +- return Shape::HashForObject(key, object); +- } +- } ++ inline uint32_t Hash(Key key); ++ inline uint32_t HashForObject(Key key, Object* object); + + // Returns a new HashTable object. + MUST_USE_RESULT static Handle New( +diff -up chromium-60.0.3112.78/v8/src/objects-inl.h.gcc7 chromium-60.0.3112.78/v8/src/objects-inl.h +--- chromium-60.0.3112.78/v8/src/objects-inl.h.gcc7 2017-07-25 15:06:36.000000000 -0400 ++++ chromium-60.0.3112.78/v8/src/objects-inl.h 2017-07-31 10:51:08.533131742 -0400 +@@ -47,6 +47,25 @@ + namespace v8 { + namespace internal { + ++template ++uint32_t HashTable::Hash(Key key) { ++ if (Shape::UsesSeed) { ++ return Shape::SeededHash(key, GetHeap()->HashSeed()); ++ } else { ++ return Shape::Hash(key); ++ } ++} ++ ++template ++uint32_t HashTable::HashForObject(Key key, ++ Object* object) { ++ if (Shape::UsesSeed) { ++ return Shape::SeededHashForObject(key, GetHeap()->HashSeed(), object); ++ } else { ++ return Shape::HashForObject(key, object); ++ } ++} ++ + PropertyDetails::PropertyDetails(Smi* smi) { + value_ = smi->value(); + } diff --git a/chromium-60.0.3112.78-gn-system.patch b/chromium-60.0.3112.78-gn-system.patch new file mode 100644 index 0000000..60489bb --- /dev/null +++ b/chromium-60.0.3112.78-gn-system.patch @@ -0,0 +1,221 @@ +diff -up chromium-60.0.3112.78/build/linux/unbundle/libjpeg.gn.gnsystem chromium-60.0.3112.78/build/linux/unbundle/libjpeg.gn +--- chromium-60.0.3112.78/build/linux/unbundle/libjpeg.gn.gnsystem 2017-07-25 15:04:48.000000000 -0400 ++++ chromium-60.0.3112.78/build/linux/unbundle/libjpeg.gn 2017-07-31 10:38:25.879951641 -0400 +@@ -16,6 +16,10 @@ source_set("libjpeg") { + libs = [ "jpeg" ] + } + ++config("system_libjpeg") { ++ defines = [ "USE_SYSTEM_LIBJPEG=1" ] ++} ++ + source_set("simd") { + } + +diff -up chromium-60.0.3112.78/build/linux/unbundle/libusb.gn.gnsystem chromium-60.0.3112.78/build/linux/unbundle/libusb.gn +--- chromium-60.0.3112.78/build/linux/unbundle/libusb.gn.gnsystem 2017-07-31 10:38:25.880951622 -0400 ++++ chromium-60.0.3112.78/build/linux/unbundle/libusb.gn 2017-07-31 10:38:25.879951641 -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-60.0.3112.78/build/linux/unbundle/opus.gn.gnsystem chromium-60.0.3112.78/build/linux/unbundle/opus.gn +--- chromium-60.0.3112.78/build/linux/unbundle/opus.gn.gnsystem 2017-07-25 15:04:48.000000000 -0400 ++++ chromium-60.0.3112.78/build/linux/unbundle/opus.gn 2017-07-31 10:38:25.880951622 -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-60.0.3112.78/build/linux/unbundle/replace_gn_files.py.gnsystem chromium-60.0.3112.78/build/linux/unbundle/replace_gn_files.py +--- chromium-60.0.3112.78/build/linux/unbundle/replace_gn_files.py.gnsystem 2017-07-31 10:38:25.880951622 -0400 ++++ chromium-60.0.3112.78/build/linux/unbundle/replace_gn_files.py 2017-07-31 10:39:58.067159914 -0400 +@@ -26,6 +26,7 @@ REPLACEMENTS = { + 'libevent': 'base/third_party/libevent/BUILD.gn', + 'libjpeg': 'build/secondary/third_party/libjpeg_turbo/BUILD.gn', + '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-60.0.3112.78-gtk2fix.patch b/chromium-60.0.3112.78-gtk2fix.patch new file mode 100644 index 0000000..ecf042d --- /dev/null +++ b/chromium-60.0.3112.78-gtk2fix.patch @@ -0,0 +1,612 @@ +diff -up chromium-60.0.3112.78/chrome/browser/ui/libgtkui/gtk_ui.cc.gtk2fix chromium-60.0.3112.78/chrome/browser/ui/libgtkui/gtk_ui.cc +--- chromium-60.0.3112.78/chrome/browser/ui/libgtkui/gtk_ui.cc.gtk2fix 2017-08-03 10:26:36.816787227 -0400 ++++ chromium-60.0.3112.78/chrome/browser/ui/libgtkui/gtk_ui.cc 2017-08-03 10:56:53.345661368 -0400 +@@ -60,6 +60,7 @@ + #include "ui/views/controls/button/blue_button.h" + #include "ui/views/controls/button/label_button.h" + #include "ui/views/controls/button/label_button_border.h" ++#include "ui/views/linux_ui/device_scale_factor_observer.h" + #include "ui/views/linux_ui/window_button_order_observer.h" + #include "ui/views/resources/grit/views_resources.h" + +@@ -315,17 +316,6 @@ gfx::FontRenderParams GetGtkFontRenderPa + return params; + } + +-float GetRawDeviceScaleFactor() { +- if (display::Display::HasForceDeviceScaleFactor()) +- return display::Display::GetForcedDeviceScaleFactor(); +- +- GdkScreen* screen = gdk_screen_get_default(); +- gint scale = gdk_screen_get_monitor_scale_factor( +- screen, gdk_screen_get_primary_monitor(screen)); +- gdouble resolution = gdk_screen_get_resolution(screen); +- return resolution <= 0 ? scale : resolution * scale / kDefaultDPI; +-} +- + views::LinuxUI::NonClientMiddleClickAction GetDefaultMiddleClickAction() { + std::unique_ptr env(base::Environment::Create()); + switch (base::nix::GetDesktopEnvironment(env.get())) { +@@ -414,19 +404,17 @@ GtkUi::GtkUi() : middle_click_action_(Ge + #if GTK_MAJOR_VERSION == 2 + native_theme_ = NativeThemeGtk2::instance(); + fake_window_ = chrome_gtk_frame_new(); +- gtk_widget_realize(fake_window_); // Is this necessary? + #elif GTK_MAJOR_VERSION == 3 + native_theme_ = NativeThemeGtk3::instance(); +- (void)fake_window_; // Silence the unused warning. ++ fake_window_ = gtk_window_new(GTK_WINDOW_TOPLEVEL); + #else + #error "Unsupported GTK version" + #endif ++ gtk_widget_realize(fake_window_); + } + + GtkUi::~GtkUi() { +-#if GTK_MAJOR_VERSION == 2 + gtk_widget_destroy(fake_window_); +-#endif + } + + void OnThemeChanged(GObject* obj, GParamSpec* param, GtkUi* gtkui) { +@@ -440,6 +428,17 @@ void GtkUi::Initialize() { + g_signal_connect_after(settings, "notify::gtk-icon-theme-name", + G_CALLBACK(OnThemeChanged), this); + ++ GdkScreen* screen = gdk_screen_get_default(); ++ // Listen for DPI changes. ++ g_signal_connect_after(screen, "notify::resolution", ++ G_CALLBACK(OnDeviceScaleFactorMaybeChangedThunk), ++ this); ++ // Listen for scale factor changes. We would prefer to listen on ++ // |screen|, but there is no scale-factor property, so use an ++ // unmapped window instead. ++ g_signal_connect(fake_window_, "notify::scale-factor", ++ G_CALLBACK(OnDeviceScaleFactorMaybeChangedThunk), this); ++ + LoadGtkValues(); + + #if BUILDFLAG(ENABLE_BASIC_PRINTING) +@@ -701,12 +700,12 @@ void GtkUi::AddWindowButtonOrderObserver + observer->OnWindowButtonOrderingChange(leading_buttons_, trailing_buttons_); + } + +- observer_list_.AddObserver(observer); ++ window_button_order_observer_list_.AddObserver(observer); + } + + void GtkUi::RemoveWindowButtonOrderObserver( + views::WindowButtonOrderObserver* observer) { +- observer_list_.RemoveObserver(observer); ++ window_button_order_observer_list_.RemoveObserver(observer); + } + + void GtkUi::SetWindowButtonOrdering( +@@ -715,8 +714,10 @@ void GtkUi::SetWindowButtonOrdering( + leading_buttons_ = leading_buttons; + trailing_buttons_ = trailing_buttons; + +- for (views::WindowButtonOrderObserver& observer : observer_list_) ++ for (views::WindowButtonOrderObserver& observer : ++ window_button_order_observer_list_) { + observer.OnWindowButtonOrderingChange(leading_buttons_, trailing_buttons_); ++ } + } + + void GtkUi::SetNonClientMiddleClickAction(NonClientMiddleClickAction action) { +@@ -768,6 +769,16 @@ void GtkUi::NotifyWindowManagerStartupCo + gdk_notify_startup_complete(); + } + ++void GtkUi::AddDeviceScaleFactorObserver( ++ views::DeviceScaleFactorObserver* observer) { ++ device_scale_factor_observer_list_.AddObserver(observer); ++} ++ ++void GtkUi::RemoveDeviceScaleFactorObserver( ++ views::DeviceScaleFactorObserver* observer) { ++ device_scale_factor_observer_list_.RemoveObserver(observer); ++} ++ + bool GtkUi::MatchEvent(const ui::Event& event, + std::vector* commands) { + // Ensure that we have a keyboard handler. +@@ -777,6 +788,10 @@ bool GtkUi::MatchEvent(const ui::Event& + return key_bindings_handler_->MatchEvent(event, commands); + } + ++void GtkUi::OnDeviceScaleFactorMaybeChanged(void*, GParamSpec*) { ++ UpdateDeviceScaleFactor(); ++} ++ + void GtkUi::SetScrollbarColors() { + thumb_active_color_ = SkColorSetRGB(244, 244, 244); + thumb_inactive_color_ = SkColorSetRGB(234, 234, 234); +@@ -1037,14 +1052,38 @@ void GtkUi::ResetStyle() { + native_theme_->NotifyObservers(); + } + +-void GtkUi::UpdateDeviceScaleFactor() { +- // Note: Linux chrome currently does not support dynamic DPI +- // changes. This is to allow flags to override the DPI settings +- // during startup. +- float scale = GetRawDeviceScaleFactor(); ++float GtkUi::GetRawDeviceScaleFactor() { ++ if (display::Display::HasForceDeviceScaleFactor()) ++ return display::Display::GetForcedDeviceScaleFactor(); ++ ++#if GTK_MAJOR_VERSION == 2 ++ GtkSettings* gtk_settings = gtk_settings_get_default(); ++ gint gtk_dpi = -1; ++ g_object_get(gtk_settings, "gtk-xft-dpi", >k_dpi, nullptr); ++ const float scale_factor = gtk_dpi / (1024 * kDefaultDPI); ++#else ++ GdkScreen* screen = gdk_screen_get_default(); ++ gint scale = gtk_widget_get_scale_factor(fake_window_); ++ DCHECK_GT(scale, 0); ++ gdouble resolution = gdk_screen_get_resolution(screen); ++ const float scale_factor = ++ resolution <= 0 ? scale : resolution * scale / kDefaultDPI; ++#endif ++ + // Blacklist scaling factors <120% (crbug.com/484400) and round + // to 1 decimal to prevent rendering problems (crbug.com/485183). +- device_scale_factor_ = scale < 1.2f ? 1.0f : roundf(scale * 10) / 10; ++ return scale_factor < 1.2f ? 1.0f : roundf(scale_factor * 10) / 10; ++} ++ ++void GtkUi::UpdateDeviceScaleFactor() { ++ float old_device_scale_factor = device_scale_factor_; ++ device_scale_factor_ = GetRawDeviceScaleFactor(); ++ if (device_scale_factor_ != old_device_scale_factor) { ++ for (views::DeviceScaleFactorObserver& observer : ++ device_scale_factor_observer_list_) { ++ observer.OnDeviceScaleFactorChanged(); ++ } ++ } + UpdateDefaultFont(); + } + +diff -up chromium-60.0.3112.78/chrome/browser/ui/libgtkui/gtk_ui.h.gtk2fix chromium-60.0.3112.78/chrome/browser/ui/libgtkui/gtk_ui.h +--- chromium-60.0.3112.78/chrome/browser/ui/libgtkui/gtk_ui.h.gtk2fix 2017-08-03 10:35:28.031517634 -0400 ++++ chromium-60.0.3112.78/chrome/browser/ui/libgtkui/gtk_ui.h 2017-08-03 10:37:29.300173415 -0400 +@@ -18,12 +18,14 @@ + #include "ui/views/linux_ui/linux_ui.h" + #include "ui/views/window/frame_buttons.h" + ++typedef struct _GParamSpec GParamSpec; + typedef struct _GtkStyle GtkStyle; + typedef struct _GtkWidget GtkWidget; + + namespace libgtkui { + class Gtk2KeyBindingsHandler; + class GConfListener; ++class DeviceScaleFactorObserver; + + // Interface to GTK2 desktop features. + // +@@ -97,6 +99,10 @@ class GtkUi : public views::LinuxUI { + bool UnityIsRunning() override; + NonClientMiddleClickAction GetNonClientMiddleClickAction() override; + void NotifyWindowManagerStartupComplete() override; ++ void AddDeviceScaleFactorObserver( ++ views::DeviceScaleFactorObserver* observer) override; ++ void RemoveDeviceScaleFactorObserver( ++ views::DeviceScaleFactorObserver* observer) override; + + // ui::TextEditKeybindingDelegate: + bool MatchEvent(const ui::Event& event, +@@ -110,6 +116,12 @@ class GtkUi : public views::LinuxUI { + typedef std::map ColorMap; + typedef std::map TintMap; + ++ CHROMEG_CALLBACK_1(GtkUi, ++ void, ++ OnDeviceScaleFactorMaybeChanged, ++ void*, ++ GParamSpec*); ++ + // This method returns the colors webkit will use for the scrollbars. When no + // colors are specified by the GTK+ theme, this function averages of the + // thumb part and of the track colors. +@@ -129,9 +141,12 @@ class GtkUi : public views::LinuxUI { + bool GetChromeStyleColor(const char* sytle_property, + SkColor* ret_color) const; + ++ float GetRawDeviceScaleFactor(); ++ + ui::NativeTheme* native_theme_; + +- // A GtkWindow object with the class "ChromeGtkFrame". ++ // On Gtk2, A GtkWindow object with the class "ChromeGtkFrame". On ++ // Gtk3, a regular GtkWindow. + GtkWidget* fake_window_; + + // Colors calculated by LoadGtkValues() that are given to the +@@ -171,7 +186,12 @@ class GtkUi : public views::LinuxUI { + std::unique_ptr key_bindings_handler_; + + // Objects to notify when the window frame button order changes. +- base::ObserverList observer_list_; ++ base::ObserverList ++ window_button_order_observer_list_; ++ ++ // Objects to notify when the device scale factor changes. ++ base::ObserverList ++ device_scale_factor_observer_list_; + + // Whether we should lower the window on a middle click to the non client + // area. +diff -up chromium-60.0.3112.78/ui/views/linux_ui/device_scale_factor_observer.h.gtk2fix chromium-60.0.3112.78/ui/views/linux_ui/device_scale_factor_observer.h +--- chromium-60.0.3112.78/ui/views/linux_ui/device_scale_factor_observer.h.gtk2fix 2017-08-03 10:39:23.600963296 -0400 ++++ chromium-60.0.3112.78/ui/views/linux_ui/device_scale_factor_observer.h 2017-08-03 10:39:39.024664885 -0400 +@@ -0,0 +1,19 @@ ++// 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. ++ ++#ifndef UI_VIEWS_LINUX_UI_DEVICE_SCALE_FACTOR_OBSERVER_H_ ++#define UI_VIEWS_LINUX_UI_DEVICE_SCALE_FACTOR_OBSERVER_H_ ++ ++namespace views { ++ ++class DeviceScaleFactorObserver { ++ public: ++ virtual ~DeviceScaleFactorObserver() {} ++ ++ virtual void OnDeviceScaleFactorChanged() = 0; ++}; ++ ++} // namespace views ++ ++#endif // UI_VIEWS_LINUX_UI_DEVICE_SCALE_FACTOR_OBSERVER_H_ +diff -up chromium-60.0.3112.78/ui/views/linux_ui/linux_ui.h.gtk2fix chromium-60.0.3112.78/ui/views/linux_ui/linux_ui.h +--- chromium-60.0.3112.78/ui/views/linux_ui/linux_ui.h.gtk2fix 2017-08-03 10:39:48.866474799 -0400 ++++ chromium-60.0.3112.78/ui/views/linux_ui/linux_ui.h 2017-08-03 10:41:05.598991893 -0400 +@@ -38,6 +38,7 @@ class NativeTheme; + + namespace views { + class Border; ++class DeviceScaleFactorObserver; + class LabelButton; + class LabelButtonBorder; + class WindowButtonOrderObserver; +@@ -157,6 +158,16 @@ class VIEWS_EXPORT LinuxUI : public ui:: + + // Determines the device scale factor of the primary screen. + virtual float GetDeviceScaleFactor() const = 0; ++ ++ // Registers |observer| to be notified about changes to the device ++ // scale factor. ++ virtual void AddDeviceScaleFactorObserver( ++ DeviceScaleFactorObserver* observer) = 0; ++ ++ // Unregisters |observer| from receiving changes to the device scale ++ // factor. ++ virtual void RemoveDeviceScaleFactorObserver( ++ DeviceScaleFactorObserver* observer) = 0; + }; + + } // namespace views +diff -up chromium-60.0.3112.78/ui/views/test/desktop_screen_x11_test_api.cc.gtk2fix chromium-60.0.3112.78/ui/views/test/desktop_screen_x11_test_api.cc +--- chromium-60.0.3112.78/ui/views/test/desktop_screen_x11_test_api.cc.gtk2fix 2017-08-03 10:41:28.014558483 -0400 ++++ chromium-60.0.3112.78/ui/views/test/desktop_screen_x11_test_api.cc 2017-08-03 10:41:49.326146074 -0400 +@@ -13,7 +13,7 @@ namespace test { + void DesktopScreenX11TestApi::UpdateDisplays() { + DesktopScreenX11* screen = + static_cast(display::Screen::GetScreen()); +- screen->ConfigureTimerFired(); ++ screen->UpdateDisplays(); + } + + } // namespace test +diff -up chromium-60.0.3112.78/ui/views/widget/desktop_aura/desktop_screen_x11.cc.gtk2fix chromium-60.0.3112.78/ui/views/widget/desktop_aura/desktop_screen_x11.cc +--- chromium-60.0.3112.78/ui/views/widget/desktop_aura/desktop_screen_x11.cc.gtk2fix 2017-08-03 10:41:59.219954866 -0400 ++++ chromium-60.0.3112.78/ui/views/widget/desktop_aura/desktop_screen_x11.cc 2017-08-03 10:47:16.589818323 -0400 +@@ -11,6 +11,7 @@ + #undef RootWindow + + #include "base/logging.h" ++#include "base/threading/thread_task_runner_handle.h" + #include "base/trace_event/trace_event.h" + #include "ui/aura/window.h" + #include "ui/aura/window_event_dispatcher.h" +@@ -40,10 +41,6 @@ const char* const kAtomsToCache[] = { + nullptr + }; + +-// The delay to perform configuration after RRNotify. See the comment +-// in |Dispatch()|. +-const int64_t kConfigureDelayMs = 500; +- + double GetDeviceScaleFactor() { + float device_scale_factor = 1.0f; + if (views::LinuxUI::instance()) { +@@ -95,7 +92,10 @@ DesktopScreenX11::DesktopScreenX11() + has_xrandr_(false), + xrandr_event_base_(0), + primary_display_index_(0), ++ weak_factory_(this), + atom_cache_(xdisplay_, kAtomsToCache) { ++ if (views::LinuxUI::instance()) ++ views::LinuxUI::instance()->AddDeviceScaleFactorObserver(this); + // We only support 1.3+. There were library changes before this and we should + // use the new interface instead of the 1.2 one. + int randr_version_major = 0; +@@ -124,6 +124,8 @@ DesktopScreenX11::DesktopScreenX11() + } + + DesktopScreenX11::~DesktopScreenX11() { ++ if (views::LinuxUI::instance()) ++ views::LinuxUI::instance()->AddDeviceScaleFactorObserver(this); + if (has_xrandr_ && ui::PlatformEventSource::GetInstance()) + ui::PlatformEventSource::GetInstance()->RemovePlatformEventDispatcher(this); + } +@@ -251,18 +253,7 @@ uint32_t DesktopScreenX11::DispatchEvent + } else if (event->type - xrandr_event_base_ == RRNotify || + (event->type == PropertyNotify && + event->xproperty.atom == atom_cache_.GetAtom("_NET_WORKAREA"))) { +- // There's some sort of observer dispatch going on here, but I don't think +- // it's the screen's? +- if (configure_timer_.get() && configure_timer_->IsRunning()) { +- configure_timer_->Reset(); +- } else { +- configure_timer_.reset(new base::OneShotTimer()); +- configure_timer_->Start( +- FROM_HERE, +- base::TimeDelta::FromMilliseconds(kConfigureDelayMs), +- this, +- &DesktopScreenX11::ConfigureTimerFired); +- } ++ RestartDelayedConfigurationTask(); + } else { + NOTREACHED(); + } +@@ -270,11 +261,15 @@ uint32_t DesktopScreenX11::DispatchEvent + return ui::POST_DISPATCH_NONE; + } + ++void DesktopScreenX11::OnDeviceScaleFactorChanged() { ++ RestartDelayedConfigurationTask(); ++} ++ + // static + void DesktopScreenX11::UpdateDeviceScaleFactorForTest() { + DesktopScreenX11* screen = + static_cast(display::Screen::GetScreen()); +- screen->ConfigureTimerFired(); ++ screen->UpdateDisplays(); + } + + //////////////////////////////////////////////////////////////////////////////// +@@ -288,7 +283,11 @@ DesktopScreenX11::DesktopScreenX11( + xrandr_event_base_(0), + displays_(test_displays), + primary_display_index_(0), +- atom_cache_(xdisplay_, kAtomsToCache) {} ++ weak_factory_(this), ++ atom_cache_(xdisplay_, kAtomsToCache) { ++ if (views::LinuxUI::instance()) ++ views::LinuxUI::instance()->AddDeviceScaleFactorObserver(this); ++} + + std::vector DesktopScreenX11::BuildDisplaysFromXRandRInfo() { + std::vector displays; +@@ -390,7 +389,14 @@ std::vector DesktopScr + return displays; + } + +-void DesktopScreenX11::ConfigureTimerFired() { ++void DesktopScreenX11::RestartDelayedConfigurationTask() { ++ delayed_configuration_task_.Reset(base::Bind( ++ &DesktopScreenX11::UpdateDisplays, weak_factory_.GetWeakPtr())); ++ base::ThreadTaskRunnerHandle::Get()->PostTask( ++ FROM_HERE, delayed_configuration_task_.callback()); ++} ++ ++void DesktopScreenX11::UpdateDisplays() { + std::vector old_displays = displays_; + SetDisplaysInternal(BuildDisplaysFromXRandRInfo()); + change_notifier_.NotifyDisplaysChanged(old_displays, displays_); +diff -up chromium-60.0.3112.78/ui/views/widget/desktop_aura/desktop_screen_x11.h.gtk2fix chromium-60.0.3112.78/ui/views/widget/desktop_aura/desktop_screen_x11.h +--- chromium-60.0.3112.78/ui/views/widget/desktop_aura/desktop_screen_x11.h.gtk2fix 2017-08-03 10:47:28.734583288 -0400 ++++ chromium-60.0.3112.78/ui/views/widget/desktop_aura/desktop_screen_x11.h 2017-08-03 10:49:54.850756813 -0400 +@@ -9,11 +9,12 @@ + + #include + ++#include "base/cancelable_callback.h" + #include "base/macros.h" +-#include "base/timer/timer.h" + #include "ui/display/display_change_notifier.h" + #include "ui/display/screen.h" + #include "ui/events/platform/platform_event_dispatcher.h" ++#include "ui/views/linux_ui/device_scale_factor_observer.h" + #include "ui/gfx/x/x11_atom_cache.h" + #include "ui/views/views_export.h" + +@@ -30,7 +31,8 @@ class DesktopScreenX11TestApi; + + // Our singleton screen implementation that talks to xrandr. + class VIEWS_EXPORT DesktopScreenX11 : public display::Screen, +- public ui::PlatformEventDispatcher { ++ public ui::PlatformEventDispatcher, ++ public views::DeviceScaleFactorObserver { + public: + DesktopScreenX11(); + +@@ -56,6 +58,9 @@ class VIEWS_EXPORT DesktopScreenX11 : pu + bool CanDispatchEvent(const ui::PlatformEvent& event) override; + uint32_t DispatchEvent(const ui::PlatformEvent& event) override; + ++ // views::DeviceScaleFactorObserver: ++ void OnDeviceScaleFactorChanged() override; ++ + static void UpdateDeviceScaleFactorForTest(); + + private: +@@ -69,10 +74,15 @@ class VIEWS_EXPORT DesktopScreenX11 : pu + // the X server. + std::vector BuildDisplaysFromXRandRInfo(); + +- // We delay updating the display so we can coalesce events. +- void ConfigureTimerFired(); ++ // Removes |delayed_configuration_task_| from the task queue (if ++ // it's in the queue) and adds it back at the end of the queue. ++ void RestartDelayedConfigurationTask(); ++ ++ // Updates |displays_| with the latest XRandR info. ++ void UpdateDisplays(); + +- // Updates |displays_| and sets FontRenderParams's scale factor. ++ // Updates |displays_| from |displays| and sets FontRenderParams's scale ++ // factor. + void SetDisplaysInternal(const std::vector& displays); + + Display* xdisplay_; +@@ -91,12 +101,14 @@ class VIEWS_EXPORT DesktopScreenX11 : pu + // The index into displays_ that represents the primary display. + size_t primary_display_index_; + +- // The timer to delay configuring outputs. See also the comments in +- // Dispatch(). +- std::unique_ptr configure_timer_; ++ // The task to delay configuring outputs. We delay updating the ++ // display so we can coalesce events. ++ base::CancelableCallback delayed_configuration_task_; + + display::DisplayChangeNotifier change_notifier_; + ++ base::WeakPtrFactory weak_factory_; ++ + ui::X11AtomCache atom_cache_; + + DISALLOW_COPY_AND_ASSIGN(DesktopScreenX11); +diff -up chromium-60.0.3112.78/ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc.gtk2fix chromium-60.0.3112.78/ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc +--- chromium-60.0.3112.78/ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc.gtk2fix 2017-08-03 10:50:14.858370042 -0400 ++++ chromium-60.0.3112.78/ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc 2017-08-03 10:52:58.367207187 -0400 +@@ -212,13 +212,16 @@ DesktopWindowTreeHostX11::DesktopWindowT + has_pointer_focus_(false), + modal_dialog_counter_(0), + close_widget_factory_(this), +- weak_factory_(this) {} ++ weak_factory_(this) { ++ display::Screen::GetScreen()->AddObserver(this); ++} + + DesktopWindowTreeHostX11::~DesktopWindowTreeHostX11() { + window()->ClearProperty(kHostForRootWindow); + aura::client::SetWindowMoveClient(window(), NULL); + desktop_native_widget_aura_->OnDesktopWindowTreeHostDestroyed(this); + DestroyDispatcher(); ++ display::Screen::GetScreen()->RemoveObserver(this); + } + + // static +@@ -1360,6 +1363,30 @@ void DesktopWindowTreeHostX11::OnCursorV + } + + //////////////////////////////////////////////////////////////////////////////// ++// DesktopWindowTreeHostX11, display::DisplayObserver implementation: ++ ++void DesktopWindowTreeHostX11::OnDisplayAdded( ++ const display::Display& new_display) {} ++ ++void DesktopWindowTreeHostX11::OnDisplayRemoved( ++ const display::Display& old_display) {} ++ ++void DesktopWindowTreeHostX11::OnDisplayMetricsChanged( ++ const display::Display& display, ++ uint32_t changed_metrics) { ++ if ((changed_metrics & DISPLAY_METRIC_DEVICE_SCALE_FACTOR) && ++ display::Screen::GetScreen()->GetDisplayNearestWindow(window()).id() == ++ display.id()) { ++ // When the scale factor changes, also pretend that a resize ++ // occured so that the window layout will be refreshed and a ++ // compositor redraw will be scheduled. This is weird, but works. ++ // TODO(thomasanderson): Figure out a more direct way of doing ++ // this. ++ RestartDelayedResizeTask(); ++ } ++} ++ ++//////////////////////////////////////////////////////////////////////////////// + // DesktopWindowTreeHostX11, private: + + void DesktopWindowTreeHostX11::InitX11Window( +@@ -2079,13 +2106,8 @@ uint32_t DesktopWindowTreeHostX11::Dispa + if (origin_changed) + OnHostMovedInPixels(bounds_in_pixels_.origin()); + +- if (size_changed) { +- delayed_resize_task_.Reset(base::Bind( +- &DesktopWindowTreeHostX11::DelayedResize, +- close_widget_factory_.GetWeakPtr(), bounds_in_pixels.size())); +- base::ThreadTaskRunnerHandle::Get()->PostTask( +- FROM_HERE, delayed_resize_task_.callback()); +- } ++ if (size_changed) ++ RestartDelayedResizeTask(); + break; + } + case GenericEvent: { +@@ -2358,6 +2380,14 @@ void DesktopWindowTreeHostX11::EnableEve + targeter_for_modal_.reset(); + } + ++void DesktopWindowTreeHostX11::RestartDelayedResizeTask() { ++ delayed_resize_task_.Reset( ++ base::Bind(&DesktopWindowTreeHostX11::DelayedResize, ++ close_widget_factory_.GetWeakPtr(), bounds_in_pixels_.size())); ++ base::ThreadTaskRunnerHandle::Get()->PostTask( ++ FROM_HERE, delayed_resize_task_.callback()); ++} ++ + //////////////////////////////////////////////////////////////////////////////// + // DesktopWindowTreeHost, public: + +diff -up chromium-60.0.3112.78/ui/views/widget/desktop_aura/desktop_window_tree_host_x11.h.gtk2fix chromium-60.0.3112.78/ui/views/widget/desktop_aura/desktop_window_tree_host_x11.h +--- chromium-60.0.3112.78/ui/views/widget/desktop_aura/desktop_window_tree_host_x11.h.gtk2fix 2017-08-03 10:54:34.484348046 -0400 ++++ chromium-60.0.3112.78/ui/views/widget/desktop_aura/desktop_window_tree_host_x11.h 2017-08-03 10:54:43.564172318 -0400 +@@ -18,6 +18,7 @@ + #include "ui/aura/scoped_window_targeter.h" + #include "ui/aura/window_tree_host.h" + #include "ui/base/cursor/cursor_loader_x11.h" ++#include "ui/display/display_observer.h" + #include "ui/events/platform/platform_event_dispatcher.h" + #include "ui/gfx/geometry/insets.h" + #include "ui/gfx/geometry/rect.h" +@@ -45,7 +46,8 @@ class X11DesktopWindowMoveClient; + class VIEWS_EXPORT DesktopWindowTreeHostX11 + : public DesktopWindowTreeHost, + public aura::WindowTreeHost, +- public ui::PlatformEventDispatcher { ++ public ui::PlatformEventDispatcher, ++ public display::DisplayObserver { + public: + DesktopWindowTreeHostX11( + internal::NativeWidgetDelegate* native_widget_delegate, +@@ -170,6 +172,12 @@ class VIEWS_EXPORT DesktopWindowTreeHost + const gfx::Point& location_in_pixels) override; + void OnCursorVisibilityChangedNative(bool show) override; + ++ // Overridden from display::DisplayObserver: ++ void OnDisplayAdded(const display::Display& new_display) override; ++ void OnDisplayRemoved(const display::Display& old_display) override; ++ void OnDisplayMetricsChanged(const display::Display& display, ++ uint32_t changed_metrics) override; ++ + private: + friend class DesktopWindowTreeHostX11HighDPITest; + // Initializes our X11 surface to draw on. This method performs all +@@ -278,6 +286,10 @@ class VIEWS_EXPORT DesktopWindowTreeHost + // Enables event listening after closing |dialog|. + void EnableEventListening(); + ++ // Removes |delayed_resize_task_| from the task queue (if it's in ++ // the queue) and adds it back at the end of the queue. ++ void RestartDelayedResizeTask(); ++ + // X11 things + // The display and the native X window hosting the root window. + XDisplay* xdisplay_; diff --git a/chromium-60.0.3112.78-jpeg-nomangle.patch b/chromium-60.0.3112.78-jpeg-nomangle.patch new file mode 100644 index 0000000..0b758a4 --- /dev/null +++ b/chromium-60.0.3112.78-jpeg-nomangle.patch @@ -0,0 +1,14 @@ +diff -up chromium-60.0.3112.78/third_party/libjpeg_turbo/jpeglib.h.nomangle chromium-60.0.3112.78/third_party/libjpeg_turbo/jpeglib.h +--- chromium-60.0.3112.78/third_party/libjpeg_turbo/jpeglib.h.nomangle 2017-08-01 15:29:00.870759406 -0400 ++++ chromium-60.0.3112.78/third_party/libjpeg_turbo/jpeglib.h 2017-08-01 15:29:09.326593414 -0400 +@@ -18,10 +18,6 @@ + #ifndef JPEGLIB_H + #define JPEGLIB_H + +-/* Begin chromium edits */ +-#include "jpeglibmangler.h" +-/* End chromium edits */ +- + /* + * First we include the configuration files that record how this + * installation of the JPEG library is set up. jconfig.h can be diff --git a/chromium-60.0.3112.78-last-commit-position.patch b/chromium-60.0.3112.78-last-commit-position.patch new file mode 100644 index 0000000..7c26d9f --- /dev/null +++ b/chromium-60.0.3112.78-last-commit-position.patch @@ -0,0 +1,28 @@ +diff -up chromium-60.0.3112.78/tools/gn/BUILD.gn.lastcommit chromium-60.0.3112.78/tools/gn/BUILD.gn +--- chromium-60.0.3112.78/tools/gn/BUILD.gn.lastcommit 2017-07-31 10:42:38.568041044 -0400 ++++ chromium-60.0.3112.78/tools/gn/BUILD.gn 2017-07-31 10:47:50.760974587 -0400 +@@ -268,7 +268,6 @@ executable("gn") { + + deps = [ + ":gn_lib", +- ":last_commit_position", + "//base", + "//build/config:exe_and_shlib_deps", + "//build/win:default_exe_manifest", +diff -up chromium-60.0.3112.78/tools/gn/gn_main.cc.lastcommit chromium-60.0.3112.78/tools/gn/gn_main.cc +--- chromium-60.0.3112.78/tools/gn/gn_main.cc.lastcommit 2017-07-25 15:05:19.000000000 -0400 ++++ chromium-60.0.3112.78/tools/gn/gn_main.cc 2017-07-31 10:42:38.568041044 -0400 +@@ -12,13 +12,7 @@ + #include "tools/gn/standard_out.h" + #include "tools/gn/switches.h" + +-// Only the GN-generated build makes this header for now. +-// TODO(brettw) consider adding this if we need it in GYP. +-#if defined(GN_BUILD) +-#include "tools/gn/last_commit_position.h" +-#else + #define LAST_COMMIT_POSITION "UNKNOWN" +-#endif + + namespace { + diff --git a/chromium-60.0.3112.78-no-libpng-prefix.patch b/chromium-60.0.3112.78-no-libpng-prefix.patch new file mode 100644 index 0000000..0dbdcf9 --- /dev/null +++ b/chromium-60.0.3112.78-no-libpng-prefix.patch @@ -0,0 +1,17 @@ +diff -up chromium-60.0.3112.78/third_party/libpng/pnglibconf.h.noprefix chromium-60.0.3112.78/third_party/libpng/pnglibconf.h +--- chromium-60.0.3112.78/third_party/libpng/pnglibconf.h.noprefix 2017-08-01 14:42:54.321986758 -0400 ++++ chromium-60.0.3112.78/third_party/libpng/pnglibconf.h 2017-08-01 14:43:01.493845832 -0400 +@@ -225,13 +225,4 @@ + #define PNG_USER_CHUNK_MALLOC_MAX 4000000L + /* end of chromium settings */ + +-/* chromium prefixing */ +-/* +- * This is necessary to build multiple copies of libpng. We need this while pdfium builds +- * its own copy of libpng. +- */ +-#define PNG_PREFIX +-#include "pngprefix.h" +-/* end of chromium prefixing */ +- + #endif /* PNGLCONF_H */ diff --git a/chromium-60.0.3112.78-no-zlib-mangle.patch b/chromium-60.0.3112.78-no-zlib-mangle.patch new file mode 100644 index 0000000..4b90360 --- /dev/null +++ b/chromium-60.0.3112.78-no-zlib-mangle.patch @@ -0,0 +1,13 @@ +diff -up chromium-60.0.3112.78/third_party/zlib/zconf.h.nozmangle chromium-60.0.3112.78/third_party/zlib/zconf.h +--- chromium-60.0.3112.78/third_party/zlib/zconf.h.nozmangle 2017-08-04 10:45:17.509152089 -0400 ++++ chromium-60.0.3112.78/third_party/zlib/zconf.h 2017-08-04 10:45:30.451902380 -0400 +@@ -8,9 +8,6 @@ + #ifndef ZCONF_H + #define ZCONF_H + +-/* This include does prefixing as below, but with an updated set of names */ +-#include "names.h" +- + /* + * If you *really* need a unique prefix for all types and library functions, + * compile with -DZ_PREFIX. The "standard" zlib should be compiled without it. diff --git a/chromium.spec b/chromium.spec index e5043e4..5ec59ba 100644 --- a/chromium.spec +++ b/chromium.spec @@ -8,6 +8,7 @@ # Leave this alone, please. %global target out/Release +%global headlesstarget out/Headless # Debuginfo packages aren't very useful here. If you need to debug # you should do a proper debug build (not implemented in this spec yet) @@ -25,7 +26,7 @@ # Requires is trickier. %global __provides_exclude_from %{chromium_path}/.*\\.so|%{chromium_path}/lib/.*\\.so -%global privlibs libEGL|libGLESv2|libaccessibility|libanimation|libaura|libaura_extra|libbase|libbase_i18n|libbindings|libblink_core|libblink_modules|libblink_platform|libblink_web|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcc|libcc_animation|libcc_base|libcc_blink|libcc_debug|libcc_ipc|libcc_paint|libcc_surfaces|libchromium_sqlite3|libclearkeycdm|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent|libcpp|libcrcrypto|libdbus|libdevice_base|libdevice_battery|libdevice_event_log|libdevice_gamepad|libdevice_vibration|libdevice_vr|libdevices|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_compositor|libdisplay_types|libdisplay_util|libdomain_reliability|libembedder|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libffmpeg|libfingerprint|libgcm|libgeneric_sensor|libgeolocation|libgeometry|libgeometry_skia|libgesture_detection|libgfx|libgfx_ipc|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_x11|libgin|libgin_features|libgl_in_process_context|libgl_init|libgl_wrapper|libgles2_c_lib|libgles2_implementation|libgles2_utils|libgpu|libgtk2ui|libicui18n|libicuuc|libipc|libjs|libkeyboard|libkeyboard_with_content|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libmanager|libmedia|libmedia_blink|libmedia_gpu|libmedia_mojo_services|libmessage_center|libmidi|libmojo_common_lib|libmojo_ime_lib|libmojo_public_system|libmojo_public_system_cpp|libmojo_system_impl|libnative_theme|libnet|libnet_with_v8|libonc|libosmesa|libplatform|libplatform_wtf|libpolicy_component|libpolicy_proto|libpower_save_blocker|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_globals|libproxy_config|librange|libsandbox_services|libseccomp_bpf|libsensors|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libui_base|libui_base_ime|libui_base_x|libui_data_pack|libui_touch_selection|libui_views_mus_lib|liburl|liburl_ipc|liburl_matcher|libuser_manager|libuser_prefs|libv8|libv8_libbase|libv8_libplatform|libviews|libweb_dialogs|libwebdata_common|libwebview|libwidevinecdm|libwidevinecdmadapter|libwm|libwtf|libx11_events_platform|libx11_window +%global privlibs libaccessibility|libanimation|libaura_extra|libaura|libbase_i18n|libbase|libbindings|libblink_android_mojo_bindings_shared|libblink_core|libblink_modules|libblink_mojo_bindings_shared|libblink_offscreen_canvas_mojo_bindings_shared|libblink_platform|libblink_web|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcc_animation|libcc_base|libcc_blink|libcc_debug|libcc_ipc|libcc_paint|libcc|libcc_surfaces|libcdm_manager|libchromium_sqlite3|libclearkeycdm|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent_common_mojo_bindings_shared|libcontent|libcpp|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_gamepad|libdevices|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevice_vr_mojo_bindings|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay_compositor|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libembedder|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents|libevents_x|libffmpeg|libfingerprint|libframe_sinks|libgcm|libgeneric_sensor_public_interfaces_shared|libgeneric_sensor|libgeolocation|libgeometry_skia|libgeometry|libgesture_detection|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_x11|libgin_features|libgin|libgles2_c_lib|libgles2_implementation|libgles2_utils|libGLESv2|libgl_init|libgl_in_process_context|libgl_wrapper|libgpu|libgtk2ui|libheadless|libicui18n|libicuuc|libipc_mojom_shared|libipc_mojom|libipc|libjs|libkeyboard|libkeyboard_with_content|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libmanager|libmedia_blink|libmedia_gpu|libmedia_mojo_services|libmedia|libmessage_center|libmidi|libmirclient.9|libmojo_common_lib|libmojo_ime_lib|libmojo_public_system_cpp|libmojo_public_system|libmojo_system_impl|libnative_theme|libnet|libnet_with_v8|libonc|libosmesa|libplatform|libpolicy_component|libpolicy_proto|libpower_save_blocker|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libresource_coordinator_cpp|libresource_coordinator_public_interfaces_internal_shared|libsandbox_services|libseccomp_bpf|libsensors|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom_blink|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_constants|libservice_manager_mojom_shared|libservice_manager_mojom|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libuser_manager|libuser_prefs|libv8_libbase|libv8_libplatform|libv8|libviews|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_swapchain|libVkLayer_threading|libVkLayer_unique_objects|libwebdata_common|libweb_dialogs|libwebview|libwidevinecdmadapter|libwidevinecdm|libwm|libwtf|libx11_events_platform|libx11_window %global __requires_exclude ^(%{privlibs})\\.so # Try to not use the Xvfb as it is slow.. @@ -40,14 +41,8 @@ # https://www.chromium.org/developers/testing/addresssanitizer %global asan 0 -# Only flip this on if stuff is really broken re: nacl. -# chromium-native_client doesn't build on Fedora 23 because -# clang is too old and buggy. -%if 0%{?fedora} <= 23 +# nacl/pnacl are soon to be dead. We're just killing them off early. %global killnacl 1 -%else -%global killnacl 0 -%endif %if 0%{?killnacl} %global nacl 0 @@ -111,11 +106,15 @@ BuildRequires: libicu-devel >= 5.4 %global default_client_secret miEreAep8nuvTdvLums6qyLK %global chromoting_client_id 449907151817-8vnlfih032ni8c4jjps9int9t86k546t.apps.googleusercontent.com -%global majorversion 59 +%global majorversion 60 +%if %{freeworld} +Name: chromium%{chromium_channel}%{?freeworld:-freeworld} +%else Name: chromium%{chromium_channel} -Version: %{majorversion}.0.3071.115 -Release: 3%{?dist} +%endif +Version: %{majorversion}.0.3112.90 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -149,10 +148,10 @@ Patch18: chromium-52.0.2743.82-master-prefs-path.patch # https://bugzilla.redhat.com/show_bug.cgi?id=1361157 Patch19: chromium-52.0.2743.116-unset-madv_free.patch # Use gn system files -Patch20: chromium-54.0.2840.59-gn-system.patch +Patch20: chromium-60.0.3112.78-gn-system.patch # Fix last commit position issue # https://groups.google.com/a/chromium.org/forum/#!topic/gn-dev/7nlJv486bD4 -Patch21: chromium-53.0.2785.92-last-commit-position.patch +Patch21: chromium-60.0.3112.78-last-commit-position.patch # Fix issue where timespec is not defined when sys/stat.h is included. Patch22: chromium-53.0.2785.92-boringssl-time-fix.patch # I wouldn't have to do this if there was a standard way to append extra compiler flags @@ -168,24 +167,35 @@ Patch27: chromium-59.0.3071.86-setopaque.patch Patch31: chromium-56.0.2924.87-fpermissive.patch # Fix issue with compilation on gcc7 # Thanks to Ben Noordhuis -Patch33: chromium-59.0.3071.86-gcc7.patch +Patch33: chromium-60.0.3112.78-gcc7.patch # Enable mp3 support -Patch34: chromium-59.0.3071.86-enable-mp3.patch +Patch34: chromium-60.0.3112.78-enable-mp3.patch # Revert https://chromium.googlesource.com/chromium/src/+/b794998819088f76b4cf44c8db6940240c563cf4%5E%21/#F0 # https://bugs.chromium.org/p/chromium/issues/detail?id=712737 # https://bugzilla.redhat.com/show_bug.cgi?id=1446851 Patch36: chromium-58.0.3029.96-revert-b794998819088f76b4cf44c8db6940240c563cf4.patch # Correctly compile the stdatomic.h in ffmpeg with gcc 4.8 Patch37: chromium-59.0.3071.86-ffmpeg-stdatomic.patch -# RHEL is too old to have this header in kernel-headers -# and some Fedora versions do not contain what Chromium expects to find -# so just use the hardcoded values instead -Patch38: chromium-59.0.3071.86-dma-buf-header-hack.patch # Nacl can't die soon enough Patch39: chromium-59.0.3071.86-system-clang.patch # Change struct ucontext to ucontext_t in breakpad # https://patchwork.openembedded.org/patch/141358/ Patch40: chromium-59.0.3071.115-ucontext-fix.patch +# Fix gn bootstrap. Not convinced anyone at Google ever tries to build Chromium from source. +Patch41: chromium-60.0.3112.78-fix-gn-bootstrap.patch +# Do not prefix libpng functions +Patch42: chromium-60.0.3112.78-no-libpng-prefix.patch +# Do not mangle libjpeg +Patch43: chromium-60.0.3112.78-jpeg-nomangle.patch +# Fix gtk2 build by applying these changes +# https://chromium.googlesource.com/chromium/src.git/+/804fd4ab5e41584d61c400ac19ce21e0468b53d4 +# https://chromium.googlesource.com/chromium/src.git/+/4313334bead373b139eee72f47d43fbe6162a8f4 +# https://chromium.googlesource.com/chromium/src.git/+/ca407201886875966db91d55c403fe0be3f0f4ca +# This probably will not be needed with 61+ +Patch44: chromium-60.0.3112.78-gtk2fix.patch +# Do not mangle zlib +Patch45: chromium-60.0.3112.78-no-zlib-mangle.patch + ### Chromium Tests Patches ### Patch100: chromium-46.0.2490.86-use_system_opus.patch @@ -220,9 +230,6 @@ Source9: chromium-browser.xml Source10: https://dl.google.com/dl/edgedl/chrome/policy/policy_templates.zip Source11: chrome-remote-desktop@.service Source13: master_preferences -# Upstream did not include third_party/freetype source code in the tarball for 59.0.3071.115 -# So we copy it from the previous build. :/ -Source14: chromium-59.0.3071.109-freetype.tar.bz2 # We can assume gcc and binutils. BuildRequires: gcc-c++ @@ -241,7 +248,7 @@ BuildRequires: glib2-devel BuildRequires: gnome-keyring-devel BuildRequires: gtk2-devel # Yes. This too. -BuildRequires: gtk3-devel +# BuildRequires: gtk3-devel BuildRequires: glibc-devel BuildRequires: gperf BuildRequires: libatomic @@ -253,7 +260,6 @@ BuildRequires: libusb-devel BuildRequires: libXdamage-devel BuildRequires: libXScrnSaver-devel BuildRequires: libXtst-devel -BuildRequires: mesa-libGL-devel BuildRequires: nodejs BuildRequires: nss-devel BuildRequires: pciutils-devel @@ -296,6 +302,7 @@ BuildRequires: bzip2-devel BuildRequires: dbus-glib-devel BuildRequires: elfutils-libelf-devel BuildRequires: flac-devel +BuildRequires: freetype-devel BuildRequires: hwdata BuildRequires: kernel-headers BuildRequires: libevent-devel @@ -308,7 +315,7 @@ BuildRequires: libffi-devel BuildRequires: libicu-devel = 54.1 %endif BuildRequires: libjpeg-devel -# BuildRequires: libpng-devel +BuildRequires: libpng-devel %if 0 # see https://code.google.com/p/chromium/issues/detail?id=501318 BuildRequires: libsrtp-devel >= 1.4.4 @@ -323,7 +330,7 @@ BuildRequires: libusbx-devel >= 1.0.21-0.1.git448584a # We don't use libvpx anymore because Chromium loves to # use bleeding edge revisions here that break other things # ... so we just use the bundled libvpx. -# Same is true for libwebp. +BuildRequires: libwebp-devel BuildRequires: libxslt-devel # Same here, it seems. # BuildRequires: libyuv-devel @@ -351,6 +358,7 @@ BuildRequires: re2-devel >= 20160401 %endif BuildRequires: speech-dispatcher-devel BuildRequires: yasm +BuildRequires: zlib-devel BuildRequires: pkgconfig(gnome-keyring-1) # remote desktop needs this BuildRequires: pam-devel @@ -426,15 +434,15 @@ Provides: bundled(libaddressinput) = 0 Provides: bundled(libdrm) = 2.4.70 Provides: bundled(libevent) = 1.4.15 Provides: bundled(libjingle) = 9564 -Provides: bundled(libjpeg-turbo) = 1.4.90 +# Provides: bundled(libjpeg-turbo) = 1.4.90 Provides: bundled(libphonenumber) = a4da30df63a097d67e3c429ead6790ad91d36cf4 -Provides: bundled(libpng) = 1.6.22 +# Provides: bundled(libpng) = 1.6.22 Provides: bundled(libsrtp) = 2cbd85085037dc7bf2eda48d4cf62e2829056e2d %if %{bundlelibusbx} Provides: bundled(libusbx) = 1.0.17 %endif Provides: bundled(libvpx) = 1.6.0 -Provides: bundled(libwebp) = 0.6.0 +# Provides: bundled(libwebp) = 0.6.0 %if %{bundlelibxml} # Well, it's actually newer than 2.9.4 and has code in it that has been reverted upstream... but eh. Provides: bundled(libxml) = 2.9.4 @@ -470,8 +478,7 @@ Provides: bundled(webrtc) = 90usrsctp Provides: bundled(woff2) = 445f541996fe8376f3976d35692fd2b9a6eedf2d Provides: bundled(xdg-mime) Provides: bundled(xdg-user-dirs) -Provides: bundled(x86inc) = 0 -Provides: bundled(zlib) = 1.2.11 +# Provides: bundled(zlib) = 1.2.11 # For selinux scriptlet Requires(post): /usr/sbin/semanage @@ -480,9 +487,16 @@ Requires(post): /usr/sbin/restorecon %description Chromium is an open-source web browser, powered by WebKit (Blink). +%package common +Summary: Files needed for both the headless_shell and full Chromium + +%description common +%{summary}. + %if 0%{?shared} %package libs Summary: Shared libraries used by chromium (and chrome-remote-desktop) +Requires: chromium-common%{_isa} = %{version}-%{release} Requires: chromium-libs-media%{_isa} >= %{majorversion} Requires(post): %{_sbindir}/update-alternatives Requires(preun): %{_sbindir}/update-alternatives @@ -491,14 +505,14 @@ Requires(preun): %{_sbindir}/update-alternatives Shared libraries used by chromium (and chrome-remote-desktop). %if %{freeworld} -%package libs-media-freeworld +%package -n chromium-libs-media-freeworld Summary: Chromium media libraries built with all possible codecs Provides: chromium-libs-media = %{version}-%{release} Provides: chromium-libs-media%{_isa} = %{version}-%{release} Requires(post): %{_sbindir}/update-alternatives Requires(preun): %{_sbindir}/update-alternatives -%description libs-media-freeworld +%description -n chromium-libs-media-freeworld Chromium media libraries built with all possible codecs. Chromium is an open-source web browser, powered by WebKit (Blink). This package replaces the default chromium-libs-media package, which is limited in what it @@ -521,6 +535,7 @@ Requires(post): systemd Requires(preun): systemd Requires(postun): systemd Requires: xorg-x11-server-Xvfb +Requires: python2-psutil %if 0%{?shared} Requires: chromium-libs%{_isa} = %{version}-%{release} %endif @@ -546,13 +561,22 @@ JavaScript execution, and more. ChromeDriver is a standalone server which implements WebDriver's wire protocol for Chromium. It is being developed by members of the Chromium and WebDriver teams. +%package headless +Summary: A minimal headless shell built from Chromium +Requires: chromium-common%{_isa} = %{version}-%{release} + +%description headless +A minimal headless client built from Chromium. headless_shell is built +without support for alsa, cups, dbus, gconf, gio, kerberos, pulseaudio, or +udev. + %prep %setup -q -T -c -n %{name}-policies -a 10 %setup -q -T -c -n depot_tools -a 2 %if 0%{tests} -%setup -q -n chromium-%{version} -b 1 -a 14 +%setup -q -n chromium-%{version} -b 1 %else -%setup -q -n chromium-%{version} -a 14 +%setup -q -n chromium-%{version} %endif ### Chromium Fedora Patches ### @@ -577,12 +601,20 @@ members of the Chromium and WebDriver teams. %patch27 -p1 -b .setopaque %patch31 -p1 -b .permissive %patch33 -p1 -b .gcc7 +%if %{freeworld} +# Do not apply mp3 change +%else %patch34 -p1 -b .mp3 +%endif %patch36 -p1 -b .revert %patch37 -p1 -b .ffmpeg-stdatomic -%patch38 -p1 -b .headerhack %patch39 -p1 -b .system-clang %patch40 -p1 -b .ucontextfix +%patch41 -p1 -b .fixgnbootstrap +%patch42 -p1 -b .noprefix +%patch43 -p1 -b .nomangle +%patch44 -p1 -b .gtk2fix +%patch45 -p1 -b .nozmangle ### Chromium Tests Patches ### %patch100 -p1 -b .use_system_opus @@ -693,21 +725,27 @@ ln -s /usr/bin/clang clang popd %endif -CHROMIUM_BROWSER_GN_DEFINES="" -CHROMIUM_BROWSER_GN_DEFINES+=' is_debug=false' +# Core defines are flags that are true for both the browser and headless. +CHROMIUM_CORE_GN_DEFINES="" +CHROMIUM_CORE_GN_DEFINES+=' is_debug=false' %ifarch x86_64 -CHROMIUM_BROWSER_GN_DEFINES+=' system_libdir="lib64"' +CHROMIUM_CORE_GN_DEFINES+=' system_libdir="lib64"' %endif -CHROMIUM_BROWSER_GN_DEFINES+=' google_api_key="%{api_key}" google_default_client_id="%{default_client_id}" google_default_client_secret="%{default_client_secret}"' -CHROMIUM_BROWSER_GN_DEFINES+=' is_clang=false use_sysroot=false use_gio=true use_pulseaudio=true icu_use_data_file=true' +CHROMIUM_CORE_GN_DEFINES+=' google_api_key="%{api_key}" google_default_client_id="%{default_client_id}" google_default_client_secret="%{default_client_secret}"' +CHROMIUM_CORE_GN_DEFINES+=' is_clang=false use_sysroot=false use_gold=false fieldtrial_testing_like_official_build=true' +%if %{freeworld} +CHROMIUM_CORE_GN_DEFINES+=' ffmpeg_branding="ChromeOS" proprietary_codecs=true' +%else +CHROMIUM_CORE_GN_DEFINES+=' ffmpeg_branding="Chromium" proprietary_codecs=false' +%endif +CHROMIUM_CORE_GN_DEFINES+=' treat_warnings_as_errors=false' +export CHROMIUM_CORE_GN_DEFINES + +CHROMIUM_BROWSER_GN_DEFINES="" +CHROMIUM_BROWSER_GN_DEFINES+=' use_gio=true use_pulseaudio=true icu_use_data_file=true' %if 0%{?nonacl} CHROMIUM_BROWSER_GN_DEFINES+=' enable_nacl=false' %endif -%if %{freeworld} -CHROMIUM_BROWSER_GN_DEFINES+=' ffmpeg_branding="ChromeOS" proprietary_codecs=true' -%else -CHROMIUM_BROWSER_GN_DEFINES+=' ffmpeg_branding="Chromium" proprietary_codecs=false' -%endif %if 0%{?shared} CHROMIUM_BROWSER_GN_DEFINES+=' is_component_ffmpeg=true is_component_build=true' %else @@ -716,16 +754,21 @@ CHROMIUM_BROWSER_GN_DEFINES+=' is_component_ffmpeg=false is_component_build=fals CHROMIUM_BROWSER_GN_DEFINES+=' remove_webcore_debug_symbols=true enable_hangout_services_extension=true' CHROMIUM_BROWSER_GN_DEFINES+=' enable_hotwording=false use_aura=true' CHROMIUM_BROWSER_GN_DEFINES+=' enable_webrtc=true enable_widevine=true' -CHROMIUM_BROWSER_GN_DEFINES+=' use_gold=false fieldtrial_testing_like_official_build=true' %if 0%{gtk3} CHROMIUM_BROWSER_GN_DEFINES+=' use_gtk3=true' %else CHROMIUM_BROWSER_GN_DEFINES+=' use_gtk3=false' %endif -# CHROMIUM_BROWSER_GN_DEFINES+=' use_system_libjpeg=true' -CHROMIUM_BROWSER_GN_DEFINES+=' treat_warnings_as_errors=false' export CHROMIUM_BROWSER_GN_DEFINES +CHROMIUM_HEADLESS_GN_DEFINES="" +CHROMIUM_HEADLESS_GN_DEFINES+=' use_ozone=true ozone_auto_platforms=false ozone_platform="headless" ozone_platform_headless=true' +CHROMIUM_HEADLESS_GN_DEFINES+=' headless_use_embedded_resources=true icu_use_data_file=false v8_use_external_startup_data=false' +CHROMIUM_HEADLESS_GN_DEFINES+=' enable_nacl=false enable_print_preview=false enable_remoting=false use_alsa=false use_ash=false' +CHROMIUM_HEADLESS_GN_DEFINES+=' use_cups=false use_dbus=false use_gconf=false use_gio=false use_kerberos=false use_libpci=false' +CHROMIUM_HEADLESS_GN_DEFINES+=' use_pulseaudio=false use_udev=false' +export CHROMIUM_HEADLESS_GN_DEFINES + mkdir -p third_party/node/linux/node-linux-x64/bin ln -s %{_bindir}/node third_party/node/linux/node-linux-x64/bin/node @@ -739,6 +782,8 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/ffmpeg' \ 'third_party/adobe' \ 'third_party/flac' \ + 'third_party/googletest' \ + 'third_party/glslang-angle' \ 'third_party/harfbuzz-ng' \ 'third_party/icu' \ 'base/third_party/libevent' \ @@ -761,7 +806,6 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/swiftshader/third_party/subzero' \ 'third_party/swiftshader/third_party/LLVM' \ 'third_party/swiftshader/third_party/llvm-subzero' \ - 'third_party/swiftshader/third_party/pnacl-subzero' \ 'third_party/usb_ids' \ 'third_party/xdg-utils' \ 'third_party/yasm' \ @@ -800,6 +844,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/catapult/tracing/third_party/gl-matrix' \ 'third_party/catapult/tracing/third_party/jszip' \ 'third_party/catapult/tracing/third_party/mannwhitneyu' \ + 'third_party/catapult/tracing/third_party/oboe' \ 'third_party/catapult/third_party/polymer' \ 'third_party/catapult/third_party/py_vulcanize' \ 'third_party/catapult/third_party/py_vulcanize/third_party/rcssmin' \ @@ -870,16 +915,19 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/sfntly' \ 'third_party/sinonjs' \ 'third_party/skia' \ + 'third_party/skia/third_party/vulkan' \ 'third_party/smhasher' \ + 'third_party/spirv-headers' \ + 'third_party/spirv-tools-angle' \ 'third_party/sqlite' \ 'third_party/tcmalloc' \ 'third_party/usrsctp' \ + 'third_party/vulkan-validation-layers' \ 'third_party/web-animations-js' \ 'third_party/webdriver' \ 'third_party/webrtc' \ 'third_party/widevine' \ 'third_party/woff2' \ - 'third_party/x86inc' \ 'third_party/zlib/google' \ 'url/third_party/mozilla' \ 'v8/third_party/inspector_protocol' \ @@ -898,6 +946,7 @@ export PATH=$PATH:%{_builddir}/depot_tools build/linux/unbundle/replace_gn_files.py --system-libraries \ flac \ + freetype \ %if 0%{?bundleharfbuzz} %else harfbuzz-ng \ @@ -906,13 +955,14 @@ build/linux/unbundle/replace_gn_files.py --system-libraries \ %else icu \ %endif -%if 0 - libevent \ -%endif + libdrm \ + libjpeg \ + libpng \ %if %{bundlelibusbx} %else libusb \ %endif + libwebp \ %if %{bundlelibxml} %else libxml \ @@ -926,16 +976,25 @@ build/linux/unbundle/replace_gn_files.py --system-libraries \ %else re2 \ %endif - yasm + yasm \ + zlib -tools/gn/bootstrap/bootstrap.py -v --gn-gen-args "$CHROMIUM_BROWSER_GN_DEFINES" -%{target}/gn gen --args="$CHROMIUM_BROWSER_GN_DEFINES" %{target} +tools/gn/bootstrap/bootstrap.py -v --gn-gen-args "$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" +%{target}/gn gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{target} + +%if %{freeworld} +# do not need to do headless gen +%else +%{target}/gn gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_HEADLESS_GN_DEFINES" %{headlesstarget} +%endif %if %{bundlelibusbx} # no hackity hack hack %else # hackity hack hack rm -rf third_party/libusb/src/libusb/libusb.h +# we _shouldn't need to do this, but it looks like we do. +cp -a %{_includedir}/libusb-1.0/libusb.h third_party/libusb/src/libusb/libusb.h %endif # make up a version for widevine @@ -1019,12 +1078,13 @@ export CHROMIUM_BROWSER_UNIT_TESTS="\ export CHROMIUM_BROWSER_UNIT_TESTS= %endif - -%global target out/Release - +# Now do the full browser %if 0%{freeworld} ../depot_tools/ninja -C %{target} -vvv media $CHROMIUM_BROWSER_UNIT_TESTS %else +# Do headless first. +../depot_tools/ninja -C %{headlesstarget} -vvv headless_shell + ../depot_tools/ninja -C %{target} -vvv chrome chrome_sandbox chromedriver widevinecdmadapter clearkeycdm policy_templates $CHROMIUM_BROWSER_UNIT_TESTS # remote client @@ -1055,6 +1115,10 @@ mkdir -p %{buildroot}%{chromium_path} pushd %{target} cp -a libffmpeg.so* %{buildroot}%{chromium_path} cp -a libmedia.so* %{buildroot}%{chromium_path} +mv %{buildroot}%{chromium_path}/libffmpeg.so{,.%{lsuffix}} +mv %{buildroot}%{chromium_path}/libffmpeg.so.TOC{,.%{lsuffix}} +mv %{buildroot}%{chromium_path}/libmedia.so{,.%{lsuffix}} +mv %{buildroot}%{chromium_path}/libmedia.so.TOC{,.%{lsuffix}} popd %else mkdir -p %{buildroot}%{_bindir} @@ -1154,6 +1218,10 @@ cp -a remoting_client_plugin_newlib.* %{buildroot}%{chromium_path} %endif popd +pushd %{headlesstarget} +cp -a headless_lib.pak headless_shell %{buildroot}%{chromium_path} +popd + cp -a remoting/host/linux/linux_me2me_host.py %{buildroot}%{crd_path}/chrome-remote-desktop cp -a remoting/host/installer/linux/is-remoting-session %{buildroot}%{crd_path}/ @@ -1547,10 +1615,10 @@ if [ $1 = 0 ]; then fi %if %{freeworld} -%posttrans libs-media-freeworld +%posttrans -n chromium-libs-media-freeworld %{_sbindir}/update-alternatives --install \ %{_libdir}/chromium-browser/libffmpeg.so libffmpeg.so \ - %{_libdir}/chromium-browser/libffmpeg.so.freeworld 5 \ + %{_libdir}/chromium-browser/libffmpeg.so.freeworld 20 \ --slave %{_libdir}/chromium-browser/libffmpeg.so.TOC libffmpeg.so.TOC \ %{_libdir}/chromium-browser/libffmpeg.so.TOC.freeworld \ --slave %{_libdir}/chromium-browser/libmedia.so libmedia.so \ @@ -1558,7 +1626,7 @@ fi --slave %{_libdir}/chromium-browser/libmedia.so.TOC libmedia.so.TOC \ %{_libdir}/chromium-browser/libmedia.so.TOC.freeworld -%preun libs-media-freeworld +%preun -n chromium-libs-media-freeworld if [ $1 = 0 ]; then %{_sbindir}/alternatives --remove libffmpeg.so \ %{_libdir}/chromium-browser/libffmpeg.so.freeworld @@ -1600,6 +1668,7 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %files %doc AUTHORS +%doc chrome_policy_list.html *.json %license LICENSE %config %{_sysconfdir}/%{name}/ %dir %{_sysconfdir}/%{name}/native-messaging-hosts @@ -1608,7 +1677,10 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{_bindir}/%{chromium_browser_channel} %dir %{chromium_path} %{chromium_path}/*.bin -%{chromium_path}/*.pak +%{chromium_path}/chrome_*.pak +%{chromium_path}/keyboard_resources.pak +%{chromium_path}/resources.pak +%{chromium_path}/views_mus_resources.pak %{chromium_path}/icudtl.dat %{chromium_path}/%{chromium_browser_channel} %{chromium_path}/%{chromium_browser_channel}.sh @@ -1623,8 +1695,19 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt # %%{chromium_path}/remoting_locales/ # %%{chromium_path}/pseudo_locales/ # %%{chromium_path}/plugins/ -%{chromium_path}/pyproto/ %attr(4755, root, root) %{chromium_path}/chrome-sandbox +%{_mandir}/man1/%{chromium_browser_channel}.* +%{_datadir}/icons/hicolor/*/apps/%{chromium_browser_channel}.png +%{_datadir}/applications/*.desktop +%{_datadir}/appdata/*.appdata.xml +%{_datadir}/gnome-control-center/default-apps/chromium-browser.xml + +%files common +%{chromium_path}/headless_lib.pak +%{chromium_path}/libosmesa.so +%{chromium_path}/mus_app_resources_*.pak +%{chromium_path}/pyproto/ +%{chromium_path}/resources/ %dir %{chromium_path}/locales/ %lang(am) %{chromium_path}/locales/am.pak %lang(ar) %{chromium_path}/locales/ar.pak @@ -1679,18 +1762,13 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %lang(vi) %{chromium_path}/locales/vi.pak %lang(zh_CN) %{chromium_path}/locales/zh-CN.pak %lang(zh_TW) %{chromium_path}/locales/zh-TW.pak -# %%{chromium_path}/locales/fake-bidi.pak -%{chromium_path}/resources/ -%{_mandir}/man1/%{chromium_browser_channel}.* -%{_datadir}/icons/hicolor/*/apps/%{chromium_browser_channel}.png -%{_datadir}/applications/*.desktop -%{_datadir}/appdata/*.appdata.xml -%{_datadir}/gnome-control-center/default-apps/chromium-browser.xml -%doc chrome_policy_list.html *.json +%files headless +%{chromium_path}/headless_shell %if 0%{?shared} %files libs +%exclude %{chromium_path}/libosmesa.so %exclude %{chromium_path}/libffmpeg.so* %exclude %{chromium_path}/libmedia.so* %exclude %{chromium_path}/libwidevinecdm.so @@ -1729,7 +1807,7 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %if 0%{?shared} %if %{freeworld} -%files libs-media-freeworld +%files -n chromium-libs-media-freeworld %else %files libs-media %endif @@ -1741,6 +1819,16 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Fri Aug 4 2017 Tom Callaway 60.0.3112.90-1 +- update to 60.0.3112.90 + +* Mon Jul 31 2017 Tom Callaway 60.0.3112.78-1 +- update to 60.0.3112.78 + +* Fri Jul 21 2017 Tom Callaway 59.0.3071.115-4 +- put common files in -common subpackage +- build headless_shell for -headless subpackage + * Fri Jul 21 2017 Tom Callaway 59.0.3071.115-3 - use posttrans to ensure that old libs are gone before trying to make alternative symlinks diff --git a/sources b/sources index db65c06..24b41df 100644 --- a/sources +++ b/sources @@ -1,4 +1,3 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 -SHA512 (policy_templates.zip) = a997bd5d410cf8f0f104fb5b69b60699c9e60eb3f99b42e0aff167843f3a45923a9a99c881cac9cd4472a60ca9c7d1ba897e15d485fbfd66c996419e7fadd3f8 -SHA512 (chromium-59.0.3071.115-clean.tar.xz) = 001e6d9b4cae244767de7e85575d4071421d588422ca434461939e9652549bcd43c56fe0c510ab0d7d0a050e97d98f4086b8bf102dbadd7f83dc8827b9ea7ed1 -SHA512 (chromium-59.0.3071.109-freetype.tar.bz2) = 62a698c0229c0eb5ed4d31efd211db70f1183f4f86558bd68a6110214b2f0a61eecdde27efcab359ecee684b3df819b37a75505c1b9ea6bec407d289d6e78a66 +SHA512 (chromium-60.0.3112.90-clean.tar.xz) = 3b1579037b3debc0f714e5de3e02bd5fc1c8aa7482479ffc20b824653b11191ed558cef147633b30da16ffd8c26d5eacb95b93610041a44a6ea84606702f7ac1 +SHA512 (policy_templates.zip) = 4d2a7162adb3ca224f3e1bf1d2936ae395603e8ffa3fda7753e666a16c42c7ba54c7acfcfdc742e22978ace37e471ed099d222063708d4d8a299da3daf135f15 From 7de0af7e049240b9f6fae4ca9e7dd2d916b5aad4 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Sat, 5 Aug 2017 17:18:54 -0400 Subject: [PATCH 0108/1449] fix typo from merge --- chromium.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/chromium.spec b/chromium.spec index f151408..a9decb9 100644 --- a/chromium.spec +++ b/chromium.spec @@ -112,6 +112,7 @@ BuildRequires: libicu-devel >= 5.4 Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} +%endif Version: %{majorversion}.0.3112.90 Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser From 0d0973d539425f47d438cf4a46cf9acda5c7ffc7 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 7 Aug 2017 10:30:46 -0400 Subject: [PATCH 0109/1449] add minizip, conditionalize webp bundling for rhel7 --- chromium.spec | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index a9decb9..c45d495 100644 --- a/chromium.spec +++ b/chromium.spec @@ -83,10 +83,12 @@ BuildRequires: libicu-devel >= 5.4 %global bundleopus 1 %global bundlelibusbx 1 %global bundleharfbuzz 1 +%global bundlelibwebp 1 %else %global bundleharfbuzz 0 %global bundleopus 1 %global bundlelibusbx 0 +%global bundlelibwebp 0 %endif # Needs at least harfbuzz 1.4.2 now. @@ -260,6 +262,7 @@ BuildRequires: libusb-devel BuildRequires: libXdamage-devel BuildRequires: libXScrnSaver-devel BuildRequires: libXtst-devel +BuildRequires: minizip-devel BuildRequires: nodejs BuildRequires: nss-devel BuildRequires: pciutils-devel @@ -330,7 +333,11 @@ BuildRequires: libusbx-devel >= 1.0.21-0.1.git448584a # We don't use libvpx anymore because Chromium loves to # use bleeding edge revisions here that break other things # ... so we just use the bundled libvpx. +%if %{bundlelibwebp} +# Do nothing +%else BuildRequires: libwebp-devel +%endif BuildRequires: libxslt-devel # Same here, it seems. # BuildRequires: libyuv-devel @@ -442,7 +449,9 @@ Provides: bundled(libsrtp) = 2cbd85085037dc7bf2eda48d4cf62e2829056e2d Provides: bundled(libusbx) = 1.0.17 %endif Provides: bundled(libvpx) = 1.6.0 -# Provides: bundled(libwebp) = 0.6.0 +%if %{bundlelibwebp} +Provides: bundled(libwebp) = 0.6.0 +%endif %if %{bundlelibxml} # Well, it's actually newer than 2.9.4 and has code in it that has been reverted upstream... but eh. Provides: bundled(libxml) = 2.9.4 @@ -962,7 +971,10 @@ build/linux/unbundle/replace_gn_files.py --system-libraries \ %else libusb \ %endif +%if %{bundlelibwebp} +%else libwebp \ +%endif %if %{bundlelibxml} %else libxml \ From bf4b08a13ee7f5f79857e6ff2c0d3d84d593617c Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 7 Aug 2017 13:16:48 -0400 Subject: [PATCH 0110/1449] BR: mesa-libGL-devel --- chromium.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/chromium.spec b/chromium.spec index c45d495..bd1de7e 100644 --- a/chromium.spec +++ b/chromium.spec @@ -341,6 +341,7 @@ BuildRequires: libwebp-devel BuildRequires: libxslt-devel # Same here, it seems. # BuildRequires: libyuv-devel +BuildRequires: mesa-libGL-devel %if %{bundleopus} # Do nothing %else From bbbf61dadd948f4cd8f2a7a0677b30270a29a953 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 9 Aug 2017 13:48:24 -0400 Subject: [PATCH 0111/1449] apply upstream commit to work around EPEL7 compiler issues --- chromium-60.0.3112.90-no-per-child.patch | 843 +++++++++++++++++++++++ chromium.spec | 11 +- 2 files changed, 853 insertions(+), 1 deletion(-) create mode 100644 chromium-60.0.3112.90-no-per-child.patch diff --git a/chromium-60.0.3112.90-no-per-child.patch b/chromium-60.0.3112.90-no-per-child.patch new file mode 100644 index 0000000..743cce2 --- /dev/null +++ b/chromium-60.0.3112.90-no-per-child.patch @@ -0,0 +1,843 @@ +diff -up chromium-60.0.3112.90/third_party/WebKit/Source/core/layout/ng/inline/ng_inline_layout_algorithm.cc.perchild chromium-60.0.3112.90/third_party/WebKit/Source/core/layout/ng/inline/ng_inline_layout_algorithm.cc +--- chromium-60.0.3112.90/third_party/WebKit/Source/core/layout/ng/inline/ng_inline_layout_algorithm.cc.perchild 2017-08-02 18:05:34.000000000 -0400 ++++ chromium-60.0.3112.90/third_party/WebKit/Source/core/layout/ng/inline/ng_inline_layout_algorithm.cc 2017-08-09 13:30:01.000000000 -0400 +@@ -55,11 +55,11 @@ NGInlineLayoutAlgorithm::NGInlineLayoutA + // Only resolve our BFC offset if we know that we are non-empty as we may + // need to pass through our margin strut. + if (!inline_node->Items().IsEmpty()) { +- NGLogicalOffset bfc_offset = ConstraintSpace().BfcOffset(); +- bfc_offset.block_offset += ConstraintSpace().MarginStrut().Sum(); +- MaybeUpdateFragmentBfcOffset(ConstraintSpace(), bfc_offset, ++ LayoutUnit bfc_block_offset = ConstraintSpace().BfcOffset().block_offset; ++ bfc_block_offset += ConstraintSpace().MarginStrut().Sum(); ++ MaybeUpdateFragmentBfcOffset(ConstraintSpace(), bfc_block_offset, + &container_builder_); +- PositionPendingFloats(bfc_offset.block_offset, &container_builder_, ++ PositionPendingFloats(bfc_block_offset, &container_builder_, + MutableConstraintSpace()); + } + +@@ -222,6 +222,7 @@ bool NGInlineLayoutAlgorithm::PlaceItems + NGLineHeightMetrics line_metrics_with_leading = line_metrics; + line_metrics_with_leading.AddLeading(line_style.ComputedLineHeightAsFixed()); + NGLineBoxFragmentBuilder line_box(Node()); ++ line_box.SetWritingMode(ConstraintSpace().WritingMode()); + + // Compute heights of all inline items by placing the dominant baseline at 0. + // The baseline is adjusted after the height of the line box is computed. +@@ -231,8 +232,7 @@ bool NGInlineLayoutAlgorithm::PlaceItems + + // Place items from line-left to line-right along with the baseline. + // Items are already bidi-reordered to the visual order. +- LayoutUnit line_left_position = LogicalLeftOffset(); +- LayoutUnit position = line_left_position; ++ LayoutUnit position; + + for (auto& item_result : *line_items) { + const NGInlineItem& item = items[item_result.item_index]; +@@ -253,13 +253,28 @@ bool NGInlineLayoutAlgorithm::PlaceItems + item_result.end_offset); + line_box.AddChild(std::move(text_fragment), {position, box->text_top}); + } else if (item.Type() == NGInlineItem::kOpenTag) { +- box = box_states_.OnOpenTag(item, &line_box, &text_builder); ++ box = box_states_.OnOpenTag(item, &line_box); + // Compute text metrics for all inline boxes since even empty inlines + // influence the line height. + // https://drafts.csswg.org/css2/visudet.html#line-height + box->ComputeTextMetrics(*item.Style(), baseline_type_); ++ text_builder.SetDirection(box->style->Direction()); ++ // TODO(kojii): We may need more conditions to create box fragments. ++ if (item.Style()->HasBoxDecorationBackground()) { ++ // TODO(kojii): These are once computed in NGLineBreaker. Should copy to ++ // NGInlineItemResult to reuse here. ++ NGBoxStrut borders = ComputeBorders(*constraint_space_, *item.Style()); ++ NGBoxStrut paddings = ComputePadding(*constraint_space_, *item.Style()); ++ // TODO(kojii): Set paint edges. ++ box->SetNeedsBoxFragment(position, ++ borders.block_start + paddings.block_start, ++ borders.BlockSum() + paddings.BlockSum()); ++ } + } else if (item.Type() == NGInlineItem::kCloseTag) { +- box = box_states_.OnCloseTag(item, &line_box, box, baseline_type_); ++ position += item_result.inline_size; ++ box = box_states_.OnCloseTag(item, &line_box, box, baseline_type_, ++ position); ++ continue; + } else if (item.Type() == NGInlineItem::kAtomicInline) { + box = PlaceAtomicInline(item, &item_result, position, &line_box, + &text_builder); +@@ -286,12 +301,11 @@ bool NGInlineLayoutAlgorithm::PlaceItems + return true; // The line was empty. + } + +- box_states_.OnEndPlaceItems(&line_box, baseline_type_); ++ box_states_.OnEndPlaceItems(&line_box, baseline_type_, position); + + // The baselines are always placed at pixel boundaries. Not doing so results + // in incorrect layout of text decorations, most notably underlines. +- LayoutUnit baseline = content_size_ + line_box.Metrics().ascent + +- border_and_padding_.block_start; ++ LayoutUnit baseline = content_size_ + line_box.Metrics().ascent; + baseline = LayoutUnit(baseline.Round()); + + // Check if the line fits into the constraint space in block direction. +@@ -313,19 +327,14 @@ bool NGInlineLayoutAlgorithm::PlaceItems + // the line box to the line top. + line_box.MoveChildrenInBlockDirection(baseline); + +- DCHECK_EQ(line_left_position, LogicalLeftOffset()); +- LayoutUnit inline_size = position - line_left_position; +- line_box.SetInlineSize(inline_size); +- +- // Account for text align property. +- if (Node()->Style().GetTextAlign() == ETextAlign::kRight) { +- line_box.MoveChildrenInInlineDirection( +- current_opportunity_.size.inline_size - inline_size); +- } ++ LayoutUnit inline_size = position; ++ NGLogicalOffset offset(LogicalLeftOffset(), ++ baseline - box_states_.LineBoxState().metrics.ascent); ++ ApplyTextAlign(&offset.inline_offset, inline_size, ++ current_opportunity_.size.inline_size); + +- container_builder_.AddChild( +- line_box.ToLineBoxFragment(), +- {LayoutUnit(), baseline - box_states_.LineBoxState().metrics.ascent}); ++ line_box.SetInlineSize(inline_size); ++ container_builder_.AddChild(line_box.ToLineBoxFragment(), offset); + + max_inline_size_ = std::max(max_inline_size_, inline_size); + content_size_ = line_bottom; +@@ -342,7 +351,7 @@ NGInlineBoxState* NGInlineLayoutAlgorith + NGTextFragmentBuilder* text_builder) { + DCHECK(item_result->layout_result); + +- NGInlineBoxState* box = box_states_.OnOpenTag(item, line_box, text_builder); ++ NGInlineBoxState* box = box_states_.OnOpenTag(item, line_box); + + // For replaced elements, inline-block elements, and inline-table elements, + // the height is the height of their margin box. +@@ -371,6 +380,7 @@ NGInlineBoxState* NGInlineLayoutAlgorith + // TODO(kojii): Try to eliminate the wrapping text fragment and use the + // |fragment| directly. Currently |CopyFragmentDataToLayoutBlockFlow| + // requires a text fragment. ++ text_builder->SetDirection(item.Style()->Direction()); + text_builder->SetSize({fragment.InlineSize(), block_size}); + LayoutUnit line_top = item_result->margins.block_start - metrics.ascent; + RefPtr text_fragment = text_builder->ToTextFragment( +@@ -378,7 +388,31 @@ NGInlineBoxState* NGInlineLayoutAlgorith + item_result->end_offset); + line_box->AddChild(std::move(text_fragment), {position, line_top}); + +- return box_states_.OnCloseTag(item, line_box, box, baseline_type_); ++ return box_states_.OnCloseTag(item, line_box, box, baseline_type_, ++ LayoutUnit(0)); ++} ++ ++void NGInlineLayoutAlgorithm::ApplyTextAlign(LayoutUnit* line_left, ++ LayoutUnit inline_size, ++ LayoutUnit available_width) { ++ // TODO(kojii): Implement text-align-last. ++ ETextAlign text_align = LineStyle().GetTextAlign(); ++ switch (text_align) { ++ case ETextAlign::kRight: ++ case ETextAlign::kWebkitRight: ++ // Wide lines spill out of the block based off direction. ++ // So even if text-align is right, if direction is LTR, wide lines should ++ // overflow out of the right side of the block. ++ // TODO(kojii): Investigate how to handle trailing spaces. ++ if (inline_size < available_width || ++ !LineStyle().IsLeftToRightDirection()) ++ *line_left += available_width - inline_size; ++ break; ++ default: ++ // TODO(layout-dev): Implement. ++ // Refer to LayoutBlockFlow::UpdateLogicalWidthForAlignment(). ++ break; ++ } + } + + void NGInlineLayoutAlgorithm::FindNextLayoutOpportunity() { +@@ -396,6 +430,10 @@ void NGInlineLayoutAlgorithm::FindNextLa + } + + RefPtr NGInlineLayoutAlgorithm::Layout() { ++ // If we are resuming from a break token our start border and padding is ++ // within a previous fragment. ++ content_size_ = BreakToken() ? LayoutUnit() : border_and_padding_.block_start; ++ + NGLineBreaker line_breaker(Node(), constraint_space_, BreakToken()); + NGInlineItemResults item_results; + while (true) { +@@ -407,7 +445,7 @@ RefPtr NGInlineLayoutAlg + } + + // TODO(crbug.com/716930): Avoid calculating border/padding twice. +- if (!Node()->Items().IsEmpty()) ++ if (!BreakToken()) + content_size_ -= border_and_padding_.block_start; + + // TODO(kojii): Check if the line box width should be content or available. +diff -up chromium-60.0.3112.90/third_party/WebKit/Source/core/layout/ng/ng_block_layout_algorithm.cc.perchild chromium-60.0.3112.90/third_party/WebKit/Source/core/layout/ng/ng_block_layout_algorithm.cc +--- chromium-60.0.3112.90/third_party/WebKit/Source/core/layout/ng/ng_block_layout_algorithm.cc.perchild 2017-08-02 18:05:34.000000000 -0400 ++++ chromium-60.0.3112.90/third_party/WebKit/Source/core/layout/ng/ng_block_layout_algorithm.cc 2017-08-09 13:30:01.000000000 -0400 +@@ -67,14 +67,31 @@ bool IsOutOfSpace(const NGConstraintSpac + + } // namespace + ++// This struct is used for communicating to a child the position of the ++// previous inflow child. ++struct NGPreviousInflowPosition { ++ LayoutUnit bfc_block_offset; ++ LayoutUnit logical_block_offset; ++ NGMarginStrut margin_strut; ++}; ++ ++// This strut holds information for the current inflow child. The data is not ++// useful outside of handling this single inflow child. ++struct NGInflowChildData { ++ NGLogicalOffset bfc_offset_estimate; ++ NGMarginStrut margin_strut; ++ NGBoxStrut margins; ++}; ++ + void MaybeUpdateFragmentBfcOffset(const NGConstraintSpace& space, +- const NGLogicalOffset& offset, ++ LayoutUnit bfc_block_offset, + NGFragmentBuilder* builder) { + DCHECK(builder); + if (!builder->BfcOffset()) { +- NGLogicalOffset mutable_offset(offset); +- AdjustToClearance(space.ClearanceOffset(), &mutable_offset); +- builder->SetBfcOffset(mutable_offset); ++ NGLogicalOffset bfc_offset = {space.BfcOffset().inline_offset, ++ bfc_block_offset}; ++ AdjustToClearance(space.ClearanceOffset(), &bfc_offset); ++ builder->SetBfcOffset(bfc_offset); + } + } + +@@ -150,11 +167,13 @@ Optional NGBlockLayou + } + + NGLogicalOffset NGBlockLayoutAlgorithm::CalculateLogicalOffset( ++ const NGBoxStrut& child_margins, + const WTF::Optional& known_fragment_offset) { + if (known_fragment_offset) + return known_fragment_offset.value() - ContainerBfcOffset(); + LayoutUnit inline_offset = +- border_and_padding_.inline_start + curr_child_margins_.inline_start; ++ border_and_padding_.inline_start + child_margins.inline_start; ++ // TODO(ikilpatrick): Using the content_size_ here looks suspicious - check. + return {inline_offset, content_size_}; + } + +@@ -199,17 +218,20 @@ RefPtr NGBlockLayoutAlgo + // within a previous fragment. + content_size_ = BreakToken() ? LayoutUnit() : border_and_padding_.block_start; + +- curr_margin_strut_ = ConstraintSpace().MarginStrut(); +- curr_bfc_offset_ = ConstraintSpace().BfcOffset(); ++ NGMarginStrut input_margin_strut = ConstraintSpace().MarginStrut(); ++ LayoutUnit input_bfc_block_offset = ++ ConstraintSpace().BfcOffset().block_offset; + + // Margins collapsing: + // Do not collapse margins between parent and its child if there is + // border/padding between them. + if (border_and_padding_.block_start) { +- curr_bfc_offset_.block_offset += curr_margin_strut_.Sum(); +- MaybeUpdateFragmentBfcOffset(ConstraintSpace(), curr_bfc_offset_, ++ input_bfc_block_offset += input_margin_strut.Sum(); ++ MaybeUpdateFragmentBfcOffset(ConstraintSpace(), input_bfc_block_offset, + &container_builder_); +- curr_margin_strut_ = NGMarginStrut(); ++ // We reset the block offset here as it may have been effected by clearance. ++ input_bfc_block_offset = ContainerBfcOffset().block_offset; ++ input_margin_strut = NGMarginStrut(); + } + + // If a new formatting context hits the margin collapsing if-branch above +@@ -218,29 +240,34 @@ RefPtr NGBlockLayoutAlgo + // If we are resuming layout from a break token the same rule applies. Margin + // struts cannot pass through break tokens. + if (ConstraintSpace().IsNewFormattingContext() || BreakToken()) { +- MaybeUpdateFragmentBfcOffset(ConstraintSpace(), curr_bfc_offset_, ++ MaybeUpdateFragmentBfcOffset(ConstraintSpace(), input_bfc_block_offset, + &container_builder_); +- DCHECK_EQ(curr_margin_strut_, NGMarginStrut()); ++ DCHECK_EQ(input_margin_strut, NGMarginStrut()); + DCHECK_EQ(container_builder_.BfcOffset().value(), NGLogicalOffset()); +- curr_bfc_offset_ = {}; + } + +- curr_bfc_offset_.block_offset += content_size_; ++ input_bfc_block_offset += content_size_; ++ ++ NGPreviousInflowPosition previous_inflow_position = { ++ input_bfc_block_offset, content_size_, input_margin_strut}; + + while (child) { + if (child->IsOutOfFlowPositioned()) { + DCHECK(!child_break_token); +- HandleOutOfFlowPositioned(ToNGBlockNode(child)); ++ HandleOutOfFlowPositioned(previous_inflow_position, ToNGBlockNode(child)); + } else if (child->IsFloating()) { +- HandleFloating(ToNGBlockNode(child), ++ HandleFloating(previous_inflow_position, ToNGBlockNode(child), + ToNGBlockBreakToken(child_break_token)); + } else { +- NGLogicalOffset child_bfc_offset = PrepareChildLayout(child); ++ NGInflowChildData child_data = ++ PrepareChildLayout(previous_inflow_position, child); + RefPtr child_space = +- CreateConstraintSpaceForChild(child_bfc_offset, *child); ++ CreateConstraintSpaceForChild(*child, child_data); + RefPtr layout_result = + child->Layout(child_space.Get(), child_break_token); +- FinishChildLayout(*child_space, child, layout_result.Get()); ++ previous_inflow_position = ++ FinishChildLayout(*child_space, previous_inflow_position, child_data, ++ child, layout_result.Get()); + } + + entry = child_iterator.NextChild(); +@@ -251,6 +278,9 @@ RefPtr NGBlockLayoutAlgo + break; + } + ++ NGMarginStrut end_margin_strut = previous_inflow_position.margin_strut; ++ LayoutUnit end_bfc_block_offset = previous_inflow_position.bfc_block_offset; ++ + // Margins collapsing: + // Bottom margins of an in-flow block box doesn't collapse with its last + // in-flow block-level child's bottom margin if the box has bottom +@@ -258,8 +288,8 @@ RefPtr NGBlockLayoutAlgo + content_size_ += border_and_padding_.block_end; + if (border_and_padding_.block_end || + ConstraintSpace().IsNewFormattingContext()) { +- content_size_ += curr_margin_strut_.Sum(); +- curr_margin_strut_ = NGMarginStrut(); ++ content_size_ += end_margin_strut.Sum(); ++ end_margin_strut = NGMarginStrut(); + } + + // Recompute the block-axis size now that we know our content size. +@@ -273,10 +303,10 @@ RefPtr NGBlockLayoutAlgo + // Non-empty blocks always know their position in space. + // TODO(ikilpatrick): This check for a break token seems error prone. + if (size.block_size || BreakToken()) { +- curr_bfc_offset_.block_offset += curr_margin_strut_.Sum(); +- MaybeUpdateFragmentBfcOffset(ConstraintSpace(), curr_bfc_offset_, ++ end_bfc_block_offset += end_margin_strut.Sum(); ++ MaybeUpdateFragmentBfcOffset(ConstraintSpace(), end_bfc_block_offset, + &container_builder_); +- PositionPendingFloats(curr_bfc_offset_.block_offset, &container_builder_, ++ PositionPendingFloats(end_bfc_block_offset, &container_builder_, + MutableConstraintSpace()); + } + +@@ -285,9 +315,9 @@ RefPtr NGBlockLayoutAlgo + // of its parent if the parent has height != auto() + if (!Style().LogicalHeight().IsAuto()) { + // TODO(glebl): handle minLogicalHeight, maxLogicalHeight. +- curr_margin_strut_ = NGMarginStrut(); ++ end_margin_strut = NGMarginStrut(); + } +- container_builder_.SetEndMarginStrut(curr_margin_strut_); ++ container_builder_.SetEndMarginStrut(end_margin_strut); + + container_builder_.SetOverflowSize( + NGLogicalSize(max_inline_size_, content_size_)); +@@ -302,33 +332,32 @@ RefPtr NGBlockLayoutAlgo + return container_builder_.ToBoxFragment(); + } + +-void NGBlockLayoutAlgorithm::HandleOutOfFlowPositioned(NGBlockNode* child) { +- NGLogicalOffset offset = {border_and_padding_.inline_start, content_size_}; ++void NGBlockLayoutAlgorithm::HandleOutOfFlowPositioned( ++ const NGPreviousInflowPosition& previous_inflow_position, ++ NGBlockNode* child) { ++ NGLogicalOffset offset = {border_and_padding_.inline_start, ++ previous_inflow_position.logical_block_offset}; + + // We only include the margin strut in the OOF static-position if we know we + // aren't going to be a zero-block-size fragment. + if (container_builder_.BfcOffset()) +- offset.block_offset += curr_margin_strut_.Sum(); ++ offset.block_offset += previous_inflow_position.margin_strut.Sum(); + + container_builder_.AddOutOfFlowChildCandidate(child, offset); + } + +-void NGBlockLayoutAlgorithm::HandleFloating(NGBlockNode* child, +- NGBlockBreakToken* token) { +- // TODO(ikilpatrick): Pass in BFC offset from previous in-flow child. +- curr_bfc_offset_ = container_builder_.BfcOffset() +- ? container_builder_.BfcOffset().value() +- : ConstraintSpace().BfcOffset(); +- curr_bfc_offset_.block_offset += content_size_; +- ++void NGBlockLayoutAlgorithm::HandleFloating( ++ const NGPreviousInflowPosition& previous_inflow_position, ++ NGBlockNode* child, ++ NGBlockBreakToken* token) { + // Calculate margins in the BFC's writing mode. +- curr_child_margins_ = CalculateMargins(child); ++ NGBoxStrut margins = CalculateMargins(child); + + NGLogicalOffset origin_offset = constraint_space_->BfcOffset(); + origin_offset.inline_offset += border_and_padding_.inline_start; + RefPtr unpositioned_float = NGUnpositionedFloat::Create( + child_available_size_, child_percentage_size_, origin_offset, +- constraint_space_->BfcOffset(), curr_child_margins_, child, token); ++ constraint_space_->BfcOffset(), margins, child, token); + container_builder_.AddUnpositionedFloat(unpositioned_float); + + // If there is a break token for a float we must be resuming layout, we must +@@ -337,29 +366,28 @@ void NGBlockLayoutAlgorithm::HandleFloat + + // No need to postpone the positioning if we know the correct offset. + if (container_builder_.BfcOffset()) { +- NGLogicalOffset origin_point = curr_bfc_offset_; + // Adjust origin point to the margins of the last child. + // Example:
+ //
+- origin_point.block_offset += curr_margin_strut_.Sum(); +- PositionPendingFloats(origin_point.block_offset, &container_builder_, ++ LayoutUnit origin_block_offset = ++ previous_inflow_position.bfc_block_offset + ++ previous_inflow_position.margin_strut.Sum(); ++ PositionPendingFloats(origin_block_offset, &container_builder_, + MutableConstraintSpace()); + } + } + +-NGLogicalOffset NGBlockLayoutAlgorithm::PrepareChildLayout( ++NGInflowChildData NGBlockLayoutAlgorithm::PrepareChildLayout( ++ const NGPreviousInflowPosition& previous_inflow_position, + NGLayoutInputNode* child) { + DCHECK(child); + DCHECK(!child->IsFloating()); + +- // TODO(ikilpatrick): Pass in BFC offset from previous in-flow child. +- curr_bfc_offset_ = container_builder_.BfcOffset() +- ? container_builder_.BfcOffset().value() +- : ConstraintSpace().BfcOffset(); +- curr_bfc_offset_.block_offset += content_size_; ++ LayoutUnit bfc_block_offset = previous_inflow_position.bfc_block_offset; + + // Calculate margins in parent's writing mode. +- curr_child_margins_ = CalculateMargins(child); ++ NGBoxStrut margins = CalculateMargins(child); ++ NGMarginStrut margin_strut = previous_inflow_position.margin_strut; + + bool should_position_pending_floats = + !IsNewFormattingContextForBlockLevelChild(Style(), *child) && +@@ -371,45 +399,50 @@ NGLogicalOffset NGBlockLayoutAlgorithm:: + // be positioned before layout. This also resolves the fragment's bfc offset. + if (should_position_pending_floats) { + LayoutUnit origin_point_block_offset = +- curr_bfc_offset_.block_offset + curr_margin_strut_.Sum(); +- MaybeUpdateFragmentBfcOffset( +- ConstraintSpace(), +- {curr_bfc_offset_.inline_offset, origin_point_block_offset}, +- &container_builder_); ++ bfc_block_offset + margin_strut.Sum(); ++ MaybeUpdateFragmentBfcOffset(ConstraintSpace(), origin_point_block_offset, ++ &container_builder_); ++ // TODO(ikilpatrick): Check if origin_point_block_offset is correct - ++ // MaybeUpdateFragmentBfcOffset might have changed it due to clearance. + PositionPendingFloats(origin_point_block_offset, &container_builder_, + MutableConstraintSpace()); + } + +- NGLogicalOffset child_bfc_offset = curr_bfc_offset_; +- child_bfc_offset.inline_offset += +- {border_and_padding_.inline_start + curr_child_margins_.inline_start}; ++ NGLogicalOffset child_bfc_offset = { ++ ConstraintSpace().BfcOffset().inline_offset + ++ border_and_padding_.inline_start + margins.inline_start, ++ bfc_block_offset}; ++ ++ bool is_new_fc = IsNewFormattingContextForBlockLevelChild(Style(), *child); + + // Append the current margin strut with child's block start margin. + // Non empty border/padding, and new FC use cases are handled inside of the + // child's layout. +- if (!IsNewFormattingContextForBlockLevelChild(Style(), *child)) +- curr_margin_strut_.Append(curr_child_margins_.block_start); ++ if (!is_new_fc) ++ margin_strut.Append(margins.block_start); + + // TODO(crbug.com/716930): We should also collapse margins below once we + // remove LayoutInline splitting. + + // Should collapse margins if our child is a legacy block. +- if (IsLegacyBlock(*child)) { +- curr_bfc_offset_ += +- {border_and_padding_.inline_start + curr_child_margins_.inline_start, +- curr_margin_strut_.Sum()}; +- MaybeUpdateFragmentBfcOffset(ConstraintSpace(), curr_bfc_offset_, +- &container_builder_); +- PositionPendingFloats(curr_bfc_offset_.block_offset, &container_builder_, ++ // TODO(ikilpatrick): I think this can be removed. ++ if (IsLegacyBlock(*child) && !is_new_fc) { ++ child_bfc_offset.block_offset += margin_strut.Sum(); ++ MaybeUpdateFragmentBfcOffset( ++ ConstraintSpace(), child_bfc_offset.block_offset, &container_builder_); ++ // TODO(ikilpatrick): Check if child_bfc_offset.block_offset is correct - ++ // MaybeUpdateFragmentBfcOffset might have changed it due to clearance. ++ PositionPendingFloats(child_bfc_offset.block_offset, &container_builder_, + MutableConstraintSpace()); +- curr_margin_strut_ = {}; ++ margin_strut = {}; + } +- child_bfc_offset.block_offset = curr_bfc_offset_.block_offset; +- return child_bfc_offset; ++ return {child_bfc_offset, margin_strut, margins}; + } + +-void NGBlockLayoutAlgorithm::FinishChildLayout( ++NGPreviousInflowPosition NGBlockLayoutAlgorithm::FinishChildLayout( + const NGConstraintSpace& child_space, ++ const NGPreviousInflowPosition& previous_inflow_position, ++ const NGInflowChildData& child_data, + const NGLayoutInputNode* child, + NGLayoutResult* layout_result) { + // Pull out unpositioned floats to the current fragment. This may needed if +@@ -425,97 +458,134 @@ void NGBlockLayoutAlgorithm::FinishChild + // Determine the fragment's position in the parent space. + WTF::Optional child_bfc_offset; + if (child_space.IsNewFormattingContext()) +- child_bfc_offset = PositionNewFc(fragment, child_space); ++ child_bfc_offset = PositionNewFc(*child, previous_inflow_position, fragment, ++ child_data, child_space); + else if (fragment.BfcOffset()) + child_bfc_offset = PositionWithBfcOffset(fragment); + else if (IsLegacyBlock(*child)) +- child_bfc_offset = PositionLegacy(child_space); ++ child_bfc_offset = PositionLegacy(child_space, child_data); + else if (container_builder_.BfcOffset()) +- child_bfc_offset = PositionWithParentBfc(child_space, fragment); ++ child_bfc_offset = PositionWithParentBfc(child_space, child_data, fragment); + +- NGLogicalOffset logical_offset = CalculateLogicalOffset(child_bfc_offset); ++ NGLogicalOffset logical_offset = ++ CalculateLogicalOffset(child_data.margins, child_bfc_offset); + +- // Update margin strut. +- curr_margin_strut_ = fragment.EndMarginStrut(); +- curr_margin_strut_.Append(curr_child_margins_.block_end); ++ NGMarginStrut margin_strut = fragment.EndMarginStrut(); ++ margin_strut.Append(child_data.margins.block_end); + +- // Only modify content_size if BlockSize is not empty. It's needed to prevent +- // the situation when logical_offset is included in content_size for empty +- // blocks. Example: ++ // Only modify content_size_ if the fragment's BlockSize is not empty. This is ++ // needed to prevent the situation when logical_offset is included in ++ // content_size_ for empty blocks. Example: + //
+ //
+ //
+ //
+ if (fragment.BlockSize()) +- content_size_ = fragment.BlockSize() + logical_offset.block_offset; +- max_inline_size_ = +- std::max(max_inline_size_, fragment.InlineSize() + +- curr_child_margins_.InlineSum() + +- border_and_padding_.InlineSum()); ++ content_size_ = std::max( ++ content_size_, logical_offset.block_offset + fragment.BlockSize()); ++ max_inline_size_ = std::max( ++ max_inline_size_, fragment.InlineSize() + child_data.margins.InlineSum() + ++ border_and_padding_.InlineSum()); + + container_builder_.AddChild(layout_result, logical_offset); ++ ++ // Determine the child's end BFC block offset for the next child to use. ++ LayoutUnit child_end_bfc_block_offset; ++ if (child_bfc_offset) { ++ // TODO(crbug.com/716930): I think the fragment.BfcOffset() condition here ++ // can be removed once we've removed inline splitting. ++ if (fragment.BlockSize() || fragment.BfcOffset()) { ++ child_end_bfc_block_offset = ++ child_bfc_offset.value().block_offset + fragment.BlockSize(); ++ } else { ++ DCHECK_EQ(LayoutUnit(), fragment.BlockSize()); ++ child_end_bfc_block_offset = previous_inflow_position.bfc_block_offset; ++ } ++ } else { ++ child_end_bfc_block_offset = ConstraintSpace().BfcOffset().block_offset; ++ } ++ ++ return {child_end_bfc_block_offset, ++ logical_offset.block_offset + fragment.BlockSize(), margin_strut}; + } + + NGLogicalOffset NGBlockLayoutAlgorithm::PositionNewFc( ++ const NGLayoutInputNode& child, ++ const NGPreviousInflowPosition& previous_inflow_position, + const NGBoxFragment& fragment, ++ const NGInflowChildData& child_data, + const NGConstraintSpace& child_space) { ++ const ComputedStyle& child_style = child.Style(); ++ ++ LayoutUnit child_bfc_offset_estimate = ++ child_data.bfc_offset_estimate.block_offset; ++ + // 1. Position all pending floats to a temporary space. + RefPtr tmp_space = + NGConstraintSpaceBuilder(&child_space) + .SetIsNewFormattingContext(false) + .ToConstraintSpace(child_space.WritingMode()); +- PositionFloats(curr_bfc_offset_.block_offset, curr_bfc_offset_.block_offset, +- curr_bfc_offset_.block_offset, ++ PositionFloats(child_bfc_offset_estimate, child_bfc_offset_estimate, ++ child_bfc_offset_estimate, + container_builder_.UnpositionedFloats(), tmp_space.Get()); + +- NGLogicalOffset origin_offset = curr_bfc_offset_; +- origin_offset.inline_offset += border_and_padding_.inline_start; ++ NGLogicalOffset origin_offset = {ConstraintSpace().BfcOffset().inline_offset + ++ border_and_padding_.inline_start, ++ child_bfc_offset_estimate}; ++ AdjustToClearance( ++ GetClearanceOffset(ConstraintSpace().Exclusions(), child_style.Clear()), ++ &origin_offset); + + // 2. Find an estimated layout opportunity for our fragment. + NGLayoutOpportunity opportunity = FindLayoutOpportunityForFragment( + tmp_space->Exclusions().get(), child_space.AvailableSize(), origin_offset, +- curr_child_margins_, fragment.Size()); ++ child_data.margins, fragment.Size()); ++ ++ NGMarginStrut margin_strut = previous_inflow_position.margin_strut; + + // 3. If the found opportunity lies on the same line with our estimated + // child's BFC offset then merge fragment's margins with the current + // MarginStrut. +- if (opportunity.offset.block_offset == curr_bfc_offset_.block_offset) +- curr_margin_strut_.Append(curr_child_margins_.block_start); +- curr_bfc_offset_.block_offset += curr_margin_strut_.Sum(); +- curr_margin_strut_ = {}; ++ if (opportunity.offset.block_offset == child_bfc_offset_estimate) ++ margin_strut.Append(child_data.margins.block_start); ++ child_bfc_offset_estimate += margin_strut.Sum(); + + // 4. The child's BFC block offset is known here. +- MaybeUpdateFragmentBfcOffset(ConstraintSpace(), curr_bfc_offset_, ++ MaybeUpdateFragmentBfcOffset(ConstraintSpace(), child_bfc_offset_estimate, + &container_builder_); +- PositionPendingFloats(curr_bfc_offset_.block_offset, &container_builder_, ++ PositionPendingFloats(child_bfc_offset_estimate, &container_builder_, + MutableConstraintSpace()); + +- origin_offset = curr_bfc_offset_; +- origin_offset.inline_offset += border_and_padding_.inline_start; ++ origin_offset = {ConstraintSpace().BfcOffset().inline_offset + ++ border_and_padding_.inline_start, ++ child_bfc_offset_estimate}; ++ AdjustToClearance( ++ GetClearanceOffset(ConstraintSpace().Exclusions(), child_style.Clear()), ++ &origin_offset); + + // 5. Find the final layout opportunity for the fragment after all pending + // floats are positioned at the correct BFC block's offset. + opportunity = FindLayoutOpportunityForFragment( + MutableConstraintSpace()->Exclusions().get(), child_space.AvailableSize(), +- origin_offset, curr_child_margins_, fragment.Size()); ++ origin_offset, child_data.margins, fragment.Size()); + +- curr_bfc_offset_ = opportunity.offset; +- return curr_bfc_offset_; ++ return opportunity.offset; + } + + NGLogicalOffset NGBlockLayoutAlgorithm::PositionWithBfcOffset( + const NGBoxFragment& fragment) { + DCHECK(fragment.BfcOffset()); +- curr_bfc_offset_.block_offset = fragment.BfcOffset().value().block_offset; +- MaybeUpdateFragmentBfcOffset(ConstraintSpace(), curr_bfc_offset_, ++ LayoutUnit bfc_block_offset = fragment.BfcOffset().value().block_offset; ++ MaybeUpdateFragmentBfcOffset(ConstraintSpace(), bfc_block_offset, + &container_builder_); +- PositionPendingFloats(curr_bfc_offset_.block_offset, &container_builder_, ++ PositionPendingFloats(bfc_block_offset, &container_builder_, + MutableConstraintSpace()); + return fragment.BfcOffset().value(); + } + + NGLogicalOffset NGBlockLayoutAlgorithm::PositionWithParentBfc( + const NGConstraintSpace& space, ++ const NGInflowChildData& child_data, + const NGBoxFragment& fragment) { + // The child must be an in-flow zero-block-size fragment, use its end margin + // strut for positioning. +@@ -523,22 +593,28 @@ NGLogicalOffset NGBlockLayoutAlgorithm:: + DCHECK_EQ(fragment.BlockSize(), LayoutUnit()); + + NGMarginStrut margin_strut = fragment.EndMarginStrut(); +- margin_strut.Append(curr_child_margins_.block_end); ++ margin_strut.Append(child_data.margins.block_end); + +- curr_bfc_offset_ += +- {border_and_padding_.inline_start + curr_child_margins_.inline_start, +- margin_strut.Sum()}; +- AdjustToClearance(space.ClearanceOffset(), &curr_bfc_offset_); +- PositionPendingFloatsFromOffset( +- curr_bfc_offset_.block_offset, curr_bfc_offset_.block_offset, +- &container_builder_, MutableConstraintSpace()); +- return curr_bfc_offset_; ++ NGLogicalOffset bfc_offset = { ++ ConstraintSpace().BfcOffset().inline_offset + ++ border_and_padding_.inline_start + child_data.margins.inline_start, ++ child_data.bfc_offset_estimate.block_offset + margin_strut.Sum()}; ++ AdjustToClearance(space.ClearanceOffset(), &bfc_offset); ++ PositionPendingFloatsFromOffset(bfc_offset.block_offset, ++ bfc_offset.block_offset, &container_builder_, ++ MutableConstraintSpace()); ++ return bfc_offset; + } + + NGLogicalOffset NGBlockLayoutAlgorithm::PositionLegacy( +- const NGConstraintSpace& child_space) { +- AdjustToClearance(child_space.ClearanceOffset(), &curr_bfc_offset_); +- return curr_bfc_offset_; ++ const NGConstraintSpace& child_space, ++ const NGInflowChildData& child_data) { ++ NGLogicalOffset bfc_offset = {ConstraintSpace().BfcOffset().inline_offset + ++ border_and_padding_.inline_start + ++ child_data.margins.inline_start, ++ child_data.bfc_offset_estimate.block_offset}; ++ AdjustToClearance(child_space.ClearanceOffset(), &bfc_offset); ++ return bfc_offset; + } + + void NGBlockLayoutAlgorithm::FinalizeForFragmentation() { +@@ -609,8 +685,8 @@ NGBoxStrut NGBlockLayoutAlgorithm::Calcu + } + + RefPtr NGBlockLayoutAlgorithm::CreateConstraintSpaceForChild( +- const NGLogicalOffset& child_bfc_offset, +- const NGLayoutInputNode& child) { ++ const NGLayoutInputNode& child, ++ const NGInflowChildData& child_data) { + NGConstraintSpaceBuilder space_builder(MutableConstraintSpace()); + space_builder.SetAvailableSize(child_available_size_) + .SetPercentageResolutionSize(child_percentage_size_); +@@ -618,8 +694,8 @@ RefPtr NGBlockLayoutA + const ComputedStyle& child_style = child.Style(); + bool is_new_bfc = IsNewFormattingContextForBlockLevelChild(Style(), child); + space_builder.SetIsNewFormattingContext(is_new_bfc) +- .SetBfcOffset(child_bfc_offset) +- .SetMarginStrut(curr_margin_strut_); ++ .SetBfcOffset(child_data.bfc_offset_estimate) ++ .SetMarginStrut(child_data.margin_strut); + + if (!is_new_bfc) { + space_builder.SetUnpositionedFloats( +@@ -646,7 +722,7 @@ RefPtr NGBlockLayoutA + // position in the formatting context, and are able to adjust the + // fragmentation line. + if (is_new_bfc) { +- space_available -= child_bfc_offset.block_offset; ++ space_available -= child_data.bfc_offset_estimate.block_offset; + } + } + space_builder.SetFragmentainerSpaceAvailable(space_available); +diff -up chromium-60.0.3112.90/third_party/WebKit/Source/core/layout/ng/ng_block_layout_algorithm.h.perchild chromium-60.0.3112.90/third_party/WebKit/Source/core/layout/ng/ng_block_layout_algorithm.h +--- chromium-60.0.3112.90/third_party/WebKit/Source/core/layout/ng/ng_block_layout_algorithm.h.perchild 2017-08-02 18:05:34.000000000 -0400 ++++ chromium-60.0.3112.90/third_party/WebKit/Source/core/layout/ng/ng_block_layout_algorithm.h 2017-08-09 13:30:01.000000000 -0400 +@@ -18,10 +18,12 @@ namespace blink { + + class NGConstraintSpace; + class NGLayoutResult; ++struct NGInflowChildData; ++struct NGPreviousInflowPosition; + + // Updates the fragment's BFC offset if it's not already set. + void MaybeUpdateFragmentBfcOffset(const NGConstraintSpace&, +- const NGLogicalOffset&, ++ LayoutUnit bfc_block_offset, + NGFragmentBuilder* builder); + + // Positions pending floats starting from {@origin_block_offset} and relative +@@ -52,15 +54,19 @@ class CORE_EXPORT NGBlockLayoutAlgorithm + + // Creates a new constraint space for the current child. + RefPtr CreateConstraintSpaceForChild( +- const NGLogicalOffset& child_bfc_offset, +- const NGLayoutInputNode&); ++ const NGLayoutInputNode& child, ++ const NGInflowChildData& child_data); + + // @return Estimated BFC offset for the "to be layout" child. +- NGLogicalOffset PrepareChildLayout(NGLayoutInputNode*); ++ NGInflowChildData PrepareChildLayout(const NGPreviousInflowPosition&, ++ NGLayoutInputNode*); + +- void FinishChildLayout(const NGConstraintSpace&, +- const NGLayoutInputNode* child, +- NGLayoutResult*); ++ NGPreviousInflowPosition FinishChildLayout( ++ const NGConstraintSpace&, ++ const NGPreviousInflowPosition& prev_data, ++ const NGInflowChildData& child_data, ++ const NGLayoutInputNode* child, ++ NGLayoutResult*); + + // Positions the fragment that establishes a new formatting context. + // +@@ -81,7 +87,10 @@ class CORE_EXPORT NGBlockLayoutAlgorithm + // then it will be placed there and we collapse its margin. + // 2) If #new-fc is too big then we need to clear its position and place it + // below #float ignoring its vertical margin. +- NGLogicalOffset PositionNewFc(const NGBoxFragment&, ++ NGLogicalOffset PositionNewFc(const NGLayoutInputNode& child, ++ const NGPreviousInflowPosition&, ++ const NGBoxFragment&, ++ const NGInflowChildData& child_data, + const NGConstraintSpace& child_space); + + // Positions the fragment that knows its BFC offset. +@@ -95,12 +104,16 @@ class CORE_EXPORT NGBlockLayoutAlgorithm + //
+ //
+ NGLogicalOffset PositionWithParentBfc(const NGConstraintSpace&, ++ const NGInflowChildData& child_data, + const NGBoxFragment&); + +- NGLogicalOffset PositionLegacy(const NGConstraintSpace& child_space); ++ NGLogicalOffset PositionLegacy(const NGConstraintSpace& child_space, ++ const NGInflowChildData& child_data); + +- void HandleOutOfFlowPositioned(NGBlockNode*); +- void HandleFloating(NGBlockNode*, NGBlockBreakToken*); ++ void HandleOutOfFlowPositioned(const NGPreviousInflowPosition&, NGBlockNode*); ++ void HandleFloating(const NGPreviousInflowPosition&, ++ NGBlockNode*, ++ NGBlockBreakToken*); + + // Final adjustments before fragment creation. We need to prevent the + // fragment from crossing fragmentainer boundaries, and rather create a break +@@ -112,6 +125,7 @@ class CORE_EXPORT NGBlockLayoutAlgorithm + // or {@code known_fragment_offset} if the fragment knows it's offset + // @return Fragment's offset relative to the fragment's parent. + NGLogicalOffset CalculateLogicalOffset( ++ const NGBoxStrut& child_margins, + const WTF::Optional& known_fragment_offset); + + NGLogicalSize child_available_size_; +@@ -120,10 +134,6 @@ class CORE_EXPORT NGBlockLayoutAlgorithm + NGBoxStrut border_and_padding_; + LayoutUnit content_size_; + LayoutUnit max_inline_size_; +- // MarginStrut for the previous child. +- NGMarginStrut curr_margin_strut_; +- NGLogicalOffset curr_bfc_offset_; +- NGBoxStrut curr_child_margins_; + }; + + } // namespace blink diff --git a/chromium.spec b/chromium.spec index bd1de7e..7cc501e 100644 --- a/chromium.spec +++ b/chromium.spec @@ -116,7 +116,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3112.90 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -197,6 +197,9 @@ Patch43: chromium-60.0.3112.78-jpeg-nomangle.patch Patch44: chromium-60.0.3112.78-gtk2fix.patch # Do not mangle zlib Patch45: chromium-60.0.3112.78-no-zlib-mangle.patch +# Apply this change to work around EPEL7 compiler issues +# https://chromium.googlesource.com/chromium/src/+/639c840bf93e2934fe6b3f564f90060313d5791a +Patch46: chromium-60.0.3112.90-no-per-child.patch ### Chromium Tests Patches ### @@ -625,6 +628,9 @@ udev. %patch43 -p1 -b .nomangle %patch44 -p1 -b .gtk2fix %patch45 -p1 -b .nozmangle +%if 0%{?rhel} == 7 +%patch46 -p1 -b .noperchild +%endif ### Chromium Tests Patches ### %patch100 -p1 -b .use_system_opus @@ -1832,6 +1838,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Wed Aug 9 2017 Tom Callaway 60.0.3112.90-2 +- apply post 60 code commit to get code building on epel7 + * Fri Aug 4 2017 Tom Callaway 60.0.3112.90-1 - update to 60.0.3112.90 From 682675b7f8625fb1f6cfd350ed168082fc2124ef Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 9 Aug 2017 14:48:34 -0400 Subject: [PATCH 0112/1449] try to trick old gcc --- chromium-60.0.3112.90-init-list-hack.patch | 34 + chromium-60.0.3112.90-no-per-child.patch | 843 --------------------- chromium.spec | 5 +- 3 files changed, 36 insertions(+), 846 deletions(-) create mode 100644 chromium-60.0.3112.90-init-list-hack.patch delete mode 100644 chromium-60.0.3112.90-no-per-child.patch diff --git a/chromium-60.0.3112.90-init-list-hack.patch b/chromium-60.0.3112.90-init-list-hack.patch new file mode 100644 index 0000000..6cd91d6 --- /dev/null +++ b/chromium-60.0.3112.90-init-list-hack.patch @@ -0,0 +1,34 @@ +diff -up chromium-60.0.3112.90/third_party/WebKit/Source/core/layout/ng/ng_block_layout_algorithm.cc.tryfix chromium-60.0.3112.90/third_party/WebKit/Source/core/layout/ng/ng_block_layout_algorithm.cc +--- chromium-60.0.3112.90/third_party/WebKit/Source/core/layout/ng/ng_block_layout_algorithm.cc.tryfix 2017-08-09 14:45:17.619172987 -0400 ++++ chromium-60.0.3112.90/third_party/WebKit/Source/core/layout/ng/ng_block_layout_algorithm.cc 2017-08-09 14:46:07.375213058 -0400 +@@ -382,7 +382,7 @@ NGLogicalOffset NGBlockLayoutAlgorithm:: + + NGLogicalOffset child_bfc_offset = curr_bfc_offset_; + child_bfc_offset.inline_offset += +- {border_and_padding_.inline_start + curr_child_margins_.inline_start}; ++ {{border_and_padding_.inline_start + curr_child_margins_.inline_start}}; + + // Append the current margin strut with child's block start margin. + // Non empty border/padding, and new FC use cases are handled inside of the +@@ -396,8 +396,8 @@ NGLogicalOffset NGBlockLayoutAlgorithm:: + // Should collapse margins if our child is a legacy block. + if (IsLegacyBlock(*child)) { + curr_bfc_offset_ += +- {border_and_padding_.inline_start + curr_child_margins_.inline_start, +- curr_margin_strut_.Sum()}; ++ {{border_and_padding_.inline_start + curr_child_margins_.inline_start, ++ curr_margin_strut_.Sum()}}; + MaybeUpdateFragmentBfcOffset(ConstraintSpace(), curr_bfc_offset_, + &container_builder_); + PositionPendingFloats(curr_bfc_offset_.block_offset, &container_builder_, +@@ -526,8 +526,8 @@ NGLogicalOffset NGBlockLayoutAlgorithm:: + margin_strut.Append(curr_child_margins_.block_end); + + curr_bfc_offset_ += +- {border_and_padding_.inline_start + curr_child_margins_.inline_start, +- margin_strut.Sum()}; ++ {{border_and_padding_.inline_start + curr_child_margins_.inline_start, ++ margin_strut.Sum()}}; + AdjustToClearance(space.ClearanceOffset(), &curr_bfc_offset_); + PositionPendingFloatsFromOffset( + curr_bfc_offset_.block_offset, curr_bfc_offset_.block_offset, diff --git a/chromium-60.0.3112.90-no-per-child.patch b/chromium-60.0.3112.90-no-per-child.patch deleted file mode 100644 index 743cce2..0000000 --- a/chromium-60.0.3112.90-no-per-child.patch +++ /dev/null @@ -1,843 +0,0 @@ -diff -up chromium-60.0.3112.90/third_party/WebKit/Source/core/layout/ng/inline/ng_inline_layout_algorithm.cc.perchild chromium-60.0.3112.90/third_party/WebKit/Source/core/layout/ng/inline/ng_inline_layout_algorithm.cc ---- chromium-60.0.3112.90/third_party/WebKit/Source/core/layout/ng/inline/ng_inline_layout_algorithm.cc.perchild 2017-08-02 18:05:34.000000000 -0400 -+++ chromium-60.0.3112.90/third_party/WebKit/Source/core/layout/ng/inline/ng_inline_layout_algorithm.cc 2017-08-09 13:30:01.000000000 -0400 -@@ -55,11 +55,11 @@ NGInlineLayoutAlgorithm::NGInlineLayoutA - // Only resolve our BFC offset if we know that we are non-empty as we may - // need to pass through our margin strut. - if (!inline_node->Items().IsEmpty()) { -- NGLogicalOffset bfc_offset = ConstraintSpace().BfcOffset(); -- bfc_offset.block_offset += ConstraintSpace().MarginStrut().Sum(); -- MaybeUpdateFragmentBfcOffset(ConstraintSpace(), bfc_offset, -+ LayoutUnit bfc_block_offset = ConstraintSpace().BfcOffset().block_offset; -+ bfc_block_offset += ConstraintSpace().MarginStrut().Sum(); -+ MaybeUpdateFragmentBfcOffset(ConstraintSpace(), bfc_block_offset, - &container_builder_); -- PositionPendingFloats(bfc_offset.block_offset, &container_builder_, -+ PositionPendingFloats(bfc_block_offset, &container_builder_, - MutableConstraintSpace()); - } - -@@ -222,6 +222,7 @@ bool NGInlineLayoutAlgorithm::PlaceItems - NGLineHeightMetrics line_metrics_with_leading = line_metrics; - line_metrics_with_leading.AddLeading(line_style.ComputedLineHeightAsFixed()); - NGLineBoxFragmentBuilder line_box(Node()); -+ line_box.SetWritingMode(ConstraintSpace().WritingMode()); - - // Compute heights of all inline items by placing the dominant baseline at 0. - // The baseline is adjusted after the height of the line box is computed. -@@ -231,8 +232,7 @@ bool NGInlineLayoutAlgorithm::PlaceItems - - // Place items from line-left to line-right along with the baseline. - // Items are already bidi-reordered to the visual order. -- LayoutUnit line_left_position = LogicalLeftOffset(); -- LayoutUnit position = line_left_position; -+ LayoutUnit position; - - for (auto& item_result : *line_items) { - const NGInlineItem& item = items[item_result.item_index]; -@@ -253,13 +253,28 @@ bool NGInlineLayoutAlgorithm::PlaceItems - item_result.end_offset); - line_box.AddChild(std::move(text_fragment), {position, box->text_top}); - } else if (item.Type() == NGInlineItem::kOpenTag) { -- box = box_states_.OnOpenTag(item, &line_box, &text_builder); -+ box = box_states_.OnOpenTag(item, &line_box); - // Compute text metrics for all inline boxes since even empty inlines - // influence the line height. - // https://drafts.csswg.org/css2/visudet.html#line-height - box->ComputeTextMetrics(*item.Style(), baseline_type_); -+ text_builder.SetDirection(box->style->Direction()); -+ // TODO(kojii): We may need more conditions to create box fragments. -+ if (item.Style()->HasBoxDecorationBackground()) { -+ // TODO(kojii): These are once computed in NGLineBreaker. Should copy to -+ // NGInlineItemResult to reuse here. -+ NGBoxStrut borders = ComputeBorders(*constraint_space_, *item.Style()); -+ NGBoxStrut paddings = ComputePadding(*constraint_space_, *item.Style()); -+ // TODO(kojii): Set paint edges. -+ box->SetNeedsBoxFragment(position, -+ borders.block_start + paddings.block_start, -+ borders.BlockSum() + paddings.BlockSum()); -+ } - } else if (item.Type() == NGInlineItem::kCloseTag) { -- box = box_states_.OnCloseTag(item, &line_box, box, baseline_type_); -+ position += item_result.inline_size; -+ box = box_states_.OnCloseTag(item, &line_box, box, baseline_type_, -+ position); -+ continue; - } else if (item.Type() == NGInlineItem::kAtomicInline) { - box = PlaceAtomicInline(item, &item_result, position, &line_box, - &text_builder); -@@ -286,12 +301,11 @@ bool NGInlineLayoutAlgorithm::PlaceItems - return true; // The line was empty. - } - -- box_states_.OnEndPlaceItems(&line_box, baseline_type_); -+ box_states_.OnEndPlaceItems(&line_box, baseline_type_, position); - - // The baselines are always placed at pixel boundaries. Not doing so results - // in incorrect layout of text decorations, most notably underlines. -- LayoutUnit baseline = content_size_ + line_box.Metrics().ascent + -- border_and_padding_.block_start; -+ LayoutUnit baseline = content_size_ + line_box.Metrics().ascent; - baseline = LayoutUnit(baseline.Round()); - - // Check if the line fits into the constraint space in block direction. -@@ -313,19 +327,14 @@ bool NGInlineLayoutAlgorithm::PlaceItems - // the line box to the line top. - line_box.MoveChildrenInBlockDirection(baseline); - -- DCHECK_EQ(line_left_position, LogicalLeftOffset()); -- LayoutUnit inline_size = position - line_left_position; -- line_box.SetInlineSize(inline_size); -- -- // Account for text align property. -- if (Node()->Style().GetTextAlign() == ETextAlign::kRight) { -- line_box.MoveChildrenInInlineDirection( -- current_opportunity_.size.inline_size - inline_size); -- } -+ LayoutUnit inline_size = position; -+ NGLogicalOffset offset(LogicalLeftOffset(), -+ baseline - box_states_.LineBoxState().metrics.ascent); -+ ApplyTextAlign(&offset.inline_offset, inline_size, -+ current_opportunity_.size.inline_size); - -- container_builder_.AddChild( -- line_box.ToLineBoxFragment(), -- {LayoutUnit(), baseline - box_states_.LineBoxState().metrics.ascent}); -+ line_box.SetInlineSize(inline_size); -+ container_builder_.AddChild(line_box.ToLineBoxFragment(), offset); - - max_inline_size_ = std::max(max_inline_size_, inline_size); - content_size_ = line_bottom; -@@ -342,7 +351,7 @@ NGInlineBoxState* NGInlineLayoutAlgorith - NGTextFragmentBuilder* text_builder) { - DCHECK(item_result->layout_result); - -- NGInlineBoxState* box = box_states_.OnOpenTag(item, line_box, text_builder); -+ NGInlineBoxState* box = box_states_.OnOpenTag(item, line_box); - - // For replaced elements, inline-block elements, and inline-table elements, - // the height is the height of their margin box. -@@ -371,6 +380,7 @@ NGInlineBoxState* NGInlineLayoutAlgorith - // TODO(kojii): Try to eliminate the wrapping text fragment and use the - // |fragment| directly. Currently |CopyFragmentDataToLayoutBlockFlow| - // requires a text fragment. -+ text_builder->SetDirection(item.Style()->Direction()); - text_builder->SetSize({fragment.InlineSize(), block_size}); - LayoutUnit line_top = item_result->margins.block_start - metrics.ascent; - RefPtr text_fragment = text_builder->ToTextFragment( -@@ -378,7 +388,31 @@ NGInlineBoxState* NGInlineLayoutAlgorith - item_result->end_offset); - line_box->AddChild(std::move(text_fragment), {position, line_top}); - -- return box_states_.OnCloseTag(item, line_box, box, baseline_type_); -+ return box_states_.OnCloseTag(item, line_box, box, baseline_type_, -+ LayoutUnit(0)); -+} -+ -+void NGInlineLayoutAlgorithm::ApplyTextAlign(LayoutUnit* line_left, -+ LayoutUnit inline_size, -+ LayoutUnit available_width) { -+ // TODO(kojii): Implement text-align-last. -+ ETextAlign text_align = LineStyle().GetTextAlign(); -+ switch (text_align) { -+ case ETextAlign::kRight: -+ case ETextAlign::kWebkitRight: -+ // Wide lines spill out of the block based off direction. -+ // So even if text-align is right, if direction is LTR, wide lines should -+ // overflow out of the right side of the block. -+ // TODO(kojii): Investigate how to handle trailing spaces. -+ if (inline_size < available_width || -+ !LineStyle().IsLeftToRightDirection()) -+ *line_left += available_width - inline_size; -+ break; -+ default: -+ // TODO(layout-dev): Implement. -+ // Refer to LayoutBlockFlow::UpdateLogicalWidthForAlignment(). -+ break; -+ } - } - - void NGInlineLayoutAlgorithm::FindNextLayoutOpportunity() { -@@ -396,6 +430,10 @@ void NGInlineLayoutAlgorithm::FindNextLa - } - - RefPtr NGInlineLayoutAlgorithm::Layout() { -+ // If we are resuming from a break token our start border and padding is -+ // within a previous fragment. -+ content_size_ = BreakToken() ? LayoutUnit() : border_and_padding_.block_start; -+ - NGLineBreaker line_breaker(Node(), constraint_space_, BreakToken()); - NGInlineItemResults item_results; - while (true) { -@@ -407,7 +445,7 @@ RefPtr NGInlineLayoutAlg - } - - // TODO(crbug.com/716930): Avoid calculating border/padding twice. -- if (!Node()->Items().IsEmpty()) -+ if (!BreakToken()) - content_size_ -= border_and_padding_.block_start; - - // TODO(kojii): Check if the line box width should be content or available. -diff -up chromium-60.0.3112.90/third_party/WebKit/Source/core/layout/ng/ng_block_layout_algorithm.cc.perchild chromium-60.0.3112.90/third_party/WebKit/Source/core/layout/ng/ng_block_layout_algorithm.cc ---- chromium-60.0.3112.90/third_party/WebKit/Source/core/layout/ng/ng_block_layout_algorithm.cc.perchild 2017-08-02 18:05:34.000000000 -0400 -+++ chromium-60.0.3112.90/third_party/WebKit/Source/core/layout/ng/ng_block_layout_algorithm.cc 2017-08-09 13:30:01.000000000 -0400 -@@ -67,14 +67,31 @@ bool IsOutOfSpace(const NGConstraintSpac - - } // namespace - -+// This struct is used for communicating to a child the position of the -+// previous inflow child. -+struct NGPreviousInflowPosition { -+ LayoutUnit bfc_block_offset; -+ LayoutUnit logical_block_offset; -+ NGMarginStrut margin_strut; -+}; -+ -+// This strut holds information for the current inflow child. The data is not -+// useful outside of handling this single inflow child. -+struct NGInflowChildData { -+ NGLogicalOffset bfc_offset_estimate; -+ NGMarginStrut margin_strut; -+ NGBoxStrut margins; -+}; -+ - void MaybeUpdateFragmentBfcOffset(const NGConstraintSpace& space, -- const NGLogicalOffset& offset, -+ LayoutUnit bfc_block_offset, - NGFragmentBuilder* builder) { - DCHECK(builder); - if (!builder->BfcOffset()) { -- NGLogicalOffset mutable_offset(offset); -- AdjustToClearance(space.ClearanceOffset(), &mutable_offset); -- builder->SetBfcOffset(mutable_offset); -+ NGLogicalOffset bfc_offset = {space.BfcOffset().inline_offset, -+ bfc_block_offset}; -+ AdjustToClearance(space.ClearanceOffset(), &bfc_offset); -+ builder->SetBfcOffset(bfc_offset); - } - } - -@@ -150,11 +167,13 @@ Optional NGBlockLayou - } - - NGLogicalOffset NGBlockLayoutAlgorithm::CalculateLogicalOffset( -+ const NGBoxStrut& child_margins, - const WTF::Optional& known_fragment_offset) { - if (known_fragment_offset) - return known_fragment_offset.value() - ContainerBfcOffset(); - LayoutUnit inline_offset = -- border_and_padding_.inline_start + curr_child_margins_.inline_start; -+ border_and_padding_.inline_start + child_margins.inline_start; -+ // TODO(ikilpatrick): Using the content_size_ here looks suspicious - check. - return {inline_offset, content_size_}; - } - -@@ -199,17 +218,20 @@ RefPtr NGBlockLayoutAlgo - // within a previous fragment. - content_size_ = BreakToken() ? LayoutUnit() : border_and_padding_.block_start; - -- curr_margin_strut_ = ConstraintSpace().MarginStrut(); -- curr_bfc_offset_ = ConstraintSpace().BfcOffset(); -+ NGMarginStrut input_margin_strut = ConstraintSpace().MarginStrut(); -+ LayoutUnit input_bfc_block_offset = -+ ConstraintSpace().BfcOffset().block_offset; - - // Margins collapsing: - // Do not collapse margins between parent and its child if there is - // border/padding between them. - if (border_and_padding_.block_start) { -- curr_bfc_offset_.block_offset += curr_margin_strut_.Sum(); -- MaybeUpdateFragmentBfcOffset(ConstraintSpace(), curr_bfc_offset_, -+ input_bfc_block_offset += input_margin_strut.Sum(); -+ MaybeUpdateFragmentBfcOffset(ConstraintSpace(), input_bfc_block_offset, - &container_builder_); -- curr_margin_strut_ = NGMarginStrut(); -+ // We reset the block offset here as it may have been effected by clearance. -+ input_bfc_block_offset = ContainerBfcOffset().block_offset; -+ input_margin_strut = NGMarginStrut(); - } - - // If a new formatting context hits the margin collapsing if-branch above -@@ -218,29 +240,34 @@ RefPtr NGBlockLayoutAlgo - // If we are resuming layout from a break token the same rule applies. Margin - // struts cannot pass through break tokens. - if (ConstraintSpace().IsNewFormattingContext() || BreakToken()) { -- MaybeUpdateFragmentBfcOffset(ConstraintSpace(), curr_bfc_offset_, -+ MaybeUpdateFragmentBfcOffset(ConstraintSpace(), input_bfc_block_offset, - &container_builder_); -- DCHECK_EQ(curr_margin_strut_, NGMarginStrut()); -+ DCHECK_EQ(input_margin_strut, NGMarginStrut()); - DCHECK_EQ(container_builder_.BfcOffset().value(), NGLogicalOffset()); -- curr_bfc_offset_ = {}; - } - -- curr_bfc_offset_.block_offset += content_size_; -+ input_bfc_block_offset += content_size_; -+ -+ NGPreviousInflowPosition previous_inflow_position = { -+ input_bfc_block_offset, content_size_, input_margin_strut}; - - while (child) { - if (child->IsOutOfFlowPositioned()) { - DCHECK(!child_break_token); -- HandleOutOfFlowPositioned(ToNGBlockNode(child)); -+ HandleOutOfFlowPositioned(previous_inflow_position, ToNGBlockNode(child)); - } else if (child->IsFloating()) { -- HandleFloating(ToNGBlockNode(child), -+ HandleFloating(previous_inflow_position, ToNGBlockNode(child), - ToNGBlockBreakToken(child_break_token)); - } else { -- NGLogicalOffset child_bfc_offset = PrepareChildLayout(child); -+ NGInflowChildData child_data = -+ PrepareChildLayout(previous_inflow_position, child); - RefPtr child_space = -- CreateConstraintSpaceForChild(child_bfc_offset, *child); -+ CreateConstraintSpaceForChild(*child, child_data); - RefPtr layout_result = - child->Layout(child_space.Get(), child_break_token); -- FinishChildLayout(*child_space, child, layout_result.Get()); -+ previous_inflow_position = -+ FinishChildLayout(*child_space, previous_inflow_position, child_data, -+ child, layout_result.Get()); - } - - entry = child_iterator.NextChild(); -@@ -251,6 +278,9 @@ RefPtr NGBlockLayoutAlgo - break; - } - -+ NGMarginStrut end_margin_strut = previous_inflow_position.margin_strut; -+ LayoutUnit end_bfc_block_offset = previous_inflow_position.bfc_block_offset; -+ - // Margins collapsing: - // Bottom margins of an in-flow block box doesn't collapse with its last - // in-flow block-level child's bottom margin if the box has bottom -@@ -258,8 +288,8 @@ RefPtr NGBlockLayoutAlgo - content_size_ += border_and_padding_.block_end; - if (border_and_padding_.block_end || - ConstraintSpace().IsNewFormattingContext()) { -- content_size_ += curr_margin_strut_.Sum(); -- curr_margin_strut_ = NGMarginStrut(); -+ content_size_ += end_margin_strut.Sum(); -+ end_margin_strut = NGMarginStrut(); - } - - // Recompute the block-axis size now that we know our content size. -@@ -273,10 +303,10 @@ RefPtr NGBlockLayoutAlgo - // Non-empty blocks always know their position in space. - // TODO(ikilpatrick): This check for a break token seems error prone. - if (size.block_size || BreakToken()) { -- curr_bfc_offset_.block_offset += curr_margin_strut_.Sum(); -- MaybeUpdateFragmentBfcOffset(ConstraintSpace(), curr_bfc_offset_, -+ end_bfc_block_offset += end_margin_strut.Sum(); -+ MaybeUpdateFragmentBfcOffset(ConstraintSpace(), end_bfc_block_offset, - &container_builder_); -- PositionPendingFloats(curr_bfc_offset_.block_offset, &container_builder_, -+ PositionPendingFloats(end_bfc_block_offset, &container_builder_, - MutableConstraintSpace()); - } - -@@ -285,9 +315,9 @@ RefPtr NGBlockLayoutAlgo - // of its parent if the parent has height != auto() - if (!Style().LogicalHeight().IsAuto()) { - // TODO(glebl): handle minLogicalHeight, maxLogicalHeight. -- curr_margin_strut_ = NGMarginStrut(); -+ end_margin_strut = NGMarginStrut(); - } -- container_builder_.SetEndMarginStrut(curr_margin_strut_); -+ container_builder_.SetEndMarginStrut(end_margin_strut); - - container_builder_.SetOverflowSize( - NGLogicalSize(max_inline_size_, content_size_)); -@@ -302,33 +332,32 @@ RefPtr NGBlockLayoutAlgo - return container_builder_.ToBoxFragment(); - } - --void NGBlockLayoutAlgorithm::HandleOutOfFlowPositioned(NGBlockNode* child) { -- NGLogicalOffset offset = {border_and_padding_.inline_start, content_size_}; -+void NGBlockLayoutAlgorithm::HandleOutOfFlowPositioned( -+ const NGPreviousInflowPosition& previous_inflow_position, -+ NGBlockNode* child) { -+ NGLogicalOffset offset = {border_and_padding_.inline_start, -+ previous_inflow_position.logical_block_offset}; - - // We only include the margin strut in the OOF static-position if we know we - // aren't going to be a zero-block-size fragment. - if (container_builder_.BfcOffset()) -- offset.block_offset += curr_margin_strut_.Sum(); -+ offset.block_offset += previous_inflow_position.margin_strut.Sum(); - - container_builder_.AddOutOfFlowChildCandidate(child, offset); - } - --void NGBlockLayoutAlgorithm::HandleFloating(NGBlockNode* child, -- NGBlockBreakToken* token) { -- // TODO(ikilpatrick): Pass in BFC offset from previous in-flow child. -- curr_bfc_offset_ = container_builder_.BfcOffset() -- ? container_builder_.BfcOffset().value() -- : ConstraintSpace().BfcOffset(); -- curr_bfc_offset_.block_offset += content_size_; -- -+void NGBlockLayoutAlgorithm::HandleFloating( -+ const NGPreviousInflowPosition& previous_inflow_position, -+ NGBlockNode* child, -+ NGBlockBreakToken* token) { - // Calculate margins in the BFC's writing mode. -- curr_child_margins_ = CalculateMargins(child); -+ NGBoxStrut margins = CalculateMargins(child); - - NGLogicalOffset origin_offset = constraint_space_->BfcOffset(); - origin_offset.inline_offset += border_and_padding_.inline_start; - RefPtr unpositioned_float = NGUnpositionedFloat::Create( - child_available_size_, child_percentage_size_, origin_offset, -- constraint_space_->BfcOffset(), curr_child_margins_, child, token); -+ constraint_space_->BfcOffset(), margins, child, token); - container_builder_.AddUnpositionedFloat(unpositioned_float); - - // If there is a break token for a float we must be resuming layout, we must -@@ -337,29 +366,28 @@ void NGBlockLayoutAlgorithm::HandleFloat - - // No need to postpone the positioning if we know the correct offset. - if (container_builder_.BfcOffset()) { -- NGLogicalOffset origin_point = curr_bfc_offset_; - // Adjust origin point to the margins of the last child. - // Example:
- //
-- origin_point.block_offset += curr_margin_strut_.Sum(); -- PositionPendingFloats(origin_point.block_offset, &container_builder_, -+ LayoutUnit origin_block_offset = -+ previous_inflow_position.bfc_block_offset + -+ previous_inflow_position.margin_strut.Sum(); -+ PositionPendingFloats(origin_block_offset, &container_builder_, - MutableConstraintSpace()); - } - } - --NGLogicalOffset NGBlockLayoutAlgorithm::PrepareChildLayout( -+NGInflowChildData NGBlockLayoutAlgorithm::PrepareChildLayout( -+ const NGPreviousInflowPosition& previous_inflow_position, - NGLayoutInputNode* child) { - DCHECK(child); - DCHECK(!child->IsFloating()); - -- // TODO(ikilpatrick): Pass in BFC offset from previous in-flow child. -- curr_bfc_offset_ = container_builder_.BfcOffset() -- ? container_builder_.BfcOffset().value() -- : ConstraintSpace().BfcOffset(); -- curr_bfc_offset_.block_offset += content_size_; -+ LayoutUnit bfc_block_offset = previous_inflow_position.bfc_block_offset; - - // Calculate margins in parent's writing mode. -- curr_child_margins_ = CalculateMargins(child); -+ NGBoxStrut margins = CalculateMargins(child); -+ NGMarginStrut margin_strut = previous_inflow_position.margin_strut; - - bool should_position_pending_floats = - !IsNewFormattingContextForBlockLevelChild(Style(), *child) && -@@ -371,45 +399,50 @@ NGLogicalOffset NGBlockLayoutAlgorithm:: - // be positioned before layout. This also resolves the fragment's bfc offset. - if (should_position_pending_floats) { - LayoutUnit origin_point_block_offset = -- curr_bfc_offset_.block_offset + curr_margin_strut_.Sum(); -- MaybeUpdateFragmentBfcOffset( -- ConstraintSpace(), -- {curr_bfc_offset_.inline_offset, origin_point_block_offset}, -- &container_builder_); -+ bfc_block_offset + margin_strut.Sum(); -+ MaybeUpdateFragmentBfcOffset(ConstraintSpace(), origin_point_block_offset, -+ &container_builder_); -+ // TODO(ikilpatrick): Check if origin_point_block_offset is correct - -+ // MaybeUpdateFragmentBfcOffset might have changed it due to clearance. - PositionPendingFloats(origin_point_block_offset, &container_builder_, - MutableConstraintSpace()); - } - -- NGLogicalOffset child_bfc_offset = curr_bfc_offset_; -- child_bfc_offset.inline_offset += -- {border_and_padding_.inline_start + curr_child_margins_.inline_start}; -+ NGLogicalOffset child_bfc_offset = { -+ ConstraintSpace().BfcOffset().inline_offset + -+ border_and_padding_.inline_start + margins.inline_start, -+ bfc_block_offset}; -+ -+ bool is_new_fc = IsNewFormattingContextForBlockLevelChild(Style(), *child); - - // Append the current margin strut with child's block start margin. - // Non empty border/padding, and new FC use cases are handled inside of the - // child's layout. -- if (!IsNewFormattingContextForBlockLevelChild(Style(), *child)) -- curr_margin_strut_.Append(curr_child_margins_.block_start); -+ if (!is_new_fc) -+ margin_strut.Append(margins.block_start); - - // TODO(crbug.com/716930): We should also collapse margins below once we - // remove LayoutInline splitting. - - // Should collapse margins if our child is a legacy block. -- if (IsLegacyBlock(*child)) { -- curr_bfc_offset_ += -- {border_and_padding_.inline_start + curr_child_margins_.inline_start, -- curr_margin_strut_.Sum()}; -- MaybeUpdateFragmentBfcOffset(ConstraintSpace(), curr_bfc_offset_, -- &container_builder_); -- PositionPendingFloats(curr_bfc_offset_.block_offset, &container_builder_, -+ // TODO(ikilpatrick): I think this can be removed. -+ if (IsLegacyBlock(*child) && !is_new_fc) { -+ child_bfc_offset.block_offset += margin_strut.Sum(); -+ MaybeUpdateFragmentBfcOffset( -+ ConstraintSpace(), child_bfc_offset.block_offset, &container_builder_); -+ // TODO(ikilpatrick): Check if child_bfc_offset.block_offset is correct - -+ // MaybeUpdateFragmentBfcOffset might have changed it due to clearance. -+ PositionPendingFloats(child_bfc_offset.block_offset, &container_builder_, - MutableConstraintSpace()); -- curr_margin_strut_ = {}; -+ margin_strut = {}; - } -- child_bfc_offset.block_offset = curr_bfc_offset_.block_offset; -- return child_bfc_offset; -+ return {child_bfc_offset, margin_strut, margins}; - } - --void NGBlockLayoutAlgorithm::FinishChildLayout( -+NGPreviousInflowPosition NGBlockLayoutAlgorithm::FinishChildLayout( - const NGConstraintSpace& child_space, -+ const NGPreviousInflowPosition& previous_inflow_position, -+ const NGInflowChildData& child_data, - const NGLayoutInputNode* child, - NGLayoutResult* layout_result) { - // Pull out unpositioned floats to the current fragment. This may needed if -@@ -425,97 +458,134 @@ void NGBlockLayoutAlgorithm::FinishChild - // Determine the fragment's position in the parent space. - WTF::Optional child_bfc_offset; - if (child_space.IsNewFormattingContext()) -- child_bfc_offset = PositionNewFc(fragment, child_space); -+ child_bfc_offset = PositionNewFc(*child, previous_inflow_position, fragment, -+ child_data, child_space); - else if (fragment.BfcOffset()) - child_bfc_offset = PositionWithBfcOffset(fragment); - else if (IsLegacyBlock(*child)) -- child_bfc_offset = PositionLegacy(child_space); -+ child_bfc_offset = PositionLegacy(child_space, child_data); - else if (container_builder_.BfcOffset()) -- child_bfc_offset = PositionWithParentBfc(child_space, fragment); -+ child_bfc_offset = PositionWithParentBfc(child_space, child_data, fragment); - -- NGLogicalOffset logical_offset = CalculateLogicalOffset(child_bfc_offset); -+ NGLogicalOffset logical_offset = -+ CalculateLogicalOffset(child_data.margins, child_bfc_offset); - -- // Update margin strut. -- curr_margin_strut_ = fragment.EndMarginStrut(); -- curr_margin_strut_.Append(curr_child_margins_.block_end); -+ NGMarginStrut margin_strut = fragment.EndMarginStrut(); -+ margin_strut.Append(child_data.margins.block_end); - -- // Only modify content_size if BlockSize is not empty. It's needed to prevent -- // the situation when logical_offset is included in content_size for empty -- // blocks. Example: -+ // Only modify content_size_ if the fragment's BlockSize is not empty. This is -+ // needed to prevent the situation when logical_offset is included in -+ // content_size_ for empty blocks. Example: - //
- //
- //
- //
- if (fragment.BlockSize()) -- content_size_ = fragment.BlockSize() + logical_offset.block_offset; -- max_inline_size_ = -- std::max(max_inline_size_, fragment.InlineSize() + -- curr_child_margins_.InlineSum() + -- border_and_padding_.InlineSum()); -+ content_size_ = std::max( -+ content_size_, logical_offset.block_offset + fragment.BlockSize()); -+ max_inline_size_ = std::max( -+ max_inline_size_, fragment.InlineSize() + child_data.margins.InlineSum() + -+ border_and_padding_.InlineSum()); - - container_builder_.AddChild(layout_result, logical_offset); -+ -+ // Determine the child's end BFC block offset for the next child to use. -+ LayoutUnit child_end_bfc_block_offset; -+ if (child_bfc_offset) { -+ // TODO(crbug.com/716930): I think the fragment.BfcOffset() condition here -+ // can be removed once we've removed inline splitting. -+ if (fragment.BlockSize() || fragment.BfcOffset()) { -+ child_end_bfc_block_offset = -+ child_bfc_offset.value().block_offset + fragment.BlockSize(); -+ } else { -+ DCHECK_EQ(LayoutUnit(), fragment.BlockSize()); -+ child_end_bfc_block_offset = previous_inflow_position.bfc_block_offset; -+ } -+ } else { -+ child_end_bfc_block_offset = ConstraintSpace().BfcOffset().block_offset; -+ } -+ -+ return {child_end_bfc_block_offset, -+ logical_offset.block_offset + fragment.BlockSize(), margin_strut}; - } - - NGLogicalOffset NGBlockLayoutAlgorithm::PositionNewFc( -+ const NGLayoutInputNode& child, -+ const NGPreviousInflowPosition& previous_inflow_position, - const NGBoxFragment& fragment, -+ const NGInflowChildData& child_data, - const NGConstraintSpace& child_space) { -+ const ComputedStyle& child_style = child.Style(); -+ -+ LayoutUnit child_bfc_offset_estimate = -+ child_data.bfc_offset_estimate.block_offset; -+ - // 1. Position all pending floats to a temporary space. - RefPtr tmp_space = - NGConstraintSpaceBuilder(&child_space) - .SetIsNewFormattingContext(false) - .ToConstraintSpace(child_space.WritingMode()); -- PositionFloats(curr_bfc_offset_.block_offset, curr_bfc_offset_.block_offset, -- curr_bfc_offset_.block_offset, -+ PositionFloats(child_bfc_offset_estimate, child_bfc_offset_estimate, -+ child_bfc_offset_estimate, - container_builder_.UnpositionedFloats(), tmp_space.Get()); - -- NGLogicalOffset origin_offset = curr_bfc_offset_; -- origin_offset.inline_offset += border_and_padding_.inline_start; -+ NGLogicalOffset origin_offset = {ConstraintSpace().BfcOffset().inline_offset + -+ border_and_padding_.inline_start, -+ child_bfc_offset_estimate}; -+ AdjustToClearance( -+ GetClearanceOffset(ConstraintSpace().Exclusions(), child_style.Clear()), -+ &origin_offset); - - // 2. Find an estimated layout opportunity for our fragment. - NGLayoutOpportunity opportunity = FindLayoutOpportunityForFragment( - tmp_space->Exclusions().get(), child_space.AvailableSize(), origin_offset, -- curr_child_margins_, fragment.Size()); -+ child_data.margins, fragment.Size()); -+ -+ NGMarginStrut margin_strut = previous_inflow_position.margin_strut; - - // 3. If the found opportunity lies on the same line with our estimated - // child's BFC offset then merge fragment's margins with the current - // MarginStrut. -- if (opportunity.offset.block_offset == curr_bfc_offset_.block_offset) -- curr_margin_strut_.Append(curr_child_margins_.block_start); -- curr_bfc_offset_.block_offset += curr_margin_strut_.Sum(); -- curr_margin_strut_ = {}; -+ if (opportunity.offset.block_offset == child_bfc_offset_estimate) -+ margin_strut.Append(child_data.margins.block_start); -+ child_bfc_offset_estimate += margin_strut.Sum(); - - // 4. The child's BFC block offset is known here. -- MaybeUpdateFragmentBfcOffset(ConstraintSpace(), curr_bfc_offset_, -+ MaybeUpdateFragmentBfcOffset(ConstraintSpace(), child_bfc_offset_estimate, - &container_builder_); -- PositionPendingFloats(curr_bfc_offset_.block_offset, &container_builder_, -+ PositionPendingFloats(child_bfc_offset_estimate, &container_builder_, - MutableConstraintSpace()); - -- origin_offset = curr_bfc_offset_; -- origin_offset.inline_offset += border_and_padding_.inline_start; -+ origin_offset = {ConstraintSpace().BfcOffset().inline_offset + -+ border_and_padding_.inline_start, -+ child_bfc_offset_estimate}; -+ AdjustToClearance( -+ GetClearanceOffset(ConstraintSpace().Exclusions(), child_style.Clear()), -+ &origin_offset); - - // 5. Find the final layout opportunity for the fragment after all pending - // floats are positioned at the correct BFC block's offset. - opportunity = FindLayoutOpportunityForFragment( - MutableConstraintSpace()->Exclusions().get(), child_space.AvailableSize(), -- origin_offset, curr_child_margins_, fragment.Size()); -+ origin_offset, child_data.margins, fragment.Size()); - -- curr_bfc_offset_ = opportunity.offset; -- return curr_bfc_offset_; -+ return opportunity.offset; - } - - NGLogicalOffset NGBlockLayoutAlgorithm::PositionWithBfcOffset( - const NGBoxFragment& fragment) { - DCHECK(fragment.BfcOffset()); -- curr_bfc_offset_.block_offset = fragment.BfcOffset().value().block_offset; -- MaybeUpdateFragmentBfcOffset(ConstraintSpace(), curr_bfc_offset_, -+ LayoutUnit bfc_block_offset = fragment.BfcOffset().value().block_offset; -+ MaybeUpdateFragmentBfcOffset(ConstraintSpace(), bfc_block_offset, - &container_builder_); -- PositionPendingFloats(curr_bfc_offset_.block_offset, &container_builder_, -+ PositionPendingFloats(bfc_block_offset, &container_builder_, - MutableConstraintSpace()); - return fragment.BfcOffset().value(); - } - - NGLogicalOffset NGBlockLayoutAlgorithm::PositionWithParentBfc( - const NGConstraintSpace& space, -+ const NGInflowChildData& child_data, - const NGBoxFragment& fragment) { - // The child must be an in-flow zero-block-size fragment, use its end margin - // strut for positioning. -@@ -523,22 +593,28 @@ NGLogicalOffset NGBlockLayoutAlgorithm:: - DCHECK_EQ(fragment.BlockSize(), LayoutUnit()); - - NGMarginStrut margin_strut = fragment.EndMarginStrut(); -- margin_strut.Append(curr_child_margins_.block_end); -+ margin_strut.Append(child_data.margins.block_end); - -- curr_bfc_offset_ += -- {border_and_padding_.inline_start + curr_child_margins_.inline_start, -- margin_strut.Sum()}; -- AdjustToClearance(space.ClearanceOffset(), &curr_bfc_offset_); -- PositionPendingFloatsFromOffset( -- curr_bfc_offset_.block_offset, curr_bfc_offset_.block_offset, -- &container_builder_, MutableConstraintSpace()); -- return curr_bfc_offset_; -+ NGLogicalOffset bfc_offset = { -+ ConstraintSpace().BfcOffset().inline_offset + -+ border_and_padding_.inline_start + child_data.margins.inline_start, -+ child_data.bfc_offset_estimate.block_offset + margin_strut.Sum()}; -+ AdjustToClearance(space.ClearanceOffset(), &bfc_offset); -+ PositionPendingFloatsFromOffset(bfc_offset.block_offset, -+ bfc_offset.block_offset, &container_builder_, -+ MutableConstraintSpace()); -+ return bfc_offset; - } - - NGLogicalOffset NGBlockLayoutAlgorithm::PositionLegacy( -- const NGConstraintSpace& child_space) { -- AdjustToClearance(child_space.ClearanceOffset(), &curr_bfc_offset_); -- return curr_bfc_offset_; -+ const NGConstraintSpace& child_space, -+ const NGInflowChildData& child_data) { -+ NGLogicalOffset bfc_offset = {ConstraintSpace().BfcOffset().inline_offset + -+ border_and_padding_.inline_start + -+ child_data.margins.inline_start, -+ child_data.bfc_offset_estimate.block_offset}; -+ AdjustToClearance(child_space.ClearanceOffset(), &bfc_offset); -+ return bfc_offset; - } - - void NGBlockLayoutAlgorithm::FinalizeForFragmentation() { -@@ -609,8 +685,8 @@ NGBoxStrut NGBlockLayoutAlgorithm::Calcu - } - - RefPtr NGBlockLayoutAlgorithm::CreateConstraintSpaceForChild( -- const NGLogicalOffset& child_bfc_offset, -- const NGLayoutInputNode& child) { -+ const NGLayoutInputNode& child, -+ const NGInflowChildData& child_data) { - NGConstraintSpaceBuilder space_builder(MutableConstraintSpace()); - space_builder.SetAvailableSize(child_available_size_) - .SetPercentageResolutionSize(child_percentage_size_); -@@ -618,8 +694,8 @@ RefPtr NGBlockLayoutA - const ComputedStyle& child_style = child.Style(); - bool is_new_bfc = IsNewFormattingContextForBlockLevelChild(Style(), child); - space_builder.SetIsNewFormattingContext(is_new_bfc) -- .SetBfcOffset(child_bfc_offset) -- .SetMarginStrut(curr_margin_strut_); -+ .SetBfcOffset(child_data.bfc_offset_estimate) -+ .SetMarginStrut(child_data.margin_strut); - - if (!is_new_bfc) { - space_builder.SetUnpositionedFloats( -@@ -646,7 +722,7 @@ RefPtr NGBlockLayoutA - // position in the formatting context, and are able to adjust the - // fragmentation line. - if (is_new_bfc) { -- space_available -= child_bfc_offset.block_offset; -+ space_available -= child_data.bfc_offset_estimate.block_offset; - } - } - space_builder.SetFragmentainerSpaceAvailable(space_available); -diff -up chromium-60.0.3112.90/third_party/WebKit/Source/core/layout/ng/ng_block_layout_algorithm.h.perchild chromium-60.0.3112.90/third_party/WebKit/Source/core/layout/ng/ng_block_layout_algorithm.h ---- chromium-60.0.3112.90/third_party/WebKit/Source/core/layout/ng/ng_block_layout_algorithm.h.perchild 2017-08-02 18:05:34.000000000 -0400 -+++ chromium-60.0.3112.90/third_party/WebKit/Source/core/layout/ng/ng_block_layout_algorithm.h 2017-08-09 13:30:01.000000000 -0400 -@@ -18,10 +18,12 @@ namespace blink { - - class NGConstraintSpace; - class NGLayoutResult; -+struct NGInflowChildData; -+struct NGPreviousInflowPosition; - - // Updates the fragment's BFC offset if it's not already set. - void MaybeUpdateFragmentBfcOffset(const NGConstraintSpace&, -- const NGLogicalOffset&, -+ LayoutUnit bfc_block_offset, - NGFragmentBuilder* builder); - - // Positions pending floats starting from {@origin_block_offset} and relative -@@ -52,15 +54,19 @@ class CORE_EXPORT NGBlockLayoutAlgorithm - - // Creates a new constraint space for the current child. - RefPtr CreateConstraintSpaceForChild( -- const NGLogicalOffset& child_bfc_offset, -- const NGLayoutInputNode&); -+ const NGLayoutInputNode& child, -+ const NGInflowChildData& child_data); - - // @return Estimated BFC offset for the "to be layout" child. -- NGLogicalOffset PrepareChildLayout(NGLayoutInputNode*); -+ NGInflowChildData PrepareChildLayout(const NGPreviousInflowPosition&, -+ NGLayoutInputNode*); - -- void FinishChildLayout(const NGConstraintSpace&, -- const NGLayoutInputNode* child, -- NGLayoutResult*); -+ NGPreviousInflowPosition FinishChildLayout( -+ const NGConstraintSpace&, -+ const NGPreviousInflowPosition& prev_data, -+ const NGInflowChildData& child_data, -+ const NGLayoutInputNode* child, -+ NGLayoutResult*); - - // Positions the fragment that establishes a new formatting context. - // -@@ -81,7 +87,10 @@ class CORE_EXPORT NGBlockLayoutAlgorithm - // then it will be placed there and we collapse its margin. - // 2) If #new-fc is too big then we need to clear its position and place it - // below #float ignoring its vertical margin. -- NGLogicalOffset PositionNewFc(const NGBoxFragment&, -+ NGLogicalOffset PositionNewFc(const NGLayoutInputNode& child, -+ const NGPreviousInflowPosition&, -+ const NGBoxFragment&, -+ const NGInflowChildData& child_data, - const NGConstraintSpace& child_space); - - // Positions the fragment that knows its BFC offset. -@@ -95,12 +104,16 @@ class CORE_EXPORT NGBlockLayoutAlgorithm - //
- //
- NGLogicalOffset PositionWithParentBfc(const NGConstraintSpace&, -+ const NGInflowChildData& child_data, - const NGBoxFragment&); - -- NGLogicalOffset PositionLegacy(const NGConstraintSpace& child_space); -+ NGLogicalOffset PositionLegacy(const NGConstraintSpace& child_space, -+ const NGInflowChildData& child_data); - -- void HandleOutOfFlowPositioned(NGBlockNode*); -- void HandleFloating(NGBlockNode*, NGBlockBreakToken*); -+ void HandleOutOfFlowPositioned(const NGPreviousInflowPosition&, NGBlockNode*); -+ void HandleFloating(const NGPreviousInflowPosition&, -+ NGBlockNode*, -+ NGBlockBreakToken*); - - // Final adjustments before fragment creation. We need to prevent the - // fragment from crossing fragmentainer boundaries, and rather create a break -@@ -112,6 +125,7 @@ class CORE_EXPORT NGBlockLayoutAlgorithm - // or {@code known_fragment_offset} if the fragment knows it's offset - // @return Fragment's offset relative to the fragment's parent. - NGLogicalOffset CalculateLogicalOffset( -+ const NGBoxStrut& child_margins, - const WTF::Optional& known_fragment_offset); - - NGLogicalSize child_available_size_; -@@ -120,10 +134,6 @@ class CORE_EXPORT NGBlockLayoutAlgorithm - NGBoxStrut border_and_padding_; - LayoutUnit content_size_; - LayoutUnit max_inline_size_; -- // MarginStrut for the previous child. -- NGMarginStrut curr_margin_strut_; -- NGLogicalOffset curr_bfc_offset_; -- NGBoxStrut curr_child_margins_; - }; - - } // namespace blink diff --git a/chromium.spec b/chromium.spec index 7cc501e..40b532b 100644 --- a/chromium.spec +++ b/chromium.spec @@ -198,8 +198,7 @@ Patch44: chromium-60.0.3112.78-gtk2fix.patch # Do not mangle zlib Patch45: chromium-60.0.3112.78-no-zlib-mangle.patch # Apply this change to work around EPEL7 compiler issues -# https://chromium.googlesource.com/chromium/src/+/639c840bf93e2934fe6b3f564f90060313d5791a -Patch46: chromium-60.0.3112.90-no-per-child.patch +Patch46: chromium-60.0.3112.90-init-list-hack.patch ### Chromium Tests Patches ### @@ -629,7 +628,7 @@ udev. %patch44 -p1 -b .gtk2fix %patch45 -p1 -b .nozmangle %if 0%{?rhel} == 7 -%patch46 -p1 -b .noperchild +%patch46 -p1 -b .oldgcc %endif ### Chromium Tests Patches ### From 97f98971c79e08594b438c3baa3229fbacdab2cf Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 11 Aug 2017 10:26:58 -0400 Subject: [PATCH 0113/1449] try different hack --- chromium-60.0.3112.90-init-list-hack.patch | 31 +++++++++------------- 1 file changed, 12 insertions(+), 19 deletions(-) diff --git a/chromium-60.0.3112.90-init-list-hack.patch b/chromium-60.0.3112.90-init-list-hack.patch index 6cd91d6..1403335 100644 --- a/chromium-60.0.3112.90-init-list-hack.patch +++ b/chromium-60.0.3112.90-init-list-hack.patch @@ -1,34 +1,27 @@ diff -up chromium-60.0.3112.90/third_party/WebKit/Source/core/layout/ng/ng_block_layout_algorithm.cc.tryfix chromium-60.0.3112.90/third_party/WebKit/Source/core/layout/ng/ng_block_layout_algorithm.cc --- chromium-60.0.3112.90/third_party/WebKit/Source/core/layout/ng/ng_block_layout_algorithm.cc.tryfix 2017-08-09 14:45:17.619172987 -0400 -+++ chromium-60.0.3112.90/third_party/WebKit/Source/core/layout/ng/ng_block_layout_algorithm.cc 2017-08-09 14:46:07.375213058 -0400 -@@ -382,7 +382,7 @@ NGLogicalOffset NGBlockLayoutAlgorithm:: ++++ chromium-60.0.3112.90/third_party/WebKit/Source/core/layout/ng/ng_block_layout_algorithm.cc 2017-08-11 10:24:10.635245642 -0400 +@@ -381,8 +381,9 @@ NGLogicalOffset NGBlockLayoutAlgorithm:: + } NGLogicalOffset child_bfc_offset = curr_bfc_offset_; - child_bfc_offset.inline_offset += +- child_bfc_offset.inline_offset += - {border_and_padding_.inline_start + curr_child_margins_.inline_start}; -+ {{border_and_padding_.inline_start + curr_child_margins_.inline_start}}; ++ LayoutUnit sum_inline_starts = {border_and_padding_.inline_start + curr_child_margins_.inline_start}; ++ ++ child_bfc_offset.inline_offset += sum_inline_starts; // Append the current margin strut with child's block start margin. // Non empty border/padding, and new FC use cases are handled inside of the -@@ -396,8 +396,8 @@ NGLogicalOffset NGBlockLayoutAlgorithm:: +@@ -395,9 +396,8 @@ NGLogicalOffset NGBlockLayoutAlgorithm:: + // Should collapse margins if our child is a legacy block. if (IsLegacyBlock(*child)) { - curr_bfc_offset_ += +- curr_bfc_offset_ += - {border_and_padding_.inline_start + curr_child_margins_.inline_start, - curr_margin_strut_.Sum()}; -+ {{border_and_padding_.inline_start + curr_child_margins_.inline_start, -+ curr_margin_strut_.Sum()}}; ++ LayoutUnit sum_inline_starts2 = {border_and_padding_.inline_start + curr_child_margins_.inline_start, curr_margin_strut_.Sum()}; ++ curr_bfc_offset_ += sum_inline_starts2; MaybeUpdateFragmentBfcOffset(ConstraintSpace(), curr_bfc_offset_, &container_builder_); PositionPendingFloats(curr_bfc_offset_.block_offset, &container_builder_, -@@ -526,8 +526,8 @@ NGLogicalOffset NGBlockLayoutAlgorithm:: - margin_strut.Append(curr_child_margins_.block_end); - - curr_bfc_offset_ += -- {border_and_padding_.inline_start + curr_child_margins_.inline_start, -- margin_strut.Sum()}; -+ {{border_and_padding_.inline_start + curr_child_margins_.inline_start, -+ margin_strut.Sum()}}; - AdjustToClearance(space.ClearanceOffset(), &curr_bfc_offset_); - PositionPendingFloatsFromOffset( - curr_bfc_offset_.block_offset, curr_bfc_offset_.block_offset, From 268e0a67112d2d7a6a64f140248bd450865fb5ae Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 11 Aug 2017 12:00:53 -0400 Subject: [PATCH 0114/1449] okay, do you like this? --- chromium-60.0.3112.90-init-list-hack.patch | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/chromium-60.0.3112.90-init-list-hack.patch b/chromium-60.0.3112.90-init-list-hack.patch index 1403335..d3d52fe 100644 --- a/chromium-60.0.3112.90-init-list-hack.patch +++ b/chromium-60.0.3112.90-init-list-hack.patch @@ -20,8 +20,8 @@ diff -up chromium-60.0.3112.90/third_party/WebKit/Source/core/layout/ng/ng_block - curr_bfc_offset_ += - {border_and_padding_.inline_start + curr_child_margins_.inline_start, - curr_margin_strut_.Sum()}; -+ LayoutUnit sum_inline_starts2 = {border_and_padding_.inline_start + curr_child_margins_.inline_start, curr_margin_strut_.Sum()}; -+ curr_bfc_offset_ += sum_inline_starts2; ++ LayoutUnit sum_inline_starts2 = {border_and_padding_.inline_start + curr_child_margins_.inline_start}; ++ curr_bfc_offset_ += {sum_inline_starts2, curr_margin_strut_.Sum()}; MaybeUpdateFragmentBfcOffset(ConstraintSpace(), curr_bfc_offset_, &container_builder_); PositionPendingFloats(curr_bfc_offset_.block_offset, &container_builder_, From efb66ad8f9d80f9ef434b4cf6675aab61d5e4beb Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 14 Aug 2017 10:45:51 -0400 Subject: [PATCH 0115/1449] apply more workarounds to force code to compile with epel7 gcc --- chromium-60.0.3112.90-vulkan-force-c99.patch | 11 +++++++++++ chromium.spec | 9 +++++++-- 2 files changed, 18 insertions(+), 2 deletions(-) create mode 100644 chromium-60.0.3112.90-vulkan-force-c99.patch diff --git a/chromium-60.0.3112.90-vulkan-force-c99.patch b/chromium-60.0.3112.90-vulkan-force-c99.patch new file mode 100644 index 0000000..a415962 --- /dev/null +++ b/chromium-60.0.3112.90-vulkan-force-c99.patch @@ -0,0 +1,11 @@ +diff -up chromium-60.0.3112.90/third_party/angle/src/vulkan_support/BUILD.gn.c99 chromium-60.0.3112.90/third_party/angle/src/vulkan_support/BUILD.gn +--- chromium-60.0.3112.90/third_party/angle/src/vulkan_support/BUILD.gn.c99 2017-08-14 10:40:48.028799820 -0400 ++++ chromium-60.0.3112.90/third_party/angle/src/vulkan_support/BUILD.gn 2017-08-14 10:41:43.054734910 -0400 +@@ -180,6 +180,7 @@ config("vulkan_internal_config") { + cflags += [ "-Wno-ignored-attributes" ] + } + if (is_linux) { ++ cflags = [ "-std=c99" ] + defines += [ + "SYSCONFDIR=\"/etc\"", + "FALLBACK_CONFIG_DIRS=\"/etc/xdg\"", diff --git a/chromium.spec b/chromium.spec index 40b532b..8e2d7b0 100644 --- a/chromium.spec +++ b/chromium.spec @@ -116,7 +116,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3112.90 -Release: 2%{?dist} +Release: 3%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -197,8 +197,9 @@ Patch43: chromium-60.0.3112.78-jpeg-nomangle.patch Patch44: chromium-60.0.3112.78-gtk2fix.patch # Do not mangle zlib Patch45: chromium-60.0.3112.78-no-zlib-mangle.patch -# Apply this change to work around EPEL7 compiler issues +# Apply these changes to work around EPEL7 compiler issues Patch46: chromium-60.0.3112.90-init-list-hack.patch +Patch47: chromium-60.0.3112.90-vulkan-force-c99.patch ### Chromium Tests Patches ### @@ -629,6 +630,7 @@ udev. %patch45 -p1 -b .nozmangle %if 0%{?rhel} == 7 %patch46 -p1 -b .oldgcc +%patch47 -p1 -b .c99 %endif ### Chromium Tests Patches ### @@ -1837,6 +1839,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Mon Aug 14 2017 Tom Callaway 60.0.3112.90-3 +- apply more workarounds to coax code to build with epel7 gcc + * Wed Aug 9 2017 Tom Callaway 60.0.3112.90-2 - apply post 60 code commit to get code building on epel7 From 26f11a9f0f82327066da16a2d3a6f15dc7fdaef9 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 14 Aug 2017 11:20:03 -0400 Subject: [PATCH 0116/1449] apply more workarounds to force code to compile with epel7 gcc --- chromium-60.0.3112.90-vulkan-force-c99.patch | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium-60.0.3112.90-vulkan-force-c99.patch b/chromium-60.0.3112.90-vulkan-force-c99.patch index a415962..881aa91 100644 --- a/chromium-60.0.3112.90-vulkan-force-c99.patch +++ b/chromium-60.0.3112.90-vulkan-force-c99.patch @@ -5,7 +5,7 @@ diff -up chromium-60.0.3112.90/third_party/angle/src/vulkan_support/BUILD.gn.c99 cflags += [ "-Wno-ignored-attributes" ] } if (is_linux) { -+ cflags = [ "-std=c99" ] ++ cflags += [ "-std=c99" ] defines += [ "SYSCONFDIR=\"/etc\"", "FALLBACK_CONFIG_DIRS=\"/etc/xdg\"", From 5922b5cfc93c9d5de2fe2258364697ea0cae6de5 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 16 Aug 2017 17:20:49 -0400 Subject: [PATCH 0117/1449] update to 60.0.3112.101, apply upstream fix for cameras which report zero resolution formats (bz1465357) --- .gitignore | 1 + chromium-60.0.3112.101-camfix.patch | 25 +++++++++++++++++++++++++ chromium.spec | 13 ++++++++++--- sources | 2 +- 4 files changed, 37 insertions(+), 4 deletions(-) create mode 100644 chromium-60.0.3112.101-camfix.patch diff --git a/.gitignore b/.gitignore index 19bd92f..428fd64 100644 --- a/.gitignore +++ b/.gitignore @@ -26,3 +26,4 @@ /chromium-59.0.3071.115-clean.tar.xz /chromium-59.0.3071.109-freetype.tar.bz2 /chromium-60.0.3112.90-clean.tar.xz +/chromium-60.0.3112.101-clean.tar.xz diff --git a/chromium-60.0.3112.101-camfix.patch b/chromium-60.0.3112.101-camfix.patch new file mode 100644 index 0000000..0dd59d4 --- /dev/null +++ b/chromium-60.0.3112.101-camfix.patch @@ -0,0 +1,25 @@ +diff -up chromium-60.0.3112.101/content/browser/renderer_host/media/media_devices_dispatcher_host.cc.camfix chromium-60.0.3112.101/content/browser/renderer_host/media/media_devices_dispatcher_host.cc +--- chromium-60.0.3112.101/content/browser/renderer_host/media/media_devices_dispatcher_host.cc.camfix 2017-08-16 17:02:07.177832503 -0400 ++++ chromium-60.0.3112.101/content/browser/renderer_host/media/media_devices_dispatcher_host.cc 2017-08-16 17:02:56.378883520 -0400 +@@ -6,6 +6,7 @@ + + #include + ++#include + #include + #include + +@@ -454,6 +455,13 @@ media::VideoCaptureFormats MediaDevicesD + + media_stream_manager_->video_capture_manager()->GetDeviceSupportedFormats( + device_id, &formats); ++ // Remove formats that have zero resolution. ++ formats.erase(std::remove_if(formats.begin(), formats.end(), ++ [](const media::VideoCaptureFormat& format) { ++ return format.frame_size.GetArea() <= 0; ++ }), ++ formats.end()); ++ + return formats; + } + diff --git a/chromium.spec b/chromium.spec index 8e2d7b0..c99bb84 100644 --- a/chromium.spec +++ b/chromium.spec @@ -115,8 +115,8 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3112.90 -Release: 3%{?dist} +Version: %{majorversion}.0.3112.101 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -200,7 +200,8 @@ Patch45: chromium-60.0.3112.78-no-zlib-mangle.patch # Apply these changes to work around EPEL7 compiler issues Patch46: chromium-60.0.3112.90-init-list-hack.patch Patch47: chromium-60.0.3112.90-vulkan-force-c99.patch - +# https://chromium.googlesource.com/chromium/src/+/9c77470ff34bac937ceb765a27cee1703f0f2426 +Patch48: chromium-60.0.3112.101-camfix.patch ### Chromium Tests Patches ### Patch100: chromium-46.0.2490.86-use_system_opus.patch @@ -632,6 +633,7 @@ udev. %patch46 -p1 -b .oldgcc %patch47 -p1 -b .c99 %endif +%patch48 -p1 -b .camfix ### Chromium Tests Patches ### %patch100 -p1 -b .use_system_opus @@ -1839,6 +1841,11 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Wed Aug 16 2017 Tom Callaway 60.0.3112.101-1 +- update to 60.0.3112.101 +- apply upstream fix for cameras which report zero resolution formats + (bz1465357) + * Mon Aug 14 2017 Tom Callaway 60.0.3112.90-3 - apply more workarounds to coax code to build with epel7 gcc diff --git a/sources b/sources index 24b41df..9309b9e 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 -SHA512 (chromium-60.0.3112.90-clean.tar.xz) = 3b1579037b3debc0f714e5de3e02bd5fc1c8aa7482479ffc20b824653b11191ed558cef147633b30da16ffd8c26d5eacb95b93610041a44a6ea84606702f7ac1 SHA512 (policy_templates.zip) = 4d2a7162adb3ca224f3e1bf1d2936ae395603e8ffa3fda7753e666a16c42c7ba54c7acfcfdc742e22978ace37e471ed099d222063708d4d8a299da3daf135f15 +SHA512 (chromium-60.0.3112.101-clean.tar.xz) = 3ed13c6a32752294898fa72f2333f32fcf081eef7328307645dbc09baae95aca762d3083d2ae053fc903a0b4dc92e04da91a810d267aab21dea196362ed6abc6 From ae08a775d9336ef42c6aa3f65faf978fb71ddf1f Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 17 Aug 2017 09:31:37 -0400 Subject: [PATCH 0118/1449] fix dep issue with chrome-remote-desktop on el7 --- chromium.spec | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index c99bb84..2c2e466 100644 --- a/chromium.spec +++ b/chromium.spec @@ -116,7 +116,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3112.101 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -549,7 +549,11 @@ Requires(post): systemd Requires(preun): systemd Requires(postun): systemd Requires: xorg-x11-server-Xvfb +%if 0%{?rhel} == 7 +Requires: python-psutil +%else Requires: python2-psutil +%endif %if 0%{?shared} Requires: chromium-libs%{_isa} = %{version}-%{release} %endif @@ -1841,6 +1845,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Thu Aug 17 2017 Tom Callaway 60.0.3112.101-2 +- fix dep issue with chrome-remote-desktop on el7 + * Wed Aug 16 2017 Tom Callaway 60.0.3112.101-1 - update to 60.0.3112.101 - apply upstream fix for cameras which report zero resolution formats From b413a74418255ded1c8f4c6b45002d03372b0179 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 23 Aug 2017 14:53:36 -0400 Subject: [PATCH 0119/1449] Another player has entered the game: aarch64! --- ...ium-60.0.3112.101-fix-ffmpeg-aarch64.patch | 12 ++++++++ chromium.spec | 28 +++++++++++++++---- 2 files changed, 35 insertions(+), 5 deletions(-) create mode 100644 chromium-60.0.3112.101-fix-ffmpeg-aarch64.patch diff --git a/chromium-60.0.3112.101-fix-ffmpeg-aarch64.patch b/chromium-60.0.3112.101-fix-ffmpeg-aarch64.patch new file mode 100644 index 0000000..a39e044 --- /dev/null +++ b/chromium-60.0.3112.101-fix-ffmpeg-aarch64.patch @@ -0,0 +1,12 @@ +diff -up chromium-60.0.3112.101/third_party/ffmpeg/ffmpeg_generated.gni.aarch64 chromium-60.0.3112.101/third_party/ffmpeg/ffmpeg_generated.gni +--- chromium-60.0.3112.101/third_party/ffmpeg/ffmpeg_generated.gni.aarch64 2017-08-23 14:46:37.305832399 -0400 ++++ chromium-60.0.3112.101/third_party/ffmpeg/ffmpeg_generated.gni 2017-08-23 14:47:06.217148864 -0400 +@@ -539,7 +539,7 @@ if (is_linux && current_cpu == "arm64") + ] + } + +-if ((is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS")) { ++if ((is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "arm64" && ffmpeg_branding == "Chromium")) { + ffmpeg_c_sources += [ + "libavcodec/aarch64/mpegaudiodsp_init.c", + ] diff --git a/chromium.spec b/chromium.spec index 2c2e466..b058c6d 100644 --- a/chromium.spec +++ b/chromium.spec @@ -202,6 +202,8 @@ Patch46: chromium-60.0.3112.90-init-list-hack.patch Patch47: chromium-60.0.3112.90-vulkan-force-c99.patch # https://chromium.googlesource.com/chromium/src/+/9c77470ff34bac937ceb765a27cee1703f0f2426 Patch48: chromium-60.0.3112.101-camfix.patch +# Fix mp3 for aarch64 +Patch49: chromium-60.0.3112.101-fix-ffmpeg-aarch64.patch ### Chromium Tests Patches ### Patch100: chromium-46.0.2490.86-use_system_opus.patch @@ -411,7 +413,7 @@ Provides: chromium-libs = %{version}-%{release} Obsoletes: chromium-libs <= %{version}-%{release} %endif -ExclusiveArch: x86_64 i686 +ExclusiveArch: x86_64 i686 aarch64 # Bundled bits (I'm sure I've missed some) Provides: bundled(angle) = 2422 @@ -623,6 +625,7 @@ udev. # Do not apply mp3 change %else %patch34 -p1 -b .mp3 +%patch49 -p1 -b .aarch64 %endif %patch36 -p1 -b .revert %patch37 -p1 -b .ffmpeg-stdatomic @@ -751,7 +754,7 @@ popd # Core defines are flags that are true for both the browser and headless. CHROMIUM_CORE_GN_DEFINES="" CHROMIUM_CORE_GN_DEFINES+=' is_debug=false' -%ifarch x86_64 +%ifarch x86_64 aarch64 CHROMIUM_CORE_GN_DEFINES+=' system_libdir="lib64"' %endif CHROMIUM_CORE_GN_DEFINES+=' google_api_key="%{api_key}" google_default_client_id="%{default_client_id}" google_default_client_secret="%{default_client_secret}"' @@ -762,6 +765,9 @@ CHROMIUM_CORE_GN_DEFINES+=' ffmpeg_branding="ChromeOS" proprietary_codecs=true' CHROMIUM_CORE_GN_DEFINES+=' ffmpeg_branding="Chromium" proprietary_codecs=false' %endif CHROMIUM_CORE_GN_DEFINES+=' treat_warnings_as_errors=false' +%ifarch aarch64 +CHROMIUM_CORE_GN_DEFINES+=' target_cpu="arm64"' +%endif export CHROMIUM_CORE_GN_DEFINES CHROMIUM_BROWSER_GN_DEFINES="" @@ -1005,6 +1011,18 @@ build/linux/unbundle/replace_gn_files.py --system-libraries \ yasm \ zlib +# fix arm gcc +sed -i 's|arm-linux-gnueabihf-|arm-linux-gnu-|g' build/toolchain/linux/BUILD.gn + +%ifarch aarch64 +# We don't need to cross compile while building on an aarch64 system. +sed -i 's|aarch64-linux-gnu-||g' build/toolchain/linux/BUILD.gn + +# Correct the ninja file to check for aarch64, not just x86. +sed -i '/${LONG_BIT}/ a \ aarch64)\' ../depot_tools/ninja +sed -i '/aarch64)/ a \ exec "/usr/bin/ninja-build" "$@";;\' ../depot_tools/ninja +%endif + tools/gn/bootstrap/bootstrap.py -v --gn-gen-args "$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{target}/gn gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{target} @@ -1030,9 +1048,6 @@ sed '14i#define WIDEVINE_CDM_VERSION_STRING "Something fresh"' -i "third_party/w FILE=chrome/common/channel_info_posix.cc sed -i.orig -e 's/getenv("CHROME_VERSION_EXTRA")/"Fedora Project"/' $FILE -# fix arm gcc -sed -i 's|arm-linux-gnueabihf-|arm-linux-gnu-|g' build/toolchain/linux/BUILD.gn - %build %if %{?tests} @@ -1845,6 +1860,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Wed Aug 23 2017 Tom Callaway 60.0.3112.101-3 +- apply aarch64 fixes from Ryan Blakely + * Thu Aug 17 2017 Tom Callaway 60.0.3112.101-2 - fix dep issue with chrome-remote-desktop on el7 From c74ab79e4c2fddb71c175103babba7636e013a78 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 23 Aug 2017 16:34:59 -0400 Subject: [PATCH 0120/1449] add BR: ninja-build --- chromium.spec | 2 ++ 1 file changed, 2 insertions(+) diff --git a/chromium.spec b/chromium.spec index b058c6d..44792d6 100644 --- a/chromium.spec +++ b/chromium.spec @@ -377,6 +377,8 @@ BuildRequires: pkgconfig(gnome-keyring-1) # remote desktop needs this BuildRequires: pam-devel BuildRequires: systemd +# using the built from source version on aarch64 +BuildRequires: ninja-build # We pick up an automatic requires on the library, but we need the version check # because the nss shared library is unversioned. From 984bf67d4286d0c64b3ee2d80e37482367559d01 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 24 Aug 2017 16:03:00 -0400 Subject: [PATCH 0121/1449] update to 60.0.3112.113, fix ffmpeg clean script to not delete aarch64 file --- .gitignore | 1 + chromium.spec | 8 ++++++-- clean_ffmpeg.sh | 3 ++- sources | 1 + 4 files changed, 10 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index 428fd64..57a8df9 100644 --- a/.gitignore +++ b/.gitignore @@ -27,3 +27,4 @@ /chromium-59.0.3071.109-freetype.tar.bz2 /chromium-60.0.3112.90-clean.tar.xz /chromium-60.0.3112.101-clean.tar.xz +/chromium-60.0.3112.113-clean.tar.xz diff --git a/chromium.spec b/chromium.spec index 44792d6..9552beb 100644 --- a/chromium.spec +++ b/chromium.spec @@ -115,8 +115,8 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3112.101 -Release: 2%{?dist} +Version: %{majorversion}.0.3112.113 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1862,6 +1862,10 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Thu Aug 23 2017 Tom Callaway 60.0.3112.113-1 +- fix ffmpeg clean script to not delete aarch64 file +- update to 60.0.3112.113 + * Wed Aug 23 2017 Tom Callaway 60.0.3112.101-3 - apply aarch64 fixes from Ryan Blakely diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index 755ce8a..7bd9e5d 100755 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -219,7 +219,8 @@ manual_files=" libavcodec/x86/hpeldsp_rnd_template.c \ libavutil/x86/x86inc.asm \ libavutil/x86/x86util.asm " -mp3_files=" libavcodec/aac_ac3_parser.c \ +mp3_files=" libavcodec/aarch64/mpegaudiodsp_init.c \ + libavcodec/aac_ac3_parser.c \ libavcodec/aac_parser.c \ libavcodec/aacadtsdec.c \ libavcodec/aacps_float.c \ diff --git a/sources b/sources index 9309b9e..e3cfeb6 100644 --- a/sources +++ b/sources @@ -1,3 +1,4 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 SHA512 (policy_templates.zip) = 4d2a7162adb3ca224f3e1bf1d2936ae395603e8ffa3fda7753e666a16c42c7ba54c7acfcfdc742e22978ace37e471ed099d222063708d4d8a299da3daf135f15 SHA512 (chromium-60.0.3112.101-clean.tar.xz) = 3ed13c6a32752294898fa72f2333f32fcf081eef7328307645dbc09baae95aca762d3083d2ae053fc903a0b4dc92e04da91a810d267aab21dea196362ed6abc6 +SHA512 (chromium-60.0.3112.113-clean.tar.xz) = 7b9dcea4b256113757e57da6b4025873b0e57da38cbb37d6ea8ae8910127a885c02be2bd3f4e6f0af3c8403986da1190d94f2f060198a25d4780a3c70b3e6065 From 761a02838d7de421b957b9ce089d1103606a9581 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 24 Aug 2017 17:03:09 -0400 Subject: [PATCH 0122/1449] fixed sources --- clean_ffmpeg.sh | 1 + sources | 3 +-- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index 7bd9e5d..272ec2d 100755 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -220,6 +220,7 @@ manual_files=" libavcodec/x86/hpeldsp_rnd_template.c \ libavutil/x86/x86util.asm " mp3_files=" libavcodec/aarch64/mpegaudiodsp_init.c \ + libavcodec/aarch64/mpegaudiodsp_neon.S \ libavcodec/aac_ac3_parser.c \ libavcodec/aac_parser.c \ libavcodec/aacadtsdec.c \ diff --git a/sources b/sources index e3cfeb6..a3e56fa 100644 --- a/sources +++ b/sources @@ -1,4 +1,3 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 SHA512 (policy_templates.zip) = 4d2a7162adb3ca224f3e1bf1d2936ae395603e8ffa3fda7753e666a16c42c7ba54c7acfcfdc742e22978ace37e471ed099d222063708d4d8a299da3daf135f15 -SHA512 (chromium-60.0.3112.101-clean.tar.xz) = 3ed13c6a32752294898fa72f2333f32fcf081eef7328307645dbc09baae95aca762d3083d2ae053fc903a0b4dc92e04da91a810d267aab21dea196362ed6abc6 -SHA512 (chromium-60.0.3112.113-clean.tar.xz) = 7b9dcea4b256113757e57da6b4025873b0e57da38cbb37d6ea8ae8910127a885c02be2bd3f4e6f0af3c8403986da1190d94f2f060198a25d4780a3c70b3e6065 +SHA512 (chromium-60.0.3112.113-clean.tar.xz) = 67cd2d29761b61187ccec90da7d755f4214afd99bcfba4f0633b444532e094fe4c6624f2b1f0695df5ea5d616cff971fa4be52e60ff108e660db36f54fc73c02 From 7d1f0eac97963a947de652c5301165efb02a9521 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 25 Aug 2017 13:45:36 -0400 Subject: [PATCH 0123/1449] fixed sources for aarch64 --- .gitignore | 1 + clean_ffmpeg.sh | 3 +++ sources | 2 +- 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 57a8df9..4364688 100644 --- a/.gitignore +++ b/.gitignore @@ -28,3 +28,4 @@ /chromium-60.0.3112.90-clean.tar.xz /chromium-60.0.3112.101-clean.tar.xz /chromium-60.0.3112.113-clean.tar.xz +/chromium-60.0.3112.113.tar.xz diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index 272ec2d..728a677 100755 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -211,6 +211,9 @@ manual_files=" libavcodec/x86/hpeldsp_rnd_template.c \ libavformat/options.c \ libavformat/pcm.c \ libavformat/utils.c \ + libavutil/aarch64/asm.S \ + libavutil/aarch64/bswap.h \ + libavutil/aarch64/timer.h \ libavutil/cpu.c \ libavutil/fixed_dsp.c \ libavutil/float_dsp.c \ diff --git a/sources b/sources index a3e56fa..82d3d69 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 SHA512 (policy_templates.zip) = 4d2a7162adb3ca224f3e1bf1d2936ae395603e8ffa3fda7753e666a16c42c7ba54c7acfcfdc742e22978ace37e471ed099d222063708d4d8a299da3daf135f15 -SHA512 (chromium-60.0.3112.113-clean.tar.xz) = 67cd2d29761b61187ccec90da7d755f4214afd99bcfba4f0633b444532e094fe4c6624f2b1f0695df5ea5d616cff971fa4be52e60ff108e660db36f54fc73c02 +SHA512 (chromium-60.0.3112.113-clean.tar.xz) = 197b8b44a98709cbc17f7081d0fdcc0cd57e8a1516cca47cc5004d2f002a2b49e9dca362bc139cf0b9c042701601c27c22ff62af001eb026126adfc461cb4ff8 From 321d5de0345b4863d1625507044ed08ff9f00d12 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 25 Aug 2017 15:31:37 -0400 Subject: [PATCH 0124/1449] fix include pathing in libavutil/timer.h --- ...113-libavutil-timer-include-path-fix.patch | 21 +++++++++++++++++++ chromium.spec | 5 +++++ 2 files changed, 26 insertions(+) create mode 100644 chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch diff --git a/chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch b/chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch new file mode 100644 index 0000000..7248825 --- /dev/null +++ b/chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch @@ -0,0 +1,21 @@ +diff -up chromium-60.0.3112.113/third_party/ffmpeg/libavutil/timer.h.pathfix chromium-60.0.3112.113/third_party/ffmpeg/libavutil/timer.h +--- chromium-60.0.3112.113/third_party/ffmpeg/libavutil/timer.h.pathfix 2017-08-25 15:29:12.143242471 -0400 ++++ chromium-60.0.3112.113/third_party/ffmpeg/libavutil/timer.h 2017-08-25 15:29:36.941835865 -0400 +@@ -39,13 +39,13 @@ + #include "log.h" + + #if ARCH_AARCH64 +-# include "aarch64/timer.h" ++# include "libavutil/aarch64/timer.h" + #elif ARCH_ARM +-# include "arm/timer.h" ++# include "libavutil/arm/timer.h" + #elif ARCH_PPC +-# include "ppc/timer.h" ++# include "libavutil/ppc/timer.h" + #elif ARCH_X86 +-# include "x86/timer.h" ++# include "libavutil/x86/timer.h" + #endif + + #if !defined(AV_READ_TIME) diff --git a/chromium.spec b/chromium.spec index 9552beb..7df942d 100644 --- a/chromium.spec +++ b/chromium.spec @@ -204,6 +204,9 @@ Patch47: chromium-60.0.3112.90-vulkan-force-c99.patch Patch48: chromium-60.0.3112.101-camfix.patch # Fix mp3 for aarch64 Patch49: chromium-60.0.3112.101-fix-ffmpeg-aarch64.patch +# Fix libavutil include pathing to find arch specific timer.h +# For some reason, this only fails on aarch64. No idea why. +Patch50: chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch ### Chromium Tests Patches ### Patch100: chromium-46.0.2490.86-use_system_opus.patch @@ -643,6 +646,8 @@ udev. %patch47 -p1 -b .c99 %endif %patch48 -p1 -b .camfix +%patch50 -p1 -b .pathfix + ### Chromium Tests Patches ### %patch100 -p1 -b .use_system_opus From 21e36077483a64d95392724bbdf4bc60ed4864c7 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 25 Aug 2017 16:59:08 -0400 Subject: [PATCH 0125/1449] more aarch64 ffmpeg files --- clean_ffmpeg.sh | 8 +++++++- sources | 2 +- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index 728a677..e68c589 100755 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -186,7 +186,12 @@ header_files=" libavcodec/x86/inline_asm.h \ compat/va_copy.h \ compat/atomics/gcc/stdatomic.h " -manual_files=" libavcodec/x86/hpeldsp_rnd_template.c \ +manual_files=" libavcodec/aarch64/fft_neon.S \ + libavcodec/aarch64/h264pred_neon.S \ + libavcodec/aarch64/hpeldsp_neon.S \ + libavcodec/aarch64/mdct_neon.S \ + libavcodec/aarch64/vorbisdsp_neon.S \ + libavcodec/x86/hpeldsp_rnd_template.c \ libavcodec/x86/rnd_template.c \ libavcodec/x86/videodsp.asm \ libavcodec/x86/videodsp_init.c \ @@ -213,6 +218,7 @@ manual_files=" libavcodec/x86/hpeldsp_rnd_template.c \ libavformat/utils.c \ libavutil/aarch64/asm.S \ libavutil/aarch64/bswap.h \ + libavutil/aarch64/float_dsp_neon.S \ libavutil/aarch64/timer.h \ libavutil/cpu.c \ libavutil/fixed_dsp.c \ diff --git a/sources b/sources index 82d3d69..c901ac2 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 SHA512 (policy_templates.zip) = 4d2a7162adb3ca224f3e1bf1d2936ae395603e8ffa3fda7753e666a16c42c7ba54c7acfcfdc742e22978ace37e471ed099d222063708d4d8a299da3daf135f15 -SHA512 (chromium-60.0.3112.113-clean.tar.xz) = 197b8b44a98709cbc17f7081d0fdcc0cd57e8a1516cca47cc5004d2f002a2b49e9dca362bc139cf0b9c042701601c27c22ff62af001eb026126adfc461cb4ff8 +SHA512 (chromium-60.0.3112.113-clean.tar.xz) = 3fbcdf47485a9d655cf43f05b24f0e22e6d2662d155f54039668673b21616d2941a0620db74c3788288af91fcb0ded1d2f45497c51a8799ddcf70f7420aee2c5 From a54623014cadc60388bf6607dad657bbe550ca73 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 28 Aug 2017 15:59:18 -0400 Subject: [PATCH 0126/1449] disable aarch64 on rhel7, missing libatomic.so for some reason --- chromium.spec | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/chromium.spec b/chromium.spec index 7df942d..787cb7a 100644 --- a/chromium.spec +++ b/chromium.spec @@ -116,7 +116,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3112.113 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -418,7 +418,11 @@ Provides: chromium-libs = %{version}-%{release} Obsoletes: chromium-libs <= %{version}-%{release} %endif +%if 0%{?rhel} +ExclusiveArch: x86_64 i686 +%else ExclusiveArch: x86_64 i686 aarch64 +%endif # Bundled bits (I'm sure I've missed some) Provides: bundled(angle) = 2422 @@ -1867,7 +1871,10 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog -* Thu Aug 23 2017 Tom Callaway 60.0.3112.113-1 +* Mon Aug 28 2017 Tom Callaway 60.0.3112.113-2 +- disable aarch64 on rhel7, missing libatomic.so for some reason + +* Wed Aug 23 2017 Tom Callaway 60.0.3112.113-1 - fix ffmpeg clean script to not delete aarch64 file - update to 60.0.3112.113 From 1c11a82cbd1c568f846efb79f94a197b9632f579 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Fri, 1 Sep 2017 12:04:43 +0200 Subject: [PATCH 0127/1449] Require explicit version-release of chromium-libs from media-freeworld Since the freeworld package is built in another repository, it may be out of sync. This makes sure `dnf update` won't just remove the installed version of chromium in order to update chromium-libs-media-freeworld if that happens to be in the repo sooner than chromium. Reported as #4572 in that other repository. --- chromium.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/chromium.spec b/chromium.spec index 787cb7a..788c7d8 100644 --- a/chromium.spec +++ b/chromium.spec @@ -534,6 +534,7 @@ Shared libraries used by chromium (and chrome-remote-desktop). Summary: Chromium media libraries built with all possible codecs Provides: chromium-libs-media = %{version}-%{release} Provides: chromium-libs-media%{_isa} = %{version}-%{release} +Requires: chromium-libs%{_isa} = %{version}-%{release} Requires(post): %{_sbindir}/update-alternatives Requires(preun): %{_sbindir}/update-alternatives From 9debcb008eb215404d6496c97f1db6766d4010ad Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 11 Sep 2017 11:16:31 -0400 Subject: [PATCH 0128/1449] 61.0.3163.79 --- .gitignore | 1 + chromium-61.0.3163.79-MOAR-GCC-FIXES.patch | 35 ++ chromium-61.0.3163.79-enable-mp3.patch | 473 ++++++++++++++++++ chromium-61.0.3163.79-fix-atk-compile.patch | 12 + ...mium-61.0.3163.79-fix-ffmpeg-aarch64.patch | 12 + chromium-61.0.3163.79-fix-gn-again.patch | 20 + ...um-61.0.3163.79-gcc-no-opt-safe-math.patch | 13 + chromium-61.0.3163.79-gcc5-r1.patch | 67 +++ chromium-61.0.3163.79-gcc7.patch | 12 + chromium-61.0.3163.79-gtk2fix.patch | 23 + chromium-61.0.3163.79-setopaque.patch | 12 + chromium.spec | 66 ++- clean_ffmpeg.sh | 39 +- get_free_ffmpeg_source_files.py | 6 +- sources | 4 +- 15 files changed, 751 insertions(+), 44 deletions(-) create mode 100644 chromium-61.0.3163.79-MOAR-GCC-FIXES.patch create mode 100644 chromium-61.0.3163.79-enable-mp3.patch create mode 100644 chromium-61.0.3163.79-fix-atk-compile.patch create mode 100644 chromium-61.0.3163.79-fix-ffmpeg-aarch64.patch create mode 100644 chromium-61.0.3163.79-fix-gn-again.patch create mode 100644 chromium-61.0.3163.79-gcc-no-opt-safe-math.patch create mode 100644 chromium-61.0.3163.79-gcc5-r1.patch create mode 100644 chromium-61.0.3163.79-gcc7.patch create mode 100644 chromium-61.0.3163.79-gtk2fix.patch create mode 100644 chromium-61.0.3163.79-setopaque.patch diff --git a/.gitignore b/.gitignore index 4364688..b3e1d00 100644 --- a/.gitignore +++ b/.gitignore @@ -29,3 +29,4 @@ /chromium-60.0.3112.101-clean.tar.xz /chromium-60.0.3112.113-clean.tar.xz /chromium-60.0.3112.113.tar.xz +/chromium-61.0.3163.79-clean.tar.xz diff --git a/chromium-61.0.3163.79-MOAR-GCC-FIXES.patch b/chromium-61.0.3163.79-MOAR-GCC-FIXES.patch new file mode 100644 index 0000000..c5999de --- /dev/null +++ b/chromium-61.0.3163.79-MOAR-GCC-FIXES.patch @@ -0,0 +1,35 @@ +diff -up chromium-61.0.3163.79/base/numerics/safe_math_clang_gcc_impl.h.fixgccagain chromium-61.0.3163.79/base/numerics/safe_math_clang_gcc_impl.h +--- chromium-61.0.3163.79/base/numerics/safe_math_clang_gcc_impl.h.fixgccagain 2017-09-06 15:48:27.560803028 -0400 ++++ chromium-61.0.3163.79/base/numerics/safe_math_clang_gcc_impl.h 2017-09-06 15:50:08.715853695 -0400 +@@ -126,6 +126,7 @@ struct ClampedAddFastOp { + } + }; + ++#if defined(__clang__) // Not supported on GCC. + // This is the fastest negation on Intel, and a decent fallback on arm. + __attribute__((always_inline)) inline int8_t ClampedNegate(uint8_t value) { + uint8_t carry; +@@ -169,6 +170,7 @@ __attribute__((always_inline)) inline in + __attribute__((always_inline)) inline int64_t ClampedNegate(int64_t value) { + return ClampedNegate(static_cast(value)); + } ++#endif + + template + struct ClampedSubFastOp { +@@ -180,6 +182,7 @@ struct ClampedSubFastOp { + return ClampedSubFastAsmOp::template Do(x, y); + } + ++#if defined(__clang__) // Not supported on GCC. + // Fast path for generic clamped negation. + if (std::is_same::value && std::is_same::value && + IsCompileTimeConstant(x) && x == 0 && !IsCompileTimeConstant(y)) { +@@ -190,6 +193,7 @@ struct ClampedSubFastOp { + IntegerBitsPlusSign::value, std::is_signed::value>::type>( + y)); + } ++#endif + + V result; + return !__builtin_sub_overflow(x, y, &result) diff --git a/chromium-61.0.3163.79-enable-mp3.patch b/chromium-61.0.3163.79-enable-mp3.patch new file mode 100644 index 0000000..375214b --- /dev/null +++ b/chromium-61.0.3163.79-enable-mp3.patch @@ -0,0 +1,473 @@ +diff -up chromium-61.0.3163.79/components/neterror/resources/sounds/button-press.mp3 chromium-61.0.3163.79/components/neterror/resources/sounds/button-press +diff -up chromium-61.0.3163.79/components/neterror/resources/sounds/hit.mp3 chromium-61.0.3163.79/components/neterror/resources/sounds/hit +diff -up chromium-61.0.3163.79/components/neterror/resources/sounds/score-reached.mp3 chromium-61.0.3163.79/components/neterror/resources/sounds/score-reached +diff -up chromium-61.0.3163.79/media/base/mime_util_internal.cc.mp3 chromium-61.0.3163.79/media/base/mime_util_internal.cc +--- chromium-61.0.3163.79/media/base/mime_util_internal.cc.mp3 2017-09-05 15:05:21.000000000 -0400 ++++ chromium-61.0.3163.79/media/base/mime_util_internal.cc 2017-09-06 14:11:44.426683599 -0400 +@@ -278,10 +278,10 @@ void MimeUtil::AddSupportedMediaFormats( + CodecSet webm_codecs(webm_audio_codecs); + webm_codecs.insert(webm_video_codecs.begin(), webm_video_codecs.end()); + +-#if BUILDFLAG(USE_PROPRIETARY_CODECS) + CodecSet mp3_codecs; + mp3_codecs.insert(MP3); + ++#if BUILDFLAG(USE_PROPRIETARY_CODECS) + CodecSet aac; + aac.insert(MPEG2_AAC); + aac.insert(MPEG4_AAC); +@@ -325,10 +325,10 @@ void MimeUtil::AddSupportedMediaFormats( + AddContainerWithCodecs("application/ogg", ogg_codecs, false); + AddContainerWithCodecs("audio/flac", implicit_codec, false); + +-#if BUILDFLAG(USE_PROPRIETARY_CODECS) + AddContainerWithCodecs("audio/mpeg", mp3_codecs, true); // Allow "mp3". + AddContainerWithCodecs("audio/mp3", implicit_codec, true); + AddContainerWithCodecs("audio/x-mp3", implicit_codec, true); ++#if BUILDFLAG(USE_PROPRIETARY_CODECS) + AddContainerWithCodecs("audio/aac", implicit_codec, true); // AAC / ADTS. + AddContainerWithCodecs("audio/mp4", mp4_audio_codecs, true); + DCHECK(!mp4_video_codecs.empty()); +@@ -933,7 +933,6 @@ bool MimeUtil::IsCodecProprietary(Codec + case INVALID_CODEC: + case AC3: + case EAC3: +- case MP3: + case MPEG2_AAC: + case MPEG4_AAC: + case H264: +@@ -941,6 +940,7 @@ bool MimeUtil::IsCodecProprietary(Codec + case DOLBY_VISION: + return true; + ++ case MP3: + case PCM: + case VORBIS: + case OPUS: +diff -up chromium-61.0.3163.79/media/formats/BUILD.gn.mp3 chromium-61.0.3163.79/media/formats/BUILD.gn +--- chromium-61.0.3163.79/media/formats/BUILD.gn.mp3 2017-09-05 15:05:21.000000000 -0400 ++++ chromium-61.0.3163.79/media/formats/BUILD.gn 2017-09-06 14:11:44.427683579 -0400 +@@ -12,6 +12,14 @@ source_set("formats") { + "ac3/ac3_util.h", + "common/offset_byte_queue.cc", + "common/offset_byte_queue.h", ++ "mpeg/adts_constants.cc", ++ "mpeg/adts_constants.h", ++ "mpeg/adts_stream_parser.cc", ++ "mpeg/adts_stream_parser.h", ++ "mpeg/mpeg1_audio_stream_parser.cc", ++ "mpeg/mpeg1_audio_stream_parser.h", ++ "mpeg/mpeg_audio_stream_parser_base.cc", ++ "mpeg/mpeg_audio_stream_parser_base.h", + "webm/webm_audio_client.cc", + "webm/webm_audio_client.h", + "webm/webm_cluster_parser.cc", +@@ -76,14 +84,6 @@ source_set("formats") { + "mp4/sample_to_group_iterator.h", + "mp4/track_run_iterator.cc", + "mp4/track_run_iterator.h", +- "mpeg/adts_constants.cc", +- "mpeg/adts_constants.h", +- "mpeg/adts_stream_parser.cc", +- "mpeg/adts_stream_parser.h", +- "mpeg/mpeg1_audio_stream_parser.cc", +- "mpeg/mpeg1_audio_stream_parser.h", +- "mpeg/mpeg_audio_stream_parser_base.cc", +- "mpeg/mpeg_audio_stream_parser_base.h", + ] + } + +diff -up chromium-61.0.3163.79/third_party/catapult/third_party/gsutil/gslib/tests/test_data/test.mp3 chromium-61.0.3163.79/third_party/catapult/third_party/gsutil/gslib/tests/test_data/test +diff -up chromium-61.0.3163.79/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h.mp3 chromium-61.0.3163.79/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h +--- chromium-61.0.3163.79/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h.mp3 2017-09-06 10:13:19.000000000 -0400 ++++ chromium-61.0.3163.79/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h 2017-09-06 14:16:00.576744161 -0400 +@@ -1,7 +1,7 @@ + /* Automatically generated by configure - do not modify! */ + #ifndef FFMPEG_CONFIG_H + #define FFMPEG_CONFIG_H +-#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/chrome/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-cross-compile --cross-prefix=/usr/bin/aarch64-linux-gnu- --target-os=linux --arch=aarch64 --enable-armv8 --extra-cflags='-march=armv8-a' --enable-pic" ++#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/chrome/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-cross-compile --cross-prefix=/usr/bin/aarch64-linux-gnu- --target-os=linux --arch=aarch64 --enable-armv8 --extra-cflags='-march=armv8-a' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" + #define FFMPEG_LICENSE "LGPL version 2.1 or later" + #define CONFIG_THIS_YEAR 2017 + #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" +@@ -542,7 +542,7 @@ + #define CONFIG_FFPROBE 0 + #define CONFIG_FFSERVER 0 + #define CONFIG_FFMPEG 0 +-#define CONFIG_DCT 0 ++#define CONFIG_DCT 1 + #define CONFIG_DWT 0 + #define CONFIG_ERROR_RESILIENCE 0 + #define CONFIG_FAAN 1 +@@ -620,9 +620,9 @@ + #define CONFIG_LZF 0 + #define CONFIG_ME_CMP 0 + #define CONFIG_MPEG_ER 0 +-#define CONFIG_MPEGAUDIO 0 +-#define CONFIG_MPEGAUDIODSP 0 +-#define CONFIG_MPEGAUDIOHEADER 0 ++#define CONFIG_MPEGAUDIO 1 ++#define CONFIG_MPEGAUDIODSP 1 ++#define CONFIG_MPEGAUDIOHEADER 1 + #define CONFIG_MPEGVIDEO 0 + #define CONFIG_MPEGVIDEOENC 0 + #define CONFIG_MSS34DSP 0 +@@ -968,7 +968,7 @@ + #define CONFIG_MP1FLOAT_DECODER 0 + #define CONFIG_MP2_DECODER 0 + #define CONFIG_MP2FLOAT_DECODER 0 +-#define CONFIG_MP3_DECODER 0 ++#define CONFIG_MP3_DECODER 1 + #define CONFIG_MP3FLOAT_DECODER 0 + #define CONFIG_MP3ADU_DECODER 0 + #define CONFIG_MP3ADUFLOAT_DECODER 0 +@@ -1275,7 +1275,7 @@ + #define CONFIG_MM_DEMUXER 0 + #define CONFIG_MMF_DEMUXER 0 + #define CONFIG_MOV_DEMUXER 0 +-#define CONFIG_MP3_DEMUXER 0 ++#define CONFIG_MP3_DEMUXER 1 + #define CONFIG_MPC_DEMUXER 0 + #define CONFIG_MPC8_DEMUXER 0 + #define CONFIG_MPEGPS_DEMUXER 0 +@@ -2217,7 +2217,7 @@ + #define CONFIG_MJPEG_PARSER 0 + #define CONFIG_MLP_PARSER 0 + #define CONFIG_MPEG4VIDEO_PARSER 0 +-#define CONFIG_MPEGAUDIO_PARSER 0 ++#define CONFIG_MPEGAUDIO_PARSER 1 + #define CONFIG_MPEGVIDEO_PARSER 0 + #define CONFIG_OPUS_PARSER 1 + #define CONFIG_PNG_PARSER 0 +diff -up chromium-61.0.3163.79/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h.mp3 chromium-61.0.3163.79/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h +--- chromium-61.0.3163.79/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h.mp3 2017-09-06 10:13:19.000000000 -0400 ++++ chromium-61.0.3163.79/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h 2017-09-06 14:17:14.964310036 -0400 +@@ -1,7 +1,7 @@ + /* Automatically generated by configure - do not modify! */ + #ifndef FFMPEG_CONFIG_H + #define FFMPEG_CONFIG_H +-#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/jrummell/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --disable-neon --extra-cflags='-mfpu=vfpv3-d16' --enable-pic" ++#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/jrummell/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --disable-neon --extra-cflags='-mfpu=vfpv3-d16' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" + #define FFMPEG_LICENSE "LGPL version 2.1 or later" + #define CONFIG_THIS_YEAR 2017 + #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" +@@ -542,7 +542,7 @@ + #define CONFIG_FFPROBE 0 + #define CONFIG_FFSERVER 0 + #define CONFIG_FFMPEG 0 +-#define CONFIG_DCT 0 ++#define CONFIG_DCT 1 + #define CONFIG_DWT 0 + #define CONFIG_ERROR_RESILIENCE 0 + #define CONFIG_FAAN 1 +@@ -620,9 +620,9 @@ + #define CONFIG_LZF 0 + #define CONFIG_ME_CMP 0 + #define CONFIG_MPEG_ER 0 +-#define CONFIG_MPEGAUDIO 0 +-#define CONFIG_MPEGAUDIODSP 0 +-#define CONFIG_MPEGAUDIOHEADER 0 ++#define CONFIG_MPEGAUDIO 1 ++#define CONFIG_MPEGAUDIODSP 1 ++#define CONFIG_MPEGAUDIOHEADER 1 + #define CONFIG_MPEGVIDEO 0 + #define CONFIG_MPEGVIDEOENC 0 + #define CONFIG_MSS34DSP 0 +@@ -968,7 +968,7 @@ + #define CONFIG_MP1FLOAT_DECODER 0 + #define CONFIG_MP2_DECODER 0 + #define CONFIG_MP2FLOAT_DECODER 0 +-#define CONFIG_MP3_DECODER 0 ++#define CONFIG_MP3_DECODER 1 + #define CONFIG_MP3FLOAT_DECODER 0 + #define CONFIG_MP3ADU_DECODER 0 + #define CONFIG_MP3ADUFLOAT_DECODER 0 +@@ -1275,7 +1275,7 @@ + #define CONFIG_MM_DEMUXER 0 + #define CONFIG_MMF_DEMUXER 0 + #define CONFIG_MOV_DEMUXER 0 +-#define CONFIG_MP3_DEMUXER 0 ++#define CONFIG_MP3_DEMUXER 1 + #define CONFIG_MPC_DEMUXER 0 + #define CONFIG_MPC8_DEMUXER 0 + #define CONFIG_MPEGPS_DEMUXER 0 +@@ -2217,7 +2217,7 @@ + #define CONFIG_MJPEG_PARSER 0 + #define CONFIG_MLP_PARSER 0 + #define CONFIG_MPEG4VIDEO_PARSER 0 +-#define CONFIG_MPEGAUDIO_PARSER 0 ++#define CONFIG_MPEGAUDIO_PARSER 1 + #define CONFIG_MPEGVIDEO_PARSER 0 + #define CONFIG_OPUS_PARSER 1 + #define CONFIG_PNG_PARSER 0 +diff -up chromium-61.0.3163.79/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h.mp3 chromium-61.0.3163.79/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h +--- chromium-61.0.3163.79/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h.mp3 2017-09-06 10:13:19.000000000 -0400 ++++ chromium-61.0.3163.79/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h 2017-09-06 14:17:45.634718576 -0400 +@@ -1,7 +1,7 @@ + /* Automatically generated by configure - do not modify! */ + #ifndef FFMPEG_CONFIG_H + #define FFMPEG_CONFIG_H +-#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/jrummell/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --enable-neon --extra-cflags='-mfpu=neon' --enable-pic" ++#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/jrummell/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --enable-neon --extra-cflags='-mfpu=neon' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" + #define FFMPEG_LICENSE "LGPL version 2.1 or later" + #define CONFIG_THIS_YEAR 2017 + #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" +@@ -542,7 +542,7 @@ + #define CONFIG_FFPROBE 0 + #define CONFIG_FFSERVER 0 + #define CONFIG_FFMPEG 0 +-#define CONFIG_DCT 0 ++#define CONFIG_DCT 1 + #define CONFIG_DWT 0 + #define CONFIG_ERROR_RESILIENCE 0 + #define CONFIG_FAAN 1 +@@ -620,9 +620,9 @@ + #define CONFIG_LZF 0 + #define CONFIG_ME_CMP 0 + #define CONFIG_MPEG_ER 0 +-#define CONFIG_MPEGAUDIO 0 +-#define CONFIG_MPEGAUDIODSP 0 +-#define CONFIG_MPEGAUDIOHEADER 0 ++#define CONFIG_MPEGAUDIO 1 ++#define CONFIG_MPEGAUDIODSP 1 ++#define CONFIG_MPEGAUDIOHEADER 1 + #define CONFIG_MPEGVIDEO 0 + #define CONFIG_MPEGVIDEOENC 0 + #define CONFIG_MSS34DSP 0 +@@ -968,7 +968,7 @@ + #define CONFIG_MP1FLOAT_DECODER 0 + #define CONFIG_MP2_DECODER 0 + #define CONFIG_MP2FLOAT_DECODER 0 +-#define CONFIG_MP3_DECODER 0 ++#define CONFIG_MP3_DECODER 1 + #define CONFIG_MP3FLOAT_DECODER 0 + #define CONFIG_MP3ADU_DECODER 0 + #define CONFIG_MP3ADUFLOAT_DECODER 0 +@@ -1275,7 +1275,7 @@ + #define CONFIG_MM_DEMUXER 0 + #define CONFIG_MMF_DEMUXER 0 + #define CONFIG_MOV_DEMUXER 0 +-#define CONFIG_MP3_DEMUXER 0 ++#define CONFIG_MP3_DEMUXER 1 + #define CONFIG_MPC_DEMUXER 0 + #define CONFIG_MPC8_DEMUXER 0 + #define CONFIG_MPEGPS_DEMUXER 0 +@@ -2217,7 +2217,7 @@ + #define CONFIG_MJPEG_PARSER 0 + #define CONFIG_MLP_PARSER 0 + #define CONFIG_MPEG4VIDEO_PARSER 0 +-#define CONFIG_MPEGAUDIO_PARSER 0 ++#define CONFIG_MPEGAUDIO_PARSER 1 + #define CONFIG_MPEGVIDEO_PARSER 0 + #define CONFIG_OPUS_PARSER 1 + #define CONFIG_PNG_PARSER 0 +diff -up chromium-61.0.3163.79/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h.mp3 chromium-61.0.3163.79/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h +--- chromium-61.0.3163.79/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h.mp3 2017-09-06 10:13:19.000000000 -0400 ++++ chromium-61.0.3163.79/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h 2017-09-06 14:18:10.890232136 -0400 +@@ -1,7 +1,7 @@ + /* Automatically generated by configure - do not modify! */ + #ifndef FFMPEG_CONFIG_H + #define FFMPEG_CONFIG_H +-#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/chrome/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=i686 --extra-cflags='\"-m32\"' --extra-ldflags='\"-m32\"' --enable-yasm --enable-pic" ++#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/chrome/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=i686 --extra-cflags='\"-m32\"' --extra-ldflags='\"-m32\"' --enable-yasm --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" + #define FFMPEG_LICENSE "LGPL version 2.1 or later" + #define CONFIG_THIS_YEAR 2017 + #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" +@@ -542,7 +542,7 @@ + #define CONFIG_FFPROBE 0 + #define CONFIG_FFSERVER 0 + #define CONFIG_FFMPEG 0 +-#define CONFIG_DCT 0 ++#define CONFIG_DCT 1 + #define CONFIG_DWT 0 + #define CONFIG_ERROR_RESILIENCE 0 + #define CONFIG_FAAN 1 +@@ -620,9 +620,9 @@ + #define CONFIG_LZF 0 + #define CONFIG_ME_CMP 0 + #define CONFIG_MPEG_ER 0 +-#define CONFIG_MPEGAUDIO 0 +-#define CONFIG_MPEGAUDIODSP 0 +-#define CONFIG_MPEGAUDIOHEADER 0 ++#define CONFIG_MPEGAUDIO 1 ++#define CONFIG_MPEGAUDIODSP 1 ++#define CONFIG_MPEGAUDIOHEADER 1 + #define CONFIG_MPEGVIDEO 0 + #define CONFIG_MPEGVIDEOENC 0 + #define CONFIG_MSS34DSP 0 +@@ -968,7 +968,7 @@ + #define CONFIG_MP1FLOAT_DECODER 0 + #define CONFIG_MP2_DECODER 0 + #define CONFIG_MP2FLOAT_DECODER 0 +-#define CONFIG_MP3_DECODER 0 ++#define CONFIG_MP3_DECODER 1 + #define CONFIG_MP3FLOAT_DECODER 0 + #define CONFIG_MP3ADU_DECODER 0 + #define CONFIG_MP3ADUFLOAT_DECODER 0 +@@ -1275,7 +1275,7 @@ + #define CONFIG_MM_DEMUXER 0 + #define CONFIG_MMF_DEMUXER 0 + #define CONFIG_MOV_DEMUXER 0 +-#define CONFIG_MP3_DEMUXER 0 ++#define CONFIG_MP3_DEMUXER 1 + #define CONFIG_MPC_DEMUXER 0 + #define CONFIG_MPC8_DEMUXER 0 + #define CONFIG_MPEGPS_DEMUXER 0 +@@ -2217,7 +2217,7 @@ + #define CONFIG_MJPEG_PARSER 0 + #define CONFIG_MLP_PARSER 0 + #define CONFIG_MPEG4VIDEO_PARSER 0 +-#define CONFIG_MPEGAUDIO_PARSER 0 ++#define CONFIG_MPEGAUDIO_PARSER 1 + #define CONFIG_MPEGVIDEO_PARSER 0 + #define CONFIG_OPUS_PARSER 1 + #define CONFIG_PNG_PARSER 0 +diff -up chromium-61.0.3163.79/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h.mp3 chromium-61.0.3163.79/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h +--- chromium-61.0.3163.79/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h.mp3 2017-09-06 10:13:19.000000000 -0400 ++++ chromium-61.0.3163.79/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h 2017-09-06 14:18:34.578774933 -0400 +@@ -1,7 +1,7 @@ + /* Automatically generated by configure - do not modify! */ + #ifndef FFMPEG_CONFIG_H + #define FFMPEG_CONFIG_H +-#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/chrome/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-lto --enable-pic" ++#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/chrome/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-lto --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" + #define FFMPEG_LICENSE "LGPL version 2.1 or later" + #define CONFIG_THIS_YEAR 2017 + #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" +@@ -542,7 +542,7 @@ + #define CONFIG_FFPROBE 0 + #define CONFIG_FFSERVER 0 + #define CONFIG_FFMPEG 0 +-#define CONFIG_DCT 0 ++#define CONFIG_DCT 1 + #define CONFIG_DWT 0 + #define CONFIG_ERROR_RESILIENCE 0 + #define CONFIG_FAAN 1 +@@ -620,9 +620,9 @@ + #define CONFIG_LZF 0 + #define CONFIG_ME_CMP 0 + #define CONFIG_MPEG_ER 0 +-#define CONFIG_MPEGAUDIO 0 +-#define CONFIG_MPEGAUDIODSP 0 +-#define CONFIG_MPEGAUDIOHEADER 0 ++#define CONFIG_MPEGAUDIO 1 ++#define CONFIG_MPEGAUDIODSP 1 ++#define CONFIG_MPEGAUDIOHEADER 1 + #define CONFIG_MPEGVIDEO 0 + #define CONFIG_MPEGVIDEOENC 0 + #define CONFIG_MSS34DSP 0 +@@ -968,7 +968,7 @@ + #define CONFIG_MP1FLOAT_DECODER 0 + #define CONFIG_MP2_DECODER 0 + #define CONFIG_MP2FLOAT_DECODER 0 +-#define CONFIG_MP3_DECODER 0 ++#define CONFIG_MP3_DECODER 1 + #define CONFIG_MP3FLOAT_DECODER 0 + #define CONFIG_MP3ADU_DECODER 0 + #define CONFIG_MP3ADUFLOAT_DECODER 0 +@@ -1275,7 +1275,7 @@ + #define CONFIG_MM_DEMUXER 0 + #define CONFIG_MMF_DEMUXER 0 + #define CONFIG_MOV_DEMUXER 0 +-#define CONFIG_MP3_DEMUXER 0 ++#define CONFIG_MP3_DEMUXER 1 + #define CONFIG_MPC_DEMUXER 0 + #define CONFIG_MPC8_DEMUXER 0 + #define CONFIG_MPEGPS_DEMUXER 0 +@@ -2217,7 +2217,7 @@ + #define CONFIG_MJPEG_PARSER 0 + #define CONFIG_MLP_PARSER 0 + #define CONFIG_MPEG4VIDEO_PARSER 0 +-#define CONFIG_MPEGAUDIO_PARSER 0 ++#define CONFIG_MPEGAUDIO_PARSER 1 + #define CONFIG_MPEGVIDEO_PARSER 0 + #define CONFIG_OPUS_PARSER 1 + #define CONFIG_PNG_PARSER 0 +diff -up chromium-61.0.3163.79/third_party/ffmpeg/ffmpeg_generated.gni.mp3 chromium-61.0.3163.79/third_party/ffmpeg/ffmpeg_generated.gni +--- chromium-61.0.3163.79/third_party/ffmpeg/ffmpeg_generated.gni.mp3 2017-09-06 10:13:18.000000000 -0400 ++++ chromium-61.0.3163.79/third_party/ffmpeg/ffmpeg_generated.gni 2017-09-06 14:29:27.051194188 -0400 +@@ -182,17 +182,9 @@ if ((is_mac) || (is_win) || (use_linux_c + ] + } + +-if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mips64el" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { ++if ((current_cpu == "x64") || (is_android && current_cpu == "arm" && arm_use_neon) || (is_android && current_cpu == "arm64") || (is_android && current_cpu == "mips64el") || (is_android && current_cpu == "mipsel") || (is_android && current_cpu == "x86") || (is_win) || (use_linux_config && current_cpu == "arm" && arm_use_neon) || (use_linux_config && current_cpu == "arm" && arm_use_neon) || (use_linux_config && current_cpu == "arm") || (use_linux_config && current_cpu == "arm") || (use_linux_config && current_cpu == "arm64") || (use_linux_config && current_cpu == "mipsel") || (use_linux_config && current_cpu == "x64") || (use_linux_config && current_cpu == "x86")) { + ffmpeg_c_sources += [ +- "libavcodec/aac_ac3_parser.c", +- "libavcodec/aac_parser.c", +- "libavcodec/aacadtsdec.c", +- "libavcodec/aacps_float.c", +- "libavcodec/aacpsdsp_float.c", +- "libavcodec/aacsbr.c", +- "libavcodec/aactab.c", + "libavcodec/ac3tab.c", +- "libavcodec/autorename_libavcodec_aacdec.c", + "libavcodec/autorename_libavcodec_mpegaudiodsp.c", + "libavcodec/autorename_libavcodec_sbrdsp.c", + "libavcodec/cbrt_data.c", +@@ -210,7 +202,6 @@ if ((current_cpu == "x64" && ffmpeg_bran + "libavcodec/mpegaudiodsp_float.c", + "libavcodec/sinewin.c", + "libavcodec/sinewin_fixed.c", +- "libavformat/aacdec.c", + "libavformat/apetag.c", + "libavformat/img2.c", + "libavformat/mov.c", +@@ -219,6 +210,20 @@ if ((current_cpu == "x64" && ffmpeg_bran + ] + } + ++if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mips64el" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { ++ ffmpeg_c_sources += [ ++ "libavcodec/aac_ac3_parser.c", ++ "libavcodec/aac_parser.c", ++ "libavcodec/aacadtsdec.c", ++ "libavcodec/aacps_float.c", ++ "libavcodec/aacpsdsp_float.c", ++ "libavcodec/aacsbr.c", ++ "libavcodec/aactab.c", ++ "libavcodec/autorename_libavcodec_aacdec.c", ++ "libavformat/aacdec.c", ++ ] ++} ++ + if ((is_android && current_cpu == "x64") || (is_android && current_cpu == "x86") || (is_mac) || (is_win) || (use_linux_config && current_cpu == "x64") || (use_linux_config && current_cpu == "x86")) { + ffmpeg_c_sources += [ + "libavcodec/x86/autorename_libavcodec_x86_vorbisdsp_init.c", +@@ -322,15 +327,19 @@ if ((is_mac) || (is_win) || (use_linux_c + if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { + ffmpeg_c_sources += [ + "libavcodec/x86/aacpsdsp_init.c", ++ ] ++ ffmpeg_yasm_sources += [ ++ "libavcodec/x86/aacpsdsp.asm", ++ ] ++} ++ ++if ((current_cpu == "x64") || (is_android && current_cpu == "x86") || (use_linux_config && current_cpu == "x64") || (use_linux_config && current_cpu == "x86") || (is_win)) { ++ ffmpeg_c_sources += [ + "libavcodec/x86/dct_init.c", + "libavcodec/x86/mpegaudiodsp.c", + "libavcodec/x86/sbrdsp_init.c", + ] +-} +- +-if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { + ffmpeg_yasm_sources += [ +- "libavcodec/x86/aacpsdsp.asm", + "libavcodec/x86/dct32.asm", + "libavcodec/x86/imdct36.asm", + "libavcodec/x86/sbrdsp.asm", +diff -up chromium-61.0.3163.79/third_party/ffmpeg/libavcodec/sbrdsp.c.mp3 chromium-61.0.3163.79/third_party/ffmpeg/libavcodec/sbrdsp.c +--- chromium-61.0.3163.79/third_party/ffmpeg/libavcodec/sbrdsp.c.mp3 2017-09-06 10:13:19.000000000 -0400 ++++ chromium-61.0.3163.79/third_party/ffmpeg/libavcodec/sbrdsp.c 2017-09-06 14:11:44.495682217 -0400 +@@ -23,6 +23,7 @@ + #define USE_FIXED 0 + + #include "aac.h" ++#include "aacsbrdata.h" + #include "config.h" + #include "libavutil/attributes.h" + #include "libavutil/intfloat.h" +diff -up chromium-61.0.3163.79/third_party/webrtc/examples/objc/AppRTCMobile/ios/resources/mozart.mp3 chromium-61.0.3163.79/third_party/webrtc/examples/objc/AppRTCMobile/ios/resources/mozart +diff -up chromium-61.0.3163.79/tools/android/audio_focus_grabber/java/res/raw/ping.mp3 chromium-61.0.3163.79/tools/android/audio_focus_grabber/java/res/raw/ping diff --git a/chromium-61.0.3163.79-fix-atk-compile.patch b/chromium-61.0.3163.79-fix-atk-compile.patch new file mode 100644 index 0000000..fcbe042 --- /dev/null +++ b/chromium-61.0.3163.79-fix-atk-compile.patch @@ -0,0 +1,12 @@ +diff -up chromium-61.0.3163.79/content/browser/accessibility/browser_accessibility_auralinux.cc.fixvarname chromium-61.0.3163.79/content/browser/accessibility/browser_accessibility_auralinux.cc +--- chromium-61.0.3163.79/content/browser/accessibility/browser_accessibility_auralinux.cc.fixvarname 2017-09-08 13:36:14.985804754 -0400 ++++ chromium-61.0.3163.79/content/browser/accessibility/browser_accessibility_auralinux.cc 2017-09-08 13:36:25.050611274 -0400 +@@ -571,7 +571,7 @@ static AtkStateSet* browser_accessibilit + // it's best to leave this out rather than break people's builds: + #if defined(ATK_CHECK_VERSION) + #if ATK_CHECK_VERSION(2, 16, 0) +- atk_state_set_add_state(atk_state_set, ATK_STATE_READ_ONLY); ++ atk_state_set_add_state(state_set, ATK_STATE_READ_ONLY); + #endif + #endif + break; diff --git a/chromium-61.0.3163.79-fix-ffmpeg-aarch64.patch b/chromium-61.0.3163.79-fix-ffmpeg-aarch64.patch new file mode 100644 index 0000000..a8c7260 --- /dev/null +++ b/chromium-61.0.3163.79-fix-ffmpeg-aarch64.patch @@ -0,0 +1,12 @@ +diff -up chromium-61.0.3163.79/third_party/ffmpeg/ffmpeg_generated.gni.aarch64 chromium-61.0.3163.79/third_party/ffmpeg/ffmpeg_generated.gni +--- chromium-61.0.3163.79/third_party/ffmpeg/ffmpeg_generated.gni.aarch64 2017-09-06 14:34:36.247232957 -0400 ++++ chromium-61.0.3163.79/third_party/ffmpeg/ffmpeg_generated.gni 2017-09-06 14:36:37.632892363 -0400 +@@ -537,7 +537,7 @@ if (use_linux_config && current_cpu == " + ] + } + +-if ((is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS")) { ++if ((is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chromium")) { + ffmpeg_c_sources += [ + "libavcodec/aarch64/mpegaudiodsp_init.c", + ] diff --git a/chromium-61.0.3163.79-fix-gn-again.patch b/chromium-61.0.3163.79-fix-gn-again.patch new file mode 100644 index 0000000..ecdaeca --- /dev/null +++ b/chromium-61.0.3163.79-fix-gn-again.patch @@ -0,0 +1,20 @@ +diff -up chromium-61.0.3163.79/tools/gn/bootstrap/bootstrap.py.fixit chromium-61.0.3163.79/tools/gn/bootstrap/bootstrap.py +--- chromium-61.0.3163.79/tools/gn/bootstrap/bootstrap.py.fixit 2017-09-06 15:30:19.199783450 -0400 ++++ chromium-61.0.3163.79/tools/gn/bootstrap/bootstrap.py 2017-09-06 15:31:17.781654042 -0400 +@@ -449,6 +449,7 @@ def write_gn_ninja(path, root_gen_dir, o + 'base/metrics/histogram_base.cc', + 'base/metrics/histogram_functions.cc', + 'base/metrics/histogram_samples.cc', ++ 'base/metrics/histogram_snapshot_manager.cc', + 'base/metrics/metrics_hashes.cc', + 'base/metrics/persistent_histogram_allocator.cc', + 'base/metrics/persistent_memory_allocator.cc', +@@ -534,7 +535,7 @@ def write_gn_ninja(path, root_gen_dir, o + 'base/trace_event/heap_profiler_allocation_context_tracker.cc', + 'base/trace_event/heap_profiler_allocation_register.cc', + 'base/trace_event/heap_profiler_event_filter.cc', +- 'base/trace_event/heap_profiler_event_writer.cc', ++ 'base/trace_event/heap_profiler_heap_dump_writer.cc', + 'base/trace_event/heap_profiler_serialization_state.cc', + 'base/trace_event/heap_profiler_stack_frame_deduplicator.cc', + 'base/trace_event/heap_profiler_type_name_deduplicator.cc', diff --git a/chromium-61.0.3163.79-gcc-no-opt-safe-math.patch b/chromium-61.0.3163.79-gcc-no-opt-safe-math.patch new file mode 100644 index 0000000..183b5ab --- /dev/null +++ b/chromium-61.0.3163.79-gcc-no-opt-safe-math.patch @@ -0,0 +1,13 @@ +diff -up chromium-61.0.3163.79/base/numerics/safe_math_shared_impl.h.fixgcc3 chromium-61.0.3163.79/base/numerics/safe_math_shared_impl.h +--- chromium-61.0.3163.79/base/numerics/safe_math_shared_impl.h.fixgcc3 2017-09-06 16:30:15.898454585 -0400 ++++ chromium-61.0.3163.79/base/numerics/safe_math_shared_impl.h 2017-09-06 16:30:27.570229539 -0400 +@@ -21,8 +21,7 @@ + #if !defined(__native_client__) && \ + ((defined(__clang__) && \ + ((__clang_major__ > 3) || \ +- (__clang_major__ == 3 && __clang_minor__ >= 4))) || \ +- (defined(__GNUC__) && __GNUC__ >= 5)) ++ (__clang_major__ == 3 && __clang_minor__ >= 4)))) + #include "base/numerics/safe_math_clang_gcc_impl.h" + #define BASE_HAS_OPTIMIZED_SAFE_MATH (1) + #else diff --git a/chromium-61.0.3163.79-gcc5-r1.patch b/chromium-61.0.3163.79-gcc5-r1.patch new file mode 100644 index 0000000..4119850 --- /dev/null +++ b/chromium-61.0.3163.79-gcc5-r1.patch @@ -0,0 +1,67 @@ +diff -up chromium-61.0.3163.79/chrome/browser/devtools/devtools_file_system_indexer.cc.gcc5fix chromium-61.0.3163.79/chrome/browser/devtools/devtools_file_system_indexer.cc +--- chromium-61.0.3163.79/chrome/browser/devtools/devtools_file_system_indexer.cc.gcc5fix 2017-09-06 16:32:34.496782451 -0400 ++++ chromium-61.0.3163.79/chrome/browser/devtools/devtools_file_system_indexer.cc 2017-09-06 16:33:22.053865242 -0400 +@@ -34,7 +34,6 @@ using base::TimeDelta; + using base::TimeTicks; + using content::BrowserThread; + using std::map; +-using std::set; + using std::string; + using std::vector; + +@@ -191,7 +190,7 @@ vector Index::Search(const str + if (trigram != kUndefinedTrigram) + trigrams.push_back(trigram); + } +- set file_ids; ++ std::set file_ids; + bool first = true; + vector::const_iterator it = trigrams.begin(); + for (; it != trigrams.end(); ++it) { +@@ -203,7 +202,7 @@ vector Index::Search(const str + first = false; + continue; + } +- set intersection = base::STLSetIntersection >( ++ std::set intersection = base::STLSetIntersection >( + file_ids, index_[trigram]); + file_ids.swap(intersection); + } +diff -up chromium-61.0.3163.79/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h.gcc5fix chromium-61.0.3163.79/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h +--- chromium-61.0.3163.79/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h.gcc5fix 2017-09-06 16:33:35.213611900 -0400 ++++ chromium-61.0.3163.79/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h 2017-09-06 16:34:34.471469606 -0400 +@@ -63,7 +63,7 @@ class WTF_EXPORT ArrayBufferContents { + allocation_length_(0), + data_(data), + data_length_(0), +- kind_(AllocationKind::kNormal), ++ kind_(WTF::ArrayBufferContents::AllocationKind::kNormal), + deleter_(deleter) {} + DataHandle(void* allocation_base, + size_t allocation_length, +@@ -94,11 +94,11 @@ class WTF_EXPORT ArrayBufferContents { + reinterpret_cast(allocation_base_) + + allocation_length_); + switch (kind_) { +- case AllocationKind::kNormal: ++ case WTF::ArrayBufferContents::AllocationKind::kNormal: + DCHECK(deleter_); + deleter_(data_); + return; +- case AllocationKind::kReservation: ++ case WTF::ArrayBufferContents::AllocationKind::kReservation: + ReleaseReservedMemory(allocation_base_, allocation_length_); + return; + } +diff -up chromium-61.0.3163.79/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5fix chromium-61.0.3163.79/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc +--- chromium-61.0.3163.79/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5fix 2017-09-06 16:34:51.959131969 -0400 ++++ chromium-61.0.3163.79/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2017-09-06 16:35:03.027919336 -0400 +@@ -10,7 +10,7 @@ + + #include "webrtc/modules/audio_processing/aec3/aec_state.h" + +-#include ++#include + #include + #include + diff --git a/chromium-61.0.3163.79-gcc7.patch b/chromium-61.0.3163.79-gcc7.patch new file mode 100644 index 0000000..44ab0ce --- /dev/null +++ b/chromium-61.0.3163.79-gcc7.patch @@ -0,0 +1,12 @@ +diff -up chromium-61.0.3163.79/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 chromium-61.0.3163.79/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h +--- chromium-61.0.3163.79/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 2017-09-05 15:05:41.000000000 -0400 ++++ chromium-61.0.3163.79/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h 2017-09-06 14:01:52.461097821 -0400 +@@ -8,6 +8,7 @@ + #include "platform/PlatformExport.h" + #include "platform/wtf/ThreadSpecific.h" + ++#include + #include + + namespace gpu { +diff -up chromium-61.0.3163.79/v8/src/objects/hash-table.h.gcc7 chromium-61.0.3163.79/v8/src/objects/hash-table.h diff --git a/chromium-61.0.3163.79-gtk2fix.patch b/chromium-61.0.3163.79-gtk2fix.patch new file mode 100644 index 0000000..e22cb6f --- /dev/null +++ b/chromium-61.0.3163.79-gtk2fix.patch @@ -0,0 +1,23 @@ +diff -up chromium-61.0.3163.79/chrome/browser/ui/libgtkui/gtk_ui.cc.gtk2fix chromium-61.0.3163.79/chrome/browser/ui/libgtkui/gtk_ui.cc +--- chromium-61.0.3163.79/chrome/browser/ui/libgtkui/gtk_ui.cc.gtk2fix 2017-09-07 15:40:40.904966476 -0400 ++++ chromium-61.0.3163.79/chrome/browser/ui/libgtkui/gtk_ui.cc 2017-09-07 15:42:23.829987464 -0400 +@@ -1052,11 +1052,19 @@ float GtkUi::GetRawDeviceScaleFactor() { + if (display::Display::HasForceDeviceScaleFactor()) + return display::Display::GetForcedDeviceScaleFactor(); + ++#if GTK_MAJOR_VERSION == 2 ++ GtkSettings* gtk_settings = gtk_settings_get_default(); ++ gint gtk_dpi = -1; ++ g_object_get(gtk_settings, "gtk-xft-dpi", >k_dpi, nullptr); ++ const float scale_factor = gtk_dpi / (1024 * kDefaultDPI); ++#else + GdkScreen* screen = gdk_screen_get_default(); + gint scale = gtk_widget_get_scale_factor(fake_window_); + gdouble resolution = gdk_screen_get_resolution(screen); + const float scale_factor = + resolution <= 0 ? scale : resolution * scale / kDefaultDPI; ++#endif ++ + // Blacklist scaling factors <120% (crbug.com/484400) and round + // to 1 decimal to prevent rendering problems (crbug.com/485183). + return scale_factor < 1.2f ? 1.0f : roundf(scale_factor * 10) / 10; diff --git a/chromium-61.0.3163.79-setopaque.patch b/chromium-61.0.3163.79-setopaque.patch new file mode 100644 index 0000000..b797d10 --- /dev/null +++ b/chromium-61.0.3163.79-setopaque.patch @@ -0,0 +1,12 @@ +diff -up chromium-61.0.3163.79/cc/blink/web_layer_impl.h.setopaque chromium-61.0.3163.79/cc/blink/web_layer_impl.h +--- chromium-61.0.3163.79/cc/blink/web_layer_impl.h.setopaque 2017-09-06 13:55:45.454175023 -0400 ++++ chromium-61.0.3163.79/cc/blink/web_layer_impl.h 2017-09-06 13:58:02.395533936 -0400 +@@ -71,7 +71,7 @@ class CC_BLINK_EXPORT WebLayerImpl : pub + bool IsRootForIsolatedGroup() override; + void SetShouldHitTest(bool should_hit_test) override; + bool ShouldHitTest() override; +- void SetOpaque(bool opaque) override; ++ CC_BLINK_EXPORT void SetOpaque(bool opaque) override; + bool Opaque() const override; + void SetPosition(const blink::WebFloatPoint& position) override; + blink::WebFloatPoint GetPosition() const override; diff --git a/chromium.spec b/chromium.spec index 788c7d8..08a5bd2 100644 --- a/chromium.spec +++ b/chromium.spec @@ -26,7 +26,7 @@ # Requires is trickier. %global __provides_exclude_from %{chromium_path}/.*\\.so|%{chromium_path}/lib/.*\\.so -%global privlibs libaccessibility|libanimation|libaura_extra|libaura|libbase_i18n|libbase|libbindings|libblink_android_mojo_bindings_shared|libblink_core|libblink_modules|libblink_mojo_bindings_shared|libblink_offscreen_canvas_mojo_bindings_shared|libblink_platform|libblink_web|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcc_animation|libcc_base|libcc_blink|libcc_debug|libcc_ipc|libcc_paint|libcc|libcc_surfaces|libcdm_manager|libchromium_sqlite3|libclearkeycdm|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent_common_mojo_bindings_shared|libcontent|libcpp|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_gamepad|libdevices|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevice_vr_mojo_bindings|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay_compositor|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libembedder|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents|libevents_x|libffmpeg|libfingerprint|libframe_sinks|libgcm|libgeneric_sensor_public_interfaces_shared|libgeneric_sensor|libgeolocation|libgeometry_skia|libgeometry|libgesture_detection|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_x11|libgin_features|libgin|libgles2_c_lib|libgles2_implementation|libgles2_utils|libGLESv2|libgl_init|libgl_in_process_context|libgl_wrapper|libgpu|libgtk2ui|libheadless|libicui18n|libicuuc|libipc_mojom_shared|libipc_mojom|libipc|libjs|libkeyboard|libkeyboard_with_content|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libmanager|libmedia_blink|libmedia_gpu|libmedia_mojo_services|libmedia|libmessage_center|libmidi|libmirclient.9|libmojo_common_lib|libmojo_ime_lib|libmojo_public_system_cpp|libmojo_public_system|libmojo_system_impl|libnative_theme|libnet|libnet_with_v8|libonc|libosmesa|libplatform|libpolicy_component|libpolicy_proto|libpower_save_blocker|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libresource_coordinator_cpp|libresource_coordinator_public_interfaces_internal_shared|libsandbox_services|libseccomp_bpf|libsensors|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom_blink|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_constants|libservice_manager_mojom_shared|libservice_manager_mojom|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libuser_manager|libuser_prefs|libv8_libbase|libv8_libplatform|libv8|libviews|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_swapchain|libVkLayer_threading|libVkLayer_unique_objects|libwebdata_common|libweb_dialogs|libwebview|libwidevinecdmadapter|libwidevinecdm|libwm|libwtf|libx11_events_platform|libx11_window +%global privlibs libaccessibility|libanimation|libaura_extra|libaura|libbase_i18n|libbase|libbindings|libblink_android_mojo_bindings_shared|libblink_controller|libblink_core|libblink_modules|libblink_mojo_bindings_shared|libblink_offscreen_canvas_mojo_bindings_shared|libblink_platform|libblink_web|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcc_animation|libcc_base|libcc_blink|libcc_debug|libcc_ipc|libcc_paint|libcc|libcc_surfaces|libcdm_manager|libchromium_sqlite3|libclearkeycdm|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_gamepad|libdevices|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevice_vr_mojo_bindings|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libembedder|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents|libevents_x|libffmpeg|libfingerprint|libgcm|libgeolocation|libgeometry_skia|libgeometry|libgesture_detection|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_switches|libgfx_x11|libgin|libgles2_c_lib|libgles2_implementation|libgles2_utils|libGLESv2|libgl_init|libgl_in_process_context|libgl_wrapper|libgpu|libgtk2ui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc_mojom_shared|libipc_mojom|libipc|libjs|libkeyboard|libkeyboard_with_content|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libmanager|libmedia_blink|libmedia_gpu|libmedia_mojo_services|libmedia|libmessage_center|libmetrics_cpp|libmidi|libmojo_common_lib|libmojo_ime_lib|libmojo_public_system_cpp|libmojo_public_system|libmojo_system_impl|libnative_theme|libnet|libnet_with_v8|libonc|libplatform|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|librange|libresource_coordinator_cpp|libresource_coordinator_public_interfaces_internal_shared|libsandbox_services|libseccomp_bpf|libsensors|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom_blink|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_constants|libservice_manager_mojom_shared|libservice_manager_mojom|libservice|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_devtools|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libuser_manager|libuser_prefs|libv8_libbase|libv8_libplatform|libv8|libviews|libviz_common|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_swapchain|libVkLayer_threading|libVkLayer_unique_objects|libwebdata_common|libweb_dialogs|libwebview|libwidevinecdmadapter|libwidevinecdm|libwm_public|libwm|libwtf|libx11_events_platform|libx11_window %global __requires_exclude ^(%{privlibs})\\.so # Try to not use the Xvfb as it is slow.. @@ -108,15 +108,15 @@ BuildRequires: libicu-devel >= 5.4 %global default_client_secret miEreAep8nuvTdvLums6qyLK %global chromoting_client_id 449907151817-8vnlfih032ni8c4jjps9int9t86k546t.apps.googleusercontent.com -%global majorversion 60 +%global majorversion 61 %if %{freeworld} Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3112.113 -Release: 2%{?dist} +Version: %{majorversion}.0.3163.79 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -164,14 +164,14 @@ Patch25: chromium-54.0.2840.59-jpeg-include-dir.patch Patch26: chromium-59.0.3071.86-i686-ld-memory-tricks.patch # obj/content/renderer/renderer/child_frame_compositing_helper.o: In function `content::ChildFrameCompositingHelper::OnSetSurface(cc::SurfaceId const&, gfx::Size const&, float, cc::SurfaceSequence const&)': # /builddir/build/BUILD/chromium-54.0.2840.90/out/Release/../../content/renderer/child_frame_compositing_helper.cc:214: undefined reference to `cc_blink::WebLayerImpl::setOpaque(bool)' -Patch27: chromium-59.0.3071.86-setopaque.patch +Patch27: chromium-61.0.3163.79-setopaque.patch # Use -fpermissive to build WebKit Patch31: chromium-56.0.2924.87-fpermissive.patch # Fix issue with compilation on gcc7 # Thanks to Ben Noordhuis -Patch33: chromium-60.0.3112.78-gcc7.patch +Patch33: chromium-61.0.3163.79-gcc7.patch # Enable mp3 support -Patch34: chromium-60.0.3112.78-enable-mp3.patch +Patch34: chromium-61.0.3163.79-enable-mp3.patch # Revert https://chromium.googlesource.com/chromium/src/+/b794998819088f76b4cf44c8db6940240c563cf4%5E%21/#F0 # https://bugs.chromium.org/p/chromium/issues/detail?id=712737 # https://bugzilla.redhat.com/show_bug.cgi?id=1446851 @@ -183,18 +183,10 @@ Patch39: chromium-59.0.3071.86-system-clang.patch # Change struct ucontext to ucontext_t in breakpad # https://patchwork.openembedded.org/patch/141358/ Patch40: chromium-59.0.3071.115-ucontext-fix.patch -# Fix gn bootstrap. Not convinced anyone at Google ever tries to build Chromium from source. -Patch41: chromium-60.0.3112.78-fix-gn-bootstrap.patch # Do not prefix libpng functions Patch42: chromium-60.0.3112.78-no-libpng-prefix.patch # Do not mangle libjpeg Patch43: chromium-60.0.3112.78-jpeg-nomangle.patch -# Fix gtk2 build by applying these changes -# https://chromium.googlesource.com/chromium/src.git/+/804fd4ab5e41584d61c400ac19ce21e0468b53d4 -# https://chromium.googlesource.com/chromium/src.git/+/4313334bead373b139eee72f47d43fbe6162a8f4 -# https://chromium.googlesource.com/chromium/src.git/+/ca407201886875966db91d55c403fe0be3f0f4ca -# This probably will not be needed with 61+ -Patch44: chromium-60.0.3112.78-gtk2fix.patch # Do not mangle zlib Patch45: chromium-60.0.3112.78-no-zlib-mangle.patch # Apply these changes to work around EPEL7 compiler issues @@ -203,10 +195,25 @@ Patch47: chromium-60.0.3112.90-vulkan-force-c99.patch # https://chromium.googlesource.com/chromium/src/+/9c77470ff34bac937ceb765a27cee1703f0f2426 Patch48: chromium-60.0.3112.101-camfix.patch # Fix mp3 for aarch64 -Patch49: chromium-60.0.3112.101-fix-ffmpeg-aarch64.patch +Patch49: chromium-61.0.3163.79-fix-ffmpeg-aarch64.patch # Fix libavutil include pathing to find arch specific timer.h # For some reason, this only fails on aarch64. No idea why. Patch50: chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch +# Fix gn again +# https://chromium.googlesource.com/chromium/src.git/+/84d9cc2d5491706d638ac887f4e065a75f7cb87d%5E%21/#F0 +Patch51: chromium-61.0.3163.79-fix-gn-again.patch +# more gcc fixes +# https://chromium.googlesource.com/chromium/src.git/+/cbe6845263215e0f3981c2a4c7937dadb14bef0d%5E%21/#F0 +Patch52: chromium-61.0.3163.79-MOAR-GCC-FIXES.patch +# from gentoo +Patch53: chromium-61.0.3163.79-gcc-no-opt-safe-math.patch +Patch54: chromium-61.0.3163.79-gcc5-r1.patch +# Fix gtk2 build (patch from later release) +# Should be able to drop this in 62+ +Patch55: chromium-61.0.3163.79-gtk2fix.patch +# Fix atk compile +# https://chromium-review.googlesource.com/c/chromium/src/+/580927 +Patch56: chromium-61.0.3163.79-fix-atk-compile.patch ### Chromium Tests Patches ### Patch100: chromium-46.0.2490.86-use_system_opus.patch @@ -641,10 +648,8 @@ udev. %patch37 -p1 -b .ffmpeg-stdatomic %patch39 -p1 -b .system-clang %patch40 -p1 -b .ucontextfix -%patch41 -p1 -b .fixgnbootstrap %patch42 -p1 -b .noprefix %patch43 -p1 -b .nomangle -%patch44 -p1 -b .gtk2fix %patch45 -p1 -b .nozmangle %if 0%{?rhel} == 7 %patch46 -p1 -b .oldgcc @@ -652,7 +657,12 @@ udev. %endif %patch48 -p1 -b .camfix %patch50 -p1 -b .pathfix - +%patch51 -p1 -b .fixit +%patch52 -p1 -b .fixgccagain +%patch53 -p1 -b .nogccoptmath +%patch54 -p1 -b .gcc5fix +%patch55 -p1 -b .gtk2fix +%patch56 -p1 -b .atkfix ### Chromium Tests Patches ### %patch100 -p1 -b .use_system_opus @@ -668,6 +678,9 @@ export CXX="g++" export AR="ar" export RANLIB="ranlib" +# NUKE FROM ORBIT +rm -rf buildtools/third_party/libc++/BUILD.gn + %if 0%{?nacl} # prep the nacl tree mkdir -p out/Release/gen/sdk/linux_x86/nacl_x86_newlib @@ -771,12 +784,13 @@ CHROMIUM_CORE_GN_DEFINES+=' system_libdir="lib64"' %endif CHROMIUM_CORE_GN_DEFINES+=' google_api_key="%{api_key}" google_default_client_id="%{default_client_id}" google_default_client_secret="%{default_client_secret}"' CHROMIUM_CORE_GN_DEFINES+=' is_clang=false use_sysroot=false use_gold=false fieldtrial_testing_like_official_build=true' +CHROMIUM_CORE_GN_DEFINES+=' enable_pepper_cdms=1' %if %{freeworld} CHROMIUM_CORE_GN_DEFINES+=' ffmpeg_branding="ChromeOS" proprietary_codecs=true' %else CHROMIUM_CORE_GN_DEFINES+=' ffmpeg_branding="Chromium" proprietary_codecs=false' %endif -CHROMIUM_CORE_GN_DEFINES+=' treat_warnings_as_errors=false' +CHROMIUM_CORE_GN_DEFINES+=' treat_warnings_as_errors=false use_custom_libcxx=false' %ifarch aarch64 CHROMIUM_CORE_GN_DEFINES+=' target_cpu="arm64"' %endif @@ -871,10 +885,10 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/WebKit' \ 'third_party/analytics' \ 'third_party/angle' \ - 'third_party/angle/src/common/third_party/numerics' \ + 'third_party/angle/src/common/third_party/murmurhash' \ + 'third_party/angle/src/common/third_party/base' \ 'third_party/angle/src/third_party/compiler' \ 'third_party/angle/src/third_party/libXNVCtrl' \ - 'third_party/angle/src/third_party/murmurhash' \ 'third_party/angle/src/third_party/trace_event' \ 'third_party/blanketjs' \ 'third_party/boringssl' \ @@ -1034,6 +1048,7 @@ sed -i 's|aarch64-linux-gnu-||g' build/toolchain/linux/BUILD.gn sed -i '/${LONG_BIT}/ a \ aarch64)\' ../depot_tools/ninja sed -i '/aarch64)/ a \ exec "/usr/bin/ninja-build" "$@";;\' ../depot_tools/ninja %endif +sed -i 's|exec "${THIS_DIR}/ninja-linux${LONG_BIT}"|exec "/usr/bin/ninja-build"|g' ../depot_tools/ninja tools/gn/bootstrap/bootstrap.py -v --gn-gen-args "$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{target}/gn gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{target} @@ -1724,7 +1739,7 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %doc chrome_policy_list.html *.json %license LICENSE %config %{_sysconfdir}/%{name}/ -%dir %{_sysconfdir}/%{name}/native-messaging-hosts +# %%dir %{_sysconfdir}/%{name}/native-messaging-hosts # This is chrome-remote-desktop stuff %exclude %{_sysconfdir}/%{name}/native-messaging-hosts/* %{_bindir}/%{chromium_browser_channel} @@ -1757,7 +1772,6 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %files common %{chromium_path}/headless_lib.pak -%{chromium_path}/libosmesa.so %{chromium_path}/mus_app_resources_*.pak %{chromium_path}/pyproto/ %{chromium_path}/resources/ @@ -1821,7 +1835,6 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %if 0%{?shared} %files libs -%exclude %{chromium_path}/libosmesa.so %exclude %{chromium_path}/libffmpeg.so* %exclude %{chromium_path}/libmedia.so* %exclude %{chromium_path}/libwidevinecdm.so @@ -1872,6 +1885,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Wed Sep 6 2017 Tom Callaway 61.0.3163.79-1 +- update to 61.0.3163.79 + * Mon Aug 28 2017 Tom Callaway 60.0.3112.113-2 - disable aarch64 on rhel7, missing libatomic.so for some reason diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index e68c589..3ee3bf8 100755 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -24,25 +24,27 @@ function copy_files() { for file in $1 do - dir_name=`echo $file | sed 's%/[^/]*$%/%'` + dir_name=$(echo "$file" | sed 's%/[^/]*$%/%') if [[ $dir_name == */* ]]; then tmp_dir_name="tmp_"$dir_name - mkdir -p ../tmp_ffmpeg/$tmp_dir_name + mkdir -p "../tmp_ffmpeg/$tmp_dir_name" else tmp_dir_name=$file fi if [ "$2" -eq 1 ]; then - cp $file ../tmp_ffmpeg/$tmp_dir_name + cp "$file" "../tmp_ffmpeg/$tmp_dir_name" else - cp $file ../tmp_ffmpeg/$tmp_dir_name > /dev/null 2>&1 + cp "$file" "../tmp_ffmpeg/$tmp_dir_name" > /dev/null 2>&1 fi done } -where=`pwd` +where=$(pwd) -generated_files=`./get_free_ffmpeg_source_files.py $1 $2` +if ! generated_files=$(./get_free_ffmpeg_source_files.py "$1" "$2"); then + exit 1 +fi # As the build system files does not contain the header files, cheat here # and generate the header files names from source files. These that does not # exist will be later skipped while copying. @@ -82,6 +84,7 @@ header_files=" libavcodec/x86/inline_asm.h \ libavcodec/h263dsp.h \ libavcodec/h264chroma.h \ libavcodec/hpeldsp.h \ + libavcodec/hwaccel.h \ libavcodec/idctdsp.h \ libavcodec/internal.h \ libavcodec/kbdwin.h \ @@ -166,6 +169,8 @@ header_files=" libavcodec/x86/inline_asm.h \ libavutil/ffmath.h \ libavutil/fixed_dsp.h \ libavutil/float_dsp.h \ + libavutil/imgutils.h \ + libavutil/imgutils_internal.h \ libavutil/internal.h \ libavutil/intfloat.h \ libavutil/intreadwrite.h \ @@ -223,6 +228,7 @@ manual_files=" libavcodec/aarch64/fft_neon.S \ libavutil/cpu.c \ libavutil/fixed_dsp.c \ libavutil/float_dsp.c \ + libavutil/imgutils.c \ libavutil/x86/cpu.c \ libavutil/x86/float_dsp_init.c \ libavutil/x86/x86inc.asm \ @@ -294,7 +300,7 @@ other_files=" BUILD.gn \ RELEASE \ xcode_hack.c " -cd $1/third_party/ffmpeg +cd "$1/third_party/ffmpeg" || exit 1 copy_files "$generated_files" 0 copy_files "$generated_files_headers" 0 @@ -306,14 +312,15 @@ copy_files "$mp3_files" 1 mkdir -p ../tmp_ffmpeg/tmp_chromium/config cp -r chromium/config ../tmp_ffmpeg/tmp_chromium -cd ../tmp_ffmpeg -for tmp_directory in $(find . -type d -name 'tmp_*') - do - new_name=`echo $tmp_directory | sed 's/tmp_//'` - mv $tmp_directory $new_name - done +cd ../tmp_ffmpeg || exit 1 -cd $where +while IFS= read -r -d '' tmp_directory +do + new_name=${tmp_directory//tmp_/} + mv "$tmp_directory" "$new_name" +done < <(find . -type d -name 'tmp_*' -print0) -rm -rf $1/third_party/ffmpeg -mv $1/third_party/tmp_ffmpeg $1/third_party/ffmpeg +cd "$where" || exit 1 + +rm -rf "$1/third_party/ffmpeg" +mv "$1/third_party/tmp_ffmpeg" "$1/third_party/ffmpeg" diff --git a/get_free_ffmpeg_source_files.py b/get_free_ffmpeg_source_files.py index 5a0e421..76c73ae 100755 --- a/get_free_ffmpeg_source_files.py +++ b/get_free_ffmpeg_source_files.py @@ -60,7 +60,7 @@ def parse_ffmpeg_gyni_file(gyni_path, arch_not_arm): if inserted: break limitations = ['ffmpeg_branding == "Chrome"', 'ffmpeg_branding == "ChromeOS"'] - if ('is_linux' in condition) and not any(limitation in condition for limitation in limitations): + if ('use_linux_config' in condition) and not any(limitation in condition for limitation in limitations): if (arch_not_arm): if ('x64' in condition) or ('x86' in condition): parse_sources (block[1], output_sources, arch_not_arm) @@ -69,6 +69,10 @@ def parse_ffmpeg_gyni_file(gyni_path, arch_not_arm): parse_sources (block[1], output_sources, arch_not_arm) inserted = True + if len(output_sources) == 0: + sys.stderr.write("Something went wrong, no sources parsed!\n") + sys.exit(1) + print ' '.join(output_sources) diff --git a/sources b/sources index c901ac2..fadaf7c 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 -SHA512 (policy_templates.zip) = 4d2a7162adb3ca224f3e1bf1d2936ae395603e8ffa3fda7753e666a16c42c7ba54c7acfcfdc742e22978ace37e471ed099d222063708d4d8a299da3daf135f15 -SHA512 (chromium-60.0.3112.113-clean.tar.xz) = 3fbcdf47485a9d655cf43f05b24f0e22e6d2662d155f54039668673b21616d2941a0620db74c3788288af91fcb0ded1d2f45497c51a8799ddcf70f7420aee2c5 +SHA512 (chromium-61.0.3163.79-clean.tar.xz) = 9d3bfb24a71af6332e30cb5a5d40581eab166bf550c48019b6ac6ed37ead52eac4a09af41e056207f5ded91f4c420560ebd886ae3ae23e05602c755e334dbe02 +SHA512 (policy_templates.zip) = 39e9ccbeda8499acb81e5455e34ece44e72f065d139e718b38803c907b4ecca9f179f2eb84b10953a307087ed9586a5de30bbfb933eb9f6b77a682ea82164be7 From 2484dd808e3148ff0d3cddad8cb8eb87619c07e9 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 12 Sep 2017 09:38:46 -0400 Subject: [PATCH 0129/1449] fix aarch64 compile in rawhide --- chromium-61.0.3163.79-aarch64-glibc-2.26.90.patch | 12 ++++++++++++ chromium.spec | 5 +++++ 2 files changed, 17 insertions(+) create mode 100644 chromium-61.0.3163.79-aarch64-glibc-2.26.90.patch diff --git a/chromium-61.0.3163.79-aarch64-glibc-2.26.90.patch b/chromium-61.0.3163.79-aarch64-glibc-2.26.90.patch new file mode 100644 index 0000000..a419f52 --- /dev/null +++ b/chromium-61.0.3163.79-aarch64-glibc-2.26.90.patch @@ -0,0 +1,12 @@ +diff -up chromium-61.0.3163.79/breakpad/src/client/linux/handler/exception_handler.cc.aarchglibc chromium-61.0.3163.79/breakpad/src/client/linux/handler/exception_handler.cc +--- chromium-61.0.3163.79/breakpad/src/client/linux/handler/exception_handler.cc.aarchglibc 2017-09-12 09:34:39.417504561 -0400 ++++ chromium-61.0.3163.79/breakpad/src/client/linux/handler/exception_handler.cc 2017-09-12 09:35:01.512009768 -0400 +@@ -461,7 +461,7 @@ bool ExceptionHandler::HandleSignal(int + #if defined(__aarch64__) + struct ucontext* uc_ptr = (struct ucontext*)uc; + struct fpsimd_context* fp_ptr = +- (struct fpsimd_context*)&uc_ptr->uc_mcontext.__reserved; ++ (struct fpsimd_context*)&uc_ptr->uc_mcontext.__glibc_reserved1; + if (fp_ptr->head.magic == FPSIMD_MAGIC) { + memcpy(&g_crash_context_.float_state, fp_ptr, + sizeof(g_crash_context_.float_state)); diff --git a/chromium.spec b/chromium.spec index 08a5bd2..2ee2e3d 100644 --- a/chromium.spec +++ b/chromium.spec @@ -214,6 +214,8 @@ Patch55: chromium-61.0.3163.79-gtk2fix.patch # Fix atk compile # https://chromium-review.googlesource.com/c/chromium/src/+/580927 Patch56: chromium-61.0.3163.79-fix-atk-compile.patch +# Only needed when glibc 2.26.90 or later is used +Patch57: chromium-61.0.3163.79-aarch64-glibc-2.26.90.patch ### Chromium Tests Patches ### Patch100: chromium-46.0.2490.86-use_system_opus.patch @@ -663,6 +665,9 @@ udev. %patch54 -p1 -b .gcc5fix %patch55 -p1 -b .gtk2fix %patch56 -p1 -b .atkfix +%if 0%{?fedora} >= 28 +%patch57 -p1 -b .aarch64glibc +%endif ### Chromium Tests Patches ### %patch100 -p1 -b .use_system_opus From 661f204cb78f9e36735a427eada797b5707830ba Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 12 Sep 2017 10:15:39 -0400 Subject: [PATCH 0130/1449] fix patch --- chromium-61.0.3163.79-aarch64-glibc-2.26.90.patch | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/chromium-61.0.3163.79-aarch64-glibc-2.26.90.patch b/chromium-61.0.3163.79-aarch64-glibc-2.26.90.patch index a419f52..12e88d2 100644 --- a/chromium-61.0.3163.79-aarch64-glibc-2.26.90.patch +++ b/chromium-61.0.3163.79-aarch64-glibc-2.26.90.patch @@ -1,9 +1,9 @@ -diff -up chromium-61.0.3163.79/breakpad/src/client/linux/handler/exception_handler.cc.aarchglibc chromium-61.0.3163.79/breakpad/src/client/linux/handler/exception_handler.cc ---- chromium-61.0.3163.79/breakpad/src/client/linux/handler/exception_handler.cc.aarchglibc 2017-09-12 09:34:39.417504561 -0400 -+++ chromium-61.0.3163.79/breakpad/src/client/linux/handler/exception_handler.cc 2017-09-12 09:35:01.512009768 -0400 +diff -up chromium-61.0.3163.79/breakpad/src/client/linux/handler/exception_handler.cc.aarch64glibc chromium-61.0.3163.79/breakpad/src/client/linux/handler/exception_handler.cc +--- chromium-61.0.3163.79/breakpad/src/client/linux/handler/exception_handler.cc.aarch64glibc 2017-09-12 10:12:25.375736650 -0400 ++++ chromium-61.0.3163.79/breakpad/src/client/linux/handler/exception_handler.cc 2017-09-12 10:14:42.339638321 -0400 @@ -461,7 +461,7 @@ bool ExceptionHandler::HandleSignal(int #if defined(__aarch64__) - struct ucontext* uc_ptr = (struct ucontext*)uc; + ucontext_t* uc_ptr = (ucontext_t*)uc; struct fpsimd_context* fp_ptr = - (struct fpsimd_context*)&uc_ptr->uc_mcontext.__reserved; + (struct fpsimd_context*)&uc_ptr->uc_mcontext.__glibc_reserved1; From f43b0abeb4aa928bfe9b85eeadfbb44eedbb4ee0 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 13 Sep 2017 12:41:20 -0400 Subject: [PATCH 0131/1449] drop unnecessary patch for epel7 --- chromium.spec | 2 -- 1 file changed, 2 deletions(-) diff --git a/chromium.spec b/chromium.spec index 2ee2e3d..ce26436 100644 --- a/chromium.spec +++ b/chromium.spec @@ -190,7 +190,6 @@ Patch43: chromium-60.0.3112.78-jpeg-nomangle.patch # Do not mangle zlib Patch45: chromium-60.0.3112.78-no-zlib-mangle.patch # Apply these changes to work around EPEL7 compiler issues -Patch46: chromium-60.0.3112.90-init-list-hack.patch Patch47: chromium-60.0.3112.90-vulkan-force-c99.patch # https://chromium.googlesource.com/chromium/src/+/9c77470ff34bac937ceb765a27cee1703f0f2426 Patch48: chromium-60.0.3112.101-camfix.patch @@ -654,7 +653,6 @@ udev. %patch43 -p1 -b .nomangle %patch45 -p1 -b .nozmangle %if 0%{?rhel} == 7 -%patch46 -p1 -b .oldgcc %patch47 -p1 -b .c99 %endif %patch48 -p1 -b .camfix From bcf969290151ad238bb92f8fd737abf36db1b9cd Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 13 Sep 2017 13:27:32 -0400 Subject: [PATCH 0132/1449] use fpermissive on cc/paint --- chromium-61.0.3163.79-cc-paint-fpermissive.patch | 12 ++++++++++++ chromium.spec | 2 ++ 2 files changed, 14 insertions(+) create mode 100644 chromium-61.0.3163.79-cc-paint-fpermissive.patch diff --git a/chromium-61.0.3163.79-cc-paint-fpermissive.patch b/chromium-61.0.3163.79-cc-paint-fpermissive.patch new file mode 100644 index 0000000..495c45a --- /dev/null +++ b/chromium-61.0.3163.79-cc-paint-fpermissive.patch @@ -0,0 +1,12 @@ +diff -up chromium-61.0.3163.79/cc/paint/BUILD.gn.epel7 chromium-61.0.3163.79/cc/paint/BUILD.gn +--- chromium-61.0.3163.79/cc/paint/BUILD.gn.epel7 2017-09-13 13:21:07.743006338 -0400 ++++ chromium-61.0.3163.79/cc/paint/BUILD.gn 2017-09-13 13:25:43.091933209 -0400 +@@ -41,6 +41,8 @@ cc_component("paint") { + "solid_color_analyzer.h", + ] + ++ cflags = [ "-fpermissive" ] ++ + defines = [ "CC_PAINT_IMPLEMENTATION=1" ] + + # cc/paint is intended to be a separate component from cc that can be diff --git a/chromium.spec b/chromium.spec index ce26436..110504d 100644 --- a/chromium.spec +++ b/chromium.spec @@ -190,6 +190,7 @@ Patch43: chromium-60.0.3112.78-jpeg-nomangle.patch # Do not mangle zlib Patch45: chromium-60.0.3112.78-no-zlib-mangle.patch # Apply these changes to work around EPEL7 compiler issues +Patch46: chromium-61.0.3163.79-cc-paint-fpermissive.patch Patch47: chromium-60.0.3112.90-vulkan-force-c99.patch # https://chromium.googlesource.com/chromium/src/+/9c77470ff34bac937ceb765a27cee1703f0f2426 Patch48: chromium-60.0.3112.101-camfix.patch @@ -653,6 +654,7 @@ udev. %patch43 -p1 -b .nomangle %patch45 -p1 -b .nozmangle %if 0%{?rhel} == 7 +%patch46 -p1 -b .fpermissive %patch47 -p1 -b .c99 %endif %patch48 -p1 -b .camfix From 92bd8d8d23980612016f5062053d60a7f0ac59b2 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 14 Sep 2017 09:30:58 -0400 Subject: [PATCH 0133/1449] try different cc/paint fix --- chromium-61.0.3163.79-cc-paint-fpermissive.patch | 12 ------------ chromium-61.0.3163.79-kmaxskip-constexpr.patch | 12 ++++++++++++ chromium.spec | 4 ++-- 3 files changed, 14 insertions(+), 14 deletions(-) delete mode 100644 chromium-61.0.3163.79-cc-paint-fpermissive.patch create mode 100644 chromium-61.0.3163.79-kmaxskip-constexpr.patch diff --git a/chromium-61.0.3163.79-cc-paint-fpermissive.patch b/chromium-61.0.3163.79-cc-paint-fpermissive.patch deleted file mode 100644 index 495c45a..0000000 --- a/chromium-61.0.3163.79-cc-paint-fpermissive.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-61.0.3163.79/cc/paint/BUILD.gn.epel7 chromium-61.0.3163.79/cc/paint/BUILD.gn ---- chromium-61.0.3163.79/cc/paint/BUILD.gn.epel7 2017-09-13 13:21:07.743006338 -0400 -+++ chromium-61.0.3163.79/cc/paint/BUILD.gn 2017-09-13 13:25:43.091933209 -0400 -@@ -41,6 +41,8 @@ cc_component("paint") { - "solid_color_analyzer.h", - ] - -+ cflags = [ "-fpermissive" ] -+ - defines = [ "CC_PAINT_IMPLEMENTATION=1" ] - - # cc/paint is intended to be a separate component from cc that can be diff --git a/chromium-61.0.3163.79-kmaxskip-constexpr.patch b/chromium-61.0.3163.79-kmaxskip-constexpr.patch new file mode 100644 index 0000000..fab1f1c --- /dev/null +++ b/chromium-61.0.3163.79-kmaxskip-constexpr.patch @@ -0,0 +1,12 @@ +diff -up chromium-61.0.3163.79/cc/paint/paint_op_buffer.cc.kmaxskip chromium-61.0.3163.79/cc/paint/paint_op_buffer.cc +--- chromium-61.0.3163.79/cc/paint/paint_op_buffer.cc.kmaxskip 2017-09-14 09:28:18.594875170 -0400 ++++ chromium-61.0.3163.79/cc/paint/paint_op_buffer.cc 2017-09-14 09:29:37.266072373 -0400 +@@ -207,7 +207,7 @@ TYPES(M); + #undef TYPES + + SkRect PaintOp::kUnsetRect = {SK_ScalarInfinity, 0, 0, 0}; +-const size_t PaintOp::kMaxSkip; ++constexpr size_t PaintOp::kMaxSkip; + + std::string PaintOpTypeToString(PaintOpType type) { + switch (type) { diff --git a/chromium.spec b/chromium.spec index 110504d..2c10707 100644 --- a/chromium.spec +++ b/chromium.spec @@ -190,7 +190,7 @@ Patch43: chromium-60.0.3112.78-jpeg-nomangle.patch # Do not mangle zlib Patch45: chromium-60.0.3112.78-no-zlib-mangle.patch # Apply these changes to work around EPEL7 compiler issues -Patch46: chromium-61.0.3163.79-cc-paint-fpermissive.patch +Patch46: chromium-61.0.3163.79-kmaxskip-constexpr.patch Patch47: chromium-60.0.3112.90-vulkan-force-c99.patch # https://chromium.googlesource.com/chromium/src/+/9c77470ff34bac937ceb765a27cee1703f0f2426 Patch48: chromium-60.0.3112.101-camfix.patch @@ -654,7 +654,7 @@ udev. %patch43 -p1 -b .nomangle %patch45 -p1 -b .nozmangle %if 0%{?rhel} == 7 -%patch46 -p1 -b .fpermissive +%patch46 -p1 -b .kmaxskip %patch47 -p1 -b .c99 %endif %patch48 -p1 -b .camfix From c00dedb7b53a73dd779a1653c81d5dc887265f45 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 14 Sep 2017 10:24:23 -0400 Subject: [PATCH 0134/1449] more epel gcc fixes --- chromium-61.0.3163.79-dde535-gcc-fix.patch | 14 ++++++++++++++ chromium.spec | 3 +++ 2 files changed, 17 insertions(+) create mode 100644 chromium-61.0.3163.79-dde535-gcc-fix.patch diff --git a/chromium-61.0.3163.79-dde535-gcc-fix.patch b/chromium-61.0.3163.79-dde535-gcc-fix.patch new file mode 100644 index 0000000..f9c3572 --- /dev/null +++ b/chromium-61.0.3163.79-dde535-gcc-fix.patch @@ -0,0 +1,14 @@ +diff -up chromium-61.0.3163.79/content/renderer/service_worker/web_service_worker_installed_scripts_manager_impl.cc.dde5e35 chromium-61.0.3163.79/content/renderer/service_worker/web_service_worker_installed_scripts_manager_impl.cc +diff -up chromium-61.0.3163.79/services/resource_coordinator/resource_coordinator_service.cc.dde5e35 chromium-61.0.3163.79/services/resource_coordinator/resource_coordinator_service.cc +--- chromium-61.0.3163.79/services/resource_coordinator/resource_coordinator_service.cc.dde5e35 2017-09-14 10:20:59.750146036 -0400 ++++ chromium-61.0.3163.79/services/resource_coordinator/resource_coordinator_service.cc 2017-09-14 10:21:35.498261516 -0400 +@@ -17,7 +17,8 @@ std::unique_ptr(); + +- return resource_coordinator_service; ++ return std::unique_ptr( ++ resource_coordinator_service.release()); + } + + ResourceCoordinatorService::ResourceCoordinatorService() diff --git a/chromium.spec b/chromium.spec index 2c10707..a264003 100644 --- a/chromium.spec +++ b/chromium.spec @@ -216,6 +216,8 @@ Patch55: chromium-61.0.3163.79-gtk2fix.patch Patch56: chromium-61.0.3163.79-fix-atk-compile.patch # Only needed when glibc 2.26.90 or later is used Patch57: chromium-61.0.3163.79-aarch64-glibc-2.26.90.patch +# More gcc fixes for epel +Patch58: chromium-61.0.3163.79-dde535-gcc-fix.patch ### Chromium Tests Patches ### Patch100: chromium-46.0.2490.86-use_system_opus.patch @@ -656,6 +658,7 @@ udev. %if 0%{?rhel} == 7 %patch46 -p1 -b .kmaxskip %patch47 -p1 -b .c99 +%patch58 -p1 -b .dde5e35 %endif %patch48 -p1 -b .camfix %patch50 -p1 -b .pathfix From 5ff888b012dceeb722f051db5de026f9e295b188 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 14 Sep 2017 11:17:31 -0400 Subject: [PATCH 0135/1449] will it never stop? --- chromium-61.0.3163.79-gcc-nc.patch | 12 ++++++++++++ chromium.spec | 2 ++ 2 files changed, 14 insertions(+) create mode 100644 chromium-61.0.3163.79-gcc-nc.patch diff --git a/chromium-61.0.3163.79-gcc-nc.patch b/chromium-61.0.3163.79-gcc-nc.patch new file mode 100644 index 0000000..652e4bd --- /dev/null +++ b/chromium-61.0.3163.79-gcc-nc.patch @@ -0,0 +1,12 @@ +diff -up chromium-61.0.3163.79/content/network/network_service_impl.cc.gcc-nc chromium-61.0.3163.79/content/network/network_service_impl.cc +--- chromium-61.0.3163.79/content/network/network_service_impl.cc.gcc-nc 2017-09-14 11:15:35.138981701 -0400 ++++ chromium-61.0.3163.79/content/network/network_service_impl.cc 2017-09-14 11:16:15.874070310 -0400 +@@ -90,7 +90,7 @@ NetworkServiceImpl::CreateNetworkContext + base::MakeUnique(std::move(request), std::move(params), + std::move(builder)); + *url_request_context = network_context->url_request_context(); +- return network_context; ++ return std::unique_ptr(network_context.release()); + } + + std::unique_ptr NetworkServiceImpl::CreateForTesting() { diff --git a/chromium.spec b/chromium.spec index a264003..fa699ff 100644 --- a/chromium.spec +++ b/chromium.spec @@ -218,6 +218,7 @@ Patch56: chromium-61.0.3163.79-fix-atk-compile.patch Patch57: chromium-61.0.3163.79-aarch64-glibc-2.26.90.patch # More gcc fixes for epel Patch58: chromium-61.0.3163.79-dde535-gcc-fix.patch +Patch59: chromium-61.0.3163.79-gcc-nc.patch ### Chromium Tests Patches ### Patch100: chromium-46.0.2490.86-use_system_opus.patch @@ -659,6 +660,7 @@ udev. %patch46 -p1 -b .kmaxskip %patch47 -p1 -b .c99 %patch58 -p1 -b .dde5e35 +%patch59 -p1 -b .gcc-nc %endif %patch48 -p1 -b .camfix %patch50 -p1 -b .pathfix From a0a687b685d749b71830e3cd1151ab9783777796 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 14 Sep 2017 14:19:52 -0400 Subject: [PATCH 0136/1449] ugly hack to make epel7 build. maybe --- chromium-61.0.3163.79-uglyhack.patch | 12 ++++++++++++ chromium.spec | 3 +++ 2 files changed, 15 insertions(+) create mode 100644 chromium-61.0.3163.79-uglyhack.patch diff --git a/chromium-61.0.3163.79-uglyhack.patch b/chromium-61.0.3163.79-uglyhack.patch new file mode 100644 index 0000000..b76fcd7 --- /dev/null +++ b/chromium-61.0.3163.79-uglyhack.patch @@ -0,0 +1,12 @@ +diff -up chromium-61.0.3163.79/mojo/public/cpp/bindings/struct_ptr.h.uglyhack chromium-61.0.3163.79/mojo/public/cpp/bindings/struct_ptr.h +--- chromium-61.0.3163.79/mojo/public/cpp/bindings/struct_ptr.h.uglyhack 2017-09-14 14:01:32.168409717 -0400 ++++ chromium-61.0.3163.79/mojo/public/cpp/bindings/struct_ptr.h 2017-09-14 14:01:40.478219060 -0400 +@@ -107,7 +107,7 @@ class StructPtr { + + std::unique_ptr ptr_; + +- DISALLOW_COPY_AND_ASSIGN(StructPtr); ++ // DISALLOW_COPY_AND_ASSIGN(StructPtr); + }; + + template diff --git a/chromium.spec b/chromium.spec index fa699ff..1f24993 100644 --- a/chromium.spec +++ b/chromium.spec @@ -219,6 +219,8 @@ Patch57: chromium-61.0.3163.79-aarch64-glibc-2.26.90.patch # More gcc fixes for epel Patch58: chromium-61.0.3163.79-dde535-gcc-fix.patch Patch59: chromium-61.0.3163.79-gcc-nc.patch +# This is really ugly. +Patch60: chromium-61.0.3163.79-uglyhack.patch ### Chromium Tests Patches ### Patch100: chromium-46.0.2490.86-use_system_opus.patch @@ -661,6 +663,7 @@ udev. %patch47 -p1 -b .c99 %patch58 -p1 -b .dde5e35 %patch59 -p1 -b .gcc-nc +%patch60 -p1 -b .uglyhack %endif %patch48 -p1 -b .camfix %patch50 -p1 -b .pathfix From 1144ae5d3cd031b0e14095ce787f1574109b33b2 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 19 Sep 2017 10:07:30 -0400 Subject: [PATCH 0137/1449] i think this will build --- ...79-epel7-no-nullptr-assignment-on-StructPtr.patch | 12 ++++++++++++ chromium.spec | 6 +++--- 2 files changed, 15 insertions(+), 3 deletions(-) create mode 100644 chromium-61.0.3163.79-epel7-no-nullptr-assignment-on-StructPtr.patch diff --git a/chromium-61.0.3163.79-epel7-no-nullptr-assignment-on-StructPtr.patch b/chromium-61.0.3163.79-epel7-no-nullptr-assignment-on-StructPtr.patch new file mode 100644 index 0000000..0ba375b --- /dev/null +++ b/chromium-61.0.3163.79-epel7-no-nullptr-assignment-on-StructPtr.patch @@ -0,0 +1,12 @@ +diff -up chromium-61.0.3163.79/third_party/WebKit/Source/platform/blob/BlobData.cpp.nonullptr chromium-61.0.3163.79/third_party/WebKit/Source/platform/blob/BlobData.cpp +--- chromium-61.0.3163.79/third_party/WebKit/Source/platform/blob/BlobData.cpp.nonullptr 2017-09-18 11:28:33.541339036 -0400 ++++ chromium-61.0.3163.79/third_party/WebKit/Source/platform/blob/BlobData.cpp 2017-09-18 11:27:35.757799400 -0400 +@@ -287,7 +287,7 @@ BlobDataHandle::BlobDataHandle(std::uniq + + size_t current_memory_population = 0; + Vector elements; +- const DataElementPtr null_element = nullptr; ++ const DataElementPtr null_element; + BlobBytesProvider* last_bytes_provider = nullptr; + + // TODO(mek): When the mojo code path is the default BlobData should diff --git a/chromium.spec b/chromium.spec index 1f24993..3ab9372 100644 --- a/chromium.spec +++ b/chromium.spec @@ -219,8 +219,8 @@ Patch57: chromium-61.0.3163.79-aarch64-glibc-2.26.90.patch # More gcc fixes for epel Patch58: chromium-61.0.3163.79-dde535-gcc-fix.patch Patch59: chromium-61.0.3163.79-gcc-nc.patch -# This is really ugly. -Patch60: chromium-61.0.3163.79-uglyhack.patch +# Epel compiler really does not like assigning nullptr to a StructPtr +Patch60: chromium-61.0.3163.79-epel7-no-nullptr-assignment-on-StructPtr.patch ### Chromium Tests Patches ### Patch100: chromium-46.0.2490.86-use_system_opus.patch @@ -663,7 +663,7 @@ udev. %patch47 -p1 -b .c99 %patch58 -p1 -b .dde5e35 %patch59 -p1 -b .gcc-nc -%patch60 -p1 -b .uglyhack +%patch60 -p1 -b .nonullptr %endif %patch48 -p1 -b .camfix %patch50 -p1 -b .pathfix From 79d8235f4c89bb21221dba613de4eb62efdfe8d8 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 22 Sep 2017 18:36:45 -0400 Subject: [PATCH 0138/1449] 61.0.3163.100 and lots of epel7 fixes --- chromium-61.0.3163.79-rvalue-fix.patch | 36 ++++++++++++++++++++++++++ chromium.spec | 24 +++++++++++++++-- 2 files changed, 58 insertions(+), 2 deletions(-) create mode 100644 chromium-61.0.3163.79-rvalue-fix.patch diff --git a/chromium-61.0.3163.79-rvalue-fix.patch b/chromium-61.0.3163.79-rvalue-fix.patch new file mode 100644 index 0000000..41138f6 --- /dev/null +++ b/chromium-61.0.3163.79-rvalue-fix.patch @@ -0,0 +1,36 @@ +diff -up chromium-61.0.3163.100/chrome/browser/ui/webui/settings/on_startup_handler.cc.another-rvalue-fix chromium-61.0.3163.100/chrome/browser/ui/webui/settings/on_startup_handler.cc +--- chromium-61.0.3163.100/chrome/browser/ui/webui/settings/on_startup_handler.cc.another-rvalue-fix 2017-09-22 17:50:14.247727636 -0400 ++++ chromium-61.0.3163.100/chrome/browser/ui/webui/settings/on_startup_handler.cc 2017-09-22 17:50:25.626492965 -0400 +@@ -77,7 +77,7 @@ std::unique_ptr OnStartupHa + !extensions::ExtensionSystem::Get(profile_) + ->management_policy() + ->MustRemainEnabled(ntp_extension, nullptr)); +- return dict; ++ return std::move(dict); + } + + void OnStartupHandler::HandleGetNtpExtension(const base::ListValue* args) { +diff -up chromium-61.0.3163.100/ui/message_center/views/notification_header_view.cc.another-rvalue-fix chromium-61.0.3163.100/ui/message_center/views/notification_header_view.cc +--- chromium-61.0.3163.100/ui/message_center/views/notification_header_view.cc.another-rvalue-fix 2017-09-21 18:05:24.000000000 -0400 ++++ chromium-61.0.3163.100/ui/message_center/views/notification_header_view.cc 2017-09-22 10:14:15.680987910 -0400 +@@ -321,7 +321,7 @@ std::unique_ptr Notifica + ink_drop->SetAutoHighlightMode( + views::InkDropImpl::AutoHighlightMode::SHOW_ON_RIPPLE); + ink_drop->SetShowHighlightOnHover(false); +- return ink_drop; ++ return std::move(ink_drop); + } + + std::unique_ptr +diff -up chromium-61.0.3163.100/ui/views/controls/button/checkbox.cc.another-rvalue-fix chromium-61.0.3163.100/ui/views/controls/button/checkbox.cc +--- chromium-61.0.3163.100/ui/views/controls/button/checkbox.cc.another-rvalue-fix 2017-09-22 14:46:36.109955800 -0400 ++++ chromium-61.0.3163.100/ui/views/controls/button/checkbox.cc 2017-09-22 14:46:48.736698401 -0400 +@@ -195,7 +195,7 @@ std::unique_ptr Checkbox::Creat + std::unique_ptr ink_drop = CreateDefaultInkDropImpl(); + ink_drop->SetShowHighlightOnHover(false); + ink_drop->SetAutoHighlightMode(InkDropImpl::AutoHighlightMode::NONE); +- return ink_drop; ++ return std::move(ink_drop); + } + + std::unique_ptr Checkbox::CreateInkDropRipple() const { diff --git a/chromium.spec b/chromium.spec index 3ab9372..e970c15 100644 --- a/chromium.spec +++ b/chromium.spec @@ -84,11 +84,13 @@ BuildRequires: libicu-devel >= 5.4 %global bundlelibusbx 1 %global bundleharfbuzz 1 %global bundlelibwebp 1 +%global bundlelibpng 1 %else %global bundleharfbuzz 0 %global bundleopus 1 %global bundlelibusbx 0 %global bundlelibwebp 0 +%global bundlelibpng 0 %endif # Needs at least harfbuzz 1.4.2 now. @@ -115,7 +117,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3163.79 +Version: %{majorversion}.0.3163.100 Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home @@ -221,6 +223,8 @@ Patch58: chromium-61.0.3163.79-dde535-gcc-fix.patch Patch59: chromium-61.0.3163.79-gcc-nc.patch # Epel compiler really does not like assigning nullptr to a StructPtr Patch60: chromium-61.0.3163.79-epel7-no-nullptr-assignment-on-StructPtr.patch +# Another gcc 4.8 goods.. +Patch61: chromium-61.0.3163.79-rvalue-fix.patch ### Chromium Tests Patches ### Patch100: chromium-46.0.2490.86-use_system_opus.patch @@ -341,7 +345,12 @@ BuildRequires: libffi-devel BuildRequires: libicu-devel = 54.1 %endif BuildRequires: libjpeg-devel +%if 0%{?bundlelibpng} +# If this is true, we're using the bundled libpng +# which we need to do because the RHEL 7 libpng doesn't work right anymore +%else BuildRequires: libpng-devel +%endif %if 0 # see https://code.google.com/p/chromium/issues/detail?id=501318 BuildRequires: libsrtp-devel >= 1.4.4 @@ -473,7 +482,9 @@ Provides: bundled(libevent) = 1.4.15 Provides: bundled(libjingle) = 9564 # Provides: bundled(libjpeg-turbo) = 1.4.90 Provides: bundled(libphonenumber) = a4da30df63a097d67e3c429ead6790ad91d36cf4 -# Provides: bundled(libpng) = 1.6.22 +%if 0%{?bundlelibpng} +Provides: bundled(libpng) = 1.6.22 +%endif Provides: bundled(libsrtp) = 2cbd85085037dc7bf2eda48d4cf62e2829056e2d %if %{bundlelibusbx} Provides: bundled(libusbx) = 1.0.17 @@ -664,6 +675,7 @@ udev. %patch58 -p1 -b .dde5e35 %patch59 -p1 -b .gcc-nc %patch60 -p1 -b .nonullptr +%patch61 -p1 -b .another-rvalue-fix %endif %patch48 -p1 -b .camfix %patch50 -p1 -b .pathfix @@ -1025,7 +1037,10 @@ build/linux/unbundle/replace_gn_files.py --system-libraries \ %endif libdrm \ libjpeg \ +%if %{bundlelibpng} +%else libpng \ +%endif %if %{bundlelibusbx} %else libusb \ @@ -1898,6 +1913,11 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Fri Sep 22 2017 Tom Callaway 61.0.3163.100-1 +- update to 61.0.3163.100 +- lots of epel7 specific fixes +- use bundled libpng on epel7 + * Wed Sep 6 2017 Tom Callaway 61.0.3163.79-1 - update to 61.0.3163.79 From fac5adaa62ed571066fcf5283734d5ae0235c861 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 22 Sep 2017 18:48:11 -0400 Subject: [PATCH 0139/1449] uploaded sources this time --- .gitignore | 1 + sources | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index b3e1d00..33c625a 100644 --- a/.gitignore +++ b/.gitignore @@ -30,3 +30,4 @@ /chromium-60.0.3112.113-clean.tar.xz /chromium-60.0.3112.113.tar.xz /chromium-61.0.3163.79-clean.tar.xz +/chromium-61.0.3163.100-clean.tar.xz diff --git a/sources b/sources index fadaf7c..ae3c95c 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 -SHA512 (chromium-61.0.3163.79-clean.tar.xz) = 9d3bfb24a71af6332e30cb5a5d40581eab166bf550c48019b6ac6ed37ead52eac4a09af41e056207f5ded91f4c420560ebd886ae3ae23e05602c755e334dbe02 SHA512 (policy_templates.zip) = 39e9ccbeda8499acb81e5455e34ece44e72f065d139e718b38803c907b4ecca9f179f2eb84b10953a307087ed9586a5de30bbfb933eb9f6b77a682ea82164be7 +SHA512 (chromium-61.0.3163.100-clean.tar.xz) = 985a2d86f43e59252343fa3a5ee56b0462259ef67afd4c43fd9ee3abd9eec34292b7437d416513cccc29a9de9a10879d91ccb5328e7702a1888b5880eb27c809 From faa28427517424d3700cdd82fa9b86abb273e483 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 18 Oct 2017 13:28:53 +0200 Subject: [PATCH 0140/1449] Update the chromium-lastest.py to always download the policy templates They are changing across the releases - always download the latest one. --- chromium-latest.py | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/chromium-latest.py b/chromium-latest.py index 88703db..242e8d8 100755 --- a/chromium-latest.py +++ b/chromium-latest.py @@ -42,7 +42,7 @@ chromium_root_dir = "." version_string = "stable" name = 'Chromium Latest' -script_version = 0.8 +script_version = 0.9 my_description = '{0} {1}'.format(name, script_version) @@ -205,6 +205,26 @@ def download_chrome_latest_rpm(arch): remove_file_if_exists (chrome_rpm) sys.exit(1) +def remove_and_download_latest_policy_templates(): + + policy_file = 'policy_templates.zip' + path = 'https://dl.google.com/dl/edgedl/chrome/policy/%s' % policy_file + remove_file_if_exists(policy_file) + + # Let's make sure we haven't already downloaded it. + if os.path.isfile("./%s" % policy_file): + print "%s already exists!" % policy_file + else: + print "Downloading %s" % path + # Perhaps look at using python-progressbar at some point? + info=urllib.urlretrieve(path, policy_file, reporthook=dlProgress)[1] + urllib.urlcleanup() + print "" + if (info["Content-Type"] != "application/octet-stream"): + print 'Policy templates are not on servers.' % version_string + remove_file_if_exists (policy_file) + sys.exit(1) + # This is where the magic happens if __name__ == '__main__': @@ -291,6 +311,9 @@ if __name__ == '__main__': download_version(chromium_version) + # Always download the newest policy templates + remove_and_download_latest_policy_templates() + # Lets make sure we haven't unpacked it already latest_dir = "%s/chromium-%s" % (chromium_root_dir, chromium_version) if (args.clean and os.path.isdir(latest_dir)): From 9d223e0ab1fea6a6573805f7bde1ea0c6e538cb6 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 18 Oct 2017 13:28:53 +0200 Subject: [PATCH 0141/1449] Update the chromium-lastest.py to always download the policy templates They are changing across the releases - always download the latest one. --- chromium-latest.py | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/chromium-latest.py b/chromium-latest.py index 88703db..242e8d8 100755 --- a/chromium-latest.py +++ b/chromium-latest.py @@ -42,7 +42,7 @@ chromium_root_dir = "." version_string = "stable" name = 'Chromium Latest' -script_version = 0.8 +script_version = 0.9 my_description = '{0} {1}'.format(name, script_version) @@ -205,6 +205,26 @@ def download_chrome_latest_rpm(arch): remove_file_if_exists (chrome_rpm) sys.exit(1) +def remove_and_download_latest_policy_templates(): + + policy_file = 'policy_templates.zip' + path = 'https://dl.google.com/dl/edgedl/chrome/policy/%s' % policy_file + remove_file_if_exists(policy_file) + + # Let's make sure we haven't already downloaded it. + if os.path.isfile("./%s" % policy_file): + print "%s already exists!" % policy_file + else: + print "Downloading %s" % path + # Perhaps look at using python-progressbar at some point? + info=urllib.urlretrieve(path, policy_file, reporthook=dlProgress)[1] + urllib.urlcleanup() + print "" + if (info["Content-Type"] != "application/octet-stream"): + print 'Policy templates are not on servers.' % version_string + remove_file_if_exists (policy_file) + sys.exit(1) + # This is where the magic happens if __name__ == '__main__': @@ -291,6 +311,9 @@ if __name__ == '__main__': download_version(chromium_version) + # Always download the newest policy templates + remove_and_download_latest_policy_templates() + # Lets make sure we haven't unpacked it already latest_dir = "%s/chromium-%s" % (chromium_root_dir, chromium_version) if (args.clean and os.path.isdir(latest_dir)): From 18ab5a523a50798d420829681bb6157d530c3bc4 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 18 Oct 2017 13:28:53 +0200 Subject: [PATCH 0142/1449] Update the chromium-lastest.py to always download the policy templates They are changing across the releases - always download the latest one. --- chromium-latest.py | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/chromium-latest.py b/chromium-latest.py index 88703db..242e8d8 100755 --- a/chromium-latest.py +++ b/chromium-latest.py @@ -42,7 +42,7 @@ chromium_root_dir = "." version_string = "stable" name = 'Chromium Latest' -script_version = 0.8 +script_version = 0.9 my_description = '{0} {1}'.format(name, script_version) @@ -205,6 +205,26 @@ def download_chrome_latest_rpm(arch): remove_file_if_exists (chrome_rpm) sys.exit(1) +def remove_and_download_latest_policy_templates(): + + policy_file = 'policy_templates.zip' + path = 'https://dl.google.com/dl/edgedl/chrome/policy/%s' % policy_file + remove_file_if_exists(policy_file) + + # Let's make sure we haven't already downloaded it. + if os.path.isfile("./%s" % policy_file): + print "%s already exists!" % policy_file + else: + print "Downloading %s" % path + # Perhaps look at using python-progressbar at some point? + info=urllib.urlretrieve(path, policy_file, reporthook=dlProgress)[1] + urllib.urlcleanup() + print "" + if (info["Content-Type"] != "application/octet-stream"): + print 'Policy templates are not on servers.' % version_string + remove_file_if_exists (policy_file) + sys.exit(1) + # This is where the magic happens if __name__ == '__main__': @@ -291,6 +311,9 @@ if __name__ == '__main__': download_version(chromium_version) + # Always download the newest policy templates + remove_and_download_latest_policy_templates() + # Lets make sure we haven't unpacked it already latest_dir = "%s/chromium-%s" % (chromium_root_dir, chromium_version) if (args.clean and os.path.isdir(latest_dir)): From b36884aebdb5c98e6ad3c515020919bbccbcda53 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Thu, 19 Oct 2017 14:08:03 +0200 Subject: [PATCH 0143/1449] Improve the chromium-latest.py script - Download the policy templates per release channel - Only run the nacl_versions when not running on python 2.6 as the toolchain_build modules are not python 2.6 compatible --- chromium-latest.py | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/chromium-latest.py b/chromium-latest.py index 242e8d8..2efe44b 100755 --- a/chromium-latest.py +++ b/chromium-latest.py @@ -165,6 +165,10 @@ def download_version(version): download_file_and_compare_hashes ('chromium-%s-testdata.tar.xz' % version) def nacl_versions(version): + + if sys.version_info[0] == 2 and sys.version_info[1] == 6: + return + myvars = {} chrome_dir = './chromium-%s' % version with open(chrome_dir + "/native_client/tools/REVISIONS") as myfile: @@ -205,10 +209,16 @@ def download_chrome_latest_rpm(arch): remove_file_if_exists (chrome_rpm) sys.exit(1) -def remove_and_download_latest_policy_templates(): +def remove_and_download_latest_policy_templates(version_string): policy_file = 'policy_templates.zip' - path = 'https://dl.google.com/dl/edgedl/chrome/policy/%s' % policy_file + if version_string != 'stable': + if version_string == 'unstable': + policy_file = "dev_" + policy_file + else: + policy_file = version_string + "_" + policy_file + + path = 'https://dl.google.com/chrome/policy/%s' % policy_file remove_file_if_exists(policy_file) # Let's make sure we haven't already downloaded it. @@ -312,7 +322,7 @@ if __name__ == '__main__': download_version(chromium_version) # Always download the newest policy templates - remove_and_download_latest_policy_templates() + remove_and_download_latest_policy_templates(version_string) # Lets make sure we haven't unpacked it already latest_dir = "%s/chromium-%s" % (chromium_root_dir, chromium_version) From 404a6d24141497f551e18ee40e448d65715eddcc Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Thu, 19 Oct 2017 14:08:03 +0200 Subject: [PATCH 0144/1449] Improve the chromium-latest.py script - Download the policy templates per release channel - Only run the nacl_versions when not running on python 2.6 as the toolchain_build modules are not python 2.6 compatible --- chromium-latest.py | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/chromium-latest.py b/chromium-latest.py index 242e8d8..2efe44b 100755 --- a/chromium-latest.py +++ b/chromium-latest.py @@ -165,6 +165,10 @@ def download_version(version): download_file_and_compare_hashes ('chromium-%s-testdata.tar.xz' % version) def nacl_versions(version): + + if sys.version_info[0] == 2 and sys.version_info[1] == 6: + return + myvars = {} chrome_dir = './chromium-%s' % version with open(chrome_dir + "/native_client/tools/REVISIONS") as myfile: @@ -205,10 +209,16 @@ def download_chrome_latest_rpm(arch): remove_file_if_exists (chrome_rpm) sys.exit(1) -def remove_and_download_latest_policy_templates(): +def remove_and_download_latest_policy_templates(version_string): policy_file = 'policy_templates.zip' - path = 'https://dl.google.com/dl/edgedl/chrome/policy/%s' % policy_file + if version_string != 'stable': + if version_string == 'unstable': + policy_file = "dev_" + policy_file + else: + policy_file = version_string + "_" + policy_file + + path = 'https://dl.google.com/chrome/policy/%s' % policy_file remove_file_if_exists(policy_file) # Let's make sure we haven't already downloaded it. @@ -312,7 +322,7 @@ if __name__ == '__main__': download_version(chromium_version) # Always download the newest policy templates - remove_and_download_latest_policy_templates() + remove_and_download_latest_policy_templates(version_string) # Lets make sure we haven't unpacked it already latest_dir = "%s/chromium-%s" % (chromium_root_dir, chromium_version) From 07728cdf8251f5fab60de9e48e5cee5bb5fc9cf4 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Thu, 19 Oct 2017 14:08:03 +0200 Subject: [PATCH 0145/1449] Improve the chromium-latest.py script - Download the policy templates per release channel - Only run the nacl_versions when not running on python 2.6 as the toolchain_build modules are not python 2.6 compatible --- chromium-latest.py | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/chromium-latest.py b/chromium-latest.py index 242e8d8..2efe44b 100755 --- a/chromium-latest.py +++ b/chromium-latest.py @@ -165,6 +165,10 @@ def download_version(version): download_file_and_compare_hashes ('chromium-%s-testdata.tar.xz' % version) def nacl_versions(version): + + if sys.version_info[0] == 2 and sys.version_info[1] == 6: + return + myvars = {} chrome_dir = './chromium-%s' % version with open(chrome_dir + "/native_client/tools/REVISIONS") as myfile: @@ -205,10 +209,16 @@ def download_chrome_latest_rpm(arch): remove_file_if_exists (chrome_rpm) sys.exit(1) -def remove_and_download_latest_policy_templates(): +def remove_and_download_latest_policy_templates(version_string): policy_file = 'policy_templates.zip' - path = 'https://dl.google.com/dl/edgedl/chrome/policy/%s' % policy_file + if version_string != 'stable': + if version_string == 'unstable': + policy_file = "dev_" + policy_file + else: + policy_file = version_string + "_" + policy_file + + path = 'https://dl.google.com/chrome/policy/%s' % policy_file remove_file_if_exists(policy_file) # Let's make sure we haven't already downloaded it. @@ -312,7 +322,7 @@ if __name__ == '__main__': download_version(chromium_version) # Always download the newest policy templates - remove_and_download_latest_policy_templates() + remove_and_download_latest_policy_templates(version_string) # Lets make sure we haven't unpacked it already latest_dir = "%s/chromium-%s" % (chromium_root_dir, chromium_version) From 69e53044ee20b1d5d79eb03f4303b5cf922d92e8 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 24 Oct 2017 16:59:02 -0400 Subject: [PATCH 0146/1449] 62.0.3202.62 --- ...62.0.3202.62-correct-cplusplus-check.patch | 20 + chromium-62.0.3202.62-dde535-gcc-fix.patch | 13 + chromium-62.0.3202.62-enable-mp3.patch | 484 ++++++++++++++++++ ...7-no-nullptr-assignment-on-StructPtr.patch | 12 + chromium-62.0.3202.62-gcc-nc.patch | 11 + chromium-62.0.3202.62-gcc7.patch | 11 + ...mium-62.0.3202.62-kmaxskip-constexpr.patch | 12 + chromium-62.0.3202.62-rvalue-fix.patch | 45 ++ chromium-gcc5-r3.patch | 98 ++++ chromium-gn-bootstrap-r17.patch | 68 +++ chromium.spec | 146 +++--- sources | 4 +- 12 files changed, 845 insertions(+), 79 deletions(-) create mode 100644 chromium-62.0.3202.62-correct-cplusplus-check.patch create mode 100644 chromium-62.0.3202.62-dde535-gcc-fix.patch create mode 100644 chromium-62.0.3202.62-enable-mp3.patch create mode 100644 chromium-62.0.3202.62-epel7-no-nullptr-assignment-on-StructPtr.patch create mode 100644 chromium-62.0.3202.62-gcc-nc.patch create mode 100644 chromium-62.0.3202.62-gcc7.patch create mode 100644 chromium-62.0.3202.62-kmaxskip-constexpr.patch create mode 100644 chromium-62.0.3202.62-rvalue-fix.patch create mode 100644 chromium-gcc5-r3.patch create mode 100644 chromium-gn-bootstrap-r17.patch diff --git a/chromium-62.0.3202.62-correct-cplusplus-check.patch b/chromium-62.0.3202.62-correct-cplusplus-check.patch new file mode 100644 index 0000000..39f8580 --- /dev/null +++ b/chromium-62.0.3202.62-correct-cplusplus-check.patch @@ -0,0 +1,20 @@ +diff -up chromium-62.0.3202.62/third_party/crc32c/src/include/crc32c/crc32c.h.fix-cplusplus-conditional chromium-62.0.3202.62/third_party/crc32c/src/include/crc32c/crc32c.h +--- chromium-62.0.3202.62/third_party/crc32c/src/include/crc32c/crc32c.h.fix-cplusplus-conditional 2017-10-17 15:12:35.000000000 -0400 ++++ chromium-62.0.3202.62/third_party/crc32c/src/include/crc32c/crc32c.h 2017-10-19 11:41:45.860279576 -0400 +@@ -38,6 +38,8 @@ inline uint32_t Crc32c(const std::string + // Visual Studio provides a header even in C++11 mode. When + // included, the header issues an #error. (C1189) + #if !defined(_MSC_VER) || __cplusplus >= 201703L ++// GCC issues an #error if __cplusplus <= 201402L ++#if defined(__GNUC__) && __cplusplus > 201402L + #include + + // Comptues the CRC32C of the bytes in the string_view. +@@ -46,6 +48,7 @@ inline uint32_t Crc32c(const std::string + string_view.size()); + } + ++#endif // defined(__GNUC__) && __cplusplus > 201402L + #endif // !defined(_MSC_VER) || __cplusplus >= 201703L + #endif // __has_include() + #endif // defined(__has_include) diff --git a/chromium-62.0.3202.62-dde535-gcc-fix.patch b/chromium-62.0.3202.62-dde535-gcc-fix.patch new file mode 100644 index 0000000..378403a --- /dev/null +++ b/chromium-62.0.3202.62-dde535-gcc-fix.patch @@ -0,0 +1,13 @@ +diff -up chromium-62.0.3202.62/services/resource_coordinator/resource_coordinator_service.cc.dde535 chromium-62.0.3202.62/services/resource_coordinator/resource_coordinator_service.cc +--- chromium-62.0.3202.62/services/resource_coordinator/resource_coordinator_service.cc.dde535 2017-10-18 10:04:33.237966223 -0400 ++++ chromium-62.0.3202.62/services/resource_coordinator/resource_coordinator_service.cc 2017-10-18 10:05:00.442438694 -0400 +@@ -18,7 +18,8 @@ std::unique_ptr(); + +- return resource_coordinator_service; ++ return std::unique_ptr( ++ resource_coordinator_service.release()); + } + + ResourceCoordinatorService::ResourceCoordinatorService() diff --git a/chromium-62.0.3202.62-enable-mp3.patch b/chromium-62.0.3202.62-enable-mp3.patch new file mode 100644 index 0000000..3ed9dbf --- /dev/null +++ b/chromium-62.0.3202.62-enable-mp3.patch @@ -0,0 +1,484 @@ +diff -up chromium-62.0.3202.62/components/neterror/resources/sounds/button-press.mp3 chromium-62.0.3202.62/components/neterror/resources/sounds/button-press +diff -up chromium-62.0.3202.62/components/neterror/resources/sounds/hit.mp3 chromium-62.0.3202.62/components/neterror/resources/sounds/hit +diff -up chromium-62.0.3202.62/components/neterror/resources/sounds/score-reached.mp3 chromium-62.0.3202.62/components/neterror/resources/sounds/score-reached +diff -up chromium-62.0.3202.62/media/base/mime_util_internal.cc.mp3 chromium-62.0.3202.62/media/base/mime_util_internal.cc +--- chromium-62.0.3202.62/media/base/mime_util_internal.cc.mp3 2017-10-17 15:10:44.000000000 -0400 ++++ chromium-62.0.3202.62/media/base/mime_util_internal.cc 2017-10-18 09:32:16.957562156 -0400 +@@ -266,15 +266,19 @@ void MimeUtil::AddSupportedMediaFormats( + CodecSet webm_codecs(webm_audio_codecs); + webm_codecs.insert(webm_video_codecs.begin(), webm_video_codecs.end()); + +-#if BUILDFLAG(USE_PROPRIETARY_CODECS) + const CodecSet mp3_codecs{MP3}; ++#if BUILDFLAG(USE_PROPRIETARY_CODECS) + const CodecSet aac{MPEG2_AAC, MPEG4_AAC}; ++#else ++ const CodecSet aac{}; ++#endif ++ CodecSet mp4_audio_codecs(aac); ++ mp4_audio_codecs.emplace(MP3); + ++#if BUILDFLAG(USE_PROPRIETARY_CODECS) + CodecSet avc_and_aac(aac); + avc_and_aac.emplace(H264); + +- CodecSet mp4_audio_codecs(aac); +- mp4_audio_codecs.emplace(MP3); + mp4_audio_codecs.emplace(FLAC); + #if BUILDFLAG(ENABLE_AC3_EAC3_AUDIO_DEMUXING) + mp4_audio_codecs.emplace(AC3); +@@ -311,10 +315,10 @@ void MimeUtil::AddSupportedMediaFormats( + AddContainerWithCodecs("application/ogg", ogg_codecs, false); + AddContainerWithCodecs("audio/flac", implicit_codec, false); + +-#if BUILDFLAG(USE_PROPRIETARY_CODECS) + AddContainerWithCodecs("audio/mpeg", mp3_codecs, true); // Allow "mp3". + AddContainerWithCodecs("audio/mp3", implicit_codec, true); + AddContainerWithCodecs("audio/x-mp3", implicit_codec, true); ++#if BUILDFLAG(USE_PROPRIETARY_CODECS) + AddContainerWithCodecs("audio/aac", implicit_codec, true); // AAC / ADTS. + AddContainerWithCodecs("audio/mp4", mp4_audio_codecs, true); + DCHECK(!mp4_video_codecs.empty()); +@@ -920,7 +924,6 @@ bool MimeUtil::IsCodecProprietary(Codec + case INVALID_CODEC: + case AC3: + case EAC3: +- case MP3: + case MPEG2_AAC: + case MPEG4_AAC: + case H264: +@@ -928,6 +931,7 @@ bool MimeUtil::IsCodecProprietary(Codec + case DOLBY_VISION: + return true; + ++ case MP3: + case PCM: + case VORBIS: + case OPUS: +diff -up chromium-62.0.3202.62/media/formats/BUILD.gn.mp3 chromium-62.0.3202.62/media/formats/BUILD.gn +--- chromium-62.0.3202.62/media/formats/BUILD.gn.mp3 2017-10-17 15:10:45.000000000 -0400 ++++ chromium-62.0.3202.62/media/formats/BUILD.gn 2017-10-18 09:25:18.353676481 -0400 +@@ -17,6 +17,14 @@ source_set("formats") { + "ac3/ac3_util.h", + "common/offset_byte_queue.cc", + "common/offset_byte_queue.h", ++ "mpeg/adts_constants.cc", ++ "mpeg/adts_constants.h", ++ "mpeg/adts_stream_parser.cc", ++ "mpeg/adts_stream_parser.h", ++ "mpeg/mpeg1_audio_stream_parser.cc", ++ "mpeg/mpeg1_audio_stream_parser.h", ++ "mpeg/mpeg_audio_stream_parser_base.cc", ++ "mpeg/mpeg_audio_stream_parser_base.h", + "webm/webm_audio_client.cc", + "webm/webm_audio_client.h", + "webm/webm_cluster_parser.cc", +@@ -78,14 +86,6 @@ source_set("formats") { + "mp4/sample_to_group_iterator.h", + "mp4/track_run_iterator.cc", + "mp4/track_run_iterator.h", +- "mpeg/adts_constants.cc", +- "mpeg/adts_constants.h", +- "mpeg/adts_stream_parser.cc", +- "mpeg/adts_stream_parser.h", +- "mpeg/mpeg1_audio_stream_parser.cc", +- "mpeg/mpeg1_audio_stream_parser.h", +- "mpeg/mpeg_audio_stream_parser_base.cc", +- "mpeg/mpeg_audio_stream_parser_base.h", + ] + } + +diff -up chromium-62.0.3202.62/third_party/catapult/third_party/gsutil/gslib/tests/test_data/test.mp3 chromium-62.0.3202.62/third_party/catapult/third_party/gsutil/gslib/tests/test_data/test +diff -up chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h.mp3 chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h +--- chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h.mp3 2017-10-18 09:05:31.000000000 -0400 ++++ chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h 2017-10-18 09:25:18.354676462 -0400 +@@ -1,7 +1,7 @@ + /* Automatically generated by configure - do not modify! */ + #ifndef FFMPEG_CONFIG_H + #define FFMPEG_CONFIG_H +-#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/chrome/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-cross-compile --cross-prefix=/usr/bin/aarch64-linux-gnu- --target-os=linux --arch=aarch64 --enable-armv8 --extra-cflags='-march=armv8-a' --enable-pic" ++#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/chrome/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-cross-compile --cross-prefix=/usr/bin/aarch64-linux-gnu- --target-os=linux --arch=aarch64 --enable-armv8 --extra-cflags='-march=armv8-a' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" + #define FFMPEG_LICENSE "LGPL version 2.1 or later" + #define CONFIG_THIS_YEAR 2017 + #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" +@@ -542,7 +542,7 @@ + #define CONFIG_FFPROBE 0 + #define CONFIG_FFSERVER 0 + #define CONFIG_FFMPEG 0 +-#define CONFIG_DCT 0 ++#define CONFIG_DCT 1 + #define CONFIG_DWT 0 + #define CONFIG_ERROR_RESILIENCE 0 + #define CONFIG_FAAN 1 +@@ -620,9 +620,9 @@ + #define CONFIG_LZF 0 + #define CONFIG_ME_CMP 0 + #define CONFIG_MPEG_ER 0 +-#define CONFIG_MPEGAUDIO 0 +-#define CONFIG_MPEGAUDIODSP 0 +-#define CONFIG_MPEGAUDIOHEADER 0 ++#define CONFIG_MPEGAUDIO 1 ++#define CONFIG_MPEGAUDIODSP 1 ++#define CONFIG_MPEGAUDIOHEADER 1 + #define CONFIG_MPEGVIDEO 0 + #define CONFIG_MPEGVIDEOENC 0 + #define CONFIG_MSS34DSP 0 +@@ -968,7 +968,7 @@ + #define CONFIG_MP1FLOAT_DECODER 0 + #define CONFIG_MP2_DECODER 0 + #define CONFIG_MP2FLOAT_DECODER 0 +-#define CONFIG_MP3_DECODER 0 ++#define CONFIG_MP3_DECODER 1 + #define CONFIG_MP3FLOAT_DECODER 0 + #define CONFIG_MP3ADU_DECODER 0 + #define CONFIG_MP3ADUFLOAT_DECODER 0 +@@ -1275,7 +1275,7 @@ + #define CONFIG_MM_DEMUXER 0 + #define CONFIG_MMF_DEMUXER 0 + #define CONFIG_MOV_DEMUXER 0 +-#define CONFIG_MP3_DEMUXER 0 ++#define CONFIG_MP3_DEMUXER 1 + #define CONFIG_MPC_DEMUXER 0 + #define CONFIG_MPC8_DEMUXER 0 + #define CONFIG_MPEGPS_DEMUXER 0 +@@ -2217,7 +2217,7 @@ + #define CONFIG_MJPEG_PARSER 0 + #define CONFIG_MLP_PARSER 0 + #define CONFIG_MPEG4VIDEO_PARSER 0 +-#define CONFIG_MPEGAUDIO_PARSER 0 ++#define CONFIG_MPEGAUDIO_PARSER 1 + #define CONFIG_MPEGVIDEO_PARSER 0 + #define CONFIG_OPUS_PARSER 1 + #define CONFIG_PNG_PARSER 0 +diff -up chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h.mp3 chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h +--- chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h.mp3 2017-10-18 09:05:31.000000000 -0400 ++++ chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h 2017-10-18 09:25:18.355676443 -0400 +@@ -1,7 +1,7 @@ + /* Automatically generated by configure - do not modify! */ + #ifndef FFMPEG_CONFIG_H + #define FFMPEG_CONFIG_H +-#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/jrummell/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --disable-neon --extra-cflags='-mfpu=vfpv3-d16' --enable-pic" ++#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/jrummell/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --disable-neon --extra-cflags='-mfpu=vfpv3-d16' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" + #define FFMPEG_LICENSE "LGPL version 2.1 or later" + #define CONFIG_THIS_YEAR 2017 + #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" +@@ -542,7 +542,7 @@ + #define CONFIG_FFPROBE 0 + #define CONFIG_FFSERVER 0 + #define CONFIG_FFMPEG 0 +-#define CONFIG_DCT 0 ++#define CONFIG_DCT 1 + #define CONFIG_DWT 0 + #define CONFIG_ERROR_RESILIENCE 0 + #define CONFIG_FAAN 1 +@@ -620,9 +620,9 @@ + #define CONFIG_LZF 0 + #define CONFIG_ME_CMP 0 + #define CONFIG_MPEG_ER 0 +-#define CONFIG_MPEGAUDIO 0 +-#define CONFIG_MPEGAUDIODSP 0 +-#define CONFIG_MPEGAUDIOHEADER 0 ++#define CONFIG_MPEGAUDIO 1 ++#define CONFIG_MPEGAUDIODSP 1 ++#define CONFIG_MPEGAUDIOHEADER 1 + #define CONFIG_MPEGVIDEO 0 + #define CONFIG_MPEGVIDEOENC 0 + #define CONFIG_MSS34DSP 0 +@@ -968,7 +968,7 @@ + #define CONFIG_MP1FLOAT_DECODER 0 + #define CONFIG_MP2_DECODER 0 + #define CONFIG_MP2FLOAT_DECODER 0 +-#define CONFIG_MP3_DECODER 0 ++#define CONFIG_MP3_DECODER 1 + #define CONFIG_MP3FLOAT_DECODER 0 + #define CONFIG_MP3ADU_DECODER 0 + #define CONFIG_MP3ADUFLOAT_DECODER 0 +@@ -1275,7 +1275,7 @@ + #define CONFIG_MM_DEMUXER 0 + #define CONFIG_MMF_DEMUXER 0 + #define CONFIG_MOV_DEMUXER 0 +-#define CONFIG_MP3_DEMUXER 0 ++#define CONFIG_MP3_DEMUXER 1 + #define CONFIG_MPC_DEMUXER 0 + #define CONFIG_MPC8_DEMUXER 0 + #define CONFIG_MPEGPS_DEMUXER 0 +@@ -2217,7 +2217,7 @@ + #define CONFIG_MJPEG_PARSER 0 + #define CONFIG_MLP_PARSER 0 + #define CONFIG_MPEG4VIDEO_PARSER 0 +-#define CONFIG_MPEGAUDIO_PARSER 0 ++#define CONFIG_MPEGAUDIO_PARSER 1 + #define CONFIG_MPEGVIDEO_PARSER 0 + #define CONFIG_OPUS_PARSER 1 + #define CONFIG_PNG_PARSER 0 +diff -up chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h.mp3 chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h +--- chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h.mp3 2017-10-18 09:05:31.000000000 -0400 ++++ chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h 2017-10-18 09:25:18.360676348 -0400 +@@ -1,7 +1,7 @@ + /* Automatically generated by configure - do not modify! */ + #ifndef FFMPEG_CONFIG_H + #define FFMPEG_CONFIG_H +-#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/jrummell/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --enable-neon --extra-cflags='-mfpu=neon' --enable-pic" ++#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/jrummell/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --enable-neon --extra-cflags='-mfpu=neon' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" + #define FFMPEG_LICENSE "LGPL version 2.1 or later" + #define CONFIG_THIS_YEAR 2017 + #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" +@@ -542,7 +542,7 @@ + #define CONFIG_FFPROBE 0 + #define CONFIG_FFSERVER 0 + #define CONFIG_FFMPEG 0 +-#define CONFIG_DCT 0 ++#define CONFIG_DCT 1 + #define CONFIG_DWT 0 + #define CONFIG_ERROR_RESILIENCE 0 + #define CONFIG_FAAN 1 +@@ -620,9 +620,9 @@ + #define CONFIG_LZF 0 + #define CONFIG_ME_CMP 0 + #define CONFIG_MPEG_ER 0 +-#define CONFIG_MPEGAUDIO 0 +-#define CONFIG_MPEGAUDIODSP 0 +-#define CONFIG_MPEGAUDIOHEADER 0 ++#define CONFIG_MPEGAUDIO 1 ++#define CONFIG_MPEGAUDIODSP 1 ++#define CONFIG_MPEGAUDIOHEADER 1 + #define CONFIG_MPEGVIDEO 0 + #define CONFIG_MPEGVIDEOENC 0 + #define CONFIG_MSS34DSP 0 +@@ -968,7 +968,7 @@ + #define CONFIG_MP1FLOAT_DECODER 0 + #define CONFIG_MP2_DECODER 0 + #define CONFIG_MP2FLOAT_DECODER 0 +-#define CONFIG_MP3_DECODER 0 ++#define CONFIG_MP3_DECODER 1 + #define CONFIG_MP3FLOAT_DECODER 0 + #define CONFIG_MP3ADU_DECODER 0 + #define CONFIG_MP3ADUFLOAT_DECODER 0 +@@ -1275,7 +1275,7 @@ + #define CONFIG_MM_DEMUXER 0 + #define CONFIG_MMF_DEMUXER 0 + #define CONFIG_MOV_DEMUXER 0 +-#define CONFIG_MP3_DEMUXER 0 ++#define CONFIG_MP3_DEMUXER 1 + #define CONFIG_MPC_DEMUXER 0 + #define CONFIG_MPC8_DEMUXER 0 + #define CONFIG_MPEGPS_DEMUXER 0 +@@ -2217,7 +2217,7 @@ + #define CONFIG_MJPEG_PARSER 0 + #define CONFIG_MLP_PARSER 0 + #define CONFIG_MPEG4VIDEO_PARSER 0 +-#define CONFIG_MPEGAUDIO_PARSER 0 ++#define CONFIG_MPEGAUDIO_PARSER 1 + #define CONFIG_MPEGVIDEO_PARSER 0 + #define CONFIG_OPUS_PARSER 1 + #define CONFIG_PNG_PARSER 0 +diff -up chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h.mp3 chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h +--- chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h.mp3 2017-10-18 09:05:31.000000000 -0400 ++++ chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h 2017-10-18 09:25:18.360676348 -0400 +@@ -1,7 +1,7 @@ + /* Automatically generated by configure - do not modify! */ + #ifndef FFMPEG_CONFIG_H + #define FFMPEG_CONFIG_H +-#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/chrome/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=i686 --extra-cflags='\"-m32\"' --extra-ldflags='\"-m32\"' --enable-yasm --enable-pic" ++#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/chrome/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=i686 --extra-cflags='\"-m32\"' --extra-ldflags='\"-m32\"' --enable-yasm --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" + #define FFMPEG_LICENSE "LGPL version 2.1 or later" + #define CONFIG_THIS_YEAR 2017 + #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" +@@ -542,7 +542,7 @@ + #define CONFIG_FFPROBE 0 + #define CONFIG_FFSERVER 0 + #define CONFIG_FFMPEG 0 +-#define CONFIG_DCT 0 ++#define CONFIG_DCT 1 + #define CONFIG_DWT 0 + #define CONFIG_ERROR_RESILIENCE 0 + #define CONFIG_FAAN 1 +@@ -620,9 +620,9 @@ + #define CONFIG_LZF 0 + #define CONFIG_ME_CMP 0 + #define CONFIG_MPEG_ER 0 +-#define CONFIG_MPEGAUDIO 0 +-#define CONFIG_MPEGAUDIODSP 0 +-#define CONFIG_MPEGAUDIOHEADER 0 ++#define CONFIG_MPEGAUDIO 1 ++#define CONFIG_MPEGAUDIODSP 1 ++#define CONFIG_MPEGAUDIOHEADER 1 + #define CONFIG_MPEGVIDEO 0 + #define CONFIG_MPEGVIDEOENC 0 + #define CONFIG_MSS34DSP 0 +@@ -968,7 +968,7 @@ + #define CONFIG_MP1FLOAT_DECODER 0 + #define CONFIG_MP2_DECODER 0 + #define CONFIG_MP2FLOAT_DECODER 0 +-#define CONFIG_MP3_DECODER 0 ++#define CONFIG_MP3_DECODER 1 + #define CONFIG_MP3FLOAT_DECODER 0 + #define CONFIG_MP3ADU_DECODER 0 + #define CONFIG_MP3ADUFLOAT_DECODER 0 +@@ -1275,7 +1275,7 @@ + #define CONFIG_MM_DEMUXER 0 + #define CONFIG_MMF_DEMUXER 0 + #define CONFIG_MOV_DEMUXER 0 +-#define CONFIG_MP3_DEMUXER 0 ++#define CONFIG_MP3_DEMUXER 1 + #define CONFIG_MPC_DEMUXER 0 + #define CONFIG_MPC8_DEMUXER 0 + #define CONFIG_MPEGPS_DEMUXER 0 +@@ -2217,7 +2217,7 @@ + #define CONFIG_MJPEG_PARSER 0 + #define CONFIG_MLP_PARSER 0 + #define CONFIG_MPEG4VIDEO_PARSER 0 +-#define CONFIG_MPEGAUDIO_PARSER 0 ++#define CONFIG_MPEGAUDIO_PARSER 1 + #define CONFIG_MPEGVIDEO_PARSER 0 + #define CONFIG_OPUS_PARSER 1 + #define CONFIG_PNG_PARSER 0 +diff -up chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h.mp3 chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h +--- chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h.mp3 2017-10-18 09:05:31.000000000 -0400 ++++ chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h 2017-10-18 09:25:18.361676329 -0400 +@@ -1,7 +1,7 @@ + /* Automatically generated by configure - do not modify! */ + #ifndef FFMPEG_CONFIG_H + #define FFMPEG_CONFIG_H +-#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/chrome/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-lto --enable-pic" ++#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/chrome/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-lto --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" + #define FFMPEG_LICENSE "LGPL version 2.1 or later" + #define CONFIG_THIS_YEAR 2017 + #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" +@@ -542,7 +542,7 @@ + #define CONFIG_FFPROBE 0 + #define CONFIG_FFSERVER 0 + #define CONFIG_FFMPEG 0 +-#define CONFIG_DCT 0 ++#define CONFIG_DCT 1 + #define CONFIG_DWT 0 + #define CONFIG_ERROR_RESILIENCE 0 + #define CONFIG_FAAN 1 +@@ -620,9 +620,9 @@ + #define CONFIG_LZF 0 + #define CONFIG_ME_CMP 0 + #define CONFIG_MPEG_ER 0 +-#define CONFIG_MPEGAUDIO 0 +-#define CONFIG_MPEGAUDIODSP 0 +-#define CONFIG_MPEGAUDIOHEADER 0 ++#define CONFIG_MPEGAUDIO 1 ++#define CONFIG_MPEGAUDIODSP 1 ++#define CONFIG_MPEGAUDIOHEADER 1 + #define CONFIG_MPEGVIDEO 0 + #define CONFIG_MPEGVIDEOENC 0 + #define CONFIG_MSS34DSP 0 +@@ -968,7 +968,7 @@ + #define CONFIG_MP1FLOAT_DECODER 0 + #define CONFIG_MP2_DECODER 0 + #define CONFIG_MP2FLOAT_DECODER 0 +-#define CONFIG_MP3_DECODER 0 ++#define CONFIG_MP3_DECODER 1 + #define CONFIG_MP3FLOAT_DECODER 0 + #define CONFIG_MP3ADU_DECODER 0 + #define CONFIG_MP3ADUFLOAT_DECODER 0 +@@ -1275,7 +1275,7 @@ + #define CONFIG_MM_DEMUXER 0 + #define CONFIG_MMF_DEMUXER 0 + #define CONFIG_MOV_DEMUXER 0 +-#define CONFIG_MP3_DEMUXER 0 ++#define CONFIG_MP3_DEMUXER 1 + #define CONFIG_MPC_DEMUXER 0 + #define CONFIG_MPC8_DEMUXER 0 + #define CONFIG_MPEGPS_DEMUXER 0 +@@ -2217,7 +2217,7 @@ + #define CONFIG_MJPEG_PARSER 0 + #define CONFIG_MLP_PARSER 0 + #define CONFIG_MPEG4VIDEO_PARSER 0 +-#define CONFIG_MPEGAUDIO_PARSER 0 ++#define CONFIG_MPEGAUDIO_PARSER 1 + #define CONFIG_MPEGVIDEO_PARSER 0 + #define CONFIG_OPUS_PARSER 1 + #define CONFIG_PNG_PARSER 0 +diff -up chromium-62.0.3202.62/third_party/ffmpeg/ffmpeg_generated.gni.mp3 chromium-62.0.3202.62/third_party/ffmpeg/ffmpeg_generated.gni +--- chromium-62.0.3202.62/third_party/ffmpeg/ffmpeg_generated.gni.mp3 2017-10-18 09:05:28.000000000 -0400 ++++ chromium-62.0.3202.62/third_party/ffmpeg/ffmpeg_generated.gni 2017-10-18 09:25:18.362676310 -0400 +@@ -182,17 +182,9 @@ if ((is_mac) || (is_win) || (use_linux_c + ] + } + +-if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mips64el" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { ++if ((current_cpu == "x64") || (is_android && current_cpu == "arm" && arm_use_neon) || (is_android && current_cpu == "arm64") || (is_android && current_cpu == "mips64el") || (is_android && current_cpu == "mipsel") || (is_android && current_cpu == "x86") || (is_win) || (use_linux_config && current_cpu == "arm" && arm_use_neon) || (use_linux_config && current_cpu == "arm" && arm_use_neon) || (use_linux_config && current_cpu == "arm") || (use_linux_config && current_cpu == "arm") || (use_linux_config && current_cpu == "arm64") || (use_linux_config && current_cpu == "mipsel") || (use_linux_config && current_cpu == "x64") || (use_linux_config && current_cpu == "x86")) { + ffmpeg_c_sources += [ +- "libavcodec/aac_ac3_parser.c", +- "libavcodec/aac_parser.c", +- "libavcodec/aacadtsdec.c", +- "libavcodec/aacps_float.c", +- "libavcodec/aacpsdsp_float.c", +- "libavcodec/aacsbr.c", +- "libavcodec/aactab.c", + "libavcodec/ac3tab.c", +- "libavcodec/autorename_libavcodec_aacdec.c", + "libavcodec/autorename_libavcodec_mpegaudiodsp.c", + "libavcodec/autorename_libavcodec_sbrdsp.c", + "libavcodec/cbrt_data.c", +@@ -210,7 +202,6 @@ if ((current_cpu == "x64" && ffmpeg_bran + "libavcodec/mpegaudiodsp_float.c", + "libavcodec/sinewin.c", + "libavcodec/sinewin_fixed.c", +- "libavformat/aacdec.c", + "libavformat/apetag.c", + "libavformat/img2.c", + "libavformat/mov.c", +@@ -219,6 +210,20 @@ if ((current_cpu == "x64" && ffmpeg_bran + ] + } + ++if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mips64el" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { ++ ffmpeg_c_sources += [ ++ "libavcodec/aac_ac3_parser.c", ++ "libavcodec/aac_parser.c", ++ "libavcodec/aacadtsdec.c", ++ "libavcodec/aacps_float.c", ++ "libavcodec/aacpsdsp_float.c", ++ "libavcodec/aacsbr.c", ++ "libavcodec/aactab.c", ++ "libavcodec/autorename_libavcodec_aacdec.c", ++ "libavformat/aacdec.c", ++ ] ++} ++ + if ((is_android && current_cpu == "x64") || (is_android && current_cpu == "x86") || (is_mac) || (is_win) || (use_linux_config && current_cpu == "x64") || (use_linux_config && current_cpu == "x86")) { + ffmpeg_c_sources += [ + "libavcodec/x86/autorename_libavcodec_x86_vorbisdsp_init.c", +@@ -322,15 +327,19 @@ if ((is_mac) || (is_win) || (use_linux_c + if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { + ffmpeg_c_sources += [ + "libavcodec/x86/aacpsdsp_init.c", ++ ] ++ ffmpeg_yasm_sources += [ ++ "libavcodec/x86/aacpsdsp.asm", ++ ] ++} ++ ++if ((current_cpu == "x64") || (is_android && current_cpu == "x86") || (use_linux_config && current_cpu == "x64") || (use_linux_config && current_cpu == "x86") || (is_win)) { ++ ffmpeg_c_sources += [ + "libavcodec/x86/dct_init.c", + "libavcodec/x86/mpegaudiodsp.c", + "libavcodec/x86/sbrdsp_init.c", + ] +-} +- +-if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { + ffmpeg_yasm_sources += [ +- "libavcodec/x86/aacpsdsp.asm", + "libavcodec/x86/dct32.asm", + "libavcodec/x86/imdct36.asm", + "libavcodec/x86/sbrdsp.asm", +diff -up chromium-62.0.3202.62/third_party/ffmpeg/libavcodec/sbrdsp.c.mp3 chromium-62.0.3202.62/third_party/ffmpeg/libavcodec/sbrdsp.c +--- chromium-62.0.3202.62/third_party/ffmpeg/libavcodec/sbrdsp.c.mp3 2017-10-18 09:05:30.000000000 -0400 ++++ chromium-62.0.3202.62/third_party/ffmpeg/libavcodec/sbrdsp.c 2017-10-18 09:25:18.362676310 -0400 +@@ -23,6 +23,7 @@ + #define USE_FIXED 0 + + #include "aac.h" ++#include "aacsbrdata.h" + #include "config.h" + #include "libavutil/attributes.h" + #include "libavutil/intfloat.h" +diff -up chromium-62.0.3202.62/third_party/webrtc/examples/objc/AppRTCMobile/ios/resources/mozart.mp3 chromium-62.0.3202.62/third_party/webrtc/examples/objc/AppRTCMobile/ios/resources/mozart +diff -up chromium-62.0.3202.62/tools/android/audio_focus_grabber/java/res/raw/ping.mp3 chromium-62.0.3202.62/tools/android/audio_focus_grabber/java/res/raw/ping diff --git a/chromium-62.0.3202.62-epel7-no-nullptr-assignment-on-StructPtr.patch b/chromium-62.0.3202.62-epel7-no-nullptr-assignment-on-StructPtr.patch new file mode 100644 index 0000000..7af702a --- /dev/null +++ b/chromium-62.0.3202.62-epel7-no-nullptr-assignment-on-StructPtr.patch @@ -0,0 +1,12 @@ +diff -up chromium-62.0.3202.62/third_party/WebKit/Source/platform/blob/BlobData.cpp.nonullptr chromium-62.0.3202.62/third_party/WebKit/Source/platform/blob/BlobData.cpp +--- chromium-62.0.3202.62/third_party/WebKit/Source/platform/blob/BlobData.cpp.nonullptr 2017-10-18 10:10:14.216353575 -0400 ++++ chromium-62.0.3202.62/third_party/WebKit/Source/platform/blob/BlobData.cpp 2017-10-18 10:10:23.657170980 -0400 +@@ -295,7 +295,7 @@ BlobDataHandle::BlobDataHandle(std::uniq + + size_t current_memory_population = 0; + Vector elements; +- const DataElementPtr null_element = nullptr; ++ const DataElementPtr null_element; + BlobBytesProvider* last_bytes_provider = nullptr; + RefPtr file_runner = Platform::Current()->FileTaskRunner(); + diff --git a/chromium-62.0.3202.62-gcc-nc.patch b/chromium-62.0.3202.62-gcc-nc.patch new file mode 100644 index 0000000..0a74d25 --- /dev/null +++ b/chromium-62.0.3202.62-gcc-nc.patch @@ -0,0 +1,11 @@ +diff -up chromium-62.0.3202.62/content/network/network_service_impl.cc.gcc-nc chromium-62.0.3202.62/content/network/network_service_impl.cc +--- chromium-62.0.3202.62/content/network/network_service_impl.cc.gcc-nc 2017-10-18 10:07:04.045041261 -0400 ++++ chromium-62.0.3202.62/content/network/network_service_impl.cc 2017-10-18 10:07:53.175088528 -0400 +@@ -90,6 +90,7 @@ NetworkServiceImpl::CreateNetworkContext + base::MakeUnique(this, std::move(request), + std::move(params), std::move(builder)); + *url_request_context = network_context->url_request_context(); ++ return std::unique_ptr(network_context.release()); + return network_context; + } + diff --git a/chromium-62.0.3202.62-gcc7.patch b/chromium-62.0.3202.62-gcc7.patch new file mode 100644 index 0000000..90d177d --- /dev/null +++ b/chromium-62.0.3202.62-gcc7.patch @@ -0,0 +1,11 @@ +diff -up chromium-62.0.3202.62/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 chromium-62.0.3202.62/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h +--- chromium-62.0.3202.62/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 2017-10-18 09:20:04.072765163 -0400 ++++ chromium-62.0.3202.62/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h 2017-10-18 09:21:40.156905187 -0400 +@@ -9,6 +9,7 @@ + #include "platform/graphics/WebGraphicsContext3DProviderWrapper.h" + #include "platform/wtf/ThreadSpecific.h" + ++#include + #include + + namespace blink { diff --git a/chromium-62.0.3202.62-kmaxskip-constexpr.patch b/chromium-62.0.3202.62-kmaxskip-constexpr.patch new file mode 100644 index 0000000..d4f8250 --- /dev/null +++ b/chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -0,0 +1,12 @@ +diff -up chromium-62.0.3202.62/cc/paint/paint_op_buffer.cc.kmaxskip chromium-62.0.3202.62/cc/paint/paint_op_buffer.cc +--- chromium-62.0.3202.62/cc/paint/paint_op_buffer.cc.kmaxskip 2017-10-18 10:00:28.503714392 -0400 ++++ chromium-62.0.3202.62/cc/paint/paint_op_buffer.cc 2017-10-18 10:00:43.153430212 -0400 +@@ -336,7 +336,7 @@ TYPES(M); + #undef TYPES + + const SkRect PaintOp::kUnsetRect = {SK_ScalarInfinity, 0, 0, 0}; +-const size_t PaintOp::kMaxSkip; ++constexpr size_t PaintOp::kMaxSkip; + + std::string PaintOpTypeToString(PaintOpType type) { + switch (type) { diff --git a/chromium-62.0.3202.62-rvalue-fix.patch b/chromium-62.0.3202.62-rvalue-fix.patch new file mode 100644 index 0000000..89197cd --- /dev/null +++ b/chromium-62.0.3202.62-rvalue-fix.patch @@ -0,0 +1,45 @@ +diff -up chromium-62.0.3202.62/chrome/browser/ui/webui/settings/on_startup_handler.cc.another-rvalue-fix chromium-62.0.3202.62/chrome/browser/ui/webui/settings/on_startup_handler.cc +--- chromium-62.0.3202.62/chrome/browser/ui/webui/settings/on_startup_handler.cc.another-rvalue-fix 2017-10-18 10:15:58.855675480 -0400 ++++ chromium-62.0.3202.62/chrome/browser/ui/webui/settings/on_startup_handler.cc 2017-10-18 10:16:28.925093301 -0400 +@@ -77,7 +77,7 @@ std::unique_ptr OnStartupHa + !extensions::ExtensionSystem::Get(profile_) + ->management_policy() + ->MustRemainEnabled(ntp_extension, nullptr)); +- return dict; ++ return std::move(dict); + } + + void OnStartupHandler::HandleGetNtpExtension(const base::ListValue* args) { +diff -up chromium-62.0.3202.62/ui/views/animation/ink_drop_host_view.cc.another-rvalue-fix chromium-62.0.3202.62/ui/views/animation/ink_drop_host_view.cc +--- chromium-62.0.3202.62/ui/views/animation/ink_drop_host_view.cc.another-rvalue-fix 2017-10-18 10:15:16.408497853 -0400 ++++ chromium-62.0.3202.62/ui/views/animation/ink_drop_host_view.cc 2017-10-18 10:15:43.793967075 -0400 +@@ -305,7 +305,7 @@ std::unique_ptr InkDropHost + base::MakeUnique(this, size()); + ink_drop->SetAutoHighlightMode( + views::InkDropImpl::AutoHighlightMode::HIDE_ON_RIPPLE); +- return ink_drop; ++ return std:move(ink_drop); + } + + std::unique_ptr +@@ -314,7 +314,7 @@ InkDropHostView::CreateDefaultFloodFillI + InkDropHostView::CreateDefaultInkDropImpl(); + ink_drop->SetAutoHighlightMode( + views::InkDropImpl::AutoHighlightMode::SHOW_ON_RIPPLE); +- return ink_drop; ++ return std:move(ink_drop); + } + + } // namespace views +diff -up chromium-62.0.3202.62/ui/views/controls/button/checkbox.cc.another-rvalue-fix chromium-62.0.3202.62/ui/views/controls/button/checkbox.cc +--- chromium-62.0.3202.62/ui/views/controls/button/checkbox.cc.another-rvalue-fix 2017-10-18 10:14:18.054627919 -0400 ++++ chromium-62.0.3202.62/ui/views/controls/button/checkbox.cc 2017-10-18 10:14:42.265159378 -0400 +@@ -198,7 +198,7 @@ std::unique_ptr Checkbox::Creat + std::unique_ptr ink_drop = CreateDefaultInkDropImpl(); + ink_drop->SetShowHighlightOnHover(false); + ink_drop->SetAutoHighlightMode(InkDropImpl::AutoHighlightMode::NONE); +- return ink_drop; ++ return std::move(ink_drop); + } + + std::unique_ptr Checkbox::CreateInkDropRipple() const { diff --git a/chromium-gcc5-r3.patch b/chromium-gcc5-r3.patch new file mode 100644 index 0000000..7605df6 --- /dev/null +++ b/chromium-gcc5-r3.patch @@ -0,0 +1,98 @@ +--- a/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h ++++ b/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h +@@ -63,7 +63,7 @@ class WTF_EXPORT ArrayBufferContents { + allocation_length_(0), + data_(data), + data_length_(0), +- kind_(AllocationKind::kNormal), ++ kind_(WTF::ArrayBufferContents::AllocationKind::kNormal), + deleter_(deleter) {} + DataHandle(void* allocation_base, + size_t allocation_length, +@@ -94,11 +94,11 @@ class WTF_EXPORT ArrayBufferContents { + reinterpret_cast(allocation_base_) + + allocation_length_); + switch (kind_) { +- case AllocationKind::kNormal: ++ case WTF::ArrayBufferContents::AllocationKind::kNormal: + DCHECK(deleter_); + deleter_(data_); + return; +- case AllocationKind::kReservation: ++ case WTF::ArrayBufferContents::AllocationKind::kReservation: + ReleaseReservedMemory(allocation_base_, allocation_length_); + return; + } +--- a/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.orig 2017-08-15 12:45:59.433532111 +0000 ++++ b/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2017-08-15 17:52:59.691328825 +0000 +@@ -10,7 +10,7 @@ + + #include "webrtc/modules/audio_processing/aec3/aec_state.h" + +-#include ++#include + #include + #include + +--- a/gpu/ipc/common/mailbox_struct_traits.h ++++ b/gpu/ipc/common/mailbox_struct_traits.h +@@ -15,7 +15,7 @@ namespace mojo { + template <> + struct StructTraits { + static base::span name(const gpu::Mailbox& mailbox) { +- return mailbox.name; ++ return base::make_span(mailbox.name); + } + static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out); + }; +--- a/services/viz/public/cpp/compositing/filter_operation_struct_traits.h ++++ b/services/viz/public/cpp/compositing/filter_operation_struct_traits.h +@@ -134,7 +134,7 @@ struct StructTraits { + static base::span matrix(const cc::FilterOperation& operation) { + if (operation.type() != cc::FilterOperation::COLOR_MATRIX) + return base::span(); +- return operation.matrix(); ++ return base::make_span(operation.matrix()); + } + + static base::span shape( +--- a/services/viz/public/cpp/compositing/quads_struct_traits.h ++++ b/services/viz/public/cpp/compositing/quads_struct_traits.h +@@ -284,7 +284,7 @@ + + static base::span vertex_opacity(const cc::DrawQuad& input) { + const cc::TextureDrawQuad* quad = cc::TextureDrawQuad::MaterialCast(&input); +- return quad->vertex_opacity; ++ return base::make_span(quad->vertex_opacity); + } + + static bool y_flipped(const cc::DrawQuad& input) { +--- a/third_party/WebKit/Source/platform/exported/WebCORS.cpp ++++ b/third_party/WebKit/Source/platform/exported/WebCORS.cpp +@@ -480,7 +480,7 @@ WebString AccessControlErrorString( + } + default: + NOTREACHED(); +- return ""; ++ return WebString(); + } + } + +@@ -512,7 +512,7 @@ WebString PreflightErrorString(const PreflightStatus status, + } + default: + NOTREACHED(); +- return ""; ++ return WebString(); + } + } + +@@ -533,7 +533,7 @@ WebString RedirectErrorString(const RedirectStatus status, + } + default: + NOTREACHED(); +- return ""; ++ return WebString(); + } + } + diff --git a/chromium-gn-bootstrap-r17.patch b/chromium-gn-bootstrap-r17.patch new file mode 100644 index 0000000..6cfd08d --- /dev/null +++ b/chromium-gn-bootstrap-r17.patch @@ -0,0 +1,68 @@ +--- a/tools/gn/bootstrap/bootstrap.py ++++ b/tools/gn/bootstrap/bootstrap.py +@@ -179,6 +179,7 @@ def build_gn_with_ninja_manually(tempdir, options): + + write_buildflag_header_manually(root_gen_dir, 'base/debug/debugging_flags.h', + { ++ 'ENABLE_LOCATION_SOURCE': 'false', + 'ENABLE_PROFILING': 'false', + 'CAN_UNWIND_WITH_FRAME_POINTERS': 'false' + }) +@@ -204,7 +205,7 @@ def build_gn_with_ninja_manually(tempdir, options): + + write_gn_ninja(os.path.join(tempdir, 'build.ninja'), + root_gen_dir, options) +- cmd = ['ninja', '-C', tempdir] ++ cmd = ['ninja', '-C', tempdir, '-w', 'dupbuild=err'] + if options.verbose: + cmd.append('-v') + +@@ -458,6 +459,7 @@ def write_gn_ninja(path, root_gen_dir, options): + 'base/metrics/bucket_ranges.cc', + 'base/metrics/field_trial.cc', + 'base/metrics/field_trial_param_associator.cc', ++ 'base/metrics/field_trial_params.cc', + 'base/metrics/histogram.cc', + 'base/metrics/histogram_base.cc', + 'base/metrics/histogram_functions.cc', +@@ -507,6 +509,7 @@ def write_gn_ninja(path, root_gen_dir, options): + 'base/task_scheduler/scheduler_lock_impl.cc', + 'base/task_scheduler/scheduler_single_thread_task_runner_manager.cc', + 'base/task_scheduler/scheduler_worker.cc', ++ 'base/task_scheduler/scheduler_worker_pool.cc', + 'base/task_scheduler/scheduler_worker_pool_impl.cc', + 'base/task_scheduler/scheduler_worker_pool_params.cc', + 'base/task_scheduler/scheduler_worker_stack.cc', +@@ -523,6 +526,7 @@ def write_gn_ninja(path, root_gen_dir, options): + 'base/third_party/icu/icu_utf.cc', + 'base/third_party/nspr/prtime.cc', + 'base/threading/post_task_and_reply_impl.cc', ++ 'base/threading/scoped_blocking_call.cc', + 'base/threading/sequence_local_storage_map.cc', + 'base/threading/sequenced_task_runner_handle.cc', + 'base/threading/sequenced_worker_pool.cc', +@@ -579,7 +583,6 @@ def write_gn_ninja(path, root_gen_dir, options): + 'base/unguessable_token.cc', + 'base/value_iterators.cc', + 'base/values.cc', +- 'base/value_iterators.cc', + 'base/vlog.cc', + ]) + +@@ -652,7 +655,6 @@ def write_gn_ninja(path, root_gen_dir, options): + static_libraries['base']['sources'].extend([ + 'base/memory/shared_memory_handle_posix.cc', + 'base/memory/shared_memory_posix.cc', +- 'base/memory/shared_memory_tracker.cc', + 'base/nix/xdg_util.cc', + 'base/process/internal_linux.cc', + 'base/process/memory_linux.cc', +@@ -827,7 +829,7 @@ def build_gn_with_gn(temp_gn, build_dir, options): + cmd = [temp_gn, 'gen', build_dir, '--args=%s' % gn_gen_args] + check_call(cmd) + +- cmd = ['ninja', '-C', build_dir] ++ cmd = ['ninja', '-C', build_dir, '-w', 'dupbuild=err'] + if options.verbose: + cmd.append('-v') + cmd.append('gn') diff --git a/chromium.spec b/chromium.spec index e970c15..f9ec65e 100644 --- a/chromium.spec +++ b/chromium.spec @@ -26,7 +26,7 @@ # Requires is trickier. %global __provides_exclude_from %{chromium_path}/.*\\.so|%{chromium_path}/lib/.*\\.so -%global privlibs libaccessibility|libanimation|libaura_extra|libaura|libbase_i18n|libbase|libbindings|libblink_android_mojo_bindings_shared|libblink_controller|libblink_core|libblink_modules|libblink_mojo_bindings_shared|libblink_offscreen_canvas_mojo_bindings_shared|libblink_platform|libblink_web|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcc_animation|libcc_base|libcc_blink|libcc_debug|libcc_ipc|libcc_paint|libcc|libcc_surfaces|libcdm_manager|libchromium_sqlite3|libclearkeycdm|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_gamepad|libdevices|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevice_vr_mojo_bindings|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libembedder|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents|libevents_x|libffmpeg|libfingerprint|libgcm|libgeolocation|libgeometry_skia|libgeometry|libgesture_detection|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_switches|libgfx_x11|libgin|libgles2_c_lib|libgles2_implementation|libgles2_utils|libGLESv2|libgl_init|libgl_in_process_context|libgl_wrapper|libgpu|libgtk2ui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc_mojom_shared|libipc_mojom|libipc|libjs|libkeyboard|libkeyboard_with_content|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libmanager|libmedia_blink|libmedia_gpu|libmedia_mojo_services|libmedia|libmessage_center|libmetrics_cpp|libmidi|libmojo_common_lib|libmojo_ime_lib|libmojo_public_system_cpp|libmojo_public_system|libmojo_system_impl|libnative_theme|libnet|libnet_with_v8|libonc|libplatform|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|librange|libresource_coordinator_cpp|libresource_coordinator_public_interfaces_internal_shared|libsandbox_services|libseccomp_bpf|libsensors|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom_blink|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_constants|libservice_manager_mojom_shared|libservice_manager_mojom|libservice|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_devtools|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libuser_manager|libuser_prefs|libv8_libbase|libv8_libplatform|libv8|libviews|libviz_common|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_swapchain|libVkLayer_threading|libVkLayer_unique_objects|libwebdata_common|libweb_dialogs|libwebview|libwidevinecdmadapter|libwidevinecdm|libwm_public|libwm|libwtf|libx11_events_platform|libx11_window +%global privlibs libEGL|libGLESv2|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_swapchain|libVkLayer_threading|libVkLayer_unique_objects|libaccessibility|libanimation|libaura|libaura_extra|libbase|libbase_i18n|libbindings|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core|libblink_modules|libblink_mojo_bindings_shared|libblink_offscreen_canvas_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcc|libcc_animation|libcc_base|libcc_blink|libcc_debug|libcc_ipc|libcc_paint|libcdm_manager|libchromium_sqlite3|libclearkeycdm|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_gamepad|libdevice_vr_mojo_bindings|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevices|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libembedder|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libfingerprint|libffmpeg|libgcm|libgeolocation|libgeometry|libgeometry_skia|libgesture_detection|libgfx|libgfx_ipc|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_switches|libgfx_x11|libgin|libgl_in_process_context|libgl_init|libgl_wrapper|libgles2_c_lib|libgles2_implementation|libgles2_utils|libgpu|libgtk3ui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc|libipc_mojom|libipc_mojom_shared|libjs|libkeyboard|libkeyboard_with_content|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libmanager|libmedia|libmedia_blink|libmedia_gpu|libmedia_mojo_services|libmessage_center|libmetrics_cpp|libmidi|libmirclient.9|libmojo_common_lib|libmojo_ime_lib|libmojo_public_system|libmojo_public_system_cpp|libmojo_system_impl|libnative_theme|libnet|libnet_with_v8|libonc|libplatform|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|librange|libresource_coordinator_cpp|libresource_coordinator_public_interfaces_internal_shared|libsandbox_services|libseccomp_bpf|libsensors|libservice|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom|libservice_manager_mojom_blink|libservice_manager_mojom_constants|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_shared|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libui_base|libui_base_ime|libui_base_x|libui_data_pack|libui_devtools|libui_touch_selection|libui_views_mus_lib|liburl|liburl_ipc|liburl_matcher|libuser_manager|libuser_prefs|libv8|libv8_libbase|libv8_libplatform|libviews|libviz_common|libviz_resource_format|libweb_dialogs|libwebdata_common|libwebview|libwidevinecdm.fedora|libwidevinecdmadapter|libwm|libwm_public|libwtf|libx11_events_platform|libx11_window %global __requires_exclude ^(%{privlibs})\\.so # Try to not use the Xvfb as it is slow.. @@ -76,8 +76,9 @@ BuildRequires: libicu-devel >= 5.4 # 2017-06-08. %global bundlelibxml 1 -# Chromium breaks on wayland, hidpi, and colors with gtk3 enabled. -%global gtk3 0 +# Chromium used to break on wayland, hidpi, and colors with gtk3 enabled. +# Hopefully it does not anymore. +%global gtk3 1 %if 0%{?rhel} == 7 %global bundleopus 1 @@ -110,14 +111,14 @@ BuildRequires: libicu-devel >= 5.4 %global default_client_secret miEreAep8nuvTdvLums6qyLK %global chromoting_client_id 449907151817-8vnlfih032ni8c4jjps9int9t86k546t.apps.googleusercontent.com -%global majorversion 61 +%global majorversion 62 %if %{freeworld} Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3163.100 +Version: %{majorversion}.0.3202.62 Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home @@ -171,9 +172,9 @@ Patch27: chromium-61.0.3163.79-setopaque.patch Patch31: chromium-56.0.2924.87-fpermissive.patch # Fix issue with compilation on gcc7 # Thanks to Ben Noordhuis -Patch33: chromium-61.0.3163.79-gcc7.patch +Patch33: chromium-62.0.3202.62-gcc7.patch # Enable mp3 support -Patch34: chromium-61.0.3163.79-enable-mp3.patch +Patch34: chromium-62.0.3202.62-enable-mp3.patch # Revert https://chromium.googlesource.com/chromium/src/+/b794998819088f76b4cf44c8db6940240c563cf4%5E%21/#F0 # https://bugs.chromium.org/p/chromium/issues/detail?id=712737 # https://bugzilla.redhat.com/show_bug.cgi?id=1446851 @@ -192,39 +193,29 @@ Patch43: chromium-60.0.3112.78-jpeg-nomangle.patch # Do not mangle zlib Patch45: chromium-60.0.3112.78-no-zlib-mangle.patch # Apply these changes to work around EPEL7 compiler issues -Patch46: chromium-61.0.3163.79-kmaxskip-constexpr.patch +Patch46: chromium-62.0.3202.62-kmaxskip-constexpr.patch Patch47: chromium-60.0.3112.90-vulkan-force-c99.patch -# https://chromium.googlesource.com/chromium/src/+/9c77470ff34bac937ceb765a27cee1703f0f2426 -Patch48: chromium-60.0.3112.101-camfix.patch # Fix mp3 for aarch64 Patch49: chromium-61.0.3163.79-fix-ffmpeg-aarch64.patch # Fix libavutil include pathing to find arch specific timer.h # For some reason, this only fails on aarch64. No idea why. Patch50: chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch -# Fix gn again -# https://chromium.googlesource.com/chromium/src.git/+/84d9cc2d5491706d638ac887f4e065a75f7cb87d%5E%21/#F0 -Patch51: chromium-61.0.3163.79-fix-gn-again.patch -# more gcc fixes -# https://chromium.googlesource.com/chromium/src.git/+/cbe6845263215e0f3981c2a4c7937dadb14bef0d%5E%21/#F0 -Patch52: chromium-61.0.3163.79-MOAR-GCC-FIXES.patch # from gentoo Patch53: chromium-61.0.3163.79-gcc-no-opt-safe-math.patch -Patch54: chromium-61.0.3163.79-gcc5-r1.patch -# Fix gtk2 build (patch from later release) -# Should be able to drop this in 62+ -Patch55: chromium-61.0.3163.79-gtk2fix.patch -# Fix atk compile -# https://chromium-review.googlesource.com/c/chromium/src/+/580927 -Patch56: chromium-61.0.3163.79-fix-atk-compile.patch # Only needed when glibc 2.26.90 or later is used Patch57: chromium-61.0.3163.79-aarch64-glibc-2.26.90.patch # More gcc fixes for epel -Patch58: chromium-61.0.3163.79-dde535-gcc-fix.patch -Patch59: chromium-61.0.3163.79-gcc-nc.patch +Patch58: chromium-62.0.3202.62-dde535-gcc-fix.patch +Patch59: chromium-62.0.3202.62-gcc-nc.patch # Epel compiler really does not like assigning nullptr to a StructPtr -Patch60: chromium-61.0.3163.79-epel7-no-nullptr-assignment-on-StructPtr.patch +Patch60: chromium-62.0.3202.62-epel7-no-nullptr-assignment-on-StructPtr.patch # Another gcc 4.8 goods.. -Patch61: chromium-61.0.3163.79-rvalue-fix.patch +Patch61: chromium-62.0.3202.62-rvalue-fix.patch +# From gentoo +Patch62: chromium-gcc5-r3.patch +Patch63: chromium-gn-bootstrap-r17.patch +# Fix _cplusplus conditional +Patch64: chromium-62.0.3202.62-correct-cplusplus-check.patch ### Chromium Tests Patches ### Patch100: chromium-46.0.2490.86-use_system_opus.patch @@ -677,17 +668,14 @@ udev. %patch60 -p1 -b .nonullptr %patch61 -p1 -b .another-rvalue-fix %endif -%patch48 -p1 -b .camfix %patch50 -p1 -b .pathfix -%patch51 -p1 -b .fixit -%patch52 -p1 -b .fixgccagain %patch53 -p1 -b .nogccoptmath -%patch54 -p1 -b .gcc5fix -%patch55 -p1 -b .gtk2fix -%patch56 -p1 -b .atkfix %if 0%{?fedora} >= 28 %patch57 -p1 -b .aarch64glibc %endif +%patch62 -p1 -b .gcc5-r3 +%patch63 -p1 -b .gn-boostrap-r17 +%patch64 -p1 -b .fix-cplusplus-conditional ### Chromium Tests Patches ### %patch100 -p1 -b .use_system_opus @@ -809,13 +797,12 @@ CHROMIUM_CORE_GN_DEFINES+=' system_libdir="lib64"' %endif CHROMIUM_CORE_GN_DEFINES+=' google_api_key="%{api_key}" google_default_client_id="%{default_client_id}" google_default_client_secret="%{default_client_secret}"' CHROMIUM_CORE_GN_DEFINES+=' is_clang=false use_sysroot=false use_gold=false fieldtrial_testing_like_official_build=true' -CHROMIUM_CORE_GN_DEFINES+=' enable_pepper_cdms=1' %if %{freeworld} CHROMIUM_CORE_GN_DEFINES+=' ffmpeg_branding="ChromeOS" proprietary_codecs=true' %else CHROMIUM_CORE_GN_DEFINES+=' ffmpeg_branding="Chromium" proprietary_codecs=false' %endif -CHROMIUM_CORE_GN_DEFINES+=' treat_warnings_as_errors=false use_custom_libcxx=false' +CHROMIUM_CORE_GN_DEFINES+=' treat_warnings_as_errors=false linux_use_bundled_binutils=false use_custom_libcxx=false' %ifarch aarch64 CHROMIUM_CORE_GN_DEFINES+=' target_cpu="arm64"' %endif @@ -859,40 +846,10 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'buildtools/third_party/libc++' \ 'buildtools/third_party/libc++abi' \ %endif - 'third_party/ffmpeg' \ - 'third_party/adobe' \ - 'third_party/flac' \ - 'third_party/googletest' \ - 'third_party/glslang-angle' \ - 'third_party/harfbuzz-ng' \ - 'third_party/icu' \ - 'base/third_party/libevent' \ - 'third_party/libdrm' \ - 'third_party/libjpeg_turbo' \ - 'third_party/libpng' \ - 'third_party/libsrtp' \ - 'third_party/libwebp' \ - 'third_party/libxml' \ - 'third_party/libxslt' \ -%if %{freeworld} - 'third_party/openh264' \ -%endif -%if 0%{?bundlere2} - 'third_party/re2' \ -%endif - 'third_party/snappy' \ - 'third_party/speech-dispatcher' \ - 'third_party/swiftshader' \ - 'third_party/swiftshader/third_party/subzero' \ - 'third_party/swiftshader/third_party/LLVM' \ - 'third_party/swiftshader/third_party/llvm-subzero' \ - 'third_party/usb_ids' \ - 'third_party/xdg-utils' \ - 'third_party/yasm' \ - 'third_party/zlib' \ 'base/third_party/dmg_fp' \ 'base/third_party/dynamic_annotations' \ 'base/third_party/icu' \ + 'base/third_party/libevent' \ 'base/third_party/nspr' \ 'base/third_party/superfasthash' \ 'base/third_party/symbolize' \ @@ -902,12 +859,10 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'breakpad/src/third_party/curl' \ 'chrome/third_party/mozilla_security_manager' \ 'courgette/third_party' \ - 'native_client_sdk/src/libraries/third_party/newlib-extras' \ - 'native_client/src/third_party/dlmalloc' \ - 'native_client/src/third_party/valgrind' \ 'net/third_party/mozilla_security_manager' \ 'net/third_party/nss' \ 'third_party/WebKit' \ + 'third_party/adobe' \ 'third_party/analytics' \ 'third_party/angle' \ 'third_party/angle/src/common/third_party/murmurhash' \ @@ -920,31 +875,38 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/brotli' \ 'third_party/cacheinvalidation' \ 'third_party/catapult' \ + 'third_party/catapult/third_party/polymer' \ + 'third_party/catapult/third_party/py_vulcanize' \ + 'third_party/catapult/third_party/py_vulcanize/third_party/rcssmin' \ + 'third_party/catapult/third_party/py_vulcanize/third_party/rjsmin' \ 'third_party/catapult/tracing/third_party/d3' \ 'third_party/catapult/tracing/third_party/gl-matrix' \ 'third_party/catapult/tracing/third_party/jszip' \ 'third_party/catapult/tracing/third_party/mannwhitneyu' \ 'third_party/catapult/tracing/third_party/oboe' \ - 'third_party/catapult/third_party/polymer' \ - 'third_party/catapult/third_party/py_vulcanize' \ - 'third_party/catapult/third_party/py_vulcanize/third_party/rcssmin' \ - 'third_party/catapult/third_party/py_vulcanize/third_party/rjsmin' \ 'third_party/ced' \ 'third_party/cld_2' \ 'third_party/cld_3' \ + 'third_party/crc32c' \ 'third_party/cros_system_api' \ 'third_party/devscripts' \ 'third_party/dom_distiller_js' \ 'third_party/expat' \ + 'third_party/ffmpeg' \ 'third_party/fips181' \ + 'third_party/flac' \ 'third_party/flatbuffers' \ 'third_party/flot' \ 'third_party/freetype' \ + 'third_party/glslang-angle' \ 'third_party/google_input_tools' \ 'third_party/google_input_tools/third_party/closure_library' \ 'third_party/google_input_tools/third_party/closure_library/third_party/closure' \ + 'third_party/googletest' \ + 'third_party/harfbuzz-ng' \ 'third_party/hunspell' \ 'third_party/iccjpeg' \ + 'third_party/icu' \ 'third_party/inspector_protocol' \ 'third_party/jinja2' \ 'third_party/jstemplate' \ @@ -952,27 +914,39 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/leveldatabase' \ 'third_party/libXNVCtrl' \ 'third_party/libaddressinput' \ + 'third_party/libdrm' \ 'third_party/libjingle' \ + 'third_party/libjpeg_turbo' \ 'third_party/libphonenumber' \ + 'third_party/libpng' \ 'third_party/libsecret' \ 'third_party/libsrtp' \ 'third_party/libudev' \ 'third_party/libusb' \ 'third_party/libvpx' \ 'third_party/libvpx/source/libvpx/third_party/x86inc' \ + 'third_party/libxml' \ 'third_party/libxml/chromium' \ + 'third_party/libxslt' \ 'third_party/libwebm' \ + 'third_party/libwebp' \ 'third_party/libyuv' \ %if 0%{?nacl} 'third_party/llvm-build' \ %endif 'third_party/lss' \ 'third_party/lzma_sdk' \ +%if 0 + 'third_party/markupsafe' \ +%endif 'third_party/mesa' \ 'third_party/modp_b64' \ 'third_party/mt19937ar' \ 'third_party/node' \ - 'third_party/node/node_modules/vulcanize/third_party/UglifyJS2' \ + 'third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2' \ +%if %{freeworld} + 'third_party/openh264' \ +%endif 'third_party/openmax_dl' \ 'third_party/opus' \ 'third_party/ots' \ @@ -982,36 +956,51 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/pdfium/third_party/bigint' \ 'third_party/pdfium/third_party/build' \ 'third_party/pdfium/third_party/freetype' \ - 'third_party/pdfium/third_party/lcms2-2.6' \ + 'third_party/pdfium/third_party/lcms' \ 'third_party/pdfium/third_party/libopenjpeg20' \ 'third_party/pdfium/third_party/libpng16' \ 'third_party/pdfium/third_party/libtiff' \ + 'third_party/ply' \ 'third_party/polymer' \ 'third_party/protobuf' \ 'third_party/protobuf/third_party/six' \ - 'third_party/ply' \ 'third_party/qcms' \ 'third_party/qunit' \ +%if 0%{?bundlere2} + 'third_party/re2' \ +%endif 'third_party/sfntly' \ 'third_party/sinonjs' \ 'third_party/skia' \ + 'third_party/skia/third_party/gif' \ 'third_party/skia/third_party/vulkan' \ 'third_party/smhasher' \ + 'third_party/snappy' \ + 'third_party/speech-dispatcher' \ 'third_party/spirv-headers' \ 'third_party/spirv-tools-angle' \ 'third_party/sqlite' \ + 'third_party/swiftshader' \ + 'third_party/swiftshader/third_party/subzero' \ + 'third_party/swiftshader/third_party/LLVM' \ + 'third_party/swiftshader/third_party/llvm-subzero' \ 'third_party/tcmalloc' \ + 'third_party/usb_ids' \ 'third_party/usrsctp' \ + 'third_party/vulkan' \ 'third_party/vulkan-validation-layers' \ 'third_party/web-animations-js' \ 'third_party/webdriver' \ 'third_party/webrtc' \ 'third_party/widevine' \ 'third_party/woff2' \ + 'third_party/xdg-utils' \ + 'third_party/yasm' \ + 'third_party/zlib' \ 'third_party/zlib/google' \ 'url/third_party/mozilla' \ - 'v8/third_party/inspector_protocol' \ 'v8/src/third_party/valgrind' \ + 'v8/third_party/inspector_protocol' \ --do-remove # Look, I don't know. This package is spit and chewing gum. Sorry. @@ -1913,6 +1902,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Wed Oct 18 2017 Tom Callaway 62.0.3202.62-1 +- update to 62.0.3202.62 + * Fri Sep 22 2017 Tom Callaway 61.0.3163.100-1 - update to 61.0.3163.100 - lots of epel7 specific fixes diff --git a/sources b/sources index ae3c95c..64106c5 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 -SHA512 (policy_templates.zip) = 39e9ccbeda8499acb81e5455e34ece44e72f065d139e718b38803c907b4ecca9f179f2eb84b10953a307087ed9586a5de30bbfb933eb9f6b77a682ea82164be7 -SHA512 (chromium-61.0.3163.100-clean.tar.xz) = 985a2d86f43e59252343fa3a5ee56b0462259ef67afd4c43fd9ee3abd9eec34292b7437d416513cccc29a9de9a10879d91ccb5328e7702a1888b5880eb27c809 +SHA512 (policy_templates.zip) = a7e07808a5a053e9e32fe879630ac227369f46e730b6155a570ae096e65e802297a6e635d325886720e55d06ea68ab598bc6b361ede84e61e5e0e577fd4c38fb +SHA512 (chromium-62.0.3202.62-clean.tar.xz) = 5151cdd4cc9f5735984ea16615311dbec759d62496b619fa5a04e06e08821ccba7f11e2d1835e2020edcb783150cc7f1880e62084ae9f69057fabea0459e147b From 7abe45ef20659a9277d79093f4e1d8d96194f779 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 24 Oct 2017 22:25:28 -0400 Subject: [PATCH 0147/1449] do not attempt to use std=c++14 on epel7 --- chromium-62.0.3202.62-epel7-noc++14.patch | 12 ++++++++++++ chromium.spec | 11 ++++++++++- 2 files changed, 22 insertions(+), 1 deletion(-) create mode 100644 chromium-62.0.3202.62-epel7-noc++14.patch diff --git a/chromium-62.0.3202.62-epel7-noc++14.patch b/chromium-62.0.3202.62-epel7-noc++14.patch new file mode 100644 index 0000000..57d24b0 --- /dev/null +++ b/chromium-62.0.3202.62-epel7-noc++14.patch @@ -0,0 +1,12 @@ +diff -up chromium-62.0.3202.62/tools/gn/bootstrap/bootstrap.py.epel7-noc++14 chromium-62.0.3202.62/tools/gn/bootstrap/bootstrap.py +--- chromium-62.0.3202.62/tools/gn/bootstrap/bootstrap.py.epel7-noc++14 2017-10-24 22:20:25.881183458 -0400 ++++ chromium-62.0.3202.62/tools/gn/bootstrap/bootstrap.py 2017-10-24 22:20:38.395943374 -0400 +@@ -349,7 +349,7 @@ def write_gn_ninja(path, root_gen_dir, o + '-pipe', + '-fno-exceptions' + ]) +- cflags_cc.extend(['-std=c++14', '-Wno-c++11-narrowing']) ++ cflags_cc.extend(['-Wno-c++11-narrowing']) + if is_aix: + cflags.extend(['-maix64']) + ldflags.extend([ '-maix64 -Wl,-bbigtoc' ]) diff --git a/chromium.spec b/chromium.spec index f9ec65e..b5aec69 100644 --- a/chromium.spec +++ b/chromium.spec @@ -119,7 +119,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3202.62 -Release: 1%{?dist} +Release: 1%{?dist}.1 Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -216,6 +216,8 @@ Patch62: chromium-gcc5-r3.patch Patch63: chromium-gn-bootstrap-r17.patch # Fix _cplusplus conditional Patch64: chromium-62.0.3202.62-correct-cplusplus-check.patch +# epel7 does not know about c++14 +Patch65: chromium-62.0.3202.62-epel7-noc++14.patch ### Chromium Tests Patches ### Patch100: chromium-46.0.2490.86-use_system_opus.patch @@ -667,6 +669,7 @@ udev. %patch59 -p1 -b .gcc-nc %patch60 -p1 -b .nonullptr %patch61 -p1 -b .another-rvalue-fix +%patch65 -p1 -b .epel7-noc++14 %endif %patch50 -p1 -b .pathfix %patch53 -p1 -b .nogccoptmath @@ -806,6 +809,9 @@ CHROMIUM_CORE_GN_DEFINES+=' treat_warnings_as_errors=false linux_use_bundled_bin %ifarch aarch64 CHROMIUM_CORE_GN_DEFINES+=' target_cpu="arm64"' %endif +%if 0%{?rhel} == 7 +CHROMIUM_CORE_GN_DEFINES+=' use_cxx11=true' +%endif export CHROMIUM_CORE_GN_DEFINES CHROMIUM_BROWSER_GN_DEFINES="" @@ -1902,6 +1908,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Tue Oct 24 2017 Tom Callaway 62.0.3202.62-1.1 +- do not attempt std=c++14 on epel7 + * Wed Oct 18 2017 Tom Callaway 62.0.3202.62-1 - update to 62.0.3202.62 From 2abf30d2cca743fd4e3e0ed01d4b9df315aad65d Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 25 Oct 2017 10:30:34 +0200 Subject: [PATCH 0148/1449] Fix the policy templates handling Basically revert my previous commits as the policy templates are generated during the build. The only thing that we were copying out from the tarballs was the policy templates documentation, but that one is generated as well so use that one and remove the policy_templates zip file from sources --- chromium-latest.py | 30 ------------------------------ chromium.spec | 6 +----- sources | 1 - 3 files changed, 1 insertion(+), 36 deletions(-) diff --git a/chromium-latest.py b/chromium-latest.py index 2efe44b..c77899d 100755 --- a/chromium-latest.py +++ b/chromium-latest.py @@ -209,33 +209,6 @@ def download_chrome_latest_rpm(arch): remove_file_if_exists (chrome_rpm) sys.exit(1) -def remove_and_download_latest_policy_templates(version_string): - - policy_file = 'policy_templates.zip' - if version_string != 'stable': - if version_string == 'unstable': - policy_file = "dev_" + policy_file - else: - policy_file = version_string + "_" + policy_file - - path = 'https://dl.google.com/chrome/policy/%s' % policy_file - remove_file_if_exists(policy_file) - - # Let's make sure we haven't already downloaded it. - if os.path.isfile("./%s" % policy_file): - print "%s already exists!" % policy_file - else: - print "Downloading %s" % path - # Perhaps look at using python-progressbar at some point? - info=urllib.urlretrieve(path, policy_file, reporthook=dlProgress)[1] - urllib.urlcleanup() - print "" - if (info["Content-Type"] != "application/octet-stream"): - print 'Policy templates are not on servers.' % version_string - remove_file_if_exists (policy_file) - sys.exit(1) - - # This is where the magic happens if __name__ == '__main__': @@ -321,9 +294,6 @@ if __name__ == '__main__': download_version(chromium_version) - # Always download the newest policy templates - remove_and_download_latest_policy_templates(version_string) - # Lets make sure we haven't unpacked it already latest_dir = "%s/chromium-%s" % (chromium_root_dir, chromium_version) if (args.clean and os.path.isdir(latest_dir)): diff --git a/chromium.spec b/chromium.spec index f9ec65e..53569ec 100644 --- a/chromium.spec +++ b/chromium.spec @@ -247,7 +247,6 @@ Source7: get_free_ffmpeg_source_files.py Source8: get_linux_tests_names.py # GNOME stuff Source9: chromium-browser.xml -Source10: https://dl.google.com/dl/edgedl/chrome/policy/policy_templates.zip Source11: chrome-remote-desktop@.service Source13: master_preferences @@ -617,7 +616,6 @@ without support for alsa, cups, dbus, gconf, gio, kerberos, pulseaudio, or udev. %prep -%setup -q -T -c -n %{name}-policies -a 10 %setup -q -T -c -n depot_tools -a 2 %if 0%{tests} %setup -q -n chromium-%{version} -b 1 @@ -1317,10 +1315,8 @@ sed -i 's|@@CRD_PATH@@|%{crd_path}|g' %{buildroot}%{_unitdir}/chrome-remote-desk # Add directories for policy management mkdir -p %{buildroot}%{_sysconfdir}/chromium/policies/managed mkdir -p %{buildroot}%{_sysconfdir}/chromium/policies/recommended -cp -a ../%{name}-policies/common/html/en-US/*.html . -# linux json files no longer in .zip file -#cp -a ../%{name}-policies/linux/examples/*.json . +cp -a out/Release/gen/chrome/app/policy/common/html/en-US/*.html . cp -a out/Release/gen/chrome/app/policy/linux/examples/chrome.json . mkdir -p %{buildroot}%{_datadir}/icons/hicolor/256x256/apps diff --git a/sources b/sources index 64106c5..9d1d29d 100644 --- a/sources +++ b/sources @@ -1,3 +1,2 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 -SHA512 (policy_templates.zip) = a7e07808a5a053e9e32fe879630ac227369f46e730b6155a570ae096e65e802297a6e635d325886720e55d06ea68ab598bc6b361ede84e61e5e0e577fd4c38fb SHA512 (chromium-62.0.3202.62-clean.tar.xz) = 5151cdd4cc9f5735984ea16615311dbec759d62496b619fa5a04e06e08821ccba7f11e2d1835e2020edcb783150cc7f1880e62084ae9f69057fabea0459e147b From d02ac4e7be3c27a112f917f3bb3348410dea0862 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 25 Oct 2017 10:30:34 +0200 Subject: [PATCH 0149/1449] Fix the policy templates handling Basically revert my previous commits as the policy templates are generated during the build. The only thing that we were copying out from the tarballs was the policy templates documentation, but that one is generated as well so use that one and remove the policy_templates zip file from sources --- chromium-latest.py | 30 ------------------------------ chromium.spec | 6 +----- sources | 1 - 3 files changed, 1 insertion(+), 36 deletions(-) diff --git a/chromium-latest.py b/chromium-latest.py index 2efe44b..c77899d 100755 --- a/chromium-latest.py +++ b/chromium-latest.py @@ -209,33 +209,6 @@ def download_chrome_latest_rpm(arch): remove_file_if_exists (chrome_rpm) sys.exit(1) -def remove_and_download_latest_policy_templates(version_string): - - policy_file = 'policy_templates.zip' - if version_string != 'stable': - if version_string == 'unstable': - policy_file = "dev_" + policy_file - else: - policy_file = version_string + "_" + policy_file - - path = 'https://dl.google.com/chrome/policy/%s' % policy_file - remove_file_if_exists(policy_file) - - # Let's make sure we haven't already downloaded it. - if os.path.isfile("./%s" % policy_file): - print "%s already exists!" % policy_file - else: - print "Downloading %s" % path - # Perhaps look at using python-progressbar at some point? - info=urllib.urlretrieve(path, policy_file, reporthook=dlProgress)[1] - urllib.urlcleanup() - print "" - if (info["Content-Type"] != "application/octet-stream"): - print 'Policy templates are not on servers.' % version_string - remove_file_if_exists (policy_file) - sys.exit(1) - - # This is where the magic happens if __name__ == '__main__': @@ -321,9 +294,6 @@ if __name__ == '__main__': download_version(chromium_version) - # Always download the newest policy templates - remove_and_download_latest_policy_templates(version_string) - # Lets make sure we haven't unpacked it already latest_dir = "%s/chromium-%s" % (chromium_root_dir, chromium_version) if (args.clean and os.path.isdir(latest_dir)): diff --git a/chromium.spec b/chromium.spec index f9ec65e..53569ec 100644 --- a/chromium.spec +++ b/chromium.spec @@ -247,7 +247,6 @@ Source7: get_free_ffmpeg_source_files.py Source8: get_linux_tests_names.py # GNOME stuff Source9: chromium-browser.xml -Source10: https://dl.google.com/dl/edgedl/chrome/policy/policy_templates.zip Source11: chrome-remote-desktop@.service Source13: master_preferences @@ -617,7 +616,6 @@ without support for alsa, cups, dbus, gconf, gio, kerberos, pulseaudio, or udev. %prep -%setup -q -T -c -n %{name}-policies -a 10 %setup -q -T -c -n depot_tools -a 2 %if 0%{tests} %setup -q -n chromium-%{version} -b 1 @@ -1317,10 +1315,8 @@ sed -i 's|@@CRD_PATH@@|%{crd_path}|g' %{buildroot}%{_unitdir}/chrome-remote-desk # Add directories for policy management mkdir -p %{buildroot}%{_sysconfdir}/chromium/policies/managed mkdir -p %{buildroot}%{_sysconfdir}/chromium/policies/recommended -cp -a ../%{name}-policies/common/html/en-US/*.html . -# linux json files no longer in .zip file -#cp -a ../%{name}-policies/linux/examples/*.json . +cp -a out/Release/gen/chrome/app/policy/common/html/en-US/*.html . cp -a out/Release/gen/chrome/app/policy/linux/examples/chrome.json . mkdir -p %{buildroot}%{_datadir}/icons/hicolor/256x256/apps diff --git a/sources b/sources index 64106c5..9d1d29d 100644 --- a/sources +++ b/sources @@ -1,3 +1,2 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 -SHA512 (policy_templates.zip) = a7e07808a5a053e9e32fe879630ac227369f46e730b6155a570ae096e65e802297a6e635d325886720e55d06ea68ab598bc6b361ede84e61e5e0e577fd4c38fb SHA512 (chromium-62.0.3202.62-clean.tar.xz) = 5151cdd4cc9f5735984ea16615311dbec759d62496b619fa5a04e06e08821ccba7f11e2d1835e2020edcb783150cc7f1880e62084ae9f69057fabea0459e147b From d8f6aaaf5dc74a2e3cd63a06629fb5232f73d861 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 25 Oct 2017 10:30:34 +0200 Subject: [PATCH 0150/1449] Fix the policy templates handling Basically revert my previous commits as the policy templates are generated during the build. The only thing that we were copying out from the tarballs was the policy templates documentation, but that one is generated as well so use that one and remove the policy_templates zip file from sources --- chromium-latest.py | 30 ------------------------------ chromium.spec | 6 +----- sources | 1 - 3 files changed, 1 insertion(+), 36 deletions(-) diff --git a/chromium-latest.py b/chromium-latest.py index 2efe44b..c77899d 100755 --- a/chromium-latest.py +++ b/chromium-latest.py @@ -209,33 +209,6 @@ def download_chrome_latest_rpm(arch): remove_file_if_exists (chrome_rpm) sys.exit(1) -def remove_and_download_latest_policy_templates(version_string): - - policy_file = 'policy_templates.zip' - if version_string != 'stable': - if version_string == 'unstable': - policy_file = "dev_" + policy_file - else: - policy_file = version_string + "_" + policy_file - - path = 'https://dl.google.com/chrome/policy/%s' % policy_file - remove_file_if_exists(policy_file) - - # Let's make sure we haven't already downloaded it. - if os.path.isfile("./%s" % policy_file): - print "%s already exists!" % policy_file - else: - print "Downloading %s" % path - # Perhaps look at using python-progressbar at some point? - info=urllib.urlretrieve(path, policy_file, reporthook=dlProgress)[1] - urllib.urlcleanup() - print "" - if (info["Content-Type"] != "application/octet-stream"): - print 'Policy templates are not on servers.' % version_string - remove_file_if_exists (policy_file) - sys.exit(1) - - # This is where the magic happens if __name__ == '__main__': @@ -321,9 +294,6 @@ if __name__ == '__main__': download_version(chromium_version) - # Always download the newest policy templates - remove_and_download_latest_policy_templates(version_string) - # Lets make sure we haven't unpacked it already latest_dir = "%s/chromium-%s" % (chromium_root_dir, chromium_version) if (args.clean and os.path.isdir(latest_dir)): diff --git a/chromium.spec b/chromium.spec index b5aec69..ac7a224 100644 --- a/chromium.spec +++ b/chromium.spec @@ -249,7 +249,6 @@ Source7: get_free_ffmpeg_source_files.py Source8: get_linux_tests_names.py # GNOME stuff Source9: chromium-browser.xml -Source10: https://dl.google.com/dl/edgedl/chrome/policy/policy_templates.zip Source11: chrome-remote-desktop@.service Source13: master_preferences @@ -619,7 +618,6 @@ without support for alsa, cups, dbus, gconf, gio, kerberos, pulseaudio, or udev. %prep -%setup -q -T -c -n %{name}-policies -a 10 %setup -q -T -c -n depot_tools -a 2 %if 0%{tests} %setup -q -n chromium-%{version} -b 1 @@ -1323,10 +1321,8 @@ sed -i 's|@@CRD_PATH@@|%{crd_path}|g' %{buildroot}%{_unitdir}/chrome-remote-desk # Add directories for policy management mkdir -p %{buildroot}%{_sysconfdir}/chromium/policies/managed mkdir -p %{buildroot}%{_sysconfdir}/chromium/policies/recommended -cp -a ../%{name}-policies/common/html/en-US/*.html . -# linux json files no longer in .zip file -#cp -a ../%{name}-policies/linux/examples/*.json . +cp -a out/Release/gen/chrome/app/policy/common/html/en-US/*.html . cp -a out/Release/gen/chrome/app/policy/linux/examples/chrome.json . mkdir -p %{buildroot}%{_datadir}/icons/hicolor/256x256/apps diff --git a/sources b/sources index 64106c5..9d1d29d 100644 --- a/sources +++ b/sources @@ -1,3 +1,2 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 -SHA512 (policy_templates.zip) = a7e07808a5a053e9e32fe879630ac227369f46e730b6155a570ae096e65e802297a6e635d325886720e55d06ea68ab598bc6b361ede84e61e5e0e577fd4c38fb SHA512 (chromium-62.0.3202.62-clean.tar.xz) = 5151cdd4cc9f5735984ea16615311dbec759d62496b619fa5a04e06e08821ccba7f11e2d1835e2020edcb783150cc7f1880e62084ae9f69057fabea0459e147b From 530c35bcba6b80615c9f2c82fcafb9f0d50ced14 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 25 Oct 2017 08:28:07 -0400 Subject: [PATCH 0151/1449] instead use std=c++11 on epel7 --- chromium-62.0.3202.62-epel7-noc++14.patch | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium-62.0.3202.62-epel7-noc++14.patch b/chromium-62.0.3202.62-epel7-noc++14.patch index 57d24b0..6ed714a 100644 --- a/chromium-62.0.3202.62-epel7-noc++14.patch +++ b/chromium-62.0.3202.62-epel7-noc++14.patch @@ -6,7 +6,7 @@ diff -up chromium-62.0.3202.62/tools/gn/bootstrap/bootstrap.py.epel7-noc++14 chr '-fno-exceptions' ]) - cflags_cc.extend(['-std=c++14', '-Wno-c++11-narrowing']) -+ cflags_cc.extend(['-Wno-c++11-narrowing']) ++ cflags_cc.extend(['-std=c++11', '-Wno-c++11-narrowing']) if is_aix: cflags.extend(['-maix64']) ldflags.extend([ '-maix64 -Wl,-bbigtoc' ]) From f6767a1977aff985b5b24eaee915f052108a98f3 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 25 Oct 2017 08:59:45 -0400 Subject: [PATCH 0152/1449] fix decay_t usage for gcc 4.8/c++11 --- ...-62.0.3202.62-epel7-c++11-decay-type.patch | 160 ++++++++++++++++++ chromium.spec | 2 + 2 files changed, 162 insertions(+) create mode 100644 chromium-62.0.3202.62-epel7-c++11-decay-type.patch diff --git a/chromium-62.0.3202.62-epel7-c++11-decay-type.patch b/chromium-62.0.3202.62-epel7-c++11-decay-type.patch new file mode 100644 index 0000000..af0c5a7 --- /dev/null +++ b/chromium-62.0.3202.62-epel7-c++11-decay-type.patch @@ -0,0 +1,160 @@ +diff -up chromium-62.0.3202.62/base/bind_helpers.h.epel7-c++11 chromium-62.0.3202.62/base/bind_helpers.h +--- chromium-62.0.3202.62/base/bind_helpers.h.epel7-c++11 2017-10-25 08:50:15.692276363 -0400 ++++ chromium-62.0.3202.62/base/bind_helpers.h 2017-10-25 08:50:39.977611740 -0400 +@@ -282,7 +282,7 @@ class PassedWrapper { + }; + + template +-using Unwrapper = BindUnwrapTraits>; ++using Unwrapper = BindUnwrapTraits::type>; + + template + auto Unwrap(T&& o) -> decltype(Unwrapper::Unwrap(std::forward(o))) { +diff -up chromium-62.0.3202.62/base/bind.h.epel7-c++11 chromium-62.0.3202.62/base/bind.h +--- chromium-62.0.3202.62/base/bind.h.epel7-c++11 2017-10-25 08:55:22.603877014 -0400 ++++ chromium-62.0.3202.62/base/bind.h 2017-10-25 08:56:41.636714097 -0400 +@@ -53,7 +53,7 @@ struct AssertConstructible { + // reference with repeating callbacks--is used instead of base::Passed(). + static_assert( + param_is_forwardable || +- !std::is_constructible&&>::value, ++ !std::is_constructible::type&&>::value, + "Bound argument |i| is move-only but will be forwarded by copy. " + "Ensure |Arg| is bound using base::Passed(), not std::move()."); + static_assert( +@@ -64,7 +64,7 @@ struct AssertConstructible { + static constexpr bool arg_is_storable = + std::is_constructible::value; + static_assert(arg_is_storable || +- !std::is_constructible&&>::value, ++ !std::is_constructible::type&&>::value, + "Bound argument |i| is move-only but will be bound by copy. " + "Ensure |Arg| is mutable and bound using std::move()."); + static_assert(arg_is_storable, +@@ -88,7 +88,7 @@ struct AssertBindArgsValidity, + TypeList, + TypeList> +- : AssertConstructible, Unwrapped, Params>... { ++ : AssertConstructible::type, Unwrapped, Params>... { + static constexpr bool ok = true; + }; + +@@ -98,14 +98,14 @@ struct TransformToUnwrappedTypeImpl; + + template + struct TransformToUnwrappedTypeImpl { +- using StoredType = std::decay_t; ++ using StoredType = typename std::decay::type; + using ForwardType = StoredType&&; + using Unwrapped = decltype(Unwrap(std::declval())); + }; + + template + struct TransformToUnwrappedTypeImpl { +- using StoredType = std::decay_t; ++ using StoredType = typename std::decay::type; + using ForwardType = const StoredType&; + using Unwrapped = decltype(Unwrap(std::declval())); + }; +@@ -153,7 +153,7 @@ using MakeUnwrappedTypeList = + template + inline OnceCallback> + BindOnce(Functor&& functor, Args&&... args) { +- static_assert(!internal::IsOnceCallback>() || ++ static_assert(!internal::IsOnceCallback::type>() || + (std::is_rvalue_reference() && + !std::is_const>()), + "BindOnce requires non-const rvalue for OnceCallback binding." +@@ -197,7 +197,7 @@ template > + BindRepeating(Functor&& functor, Args&&... args) { + static_assert( +- !internal::IsOnceCallback>(), ++ !internal::IsOnceCallback::type>(), + "BindRepeating cannot bind OnceCallback. Use BindOnce with std::move()."); + + // This block checks if each |args| matches to the corresponding params of the +diff -up chromium-62.0.3202.62/base/bind_internal.h.epel7-c++11 chromium-62.0.3202.62/base/bind_internal.h +--- chromium-62.0.3202.62/base/bind_internal.h.epel7-c++11 2017-10-25 08:52:20.018873878 -0400 ++++ chromium-62.0.3202.62/base/bind_internal.h 2017-10-25 08:55:07.779282724 -0400 +@@ -256,7 +256,7 @@ struct FunctorTraits +-using MakeFunctorTraits = FunctorTraits>; ++using MakeFunctorTraits = FunctorTraits::type>; + + // InvokeHelper<> + // +@@ -341,7 +341,7 @@ struct Invoker::is_method; + +- using DecayedArgsTuple = std::decay_t; ++ using DecayedArgsTuple = typename std::decay::type; + static constexpr bool is_weak_call = + IsWeakMethod...>(); +@@ -479,33 +479,33 @@ struct MakeBindStateTypeImpl; + + template + struct MakeBindStateTypeImpl { +- static_assert(!HasRefCountedTypeAsRawPtr...>::value, ++ static_assert(!HasRefCountedTypeAsRawPtr::type...>::value, + "A parameter is a refcounted type and needs scoped_refptr."); +- using Type = BindState, std::decay_t...>; ++ using Type = BindState::type, typename std::decay::type...>; + }; + + template + struct MakeBindStateTypeImpl { +- using Type = BindState>; ++ using Type = BindState::type>; + }; + + template + struct MakeBindStateTypeImpl { + static_assert(!std::is_array>::value, + "First bound argument to a method cannot be an array."); +- static_assert(!HasRefCountedTypeAsRawPtr...>::value, ++ static_assert(!HasRefCountedTypeAsRawPtr::type...>::value, + "A parameter is a refcounted type and needs scoped_refptr."); + + private: +- using DecayedReceiver = std::decay_t; ++ using DecayedReceiver = typename std::decay::type; + + public: + using Type = BindState< +- std::decay_t, ++ typename std::decay::type, + std::conditional_t::value, + scoped_refptr>, + DecayedReceiver>, +- std::decay_t...>; ++ typename std::decay::type...>; + }; + + template +diff -up chromium-62.0.3202.62/base/containers/span.h.epel7-c++11 chromium-62.0.3202.62/base/containers/span.h +--- chromium-62.0.3202.62/base/containers/span.h.epel7-c++11 2017-10-25 08:51:25.260372472 -0400 ++++ chromium-62.0.3202.62/base/containers/span.h 2017-10-25 08:52:07.597213826 -0400 +@@ -27,7 +27,7 @@ template + struct IsSpanImpl> : std::true_type {}; + + template +-using IsSpan = IsSpanImpl>; ++using IsSpan = IsSpanImpl::type>; + + template + struct IsStdArrayImpl : std::false_type {}; +@@ -36,7 +36,7 @@ template + struct IsStdArrayImpl> : std::true_type {}; + + template +-using IsStdArray = IsStdArrayImpl>; ++using IsStdArray = IsStdArrayImpl::type>; + + template + using IsLegalSpanConversion = std::is_convertible; diff --git a/chromium.spec b/chromium.spec index ac7a224..4ae1ecb 100644 --- a/chromium.spec +++ b/chromium.spec @@ -218,6 +218,7 @@ Patch63: chromium-gn-bootstrap-r17.patch Patch64: chromium-62.0.3202.62-correct-cplusplus-check.patch # epel7 does not know about c++14 Patch65: chromium-62.0.3202.62-epel7-noc++14.patch +Patch66: chromium-62.0.3202.62-epel7-c++11-decay-type.patch ### Chromium Tests Patches ### Patch100: chromium-46.0.2490.86-use_system_opus.patch @@ -668,6 +669,7 @@ udev. %patch60 -p1 -b .nonullptr %patch61 -p1 -b .another-rvalue-fix %patch65 -p1 -b .epel7-noc++14 +%patch66 -p1 -b .epel7-c++11 %endif %patch50 -p1 -b .pathfix %patch53 -p1 -b .nogccoptmath From 2180bdba879cfe15ed13fe549a5e69d8bcef00e8 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 25 Oct 2017 09:17:17 -0400 Subject: [PATCH 0153/1449] more C++11 type handling (enable_if) --- ....62-epel7-c++11-decay-enable_if-type.patch | 96 ++++++++++++++++++- chromium.spec | 2 +- 2 files changed, 94 insertions(+), 4 deletions(-) rename chromium-62.0.3202.62-epel7-c++11-decay-type.patch => chromium-62.0.3202.62-epel7-c++11-decay-enable_if-type.patch (61%) diff --git a/chromium-62.0.3202.62-epel7-c++11-decay-type.patch b/chromium-62.0.3202.62-epel7-c++11-decay-enable_if-type.patch similarity index 61% rename from chromium-62.0.3202.62-epel7-c++11-decay-type.patch rename to chromium-62.0.3202.62-epel7-c++11-decay-enable_if-type.patch index af0c5a7..0e651c6 100644 --- a/chromium-62.0.3202.62-epel7-c++11-decay-type.patch +++ b/chromium-62.0.3202.62-epel7-c++11-decay-enable_if-type.patch @@ -1,6 +1,6 @@ diff -up chromium-62.0.3202.62/base/bind_helpers.h.epel7-c++11 chromium-62.0.3202.62/base/bind_helpers.h --- chromium-62.0.3202.62/base/bind_helpers.h.epel7-c++11 2017-10-25 08:50:15.692276363 -0400 -+++ chromium-62.0.3202.62/base/bind_helpers.h 2017-10-25 08:50:39.977611740 -0400 ++++ chromium-62.0.3202.62/base/bind_helpers.h 2017-10-25 09:12:15.889484145 -0400 @@ -282,7 +282,7 @@ class PassedWrapper { }; @@ -10,6 +10,27 @@ diff -up chromium-62.0.3202.62/base/bind_helpers.h.epel7-c++11 chromium-62.0.320 template auto Unwrap(T&& o) -> decltype(Unwrapper::Unwrap(std::forward(o))) { +@@ -438,7 +438,7 @@ static inline internal::OwnedWrapper + // Both versions of Passed() prevent T from being an lvalue reference. The first + // via use of enable_if, and the second takes a T* which will not bind to T&. + template ::value>* = nullptr> ++ typename std::enable_if::value>::type* = nullptr> + static inline internal::PassedWrapper Passed(T&& scoper) { + return internal::PassedWrapper(std::move(scoper)); + } +@@ -537,9 +537,9 @@ template , +- std::enable_if_t< ++ typename std::enable_if< + internal::IsWeakMethod::is_method, +- BoundArgs...>::value>> { ++ BoundArgs...>::value>::type> { + static constexpr bool is_cancellable = true; + + template diff -up chromium-62.0.3202.62/base/bind.h.epel7-c++11 chromium-62.0.3202.62/base/bind.h --- chromium-62.0.3202.62/base/bind.h.epel7-c++11 2017-10-25 08:55:22.603877014 -0400 +++ chromium-62.0.3202.62/base/bind.h 2017-10-25 08:56:41.636714097 -0400 @@ -77,7 +98,16 @@ diff -up chromium-62.0.3202.62/base/bind.h.epel7-c++11 chromium-62.0.3202.62/bas // This block checks if each |args| matches to the corresponding params of the diff -up chromium-62.0.3202.62/base/bind_internal.h.epel7-c++11 chromium-62.0.3202.62/base/bind_internal.h --- chromium-62.0.3202.62/base/bind_internal.h.epel7-c++11 2017-10-25 08:52:20.018873878 -0400 -+++ chromium-62.0.3202.62/base/bind_internal.h 2017-10-25 08:55:07.779282724 -0400 ++++ chromium-62.0.3202.62/base/bind_internal.h 2017-10-25 09:14:48.526096108 -0400 +@@ -125,7 +125,7 @@ struct FunctorTraits; + // to the function type while capturing lambdas can't. + template + struct FunctorTraits::value>> { ++ typename std::enable_if::value>::type> { + using RunType = ExtractCallableRunType; + static constexpr bool is_method = false; + static constexpr bool is_nullable = false; @@ -256,7 +256,7 @@ struct FunctorTraits...>(); +@@ -383,13 +383,13 @@ struct BindTypeHelper { + }; + + template +-std::enable_if_t::is_nullable, bool> IsNull( ++typename std::enable_if::is_nullable, bool>::type IsNull( + const Functor& functor) { + return !functor; + } + + template +-std::enable_if_t::is_nullable, bool> IsNull( ++typename std::enable_if::is_nullable, bool>::type IsNull( + const Functor&) { + return false; + } @@ -479,33 +479,33 @@ struct MakeBindStateTypeImpl; template @@ -139,7 +185,7 @@ diff -up chromium-62.0.3202.62/base/bind_internal.h.epel7-c++11 chromium-62.0.32 template diff -up chromium-62.0.3202.62/base/containers/span.h.epel7-c++11 chromium-62.0.3202.62/base/containers/span.h --- chromium-62.0.3202.62/base/containers/span.h.epel7-c++11 2017-10-25 08:51:25.260372472 -0400 -+++ chromium-62.0.3202.62/base/containers/span.h 2017-10-25 08:52:07.597213826 -0400 ++++ chromium-62.0.3202.62/base/containers/span.h 2017-10-25 09:13:53.035964265 -0400 @@ -27,7 +27,7 @@ template struct IsSpanImpl> : std::true_type {}; @@ -158,3 +204,47 @@ diff -up chromium-62.0.3202.62/base/containers/span.h.epel7-c++11 chromium-62.0. template using IsLegalSpanConversion = std::is_convertible; +@@ -51,7 +51,7 @@ using ContainerHasIntegralSize = + + template + using EnableIfLegalSpanConversion = +- std::enable_if_t::value>; ++ typename std::enable_if::value>::type; + + // SFINAE check if Container can be converted to a span. Note that the + // implementation details of this check differ slightly from the requirements in +@@ -67,18 +67,18 @@ using EnableIfLegalSpanConversion = + // container. + template + using EnableIfSpanCompatibleContainer = +- std::enable_if_t::value && ++ typename std::enable_if::value && + !internal::IsStdArray::value && + ContainerHasConvertibleData::value && +- ContainerHasIntegralSize::value>; ++ ContainerHasIntegralSize::value>::type; + + template + using EnableIfConstSpanCompatibleContainer = +- std::enable_if_t::value && ++ typename std::enable_if::value && + !internal::IsSpan::value && + !internal::IsStdArray::value && + ContainerHasConvertibleData::value && +- ContainerHasIntegralSize::value>; ++ ContainerHasIntegralSize::value>::type; + + } // namespace internal + +diff -up chromium-62.0.3202.62/ipc/ipc_message_templates.h.epel7-c++11 chromium-62.0.3202.62/ipc/ipc_message_templates.h +--- chromium-62.0.3202.62/ipc/ipc_message_templates.h.epel7-c++11 2017-10-25 09:15:02.382879317 -0400 ++++ chromium-62.0.3202.62/ipc/ipc_message_templates.h 2017-10-25 09:15:36.609343836 -0400 +@@ -67,7 +67,7 @@ void DispatchToMethodImpl(ObjT* obj, + // The following function is for async IPCs which have a dispatcher with an + // extra parameter specified using IPC_BEGIN_MESSAGE_MAP_WITH_PARAM. + template +-std::enable_if_t>::value> ++typename std::enable_if>::value>::type + DispatchToMethod(ObjT* obj, + void (ObjT::*method)(P*, Args...), + P* parameter, diff --git a/chromium.spec b/chromium.spec index 4ae1ecb..14d6ef4 100644 --- a/chromium.spec +++ b/chromium.spec @@ -218,7 +218,7 @@ Patch63: chromium-gn-bootstrap-r17.patch Patch64: chromium-62.0.3202.62-correct-cplusplus-check.patch # epel7 does not know about c++14 Patch65: chromium-62.0.3202.62-epel7-noc++14.patch -Patch66: chromium-62.0.3202.62-epel7-c++11-decay-type.patch +Patch66: chromium-62.0.3202.62-epel7-c++11-decay-enable_if-type.patch ### Chromium Tests Patches ### Patch100: chromium-46.0.2490.86-use_system_opus.patch From 2f12a9278f7bed47e7086ca076252ed5b973bb89 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 25 Oct 2017 10:23:22 -0400 Subject: [PATCH 0154/1449] even moar c++11 --- ....62-epel7-c++11-decay-enable_if-type.patch | 250 --- ...ium-62.0.3202.62-epel7-c++11-support.patch | 1980 +++++++++++++++++ chromium.spec | 6 +- 3 files changed, 1985 insertions(+), 251 deletions(-) delete mode 100644 chromium-62.0.3202.62-epel7-c++11-decay-enable_if-type.patch create mode 100644 chromium-62.0.3202.62-epel7-c++11-support.patch diff --git a/chromium-62.0.3202.62-epel7-c++11-decay-enable_if-type.patch b/chromium-62.0.3202.62-epel7-c++11-decay-enable_if-type.patch deleted file mode 100644 index 0e651c6..0000000 --- a/chromium-62.0.3202.62-epel7-c++11-decay-enable_if-type.patch +++ /dev/null @@ -1,250 +0,0 @@ -diff -up chromium-62.0.3202.62/base/bind_helpers.h.epel7-c++11 chromium-62.0.3202.62/base/bind_helpers.h ---- chromium-62.0.3202.62/base/bind_helpers.h.epel7-c++11 2017-10-25 08:50:15.692276363 -0400 -+++ chromium-62.0.3202.62/base/bind_helpers.h 2017-10-25 09:12:15.889484145 -0400 -@@ -282,7 +282,7 @@ class PassedWrapper { - }; - - template --using Unwrapper = BindUnwrapTraits>; -+using Unwrapper = BindUnwrapTraits::type>; - - template - auto Unwrap(T&& o) -> decltype(Unwrapper::Unwrap(std::forward(o))) { -@@ -438,7 +438,7 @@ static inline internal::OwnedWrapper - // Both versions of Passed() prevent T from being an lvalue reference. The first - // via use of enable_if, and the second takes a T* which will not bind to T&. - template ::value>* = nullptr> -+ typename std::enable_if::value>::type* = nullptr> - static inline internal::PassedWrapper Passed(T&& scoper) { - return internal::PassedWrapper(std::move(scoper)); - } -@@ -537,9 +537,9 @@ template , -- std::enable_if_t< -+ typename std::enable_if< - internal::IsWeakMethod::is_method, -- BoundArgs...>::value>> { -+ BoundArgs...>::value>::type> { - static constexpr bool is_cancellable = true; - - template -diff -up chromium-62.0.3202.62/base/bind.h.epel7-c++11 chromium-62.0.3202.62/base/bind.h ---- chromium-62.0.3202.62/base/bind.h.epel7-c++11 2017-10-25 08:55:22.603877014 -0400 -+++ chromium-62.0.3202.62/base/bind.h 2017-10-25 08:56:41.636714097 -0400 -@@ -53,7 +53,7 @@ struct AssertConstructible { - // reference with repeating callbacks--is used instead of base::Passed(). - static_assert( - param_is_forwardable || -- !std::is_constructible&&>::value, -+ !std::is_constructible::type&&>::value, - "Bound argument |i| is move-only but will be forwarded by copy. " - "Ensure |Arg| is bound using base::Passed(), not std::move()."); - static_assert( -@@ -64,7 +64,7 @@ struct AssertConstructible { - static constexpr bool arg_is_storable = - std::is_constructible::value; - static_assert(arg_is_storable || -- !std::is_constructible&&>::value, -+ !std::is_constructible::type&&>::value, - "Bound argument |i| is move-only but will be bound by copy. " - "Ensure |Arg| is mutable and bound using std::move()."); - static_assert(arg_is_storable, -@@ -88,7 +88,7 @@ struct AssertBindArgsValidity, - TypeList, - TypeList> -- : AssertConstructible, Unwrapped, Params>... { -+ : AssertConstructible::type, Unwrapped, Params>... { - static constexpr bool ok = true; - }; - -@@ -98,14 +98,14 @@ struct TransformToUnwrappedTypeImpl; - - template - struct TransformToUnwrappedTypeImpl { -- using StoredType = std::decay_t; -+ using StoredType = typename std::decay::type; - using ForwardType = StoredType&&; - using Unwrapped = decltype(Unwrap(std::declval())); - }; - - template - struct TransformToUnwrappedTypeImpl { -- using StoredType = std::decay_t; -+ using StoredType = typename std::decay::type; - using ForwardType = const StoredType&; - using Unwrapped = decltype(Unwrap(std::declval())); - }; -@@ -153,7 +153,7 @@ using MakeUnwrappedTypeList = - template - inline OnceCallback> - BindOnce(Functor&& functor, Args&&... args) { -- static_assert(!internal::IsOnceCallback>() || -+ static_assert(!internal::IsOnceCallback::type>() || - (std::is_rvalue_reference() && - !std::is_const>()), - "BindOnce requires non-const rvalue for OnceCallback binding." -@@ -197,7 +197,7 @@ template > - BindRepeating(Functor&& functor, Args&&... args) { - static_assert( -- !internal::IsOnceCallback>(), -+ !internal::IsOnceCallback::type>(), - "BindRepeating cannot bind OnceCallback. Use BindOnce with std::move()."); - - // This block checks if each |args| matches to the corresponding params of the -diff -up chromium-62.0.3202.62/base/bind_internal.h.epel7-c++11 chromium-62.0.3202.62/base/bind_internal.h ---- chromium-62.0.3202.62/base/bind_internal.h.epel7-c++11 2017-10-25 08:52:20.018873878 -0400 -+++ chromium-62.0.3202.62/base/bind_internal.h 2017-10-25 09:14:48.526096108 -0400 -@@ -125,7 +125,7 @@ struct FunctorTraits; - // to the function type while capturing lambdas can't. - template - struct FunctorTraits::value>> { -+ typename std::enable_if::value>::type> { - using RunType = ExtractCallableRunType; - static constexpr bool is_method = false; - static constexpr bool is_nullable = false; -@@ -256,7 +256,7 @@ struct FunctorTraits --using MakeFunctorTraits = FunctorTraits>; -+using MakeFunctorTraits = FunctorTraits::type>; - - // InvokeHelper<> - // -@@ -341,7 +341,7 @@ struct Invoker::is_method; - -- using DecayedArgsTuple = std::decay_t; -+ using DecayedArgsTuple = typename std::decay::type; - static constexpr bool is_weak_call = - IsWeakMethod...>(); -@@ -383,13 +383,13 @@ struct BindTypeHelper { - }; - - template --std::enable_if_t::is_nullable, bool> IsNull( -+typename std::enable_if::is_nullable, bool>::type IsNull( - const Functor& functor) { - return !functor; - } - - template --std::enable_if_t::is_nullable, bool> IsNull( -+typename std::enable_if::is_nullable, bool>::type IsNull( - const Functor&) { - return false; - } -@@ -479,33 +479,33 @@ struct MakeBindStateTypeImpl; - - template - struct MakeBindStateTypeImpl { -- static_assert(!HasRefCountedTypeAsRawPtr...>::value, -+ static_assert(!HasRefCountedTypeAsRawPtr::type...>::value, - "A parameter is a refcounted type and needs scoped_refptr."); -- using Type = BindState, std::decay_t...>; -+ using Type = BindState::type, typename std::decay::type...>; - }; - - template - struct MakeBindStateTypeImpl { -- using Type = BindState>; -+ using Type = BindState::type>; - }; - - template - struct MakeBindStateTypeImpl { - static_assert(!std::is_array>::value, - "First bound argument to a method cannot be an array."); -- static_assert(!HasRefCountedTypeAsRawPtr...>::value, -+ static_assert(!HasRefCountedTypeAsRawPtr::type...>::value, - "A parameter is a refcounted type and needs scoped_refptr."); - - private: -- using DecayedReceiver = std::decay_t; -+ using DecayedReceiver = typename std::decay::type; - - public: - using Type = BindState< -- std::decay_t, -+ typename std::decay::type, - std::conditional_t::value, - scoped_refptr>, - DecayedReceiver>, -- std::decay_t...>; -+ typename std::decay::type...>; - }; - - template -diff -up chromium-62.0.3202.62/base/containers/span.h.epel7-c++11 chromium-62.0.3202.62/base/containers/span.h ---- chromium-62.0.3202.62/base/containers/span.h.epel7-c++11 2017-10-25 08:51:25.260372472 -0400 -+++ chromium-62.0.3202.62/base/containers/span.h 2017-10-25 09:13:53.035964265 -0400 -@@ -27,7 +27,7 @@ template - struct IsSpanImpl> : std::true_type {}; - - template --using IsSpan = IsSpanImpl>; -+using IsSpan = IsSpanImpl::type>; - - template - struct IsStdArrayImpl : std::false_type {}; -@@ -36,7 +36,7 @@ template - struct IsStdArrayImpl> : std::true_type {}; - - template --using IsStdArray = IsStdArrayImpl>; -+using IsStdArray = IsStdArrayImpl::type>; - - template - using IsLegalSpanConversion = std::is_convertible; -@@ -51,7 +51,7 @@ using ContainerHasIntegralSize = - - template - using EnableIfLegalSpanConversion = -- std::enable_if_t::value>; -+ typename std::enable_if::value>::type; - - // SFINAE check if Container can be converted to a span. Note that the - // implementation details of this check differ slightly from the requirements in -@@ -67,18 +67,18 @@ using EnableIfLegalSpanConversion = - // container. - template - using EnableIfSpanCompatibleContainer = -- std::enable_if_t::value && -+ typename std::enable_if::value && - !internal::IsStdArray::value && - ContainerHasConvertibleData::value && -- ContainerHasIntegralSize::value>; -+ ContainerHasIntegralSize::value>::type; - - template - using EnableIfConstSpanCompatibleContainer = -- std::enable_if_t::value && -+ typename std::enable_if::value && - !internal::IsSpan::value && - !internal::IsStdArray::value && - ContainerHasConvertibleData::value && -- ContainerHasIntegralSize::value>; -+ ContainerHasIntegralSize::value>::type; - - } // namespace internal - -diff -up chromium-62.0.3202.62/ipc/ipc_message_templates.h.epel7-c++11 chromium-62.0.3202.62/ipc/ipc_message_templates.h ---- chromium-62.0.3202.62/ipc/ipc_message_templates.h.epel7-c++11 2017-10-25 09:15:02.382879317 -0400 -+++ chromium-62.0.3202.62/ipc/ipc_message_templates.h 2017-10-25 09:15:36.609343836 -0400 -@@ -67,7 +67,7 @@ void DispatchToMethodImpl(ObjT* obj, - // The following function is for async IPCs which have a dispatcher with an - // extra parameter specified using IPC_BEGIN_MESSAGE_MAP_WITH_PARAM. - template --std::enable_if_t>::value> -+typename std::enable_if>::value>::type - DispatchToMethod(ObjT* obj, - void (ObjT::*method)(P*, Args...), - P* parameter, diff --git a/chromium-62.0.3202.62-epel7-c++11-support.patch b/chromium-62.0.3202.62-epel7-c++11-support.patch new file mode 100644 index 0000000..eb4339a --- /dev/null +++ b/chromium-62.0.3202.62-epel7-c++11-support.patch @@ -0,0 +1,1980 @@ +diff -up chromium-62.0.3202.62/base/bind_helpers.h.epel7-c++11 chromium-62.0.3202.62/base/bind_helpers.h +--- chromium-62.0.3202.62/base/bind_helpers.h.epel7-c++11 2017-10-25 08:50:15.692276363 -0400 ++++ chromium-62.0.3202.62/base/bind_helpers.h 2017-10-25 09:12:15.889484145 -0400 +@@ -282,7 +282,7 @@ class PassedWrapper { + }; + + template +-using Unwrapper = BindUnwrapTraits>; ++using Unwrapper = BindUnwrapTraits::type>; + + template + auto Unwrap(T&& o) -> decltype(Unwrapper::Unwrap(std::forward(o))) { +@@ -438,7 +438,7 @@ static inline internal::OwnedWrapper + // Both versions of Passed() prevent T from being an lvalue reference. The first + // via use of enable_if, and the second takes a T* which will not bind to T&. + template ::value>* = nullptr> ++ typename std::enable_if::value>::type* = nullptr> + static inline internal::PassedWrapper Passed(T&& scoper) { + return internal::PassedWrapper(std::move(scoper)); + } +@@ -537,9 +537,9 @@ template , +- std::enable_if_t< ++ typename std::enable_if< + internal::IsWeakMethod::is_method, +- BoundArgs...>::value>> { ++ BoundArgs...>::value>::type> { + static constexpr bool is_cancellable = true; + + template +diff -up chromium-62.0.3202.62/base/bind.h.epel7-c++11 chromium-62.0.3202.62/base/bind.h +--- chromium-62.0.3202.62/base/bind.h.epel7-c++11 2017-10-25 08:55:22.603877014 -0400 ++++ chromium-62.0.3202.62/base/bind.h 2017-10-25 10:12:28.753008563 -0400 +@@ -7,6 +7,8 @@ + + #include + ++#include "third_party/tao/seq/integer_sequence.hpp" ++#include "third_party/tao/seq/make_integer_sequence.hpp" + #include "base/bind_internal.h" + + // ----------------------------------------------------------------------------- +@@ -53,7 +55,7 @@ struct AssertConstructible { + // reference with repeating callbacks--is used instead of base::Passed(). + static_assert( + param_is_forwardable || +- !std::is_constructible&&>::value, ++ !std::is_constructible::type&&>::value, + "Bound argument |i| is move-only but will be forwarded by copy. " + "Ensure |Arg| is bound using base::Passed(), not std::move()."); + static_assert( +@@ -64,7 +66,7 @@ struct AssertConstructible { + static constexpr bool arg_is_storable = + std::is_constructible::value; + static_assert(arg_is_storable || +- !std::is_constructible&&>::value, ++ !std::is_constructible::type&&>::value, + "Bound argument |i| is move-only but will be bound by copy. " + "Ensure |Arg| is mutable and bound using std::move()."); + static_assert(arg_is_storable, +@@ -84,11 +86,11 @@ template +-struct AssertBindArgsValidity, ++struct AssertBindArgsValidity, + TypeList, + TypeList, + TypeList> +- : AssertConstructible, Unwrapped, Params>... { ++ : AssertConstructible::type, Unwrapped, Params>... { + static constexpr bool ok = true; + }; + +@@ -98,14 +100,14 @@ struct TransformToUnwrappedTypeImpl; + + template + struct TransformToUnwrappedTypeImpl { +- using StoredType = std::decay_t; ++ using StoredType = typename std::decay::type; + using ForwardType = StoredType&&; + using Unwrapped = decltype(Unwrap(std::declval())); + }; + + template + struct TransformToUnwrappedTypeImpl { +- using StoredType = std::decay_t; ++ using StoredType = typename std::decay::type; + using ForwardType = const StoredType&; + using Unwrapped = decltype(Unwrap(std::declval())); + }; +@@ -153,7 +155,7 @@ using MakeUnwrappedTypeList = + template + inline OnceCallback> + BindOnce(Functor&& functor, Args&&... args) { +- static_assert(!internal::IsOnceCallback>() || ++ static_assert(!internal::IsOnceCallback::type>() || + (std::is_rvalue_reference() && + !std::is_const>()), + "BindOnce requires non-const rvalue for OnceCallback binding." +@@ -170,7 +172,7 @@ BindOnce(Functor&& functor, Args&&... ar + Args&&...>; + using BoundParamsList = typename Helper::BoundParamsList; + static_assert(internal::AssertBindArgsValidity< +- std::make_index_sequence, BoundArgsList, ++ tao::seq::make_index_sequence, BoundArgsList, + UnwrappedArgsList, BoundParamsList>::ok, + "The bound args need to be convertible to the target params."); + +@@ -197,7 +199,7 @@ template > + BindRepeating(Functor&& functor, Args&&... args) { + static_assert( +- !internal::IsOnceCallback>(), ++ !internal::IsOnceCallback::type>(), + "BindRepeating cannot bind OnceCallback. Use BindOnce with std::move()."); + + // This block checks if each |args| matches to the corresponding params of the +@@ -211,7 +213,7 @@ BindRepeating(Functor&& functor, Args&&. + Args&&...>; + using BoundParamsList = typename Helper::BoundParamsList; + static_assert(internal::AssertBindArgsValidity< +- std::make_index_sequence, BoundArgsList, ++ tao::seq::make_index_sequence, BoundArgsList, + UnwrappedArgsList, BoundParamsList>::ok, + "The bound args need to be convertible to the target params."); + +diff -up chromium-62.0.3202.62/base/bind_internal.h.epel7-c++11 chromium-62.0.3202.62/base/bind_internal.h +--- chromium-62.0.3202.62/base/bind_internal.h.epel7-c++11 2017-10-25 08:52:20.018873878 -0400 ++++ chromium-62.0.3202.62/base/bind_internal.h 2017-10-25 10:14:03.619256659 -0400 +@@ -15,6 +15,8 @@ + #include "base/memory/raw_scoped_refptr_mismatch_checker.h" + #include "base/memory/weak_ptr.h" + #include "base/template_util.h" ++#include "third_party/tao/seq/integer_sequence.hpp" ++#include "third_party/tao/seq/make_integer_sequence.hpp" + #include "build/build_config.h" + + namespace base { +@@ -98,9 +100,9 @@ struct HasRefCountedTypeAsRawPtr : std:: + // parameters recursively. + template + struct HasRefCountedTypeAsRawPtr +- : std::conditional_t::value, ++ : typedef std::conditional::value, + std::true_type, +- HasRefCountedTypeAsRawPtr> {}; ++ HasRefCountedTypeAsRawPtr::type> {}; + + // ForceVoidReturn<> + // +@@ -125,7 +127,7 @@ struct FunctorTraits; + // to the function type while capturing lambdas can't. + template + struct FunctorTraits::value>> { ++ typename std::enable_if::value>::type> { + using RunType = ExtractCallableRunType; + static constexpr bool is_method = false; + static constexpr bool is_nullable = false; +@@ -256,7 +258,7 @@ struct FunctorTraits +-using MakeFunctorTraits = FunctorTraits>; ++using MakeFunctorTraits = FunctorTraits::type>; + + // InvokeHelper<> + // +@@ -317,7 +319,7 @@ struct Invokerbound_args_)>::value; + return RunImpl(std::move(storage->functor_), + std::move(storage->bound_args_), +- std::make_index_sequence(), ++ tao::seq::make_index_sequence(), + std::forward(unbound_args)...); + } + +@@ -329,7 +331,7 @@ struct Invokerbound_args_)>::value; + return RunImpl(storage->functor_, storage->bound_args_, +- std::make_index_sequence(), ++ tao::seq::make_index_sequence(), + std::forward(unbound_args)...); + } + +@@ -337,11 +339,11 @@ struct Invoker + static inline R RunImpl(Functor&& functor, + BoundArgsTuple&& bound, +- std::index_sequence, ++ tao::seq::index_sequence, + UnboundArgs&&... unbound_args) { + static constexpr bool is_method = MakeFunctorTraits::is_method; + +- using DecayedArgsTuple = std::decay_t; ++ using DecayedArgsTuple = typename std::decay::type; + static constexpr bool is_weak_call = + IsWeakMethod...>(); +@@ -383,13 +385,13 @@ struct BindTypeHelper { + }; + + template +-std::enable_if_t::is_nullable, bool> IsNull( ++typename std::enable_if::is_nullable, bool>::type IsNull( + const Functor& functor) { + return !functor; + } + + template +-std::enable_if_t::is_nullable, bool> IsNull( ++typename std::enable_if::is_nullable, bool>::type IsNull( + const Functor&) { + return false; + } +@@ -398,7 +400,7 @@ std::enable_if_t + template + bool ApplyCancellationTraitsImpl(const Functor& functor, + const BoundArgsTuple& bound_args, +- std::index_sequence) { ++ tao::seq::index_sequence) { + return CallbackCancellationTraits::IsCancelled( + functor, std::get(bound_args)...); + } +@@ -412,7 +414,7 @@ bool ApplyCancellationTraits(const BindS + std::tuple_sizebound_args_)>::value; + return ApplyCancellationTraitsImpl( + storage->functor_, storage->bound_args_, +- std::make_index_sequence()); ++ tao::seq::make_index_sequence()); + }; + + // BindState<> +@@ -479,33 +481,33 @@ struct MakeBindStateTypeImpl; + + template + struct MakeBindStateTypeImpl { +- static_assert(!HasRefCountedTypeAsRawPtr...>::value, ++ static_assert(!HasRefCountedTypeAsRawPtr::type...>::value, + "A parameter is a refcounted type and needs scoped_refptr."); +- using Type = BindState, std::decay_t...>; ++ using Type = BindState::type, typename std::decay::type...>; + }; + + template + struct MakeBindStateTypeImpl { +- using Type = BindState>; ++ using Type = BindState::type>; + }; + + template + struct MakeBindStateTypeImpl { + static_assert(!std::is_array>::value, + "First bound argument to a method cannot be an array."); +- static_assert(!HasRefCountedTypeAsRawPtr...>::value, ++ static_assert(!HasRefCountedTypeAsRawPtr::type...>::value, + "A parameter is a refcounted type and needs scoped_refptr."); + + private: +- using DecayedReceiver = std::decay_t; ++ using DecayedReceiver = typename std::decay::type; + + public: + using Type = BindState< +- std::decay_t, +- std::conditional_t::value, ++ typename std::decay::type, ++ typename std::conditional::value, + scoped_refptr>, +- DecayedReceiver>, +- std::decay_t...>; ++ DecayedReceiver>::type, ++ typename std::decay::type...>; + }; + + template +diff -up chromium-62.0.3202.62/base/containers/span.h.epel7-c++11 chromium-62.0.3202.62/base/containers/span.h +--- chromium-62.0.3202.62/base/containers/span.h.epel7-c++11 2017-10-25 08:51:25.260372472 -0400 ++++ chromium-62.0.3202.62/base/containers/span.h 2017-10-25 09:13:53.035964265 -0400 +@@ -27,7 +27,7 @@ template + struct IsSpanImpl> : std::true_type {}; + + template +-using IsSpan = IsSpanImpl>; ++using IsSpan = IsSpanImpl::type>; + + template + struct IsStdArrayImpl : std::false_type {}; +@@ -36,7 +36,7 @@ template + struct IsStdArrayImpl> : std::true_type {}; + + template +-using IsStdArray = IsStdArrayImpl>; ++using IsStdArray = IsStdArrayImpl::type>; + + template + using IsLegalSpanConversion = std::is_convertible; +@@ -51,7 +51,7 @@ using ContainerHasIntegralSize = + + template + using EnableIfLegalSpanConversion = +- std::enable_if_t::value>; ++ typename std::enable_if::value>::type; + + // SFINAE check if Container can be converted to a span. Note that the + // implementation details of this check differ slightly from the requirements in +@@ -67,18 +67,18 @@ using EnableIfLegalSpanConversion = + // container. + template + using EnableIfSpanCompatibleContainer = +- std::enable_if_t::value && ++ typename std::enable_if::value && + !internal::IsStdArray::value && + ContainerHasConvertibleData::value && +- ContainerHasIntegralSize::value>; ++ ContainerHasIntegralSize::value>::type; + + template + using EnableIfConstSpanCompatibleContainer = +- std::enable_if_t::value && ++ typename std::enable_if::value && + !internal::IsSpan::value && + !internal::IsStdArray::value && + ContainerHasConvertibleData::value && +- ContainerHasIntegralSize::value>; ++ ContainerHasIntegralSize::value>::type; + + } // namespace internal + +diff -up chromium-62.0.3202.62/base/tuple.h.epel7-c++11 chromium-62.0.3202.62/base/tuple.h +--- chromium-62.0.3202.62/base/tuple.h.epel7-c++11 2017-10-25 10:09:22.986397329 -0400 ++++ chromium-62.0.3202.62/base/tuple.h 2017-10-25 10:11:00.392571745 -0400 +@@ -29,6 +29,7 @@ + #include + #include + ++#include "third_party/tao/seq/integer_sequence.hpp" + #include "build/build_config.h" + + namespace base { +@@ -52,7 +53,7 @@ template ) { ++ tao::seq::index_sequence) { + (obj->*method)(std::get(std::forward(args))...); + } + +@@ -69,7 +70,7 @@ inline void DispatchToMethod(const ObjT& + template + inline void DispatchToFunctionImpl(Function function, + Tuple&& args, +- std::index_sequence) { ++ tao::seq::index_sequence) { + (*function)(std::get(std::forward(args))...); + } + +@@ -91,8 +92,8 @@ inline void DispatchToMethodImpl(const O + Method method, + InTuple&& in, + OutTuple* out, +- std::index_sequence, +- std::index_sequence) { ++ tao::seq::index_sequence, ++ tao::seq::index_sequence) { + (obj->*method)(std::get(std::forward(in))..., + &std::get(*out)...); + } +diff -up chromium-62.0.3202.62/components/login/base_screen_handler_utils.h.epel7-c++11 chromium-62.0.3202.62/components/login/base_screen_handler_utils.h +--- chromium-62.0.3202.62/components/login/base_screen_handler_utils.h.epel7-c++11 2017-10-25 10:14:43.493099988 -0400 ++++ chromium-62.0.3202.62/components/login/base_screen_handler_utils.h 2017-10-25 10:15:17.679108311 -0400 +@@ -17,6 +17,7 @@ + #include "base/values.h" + #include "components/login/login_export.h" + #include "components/signin/core/account_id/account_id.h" ++#include "third_party/tao/seq/integer_sequence.hpp" + + namespace login { + +@@ -86,7 +87,7 @@ typename UnwrapConstRef::Type Parse + template + inline void DispatchToCallback(const base::Callback& callback, + const base::ListValue* args, +- std::index_sequence indexes) { ++ tao::seq::index_sequence indexes) { + DCHECK(args); + DCHECK_EQ(sizeof...(Args), args->GetSize()); + +@@ -96,7 +97,7 @@ inline void DispatchToCallback(const bas + template + void CallbackWrapper(const base::Callback& callback, + const base::ListValue* args) { +- DispatchToCallback(callback, args, std::index_sequence_for()); ++ DispatchToCallback(callback, args, tao::seq::index_sequence_for()); + } + + +diff -up chromium-62.0.3202.62/ipc/ipc_message_templates.h.epel7-c++11 chromium-62.0.3202.62/ipc/ipc_message_templates.h +--- chromium-62.0.3202.62/ipc/ipc_message_templates.h.epel7-c++11 2017-10-25 09:15:02.382879317 -0400 ++++ chromium-62.0.3202.62/ipc/ipc_message_templates.h 2017-10-25 10:16:41.889665510 -0400 +@@ -17,11 +17,13 @@ + #include "build/build_config.h" + #include "ipc/ipc_message.h" + #include "ipc/ipc_message_utils.h" ++#include "third_party/tao/seq/integer_sequence.hpp" ++#include "third_party/tao/seq/make_integer_sequence.hpp" + + namespace IPC { + + template +-auto TupleForwardImpl(Tuple&& tuple, std::index_sequence) -> decltype( ++auto TupleForwardImpl(Tuple&& tuple, tao::seq::index_sequence) -> decltype( + std::forward_as_tuple(std::get(std::forward(tuple))...)) { + return std::forward_as_tuple(std::get(std::forward(tuple))...); + } +@@ -38,10 +40,10 @@ auto TupleForwardImpl(Tuple&& tuple, std + template + auto TupleForward(Tuple&& tuple) -> decltype(TupleForwardImpl( + std::forward(tuple), +- std::make_index_sequence>::value>())) { ++ tao::seq::make_index_sequence>::value>())) { + return TupleForwardImpl( + std::forward(tuple), +- std::make_index_sequence>::value>()); ++ tao::seq::make_index_sequence>::value>()); + } + + // This function is for all the async IPCs that don't pass an extra parameter +@@ -60,21 +62,21 @@ void DispatchToMethodImpl(ObjT* obj, + Method method, + P* parameter, + Tuple&& tuple, +- std::index_sequence) { ++ tao::seq::index_sequence) { + (obj->*method)(parameter, std::get(std::forward(tuple))...); + } + + // The following function is for async IPCs which have a dispatcher with an + // extra parameter specified using IPC_BEGIN_MESSAGE_MAP_WITH_PARAM. + template +-std::enable_if_t>::value> ++typename std::enable_if>::value>::type + DispatchToMethod(ObjT* obj, + void (ObjT::*method)(P*, Args...), + P* parameter, + Tuple&& tuple) { + constexpr size_t size = std::tuple_size>::value; + DispatchToMethodImpl(obj, method, parameter, std::forward(tuple), +- std::make_index_sequence()); ++ tao::seq::make_index_sequence()); + } + + enum class MessageKind { +diff -up chromium-62.0.3202.62/ppapi/proxy/dispatch_reply_message.h.epel7-c++11 chromium-62.0.3202.62/ppapi/proxy/dispatch_reply_message.h +--- chromium-62.0.3202.62/ppapi/proxy/dispatch_reply_message.h.epel7-c++11 2017-10-25 10:16:53.888317449 -0400 ++++ chromium-62.0.3202.62/ppapi/proxy/dispatch_reply_message.h 2017-10-25 10:17:50.152688363 -0400 +@@ -17,6 +17,7 @@ + #include "base/tuple.h" + #include "ipc/ipc_message_macros.h" + #include "ppapi/c/pp_errors.h" ++#include "third_party/tao/seq/integer_sequence.hpp" + + namespace ppapi { + namespace proxy { +@@ -28,7 +29,7 @@ inline void DispatchResourceReplyImpl(Ob + Method method, + const ResourceMessageReplyParams& params, + TupleType&& args_tuple, +- std::index_sequence) { ++ tao::seq::index_sequence) { + (obj->*method)(params, + std::get(std::forward(args_tuple))...); + } +@@ -51,7 +52,7 @@ template ) { ++ tao::seq::index_sequence) { + std::forward(callback).Run( + params, std::get(std::forward(args_tuple))...); + } +diff -up chromium-62.0.3202.62/third_party/tao/seq/at_index.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/at_index.hpp +--- chromium-62.0.3202.62/third_party/tao/seq/at_index.hpp.epel7-c++11 2017-10-25 10:08:42.418574130 -0400 ++++ chromium-62.0.3202.62/third_party/tao/seq/at_index.hpp 2017-10-25 10:05:28.328204354 -0400 +@@ -0,0 +1,60 @@ ++// Copyright (c) 2015-2017 Daniel Frey ++// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ ++ ++#ifndef TAOCPP_SEQUENCES_INCLUDE_AT_INDEX_HPP ++#define TAOCPP_SEQUENCES_INCLUDE_AT_INDEX_HPP ++ ++#include ++ ++#include "make_integer_sequence.hpp" ++ ++namespace tao ++{ ++ namespace seq ++ { ++ // based on http://talesofcpp.fusionfenix.com/post-22/true-story-efficient-packing ++ ++ namespace impl ++ { ++ template< std::size_t, typename T > ++ struct indexed ++ { ++ using type = T; ++ }; ++ ++ template< typename, typename... Ts > ++ struct indexer; ++ ++ template< std::size_t... Is, typename... Ts > ++ struct indexer< index_sequence< Is... >, Ts... > ++ : indexed< Is, Ts >... ++ { ++ }; ++ ++ template< std::size_t I, typename T > ++ indexed< I, T > select( const indexed< I, T >& ); ++ } ++ ++ template< std::size_t I, typename... Ts > ++ using at_index = decltype( impl::select< I >( impl::indexer< index_sequence_for< Ts... >, Ts... >() ) ); ++ ++#ifndef _MSC_VER ++ template< std::size_t I, typename... Ts > ++ using at_index_t = typename at_index< I, Ts... >::type; ++#else ++ namespace impl ++ { ++ template< typename T > ++ struct get_type ++ { ++ using type = typename T::type; ++ }; ++ } ++ ++ template< std::size_t I, typename... Ts > ++ using at_index_t = typename impl::get_type< at_index< I, Ts... > >::type; ++#endif ++ } ++} ++ ++#endif // TAOCPP_SEQUENCES_INCLUDE_AT_INDEX_HPP +diff -up chromium-62.0.3202.62/third_party/tao/seq/concatenate.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/concatenate.hpp +--- chromium-62.0.3202.62/third_party/tao/seq/concatenate.hpp.epel7-c++11 2017-10-25 10:08:42.422574014 -0400 ++++ chromium-62.0.3202.62/third_party/tao/seq/concatenate.hpp 2017-10-25 10:05:28.328204354 -0400 +@@ -0,0 +1,29 @@ ++// Copyright (c) 2015-2017 Daniel Frey ++// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ ++ ++#ifndef TAOCPP_SEQUENCES_INCLUDE_CONCATENATE_HPP ++#define TAOCPP_SEQUENCES_INCLUDE_CONCATENATE_HPP ++ ++#include ++ ++#include "integer_sequence.hpp" ++ ++namespace tao ++{ ++ namespace seq ++ { ++ template< typename, typename > ++ struct concatenate; ++ ++ template< typename TA, TA... As, typename TB, TB... Bs > ++ struct concatenate< integer_sequence< TA, As... >, integer_sequence< TB, Bs... > > ++ { ++ using type = integer_sequence< typename std::common_type< TA, TB >::type, As..., Bs... >; ++ }; ++ ++ template< typename A, typename B > ++ using concatenate_t = typename concatenate< A, B >::type; ++ } ++} ++ ++#endif // TAOCPP_SEQUENCES_INCLUDE_CONCATENATE_HPP +diff -up chromium-62.0.3202.62/third_party/tao/seq/config.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/config.hpp +--- chromium-62.0.3202.62/third_party/tao/seq/config.hpp.epel7-c++11 2017-10-25 10:08:42.428573840 -0400 ++++ chromium-62.0.3202.62/third_party/tao/seq/config.hpp 2017-10-25 10:05:28.328204354 -0400 +@@ -0,0 +1,25 @@ ++// Copyright (c) 2015-2017 Daniel Frey ++// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ ++ ++#ifndef TAOCPP_SEQUENCES_INCLUDE_CONFIG_HPP ++#define TAOCPP_SEQUENCES_INCLUDE_CONFIG_HPP ++ ++#if __cplusplus >= 201402L ++ ++#define TAOCPP_USE_STD_INTEGER_SEQUENCE ++ ++#if defined( _LIBCPP_VERSION ) ++#define TAOCPP_USE_STD_MAKE_INTEGER_SEQUENCE ++#elif defined( _GLIBCXX_RELEASE ) && ( _GLIBCXX_RELEASE >= 8 ) ++#define TAOCPP_USE_STD_MAKE_INTEGER_SEQUENCE ++#elif defined( _MSC_VER ) && ( _MSC_VER >= 190023918 ) ++#define TAOCPP_USE_STD_MAKE_INTEGER_SEQUENCE ++#endif ++ ++#endif // __cplusplus >= 201402L ++ ++#if defined( __cpp_fold_expressions ) ++#define TAOCPP_FOLD_EXPRESSIONS ++#endif ++ ++#endif // TAOCPP_SEQUENCES_INCLUDE_CONFIG_HPP +diff -up chromium-62.0.3202.62/third_party/tao/seq/exclusive_scan.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/exclusive_scan.hpp +--- chromium-62.0.3202.62/third_party/tao/seq/exclusive_scan.hpp.epel7-c++11 2017-10-25 10:08:42.429573811 -0400 ++++ chromium-62.0.3202.62/third_party/tao/seq/exclusive_scan.hpp 2017-10-25 10:05:28.328204354 -0400 +@@ -0,0 +1,45 @@ ++// Copyright (c) 2015-2017 Daniel Frey ++// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ ++ ++#ifndef TAOCPP_SEQUENCES_INCLUDE_EXCLUSIVE_SCAN_HPP ++#define TAOCPP_SEQUENCES_INCLUDE_EXCLUSIVE_SCAN_HPP ++ ++#include ++ ++#include "make_integer_sequence.hpp" ++#include "partial_sum.hpp" ++ ++namespace tao ++{ ++ namespace seq ++ { ++ namespace impl ++ { ++ template< typename S, typename = make_index_sequence< S::size() > > ++ struct exclusive_scan; ++ ++ template< typename S, std::size_t... Is > ++ struct exclusive_scan< S, index_sequence< Is... > > ++ { ++ using type = integer_sequence< typename S::value_type, partial_sum< Is, S >::value... >; ++ }; ++ } ++ ++ template< typename T, T... Ns > ++ struct exclusive_scan ++ : impl::exclusive_scan< integer_sequence< T, Ns... > > ++ { ++ }; ++ ++ template< typename T, T... Ns > ++ struct exclusive_scan< integer_sequence< T, Ns... > > ++ : impl::exclusive_scan< integer_sequence< T, Ns... > > ++ { ++ }; ++ ++ template< typename T, T... Ns > ++ using exclusive_scan_t = typename exclusive_scan< T, Ns... >::type; ++ } ++} ++ ++#endif // TAOCPP_SEQUENCES_INCLUDE_EXCLUSIVE_SCAN_HPP +diff -up chromium-62.0.3202.62/third_party/tao/seq/fold.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/fold.hpp +--- chromium-62.0.3202.62/third_party/tao/seq/fold.hpp.epel7-c++11 2017-10-25 10:08:42.430573782 -0400 ++++ chromium-62.0.3202.62/third_party/tao/seq/fold.hpp 2017-10-25 10:05:28.328204354 -0400 +@@ -0,0 +1,58 @@ ++// Copyright (c) 2015-2017 Daniel Frey ++// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ ++ ++#ifndef TAOCPP_SEQUENCES_INCLUDE_FOLD_HPP ++#define TAOCPP_SEQUENCES_INCLUDE_FOLD_HPP ++ ++#include ++ ++#include "integer_sequence.hpp" ++#include "make_integer_sequence.hpp" ++#include "select.hpp" ++ ++namespace tao ++{ ++ namespace seq ++ { ++ namespace impl ++ { ++ template< template< typename U, U, U > class, typename, bool, typename T, T... > ++ struct folder; ++ ++ template< template< typename U, U, U > class OP, std::size_t... Is, typename T, T... Ns > ++ struct folder< OP, index_sequence< Is... >, false, T, Ns... > ++ { ++ using type = integer_sequence< T, OP< T, seq::select< 2 * Is, T, Ns... >::value, seq::select< 2 * Is + 1, T, Ns... >::value >::value... >; ++ }; ++ ++ template< template< typename U, U, U > class OP, std::size_t... Is, typename T, T N, T... Ns > ++ struct folder< OP, index_sequence< Is... >, true, T, N, Ns... > ++ { ++ using type = integer_sequence< T, N, OP< T, seq::select< 2 * Is, T, Ns... >::value, seq::select< 2 * Is + 1, T, Ns... >::value >::value... >; ++ }; ++ } ++ ++ template< template< typename U, U, U > class, typename T, T... > ++ struct fold; ++ ++ template< template< typename U, U, U > class OP, typename T, T N > ++ struct fold< OP, T, N > ++ : std::integral_constant< T, N > ++ { ++ }; ++ ++ template< template< typename U, U, U > class OP, typename T, T... Ns > ++ struct fold ++ : fold< OP, typename impl::folder< OP, make_index_sequence< sizeof...( Ns ) / 2 >, sizeof...( Ns ) % 2 == 1, T, Ns... >::type > ++ { ++ }; ++ ++ template< template< typename U, U, U > class OP, typename T, T... Ns > ++ struct fold< OP, integer_sequence< T, Ns... > > ++ : fold< OP, T, Ns... > ++ { ++ }; ++ } ++} ++ ++#endif // TAOCPP_SEQUENCES_INCLUDE_FOLD_HPP +diff -up chromium-62.0.3202.62/third_party/tao/seq/head.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/head.hpp +--- chromium-62.0.3202.62/third_party/tao/seq/head.hpp.epel7-c++11 2017-10-25 10:08:42.431573753 -0400 ++++ chromium-62.0.3202.62/third_party/tao/seq/head.hpp 2017-10-25 10:05:28.328204354 -0400 +@@ -0,0 +1,32 @@ ++// Copyright (c) 2015-2017 Daniel Frey ++// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ ++ ++#ifndef TAOCPP_SEQUENCES_INCLUDE_HEAD_HPP ++#define TAOCPP_SEQUENCES_INCLUDE_HEAD_HPP ++ ++#include ++ ++#include "integer_sequence.hpp" ++ ++namespace tao ++{ ++ namespace seq ++ { ++ template< typename T, T... Ns > ++ struct head; ++ ++ template< typename T, T N, T... Ns > ++ struct head< T, N, Ns... > ++ : std::integral_constant< T, N > ++ { ++ }; ++ ++ template< typename T, T... Ns > ++ struct head< integer_sequence< T, Ns... > > ++ : head< T, Ns... > ++ { ++ }; ++ } ++} ++ ++#endif // TAOCPP_SEQUENCES_INCLUDE_HEAD_HPP +diff -up chromium-62.0.3202.62/third_party/tao/seq/inclusive_scan.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/inclusive_scan.hpp +--- chromium-62.0.3202.62/third_party/tao/seq/inclusive_scan.hpp.epel7-c++11 2017-10-25 10:08:42.432573724 -0400 ++++ chromium-62.0.3202.62/third_party/tao/seq/inclusive_scan.hpp 2017-10-25 10:05:28.328204354 -0400 +@@ -0,0 +1,34 @@ ++// Copyright (c) 2015-2017 Daniel Frey ++// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ ++ ++#ifndef TAOCPP_SEQUENCES_INCLUDE_INCLUSIVE_SCAN_HPP ++#define TAOCPP_SEQUENCES_INCLUDE_INCLUSIVE_SCAN_HPP ++ ++#include ++ ++#include "exclusive_scan.hpp" ++#include "integer_sequence.hpp" ++#include "plus.hpp" ++ ++namespace tao ++{ ++ namespace seq ++ { ++ template< typename T, T... Ns > ++ struct inclusive_scan ++ : plus< exclusive_scan_t< T, Ns... >, integer_sequence< T, Ns... > > ++ { ++ }; ++ ++ template< typename T, T... Ns > ++ struct inclusive_scan< integer_sequence< T, Ns... > > ++ : plus< exclusive_scan_t< integer_sequence< T, Ns... > >, integer_sequence< T, Ns... > > ++ { ++ }; ++ ++ template< typename T, T... Ns > ++ using inclusive_scan_t = typename inclusive_scan< T, Ns... >::type; ++ } ++} ++ ++#endif // TAOCPP_SEQUENCES_INCLUDE_INCLUSIVE_SCAN_HPP +diff -up chromium-62.0.3202.62/third_party/tao/seq/integer_sequence.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/integer_sequence.hpp +--- chromium-62.0.3202.62/third_party/tao/seq/integer_sequence.hpp.epel7-c++11 2017-10-25 10:08:42.433573695 -0400 ++++ chromium-62.0.3202.62/third_party/tao/seq/integer_sequence.hpp 2017-10-25 10:05:28.328204354 -0400 +@@ -0,0 +1,42 @@ ++// Copyright (c) 2015-2017 Daniel Frey ++// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ ++ ++#ifndef TAOCPP_SEQUENCES_INCLUDE_INTEGER_SEQUENCE_HPP ++#define TAOCPP_SEQUENCES_INCLUDE_INTEGER_SEQUENCE_HPP ++ ++#include ++#include ++ ++#include "config.hpp" ++ ++namespace tao ++{ ++ namespace seq ++ { ++ ++#ifdef TAOCPP_USE_STD_INTEGER_SEQUENCE ++ ++ using std::integer_sequence; ++ using std::index_sequence; ++ ++#else ++ ++ template< typename T, T... Ns > ++ struct integer_sequence ++ { ++ using value_type = T; ++ ++ static constexpr std::size_t size() noexcept ++ { ++ return sizeof...( Ns ); ++ } ++ }; ++ ++ template< std::size_t... Ns > ++ using index_sequence = integer_sequence< std::size_t, Ns... >; ++ ++#endif ++ } ++} ++ ++#endif // TAOCPP_SEQUENCES_INCLUDE_INTEGER_SEQUENCE_HPP +diff -up chromium-62.0.3202.62/third_party/tao/seq/is_all.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/is_all.hpp +--- chromium-62.0.3202.62/third_party/tao/seq/is_all.hpp.epel7-c++11 2017-10-25 10:08:42.433573695 -0400 ++++ chromium-62.0.3202.62/third_party/tao/seq/is_all.hpp 2017-10-25 10:05:28.328204354 -0400 +@@ -0,0 +1,34 @@ ++// Copyright (c) 2015-2017 Daniel Frey ++// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ ++ ++#ifndef TAOCPP_SEQUENCES_INCLUDE_IS_ALL_HPP ++#define TAOCPP_SEQUENCES_INCLUDE_IS_ALL_HPP ++ ++#include "config.hpp" ++ ++#ifndef TAOCPP_FOLD_EXPRESSIONS ++#include "integer_sequence.hpp" ++#endif ++ ++#include ++ ++namespace tao ++{ ++ namespace seq ++ { ++ ++#ifdef TAOCPP_FOLD_EXPRESSIONS ++ ++ template< bool... Bs > ++ using is_all = std::integral_constant< bool, ( Bs && ... ) >; ++ ++#else ++ ++ template< bool... Bs > ++ using is_all = std::integral_constant< bool, std::is_same< integer_sequence< bool, true, Bs... >, integer_sequence< bool, Bs..., true > >::value >; ++ ++#endif ++ } ++} ++ ++#endif // TAOCPP_SEQUENCES_INCLUDE_IS_ALL_HPP +diff -up chromium-62.0.3202.62/third_party/tao/seq/is_any.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/is_any.hpp +--- chromium-62.0.3202.62/third_party/tao/seq/is_any.hpp.epel7-c++11 2017-10-25 10:08:42.434573666 -0400 ++++ chromium-62.0.3202.62/third_party/tao/seq/is_any.hpp 2017-10-25 10:05:28.328204354 -0400 +@@ -0,0 +1,34 @@ ++// Copyright (c) 2015-2017 Daniel Frey ++// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ ++ ++#ifndef TAOCPP_SEQUENCES_INCLUDE_IS_ANY_HPP ++#define TAOCPP_SEQUENCES_INCLUDE_IS_ANY_HPP ++ ++#include "config.hpp" ++ ++#ifndef TAOCPP_FOLD_EXPRESSIONS ++#include "is_all.hpp" ++#endif ++ ++#include ++ ++namespace tao ++{ ++ namespace seq ++ { ++ ++#ifdef TAOCPP_FOLD_EXPRESSIONS ++ ++ template< bool... Bs > ++ using is_any = std::integral_constant< bool, ( Bs || ... ) >; ++ ++#else ++ ++ template< bool... Bs > ++ using is_any = std::integral_constant< bool, !is_all< !Bs... >::value >; ++ ++#endif ++ } ++} ++ ++#endif // TAOCPP_SEQUENCES_INCLUDE_IS_ANY_HPP +diff -up chromium-62.0.3202.62/third_party/tao/seq/LICENSE.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/LICENSE +--- chromium-62.0.3202.62/third_party/tao/seq/LICENSE.epel7-c++11 2017-10-25 10:08:42.435573638 -0400 ++++ chromium-62.0.3202.62/third_party/tao/seq/LICENSE 2017-10-25 10:05:28.327204383 -0400 +@@ -0,0 +1,22 @@ ++The MIT License (MIT) ++ ++Copyright (c) 2015-2017 Daniel Frey ++ ++Permission is hereby granted, free of charge, to any person obtaining a copy ++of this software and associated documentation files (the "Software"), to deal ++in the Software without restriction, including without limitation the rights ++to use, copy, modify, merge, publish, distribute, sublicense, and/or sell ++copies of the Software, and to permit persons to whom the Software is ++furnished to do so, subject to the following conditions: ++ ++The above copyright notice and this permission notice shall be included in all ++copies or substantial portions of the Software. ++ ++THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR ++IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, ++FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE ++AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER ++LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, ++OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE ++SOFTWARE. ++ +diff -up chromium-62.0.3202.62/third_party/tao/seq/make_integer_range.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/make_integer_range.hpp +--- chromium-62.0.3202.62/third_party/tao/seq/make_integer_range.hpp.epel7-c++11 2017-10-25 10:08:42.435573638 -0400 ++++ chromium-62.0.3202.62/third_party/tao/seq/make_integer_range.hpp 2017-10-25 10:05:28.328204354 -0400 +@@ -0,0 +1,39 @@ ++// Copyright (c) 2015-2017 Daniel Frey ++// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ ++ ++#ifndef TAOCPP_SEQUENCES_INCLUDE_MAKE_INTEGER_RANGE_HPP ++#define TAOCPP_SEQUENCES_INCLUDE_MAKE_INTEGER_RANGE_HPP ++ ++#include "make_integer_sequence.hpp" ++ ++namespace tao ++{ ++ namespace seq ++ { ++ namespace impl ++ { ++ template< typename T, T Begin, T Steps, bool Increase, T Delta = T( 1 ), typename = make_integer_sequence< T, Steps > > ++ struct generate_range; ++ ++ template< typename T, T B, T S, T D, T... Ns > ++ struct generate_range< T, B, S, true, D, integer_sequence< T, Ns... > > ++ { ++ using type = integer_sequence< T, B + D * Ns... >; ++ }; ++ ++ template< typename T, T B, T S, T D, T... Ns > ++ struct generate_range< T, B, S, false, D, integer_sequence< T, Ns... > > ++ { ++ using type = integer_sequence< T, B - D * Ns... >; ++ }; ++ } ++ ++ template< typename T, T N, T M > ++ using make_integer_range = typename impl::generate_range< T, N, ( N <= M ) ? ( M - N ) : ( N - M ), ( N <= M ) >::type; ++ ++ template< std::size_t N, std::size_t M > ++ using make_index_range = make_integer_range< std::size_t, N, M >; ++ } ++} ++ ++#endif // TAOCPP_SEQUENCES_INCLUDE_MAKE_INTEGER_RANGE_HPP +diff -up chromium-62.0.3202.62/third_party/tao/seq/make_integer_sequence.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/make_integer_sequence.hpp +--- chromium-62.0.3202.62/third_party/tao/seq/make_integer_sequence.hpp.epel7-c++11 2017-10-25 10:08:42.436573608 -0400 ++++ chromium-62.0.3202.62/third_party/tao/seq/make_integer_sequence.hpp 2017-10-25 10:05:28.328204354 -0400 +@@ -0,0 +1,87 @@ ++// Copyright (c) 2015-2017 Daniel Frey ++// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ ++ ++#ifndef TAOCPP_SEQUENCES_INCLUDE_MAKE_INTEGER_SEQUENCE_HPP ++#define TAOCPP_SEQUENCES_INCLUDE_MAKE_INTEGER_SEQUENCE_HPP ++ ++#include ++#include ++#include ++ ++#include "config.hpp" ++#include "integer_sequence.hpp" ++ ++namespace tao ++{ ++ namespace seq ++ { ++ ++#ifdef TAOCPP_USE_STD_MAKE_INTEGER_SEQUENCE ++ ++ using std::make_integer_sequence; ++ using std::make_index_sequence; ++ using std::index_sequence_for; ++ ++#else ++ ++ namespace impl ++ { ++ // we have four instantiations of generate_sequence<>, independent of T or N. ++ // V is the current bit, E is the end marker - if true, this is the last step. ++ template< bool V, bool E > ++ struct generate_sequence; ++ ++ // last step: generate final integer sequence ++ template<> ++ struct generate_sequence< false, true > ++ { ++ template< typename T, T M, T N, std::size_t S, T... Ns > ++ using f = integer_sequence< T, Ns... >; ++ }; ++ ++ template<> ++ struct generate_sequence< true, true > ++ { ++ template< typename T, T M, T N, std::size_t S, T... Ns > ++ using f = integer_sequence< T, Ns..., S >; ++ }; ++ ++ // intermediate step: double existing values, append one more if V is set. ++ template<> ++ struct generate_sequence< false, false > ++ { ++ template< typename T, T M, T N, std::size_t S, T... Ns > ++ using f = typename generate_sequence< ( N & ( M / 2 ) ) != 0, ( M / 2 ) == 0 >::template f< T, M / 2, N, 2 * S, Ns..., ( Ns + S )... >; ++ }; ++ ++ template<> ++ struct generate_sequence< true, false > ++ { ++ template< typename T, T M, T N, std::size_t S, T... Ns > ++ using f = typename generate_sequence< ( N & ( M / 2 ) ) != 0, ( M / 2 ) == 0 >::template f< T, M / 2, N, 2 * S + 1, Ns..., ( Ns + S )..., 2 * S >; ++ }; ++ ++ // the final sequence per T/N should be memoized, it will probably be used multiple times. ++ // also checks the limit and starts the above generator properly. ++ template< typename T, T N > ++ struct memoize_sequence ++ { ++ static_assert( N < T( 1 << 20 ), "N too large" ); ++ using type = typename generate_sequence< false, false >::template f< T, ( N < T( 1 << 1 ) ) ? T( 1 << 1 ) : ( N < T( 1 << 2 ) ) ? T( 1 << 2 ) : ( N < T( 1 << 3 ) ) ? T( 1 << 3 ) : ( N < T( 1 << 4 ) ) ? T( 1 << 4 ) : ( N < T( 1 << 5 ) ) ? T( 1 << 5 ) : ( N < T( 1 << 6 ) ) ? T( 1 << 6 ) : ( N < T( 1 << 7 ) ) ? T( 1 << 7 ) : ( N < T( 1 << 8 ) ) ? T( 1 << 8 ) : ( N < T( 1 << 9 ) ) ? T( 1 << 9 ) : ( N < T( 1 << 10 ) ) ? T( 1 << 10 ) : T( 1 << 20 ), N, 0 >; ++ }; ++ } ++ ++ template< typename T, T N > ++ using make_integer_sequence = typename impl::memoize_sequence< T, N >::type; ++ ++ template< std::size_t N > ++ using make_index_sequence = make_integer_sequence< std::size_t, N >; ++ ++ template< typename... Ts > ++ using index_sequence_for = make_index_sequence< sizeof...( Ts ) >; ++ ++#endif ++ } ++} ++ ++#endif // TAOCPP_SEQUENCES_INCLUDE_MAKE_INTEGER_SEQUENCE_HPP +diff -up chromium-62.0.3202.62/third_party/tao/seq/map.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/map.hpp +--- chromium-62.0.3202.62/third_party/tao/seq/map.hpp.epel7-c++11 2017-10-25 10:08:42.437573579 -0400 ++++ chromium-62.0.3202.62/third_party/tao/seq/map.hpp 2017-10-25 10:05:28.328204354 -0400 +@@ -0,0 +1,31 @@ ++// Copyright (c) 2015-2017 Daniel Frey ++// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ ++ ++#ifndef TAOCPP_SEQUENCES_INCLUDE_MAP_HPP ++#define TAOCPP_SEQUENCES_INCLUDE_MAP_HPP ++ ++#include ++#include ++ ++#include "integer_sequence.hpp" ++#include "select.hpp" ++ ++namespace tao ++{ ++ namespace seq ++ { ++ template< typename, typename > ++ struct map; ++ ++ template< std::size_t... Ns, typename M > ++ struct map< index_sequence< Ns... >, M > ++ { ++ using type = integer_sequence< typename M::value_type, select< Ns, M >::value... >; ++ }; ++ ++ template< typename S, typename M > ++ using map_t = typename map< S, M >::type; ++ } ++} ++ ++#endif // TAOCPP_SEQUENCES_INCLUDE_MAP_HPP +diff -up chromium-62.0.3202.62/third_party/tao/seq/max.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/max.hpp +--- chromium-62.0.3202.62/third_party/tao/seq/max.hpp.epel7-c++11 2017-10-25 10:08:42.437573579 -0400 ++++ chromium-62.0.3202.62/third_party/tao/seq/max.hpp 2017-10-25 10:05:28.328204354 -0400 +@@ -0,0 +1,35 @@ ++// Copyright (c) 2015-2017 Daniel Frey ++// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ ++ ++#ifndef TAOCPP_SEQUENCES_INCLUDE_MAX_HPP ++#define TAOCPP_SEQUENCES_INCLUDE_MAX_HPP ++ ++#include "fold.hpp" ++ ++#include ++ ++namespace tao ++{ ++ namespace seq ++ { ++ namespace impl ++ { ++ template< typename T, T A, T B > ++ using max = std::integral_constant< T, ( ( A > B ) ? A : B ) >; ++ } ++ ++ template< typename T, T... Ns > ++ struct max ++ : fold< impl::max, T, Ns... > ++ { ++ }; ++ ++ template< typename T, T... Ns > ++ struct max< integer_sequence< T, Ns... > > ++ : max< T, Ns... > ++ { ++ }; ++ } ++} ++ ++#endif // TAOCPP_SEQUENCES_INCLUDE_MAX_HPP +diff -up chromium-62.0.3202.62/third_party/tao/seq/min.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/min.hpp +--- chromium-62.0.3202.62/third_party/tao/seq/min.hpp.epel7-c++11 2017-10-25 10:08:42.438573550 -0400 ++++ chromium-62.0.3202.62/third_party/tao/seq/min.hpp 2017-10-25 10:05:28.328204354 -0400 +@@ -0,0 +1,35 @@ ++// Copyright (c) 2015-2017 Daniel Frey ++// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ ++ ++#ifndef TAOCPP_SEQUENCES_INCLUDE_MIN_HPP ++#define TAOCPP_SEQUENCES_INCLUDE_MIN_HPP ++ ++#include "fold.hpp" ++ ++#include ++ ++namespace tao ++{ ++ namespace seq ++ { ++ namespace impl ++ { ++ template< typename T, T A, T B > ++ using min = std::integral_constant< T, ( ( A < B ) ? A : B ) >; ++ } ++ ++ template< typename T, T... Ns > ++ struct min ++ : fold< impl::min, T, Ns... > ++ { ++ }; ++ ++ template< typename T, T... Ns > ++ struct min< integer_sequence< T, Ns... > > ++ : min< T, Ns... > ++ { ++ }; ++ } ++} ++ ++#endif // TAOCPP_SEQUENCES_INCLUDE_MIN_HPP +diff -up chromium-62.0.3202.62/third_party/tao/seq/minus.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/minus.hpp +--- chromium-62.0.3202.62/third_party/tao/seq/minus.hpp.epel7-c++11 2017-10-25 10:08:42.438573550 -0400 ++++ chromium-62.0.3202.62/third_party/tao/seq/minus.hpp 2017-10-25 10:05:28.328204354 -0400 +@@ -0,0 +1,29 @@ ++// Copyright (c) 2015-2017 Daniel Frey ++// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ ++ ++#ifndef TAOCPP_SEQUENCES_INCLUDE_MINUS_HPP ++#define TAOCPP_SEQUENCES_INCLUDE_MINUS_HPP ++ ++#include ++ ++#include "zip.hpp" ++ ++namespace tao ++{ ++ namespace seq ++ { ++ namespace impl ++ { ++ template< typename T, T A, T B > ++ using minus = std::integral_constant< T, A - B >; ++ } ++ ++ template< typename A, typename B > ++ using minus = zip< impl::minus, A, B >; ++ ++ template< typename A, typename B > ++ using minus_t = typename minus< A, B >::type; ++ } ++} ++ ++#endif // TAOCPP_SEQUENCES_INCLUDE_MINUS_HPP +diff -up chromium-62.0.3202.62/third_party/tao/seq/partial_sum.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/partial_sum.hpp +--- chromium-62.0.3202.62/third_party/tao/seq/partial_sum.hpp.epel7-c++11 2017-10-25 10:08:42.439573522 -0400 ++++ chromium-62.0.3202.62/third_party/tao/seq/partial_sum.hpp 2017-10-25 10:05:28.328204354 -0400 +@@ -0,0 +1,44 @@ ++// Copyright (c) 2015-2017 Daniel Frey ++// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ ++ ++#ifndef TAOCPP_SEQUENCES_INCLUDE_PARTIAL_SUM_HPP ++#define TAOCPP_SEQUENCES_INCLUDE_PARTIAL_SUM_HPP ++ ++#include ++#include ++ ++#include "make_integer_sequence.hpp" ++#include "sum.hpp" ++ ++namespace tao ++{ ++ namespace seq ++ { ++ namespace impl ++ { ++ template< std::size_t, typename S, typename = make_index_sequence< S::size() > > ++ struct partial_sum; ++ ++ template< std::size_t I, typename T, T... Ns, std::size_t... Is > ++ struct partial_sum< I, integer_sequence< T, Ns... >, index_sequence< Is... > > ++ : seq::sum< T, ( ( Is < I ) ? Ns : 0 )... > ++ { ++ static_assert( I <= sizeof...( Is ), "tao::seq::partial_sum: I is out of range" ); ++ }; ++ } ++ ++ template< std::size_t I, typename T, T... Ns > ++ struct partial_sum ++ : impl::partial_sum< I, integer_sequence< T, Ns... > > ++ { ++ }; ++ ++ template< std::size_t I, typename T, T... Ns > ++ struct partial_sum< I, integer_sequence< T, Ns... > > ++ : impl::partial_sum< I, integer_sequence< T, Ns... > > ++ { ++ }; ++ } ++} ++ ++#endif // TAOCPP_SEQUENCES_INCLUDE_PARTIAL_SUM_HPP +diff -up chromium-62.0.3202.62/third_party/tao/seq/plus.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/plus.hpp +--- chromium-62.0.3202.62/third_party/tao/seq/plus.hpp.epel7-c++11 2017-10-25 10:08:42.439573522 -0400 ++++ chromium-62.0.3202.62/third_party/tao/seq/plus.hpp 2017-10-25 10:05:28.328204354 -0400 +@@ -0,0 +1,29 @@ ++// Copyright (c) 2015-2017 Daniel Frey ++// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ ++ ++#ifndef TAOCPP_SEQUENCES_INCLUDE_PLUS_HPP ++#define TAOCPP_SEQUENCES_INCLUDE_PLUS_HPP ++ ++#include ++ ++#include "zip.hpp" ++ ++namespace tao ++{ ++ namespace seq ++ { ++ namespace impl ++ { ++ template< typename T, T A, T B > ++ using plus = std::integral_constant< T, A + B >; ++ } ++ ++ template< typename A, typename B > ++ using plus = zip< impl::plus, A, B >; ++ ++ template< typename A, typename B > ++ using plus_t = typename plus< A, B >::type; ++ } ++} ++ ++#endif // TAOCPP_SEQUENCES_INCLUDE_PLUS_HPP +diff -up chromium-62.0.3202.62/third_party/tao/seq/README.chromium.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/README.chromium +--- chromium-62.0.3202.62/third_party/tao/seq/README.chromium.epel7-c++11 2017-10-25 10:08:42.440573492 -0400 ++++ chromium-62.0.3202.62/third_party/tao/seq/README.chromium 2017-10-25 10:08:18.341272571 -0400 +@@ -0,0 +1,15 @@ ++Name: The Art of C++ / Sequences ++Short Name: tao/seq ++URL: https://github.com/taocpp/sequences ++Version: 5fd5378 ++License: MIT ++License File: LICENSE ++Security Critical: No ++ ++Description: ++Source archive: ++ https://github.com/taocpp/sequences ++ ++The Art of C++ / Sequences is a zero-dependency C++11 header-only library that provides efficient ++algorithms to generate and work on variadic templates and std::integer_sequence. ++We use it to support gcc 4.8. +diff -up chromium-62.0.3202.62/third_party/tao/seq/README.md.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/README.md +--- chromium-62.0.3202.62/third_party/tao/seq/README.md.epel7-c++11 2017-10-25 10:08:42.441573463 -0400 ++++ chromium-62.0.3202.62/third_party/tao/seq/README.md 2017-10-25 10:05:28.327204383 -0400 +@@ -0,0 +1,282 @@ ++# The Art of C++ / Sequences ++ ++[![Release](https://img.shields.io/github/release/taocpp/sequences.svg)](https://github.com/taocpp/sequences/releases/latest) ++[![TravisCI](https://travis-ci.org/taocpp/sequences.svg)](https://travis-ci.org/taocpp/sequences) ++[![AppVeyor](https://ci.appveyor.com/api/projects/status/github/taocpp/sequences?svg=true)](https://ci.appveyor.com/project/taocpp/sequences) ++ ++The Art of C++ / Sequences is a zero-dependency C++11 header-only library that provides efficient algorithms to generate and work on variadic templates and [`std::integer_sequence`](http://en.cppreference.com/w/cpp/utility/integer_sequence). ++ ++## Compatibility ++ ++* Requires C++11 or newer. ++* Tested with GCC 4.8+, Clang 3.4+, Xcode 6+ and Visual Studio 2017. ++ ++The following compilers have bugs which prevent our code from compiling: ++ ++* Clang 4.0. ++* Xcode 7 and 8 when used with C++14 or higher. ++* Visual Studio 2015. ++ ++(If you know how to fix those, please let us know) ++ ++Part of the library might still work, e.g. Clang 4.0 only has problems with `zip` and `fold` (and everything based on it). ++ ++## Provided algorithms and examples ++ ++* All provided templates are in the nested namespace `tao::seq`. ++* All templates don't use C++14 features, therefore being compatible with C++11. Sometimes, C++14/C++17 features are used conditionally, taking advantage of newer language features when available but providing C++11-compatible implementations otherwise. ++* All templates use `tao::seq::integer_sequence`, etc. internally, therefore being compatible with C++11. ++* All templates use `tao::seq::make_integer_sequence`, etc. internally, therefore using the most scalable solution available. ++ ++#### Header `tao/seq/integer_sequence.hpp` ++ ++Provides: ++ ++* `integer_sequence< typename T, T N >` ++* `index_sequence< std::size_t N >` ++ ++Notes: ++ ++* When available (C++14 or newer), the above are type-aliases for `std::integer_sequence` and `std::index_sequence`. ++ ++#### Header `tao/seq/make_integer_sequence.hpp` ++ ++Efficient versions of sequence generators. ++ ++* `make_integer_sequence< typename T, T N >` ++* `make_index_sequence< std::size_t N >` ++* `index_sequence_for< typename... Ts >` ++ ++Examples: ++ ++* `make_integer_sequence` ➙ `integer_sequence` ++* `make_integer_sequence` ➙ `integer_sequence` ++* `make_integer_sequence` ➙ `integer_sequence` ++* `make_index_sequence<0>` ➙ `index_sequence<>` ++* `make_index_sequence<1>` ➙ `index_sequence<0>` ++* `make_index_sequence<5>` ➙ `index_sequence<0,1,2,3,4>` ++* `index_sequence_for` ➙ `index_sequence<0,1,2>` ++ ++Notes: ++ ++libc++ already has very efficient versions for the above, so they are pulled in with a using-declaration. Only if we don't know if the STL's versions are at least O(log N) we provide our own implementations. ++ ++Our own implementation has O(log N) instantiation depth. This allows for very large sequences without the need to increase the compiler's default instantiation depth limits. For example, GCC and Clang generate `index_sequence<10000>` in ~0.15s (on my machine, of course). The standard library version from libstdc++, when trying to create `index_sequence<5000>` and with its O(N) implementation, requires ~30s, >3GB of RAM and `-ftemplate-depth=5100`. ++ ++#### Header `tao/seq/make_integer_range.hpp` ++ ++Generate half-open ranges of integers. ++ ++* `make_integer_range< typename T, T N, T M >` ++* `make_index_range< std::size_t N, std::size_t M >` ++ ++Examples: ++ ++* `make_integer_range` ➙ `integer_sequence` ++* `make_integer_range` ➙ `integer_sequence` ++* `make_integer_sequence` ➙ `integer_sequence` ++* `make_index_range<5,5>` ➙ `index_sequence<>` ++* `make_index_range<2,5>` ➙ `index_sequence<2,3,4>` ++ ++#### Header `tao/seq/sum.hpp` ++ ++Integral constant to provide the sum of `Ns`. ++ ++* `sum< typename T, T... Ns >` ++* `sum< typename S >` ++ ++Examples: ++ ++* `sum::value` ➙ `9` ++* `sum>::value` ➙ `10` ++ ++#### Header `tao/seq/partial_sum.hpp` ++ ++Integral constant to provide the sum of the first `I` elements of `Ns`. ++ ++* `partial_sum< std::size_t I, typename T, T... Ns >` ++* `partial_sum< std::size_t I, typename S >` ++ ++Examples: ++ ++* `partial_sum<0,int,1,4,3,1>::value` ➙ `0` ++* `partial_sum<2,int,1,4,3,1>::value` ➙ `5` ++* `partial_sum<4,make_index_sequence<5>>::value` ➙ `6` ++ ++#### Header `tao/seq/exclusive_scan.hpp` ++ ++Provides a sequence with the exclusive scan of the input sequence. ++ ++* `exclusive_scan_t< typename T, T... Ns >` ++* `exclusive_scan_t< typename S >` ++ ++Examples: ++ ++* `exclusive_scan_t` ➙ `integer_sequence` ++ ++#### Header `tao/seq/inclusive_scan.hpp` ++ ++Provides a sequence with the inclusive scan of the input sequence. ++ ++* `inclusive_scan_t< typename T, T... Ns >` ++* `inclusive_scan_t< typename S >` ++ ++Examples: ++ ++* `inclusive_scan_t` ➙ `integer_sequence` ++ ++#### Header `tao/seq/zip.hpp` ++ ++Applies a binary operation to elements from two sequences. ++ ++* `zip_t< template< typename U, U, U > class OP, typename L, typename R >` ++ ++Notes: ++ ++Both sequences may have a different element type, the resulting sequence's type is calculated with `std::common_type_t`. ++ ++#### Header `tao/seq/plus.hpp` ++ ++Provides a sequence which is the element-wise sum of its input sequences. ++ ++* `plus_t< typename L, typename R >` ++ ++Notes: ++ ++Both sequences may have a different element type, the resulting sequence's type is calculated with `std::common_type_t`. ++ ++Examples: ++ ++* `using A = index_sequence<1,4,0,3,1>` ++* `using B = make_index_sequence<5>` ++* `plus_t` ➙ `index_sequence<1,5,2,6,5>` ++ ++#### Header `tao/seq/minus.hpp` ++ ++Provides a sequence which is the element-wise sum of its input sequences. ++ ++* `minus_t< typename L, typename R >` ++ ++Notes: ++ ++Both sequences may have a different element type, the resulting sequence's type is calculated with `std::common_type_t`. ++ ++Examples: ++ ++* `using A = integer_sequence` ++* `using B = integer_sequence` ++* `minus_t` ➙ `integer_sequence` ++* `minus_t` ➙ `integer_sequence` ++ ++#### Header `tao/seq/head.hpp` ++ ++Integral constant to provide the first element of a non-empty sequence. ++ ++* `head< typename T, T... >` ++* `head< typename S >` ++ ++#### Header `tao/seq/tail.hpp` ++ ++Removed the first element of a non-empty sequence. ++ ++* `tail_t< typename T, T... >` ++* `tail_t< typename S >` ++ ++#### Header `tao/seq/select.hpp` ++ ++Integral constant to provide the `I`th element of a non-empty sequence. ++ ++* `select< std::size_t I, typename T, T... >` ++* `select< std::size_t I, typename S >` ++ ++#### Header `tao/seq/concatenate.hpp` ++ ++Concatenate the values. ++ ++* `concatenate_t< typename T, typename U >` ++ ++Notes: ++ ++Both sequences may have a different element type, the resulting sequence's type is calculated with `std::common_type_t`. ++ ++#### Header `tao/seq/fold.hpp` ++ ++Integral constant calculated by "folding" a sequence of values with a given binary operation. ++ ++* `fold< template< typename U, U, U > class OP, typename T, T... >` ++* `fold< template< typename U, U, U > class OP, typename S >` ++ ++#### Header `tao/seq/min.hpp` ++ ++Integral constant to provide the minimum value. ++ ++* `min< typename T, T... >` ++* `min< typename S >` ++ ++Notes: ++ ++Implemented with `fold` like this: ++ ++ namespace impl ++ { ++ template< typename T, T A, T B > ++ using min = std::integral_constant< T, ( ( A < B ) ? A : B ) >; ++ } ++ ++ template< typename T, T... Ns > ++ using min = fold< impl::min, T, Ns... >; ++ ++#### Header `tao/seq/max.hpp` ++ ++Integral constant to provide the maximum value. ++ ++* `max< typename T, T... >` ++* `max< typename S >` ++ ++#### Header `tao/seq/map.hpp` ++ ++Map a sequence of indices to a sequence of values. ++ ++* `map_t< typename I, typename M >` ++ ++Examples: ++ ++* `using I = index_sequence<1,0,3,2,1,1,3>` ++* `using M = integer_sequence` ++* `map_t` ➙ `integer_sequence` ++ ++#### Header `tao/seq/is_all.hpp` ++ ++Integral constant which is true if all boolean parameters are true (logical and). ++ ++* `is_all< bool... >` ++ ++Examples: ++ ++* `is_all::value` ➙ `true` ++* `is_all::value` ➙ `false` ++* `is_all<>::value` ➙ `true` ++ ++#### Header `tao/seq/is_any.hpp` ++ ++Integral constant which is true if any boolean parameter is true (logical or). ++ ++* `is_any< bool... >` ++ ++Examples: ++ ++* `is_any::value` ➙ `true` ++* `is_any::value` ➙ `false` ++* `is_any<>::value` ➙ `false` ++ ++## License ++ ++The Art of C++ is certified [Open Source](http://www.opensource.org/docs/definition.html) software. It may be used for any purpose, including commercial purposes, at absolutely no cost. It is distributed under the terms of the [MIT license](http://www.opensource.org/licenses/mit-license.html) reproduced here. ++ ++> Copyright (c) 2015-2017 Daniel Frey ++> ++> Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: ++> ++> The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. ++> ++> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +diff -up chromium-62.0.3202.62/third_party/tao/seq/scale.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/scale.hpp +--- chromium-62.0.3202.62/third_party/tao/seq/scale.hpp.epel7-c++11 2017-10-25 10:08:42.441573463 -0400 ++++ chromium-62.0.3202.62/third_party/tao/seq/scale.hpp 2017-10-25 10:05:28.328204354 -0400 +@@ -0,0 +1,66 @@ ++// Copyright (c) 2015-2017 Daniel Frey ++// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ ++ ++#ifndef TAOCPP_SEQUENCES_INCLUDE_SCALE_HPP ++#define TAOCPP_SEQUENCES_INCLUDE_SCALE_HPP ++ ++#include "integer_sequence.hpp" ++ ++namespace tao ++{ ++ namespace seq ++ { ++ namespace impl ++ { ++ template< typename T > ++ struct is_integer_sequence : std::false_type ++ { ++ }; ++ ++ template< typename T, T... Ns > ++ struct is_integer_sequence< integer_sequence< T, Ns... > > : std::true_type ++ { ++ }; ++ ++ template< typename T > ++ struct element_type ++ { ++ using type = T; ++ }; ++ ++ template< typename T, T... Ns > ++ struct element_type< integer_sequence< T, Ns... > > ++ { ++ using type = T; ++ }; ++ ++ template< bool, typename > ++ struct scale ++ { ++ template< typename T, T S, T... Ns > ++ struct impl ++ { ++ using type = integer_sequence< T, S * Ns... >; ++ }; ++ }; ++ ++ template< typename T, T... Ns > ++ struct scale< true, integer_sequence< T, Ns... > > ++ { ++ template< typename, T S > ++ struct impl ++ { ++ using type = integer_sequence< T, S * Ns... >; ++ }; ++ }; ++ } ++ ++ template< typename T, typename impl::element_type< T >::type S, typename impl::element_type< T >::type... Ns > ++ using scale = typename impl::scale< impl::is_integer_sequence< T >::value, T >::template impl< T, S, Ns... >; ++ ++ template< typename T, typename impl::element_type< T >::type S, typename impl::element_type< T >::type... Ns > ++ using scale_t = typename scale< T, S, Ns... >::type; ++ } ++} ++ ++#endif // TAOCPP_SEQUENCES_INCLUDE_SCALE_HPP +diff -up chromium-62.0.3202.62/third_party/tao/seq/select.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/select.hpp +--- chromium-62.0.3202.62/third_party/tao/seq/select.hpp.epel7-c++11 2017-10-25 10:08:42.442573435 -0400 ++++ chromium-62.0.3202.62/third_party/tao/seq/select.hpp 2017-10-25 10:05:28.328204354 -0400 +@@ -0,0 +1,31 @@ ++// Copyright (c) 2015-2017 Daniel Frey ++// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ ++ ++#ifndef TAOCPP_SEQUENCES_INCLUDE_SELECT_HPP ++#define TAOCPP_SEQUENCES_INCLUDE_SELECT_HPP ++ ++#include ++#include ++ ++#include "at_index.hpp" ++#include "integer_sequence.hpp" ++ ++namespace tao ++{ ++ namespace seq ++ { ++ template< std::size_t I, typename T, T... Ns > ++ struct select ++ : at_index_t< I, std::integral_constant< T, Ns >... > ++ { ++ }; ++ ++ template< std::size_t I, typename T, T... Ns > ++ struct select< I, integer_sequence< T, Ns... > > ++ : select< I, T, Ns... > ++ { ++ }; ++ } ++} ++ ++#endif // TAOCPP_SEQUENCES_INCLUDE_SELECT_HPP +diff -up chromium-62.0.3202.62/third_party/tao/seq/sum.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/sum.hpp +--- chromium-62.0.3202.62/third_party/tao/seq/sum.hpp.epel7-c++11 2017-10-25 10:08:42.443573405 -0400 ++++ chromium-62.0.3202.62/third_party/tao/seq/sum.hpp 2017-10-25 10:05:28.328204354 -0400 +@@ -0,0 +1,79 @@ ++// Copyright (c) 2015-2017 Daniel Frey ++// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ ++ ++#ifndef TAOCPP_SEQUENCES_INCLUDE_SUM_HPP ++#define TAOCPP_SEQUENCES_INCLUDE_SUM_HPP ++ ++#include ++#include ++ ++#include "config.hpp" ++#include "integer_sequence.hpp" ++ ++#ifndef TAOCPP_FOLD_EXPRESSIONS ++#include "make_integer_sequence.hpp" ++#include ++#endif ++ ++namespace tao ++{ ++ namespace seq ++ { ++ ++#ifdef TAOCPP_FOLD_EXPRESSIONS ++ ++ template< typename T, T... Ns > ++ struct sum ++ : std::integral_constant< T, ( Ns + ... + T( 0 ) ) > ++ { ++ }; ++ ++#else ++ ++ namespace impl ++ { ++ template< std::size_t, std::size_t N > ++ struct chars ++ { ++ char dummy[ N + 1 ]; ++ }; ++ ++ template< typename, std::size_t... > ++ struct collector; ++ ++ template< std::size_t... Is, std::size_t... Ns > ++ struct collector< index_sequence< Is... >, Ns... > ++ : chars< Is, Ns >... ++ { ++ }; ++ ++ template< bool, std::size_t N, typename T, T... Ns > ++ struct sum ++ { ++ using type = std::integral_constant< T, T( sizeof( collector< make_index_sequence< N >, ( ( Ns > 0 ) ? Ns : 0 )... > ) - N ) - T( sizeof( collector< make_index_sequence< N >, ( ( Ns < 0 ) ? -Ns : 0 )... > ) - N ) >; ++ }; ++ ++ template< std::size_t N, typename T, T... Ns > ++ struct sum< true, N, T, Ns... > ++ { ++ using type = std::integral_constant< T, T( sizeof( collector< make_index_sequence< N >, ( ( Ns > 0 ) ? Ns : 0 )... > ) - N ) >; ++ }; ++ } ++ ++ template< typename T, T... Ns > ++ struct sum ++ : impl::sum< std::is_unsigned< T >::value, sizeof...( Ns ) + 1, T, Ns..., 0 >::type ++ { ++ }; ++ ++#endif ++ ++ template< typename T, T... Ns > ++ struct sum< integer_sequence< T, Ns... > > ++ : sum< T, Ns... > ++ { ++ }; ++ } ++} ++ ++#endif // TAOCPP_SEQUENCES_INCLUDE_SUM_HPP +diff -up chromium-62.0.3202.62/third_party/tao/seq/tail.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/tail.hpp +--- chromium-62.0.3202.62/third_party/tao/seq/tail.hpp.epel7-c++11 2017-10-25 10:08:42.444573376 -0400 ++++ chromium-62.0.3202.62/third_party/tao/seq/tail.hpp 2017-10-25 10:05:28.329204325 -0400 +@@ -0,0 +1,35 @@ ++// Copyright (c) 2015-2017 Daniel Frey ++// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ ++ ++#ifndef TAOCPP_SEQUENCES_INCLUDE_TAIL_HPP ++#define TAOCPP_SEQUENCES_INCLUDE_TAIL_HPP ++ ++#include ++ ++#include "integer_sequence.hpp" ++ ++namespace tao ++{ ++ namespace seq ++ { ++ template< typename T, T... Ns > ++ struct tail; ++ ++ template< typename T, T N, T... Ns > ++ struct tail< T, N, Ns... > ++ { ++ using type = integer_sequence< T, Ns... >; ++ }; ++ ++ template< typename T, T... Ns > ++ struct tail< integer_sequence< T, Ns... > > ++ : tail< T, Ns... > ++ { ++ }; ++ ++ template< typename T, T... Ns > ++ using tail_t = typename tail< T, Ns... >::type; ++ } ++} ++ ++#endif // TAOCPP_SEQUENCES_INCLUDE_TAIL_HPP +diff -up chromium-62.0.3202.62/third_party/tao/seq/type_by_index.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/type_by_index.hpp +--- chromium-62.0.3202.62/third_party/tao/seq/type_by_index.hpp.epel7-c++11 2017-10-25 10:08:42.445573347 -0400 ++++ chromium-62.0.3202.62/third_party/tao/seq/type_by_index.hpp 2017-10-25 10:05:28.329204325 -0400 +@@ -0,0 +1,57 @@ ++// Copyright (c) 2015-2017 Daniel Frey ++// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ ++ ++#ifndef TAOCPP_SEQUENCES_INCLUDE_TYPE_BY_INDEX_HPP ++#define TAOCPP_SEQUENCES_INCLUDE_TYPE_BY_INDEX_HPP ++ ++#include ++#include ++ ++#include "make_integer_sequence.hpp" ++ ++namespace tao ++{ ++ namespace seq ++ { ++ // based on http://stackoverflow.com/questions/18942322 ++ ++ namespace impl ++ { ++ template< std::size_t > ++ struct any ++ { ++ any( ... ); ++ }; ++ ++ template< typename > ++ struct wrapper; ++ ++ template< typename > ++ struct unwrap; ++ ++ template< typename T > ++ struct unwrap< wrapper< T > > ++ { ++ using type = T; ++ }; ++ ++ template< typename > ++ struct get_nth; ++ ++ template< std::size_t... Is > ++ struct get_nth< index_sequence< Is... > > ++ { ++ template< typename T > ++ static T deduce( any< Is & 0 >..., T*, ... ); ++ }; ++ } ++ ++ template< std::size_t I, typename... Ts > ++ using type_by_index = impl::unwrap< decltype( impl::get_nth< make_index_sequence< I > >::deduce( std::declval< impl::wrapper< Ts >* >()... ) ) >; ++ ++ template< std::size_t I, typename... Ts > ++ using type_by_index_t = typename type_by_index< I, Ts... >::type; ++ } ++} ++ ++#endif // TAOCPP_SEQUENCES_INCLUDE_TYPE_BY_INDEX_HPP +diff -up chromium-62.0.3202.62/third_party/tao/seq/zip.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/zip.hpp +--- chromium-62.0.3202.62/third_party/tao/seq/zip.hpp.epel7-c++11 2017-10-25 10:08:42.446573319 -0400 ++++ chromium-62.0.3202.62/third_party/tao/seq/zip.hpp 2017-10-25 10:05:28.329204325 -0400 +@@ -0,0 +1,30 @@ ++// Copyright (c) 2015-2017 Daniel Frey ++// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ ++ ++#ifndef TAOCPP_SEQUENCES_INCLUDE_ZIP_HPP ++#define TAOCPP_SEQUENCES_INCLUDE_ZIP_HPP ++ ++#include ++ ++#include "integer_sequence.hpp" ++ ++namespace tao ++{ ++ namespace seq ++ { ++ template< template< typename U, U, U > class, typename, typename > ++ struct zip; ++ ++ template< template< typename U, U, U > class OP, typename TA, TA... As, typename TB, TB... Bs > ++ struct zip< OP, integer_sequence< TA, As... >, integer_sequence< TB, Bs... > > ++ { ++ using CT = typename std::common_type< TA, TB >::type; ++ using type = integer_sequence< CT, OP< CT, As, Bs >::value... >; ++ }; ++ ++ template< template< typename U, U, U > class OP, typename A, typename B > ++ using zip_t = typename zip< OP, A, B >::type; ++ } ++} ++ ++#endif // TAOCPP_SEQUENCES_INCLUDE_ZIP_HPP +diff -up chromium-62.0.3202.62/tools/ipc_fuzzer/fuzzer/fuzzer.cc.epel7-c++11 chromium-62.0.3202.62/tools/ipc_fuzzer/fuzzer/fuzzer.cc +--- chromium-62.0.3202.62/tools/ipc_fuzzer/fuzzer/fuzzer.cc.epel7-c++11 2017-10-25 10:18:10.415133815 -0400 ++++ chromium-62.0.3202.62/tools/ipc_fuzzer/fuzzer/fuzzer.cc 2017-10-25 10:18:58.888807178 -0400 +@@ -23,6 +23,7 @@ + #include "tools/ipc_fuzzer/fuzzer/rand_util.h" + #include "tools/ipc_fuzzer/message_lib/message_cracker.h" + #include "tools/ipc_fuzzer/message_lib/message_file.h" ++#include "third_party/tao/seq/integer_sequence.hpp" + + #if defined(OS_POSIX) + #include +@@ -1680,14 +1681,14 @@ class FuzzerHelper, void>; + + static std::unique_ptr Fuzz(IPC::Message* msg, Fuzzer* fuzzer) { +- return FuzzImpl(msg, fuzzer, std::index_sequence_for()); ++ return FuzzImpl(msg, fuzzer, tao::seq::index_sequence_for()); + } + + private: + template + static std::unique_ptr FuzzImpl(IPC::Message* msg, + Fuzzer* fuzzer, +- std::index_sequence) { ++ tao::seq::index_sequence) { + typename Message::Param p; + if (msg) { + Message::Read(static_cast(msg), &p); +@@ -1707,14 +1708,14 @@ class FuzzerHelper< + using Message = IPC::MessageT, std::tuple>; + + static std::unique_ptr Fuzz(IPC::Message* msg, Fuzzer* fuzzer) { +- return FuzzImpl(msg, fuzzer, std::index_sequence_for()); ++ return FuzzImpl(msg, fuzzer, tao::seq::index_sequence_for()); + } + + private: + template + static std::unique_ptr FuzzImpl(IPC::Message* msg, + Fuzzer* fuzzer, +- std::index_sequence) { ++ tao::seq::index_sequence) { + typename Message::SendParam p; + Message* real_msg = static_cast(msg); + std::unique_ptr new_msg; diff --git a/chromium.spec b/chromium.spec index 14d6ef4..da74cc5 100644 --- a/chromium.spec +++ b/chromium.spec @@ -218,7 +218,7 @@ Patch63: chromium-gn-bootstrap-r17.patch Patch64: chromium-62.0.3202.62-correct-cplusplus-check.patch # epel7 does not know about c++14 Patch65: chromium-62.0.3202.62-epel7-noc++14.patch -Patch66: chromium-62.0.3202.62-epel7-c++11-decay-enable_if-type.patch +Patch66: chromium-62.0.3202.62-epel7-c++11-support.patch ### Chromium Tests Patches ### Patch100: chromium-46.0.2490.86-use_system_opus.patch @@ -990,6 +990,10 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/swiftshader/third_party/subzero' \ 'third_party/swiftshader/third_party/LLVM' \ 'third_party/swiftshader/third_party/llvm-subzero' \ +%if 0%{?rhel} == 7 + 'third_party/tao' \ + 'third_party/tao/seq' \ +%endif 'third_party/tcmalloc' \ 'third_party/usb_ids' \ 'third_party/usrsctp' \ From 4b560f74014f2dfab00e81ba329a0a0849188962 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 27 Oct 2017 11:02:21 -0400 Subject: [PATCH 0155/1449] 62.0.3202.75 --- .gitignore | 1 + ...ium-62.0.3202.62-epel7-c++11-support.patch | 1980 ----------------- chromium-62.0.3202.62-epel7-noc++14.patch | 12 - chromium.spec | 33 +- sources | 2 +- 5 files changed, 20 insertions(+), 2008 deletions(-) delete mode 100644 chromium-62.0.3202.62-epel7-c++11-support.patch delete mode 100644 chromium-62.0.3202.62-epel7-noc++14.patch diff --git a/.gitignore b/.gitignore index 33c625a..da86396 100644 --- a/.gitignore +++ b/.gitignore @@ -31,3 +31,4 @@ /chromium-60.0.3112.113.tar.xz /chromium-61.0.3163.79-clean.tar.xz /chromium-61.0.3163.100-clean.tar.xz +/chromium-62.0.3202.75-clean.tar.xz diff --git a/chromium-62.0.3202.62-epel7-c++11-support.patch b/chromium-62.0.3202.62-epel7-c++11-support.patch deleted file mode 100644 index eb4339a..0000000 --- a/chromium-62.0.3202.62-epel7-c++11-support.patch +++ /dev/null @@ -1,1980 +0,0 @@ -diff -up chromium-62.0.3202.62/base/bind_helpers.h.epel7-c++11 chromium-62.0.3202.62/base/bind_helpers.h ---- chromium-62.0.3202.62/base/bind_helpers.h.epel7-c++11 2017-10-25 08:50:15.692276363 -0400 -+++ chromium-62.0.3202.62/base/bind_helpers.h 2017-10-25 09:12:15.889484145 -0400 -@@ -282,7 +282,7 @@ class PassedWrapper { - }; - - template --using Unwrapper = BindUnwrapTraits>; -+using Unwrapper = BindUnwrapTraits::type>; - - template - auto Unwrap(T&& o) -> decltype(Unwrapper::Unwrap(std::forward(o))) { -@@ -438,7 +438,7 @@ static inline internal::OwnedWrapper - // Both versions of Passed() prevent T from being an lvalue reference. The first - // via use of enable_if, and the second takes a T* which will not bind to T&. - template ::value>* = nullptr> -+ typename std::enable_if::value>::type* = nullptr> - static inline internal::PassedWrapper Passed(T&& scoper) { - return internal::PassedWrapper(std::move(scoper)); - } -@@ -537,9 +537,9 @@ template , -- std::enable_if_t< -+ typename std::enable_if< - internal::IsWeakMethod::is_method, -- BoundArgs...>::value>> { -+ BoundArgs...>::value>::type> { - static constexpr bool is_cancellable = true; - - template -diff -up chromium-62.0.3202.62/base/bind.h.epel7-c++11 chromium-62.0.3202.62/base/bind.h ---- chromium-62.0.3202.62/base/bind.h.epel7-c++11 2017-10-25 08:55:22.603877014 -0400 -+++ chromium-62.0.3202.62/base/bind.h 2017-10-25 10:12:28.753008563 -0400 -@@ -7,6 +7,8 @@ - - #include - -+#include "third_party/tao/seq/integer_sequence.hpp" -+#include "third_party/tao/seq/make_integer_sequence.hpp" - #include "base/bind_internal.h" - - // ----------------------------------------------------------------------------- -@@ -53,7 +55,7 @@ struct AssertConstructible { - // reference with repeating callbacks--is used instead of base::Passed(). - static_assert( - param_is_forwardable || -- !std::is_constructible&&>::value, -+ !std::is_constructible::type&&>::value, - "Bound argument |i| is move-only but will be forwarded by copy. " - "Ensure |Arg| is bound using base::Passed(), not std::move()."); - static_assert( -@@ -64,7 +66,7 @@ struct AssertConstructible { - static constexpr bool arg_is_storable = - std::is_constructible::value; - static_assert(arg_is_storable || -- !std::is_constructible&&>::value, -+ !std::is_constructible::type&&>::value, - "Bound argument |i| is move-only but will be bound by copy. " - "Ensure |Arg| is mutable and bound using std::move()."); - static_assert(arg_is_storable, -@@ -84,11 +86,11 @@ template --struct AssertBindArgsValidity, -+struct AssertBindArgsValidity, - TypeList, - TypeList, - TypeList> -- : AssertConstructible, Unwrapped, Params>... { -+ : AssertConstructible::type, Unwrapped, Params>... { - static constexpr bool ok = true; - }; - -@@ -98,14 +100,14 @@ struct TransformToUnwrappedTypeImpl; - - template - struct TransformToUnwrappedTypeImpl { -- using StoredType = std::decay_t; -+ using StoredType = typename std::decay::type; - using ForwardType = StoredType&&; - using Unwrapped = decltype(Unwrap(std::declval())); - }; - - template - struct TransformToUnwrappedTypeImpl { -- using StoredType = std::decay_t; -+ using StoredType = typename std::decay::type; - using ForwardType = const StoredType&; - using Unwrapped = decltype(Unwrap(std::declval())); - }; -@@ -153,7 +155,7 @@ using MakeUnwrappedTypeList = - template - inline OnceCallback> - BindOnce(Functor&& functor, Args&&... args) { -- static_assert(!internal::IsOnceCallback>() || -+ static_assert(!internal::IsOnceCallback::type>() || - (std::is_rvalue_reference() && - !std::is_const>()), - "BindOnce requires non-const rvalue for OnceCallback binding." -@@ -170,7 +172,7 @@ BindOnce(Functor&& functor, Args&&... ar - Args&&...>; - using BoundParamsList = typename Helper::BoundParamsList; - static_assert(internal::AssertBindArgsValidity< -- std::make_index_sequence, BoundArgsList, -+ tao::seq::make_index_sequence, BoundArgsList, - UnwrappedArgsList, BoundParamsList>::ok, - "The bound args need to be convertible to the target params."); - -@@ -197,7 +199,7 @@ template > - BindRepeating(Functor&& functor, Args&&... args) { - static_assert( -- !internal::IsOnceCallback>(), -+ !internal::IsOnceCallback::type>(), - "BindRepeating cannot bind OnceCallback. Use BindOnce with std::move()."); - - // This block checks if each |args| matches to the corresponding params of the -@@ -211,7 +213,7 @@ BindRepeating(Functor&& functor, Args&&. - Args&&...>; - using BoundParamsList = typename Helper::BoundParamsList; - static_assert(internal::AssertBindArgsValidity< -- std::make_index_sequence, BoundArgsList, -+ tao::seq::make_index_sequence, BoundArgsList, - UnwrappedArgsList, BoundParamsList>::ok, - "The bound args need to be convertible to the target params."); - -diff -up chromium-62.0.3202.62/base/bind_internal.h.epel7-c++11 chromium-62.0.3202.62/base/bind_internal.h ---- chromium-62.0.3202.62/base/bind_internal.h.epel7-c++11 2017-10-25 08:52:20.018873878 -0400 -+++ chromium-62.0.3202.62/base/bind_internal.h 2017-10-25 10:14:03.619256659 -0400 -@@ -15,6 +15,8 @@ - #include "base/memory/raw_scoped_refptr_mismatch_checker.h" - #include "base/memory/weak_ptr.h" - #include "base/template_util.h" -+#include "third_party/tao/seq/integer_sequence.hpp" -+#include "third_party/tao/seq/make_integer_sequence.hpp" - #include "build/build_config.h" - - namespace base { -@@ -98,9 +100,9 @@ struct HasRefCountedTypeAsRawPtr : std:: - // parameters recursively. - template - struct HasRefCountedTypeAsRawPtr -- : std::conditional_t::value, -+ : typedef std::conditional::value, - std::true_type, -- HasRefCountedTypeAsRawPtr> {}; -+ HasRefCountedTypeAsRawPtr::type> {}; - - // ForceVoidReturn<> - // -@@ -125,7 +127,7 @@ struct FunctorTraits; - // to the function type while capturing lambdas can't. - template - struct FunctorTraits::value>> { -+ typename std::enable_if::value>::type> { - using RunType = ExtractCallableRunType; - static constexpr bool is_method = false; - static constexpr bool is_nullable = false; -@@ -256,7 +258,7 @@ struct FunctorTraits --using MakeFunctorTraits = FunctorTraits>; -+using MakeFunctorTraits = FunctorTraits::type>; - - // InvokeHelper<> - // -@@ -317,7 +319,7 @@ struct Invokerbound_args_)>::value; - return RunImpl(std::move(storage->functor_), - std::move(storage->bound_args_), -- std::make_index_sequence(), -+ tao::seq::make_index_sequence(), - std::forward(unbound_args)...); - } - -@@ -329,7 +331,7 @@ struct Invokerbound_args_)>::value; - return RunImpl(storage->functor_, storage->bound_args_, -- std::make_index_sequence(), -+ tao::seq::make_index_sequence(), - std::forward(unbound_args)...); - } - -@@ -337,11 +339,11 @@ struct Invoker - static inline R RunImpl(Functor&& functor, - BoundArgsTuple&& bound, -- std::index_sequence, -+ tao::seq::index_sequence, - UnboundArgs&&... unbound_args) { - static constexpr bool is_method = MakeFunctorTraits::is_method; - -- using DecayedArgsTuple = std::decay_t; -+ using DecayedArgsTuple = typename std::decay::type; - static constexpr bool is_weak_call = - IsWeakMethod...>(); -@@ -383,13 +385,13 @@ struct BindTypeHelper { - }; - - template --std::enable_if_t::is_nullable, bool> IsNull( -+typename std::enable_if::is_nullable, bool>::type IsNull( - const Functor& functor) { - return !functor; - } - - template --std::enable_if_t::is_nullable, bool> IsNull( -+typename std::enable_if::is_nullable, bool>::type IsNull( - const Functor&) { - return false; - } -@@ -398,7 +400,7 @@ std::enable_if_t - template - bool ApplyCancellationTraitsImpl(const Functor& functor, - const BoundArgsTuple& bound_args, -- std::index_sequence) { -+ tao::seq::index_sequence) { - return CallbackCancellationTraits::IsCancelled( - functor, std::get(bound_args)...); - } -@@ -412,7 +414,7 @@ bool ApplyCancellationTraits(const BindS - std::tuple_sizebound_args_)>::value; - return ApplyCancellationTraitsImpl( - storage->functor_, storage->bound_args_, -- std::make_index_sequence()); -+ tao::seq::make_index_sequence()); - }; - - // BindState<> -@@ -479,33 +481,33 @@ struct MakeBindStateTypeImpl; - - template - struct MakeBindStateTypeImpl { -- static_assert(!HasRefCountedTypeAsRawPtr...>::value, -+ static_assert(!HasRefCountedTypeAsRawPtr::type...>::value, - "A parameter is a refcounted type and needs scoped_refptr."); -- using Type = BindState, std::decay_t...>; -+ using Type = BindState::type, typename std::decay::type...>; - }; - - template - struct MakeBindStateTypeImpl { -- using Type = BindState>; -+ using Type = BindState::type>; - }; - - template - struct MakeBindStateTypeImpl { - static_assert(!std::is_array>::value, - "First bound argument to a method cannot be an array."); -- static_assert(!HasRefCountedTypeAsRawPtr...>::value, -+ static_assert(!HasRefCountedTypeAsRawPtr::type...>::value, - "A parameter is a refcounted type and needs scoped_refptr."); - - private: -- using DecayedReceiver = std::decay_t; -+ using DecayedReceiver = typename std::decay::type; - - public: - using Type = BindState< -- std::decay_t, -- std::conditional_t::value, -+ typename std::decay::type, -+ typename std::conditional::value, - scoped_refptr>, -- DecayedReceiver>, -- std::decay_t...>; -+ DecayedReceiver>::type, -+ typename std::decay::type...>; - }; - - template -diff -up chromium-62.0.3202.62/base/containers/span.h.epel7-c++11 chromium-62.0.3202.62/base/containers/span.h ---- chromium-62.0.3202.62/base/containers/span.h.epel7-c++11 2017-10-25 08:51:25.260372472 -0400 -+++ chromium-62.0.3202.62/base/containers/span.h 2017-10-25 09:13:53.035964265 -0400 -@@ -27,7 +27,7 @@ template - struct IsSpanImpl> : std::true_type {}; - - template --using IsSpan = IsSpanImpl>; -+using IsSpan = IsSpanImpl::type>; - - template - struct IsStdArrayImpl : std::false_type {}; -@@ -36,7 +36,7 @@ template - struct IsStdArrayImpl> : std::true_type {}; - - template --using IsStdArray = IsStdArrayImpl>; -+using IsStdArray = IsStdArrayImpl::type>; - - template - using IsLegalSpanConversion = std::is_convertible; -@@ -51,7 +51,7 @@ using ContainerHasIntegralSize = - - template - using EnableIfLegalSpanConversion = -- std::enable_if_t::value>; -+ typename std::enable_if::value>::type; - - // SFINAE check if Container can be converted to a span. Note that the - // implementation details of this check differ slightly from the requirements in -@@ -67,18 +67,18 @@ using EnableIfLegalSpanConversion = - // container. - template - using EnableIfSpanCompatibleContainer = -- std::enable_if_t::value && -+ typename std::enable_if::value && - !internal::IsStdArray::value && - ContainerHasConvertibleData::value && -- ContainerHasIntegralSize::value>; -+ ContainerHasIntegralSize::value>::type; - - template - using EnableIfConstSpanCompatibleContainer = -- std::enable_if_t::value && -+ typename std::enable_if::value && - !internal::IsSpan::value && - !internal::IsStdArray::value && - ContainerHasConvertibleData::value && -- ContainerHasIntegralSize::value>; -+ ContainerHasIntegralSize::value>::type; - - } // namespace internal - -diff -up chromium-62.0.3202.62/base/tuple.h.epel7-c++11 chromium-62.0.3202.62/base/tuple.h ---- chromium-62.0.3202.62/base/tuple.h.epel7-c++11 2017-10-25 10:09:22.986397329 -0400 -+++ chromium-62.0.3202.62/base/tuple.h 2017-10-25 10:11:00.392571745 -0400 -@@ -29,6 +29,7 @@ - #include - #include - -+#include "third_party/tao/seq/integer_sequence.hpp" - #include "build/build_config.h" - - namespace base { -@@ -52,7 +53,7 @@ template ) { -+ tao::seq::index_sequence) { - (obj->*method)(std::get(std::forward(args))...); - } - -@@ -69,7 +70,7 @@ inline void DispatchToMethod(const ObjT& - template - inline void DispatchToFunctionImpl(Function function, - Tuple&& args, -- std::index_sequence) { -+ tao::seq::index_sequence) { - (*function)(std::get(std::forward(args))...); - } - -@@ -91,8 +92,8 @@ inline void DispatchToMethodImpl(const O - Method method, - InTuple&& in, - OutTuple* out, -- std::index_sequence, -- std::index_sequence) { -+ tao::seq::index_sequence, -+ tao::seq::index_sequence) { - (obj->*method)(std::get(std::forward(in))..., - &std::get(*out)...); - } -diff -up chromium-62.0.3202.62/components/login/base_screen_handler_utils.h.epel7-c++11 chromium-62.0.3202.62/components/login/base_screen_handler_utils.h ---- chromium-62.0.3202.62/components/login/base_screen_handler_utils.h.epel7-c++11 2017-10-25 10:14:43.493099988 -0400 -+++ chromium-62.0.3202.62/components/login/base_screen_handler_utils.h 2017-10-25 10:15:17.679108311 -0400 -@@ -17,6 +17,7 @@ - #include "base/values.h" - #include "components/login/login_export.h" - #include "components/signin/core/account_id/account_id.h" -+#include "third_party/tao/seq/integer_sequence.hpp" - - namespace login { - -@@ -86,7 +87,7 @@ typename UnwrapConstRef::Type Parse - template - inline void DispatchToCallback(const base::Callback& callback, - const base::ListValue* args, -- std::index_sequence indexes) { -+ tao::seq::index_sequence indexes) { - DCHECK(args); - DCHECK_EQ(sizeof...(Args), args->GetSize()); - -@@ -96,7 +97,7 @@ inline void DispatchToCallback(const bas - template - void CallbackWrapper(const base::Callback& callback, - const base::ListValue* args) { -- DispatchToCallback(callback, args, std::index_sequence_for()); -+ DispatchToCallback(callback, args, tao::seq::index_sequence_for()); - } - - -diff -up chromium-62.0.3202.62/ipc/ipc_message_templates.h.epel7-c++11 chromium-62.0.3202.62/ipc/ipc_message_templates.h ---- chromium-62.0.3202.62/ipc/ipc_message_templates.h.epel7-c++11 2017-10-25 09:15:02.382879317 -0400 -+++ chromium-62.0.3202.62/ipc/ipc_message_templates.h 2017-10-25 10:16:41.889665510 -0400 -@@ -17,11 +17,13 @@ - #include "build/build_config.h" - #include "ipc/ipc_message.h" - #include "ipc/ipc_message_utils.h" -+#include "third_party/tao/seq/integer_sequence.hpp" -+#include "third_party/tao/seq/make_integer_sequence.hpp" - - namespace IPC { - - template --auto TupleForwardImpl(Tuple&& tuple, std::index_sequence) -> decltype( -+auto TupleForwardImpl(Tuple&& tuple, tao::seq::index_sequence) -> decltype( - std::forward_as_tuple(std::get(std::forward(tuple))...)) { - return std::forward_as_tuple(std::get(std::forward(tuple))...); - } -@@ -38,10 +40,10 @@ auto TupleForwardImpl(Tuple&& tuple, std - template - auto TupleForward(Tuple&& tuple) -> decltype(TupleForwardImpl( - std::forward(tuple), -- std::make_index_sequence>::value>())) { -+ tao::seq::make_index_sequence>::value>())) { - return TupleForwardImpl( - std::forward(tuple), -- std::make_index_sequence>::value>()); -+ tao::seq::make_index_sequence>::value>()); - } - - // This function is for all the async IPCs that don't pass an extra parameter -@@ -60,21 +62,21 @@ void DispatchToMethodImpl(ObjT* obj, - Method method, - P* parameter, - Tuple&& tuple, -- std::index_sequence) { -+ tao::seq::index_sequence) { - (obj->*method)(parameter, std::get(std::forward(tuple))...); - } - - // The following function is for async IPCs which have a dispatcher with an - // extra parameter specified using IPC_BEGIN_MESSAGE_MAP_WITH_PARAM. - template --std::enable_if_t>::value> -+typename std::enable_if>::value>::type - DispatchToMethod(ObjT* obj, - void (ObjT::*method)(P*, Args...), - P* parameter, - Tuple&& tuple) { - constexpr size_t size = std::tuple_size>::value; - DispatchToMethodImpl(obj, method, parameter, std::forward(tuple), -- std::make_index_sequence()); -+ tao::seq::make_index_sequence()); - } - - enum class MessageKind { -diff -up chromium-62.0.3202.62/ppapi/proxy/dispatch_reply_message.h.epel7-c++11 chromium-62.0.3202.62/ppapi/proxy/dispatch_reply_message.h ---- chromium-62.0.3202.62/ppapi/proxy/dispatch_reply_message.h.epel7-c++11 2017-10-25 10:16:53.888317449 -0400 -+++ chromium-62.0.3202.62/ppapi/proxy/dispatch_reply_message.h 2017-10-25 10:17:50.152688363 -0400 -@@ -17,6 +17,7 @@ - #include "base/tuple.h" - #include "ipc/ipc_message_macros.h" - #include "ppapi/c/pp_errors.h" -+#include "third_party/tao/seq/integer_sequence.hpp" - - namespace ppapi { - namespace proxy { -@@ -28,7 +29,7 @@ inline void DispatchResourceReplyImpl(Ob - Method method, - const ResourceMessageReplyParams& params, - TupleType&& args_tuple, -- std::index_sequence) { -+ tao::seq::index_sequence) { - (obj->*method)(params, - std::get(std::forward(args_tuple))...); - } -@@ -51,7 +52,7 @@ template ) { -+ tao::seq::index_sequence) { - std::forward(callback).Run( - params, std::get(std::forward(args_tuple))...); - } -diff -up chromium-62.0.3202.62/third_party/tao/seq/at_index.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/at_index.hpp ---- chromium-62.0.3202.62/third_party/tao/seq/at_index.hpp.epel7-c++11 2017-10-25 10:08:42.418574130 -0400 -+++ chromium-62.0.3202.62/third_party/tao/seq/at_index.hpp 2017-10-25 10:05:28.328204354 -0400 -@@ -0,0 +1,60 @@ -+// Copyright (c) 2015-2017 Daniel Frey -+// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ -+ -+#ifndef TAOCPP_SEQUENCES_INCLUDE_AT_INDEX_HPP -+#define TAOCPP_SEQUENCES_INCLUDE_AT_INDEX_HPP -+ -+#include -+ -+#include "make_integer_sequence.hpp" -+ -+namespace tao -+{ -+ namespace seq -+ { -+ // based on http://talesofcpp.fusionfenix.com/post-22/true-story-efficient-packing -+ -+ namespace impl -+ { -+ template< std::size_t, typename T > -+ struct indexed -+ { -+ using type = T; -+ }; -+ -+ template< typename, typename... Ts > -+ struct indexer; -+ -+ template< std::size_t... Is, typename... Ts > -+ struct indexer< index_sequence< Is... >, Ts... > -+ : indexed< Is, Ts >... -+ { -+ }; -+ -+ template< std::size_t I, typename T > -+ indexed< I, T > select( const indexed< I, T >& ); -+ } -+ -+ template< std::size_t I, typename... Ts > -+ using at_index = decltype( impl::select< I >( impl::indexer< index_sequence_for< Ts... >, Ts... >() ) ); -+ -+#ifndef _MSC_VER -+ template< std::size_t I, typename... Ts > -+ using at_index_t = typename at_index< I, Ts... >::type; -+#else -+ namespace impl -+ { -+ template< typename T > -+ struct get_type -+ { -+ using type = typename T::type; -+ }; -+ } -+ -+ template< std::size_t I, typename... Ts > -+ using at_index_t = typename impl::get_type< at_index< I, Ts... > >::type; -+#endif -+ } -+} -+ -+#endif // TAOCPP_SEQUENCES_INCLUDE_AT_INDEX_HPP -diff -up chromium-62.0.3202.62/third_party/tao/seq/concatenate.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/concatenate.hpp ---- chromium-62.0.3202.62/third_party/tao/seq/concatenate.hpp.epel7-c++11 2017-10-25 10:08:42.422574014 -0400 -+++ chromium-62.0.3202.62/third_party/tao/seq/concatenate.hpp 2017-10-25 10:05:28.328204354 -0400 -@@ -0,0 +1,29 @@ -+// Copyright (c) 2015-2017 Daniel Frey -+// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ -+ -+#ifndef TAOCPP_SEQUENCES_INCLUDE_CONCATENATE_HPP -+#define TAOCPP_SEQUENCES_INCLUDE_CONCATENATE_HPP -+ -+#include -+ -+#include "integer_sequence.hpp" -+ -+namespace tao -+{ -+ namespace seq -+ { -+ template< typename, typename > -+ struct concatenate; -+ -+ template< typename TA, TA... As, typename TB, TB... Bs > -+ struct concatenate< integer_sequence< TA, As... >, integer_sequence< TB, Bs... > > -+ { -+ using type = integer_sequence< typename std::common_type< TA, TB >::type, As..., Bs... >; -+ }; -+ -+ template< typename A, typename B > -+ using concatenate_t = typename concatenate< A, B >::type; -+ } -+} -+ -+#endif // TAOCPP_SEQUENCES_INCLUDE_CONCATENATE_HPP -diff -up chromium-62.0.3202.62/third_party/tao/seq/config.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/config.hpp ---- chromium-62.0.3202.62/third_party/tao/seq/config.hpp.epel7-c++11 2017-10-25 10:08:42.428573840 -0400 -+++ chromium-62.0.3202.62/third_party/tao/seq/config.hpp 2017-10-25 10:05:28.328204354 -0400 -@@ -0,0 +1,25 @@ -+// Copyright (c) 2015-2017 Daniel Frey -+// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ -+ -+#ifndef TAOCPP_SEQUENCES_INCLUDE_CONFIG_HPP -+#define TAOCPP_SEQUENCES_INCLUDE_CONFIG_HPP -+ -+#if __cplusplus >= 201402L -+ -+#define TAOCPP_USE_STD_INTEGER_SEQUENCE -+ -+#if defined( _LIBCPP_VERSION ) -+#define TAOCPP_USE_STD_MAKE_INTEGER_SEQUENCE -+#elif defined( _GLIBCXX_RELEASE ) && ( _GLIBCXX_RELEASE >= 8 ) -+#define TAOCPP_USE_STD_MAKE_INTEGER_SEQUENCE -+#elif defined( _MSC_VER ) && ( _MSC_VER >= 190023918 ) -+#define TAOCPP_USE_STD_MAKE_INTEGER_SEQUENCE -+#endif -+ -+#endif // __cplusplus >= 201402L -+ -+#if defined( __cpp_fold_expressions ) -+#define TAOCPP_FOLD_EXPRESSIONS -+#endif -+ -+#endif // TAOCPP_SEQUENCES_INCLUDE_CONFIG_HPP -diff -up chromium-62.0.3202.62/third_party/tao/seq/exclusive_scan.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/exclusive_scan.hpp ---- chromium-62.0.3202.62/third_party/tao/seq/exclusive_scan.hpp.epel7-c++11 2017-10-25 10:08:42.429573811 -0400 -+++ chromium-62.0.3202.62/third_party/tao/seq/exclusive_scan.hpp 2017-10-25 10:05:28.328204354 -0400 -@@ -0,0 +1,45 @@ -+// Copyright (c) 2015-2017 Daniel Frey -+// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ -+ -+#ifndef TAOCPP_SEQUENCES_INCLUDE_EXCLUSIVE_SCAN_HPP -+#define TAOCPP_SEQUENCES_INCLUDE_EXCLUSIVE_SCAN_HPP -+ -+#include -+ -+#include "make_integer_sequence.hpp" -+#include "partial_sum.hpp" -+ -+namespace tao -+{ -+ namespace seq -+ { -+ namespace impl -+ { -+ template< typename S, typename = make_index_sequence< S::size() > > -+ struct exclusive_scan; -+ -+ template< typename S, std::size_t... Is > -+ struct exclusive_scan< S, index_sequence< Is... > > -+ { -+ using type = integer_sequence< typename S::value_type, partial_sum< Is, S >::value... >; -+ }; -+ } -+ -+ template< typename T, T... Ns > -+ struct exclusive_scan -+ : impl::exclusive_scan< integer_sequence< T, Ns... > > -+ { -+ }; -+ -+ template< typename T, T... Ns > -+ struct exclusive_scan< integer_sequence< T, Ns... > > -+ : impl::exclusive_scan< integer_sequence< T, Ns... > > -+ { -+ }; -+ -+ template< typename T, T... Ns > -+ using exclusive_scan_t = typename exclusive_scan< T, Ns... >::type; -+ } -+} -+ -+#endif // TAOCPP_SEQUENCES_INCLUDE_EXCLUSIVE_SCAN_HPP -diff -up chromium-62.0.3202.62/third_party/tao/seq/fold.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/fold.hpp ---- chromium-62.0.3202.62/third_party/tao/seq/fold.hpp.epel7-c++11 2017-10-25 10:08:42.430573782 -0400 -+++ chromium-62.0.3202.62/third_party/tao/seq/fold.hpp 2017-10-25 10:05:28.328204354 -0400 -@@ -0,0 +1,58 @@ -+// Copyright (c) 2015-2017 Daniel Frey -+// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ -+ -+#ifndef TAOCPP_SEQUENCES_INCLUDE_FOLD_HPP -+#define TAOCPP_SEQUENCES_INCLUDE_FOLD_HPP -+ -+#include -+ -+#include "integer_sequence.hpp" -+#include "make_integer_sequence.hpp" -+#include "select.hpp" -+ -+namespace tao -+{ -+ namespace seq -+ { -+ namespace impl -+ { -+ template< template< typename U, U, U > class, typename, bool, typename T, T... > -+ struct folder; -+ -+ template< template< typename U, U, U > class OP, std::size_t... Is, typename T, T... Ns > -+ struct folder< OP, index_sequence< Is... >, false, T, Ns... > -+ { -+ using type = integer_sequence< T, OP< T, seq::select< 2 * Is, T, Ns... >::value, seq::select< 2 * Is + 1, T, Ns... >::value >::value... >; -+ }; -+ -+ template< template< typename U, U, U > class OP, std::size_t... Is, typename T, T N, T... Ns > -+ struct folder< OP, index_sequence< Is... >, true, T, N, Ns... > -+ { -+ using type = integer_sequence< T, N, OP< T, seq::select< 2 * Is, T, Ns... >::value, seq::select< 2 * Is + 1, T, Ns... >::value >::value... >; -+ }; -+ } -+ -+ template< template< typename U, U, U > class, typename T, T... > -+ struct fold; -+ -+ template< template< typename U, U, U > class OP, typename T, T N > -+ struct fold< OP, T, N > -+ : std::integral_constant< T, N > -+ { -+ }; -+ -+ template< template< typename U, U, U > class OP, typename T, T... Ns > -+ struct fold -+ : fold< OP, typename impl::folder< OP, make_index_sequence< sizeof...( Ns ) / 2 >, sizeof...( Ns ) % 2 == 1, T, Ns... >::type > -+ { -+ }; -+ -+ template< template< typename U, U, U > class OP, typename T, T... Ns > -+ struct fold< OP, integer_sequence< T, Ns... > > -+ : fold< OP, T, Ns... > -+ { -+ }; -+ } -+} -+ -+#endif // TAOCPP_SEQUENCES_INCLUDE_FOLD_HPP -diff -up chromium-62.0.3202.62/third_party/tao/seq/head.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/head.hpp ---- chromium-62.0.3202.62/third_party/tao/seq/head.hpp.epel7-c++11 2017-10-25 10:08:42.431573753 -0400 -+++ chromium-62.0.3202.62/third_party/tao/seq/head.hpp 2017-10-25 10:05:28.328204354 -0400 -@@ -0,0 +1,32 @@ -+// Copyright (c) 2015-2017 Daniel Frey -+// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ -+ -+#ifndef TAOCPP_SEQUENCES_INCLUDE_HEAD_HPP -+#define TAOCPP_SEQUENCES_INCLUDE_HEAD_HPP -+ -+#include -+ -+#include "integer_sequence.hpp" -+ -+namespace tao -+{ -+ namespace seq -+ { -+ template< typename T, T... Ns > -+ struct head; -+ -+ template< typename T, T N, T... Ns > -+ struct head< T, N, Ns... > -+ : std::integral_constant< T, N > -+ { -+ }; -+ -+ template< typename T, T... Ns > -+ struct head< integer_sequence< T, Ns... > > -+ : head< T, Ns... > -+ { -+ }; -+ } -+} -+ -+#endif // TAOCPP_SEQUENCES_INCLUDE_HEAD_HPP -diff -up chromium-62.0.3202.62/third_party/tao/seq/inclusive_scan.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/inclusive_scan.hpp ---- chromium-62.0.3202.62/third_party/tao/seq/inclusive_scan.hpp.epel7-c++11 2017-10-25 10:08:42.432573724 -0400 -+++ chromium-62.0.3202.62/third_party/tao/seq/inclusive_scan.hpp 2017-10-25 10:05:28.328204354 -0400 -@@ -0,0 +1,34 @@ -+// Copyright (c) 2015-2017 Daniel Frey -+// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ -+ -+#ifndef TAOCPP_SEQUENCES_INCLUDE_INCLUSIVE_SCAN_HPP -+#define TAOCPP_SEQUENCES_INCLUDE_INCLUSIVE_SCAN_HPP -+ -+#include -+ -+#include "exclusive_scan.hpp" -+#include "integer_sequence.hpp" -+#include "plus.hpp" -+ -+namespace tao -+{ -+ namespace seq -+ { -+ template< typename T, T... Ns > -+ struct inclusive_scan -+ : plus< exclusive_scan_t< T, Ns... >, integer_sequence< T, Ns... > > -+ { -+ }; -+ -+ template< typename T, T... Ns > -+ struct inclusive_scan< integer_sequence< T, Ns... > > -+ : plus< exclusive_scan_t< integer_sequence< T, Ns... > >, integer_sequence< T, Ns... > > -+ { -+ }; -+ -+ template< typename T, T... Ns > -+ using inclusive_scan_t = typename inclusive_scan< T, Ns... >::type; -+ } -+} -+ -+#endif // TAOCPP_SEQUENCES_INCLUDE_INCLUSIVE_SCAN_HPP -diff -up chromium-62.0.3202.62/third_party/tao/seq/integer_sequence.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/integer_sequence.hpp ---- chromium-62.0.3202.62/third_party/tao/seq/integer_sequence.hpp.epel7-c++11 2017-10-25 10:08:42.433573695 -0400 -+++ chromium-62.0.3202.62/third_party/tao/seq/integer_sequence.hpp 2017-10-25 10:05:28.328204354 -0400 -@@ -0,0 +1,42 @@ -+// Copyright (c) 2015-2017 Daniel Frey -+// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ -+ -+#ifndef TAOCPP_SEQUENCES_INCLUDE_INTEGER_SEQUENCE_HPP -+#define TAOCPP_SEQUENCES_INCLUDE_INTEGER_SEQUENCE_HPP -+ -+#include -+#include -+ -+#include "config.hpp" -+ -+namespace tao -+{ -+ namespace seq -+ { -+ -+#ifdef TAOCPP_USE_STD_INTEGER_SEQUENCE -+ -+ using std::integer_sequence; -+ using std::index_sequence; -+ -+#else -+ -+ template< typename T, T... Ns > -+ struct integer_sequence -+ { -+ using value_type = T; -+ -+ static constexpr std::size_t size() noexcept -+ { -+ return sizeof...( Ns ); -+ } -+ }; -+ -+ template< std::size_t... Ns > -+ using index_sequence = integer_sequence< std::size_t, Ns... >; -+ -+#endif -+ } -+} -+ -+#endif // TAOCPP_SEQUENCES_INCLUDE_INTEGER_SEQUENCE_HPP -diff -up chromium-62.0.3202.62/third_party/tao/seq/is_all.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/is_all.hpp ---- chromium-62.0.3202.62/third_party/tao/seq/is_all.hpp.epel7-c++11 2017-10-25 10:08:42.433573695 -0400 -+++ chromium-62.0.3202.62/third_party/tao/seq/is_all.hpp 2017-10-25 10:05:28.328204354 -0400 -@@ -0,0 +1,34 @@ -+// Copyright (c) 2015-2017 Daniel Frey -+// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ -+ -+#ifndef TAOCPP_SEQUENCES_INCLUDE_IS_ALL_HPP -+#define TAOCPP_SEQUENCES_INCLUDE_IS_ALL_HPP -+ -+#include "config.hpp" -+ -+#ifndef TAOCPP_FOLD_EXPRESSIONS -+#include "integer_sequence.hpp" -+#endif -+ -+#include -+ -+namespace tao -+{ -+ namespace seq -+ { -+ -+#ifdef TAOCPP_FOLD_EXPRESSIONS -+ -+ template< bool... Bs > -+ using is_all = std::integral_constant< bool, ( Bs && ... ) >; -+ -+#else -+ -+ template< bool... Bs > -+ using is_all = std::integral_constant< bool, std::is_same< integer_sequence< bool, true, Bs... >, integer_sequence< bool, Bs..., true > >::value >; -+ -+#endif -+ } -+} -+ -+#endif // TAOCPP_SEQUENCES_INCLUDE_IS_ALL_HPP -diff -up chromium-62.0.3202.62/third_party/tao/seq/is_any.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/is_any.hpp ---- chromium-62.0.3202.62/third_party/tao/seq/is_any.hpp.epel7-c++11 2017-10-25 10:08:42.434573666 -0400 -+++ chromium-62.0.3202.62/third_party/tao/seq/is_any.hpp 2017-10-25 10:05:28.328204354 -0400 -@@ -0,0 +1,34 @@ -+// Copyright (c) 2015-2017 Daniel Frey -+// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ -+ -+#ifndef TAOCPP_SEQUENCES_INCLUDE_IS_ANY_HPP -+#define TAOCPP_SEQUENCES_INCLUDE_IS_ANY_HPP -+ -+#include "config.hpp" -+ -+#ifndef TAOCPP_FOLD_EXPRESSIONS -+#include "is_all.hpp" -+#endif -+ -+#include -+ -+namespace tao -+{ -+ namespace seq -+ { -+ -+#ifdef TAOCPP_FOLD_EXPRESSIONS -+ -+ template< bool... Bs > -+ using is_any = std::integral_constant< bool, ( Bs || ... ) >; -+ -+#else -+ -+ template< bool... Bs > -+ using is_any = std::integral_constant< bool, !is_all< !Bs... >::value >; -+ -+#endif -+ } -+} -+ -+#endif // TAOCPP_SEQUENCES_INCLUDE_IS_ANY_HPP -diff -up chromium-62.0.3202.62/third_party/tao/seq/LICENSE.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/LICENSE ---- chromium-62.0.3202.62/third_party/tao/seq/LICENSE.epel7-c++11 2017-10-25 10:08:42.435573638 -0400 -+++ chromium-62.0.3202.62/third_party/tao/seq/LICENSE 2017-10-25 10:05:28.327204383 -0400 -@@ -0,0 +1,22 @@ -+The MIT License (MIT) -+ -+Copyright (c) 2015-2017 Daniel Frey -+ -+Permission is hereby granted, free of charge, to any person obtaining a copy -+of this software and associated documentation files (the "Software"), to deal -+in the Software without restriction, including without limitation the rights -+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -+copies of the Software, and to permit persons to whom the Software is -+furnished to do so, subject to the following conditions: -+ -+The above copyright notice and this permission notice shall be included in all -+copies or substantial portions of the Software. -+ -+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -+SOFTWARE. -+ -diff -up chromium-62.0.3202.62/third_party/tao/seq/make_integer_range.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/make_integer_range.hpp ---- chromium-62.0.3202.62/third_party/tao/seq/make_integer_range.hpp.epel7-c++11 2017-10-25 10:08:42.435573638 -0400 -+++ chromium-62.0.3202.62/third_party/tao/seq/make_integer_range.hpp 2017-10-25 10:05:28.328204354 -0400 -@@ -0,0 +1,39 @@ -+// Copyright (c) 2015-2017 Daniel Frey -+// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ -+ -+#ifndef TAOCPP_SEQUENCES_INCLUDE_MAKE_INTEGER_RANGE_HPP -+#define TAOCPP_SEQUENCES_INCLUDE_MAKE_INTEGER_RANGE_HPP -+ -+#include "make_integer_sequence.hpp" -+ -+namespace tao -+{ -+ namespace seq -+ { -+ namespace impl -+ { -+ template< typename T, T Begin, T Steps, bool Increase, T Delta = T( 1 ), typename = make_integer_sequence< T, Steps > > -+ struct generate_range; -+ -+ template< typename T, T B, T S, T D, T... Ns > -+ struct generate_range< T, B, S, true, D, integer_sequence< T, Ns... > > -+ { -+ using type = integer_sequence< T, B + D * Ns... >; -+ }; -+ -+ template< typename T, T B, T S, T D, T... Ns > -+ struct generate_range< T, B, S, false, D, integer_sequence< T, Ns... > > -+ { -+ using type = integer_sequence< T, B - D * Ns... >; -+ }; -+ } -+ -+ template< typename T, T N, T M > -+ using make_integer_range = typename impl::generate_range< T, N, ( N <= M ) ? ( M - N ) : ( N - M ), ( N <= M ) >::type; -+ -+ template< std::size_t N, std::size_t M > -+ using make_index_range = make_integer_range< std::size_t, N, M >; -+ } -+} -+ -+#endif // TAOCPP_SEQUENCES_INCLUDE_MAKE_INTEGER_RANGE_HPP -diff -up chromium-62.0.3202.62/third_party/tao/seq/make_integer_sequence.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/make_integer_sequence.hpp ---- chromium-62.0.3202.62/third_party/tao/seq/make_integer_sequence.hpp.epel7-c++11 2017-10-25 10:08:42.436573608 -0400 -+++ chromium-62.0.3202.62/third_party/tao/seq/make_integer_sequence.hpp 2017-10-25 10:05:28.328204354 -0400 -@@ -0,0 +1,87 @@ -+// Copyright (c) 2015-2017 Daniel Frey -+// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ -+ -+#ifndef TAOCPP_SEQUENCES_INCLUDE_MAKE_INTEGER_SEQUENCE_HPP -+#define TAOCPP_SEQUENCES_INCLUDE_MAKE_INTEGER_SEQUENCE_HPP -+ -+#include -+#include -+#include -+ -+#include "config.hpp" -+#include "integer_sequence.hpp" -+ -+namespace tao -+{ -+ namespace seq -+ { -+ -+#ifdef TAOCPP_USE_STD_MAKE_INTEGER_SEQUENCE -+ -+ using std::make_integer_sequence; -+ using std::make_index_sequence; -+ using std::index_sequence_for; -+ -+#else -+ -+ namespace impl -+ { -+ // we have four instantiations of generate_sequence<>, independent of T or N. -+ // V is the current bit, E is the end marker - if true, this is the last step. -+ template< bool V, bool E > -+ struct generate_sequence; -+ -+ // last step: generate final integer sequence -+ template<> -+ struct generate_sequence< false, true > -+ { -+ template< typename T, T M, T N, std::size_t S, T... Ns > -+ using f = integer_sequence< T, Ns... >; -+ }; -+ -+ template<> -+ struct generate_sequence< true, true > -+ { -+ template< typename T, T M, T N, std::size_t S, T... Ns > -+ using f = integer_sequence< T, Ns..., S >; -+ }; -+ -+ // intermediate step: double existing values, append one more if V is set. -+ template<> -+ struct generate_sequence< false, false > -+ { -+ template< typename T, T M, T N, std::size_t S, T... Ns > -+ using f = typename generate_sequence< ( N & ( M / 2 ) ) != 0, ( M / 2 ) == 0 >::template f< T, M / 2, N, 2 * S, Ns..., ( Ns + S )... >; -+ }; -+ -+ template<> -+ struct generate_sequence< true, false > -+ { -+ template< typename T, T M, T N, std::size_t S, T... Ns > -+ using f = typename generate_sequence< ( N & ( M / 2 ) ) != 0, ( M / 2 ) == 0 >::template f< T, M / 2, N, 2 * S + 1, Ns..., ( Ns + S )..., 2 * S >; -+ }; -+ -+ // the final sequence per T/N should be memoized, it will probably be used multiple times. -+ // also checks the limit and starts the above generator properly. -+ template< typename T, T N > -+ struct memoize_sequence -+ { -+ static_assert( N < T( 1 << 20 ), "N too large" ); -+ using type = typename generate_sequence< false, false >::template f< T, ( N < T( 1 << 1 ) ) ? T( 1 << 1 ) : ( N < T( 1 << 2 ) ) ? T( 1 << 2 ) : ( N < T( 1 << 3 ) ) ? T( 1 << 3 ) : ( N < T( 1 << 4 ) ) ? T( 1 << 4 ) : ( N < T( 1 << 5 ) ) ? T( 1 << 5 ) : ( N < T( 1 << 6 ) ) ? T( 1 << 6 ) : ( N < T( 1 << 7 ) ) ? T( 1 << 7 ) : ( N < T( 1 << 8 ) ) ? T( 1 << 8 ) : ( N < T( 1 << 9 ) ) ? T( 1 << 9 ) : ( N < T( 1 << 10 ) ) ? T( 1 << 10 ) : T( 1 << 20 ), N, 0 >; -+ }; -+ } -+ -+ template< typename T, T N > -+ using make_integer_sequence = typename impl::memoize_sequence< T, N >::type; -+ -+ template< std::size_t N > -+ using make_index_sequence = make_integer_sequence< std::size_t, N >; -+ -+ template< typename... Ts > -+ using index_sequence_for = make_index_sequence< sizeof...( Ts ) >; -+ -+#endif -+ } -+} -+ -+#endif // TAOCPP_SEQUENCES_INCLUDE_MAKE_INTEGER_SEQUENCE_HPP -diff -up chromium-62.0.3202.62/third_party/tao/seq/map.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/map.hpp ---- chromium-62.0.3202.62/third_party/tao/seq/map.hpp.epel7-c++11 2017-10-25 10:08:42.437573579 -0400 -+++ chromium-62.0.3202.62/third_party/tao/seq/map.hpp 2017-10-25 10:05:28.328204354 -0400 -@@ -0,0 +1,31 @@ -+// Copyright (c) 2015-2017 Daniel Frey -+// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ -+ -+#ifndef TAOCPP_SEQUENCES_INCLUDE_MAP_HPP -+#define TAOCPP_SEQUENCES_INCLUDE_MAP_HPP -+ -+#include -+#include -+ -+#include "integer_sequence.hpp" -+#include "select.hpp" -+ -+namespace tao -+{ -+ namespace seq -+ { -+ template< typename, typename > -+ struct map; -+ -+ template< std::size_t... Ns, typename M > -+ struct map< index_sequence< Ns... >, M > -+ { -+ using type = integer_sequence< typename M::value_type, select< Ns, M >::value... >; -+ }; -+ -+ template< typename S, typename M > -+ using map_t = typename map< S, M >::type; -+ } -+} -+ -+#endif // TAOCPP_SEQUENCES_INCLUDE_MAP_HPP -diff -up chromium-62.0.3202.62/third_party/tao/seq/max.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/max.hpp ---- chromium-62.0.3202.62/third_party/tao/seq/max.hpp.epel7-c++11 2017-10-25 10:08:42.437573579 -0400 -+++ chromium-62.0.3202.62/third_party/tao/seq/max.hpp 2017-10-25 10:05:28.328204354 -0400 -@@ -0,0 +1,35 @@ -+// Copyright (c) 2015-2017 Daniel Frey -+// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ -+ -+#ifndef TAOCPP_SEQUENCES_INCLUDE_MAX_HPP -+#define TAOCPP_SEQUENCES_INCLUDE_MAX_HPP -+ -+#include "fold.hpp" -+ -+#include -+ -+namespace tao -+{ -+ namespace seq -+ { -+ namespace impl -+ { -+ template< typename T, T A, T B > -+ using max = std::integral_constant< T, ( ( A > B ) ? A : B ) >; -+ } -+ -+ template< typename T, T... Ns > -+ struct max -+ : fold< impl::max, T, Ns... > -+ { -+ }; -+ -+ template< typename T, T... Ns > -+ struct max< integer_sequence< T, Ns... > > -+ : max< T, Ns... > -+ { -+ }; -+ } -+} -+ -+#endif // TAOCPP_SEQUENCES_INCLUDE_MAX_HPP -diff -up chromium-62.0.3202.62/third_party/tao/seq/min.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/min.hpp ---- chromium-62.0.3202.62/third_party/tao/seq/min.hpp.epel7-c++11 2017-10-25 10:08:42.438573550 -0400 -+++ chromium-62.0.3202.62/third_party/tao/seq/min.hpp 2017-10-25 10:05:28.328204354 -0400 -@@ -0,0 +1,35 @@ -+// Copyright (c) 2015-2017 Daniel Frey -+// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ -+ -+#ifndef TAOCPP_SEQUENCES_INCLUDE_MIN_HPP -+#define TAOCPP_SEQUENCES_INCLUDE_MIN_HPP -+ -+#include "fold.hpp" -+ -+#include -+ -+namespace tao -+{ -+ namespace seq -+ { -+ namespace impl -+ { -+ template< typename T, T A, T B > -+ using min = std::integral_constant< T, ( ( A < B ) ? A : B ) >; -+ } -+ -+ template< typename T, T... Ns > -+ struct min -+ : fold< impl::min, T, Ns... > -+ { -+ }; -+ -+ template< typename T, T... Ns > -+ struct min< integer_sequence< T, Ns... > > -+ : min< T, Ns... > -+ { -+ }; -+ } -+} -+ -+#endif // TAOCPP_SEQUENCES_INCLUDE_MIN_HPP -diff -up chromium-62.0.3202.62/third_party/tao/seq/minus.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/minus.hpp ---- chromium-62.0.3202.62/third_party/tao/seq/minus.hpp.epel7-c++11 2017-10-25 10:08:42.438573550 -0400 -+++ chromium-62.0.3202.62/third_party/tao/seq/minus.hpp 2017-10-25 10:05:28.328204354 -0400 -@@ -0,0 +1,29 @@ -+// Copyright (c) 2015-2017 Daniel Frey -+// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ -+ -+#ifndef TAOCPP_SEQUENCES_INCLUDE_MINUS_HPP -+#define TAOCPP_SEQUENCES_INCLUDE_MINUS_HPP -+ -+#include -+ -+#include "zip.hpp" -+ -+namespace tao -+{ -+ namespace seq -+ { -+ namespace impl -+ { -+ template< typename T, T A, T B > -+ using minus = std::integral_constant< T, A - B >; -+ } -+ -+ template< typename A, typename B > -+ using minus = zip< impl::minus, A, B >; -+ -+ template< typename A, typename B > -+ using minus_t = typename minus< A, B >::type; -+ } -+} -+ -+#endif // TAOCPP_SEQUENCES_INCLUDE_MINUS_HPP -diff -up chromium-62.0.3202.62/third_party/tao/seq/partial_sum.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/partial_sum.hpp ---- chromium-62.0.3202.62/third_party/tao/seq/partial_sum.hpp.epel7-c++11 2017-10-25 10:08:42.439573522 -0400 -+++ chromium-62.0.3202.62/third_party/tao/seq/partial_sum.hpp 2017-10-25 10:05:28.328204354 -0400 -@@ -0,0 +1,44 @@ -+// Copyright (c) 2015-2017 Daniel Frey -+// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ -+ -+#ifndef TAOCPP_SEQUENCES_INCLUDE_PARTIAL_SUM_HPP -+#define TAOCPP_SEQUENCES_INCLUDE_PARTIAL_SUM_HPP -+ -+#include -+#include -+ -+#include "make_integer_sequence.hpp" -+#include "sum.hpp" -+ -+namespace tao -+{ -+ namespace seq -+ { -+ namespace impl -+ { -+ template< std::size_t, typename S, typename = make_index_sequence< S::size() > > -+ struct partial_sum; -+ -+ template< std::size_t I, typename T, T... Ns, std::size_t... Is > -+ struct partial_sum< I, integer_sequence< T, Ns... >, index_sequence< Is... > > -+ : seq::sum< T, ( ( Is < I ) ? Ns : 0 )... > -+ { -+ static_assert( I <= sizeof...( Is ), "tao::seq::partial_sum: I is out of range" ); -+ }; -+ } -+ -+ template< std::size_t I, typename T, T... Ns > -+ struct partial_sum -+ : impl::partial_sum< I, integer_sequence< T, Ns... > > -+ { -+ }; -+ -+ template< std::size_t I, typename T, T... Ns > -+ struct partial_sum< I, integer_sequence< T, Ns... > > -+ : impl::partial_sum< I, integer_sequence< T, Ns... > > -+ { -+ }; -+ } -+} -+ -+#endif // TAOCPP_SEQUENCES_INCLUDE_PARTIAL_SUM_HPP -diff -up chromium-62.0.3202.62/third_party/tao/seq/plus.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/plus.hpp ---- chromium-62.0.3202.62/third_party/tao/seq/plus.hpp.epel7-c++11 2017-10-25 10:08:42.439573522 -0400 -+++ chromium-62.0.3202.62/third_party/tao/seq/plus.hpp 2017-10-25 10:05:28.328204354 -0400 -@@ -0,0 +1,29 @@ -+// Copyright (c) 2015-2017 Daniel Frey -+// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ -+ -+#ifndef TAOCPP_SEQUENCES_INCLUDE_PLUS_HPP -+#define TAOCPP_SEQUENCES_INCLUDE_PLUS_HPP -+ -+#include -+ -+#include "zip.hpp" -+ -+namespace tao -+{ -+ namespace seq -+ { -+ namespace impl -+ { -+ template< typename T, T A, T B > -+ using plus = std::integral_constant< T, A + B >; -+ } -+ -+ template< typename A, typename B > -+ using plus = zip< impl::plus, A, B >; -+ -+ template< typename A, typename B > -+ using plus_t = typename plus< A, B >::type; -+ } -+} -+ -+#endif // TAOCPP_SEQUENCES_INCLUDE_PLUS_HPP -diff -up chromium-62.0.3202.62/third_party/tao/seq/README.chromium.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/README.chromium ---- chromium-62.0.3202.62/third_party/tao/seq/README.chromium.epel7-c++11 2017-10-25 10:08:42.440573492 -0400 -+++ chromium-62.0.3202.62/third_party/tao/seq/README.chromium 2017-10-25 10:08:18.341272571 -0400 -@@ -0,0 +1,15 @@ -+Name: The Art of C++ / Sequences -+Short Name: tao/seq -+URL: https://github.com/taocpp/sequences -+Version: 5fd5378 -+License: MIT -+License File: LICENSE -+Security Critical: No -+ -+Description: -+Source archive: -+ https://github.com/taocpp/sequences -+ -+The Art of C++ / Sequences is a zero-dependency C++11 header-only library that provides efficient -+algorithms to generate and work on variadic templates and std::integer_sequence. -+We use it to support gcc 4.8. -diff -up chromium-62.0.3202.62/third_party/tao/seq/README.md.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/README.md ---- chromium-62.0.3202.62/third_party/tao/seq/README.md.epel7-c++11 2017-10-25 10:08:42.441573463 -0400 -+++ chromium-62.0.3202.62/third_party/tao/seq/README.md 2017-10-25 10:05:28.327204383 -0400 -@@ -0,0 +1,282 @@ -+# The Art of C++ / Sequences -+ -+[![Release](https://img.shields.io/github/release/taocpp/sequences.svg)](https://github.com/taocpp/sequences/releases/latest) -+[![TravisCI](https://travis-ci.org/taocpp/sequences.svg)](https://travis-ci.org/taocpp/sequences) -+[![AppVeyor](https://ci.appveyor.com/api/projects/status/github/taocpp/sequences?svg=true)](https://ci.appveyor.com/project/taocpp/sequences) -+ -+The Art of C++ / Sequences is a zero-dependency C++11 header-only library that provides efficient algorithms to generate and work on variadic templates and [`std::integer_sequence`](http://en.cppreference.com/w/cpp/utility/integer_sequence). -+ -+## Compatibility -+ -+* Requires C++11 or newer. -+* Tested with GCC 4.8+, Clang 3.4+, Xcode 6+ and Visual Studio 2017. -+ -+The following compilers have bugs which prevent our code from compiling: -+ -+* Clang 4.0. -+* Xcode 7 and 8 when used with C++14 or higher. -+* Visual Studio 2015. -+ -+(If you know how to fix those, please let us know) -+ -+Part of the library might still work, e.g. Clang 4.0 only has problems with `zip` and `fold` (and everything based on it). -+ -+## Provided algorithms and examples -+ -+* All provided templates are in the nested namespace `tao::seq`. -+* All templates don't use C++14 features, therefore being compatible with C++11. Sometimes, C++14/C++17 features are used conditionally, taking advantage of newer language features when available but providing C++11-compatible implementations otherwise. -+* All templates use `tao::seq::integer_sequence`, etc. internally, therefore being compatible with C++11. -+* All templates use `tao::seq::make_integer_sequence`, etc. internally, therefore using the most scalable solution available. -+ -+#### Header `tao/seq/integer_sequence.hpp` -+ -+Provides: -+ -+* `integer_sequence< typename T, T N >` -+* `index_sequence< std::size_t N >` -+ -+Notes: -+ -+* When available (C++14 or newer), the above are type-aliases for `std::integer_sequence` and `std::index_sequence`. -+ -+#### Header `tao/seq/make_integer_sequence.hpp` -+ -+Efficient versions of sequence generators. -+ -+* `make_integer_sequence< typename T, T N >` -+* `make_index_sequence< std::size_t N >` -+* `index_sequence_for< typename... Ts >` -+ -+Examples: -+ -+* `make_integer_sequence` ➙ `integer_sequence` -+* `make_integer_sequence` ➙ `integer_sequence` -+* `make_integer_sequence` ➙ `integer_sequence` -+* `make_index_sequence<0>` ➙ `index_sequence<>` -+* `make_index_sequence<1>` ➙ `index_sequence<0>` -+* `make_index_sequence<5>` ➙ `index_sequence<0,1,2,3,4>` -+* `index_sequence_for` ➙ `index_sequence<0,1,2>` -+ -+Notes: -+ -+libc++ already has very efficient versions for the above, so they are pulled in with a using-declaration. Only if we don't know if the STL's versions are at least O(log N) we provide our own implementations. -+ -+Our own implementation has O(log N) instantiation depth. This allows for very large sequences without the need to increase the compiler's default instantiation depth limits. For example, GCC and Clang generate `index_sequence<10000>` in ~0.15s (on my machine, of course). The standard library version from libstdc++, when trying to create `index_sequence<5000>` and with its O(N) implementation, requires ~30s, >3GB of RAM and `-ftemplate-depth=5100`. -+ -+#### Header `tao/seq/make_integer_range.hpp` -+ -+Generate half-open ranges of integers. -+ -+* `make_integer_range< typename T, T N, T M >` -+* `make_index_range< std::size_t N, std::size_t M >` -+ -+Examples: -+ -+* `make_integer_range` ➙ `integer_sequence` -+* `make_integer_range` ➙ `integer_sequence` -+* `make_integer_sequence` ➙ `integer_sequence` -+* `make_index_range<5,5>` ➙ `index_sequence<>` -+* `make_index_range<2,5>` ➙ `index_sequence<2,3,4>` -+ -+#### Header `tao/seq/sum.hpp` -+ -+Integral constant to provide the sum of `Ns`. -+ -+* `sum< typename T, T... Ns >` -+* `sum< typename S >` -+ -+Examples: -+ -+* `sum::value` ➙ `9` -+* `sum>::value` ➙ `10` -+ -+#### Header `tao/seq/partial_sum.hpp` -+ -+Integral constant to provide the sum of the first `I` elements of `Ns`. -+ -+* `partial_sum< std::size_t I, typename T, T... Ns >` -+* `partial_sum< std::size_t I, typename S >` -+ -+Examples: -+ -+* `partial_sum<0,int,1,4,3,1>::value` ➙ `0` -+* `partial_sum<2,int,1,4,3,1>::value` ➙ `5` -+* `partial_sum<4,make_index_sequence<5>>::value` ➙ `6` -+ -+#### Header `tao/seq/exclusive_scan.hpp` -+ -+Provides a sequence with the exclusive scan of the input sequence. -+ -+* `exclusive_scan_t< typename T, T... Ns >` -+* `exclusive_scan_t< typename S >` -+ -+Examples: -+ -+* `exclusive_scan_t` ➙ `integer_sequence` -+ -+#### Header `tao/seq/inclusive_scan.hpp` -+ -+Provides a sequence with the inclusive scan of the input sequence. -+ -+* `inclusive_scan_t< typename T, T... Ns >` -+* `inclusive_scan_t< typename S >` -+ -+Examples: -+ -+* `inclusive_scan_t` ➙ `integer_sequence` -+ -+#### Header `tao/seq/zip.hpp` -+ -+Applies a binary operation to elements from two sequences. -+ -+* `zip_t< template< typename U, U, U > class OP, typename L, typename R >` -+ -+Notes: -+ -+Both sequences may have a different element type, the resulting sequence's type is calculated with `std::common_type_t`. -+ -+#### Header `tao/seq/plus.hpp` -+ -+Provides a sequence which is the element-wise sum of its input sequences. -+ -+* `plus_t< typename L, typename R >` -+ -+Notes: -+ -+Both sequences may have a different element type, the resulting sequence's type is calculated with `std::common_type_t`. -+ -+Examples: -+ -+* `using A = index_sequence<1,4,0,3,1>` -+* `using B = make_index_sequence<5>` -+* `plus_t` ➙ `index_sequence<1,5,2,6,5>` -+ -+#### Header `tao/seq/minus.hpp` -+ -+Provides a sequence which is the element-wise sum of its input sequences. -+ -+* `minus_t< typename L, typename R >` -+ -+Notes: -+ -+Both sequences may have a different element type, the resulting sequence's type is calculated with `std::common_type_t`. -+ -+Examples: -+ -+* `using A = integer_sequence` -+* `using B = integer_sequence` -+* `minus_t` ➙ `integer_sequence` -+* `minus_t` ➙ `integer_sequence` -+ -+#### Header `tao/seq/head.hpp` -+ -+Integral constant to provide the first element of a non-empty sequence. -+ -+* `head< typename T, T... >` -+* `head< typename S >` -+ -+#### Header `tao/seq/tail.hpp` -+ -+Removed the first element of a non-empty sequence. -+ -+* `tail_t< typename T, T... >` -+* `tail_t< typename S >` -+ -+#### Header `tao/seq/select.hpp` -+ -+Integral constant to provide the `I`th element of a non-empty sequence. -+ -+* `select< std::size_t I, typename T, T... >` -+* `select< std::size_t I, typename S >` -+ -+#### Header `tao/seq/concatenate.hpp` -+ -+Concatenate the values. -+ -+* `concatenate_t< typename T, typename U >` -+ -+Notes: -+ -+Both sequences may have a different element type, the resulting sequence's type is calculated with `std::common_type_t`. -+ -+#### Header `tao/seq/fold.hpp` -+ -+Integral constant calculated by "folding" a sequence of values with a given binary operation. -+ -+* `fold< template< typename U, U, U > class OP, typename T, T... >` -+* `fold< template< typename U, U, U > class OP, typename S >` -+ -+#### Header `tao/seq/min.hpp` -+ -+Integral constant to provide the minimum value. -+ -+* `min< typename T, T... >` -+* `min< typename S >` -+ -+Notes: -+ -+Implemented with `fold` like this: -+ -+ namespace impl -+ { -+ template< typename T, T A, T B > -+ using min = std::integral_constant< T, ( ( A < B ) ? A : B ) >; -+ } -+ -+ template< typename T, T... Ns > -+ using min = fold< impl::min, T, Ns... >; -+ -+#### Header `tao/seq/max.hpp` -+ -+Integral constant to provide the maximum value. -+ -+* `max< typename T, T... >` -+* `max< typename S >` -+ -+#### Header `tao/seq/map.hpp` -+ -+Map a sequence of indices to a sequence of values. -+ -+* `map_t< typename I, typename M >` -+ -+Examples: -+ -+* `using I = index_sequence<1,0,3,2,1,1,3>` -+* `using M = integer_sequence` -+* `map_t` ➙ `integer_sequence` -+ -+#### Header `tao/seq/is_all.hpp` -+ -+Integral constant which is true if all boolean parameters are true (logical and). -+ -+* `is_all< bool... >` -+ -+Examples: -+ -+* `is_all::value` ➙ `true` -+* `is_all::value` ➙ `false` -+* `is_all<>::value` ➙ `true` -+ -+#### Header `tao/seq/is_any.hpp` -+ -+Integral constant which is true if any boolean parameter is true (logical or). -+ -+* `is_any< bool... >` -+ -+Examples: -+ -+* `is_any::value` ➙ `true` -+* `is_any::value` ➙ `false` -+* `is_any<>::value` ➙ `false` -+ -+## License -+ -+The Art of C++ is certified [Open Source](http://www.opensource.org/docs/definition.html) software. It may be used for any purpose, including commercial purposes, at absolutely no cost. It is distributed under the terms of the [MIT license](http://www.opensource.org/licenses/mit-license.html) reproduced here. -+ -+> Copyright (c) 2015-2017 Daniel Frey -+> -+> Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -+> -+> The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. -+> -+> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -diff -up chromium-62.0.3202.62/third_party/tao/seq/scale.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/scale.hpp ---- chromium-62.0.3202.62/third_party/tao/seq/scale.hpp.epel7-c++11 2017-10-25 10:08:42.441573463 -0400 -+++ chromium-62.0.3202.62/third_party/tao/seq/scale.hpp 2017-10-25 10:05:28.328204354 -0400 -@@ -0,0 +1,66 @@ -+// Copyright (c) 2015-2017 Daniel Frey -+// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ -+ -+#ifndef TAOCPP_SEQUENCES_INCLUDE_SCALE_HPP -+#define TAOCPP_SEQUENCES_INCLUDE_SCALE_HPP -+ -+#include "integer_sequence.hpp" -+ -+namespace tao -+{ -+ namespace seq -+ { -+ namespace impl -+ { -+ template< typename T > -+ struct is_integer_sequence : std::false_type -+ { -+ }; -+ -+ template< typename T, T... Ns > -+ struct is_integer_sequence< integer_sequence< T, Ns... > > : std::true_type -+ { -+ }; -+ -+ template< typename T > -+ struct element_type -+ { -+ using type = T; -+ }; -+ -+ template< typename T, T... Ns > -+ struct element_type< integer_sequence< T, Ns... > > -+ { -+ using type = T; -+ }; -+ -+ template< bool, typename > -+ struct scale -+ { -+ template< typename T, T S, T... Ns > -+ struct impl -+ { -+ using type = integer_sequence< T, S * Ns... >; -+ }; -+ }; -+ -+ template< typename T, T... Ns > -+ struct scale< true, integer_sequence< T, Ns... > > -+ { -+ template< typename, T S > -+ struct impl -+ { -+ using type = integer_sequence< T, S * Ns... >; -+ }; -+ }; -+ } -+ -+ template< typename T, typename impl::element_type< T >::type S, typename impl::element_type< T >::type... Ns > -+ using scale = typename impl::scale< impl::is_integer_sequence< T >::value, T >::template impl< T, S, Ns... >; -+ -+ template< typename T, typename impl::element_type< T >::type S, typename impl::element_type< T >::type... Ns > -+ using scale_t = typename scale< T, S, Ns... >::type; -+ } -+} -+ -+#endif // TAOCPP_SEQUENCES_INCLUDE_SCALE_HPP -diff -up chromium-62.0.3202.62/third_party/tao/seq/select.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/select.hpp ---- chromium-62.0.3202.62/third_party/tao/seq/select.hpp.epel7-c++11 2017-10-25 10:08:42.442573435 -0400 -+++ chromium-62.0.3202.62/third_party/tao/seq/select.hpp 2017-10-25 10:05:28.328204354 -0400 -@@ -0,0 +1,31 @@ -+// Copyright (c) 2015-2017 Daniel Frey -+// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ -+ -+#ifndef TAOCPP_SEQUENCES_INCLUDE_SELECT_HPP -+#define TAOCPP_SEQUENCES_INCLUDE_SELECT_HPP -+ -+#include -+#include -+ -+#include "at_index.hpp" -+#include "integer_sequence.hpp" -+ -+namespace tao -+{ -+ namespace seq -+ { -+ template< std::size_t I, typename T, T... Ns > -+ struct select -+ : at_index_t< I, std::integral_constant< T, Ns >... > -+ { -+ }; -+ -+ template< std::size_t I, typename T, T... Ns > -+ struct select< I, integer_sequence< T, Ns... > > -+ : select< I, T, Ns... > -+ { -+ }; -+ } -+} -+ -+#endif // TAOCPP_SEQUENCES_INCLUDE_SELECT_HPP -diff -up chromium-62.0.3202.62/third_party/tao/seq/sum.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/sum.hpp ---- chromium-62.0.3202.62/third_party/tao/seq/sum.hpp.epel7-c++11 2017-10-25 10:08:42.443573405 -0400 -+++ chromium-62.0.3202.62/third_party/tao/seq/sum.hpp 2017-10-25 10:05:28.328204354 -0400 -@@ -0,0 +1,79 @@ -+// Copyright (c) 2015-2017 Daniel Frey -+// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ -+ -+#ifndef TAOCPP_SEQUENCES_INCLUDE_SUM_HPP -+#define TAOCPP_SEQUENCES_INCLUDE_SUM_HPP -+ -+#include -+#include -+ -+#include "config.hpp" -+#include "integer_sequence.hpp" -+ -+#ifndef TAOCPP_FOLD_EXPRESSIONS -+#include "make_integer_sequence.hpp" -+#include -+#endif -+ -+namespace tao -+{ -+ namespace seq -+ { -+ -+#ifdef TAOCPP_FOLD_EXPRESSIONS -+ -+ template< typename T, T... Ns > -+ struct sum -+ : std::integral_constant< T, ( Ns + ... + T( 0 ) ) > -+ { -+ }; -+ -+#else -+ -+ namespace impl -+ { -+ template< std::size_t, std::size_t N > -+ struct chars -+ { -+ char dummy[ N + 1 ]; -+ }; -+ -+ template< typename, std::size_t... > -+ struct collector; -+ -+ template< std::size_t... Is, std::size_t... Ns > -+ struct collector< index_sequence< Is... >, Ns... > -+ : chars< Is, Ns >... -+ { -+ }; -+ -+ template< bool, std::size_t N, typename T, T... Ns > -+ struct sum -+ { -+ using type = std::integral_constant< T, T( sizeof( collector< make_index_sequence< N >, ( ( Ns > 0 ) ? Ns : 0 )... > ) - N ) - T( sizeof( collector< make_index_sequence< N >, ( ( Ns < 0 ) ? -Ns : 0 )... > ) - N ) >; -+ }; -+ -+ template< std::size_t N, typename T, T... Ns > -+ struct sum< true, N, T, Ns... > -+ { -+ using type = std::integral_constant< T, T( sizeof( collector< make_index_sequence< N >, ( ( Ns > 0 ) ? Ns : 0 )... > ) - N ) >; -+ }; -+ } -+ -+ template< typename T, T... Ns > -+ struct sum -+ : impl::sum< std::is_unsigned< T >::value, sizeof...( Ns ) + 1, T, Ns..., 0 >::type -+ { -+ }; -+ -+#endif -+ -+ template< typename T, T... Ns > -+ struct sum< integer_sequence< T, Ns... > > -+ : sum< T, Ns... > -+ { -+ }; -+ } -+} -+ -+#endif // TAOCPP_SEQUENCES_INCLUDE_SUM_HPP -diff -up chromium-62.0.3202.62/third_party/tao/seq/tail.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/tail.hpp ---- chromium-62.0.3202.62/third_party/tao/seq/tail.hpp.epel7-c++11 2017-10-25 10:08:42.444573376 -0400 -+++ chromium-62.0.3202.62/third_party/tao/seq/tail.hpp 2017-10-25 10:05:28.329204325 -0400 -@@ -0,0 +1,35 @@ -+// Copyright (c) 2015-2017 Daniel Frey -+// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ -+ -+#ifndef TAOCPP_SEQUENCES_INCLUDE_TAIL_HPP -+#define TAOCPP_SEQUENCES_INCLUDE_TAIL_HPP -+ -+#include -+ -+#include "integer_sequence.hpp" -+ -+namespace tao -+{ -+ namespace seq -+ { -+ template< typename T, T... Ns > -+ struct tail; -+ -+ template< typename T, T N, T... Ns > -+ struct tail< T, N, Ns... > -+ { -+ using type = integer_sequence< T, Ns... >; -+ }; -+ -+ template< typename T, T... Ns > -+ struct tail< integer_sequence< T, Ns... > > -+ : tail< T, Ns... > -+ { -+ }; -+ -+ template< typename T, T... Ns > -+ using tail_t = typename tail< T, Ns... >::type; -+ } -+} -+ -+#endif // TAOCPP_SEQUENCES_INCLUDE_TAIL_HPP -diff -up chromium-62.0.3202.62/third_party/tao/seq/type_by_index.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/type_by_index.hpp ---- chromium-62.0.3202.62/third_party/tao/seq/type_by_index.hpp.epel7-c++11 2017-10-25 10:08:42.445573347 -0400 -+++ chromium-62.0.3202.62/third_party/tao/seq/type_by_index.hpp 2017-10-25 10:05:28.329204325 -0400 -@@ -0,0 +1,57 @@ -+// Copyright (c) 2015-2017 Daniel Frey -+// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ -+ -+#ifndef TAOCPP_SEQUENCES_INCLUDE_TYPE_BY_INDEX_HPP -+#define TAOCPP_SEQUENCES_INCLUDE_TYPE_BY_INDEX_HPP -+ -+#include -+#include -+ -+#include "make_integer_sequence.hpp" -+ -+namespace tao -+{ -+ namespace seq -+ { -+ // based on http://stackoverflow.com/questions/18942322 -+ -+ namespace impl -+ { -+ template< std::size_t > -+ struct any -+ { -+ any( ... ); -+ }; -+ -+ template< typename > -+ struct wrapper; -+ -+ template< typename > -+ struct unwrap; -+ -+ template< typename T > -+ struct unwrap< wrapper< T > > -+ { -+ using type = T; -+ }; -+ -+ template< typename > -+ struct get_nth; -+ -+ template< std::size_t... Is > -+ struct get_nth< index_sequence< Is... > > -+ { -+ template< typename T > -+ static T deduce( any< Is & 0 >..., T*, ... ); -+ }; -+ } -+ -+ template< std::size_t I, typename... Ts > -+ using type_by_index = impl::unwrap< decltype( impl::get_nth< make_index_sequence< I > >::deduce( std::declval< impl::wrapper< Ts >* >()... ) ) >; -+ -+ template< std::size_t I, typename... Ts > -+ using type_by_index_t = typename type_by_index< I, Ts... >::type; -+ } -+} -+ -+#endif // TAOCPP_SEQUENCES_INCLUDE_TYPE_BY_INDEX_HPP -diff -up chromium-62.0.3202.62/third_party/tao/seq/zip.hpp.epel7-c++11 chromium-62.0.3202.62/third_party/tao/seq/zip.hpp ---- chromium-62.0.3202.62/third_party/tao/seq/zip.hpp.epel7-c++11 2017-10-25 10:08:42.446573319 -0400 -+++ chromium-62.0.3202.62/third_party/tao/seq/zip.hpp 2017-10-25 10:05:28.329204325 -0400 -@@ -0,0 +1,30 @@ -+// Copyright (c) 2015-2017 Daniel Frey -+// Please see LICENSE for license or visit https://github.com/taocpp/sequences/ -+ -+#ifndef TAOCPP_SEQUENCES_INCLUDE_ZIP_HPP -+#define TAOCPP_SEQUENCES_INCLUDE_ZIP_HPP -+ -+#include -+ -+#include "integer_sequence.hpp" -+ -+namespace tao -+{ -+ namespace seq -+ { -+ template< template< typename U, U, U > class, typename, typename > -+ struct zip; -+ -+ template< template< typename U, U, U > class OP, typename TA, TA... As, typename TB, TB... Bs > -+ struct zip< OP, integer_sequence< TA, As... >, integer_sequence< TB, Bs... > > -+ { -+ using CT = typename std::common_type< TA, TB >::type; -+ using type = integer_sequence< CT, OP< CT, As, Bs >::value... >; -+ }; -+ -+ template< template< typename U, U, U > class OP, typename A, typename B > -+ using zip_t = typename zip< OP, A, B >::type; -+ } -+} -+ -+#endif // TAOCPP_SEQUENCES_INCLUDE_ZIP_HPP -diff -up chromium-62.0.3202.62/tools/ipc_fuzzer/fuzzer/fuzzer.cc.epel7-c++11 chromium-62.0.3202.62/tools/ipc_fuzzer/fuzzer/fuzzer.cc ---- chromium-62.0.3202.62/tools/ipc_fuzzer/fuzzer/fuzzer.cc.epel7-c++11 2017-10-25 10:18:10.415133815 -0400 -+++ chromium-62.0.3202.62/tools/ipc_fuzzer/fuzzer/fuzzer.cc 2017-10-25 10:18:58.888807178 -0400 -@@ -23,6 +23,7 @@ - #include "tools/ipc_fuzzer/fuzzer/rand_util.h" - #include "tools/ipc_fuzzer/message_lib/message_cracker.h" - #include "tools/ipc_fuzzer/message_lib/message_file.h" -+#include "third_party/tao/seq/integer_sequence.hpp" - - #if defined(OS_POSIX) - #include -@@ -1680,14 +1681,14 @@ class FuzzerHelper, void>; - - static std::unique_ptr Fuzz(IPC::Message* msg, Fuzzer* fuzzer) { -- return FuzzImpl(msg, fuzzer, std::index_sequence_for()); -+ return FuzzImpl(msg, fuzzer, tao::seq::index_sequence_for()); - } - - private: - template - static std::unique_ptr FuzzImpl(IPC::Message* msg, - Fuzzer* fuzzer, -- std::index_sequence) { -+ tao::seq::index_sequence) { - typename Message::Param p; - if (msg) { - Message::Read(static_cast(msg), &p); -@@ -1707,14 +1708,14 @@ class FuzzerHelper< - using Message = IPC::MessageT, std::tuple>; - - static std::unique_ptr Fuzz(IPC::Message* msg, Fuzzer* fuzzer) { -- return FuzzImpl(msg, fuzzer, std::index_sequence_for()); -+ return FuzzImpl(msg, fuzzer, tao::seq::index_sequence_for()); - } - - private: - template - static std::unique_ptr FuzzImpl(IPC::Message* msg, - Fuzzer* fuzzer, -- std::index_sequence) { -+ tao::seq::index_sequence) { - typename Message::SendParam p; - Message* real_msg = static_cast(msg); - std::unique_ptr new_msg; diff --git a/chromium-62.0.3202.62-epel7-noc++14.patch b/chromium-62.0.3202.62-epel7-noc++14.patch deleted file mode 100644 index 6ed714a..0000000 --- a/chromium-62.0.3202.62-epel7-noc++14.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-62.0.3202.62/tools/gn/bootstrap/bootstrap.py.epel7-noc++14 chromium-62.0.3202.62/tools/gn/bootstrap/bootstrap.py ---- chromium-62.0.3202.62/tools/gn/bootstrap/bootstrap.py.epel7-noc++14 2017-10-24 22:20:25.881183458 -0400 -+++ chromium-62.0.3202.62/tools/gn/bootstrap/bootstrap.py 2017-10-24 22:20:38.395943374 -0400 -@@ -349,7 +349,7 @@ def write_gn_ninja(path, root_gen_dir, o - '-pipe', - '-fno-exceptions' - ]) -- cflags_cc.extend(['-std=c++14', '-Wno-c++11-narrowing']) -+ cflags_cc.extend(['-std=c++11', '-Wno-c++11-narrowing']) - if is_aix: - cflags.extend(['-maix64']) - ldflags.extend([ '-maix64 -Wl,-bbigtoc' ]) diff --git a/chromium.spec b/chromium.spec index da74cc5..8c2b738 100644 --- a/chromium.spec +++ b/chromium.spec @@ -26,7 +26,7 @@ # Requires is trickier. %global __provides_exclude_from %{chromium_path}/.*\\.so|%{chromium_path}/lib/.*\\.so -%global privlibs libEGL|libGLESv2|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_swapchain|libVkLayer_threading|libVkLayer_unique_objects|libaccessibility|libanimation|libaura|libaura_extra|libbase|libbase_i18n|libbindings|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core|libblink_modules|libblink_mojo_bindings_shared|libblink_offscreen_canvas_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcc|libcc_animation|libcc_base|libcc_blink|libcc_debug|libcc_ipc|libcc_paint|libcdm_manager|libchromium_sqlite3|libclearkeycdm|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_gamepad|libdevice_vr_mojo_bindings|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevices|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libembedder|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libfingerprint|libffmpeg|libgcm|libgeolocation|libgeometry|libgeometry_skia|libgesture_detection|libgfx|libgfx_ipc|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_switches|libgfx_x11|libgin|libgl_in_process_context|libgl_init|libgl_wrapper|libgles2_c_lib|libgles2_implementation|libgles2_utils|libgpu|libgtk3ui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc|libipc_mojom|libipc_mojom_shared|libjs|libkeyboard|libkeyboard_with_content|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libmanager|libmedia|libmedia_blink|libmedia_gpu|libmedia_mojo_services|libmessage_center|libmetrics_cpp|libmidi|libmirclient.9|libmojo_common_lib|libmojo_ime_lib|libmojo_public_system|libmojo_public_system_cpp|libmojo_system_impl|libnative_theme|libnet|libnet_with_v8|libonc|libplatform|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|librange|libresource_coordinator_cpp|libresource_coordinator_public_interfaces_internal_shared|libsandbox_services|libseccomp_bpf|libsensors|libservice|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom|libservice_manager_mojom_blink|libservice_manager_mojom_constants|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_shared|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libui_base|libui_base_ime|libui_base_x|libui_data_pack|libui_devtools|libui_touch_selection|libui_views_mus_lib|liburl|liburl_ipc|liburl_matcher|libuser_manager|libuser_prefs|libv8|libv8_libbase|libv8_libplatform|libviews|libviz_common|libviz_resource_format|libweb_dialogs|libwebdata_common|libwebview|libwidevinecdm.fedora|libwidevinecdmadapter|libwm|libwm_public|libwtf|libx11_events_platform|libx11_window +%global privlibs libEGL|libGLESv2|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_swapchain|libVkLayer_threading|libVkLayer_unique_objects|libaccessibility|libanimation|libaura|libaura_extra|libbase|libbase_i18n|libbindings|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core|libblink_modules|libblink_mojo_bindings_shared|libblink_offscreen_canvas_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcc|libcc_animation|libcc_base|libcc_blink|libcc_debug|libcc_ipc|libcc_paint|libcdm_manager|libchromium_sqlite3|libclearkeycdm|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_gamepad|libdevice_vr_mojo_bindings|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevices|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libembedder|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libfingerprint|libffmpeg|libgcm|libgeolocation|libgeometry|libgeometry_skia|libgesture_detection|libgfx|libgfx_ipc|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_switches|libgfx_x11|libgin|libgl_in_process_context|libgl_init|libgl_wrapper|libgles2_c_lib|libgles2_implementation|libgles2_utils|libgpu|libgtk3ui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc|libipc_mojom|libipc_mojom_shared|libjs|libkeyboard|libkeyboard_with_content|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libmanager|libmedia|libmedia_blink|libmedia_gpu|libmedia_mojo_services|libmessage_center|libmetrics_cpp|libmidi|libmirclient.9|libmojo_common_lib|libmojo_ime_lib|libmojo_public_system|libmojo_public_system_cpp|libmojo_system_impl|libnative_theme|libnet|libnet_with_v8|libonc|libplatform|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|librange|libresource_coordinator_cpp|libresource_coordinator_public_interfaces_internal_shared|libsandbox_services|libseccomp_bpf|libsensors|libservice|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom|libservice_manager_mojom_blink|libservice_manager_mojom_constants|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_shared|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libui_base|libui_base_ime|libui_base_x|libui_data_pack|libui_devtools|libui_touch_selection|libui_views_mus_lib|liburl|liburl_ipc|liburl_matcher|libuser_manager|libuser_prefs|libv8|libv8_libbase|libv8_libplatform|libviews|libviz_common|libviz_resource_format|libweb_dialogs|libwebdata_common|libwebview|libwidevinecdm|libwidevinecdmadapter|libwm|libwm_public|libwtf|libx11_events_platform|libx11_window %global __requires_exclude ^(%{privlibs})\\.so # Try to not use the Xvfb as it is slow.. @@ -118,8 +118,8 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3202.62 -Release: 1%{?dist}.1 +Version: %{majorversion}.0.3202.75 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -216,9 +216,6 @@ Patch62: chromium-gcc5-r3.patch Patch63: chromium-gn-bootstrap-r17.patch # Fix _cplusplus conditional Patch64: chromium-62.0.3202.62-correct-cplusplus-check.patch -# epel7 does not know about c++14 -Patch65: chromium-62.0.3202.62-epel7-noc++14.patch -Patch66: chromium-62.0.3202.62-epel7-c++11-support.patch ### Chromium Tests Patches ### Patch100: chromium-46.0.2490.86-use_system_opus.patch @@ -399,6 +396,10 @@ BuildRequires: systemd # using the built from source version on aarch64 BuildRequires: ninja-build +%if 0%{?rhel} == 7 +BuildRequires: devtoolset-7-toolchain, devtoolset-7-libatomic-devel +%endif + # We pick up an automatic requires on the library, but we need the version check # because the nss shared library is unversioned. # This is to prevent someone from hitting http://code.google.com/p/chromium/issues/detail?id=26448 @@ -668,8 +669,6 @@ udev. %patch59 -p1 -b .gcc-nc %patch60 -p1 -b .nonullptr %patch61 -p1 -b .another-rvalue-fix -%patch65 -p1 -b .epel7-noc++14 -%patch66 -p1 -b .epel7-c++11 %endif %patch50 -p1 -b .pathfix %patch53 -p1 -b .nogccoptmath @@ -809,9 +808,6 @@ CHROMIUM_CORE_GN_DEFINES+=' treat_warnings_as_errors=false linux_use_bundled_bin %ifarch aarch64 CHROMIUM_CORE_GN_DEFINES+=' target_cpu="arm64"' %endif -%if 0%{?rhel} == 7 -CHROMIUM_CORE_GN_DEFINES+=' use_cxx11=true' -%endif export CHROMIUM_CORE_GN_DEFINES CHROMIUM_BROWSER_GN_DEFINES="" @@ -990,10 +986,6 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/swiftshader/third_party/subzero' \ 'third_party/swiftshader/third_party/LLVM' \ 'third_party/swiftshader/third_party/llvm-subzero' \ -%if 0%{?rhel} == 7 - 'third_party/tao' \ - 'third_party/tao/seq' \ -%endif 'third_party/tcmalloc' \ 'third_party/usb_ids' \ 'third_party/usrsctp' \ @@ -1077,6 +1069,10 @@ sed -i '/aarch64)/ a \ exec "/usr/bin/ninja-build" "$@";;\' ../depot_tool %endif sed -i 's|exec "${THIS_DIR}/ninja-linux${LONG_BIT}"|exec "/usr/bin/ninja-build"|g' ../depot_tools/ninja +%if 0%{?rhel} == 7 +. /opt/rh/devtoolset-7/enable +%endif + tools/gn/bootstrap/bootstrap.py -v --gn-gen-args "$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{target}/gn gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{target} @@ -1103,6 +1099,9 @@ FILE=chrome/common/channel_info_posix.cc sed -i.orig -e 's/getenv("CHROME_VERSION_EXTRA")/"Fedora Project"/' $FILE %build +%if 0%{?rhel} == 7 +. /opt/rh/devtoolset-7/enable +%endif %if %{?tests} # Tests targets taken from testing/buildbot/chromium.linux.json and obtained with @@ -1910,6 +1909,10 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Fri Oct 27 2017 Tom Callaway 62.0.3202.75-1 +- update to 62.0.3202.75 +- use devtoolset-7-toolchain to build on epel7 + * Tue Oct 24 2017 Tom Callaway 62.0.3202.62-1.1 - do not attempt std=c++14 on epel7 diff --git a/sources b/sources index 9d1d29d..2aea4ff 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 -SHA512 (chromium-62.0.3202.62-clean.tar.xz) = 5151cdd4cc9f5735984ea16615311dbec759d62496b619fa5a04e06e08821ccba7f11e2d1835e2020edcb783150cc7f1880e62084ae9f69057fabea0459e147b +SHA512 (chromium-62.0.3202.75-clean.tar.xz) = 4b146d7f4d6d45ae8e56ede13539320a1cc0969fe4a00e6ef47d64dd162442b2089931f80265d852f3c376afc7de0c82fcc1f4544bba073256426626b709f71f From bc9e77bbacb17d7eec4e5b01fbc358dcc5263528 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 8 Nov 2017 12:59:00 -0500 Subject: [PATCH 0156/1449] 62.0.3202.89 --- .gitignore | 1 + chromium.spec | 5 ++++- sources | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index da86396..5662256 100644 --- a/.gitignore +++ b/.gitignore @@ -32,3 +32,4 @@ /chromium-61.0.3163.79-clean.tar.xz /chromium-61.0.3163.100-clean.tar.xz /chromium-62.0.3202.75-clean.tar.xz +/chromium-62.0.3202.89-clean.tar.xz diff --git a/chromium.spec b/chromium.spec index 8c2b738..9b2e687 100644 --- a/chromium.spec +++ b/chromium.spec @@ -118,7 +118,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3202.75 +Version: %{majorversion}.0.3202.89 Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home @@ -1909,6 +1909,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Wed Nov 8 2017 Tom Callaway 62.0.3202.89-1 +- update to 62.0.3202.89 + * Fri Oct 27 2017 Tom Callaway 62.0.3202.75-1 - update to 62.0.3202.75 - use devtoolset-7-toolchain to build on epel7 diff --git a/sources b/sources index 2aea4ff..c0429f5 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 -SHA512 (chromium-62.0.3202.75-clean.tar.xz) = 4b146d7f4d6d45ae8e56ede13539320a1cc0969fe4a00e6ef47d64dd162442b2089931f80265d852f3c376afc7de0c82fcc1f4544bba073256426626b709f71f +SHA512 (chromium-62.0.3202.89-clean.tar.xz) = b1a8720ea61c5c71a0ff15a278f20e7d0d3218814f883ce2d5f6e949fb9dd61ac6d4cc6b4c517eb13b11b308593e648bde2f3de48ece390d5647670725b8f5d9 From db2acc00d95086384e5a521b4a6282f340477fc3 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 15 Nov 2017 12:25:41 +0100 Subject: [PATCH 0157/1449] Remove support for running the unit tests They are not being run for more than a year and we really don't have a manpower to support them. --- chromium-46.0.2490.86-use_system_opus.patch | 12 - ...ium-58.0.3029.81-use_system_harfbuzz.patch | 12 - chromium.spec | 403 +----------------- 3 files changed, 2 insertions(+), 425 deletions(-) delete mode 100644 chromium-46.0.2490.86-use_system_opus.patch delete mode 100644 chromium-58.0.3029.81-use_system_harfbuzz.patch diff --git a/chromium-46.0.2490.86-use_system_opus.patch b/chromium-46.0.2490.86-use_system_opus.patch deleted file mode 100644 index d54938b..0000000 --- a/chromium-46.0.2490.86-use_system_opus.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-46.0.2490.86/media/cast/receiver/audio_decoder_unittest.cc.use_system_opus chromium-46.0.2490.86/media/cast/receiver/audio_decoder_unittest.cc ---- chromium-46.0.2490.86/media/cast/receiver/audio_decoder_unittest.cc.use_system_opus 2015-10-07 04:42:12.000000000 +0200 -+++ chromium-46.0.2490.86/media/cast/receiver/audio_decoder_unittest.cc 2015-11-11 16:11:13.535250609 +0100 -@@ -13,7 +13,7 @@ - #include "media/cast/test/utility/audio_utility.h" - #include "media/cast/test/utility/standalone_cast_environment.h" - #include "testing/gtest/include/gtest/gtest.h" --#include "third_party/opus/src/include/opus.h" -+#include - - namespace media { - namespace cast { diff --git a/chromium-58.0.3029.81-use_system_harfbuzz.patch b/chromium-58.0.3029.81-use_system_harfbuzz.patch deleted file mode 100644 index df784fd..0000000 --- a/chromium-58.0.3029.81-use_system_harfbuzz.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-58.0.3029.81/ui/gfx/render_text_harfbuzz.h.use_system_harfbuzz chromium-58.0.3029.81/ui/gfx/render_text_harfbuzz.h ---- chromium-58.0.3029.81/ui/gfx/render_text_harfbuzz.h.use_system_harfbuzz 2017-04-21 14:58:23.182030756 -0400 -+++ chromium-58.0.3029.81/ui/gfx/render_text_harfbuzz.h 2017-04-21 15:06:22.681991351 -0400 -@@ -12,7 +12,7 @@ - #include - - #include "base/macros.h" --#include "third_party/harfbuzz-ng/src/hb.h" -+#include - #include "third_party/icu/source/common/unicode/ubidi.h" - #include "third_party/icu/source/common/unicode/uscript.h" - #include "ui/gfx/render_text.h" diff --git a/chromium.spec b/chromium.spec index 9b2e687..9d7e4aa 100644 --- a/chromium.spec +++ b/chromium.spec @@ -20,7 +20,6 @@ %global chromium_browser_channel chromium-browser%{chromium_channel} %global chromium_path %{_libdir}/chromium-browser%{chromium_channel} %global crd_path %{_libdir}/chrome-remote-desktop -%global tests 0 # We don't want any libs in these directories to generate Provides # Requires is trickier. @@ -29,8 +28,6 @@ %global privlibs libEGL|libGLESv2|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_swapchain|libVkLayer_threading|libVkLayer_unique_objects|libaccessibility|libanimation|libaura|libaura_extra|libbase|libbase_i18n|libbindings|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core|libblink_modules|libblink_mojo_bindings_shared|libblink_offscreen_canvas_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcc|libcc_animation|libcc_base|libcc_blink|libcc_debug|libcc_ipc|libcc_paint|libcdm_manager|libchromium_sqlite3|libclearkeycdm|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_gamepad|libdevice_vr_mojo_bindings|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevices|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libembedder|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libfingerprint|libffmpeg|libgcm|libgeolocation|libgeometry|libgeometry_skia|libgesture_detection|libgfx|libgfx_ipc|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_switches|libgfx_x11|libgin|libgl_in_process_context|libgl_init|libgl_wrapper|libgles2_c_lib|libgles2_implementation|libgles2_utils|libgpu|libgtk3ui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc|libipc_mojom|libipc_mojom_shared|libjs|libkeyboard|libkeyboard_with_content|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libmanager|libmedia|libmedia_blink|libmedia_gpu|libmedia_mojo_services|libmessage_center|libmetrics_cpp|libmidi|libmirclient.9|libmojo_common_lib|libmojo_ime_lib|libmojo_public_system|libmojo_public_system_cpp|libmojo_system_impl|libnative_theme|libnet|libnet_with_v8|libonc|libplatform|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|librange|libresource_coordinator_cpp|libresource_coordinator_public_interfaces_internal_shared|libsandbox_services|libseccomp_bpf|libsensors|libservice|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom|libservice_manager_mojom_blink|libservice_manager_mojom_constants|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_shared|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libui_base|libui_base_ime|libui_base_x|libui_data_pack|libui_devtools|libui_touch_selection|libui_views_mus_lib|liburl|liburl_ipc|liburl_matcher|libuser_manager|libuser_prefs|libv8|libv8_libbase|libv8_libplatform|libviews|libviz_common|libviz_resource_format|libweb_dialogs|libwebdata_common|libwebview|libwidevinecdm|libwidevinecdmadapter|libwm|libwm_public|libwtf|libx11_events_platform|libx11_window %global __requires_exclude ^(%{privlibs})\\.so -# Try to not use the Xvfb as it is slow.. -%global tests_force_display 0 # If we build with shared on, then chrome-remote-desktop depends on chromium libs. # If we build with shared off, then users cannot swap out libffmpeg (and i686 gets a lot harder to build) %global shared 1 @@ -217,10 +214,6 @@ Patch63: chromium-gn-bootstrap-r17.patch # Fix _cplusplus conditional Patch64: chromium-62.0.3202.62-correct-cplusplus-check.patch -### Chromium Tests Patches ### -Patch100: chromium-46.0.2490.86-use_system_opus.patch -Patch101: chromium-58.0.3029.81-use_system_harfbuzz.patch - # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ # For Chromium Fedora use chromium-latest.py --stable --ffmpegclean --ffmpegarm @@ -231,9 +224,6 @@ Source0: https://commondatastorage.googleapis.com/chromium-browser-official/chro %else Source0: chromium-%{version}-clean.tar.xz %endif -%if 0%{tests} -Source1: https://commondatastorage.googleapis.com/chromium-browser-official/chromium-%{version}-testdata.tar.xz -%endif # https://chromium.googlesource.com/chromium/tools/depot_tools.git/+archive/7e7a454f9afdddacf63e10be48f0eab603be654e.tar.gz Source2: depot_tools.git-master.tar.gz Source3: chromium-browser.sh @@ -284,14 +274,6 @@ BuildRequires: nodejs BuildRequires: nss-devel BuildRequires: pciutils-devel BuildRequires: pulseaudio-libs-devel -%if 0%{?tests} -BuildRequires: pam-devel -# Tests needs X -BuildRequires: Xvfb -BuildRequires: liberation-sans-fonts -# For sandbox initialization -BuildRequires: sudo -%endif # for /usr/bin/appstream-util BuildRequires: libappstream-glib @@ -621,11 +603,7 @@ udev. %prep %setup -q -T -c -n depot_tools -a 2 -%if 0%{tests} -%setup -q -n chromium-%{version} -b 1 -%else %setup -q -n chromium-%{version} -%endif ### Chromium Fedora Patches ### %patch0 -p1 -b .gcc5 @@ -679,10 +657,6 @@ udev. %patch63 -p1 -b .gn-boostrap-r17 %patch64 -p1 -b .fix-cplusplus-conditional -### Chromium Tests Patches ### -%patch100 -p1 -b .use_system_opus -%patch101 -p1 -b .use_system_harfbuzz - %if 0%{?asan} export CC="clang" export CXX="clang++" @@ -1103,83 +1077,14 @@ sed -i.orig -e 's/getenv("CHROME_VERSION_EXTRA")/"Fedora Project"/' $FILE . /opt/rh/devtoolset-7/enable %endif -%if %{?tests} -# Tests targets taken from testing/buildbot/chromium.linux.json and obtained with -# get_linux_tests_name.py PATH_TO_UNPACKED_CHROMIUM_SOURCES --spec -# You can also check if you have to update the tests in SPEC file by running -# get_linux_tests_name.py PATH_TO_UNPACKED_CHROMIUM_SOURCES --check PATH_TO_SPEC_FILE -export CHROMIUM_BROWSER_UNIT_TESTS="\ - accessibility_unittests \ - app_list_unittests \ - app_shell_unittests \ - aura_unittests \ - base_unittests \ - browser_tests \ - cacheinvalidation_unittests \ - cast_unittests \ - cc_unittests \ - chromedriver_unittests \ - components_browsertests \ - components_unittests \ - compositor_unittests \ - content_browsertests \ - content_unittests \ - crypto_unittests \ - dbus_unittests \ - device_unittests \ - display_unittests \ - events_unittests \ - extensions_browsertests \ - extensions_unittests \ - gcm_unit_tests \ - gfx_unittests \ - gl_unittests \ - gn_unittests \ - google_apis_unittests \ - gpu_unittests \ - interactive_ui_tests \ - ipc_mojo_unittests \ - ipc_tests \ - jingle_unittests \ - media_unittests \ - midi_unittests \ - mojo_common_unittests \ - mojo_public_bindings_unittests \ - mojo_public_environment_unittests \ - mojo_public_system_unittests \ - mojo_public_utility_unittests \ - mojo_system_unittests \ -%if 0%{?nacl} - nacl_loader_unittests \ -%endif - net_unittests \ - ppapi_unittests \ - printing_unittests \ - remoting_unittests \ - sandbox_linux_unittests \ - skia_unittests \ - sql_unittests \ - sync_integration_tests \ - sync_unit_tests \ - ui_base_unittests \ - ui_touch_selection_unittests \ - unit_tests \ - url_unittests \ - views_unittests \ - wm_unittests \ - " -%else -export CHROMIUM_BROWSER_UNIT_TESTS= -%endif - # Now do the full browser %if 0%{freeworld} -../depot_tools/ninja -C %{target} -vvv media $CHROMIUM_BROWSER_UNIT_TESTS +../depot_tools/ninja -C %{target} -vvv media %else # Do headless first. ../depot_tools/ninja -C %{headlesstarget} -vvv headless_shell -../depot_tools/ninja -C %{target} -vvv chrome chrome_sandbox chromedriver widevinecdmadapter clearkeycdm policy_templates $CHROMIUM_BROWSER_UNIT_TESTS +../depot_tools/ninja -C %{target} -vvv chrome chrome_sandbox chromedriver widevinecdmadapter clearkeycdm policy_templates # remote client pushd remoting @@ -1361,310 +1266,6 @@ mkdir -p %{buildroot}%{chromium_path}/PepperFlash # freeworld conditional %endif -%check -%if 0%{tests} -%if 0%{?tests_force_display} - export DISPLAY=:0 -%else - Xvfb :9 -screen 0 1024x768x24 & - - export XVFB_PID=$! - export DISPLAY=:9 -%endif - export LC_ALL="en_US.utf8" - - sleep 5 - - # Run tests and disable the failed ones - pushd %{target} - ( - cp -f chrome_sandbox chrome-sandbox - echo "Test sandbox needs to be owned by root and have the suid set" - if [ "$(id -u)" != "0" ]; then - sudo chown root:root chrome-sandbox && sudo chmod 4755 chrome-sandbox - else - chown root:root chrome-sandbox && chmod 4755 chrome-sandbox - fi - - # Example of failed or timed-out test annotation - # ./browser_tests \ - # --gtest_filter=-"\ - # `#failed`\ - # SandboxStatusUITest.testBPFSandboxEnabled:`#failed - not using BPF sandbox`\ - # :\ - # `#timed-out`\ - # CalculatorBrowserTest.Model:\ - # WebRtcBrowserTest.RunsAudioVideoWebRTCCallInTwoTabs\ - # " \ - - ./accessibility_unittests && \ - ./app_list_unittests && \ - ./app_shell_unittests && \ - ./aura_unittests && \ - ./base_unittests \ - --gtest_filter=-"\ - `#failed`\ - ICUStringConversionsTest.ConvertToUtf8AndNormalize\ - " \ - && \ - ./browser_tests \ - --gtest_filter=-"\ - `#failed`\ - DevToolsSanityTest.TestNetworkRawHeadersText:\ - DevToolsSanityTest.TestNetworkSize:\ - DevToolsSanityTest.TestNetworkSyncSize:\ - ExtensionWebstoreGetWebGLStatusTest.Allowed:\ - InlineLoginUISafeIframeBrowserTest.Basic:\ - InlineLoginUISafeIframeBrowserTest.ConfirmationRequiredForNonsecureSignin:\ - InlineLoginUISafeIframeBrowserTest.NoWebUIInIframe:\ - InlineLoginUISafeIframeBrowserTest.TopFrameNavigationDisallowed:\ - OutOfProcessPPAPITest.Graphics3D:\ - PolicyTest.Disable3DAPIs:\ - WebRtcWebcamBrowserTests/WebRtcWebcamBrowserTest.TestAcquiringAndReacquiringWebcam/0:\ - :\ - `#timed-out`\ - CalculatorBrowserTest.Model:\ - ImageFetcherImplBrowserTest.MultipleFetch:\ - ProfileManagerBrowserTest.DeletePasswords:\ - TabCaptureApiPixelTest.EndToEndThroughWebRTC:\ - WebRtcBrowserTest.RunsAudioVideoWebRTCCallInTwoTabs:\ - WebRtcSimulcastBrowserTest.TestVgaReturnsTwoSimulcastStreams\ - " \ - && \ - ./cacheinvalidation_unittests && \ - ./cast_unittests && \ - ./cc_unittests && \ - ./chromedriver_unittests && \ - ./components_unittests \ - --gtest_filter=-"\ - `#failed`\ - AutocompleteMatchTest.Duplicates:\ - BookmarkIndexTest.GetBookmarksMatchingWithURLs:\ - BookmarkIndexTest.MatchPositionsURLs:\ - InMemoryURLIndexTypesTest.StaticFunctions:\ - ScoredHistoryMatchTest.GetTopicalityScore:\ - ScoredHistoryMatchTest.Inlining:\ - ScoredHistoryMatchTest.ScoringTLD:\ - UrlFormatterTest.FormatUrlWithOffsets:\ - UrlFormatterTest.IDNToUnicodeFast:\ - UrlFormatterTest.IDNToUnicodeSlow\ - " \ - && \ - ./components_browsertests \ - --gtest_filter=-"\ - `#failed`\ - AutofillRiskFingerprintTest.GetFingerprint\ - " \ - && \ - ./compositor_unittests && \ - ./content_browsertests \ - --gtest_filter=-"\ - `#failed`\ - BrowserGpuChannelHostFactoryTest.:\ - BrowserGpuChannelHostFactoryTest.AlreadyEstablished:\ - BrowserGpuChannelHostFactoryTest.Basic:\ - ImageTransportFactoryBrowserTest.TestLostContext:\ - ImageTransportFactoryTearDownBrowserTest.LoseOnTearDown:\ - RenderViewImplTest.GetCompositionCharacterBoundsTest:\ - SignalTest.BasicSignalQueryTest:\ - SignalTest.BasicSignalSyncPointTest:\ - SignalTest.InvalidSignalQueryUnboundTest:\ - SignalTest.InvalidSignalSyncPointTest:\ - SignalTest.SignalQueryUnboundTest:\ - WebRtcBrowserTest.*:\ - :\ - `#timed-out`\ - WebRtcAecDumpBrowserTest.CallWithAecDump:\ - WebRtcAecDumpBrowserTest.CallWithAecDumpEnabledThenDisabled\ - " \ - && \ - ./content_unittests && \ - ./crypto_unittests && \ - ./dbus_unittests \ - --gtest_filter=-"\ - `#crashed`\ - EndToEndAsyncTest.InvalidObjectPath:\ - EndToEndAsyncTest.InvalidServiceName:\ - EndToEndSyncTest.InvalidObjectPath:\ - EndToEndSyncTest.InvalidServiceName:\ - MessageTest.SetInvalidHeaders\ - " \ - && \ - ./device_unittests && \ - ./display_unittests && \ - ./events_unittests && \ - ./extensions_browsertests && \ - ./extensions_unittests && \ - ./gcm_unit_tests && \ - ./gfx_unittests \ - --gtest_filter=-"\ - `#failed - missing Microsoft TrueType fonts`\ - FontListTest.Fonts_GetHeight_GetBaseline:\ - FontRenderParamsTest.Default:\ - FontRenderParamsTest.MissingFamily:\ - FontRenderParamsTest.Size:\ - FontRenderParamsTest.Style:\ - FontRenderParamsTest.SubstituteFamily:\ - FontRenderParamsTest.UseBitmaps:\ - FontTest.GetActualFontNameForTesting:\ - FontTest.LoadArial:\ - FontTest.LoadArialBold:\ - PlatformFontLinuxTest.DefaultFont:\ - RenderTextTest.HarfBuzz_FontListFallback:\ - RenderTextTest.SetFontList:\ - RenderTextTest.StringSizeRespectsFontListMetrics\ - :\ - `#crashed`\ - FontRenderParamsTest.Default:\ - FontRenderParamsTest.ForceFullHintingWhenAntialiasingIsDisabled:\ - FontRenderParamsTest.MissingFamily:\ - FontRenderParamsTest.NoFontconfigMatch:\ - FontRenderParamsTest.OnlySetConfiguredValues:\ - FontRenderParamsTest.Scalable:\ - FontRenderParamsTest.Size:\ - FontRenderParamsTest.Style:\ - FontRenderParamsTest.SubstituteFamily:\ - FontRenderParamsTest.UseBitmaps:\ - PlatformFontLinuxTest.DefaultFont\ - " \ - && \ - ./gl_unittests && \ - ./gn_unittests \ - --gtest_filter=-"\ - `#failed`\ - Format.004:\ - Format.007:\ - Format.012:\ - Format.013:\ - Format.014:\ - Format.015:\ - Format.017:\ - Format.019:\ - Format.020:\ - Format.021:\ - Format.023:\ - Format.031:\ - Format.033:\ - Format.038:\ - Format.043:\ - Format.046:\ - Format.048:\ - Format.056:\ - Format.057:\ - Format.062:\ - ParseTree.SortRangeExtraction:\ - Parser.CommentsAtEndOfBlock:\ - Parser.CommentsConnectedInList:\ - Parser.CommentsEndOfBlockSingleLine:\ - Parser.CommentsLineAttached:\ - Parser.CommentsSuffix:\ - Parser.CommentsSuffixDifferentLine:\ - Parser.CommentsSuffixMultiple\ - " \ - && \ - ./google_apis_unittests && \ - ./gpu_unittests && \ - ./interactive_ui_tests \ - --gtest_filter=-"\ - `#failed`\ - AshNativeCursorManagerTest.CursorChangeOnEnterNotify:\ - BookmarkBarViewTest5.DND:\ - OmniboxViewViewsTest.DeactivateTouchEditingOnExecuteCommand:\ - OmniboxViewViewsTest.SelectAllOnTap:\ - StartupBrowserCreatorTest.LastUsedProfileActivated:\ - X11TopmostWindowFinderTest.Basic:\ - X11TopmostWindowFinderTest.Menu:\ - :\ - `#timed-out`\ - BookmarkBarViewTest9.ScrollButtonScrolls:\ - DockedPanelBrowserTest.CloseSqueezedPanels:\ - DockedPanelBrowserTest.MinimizeSqueezedActive:\ - GlobalCommandsApiTest.GlobalCommand\ - " \ - && \ - ./ipc_mojo_unittests && \ - ./ipc_tests && \ - ./jingle_unittests && \ - ./midi_unittests && \ - ./media_unittests && \ - ./mojo_common_unittests && \ - ./mojo_public_bindings_unittests && \ - ./mojo_public_environment_unittests && \ - ./mojo_public_system_unittests && \ - ./mojo_public_utility_unittests && \ - ./mojo_system_unittests && \ -%if 0%{?nacl} - ./nacl_loader_unittests && \ -%endif - ./net_unittests \ - --gtest_filter=-"\ - `#failed`\ - CertVerifyProcTest.TestKnownRoot\ - " \ - && \ - ./ppapi_unittests && \ - ./printing_unittests && \ - ./remoting_unittests && \ - ./sandbox_linux_unittests && \ - ./skia_unittests && \ - ./sql_unittests && \ - ./ui_base_unittests && \ - ./ui_touch_selection_unittests && \ - ./sync_unit_tests && \ - ./unit_tests \ - --gtest_filter=-"\ - `#failed - some need https://chromium.googlesource.com/chromium/deps/hunspell_dictionaries/+/master`\ - BookmarkProviderTest.StripHttpAndAdjustOffsets:\ - HQPOrderingTest.TEAMatch:\ - HistoryQuickProviderTest.ContentsClass:\ - LimitedInMemoryURLIndexTest.Initialization:\ - MultilingualSpellCheckTest.MultilingualSpellCheckParagraph:\ - MultilingualSpellCheckTest.MultilingualSpellCheckSuggestions:\ - MultilingualSpellCheckTest.MultilingualSpellCheckWord:\ - MultilingualSpellCheckTest.MultilingualSpellCheckWordEnglishSpanish:\ - SpellCheckTest.CreateTextCheckingResultsKeepsMarkers:\ - SpellCheckTest.DictionaryFiles:\ - SpellCheckTest.EnglishWords:\ - SpellCheckTest.GetAutoCorrectionWord_EN_US:\ - SpellCheckTest.LogicalSuggestions:\ - SpellCheckTest.MisspelledWords:\ - SpellCheckTest.NoSuggest:\ - SpellCheckTest.SpellCheckParagraphLongSentenceMultipleMisspellings:\ - SpellCheckTest.SpellCheckParagraphMultipleMisspellings:\ - SpellCheckTest.SpellCheckParagraphSingleMisspellings:\ - SpellCheckTest.SpellCheckStrings_EN_US:\ - SpellCheckTest.SpellCheckSuggestions_EN_US:\ - SpellCheckTest.SpellingEngine_CheckSpelling:\ - SpellcheckWordIteratorTest.FindSkippableWordsKhmer:\ - :\ - `#crashed`\ - ListChangesTaskTest.UnderTrackedFolder:\ - ListChangesTaskTest.UnrelatedChange:\ - SpellCheckTest.RequestSpellCheckWithMisspellings:\ - SpellCheckTest.RequestSpellCheckWithMultipleRequests:\ - SpellCheckTest.RequestSpellCheckWithSingleMisspelling\ - " \ - && \ - ./url_unittests && \ - ./views_unittests \ - --gtest_filter=-"\ - `#failed`\ - DesktopWindowTreeHostX11HighDPITest.LocatedEventDispatchWithCapture:\ - LabelTest.FontPropertySymbol:\ - WidgetTest.WindowMouseModalityTest\ - " \ - && \ - ./wm_unittests \ - ) - popd - - if [ -n "$XVFB_PID" ]; then - kill $XVFB_PID - unset XVFB_PID - unset DISPLAY - fi -%endif - %post # Set SELinux labels - semanage itself will adjust the lib directory naming # But only do it when selinux is enabled, otherwise, it gets noisy. From 06c182be2e3dd93758318fe45b1c0a83cd7a2a22 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 15 Nov 2017 12:31:22 +0100 Subject: [PATCH 0158/1449] Adapt to man page changes for Chromium 63 Starting from Chromium 63 the man page is not installed by default, but it is generated from the template. --- chromium.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 9b2e687..a9465e0 100644 --- a/chromium.spec +++ b/chromium.spec @@ -17,6 +17,7 @@ # %%{nil} for Stable; -beta for Beta; -dev for Devel # dash in -beta and -dev is intentional ! %global chromium_channel %{nil} +%global chromium_menu_name Chromium %global chromium_browser_channel chromium-browser%{chromium_channel} %global chromium_path %{_libdir}/chromium-browser%{chromium_channel} %global crd_path %{_libdir}/chrome-remote-desktop @@ -1244,7 +1245,9 @@ chmod -x %{buildroot}%{chromium_path}/nacl_helper_bootstrap* *.nexe cp -a protoc pyproto %{buildroot}%{chromium_path} cp -a chrome %{buildroot}%{chromium_path}/%{chromium_browser_channel} cp -a chrome_sandbox %{buildroot}%{chromium_path}/chrome-sandbox -cp -a chrome.1 %{buildroot}%{_mandir}/man1/%{chromium_browser_channel}.1 +cp -a ../../chrome/app/resources/manpage.1.in %{buildroot}%{_mandir}/man1/%{chromium_browser_channel}.1 +sed -i "s|@@PACKAGE@@|%{chromium_browser_channel}|g" %{buildroot}%{_mandir}/man1/%{chromium_browser_channel}.1 +sed -i "s|@@MENUNAME@@|%{chromium_menu_name}|g" %{buildroot}%{_mandir}/man1/%{chromium_browser_channel}.1 # V8 initial snapshots # https://code.google.com/p/chromium/issues/detail?id=421063 cp -a natives_blob.bin %{buildroot}%{chromium_path} From 8a70ade469494e00a84ccb78bc2bc634f85f57b7 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 6 Dec 2017 11:22:29 +0100 Subject: [PATCH 0159/1449] Remove unused patches --- chromium-46.0.2490.71-gcc5.patch | 354 ---------- chromium-48.0.2564.103-gcc6.patch | 204 ------ chromium-50.0.2661.86-addrfix.patch | 11 - chromium-50.0.2661.94-unbundle-re2-fix.patch | 12 - ...52.0.2723.2-PNGImageDecoder-fix-cast.patch | 12 - chromium-52.0.2723.2-sync_link_zlib.patch | 11 - ...-54-does-not-have-detectHostTimeZone.patch | 12 - ...mium-52.0.2723.2-use_system_harfbuzz.patch | 12 - chromium-52.0.2743.82-arm-icu-fix.patch | 12 - chromium-52.0.2743.82-cups22.patch | 47 -- ...mium-52.0.2743.82-more-codec-aliases.patch | 15 - chromium-52.0.2743.82-sandbox-pie.patch | 15 - chromium-53.0.2785.101-crrev-415028.patch | 142 ---- chromium-53.0.2785.92-gn-system.patch | 252 -------- ...um-53.0.2785.92-last-commit-position.patch | 28 - chromium-54.0.2840.59-arm-icu-fix.patch | 12 - chromium-54.0.2840.59-gcc5.patch | 354 ---------- chromium-54.0.2840.59-gn-system.patch | 223 ------- ...m-54.0.2840.59-i686-ld-memory-tricks.patch | 12 - chromium-54.0.2840.59-nullfix.patch | 35 - ...840.90-aura-browser-link-to-snapshot.patch | 11 - chromium-54.0.2840.90-setopaque.patch | 13 - chromium-55.0.2883.75-gcc5.patch | 354 ---------- ...mium-55.0.2883.75-more-codec-aliases.patch | 15 - ...ium-55.0.2883.75-use_system_harfbuzz.patch | 12 - chromium-55.0.2883.87-rvalue-fix.patch | 17 - chromium-56.0.2924.87-gcc7.patch | 82 --- chromium-58.0.3029.81-enable-mp3.patch | 144 ----- chromium-58.0.3029.81-ffmpeg-stdatomic.patch | 14 - chromium-58.0.3029.81-fix-gn.patch | 11 - ...ium-59.0.3071.86-dma-buf-header-hack.patch | 13 - chromium-59.0.3071.86-enable-mp3.patch | 477 -------------- chromium-59.0.3071.86-gcc7.patch | 81 --- chromium-59.0.3071.86-setopaque.patch | 12 - chromium-60.0.3112.101-camfix.patch | 25 - ...ium-60.0.3112.101-fix-ffmpeg-aarch64.patch | 12 - chromium-60.0.3112.78-enable-mp3.patch | 479 -------------- chromium-60.0.3112.78-fix-gn-bootstrap.patch | 11 - chromium-60.0.3112.78-gcc7.patch | 80 --- chromium-60.0.3112.78-gtk2fix.patch | 612 ------------------ chromium-60.0.3112.90-init-list-hack.patch | 27 - chromium-61.0.3163.79-MOAR-GCC-FIXES.patch | 35 - chromium-61.0.3163.79-dde535-gcc-fix.patch | 14 - chromium-61.0.3163.79-enable-mp3.patch | 473 -------------- ...7-no-nullptr-assignment-on-StructPtr.patch | 12 - chromium-61.0.3163.79-fix-atk-compile.patch | 12 - chromium-61.0.3163.79-fix-gn-again.patch | 20 - chromium-61.0.3163.79-gcc-nc.patch | 12 - chromium-61.0.3163.79-gcc5-r1.patch | 67 -- chromium-61.0.3163.79-gcc7.patch | 12 - chromium-61.0.3163.79-gtk2fix.patch | 23 - ...mium-61.0.3163.79-kmaxskip-constexpr.patch | 12 - chromium-61.0.3163.79-rvalue-fix.patch | 36 -- chromium-61.0.3163.79-uglyhack.patch | 12 - 54 files changed, 5017 deletions(-) delete mode 100644 chromium-46.0.2490.71-gcc5.patch delete mode 100644 chromium-48.0.2564.103-gcc6.patch delete mode 100644 chromium-50.0.2661.86-addrfix.patch delete mode 100644 chromium-50.0.2661.94-unbundle-re2-fix.patch delete mode 100644 chromium-52.0.2723.2-PNGImageDecoder-fix-cast.patch delete mode 100644 chromium-52.0.2723.2-sync_link_zlib.patch delete mode 100644 chromium-52.0.2723.2-system-icu-54-does-not-have-detectHostTimeZone.patch delete mode 100644 chromium-52.0.2723.2-use_system_harfbuzz.patch delete mode 100644 chromium-52.0.2743.82-arm-icu-fix.patch delete mode 100644 chromium-52.0.2743.82-cups22.patch delete mode 100644 chromium-52.0.2743.82-more-codec-aliases.patch delete mode 100644 chromium-52.0.2743.82-sandbox-pie.patch delete mode 100644 chromium-53.0.2785.101-crrev-415028.patch delete mode 100644 chromium-53.0.2785.92-gn-system.patch delete mode 100644 chromium-53.0.2785.92-last-commit-position.patch delete mode 100644 chromium-54.0.2840.59-arm-icu-fix.patch delete mode 100644 chromium-54.0.2840.59-gcc5.patch delete mode 100644 chromium-54.0.2840.59-gn-system.patch delete mode 100644 chromium-54.0.2840.59-i686-ld-memory-tricks.patch delete mode 100644 chromium-54.0.2840.59-nullfix.patch delete mode 100644 chromium-54.0.2840.90-aura-browser-link-to-snapshot.patch delete mode 100644 chromium-54.0.2840.90-setopaque.patch delete mode 100644 chromium-55.0.2883.75-gcc5.patch delete mode 100644 chromium-55.0.2883.75-more-codec-aliases.patch delete mode 100644 chromium-55.0.2883.75-use_system_harfbuzz.patch delete mode 100644 chromium-55.0.2883.87-rvalue-fix.patch delete mode 100644 chromium-56.0.2924.87-gcc7.patch delete mode 100644 chromium-58.0.3029.81-enable-mp3.patch delete mode 100644 chromium-58.0.3029.81-ffmpeg-stdatomic.patch delete mode 100644 chromium-58.0.3029.81-fix-gn.patch delete mode 100644 chromium-59.0.3071.86-dma-buf-header-hack.patch delete mode 100644 chromium-59.0.3071.86-enable-mp3.patch delete mode 100644 chromium-59.0.3071.86-gcc7.patch delete mode 100644 chromium-59.0.3071.86-setopaque.patch delete mode 100644 chromium-60.0.3112.101-camfix.patch delete mode 100644 chromium-60.0.3112.101-fix-ffmpeg-aarch64.patch delete mode 100644 chromium-60.0.3112.78-enable-mp3.patch delete mode 100644 chromium-60.0.3112.78-fix-gn-bootstrap.patch delete mode 100644 chromium-60.0.3112.78-gcc7.patch delete mode 100644 chromium-60.0.3112.78-gtk2fix.patch delete mode 100644 chromium-60.0.3112.90-init-list-hack.patch delete mode 100644 chromium-61.0.3163.79-MOAR-GCC-FIXES.patch delete mode 100644 chromium-61.0.3163.79-dde535-gcc-fix.patch delete mode 100644 chromium-61.0.3163.79-enable-mp3.patch delete mode 100644 chromium-61.0.3163.79-epel7-no-nullptr-assignment-on-StructPtr.patch delete mode 100644 chromium-61.0.3163.79-fix-atk-compile.patch delete mode 100644 chromium-61.0.3163.79-fix-gn-again.patch delete mode 100644 chromium-61.0.3163.79-gcc-nc.patch delete mode 100644 chromium-61.0.3163.79-gcc5-r1.patch delete mode 100644 chromium-61.0.3163.79-gcc7.patch delete mode 100644 chromium-61.0.3163.79-gtk2fix.patch delete mode 100644 chromium-61.0.3163.79-kmaxskip-constexpr.patch delete mode 100644 chromium-61.0.3163.79-rvalue-fix.patch delete mode 100644 chromium-61.0.3163.79-uglyhack.patch diff --git a/chromium-46.0.2490.71-gcc5.patch b/chromium-46.0.2490.71-gcc5.patch deleted file mode 100644 index 02ae2d6..0000000 --- a/chromium-46.0.2490.71-gcc5.patch +++ /dev/null @@ -1,354 +0,0 @@ -diff -up chromium-46.0.2490.71/third_party/cld_2/src/internal/cld_generated_cjk_uni_prop_80.cc.gcc5 chromium-46.0.2490.71/third_party/cld_2/src/internal/cld_generated_cjk_uni_prop_80.cc ---- chromium-46.0.2490.71/third_party/cld_2/src/internal/cld_generated_cjk_uni_prop_80.cc.gcc5 2015-10-06 22:42:52.000000000 -0400 -+++ chromium-46.0.2490.71/third_party/cld_2/src/internal/cld_generated_cjk_uni_prop_80.cc 2015-10-15 23:42:00.645518701 -0400 -@@ -165,8 +165,8 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - // state[16 + 2] 0x000000 Byte 2 of 3 (relative offsets) - X__,X__,X__,X__,X__,X__,X__,X__, X__,X__,X__,X__,X__,X__,X__,X__, - X__,X__,X__,X__,X__,X__,X__,X__, X__,X__,X__,X__,X__,X__,X__,X__, ---14,-14,-14,-14,-14,-14,-14,-14, -14,-14,-14,-14,-14,-14,-14,-14, ---14,-14,-14,-14,-14,-14,-14,-14, -14,-14,-14,-14,-14,-14,-14,-14, -+(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14, (uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14, -+(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14, (uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14, - - // state[17 + 2] 0x0031c0 Byte 3 of 3 (property) - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -@@ -259,10 +259,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 229,229,229, 3,208, 0,229, 5, 233, 0,229,229,229,208,229,229, - - // state[32 + 2] 0x002000 Byte 2 of 3 (relative offsets) ---30,-30,-30,-30,-30,-30,-30,-30, -30,-30,-30,-30,-30,-30,-30,-30, ---30,-30,-30,-30,-30,-30,-30,-30, -30,-30,-30,-30,-30,-30,-30,-30, ---30,-30,-30,-30,-30,-30,-30,-30, -30,-30,-30,-30,-30,-30,-30,-30, ---30,-30,-30,-30,-30,-30,-30,-30, -30,-30,-30,-30,-30,-30,-30,-30, -+(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, (uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, -+(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, (uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, -+(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, (uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, -+(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, (uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, - - // state[33 + 2] 0x003780 Byte 3 of 3 (property) - 229,208,229,229,208,229,229,229, 208,208,208,208,208, 4, 6,208, -@@ -355,10 +355,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 228,229,229,229,229,233,233, 6, 208,229, 3,229,233, 6, 6, 0, - - // state[48 + 2] 0x001000 Byte 2 of 3 (relative offsets) ---46,-46,-46,-46,-42,-41,-40,-39, -46,-46,-46,-46,-46,-46,-46,-46, ---46,-46,-46,-46,-46,-46,-46,-46, -46,-46,-46,-46,-46,-46,-46,-46, ---46,-46,-46,-46,-46,-46,-46,-46, -46,-46,-46,-46,-46,-46,-46,-46, ---46,-46,-46,-46,-46,-46,-46,-46, -46,-46,-46,-46,-46,-46,-46,-46, -+(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-42,(uint8)-41,(uint8)-40,(uint8)-39, (uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, -+(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, (uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, -+(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, (uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, -+(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, (uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, - - // state[49 + 2] 0x003b40 Byte 3 of 3 (property) - 6,227,208,233,208, 3, 3,208, 208,229, 0,229,233,219, 0, 6, -@@ -451,10 +451,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 229,208,208,208,217,208,229,229, 229,229,208,217,208,229,229,229, - - // state[64 + 2] 0x003000 Byte 2 of 3 (relative offsets) ---54,-53,-52,-51,-50,-58,-49,-47, -62,-62,-62,-62,-62,-62,-62,-62, ---46,-45,-44,-43,-42,-41,-40,-39, -38,-37,-36,-35,-34,-33,-31,-30, ---29,-28,-27,-26,-25,-24,-23,-22, -21,-20,-19,-18,-17,-15,-14,-13, ---12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, -+(uint8)-54,(uint8)-53,(uint8)-52,(uint8)-51,(uint8)-50,(uint8)-58,(uint8)-49,(uint8)-47, (uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62, -+(uint8)-46,(uint8)-45,(uint8)-44,(uint8)-43,(uint8)-42,(uint8)-41,(uint8)-40,(uint8)-39, (uint8)-38,(uint8)-37,(uint8)-36,(uint8)-35,(uint8)-34,(uint8)-33,(uint8)-31,(uint8)-30, -+(uint8)-29,(uint8)-28,(uint8)-27,(uint8)-26,(uint8)-25,(uint8)-24,(uint8)-23,(uint8)-22, (uint8)-21,(uint8)-20,(uint8)-19,(uint8)-18,(uint8)-17,(uint8)-15,(uint8)-14,(uint8)-13, -+(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, - - // state[65 + 2] 0x003f00 Byte 3 of 3 (property) - 217,217,208, 3,208,217,208,208, 6,229,208,228,229,229,208,229, -@@ -547,10 +547,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 229,208,229,229,208,229,233, 0, 208,208,229,208,227,229,229,229, - - // state[80 + 2] 0x004000 Byte 2 of 3 (relative offsets) ---11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, -+(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, - 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, -- 38, 39, 40, 41, 42, 43, 44,-78, 45, 46, 47, 48, 49, 50, 51, 52, -+ 38, 39, 40, 41, 42, 43, 44,(uint8)-78, 45, 46, 47, 48, 49, 50, 51, 52, - - // state[81 + 2] 0x0042c0 Byte 3 of 3 (property) - 229, 0,229,229,229, 3, 4, 4, 229,229,229,229,208,229, 0,208, -@@ -931,7 +931,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 0,142, 98, 28,117,206,212,212, 220, 15, 0,231,199,231,111, 28, - - // state[144 + 2] 0x005000 Byte 2 of 3 (relative offsets) ---11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, -+(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, - 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, - 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, -@@ -1315,7 +1315,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 16, 15,211,118, 0,231, 68,231, 0, 99,161, 0,115,221,144,140, - - // state[208 + 2] 0x006000 Byte 2 of 3 (relative offsets) ---10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, -+(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, - 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, - 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, -@@ -1699,7 +1699,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 119, 16, 51, 0, 0, 68,136, 72, 144,118, 87,201,191,136, 78,233, - - // state[272 + 2] 0x007000 Byte 2 of 3 (relative offsets) -- -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, -+ (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, - 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, - 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, -@@ -2083,7 +2083,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 212,212, 0,126,140,220,220, 0, 0, 0,127,118,106, 0,199, 0, - - // state[336 + 2] 0x008000 Byte 2 of 3 (relative offsets) -- -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, 8, -+ (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, - 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, -@@ -2467,7 +2467,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 0,122, 0,231,100,232, 0, 0, 117, 0,206,231, 0, 0,231, 0, - - // state[400 + 2] 0x009000 Byte 2 of 3 (relative offsets) -- -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, 8, 9, -+ (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, 9, - 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, - 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, -@@ -2851,10 +2851,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - - // state[464 + 2] 0x00a000 Byte 2 of 3 (relative offsets) -- -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -- -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -- -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -- -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -+ (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, -+ (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, -+ (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, -+ (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, - - // state[465 + 2] 0x000080 Byte 2 of 2 (property) - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -@@ -2947,10 +2947,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 208,208,208,208, 5, 6,208, 2, 0, 6, 6, 5,208,208,208, 6, - - // state[480 + 2] 0x00b000 Byte 2 of 3 (relative offsets) ---20,-20,-20,-20,-20,-20,-20,-20, -20,-20,-20,-20,-20,-20,-20,-20, ---20,-20,-20,-20,-20,-20,-20,-20, -20,-20,-20,-20,-20,-20,-20,-20, ---20,-20,-20,-20,-20,-20,-20,-20, -20,-20,-20,-20,-20,-20,-20,-20, ---20,-20,-20,-20,-20,-20,-20,-20, -20,-20,-20,-20,-20,-20,-20,-20, -+(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, (uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, -+(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, (uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, -+(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, (uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, -+(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, (uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, - - // state[481 + 2] 0x020100 Byte 4 of 4 (property) - 2, 6, 5, 6, 5,229, 5,208, 208,208,208,208,208,208,208,229, -@@ -3043,10 +3043,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 208,208, 5, 5, 5,208,208, 2, 229, 5, 5, 5, 5, 5, 6,208, - - // state[496 + 2] 0x00d000 Byte 2 of 3 (relative offsets) ---35,-35,-35,-35,-35,-35,-35,-35, -35,-35,-35,-35,-35,-35,-35,-35, ---35,-35,-35,-35,-35,-35,-35,-35, -35,-35,-35,-35,-35,-35,-34,-33, ---33,-33,-33,-33,-33,-33,-33,-33, -33,-33,-33,-33,-33,-33,-33,-33, ---33,-33,-33,-33,-33,-33,-33,-33, -33,-33,-33,-33,-33,-33,-33,-33, -+(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35, (uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35, -+(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35, (uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-34,(uint8)-33, -+(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33, (uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33, -+(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33, (uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33, - - // state[497 + 2] 0x0204c0 Byte 4 of 4 (property) - 2, 2, 5, 5, 5, 2,208, 2, 5, 5, 6,208,208, 5, 5, 5, -@@ -3139,10 +3139,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 208,208, 5, 5, 5, 5, 6, 6, 208,208, 2,208,208,208,208,208, - - // state[512 + 2] 0x00f000 Byte 2 of 3 (relative offsets) ---47,-47,-47,-47,-47,-47,-47,-47, -47,-47,-47,-47,-47,-47,-47,-47, ---47,-47,-47,-47,-47,-47,-47,-47, -47,-47,-47,-47,-47,-47,-47,-47, ---47,-47,-47,-47,-46,-45,-44,-43, -42,-41,-44,-40,-47,-47,-47,-47, ---47,-47,-47,-47,-47,-47,-47,-47, -47,-47,-47,-47,-47,-39,-38,-37, -+(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, (uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, -+(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, (uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, -+(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-46,(uint8)-45,(uint8)-44,(uint8)-43, (uint8)-42,(uint8)-41,(uint8)-44,(uint8)-40,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, -+(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, (uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-39,(uint8)-38,(uint8)-37, - - // state[513 + 2] 0x020880 Byte 4 of 4 (property) - 5, 5, 5, 6,208,208,208,208, 208,208, 5, 5, 6, 6,208,208, -@@ -3235,10 +3235,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 5, 6,208,218,208,208,208,218, 208, 6,227,229, 6, 6, 6,208, - - // state[528 + 2] 0x020000 Byte 3 of 4 (relative offsets) ---52,-51,-50,-49,-47,-46,-45,-44, -43,-42,-41,-40,-39,-38,-37,-36, ---35,-34,-33,-31,-30,-29,-28,-27, -26,-25,-24,-23,-22,-21,-20,-19, ---18,-17,-15,-14,-13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -- -1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, -+(uint8)-52,(uint8)-51,(uint8)-50,(uint8)-49,(uint8)-47,(uint8)-46,(uint8)-45,(uint8)-44, (uint8)-43,(uint8)-42,(uint8)-41,(uint8)-40,(uint8)-39,(uint8)-38,(uint8)-37,(uint8)-36, -+(uint8)-35,(uint8)-34,(uint8)-33,(uint8)-31,(uint8)-30,(uint8)-29,(uint8)-28,(uint8)-27, (uint8)-26,(uint8)-25,(uint8)-24,(uint8)-23,(uint8)-22,(uint8)-21,(uint8)-20,(uint8)-19, -+(uint8)-18,(uint8)-17,(uint8)-15,(uint8)-14,(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, -+ (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, - - // state[529 + 2] 0x020c40 Byte 4 of 4 (property) - 227, 5, 5, 5, 2, 2, 2, 2, 213, 2, 2, 2, 2, 2,208, 6, -@@ -3427,7 +3427,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 208,208,208,208,208,208,208,208, 208, 6, 6, 6, 6, 2, 5, 5, - - // state[560 + 2] 0x021000 Byte 3 of 4 (relative offsets) ---16,-15,-14,-13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, -+(uint8)-16,(uint8)-15,(uint8)-14,(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, - 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, -@@ -3811,7 +3811,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 5, 5, 5, 6, 6, 6, 5,208, 208,229,208,208, 5, 5, 5, 5, - - // state[624 + 2] 0x022000 Byte 3 of 4 (relative offsets) ---15,-14,-13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, -+(uint8)-15,(uint8)-14,(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, - 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, - 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, - 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, -@@ -4195,7 +4195,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 6, 6, 4, 5,208,208,208,208, 208,208,229, 6, 5, 6, 6, 6, - - // state[688 + 2] 0x023000 Byte 3 of 4 (relative offsets) ---14,-13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, -+(uint8)-14,(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, - 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, - 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, - 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -@@ -4579,7 +4579,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 5, 5, 5, 5, 5, 5, 5, 6, 208,208,208,208,208,208, 6, 6, - - // state[752 + 2] 0x024000 Byte 3 of 4 (relative offsets) ---13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, -+(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, - 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, - 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, - 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, -@@ -4963,7 +4963,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 229, 6, 2, 2, 2, 2, 2, 2, 2, 2, 2, 5, 2, 2, 6,229, - - // state[816 + 2] 0x025000 Byte 3 of 4 (relative offsets) ---12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, -+(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, - 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, - 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, - 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, -@@ -5347,7 +5347,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 6, 6, 6, 5, 5, 5, 5, 6, 6, 6, 3, 6,229,208,208,229, - - // state[880 + 2] 0x026000 Byte 3 of 4 (relative offsets) ---11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, -+(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, - 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, - 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, -@@ -5731,7 +5731,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 208, 6, 6,208,208,208,208,208, 6, 6, 6,216, 5, 5, 5, 5, - - // state[944 + 2] 0x027000 Byte 3 of 4 (relative offsets) ---10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, -+(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, - 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, - 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, -@@ -6115,7 +6115,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 5, 5, 5, 6,208,208, 6, 6, 208,229,208,208,208, 5, 5, 5, - - // state[1008 + 2] 0x028000 Byte 3 of 4 (relative offsets) -- -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, -+ (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, - 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, - 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, -@@ -6499,7 +6499,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 208,208, 5, 5, 6,208,208, 5, 208,208,208, 6,208, 6,208,208, - - // state[1072 + 2] 0x029000 Byte 3 of 4 (relative offsets) -- -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, 8, -+ (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, - 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, -@@ -6883,7 +6883,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 229,229,229,229,208,208,208,229, 208,208,208,229, 0,229,208,208, - - // state[1136 + 2] 0x02a000 Byte 3 of 4 (relative offsets) -- -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, 8, 9, -+ (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, 9, - 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 22, 22, 22, - 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, - 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, -@@ -7075,10 +7075,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, - - // state[1168 + 2] 0x02f000 Byte 3 of 4 (relative offsets) -- -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -- -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -- -8, -7, -6, -5, -4, -3, -2, -1, 1, -9, -9, -9, -9, -9, -9, -9, -- -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -+ (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, -+ (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, -+ (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, -+ (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, - - // state[1169 + 2] 0x02fa00 Byte 4 of 4 (property) - 217, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,217, 5, 5, -diff -up chromium-46.0.2490.71/third_party/webgl/src/specs/latest/2.0/webgl2.idl.gcc5 chromium-46.0.2490.71/third_party/webgl/src/specs/latest/2.0/webgl2.idl ---- chromium-46.0.2490.71/third_party/webgl/src/specs/latest/2.0/webgl2.idl.gcc5 2015-10-13 15:04:44.000000000 -0400 -+++ chromium-46.0.2490.71/third_party/webgl/src/specs/latest/2.0/webgl2.idl 2015-10-16 00:54:16.603896492 -0400 -@@ -261,7 +261,7 @@ interface WebGL2RenderingContextBase - 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 -up chromium-46.0.2490.71/third_party/WebKit/Source/core/dom/NodeFilter.h.gcc5 chromium-46.0.2490.71/third_party/WebKit/Source/core/dom/NodeFilter.h ---- chromium-46.0.2490.71/third_party/WebKit/Source/core/dom/NodeFilter.h.gcc5 2015-10-06 22:42:25.000000000 -0400 -+++ chromium-46.0.2490.71/third_party/WebKit/Source/core/dom/NodeFilter.h 2015-10-15 23:42:00.651518569 -0400 -@@ -52,7 +52,7 @@ public: - * to the value of NodeType for the equivalent node type. - */ - enum { -- SHOW_ALL = 0xFFFFFFFF, -+ SHOW_ALL = 256 /* 0xFFFFFFFF */, - SHOW_ELEMENT = 0x00000001, - SHOW_ATTRIBUTE = 0x00000002, - SHOW_TEXT = 0x00000004, -diff -up chromium-46.0.2490.71/third_party/WebKit/Source/core/dom/NodeFilter.idl.gcc5 chromium-46.0.2490.71/third_party/WebKit/Source/core/dom/NodeFilter.idl ---- chromium-46.0.2490.71/third_party/WebKit/Source/core/dom/NodeFilter.idl.gcc5 2015-10-06 22:42:25.000000000 -0400 -+++ chromium-46.0.2490.71/third_party/WebKit/Source/core/dom/NodeFilter.idl 2015-10-15 23:42:00.653518525 -0400 -@@ -31,7 +31,7 @@ - const unsigned short FILTER_SKIP = 3; - - // Constants for whatToShow -- const unsigned long SHOW_ALL = 0xFFFFFFFF; -+ const unsigned long SHOW_ALL = 256; // 0xFFFFFFFF - const unsigned long SHOW_ELEMENT = 0x1; - const unsigned long SHOW_ATTRIBUTE = 0x2; // historical - const unsigned long SHOW_TEXT = 0x4; -diff -up chromium-46.0.2490.71/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl.gcc5 chromium-46.0.2490.71/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl ---- chromium-46.0.2490.71/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl.gcc5 2015-10-13 15:04:34.000000000 -0400 -+++ chromium-46.0.2490.71/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl 2015-10-16 00:54:52.061105191 -0400 -@@ -254,7 +254,7 @@ typedef long long GLint64; - 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; -@@ -297,7 +297,7 @@ typedef long long GLint64; - const GLenum MAX_ELEMENT_INDEX = 0x8D6B; - const GLenum NUM_SAMPLE_COUNTS = 0x9380; - const GLenum TEXTURE_IMMUTABLE_LEVELS = 0x82DF; -- const GLint TIMEOUT_IGNORED = -1; -+ const GLint TIMEOUT_IGNORED = 256; - - /* WebGL-specific enums */ - const GLenum MAX_CLIENT_WAIT_TIMEOUT_WEBGL = 0x9247; diff --git a/chromium-48.0.2564.103-gcc6.patch b/chromium-48.0.2564.103-gcc6.patch deleted file mode 100644 index 5f1340f..0000000 --- a/chromium-48.0.2564.103-gcc6.patch +++ /dev/null @@ -1,204 +0,0 @@ -diff -up chromium-48.0.2564.103/third_party/skia/src/opts/SkXfermode_opts.h.gcc6 chromium-48.0.2564.103/third_party/skia/src/opts/SkXfermode_opts.h ---- chromium-48.0.2564.103/third_party/skia/src/opts/SkXfermode_opts.h.gcc6 2016-02-16 15:01:13.200131996 -0500 -+++ chromium-48.0.2564.103/third_party/skia/src/opts/SkXfermode_opts.h 2016-02-17 13:31:50.216198258 -0500 -@@ -109,76 +109,71 @@ XFERMODE(Lighten) { - } - #undef XFERMODE - --// Some xfermodes use math like divide or sqrt that's best done in floats. --// We write it generically, then call it 1 or 2 pixels at a time (T == Sk4f or Sk8f). --#define XFERMODE(Name) struct Name { template T operator()(const T&, const T&); }; \ -- template T Name::operator()(const T& d, const T& s) -+// Some xfermodes use math like divide or sqrt that's best done in floats 1 pixel at a time. -+#define XFERMODE(Name) static Sk4f SK_VECTORCALL Name(Sk4f d, Sk4f s) - --static_assert(SK_A32_SHIFT == 24, ""); - static inline Sk4f a_rgb(const Sk4f& a, const Sk4f& rgb) { -+ static_assert(SK_A32_SHIFT == 24, ""); - return a * Sk4f(0,0,0,1) + rgb * Sk4f(1,1,1,0); - } --static inline Sk8f a_rgb(const Sk8f& a, const Sk8f& rgb) { -- // TODO: SkNx_blend<0,0,0,1,0,0,0,1>(a, rgb) to let us use _mm256_blend_ps? -- return a * Sk8f(0,0,0,1,0,0,0,1) + rgb * Sk8f(1,1,1,0,1,1,1,0); -+static inline Sk4f alphas(const Sk4f& f) { -+ return SkNx_dup(f); - } --static inline Sk4f alphas(const Sk4f& f) { return SkNx_shuffle<3,3,3,3> (f); } --static inline Sk8f alphas(const Sk8f& f) { return SkNx_shuffle<3,3,3,3,7,7,7,7>(f); } - - XFERMODE(ColorDodge) { - auto sa = alphas(s), - da = alphas(d), -- isa = T(1)-sa, -- ida = T(1)-da; -+ isa = Sk4f(1)-sa, -+ ida = Sk4f(1)-da; - - auto srcover = s + d*isa, - dstover = d + s*ida, -- otherwise = sa * T::Min(da, (d*sa)*(sa-s).approxInvert()) + s*ida + d*isa; -+ otherwise = sa * Sk4f::Min(da, (d*sa)*(sa-s).approxInvert()) + s*ida + d*isa; - - // Order matters here, preferring d==0 over s==sa. -- auto colors = (d == 0).thenElse(dstover, -- (s == sa).thenElse(srcover, -- otherwise)); -+ auto colors = (d == Sk4f(0)).thenElse(dstover, -+ (s == sa).thenElse(srcover, -+ otherwise)); - return a_rgb(srcover, colors); - } - XFERMODE(ColorBurn) { - auto sa = alphas(s), - da = alphas(d), -- isa = T(1)-sa, -- ida = T(1)-da; -+ isa = Sk4f(1)-sa, -+ ida = Sk4f(1)-da; - - auto srcover = s + d*isa, - dstover = d + s*ida, -- otherwise = sa*(da-T::Min(da, (da-d)*sa*s.approxInvert())) + s*ida + d*isa; -+ otherwise = sa*(da-Sk4f::Min(da, (da-d)*sa*s.approxInvert())) + s*ida + d*isa; - - // Order matters here, preferring d==da over s==0. -- auto colors = (d == da).thenElse(dstover, -- (s == 0).thenElse(srcover, -- otherwise)); -+ auto colors = (d == da).thenElse(dstover, -+ (s == Sk4f(0)).thenElse(srcover, -+ otherwise)); - return a_rgb(srcover, colors); - } - XFERMODE(SoftLight) { - auto sa = alphas(s), - da = alphas(d), -- isa = T(1)-sa, -- ida = T(1)-da; -+ isa = Sk4f(1)-sa, -+ ida = Sk4f(1)-da; - - // Some common terms. -- auto m = (da > 0).thenElse(d / da, 0), -- s2 = s*2, -- m4 = m*4; -+ auto m = (da > Sk4f(0)).thenElse(d / da, Sk4f(0)), -+ s2 = Sk4f(2)*s, -+ m4 = Sk4f(4)*m; - - // The logic forks three ways: - // 1. dark src? - // 2. light src, dark dst? - // 3. light src, light dst? -- auto darkSrc = d*(sa + (s2 - sa)*(T(1) - m)), // Used in case 1. -- darkDst = (m4*m4 + m4)*(m - 1) + m*7, // Used in case 2. -- liteDst = m.sqrt() - m, // Used in case 3. -- liteSrc = d*sa + da*(s2-sa)*(d*4 <= da).thenElse(darkDst, liteDst); // Case 2 or 3? -+ auto darkSrc = d*(sa + (s2 - sa)*(Sk4f(1) - m)), // Used in case 1. -+ darkDst = (m4*m4 + m4)*(m - Sk4f(1)) + Sk4f(7)*m, // Used in case 2. -+ liteDst = m.sqrt() - m, // Used in case 3. -+ liteSrc = d*sa + da*(s2-sa)*(Sk4f(4)*d <= da).thenElse(darkDst, liteDst); // Case 2 or 3? - - auto alpha = s + d*isa; -- auto colors = s*ida + d*isa + (s2 <= sa).thenElse(darkSrc, liteSrc); // Case 1 or 2/3? -+ auto colors = s*ida + d*isa + (s2 <= sa).thenElse(darkSrc, liteSrc); // Case 1 or 2/3? - - return a_rgb(alpha, colors); - } -@@ -245,52 +240,53 @@ private: - typedef SkProcCoeffXfermode INHERITED; - }; - --template --class FloatXfermode : public SkProcCoeffXfermode { -+class Sk4fXfermode : public SkProcCoeffXfermode { - public: -- FloatXfermode(const ProcCoeff& rec, SkXfermode::Mode mode) -- : INHERITED(rec, mode) {} -+ typedef Sk4f (SK_VECTORCALL *ProcF)(Sk4f, Sk4f); -+ Sk4fXfermode(const ProcCoeff& rec, SkXfermode::Mode mode, ProcF procf) -+ : INHERITED(rec, mode) -+ , fProcF(procf) {} - - void xfer32(SkPMColor dst[], const SkPMColor src[], int n, const SkAlpha aa[]) const override { -- BlendFn blend; -- while (n >= 2) { -- auto d = Sk8f::FromBytes((const uint8_t*)dst) * (1.0f/255), -- s = Sk8f::FromBytes((const uint8_t*)src) * (1.0f/255), -- b = blend(d, s); -- if (aa) { -- auto a255 = Sk8f(aa[0],aa[0],aa[0],aa[0], aa[1],aa[1],aa[1],aa[1]); -- (b*a255 + d*(Sk8f(255)-a255) + 0.5).toBytes((uint8_t*)dst); -- aa += 2; -- } else { -- (b * 255 + 0.5).toBytes((uint8_t*)dst); -- } -- dst += 2; -- src += 2; -- n -= 2; -- } -- if (n) { -- auto d = Sk4f::FromBytes((const uint8_t*)dst) * (1.0f/255), -- s = Sk4f::FromBytes((const uint8_t*)src) * (1.0f/255), -- b = blend(d, s); -- if (aa) { -- auto a255 = Sk4f(aa[0],aa[0],aa[0],aa[0]); -- (b*a255 + d*(Sk4f(255)-a255) + 0.5).toBytes((uint8_t*)dst); -- aa++; -- } else { -- (b * 255 + 0.5).toBytes((uint8_t*)dst); -- } -+ for (int i = 0; i < n; i++) { -+ dst[i] = aa ? this->xfer32(dst[i], src[i], aa[i]) -+ : this->xfer32(dst[i], src[i]); - } - } - - void xfer16(uint16_t dst[], const SkPMColor src[], int n, const SkAlpha aa[]) const override { - for (int i = 0; i < n; i++) { -- SkPMColor dst32 = SkPixel16ToPixel32(dst[i]); // Convert dst up to 8888. -- this->xfer32(&dst32, src+i, 1, aa ? aa+i : nullptr); // Blend 1 pixel. -- dst[i] = SkPixel32ToPixel16(dst32); // Repack dst to 565 and store. -+ SkPMColor dst32 = SkPixel16ToPixel32(dst[i]); -+ dst32 = aa ? this->xfer32(dst32, src[i], aa[i]) -+ : this->xfer32(dst32, src[i]); -+ dst[i] = SkPixel32ToPixel16(dst32); - } - } - - private: -+ static Sk4f Load(SkPMColor c) { -+ return Sk4f::FromBytes((uint8_t*)&c) * Sk4f(1.0f/255); -+ } -+ static SkPMColor Round(const Sk4f& f) { -+ SkPMColor c; -+ (f * Sk4f(255) + Sk4f(0.5f)).toBytes((uint8_t*)&c); -+ return c; -+ } -+ inline SkPMColor xfer32(SkPMColor dst, SkPMColor src) const { -+ return Round(fProcF(Load(dst), Load(src))); -+ } -+ -+ inline SkPMColor xfer32(SkPMColor dst, SkPMColor src, SkAlpha aa) const { -+ Sk4f s(Load(src)), -+ d(Load(dst)), -+ b(fProcF(d,s)); -+ // We do aa in full float precision before going back down to bytes, because we can! -+ Sk4f a = Sk4f(aa) * Sk4f(1.0f/255); -+ b = b*a + d*(Sk4f(1)-a); -+ return Round(b); -+ } -+ -+ ProcF fProcF; - typedef SkProcCoeffXfermode INHERITED; - }; - -@@ -327,7 +323,7 @@ static SkXfermode* create_xfermode(const - #undef CASE - - #define CASE(Mode) \ -- case SkXfermode::k##Mode##_Mode: return new FloatXfermode(rec, mode) -+ case SkXfermode::k##Mode##_Mode: return new Sk4fXfermode(rec, mode, &Mode) - CASE(ColorDodge); - CASE(ColorBurn); - CASE(SoftLight); diff --git a/chromium-50.0.2661.86-addrfix.patch b/chromium-50.0.2661.86-addrfix.patch deleted file mode 100644 index fd0023a..0000000 --- a/chromium-50.0.2661.86-addrfix.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-50.0.2661.86/third_party/boringssl/boringssl.gyp.addrfix chromium-50.0.2661.86/third_party/boringssl/boringssl.gyp ---- chromium-50.0.2661.86/third_party/boringssl/boringssl.gyp.addrfix 2016-04-27 13:26:38.483282586 -0400 -+++ chromium-50.0.2661.86/third_party/boringssl/boringssl.gyp 2016-04-27 13:28:19.843065230 -0400 -@@ -18,6 +18,7 @@ - 'BORINGSSL_IMPLEMENTATION', - 'BORINGSSL_NO_STATIC_INITIALIZER', - 'OPENSSL_SMALL', -+ '_POSIX_C_SOURCE=200112L', - ], - 'dependencies': [ 'boringssl_asm' ], - # TODO(davidben): Fix size_t truncations in BoringSSL. diff --git a/chromium-50.0.2661.94-unbundle-re2-fix.patch b/chromium-50.0.2661.94-unbundle-re2-fix.patch deleted file mode 100644 index 306de99..0000000 --- a/chromium-50.0.2661.94-unbundle-re2-fix.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-50.0.2661.94/build/linux/unbundle/re2.gyp.unbundle-fix chromium-50.0.2661.94/build/linux/unbundle/re2.gyp ---- chromium-50.0.2661.94/build/linux/unbundle/re2.gyp.unbundle-fix 2016-03-25 09:04:44.000000000 -0400 -+++ chromium-50.0.2661.94/build/linux/unbundle/re2.gyp 2016-05-03 12:24:38.850296350 -0400 -@@ -8,7 +8,7 @@ - 'target_name': 're2', - 'type': 'none', - 'variables': { -- 'headers_root_path': '.', -+ 'headers_root_path': 'src/', - 'header_filenames': [ - 're2/filtered_re2.h', - 're2/re2.h', diff --git a/chromium-52.0.2723.2-PNGImageDecoder-fix-cast.patch b/chromium-52.0.2723.2-PNGImageDecoder-fix-cast.patch deleted file mode 100644 index 9e94d0e..0000000 --- a/chromium-52.0.2723.2-PNGImageDecoder-fix-cast.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-52.0.2723.2/third_party/WebKit/Source/platform/image-decoders/png/PNGImageDecoder.cpp.fixcast chromium-52.0.2723.2/third_party/WebKit/Source/platform/image-decoders/png/PNGImageDecoder.cpp ---- chromium-52.0.2723.2/third_party/WebKit/Source/platform/image-decoders/png/PNGImageDecoder.cpp.fixcast 2016-05-10 09:43:31.637003844 -0400 -+++ chromium-52.0.2723.2/third_party/WebKit/Source/platform/image-decoders/png/PNGImageDecoder.cpp 2016-05-10 09:43:43.523741296 -0400 -@@ -234,7 +234,7 @@ void PNGImageDecoder::headerAvailable() - #endif - png_uint_32 profileLength = 0; - if (png_get_iCCP(png, info, &profileName, &compressionType, &profile, &profileLength)) { -- setColorProfileAndTransform(profile, profileLength, imageHasAlpha, false /* useSRGB */); -+ setColorProfileAndTransform((const char*)profile, profileLength, imageHasAlpha, false /* useSRGB */); - } - } - #endif // PNG_iCCP_SUPPORTED diff --git a/chromium-52.0.2723.2-sync_link_zlib.patch b/chromium-52.0.2723.2-sync_link_zlib.patch deleted file mode 100644 index 71d0f16..0000000 --- a/chromium-52.0.2723.2-sync_link_zlib.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-52.0.2723.2/sync/sync_tests.gypi.sync_link_zlib chromium-52.0.2723.2/sync/sync_tests.gypi ---- chromium-52.0.2723.2/sync/sync_tests.gypi.sync_link_zlib 2016-05-09 14:22:30.884719562 -0400 -+++ chromium-52.0.2723.2/sync/sync_tests.gypi 2016-05-09 14:24:06.337517725 -0400 -@@ -264,6 +264,7 @@ - '../testing/gtest.gyp:gtest', - '../third_party/leveldatabase/leveldatabase.gyp:leveldatabase', - '../third_party/protobuf/protobuf.gyp:protobuf_lite', -+ '../third_party/zlib/zlib.gyp:zlib', - 'sync', - 'test_support_sync_api', - 'test_support_sync_core', diff --git a/chromium-52.0.2723.2-system-icu-54-does-not-have-detectHostTimeZone.patch b/chromium-52.0.2723.2-system-icu-54-does-not-have-detectHostTimeZone.patch deleted file mode 100644 index 1af90ff..0000000 --- a/chromium-52.0.2723.2-system-icu-54-does-not-have-detectHostTimeZone.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-52.0.2723.2/content/browser/time_zone_monitor.cc.system-icu chromium-52.0.2723.2/content/browser/time_zone_monitor.cc ---- chromium-52.0.2723.2/content/browser/time_zone_monitor.cc.system-icu 2016-05-09 14:01:42.751588803 -0400 -+++ chromium-52.0.2723.2/content/browser/time_zone_monitor.cc 2016-05-09 14:09:22.663951240 -0400 -@@ -23,7 +23,7 @@ TimeZoneMonitor::~TimeZoneMonitor() { - - void TimeZoneMonitor::NotifyRenderers() { - DCHECK_CURRENTLY_ON(BrowserThread::UI); --#if defined(OS_CHROMEOS) -+#if defined(OS_CHROMEOS) || U_ICU_VERSION_MAJOR_NUM < 55 - // On CrOS, ICU's default tz is already set to a new zone. No - // need to redetect it with detectHostTimeZone(). - std::unique_ptr new_zone(icu::TimeZone::createDefault()); diff --git a/chromium-52.0.2723.2-use_system_harfbuzz.patch b/chromium-52.0.2723.2-use_system_harfbuzz.patch deleted file mode 100644 index dcdc9aa..0000000 --- a/chromium-52.0.2723.2-use_system_harfbuzz.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-52.0.2723.2/ui/gfx/render_text_harfbuzz.h.use_system_harfbuzz chromium-52.0.2723.2/ui/gfx/render_text_harfbuzz.h ---- chromium-52.0.2723.2/ui/gfx/render_text_harfbuzz.h.use_system_harfbuzz 2016-05-09 14:17:34.867555791 -0400 -+++ chromium-52.0.2723.2/ui/gfx/render_text_harfbuzz.h 2016-05-09 14:18:56.131677853 -0400 -@@ -13,7 +13,7 @@ - #include "base/gtest_prod_util.h" - #include "base/macros.h" - #include "base/memory/scoped_vector.h" --#include "third_party/harfbuzz-ng/src/hb.h" -+#include - #include "third_party/icu/source/common/unicode/ubidi.h" - #include "third_party/icu/source/common/unicode/uscript.h" - #include "ui/gfx/render_text.h" diff --git a/chromium-52.0.2743.82-arm-icu-fix.patch b/chromium-52.0.2743.82-arm-icu-fix.patch deleted file mode 100644 index acac356..0000000 --- a/chromium-52.0.2743.82-arm-icu-fix.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-52.0.2743.82/third_party/icu/icu.gyp.armfix chromium-52.0.2743.82/third_party/icu/icu.gyp ---- chromium-52.0.2743.82/third_party/icu/icu.gyp.armfix 2016-08-03 09:39:02.159874067 +0200 -+++ chromium-52.0.2743.82/third_party/icu/icu.gyp 2016-08-03 09:39:17.953765034 +0200 -@@ -44,7 +44,7 @@ - }], - ['(OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="solaris" \ - or OS=="netbsd" or OS=="mac" or OS=="android" or OS=="qnx") and \ -- (target_arch=="arm" or target_arch=="ia32" or \ -+ (target_arch=="ia32" or \ - target_arch=="mipsel")', { - 'target_conditions': [ - ['_toolset=="host"', { diff --git a/chromium-52.0.2743.82-cups22.patch b/chromium-52.0.2743.82-cups22.patch deleted file mode 100644 index fd09375..0000000 --- a/chromium-52.0.2743.82-cups22.patch +++ /dev/null @@ -1,47 +0,0 @@ -diff -up chromium-52.0.2743.82/printing/backend/print_backend_cups.cc.cups22 chromium-52.0.2743.82/printing/backend/print_backend_cups.cc ---- chromium-52.0.2743.82/printing/backend/print_backend_cups.cc.cups22 2016-07-22 09:20:15.794340886 -0400 -+++ chromium-52.0.2743.82/printing/backend/print_backend_cups.cc 2016-07-22 09:20:26.338261197 -0400 -@@ -16,6 +16,7 @@ - #include "base/synchronization/lock.h" - #include "base/values.h" - #include "printing/backend/cups_helper.h" -+#include - #include "printing/backend/print_backend_consts.h" - #include "url/gurl.h" - -diff -up chromium-52.0.2743.82/printing/BUILD.gn.cups22 chromium-52.0.2743.82/printing/BUILD.gn ---- chromium-52.0.2743.82/printing/BUILD.gn.cups22 2016-07-21 11:27:05.597507544 -0400 -+++ chromium-52.0.2743.82/printing/BUILD.gn 2016-07-21 14:36:45.574137758 -0400 -@@ -147,12 +147,13 @@ component("printing") { - ], - "trim string") - -- if (cups_version == "1.6" || cups_version == "1.7") { -+ if (cups_version == "1.6" || cups_version == "1.7" || cups_version == "2.2") { - cflags += [ - # CUPS 1.6 deprecated the PPD APIs, but we will stay with this - # API for now as supported Linux and Mac OS'es are still using - # older versions of CUPS. More info: crbug.com/226176 - "-Wno-deprecated-declarations", -+ "-D_PPD_DEPRECATED=", - # CUPS 1.7 deprecates httpConnectEncrypt(), see the mac section - # below. - ] -diff -up chromium-52.0.2743.82/printing/printing.gyp.cups22 chromium-52.0.2743.82/printing/printing.gyp ---- chromium-52.0.2743.82/printing/printing.gyp.cups22 2016-07-21 11:26:26.622746918 -0400 -+++ chromium-52.0.2743.82/printing/printing.gyp 2016-07-21 14:36:07.390373060 -0400 -@@ -142,12 +142,13 @@ - 'cups_version': ' - #include "third_party/icu/source/common/unicode/ubidi.h" - #include "third_party/icu/source/common/unicode/uscript.h" - #include "ui/gfx/render_text.h" diff --git a/chromium-55.0.2883.87-rvalue-fix.patch b/chromium-55.0.2883.87-rvalue-fix.patch deleted file mode 100644 index d9ec022..0000000 --- a/chromium-55.0.2883.87-rvalue-fix.patch +++ /dev/null @@ -1,17 +0,0 @@ -diff -up chromium-55.0.2883.87/buildtools/third_party/libc++/trunk/test/std/input.output/iostream.format/input.streams/istream.rvalue chromium-55.0.2883.87/buildtools/third_party/libc++/trunk/test/std/input.output/iostream.format/input.streams/istream -Only in chromium-55.0.2883.87/buildtools/third_party/libc++/trunk/test/std/input.output/iostream.format/input.streams/istream: istream.assign -Only in chromium-55.0.2883.87/buildtools/third_party/libc++/trunk/test/std/input.output/iostream.format/input.streams/istream: istream.cons -Only in chromium-55.0.2883.87/buildtools/third_party/libc++/trunk/test/std/input.output/iostream.format/input.streams/istream: istream_sentry -diff -up chromium-55.0.2883.87/buildtools/third_party/libc++/trunk/test/std/input.output/iostream.format/output.streams/ostream.rvalue chromium-55.0.2883.87/buildtools/third_party/libc++/trunk/test/std/input.output/iostream.format/output.streams/ostream -diff -up chromium-55.0.2883.87/remoting/host/fake_desktop_environment.cc.rvalue chromium-55.0.2883.87/remoting/host/fake_desktop_environment.cc ---- chromium-55.0.2883.87/remoting/host/fake_desktop_environment.cc.rvalue 2016-12-14 11:19:16.150103994 -0500 -+++ chromium-55.0.2883.87/remoting/host/fake_desktop_environment.cc 2016-12-14 11:19:44.003563271 -0500 -@@ -84,7 +84,7 @@ FakeDesktopEnvironment::CreateVideoCaptu - std::unique_ptr result( - new DesktopCapturerProxy(capture_thread_)); - result->set_capturer(std::move(fake_capturer)); -- return result; -+ return std::move(result); - } - - std::unique_ptr diff --git a/chromium-56.0.2924.87-gcc7.patch b/chromium-56.0.2924.87-gcc7.patch deleted file mode 100644 index 6d6e9ee..0000000 --- a/chromium-56.0.2924.87-gcc7.patch +++ /dev/null @@ -1,82 +0,0 @@ -diff -up chromium-56.0.2924.87/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 chromium-56.0.2924.87/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h ---- chromium-56.0.2924.87/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 2017-03-01 11:29:32.681142930 -0500 -+++ chromium-56.0.2924.87/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h 2017-03-01 11:30:19.396536499 -0500 -@@ -5,6 +5,7 @@ - #include "platform/PlatformExport.h" - #include "wtf/ThreadSpecific.h" - -+#include - #include - - namespace gpu { -diff -up chromium-56.0.2924.87/v8/src/objects-body-descriptors.h.gcc7 chromium-56.0.2924.87/v8/src/objects-body-descriptors.h ---- chromium-56.0.2924.87/v8/src/objects-body-descriptors.h.gcc7 2017-02-28 16:00:27.313172210 -0500 -+++ chromium-56.0.2924.87/v8/src/objects-body-descriptors.h 2017-02-28 16:00:46.016804708 -0500 -@@ -99,7 +99,7 @@ class FixedBodyDescriptor final : public - - template - static inline void IterateBody(HeapObject* obj, int object_size) { -- IterateBody(obj); -+ IterateBody(obj); - } - }; - -diff -up chromium-56.0.2924.87/v8/src/objects.h.gcc7 chromium-56.0.2924.87/v8/src/objects.h ---- chromium-56.0.2924.87/v8/src/objects.h.gcc7 2017-02-28 15:58:27.368527968 -0500 -+++ chromium-56.0.2924.87/v8/src/objects.h 2017-02-28 15:59:25.868379455 -0500 -@@ -3531,22 +3531,10 @@ class HashTable : public HashTableBase { - public: - typedef Shape ShapeT; - -- // Wrapper methods -- inline uint32_t Hash(Key key) { -- if (Shape::UsesSeed) { -- return Shape::SeededHash(key, GetHeap()->HashSeed()); -- } else { -- return Shape::Hash(key); -- } -- } -- -- inline uint32_t HashForObject(Key key, Object* object) { -- if (Shape::UsesSeed) { -- return Shape::SeededHashForObject(key, GetHeap()->HashSeed(), object); -- } else { -- return Shape::HashForObject(key, object); -- } -- } -+ // Wrapper methods. Defined in src/objects-inl.h -+ // to break a cycle with src/heap/heap.h. -+ inline uint32_t Hash(Key key); -+ inline uint32_t HashForObject(Key key, Object* object); - - // Returns a new HashTable object. - MUST_USE_RESULT static Handle New( -diff -up chromium-56.0.2924.87/v8/src/objects-inl.h.gcc7 chromium-56.0.2924.87/v8/src/objects-inl.h ---- chromium-56.0.2924.87/v8/src/objects-inl.h.gcc7 2017-02-28 15:59:44.293016928 -0500 -+++ chromium-56.0.2924.87/v8/src/objects-inl.h 2017-02-28 16:00:18.187351116 -0500 -@@ -39,6 +39,25 @@ - namespace v8 { - namespace internal { - -+template -+uint32_t HashTable::Hash(Key key) { -+ if (Shape::UsesSeed) { -+ return Shape::SeededHash(key, GetHeap()->HashSeed()); -+ } else { -+ return Shape::Hash(key); -+ } -+} -+ -+template -+uint32_t HashTable::HashForObject(Key key, -+ Object* object) { -+ if (Shape::UsesSeed) { -+ return Shape::SeededHashForObject(key, GetHeap()->HashSeed(), object); -+ } else { -+ return Shape::HashForObject(key, object); -+ } -+} -+ - PropertyDetails::PropertyDetails(Smi* smi) { - value_ = smi->value(); - } diff --git a/chromium-58.0.3029.81-enable-mp3.patch b/chromium-58.0.3029.81-enable-mp3.patch deleted file mode 100644 index 7fbc0d0..0000000 --- a/chromium-58.0.3029.81-enable-mp3.patch +++ /dev/null @@ -1,144 +0,0 @@ -diff -up chromium-58.0.3029.81/media/base/mime_util_internal.cc.mp3 chromium-58.0.3029.81/media/base/mime_util_internal.cc ---- chromium-58.0.3029.81/media/base/mime_util_internal.cc.mp3 2017-04-21 14:46:15.817743487 -0400 -+++ chromium-58.0.3029.81/media/base/mime_util_internal.cc 2017-04-21 14:52:58.544150880 -0400 -@@ -244,10 +244,10 @@ void MimeUtil::AddSupportedMediaFormats( - CodecSet webm_codecs(webm_audio_codecs); - webm_codecs.insert(webm_video_codecs.begin(), webm_video_codecs.end()); - --#if BUILDFLAG(USE_PROPRIETARY_CODECS) - CodecSet mp3_codecs; - mp3_codecs.insert(MP3); - -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - CodecSet aac; - aac.insert(MPEG2_AAC); - aac.insert(MPEG4_AAC); -@@ -291,10 +291,10 @@ void MimeUtil::AddSupportedMediaFormats( - AddContainerWithCodecs("application/ogg", ogg_codecs, false); - AddContainerWithCodecs("audio/flac", implicit_codec, false); - --#if BUILDFLAG(USE_PROPRIETARY_CODECS) - AddContainerWithCodecs("audio/mpeg", mp3_codecs, true); // Allow "mp3". - AddContainerWithCodecs("audio/mp3", implicit_codec, true); - AddContainerWithCodecs("audio/x-mp3", implicit_codec, true); -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - AddContainerWithCodecs("audio/aac", implicit_codec, true); // AAC / ADTS. - AddContainerWithCodecs("audio/mp4", mp4_audio_codecs, true); - DCHECK(!mp4_video_codecs.empty()); -@@ -715,7 +715,6 @@ bool MimeUtil::IsCodecProprietary(Codec - case INVALID_CODEC: - case AC3: - case EAC3: -- case MP3: - case MPEG2_AAC: - case MPEG4_AAC: - case H264: -@@ -723,6 +722,7 @@ bool MimeUtil::IsCodecProprietary(Codec - case DOLBY_VISION: - return true; - -+ case MP3: - case PCM: - case VORBIS: - case OPUS: -diff -up chromium-58.0.3029.81/third_party/ffmpeg/ffmpeg_generated.gni.mp3 chromium-58.0.3029.81/third_party/ffmpeg/ffmpeg_generated.gni ---- chromium-58.0.3029.81/third_party/ffmpeg/ffmpeg_generated.gni.mp3 2017-04-21 11:49:42.000000000 -0400 -+++ chromium-58.0.3029.81/third_party/ffmpeg/ffmpeg_generated.gni 2017-04-21 14:46:15.816743506 -0400 -@@ -176,19 +176,12 @@ if ((is_linux && current_cpu == "arm" && - ] - } - --if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mips64el" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "arm" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "mipsel" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "ChromeOS") || (is_win && ffmpeg_branding == "Chrome")) { -+if ((current_cpu == "x64") || (is_android && current_cpu == "arm" && arm_use_neon) || (is_android && current_cpu == "arm64") || (is_android && current_cpu == "mips64el") || (is_android && current_cpu == "mipsel") || (is_android && current_cpu == "x86") || (is_linux && current_cpu == "arm" && arm_use_neon) || (is_linux && current_cpu == "arm" && arm_use_neon) || (is_linux && current_cpu == "arm") || (is_linux && current_cpu == "arm64") || (is_linux && current_cpu == "mipsel") || (is_linux && current_cpu == "x64") || (is_linux && current_cpu == "x86") || (is_win)) -+{ - ffmpeg_c_sources += [ -- "libavcodec/aac_ac3_parser.c", -- "libavcodec/aac_parser.c", -- "libavcodec/aacadtsdec.c", -- "libavcodec/aacps_float.c", -- "libavcodec/aacpsdsp_float.c", -- "libavcodec/aacsbr.c", -- "libavcodec/aactab.c", -- "libavcodec/ac3tab.c", -- "libavcodec/autorename_libavcodec_aacdec.c", - "libavcodec/autorename_libavcodec_mpegaudiodsp.c", - "libavcodec/autorename_libavcodec_sbrdsp.c", -+ "libavcodec/ac3tab.c", - "libavcodec/cbrt_data.c", - "libavcodec/dct.c", - "libavcodec/dct32_fixed.c", -@@ -204,7 +197,6 @@ if ((current_cpu == "x64" && ffmpeg_bran - "libavcodec/mpegaudiodsp_float.c", - "libavcodec/sinewin.c", - "libavcodec/sinewin_fixed.c", -- "libavformat/aacdec.c", - "libavformat/apetag.c", - "libavformat/img2.c", - "libavformat/mov.c", -@@ -213,6 +205,21 @@ if ((current_cpu == "x64" && ffmpeg_bran - ] - } - -+if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mips64el" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "arm" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "mipsel" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "ChromeOS") || (is_win && ffmpeg_branding == "Chrome")) -+{ -+ ffmpeg_c_sources += [ -+ "libavcodec/aac_ac3_parser.c", -+ "libavcodec/aac_parser.c", -+ "libavcodec/aacadtsdec.c", -+ "libavcodec/aacps_float.c", -+ "libavcodec/aacpsdsp_float.c", -+ "libavcodec/aacsbr.c", -+ "libavcodec/aactab.c", -+ "libavcodec/autorename_libavcodec_aacdec.c", -+ "libavformat/aacdec.c", -+ ] -+} -+ - if ((is_android && current_cpu == "x64") || (is_android && current_cpu == "x86") || (is_linux && current_cpu == "x64") || (is_linux && current_cpu == "x86") || (is_mac) || (is_win)) { - ffmpeg_c_sources += [ - "libavcodec/x86/autorename_libavcodec_x86_vorbisdsp_init.c", -@@ -312,21 +319,31 @@ if ((is_linux && current_cpu == "x64") | - if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "ChromeOS") || (is_win && ffmpeg_branding == "Chrome")) { - ffmpeg_c_sources += [ - "libavcodec/x86/aacpsdsp_init.c", -+ ] -+} -+ -+if ((current_cpu == "x64") || (is_android && current_cpu == "x86") || (is_linux && current_cpu == "x64") || (is_linux && current_cpu == "x86") || (is_win)) { -+ ffmpeg_c_sources += [ - "libavcodec/x86/dct_init.c", - "libavcodec/x86/mpegaudiodsp.c", - "libavcodec/x86/sbrdsp_init.c", - ] - } - --if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "ChromeOS") || (is_win && ffmpeg_branding == "Chrome")) { -+if ((current_cpu == "x64") || (is_android && current_cpu == "x86") || (is_linux && current_cpu == "x64") || (is_linux && current_cpu == "x86") || (is_win)) { - ffmpeg_yasm_sources += [ -- "libavcodec/x86/aacpsdsp.asm", - "libavcodec/x86/dct32.asm", - "libavcodec/x86/imdct36.asm", - "libavcodec/x86/sbrdsp.asm", - ] - } - -+if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "ChromeOS") || (is_win && ffmpeg_branding == "Chrome")) { -+ ffmpeg_yasm_sources += [ -+ "libavcodec/x86/aacpsdsp.asm", -+ ] -+} -+ - if ((is_linux && current_cpu == "arm" && arm_use_neon) || (is_linux && current_cpu == "arm")) { - ffmpeg_c_sources += [ - "libavcodec/arm/h264pred_init_arm.c", -diff -up chromium-58.0.3029.81/third_party/ffmpeg/libavcodec/sbrdsp.c.mp3 chromium-58.0.3029.81/third_party/ffmpeg/libavcodec/sbrdsp.c ---- chromium-58.0.3029.81/third_party/ffmpeg/libavcodec/sbrdsp.c.mp3 2017-04-21 11:49:43.000000000 -0400 -+++ chromium-58.0.3029.81/third_party/ffmpeg/libavcodec/sbrdsp.c 2017-04-21 14:46:15.817743487 -0400 -@@ -23,6 +23,7 @@ - #define USE_FIXED 0 - - #include "aac.h" -+#include "aacsbrdata.h" - #include "config.h" - #include "libavutil/attributes.h" - #include "libavutil/intfloat.h" diff --git a/chromium-58.0.3029.81-ffmpeg-stdatomic.patch b/chromium-58.0.3029.81-ffmpeg-stdatomic.patch deleted file mode 100644 index e08d5b2..0000000 --- a/chromium-58.0.3029.81-ffmpeg-stdatomic.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -up chromium-57.0.2987.21/third_party/ffmpeg/libavutil/cpu.c.ffmpeg_stdatomic chromium-57.0.2987.21/third_party/ffmpeg/libavutil/cpu.c ---- chromium-57.0.2987.21/third_party/ffmpeg/libavutil/cpu.c.ffmpeg_stdatomic 2017-02-03 07:07:36.000000000 +0100 -+++ chromium-57.0.2987.21/third_party/ffmpeg/libavutil/cpu.c 2017-02-09 11:54:34.083000442 +0100 -@@ -20,6 +20,10 @@ - // Chromium: Windows doesn't provide stdatomic.h, so use the compat version. - #if defined(_MSC_VER) - #include -+// GCC 4.8 didn't have stdatomic, but was advertising it. -+// https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58016 -+#elif !defined(__clang__) && defined(__GNUC__) && (__GNUC__ == 4 || (__GNUC__ == 4 && (__GNUC_MINOR__ == 8))) -+#include - #else - #include - #endif diff --git a/chromium-58.0.3029.81-fix-gn.patch b/chromium-58.0.3029.81-fix-gn.patch deleted file mode 100644 index d8b2207..0000000 --- a/chromium-58.0.3029.81-fix-gn.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-58.0.3029.81/tools/gn/bootstrap/bootstrap.py.fixgn chromium-58.0.3029.81/tools/gn/bootstrap/bootstrap.py ---- chromium-58.0.3029.81/tools/gn/bootstrap/bootstrap.py.fixgn 2017-04-21 15:39:59.704874747 -0400 -+++ chromium-58.0.3029.81/tools/gn/bootstrap/bootstrap.py 2017-04-21 15:43:06.778809475 -0400 -@@ -384,6 +384,7 @@ def write_gn_ninja(path, root_gen_dir, o - 'base/base_paths.cc', - 'base/base_switches.cc', - 'base/build_time.cc', -+ 'base/callback_helpers.cc', - 'base/callback_internal.cc', - 'base/command_line.cc', - 'base/debug/activity_tracker.cc', diff --git a/chromium-59.0.3071.86-dma-buf-header-hack.patch b/chromium-59.0.3071.86-dma-buf-header-hack.patch deleted file mode 100644 index 1e1ff43..0000000 --- a/chromium-59.0.3071.86-dma-buf-header-hack.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -up chromium-59.0.3071.86/ui/gfx/linux/client_native_pixmap_dmabuf.cc.headerhack chromium-59.0.3071.86/ui/gfx/linux/client_native_pixmap_dmabuf.cc ---- chromium-59.0.3071.86/ui/gfx/linux/client_native_pixmap_dmabuf.cc.headerhack 2017-06-09 15:12:49.684832489 -0400 -+++ chromium-59.0.3071.86/ui/gfx/linux/client_native_pixmap_dmabuf.cc 2017-06-09 15:13:13.907342001 -0400 -@@ -17,7 +17,8 @@ - #include "base/strings/stringprintf.h" - #include "base/trace_event/trace_event.h" - --#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 6, 0) -+//#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 6, 0) -+#if 1 - #include - - struct local_dma_buf_sync { diff --git a/chromium-59.0.3071.86-enable-mp3.patch b/chromium-59.0.3071.86-enable-mp3.patch deleted file mode 100644 index d727324..0000000 --- a/chromium-59.0.3071.86-enable-mp3.patch +++ /dev/null @@ -1,477 +0,0 @@ -diff -up chromium-59.0.3071.86/components/neterror/resources/sounds/button-press.mp3 chromium-59.0.3071.86/components/neterror/resources/sounds/button-press -diff -up chromium-59.0.3071.86/components/neterror/resources/sounds/hit.mp3 chromium-59.0.3071.86/components/neterror/resources/sounds/hit -diff -up chromium-59.0.3071.86/components/neterror/resources/sounds/score-reached.mp3 chromium-59.0.3071.86/components/neterror/resources/sounds/score-reached -diff -up chromium-59.0.3071.86/media/base/mime_util_internal.cc.mp3 chromium-59.0.3071.86/media/base/mime_util_internal.cc ---- chromium-59.0.3071.86/media/base/mime_util_internal.cc.mp3 2017-06-05 15:03:08.000000000 -0400 -+++ chromium-59.0.3071.86/media/base/mime_util_internal.cc 2017-06-15 12:37:05.162650032 -0400 -@@ -286,10 +286,10 @@ void MimeUtil::AddSupportedMediaFormats( - CodecSet webm_codecs(webm_audio_codecs); - webm_codecs.insert(webm_video_codecs.begin(), webm_video_codecs.end()); - --#if BUILDFLAG(USE_PROPRIETARY_CODECS) - CodecSet mp3_codecs; - mp3_codecs.insert(MP3); - -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - CodecSet aac; - aac.insert(MPEG2_AAC); - aac.insert(MPEG4_AAC); -@@ -333,10 +333,10 @@ void MimeUtil::AddSupportedMediaFormats( - AddContainerWithCodecs("application/ogg", ogg_codecs, false); - AddContainerWithCodecs("audio/flac", implicit_codec, false); - --#if BUILDFLAG(USE_PROPRIETARY_CODECS) - AddContainerWithCodecs("audio/mpeg", mp3_codecs, true); // Allow "mp3". - AddContainerWithCodecs("audio/mp3", implicit_codec, true); - AddContainerWithCodecs("audio/x-mp3", implicit_codec, true); -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - AddContainerWithCodecs("audio/aac", implicit_codec, true); // AAC / ADTS. - AddContainerWithCodecs("audio/mp4", mp4_audio_codecs, true); - DCHECK(!mp4_video_codecs.empty()); -@@ -789,7 +789,6 @@ bool MimeUtil::IsCodecProprietary(Codec - case INVALID_CODEC: - case AC3: - case EAC3: -- case MP3: - case MPEG2_AAC: - case MPEG4_AAC: - case H264: -@@ -797,6 +796,7 @@ bool MimeUtil::IsCodecProprietary(Codec - case DOLBY_VISION: - return true; - -+ case MP3: - case PCM: - case VORBIS: - case OPUS: -diff -up chromium-59.0.3071.86/media/BUILD.gn.mp3 chromium-59.0.3071.86/media/BUILD.gn ---- chromium-59.0.3071.86/media/BUILD.gn.mp3 2017-06-15 12:48:07.277772389 -0400 -+++ chromium-59.0.3071.86/media/BUILD.gn 2017-06-15 12:50:34.342911710 -0400 -@@ -229,6 +229,14 @@ component("media") { - "formats/webm/webm_video_client.h", - "formats/webm/webm_webvtt_parser.cc", - "formats/webm/webm_webvtt_parser.h", -+ "formats/mpeg/adts_constants.cc", -+ "formats/mpeg/adts_constants.h", -+ "formats/mpeg/adts_stream_parser.cc", -+ "formats/mpeg/adts_stream_parser.h", -+ "formats/mpeg/mpeg1_audio_stream_parser.cc", -+ "formats/mpeg/mpeg1_audio_stream_parser.h", -+ "formats/mpeg/mpeg_audio_stream_parser_base.cc", -+ "formats/mpeg/mpeg_audio_stream_parser_base.h", - "muxers/webm_muxer.cc", - "muxers/webm_muxer.h", - "renderers/audio_renderer_impl.cc", -@@ -442,14 +450,6 @@ component("media") { - "formats/mp4/sample_to_group_iterator.h", - "formats/mp4/track_run_iterator.cc", - "formats/mp4/track_run_iterator.h", -- "formats/mpeg/adts_constants.cc", -- "formats/mpeg/adts_constants.h", -- "formats/mpeg/adts_stream_parser.cc", -- "formats/mpeg/adts_stream_parser.h", -- "formats/mpeg/mpeg1_audio_stream_parser.cc", -- "formats/mpeg/mpeg1_audio_stream_parser.h", -- "formats/mpeg/mpeg_audio_stream_parser_base.cc", -- "formats/mpeg/mpeg_audio_stream_parser_base.h", - ] - if (enable_mse_mpeg2ts_stream_parser) { - sources += [ -diff -up chromium-59.0.3071.86/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h.mp3 chromium-59.0.3071.86/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h ---- chromium-59.0.3071.86/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h.mp3 2017-06-16 14:34:19.233333696 -0400 -+++ chromium-59.0.3071.86/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h 2017-06-16 14:35:36.235836034 -0400 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/usr/local/google/home/tguilbert/Code/chromium/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-cross-compile --cross-prefix=/usr/bin/aarch64-linux-gnu- --target-os=linux --arch=aarch64 --enable-armv8 --extra-cflags='-march=armv8-a' --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/usr/local/google/home/tguilbert/Code/chromium/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-cross-compile --cross-prefix=/usr/bin/aarch64-linux-gnu- --target-os=linux --arch=aarch64 --enable-armv8 --extra-cflags='-march=armv8-a' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -550,7 +550,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -617,8 +617,8 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -957,7 +957,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1263,7 +1263,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2196,7 +2196,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-59.0.3071.86/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h.mp3 chromium-59.0.3071.86/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h ---- chromium-59.0.3071.86/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h.mp3 2017-06-16 14:33:03.565804834 -0400 -+++ chromium-59.0.3071.86/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h 2017-06-16 14:34:00.538697021 -0400 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/tguilbert/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --disable-neon --extra-cflags='-mfpu=vfpv3-d16' --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/tguilbert/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --disable-neon --extra-cflags='-mfpu=vfpv3-d16' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -550,7 +550,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -617,8 +617,8 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -957,7 +957,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1263,7 +1263,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2196,7 +2196,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-59.0.3071.86/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h.mp3 chromium-59.0.3071.86/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h ---- chromium-59.0.3071.86/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h.mp3 2017-06-16 14:35:50.558558013 -0400 -+++ chromium-59.0.3071.86/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h 2017-06-16 14:36:34.140710462 -0400 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/tguilbert/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --enable-neon --extra-cflags='-mfpu=neon' --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/tguilbert/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --enable-neon --extra-cflags='-mfpu=neon' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -550,7 +550,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -617,8 +617,8 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -957,7 +957,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1263,7 +1263,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2196,7 +2196,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-59.0.3071.86/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h.mp3 chromium-59.0.3071.86/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h ---- chromium-59.0.3071.86/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h.mp3 2017-06-16 14:31:10.694999531 -0400 -+++ chromium-59.0.3071.86/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h 2017-06-16 14:32:48.921089988 -0400 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/usr/local/google/home/tguilbert/Code/chromium/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=i686 --extra-cflags='\"-m32\"' --extra-ldflags='\"-m32\"' --enable-yasm --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/usr/local/google/home/tguilbert/Code/chromium/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=i686 --extra-cflags='\"-m32\"' --extra-ldflags='\"-m32\"' --enable-yasm --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -550,7 +550,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -617,8 +617,8 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -957,7 +957,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1263,7 +1263,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2196,7 +2196,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-59.0.3071.86/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h.mp3 chromium-59.0.3071.86/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h ---- chromium-59.0.3071.86/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h.mp3 2017-06-16 14:27:17.782528334 -0400 -+++ chromium-59.0.3071.86/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h 2017-06-16 14:29:24.962054946 -0400 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/usr/local/google/home/tguilbert/Code/chromium/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-pic --enable-lto" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/usr/local/google/home/tguilbert/Code/chromium/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-pic --enable-lto --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -550,7 +550,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -617,8 +617,8 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -957,7 +957,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1263,7 +1263,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2196,7 +2196,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-59.0.3071.86/third_party/ffmpeg/ffmpeg_generated.gni.mp3 chromium-59.0.3071.86/third_party/ffmpeg/ffmpeg_generated.gni ---- chromium-59.0.3071.86/third_party/ffmpeg/ffmpeg_generated.gni.mp3 2017-06-08 11:40:39.000000000 -0400 -+++ chromium-59.0.3071.86/third_party/ffmpeg/ffmpeg_generated.gni 2017-06-15 12:37:05.163650012 -0400 -@@ -177,19 +177,12 @@ if ((is_linux && current_cpu == "arm" && - ] - } - --if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mips64el" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "arm" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "mipsel" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "ChromeOS") || (is_win && ffmpeg_branding == "Chrome")) { -+if ((current_cpu == "x64") || (is_android && current_cpu == "arm" && arm_use_neon) || (is_android && current_cpu == "arm64") || (is_android && current_cpu == "mips64el") || (is_android && current_cpu == "mipsel") || (is_android && current_cpu == "x86") || (is_linux && current_cpu == "arm" && arm_use_neon) || (is_linux && current_cpu == "arm" && arm_use_neon) || (is_linux && current_cpu == "arm") || (is_linux && current_cpu == "arm64") || (is_linux && current_cpu == "mipsel") || (is_linux && current_cpu == "x64") || (is_linux && current_cpu == "x86") || (is_win)) -+{ - ffmpeg_c_sources += [ -- "libavcodec/aac_ac3_parser.c", -- "libavcodec/aac_parser.c", -- "libavcodec/aacadtsdec.c", -- "libavcodec/aacps_float.c", -- "libavcodec/aacpsdsp_float.c", -- "libavcodec/aacsbr.c", -- "libavcodec/aactab.c", -- "libavcodec/ac3tab.c", -- "libavcodec/autorename_libavcodec_aacdec.c", - "libavcodec/autorename_libavcodec_mpegaudiodsp.c", - "libavcodec/autorename_libavcodec_sbrdsp.c", -+ "libavcodec/ac3tab.c", - "libavcodec/cbrt_data.c", - "libavcodec/dct.c", - "libavcodec/dct32_fixed.c", -@@ -205,7 +198,6 @@ if ((current_cpu == "x64" && ffmpeg_bran - "libavcodec/mpegaudiodsp_float.c", - "libavcodec/sinewin.c", - "libavcodec/sinewin_fixed.c", -- "libavformat/aacdec.c", - "libavformat/apetag.c", - "libavformat/img2.c", - "libavformat/mov.c", -@@ -214,6 +206,21 @@ if ((current_cpu == "x64" && ffmpeg_bran - ] - } - -+if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mips64el" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "arm" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "mipsel" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "ChromeOS") || (is_win && ffmpeg_branding == "Chrome")) -+{ -+ ffmpeg_c_sources += [ -+ "libavcodec/aac_ac3_parser.c", -+ "libavcodec/aac_parser.c", -+ "libavcodec/aacadtsdec.c", -+ "libavcodec/aacps_float.c", -+ "libavcodec/aacpsdsp_float.c", -+ "libavcodec/aacsbr.c", -+ "libavcodec/aactab.c", -+ "libavcodec/autorename_libavcodec_aacdec.c", -+ "libavformat/aacdec.c", -+ ] -+} -+ - if ((is_android && current_cpu == "x64") || (is_android && current_cpu == "x86") || (is_linux && current_cpu == "x64") || (is_linux && current_cpu == "x86") || (is_mac) || (is_win)) { - ffmpeg_c_sources += [ - "libavcodec/x86/autorename_libavcodec_x86_vorbisdsp_init.c", -@@ -315,21 +322,31 @@ if ((is_linux && current_cpu == "x64") | - if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "ChromeOS") || (is_win && ffmpeg_branding == "Chrome")) { - ffmpeg_c_sources += [ - "libavcodec/x86/aacpsdsp_init.c", -+ ] -+} -+ -+if ((current_cpu == "x64") || (is_android && current_cpu == "x86") || (is_linux && current_cpu == "x64") || (is_linux && current_cpu == "x86") || (is_win)) { -+ ffmpeg_c_sources += [ - "libavcodec/x86/dct_init.c", - "libavcodec/x86/mpegaudiodsp.c", - "libavcodec/x86/sbrdsp_init.c", - ] - } - --if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "ChromeOS") || (is_win && ffmpeg_branding == "Chrome")) { -+if ((current_cpu == "x64") || (is_android && current_cpu == "x86") || (is_linux && current_cpu == "x64") || (is_linux && current_cpu == "x86") || (is_win)) { - ffmpeg_yasm_sources += [ -- "libavcodec/x86/aacpsdsp.asm", - "libavcodec/x86/dct32.asm", - "libavcodec/x86/imdct36.asm", - "libavcodec/x86/sbrdsp.asm", - ] - } - -+if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "ChromeOS") || (is_win && ffmpeg_branding == "Chrome")) { -+ ffmpeg_yasm_sources += [ -+ "libavcodec/x86/aacpsdsp.asm", -+ ] -+} -+ - if ((is_linux && current_cpu == "arm" && arm_use_neon) || (is_linux && current_cpu == "arm")) { - ffmpeg_c_sources += [ - "libavcodec/arm/h264pred_init_arm.c", -diff -up chromium-59.0.3071.86/third_party/ffmpeg/libavcodec/sbrdsp.c.mp3 chromium-59.0.3071.86/third_party/ffmpeg/libavcodec/sbrdsp.c ---- chromium-59.0.3071.86/third_party/ffmpeg/libavcodec/sbrdsp.c.mp3 2017-06-08 11:40:41.000000000 -0400 -+++ chromium-59.0.3071.86/third_party/ffmpeg/libavcodec/sbrdsp.c 2017-06-15 12:37:05.163650012 -0400 -@@ -23,6 +23,7 @@ - #define USE_FIXED 0 - - #include "aac.h" -+#include "aacsbrdata.h" - #include "config.h" - #include "libavutil/attributes.h" - #include "libavutil/intfloat.h" -diff -up chromium-59.0.3071.86/third_party/webrtc/examples/objc/AppRTCMobile/ios/resources/mozart.mp3 chromium-59.0.3071.86/third_party/webrtc/examples/objc/AppRTCMobile/ios/resources/mozart -diff -up chromium-59.0.3071.86/tools/android/audio_focus_grabber/java/res/raw/ping.mp3 chromium-59.0.3071.86/tools/android/audio_focus_grabber/java/res/raw/ping diff --git a/chromium-59.0.3071.86-gcc7.patch b/chromium-59.0.3071.86-gcc7.patch deleted file mode 100644 index 7c1c30b..0000000 --- a/chromium-59.0.3071.86-gcc7.patch +++ /dev/null @@ -1,81 +0,0 @@ -diff -up chromium-59.0.3071.86/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 chromium-59.0.3071.86/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h ---- chromium-59.0.3071.86/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 2017-06-07 16:30:12.351173420 -0400 -+++ chromium-59.0.3071.86/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h 2017-06-07 16:32:43.005163948 -0400 -@@ -5,6 +5,7 @@ - #include "platform/PlatformExport.h" - #include "platform/wtf/ThreadSpecific.h" - -+#include - #include - - namespace gpu { -diff -up chromium-59.0.3071.86/v8/src/objects-body-descriptors.h.gcc7 chromium-59.0.3071.86/v8/src/objects-body-descriptors.h ---- chromium-59.0.3071.86/v8/src/objects-body-descriptors.h.gcc7 2017-06-05 15:04:29.000000000 -0400 -+++ chromium-59.0.3071.86/v8/src/objects-body-descriptors.h 2017-06-07 16:30:12.352173401 -0400 -@@ -99,7 +99,7 @@ class FixedBodyDescriptor final : public - - template - static inline void IterateBody(HeapObject* obj, int object_size) { -- IterateBody(obj); -+ IterateBody(obj); - } - }; - -diff -up chromium-59.0.3071.86/v8/src/objects/hash-table.h.gcc7 chromium-59.0.3071.86/v8/src/objects/hash-table.h ---- chromium-59.0.3071.86/v8/src/objects/hash-table.h.gcc7 2017-06-07 16:35:26.052900374 -0400 -+++ chromium-59.0.3071.86/v8/src/objects/hash-table.h 2017-06-07 16:35:53.982340480 -0400 -@@ -135,22 +135,8 @@ class HashTable : public HashTableBase { - public: - typedef Shape ShapeT; - -- // Wrapper methods -- inline uint32_t Hash(Key key) { -- if (Shape::UsesSeed) { -- return Shape::SeededHash(key, GetHeap()->HashSeed()); -- } else { -- return Shape::Hash(key); -- } -- } -- -- inline uint32_t HashForObject(Key key, Object* object) { -- if (Shape::UsesSeed) { -- return Shape::SeededHashForObject(key, GetHeap()->HashSeed(), object); -- } else { -- return Shape::HashForObject(key, object); -- } -- } -+ inline uint32_t Hash(Key key); -+ inline uint32_t HashForObject(Key key, Object* object); - - // Returns a new HashTable object. - MUST_USE_RESULT static Handle New( -diff -up chromium-59.0.3071.86/v8/src/objects.h.gcc7 chromium-59.0.3071.86/v8/src/objects.h -diff -up chromium-59.0.3071.86/v8/src/objects-inl.h.gcc7 chromium-59.0.3071.86/v8/src/objects-inl.h ---- chromium-59.0.3071.86/v8/src/objects-inl.h.gcc7 2017-06-05 15:04:29.000000000 -0400 -+++ chromium-59.0.3071.86/v8/src/objects-inl.h 2017-06-07 16:30:12.477171021 -0400 -@@ -46,6 +46,25 @@ - namespace v8 { - namespace internal { - -+template -+uint32_t HashTable::Hash(Key key) { -+ if (Shape::UsesSeed) { -+ return Shape::SeededHash(key, GetHeap()->HashSeed()); -+ } else { -+ return Shape::Hash(key); -+ } -+} -+ -+template -+uint32_t HashTable::HashForObject(Key key, -+ Object* object) { -+ if (Shape::UsesSeed) { -+ return Shape::SeededHashForObject(key, GetHeap()->HashSeed(), object); -+ } else { -+ return Shape::HashForObject(key, object); -+ } -+} -+ - PropertyDetails::PropertyDetails(Smi* smi) { - value_ = smi->value(); - } diff --git a/chromium-59.0.3071.86-setopaque.patch b/chromium-59.0.3071.86-setopaque.patch deleted file mode 100644 index 10d668f..0000000 --- a/chromium-59.0.3071.86-setopaque.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-59.0.3071.86/cc/blink/web_layer_impl.h.setopaque chromium-59.0.3071.86/cc/blink/web_layer_impl.h ---- chromium-59.0.3071.86/cc/blink/web_layer_impl.h.setopaque 2017-06-07 15:48:52.240620197 -0400 -+++ chromium-59.0.3071.86/cc/blink/web_layer_impl.h 2017-06-07 16:25:48.311448200 -0400 -@@ -69,7 +69,7 @@ class CC_BLINK_EXPORT WebLayerImpl : pub - blink::WebBlendMode BlendMode() const override; - void SetIsRootForIsolatedGroup(bool root) override; - bool IsRootForIsolatedGroup() override; -- void SetOpaque(bool opaque) override; -+ CC_BLINK_EXPORT void SetOpaque(bool opaque) override; - bool Opaque() const override; - void SetPosition(const blink::WebFloatPoint& position) override; - blink::WebFloatPoint GetPosition() const override; diff --git a/chromium-60.0.3112.101-camfix.patch b/chromium-60.0.3112.101-camfix.patch deleted file mode 100644 index 0dd59d4..0000000 --- a/chromium-60.0.3112.101-camfix.patch +++ /dev/null @@ -1,25 +0,0 @@ -diff -up chromium-60.0.3112.101/content/browser/renderer_host/media/media_devices_dispatcher_host.cc.camfix chromium-60.0.3112.101/content/browser/renderer_host/media/media_devices_dispatcher_host.cc ---- chromium-60.0.3112.101/content/browser/renderer_host/media/media_devices_dispatcher_host.cc.camfix 2017-08-16 17:02:07.177832503 -0400 -+++ chromium-60.0.3112.101/content/browser/renderer_host/media/media_devices_dispatcher_host.cc 2017-08-16 17:02:56.378883520 -0400 -@@ -6,6 +6,7 @@ - - #include - -+#include - #include - #include - -@@ -454,6 +455,13 @@ media::VideoCaptureFormats MediaDevicesD - - media_stream_manager_->video_capture_manager()->GetDeviceSupportedFormats( - device_id, &formats); -+ // Remove formats that have zero resolution. -+ formats.erase(std::remove_if(formats.begin(), formats.end(), -+ [](const media::VideoCaptureFormat& format) { -+ return format.frame_size.GetArea() <= 0; -+ }), -+ formats.end()); -+ - return formats; - } - diff --git a/chromium-60.0.3112.101-fix-ffmpeg-aarch64.patch b/chromium-60.0.3112.101-fix-ffmpeg-aarch64.patch deleted file mode 100644 index a39e044..0000000 --- a/chromium-60.0.3112.101-fix-ffmpeg-aarch64.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-60.0.3112.101/third_party/ffmpeg/ffmpeg_generated.gni.aarch64 chromium-60.0.3112.101/third_party/ffmpeg/ffmpeg_generated.gni ---- chromium-60.0.3112.101/third_party/ffmpeg/ffmpeg_generated.gni.aarch64 2017-08-23 14:46:37.305832399 -0400 -+++ chromium-60.0.3112.101/third_party/ffmpeg/ffmpeg_generated.gni 2017-08-23 14:47:06.217148864 -0400 -@@ -539,7 +539,7 @@ if (is_linux && current_cpu == "arm64") - ] - } - --if ((is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS")) { -+if ((is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "arm64" && ffmpeg_branding == "Chromium")) { - ffmpeg_c_sources += [ - "libavcodec/aarch64/mpegaudiodsp_init.c", - ] diff --git a/chromium-60.0.3112.78-enable-mp3.patch b/chromium-60.0.3112.78-enable-mp3.patch deleted file mode 100644 index 3dfdab2..0000000 --- a/chromium-60.0.3112.78-enable-mp3.patch +++ /dev/null @@ -1,479 +0,0 @@ -diff -up chromium-60.0.3112.78/components/neterror/resources/sounds/button-press.mp3 chromium-60.0.3112.78/components/neterror/resources/sounds/button-press -diff -up chromium-60.0.3112.78/components/neterror/resources/sounds/hit.mp3 chromium-60.0.3112.78/components/neterror/resources/sounds/hit -diff -up chromium-60.0.3112.78/components/neterror/resources/sounds/score-reached.mp3 chromium-60.0.3112.78/components/neterror/resources/sounds/score-reached -diff -up chromium-60.0.3112.78/media/base/mime_util_internal.cc.mp3 chromium-60.0.3112.78/media/base/mime_util_internal.cc ---- chromium-60.0.3112.78/media/base/mime_util_internal.cc.mp3 2017-07-25 15:04:57.000000000 -0400 -+++ chromium-60.0.3112.78/media/base/mime_util_internal.cc 2017-07-31 10:57:55.054231795 -0400 -@@ -278,10 +278,10 @@ void MimeUtil::AddSupportedMediaFormats( - CodecSet webm_codecs(webm_audio_codecs); - webm_codecs.insert(webm_video_codecs.begin(), webm_video_codecs.end()); - --#if BUILDFLAG(USE_PROPRIETARY_CODECS) - CodecSet mp3_codecs; - mp3_codecs.insert(MP3); - -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - CodecSet aac; - aac.insert(MPEG2_AAC); - aac.insert(MPEG4_AAC); -@@ -325,10 +325,10 @@ void MimeUtil::AddSupportedMediaFormats( - AddContainerWithCodecs("application/ogg", ogg_codecs, false); - AddContainerWithCodecs("audio/flac", implicit_codec, false); - --#if BUILDFLAG(USE_PROPRIETARY_CODECS) - AddContainerWithCodecs("audio/mpeg", mp3_codecs, true); // Allow "mp3". - AddContainerWithCodecs("audio/mp3", implicit_codec, true); - AddContainerWithCodecs("audio/x-mp3", implicit_codec, true); -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - AddContainerWithCodecs("audio/aac", implicit_codec, true); // AAC / ADTS. - AddContainerWithCodecs("audio/mp4", mp4_audio_codecs, true); - DCHECK(!mp4_video_codecs.empty()); -@@ -928,7 +928,6 @@ bool MimeUtil::IsCodecProprietary(Codec - case INVALID_CODEC: - case AC3: - case EAC3: -- case MP3: - case MPEG2_AAC: - case MPEG4_AAC: - case H264: -@@ -936,6 +935,7 @@ bool MimeUtil::IsCodecProprietary(Codec - case DOLBY_VISION: - return true; - -+ case MP3: - case PCM: - case VORBIS: - case OPUS: -diff -up chromium-60.0.3112.78/media/BUILD.gn.mp3 chromium-60.0.3112.78/media/BUILD.gn -diff -up chromium-60.0.3112.78/media/formats/BUILD.gn.mp3 chromium-60.0.3112.78/media/formats/BUILD.gn ---- chromium-60.0.3112.78/media/formats/BUILD.gn.mp3 2017-07-31 11:00:08.486638957 -0400 -+++ chromium-60.0.3112.78/media/formats/BUILD.gn 2017-07-31 11:01:17.867290730 -0400 -@@ -12,6 +12,14 @@ source_set("formats") { - "ac3/ac3_util.h", - "common/offset_byte_queue.cc", - "common/offset_byte_queue.h", -+ "mpeg/adts_constants.cc", -+ "mpeg/adts_constants.h", -+ "mpeg/adts_stream_parser.cc", -+ "mpeg/adts_stream_parser.h", -+ "mpeg/mpeg1_audio_stream_parser.cc", -+ "mpeg/mpeg1_audio_stream_parser.h", -+ "mpeg/mpeg_audio_stream_parser_base.cc", -+ "mpeg/mpeg_audio_stream_parser_base.h", - "webm/webm_audio_client.cc", - "webm/webm_audio_client.h", - "webm/webm_cluster_parser.cc", -@@ -76,14 +84,6 @@ source_set("formats") { - "mp4/sample_to_group_iterator.h", - "mp4/track_run_iterator.cc", - "mp4/track_run_iterator.h", -- "mpeg/adts_constants.cc", -- "mpeg/adts_constants.h", -- "mpeg/adts_stream_parser.cc", -- "mpeg/adts_stream_parser.h", -- "mpeg/mpeg1_audio_stream_parser.cc", -- "mpeg/mpeg1_audio_stream_parser.h", -- "mpeg/mpeg_audio_stream_parser_base.cc", -- "mpeg/mpeg_audio_stream_parser_base.h", - ] - } - -diff -up chromium-60.0.3112.78/third_party/catapult/third_party/gsutil/gslib/tests/test_data/test.mp3 chromium-60.0.3112.78/third_party/catapult/third_party/gsutil/gslib/tests/test_data/test -diff -up chromium-60.0.3112.78/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h.mp3 chromium-60.0.3112.78/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h ---- chromium-60.0.3112.78/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h.mp3 2017-07-31 10:18:49.000000000 -0400 -+++ chromium-60.0.3112.78/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h 2017-07-31 10:57:55.056231757 -0400 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/usr/local/google/home/tguilbert/Code/chromium/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-cross-compile --cross-prefix=/usr/bin/aarch64-linux-gnu- --target-os=linux --arch=aarch64 --enable-armv8 --extra-cflags='-march=armv8-a' --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/usr/local/google/home/tguilbert/Code/chromium/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-cross-compile --cross-prefix=/usr/bin/aarch64-linux-gnu- --target-os=linux --arch=aarch64 --enable-armv8 --extra-cflags='-march=armv8-a' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -550,7 +550,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -617,8 +617,8 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -957,7 +957,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1263,7 +1263,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2196,7 +2196,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-60.0.3112.78/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h.mp3 chromium-60.0.3112.78/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h ---- chromium-60.0.3112.78/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h.mp3 2017-07-31 10:18:49.000000000 -0400 -+++ chromium-60.0.3112.78/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h 2017-07-31 10:57:55.057231738 -0400 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/tguilbert/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --disable-neon --extra-cflags='-mfpu=vfpv3-d16' --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/tguilbert/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --disable-neon --extra-cflags='-mfpu=vfpv3-d16' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -550,7 +550,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -617,8 +617,8 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -957,7 +957,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1263,7 +1263,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2196,7 +2196,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-60.0.3112.78/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h.mp3 chromium-60.0.3112.78/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h ---- chromium-60.0.3112.78/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h.mp3 2017-07-31 10:18:49.000000000 -0400 -+++ chromium-60.0.3112.78/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h 2017-07-31 10:57:55.106230806 -0400 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/tguilbert/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --enable-neon --extra-cflags='-mfpu=neon' --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/tguilbert/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --enable-neon --extra-cflags='-mfpu=neon' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -550,7 +550,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -617,8 +617,8 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -957,7 +957,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1263,7 +1263,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2196,7 +2196,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-60.0.3112.78/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h.mp3 chromium-60.0.3112.78/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h ---- chromium-60.0.3112.78/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h.mp3 2017-07-31 10:18:49.000000000 -0400 -+++ chromium-60.0.3112.78/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h 2017-07-31 10:57:55.107230787 -0400 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/usr/local/google/home/tguilbert/Code/chromium/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=i686 --extra-cflags='\"-m32\"' --extra-ldflags='\"-m32\"' --enable-yasm --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/usr/local/google/home/tguilbert/Code/chromium/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=i686 --extra-cflags='\"-m32\"' --extra-ldflags='\"-m32\"' --enable-yasm --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -550,7 +550,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -617,8 +617,8 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -957,7 +957,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1263,7 +1263,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2196,7 +2196,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-60.0.3112.78/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h.mp3 chromium-60.0.3112.78/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h ---- chromium-60.0.3112.78/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h.mp3 2017-07-31 10:18:49.000000000 -0400 -+++ chromium-60.0.3112.78/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h 2017-07-31 10:57:55.108230768 -0400 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/usr/local/google/home/tguilbert/Code/chromium/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-pic --enable-lto" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/usr/local/google/home/tguilbert/Code/chromium/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-pic --enable-lto --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -550,7 +550,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -617,8 +617,8 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -957,7 +957,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1263,7 +1263,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2196,7 +2196,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-60.0.3112.78/third_party/ffmpeg/ffmpeg_generated.gni.mp3 chromium-60.0.3112.78/third_party/ffmpeg/ffmpeg_generated.gni ---- chromium-60.0.3112.78/third_party/ffmpeg/ffmpeg_generated.gni.mp3 2017-07-31 10:18:46.000000000 -0400 -+++ chromium-60.0.3112.78/third_party/ffmpeg/ffmpeg_generated.gni 2017-07-31 10:57:55.109230749 -0400 -@@ -177,19 +177,12 @@ if ((is_linux && current_cpu == "arm" && - ] - } - --if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mips64el" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "arm" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "mipsel" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "ChromeOS") || (is_win && ffmpeg_branding == "Chrome")) { -+if ((current_cpu == "x64") || (is_android && current_cpu == "arm" && arm_use_neon) || (is_android && current_cpu == "arm64") || (is_android && current_cpu == "mips64el") || (is_android && current_cpu == "mipsel") || (is_android && current_cpu == "x86") || (is_linux && current_cpu == "arm" && arm_use_neon) || (is_linux && current_cpu == "arm" && arm_use_neon) || (is_linux && current_cpu == "arm") || (is_linux && current_cpu == "arm64") || (is_linux && current_cpu == "mipsel") || (is_linux && current_cpu == "x64") || (is_linux && current_cpu == "x86") || (is_win)) -+{ - ffmpeg_c_sources += [ -- "libavcodec/aac_ac3_parser.c", -- "libavcodec/aac_parser.c", -- "libavcodec/aacadtsdec.c", -- "libavcodec/aacps_float.c", -- "libavcodec/aacpsdsp_float.c", -- "libavcodec/aacsbr.c", -- "libavcodec/aactab.c", -- "libavcodec/ac3tab.c", -- "libavcodec/autorename_libavcodec_aacdec.c", - "libavcodec/autorename_libavcodec_mpegaudiodsp.c", - "libavcodec/autorename_libavcodec_sbrdsp.c", -+ "libavcodec/ac3tab.c", - "libavcodec/cbrt_data.c", - "libavcodec/dct.c", - "libavcodec/dct32_fixed.c", -@@ -205,7 +198,6 @@ if ((current_cpu == "x64" && ffmpeg_bran - "libavcodec/mpegaudiodsp_float.c", - "libavcodec/sinewin.c", - "libavcodec/sinewin_fixed.c", -- "libavformat/aacdec.c", - "libavformat/apetag.c", - "libavformat/img2.c", - "libavformat/mov.c", -@@ -214,6 +206,21 @@ if ((current_cpu == "x64" && ffmpeg_bran - ] - } - -+if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mips64el" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "arm" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "mipsel" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "ChromeOS") || (is_win && ffmpeg_branding == "Chrome")) -+{ -+ ffmpeg_c_sources += [ -+ "libavcodec/aac_ac3_parser.c", -+ "libavcodec/aac_parser.c", -+ "libavcodec/aacadtsdec.c", -+ "libavcodec/aacps_float.c", -+ "libavcodec/aacpsdsp_float.c", -+ "libavcodec/aacsbr.c", -+ "libavcodec/aactab.c", -+ "libavcodec/autorename_libavcodec_aacdec.c", -+ "libavformat/aacdec.c", -+ ] -+} -+ - if ((is_android && current_cpu == "x64") || (is_android && current_cpu == "x86") || (is_linux && current_cpu == "x64") || (is_linux && current_cpu == "x86") || (is_mac) || (is_win)) { - ffmpeg_c_sources += [ - "libavcodec/x86/autorename_libavcodec_x86_vorbisdsp_init.c", -@@ -315,21 +322,31 @@ if ((is_linux && current_cpu == "x64") | - if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "ChromeOS") || (is_win && ffmpeg_branding == "Chrome")) { - ffmpeg_c_sources += [ - "libavcodec/x86/aacpsdsp_init.c", -+ ] -+} -+ -+if ((current_cpu == "x64") || (is_android && current_cpu == "x86") || (is_linux && current_cpu == "x64") || (is_linux && current_cpu == "x86") || (is_win)) { -+ ffmpeg_c_sources += [ - "libavcodec/x86/dct_init.c", - "libavcodec/x86/mpegaudiodsp.c", - "libavcodec/x86/sbrdsp_init.c", - ] - } - --if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "ChromeOS") || (is_win && ffmpeg_branding == "Chrome")) { -+if ((current_cpu == "x64") || (is_android && current_cpu == "x86") || (is_linux && current_cpu == "x64") || (is_linux && current_cpu == "x86") || (is_win)) { - ffmpeg_yasm_sources += [ -- "libavcodec/x86/aacpsdsp.asm", - "libavcodec/x86/dct32.asm", - "libavcodec/x86/imdct36.asm", - "libavcodec/x86/sbrdsp.asm", - ] - } - -+if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_linux && current_cpu == "x86" && ffmpeg_branding == "ChromeOS") || (is_win && ffmpeg_branding == "Chrome")) { -+ ffmpeg_yasm_sources += [ -+ "libavcodec/x86/aacpsdsp.asm", -+ ] -+} -+ - if ((is_linux && current_cpu == "arm" && arm_use_neon) || (is_linux && current_cpu == "arm")) { - ffmpeg_c_sources += [ - "libavcodec/arm/h264pred_init_arm.c", -diff -up chromium-60.0.3112.78/third_party/ffmpeg/libavcodec/sbrdsp.c.mp3 chromium-60.0.3112.78/third_party/ffmpeg/libavcodec/sbrdsp.c ---- chromium-60.0.3112.78/third_party/ffmpeg/libavcodec/sbrdsp.c.mp3 2017-07-31 10:18:48.000000000 -0400 -+++ chromium-60.0.3112.78/third_party/ffmpeg/libavcodec/sbrdsp.c 2017-07-31 10:57:55.110230730 -0400 -@@ -23,6 +23,7 @@ - #define USE_FIXED 0 - - #include "aac.h" -+#include "aacsbrdata.h" - #include "config.h" - #include "libavutil/attributes.h" - #include "libavutil/intfloat.h" -diff -up chromium-60.0.3112.78/third_party/webrtc/examples/objc/AppRTCMobile/ios/resources/mozart.mp3 chromium-60.0.3112.78/third_party/webrtc/examples/objc/AppRTCMobile/ios/resources/mozart -diff -up chromium-60.0.3112.78/tools/android/audio_focus_grabber/java/res/raw/ping.mp3 chromium-60.0.3112.78/tools/android/audio_focus_grabber/java/res/raw/ping diff --git a/chromium-60.0.3112.78-fix-gn-bootstrap.patch b/chromium-60.0.3112.78-fix-gn-bootstrap.patch deleted file mode 100644 index b67d18f..0000000 --- a/chromium-60.0.3112.78-fix-gn-bootstrap.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-60.0.3112.78/tools/gn/bootstrap/bootstrap.py.fixme chromium-60.0.3112.78/tools/gn/bootstrap/bootstrap.py ---- chromium-60.0.3112.78/tools/gn/bootstrap/bootstrap.py.fixme 2017-07-31 11:47:11.660774702 -0400 -+++ chromium-60.0.3112.78/tools/gn/bootstrap/bootstrap.py 2017-07-31 11:47:32.859362600 -0400 -@@ -487,6 +487,7 @@ def write_gn_ninja(path, root_gen_dir, o - 'base/sys_info.cc', - 'base/task_runner.cc', - 'base/task_scheduler/delayed_task_manager.cc', -+ 'base/task_scheduler/environment_config.cc', - 'base/task_scheduler/post_task.cc', - 'base/task_scheduler/priority_queue.cc', - 'base/task_scheduler/scheduler_lock_impl.cc', diff --git a/chromium-60.0.3112.78-gcc7.patch b/chromium-60.0.3112.78-gcc7.patch deleted file mode 100644 index ae8f5c8..0000000 --- a/chromium-60.0.3112.78-gcc7.patch +++ /dev/null @@ -1,80 +0,0 @@ -diff -up chromium-60.0.3112.78/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 chromium-60.0.3112.78/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h ---- chromium-60.0.3112.78/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 2017-07-25 15:05:15.000000000 -0400 -+++ chromium-60.0.3112.78/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h 2017-07-31 10:51:08.530131802 -0400 -@@ -8,6 +8,7 @@ - #include "platform/PlatformExport.h" - #include "platform/wtf/ThreadSpecific.h" - -+#include - #include - - namespace gpu { -diff -up chromium-60.0.3112.78/v8/src/objects-body-descriptors.h.gcc7 chromium-60.0.3112.78/v8/src/objects-body-descriptors.h ---- chromium-60.0.3112.78/v8/src/objects-body-descriptors.h.gcc7 2017-07-31 10:51:08.531131782 -0400 -+++ chromium-60.0.3112.78/v8/src/objects-body-descriptors.h 2017-07-31 10:55:08.989458924 -0400 -@@ -99,7 +99,7 @@ class FixedBodyDescriptor final : public - - template - static inline void IterateBody(HeapObject* obj, int object_size) { -- IterateBody(obj); -+ IterateBody(obj); - } - - static inline int SizeOf(Map* map, HeapObject* object) { return kSize; } -diff -up chromium-60.0.3112.78/v8/src/objects/hash-table.h.gcc7 chromium-60.0.3112.78/v8/src/objects/hash-table.h ---- chromium-60.0.3112.78/v8/src/objects/hash-table.h.gcc7 2017-07-25 15:06:36.000000000 -0400 -+++ chromium-60.0.3112.78/v8/src/objects/hash-table.h 2017-07-31 10:51:08.531131782 -0400 -@@ -138,22 +138,8 @@ class HashTable : public HashTableBase { - public: - typedef Shape ShapeT; - -- // Wrapper methods -- inline uint32_t Hash(Key key) { -- if (Shape::UsesSeed) { -- return Shape::SeededHash(key, GetHeap()->HashSeed()); -- } else { -- return Shape::Hash(key); -- } -- } -- -- inline uint32_t HashForObject(Key key, Object* object) { -- if (Shape::UsesSeed) { -- return Shape::SeededHashForObject(key, GetHeap()->HashSeed(), object); -- } else { -- return Shape::HashForObject(key, object); -- } -- } -+ inline uint32_t Hash(Key key); -+ inline uint32_t HashForObject(Key key, Object* object); - - // Returns a new HashTable object. - MUST_USE_RESULT static Handle New( -diff -up chromium-60.0.3112.78/v8/src/objects-inl.h.gcc7 chromium-60.0.3112.78/v8/src/objects-inl.h ---- chromium-60.0.3112.78/v8/src/objects-inl.h.gcc7 2017-07-25 15:06:36.000000000 -0400 -+++ chromium-60.0.3112.78/v8/src/objects-inl.h 2017-07-31 10:51:08.533131742 -0400 -@@ -47,6 +47,25 @@ - namespace v8 { - namespace internal { - -+template -+uint32_t HashTable::Hash(Key key) { -+ if (Shape::UsesSeed) { -+ return Shape::SeededHash(key, GetHeap()->HashSeed()); -+ } else { -+ return Shape::Hash(key); -+ } -+} -+ -+template -+uint32_t HashTable::HashForObject(Key key, -+ Object* object) { -+ if (Shape::UsesSeed) { -+ return Shape::SeededHashForObject(key, GetHeap()->HashSeed(), object); -+ } else { -+ return Shape::HashForObject(key, object); -+ } -+} -+ - PropertyDetails::PropertyDetails(Smi* smi) { - value_ = smi->value(); - } diff --git a/chromium-60.0.3112.78-gtk2fix.patch b/chromium-60.0.3112.78-gtk2fix.patch deleted file mode 100644 index ecf042d..0000000 --- a/chromium-60.0.3112.78-gtk2fix.patch +++ /dev/null @@ -1,612 +0,0 @@ -diff -up chromium-60.0.3112.78/chrome/browser/ui/libgtkui/gtk_ui.cc.gtk2fix chromium-60.0.3112.78/chrome/browser/ui/libgtkui/gtk_ui.cc ---- chromium-60.0.3112.78/chrome/browser/ui/libgtkui/gtk_ui.cc.gtk2fix 2017-08-03 10:26:36.816787227 -0400 -+++ chromium-60.0.3112.78/chrome/browser/ui/libgtkui/gtk_ui.cc 2017-08-03 10:56:53.345661368 -0400 -@@ -60,6 +60,7 @@ - #include "ui/views/controls/button/blue_button.h" - #include "ui/views/controls/button/label_button.h" - #include "ui/views/controls/button/label_button_border.h" -+#include "ui/views/linux_ui/device_scale_factor_observer.h" - #include "ui/views/linux_ui/window_button_order_observer.h" - #include "ui/views/resources/grit/views_resources.h" - -@@ -315,17 +316,6 @@ gfx::FontRenderParams GetGtkFontRenderPa - return params; - } - --float GetRawDeviceScaleFactor() { -- if (display::Display::HasForceDeviceScaleFactor()) -- return display::Display::GetForcedDeviceScaleFactor(); -- -- GdkScreen* screen = gdk_screen_get_default(); -- gint scale = gdk_screen_get_monitor_scale_factor( -- screen, gdk_screen_get_primary_monitor(screen)); -- gdouble resolution = gdk_screen_get_resolution(screen); -- return resolution <= 0 ? scale : resolution * scale / kDefaultDPI; --} -- - views::LinuxUI::NonClientMiddleClickAction GetDefaultMiddleClickAction() { - std::unique_ptr env(base::Environment::Create()); - switch (base::nix::GetDesktopEnvironment(env.get())) { -@@ -414,19 +404,17 @@ GtkUi::GtkUi() : middle_click_action_(Ge - #if GTK_MAJOR_VERSION == 2 - native_theme_ = NativeThemeGtk2::instance(); - fake_window_ = chrome_gtk_frame_new(); -- gtk_widget_realize(fake_window_); // Is this necessary? - #elif GTK_MAJOR_VERSION == 3 - native_theme_ = NativeThemeGtk3::instance(); -- (void)fake_window_; // Silence the unused warning. -+ fake_window_ = gtk_window_new(GTK_WINDOW_TOPLEVEL); - #else - #error "Unsupported GTK version" - #endif -+ gtk_widget_realize(fake_window_); - } - - GtkUi::~GtkUi() { --#if GTK_MAJOR_VERSION == 2 - gtk_widget_destroy(fake_window_); --#endif - } - - void OnThemeChanged(GObject* obj, GParamSpec* param, GtkUi* gtkui) { -@@ -440,6 +428,17 @@ void GtkUi::Initialize() { - g_signal_connect_after(settings, "notify::gtk-icon-theme-name", - G_CALLBACK(OnThemeChanged), this); - -+ GdkScreen* screen = gdk_screen_get_default(); -+ // Listen for DPI changes. -+ g_signal_connect_after(screen, "notify::resolution", -+ G_CALLBACK(OnDeviceScaleFactorMaybeChangedThunk), -+ this); -+ // Listen for scale factor changes. We would prefer to listen on -+ // |screen|, but there is no scale-factor property, so use an -+ // unmapped window instead. -+ g_signal_connect(fake_window_, "notify::scale-factor", -+ G_CALLBACK(OnDeviceScaleFactorMaybeChangedThunk), this); -+ - LoadGtkValues(); - - #if BUILDFLAG(ENABLE_BASIC_PRINTING) -@@ -701,12 +700,12 @@ void GtkUi::AddWindowButtonOrderObserver - observer->OnWindowButtonOrderingChange(leading_buttons_, trailing_buttons_); - } - -- observer_list_.AddObserver(observer); -+ window_button_order_observer_list_.AddObserver(observer); - } - - void GtkUi::RemoveWindowButtonOrderObserver( - views::WindowButtonOrderObserver* observer) { -- observer_list_.RemoveObserver(observer); -+ window_button_order_observer_list_.RemoveObserver(observer); - } - - void GtkUi::SetWindowButtonOrdering( -@@ -715,8 +714,10 @@ void GtkUi::SetWindowButtonOrdering( - leading_buttons_ = leading_buttons; - trailing_buttons_ = trailing_buttons; - -- for (views::WindowButtonOrderObserver& observer : observer_list_) -+ for (views::WindowButtonOrderObserver& observer : -+ window_button_order_observer_list_) { - observer.OnWindowButtonOrderingChange(leading_buttons_, trailing_buttons_); -+ } - } - - void GtkUi::SetNonClientMiddleClickAction(NonClientMiddleClickAction action) { -@@ -768,6 +769,16 @@ void GtkUi::NotifyWindowManagerStartupCo - gdk_notify_startup_complete(); - } - -+void GtkUi::AddDeviceScaleFactorObserver( -+ views::DeviceScaleFactorObserver* observer) { -+ device_scale_factor_observer_list_.AddObserver(observer); -+} -+ -+void GtkUi::RemoveDeviceScaleFactorObserver( -+ views::DeviceScaleFactorObserver* observer) { -+ device_scale_factor_observer_list_.RemoveObserver(observer); -+} -+ - bool GtkUi::MatchEvent(const ui::Event& event, - std::vector* commands) { - // Ensure that we have a keyboard handler. -@@ -777,6 +788,10 @@ bool GtkUi::MatchEvent(const ui::Event& - return key_bindings_handler_->MatchEvent(event, commands); - } - -+void GtkUi::OnDeviceScaleFactorMaybeChanged(void*, GParamSpec*) { -+ UpdateDeviceScaleFactor(); -+} -+ - void GtkUi::SetScrollbarColors() { - thumb_active_color_ = SkColorSetRGB(244, 244, 244); - thumb_inactive_color_ = SkColorSetRGB(234, 234, 234); -@@ -1037,14 +1052,38 @@ void GtkUi::ResetStyle() { - native_theme_->NotifyObservers(); - } - --void GtkUi::UpdateDeviceScaleFactor() { -- // Note: Linux chrome currently does not support dynamic DPI -- // changes. This is to allow flags to override the DPI settings -- // during startup. -- float scale = GetRawDeviceScaleFactor(); -+float GtkUi::GetRawDeviceScaleFactor() { -+ if (display::Display::HasForceDeviceScaleFactor()) -+ return display::Display::GetForcedDeviceScaleFactor(); -+ -+#if GTK_MAJOR_VERSION == 2 -+ GtkSettings* gtk_settings = gtk_settings_get_default(); -+ gint gtk_dpi = -1; -+ g_object_get(gtk_settings, "gtk-xft-dpi", >k_dpi, nullptr); -+ const float scale_factor = gtk_dpi / (1024 * kDefaultDPI); -+#else -+ GdkScreen* screen = gdk_screen_get_default(); -+ gint scale = gtk_widget_get_scale_factor(fake_window_); -+ DCHECK_GT(scale, 0); -+ gdouble resolution = gdk_screen_get_resolution(screen); -+ const float scale_factor = -+ resolution <= 0 ? scale : resolution * scale / kDefaultDPI; -+#endif -+ - // Blacklist scaling factors <120% (crbug.com/484400) and round - // to 1 decimal to prevent rendering problems (crbug.com/485183). -- device_scale_factor_ = scale < 1.2f ? 1.0f : roundf(scale * 10) / 10; -+ return scale_factor < 1.2f ? 1.0f : roundf(scale_factor * 10) / 10; -+} -+ -+void GtkUi::UpdateDeviceScaleFactor() { -+ float old_device_scale_factor = device_scale_factor_; -+ device_scale_factor_ = GetRawDeviceScaleFactor(); -+ if (device_scale_factor_ != old_device_scale_factor) { -+ for (views::DeviceScaleFactorObserver& observer : -+ device_scale_factor_observer_list_) { -+ observer.OnDeviceScaleFactorChanged(); -+ } -+ } - UpdateDefaultFont(); - } - -diff -up chromium-60.0.3112.78/chrome/browser/ui/libgtkui/gtk_ui.h.gtk2fix chromium-60.0.3112.78/chrome/browser/ui/libgtkui/gtk_ui.h ---- chromium-60.0.3112.78/chrome/browser/ui/libgtkui/gtk_ui.h.gtk2fix 2017-08-03 10:35:28.031517634 -0400 -+++ chromium-60.0.3112.78/chrome/browser/ui/libgtkui/gtk_ui.h 2017-08-03 10:37:29.300173415 -0400 -@@ -18,12 +18,14 @@ - #include "ui/views/linux_ui/linux_ui.h" - #include "ui/views/window/frame_buttons.h" - -+typedef struct _GParamSpec GParamSpec; - typedef struct _GtkStyle GtkStyle; - typedef struct _GtkWidget GtkWidget; - - namespace libgtkui { - class Gtk2KeyBindingsHandler; - class GConfListener; -+class DeviceScaleFactorObserver; - - // Interface to GTK2 desktop features. - // -@@ -97,6 +99,10 @@ class GtkUi : public views::LinuxUI { - bool UnityIsRunning() override; - NonClientMiddleClickAction GetNonClientMiddleClickAction() override; - void NotifyWindowManagerStartupComplete() override; -+ void AddDeviceScaleFactorObserver( -+ views::DeviceScaleFactorObserver* observer) override; -+ void RemoveDeviceScaleFactorObserver( -+ views::DeviceScaleFactorObserver* observer) override; - - // ui::TextEditKeybindingDelegate: - bool MatchEvent(const ui::Event& event, -@@ -110,6 +116,12 @@ class GtkUi : public views::LinuxUI { - typedef std::map ColorMap; - typedef std::map TintMap; - -+ CHROMEG_CALLBACK_1(GtkUi, -+ void, -+ OnDeviceScaleFactorMaybeChanged, -+ void*, -+ GParamSpec*); -+ - // This method returns the colors webkit will use for the scrollbars. When no - // colors are specified by the GTK+ theme, this function averages of the - // thumb part and of the track colors. -@@ -129,9 +141,12 @@ class GtkUi : public views::LinuxUI { - bool GetChromeStyleColor(const char* sytle_property, - SkColor* ret_color) const; - -+ float GetRawDeviceScaleFactor(); -+ - ui::NativeTheme* native_theme_; - -- // A GtkWindow object with the class "ChromeGtkFrame". -+ // On Gtk2, A GtkWindow object with the class "ChromeGtkFrame". On -+ // Gtk3, a regular GtkWindow. - GtkWidget* fake_window_; - - // Colors calculated by LoadGtkValues() that are given to the -@@ -171,7 +186,12 @@ class GtkUi : public views::LinuxUI { - std::unique_ptr key_bindings_handler_; - - // Objects to notify when the window frame button order changes. -- base::ObserverList observer_list_; -+ base::ObserverList -+ window_button_order_observer_list_; -+ -+ // Objects to notify when the device scale factor changes. -+ base::ObserverList -+ device_scale_factor_observer_list_; - - // Whether we should lower the window on a middle click to the non client - // area. -diff -up chromium-60.0.3112.78/ui/views/linux_ui/device_scale_factor_observer.h.gtk2fix chromium-60.0.3112.78/ui/views/linux_ui/device_scale_factor_observer.h ---- chromium-60.0.3112.78/ui/views/linux_ui/device_scale_factor_observer.h.gtk2fix 2017-08-03 10:39:23.600963296 -0400 -+++ chromium-60.0.3112.78/ui/views/linux_ui/device_scale_factor_observer.h 2017-08-03 10:39:39.024664885 -0400 -@@ -0,0 +1,19 @@ -+// 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. -+ -+#ifndef UI_VIEWS_LINUX_UI_DEVICE_SCALE_FACTOR_OBSERVER_H_ -+#define UI_VIEWS_LINUX_UI_DEVICE_SCALE_FACTOR_OBSERVER_H_ -+ -+namespace views { -+ -+class DeviceScaleFactorObserver { -+ public: -+ virtual ~DeviceScaleFactorObserver() {} -+ -+ virtual void OnDeviceScaleFactorChanged() = 0; -+}; -+ -+} // namespace views -+ -+#endif // UI_VIEWS_LINUX_UI_DEVICE_SCALE_FACTOR_OBSERVER_H_ -diff -up chromium-60.0.3112.78/ui/views/linux_ui/linux_ui.h.gtk2fix chromium-60.0.3112.78/ui/views/linux_ui/linux_ui.h ---- chromium-60.0.3112.78/ui/views/linux_ui/linux_ui.h.gtk2fix 2017-08-03 10:39:48.866474799 -0400 -+++ chromium-60.0.3112.78/ui/views/linux_ui/linux_ui.h 2017-08-03 10:41:05.598991893 -0400 -@@ -38,6 +38,7 @@ class NativeTheme; - - namespace views { - class Border; -+class DeviceScaleFactorObserver; - class LabelButton; - class LabelButtonBorder; - class WindowButtonOrderObserver; -@@ -157,6 +158,16 @@ class VIEWS_EXPORT LinuxUI : public ui:: - - // Determines the device scale factor of the primary screen. - virtual float GetDeviceScaleFactor() const = 0; -+ -+ // Registers |observer| to be notified about changes to the device -+ // scale factor. -+ virtual void AddDeviceScaleFactorObserver( -+ DeviceScaleFactorObserver* observer) = 0; -+ -+ // Unregisters |observer| from receiving changes to the device scale -+ // factor. -+ virtual void RemoveDeviceScaleFactorObserver( -+ DeviceScaleFactorObserver* observer) = 0; - }; - - } // namespace views -diff -up chromium-60.0.3112.78/ui/views/test/desktop_screen_x11_test_api.cc.gtk2fix chromium-60.0.3112.78/ui/views/test/desktop_screen_x11_test_api.cc ---- chromium-60.0.3112.78/ui/views/test/desktop_screen_x11_test_api.cc.gtk2fix 2017-08-03 10:41:28.014558483 -0400 -+++ chromium-60.0.3112.78/ui/views/test/desktop_screen_x11_test_api.cc 2017-08-03 10:41:49.326146074 -0400 -@@ -13,7 +13,7 @@ namespace test { - void DesktopScreenX11TestApi::UpdateDisplays() { - DesktopScreenX11* screen = - static_cast(display::Screen::GetScreen()); -- screen->ConfigureTimerFired(); -+ screen->UpdateDisplays(); - } - - } // namespace test -diff -up chromium-60.0.3112.78/ui/views/widget/desktop_aura/desktop_screen_x11.cc.gtk2fix chromium-60.0.3112.78/ui/views/widget/desktop_aura/desktop_screen_x11.cc ---- chromium-60.0.3112.78/ui/views/widget/desktop_aura/desktop_screen_x11.cc.gtk2fix 2017-08-03 10:41:59.219954866 -0400 -+++ chromium-60.0.3112.78/ui/views/widget/desktop_aura/desktop_screen_x11.cc 2017-08-03 10:47:16.589818323 -0400 -@@ -11,6 +11,7 @@ - #undef RootWindow - - #include "base/logging.h" -+#include "base/threading/thread_task_runner_handle.h" - #include "base/trace_event/trace_event.h" - #include "ui/aura/window.h" - #include "ui/aura/window_event_dispatcher.h" -@@ -40,10 +41,6 @@ const char* const kAtomsToCache[] = { - nullptr - }; - --// The delay to perform configuration after RRNotify. See the comment --// in |Dispatch()|. --const int64_t kConfigureDelayMs = 500; -- - double GetDeviceScaleFactor() { - float device_scale_factor = 1.0f; - if (views::LinuxUI::instance()) { -@@ -95,7 +92,10 @@ DesktopScreenX11::DesktopScreenX11() - has_xrandr_(false), - xrandr_event_base_(0), - primary_display_index_(0), -+ weak_factory_(this), - atom_cache_(xdisplay_, kAtomsToCache) { -+ if (views::LinuxUI::instance()) -+ views::LinuxUI::instance()->AddDeviceScaleFactorObserver(this); - // We only support 1.3+. There were library changes before this and we should - // use the new interface instead of the 1.2 one. - int randr_version_major = 0; -@@ -124,6 +124,8 @@ DesktopScreenX11::DesktopScreenX11() - } - - DesktopScreenX11::~DesktopScreenX11() { -+ if (views::LinuxUI::instance()) -+ views::LinuxUI::instance()->AddDeviceScaleFactorObserver(this); - if (has_xrandr_ && ui::PlatformEventSource::GetInstance()) - ui::PlatformEventSource::GetInstance()->RemovePlatformEventDispatcher(this); - } -@@ -251,18 +253,7 @@ uint32_t DesktopScreenX11::DispatchEvent - } else if (event->type - xrandr_event_base_ == RRNotify || - (event->type == PropertyNotify && - event->xproperty.atom == atom_cache_.GetAtom("_NET_WORKAREA"))) { -- // There's some sort of observer dispatch going on here, but I don't think -- // it's the screen's? -- if (configure_timer_.get() && configure_timer_->IsRunning()) { -- configure_timer_->Reset(); -- } else { -- configure_timer_.reset(new base::OneShotTimer()); -- configure_timer_->Start( -- FROM_HERE, -- base::TimeDelta::FromMilliseconds(kConfigureDelayMs), -- this, -- &DesktopScreenX11::ConfigureTimerFired); -- } -+ RestartDelayedConfigurationTask(); - } else { - NOTREACHED(); - } -@@ -270,11 +261,15 @@ uint32_t DesktopScreenX11::DispatchEvent - return ui::POST_DISPATCH_NONE; - } - -+void DesktopScreenX11::OnDeviceScaleFactorChanged() { -+ RestartDelayedConfigurationTask(); -+} -+ - // static - void DesktopScreenX11::UpdateDeviceScaleFactorForTest() { - DesktopScreenX11* screen = - static_cast(display::Screen::GetScreen()); -- screen->ConfigureTimerFired(); -+ screen->UpdateDisplays(); - } - - //////////////////////////////////////////////////////////////////////////////// -@@ -288,7 +283,11 @@ DesktopScreenX11::DesktopScreenX11( - xrandr_event_base_(0), - displays_(test_displays), - primary_display_index_(0), -- atom_cache_(xdisplay_, kAtomsToCache) {} -+ weak_factory_(this), -+ atom_cache_(xdisplay_, kAtomsToCache) { -+ if (views::LinuxUI::instance()) -+ views::LinuxUI::instance()->AddDeviceScaleFactorObserver(this); -+} - - std::vector DesktopScreenX11::BuildDisplaysFromXRandRInfo() { - std::vector displays; -@@ -390,7 +389,14 @@ std::vector DesktopScr - return displays; - } - --void DesktopScreenX11::ConfigureTimerFired() { -+void DesktopScreenX11::RestartDelayedConfigurationTask() { -+ delayed_configuration_task_.Reset(base::Bind( -+ &DesktopScreenX11::UpdateDisplays, weak_factory_.GetWeakPtr())); -+ base::ThreadTaskRunnerHandle::Get()->PostTask( -+ FROM_HERE, delayed_configuration_task_.callback()); -+} -+ -+void DesktopScreenX11::UpdateDisplays() { - std::vector old_displays = displays_; - SetDisplaysInternal(BuildDisplaysFromXRandRInfo()); - change_notifier_.NotifyDisplaysChanged(old_displays, displays_); -diff -up chromium-60.0.3112.78/ui/views/widget/desktop_aura/desktop_screen_x11.h.gtk2fix chromium-60.0.3112.78/ui/views/widget/desktop_aura/desktop_screen_x11.h ---- chromium-60.0.3112.78/ui/views/widget/desktop_aura/desktop_screen_x11.h.gtk2fix 2017-08-03 10:47:28.734583288 -0400 -+++ chromium-60.0.3112.78/ui/views/widget/desktop_aura/desktop_screen_x11.h 2017-08-03 10:49:54.850756813 -0400 -@@ -9,11 +9,12 @@ - - #include - -+#include "base/cancelable_callback.h" - #include "base/macros.h" --#include "base/timer/timer.h" - #include "ui/display/display_change_notifier.h" - #include "ui/display/screen.h" - #include "ui/events/platform/platform_event_dispatcher.h" -+#include "ui/views/linux_ui/device_scale_factor_observer.h" - #include "ui/gfx/x/x11_atom_cache.h" - #include "ui/views/views_export.h" - -@@ -30,7 +31,8 @@ class DesktopScreenX11TestApi; - - // Our singleton screen implementation that talks to xrandr. - class VIEWS_EXPORT DesktopScreenX11 : public display::Screen, -- public ui::PlatformEventDispatcher { -+ public ui::PlatformEventDispatcher, -+ public views::DeviceScaleFactorObserver { - public: - DesktopScreenX11(); - -@@ -56,6 +58,9 @@ class VIEWS_EXPORT DesktopScreenX11 : pu - bool CanDispatchEvent(const ui::PlatformEvent& event) override; - uint32_t DispatchEvent(const ui::PlatformEvent& event) override; - -+ // views::DeviceScaleFactorObserver: -+ void OnDeviceScaleFactorChanged() override; -+ - static void UpdateDeviceScaleFactorForTest(); - - private: -@@ -69,10 +74,15 @@ class VIEWS_EXPORT DesktopScreenX11 : pu - // the X server. - std::vector BuildDisplaysFromXRandRInfo(); - -- // We delay updating the display so we can coalesce events. -- void ConfigureTimerFired(); -+ // Removes |delayed_configuration_task_| from the task queue (if -+ // it's in the queue) and adds it back at the end of the queue. -+ void RestartDelayedConfigurationTask(); -+ -+ // Updates |displays_| with the latest XRandR info. -+ void UpdateDisplays(); - -- // Updates |displays_| and sets FontRenderParams's scale factor. -+ // Updates |displays_| from |displays| and sets FontRenderParams's scale -+ // factor. - void SetDisplaysInternal(const std::vector& displays); - - Display* xdisplay_; -@@ -91,12 +101,14 @@ class VIEWS_EXPORT DesktopScreenX11 : pu - // The index into displays_ that represents the primary display. - size_t primary_display_index_; - -- // The timer to delay configuring outputs. See also the comments in -- // Dispatch(). -- std::unique_ptr configure_timer_; -+ // The task to delay configuring outputs. We delay updating the -+ // display so we can coalesce events. -+ base::CancelableCallback delayed_configuration_task_; - - display::DisplayChangeNotifier change_notifier_; - -+ base::WeakPtrFactory weak_factory_; -+ - ui::X11AtomCache atom_cache_; - - DISALLOW_COPY_AND_ASSIGN(DesktopScreenX11); -diff -up chromium-60.0.3112.78/ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc.gtk2fix chromium-60.0.3112.78/ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc ---- chromium-60.0.3112.78/ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc.gtk2fix 2017-08-03 10:50:14.858370042 -0400 -+++ chromium-60.0.3112.78/ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc 2017-08-03 10:52:58.367207187 -0400 -@@ -212,13 +212,16 @@ DesktopWindowTreeHostX11::DesktopWindowT - has_pointer_focus_(false), - modal_dialog_counter_(0), - close_widget_factory_(this), -- weak_factory_(this) {} -+ weak_factory_(this) { -+ display::Screen::GetScreen()->AddObserver(this); -+} - - DesktopWindowTreeHostX11::~DesktopWindowTreeHostX11() { - window()->ClearProperty(kHostForRootWindow); - aura::client::SetWindowMoveClient(window(), NULL); - desktop_native_widget_aura_->OnDesktopWindowTreeHostDestroyed(this); - DestroyDispatcher(); -+ display::Screen::GetScreen()->RemoveObserver(this); - } - - // static -@@ -1360,6 +1363,30 @@ void DesktopWindowTreeHostX11::OnCursorV - } - - //////////////////////////////////////////////////////////////////////////////// -+// DesktopWindowTreeHostX11, display::DisplayObserver implementation: -+ -+void DesktopWindowTreeHostX11::OnDisplayAdded( -+ const display::Display& new_display) {} -+ -+void DesktopWindowTreeHostX11::OnDisplayRemoved( -+ const display::Display& old_display) {} -+ -+void DesktopWindowTreeHostX11::OnDisplayMetricsChanged( -+ const display::Display& display, -+ uint32_t changed_metrics) { -+ if ((changed_metrics & DISPLAY_METRIC_DEVICE_SCALE_FACTOR) && -+ display::Screen::GetScreen()->GetDisplayNearestWindow(window()).id() == -+ display.id()) { -+ // When the scale factor changes, also pretend that a resize -+ // occured so that the window layout will be refreshed and a -+ // compositor redraw will be scheduled. This is weird, but works. -+ // TODO(thomasanderson): Figure out a more direct way of doing -+ // this. -+ RestartDelayedResizeTask(); -+ } -+} -+ -+//////////////////////////////////////////////////////////////////////////////// - // DesktopWindowTreeHostX11, private: - - void DesktopWindowTreeHostX11::InitX11Window( -@@ -2079,13 +2106,8 @@ uint32_t DesktopWindowTreeHostX11::Dispa - if (origin_changed) - OnHostMovedInPixels(bounds_in_pixels_.origin()); - -- if (size_changed) { -- delayed_resize_task_.Reset(base::Bind( -- &DesktopWindowTreeHostX11::DelayedResize, -- close_widget_factory_.GetWeakPtr(), bounds_in_pixels.size())); -- base::ThreadTaskRunnerHandle::Get()->PostTask( -- FROM_HERE, delayed_resize_task_.callback()); -- } -+ if (size_changed) -+ RestartDelayedResizeTask(); - break; - } - case GenericEvent: { -@@ -2358,6 +2380,14 @@ void DesktopWindowTreeHostX11::EnableEve - targeter_for_modal_.reset(); - } - -+void DesktopWindowTreeHostX11::RestartDelayedResizeTask() { -+ delayed_resize_task_.Reset( -+ base::Bind(&DesktopWindowTreeHostX11::DelayedResize, -+ close_widget_factory_.GetWeakPtr(), bounds_in_pixels_.size())); -+ base::ThreadTaskRunnerHandle::Get()->PostTask( -+ FROM_HERE, delayed_resize_task_.callback()); -+} -+ - //////////////////////////////////////////////////////////////////////////////// - // DesktopWindowTreeHost, public: - -diff -up chromium-60.0.3112.78/ui/views/widget/desktop_aura/desktop_window_tree_host_x11.h.gtk2fix chromium-60.0.3112.78/ui/views/widget/desktop_aura/desktop_window_tree_host_x11.h ---- chromium-60.0.3112.78/ui/views/widget/desktop_aura/desktop_window_tree_host_x11.h.gtk2fix 2017-08-03 10:54:34.484348046 -0400 -+++ chromium-60.0.3112.78/ui/views/widget/desktop_aura/desktop_window_tree_host_x11.h 2017-08-03 10:54:43.564172318 -0400 -@@ -18,6 +18,7 @@ - #include "ui/aura/scoped_window_targeter.h" - #include "ui/aura/window_tree_host.h" - #include "ui/base/cursor/cursor_loader_x11.h" -+#include "ui/display/display_observer.h" - #include "ui/events/platform/platform_event_dispatcher.h" - #include "ui/gfx/geometry/insets.h" - #include "ui/gfx/geometry/rect.h" -@@ -45,7 +46,8 @@ class X11DesktopWindowMoveClient; - class VIEWS_EXPORT DesktopWindowTreeHostX11 - : public DesktopWindowTreeHost, - public aura::WindowTreeHost, -- public ui::PlatformEventDispatcher { -+ public ui::PlatformEventDispatcher, -+ public display::DisplayObserver { - public: - DesktopWindowTreeHostX11( - internal::NativeWidgetDelegate* native_widget_delegate, -@@ -170,6 +172,12 @@ class VIEWS_EXPORT DesktopWindowTreeHost - const gfx::Point& location_in_pixels) override; - void OnCursorVisibilityChangedNative(bool show) override; - -+ // Overridden from display::DisplayObserver: -+ void OnDisplayAdded(const display::Display& new_display) override; -+ void OnDisplayRemoved(const display::Display& old_display) override; -+ void OnDisplayMetricsChanged(const display::Display& display, -+ uint32_t changed_metrics) override; -+ - private: - friend class DesktopWindowTreeHostX11HighDPITest; - // Initializes our X11 surface to draw on. This method performs all -@@ -278,6 +286,10 @@ class VIEWS_EXPORT DesktopWindowTreeHost - // Enables event listening after closing |dialog|. - void EnableEventListening(); - -+ // Removes |delayed_resize_task_| from the task queue (if it's in -+ // the queue) and adds it back at the end of the queue. -+ void RestartDelayedResizeTask(); -+ - // X11 things - // The display and the native X window hosting the root window. - XDisplay* xdisplay_; diff --git a/chromium-60.0.3112.90-init-list-hack.patch b/chromium-60.0.3112.90-init-list-hack.patch deleted file mode 100644 index d3d52fe..0000000 --- a/chromium-60.0.3112.90-init-list-hack.patch +++ /dev/null @@ -1,27 +0,0 @@ -diff -up chromium-60.0.3112.90/third_party/WebKit/Source/core/layout/ng/ng_block_layout_algorithm.cc.tryfix chromium-60.0.3112.90/third_party/WebKit/Source/core/layout/ng/ng_block_layout_algorithm.cc ---- chromium-60.0.3112.90/third_party/WebKit/Source/core/layout/ng/ng_block_layout_algorithm.cc.tryfix 2017-08-09 14:45:17.619172987 -0400 -+++ chromium-60.0.3112.90/third_party/WebKit/Source/core/layout/ng/ng_block_layout_algorithm.cc 2017-08-11 10:24:10.635245642 -0400 -@@ -381,8 +381,9 @@ NGLogicalOffset NGBlockLayoutAlgorithm:: - } - - NGLogicalOffset child_bfc_offset = curr_bfc_offset_; -- child_bfc_offset.inline_offset += -- {border_and_padding_.inline_start + curr_child_margins_.inline_start}; -+ LayoutUnit sum_inline_starts = {border_and_padding_.inline_start + curr_child_margins_.inline_start}; -+ -+ child_bfc_offset.inline_offset += sum_inline_starts; - - // Append the current margin strut with child's block start margin. - // Non empty border/padding, and new FC use cases are handled inside of the -@@ -395,9 +396,8 @@ NGLogicalOffset NGBlockLayoutAlgorithm:: - - // Should collapse margins if our child is a legacy block. - if (IsLegacyBlock(*child)) { -- curr_bfc_offset_ += -- {border_and_padding_.inline_start + curr_child_margins_.inline_start, -- curr_margin_strut_.Sum()}; -+ LayoutUnit sum_inline_starts2 = {border_and_padding_.inline_start + curr_child_margins_.inline_start}; -+ curr_bfc_offset_ += {sum_inline_starts2, curr_margin_strut_.Sum()}; - MaybeUpdateFragmentBfcOffset(ConstraintSpace(), curr_bfc_offset_, - &container_builder_); - PositionPendingFloats(curr_bfc_offset_.block_offset, &container_builder_, diff --git a/chromium-61.0.3163.79-MOAR-GCC-FIXES.patch b/chromium-61.0.3163.79-MOAR-GCC-FIXES.patch deleted file mode 100644 index c5999de..0000000 --- a/chromium-61.0.3163.79-MOAR-GCC-FIXES.patch +++ /dev/null @@ -1,35 +0,0 @@ -diff -up chromium-61.0.3163.79/base/numerics/safe_math_clang_gcc_impl.h.fixgccagain chromium-61.0.3163.79/base/numerics/safe_math_clang_gcc_impl.h ---- chromium-61.0.3163.79/base/numerics/safe_math_clang_gcc_impl.h.fixgccagain 2017-09-06 15:48:27.560803028 -0400 -+++ chromium-61.0.3163.79/base/numerics/safe_math_clang_gcc_impl.h 2017-09-06 15:50:08.715853695 -0400 -@@ -126,6 +126,7 @@ struct ClampedAddFastOp { - } - }; - -+#if defined(__clang__) // Not supported on GCC. - // This is the fastest negation on Intel, and a decent fallback on arm. - __attribute__((always_inline)) inline int8_t ClampedNegate(uint8_t value) { - uint8_t carry; -@@ -169,6 +170,7 @@ __attribute__((always_inline)) inline in - __attribute__((always_inline)) inline int64_t ClampedNegate(int64_t value) { - return ClampedNegate(static_cast(value)); - } -+#endif - - template - struct ClampedSubFastOp { -@@ -180,6 +182,7 @@ struct ClampedSubFastOp { - return ClampedSubFastAsmOp::template Do(x, y); - } - -+#if defined(__clang__) // Not supported on GCC. - // Fast path for generic clamped negation. - if (std::is_same::value && std::is_same::value && - IsCompileTimeConstant(x) && x == 0 && !IsCompileTimeConstant(y)) { -@@ -190,6 +193,7 @@ struct ClampedSubFastOp { - IntegerBitsPlusSign::value, std::is_signed::value>::type>( - y)); - } -+#endif - - V result; - return !__builtin_sub_overflow(x, y, &result) diff --git a/chromium-61.0.3163.79-dde535-gcc-fix.patch b/chromium-61.0.3163.79-dde535-gcc-fix.patch deleted file mode 100644 index f9c3572..0000000 --- a/chromium-61.0.3163.79-dde535-gcc-fix.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -up chromium-61.0.3163.79/content/renderer/service_worker/web_service_worker_installed_scripts_manager_impl.cc.dde5e35 chromium-61.0.3163.79/content/renderer/service_worker/web_service_worker_installed_scripts_manager_impl.cc -diff -up chromium-61.0.3163.79/services/resource_coordinator/resource_coordinator_service.cc.dde5e35 chromium-61.0.3163.79/services/resource_coordinator/resource_coordinator_service.cc ---- chromium-61.0.3163.79/services/resource_coordinator/resource_coordinator_service.cc.dde5e35 2017-09-14 10:20:59.750146036 -0400 -+++ chromium-61.0.3163.79/services/resource_coordinator/resource_coordinator_service.cc 2017-09-14 10:21:35.498261516 -0400 -@@ -17,7 +17,8 @@ std::unique_ptr(); - -- return resource_coordinator_service; -+ return std::unique_ptr( -+ resource_coordinator_service.release()); - } - - ResourceCoordinatorService::ResourceCoordinatorService() diff --git a/chromium-61.0.3163.79-enable-mp3.patch b/chromium-61.0.3163.79-enable-mp3.patch deleted file mode 100644 index 375214b..0000000 --- a/chromium-61.0.3163.79-enable-mp3.patch +++ /dev/null @@ -1,473 +0,0 @@ -diff -up chromium-61.0.3163.79/components/neterror/resources/sounds/button-press.mp3 chromium-61.0.3163.79/components/neterror/resources/sounds/button-press -diff -up chromium-61.0.3163.79/components/neterror/resources/sounds/hit.mp3 chromium-61.0.3163.79/components/neterror/resources/sounds/hit -diff -up chromium-61.0.3163.79/components/neterror/resources/sounds/score-reached.mp3 chromium-61.0.3163.79/components/neterror/resources/sounds/score-reached -diff -up chromium-61.0.3163.79/media/base/mime_util_internal.cc.mp3 chromium-61.0.3163.79/media/base/mime_util_internal.cc ---- chromium-61.0.3163.79/media/base/mime_util_internal.cc.mp3 2017-09-05 15:05:21.000000000 -0400 -+++ chromium-61.0.3163.79/media/base/mime_util_internal.cc 2017-09-06 14:11:44.426683599 -0400 -@@ -278,10 +278,10 @@ void MimeUtil::AddSupportedMediaFormats( - CodecSet webm_codecs(webm_audio_codecs); - webm_codecs.insert(webm_video_codecs.begin(), webm_video_codecs.end()); - --#if BUILDFLAG(USE_PROPRIETARY_CODECS) - CodecSet mp3_codecs; - mp3_codecs.insert(MP3); - -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - CodecSet aac; - aac.insert(MPEG2_AAC); - aac.insert(MPEG4_AAC); -@@ -325,10 +325,10 @@ void MimeUtil::AddSupportedMediaFormats( - AddContainerWithCodecs("application/ogg", ogg_codecs, false); - AddContainerWithCodecs("audio/flac", implicit_codec, false); - --#if BUILDFLAG(USE_PROPRIETARY_CODECS) - AddContainerWithCodecs("audio/mpeg", mp3_codecs, true); // Allow "mp3". - AddContainerWithCodecs("audio/mp3", implicit_codec, true); - AddContainerWithCodecs("audio/x-mp3", implicit_codec, true); -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - AddContainerWithCodecs("audio/aac", implicit_codec, true); // AAC / ADTS. - AddContainerWithCodecs("audio/mp4", mp4_audio_codecs, true); - DCHECK(!mp4_video_codecs.empty()); -@@ -933,7 +933,6 @@ bool MimeUtil::IsCodecProprietary(Codec - case INVALID_CODEC: - case AC3: - case EAC3: -- case MP3: - case MPEG2_AAC: - case MPEG4_AAC: - case H264: -@@ -941,6 +940,7 @@ bool MimeUtil::IsCodecProprietary(Codec - case DOLBY_VISION: - return true; - -+ case MP3: - case PCM: - case VORBIS: - case OPUS: -diff -up chromium-61.0.3163.79/media/formats/BUILD.gn.mp3 chromium-61.0.3163.79/media/formats/BUILD.gn ---- chromium-61.0.3163.79/media/formats/BUILD.gn.mp3 2017-09-05 15:05:21.000000000 -0400 -+++ chromium-61.0.3163.79/media/formats/BUILD.gn 2017-09-06 14:11:44.427683579 -0400 -@@ -12,6 +12,14 @@ source_set("formats") { - "ac3/ac3_util.h", - "common/offset_byte_queue.cc", - "common/offset_byte_queue.h", -+ "mpeg/adts_constants.cc", -+ "mpeg/adts_constants.h", -+ "mpeg/adts_stream_parser.cc", -+ "mpeg/adts_stream_parser.h", -+ "mpeg/mpeg1_audio_stream_parser.cc", -+ "mpeg/mpeg1_audio_stream_parser.h", -+ "mpeg/mpeg_audio_stream_parser_base.cc", -+ "mpeg/mpeg_audio_stream_parser_base.h", - "webm/webm_audio_client.cc", - "webm/webm_audio_client.h", - "webm/webm_cluster_parser.cc", -@@ -76,14 +84,6 @@ source_set("formats") { - "mp4/sample_to_group_iterator.h", - "mp4/track_run_iterator.cc", - "mp4/track_run_iterator.h", -- "mpeg/adts_constants.cc", -- "mpeg/adts_constants.h", -- "mpeg/adts_stream_parser.cc", -- "mpeg/adts_stream_parser.h", -- "mpeg/mpeg1_audio_stream_parser.cc", -- "mpeg/mpeg1_audio_stream_parser.h", -- "mpeg/mpeg_audio_stream_parser_base.cc", -- "mpeg/mpeg_audio_stream_parser_base.h", - ] - } - -diff -up chromium-61.0.3163.79/third_party/catapult/third_party/gsutil/gslib/tests/test_data/test.mp3 chromium-61.0.3163.79/third_party/catapult/third_party/gsutil/gslib/tests/test_data/test -diff -up chromium-61.0.3163.79/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h.mp3 chromium-61.0.3163.79/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h ---- chromium-61.0.3163.79/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h.mp3 2017-09-06 10:13:19.000000000 -0400 -+++ chromium-61.0.3163.79/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h 2017-09-06 14:16:00.576744161 -0400 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/chrome/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-cross-compile --cross-prefix=/usr/bin/aarch64-linux-gnu- --target-os=linux --arch=aarch64 --enable-armv8 --extra-cflags='-march=armv8-a' --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/chrome/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-cross-compile --cross-prefix=/usr/bin/aarch64-linux-gnu- --target-os=linux --arch=aarch64 --enable-armv8 --extra-cflags='-march=armv8-a' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -542,7 +542,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -620,9 +620,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -968,7 +968,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1275,7 +1275,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2217,7 +2217,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-61.0.3163.79/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h.mp3 chromium-61.0.3163.79/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h ---- chromium-61.0.3163.79/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h.mp3 2017-09-06 10:13:19.000000000 -0400 -+++ chromium-61.0.3163.79/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h 2017-09-06 14:17:14.964310036 -0400 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/jrummell/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --disable-neon --extra-cflags='-mfpu=vfpv3-d16' --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/jrummell/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --disable-neon --extra-cflags='-mfpu=vfpv3-d16' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -542,7 +542,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -620,9 +620,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -968,7 +968,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1275,7 +1275,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2217,7 +2217,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-61.0.3163.79/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h.mp3 chromium-61.0.3163.79/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h ---- chromium-61.0.3163.79/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h.mp3 2017-09-06 10:13:19.000000000 -0400 -+++ chromium-61.0.3163.79/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h 2017-09-06 14:17:45.634718576 -0400 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/jrummell/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --enable-neon --extra-cflags='-mfpu=neon' --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/jrummell/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --enable-neon --extra-cflags='-mfpu=neon' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -542,7 +542,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -620,9 +620,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -968,7 +968,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1275,7 +1275,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2217,7 +2217,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-61.0.3163.79/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h.mp3 chromium-61.0.3163.79/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h ---- chromium-61.0.3163.79/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h.mp3 2017-09-06 10:13:19.000000000 -0400 -+++ chromium-61.0.3163.79/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h 2017-09-06 14:18:10.890232136 -0400 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/chrome/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=i686 --extra-cflags='\"-m32\"' --extra-ldflags='\"-m32\"' --enable-yasm --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/chrome/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=i686 --extra-cflags='\"-m32\"' --extra-ldflags='\"-m32\"' --enable-yasm --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -542,7 +542,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -620,9 +620,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -968,7 +968,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1275,7 +1275,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2217,7 +2217,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-61.0.3163.79/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h.mp3 chromium-61.0.3163.79/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h ---- chromium-61.0.3163.79/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h.mp3 2017-09-06 10:13:19.000000000 -0400 -+++ chromium-61.0.3163.79/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h 2017-09-06 14:18:34.578774933 -0400 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/chrome/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-lto --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/chrome/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-lto --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -542,7 +542,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -620,9 +620,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -968,7 +968,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1275,7 +1275,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2217,7 +2217,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-61.0.3163.79/third_party/ffmpeg/ffmpeg_generated.gni.mp3 chromium-61.0.3163.79/third_party/ffmpeg/ffmpeg_generated.gni ---- chromium-61.0.3163.79/third_party/ffmpeg/ffmpeg_generated.gni.mp3 2017-09-06 10:13:18.000000000 -0400 -+++ chromium-61.0.3163.79/third_party/ffmpeg/ffmpeg_generated.gni 2017-09-06 14:29:27.051194188 -0400 -@@ -182,17 +182,9 @@ if ((is_mac) || (is_win) || (use_linux_c - ] - } - --if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mips64el" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { -+if ((current_cpu == "x64") || (is_android && current_cpu == "arm" && arm_use_neon) || (is_android && current_cpu == "arm64") || (is_android && current_cpu == "mips64el") || (is_android && current_cpu == "mipsel") || (is_android && current_cpu == "x86") || (is_win) || (use_linux_config && current_cpu == "arm" && arm_use_neon) || (use_linux_config && current_cpu == "arm" && arm_use_neon) || (use_linux_config && current_cpu == "arm") || (use_linux_config && current_cpu == "arm") || (use_linux_config && current_cpu == "arm64") || (use_linux_config && current_cpu == "mipsel") || (use_linux_config && current_cpu == "x64") || (use_linux_config && current_cpu == "x86")) { - ffmpeg_c_sources += [ -- "libavcodec/aac_ac3_parser.c", -- "libavcodec/aac_parser.c", -- "libavcodec/aacadtsdec.c", -- "libavcodec/aacps_float.c", -- "libavcodec/aacpsdsp_float.c", -- "libavcodec/aacsbr.c", -- "libavcodec/aactab.c", - "libavcodec/ac3tab.c", -- "libavcodec/autorename_libavcodec_aacdec.c", - "libavcodec/autorename_libavcodec_mpegaudiodsp.c", - "libavcodec/autorename_libavcodec_sbrdsp.c", - "libavcodec/cbrt_data.c", -@@ -210,7 +202,6 @@ if ((current_cpu == "x64" && ffmpeg_bran - "libavcodec/mpegaudiodsp_float.c", - "libavcodec/sinewin.c", - "libavcodec/sinewin_fixed.c", -- "libavformat/aacdec.c", - "libavformat/apetag.c", - "libavformat/img2.c", - "libavformat/mov.c", -@@ -219,6 +210,20 @@ if ((current_cpu == "x64" && ffmpeg_bran - ] - } - -+if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mips64el" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { -+ ffmpeg_c_sources += [ -+ "libavcodec/aac_ac3_parser.c", -+ "libavcodec/aac_parser.c", -+ "libavcodec/aacadtsdec.c", -+ "libavcodec/aacps_float.c", -+ "libavcodec/aacpsdsp_float.c", -+ "libavcodec/aacsbr.c", -+ "libavcodec/aactab.c", -+ "libavcodec/autorename_libavcodec_aacdec.c", -+ "libavformat/aacdec.c", -+ ] -+} -+ - if ((is_android && current_cpu == "x64") || (is_android && current_cpu == "x86") || (is_mac) || (is_win) || (use_linux_config && current_cpu == "x64") || (use_linux_config && current_cpu == "x86")) { - ffmpeg_c_sources += [ - "libavcodec/x86/autorename_libavcodec_x86_vorbisdsp_init.c", -@@ -322,15 +327,19 @@ if ((is_mac) || (is_win) || (use_linux_c - if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { - ffmpeg_c_sources += [ - "libavcodec/x86/aacpsdsp_init.c", -+ ] -+ ffmpeg_yasm_sources += [ -+ "libavcodec/x86/aacpsdsp.asm", -+ ] -+} -+ -+if ((current_cpu == "x64") || (is_android && current_cpu == "x86") || (use_linux_config && current_cpu == "x64") || (use_linux_config && current_cpu == "x86") || (is_win)) { -+ ffmpeg_c_sources += [ - "libavcodec/x86/dct_init.c", - "libavcodec/x86/mpegaudiodsp.c", - "libavcodec/x86/sbrdsp_init.c", - ] --} -- --if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { - ffmpeg_yasm_sources += [ -- "libavcodec/x86/aacpsdsp.asm", - "libavcodec/x86/dct32.asm", - "libavcodec/x86/imdct36.asm", - "libavcodec/x86/sbrdsp.asm", -diff -up chromium-61.0.3163.79/third_party/ffmpeg/libavcodec/sbrdsp.c.mp3 chromium-61.0.3163.79/third_party/ffmpeg/libavcodec/sbrdsp.c ---- chromium-61.0.3163.79/third_party/ffmpeg/libavcodec/sbrdsp.c.mp3 2017-09-06 10:13:19.000000000 -0400 -+++ chromium-61.0.3163.79/third_party/ffmpeg/libavcodec/sbrdsp.c 2017-09-06 14:11:44.495682217 -0400 -@@ -23,6 +23,7 @@ - #define USE_FIXED 0 - - #include "aac.h" -+#include "aacsbrdata.h" - #include "config.h" - #include "libavutil/attributes.h" - #include "libavutil/intfloat.h" -diff -up chromium-61.0.3163.79/third_party/webrtc/examples/objc/AppRTCMobile/ios/resources/mozart.mp3 chromium-61.0.3163.79/third_party/webrtc/examples/objc/AppRTCMobile/ios/resources/mozart -diff -up chromium-61.0.3163.79/tools/android/audio_focus_grabber/java/res/raw/ping.mp3 chromium-61.0.3163.79/tools/android/audio_focus_grabber/java/res/raw/ping diff --git a/chromium-61.0.3163.79-epel7-no-nullptr-assignment-on-StructPtr.patch b/chromium-61.0.3163.79-epel7-no-nullptr-assignment-on-StructPtr.patch deleted file mode 100644 index 0ba375b..0000000 --- a/chromium-61.0.3163.79-epel7-no-nullptr-assignment-on-StructPtr.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-61.0.3163.79/third_party/WebKit/Source/platform/blob/BlobData.cpp.nonullptr chromium-61.0.3163.79/third_party/WebKit/Source/platform/blob/BlobData.cpp ---- chromium-61.0.3163.79/third_party/WebKit/Source/platform/blob/BlobData.cpp.nonullptr 2017-09-18 11:28:33.541339036 -0400 -+++ chromium-61.0.3163.79/third_party/WebKit/Source/platform/blob/BlobData.cpp 2017-09-18 11:27:35.757799400 -0400 -@@ -287,7 +287,7 @@ BlobDataHandle::BlobDataHandle(std::uniq - - size_t current_memory_population = 0; - Vector elements; -- const DataElementPtr null_element = nullptr; -+ const DataElementPtr null_element; - BlobBytesProvider* last_bytes_provider = nullptr; - - // TODO(mek): When the mojo code path is the default BlobData should diff --git a/chromium-61.0.3163.79-fix-atk-compile.patch b/chromium-61.0.3163.79-fix-atk-compile.patch deleted file mode 100644 index fcbe042..0000000 --- a/chromium-61.0.3163.79-fix-atk-compile.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-61.0.3163.79/content/browser/accessibility/browser_accessibility_auralinux.cc.fixvarname chromium-61.0.3163.79/content/browser/accessibility/browser_accessibility_auralinux.cc ---- chromium-61.0.3163.79/content/browser/accessibility/browser_accessibility_auralinux.cc.fixvarname 2017-09-08 13:36:14.985804754 -0400 -+++ chromium-61.0.3163.79/content/browser/accessibility/browser_accessibility_auralinux.cc 2017-09-08 13:36:25.050611274 -0400 -@@ -571,7 +571,7 @@ static AtkStateSet* browser_accessibilit - // it's best to leave this out rather than break people's builds: - #if defined(ATK_CHECK_VERSION) - #if ATK_CHECK_VERSION(2, 16, 0) -- atk_state_set_add_state(atk_state_set, ATK_STATE_READ_ONLY); -+ atk_state_set_add_state(state_set, ATK_STATE_READ_ONLY); - #endif - #endif - break; diff --git a/chromium-61.0.3163.79-fix-gn-again.patch b/chromium-61.0.3163.79-fix-gn-again.patch deleted file mode 100644 index ecdaeca..0000000 --- a/chromium-61.0.3163.79-fix-gn-again.patch +++ /dev/null @@ -1,20 +0,0 @@ -diff -up chromium-61.0.3163.79/tools/gn/bootstrap/bootstrap.py.fixit chromium-61.0.3163.79/tools/gn/bootstrap/bootstrap.py ---- chromium-61.0.3163.79/tools/gn/bootstrap/bootstrap.py.fixit 2017-09-06 15:30:19.199783450 -0400 -+++ chromium-61.0.3163.79/tools/gn/bootstrap/bootstrap.py 2017-09-06 15:31:17.781654042 -0400 -@@ -449,6 +449,7 @@ def write_gn_ninja(path, root_gen_dir, o - 'base/metrics/histogram_base.cc', - 'base/metrics/histogram_functions.cc', - 'base/metrics/histogram_samples.cc', -+ 'base/metrics/histogram_snapshot_manager.cc', - 'base/metrics/metrics_hashes.cc', - 'base/metrics/persistent_histogram_allocator.cc', - 'base/metrics/persistent_memory_allocator.cc', -@@ -534,7 +535,7 @@ def write_gn_ninja(path, root_gen_dir, o - 'base/trace_event/heap_profiler_allocation_context_tracker.cc', - 'base/trace_event/heap_profiler_allocation_register.cc', - 'base/trace_event/heap_profiler_event_filter.cc', -- 'base/trace_event/heap_profiler_event_writer.cc', -+ 'base/trace_event/heap_profiler_heap_dump_writer.cc', - 'base/trace_event/heap_profiler_serialization_state.cc', - 'base/trace_event/heap_profiler_stack_frame_deduplicator.cc', - 'base/trace_event/heap_profiler_type_name_deduplicator.cc', diff --git a/chromium-61.0.3163.79-gcc-nc.patch b/chromium-61.0.3163.79-gcc-nc.patch deleted file mode 100644 index 652e4bd..0000000 --- a/chromium-61.0.3163.79-gcc-nc.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-61.0.3163.79/content/network/network_service_impl.cc.gcc-nc chromium-61.0.3163.79/content/network/network_service_impl.cc ---- chromium-61.0.3163.79/content/network/network_service_impl.cc.gcc-nc 2017-09-14 11:15:35.138981701 -0400 -+++ chromium-61.0.3163.79/content/network/network_service_impl.cc 2017-09-14 11:16:15.874070310 -0400 -@@ -90,7 +90,7 @@ NetworkServiceImpl::CreateNetworkContext - base::MakeUnique(std::move(request), std::move(params), - std::move(builder)); - *url_request_context = network_context->url_request_context(); -- return network_context; -+ return std::unique_ptr(network_context.release()); - } - - std::unique_ptr NetworkServiceImpl::CreateForTesting() { diff --git a/chromium-61.0.3163.79-gcc5-r1.patch b/chromium-61.0.3163.79-gcc5-r1.patch deleted file mode 100644 index 4119850..0000000 --- a/chromium-61.0.3163.79-gcc5-r1.patch +++ /dev/null @@ -1,67 +0,0 @@ -diff -up chromium-61.0.3163.79/chrome/browser/devtools/devtools_file_system_indexer.cc.gcc5fix chromium-61.0.3163.79/chrome/browser/devtools/devtools_file_system_indexer.cc ---- chromium-61.0.3163.79/chrome/browser/devtools/devtools_file_system_indexer.cc.gcc5fix 2017-09-06 16:32:34.496782451 -0400 -+++ chromium-61.0.3163.79/chrome/browser/devtools/devtools_file_system_indexer.cc 2017-09-06 16:33:22.053865242 -0400 -@@ -34,7 +34,6 @@ using base::TimeDelta; - using base::TimeTicks; - using content::BrowserThread; - using std::map; --using std::set; - using std::string; - using std::vector; - -@@ -191,7 +190,7 @@ vector Index::Search(const str - if (trigram != kUndefinedTrigram) - trigrams.push_back(trigram); - } -- set file_ids; -+ std::set file_ids; - bool first = true; - vector::const_iterator it = trigrams.begin(); - for (; it != trigrams.end(); ++it) { -@@ -203,7 +202,7 @@ vector Index::Search(const str - first = false; - continue; - } -- set intersection = base::STLSetIntersection >( -+ std::set intersection = base::STLSetIntersection >( - file_ids, index_[trigram]); - file_ids.swap(intersection); - } -diff -up chromium-61.0.3163.79/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h.gcc5fix chromium-61.0.3163.79/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h ---- chromium-61.0.3163.79/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h.gcc5fix 2017-09-06 16:33:35.213611900 -0400 -+++ chromium-61.0.3163.79/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h 2017-09-06 16:34:34.471469606 -0400 -@@ -63,7 +63,7 @@ class WTF_EXPORT ArrayBufferContents { - allocation_length_(0), - data_(data), - data_length_(0), -- kind_(AllocationKind::kNormal), -+ kind_(WTF::ArrayBufferContents::AllocationKind::kNormal), - deleter_(deleter) {} - DataHandle(void* allocation_base, - size_t allocation_length, -@@ -94,11 +94,11 @@ class WTF_EXPORT ArrayBufferContents { - reinterpret_cast(allocation_base_) + - allocation_length_); - switch (kind_) { -- case AllocationKind::kNormal: -+ case WTF::ArrayBufferContents::AllocationKind::kNormal: - DCHECK(deleter_); - deleter_(data_); - return; -- case AllocationKind::kReservation: -+ case WTF::ArrayBufferContents::AllocationKind::kReservation: - ReleaseReservedMemory(allocation_base_, allocation_length_); - return; - } -diff -up chromium-61.0.3163.79/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5fix chromium-61.0.3163.79/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc ---- chromium-61.0.3163.79/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5fix 2017-09-06 16:34:51.959131969 -0400 -+++ chromium-61.0.3163.79/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2017-09-06 16:35:03.027919336 -0400 -@@ -10,7 +10,7 @@ - - #include "webrtc/modules/audio_processing/aec3/aec_state.h" - --#include -+#include - #include - #include - diff --git a/chromium-61.0.3163.79-gcc7.patch b/chromium-61.0.3163.79-gcc7.patch deleted file mode 100644 index 44ab0ce..0000000 --- a/chromium-61.0.3163.79-gcc7.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-61.0.3163.79/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 chromium-61.0.3163.79/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h ---- chromium-61.0.3163.79/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 2017-09-05 15:05:41.000000000 -0400 -+++ chromium-61.0.3163.79/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h 2017-09-06 14:01:52.461097821 -0400 -@@ -8,6 +8,7 @@ - #include "platform/PlatformExport.h" - #include "platform/wtf/ThreadSpecific.h" - -+#include - #include - - namespace gpu { -diff -up chromium-61.0.3163.79/v8/src/objects/hash-table.h.gcc7 chromium-61.0.3163.79/v8/src/objects/hash-table.h diff --git a/chromium-61.0.3163.79-gtk2fix.patch b/chromium-61.0.3163.79-gtk2fix.patch deleted file mode 100644 index e22cb6f..0000000 --- a/chromium-61.0.3163.79-gtk2fix.patch +++ /dev/null @@ -1,23 +0,0 @@ -diff -up chromium-61.0.3163.79/chrome/browser/ui/libgtkui/gtk_ui.cc.gtk2fix chromium-61.0.3163.79/chrome/browser/ui/libgtkui/gtk_ui.cc ---- chromium-61.0.3163.79/chrome/browser/ui/libgtkui/gtk_ui.cc.gtk2fix 2017-09-07 15:40:40.904966476 -0400 -+++ chromium-61.0.3163.79/chrome/browser/ui/libgtkui/gtk_ui.cc 2017-09-07 15:42:23.829987464 -0400 -@@ -1052,11 +1052,19 @@ float GtkUi::GetRawDeviceScaleFactor() { - if (display::Display::HasForceDeviceScaleFactor()) - return display::Display::GetForcedDeviceScaleFactor(); - -+#if GTK_MAJOR_VERSION == 2 -+ GtkSettings* gtk_settings = gtk_settings_get_default(); -+ gint gtk_dpi = -1; -+ g_object_get(gtk_settings, "gtk-xft-dpi", >k_dpi, nullptr); -+ const float scale_factor = gtk_dpi / (1024 * kDefaultDPI); -+#else - GdkScreen* screen = gdk_screen_get_default(); - gint scale = gtk_widget_get_scale_factor(fake_window_); - gdouble resolution = gdk_screen_get_resolution(screen); - const float scale_factor = - resolution <= 0 ? scale : resolution * scale / kDefaultDPI; -+#endif -+ - // Blacklist scaling factors <120% (crbug.com/484400) and round - // to 1 decimal to prevent rendering problems (crbug.com/485183). - return scale_factor < 1.2f ? 1.0f : roundf(scale_factor * 10) / 10; diff --git a/chromium-61.0.3163.79-kmaxskip-constexpr.patch b/chromium-61.0.3163.79-kmaxskip-constexpr.patch deleted file mode 100644 index fab1f1c..0000000 --- a/chromium-61.0.3163.79-kmaxskip-constexpr.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-61.0.3163.79/cc/paint/paint_op_buffer.cc.kmaxskip chromium-61.0.3163.79/cc/paint/paint_op_buffer.cc ---- chromium-61.0.3163.79/cc/paint/paint_op_buffer.cc.kmaxskip 2017-09-14 09:28:18.594875170 -0400 -+++ chromium-61.0.3163.79/cc/paint/paint_op_buffer.cc 2017-09-14 09:29:37.266072373 -0400 -@@ -207,7 +207,7 @@ TYPES(M); - #undef TYPES - - SkRect PaintOp::kUnsetRect = {SK_ScalarInfinity, 0, 0, 0}; --const size_t PaintOp::kMaxSkip; -+constexpr size_t PaintOp::kMaxSkip; - - std::string PaintOpTypeToString(PaintOpType type) { - switch (type) { diff --git a/chromium-61.0.3163.79-rvalue-fix.patch b/chromium-61.0.3163.79-rvalue-fix.patch deleted file mode 100644 index 41138f6..0000000 --- a/chromium-61.0.3163.79-rvalue-fix.patch +++ /dev/null @@ -1,36 +0,0 @@ -diff -up chromium-61.0.3163.100/chrome/browser/ui/webui/settings/on_startup_handler.cc.another-rvalue-fix chromium-61.0.3163.100/chrome/browser/ui/webui/settings/on_startup_handler.cc ---- chromium-61.0.3163.100/chrome/browser/ui/webui/settings/on_startup_handler.cc.another-rvalue-fix 2017-09-22 17:50:14.247727636 -0400 -+++ chromium-61.0.3163.100/chrome/browser/ui/webui/settings/on_startup_handler.cc 2017-09-22 17:50:25.626492965 -0400 -@@ -77,7 +77,7 @@ std::unique_ptr OnStartupHa - !extensions::ExtensionSystem::Get(profile_) - ->management_policy() - ->MustRemainEnabled(ntp_extension, nullptr)); -- return dict; -+ return std::move(dict); - } - - void OnStartupHandler::HandleGetNtpExtension(const base::ListValue* args) { -diff -up chromium-61.0.3163.100/ui/message_center/views/notification_header_view.cc.another-rvalue-fix chromium-61.0.3163.100/ui/message_center/views/notification_header_view.cc ---- chromium-61.0.3163.100/ui/message_center/views/notification_header_view.cc.another-rvalue-fix 2017-09-21 18:05:24.000000000 -0400 -+++ chromium-61.0.3163.100/ui/message_center/views/notification_header_view.cc 2017-09-22 10:14:15.680987910 -0400 -@@ -321,7 +321,7 @@ std::unique_ptr Notifica - ink_drop->SetAutoHighlightMode( - views::InkDropImpl::AutoHighlightMode::SHOW_ON_RIPPLE); - ink_drop->SetShowHighlightOnHover(false); -- return ink_drop; -+ return std::move(ink_drop); - } - - std::unique_ptr -diff -up chromium-61.0.3163.100/ui/views/controls/button/checkbox.cc.another-rvalue-fix chromium-61.0.3163.100/ui/views/controls/button/checkbox.cc ---- chromium-61.0.3163.100/ui/views/controls/button/checkbox.cc.another-rvalue-fix 2017-09-22 14:46:36.109955800 -0400 -+++ chromium-61.0.3163.100/ui/views/controls/button/checkbox.cc 2017-09-22 14:46:48.736698401 -0400 -@@ -195,7 +195,7 @@ std::unique_ptr Checkbox::Creat - std::unique_ptr ink_drop = CreateDefaultInkDropImpl(); - ink_drop->SetShowHighlightOnHover(false); - ink_drop->SetAutoHighlightMode(InkDropImpl::AutoHighlightMode::NONE); -- return ink_drop; -+ return std::move(ink_drop); - } - - std::unique_ptr Checkbox::CreateInkDropRipple() const { diff --git a/chromium-61.0.3163.79-uglyhack.patch b/chromium-61.0.3163.79-uglyhack.patch deleted file mode 100644 index b76fcd7..0000000 --- a/chromium-61.0.3163.79-uglyhack.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-61.0.3163.79/mojo/public/cpp/bindings/struct_ptr.h.uglyhack chromium-61.0.3163.79/mojo/public/cpp/bindings/struct_ptr.h ---- chromium-61.0.3163.79/mojo/public/cpp/bindings/struct_ptr.h.uglyhack 2017-09-14 14:01:32.168409717 -0400 -+++ chromium-61.0.3163.79/mojo/public/cpp/bindings/struct_ptr.h 2017-09-14 14:01:40.478219060 -0400 -@@ -107,7 +107,7 @@ class StructPtr { - - std::unique_ptr ptr_; - -- DISALLOW_COPY_AND_ASSIGN(StructPtr); -+ // DISALLOW_COPY_AND_ASSIGN(StructPtr); - }; - - template From b8d27d6a5a3ae3c06505a7915bfb7a22e8e0293e Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 6 Dec 2017 11:23:05 +0100 Subject: [PATCH 0160/1449] Remove unused AppData file --- chromium-browser.appdata.xml | 38 ------------------------------------ 1 file changed, 38 deletions(-) delete mode 100644 chromium-browser.appdata.xml diff --git a/chromium-browser.appdata.xml b/chromium-browser.appdata.xml deleted file mode 100644 index 71531d8..0000000 --- a/chromium-browser.appdata.xml +++ /dev/null @@ -1,38 +0,0 @@ - - - - chromium-browser.desktop - richard@hughsie.com - CC0-1.0 - BSD-3-Clause and LGPL-2.1+ and Apache-2.0 and IJG and MIT and GPL-2.0+ and ISC and OpenSSL and (MPL-1.1 or GPL-2.0 or LGPL-2.0) - Chromium - Web Browser - -

- Chromium is an open-source browser that aims to build a safer, faster, and - more stable way to experience the web. - We invite you to join us in our effort to build a powerful platform for - developing a new generation of web applications. -

-

- Chromium does not include the non-free AAC, H.264, MP3 or Adobe Flash code - that is found in Chrome, although it does support Vorbis, Theora, WebM and - HTML5 audio and video standards. -

-
- https://www.chromium.org/Home - - - https://raw.githubusercontent.com/hughsie/fedora-appstream/master/screenshots-extra/chromium-browser/a.png - - - - https://raw.githubusercontent.com/hughsie/fedora-appstream/master/screenshots-extra/chromium-browser/b.png - - - - chromium-browser - Google - https://www.chromium.org/for-testers/bug-reporting-guidelines - https://chromium.googlesource.com/chromium/src/+/master/docs/linux_debugging.md -
From 6af85f90fe4cdb2cd7820ae715c293bb69d19c43 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 12 Dec 2017 09:18:37 -0500 Subject: [PATCH 0161/1449] 63.0.3239.84 --- .gitignore | 1 + chromium-63.0.3289.84-enable-mp3.patch | 485 ++++++++++++++++++ ...mium-63.0.3289.84-fix-ffmpeg-aarch64.patch | 12 + ...mium-63.0.3289.84-fix-ft-hb-unbundle.patch | 36 ++ chromium-63.0.3289.84-gcc-round-fix.patch | 11 + chromium-63.0.3289.84-gcc5-r3.patch | 104 ++++ chromium-63.0.3289.84-nolibc++.patch | 15 + chromium-63.0.3289.84-nullfix.patch | 43 ++ chromium-63.0.3289.84-setopaque.patch | 12 + chromium.spec | 176 ++++--- clean_ffmpeg.sh | 4 + sources | 2 +- 12 files changed, 811 insertions(+), 90 deletions(-) create mode 100644 chromium-63.0.3289.84-enable-mp3.patch create mode 100644 chromium-63.0.3289.84-fix-ffmpeg-aarch64.patch create mode 100644 chromium-63.0.3289.84-fix-ft-hb-unbundle.patch create mode 100644 chromium-63.0.3289.84-gcc-round-fix.patch create mode 100644 chromium-63.0.3289.84-gcc5-r3.patch create mode 100644 chromium-63.0.3289.84-nolibc++.patch create mode 100644 chromium-63.0.3289.84-nullfix.patch create mode 100644 chromium-63.0.3289.84-setopaque.patch diff --git a/.gitignore b/.gitignore index 5662256..f261d90 100644 --- a/.gitignore +++ b/.gitignore @@ -33,3 +33,4 @@ /chromium-61.0.3163.100-clean.tar.xz /chromium-62.0.3202.75-clean.tar.xz /chromium-62.0.3202.89-clean.tar.xz +/chromium-63.0.3239.84-clean.tar.xz diff --git a/chromium-63.0.3289.84-enable-mp3.patch b/chromium-63.0.3289.84-enable-mp3.patch new file mode 100644 index 0000000..91a331a --- /dev/null +++ b/chromium-63.0.3289.84-enable-mp3.patch @@ -0,0 +1,485 @@ +diff -up chromium-63.0.3239.84/components/neterror/resources/sounds/button-press.mp3 chromium-63.0.3239.84/components/neterror/resources/sounds/button-press +diff -up chromium-63.0.3239.84/components/neterror/resources/sounds/hit.mp3 chromium-63.0.3239.84/components/neterror/resources/sounds/hit +diff -up chromium-63.0.3239.84/components/neterror/resources/sounds/score-reached.mp3 chromium-63.0.3239.84/components/neterror/resources/sounds/score-reached +diff -up chromium-63.0.3239.84/media/base/mime_util_internal.cc.mp3 chromium-63.0.3239.84/media/base/mime_util_internal.cc +--- chromium-63.0.3239.84/media/base/mime_util_internal.cc.mp3 2017-12-06 15:05:29.000000000 -0500 ++++ chromium-63.0.3239.84/media/base/mime_util_internal.cc 2017-12-07 10:52:02.472510232 -0500 +@@ -266,15 +266,19 @@ void MimeUtil::AddSupportedMediaFormats( + CodecSet webm_codecs(webm_audio_codecs); + webm_codecs.insert(webm_video_codecs.begin(), webm_video_codecs.end()); + +-#if BUILDFLAG(USE_PROPRIETARY_CODECS) + const CodecSet mp3_codecs{MP3}; ++#if BUILDFLAG(USE_PROPRIETARY_CODECS) + const CodecSet aac{MPEG2_AAC, MPEG4_AAC}; ++#else ++ const CodecSet aac{}; ++#endif ++ CodecSet mp4_audio_codecs(aac); ++ mp4_audio_codecs.emplace(MP3); + ++#if BUILDFLAG(USE_PROPRIETARY_CODECS) + CodecSet avc_and_aac(aac); + avc_and_aac.emplace(H264); + +- CodecSet mp4_audio_codecs(aac); +- mp4_audio_codecs.emplace(MP3); + mp4_audio_codecs.emplace(FLAC); + #if BUILDFLAG(ENABLE_AC3_EAC3_AUDIO_DEMUXING) + mp4_audio_codecs.emplace(AC3); +@@ -311,10 +315,10 @@ void MimeUtil::AddSupportedMediaFormats( + AddContainerWithCodecs("application/ogg", ogg_codecs, false); + AddContainerWithCodecs("audio/flac", implicit_codec, false); + +-#if BUILDFLAG(USE_PROPRIETARY_CODECS) + AddContainerWithCodecs("audio/mpeg", mp3_codecs, true); // Allow "mp3". + AddContainerWithCodecs("audio/mp3", implicit_codec, true); + AddContainerWithCodecs("audio/x-mp3", implicit_codec, true); ++#if BUILDFLAG(USE_PROPRIETARY_CODECS) + AddContainerWithCodecs("audio/aac", implicit_codec, true); // AAC / ADTS. + AddContainerWithCodecs("audio/mp4", mp4_audio_codecs, true); + DCHECK(!mp4_video_codecs.empty()); +@@ -935,7 +939,6 @@ bool MimeUtil::IsCodecProprietary(Codec + case INVALID_CODEC: + case AC3: + case EAC3: +- case MP3: + case MPEG2_AAC: + case MPEG4_AAC: + case H264: +@@ -943,6 +946,7 @@ bool MimeUtil::IsCodecProprietary(Codec + case DOLBY_VISION: + return true; + ++ case MP3: + case PCM: + case VORBIS: + case OPUS: +diff -up chromium-63.0.3239.84/media/formats/BUILD.gn.mp3 chromium-63.0.3239.84/media/formats/BUILD.gn +--- chromium-63.0.3239.84/media/formats/BUILD.gn.mp3 2017-12-06 15:05:29.000000000 -0500 ++++ chromium-63.0.3239.84/media/formats/BUILD.gn 2017-12-07 10:52:02.473510212 -0500 +@@ -20,6 +20,14 @@ source_set("formats") { + "ac3/ac3_util.h", + "common/offset_byte_queue.cc", + "common/offset_byte_queue.h", ++ "mpeg/adts_constants.cc", ++ "mpeg/adts_constants.h", ++ "mpeg/adts_stream_parser.cc", ++ "mpeg/adts_stream_parser.h", ++ "mpeg/mpeg1_audio_stream_parser.cc", ++ "mpeg/mpeg1_audio_stream_parser.h", ++ "mpeg/mpeg_audio_stream_parser_base.cc", ++ "mpeg/mpeg_audio_stream_parser_base.h", + "webm/webm_audio_client.cc", + "webm/webm_audio_client.h", + "webm/webm_cluster_parser.cc", +@@ -81,14 +89,6 @@ source_set("formats") { + "mp4/sample_to_group_iterator.h", + "mp4/track_run_iterator.cc", + "mp4/track_run_iterator.h", +- "mpeg/adts_constants.cc", +- "mpeg/adts_constants.h", +- "mpeg/adts_stream_parser.cc", +- "mpeg/adts_stream_parser.h", +- "mpeg/mpeg1_audio_stream_parser.cc", +- "mpeg/mpeg1_audio_stream_parser.h", +- "mpeg/mpeg_audio_stream_parser_base.cc", +- "mpeg/mpeg_audio_stream_parser_base.h", + ] + } + +diff -up chromium-63.0.3239.84/third_party/catapult/third_party/gsutil/gslib/tests/test_data/test.mp3 chromium-63.0.3239.84/third_party/catapult/third_party/gsutil/gslib/tests/test_data/test +diff -up chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h.mp3 chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h +--- chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h.mp3 2017-12-07 09:51:37.000000000 -0500 ++++ chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h 2017-12-07 11:08:41.116117073 -0500 +@@ -1,7 +1,7 @@ + /* Automatically generated by configure - do not modify! */ + #ifndef FFMPEG_CONFIG_H + #define FFMPEG_CONFIG_H +-#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/blink3/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-cross-compile --cross-prefix=/usr/bin/aarch64-linux-gnu- --target-os=linux --arch=aarch64 --enable-armv8 --extra-cflags='-march=armv8-a' --enable-pic" ++#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/blink3/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-cross-compile --cross-prefix=/usr/bin/aarch64-linux-gnu- --target-os=linux --arch=aarch64 --enable-armv8 --extra-cflags='-march=armv8-a' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" + #define FFMPEG_LICENSE "LGPL version 2.1 or later" + #define CONFIG_THIS_YEAR 2017 + #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" +@@ -547,7 +547,7 @@ + #define CONFIG_FFPROBE 0 + #define CONFIG_FFSERVER 0 + #define CONFIG_FFMPEG 0 +-#define CONFIG_DCT 0 ++#define CONFIG_DCT 1 + #define CONFIG_DWT 0 + #define CONFIG_ERROR_RESILIENCE 0 + #define CONFIG_FAAN 1 +@@ -626,9 +626,9 @@ + #define CONFIG_LZF 0 + #define CONFIG_ME_CMP 0 + #define CONFIG_MPEG_ER 0 +-#define CONFIG_MPEGAUDIO 0 +-#define CONFIG_MPEGAUDIODSP 0 +-#define CONFIG_MPEGAUDIOHEADER 0 ++#define CONFIG_MPEGAUDIO 1 ++#define CONFIG_MPEGAUDIODSP 1 ++#define CONFIG_MPEGAUDIOHEADER 1 + #define CONFIG_MPEGVIDEO 0 + #define CONFIG_MPEGVIDEOENC 0 + #define CONFIG_MSS34DSP 0 +@@ -979,7 +979,7 @@ + #define CONFIG_MP1FLOAT_DECODER 0 + #define CONFIG_MP2_DECODER 0 + #define CONFIG_MP2FLOAT_DECODER 0 +-#define CONFIG_MP3_DECODER 0 ++#define CONFIG_MP3_DECODER 1 + #define CONFIG_MP3FLOAT_DECODER 0 + #define CONFIG_MP3ADU_DECODER 0 + #define CONFIG_MP3ADUFLOAT_DECODER 0 +@@ -1292,7 +1292,7 @@ + #define CONFIG_MM_DEMUXER 0 + #define CONFIG_MMF_DEMUXER 0 + #define CONFIG_MOV_DEMUXER 0 +-#define CONFIG_MP3_DEMUXER 0 ++#define CONFIG_MP3_DEMUXER 1 + #define CONFIG_MPC_DEMUXER 0 + #define CONFIG_MPC8_DEMUXER 0 + #define CONFIG_MPEGPS_DEMUXER 0 +@@ -2267,7 +2267,7 @@ + #define CONFIG_MJPEG_PARSER 0 + #define CONFIG_MLP_PARSER 0 + #define CONFIG_MPEG4VIDEO_PARSER 0 +-#define CONFIG_MPEGAUDIO_PARSER 0 ++#define CONFIG_MPEGAUDIO_PARSER 1 + #define CONFIG_MPEGVIDEO_PARSER 0 + #define CONFIG_OPUS_PARSER 1 + #define CONFIG_PNG_PARSER 0 +diff -up chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h.mp3 chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h +--- chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h.mp3 2017-12-07 09:51:37.000000000 -0500 ++++ chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h 2017-12-07 11:09:23.602291820 -0500 +@@ -1,7 +1,7 @@ + /* Automatically generated by configure - do not modify! */ + #ifndef FFMPEG_CONFIG_H + #define FFMPEG_CONFIG_H +-#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/chcunningham/chrome_root/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --disable-neon --extra-cflags='-mfpu=vfpv3-d16' --enable-pic" ++#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/chcunningham/chrome_root/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --disable-neon --extra-cflags='-mfpu=vfpv3-d16' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" + #define FFMPEG_LICENSE "LGPL version 2.1 or later" + #define CONFIG_THIS_YEAR 2017 + #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" +@@ -547,7 +547,7 @@ + #define CONFIG_FFPROBE 0 + #define CONFIG_FFSERVER 0 + #define CONFIG_FFMPEG 0 +-#define CONFIG_DCT 0 ++#define CONFIG_DCT 1 + #define CONFIG_DWT 0 + #define CONFIG_ERROR_RESILIENCE 0 + #define CONFIG_FAAN 1 +@@ -626,9 +626,9 @@ + #define CONFIG_LZF 0 + #define CONFIG_ME_CMP 0 + #define CONFIG_MPEG_ER 0 +-#define CONFIG_MPEGAUDIO 0 +-#define CONFIG_MPEGAUDIODSP 0 +-#define CONFIG_MPEGAUDIOHEADER 0 ++#define CONFIG_MPEGAUDIO 1 ++#define CONFIG_MPEGAUDIODSP 1 ++#define CONFIG_MPEGAUDIOHEADER 1 + #define CONFIG_MPEGVIDEO 0 + #define CONFIG_MPEGVIDEOENC 0 + #define CONFIG_MSS34DSP 0 +@@ -979,7 +979,7 @@ + #define CONFIG_MP1FLOAT_DECODER 0 + #define CONFIG_MP2_DECODER 0 + #define CONFIG_MP2FLOAT_DECODER 0 +-#define CONFIG_MP3_DECODER 0 ++#define CONFIG_MP3_DECODER 1 + #define CONFIG_MP3FLOAT_DECODER 0 + #define CONFIG_MP3ADU_DECODER 0 + #define CONFIG_MP3ADUFLOAT_DECODER 0 +@@ -1292,7 +1292,7 @@ + #define CONFIG_MM_DEMUXER 0 + #define CONFIG_MMF_DEMUXER 0 + #define CONFIG_MOV_DEMUXER 0 +-#define CONFIG_MP3_DEMUXER 0 ++#define CONFIG_MP3_DEMUXER 1 + #define CONFIG_MPC_DEMUXER 0 + #define CONFIG_MPC8_DEMUXER 0 + #define CONFIG_MPEGPS_DEMUXER 0 +@@ -2267,7 +2267,7 @@ + #define CONFIG_MJPEG_PARSER 0 + #define CONFIG_MLP_PARSER 0 + #define CONFIG_MPEG4VIDEO_PARSER 0 +-#define CONFIG_MPEGAUDIO_PARSER 0 ++#define CONFIG_MPEGAUDIO_PARSER 1 + #define CONFIG_MPEGVIDEO_PARSER 0 + #define CONFIG_OPUS_PARSER 1 + #define CONFIG_PNG_PARSER 0 +diff -up chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h.mp3 chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h +--- chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h.mp3 2017-12-07 09:51:37.000000000 -0500 ++++ chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h 2017-12-07 11:09:49.945779754 -0500 +@@ -1,7 +1,7 @@ + /* Automatically generated by configure - do not modify! */ + #ifndef FFMPEG_CONFIG_H + #define FFMPEG_CONFIG_H +-#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/chcunningham/chrome_root/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --enable-neon --extra-cflags='-mfpu=neon' --enable-pic" ++#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/chcunningham/chrome_root/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --enable-neon --extra-cflags='-mfpu=neon' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" + #define FFMPEG_LICENSE "LGPL version 2.1 or later" + #define CONFIG_THIS_YEAR 2017 + #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" +@@ -547,7 +547,7 @@ + #define CONFIG_FFPROBE 0 + #define CONFIG_FFSERVER 0 + #define CONFIG_FFMPEG 0 +-#define CONFIG_DCT 0 ++#define CONFIG_DCT 1 + #define CONFIG_DWT 0 + #define CONFIG_ERROR_RESILIENCE 0 + #define CONFIG_FAAN 1 +@@ -626,9 +626,9 @@ + #define CONFIG_LZF 0 + #define CONFIG_ME_CMP 0 + #define CONFIG_MPEG_ER 0 +-#define CONFIG_MPEGAUDIO 0 +-#define CONFIG_MPEGAUDIODSP 0 +-#define CONFIG_MPEGAUDIOHEADER 0 ++#define CONFIG_MPEGAUDIO 1 ++#define CONFIG_MPEGAUDIODSP 1 ++#define CONFIG_MPEGAUDIOHEADER 1 + #define CONFIG_MPEGVIDEO 0 + #define CONFIG_MPEGVIDEOENC 0 + #define CONFIG_MSS34DSP 0 +@@ -979,7 +979,7 @@ + #define CONFIG_MP1FLOAT_DECODER 0 + #define CONFIG_MP2_DECODER 0 + #define CONFIG_MP2FLOAT_DECODER 0 +-#define CONFIG_MP3_DECODER 0 ++#define CONFIG_MP3_DECODER 1 + #define CONFIG_MP3FLOAT_DECODER 0 + #define CONFIG_MP3ADU_DECODER 0 + #define CONFIG_MP3ADUFLOAT_DECODER 0 +@@ -1292,7 +1292,7 @@ + #define CONFIG_MM_DEMUXER 0 + #define CONFIG_MMF_DEMUXER 0 + #define CONFIG_MOV_DEMUXER 0 +-#define CONFIG_MP3_DEMUXER 0 ++#define CONFIG_MP3_DEMUXER 1 + #define CONFIG_MPC_DEMUXER 0 + #define CONFIG_MPC8_DEMUXER 0 + #define CONFIG_MPEGPS_DEMUXER 0 +@@ -2267,7 +2267,7 @@ + #define CONFIG_MJPEG_PARSER 0 + #define CONFIG_MLP_PARSER 0 + #define CONFIG_MPEG4VIDEO_PARSER 0 +-#define CONFIG_MPEGAUDIO_PARSER 0 ++#define CONFIG_MPEGAUDIO_PARSER 1 + #define CONFIG_MPEGVIDEO_PARSER 0 + #define CONFIG_OPUS_PARSER 1 + #define CONFIG_PNG_PARSER 0 +diff -up chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h.mp3 chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h +--- chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h.mp3 2017-12-07 09:51:37.000000000 -0500 ++++ chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h 2017-12-07 11:10:25.513089579 -0500 +@@ -1,7 +1,7 @@ + /* Automatically generated by configure - do not modify! */ + #ifndef FFMPEG_CONFIG_H + #define FFMPEG_CONFIG_H +-#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/blink3/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=i686 --extra-cflags='\"-m32\"' --extra-ldflags='\"-m32\"' --enable-yasm --enable-pic" ++#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/blink3/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=i686 --extra-cflags='\"-m32\"' --extra-ldflags='\"-m32\"' --enable-yasm --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" + #define FFMPEG_LICENSE "LGPL version 2.1 or later" + #define CONFIG_THIS_YEAR 2017 + #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" +@@ -547,7 +547,7 @@ + #define CONFIG_FFPROBE 0 + #define CONFIG_FFSERVER 0 + #define CONFIG_FFMPEG 0 +-#define CONFIG_DCT 0 ++#define CONFIG_DCT 1 + #define CONFIG_DWT 0 + #define CONFIG_ERROR_RESILIENCE 0 + #define CONFIG_FAAN 1 +@@ -626,9 +626,9 @@ + #define CONFIG_LZF 0 + #define CONFIG_ME_CMP 0 + #define CONFIG_MPEG_ER 0 +-#define CONFIG_MPEGAUDIO 0 +-#define CONFIG_MPEGAUDIODSP 0 +-#define CONFIG_MPEGAUDIOHEADER 0 ++#define CONFIG_MPEGAUDIO 1 ++#define CONFIG_MPEGAUDIODSP 1 ++#define CONFIG_MPEGAUDIOHEADER 1 + #define CONFIG_MPEGVIDEO 0 + #define CONFIG_MPEGVIDEOENC 0 + #define CONFIG_MSS34DSP 0 +@@ -979,7 +979,7 @@ + #define CONFIG_MP1FLOAT_DECODER 0 + #define CONFIG_MP2_DECODER 0 + #define CONFIG_MP2FLOAT_DECODER 0 +-#define CONFIG_MP3_DECODER 0 ++#define CONFIG_MP3_DECODER 1 + #define CONFIG_MP3FLOAT_DECODER 0 + #define CONFIG_MP3ADU_DECODER 0 + #define CONFIG_MP3ADUFLOAT_DECODER 0 +@@ -1292,7 +1292,7 @@ + #define CONFIG_MM_DEMUXER 0 + #define CONFIG_MMF_DEMUXER 0 + #define CONFIG_MOV_DEMUXER 0 +-#define CONFIG_MP3_DEMUXER 0 ++#define CONFIG_MP3_DEMUXER 1 + #define CONFIG_MPC_DEMUXER 0 + #define CONFIG_MPC8_DEMUXER 0 + #define CONFIG_MPEGPS_DEMUXER 0 +@@ -2267,7 +2267,7 @@ + #define CONFIG_MJPEG_PARSER 0 + #define CONFIG_MLP_PARSER 0 + #define CONFIG_MPEG4VIDEO_PARSER 0 +-#define CONFIG_MPEGAUDIO_PARSER 0 ++#define CONFIG_MPEGAUDIO_PARSER 1 + #define CONFIG_MPEGVIDEO_PARSER 0 + #define CONFIG_OPUS_PARSER 1 + #define CONFIG_PNG_PARSER 0 +diff -up chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h.mp3 chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h +--- chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h.mp3 2017-12-07 09:51:37.000000000 -0500 ++++ chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h 2017-12-07 11:10:50.721599547 -0500 +@@ -1,7 +1,7 @@ + /* Automatically generated by configure - do not modify! */ + #ifndef FFMPEG_CONFIG_H + #define FFMPEG_CONFIG_H +-#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/blink3/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-lto --enable-pic" ++#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/blink3/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-lto --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" + #define FFMPEG_LICENSE "LGPL version 2.1 or later" + #define CONFIG_THIS_YEAR 2017 + #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" +@@ -547,7 +547,7 @@ + #define CONFIG_FFPROBE 0 + #define CONFIG_FFSERVER 0 + #define CONFIG_FFMPEG 0 +-#define CONFIG_DCT 0 ++#define CONFIG_DCT 1 + #define CONFIG_DWT 0 + #define CONFIG_ERROR_RESILIENCE 0 + #define CONFIG_FAAN 1 +@@ -626,9 +626,9 @@ + #define CONFIG_LZF 0 + #define CONFIG_ME_CMP 0 + #define CONFIG_MPEG_ER 0 +-#define CONFIG_MPEGAUDIO 0 +-#define CONFIG_MPEGAUDIODSP 0 +-#define CONFIG_MPEGAUDIOHEADER 0 ++#define CONFIG_MPEGAUDIO 1 ++#define CONFIG_MPEGAUDIODSP 1 ++#define CONFIG_MPEGAUDIOHEADER 1 + #define CONFIG_MPEGVIDEO 0 + #define CONFIG_MPEGVIDEOENC 0 + #define CONFIG_MSS34DSP 0 +@@ -979,7 +979,7 @@ + #define CONFIG_MP1FLOAT_DECODER 0 + #define CONFIG_MP2_DECODER 0 + #define CONFIG_MP2FLOAT_DECODER 0 +-#define CONFIG_MP3_DECODER 0 ++#define CONFIG_MP3_DECODER 1 + #define CONFIG_MP3FLOAT_DECODER 0 + #define CONFIG_MP3ADU_DECODER 0 + #define CONFIG_MP3ADUFLOAT_DECODER 0 +@@ -1292,7 +1292,7 @@ + #define CONFIG_MM_DEMUXER 0 + #define CONFIG_MMF_DEMUXER 0 + #define CONFIG_MOV_DEMUXER 0 +-#define CONFIG_MP3_DEMUXER 0 ++#define CONFIG_MP3_DEMUXER 1 + #define CONFIG_MPC_DEMUXER 0 + #define CONFIG_MPC8_DEMUXER 0 + #define CONFIG_MPEGPS_DEMUXER 0 +@@ -2267,7 +2267,7 @@ + #define CONFIG_MJPEG_PARSER 0 + #define CONFIG_MLP_PARSER 0 + #define CONFIG_MPEG4VIDEO_PARSER 0 +-#define CONFIG_MPEGAUDIO_PARSER 0 ++#define CONFIG_MPEGAUDIO_PARSER 1 + #define CONFIG_MPEGVIDEO_PARSER 0 + #define CONFIG_OPUS_PARSER 1 + #define CONFIG_PNG_PARSER 0 +diff -up chromium-63.0.3239.84/third_party/ffmpeg/ffmpeg_generated.gni.mp3 chromium-63.0.3239.84/third_party/ffmpeg/ffmpeg_generated.gni +--- chromium-63.0.3239.84/third_party/ffmpeg/ffmpeg_generated.gni.mp3 2017-12-07 09:51:36.000000000 -0500 ++++ chromium-63.0.3239.84/third_party/ffmpeg/ffmpeg_generated.gni 2017-12-07 11:16:58.728447124 -0500 +@@ -183,17 +183,9 @@ if ((is_mac) || (is_win) || (use_linux_c + ] + } + +-if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mips64el" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { ++if ((current_cpu == "x64") || (is_android && current_cpu == "arm" && arm_use_neon) || (is_android && current_cpu == "arm64") || (is_android && current_cpu == "mips64el") || (is_android && current_cpu == "mipsel") || (is_android && current_cpu == "x86") || (is_win) || (use_linux_config && current_cpu == "arm" && arm_use_neon) || (use_linux_config && current_cpu == "arm") || (use_linux_config && current_cpu == "arm64") || (use_linux_config && current_cpu == "mipsel") || (use_linux_config && current_cpu == "x64") || (use_linux_config && current_cpu == "x86")) { + ffmpeg_c_sources += [ +- "libavcodec/aac_ac3_parser.c", +- "libavcodec/aac_parser.c", +- "libavcodec/aacadtsdec.c", +- "libavcodec/aacps_float.c", +- "libavcodec/aacpsdsp_float.c", +- "libavcodec/aacsbr.c", +- "libavcodec/aactab.c", + "libavcodec/ac3tab.c", +- "libavcodec/autorename_libavcodec_aacdec.c", + "libavcodec/autorename_libavcodec_mdct15.c", + "libavcodec/autorename_libavcodec_mpegaudiodsp.c", + "libavcodec/autorename_libavcodec_sbrdsp.c", +@@ -211,7 +203,6 @@ if ((current_cpu == "x64" && ffmpeg_bran + "libavcodec/mpegaudiodsp_float.c", + "libavcodec/sinewin.c", + "libavcodec/sinewin_fixed.c", +- "libavformat/aacdec.c", + "libavformat/apetag.c", + "libavformat/img2.c", + "libavformat/mov.c", +@@ -220,6 +211,20 @@ if ((current_cpu == "x64" && ffmpeg_bran + ] + } + ++if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mips64el" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { ++ ffmpeg_c_sources += [ ++ "libavcodec/aac_ac3_parser.c", ++ "libavcodec/aac_parser.c", ++ "libavcodec/aacadtsdec.c", ++ "libavcodec/aacps_float.c", ++ "libavcodec/aacpsdsp_float.c", ++ "libavcodec/aacsbr.c", ++ "libavcodec/aactab.c", ++ "libavcodec/autorename_libavcodec_aacdec.c", ++ "libavformat/aacdec.c", ++ ] ++} ++ + if ((is_android && current_cpu == "x64") || (is_android && current_cpu == "x86") || (is_mac) || (is_win) || (use_linux_config && current_cpu == "x64") || (use_linux_config && current_cpu == "x86")) { + ffmpeg_c_sources += [ + "libavcodec/x86/autorename_libavcodec_x86_vorbisdsp_init.c", +@@ -323,16 +328,20 @@ if ((is_mac) || (is_win) || (use_linux_c + if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { + ffmpeg_c_sources += [ + "libavcodec/x86/aacpsdsp_init.c", ++ ] ++ ffmpeg_yasm_sources += [ ++ "libavcodec/x86/aacpsdsp.asm", ++ ] ++} ++ ++if ((current_cpu == "x64") || (is_android && current_cpu == "x86") || (use_linux_config && current_cpu == "x64") || (use_linux_config && current_cpu == "x86") || (is_win)) { ++ ffmpeg_c_sources += [ + "libavcodec/x86/dct_init.c", + "libavcodec/x86/mdct15_init.c", + "libavcodec/x86/mpegaudiodsp.c", + "libavcodec/x86/sbrdsp_init.c", + ] +-} +- +-if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { + ffmpeg_yasm_sources += [ +- "libavcodec/x86/aacpsdsp.asm", + "libavcodec/x86/dct32.asm", + "libavcodec/x86/imdct36.asm", + "libavcodec/x86/mdct15.asm", +diff -up chromium-63.0.3239.84/third_party/ffmpeg/libavcodec/sbrdsp.c.mp3 chromium-63.0.3239.84/third_party/ffmpeg/libavcodec/sbrdsp.c +--- chromium-63.0.3239.84/third_party/ffmpeg/libavcodec/sbrdsp.c.mp3 2017-12-07 09:51:37.000000000 -0500 ++++ chromium-63.0.3239.84/third_party/ffmpeg/libavcodec/sbrdsp.c 2017-12-07 10:52:02.484509992 -0500 +@@ -23,6 +23,7 @@ + #define USE_FIXED 0 + + #include "aac.h" ++#include "aacsbrdata.h" + #include "config.h" + #include "libavutil/attributes.h" + #include "libavutil/intfloat.h" +diff -up chromium-63.0.3239.84/third_party/webrtc/examples/objc/AppRTCMobile/ios/resources/mozart.mp3 chromium-63.0.3239.84/third_party/webrtc/examples/objc/AppRTCMobile/ios/resources/mozart +diff -up chromium-63.0.3239.84/tools/android/audio_focus_grabber/java/res/raw/ping.mp3 chromium-63.0.3239.84/tools/android/audio_focus_grabber/java/res/raw/ping diff --git a/chromium-63.0.3289.84-fix-ffmpeg-aarch64.patch b/chromium-63.0.3289.84-fix-ffmpeg-aarch64.patch new file mode 100644 index 0000000..8df206b --- /dev/null +++ b/chromium-63.0.3289.84-fix-ffmpeg-aarch64.patch @@ -0,0 +1,12 @@ +diff -up chromium-63.0.3239.84/third_party/ffmpeg/ffmpeg_generated.gni.aarch64 chromium-63.0.3239.84/third_party/ffmpeg/ffmpeg_generated.gni +--- chromium-63.0.3239.84/third_party/ffmpeg/ffmpeg_generated.gni.aarch64 2017-12-07 11:23:07.077290535 -0500 ++++ chromium-63.0.3239.84/third_party/ffmpeg/ffmpeg_generated.gni 2017-12-07 11:27:30.354175021 -0500 +@@ -541,7 +541,7 @@ if (use_linux_config && current_cpu == " + ] + } + +-if ((is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS")) { ++if ((is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64")) { + ffmpeg_c_sources += [ + "libavcodec/aarch64/aacpsdsp_init_aarch64.c", + "libavcodec/aarch64/mpegaudiodsp_init.c", diff --git a/chromium-63.0.3289.84-fix-ft-hb-unbundle.patch b/chromium-63.0.3289.84-fix-ft-hb-unbundle.patch new file mode 100644 index 0000000..9ca87ad --- /dev/null +++ b/chromium-63.0.3289.84-fix-ft-hb-unbundle.patch @@ -0,0 +1,36 @@ +diff -up chromium-63.0.3239.84/build/linux/unbundle/freetype.gn.fixunbundle chromium-63.0.3239.84/build/linux/unbundle/freetype.gn +--- chromium-63.0.3239.84/build/linux/unbundle/freetype.gn.fixunbundle 2017-12-07 12:07:48.652161826 -0500 ++++ chromium-63.0.3239.84/build/linux/unbundle/freetype.gn 2017-12-07 12:08:52.514919585 -0500 +@@ -117,6 +117,14 @@ source_set("freetype") { + public_configs = [ ":freetype_config" ] + } + ++source_set("freetype_source") { ++ visibility = [ "//third_party:freetype_harfbuzz" ] ++ deps = [ ++ ":freetype_shim", ++ ] ++ public_configs = [ ":freetype_config" ] ++} ++ + source_set("bootstrap_freetype_for_harfbuzz") { + deps = [ + ":freetype_shim", +diff -up chromium-63.0.3239.84/build/linux/unbundle/harfbuzz-ng.gn.fixunbundle chromium-63.0.3239.84/build/linux/unbundle/harfbuzz-ng.gn +--- chromium-63.0.3239.84/build/linux/unbundle/harfbuzz-ng.gn.fixunbundle 2017-12-07 12:09:57.057661738 -0500 ++++ chromium-63.0.3239.84/build/linux/unbundle/harfbuzz-ng.gn 2017-12-07 12:10:03.225541404 -0500 +@@ -24,6 +24,14 @@ group("harfbuzz-ng") { + ] + } + ++source_set("harfbuzz_source") { ++ visibility = [ "//third_party:freetype_harfbuzz" ] ++ deps = [ ++ ":harfbuzz_shim", ++ ] ++ public_configs = [ ":system_harfbuzz" ] ++} ++ + source_set("harfbuzz-ng-ft") { + deps = [ + ":harfbuzz_shim", diff --git a/chromium-63.0.3289.84-gcc-round-fix.patch b/chromium-63.0.3289.84-gcc-round-fix.patch new file mode 100644 index 0000000..86d0a7e --- /dev/null +++ b/chromium-63.0.3289.84-gcc-round-fix.patch @@ -0,0 +1,11 @@ +diff -up chromium-63.0.3239.84/third_party/webrtc/p2p/base/port.cc.gcc-round-fix chromium-63.0.3239.84/third_party/webrtc/p2p/base/port.cc +--- chromium-63.0.3239.84/third_party/webrtc/p2p/base/port.cc.gcc-round-fix 2017-12-07 16:20:01.521717091 -0500 ++++ chromium-63.0.3239.84/third_party/webrtc/p2p/base/port.cc 2017-12-07 16:20:13.025491739 -0500 +@@ -11,6 +11,7 @@ + #include "p2p/base/port.h" + + #include ++#include + #include + + #include "p2p/base/common.h" diff --git a/chromium-63.0.3289.84-gcc5-r3.patch b/chromium-63.0.3289.84-gcc5-r3.patch new file mode 100644 index 0000000..83c6911 --- /dev/null +++ b/chromium-63.0.3289.84-gcc5-r3.patch @@ -0,0 +1,104 @@ +diff -up chromium-63.0.3239.84/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 chromium-63.0.3239.84/gpu/ipc/common/mailbox_struct_traits.h +--- chromium-63.0.3239.84/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 2017-12-06 15:05:28.000000000 -0500 ++++ chromium-63.0.3239.84/gpu/ipc/common/mailbox_struct_traits.h 2017-12-07 11:32:15.416636125 -0500 +@@ -15,7 +15,7 @@ namespace mojo { + template <> + struct StructTraits { + static base::span name(const gpu::Mailbox& mailbox) { +- return mailbox.name; ++ return base::make_span(mailbox.name); + } + static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out); + }; +diff -up chromium-63.0.3239.84/services/viz/public/cpp/compositing/filter_operation_struct_traits.h.gcc5-r3 chromium-63.0.3239.84/services/viz/public/cpp/compositing/filter_operation_struct_traits.h +--- chromium-63.0.3239.84/services/viz/public/cpp/compositing/filter_operation_struct_traits.h.gcc5-r3 2017-12-06 15:05:31.000000000 -0500 ++++ chromium-63.0.3239.84/services/viz/public/cpp/compositing/filter_operation_struct_traits.h 2017-12-07 11:32:15.422636011 -0500 +@@ -134,7 +134,7 @@ struct StructTraits matrix(const cc::FilterOperation& operation) { + if (operation.type() != cc::FilterOperation::COLOR_MATRIX) + return base::span(); +- return operation.matrix(); ++ return base::make_span(operation.matrix()); + } + + static base::span shape( +diff -up chromium-63.0.3239.84/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 chromium-63.0.3239.84/services/viz/public/cpp/compositing/quads_struct_traits.h +--- chromium-63.0.3239.84/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 2017-12-07 11:32:15.429635877 -0500 ++++ chromium-63.0.3239.84/services/viz/public/cpp/compositing/quads_struct_traits.h 2017-12-07 11:34:00.081601880 -0500 +@@ -309,7 +309,7 @@ struct StructTraits vertex_opacity(const viz::DrawQuad& input) { + const viz::TextureDrawQuad* quad = + viz::TextureDrawQuad::MaterialCast(&input); +- return quad->vertex_opacity; ++ return base::make_span(quad->vertex_opacity); + } + + static bool y_flipped(const viz::DrawQuad& input) { +diff -up chromium-63.0.3239.84/third_party/WebKit/Source/platform/exported/WebCORS.cpp.gcc5-r3 chromium-63.0.3239.84/third_party/WebKit/Source/platform/exported/WebCORS.cpp +--- chromium-63.0.3239.84/third_party/WebKit/Source/platform/exported/WebCORS.cpp.gcc5-r3 2017-12-06 15:05:46.000000000 -0500 ++++ chromium-63.0.3239.84/third_party/WebKit/Source/platform/exported/WebCORS.cpp 2017-12-07 11:32:15.430635859 -0500 +@@ -480,7 +480,7 @@ WebString AccessControlErrorString( + } + default: + NOTREACHED(); +- return ""; ++ return WebString(); + } + } + +@@ -512,7 +512,7 @@ WebString PreflightErrorString(const Pre + } + default: + NOTREACHED(); +- return ""; ++ return WebString(); + } + } + +@@ -533,7 +533,7 @@ WebString RedirectErrorString(const Redi + } + default: + NOTREACHED(); +- return ""; ++ return WebString(); + } + } + +diff -up chromium-63.0.3239.84/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h.gcc5-r3 chromium-63.0.3239.84/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h +--- chromium-63.0.3239.84/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h.gcc5-r3 2017-12-06 15:05:46.000000000 -0500 ++++ chromium-63.0.3239.84/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h 2017-12-07 11:32:15.408636277 -0500 +@@ -63,7 +63,7 @@ class WTF_EXPORT ArrayBufferContents { + allocation_length_(0), + data_(data), + data_length_(0), +- kind_(AllocationKind::kNormal), ++ kind_(WTF::ArrayBufferContents::AllocationKind::kNormal), + deleter_(deleter) {} + DataHandle(void* allocation_base, + size_t allocation_length, +@@ -94,11 +94,11 @@ class WTF_EXPORT ArrayBufferContents { + reinterpret_cast(allocation_base_) + + allocation_length_); + switch (kind_) { +- case AllocationKind::kNormal: ++ case WTF::ArrayBufferContents::AllocationKind::kNormal: + DCHECK(deleter_); + deleter_(data_); + return; +- case AllocationKind::kReservation: ++ case WTF::ArrayBufferContents::AllocationKind::kReservation: + ReleaseReservedMemory(allocation_base_, allocation_length_); + return; + } +diff -up chromium-63.0.3239.84/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 chromium-63.0.3239.84/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc +--- chromium-63.0.3239.84/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 2017-12-07 11:32:15.409636258 -0500 ++++ chromium-63.0.3239.84/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2017-12-07 11:33:10.714561105 -0500 +@@ -10,7 +10,7 @@ + + #include "modules/audio_processing/aec3/aec_state.h" + +-#include ++#include + #include + #include + diff --git a/chromium-63.0.3289.84-nolibc++.patch b/chromium-63.0.3289.84-nolibc++.patch new file mode 100644 index 0000000..0d999c8 --- /dev/null +++ b/chromium-63.0.3289.84-nolibc++.patch @@ -0,0 +1,15 @@ +diff -up chromium-63.0.3239.84/remoting/host/linux/BUILD.gn.nolibc++ chromium-63.0.3239.84/remoting/host/linux/BUILD.gn +--- chromium-63.0.3239.84/remoting/host/linux/BUILD.gn.nolibc++ 2017-12-07 11:55:43.173273434 -0500 ++++ chromium-63.0.3239.84/remoting/host/linux/BUILD.gn 2017-12-07 11:55:53.244077772 -0500 +@@ -62,11 +62,9 @@ if (enable_me2me_host) { + if (is_component_build) { + sources += [ + "$root_build_dir/libbase.so", +- "$root_build_dir/libc++.so", + ] + deps += [ + "//base:base", +- "//buildtools/third_party/libc++:libc++", + ] + } + } diff --git a/chromium-63.0.3289.84-nullfix.patch b/chromium-63.0.3289.84-nullfix.patch new file mode 100644 index 0000000..c66aff1 --- /dev/null +++ b/chromium-63.0.3289.84-nullfix.patch @@ -0,0 +1,43 @@ +diff -up chromium-63.0.3239.84/build/toolchain/linux/BUILD.gn.nullfix chromium-63.0.3239.84/build/toolchain/linux/BUILD.gn +--- chromium-63.0.3239.84/build/toolchain/linux/BUILD.gn.nullfix 2017-12-06 15:05:21.000000000 -0500 ++++ chromium-63.0.3239.84/build/toolchain/linux/BUILD.gn 2017-12-07 10:44:34.507207080 -0500 +@@ -31,6 +31,7 @@ gcc_toolchain("arm64") { + ld = cxx + readelf = "${toolprefix}readelf" + nm = "${toolprefix}nm" ++ extra_cppflags = "-fno-delete-null-pointer-checks" + + toolchain_args = { + current_cpu = "arm64" +@@ -49,6 +50,7 @@ gcc_toolchain("arm") { + ld = cxx + readelf = "${toolprefix}readelf" + nm = "${toolprefix}nm" ++ extra_cppflags = "-fno-delete-null-pointer-checks" + + toolchain_args = { + current_cpu = "arm" +@@ -99,6 +101,7 @@ gcc_toolchain("x86") { + nm = "nm" + ar = "ar" + ld = cxx ++ extra_cppflags = "-fno-delete-null-pointer-checks" + + # Output linker map files for binary size analysis. + enable_linker_map = true +@@ -152,6 +155,7 @@ gcc_toolchain("x64") { + nm = "nm" + ar = "ar" + ld = cxx ++ extra_cppflags = "-fno-delete-null-pointer-checks" + + # Output linker map files for binary size analysis. + enable_linker_map = true +@@ -186,6 +190,7 @@ gcc_toolchain("mipsel") { + ld = cxx + readelf = "${toolprefix}readelf" + nm = "${toolprefix}nm" ++ extra_cppflags = "-fno-delete-null-pointer-checks" + + toolchain_args = { + cc_wrapper = "" diff --git a/chromium-63.0.3289.84-setopaque.patch b/chromium-63.0.3289.84-setopaque.patch new file mode 100644 index 0000000..8fb585a --- /dev/null +++ b/chromium-63.0.3289.84-setopaque.patch @@ -0,0 +1,12 @@ +diff -up chromium-63.0.3239.84/cc/blink/web_layer_impl.h.setopaque chromium-63.0.3239.84/cc/blink/web_layer_impl.h +--- chromium-63.0.3239.84/cc/blink/web_layer_impl.h.setopaque 2017-12-07 10:47:48.262446682 -0500 ++++ chromium-63.0.3239.84/cc/blink/web_layer_impl.h 2017-12-07 10:48:47.437298948 -0500 +@@ -67,7 +67,7 @@ class CC_BLINK_EXPORT WebLayerImpl : pub + void SetIsRootForIsolatedGroup(bool root) override; + bool IsRootForIsolatedGroup() override; + void SetHitTestableWithoutDrawsContent(bool should_hit_test) override; +- void SetOpaque(bool opaque) override; ++ CC_BLINK_EXPORT void SetOpaque(bool opaque) override; + bool Opaque() const override; + void SetPosition(const blink::WebFloatPoint& position) override; + blink::WebFloatPoint GetPosition() const override; diff --git a/chromium.spec b/chromium.spec index 5928e92..f9ee009 100644 --- a/chromium.spec +++ b/chromium.spec @@ -26,7 +26,7 @@ # Requires is trickier. %global __provides_exclude_from %{chromium_path}/.*\\.so|%{chromium_path}/lib/.*\\.so -%global privlibs libEGL|libGLESv2|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_swapchain|libVkLayer_threading|libVkLayer_unique_objects|libaccessibility|libanimation|libaura|libaura_extra|libbase|libbase_i18n|libbindings|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core|libblink_modules|libblink_mojo_bindings_shared|libblink_offscreen_canvas_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcc|libcc_animation|libcc_base|libcc_blink|libcc_debug|libcc_ipc|libcc_paint|libcdm_manager|libchromium_sqlite3|libclearkeycdm|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_gamepad|libdevice_vr_mojo_bindings|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevices|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libembedder|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libfingerprint|libffmpeg|libgcm|libgeolocation|libgeometry|libgeometry_skia|libgesture_detection|libgfx|libgfx_ipc|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_switches|libgfx_x11|libgin|libgl_in_process_context|libgl_init|libgl_wrapper|libgles2_c_lib|libgles2_implementation|libgles2_utils|libgpu|libgtk3ui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc|libipc_mojom|libipc_mojom_shared|libjs|libkeyboard|libkeyboard_with_content|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libmanager|libmedia|libmedia_blink|libmedia_gpu|libmedia_mojo_services|libmessage_center|libmetrics_cpp|libmidi|libmirclient.9|libmojo_common_lib|libmojo_ime_lib|libmojo_public_system|libmojo_public_system_cpp|libmojo_system_impl|libnative_theme|libnet|libnet_with_v8|libonc|libplatform|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|librange|libresource_coordinator_cpp|libresource_coordinator_public_interfaces_internal_shared|libsandbox_services|libseccomp_bpf|libsensors|libservice|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom|libservice_manager_mojom_blink|libservice_manager_mojom_constants|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_shared|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libui_base|libui_base_ime|libui_base_x|libui_data_pack|libui_devtools|libui_touch_selection|libui_views_mus_lib|liburl|liburl_ipc|liburl_matcher|libuser_manager|libuser_prefs|libv8|libv8_libbase|libv8_libplatform|libviews|libviz_common|libviz_resource_format|libweb_dialogs|libwebdata_common|libwebview|libwidevinecdm|libwidevinecdmadapter|libwm|libwm_public|libwtf|libx11_events_platform|libx11_window +%global privlibs libaccessibility|libanimation|libaura_extra|libaura|libbase_i18n|libbase|libbindings|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core|libblink_modules|libblink_mojo_bindings_shared|libblink_offscreen_canvas_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcc_animation|libcc_base|libcc_blink|libcc_debug|libcc_ipc|libcc_paint|libcc|libcdm_manager|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent|libcpp|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_gamepad|libdevices|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevice_vr_mojo_bindings|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libembedder|libembedder_switches|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents|libevents_x|libffmpeg|libfingerprint|libfreetype_harfbuzz|libgcm|libgeolocation|libgeometry_skia|libgeometry|libgesture_detection|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_switches|libgfx_x11|libgin|libgles2_c_lib|libgles2_implementation|libgles2_utils|libGLESv2|libgl_init|libgl_in_process_context|libgl_wrapper|libgpu|libgtk3ui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc_mojom_shared|libipc_mojom|libipc|libjs|libkeyboard|libkeyboard_with_content|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libmanager|libmedia_blink|libmedia_gpu|libmedia_mojo_services|libmedia|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmojo_common_lib|libmojo_ime_lib|libmojo_public_system_cpp|libmojo_public_system|libmojo_system_impl|libnative_theme|libnet|libnet_with_v8|libonc|libplatform|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|librange|libresource_coordinator_cpp|libresource_coordinator_public_interfaces_internal_shared|libsandbox_services|libsandbox|libseccomp_bpf|libsensors|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom_blink|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_constants|libservice_manager_mojom_shared|libservice_manager_mojom|libservice|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_devtools|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libuser_manager|libuser_prefs|libv8_libbase|libv8_libplatform|libv8|libviews|libviz_common|libviz_resource_format|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_swapchain|libVkLayer_threading|libVkLayer_unique_objects|libwebdata_common|libweb_dialogs|libwebview|libwidevinecdmadapter|libwidevinecdm|libwm_public|libwm|libwtf|libx11_events_platform|libx11_window %global __requires_exclude ^(%{privlibs})\\.so # If we build with shared on, then chrome-remote-desktop depends on chromium libs. @@ -92,9 +92,9 @@ BuildRequires: libicu-devel >= 5.4 %global bundlelibpng 0 %endif -# Needs at least harfbuzz 1.4.2 now. +# Needs at least harfbuzz 1.5.0 now. # 2017-06-12 -%if 0%{?fedora} < 26 +%if 0%{?fedora} < 28 %global bundleharfbuzz 1 %else %global bundleharfbuzz 0 @@ -109,14 +109,14 @@ BuildRequires: libicu-devel >= 5.4 %global default_client_secret miEreAep8nuvTdvLums6qyLK %global chromoting_client_id 449907151817-8vnlfih032ni8c4jjps9int9t86k546t.apps.googleusercontent.com -%global majorversion 62 +%global majorversion 63 %if %{freeworld} Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3202.89 +Version: %{majorversion}.0.3239.84 Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home @@ -143,8 +143,6 @@ Patch9: chromium-48.0.2564.116-libusb_interrupt_event_handler.patch Patch12: chromium-55.0.2883.75-cups22.patch # Use PIE in the Linux sandbox (from openSUSE via Russian Fedora) Patch15: chromium-55.0.2883.75-sandbox-pie.patch -# Enable ARM CPU detection for webrtc (from archlinux via Russian Fedora) -Patch16: chromium-52.0.2743.82-arm-webrtc.patch # Use /etc/chromium for master_prefs Patch18: chromium-52.0.2743.82-master-prefs-path.patch # Disable MADV_FREE (if set by glibc) @@ -158,21 +156,21 @@ Patch21: chromium-60.0.3112.78-last-commit-position.patch # Fix issue where timespec is not defined when sys/stat.h is included. Patch22: chromium-53.0.2785.92-boringssl-time-fix.patch # I wouldn't have to do this if there was a standard way to append extra compiler flags -Patch24: chromium-59.0.3071.86-nullfix.patch +Patch24: chromium-63.0.3289.84-nullfix.patch # Add explicit includedir for jpeglib.h Patch25: chromium-54.0.2840.59-jpeg-include-dir.patch # On i686, pass --no-keep-memory --reduce-memory-overheads to ld. Patch26: chromium-59.0.3071.86-i686-ld-memory-tricks.patch # obj/content/renderer/renderer/child_frame_compositing_helper.o: In function `content::ChildFrameCompositingHelper::OnSetSurface(cc::SurfaceId const&, gfx::Size const&, float, cc::SurfaceSequence const&)': # /builddir/build/BUILD/chromium-54.0.2840.90/out/Release/../../content/renderer/child_frame_compositing_helper.cc:214: undefined reference to `cc_blink::WebLayerImpl::setOpaque(bool)' -Patch27: chromium-61.0.3163.79-setopaque.patch +Patch27: chromium-63.0.3289.84-setopaque.patch # Use -fpermissive to build WebKit Patch31: chromium-56.0.2924.87-fpermissive.patch # Fix issue with compilation on gcc7 # Thanks to Ben Noordhuis Patch33: chromium-62.0.3202.62-gcc7.patch # Enable mp3 support -Patch34: chromium-62.0.3202.62-enable-mp3.patch +Patch34: chromium-63.0.3289.84-enable-mp3.patch # Revert https://chromium.googlesource.com/chromium/src/+/b794998819088f76b4cf44c8db6940240c563cf4%5E%21/#F0 # https://bugs.chromium.org/p/chromium/issues/detail?id=712737 # https://bugzilla.redhat.com/show_bug.cgi?id=1446851 @@ -181,9 +179,6 @@ Patch36: chromium-58.0.3029.96-revert-b794998819088f76b4cf44c8db6940240c563cf4.p Patch37: chromium-59.0.3071.86-ffmpeg-stdatomic.patch # Nacl can't die soon enough Patch39: chromium-59.0.3071.86-system-clang.patch -# Change struct ucontext to ucontext_t in breakpad -# https://patchwork.openembedded.org/patch/141358/ -Patch40: chromium-59.0.3071.115-ucontext-fix.patch # Do not prefix libpng functions Patch42: chromium-60.0.3112.78-no-libpng-prefix.patch # Do not mangle libjpeg @@ -194,7 +189,7 @@ Patch45: chromium-60.0.3112.78-no-zlib-mangle.patch Patch46: chromium-62.0.3202.62-kmaxskip-constexpr.patch Patch47: chromium-60.0.3112.90-vulkan-force-c99.patch # Fix mp3 for aarch64 -Patch49: chromium-61.0.3163.79-fix-ffmpeg-aarch64.patch +Patch49: chromium-63.0.3289.84-fix-ffmpeg-aarch64.patch # Fix libavutil include pathing to find arch specific timer.h # For some reason, this only fails on aarch64. No idea why. Patch50: chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch @@ -210,10 +205,13 @@ Patch60: chromium-62.0.3202.62-epel7-no-nullptr-assignment-on-StructPtr.patch # Another gcc 4.8 goods.. Patch61: chromium-62.0.3202.62-rvalue-fix.patch # From gentoo -Patch62: chromium-gcc5-r3.patch -Patch63: chromium-gn-bootstrap-r17.patch -# Fix _cplusplus conditional -Patch64: chromium-62.0.3202.62-correct-cplusplus-check.patch +Patch62: chromium-63.0.3289.84-gcc5-r3.patch +# Do not try to use libc++ in the remoting stack +Patch63: chromium-63.0.3289.84-nolibc++.patch +# Fix freetype and harfbuzz-ng unbundle +Patch64: chromium-63.0.3289.84-fix-ft-hb-unbundle.patch +# To use round with gcc, you need to #include +Patch65: chromium-63.0.3289.84-gcc-round-fix.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ @@ -272,7 +270,7 @@ BuildRequires: libXScrnSaver-devel BuildRequires: libXtst-devel BuildRequires: minizip-devel BuildRequires: nodejs -BuildRequires: nss-devel +BuildRequires: nss-devel >= 3.26 BuildRequires: pciutils-devel BuildRequires: pulseaudio-libs-devel @@ -383,10 +381,8 @@ BuildRequires: ninja-build BuildRequires: devtoolset-7-toolchain, devtoolset-7-libatomic-devel %endif -# We pick up an automatic requires on the library, but we need the version check -# because the nss shared library is unversioned. -# This is to prevent someone from hitting http://code.google.com/p/chromium/issues/detail?id=26448 -Requires: nss%{_isa} >= 3.12.3 +# There is a hardcoded check for nss 3.26 in the chromium code (crypto/nss_util.cc) +Requires: nss%{_isa} >= 3.26 Requires: nss-mdns%{_isa} # GTK modules it expects to find for some reason. @@ -616,7 +612,6 @@ udev. %patch9 -p1 -b .modern-libusbx %patch12 -p1 -b .cups22 %patch15 -p1 -b .sandboxpie -%patch16 -p1 -b .armwebrtc %patch18 -p1 -b .etc # %%patch19 -p1 -b .madv_free %patch20 -p1 -b .gnsystem @@ -637,7 +632,6 @@ udev. %patch36 -p1 -b .revert %patch37 -p1 -b .ffmpeg-stdatomic %patch39 -p1 -b .system-clang -%patch40 -p1 -b .ucontextfix %patch42 -p1 -b .noprefix %patch43 -p1 -b .nomangle %patch45 -p1 -b .nozmangle @@ -655,8 +649,9 @@ udev. %patch57 -p1 -b .aarch64glibc %endif %patch62 -p1 -b .gcc5-r3 -%patch63 -p1 -b .gn-boostrap-r17 -%patch64 -p1 -b .fix-cplusplus-conditional +%patch63 -p1 -b .nolibc++ +%patch64 -p1 -b .fixunbundle +%patch65 -p1 -b .gcc-round-fix %if 0%{?asan} export CC="clang" @@ -819,10 +814,8 @@ ln -s %{_bindir}/node third_party/node/linux/node-linux-x64/bin/node # Remove most of the bundled libraries. Libraries specified below (taken from # Gentoo's Chromium ebuild) are the libraries that needs to be preserved. build/linux/unbundle/remove_bundled_libraries.py \ -%if 0%{?asan} 'buildtools/third_party/libc++' \ 'buildtools/third_party/libc++abi' \ -%endif 'base/third_party/dmg_fp' \ 'base/third_party/dynamic_annotations' \ 'base/third_party/icu' \ @@ -833,7 +826,6 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'base/third_party/valgrind' \ 'base/third_party/xdg_mime' \ 'base/third_party/xdg_user_dirs' \ - 'breakpad/src/third_party/curl' \ 'chrome/third_party/mozilla_security_manager' \ 'courgette/third_party' \ 'net/third_party/mozilla_security_manager' \ @@ -842,25 +834,28 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/adobe' \ 'third_party/analytics' \ 'third_party/angle' \ - 'third_party/angle/src/common/third_party/murmurhash' \ 'third_party/angle/src/common/third_party/base' \ + 'third_party/angle/src/common/third_party/smhasher' \ 'third_party/angle/src/third_party/compiler' \ 'third_party/angle/src/third_party/libXNVCtrl' \ 'third_party/angle/src/third_party/trace_event' \ 'third_party/blanketjs' \ + 'third_party/blink' \ 'third_party/boringssl' \ + 'third_party/breakpad' \ + 'third_party/breakpad/breakpad/src/third_party/curl' \ 'third_party/brotli' \ 'third_party/cacheinvalidation' \ 'third_party/catapult' \ - 'third_party/catapult/third_party/polymer' \ - 'third_party/catapult/third_party/py_vulcanize' \ - 'third_party/catapult/third_party/py_vulcanize/third_party/rcssmin' \ - 'third_party/catapult/third_party/py_vulcanize/third_party/rjsmin' \ + 'third_party/catapult/common/py_vulcanize/third_party/rcssmin' \ + 'third_party/catapult/common/py_vulcanize/third_party/rjsmin' \ + 'third_party/catapult/third_party/polymer' \ 'third_party/catapult/tracing/third_party/d3' \ 'third_party/catapult/tracing/third_party/gl-matrix' \ 'third_party/catapult/tracing/third_party/jszip' \ 'third_party/catapult/tracing/third_party/mannwhitneyu' \ 'third_party/catapult/tracing/third_party/oboe' \ + 'third_party/catapult/tracing/third_party/pako' \ 'third_party/ced' \ 'third_party/cld_2' \ 'third_party/cld_3' \ @@ -1367,7 +1362,7 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %doc chrome_policy_list.html *.json %license LICENSE %config %{_sysconfdir}/%{name}/ -# %%dir %{_sysconfdir}/%{name}/native-messaging-hosts +# %%dir %%{_sysconfdir}/%%{name}/native-messaging-hosts # This is chrome-remote-desktop stuff %exclude %{_sysconfdir}/%{name}/native-messaging-hosts/* %{_bindir}/%{chromium_browser_channel} @@ -1404,59 +1399,59 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/pyproto/ %{chromium_path}/resources/ %dir %{chromium_path}/locales/ -%lang(am) %{chromium_path}/locales/am.pak -%lang(ar) %{chromium_path}/locales/ar.pak -%lang(bg) %{chromium_path}/locales/bg.pak -%lang(bn) %{chromium_path}/locales/bn.pak -%lang(ca) %{chromium_path}/locales/ca.pak -%lang(cs) %{chromium_path}/locales/cs.pak -%lang(da) %{chromium_path}/locales/da.pak -%lang(de) %{chromium_path}/locales/de.pak -%lang(el) %{chromium_path}/locales/el.pak -%lang(en_GB) %{chromium_path}/locales/en-GB.pak -%lang(en_US) %{chromium_path}/locales/en-US.pak -%lang(es) %{chromium_path}/locales/es.pak -%lang(es) %{chromium_path}/locales/es-419.pak -%lang(et) %{chromium_path}/locales/et.pak -%lang(fa) %{chromium_path}/locales/fa.pak -%lang(fi) %{chromium_path}/locales/fi.pak -%lang(fil) %{chromium_path}/locales/fil.pak -%lang(fr) %{chromium_path}/locales/fr.pak -%lang(gu) %{chromium_path}/locales/gu.pak -%lang(he) %{chromium_path}/locales/he.pak -%lang(hi) %{chromium_path}/locales/hi.pak -%lang(hr) %{chromium_path}/locales/hr.pak -%lang(hu) %{chromium_path}/locales/hu.pak -%lang(id) %{chromium_path}/locales/id.pak -%lang(it) %{chromium_path}/locales/it.pak -%lang(ja) %{chromium_path}/locales/ja.pak -%lang(kn) %{chromium_path}/locales/kn.pak -%lang(ko) %{chromium_path}/locales/ko.pak -%lang(lt) %{chromium_path}/locales/lt.pak -%lang(lv) %{chromium_path}/locales/lv.pak -%lang(ml) %{chromium_path}/locales/ml.pak -%lang(mr) %{chromium_path}/locales/mr.pak -%lang(ms) %{chromium_path}/locales/ms.pak -%lang(nb) %{chromium_path}/locales/nb.pak -%lang(nl) %{chromium_path}/locales/nl.pak -%lang(pl) %{chromium_path}/locales/pl.pak -%lang(pt_BR) %{chromium_path}/locales/pt-BR.pak -%lang(pt_PT) %{chromium_path}/locales/pt-PT.pak -%lang(ro) %{chromium_path}/locales/ro.pak -%lang(ru) %{chromium_path}/locales/ru.pak -%lang(sk) %{chromium_path}/locales/sk.pak -%lang(sl) %{chromium_path}/locales/sl.pak -%lang(sr) %{chromium_path}/locales/sr.pak -%lang(sv) %{chromium_path}/locales/sv.pak -%lang(sw) %{chromium_path}/locales/sw.pak -%lang(ta) %{chromium_path}/locales/ta.pak -%lang(te) %{chromium_path}/locales/te.pak -%lang(th) %{chromium_path}/locales/th.pak -%lang(tr) %{chromium_path}/locales/tr.pak -%lang(uk) %{chromium_path}/locales/uk.pak -%lang(vi) %{chromium_path}/locales/vi.pak -%lang(zh_CN) %{chromium_path}/locales/zh-CN.pak -%lang(zh_TW) %{chromium_path}/locales/zh-TW.pak +%lang(am) %{chromium_path}/locales/am.pak* +%lang(ar) %{chromium_path}/locales/ar.pak* +%lang(bg) %{chromium_path}/locales/bg.pak* +%lang(bn) %{chromium_path}/locales/bn.pak* +%lang(ca) %{chromium_path}/locales/ca.pak* +%lang(cs) %{chromium_path}/locales/cs.pak* +%lang(da) %{chromium_path}/locales/da.pak* +%lang(de) %{chromium_path}/locales/de.pak* +%lang(el) %{chromium_path}/locales/el.pak* +%lang(en_GB) %{chromium_path}/locales/en-GB.pak* +%lang(en_US) %{chromium_path}/locales/en-US.pak* +%lang(es) %{chromium_path}/locales/es.pak* +%lang(es) %{chromium_path}/locales/es-419.pak* +%lang(et) %{chromium_path}/locales/et.pak* +%lang(fa) %{chromium_path}/locales/fa.pak* +%lang(fi) %{chromium_path}/locales/fi.pak* +%lang(fil) %{chromium_path}/locales/fil.pak* +%lang(fr) %{chromium_path}/locales/fr.pak* +%lang(gu) %{chromium_path}/locales/gu.pak* +%lang(he) %{chromium_path}/locales/he.pak* +%lang(hi) %{chromium_path}/locales/hi.pak* +%lang(hr) %{chromium_path}/locales/hr.pak* +%lang(hu) %{chromium_path}/locales/hu.pak* +%lang(id) %{chromium_path}/locales/id.pak* +%lang(it) %{chromium_path}/locales/it.pak* +%lang(ja) %{chromium_path}/locales/ja.pak* +%lang(kn) %{chromium_path}/locales/kn.pak* +%lang(ko) %{chromium_path}/locales/ko.pak* +%lang(lt) %{chromium_path}/locales/lt.pak* +%lang(lv) %{chromium_path}/locales/lv.pak* +%lang(ml) %{chromium_path}/locales/ml.pak* +%lang(mr) %{chromium_path}/locales/mr.pak* +%lang(ms) %{chromium_path}/locales/ms.pak* +%lang(nb) %{chromium_path}/locales/nb.pak* +%lang(nl) %{chromium_path}/locales/nl.pak* +%lang(pl) %{chromium_path}/locales/pl.pak* +%lang(pt_BR) %{chromium_path}/locales/pt-BR.pak* +%lang(pt_PT) %{chromium_path}/locales/pt-PT.pak* +%lang(ro) %{chromium_path}/locales/ro.pak* +%lang(ru) %{chromium_path}/locales/ru.pak* +%lang(sk) %{chromium_path}/locales/sk.pak* +%lang(sl) %{chromium_path}/locales/sl.pak* +%lang(sr) %{chromium_path}/locales/sr.pak* +%lang(sv) %{chromium_path}/locales/sv.pak* +%lang(sw) %{chromium_path}/locales/sw.pak* +%lang(ta) %{chromium_path}/locales/ta.pak* +%lang(te) %{chromium_path}/locales/te.pak* +%lang(th) %{chromium_path}/locales/th.pak* +%lang(tr) %{chromium_path}/locales/tr.pak* +%lang(uk) %{chromium_path}/locales/uk.pak* +%lang(vi) %{chromium_path}/locales/vi.pak* +%lang(zh_CN) %{chromium_path}/locales/zh-CN.pak* +%lang(zh_TW) %{chromium_path}/locales/zh-TW.pak* %files headless %{chromium_path}/headless_shell @@ -1513,6 +1508,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Thu Dec 7 2017 Tom Callaway 63.0.3239.84-1 +- update to 63.0.3239.84 + * Wed Nov 8 2017 Tom Callaway 62.0.3202.89-1 - update to 62.0.3202.89 diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index 3ee3bf8..d448da3 100755 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -197,10 +197,13 @@ manual_files=" libavcodec/aarch64/fft_neon.S \ libavcodec/aarch64/mdct_neon.S \ libavcodec/aarch64/vorbisdsp_neon.S \ libavcodec/x86/hpeldsp_rnd_template.c \ + libavcodec/x86/mdct15.asm \ + libavcodec/x86/mdct15_init.c \ libavcodec/x86/rnd_template.c \ libavcodec/x86/videodsp.asm \ libavcodec/x86/videodsp_init.c \ libavcodec/x86/vorbisdsp_init.c \ + libavcodec/autorename_libavcodec_mdct15.c \ libavcodec/bit_depth_template.c \ libavcodec/fft_template.c \ libavcodec/flacdec.c \ @@ -210,6 +213,7 @@ manual_files=" libavcodec/aarch64/fft_neon.S \ libavcodec/h264pred_template.c \ libavcodec/hpel_template.c \ libavcodec/hpeldsp.c \ + libavcodec/mdct15.c \ libavcodec/mdct_template.c \ libavcodec/pel_template.c \ libavcodec/utils.c \ diff --git a/sources b/sources index c0429f5..ec0668d 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 -SHA512 (chromium-62.0.3202.89-clean.tar.xz) = b1a8720ea61c5c71a0ff15a278f20e7d0d3218814f883ce2d5f6e949fb9dd61ac6d4cc6b4c517eb13b11b308593e648bde2f3de48ece390d5647670725b8f5d9 +SHA512 (chromium-63.0.3239.84-clean.tar.xz) = 1b2551b8dcaf8eecd0a5fb69a458034f30a73bb22f8c7521cbac14d9c2621c9468a7b7f6cb17b2715adee491d10510958bf08f8aa6277d8829e149906903b7be From 42ed3387ba51a57ed74bf5b7ce4e1a4c7591cd14 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 12 Dec 2017 09:59:11 -0500 Subject: [PATCH 0162/1449] fix aarch64 patch --- chromium-63.0.3289.84-aarch64-glibc-2.26.90.patch | 12 ++++++++++++ chromium.spec | 2 +- 2 files changed, 13 insertions(+), 1 deletion(-) create mode 100644 chromium-63.0.3289.84-aarch64-glibc-2.26.90.patch diff --git a/chromium-63.0.3289.84-aarch64-glibc-2.26.90.patch b/chromium-63.0.3289.84-aarch64-glibc-2.26.90.patch new file mode 100644 index 0000000..469d680 --- /dev/null +++ b/chromium-63.0.3289.84-aarch64-glibc-2.26.90.patch @@ -0,0 +1,12 @@ +diff -up chromium-63.0.3239.84/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc.aarch64glibc chromium-63.0.3239.84/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc +--- chromium-63.0.3239.84/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc.aarch64glibc 2017-12-12 09:56:24.469343868 -0500 ++++ chromium-63.0.3239.84/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc 2017-12-12 09:56:38.468071095 -0500 +@@ -461,7 +461,7 @@ bool ExceptionHandler::HandleSignal(int + #if defined(__aarch64__) + ucontext_t* uc_ptr = (ucontext_t*)uc; + struct fpsimd_context* fp_ptr = +- (struct fpsimd_context*)&uc_ptr->uc_mcontext.__reserved; ++ (struct fpsimd_context*)&uc_ptr->uc_mcontext.__glibc_reserved1; + if (fp_ptr->head.magic == FPSIMD_MAGIC) { + memcpy(&g_crash_context_.float_state, fp_ptr, + sizeof(g_crash_context_.float_state)); diff --git a/chromium.spec b/chromium.spec index f9ee009..d422b33 100644 --- a/chromium.spec +++ b/chromium.spec @@ -196,7 +196,7 @@ Patch50: chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch # from gentoo Patch53: chromium-61.0.3163.79-gcc-no-opt-safe-math.patch # Only needed when glibc 2.26.90 or later is used -Patch57: chromium-61.0.3163.79-aarch64-glibc-2.26.90.patch +Patch57: chromium-63.0.3289.84-aarch64-glibc-2.26.90.patch # More gcc fixes for epel Patch58: chromium-62.0.3202.62-dde535-gcc-fix.patch Patch59: chromium-62.0.3202.62-gcc-nc.patch From b18325ee01005888523fc777b6e8ad82a11c1816 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 12 Dec 2017 11:44:08 -0500 Subject: [PATCH 0163/1449] new sources for aarch64 --- clean_ffmpeg.sh | 3 ++- sources | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index d448da3..1f0b1ee 100755 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -238,7 +238,8 @@ manual_files=" libavcodec/aarch64/fft_neon.S \ libavutil/x86/x86inc.asm \ libavutil/x86/x86util.asm " -mp3_files=" libavcodec/aarch64/mpegaudiodsp_init.c \ +mp3_files=" libavcodec/aarch64/aacpsdsp_init_aarch64.c \ + libavcodec/aarch64/mpegaudiodsp_init.c \ libavcodec/aarch64/mpegaudiodsp_neon.S \ libavcodec/aac_ac3_parser.c \ libavcodec/aac_parser.c \ diff --git a/sources b/sources index ec0668d..a02c98c 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 -SHA512 (chromium-63.0.3239.84-clean.tar.xz) = 1b2551b8dcaf8eecd0a5fb69a458034f30a73bb22f8c7521cbac14d9c2621c9468a7b7f6cb17b2715adee491d10510958bf08f8aa6277d8829e149906903b7be +SHA512 (chromium-63.0.3239.84-clean.tar.xz) = 710ef4c71b96ce5934c5d4382c55f76b34e5d1338c783d99fd3341ae3c955ef476bcbb6ef2c7d5ae477e92ba048558e9cf5085f7585b8b34e7d10b07d5f6cae7 From 70ab91a31213a4b0e62359df87977e7dfe1a309a Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 12 Dec 2017 13:03:57 -0500 Subject: [PATCH 0164/1449] moar aarch64 files --- clean_ffmpeg.sh | 1 + sources | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index 1f0b1ee..e801901 100755 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -241,6 +241,7 @@ manual_files=" libavcodec/aarch64/fft_neon.S \ mp3_files=" libavcodec/aarch64/aacpsdsp_init_aarch64.c \ libavcodec/aarch64/mpegaudiodsp_init.c \ libavcodec/aarch64/mpegaudiodsp_neon.S \ + libavcodec/aarch64/sbrdsp_init_aarch64.c \ libavcodec/aac_ac3_parser.c \ libavcodec/aac_parser.c \ libavcodec/aacadtsdec.c \ diff --git a/sources b/sources index a02c98c..695a1c6 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 -SHA512 (chromium-63.0.3239.84-clean.tar.xz) = 710ef4c71b96ce5934c5d4382c55f76b34e5d1338c783d99fd3341ae3c955ef476bcbb6ef2c7d5ae477e92ba048558e9cf5085f7585b8b34e7d10b07d5f6cae7 +SHA512 (chromium-63.0.3239.84-clean.tar.xz) = 7deff8fc3997f416de47d2f4c560539fc87e59b478a8b337edfba8bc659740d9c9d9e32a90ff0aded27d4f5bcabbeb9bfa0469f78feb59f773e247d3d0faa816 From b9fa76f1dcd1935e6edb40d2c58bf5d24b6e8304 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 12 Dec 2017 15:39:16 -0500 Subject: [PATCH 0165/1449] moar moar aarch64 files --- clean_ffmpeg.sh | 1 + sources | 1 + 2 files changed, 2 insertions(+) diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index e801901..e1d56d4 100755 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -239,6 +239,7 @@ manual_files=" libavcodec/aarch64/fft_neon.S \ libavutil/x86/x86util.asm " mp3_files=" libavcodec/aarch64/aacpsdsp_init_aarch64.c \ + libavcodec/aarch64/autorename_libavcodec_aarch64_aacpsdsp_neon.S \ libavcodec/aarch64/mpegaudiodsp_init.c \ libavcodec/aarch64/mpegaudiodsp_neon.S \ libavcodec/aarch64/sbrdsp_init_aarch64.c \ diff --git a/sources b/sources index 695a1c6..fd82624 100644 --- a/sources +++ b/sources @@ -1,2 +1,3 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 SHA512 (chromium-63.0.3239.84-clean.tar.xz) = 7deff8fc3997f416de47d2f4c560539fc87e59b478a8b337edfba8bc659740d9c9d9e32a90ff0aded27d4f5bcabbeb9bfa0469f78feb59f773e247d3d0faa816 +SHA512 (chromium-63.0.3239.84-clean.tar.xz) = 47799417f4b1db6e8b540cba6e30f26c4fa047d06abc1514ce84649568bf0e6e6a1795609b55b5b18be538f089843b18b92fb1e809cdb2584e0a3a58ff80cdbb From 3698ffd61464a4eacb1c9ebaec85bb018d268a9a Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 12 Dec 2017 15:39:55 -0500 Subject: [PATCH 0166/1449] moar moar aarch64 files --- sources | 1 - 1 file changed, 1 deletion(-) diff --git a/sources b/sources index fd82624..aa5539e 100644 --- a/sources +++ b/sources @@ -1,3 +1,2 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 -SHA512 (chromium-63.0.3239.84-clean.tar.xz) = 7deff8fc3997f416de47d2f4c560539fc87e59b478a8b337edfba8bc659740d9c9d9e32a90ff0aded27d4f5bcabbeb9bfa0469f78feb59f773e247d3d0faa816 SHA512 (chromium-63.0.3239.84-clean.tar.xz) = 47799417f4b1db6e8b540cba6e30f26c4fa047d06abc1514ce84649568bf0e6e6a1795609b55b5b18be538f089843b18b92fb1e809cdb2584e0a3a58ff80cdbb From eac1e3983c8b82df515266bf06daada87b817c51 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 12 Dec 2017 16:14:12 -0500 Subject: [PATCH 0167/1449] moar moar moar aarch64 files --- clean_ffmpeg.sh | 1 + sources | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index e1d56d4..daa5538 100755 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -240,6 +240,7 @@ manual_files=" libavcodec/aarch64/fft_neon.S \ mp3_files=" libavcodec/aarch64/aacpsdsp_init_aarch64.c \ libavcodec/aarch64/autorename_libavcodec_aarch64_aacpsdsp_neon.S \ + libavcodec/aarch64/autorename_libavcodec_aarch64_sbrdsp_neon.S \ libavcodec/aarch64/mpegaudiodsp_init.c \ libavcodec/aarch64/mpegaudiodsp_neon.S \ libavcodec/aarch64/sbrdsp_init_aarch64.c \ diff --git a/sources b/sources index aa5539e..c3f64e1 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 -SHA512 (chromium-63.0.3239.84-clean.tar.xz) = 47799417f4b1db6e8b540cba6e30f26c4fa047d06abc1514ce84649568bf0e6e6a1795609b55b5b18be538f089843b18b92fb1e809cdb2584e0a3a58ff80cdbb +SHA512 (chromium-63.0.3239.84-clean.tar.xz) = fbe7e2f2afc50119687c09feb52ae7855a5ee5dd7b37889b18d5bec230faeb3b70181080d0197689ba016cd3bae195b6217d28e249c3ede94efedc8ca9c97e17 From 7bb0a21760b69f8f2af3386e1489d6768c16a491 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Thu, 14 Dec 2017 11:57:05 +0100 Subject: [PATCH 0168/1449] Don't require libcanberra-gtk2 GTK+ 3 build is enabled But require libcanberra-gtk3. Also remove provides for bundled gtk3 as it's not bundling one. --- chromium.spec | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/chromium.spec b/chromium.spec index d422b33..15f464e 100644 --- a/chromium.spec +++ b/chromium.spec @@ -254,9 +254,6 @@ BuildRequires: fontconfig-devel BuildRequires: GConf2-devel BuildRequires: glib2-devel BuildRequires: gnome-keyring-devel -BuildRequires: gtk2-devel -# Yes. This too. -# BuildRequires: gtk3-devel BuildRequires: glibc-devel BuildRequires: gperf BuildRequires: libatomic @@ -353,6 +350,8 @@ BuildRequires: opus-devel BuildRequires: perl(Switch) %if 0%{gtk3} BuildRequires: pkgconfig(gtk+-3.0) +%else +BuildRequires: pkgconfig(gtk+-2.0) %endif BuildRequires: pulseaudio-libs-devel BuildRequires: python-beautifulsoup4 @@ -386,7 +385,11 @@ Requires: nss%{_isa} >= 3.26 Requires: nss-mdns%{_isa} # GTK modules it expects to find for some reason. +%if 0%{gtk3} +Requires: libcanberra-gtk3%{_isa} +%else Requires: libcanberra-gtk2%{_isa} +%endif %if 0%{?fedora} # This enables support for u2f tokens @@ -438,7 +441,6 @@ Provides: bundled(ffmpeg) = 3.2git Provides: bundled(fips181) = 2.2.3 Provides: bundled(fontconfig) = 2.11.0 Provides: bundled(gperftools) = svn144 -Provides: bundled(gtk3) = 3.1.4 %if 0%{?bundleharfbuzz} Provides: bundled(harfbuzz) = 1.4.2 %endif From 7d49b3d7e2f181e909b6bde9e4bd4fbe7f152b1d Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Thu, 14 Dec 2017 15:50:23 +0100 Subject: [PATCH 0169/1449] Add missing ffmpeg files on aarch64 --- clean_ffmpeg.sh | 2 ++ sources | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index daa5538..984a1a3 100755 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -239,11 +239,13 @@ manual_files=" libavcodec/aarch64/fft_neon.S \ libavutil/x86/x86util.asm " mp3_files=" libavcodec/aarch64/aacpsdsp_init_aarch64.c \ + libavcodec/aarch64/aacpsdsp_neon.S \ libavcodec/aarch64/autorename_libavcodec_aarch64_aacpsdsp_neon.S \ libavcodec/aarch64/autorename_libavcodec_aarch64_sbrdsp_neon.S \ libavcodec/aarch64/mpegaudiodsp_init.c \ libavcodec/aarch64/mpegaudiodsp_neon.S \ libavcodec/aarch64/sbrdsp_init_aarch64.c \ + libavcodec/aarch64/sbrdsp_neon.S \ libavcodec/aac_ac3_parser.c \ libavcodec/aac_parser.c \ libavcodec/aacadtsdec.c \ diff --git a/sources b/sources index c3f64e1..6f9d15b 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 -SHA512 (chromium-63.0.3239.84-clean.tar.xz) = fbe7e2f2afc50119687c09feb52ae7855a5ee5dd7b37889b18d5bec230faeb3b70181080d0197689ba016cd3bae195b6217d28e249c3ede94efedc8ca9c97e17 +SHA512 (chromium-63.0.3239.84-clean.tar.xz) = b3cfc3e057ce0e182151fef6950b2d203720cee6b3557b8db780bf95e48a23f040f10ed30fe3384321e960f2adbe36b4e47f45144fea5800ddce1ebeca8085c8 From 41a88702e4b9228facf32ecd190afa4daf4908c7 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 15 Dec 2017 09:40:28 +0100 Subject: [PATCH 0170/1449] Update to 63.0.3239.108 --- .gitignore | 1 + chromium.spec | 5 ++++- sources | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index f261d90..2e1d151 100644 --- a/.gitignore +++ b/.gitignore @@ -34,3 +34,4 @@ /chromium-62.0.3202.75-clean.tar.xz /chromium-62.0.3202.89-clean.tar.xz /chromium-63.0.3239.84-clean.tar.xz +/chromium-63.0.3239.108-clean.tar.xz diff --git a/chromium.spec b/chromium.spec index 15f464e..971cdb6 100644 --- a/chromium.spec +++ b/chromium.spec @@ -116,7 +116,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3239.84 +Version: %{majorversion}.0.3239.108 Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home @@ -1510,6 +1510,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Fri Dec 15 2017 Tomas Popela 63.0.3239.108-1 +- Update to 63.0.3239.108 + * Thu Dec 7 2017 Tom Callaway 63.0.3239.84-1 - update to 63.0.3239.84 diff --git a/sources b/sources index 6f9d15b..e9f4e80 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 -SHA512 (chromium-63.0.3239.84-clean.tar.xz) = b3cfc3e057ce0e182151fef6950b2d203720cee6b3557b8db780bf95e48a23f040f10ed30fe3384321e960f2adbe36b4e47f45144fea5800ddce1ebeca8085c8 +SHA512 (chromium-63.0.3239.108-clean.tar.xz) = 565c0e6c94ceae506a69d7d14b2ebbffcab72635b4168e35a433dcc726ab768a46667705b9e25c02500e3b5a1aa11e19730ae4985b1ef292e8ff976286c5094a From dfd304e9d46259d17d6f7500bcc24f08eb6092e6 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 15 Dec 2017 10:13:25 +0100 Subject: [PATCH 0171/1449] Add python2 as BR --- chromium.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/chromium.spec b/chromium.spec index 971cdb6..c9df3cc 100644 --- a/chromium.spec +++ b/chromium.spec @@ -354,6 +354,7 @@ BuildRequires: pkgconfig(gtk+-3.0) BuildRequires: pkgconfig(gtk+-2.0) %endif BuildRequires: pulseaudio-libs-devel +BuildRequires: python2 BuildRequires: python-beautifulsoup4 BuildRequires: python-BeautifulSoup BuildRequires: python-html5lib From 867ed1fbbcab78ecb4c7bfdab0b9e31e97f30f62 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 26 Jan 2018 22:48:09 -0500 Subject: [PATCH 0172/1449] 64.0.3282.119 --- .gitignore | 1 + chromium-64.0.3282.119-enable-mp3.patch | 54 +++++++++++++ chromium-64.0.3282.119-ffmpeg-stdatomic.patch | 17 +++++ ...mium-64.0.3282.119-gcc-constexpr-fix.patch | 70 +++++++++++++++++ chromium-64.0.3282.119-gcc-round-fix.patch | 12 +++ chromium-64.0.3282.119-gcc5-r3.patch | 75 +++++++++++++++++++ chromium-64.0.3282.119-gcc5.patch | 57 ++++++++++++++ chromium-64.0.3282.119-gcc7.patch | 11 +++ chromium-64.0.3282.119-memcpy-fix.patch | 11 +++ chromium.spec | 39 ++++++---- clean_ffmpeg.sh | 8 +- sources | 2 +- 12 files changed, 338 insertions(+), 19 deletions(-) create mode 100644 chromium-64.0.3282.119-enable-mp3.patch create mode 100644 chromium-64.0.3282.119-ffmpeg-stdatomic.patch create mode 100644 chromium-64.0.3282.119-gcc-constexpr-fix.patch create mode 100644 chromium-64.0.3282.119-gcc-round-fix.patch create mode 100644 chromium-64.0.3282.119-gcc5-r3.patch create mode 100644 chromium-64.0.3282.119-gcc5.patch create mode 100644 chromium-64.0.3282.119-gcc7.patch create mode 100644 chromium-64.0.3282.119-memcpy-fix.patch diff --git a/.gitignore b/.gitignore index 2e1d151..eeccdc8 100644 --- a/.gitignore +++ b/.gitignore @@ -35,3 +35,4 @@ /chromium-62.0.3202.89-clean.tar.xz /chromium-63.0.3239.84-clean.tar.xz /chromium-63.0.3239.108-clean.tar.xz +/chromium-64.0.3282.119-clean.tar.xz diff --git a/chromium-64.0.3282.119-enable-mp3.patch b/chromium-64.0.3282.119-enable-mp3.patch new file mode 100644 index 0000000..849b5ee --- /dev/null +++ b/chromium-64.0.3282.119-enable-mp3.patch @@ -0,0 +1,54 @@ +diff -up chromium-64.0.3282.119/media/base/mime_util_internal.cc.mp3 chromium-64.0.3282.119/media/base/mime_util_internal.cc +--- chromium-64.0.3282.119/media/base/mime_util_internal.cc.mp3 2018-01-24 15:05:48.000000000 -0500 ++++ chromium-64.0.3282.119/media/base/mime_util_internal.cc 2018-01-25 11:18:12.354147726 -0500 +@@ -279,15 +279,19 @@ void MimeUtil::AddSupportedMediaFormats( + CodecSet webm_codecs(webm_audio_codecs); + webm_codecs.insert(webm_video_codecs.begin(), webm_video_codecs.end()); + +-#if BUILDFLAG(USE_PROPRIETARY_CODECS) + const CodecSet mp3_codecs{MP3}; ++#if BUILDFLAG(USE_PROPRIETARY_CODECS) + const CodecSet aac{MPEG2_AAC, MPEG4_AAC}; ++#else ++ const CodecSet aac{}; ++#endif ++ CodecSet mp4_audio_codecs(aac); ++ mp4_audio_codecs.emplace(MP3); + ++#if BUILDFLAG(USE_PROPRIETARY_CODECS) + CodecSet avc_and_aac(aac); + avc_and_aac.emplace(H264); + +- CodecSet mp4_audio_codecs(aac); +- mp4_audio_codecs.emplace(MP3); + mp4_audio_codecs.emplace(FLAC); + #if BUILDFLAG(ENABLE_AC3_EAC3_AUDIO_DEMUXING) + mp4_audio_codecs.emplace(AC3); +@@ -329,10 +333,10 @@ void MimeUtil::AddSupportedMediaFormats( + AddContainerWithCodecs("application/ogg", ogg_codecs, false); + AddContainerWithCodecs("audio/flac", implicit_codec, false); + +-#if BUILDFLAG(USE_PROPRIETARY_CODECS) + AddContainerWithCodecs("audio/mpeg", mp3_codecs, true); // Allow "mp3". + AddContainerWithCodecs("audio/mp3", implicit_codec, true); + AddContainerWithCodecs("audio/x-mp3", implicit_codec, true); ++#if BUILDFLAG(USE_PROPRIETARY_CODECS) + AddContainerWithCodecs("audio/aac", implicit_codec, true); // AAC / ADTS. + AddContainerWithCodecs("audio/mp4", mp4_audio_codecs, true); + DCHECK(!mp4_video_codecs.empty()); +@@ -970,7 +974,6 @@ bool MimeUtil::IsCodecProprietary(Codec + case INVALID_CODEC: + case AC3: + case EAC3: +- case MP3: + case MPEG2_AAC: + case MPEG4_AAC: + case H264: +@@ -978,6 +981,7 @@ bool MimeUtil::IsCodecProprietary(Codec + case DOLBY_VISION: + return true; + ++ case MP3: + case PCM: + case VORBIS: + case OPUS: diff --git a/chromium-64.0.3282.119-ffmpeg-stdatomic.patch b/chromium-64.0.3282.119-ffmpeg-stdatomic.patch new file mode 100644 index 0000000..64c5f26 --- /dev/null +++ b/chromium-64.0.3282.119-ffmpeg-stdatomic.patch @@ -0,0 +1,17 @@ +diff -up chromium-64.0.3282.119/third_party/ffmpeg/libavutil/cpu.c.ffmpeg-stdatomic chromium-64.0.3282.119/third_party/ffmpeg/libavutil/cpu.c +--- chromium-64.0.3282.119/third_party/ffmpeg/libavutil/cpu.c.ffmpeg-stdatomic 2018-01-25 11:55:57.880936815 -0500 ++++ chromium-64.0.3282.119/third_party/ffmpeg/libavutil/cpu.c 2018-01-25 11:57:18.456787888 -0500 +@@ -18,7 +18,13 @@ + + #include + #include ++// GCC 4.8 didn't have stdatomic, but was advertising it. ++// https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58016 ++#if !defined(__clang__) && defined(__GNUC__) && (__GNUC__ == 4 || (__GNUC__ == 4 && (__GNUC_MINOR__ == 8))) ++#include ++#else + #include ++#endif + + #include "attributes.h" + #include "cpu.h" diff --git a/chromium-64.0.3282.119-gcc-constexpr-fix.patch b/chromium-64.0.3282.119-gcc-constexpr-fix.patch new file mode 100644 index 0000000..57b63cd --- /dev/null +++ b/chromium-64.0.3282.119-gcc-constexpr-fix.patch @@ -0,0 +1,70 @@ +diff -up chromium-64.0.3282.119/third_party/angle/src/compiler/translator/StaticType.h.gcc-constexpr chromium-64.0.3282.119/third_party/angle/src/compiler/translator/StaticType.h +--- chromium-64.0.3282.119/third_party/angle/src/compiler/translator/StaticType.h.gcc-constexpr 2018-01-25 15:50:16.971171007 -0500 ++++ chromium-64.0.3282.119/third_party/angle/src/compiler/translator/StaticType.h 2018-01-25 15:51:14.158053914 -0500 +@@ -160,7 +160,7 @@ template +-const TType *GetForVecMatHelper(unsigned char primarySize) ++constexpr const TType *GetForVecMatHelper(unsigned char primarySize) + { + static_assert(basicType == EbtFloat || basicType == EbtInt || basicType == EbtUInt || + basicType == EbtBool, +@@ -186,7 +186,7 @@ const TType *GetForVecMatHelper(unsigned + template +-const TType *GetForVecMat(unsigned char primarySize, unsigned char secondarySize = 1) ++constexpr const TType *GetForVecMat(unsigned char primarySize, unsigned char secondarySize = 1) + { + static_assert(basicType == EbtFloat || basicType == EbtInt || basicType == EbtUInt || + basicType == EbtBool, +@@ -208,7 +208,7 @@ const TType *GetForVecMat(unsigned char + } + + template +-const TType *GetForVec(TQualifier qualifier, unsigned char size) ++constexpr const TType *GetForVec(TQualifier qualifier, unsigned char size) + { + switch (qualifier) + { +diff -up chromium-64.0.3282.119/third_party/angle/src/compiler/translator/SymbolTable.cpp.gcc-constexpr chromium-64.0.3282.119/third_party/angle/src/compiler/translator/SymbolTable.cpp +--- chromium-64.0.3282.119/third_party/angle/src/compiler/translator/SymbolTable.cpp.gcc-constexpr 2018-01-25 15:51:27.670790008 -0500 ++++ chromium-64.0.3282.119/third_party/angle/src/compiler/translator/SymbolTable.cpp 2018-01-25 15:52:04.117077652 -0500 +@@ -189,7 +189,7 @@ TSymbolTable::~TSymbolTable() + pop(); + } + +-bool IsGenType(const TType *type) ++constexpr bool IsGenType(const TType *type) + { + if (type) + { +@@ -201,7 +201,7 @@ bool IsGenType(const TType *type) + return false; + } + +-bool IsVecType(const TType *type) ++constexpr bool IsVecType(const TType *type) + { + if (type) + { +diff -up chromium-64.0.3282.119/third_party/angle/src/compiler/translator/Types.h.gcc-constexpr chromium-64.0.3282.119/third_party/angle/src/compiler/translator/Types.h +--- chromium-64.0.3282.119/third_party/angle/src/compiler/translator/Types.h.gcc-constexpr 2018-01-25 15:52:15.042864767 -0500 ++++ chromium-64.0.3282.119/third_party/angle/src/compiler/translator/Types.h 2018-01-25 15:52:56.763049389 -0500 +@@ -236,13 +236,13 @@ class TType + { + } + +- TBasicType getBasicType() const { return type; } ++ constexpr TBasicType getBasicType() const { return type; } + void setBasicType(TBasicType t); + + TPrecision getPrecision() const { return precision; } + void setPrecision(TPrecision p) { precision = p; } + +- TQualifier getQualifier() const { return qualifier; } ++ constexpr TQualifier getQualifier() const { return qualifier; } + void setQualifier(TQualifier q) { qualifier = q; } + + bool isInvariant() const { return invariant; } diff --git a/chromium-64.0.3282.119-gcc-round-fix.patch b/chromium-64.0.3282.119-gcc-round-fix.patch new file mode 100644 index 0000000..465808c --- /dev/null +++ b/chromium-64.0.3282.119-gcc-round-fix.patch @@ -0,0 +1,12 @@ +diff -up chromium-64.0.3282.119/third_party/webrtc/p2p/base/port.cc.gcc-round-fix chromium-64.0.3282.119/third_party/webrtc/p2p/base/port.cc +--- chromium-64.0.3282.119/third_party/webrtc/p2p/base/port.cc.gcc-round-fix 2018-01-25 12:03:14.696443814 -0500 ++++ chromium-64.0.3282.119/third_party/webrtc/p2p/base/port.cc 2018-01-25 12:20:26.446448618 -0500 +@@ -10,7 +10,7 @@ + + #include "p2p/base/port.h" + +-#include ++#include + + #include + #include diff --git a/chromium-64.0.3282.119-gcc5-r3.patch b/chromium-64.0.3282.119-gcc5-r3.patch new file mode 100644 index 0000000..3679ecf --- /dev/null +++ b/chromium-64.0.3282.119-gcc5-r3.patch @@ -0,0 +1,75 @@ +diff -up chromium-64.0.3282.119/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 chromium-64.0.3282.119/gpu/ipc/common/mailbox_struct_traits.h +--- chromium-64.0.3282.119/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 2018-01-24 15:05:47.000000000 -0500 ++++ chromium-64.0.3282.119/gpu/ipc/common/mailbox_struct_traits.h 2018-01-25 11:58:48.251623423 -0500 +@@ -15,7 +15,7 @@ namespace mojo { + template <> + struct StructTraits { + static base::span name(const gpu::Mailbox& mailbox) { +- return mailbox.name; ++ return base::make_span(mailbox.name); + } + static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out); + }; +diff -up chromium-64.0.3282.119/services/viz/public/cpp/compositing/filter_operation_struct_traits.h.gcc5-r3 chromium-64.0.3282.119/services/viz/public/cpp/compositing/filter_operation_struct_traits.h +--- chromium-64.0.3282.119/services/viz/public/cpp/compositing/filter_operation_struct_traits.h.gcc5-r3 2018-01-24 15:05:51.000000000 -0500 ++++ chromium-64.0.3282.119/services/viz/public/cpp/compositing/filter_operation_struct_traits.h 2018-01-25 11:58:48.252623400 -0500 +@@ -137,7 +137,7 @@ struct StructTraits matrix(const cc::FilterOperation& operation) { + if (operation.type() != cc::FilterOperation::COLOR_MATRIX) + return base::span(); +- return operation.matrix(); ++ return base::make_span(operation.matrix()); + } + + static base::span shape( +diff -up chromium-64.0.3282.119/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 chromium-64.0.3282.119/services/viz/public/cpp/compositing/quads_struct_traits.h +--- chromium-64.0.3282.119/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 2018-01-24 15:05:51.000000000 -0500 ++++ chromium-64.0.3282.119/services/viz/public/cpp/compositing/quads_struct_traits.h 2018-01-25 11:58:48.252623400 -0500 +@@ -308,7 +308,7 @@ struct StructTraits vertex_opacity(const viz::DrawQuad& input) { + const viz::TextureDrawQuad* quad = + viz::TextureDrawQuad::MaterialCast(&input); +- return quad->vertex_opacity; ++ return base::make_span(quad->vertex_opacity); + } + + static bool y_flipped(const viz::DrawQuad& input) { +diff -up chromium-64.0.3282.119/third_party/WebKit/Source/platform/exported/WebCORS.cpp.gcc5-r3 chromium-64.0.3282.119/third_party/WebKit/Source/platform/exported/WebCORS.cpp +diff -up chromium-64.0.3282.119/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h.gcc5-r3 chromium-64.0.3282.119/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h +--- chromium-64.0.3282.119/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h.gcc5-r3 2018-01-24 15:06:11.000000000 -0500 ++++ chromium-64.0.3282.119/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h 2018-01-25 11:58:48.253623376 -0500 +@@ -62,7 +62,7 @@ class WTF_EXPORT ArrayBufferContents { + allocation_length_(0), + data_(data), + data_length_(0), +- kind_(AllocationKind::kNormal), ++ kind_(WTF::ArrayBufferContents::AllocationKind::kNormal), + deleter_(deleter) {} + DataHandle(void* allocation_base, + size_t allocation_length, +@@ -93,11 +93,11 @@ class WTF_EXPORT ArrayBufferContents { + reinterpret_cast(allocation_base_) + + allocation_length_); + switch (kind_) { +- case AllocationKind::kNormal: ++ case WTF::ArrayBufferContents::AllocationKind::kNormal: + DCHECK(deleter_); + deleter_(data_); + return; +- case AllocationKind::kReservation: ++ case WTF::ArrayBufferContents::AllocationKind::kReservation: + ReleaseReservedMemory(allocation_base_, allocation_length_); + return; + } +diff -up chromium-64.0.3282.119/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 chromium-64.0.3282.119/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc +--- chromium-64.0.3282.119/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 2018-01-25 11:58:48.253623376 -0500 ++++ chromium-64.0.3282.119/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2018-01-25 12:01:28.769900550 -0500 +@@ -10,7 +10,7 @@ + + #include "modules/audio_processing/aec3/aec_state.h" + +-#include ++#include + + #include + #include diff --git a/chromium-64.0.3282.119-gcc5.patch b/chromium-64.0.3282.119-gcc5.patch new file mode 100644 index 0000000..0fdc39f --- /dev/null +++ b/chromium-64.0.3282.119-gcc5.patch @@ -0,0 +1,57 @@ +diff -up chromium-64.0.3282.119/third_party/webgl/src/specs/latest/2.0/webgl2.idl.gcc5 chromium-64.0.3282.119/third_party/webgl/src/specs/latest/2.0/webgl2.idl +--- chromium-64.0.3282.119/third_party/webgl/src/specs/latest/2.0/webgl2.idl.gcc5 2018-01-25 11:07:27.179175007 -0500 ++++ chromium-64.0.3282.119/third_party/webgl/src/specs/latest/2.0/webgl2.idl 2018-01-25 11:07:38.037925336 -0500 +@@ -263,7 +263,7 @@ interface WebGL2RenderingContextBase + 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 -up chromium-64.0.3282.119/third_party/WebKit/Source/core/dom/NodeFilter.h.gcc5 chromium-64.0.3282.119/third_party/WebKit/Source/core/dom/NodeFilter.h +--- chromium-64.0.3282.119/third_party/WebKit/Source/core/dom/NodeFilter.h.gcc5 2018-01-25 11:11:08.581962228 -0500 ++++ chromium-64.0.3282.119/third_party/WebKit/Source/core/dom/NodeFilter.h 2018-01-25 11:11:24.062593478 -0500 +@@ -49,7 +49,7 @@ class NodeFilter final { + * to the value of NodeType for the equivalent node type. + */ + enum { +- kShowAll = 0xFFFFFFFF, ++ kShowAll = 256 /* 0xFFFFFFFF */, + kShowElement = 0x00000001, + kShowAttribute = 0x00000002, + kShowText = 0x00000004, +diff -up chromium-64.0.3282.119/third_party/WebKit/Source/core/dom/NodeFilter.idl.gcc5 chromium-64.0.3282.119/third_party/WebKit/Source/core/dom/NodeFilter.idl +--- chromium-64.0.3282.119/third_party/WebKit/Source/core/dom/NodeFilter.idl.gcc5 2018-01-25 11:11:34.816335412 -0500 ++++ chromium-64.0.3282.119/third_party/WebKit/Source/core/dom/NodeFilter.idl 2018-01-25 11:12:23.380171262 -0500 +@@ -27,7 +27,7 @@ callback interface NodeFilter { + const unsigned short FILTER_SKIP = 3; + + // Constants for whatToShow +- const unsigned long SHOW_ALL = 0xFFFFFFFF; ++ const unsigned long SHOW_ALL = 256; // 0xFFFFFFFF + const unsigned long SHOW_ELEMENT = 0x1; + const unsigned long SHOW_ATTRIBUTE = 0x2; // historical + const unsigned long SHOW_TEXT = 0x4; +diff -up chromium-64.0.3282.119/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl.gcc5 chromium-64.0.3282.119/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl +--- chromium-64.0.3282.119/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl.gcc5 2018-01-25 11:12:57.367363214 -0500 ++++ chromium-64.0.3282.119/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl 2018-01-25 11:13:29.883590960 -0500 +@@ -241,7 +241,7 @@ typedef unsigned long long GLuint64; + 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; +@@ -271,7 +271,7 @@ typedef unsigned long long GLuint64; + const GLenum TEXTURE_IMMUTABLE_FORMAT = 0x912F; + const GLenum MAX_ELEMENT_INDEX = 0x8D6B; + const GLenum TEXTURE_IMMUTABLE_LEVELS = 0x82DF; +- const GLint TIMEOUT_IGNORED = -1; ++ const GLint TIMEOUT_IGNORED = 256; + + /* WebGL-specific enums */ + const GLenum MAX_CLIENT_WAIT_TIMEOUT_WEBGL = 0x9247; diff --git a/chromium-64.0.3282.119-gcc7.patch b/chromium-64.0.3282.119-gcc7.patch new file mode 100644 index 0000000..7fe383e --- /dev/null +++ b/chromium-64.0.3282.119-gcc7.patch @@ -0,0 +1,11 @@ +diff -up chromium-64.0.3282.119/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 chromium-64.0.3282.119/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h +--- chromium-64.0.3282.119/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 2018-01-25 11:15:00.291466617 -0500 ++++ chromium-64.0.3282.119/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h 2018-01-25 11:16:36.159320291 -0500 +@@ -10,6 +10,7 @@ + #include "platform/wtf/Functional.h" + #include "platform/wtf/ThreadSpecific.h" + ++#include + #include + + namespace blink { diff --git a/chromium-64.0.3282.119-memcpy-fix.patch b/chromium-64.0.3282.119-memcpy-fix.patch new file mode 100644 index 0000000..39c3c25 --- /dev/null +++ b/chromium-64.0.3282.119-memcpy-fix.patch @@ -0,0 +1,11 @@ +diff -up chromium-64.0.3282.119/cc/paint/raw_memory_transfer_cache_entry.cc.memcpyfix chromium-64.0.3282.119/cc/paint/raw_memory_transfer_cache_entry.cc +--- chromium-64.0.3282.119/cc/paint/raw_memory_transfer_cache_entry.cc.memcpyfix 2018-01-26 15:04:44.708100850 -0500 ++++ chromium-64.0.3282.119/cc/paint/raw_memory_transfer_cache_entry.cc 2018-01-26 15:04:54.234915081 -0500 +@@ -3,6 +3,7 @@ + // found in the LICENSE file. + + #include "cc/paint/raw_memory_transfer_cache_entry.h" ++#include + + namespace cc { + diff --git a/chromium.spec b/chromium.spec index c9df3cc..8a8716f 100644 --- a/chromium.spec +++ b/chromium.spec @@ -26,7 +26,7 @@ # Requires is trickier. %global __provides_exclude_from %{chromium_path}/.*\\.so|%{chromium_path}/lib/.*\\.so -%global privlibs libaccessibility|libanimation|libaura_extra|libaura|libbase_i18n|libbase|libbindings|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core|libblink_modules|libblink_mojo_bindings_shared|libblink_offscreen_canvas_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcc_animation|libcc_base|libcc_blink|libcc_debug|libcc_ipc|libcc_paint|libcc|libcdm_manager|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent|libcpp|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_gamepad|libdevices|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevice_vr_mojo_bindings|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libembedder|libembedder_switches|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents|libevents_x|libffmpeg|libfingerprint|libfreetype_harfbuzz|libgcm|libgeolocation|libgeometry_skia|libgeometry|libgesture_detection|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_switches|libgfx_x11|libgin|libgles2_c_lib|libgles2_implementation|libgles2_utils|libGLESv2|libgl_init|libgl_in_process_context|libgl_wrapper|libgpu|libgtk3ui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc_mojom_shared|libipc_mojom|libipc|libjs|libkeyboard|libkeyboard_with_content|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libmanager|libmedia_blink|libmedia_gpu|libmedia_mojo_services|libmedia|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmojo_common_lib|libmojo_ime_lib|libmojo_public_system_cpp|libmojo_public_system|libmojo_system_impl|libnative_theme|libnet|libnet_with_v8|libonc|libplatform|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|librange|libresource_coordinator_cpp|libresource_coordinator_public_interfaces_internal_shared|libsandbox_services|libsandbox|libseccomp_bpf|libsensors|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom_blink|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_constants|libservice_manager_mojom_shared|libservice_manager_mojom|libservice|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_devtools|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libuser_manager|libuser_prefs|libv8_libbase|libv8_libplatform|libv8|libviews|libviz_common|libviz_resource_format|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_swapchain|libVkLayer_threading|libVkLayer_unique_objects|libwebdata_common|libweb_dialogs|libwebview|libwidevinecdmadapter|libwidevinecdm|libwm_public|libwm|libwtf|libx11_events_platform|libx11_window +%global privlibs libaccessibility|libanimation|libaura_extra|libaura|libbase_i18n|libbase|libbindings|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core_mojo_bindings_shared|libblink_core|libblink_modules|libblink_mojo_bindings_shared|libblink_offscreen_canvas_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcc_animation|libcc_base|libcc_blink|libcc_debug|libcc_ipc|libcc_paint|libcc|libcdm_manager|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent|libcpp|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_gamepad|libdevices|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevice_vr_mojo_bindings|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libembedder|libembedder_switches|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents|libevents_x|libffmpeg|libfingerprint|libfreetype_harfbuzz|libgcm|libgeolocation|libgeometry_skia|libgeometry|libgesture_detection|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_switches|libgfx_x11|libgin|libgles2_c_lib|libgles2_implementation|libgles2_utils|libGLESv2|libgl_init|libgl_in_process_context|libgl_wrapper|libgpu|libgpu_util|libgtk3ui|libheadless|libhost|libicui18n|libicuuc|libipc_mojom_shared|libipc_mojom|libipc|libjs|libkeyboard|libkeyboard_with_content|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libleveldatabase|libmanager|libmedia_blink|libmedia_devices_mojo_bindings_shared|libmedia_gpu|libmedia_mojo_services|libmedia|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmojo_bindings_shared|libmojo_common_lib|libmojo_ime_lib|libmojo_platform_bindings_shared|libmojo_public_system_cpp|libmojo_public_system|libmojo_system_impl|libnative_theme|libnet|libnet_with_v8|libonc|libplatform|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|librange|libresource_coordinator_cpp|libresource_coordinator_public_interfaces_internal_shared|libsandbox_services|libsandbox|libseccomp_bpf|libsensors|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom_blink|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_constants|libservice_manager_mojom_shared|libservice_manager_mojom|libservice|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_devtools|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libuser_manager|libuser_prefs|libv8_libbase|libv8_libplatform|libv8|libviews|libviz_common|libviz_resource_format|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_swapchain|libVkLayer_threading|libVkLayer_unique_objects|libwebdata_common|libweb_dialogs|libwebview|libwidevinecdmadapter|libwidevinecdm|libwm_public|libwm|libwtf|libx11_events_platform|libx11_window %global __requires_exclude ^(%{privlibs})\\.so # If we build with shared on, then chrome-remote-desktop depends on chromium libs. @@ -109,21 +109,21 @@ BuildRequires: libicu-devel >= 5.4 %global default_client_secret miEreAep8nuvTdvLums6qyLK %global chromoting_client_id 449907151817-8vnlfih032ni8c4jjps9int9t86k546t.apps.googleusercontent.com -%global majorversion 63 +%global majorversion 64 %if %{freeworld} Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3239.108 +Version: %{majorversion}.0.3282.119 Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) ### Chromium Fedora Patches ### -Patch0: chromium-56.0.2924.87-gcc5.patch +Patch0: chromium-64.0.3282.119-gcc5.patch Patch1: chromium-45.0.2454.101-linux-path-max.patch Patch2: chromium-55.0.2883.75-addrfix.patch Patch4: chromium-46.0.2490.71-notest.patch @@ -168,15 +168,15 @@ Patch27: chromium-63.0.3289.84-setopaque.patch Patch31: chromium-56.0.2924.87-fpermissive.patch # Fix issue with compilation on gcc7 # Thanks to Ben Noordhuis -Patch33: chromium-62.0.3202.62-gcc7.patch +Patch33: chromium-64.0.3282.119-gcc7.patch # Enable mp3 support -Patch34: chromium-63.0.3289.84-enable-mp3.patch +Patch34: chromium-64.0.3282.119-enable-mp3.patch # Revert https://chromium.googlesource.com/chromium/src/+/b794998819088f76b4cf44c8db6940240c563cf4%5E%21/#F0 # https://bugs.chromium.org/p/chromium/issues/detail?id=712737 # https://bugzilla.redhat.com/show_bug.cgi?id=1446851 Patch36: chromium-58.0.3029.96-revert-b794998819088f76b4cf44c8db6940240c563cf4.patch # Correctly compile the stdatomic.h in ffmpeg with gcc 4.8 -Patch37: chromium-59.0.3071.86-ffmpeg-stdatomic.patch +Patch37: chromium-64.0.3282.119-ffmpeg-stdatomic.patch # Nacl can't die soon enough Patch39: chromium-59.0.3071.86-system-clang.patch # Do not prefix libpng functions @@ -188,8 +188,6 @@ Patch45: chromium-60.0.3112.78-no-zlib-mangle.patch # Apply these changes to work around EPEL7 compiler issues Patch46: chromium-62.0.3202.62-kmaxskip-constexpr.patch Patch47: chromium-60.0.3112.90-vulkan-force-c99.patch -# Fix mp3 for aarch64 -Patch49: chromium-63.0.3289.84-fix-ffmpeg-aarch64.patch # Fix libavutil include pathing to find arch specific timer.h # For some reason, this only fails on aarch64. No idea why. Patch50: chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch @@ -205,13 +203,19 @@ Patch60: chromium-62.0.3202.62-epel7-no-nullptr-assignment-on-StructPtr.patch # Another gcc 4.8 goods.. Patch61: chromium-62.0.3202.62-rvalue-fix.patch # From gentoo -Patch62: chromium-63.0.3289.84-gcc5-r3.patch +Patch62: chromium-64.0.3282.119-gcc5-r3.patch # Do not try to use libc++ in the remoting stack Patch63: chromium-63.0.3289.84-nolibc++.patch # Fix freetype and harfbuzz-ng unbundle Patch64: chromium-63.0.3289.84-fix-ft-hb-unbundle.patch # To use round with gcc, you need to #include -Patch65: chromium-63.0.3289.84-gcc-round-fix.patch +Patch65: chromium-64.0.3282.119-gcc-round-fix.patch +# Fix constexpr gcc issues +# https://chromium.googlesource.com/angle/angle/+/030017a4855c7b6e7f2ff8d9566c146f31eb301b +Patch66: chromium-64.0.3282.119-gcc-constexpr-fix.patch +# Include proper headers to invoke memcpy() +Patch67: chromium-64.0.3282.119-memcpy-fix.patch + # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ @@ -630,7 +634,6 @@ udev. # Do not apply mp3 change %else %patch34 -p1 -b .mp3 -%patch49 -p1 -b .aarch64 %endif %patch36 -p1 -b .revert %patch37 -p1 -b .ffmpeg-stdatomic @@ -655,6 +658,8 @@ udev. %patch63 -p1 -b .nolibc++ %patch64 -p1 -b .fixunbundle %patch65 -p1 -b .gcc-round-fix +%patch66 -p1 -b .gcc-const-expr +%patch67 -p1 -b .memcpyfix %if 0%{?asan} export CC="clang" @@ -794,7 +799,7 @@ CHROMIUM_BROWSER_GN_DEFINES+=' is_component_ffmpeg=true is_component_build=true' CHROMIUM_BROWSER_GN_DEFINES+=' is_component_ffmpeg=false is_component_build=false' %endif CHROMIUM_BROWSER_GN_DEFINES+=' remove_webcore_debug_symbols=true enable_hangout_services_extension=true' -CHROMIUM_BROWSER_GN_DEFINES+=' enable_hotwording=false use_aura=true' +CHROMIUM_BROWSER_GN_DEFINES+=' use_aura=true' CHROMIUM_BROWSER_GN_DEFINES+=' enable_webrtc=true enable_widevine=true' %if 0%{gtk3} CHROMIUM_BROWSER_GN_DEFINES+=' use_gtk3=true' @@ -806,7 +811,7 @@ export CHROMIUM_BROWSER_GN_DEFINES CHROMIUM_HEADLESS_GN_DEFINES="" CHROMIUM_HEADLESS_GN_DEFINES+=' use_ozone=true ozone_auto_platforms=false ozone_platform="headless" ozone_platform_headless=true' CHROMIUM_HEADLESS_GN_DEFINES+=' headless_use_embedded_resources=true icu_use_data_file=false v8_use_external_startup_data=false' -CHROMIUM_HEADLESS_GN_DEFINES+=' enable_nacl=false enable_print_preview=false enable_remoting=false use_alsa=false use_ash=false' +CHROMIUM_HEADLESS_GN_DEFINES+=' enable_nacl=false enable_print_preview=false enable_remoting=false use_alsa=false' CHROMIUM_HEADLESS_GN_DEFINES+=' use_cups=false use_dbus=false use_gconf=false use_gio=false use_kerberos=false use_libpci=false' CHROMIUM_HEADLESS_GN_DEFINES+=' use_pulseaudio=false use_udev=false' export CHROMIUM_HEADLESS_GN_DEFINES @@ -845,6 +850,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/blanketjs' \ 'third_party/blink' \ 'third_party/boringssl' \ + 'third_party/boringssl/src/third_party/fiat' \ 'third_party/breakpad' \ 'third_party/breakpad/breakpad/src/third_party/curl' \ 'third_party/brotli' \ @@ -860,7 +866,6 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/catapult/tracing/third_party/oboe' \ 'third_party/catapult/tracing/third_party/pako' \ 'third_party/ced' \ - 'third_party/cld_2' \ 'third_party/cld_3' \ 'third_party/crc32c' \ 'third_party/cros_system_api' \ @@ -915,6 +920,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/markupsafe' \ %endif 'third_party/mesa' \ + 'third_party/metrics_proto' \ 'third_party/modp_b64' \ 'third_party/mt19937ar' \ 'third_party/node' \ @@ -1511,6 +1517,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Thu Jan 25 2018 Tom Callaway 64.0.3282.119-1 +- update to 64.0.3282.119 + * Fri Dec 15 2017 Tomas Popela 63.0.3239.108-1 - Update to 63.0.3239.108 diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index 984a1a3..48495a5 100755 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -62,9 +62,11 @@ header_files=" libavcodec/x86/inline_asm.h \ libavcodec/aacps.h \ libavcodec/aacpsdsp.h \ libavcodec/aacsbrdata.h \ + libavcodec/aac_ac3_parser.h \ libavcodec/aac_defines.h \ libavcodec/ac3.h \ libavcodec/ac3tab.h \ + libavcodec/adts_header.h \ libavcodec/avcodec.h \ libavcodec/blockdsp.h \ libavcodec/bytestream.h \ @@ -93,7 +95,9 @@ header_files=" libavcodec/x86/inline_asm.h \ libavcodec/mdct15.h \ libavcodec/me_cmp.h \ libavcodec/motion_est.h \ + libavcodec/mpeg12.h \ libavcodec/mpeg12data.h \ + libavcodec/mpeg12vlc.h \ libavcodec/mpegaudio.h \ libavcodec/mpegaudiodecheader.h \ libavcodec/mpegaudiodectab.h \ @@ -248,7 +252,6 @@ mp3_files=" libavcodec/aarch64/aacpsdsp_init_aarch64.c \ libavcodec/aarch64/sbrdsp_neon.S \ libavcodec/aac_ac3_parser.c \ libavcodec/aac_parser.c \ - libavcodec/aacadtsdec.c \ libavcodec/aacps_float.c \ libavcodec/aacpsdsp_float.c \ libavcodec/aacsbr.c \ @@ -307,8 +310,7 @@ other_files=" BUILD.gn \ OWNERS \ README.chromium \ README.md \ - RELEASE \ - xcode_hack.c " + RELEASE " cd "$1/third_party/ffmpeg" || exit 1 diff --git a/sources b/sources index e9f4e80..a05efb1 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 -SHA512 (chromium-63.0.3239.108-clean.tar.xz) = 565c0e6c94ceae506a69d7d14b2ebbffcab72635b4168e35a433dcc726ab768a46667705b9e25c02500e3b5a1aa11e19730ae4985b1ef292e8ff976286c5094a +SHA512 (chromium-64.0.3282.119-clean.tar.xz) = 4d743cbee880a353ea38bebcd5c53881ada000711dfb1b2645199517c2151f9ce7c6dc96c2ca33ad023c461593028de5a4694de55d32431f78f8997e09093f54 From b75e5eb0e8f394769247464d635e9fc61aa49ffa Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Sat, 27 Jan 2018 08:23:18 -0500 Subject: [PATCH 0173/1449] correct source --- sources | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sources b/sources index a05efb1..a02ccb6 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 -SHA512 (chromium-64.0.3282.119-clean.tar.xz) = 4d743cbee880a353ea38bebcd5c53881ada000711dfb1b2645199517c2151f9ce7c6dc96c2ca33ad023c461593028de5a4694de55d32431f78f8997e09093f54 +SHA512 (chromium-64.0.3282.119-clean.tar.xz) = bb852af3dbfe56fcc0b86cc8e54a83f30e81493777494151bf2fc9c60149a2b9b0a93b1868f44500d24b95d95dec01024481998e33ad899c8386ea4ee8d770cc From 7bfd51319806cb6a68c1e57af88159b8310a4e31 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 1 Feb 2018 11:59:06 -0500 Subject: [PATCH 0174/1449] include user-session binary in chrome-remote-desktop subpackage --- chromium.spec | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 8a8716f..7b2e3c8 100644 --- a/chromium.spec +++ b/chromium.spec @@ -117,7 +117,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3282.119 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1192,6 +1192,7 @@ cp -a remote_assistance_host %{buildroot}%{crd_path}/remote-assistance-host cp -a remoting_locales %{buildroot}%{crd_path}/ cp -a remoting_me2me_host %{buildroot}%{crd_path}/chrome-remote-desktop-host cp -a remoting_start_host %{buildroot}%{crd_path}/start-host +cp -a remoting_user_session %{buildroot}%{crd_path}/user-session # chromium mkdir -p %{buildroot}%{_sysconfdir}/chromium/native-messaging-hosts @@ -1487,6 +1488,7 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{_sysconfdir}/opt/chrome/ %{crd_path}/remoting_locales/ %{crd_path}/start-host +%{crd_path}/user-session %{_unitdir}/chrome-remote-desktop@.service /var/lib/chrome-remote-desktop/ %if 0%{?build_remoting_app} @@ -1517,6 +1519,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Thu Feb 1 2018 Tom Callaway 64.0.3282.119-2 +- include user-session binary in chrome-remote-desktop subpackage + * Thu Jan 25 2018 Tom Callaway 64.0.3282.119-1 - update to 64.0.3282.119 From 745106217b8271f09f9bfbf67d6a29fb9286d45d Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 2 Feb 2018 07:47:16 -0500 Subject: [PATCH 0175/1449] 64.0.3282.140 --- .gitignore | 1 + chromium.spec | 7 +++++-- sources | 2 +- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index eeccdc8..61c1710 100644 --- a/.gitignore +++ b/.gitignore @@ -36,3 +36,4 @@ /chromium-63.0.3239.84-clean.tar.xz /chromium-63.0.3239.108-clean.tar.xz /chromium-64.0.3282.119-clean.tar.xz +/chromium-64.0.3282.140-clean.tar.xz diff --git a/chromium.spec b/chromium.spec index 7b2e3c8..6b1e0d4 100644 --- a/chromium.spec +++ b/chromium.spec @@ -116,8 +116,8 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3282.119 -Release: 2%{?dist} +Version: %{majorversion}.0.3282.140 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1519,6 +1519,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Fri Feb 2 2018 Tom Callaway 64.0.3282.140-1 +- update to 64.0.3282.140 + * Thu Feb 1 2018 Tom Callaway 64.0.3282.119-2 - include user-session binary in chrome-remote-desktop subpackage diff --git a/sources b/sources index a02ccb6..5cf5a63 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 -SHA512 (chromium-64.0.3282.119-clean.tar.xz) = bb852af3dbfe56fcc0b86cc8e54a83f30e81493777494151bf2fc9c60149a2b9b0a93b1868f44500d24b95d95dec01024481998e33ad899c8386ea4ee8d770cc +SHA512 (chromium-64.0.3282.140-clean.tar.xz) = 9e8f5417bfc6a761ea50677c60c86ad4bebca3e42b2040e887a8b2ab5b97e10b07b192f6b8e15de6f4f872c324f08ef9b0fdf9df7a275526d935cbdd5faa4048 From ff8eb292e44f6601e74a11f94839748f55c94f85 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 19 Feb 2018 11:57:56 -0500 Subject: [PATCH 0176/1449] update to 64.0.3282.167, include workaround for gcc8 bug in gn, disable unnecessary aarch64 glibc symbol change --- .gitignore | 1 + chromium-64.0.3282.167-gcc8-fabi11.patch | 15 +++++++++++++++ chromium.spec | 17 ++++++++++++----- sources | 2 +- 4 files changed, 29 insertions(+), 6 deletions(-) create mode 100644 chromium-64.0.3282.167-gcc8-fabi11.patch diff --git a/.gitignore b/.gitignore index 61c1710..7779b01 100644 --- a/.gitignore +++ b/.gitignore @@ -37,3 +37,4 @@ /chromium-63.0.3239.108-clean.tar.xz /chromium-64.0.3282.119-clean.tar.xz /chromium-64.0.3282.140-clean.tar.xz +/chromium-64.0.3282.167-clean.tar.xz diff --git a/chromium-64.0.3282.167-gcc8-fabi11.patch b/chromium-64.0.3282.167-gcc8-fabi11.patch new file mode 100644 index 0000000..5f0c527 --- /dev/null +++ b/chromium-64.0.3282.167-gcc8-fabi11.patch @@ -0,0 +1,15 @@ +diff -up chromium-64.0.3282.167/tools/gn/bootstrap/bootstrap.py.fabi11 chromium-64.0.3282.167/tools/gn/bootstrap/bootstrap.py +--- chromium-64.0.3282.167/tools/gn/bootstrap/bootstrap.py.fabi11 2018-02-19 11:39:15.807713662 -0500 ++++ chromium-64.0.3282.167/tools/gn/bootstrap/bootstrap.py 2018-02-19 11:39:47.038070341 -0500 +@@ -336,6 +336,11 @@ def write_gn_ninja(path, root_gen_dir, o + cflags = os.environ.get('CFLAGS', '').split() + cflags_cc = os.environ.get('CXXFLAGS', '').split() + ldflags = os.environ.get('LDFLAGS', '').split() ++ ++ # Work around GCC8 bug gcc#84286 ++ cflags.extend(['-fabi-version=11']) ++ cflags_cc.extend(['-fabi-version=11']) ++ + include_dirs = [root_gen_dir, SRC_ROOT] + libs = [] + diff --git a/chromium.spec b/chromium.spec index 6b1e0d4..a477d29 100644 --- a/chromium.spec +++ b/chromium.spec @@ -116,7 +116,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3282.140 +Version: %{majorversion}.0.3282.167 Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home @@ -215,7 +215,8 @@ Patch65: chromium-64.0.3282.119-gcc-round-fix.patch Patch66: chromium-64.0.3282.119-gcc-constexpr-fix.patch # Include proper headers to invoke memcpy() Patch67: chromium-64.0.3282.119-memcpy-fix.patch - +# Work around gcc8 bug in gn +Patch68: chromium-64.0.3282.167-gcc8-fabi11.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ @@ -651,15 +652,16 @@ udev. %endif %patch50 -p1 -b .pathfix %patch53 -p1 -b .nogccoptmath -%if 0%{?fedora} >= 28 -%patch57 -p1 -b .aarch64glibc -%endif +# %%if 0%%{?fedora} >= 28 +# %%patch57 -p1 -b .aarch64glibc +# %%endif %patch62 -p1 -b .gcc5-r3 %patch63 -p1 -b .nolibc++ %patch64 -p1 -b .fixunbundle %patch65 -p1 -b .gcc-round-fix %patch66 -p1 -b .gcc-const-expr %patch67 -p1 -b .memcpyfix +%patch68 -p1 -b .fabi11 %if 0%{?asan} export CC="clang" @@ -1519,6 +1521,11 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Fri Feb 16 2018 Tom Callaway 64.0.3282.167-1 +- update to 64.0.3282.167 +- include workaround for gcc8 bug in gn +- disable unnecessary aarch64 glibc symbol change + * Fri Feb 2 2018 Tom Callaway 64.0.3282.140-1 - update to 64.0.3282.140 diff --git a/sources b/sources index 5cf5a63..a5f1167 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 -SHA512 (chromium-64.0.3282.140-clean.tar.xz) = 9e8f5417bfc6a761ea50677c60c86ad4bebca3e42b2040e887a8b2ab5b97e10b07b192f6b8e15de6f4f872c324f08ef9b0fdf9df7a275526d935cbdd5faa4048 +SHA512 (chromium-64.0.3282.167-clean.tar.xz) = 83c8472507466eeabcc3036c1f6d02667632938e985caca03a21f822491f9d5d35043c0a236066ac3d5b926e36ee8e18a785c32647f848286c6b3f7a4eaa8e70 From c558cc1c58d22a33adcdcf210d9e31ea3a40736c Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 5 Mar 2018 12:16:13 -0500 Subject: [PATCH 0177/1449] 64.0.3282.186 --- .gitignore | 1 + chromium.spec | 5 ++++- sources | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 7779b01..c56a2af 100644 --- a/.gitignore +++ b/.gitignore @@ -38,3 +38,4 @@ /chromium-64.0.3282.119-clean.tar.xz /chromium-64.0.3282.140-clean.tar.xz /chromium-64.0.3282.167-clean.tar.xz +/chromium-64.0.3282.186-clean.tar.xz diff --git a/chromium.spec b/chromium.spec index a477d29..01bf873 100644 --- a/chromium.spec +++ b/chromium.spec @@ -116,7 +116,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3282.167 +Version: %{majorversion}.0.3282.186 Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home @@ -1521,6 +1521,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Mon Mar 5 2018 Tom Callaway 64.0.3282.186-1 +- update to 64.0.3282.186 + * Fri Feb 16 2018 Tom Callaway 64.0.3282.167-1 - update to 64.0.3282.167 - include workaround for gcc8 bug in gn diff --git a/sources b/sources index a5f1167..0f81720 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 -SHA512 (chromium-64.0.3282.167-clean.tar.xz) = 83c8472507466eeabcc3036c1f6d02667632938e985caca03a21f822491f9d5d35043c0a236066ac3d5b926e36ee8e18a785c32647f848286c6b3f7a4eaa8e70 +SHA512 (chromium-64.0.3282.186-clean.tar.xz) = 58cfc9c5727e43cc0063c1504e2d4b90ba23ee9cc6a134ed4198da543f333865625fe835f75a1deb2b44867f1a8c0a0a545570dc1de06f486f96e0884e9b353c From e36a0c82bf29c68608f883c1b24cc660c3515882 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 7 Mar 2018 11:13:05 -0500 Subject: [PATCH 0178/1449] 65.0.3325.146 --- .gitignore | 1 + chromium-65.0.3325.146-gcc-round-fix.patch | 12 ++++ chromium-65.0.3325.146-gcc5-r3.patch | 74 ++++++++++++++++++++++ chromium-65.0.3325.146-gcc7.patch | 11 ++++ chromium-65.0.3325.146-memcpy-fix.patch | 12 ++++ chromium-math.h-r0.patch | 29 +++++++++ chromium-stdint.patch | 21 ++++++ chromium.spec | 54 ++++++---------- clean_ffmpeg.sh | 2 - sources | 2 +- 10 files changed, 181 insertions(+), 37 deletions(-) create mode 100644 chromium-65.0.3325.146-gcc-round-fix.patch create mode 100644 chromium-65.0.3325.146-gcc5-r3.patch create mode 100644 chromium-65.0.3325.146-gcc7.patch create mode 100644 chromium-65.0.3325.146-memcpy-fix.patch create mode 100644 chromium-math.h-r0.patch create mode 100644 chromium-stdint.patch diff --git a/.gitignore b/.gitignore index c56a2af..11c035f 100644 --- a/.gitignore +++ b/.gitignore @@ -39,3 +39,4 @@ /chromium-64.0.3282.140-clean.tar.xz /chromium-64.0.3282.167-clean.tar.xz /chromium-64.0.3282.186-clean.tar.xz +/chromium-65.0.3325.146-clean.tar.xz diff --git a/chromium-65.0.3325.146-gcc-round-fix.patch b/chromium-65.0.3325.146-gcc-round-fix.patch new file mode 100644 index 0000000..a29779d --- /dev/null +++ b/chromium-65.0.3325.146-gcc-round-fix.patch @@ -0,0 +1,12 @@ +diff -up chromium-65.0.3325.146/third_party/webrtc/p2p/base/port.cc.gcc-round-fix chromium-65.0.3325.146/third_party/webrtc/p2p/base/port.cc +--- chromium-65.0.3325.146/third_party/webrtc/p2p/base/port.cc.gcc-round-fix 2018-03-07 10:57:11.284376048 -0500 ++++ chromium-65.0.3325.146/third_party/webrtc/p2p/base/port.cc 2018-03-07 10:58:16.590742636 -0500 +@@ -10,7 +10,7 @@ + + #include "p2p/base/port.h" + +-#include ++#include + + #include + #include diff --git a/chromium-65.0.3325.146-gcc5-r3.patch b/chromium-65.0.3325.146-gcc5-r3.patch new file mode 100644 index 0000000..ab74a35 --- /dev/null +++ b/chromium-65.0.3325.146-gcc5-r3.patch @@ -0,0 +1,74 @@ +diff -up chromium-65.0.3325.146/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 chromium-65.0.3325.146/gpu/ipc/common/mailbox_struct_traits.h +--- chromium-65.0.3325.146/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 2018-03-06 18:04:32.000000000 -0500 ++++ chromium-65.0.3325.146/gpu/ipc/common/mailbox_struct_traits.h 2018-03-07 10:42:07.198179638 -0500 +@@ -15,7 +15,7 @@ namespace mojo { + template <> + struct StructTraits { + static base::span name(const gpu::Mailbox& mailbox) { +- return mailbox.name; ++ return base::make_span(mailbox.name); + } + static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out); + }; +diff -up chromium-65.0.3325.146/services/viz/public/cpp/compositing/filter_operation_struct_traits.h.gcc5-r3 chromium-65.0.3325.146/services/viz/public/cpp/compositing/filter_operation_struct_traits.h +--- chromium-65.0.3325.146/services/viz/public/cpp/compositing/filter_operation_struct_traits.h.gcc5-r3 2018-03-06 18:04:37.000000000 -0500 ++++ chromium-65.0.3325.146/services/viz/public/cpp/compositing/filter_operation_struct_traits.h 2018-03-07 10:42:07.198179638 -0500 +@@ -138,7 +138,7 @@ struct StructTraits matrix(const cc::FilterOperation& operation) { + if (operation.type() != cc::FilterOperation::COLOR_MATRIX) + return base::span(); +- return operation.matrix(); ++ return base::make_span(operation.matrix()); + } + + static base::span shape( +diff -up chromium-65.0.3325.146/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 chromium-65.0.3325.146/services/viz/public/cpp/compositing/quads_struct_traits.h +--- chromium-65.0.3325.146/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 2018-03-06 18:04:37.000000000 -0500 ++++ chromium-65.0.3325.146/services/viz/public/cpp/compositing/quads_struct_traits.h 2018-03-07 10:42:07.198179638 -0500 +@@ -308,7 +308,7 @@ struct StructTraits vertex_opacity(const viz::DrawQuad& input) { + const viz::TextureDrawQuad* quad = + viz::TextureDrawQuad::MaterialCast(&input); +- return quad->vertex_opacity; ++ return base::make_span(quad->vertex_opacity); + } + + static bool y_flipped(const viz::DrawQuad& input) { +diff -up chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h.gcc5-r3 chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h +--- chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h.gcc5-r3 2018-03-06 18:05:06.000000000 -0500 ++++ chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h 2018-03-07 10:48:53.996093882 -0500 +@@ -62,7 +62,7 @@ class WTF_EXPORT ArrayBufferContents { + allocation_length_(length), + data_(data), + data_length_(length), +- kind_(AllocationKind::kNormal), ++ kind_(WTF::ArrayBufferContents::AllocationKind::kNormal), + deleter_(deleter) {} + DataHandle(void* allocation_base, + size_t allocation_length, +@@ -93,11 +93,11 @@ class WTF_EXPORT ArrayBufferContents { + reinterpret_cast(allocation_base_) + + allocation_length_); + switch (kind_) { +- case AllocationKind::kNormal: ++ case WTF::ArrayBufferContents::AllocationKind::kNormal: + DCHECK(deleter_); + deleter_(data_); + return; +- case AllocationKind::kReservation: ++ case WTF::ArrayBufferContents::AllocationKind::kReservation: + ReleaseReservedMemory(allocation_base_, allocation_length_); + return; + } +diff -up chromium-65.0.3325.146/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 chromium-65.0.3325.146/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc +--- chromium-65.0.3325.146/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 2018-03-06 18:06:09.000000000 -0500 ++++ chromium-65.0.3325.146/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2018-03-07 10:42:07.199179616 -0500 +@@ -10,7 +10,7 @@ + + #include "modules/audio_processing/aec3/aec_state.h" + +-#include ++#include + + #include + #include diff --git a/chromium-65.0.3325.146-gcc7.patch b/chromium-65.0.3325.146-gcc7.patch new file mode 100644 index 0000000..4f2b46c --- /dev/null +++ b/chromium-65.0.3325.146-gcc7.patch @@ -0,0 +1,11 @@ +diff -up chromium-65.0.3325.146/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 chromium-65.0.3325.146/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h +--- chromium-65.0.3325.146/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 2018-03-07 10:34:48.783900894 -0500 ++++ chromium-65.0.3325.146/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h 2018-03-07 10:35:44.885638503 -0500 +@@ -5,6 +5,7 @@ + #ifndef SharedGpuContext_h + #define SharedGpuContext_h + ++#include + #include + #include "base/callback.h" + #include "base/memory/weak_ptr.h" diff --git a/chromium-65.0.3325.146-memcpy-fix.patch b/chromium-65.0.3325.146-memcpy-fix.patch new file mode 100644 index 0000000..b2b2cd4 --- /dev/null +++ b/chromium-65.0.3325.146-memcpy-fix.patch @@ -0,0 +1,12 @@ +diff -up chromium-65.0.3325.146/cc/paint/raw_memory_transfer_cache_entry.cc.memcpyfix chromium-65.0.3325.146/cc/paint/raw_memory_transfer_cache_entry.cc +--- chromium-65.0.3325.146/cc/paint/raw_memory_transfer_cache_entry.cc.memcpyfix 2018-03-07 11:04:14.690379817 -0500 ++++ chromium-65.0.3325.146/cc/paint/raw_memory_transfer_cache_entry.cc 2018-03-07 11:06:04.339878069 -0500 +@@ -3,7 +3,7 @@ + // found in the LICENSE file. + + #include "cc/paint/raw_memory_transfer_cache_entry.h" +- ++#include + #include + + namespace cc { diff --git a/chromium-math.h-r0.patch b/chromium-math.h-r0.patch new file mode 100644 index 0000000..6c7c747 --- /dev/null +++ b/chromium-math.h-r0.patch @@ -0,0 +1,29 @@ +From 9f63f94a11abc34d40ede8b8712fa15b5844a8c0 Mon Sep 17 00:00:00 2001 +From: Tom Anderson +Date: Sat, 27 Jan 2018 20:03:37 +0000 +Subject: [PATCH] Fix build with glibc 2.27 + +BUG=806340 +TBR=hamelphi@chromium.org + +Change-Id: Ib4e5091212d874d9ad88f3e9a1fdfee3ed7e0d5e +Reviewed-on: https://chromium-review.googlesource.com/890059 +Reviewed-by: Thomas Anderson +Reviewed-by: Philippe Hamel +Commit-Queue: Thomas Anderson +Cr-Commit-Position: refs/heads/master@{#532249} +--- + +diff --git a/components/assist_ranker/ranker_example_util.cc b/components/assist_ranker/ranker_example_util.cc +index 54d4dbd..ceedd8f 100644 +--- a/components/assist_ranker/ranker_example_util.cc ++++ b/components/assist_ranker/ranker_example_util.cc +@@ -2,6 +2,8 @@ + // Use of this source code is governed by a BSD-style license that can be + // found in the LICENSE file. + ++#include ++ + #include "components/assist_ranker/ranker_example_util.h" + #include "base/bit_cast.h" + #include "base/format_macros.h" diff --git a/chromium-stdint.patch b/chromium-stdint.patch new file mode 100644 index 0000000..8774439 --- /dev/null +++ b/chromium-stdint.patch @@ -0,0 +1,21 @@ +From 0235c2b657d936f3cdb09053776e5929fc84704b Mon Sep 17 00:00:00 2001 +From: Tomas Popela +Date: Wed, 31 Jan 2018 18:57:07 +0000 +Subject: [PATCH] Add missing stdint include + +diff --git a/chrome/browser/vr/sample_queue.cc b/chrome/browser/vr/sample_queue.cc +index c2ca777ce90c..53cb3aab1576 100644 +--- a/chrome/browser/vr/sample_queue.cc ++++ b/chrome/browser/vr/sample_queue.cc +@@ -2,6 +2,8 @@ + // Use of this source code is governed by a BSD-style license that can be + // found in the LICENSE file. + ++#include ++ + #include "chrome/browser/vr/sample_queue.h" + + namespace vr { +-- +2.16.2 + diff --git a/chromium.spec b/chromium.spec index 01bf873..40a05ac 100644 --- a/chromium.spec +++ b/chromium.spec @@ -92,8 +92,8 @@ BuildRequires: libicu-devel >= 5.4 %global bundlelibpng 0 %endif -# Needs at least harfbuzz 1.5.0 now. -# 2017-06-12 +# Needs at least harfbuzz 1.7.3 now. +# 2018-03-07 %if 0%{?fedora} < 28 %global bundleharfbuzz 1 %else @@ -109,14 +109,14 @@ BuildRequires: libicu-devel >= 5.4 %global default_client_secret miEreAep8nuvTdvLums6qyLK %global chromoting_client_id 449907151817-8vnlfih032ni8c4jjps9int9t86k546t.apps.googleusercontent.com -%global majorversion 64 +%global majorversion 65 %if %{freeworld} Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3282.186 +Version: %{majorversion}.0.3325.146 Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home @@ -168,9 +168,7 @@ Patch27: chromium-63.0.3289.84-setopaque.patch Patch31: chromium-56.0.2924.87-fpermissive.patch # Fix issue with compilation on gcc7 # Thanks to Ben Noordhuis -Patch33: chromium-64.0.3282.119-gcc7.patch -# Enable mp3 support -Patch34: chromium-64.0.3282.119-enable-mp3.patch +Patch33: chromium-65.0.3325.146-gcc7.patch # Revert https://chromium.googlesource.com/chromium/src/+/b794998819088f76b4cf44c8db6940240c563cf4%5E%21/#F0 # https://bugs.chromium.org/p/chromium/issues/detail?id=712737 # https://bugzilla.redhat.com/show_bug.cgi?id=1446851 @@ -195,28 +193,19 @@ Patch50: chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch Patch53: chromium-61.0.3163.79-gcc-no-opt-safe-math.patch # Only needed when glibc 2.26.90 or later is used Patch57: chromium-63.0.3289.84-aarch64-glibc-2.26.90.patch -# More gcc fixes for epel -Patch58: chromium-62.0.3202.62-dde535-gcc-fix.patch -Patch59: chromium-62.0.3202.62-gcc-nc.patch -# Epel compiler really does not like assigning nullptr to a StructPtr -Patch60: chromium-62.0.3202.62-epel7-no-nullptr-assignment-on-StructPtr.patch -# Another gcc 4.8 goods.. -Patch61: chromium-62.0.3202.62-rvalue-fix.patch # From gentoo -Patch62: chromium-64.0.3282.119-gcc5-r3.patch +Patch62: chromium-65.0.3325.146-gcc5-r3.patch # Do not try to use libc++ in the remoting stack Patch63: chromium-63.0.3289.84-nolibc++.patch -# Fix freetype and harfbuzz-ng unbundle -Patch64: chromium-63.0.3289.84-fix-ft-hb-unbundle.patch # To use round with gcc, you need to #include -Patch65: chromium-64.0.3282.119-gcc-round-fix.patch -# Fix constexpr gcc issues -# https://chromium.googlesource.com/angle/angle/+/030017a4855c7b6e7f2ff8d9566c146f31eb301b -Patch66: chromium-64.0.3282.119-gcc-constexpr-fix.patch +Patch65: chromium-65.0.3325.146-gcc-round-fix.patch # Include proper headers to invoke memcpy() -Patch67: chromium-64.0.3282.119-memcpy-fix.patch +Patch67: chromium-65.0.3325.146-memcpy-fix.patch # Work around gcc8 bug in gn Patch68: chromium-64.0.3282.167-gcc8-fabi11.patch +# From Gentoo +Patch69: chromium-math.h-r0.patch +Patch70: chromium-stdint.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ @@ -631,11 +620,6 @@ udev. %patch27 -p1 -b .setopaque %patch31 -p1 -b .permissive %patch33 -p1 -b .gcc7 -%if %{freeworld} -# Do not apply mp3 change -%else -%patch34 -p1 -b .mp3 -%endif %patch36 -p1 -b .revert %patch37 -p1 -b .ffmpeg-stdatomic %patch39 -p1 -b .system-clang @@ -645,10 +629,6 @@ udev. %if 0%{?rhel} == 7 %patch46 -p1 -b .kmaxskip %patch47 -p1 -b .c99 -%patch58 -p1 -b .dde5e35 -%patch59 -p1 -b .gcc-nc -%patch60 -p1 -b .nonullptr -%patch61 -p1 -b .another-rvalue-fix %endif %patch50 -p1 -b .pathfix %patch53 -p1 -b .nogccoptmath @@ -657,11 +637,11 @@ udev. # %%endif %patch62 -p1 -b .gcc5-r3 %patch63 -p1 -b .nolibc++ -%patch64 -p1 -b .fixunbundle %patch65 -p1 -b .gcc-round-fix -%patch66 -p1 -b .gcc-const-expr %patch67 -p1 -b .memcpyfix %patch68 -p1 -b .fabi11 +%patch69 -p1 -b .gentoo-math +%patch70 -p1 -b .gentoo-stdint %if 0%{?asan} export CC="clang" @@ -778,7 +758,7 @@ CHROMIUM_CORE_GN_DEFINES+=' is_debug=false' CHROMIUM_CORE_GN_DEFINES+=' system_libdir="lib64"' %endif CHROMIUM_CORE_GN_DEFINES+=' google_api_key="%{api_key}" google_default_client_id="%{default_client_id}" google_default_client_secret="%{default_client_secret}"' -CHROMIUM_CORE_GN_DEFINES+=' is_clang=false use_sysroot=false use_gold=false fieldtrial_testing_like_official_build=true' +CHROMIUM_CORE_GN_DEFINES+=' is_clang=false use_sysroot=false use_gold=false fieldtrial_testing_like_official_build=true use_lld=false' %if %{freeworld} CHROMIUM_CORE_GN_DEFINES+=' ffmpeg_branding="ChromeOS" proprietary_codecs=true' %else @@ -896,6 +876,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/leveldatabase' \ 'third_party/libXNVCtrl' \ 'third_party/libaddressinput' \ + 'third_party/libaom' \ 'third_party/libdrm' \ 'third_party/libjingle' \ 'third_party/libjpeg_turbo' \ @@ -952,6 +933,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ %if 0%{?bundlere2} 'third_party/re2' \ %endif + 'third_party/s2cellid' \ 'third_party/sfntly' \ 'third_party/sinonjs' \ 'third_party/skia' \ @@ -982,6 +964,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/zlib' \ 'third_party/zlib/google' \ 'url/third_party/mozilla' \ + 'v8/src/third_party/utf8-decoder' \ 'v8/src/third_party/valgrind' \ 'v8/third_party/inspector_protocol' \ --do-remove @@ -1521,6 +1504,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Wed Mar 7 2018 Tom Callaway 65.0.3325.146-1 +- update to 65.0.3325.146 + * Mon Mar 5 2018 Tom Callaway 64.0.3282.186-1 - update to 64.0.3282.186 diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index 48495a5..f5c85a5 100755 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -158,8 +158,6 @@ header_files=" libavcodec/x86/inline_asm.h \ libavutil/x86/intreadwrite.h \ libavutil/x86/intmath.h libavutil/x86/timer.h \ - libavutil/atomic.h \ - libavutil/atomic_gcc.h \ libavutil/attributes.h \ libavutil/audio_fifo.h \ libavutil/avassert.h \ diff --git a/sources b/sources index 0f81720..8b00246 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 -SHA512 (chromium-64.0.3282.186-clean.tar.xz) = 58cfc9c5727e43cc0063c1504e2d4b90ba23ee9cc6a134ed4198da543f333865625fe835f75a1deb2b44867f1a8c0a0a545570dc1de06f486f96e0884e9b353c +SHA512 (chromium-65.0.3325.146-clean.tar.xz) = 18a45e41eb706fa87a707c89ee419b6a408132d763318c06cffca9e453f09a0e52a76089002ec1c25224d77a54eecc17013a6087dd4acdbd15df073fd7eff937 From c5342c3e97bcdb07c28e4ec585ce0f1c61439d84 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 7 Mar 2018 12:58:11 -0500 Subject: [PATCH 0179/1449] this gets past prep... --- chromium.spec | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 40a05ac..5fe1f18 100644 --- a/chromium.spec +++ b/chromium.spec @@ -794,7 +794,7 @@ CHROMIUM_HEADLESS_GN_DEFINES="" CHROMIUM_HEADLESS_GN_DEFINES+=' use_ozone=true ozone_auto_platforms=false ozone_platform="headless" ozone_platform_headless=true' CHROMIUM_HEADLESS_GN_DEFINES+=' headless_use_embedded_resources=true icu_use_data_file=false v8_use_external_startup_data=false' CHROMIUM_HEADLESS_GN_DEFINES+=' enable_nacl=false enable_print_preview=false enable_remoting=false use_alsa=false' -CHROMIUM_HEADLESS_GN_DEFINES+=' use_cups=false use_dbus=false use_gconf=false use_gio=false use_kerberos=false use_libpci=false' +CHROMIUM_HEADLESS_GN_DEFINES+=' use_cups=false use_dbus=false use_gio=false use_kerberos=false use_libpci=false' CHROMIUM_HEADLESS_GN_DEFINES+=' use_pulseaudio=false use_udev=false' export CHROMIUM_HEADLESS_GN_DEFINES @@ -859,6 +859,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/flac' \ 'third_party/flatbuffers' \ 'third_party/flot' \ + 'third_party/fontconfig' \ 'third_party/freetype' \ 'third_party/glslang-angle' \ 'third_party/google_input_tools' \ From 4e6c6ef24dd0296bc2b2ec7144a153a61b36f2d9 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 15 Mar 2018 12:17:21 -0400 Subject: [PATCH 0180/1449] 65.0.3325.162 --- .gitignore | 1 + ...x-non-copyable-class-s-optional-move.patch | 41 +++ ...-methods-String-renamed-to-GetString.patch | 108 +++++++ ...eProvider-Settings-do-not-provide-co.patch | 22 ++ ...se-Optional-T-requires-the-full-decl.patch | 33 +++ ...std-move-to-base-Optional-instead-of.patch | 24 ++ ...-declare-ConfigurationPolicyProvider.patch | 18 ++ ...ional-copy-move-ctors-assign-operato.patch | 91 ++++++ ...verting-constructors-from-Optional-U.patch | 116 ++++++++ ...-Implement-value-forward-constructor.patch | 72 +++++ ...e-non-copy-non-move-assign-operators.patch | 144 ++++++++++ ...irmative-expression-in-base-Optional.patch | 265 ++++++++++++++++++ ...trivially_copy_constructable-failure.patch | 55 ++++ ...Remove-GC-checks-from-WTF-Optional-T.patch | 61 ++++ chromium-65.0.3325.146-wtf-vector-fix.patch | 54 ++++ chromium.spec | 53 +++- clean_ffmpeg.sh | 3 + sources | 1 + 18 files changed, 1159 insertions(+), 3 deletions(-) create mode 100644 chromium-65.0.3325.146-Fix-non-copyable-class-s-optional-move.patch create mode 100644 chromium-65.0.3325.146-GCC-IDB-methods-String-renamed-to-GetString.patch create mode 100644 chromium-65.0.3325.146-GCC-PlaybackImageProvider-Settings-do-not-provide-co.patch create mode 100644 chromium-65.0.3325.146-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch create mode 100644 chromium-65.0.3325.146-GCC-explicitely-std-move-to-base-Optional-instead-of.patch create mode 100644 chromium-65.0.3325.146-GCC-fully-declare-ConfigurationPolicyProvider.patch create mode 100644 chromium-65.0.3325.146-Implement-conditional-copy-move-ctors-assign-operato.patch create mode 100644 chromium-65.0.3325.146-Implement-converting-constructors-from-Optional-U.patch create mode 100644 chromium-65.0.3325.146-Implement-value-forward-constructor.patch create mode 100644 chromium-65.0.3325.146-Update-non-copy-non-move-assign-operators.patch create mode 100644 chromium-65.0.3325.146-Use-affirmative-expression-in-base-Optional.patch create mode 100644 chromium-65.0.3325.146-workaround-gcc7-is_trivially_copy_constructable-failure.patch create mode 100644 chromium-65.0.3325.146-wtf-oilpan-Remove-GC-checks-from-WTF-Optional-T.patch create mode 100644 chromium-65.0.3325.146-wtf-vector-fix.patch diff --git a/.gitignore b/.gitignore index 11c035f..3e50fe8 100644 --- a/.gitignore +++ b/.gitignore @@ -40,3 +40,4 @@ /chromium-64.0.3282.167-clean.tar.xz /chromium-64.0.3282.186-clean.tar.xz /chromium-65.0.3325.146-clean.tar.xz +/chromium-65.0.3325.162-clean.tar.xz diff --git a/chromium-65.0.3325.146-Fix-non-copyable-class-s-optional-move.patch b/chromium-65.0.3325.146-Fix-non-copyable-class-s-optional-move.patch new file mode 100644 index 0000000..6cf8ca8 --- /dev/null +++ b/chromium-65.0.3325.146-Fix-non-copyable-class-s-optional-move.patch @@ -0,0 +1,41 @@ +diff -up chromium-65.0.3325.146/base/optional.h.noncopyable chromium-65.0.3325.146/base/optional.h +--- chromium-65.0.3325.146/base/optional.h.noncopyable 2018-03-13 16:52:15.953729689 -0400 ++++ chromium-65.0.3325.146/base/optional.h 2018-03-13 16:53:55.365792522 -0400 +@@ -45,6 +45,15 @@ struct OptionalStorageBase { + + // When T is not trivially destructible we must call its + // destructor before deallocating its memory. ++ // Note that this hides the (implicitly declared) move constructor, which ++ // would be used for constexpr move constructor in OptionalStorage. ++ // It is needed iff T is trivially move constructible. However, the current ++ // is_trivially_{copy,move}_constructible implementation requires ++ // is_trivially_destructible (which looks a bug, cf: ++ // https://gcc.gnu.org/bugzilla/show_bug.cgi?id=51452 and ++ // http://cplusplus.github.io/LWG/lwg-active.html#2116), so it is not ++ // necessary for this case at the moment. Please see also the destructor ++ // comment in "is_trivially_destructible = true" specialization below. + ~OptionalStorageBase() { + if (!is_null_) + value_.~T(); +@@ -78,9 +87,18 @@ struct OptionalStorageBase(args)...) {} + + // When T is trivially destructible (i.e. its destructor does nothing) there +- // is no need to call it. Explicitly defaulting the destructor means it's not +- // user-provided. Those two together make this destructor trivial. +- ~OptionalStorageBase() = default; ++ // is no need to call it. Implicitly defined destructor is trivial, because ++ // both members (bool and union containing only variants which are trivially ++ // destructible) are trivially destructible. ++ // Explicitly-defaulted destructor is also trivial, but do not use it here, ++ // because it hides the implicit move constructor. It is needed to implement ++ // constexpr move constructor in OptionalStorage iff T is trivially move ++ // constructible. Note that, if T is trivially move constructible, the move ++ // constructor of OptionalStorageBase is also implicitly defined and it is ++ // trivially move constructor. If T is not trivially move constructible, ++ // "not declaring move constructor without destructor declaration" here means ++ // "delete move constructor", which works because any move constructor of ++ // OptionalStorage will not refer to it in that case. + + template + void Init(Args&&... args) { diff --git a/chromium-65.0.3325.146-GCC-IDB-methods-String-renamed-to-GetString.patch b/chromium-65.0.3325.146-GCC-IDB-methods-String-renamed-to-GetString.patch new file mode 100644 index 0000000..dbdf68f --- /dev/null +++ b/chromium-65.0.3325.146-GCC-IDB-methods-String-renamed-to-GetString.patch @@ -0,0 +1,108 @@ +diff -up chromium-65.0.3325.146/third_party/WebKit/Source/bindings/modules/v8/V8BindingForModules.cpp.GetString chromium-65.0.3325.146/third_party/WebKit/Source/bindings/modules/v8/V8BindingForModules.cpp +--- chromium-65.0.3325.146/third_party/WebKit/Source/bindings/modules/v8/V8BindingForModules.cpp.GetString 2018-03-13 22:54:27.262671113 -0400 ++++ chromium-65.0.3325.146/third_party/WebKit/Source/bindings/modules/v8/V8BindingForModules.cpp 2018-03-13 22:55:47.722113713 -0400 +@@ -68,7 +68,7 @@ v8::Local ToV8(const IDBKeyPa + case IDBKeyPath::kNullType: + return v8::Null(isolate); + case IDBKeyPath::kStringType: +- return V8String(isolate, value.String()); ++ return V8String(isolate, value.GetString()); + case IDBKeyPath::kArrayType: + return ToV8(value.Array(), creation_context, isolate); + } +@@ -97,7 +97,7 @@ v8::Local ToV8(const IDBKey* + case IDBKey::kNumberType: + return v8::Number::New(isolate, key->Number()); + case IDBKey::kStringType: +- return V8String(isolate, key->String()); ++ return V8String(isolate, key->GetString()); + case IDBKey::kBinaryType: + // https://w3c.github.io/IndexedDB/#convert-a-value-to-a-key + return ToV8(DOMArrayBuffer::Create(key->Binary()), creation_context, +@@ -379,7 +379,7 @@ static std::unique_ptr CreateIDB + } + + DCHECK_EQ(key_path.GetType(), IDBKeyPath::kStringType); +- return CreateIDBKeyFromValueAndKeyPath(isolate, value, key_path.String(), ++ return CreateIDBKeyFromValueAndKeyPath(isolate, value, key_path.GetString(), + exception_state); + } + +@@ -483,7 +483,7 @@ bool InjectV8KeyIntoV8Value(v8::Isolate* + DCHECK(isolate->InContext()); + + DCHECK_EQ(key_path.GetType(), IDBKeyPath::kStringType); +- Vector key_path_elements = ParseKeyPath(key_path.String()); ++ Vector key_path_elements = ParseKeyPath(key_path.GetString()); + + // The conbination of a key generator and an empty key path is forbidden by + // spec. +@@ -569,7 +569,7 @@ bool CanInjectIDBKeyIntoScriptValue(v8:: + const IDBKeyPath& key_path) { + IDB_TRACE("canInjectIDBKeyIntoScriptValue"); + DCHECK_EQ(key_path.GetType(), IDBKeyPath::kStringType); +- Vector key_path_elements = ParseKeyPath(key_path.String()); ++ Vector key_path_elements = ParseKeyPath(key_path.GetString()); + + if (!key_path_elements.size()) + return false; +diff -up chromium-65.0.3325.146/third_party/WebKit/Source/modules/exported/WebIDBKey.cpp.GetString chromium-65.0.3325.146/third_party/WebKit/Source/modules/exported/WebIDBKey.cpp +--- chromium-65.0.3325.146/third_party/WebKit/Source/modules/exported/WebIDBKey.cpp.GetString 2018-03-13 22:56:04.041798217 -0400 ++++ chromium-65.0.3325.146/third_party/WebKit/Source/modules/exported/WebIDBKey.cpp 2018-03-13 22:56:22.481440993 -0400 +@@ -56,7 +56,7 @@ WebData WebIDBKeyView::Binary() const { + } + + WebString WebIDBKeyView::String() const { +- return private_->String(); ++ return private_->GetString(); + } + + double WebIDBKeyView::Date() const { +diff -up chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBDatabase.cpp.GetString chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBDatabase.cpp +--- chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBDatabase.cpp.GetString 2018-03-13 22:56:36.028178758 -0400 ++++ chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBDatabase.cpp 2018-03-13 22:56:58.846736831 -0400 +@@ -297,7 +297,7 @@ IDBObjectStore* IDBDatabase::createObjec + } + + if (auto_increment && ((key_path.GetType() == IDBKeyPath::kStringType && +- key_path.String().IsEmpty()) || ++ key_path.GetString().IsEmpty()) || + key_path.GetType() == IDBKeyPath::kArrayType)) { + exception_state.ThrowDOMException( + kInvalidAccessError, +diff -up chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBKey.h.GetString chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBKey.h +--- chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBKey.h.GetString 2018-03-13 22:57:13.229458842 -0400 ++++ chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBKey.h 2018-03-13 22:57:38.633966776 -0400 +@@ -106,7 +106,7 @@ class MODULES_EXPORT IDBKey { + return binary_; + } + +- const String& String() const { ++ const String& GetString() const { + DCHECK_EQ(type_, kStringType); + return string_; + } +diff -up chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBKeyPath.h.GetString chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBKeyPath.h +--- chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBKeyPath.h.GetString 2018-03-13 22:57:51.104725428 -0400 ++++ chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBKeyPath.h 2018-03-13 22:58:09.459369906 -0400 +@@ -65,7 +65,7 @@ class MODULES_EXPORT IDBKeyPath { + return array_; + } + +- const String& String() const { ++ const String& GetString() const { + DCHECK_EQ(type_, kStringType); + return string_; + } +diff -up chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/InspectorIndexedDBAgent.cpp.GetString chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/InspectorIndexedDBAgent.cpp +--- chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/InspectorIndexedDBAgent.cpp.GetString 2018-03-13 22:58:28.778995834 -0400 ++++ chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/InspectorIndexedDBAgent.cpp 2018-03-13 22:58:45.044681364 -0400 +@@ -399,7 +399,7 @@ static std::unique_ptr KeyPathF + case IDBKeyPath::kStringType: + key_path = KeyPath::create() + .setType(KeyPath::TypeEnum::String) +- .setString(idb_key_path.String()) ++ .setString(idb_key_path.GetString()) + .build(); + break; + case IDBKeyPath::kArrayType: { diff --git a/chromium-65.0.3325.146-GCC-PlaybackImageProvider-Settings-do-not-provide-co.patch b/chromium-65.0.3325.146-GCC-PlaybackImageProvider-Settings-do-not-provide-co.patch new file mode 100644 index 0000000..8edc424 --- /dev/null +++ b/chromium-65.0.3325.146-GCC-PlaybackImageProvider-Settings-do-not-provide-co.patch @@ -0,0 +1,22 @@ +diff -up chromium-65.0.3325.146/cc/raster/playback_image_provider.cc.pipcc chromium-65.0.3325.146/cc/raster/playback_image_provider.cc +--- chromium-65.0.3325.146/cc/raster/playback_image_provider.cc.pipcc 2018-03-13 22:47:00.271322726 -0400 ++++ chromium-65.0.3325.146/cc/raster/playback_image_provider.cc 2018-03-13 22:47:53.127300060 -0400 +@@ -92,7 +92,6 @@ PlaybackImageProvider::GetDecodedDrawIma + } + + PlaybackImageProvider::Settings::Settings() = default; +-PlaybackImageProvider::Settings::Settings(const Settings& other) = default; + PlaybackImageProvider::Settings::~Settings() = default; + + } // namespace cc +diff -up chromium-65.0.3325.146/cc/raster/playback_image_provider.h.pipcc chromium-65.0.3325.146/cc/raster/playback_image_provider.h +--- chromium-65.0.3325.146/cc/raster/playback_image_provider.h.pipcc 2018-03-13 22:48:00.673153629 -0400 ++++ chromium-65.0.3325.146/cc/raster/playback_image_provider.h 2018-03-13 22:48:12.726920597 -0400 +@@ -20,7 +20,6 @@ class CC_EXPORT PlaybackImageProvider : + public: + struct CC_EXPORT Settings { + Settings(); +- Settings(const Settings& other); + ~Settings(); + + // The set of image ids to skip during raster. diff --git a/chromium-65.0.3325.146-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch b/chromium-65.0.3325.146-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch new file mode 100644 index 0000000..62124be --- /dev/null +++ b/chromium-65.0.3325.146-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch @@ -0,0 +1,33 @@ +diff -up chromium-65.0.3325.146/services/preferences/tracked/pref_hash_filter.h.fulldecl chromium-65.0.3325.146/services/preferences/tracked/pref_hash_filter.h +--- chromium-65.0.3325.146/services/preferences/tracked/pref_hash_filter.h.fulldecl 2018-03-13 16:38:38.870652491 -0400 ++++ chromium-65.0.3325.146/services/preferences/tracked/pref_hash_filter.h 2018-03-13 16:39:02.691186647 -0400 +@@ -21,9 +21,9 @@ + #include "services/preferences/public/interfaces/preferences.mojom.h" + #include "services/preferences/tracked/hash_store_contents.h" + #include "services/preferences/tracked/interceptable_pref_filter.h" ++#include "services/preferences/tracked/pref_hash_store.h" + #include "services/preferences/tracked/tracked_preference.h" + +-class PrefHashStore; + class PrefService; + + namespace base { +diff -up chromium-65.0.3325.146/third_party/WebKit/Source/modules/webdatabase/SQLTransactionBackend.h.fulldecl chromium-65.0.3325.146/third_party/WebKit/Source/modules/webdatabase/SQLTransactionBackend.h +--- chromium-65.0.3325.146/third_party/WebKit/Source/modules/webdatabase/SQLTransactionBackend.h.fulldecl 2018-03-13 16:39:13.787970233 -0400 ++++ chromium-65.0.3325.146/third_party/WebKit/Source/modules/webdatabase/SQLTransactionBackend.h 2018-03-13 16:39:42.614407235 -0400 +@@ -30,6 +30,7 @@ + + #include + #include "modules/webdatabase/DatabaseBasicTypes.h" ++#include "modules/webdatabase/SQLError.h" + #include "modules/webdatabase/SQLStatement.h" + #include "modules/webdatabase/SQLStatementBackend.h" + #include "modules/webdatabase/SQLTransactionStateMachine.h" +@@ -41,7 +42,6 @@ + namespace blink { + + class Database; +-class SQLErrorData; + class SQLiteTransaction; + class SQLTransaction; + class SQLTransactionBackend; diff --git a/chromium-65.0.3325.146-GCC-explicitely-std-move-to-base-Optional-instead-of.patch b/chromium-65.0.3325.146-GCC-explicitely-std-move-to-base-Optional-instead-of.patch new file mode 100644 index 0000000..9c6f315 --- /dev/null +++ b/chromium-65.0.3325.146-GCC-explicitely-std-move-to-base-Optional-instead-of.patch @@ -0,0 +1,24 @@ +diff -up chromium-65.0.3325.146/content/browser/appcache/appcache_request_handler.cc.explicit-std-move chromium-65.0.3325.146/content/browser/appcache/appcache_request_handler.cc +--- chromium-65.0.3325.146/content/browser/appcache/appcache_request_handler.cc.explicit-std-move 2018-03-13 22:50:41.346043716 -0400 ++++ chromium-65.0.3325.146/content/browser/appcache/appcache_request_handler.cc 2018-03-13 22:51:21.428267583 -0400 +@@ -639,7 +639,7 @@ AppCacheRequestHandler::MaybeCreateSubre + + SubresourceLoaderParams params; + params.loader_factory_info = factory_ptr.PassInterface(); +- return params; ++ return base::Optional(std::move(params)); + } + + void AppCacheRequestHandler::MaybeCreateSubresourceLoader( +diff -up chromium-65.0.3325.146/content/browser/service_worker/service_worker_controllee_request_handler.cc.explicit-std-move chromium-65.0.3325.146/content/browser/service_worker/service_worker_controllee_request_handler.cc +--- chromium-65.0.3325.146/content/browser/service_worker/service_worker_controllee_request_handler.cc.explicit-std-move 2018-03-13 22:51:38.133943776 -0400 ++++ chromium-65.0.3325.146/content/browser/service_worker/service_worker_controllee_request_handler.cc 2018-03-13 22:51:57.658566347 -0400 +@@ -271,7 +271,7 @@ ServiceWorkerControlleeRequestHandler::M + controller_info->object_info = provider_host_->GetOrCreateServiceWorkerHandle( + provider_host_->controller()); + params.controller_service_worker_info = std::move(controller_info); +- return params; ++ return base::Optional(std::move(params)); + } + + void ServiceWorkerControlleeRequestHandler::PrepareForMainResource( diff --git a/chromium-65.0.3325.146-GCC-fully-declare-ConfigurationPolicyProvider.patch b/chromium-65.0.3325.146-GCC-fully-declare-ConfigurationPolicyProvider.patch new file mode 100644 index 0000000..809a321 --- /dev/null +++ b/chromium-65.0.3325.146-GCC-fully-declare-ConfigurationPolicyProvider.patch @@ -0,0 +1,18 @@ +diff -up chromium-65.0.3325.146/components/policy/core/browser/browser_policy_connector_base.h.fully-declare chromium-65.0.3325.146/components/policy/core/browser/browser_policy_connector_base.h +--- chromium-65.0.3325.146/components/policy/core/browser/browser_policy_connector_base.h.fully-declare 2018-03-13 23:02:13.989635567 -0400 ++++ chromium-65.0.3325.146/components/policy/core/browser/browser_policy_connector_base.h 2018-03-13 23:02:44.318048625 -0400 +@@ -12,13 +12,13 @@ + #include "base/macros.h" + #include "base/optional.h" + #include "components/policy/core/browser/configuration_policy_handler_list.h" ++#include "components/policy/core/common/configuration_policy_provider.h" + #include "components/policy/core/common/schema.h" + #include "components/policy/core/common/schema_registry.h" + #include "components/policy/policy_export.h" + + namespace policy { + +-class ConfigurationPolicyProvider; + class PolicyService; + class PolicyServiceImpl; + diff --git a/chromium-65.0.3325.146-Implement-conditional-copy-move-ctors-assign-operato.patch b/chromium-65.0.3325.146-Implement-conditional-copy-move-ctors-assign-operato.patch new file mode 100644 index 0000000..9b4befe --- /dev/null +++ b/chromium-65.0.3325.146-Implement-conditional-copy-move-ctors-assign-operato.patch @@ -0,0 +1,91 @@ +diff -up chromium-65.0.3325.146/base/optional.h.conditional chromium-65.0.3325.146/base/optional.h +--- chromium-65.0.3325.146/base/optional.h.conditional 2018-03-13 22:11:02.328058249 -0400 ++++ chromium-65.0.3325.146/base/optional.h 2018-03-13 22:12:43.622098296 -0400 +@@ -266,6 +266,58 @@ class OptionalBase { + OptionalStorage storage_; + }; + ++// The following {Copy,Move}{Constructible,Assignable} structs are helpers to ++// implement constructor/assign-operator overloading. Specifically, if T is ++// is not movable but copyable, Optional's move constructor should not ++// participate in overload resolution. This inheritance trick implements that. ++template ++struct CopyConstructible {}; ++ ++template <> ++struct CopyConstructible { ++ constexpr CopyConstructible() = default; ++ constexpr CopyConstructible(const CopyConstructible&) = delete; ++ constexpr CopyConstructible(CopyConstructible&&) = default; ++ CopyConstructible& operator=(const CopyConstructible&) = default; ++ CopyConstructible& operator=(CopyConstructible&&) = default; ++}; ++ ++template ++struct MoveConstructible {}; ++ ++template <> ++struct MoveConstructible { ++ constexpr MoveConstructible() = default; ++ constexpr MoveConstructible(const MoveConstructible&) = default; ++ constexpr MoveConstructible(MoveConstructible&&) = delete; ++ MoveConstructible& operator=(const MoveConstructible&) = default; ++ MoveConstructible& operator=(MoveConstructible&&) = default; ++}; ++ ++template ++struct CopyAssignable {}; ++ ++template <> ++struct CopyAssignable { ++ constexpr CopyAssignable() = default; ++ constexpr CopyAssignable(const CopyAssignable&) = default; ++ constexpr CopyAssignable(CopyAssignable&&) = default; ++ CopyAssignable& operator=(const CopyAssignable&) = delete; ++ CopyAssignable& operator=(CopyAssignable&&) = default; ++}; ++ ++template ++struct MoveAssignable {}; ++ ++template <> ++struct MoveAssignable { ++ constexpr MoveAssignable() = default; ++ constexpr MoveAssignable(const MoveAssignable&) = default; ++ constexpr MoveAssignable(MoveAssignable&&) = default; ++ MoveAssignable& operator=(const MoveAssignable&) = default; ++ MoveAssignable& operator=(MoveAssignable&&) = delete; ++}; ++ + } // namespace internal + + // base::Optional is a Chromium version of the C++17 optional class: +@@ -280,12 +332,18 @@ class OptionalBase { + // - No exceptions are thrown, because they are banned from Chromium. + // - All the non-members are in the 'base' namespace instead of 'std'. + template +-class Optional : public internal::OptionalBase { ++class Optional ++ : public internal::OptionalBase, ++ public internal::CopyConstructible::value>, ++ public internal::MoveConstructible::value>, ++ public internal::CopyAssignable::value && ++ std::is_copy_assignable::value>, ++ public internal::MoveAssignable::value && ++ std::is_move_assignable::value> { + public: + using value_type = T; + + // Defer default/copy/move constructor implementation to OptionalBase. +- // TODO(hidehiko): Implement conditional enabling. + constexpr Optional() = default; + constexpr Optional(const Optional& other) = default; + constexpr Optional(Optional&& other) = default; +@@ -316,7 +374,6 @@ class Optional : public internal::Option + ~Optional() = default; + + // Defer copy-/move- assign operator implementation to OptionalBase. +- // TOOD(hidehiko): Implement conditional enabling. + Optional& operator=(const Optional& other) = default; + Optional& operator=(Optional&& other) = default; + diff --git a/chromium-65.0.3325.146-Implement-converting-constructors-from-Optional-U.patch b/chromium-65.0.3325.146-Implement-converting-constructors-from-Optional-U.patch new file mode 100644 index 0000000..3214104 --- /dev/null +++ b/chromium-65.0.3325.146-Implement-converting-constructors-from-Optional-U.patch @@ -0,0 +1,116 @@ +diff -up chromium-65.0.3325.146/base/optional.h.converting chromium-65.0.3325.146/base/optional.h +--- chromium-65.0.3325.146/base/optional.h.converting 2018-03-13 22:31:05.248797490 -0400 ++++ chromium-65.0.3325.146/base/optional.h 2018-03-13 22:33:10.826368771 -0400 +@@ -31,6 +31,10 @@ constexpr in_place_t in_place = {}; + // http://en.cppreference.com/w/cpp/utility/optional/nullopt + constexpr nullopt_t nullopt(0); + ++// Forward declaration, which is refered by following helpers. ++template ++class Optional; ++ + namespace internal { + + template ::value> +@@ -220,6 +224,19 @@ class OptionalBase { + constexpr explicit OptionalBase(in_place_t, Args&&... args) + : storage_(in_place, std::forward(args)...) {} + ++ // Implementation of converting constructors. ++ template ++ explicit OptionalBase(const OptionalBase& other) { ++ if (other.storage_.is_populated_) ++ storage_.Init(other.storage_.value_); ++ } ++ ++ template ++ explicit OptionalBase(OptionalBase&& other) { ++ if (other.storage_.is_populated_) ++ storage_.Init(std::move(other.storage_.value_)); ++ } ++ + ~OptionalBase() = default; + + OptionalBase& operator=(const OptionalBase& other) { +@@ -263,6 +280,11 @@ class OptionalBase { + storage_.is_populated_ = false; + } + ++ // For implementing conversion, allow access to other typed OptionalBase ++ // class. ++ template ++ friend class OptionalBase; ++ + OptionalStorage storage_; + }; + +@@ -318,6 +340,20 @@ struct MoveAssignable { + MoveAssignable& operator=(MoveAssignable&&) = delete; + }; + ++// Helper to conditionally enable converting constructors. ++template ++struct IsConvertibleFromOptional ++ : std::integral_constant< ++ bool, ++ std::is_constructible&>::value || ++ std::is_constructible&>::value || ++ std::is_constructible&&>::value || ++ std::is_constructible&&>::value || ++ std::is_convertible&, T>::value || ++ std::is_convertible&, T>::value || ++ std::is_convertible&&, T>::value || ++ std::is_convertible&&, T>::value> {}; ++ + } // namespace internal + + // base::Optional is a Chromium version of the C++17 optional class: +@@ -348,7 +384,47 @@ class Optional + constexpr Optional(const Optional& other) = default; + constexpr Optional(Optional&& other) = default; + +- constexpr Optional(nullopt_t) {} ++ constexpr Optional(nullopt_t) {} // NOLINT(runtime/explicit) ++ ++ // Converting copy constructor. "explicit" only if ++ // std::is_convertible::value is false. It is implemented by ++ // declaring two almost same constructors, but that condition in enable_if_t ++ // is different, so that either one is chosen, thanks to SFINAE. ++ template < ++ typename U, ++ std::enable_if_t::value && ++ !internal::IsConvertibleFromOptional::value && ++ std::is_convertible::value, ++ bool> = false> ++ Optional(const Optional& other) : internal::OptionalBase(other) {} ++ ++ template < ++ typename U, ++ std::enable_if_t::value && ++ !internal::IsConvertibleFromOptional::value && ++ !std::is_convertible::value, ++ bool> = false> ++ explicit Optional(const Optional& other) ++ : internal::OptionalBase(other) {} ++ ++ // Converting move constructor. Similar to converting copy constructor, ++ // declaring two (explicit and non-explicit) constructors. ++ template < ++ typename U, ++ std::enable_if_t::value && ++ !internal::IsConvertibleFromOptional::value && ++ std::is_convertible::value, ++ bool> = false> ++ Optional(Optional&& other) : internal::OptionalBase(std::move(other)) {} ++ ++ template < ++ typename U, ++ std::enable_if_t::value && ++ !internal::IsConvertibleFromOptional::value && ++ !std::is_convertible::value, ++ bool> = false> ++ explicit Optional(Optional&& other) ++ : internal::OptionalBase(std::move(other)) {} + + constexpr Optional(const T& value) + : internal::OptionalBase(in_place, value) {} diff --git a/chromium-65.0.3325.146-Implement-value-forward-constructor.patch b/chromium-65.0.3325.146-Implement-value-forward-constructor.patch new file mode 100644 index 0000000..db727d8 --- /dev/null +++ b/chromium-65.0.3325.146-Implement-value-forward-constructor.patch @@ -0,0 +1,72 @@ +diff -up chromium-65.0.3325.146/base/optional.h.vforward chromium-65.0.3325.146/base/optional.h +--- chromium-65.0.3325.146/base/optional.h.vforward 2018-03-13 22:35:46.383359966 -0400 ++++ chromium-65.0.3325.146/base/optional.h 2018-03-13 22:37:48.724992995 -0400 +@@ -354,6 +354,10 @@ struct IsConvertibleFromOptional + std::is_convertible&&, T>::value || + std::is_convertible&&, T>::value> {}; + ++// Forward compatibility for C++20. ++template ++using RemoveCvRefT = std::remove_cv_t>; ++ + } // namespace internal + + // base::Optional is a Chromium version of the C++17 optional class: +@@ -367,6 +371,13 @@ struct IsConvertibleFromOptional + // - 'constexpr' might be missing in some places for reasons specified locally. + // - No exceptions are thrown, because they are banned from Chromium. + // - All the non-members are in the 'base' namespace instead of 'std'. ++// ++// Note that T cannot have a constructor T(Optional) etc. Optional checks ++// T's constructor (specifically via IsConvertibleFromOptional), and in the ++// check whether T can be constructible from Optional, which is recursive ++// so it does not work. As of Feb 2018, std::optional C++17 implementation in ++// both clang and gcc has same limitation. MSVC SFINAE looks to have different ++// behavior, but anyway it reports an error, too. + template + class Optional + : public internal::OptionalBase, +@@ -426,12 +437,6 @@ class Optional + explicit Optional(Optional&& other) + : internal::OptionalBase(std::move(other)) {} + +- constexpr Optional(const T& value) +- : internal::OptionalBase(in_place, value) {} +- +- constexpr Optional(T&& value) +- : internal::OptionalBase(in_place, std::move(value)) {} +- + template + constexpr explicit Optional(in_place_t, Args&&... args) + : internal::OptionalBase(in_place, std::forward(args)...) {} +@@ -447,6 +452,30 @@ class Optional + Args&&... args) + : internal::OptionalBase(in_place, il, std::forward(args)...) {} + ++ // Forward value constructor. Similar to converting constructors, ++ // conditionally explicit. ++ template < ++ typename U = value_type, ++ std::enable_if_t< ++ std::is_constructible::value && ++ !std::is_same, in_place_t>::value && ++ !std::is_same, Optional>::value && ++ std::is_convertible::value, ++ bool> = false> ++ constexpr Optional(U&& value) ++ : internal::OptionalBase(in_place, std::forward(value)) {} ++ ++ template < ++ typename U = value_type, ++ std::enable_if_t< ++ std::is_constructible::value && ++ !std::is_same, in_place_t>::value && ++ !std::is_same, Optional>::value && ++ !std::is_convertible::value, ++ bool> = false> ++ constexpr explicit Optional(U&& value) ++ : internal::OptionalBase(in_place, std::forward(value)) {} ++ + ~Optional() = default; + + // Defer copy-/move- assign operator implementation to OptionalBase. diff --git a/chromium-65.0.3325.146-Update-non-copy-non-move-assign-operators.patch b/chromium-65.0.3325.146-Update-non-copy-non-move-assign-operators.patch new file mode 100644 index 0000000..f9c4503 --- /dev/null +++ b/chromium-65.0.3325.146-Update-non-copy-non-move-assign-operators.patch @@ -0,0 +1,144 @@ +diff -up chromium-65.0.3325.146/base/optional.h.ncnm chromium-65.0.3325.146/base/optional.h +--- chromium-65.0.3325.146/base/optional.h.ncnm 2018-03-13 22:40:11.743226276 -0400 ++++ chromium-65.0.3325.146/base/optional.h 2018-03-13 22:44:30.948211358 -0400 +@@ -240,37 +240,37 @@ class OptionalBase { + ~OptionalBase() = default; + + OptionalBase& operator=(const OptionalBase& other) { +- if (!other.storage_.is_populated_) { +- FreeIfNeeded(); +- return *this; +- } +- +- InitOrAssign(other.storage_.value_); ++ CopyAssign(other); + return *this; + } + + OptionalBase& operator=(OptionalBase&& other) { +- if (!other.storage_.is_populated_) { +- FreeIfNeeded(); +- return *this; +- } +- +- InitOrAssign(std::move(other.storage_.value_)); ++ MoveAssign(std::move(other)); + return *this; + } + +- void InitOrAssign(const T& value) { +- if (!storage_.is_populated_) +- storage_.Init(value); ++ template ++ void CopyAssign(const OptionalBase& other) { ++ if (other.storage_.is_populated_) ++ InitOrAssign(other.storage_.value_); + else +- storage_.value_ = value; ++ FreeIfNeeded(); + } + +- void InitOrAssign(T&& value) { +- if (!storage_.is_populated_) +- storage_.Init(std::move(value)); ++ template ++ void MoveAssign(OptionalBase&& other) { ++ if (other.storage_.is_populated_) ++ InitOrAssign(std::move(other.storage_.value_)); ++ else ++ FreeIfNeeded(); ++ } ++ ++ template ++ void InitOrAssign(U&& value) { ++ if (storage_.is_populated_) ++ storage_.value_ = std::forward(value); + else +- storage_.value_ = std::move(value); ++ storage_.Init(std::forward(value)); + } + + void FreeIfNeeded() { +@@ -340,7 +340,7 @@ struct MoveAssignable { + MoveAssignable& operator=(MoveAssignable&&) = delete; + }; + +-// Helper to conditionally enable converting constructors. ++// Helper to conditionally enable converting constructors and assign operators. + template + struct IsConvertibleFromOptional + : std::integral_constant< +@@ -354,6 +354,16 @@ struct IsConvertibleFromOptional + std::is_convertible&&, T>::value || + std::is_convertible&&, T>::value> {}; + ++template ++struct IsAssignableFromOptional ++ : std::integral_constant< ++ bool, ++ IsConvertibleFromOptional::value || ++ std::is_assignable&>::value || ++ std::is_assignable&>::value || ++ std::is_assignable&&>::value || ++ std::is_assignable&&>::value> {}; ++ + // Forward compatibility for C++20. + template + using RemoveCvRefT = std::remove_cv_t>; +@@ -487,14 +497,42 @@ class Optional + return *this; + } + +- template +- typename std::enable_if, T>::value, +- Optional&>::type ++ // Perfect-forwarded assignment. ++ template ++ std::enable_if_t< ++ !std::is_same, Optional>::value && ++ std::is_constructible::value && ++ std::is_assignable::value && ++ (!std::is_scalar::value || ++ !std::is_same, T>::value), ++ Optional&> + operator=(U&& value) { + InitOrAssign(std::forward(value)); + return *this; + } + ++// Copy assign the state of other. ++ template ++ std::enable_if_t::value && ++ std::is_constructible::value && ++ std::is_assignable::value, ++ Optional&> ++ operator=(const Optional& other) { ++ CopyAssign(other); ++ return *this; ++ } ++ ++ // Move assign the state of other. ++ template ++ std::enable_if_t::value && ++ std::is_constructible::value && ++ std::is_assignable::value, ++ Optional&> ++ operator=(Optional&& other) { ++ MoveAssign(std::move(other)); ++ return *this; ++ } ++ + constexpr const T* operator->() const { + DCHECK(storage_.is_populated_); + return &value(); +@@ -606,8 +644,10 @@ class Optional + private: + // Accessing template base class's protected member needs explicit + // declaration to do so. ++ using internal::OptionalBase::CopyAssign; + using internal::OptionalBase::FreeIfNeeded; + using internal::OptionalBase::InitOrAssign; ++ using internal::OptionalBase::MoveAssign; + using internal::OptionalBase::storage_; + }; + diff --git a/chromium-65.0.3325.146-Use-affirmative-expression-in-base-Optional.patch b/chromium-65.0.3325.146-Use-affirmative-expression-in-base-Optional.patch new file mode 100644 index 0000000..8aaea85 --- /dev/null +++ b/chromium-65.0.3325.146-Use-affirmative-expression-in-base-Optional.patch @@ -0,0 +1,265 @@ +diff -up chromium-65.0.3325.146/base/optional.h.affirmative chromium-65.0.3325.146/base/optional.h +--- chromium-65.0.3325.146/base/optional.h.affirmative 2018-03-13 22:27:29.451969704 -0400 ++++ chromium-65.0.3325.146/base/optional.h 2018-03-13 22:27:57.031436045 -0400 +@@ -41,7 +41,7 @@ struct OptionalStorageBase { + + template + constexpr explicit OptionalStorageBase(in_place_t, Args&&... args) +- : is_null_(false), value_(std::forward(args)...) {} ++ : is_populated_(true), value_(std::forward(args)...) {} + + // When T is not trivially destructible we must call its + // destructor before deallocating its memory. +@@ -55,18 +55,18 @@ struct OptionalStorageBase { + // necessary for this case at the moment. Please see also the destructor + // comment in "is_trivially_destructible = true" specialization below. + ~OptionalStorageBase() { +- if (!is_null_) ++ if (is_populated_) + value_.~T(); + } + + template + void Init(Args&&... args) { +- DCHECK(is_null_); ++ DCHECK(!is_populated_); + ::new (&value_) T(std::forward(args)...); +- is_null_ = false; ++ is_populated_ = true; + } + +- bool is_null_ = true; ++ bool is_populated_ = false; + union { + // |empty_| exists so that the union will always be initialized, even when + // it doesn't contain a value. Union members must be initialized for the +@@ -84,7 +84,7 @@ struct OptionalStorageBase + constexpr explicit OptionalStorageBase(in_place_t, Args&&... args) +- : is_null_(false), value_(std::forward(args)...) {} ++ : is_populated_(true), value_(std::forward(args)...) {} + + // When T is trivially destructible (i.e. its destructor does nothing) there + // is no need to call it. Implicitly defined destructor is trivial, because +@@ -102,12 +102,12 @@ struct OptionalStorageBase + void Init(Args&&... args) { +- DCHECK(is_null_); ++ DCHECK(!is_populated_); + ::new (&value_) T(std::forward(args)...); +- is_null_ = false; ++ is_populated_ = true; + } + +- bool is_null_ = true; ++ bool is_populated_ = false; + union { + // |empty_| exists so that the union will always be initialized, even when + // it doesn't contain a value. Union members must be initialized for the +@@ -133,7 +133,7 @@ struct OptionalStorage : OptionalStorage + + // Accessing the members of template base class requires explicit + // declaration. +- using OptionalStorageBase::is_null_; ++ using OptionalStorageBase::is_populated_; + using OptionalStorageBase::value_; + using OptionalStorageBase::Init; + +@@ -145,12 +145,12 @@ struct OptionalStorage : OptionalStorage + OptionalStorage() = default; + + OptionalStorage(const OptionalStorage& other) { +- if (!other.is_null_) ++ if (other.is_populated_) + Init(other.value_); + } + + OptionalStorage(OptionalStorage&& other) { +- if (!other.is_null_) ++ if (other.is_populated_) + Init(std::move(other.value_)); + } + }; +@@ -160,7 +160,7 @@ struct OptionalStorage + : OptionalStorageBase { +- using OptionalStorageBase::is_null_; ++ using OptionalStorageBase::is_populated_; + using OptionalStorageBase::value_; + using OptionalStorageBase::Init; + using OptionalStorageBase::OptionalStorageBase; +@@ -169,7 +169,7 @@ struct OptionalStorage + : OptionalStorageBase { +- using OptionalStorageBase::is_null_; ++ using OptionalStorageBase::is_populated_; + using OptionalStorageBase::value_; + using OptionalStorageBase::Init; + using OptionalStorageBase::OptionalStorageBase; +@@ -188,7 +188,7 @@ struct OptionalStorage storage_; +@@ -334,12 +334,12 @@ class Optional : public internal::Option + } + + constexpr const T* operator->() const { +- DCHECK(!storage_.is_null_); ++ DCHECK(storage_.is_populated_); + return &value(); + } + + constexpr T* operator->() { +- DCHECK(!storage_.is_null_); ++ DCHECK(storage_.is_populated_); + return &value(); + } + +@@ -351,27 +351,27 @@ class Optional : public internal::Option + + constexpr T&& operator*() && { return std::move(value()); } + +- constexpr explicit operator bool() const { return !storage_.is_null_; } ++ constexpr explicit operator bool() const { return storage_.is_populated_; } + +- constexpr bool has_value() const { return !storage_.is_null_; } ++ constexpr bool has_value() const { return storage_.is_populated_; } + + constexpr T& value() & { +- DCHECK(!storage_.is_null_); ++ DCHECK(storage_.is_populated_); + return storage_.value_; + } + + constexpr const T& value() const & { +- DCHECK(!storage_.is_null_); ++ DCHECK(storage_.is_populated_); + return storage_.value_; + } + + constexpr T&& value() && { +- DCHECK(!storage_.is_null_); ++ DCHECK(storage_.is_populated_); + return std::move(storage_.value_); + } + + constexpr const T&& value() const && { +- DCHECK(!storage_.is_null_); ++ DCHECK(storage_.is_populated_); + return std::move(storage_.value_); + } + +@@ -382,8 +382,9 @@ class Optional : public internal::Option + // "T must be copy constructible"); + static_assert(std::is_convertible::value, + "U must be convertible to T"); +- return storage_.is_null_ ? static_cast(std::forward(default_value)) +- : value(); ++ return storage_.is_populated_ ++ ? value() ++ : static_cast(std::forward(default_value)); + } + + template +@@ -393,26 +394,27 @@ class Optional : public internal::Option + // "T must be move constructible"); + static_assert(std::is_convertible::value, + "U must be convertible to T"); +- return storage_.is_null_ ? static_cast(std::forward(default_value)) +- : std::move(value()); ++ return storage_.is_populated_ ++ ? std::move(value()) ++ : static_cast(std::forward(default_value)); + } + + void swap(Optional& other) { +- if (storage_.is_null_ && other.storage_.is_null_) ++ if (!storage_.is_populated_ && !other.storage_.is_populated_) + return; + +- if (storage_.is_null_ != other.storage_.is_null_) { +- if (storage_.is_null_) { +- storage_.Init(std::move(other.storage_.value_)); +- other.FreeIfNeeded(); +- } else { ++ if (storage_.is_populated_ != other.storage_.is_populated_) { ++ if (storage_.is_populated_) { + other.storage_.Init(std::move(storage_.value_)); + FreeIfNeeded(); ++ } else { ++ storage_.Init(std::move(other.storage_.value_)); ++ other.FreeIfNeeded(); + } + return; + } + +- DCHECK(!storage_.is_null_ && !other.storage_.is_null_); ++ DCHECK(storage_.is_populated_ && other.storage_.is_populated_); + using std::swap; + swap(**this, *other); + } diff --git a/chromium-65.0.3325.146-workaround-gcc7-is_trivially_copy_constructable-failure.patch b/chromium-65.0.3325.146-workaround-gcc7-is_trivially_copy_constructable-failure.patch new file mode 100644 index 0000000..241dfb5 --- /dev/null +++ b/chromium-65.0.3325.146-workaround-gcc7-is_trivially_copy_constructable-failure.patch @@ -0,0 +1,55 @@ +diff -up chromium-65.0.3325.146/base/optional.h.784732 chromium-65.0.3325.146/base/optional.h +--- chromium-65.0.3325.146/base/optional.h.784732 2018-03-07 13:40:00.103579631 -0500 ++++ chromium-65.0.3325.146/base/optional.h 2018-03-07 13:41:08.950323996 -0500 +@@ -9,6 +9,7 @@ + #include + + #include "base/logging.h" ++#include "base/template_util.h" + + namespace base { + +@@ -106,7 +107,7 @@ struct OptionalStorageBase::value, ++ bool = is_trivially_copy_constructible::value, + bool = std::is_trivially_move_constructible::value> + struct OptionalStorage : OptionalStorageBase { + // This is no trivially {copy,move} constructible case. Other cases are +diff -up chromium-65.0.3325.146/base/template_util.h.784732 chromium-65.0.3325.146/base/template_util.h +--- chromium-65.0.3325.146/base/template_util.h.784732 2018-03-07 13:41:19.479131969 -0500 ++++ chromium-65.0.3325.146/base/template_util.h 2018-03-07 13:42:41.308639551 -0500 +@@ -10,6 +10,7 @@ + #include + #include + #include ++#include + + #include "build/build_config.h" + +@@ -127,6 +128,23 @@ template + using is_trivially_copyable = std::is_trivially_copyable; + #endif + ++#if defined(__GNUC__) && !defined(__clang__) && __GNUC__ <= 7 ++// Workaround for g++7 and earlier family. ++// Due to https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80654, without this ++// Optional> where T is non-copyable causes a compile error. ++// As we know it is not trivially copy constructible, explicitly declare so. ++template ++struct is_trivially_copy_constructible ++ : std::is_trivially_copy_constructible {}; ++ ++template ++struct is_trivially_copy_constructible> : std::false_type {}; ++#else ++// Otherwise use std::is_trivially_copy_constructible as is. ++template ++using is_trivially_copy_constructible = std::is_trivially_copy_constructible; ++#endif ++ + } // namespace base + + #undef CR_USE_FALLBACKS_FOR_GCC_WITH_LIBCXX diff --git a/chromium-65.0.3325.146-wtf-oilpan-Remove-GC-checks-from-WTF-Optional-T.patch b/chromium-65.0.3325.146-wtf-oilpan-Remove-GC-checks-from-WTF-Optional-T.patch new file mode 100644 index 0000000..8b5ff7f --- /dev/null +++ b/chromium-65.0.3325.146-wtf-oilpan-Remove-GC-checks-from-WTF-Optional-T.patch @@ -0,0 +1,61 @@ +diff -up chromium-65.0.3325.146/third_party/WebKit/Source/platform/heap/TraceTraits.h.oilpan chromium-65.0.3325.146/third_party/WebKit/Source/platform/heap/TraceTraits.h +--- chromium-65.0.3325.146/third_party/WebKit/Source/platform/heap/TraceTraits.h.oilpan 2018-03-13 16:45:40.613426445 -0400 ++++ chromium-65.0.3325.146/third_party/WebKit/Source/platform/heap/TraceTraits.h 2018-03-13 16:45:49.946244905 -0400 +@@ -18,6 +18,7 @@ + #include "platform/wtf/HashTable.h" + #include "platform/wtf/LinkedHashSet.h" + #include "platform/wtf/ListHashSet.h" ++#include "platform/wtf/Optional.h" + #include "platform/wtf/TypeTraits.h" + + namespace blink { +@@ -325,6 +326,23 @@ class TraceTrait> { + } + }; + ++// While using Optional with garbage-collected types is generally disallowed ++// by the OptionalGarbageCollected check in blink_gc_plugin, garbage-collected ++// containers such as HeapVector are allowed and need to be traced. ++template ++class TraceTrait> { ++ STATIC_ONLY(TraceTrait); ++ ++ public: ++ template ++ static void Trace(VisitorDispatcher visitor, WTF::Optional* optional) { ++ if (*optional != WTF::nullopt) { ++ TraceIfEnabled::value>::Trace(visitor, ++ optional->value()); ++ } ++ } ++}; ++ + // If eager tracing leads to excessively deep |trace()| call chains (and + // the system stack usage that this brings), the marker implementation will + // switch to using an explicit mark stack. Recursive and deep object graphs +diff -up chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/Optional.h.oilpan chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/Optional.h +--- chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/Optional.h.oilpan 2018-03-13 16:46:01.683015951 -0400 ++++ chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/Optional.h 2018-03-13 16:46:51.632043375 -0400 +@@ -7,20 +7,15 @@ + + #include "base/optional.h" + #include "platform/wtf/TemplateUtil.h" +-#include "platform/wtf/TypeTraits.h" + + namespace WTF { + + // WTF::Optional is base::Optional. See base/optional.h for documentation. + // + // A clang plugin enforces that garbage collected types are not allocated +-// outside of the heap, similarly we enforce that one doesn't create garbage +-// collected types nested inside an Optional. ++// outside of the heap. GC containers such as HeapVector are allowed though. + template +-using Optional = +- typename std::enable_if::value || +- IsPersistentReferenceType::value, +- base::Optional>::type; ++using Optional = base::Optional; + + constexpr base::nullopt_t nullopt = base::nullopt; + constexpr base::in_place_t in_place = base::in_place; diff --git a/chromium-65.0.3325.146-wtf-vector-fix.patch b/chromium-65.0.3325.146-wtf-vector-fix.patch new file mode 100644 index 0000000..e4bfeba --- /dev/null +++ b/chromium-65.0.3325.146-wtf-vector-fix.patch @@ -0,0 +1,54 @@ +diff -up chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/DEPS.jdp chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/DEPS +--- chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/DEPS.jdp 2018-03-07 13:54:42.653286576 -0500 ++++ chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/DEPS 2018-03-07 13:55:00.973903591 -0500 +@@ -16,6 +16,7 @@ include_rules = [ + "+base/process/process_metrics.h", + "+base/rand_util.h", + "+base/strings", ++ "+base/template_util.h", + "+base/threading/thread_checker.h", + "+base/time/time.h", + "+base/tuple.h", +diff -up chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/Optional.h.jdp chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/Optional.h +--- chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/Optional.h.jdp 2018-03-07 13:56:29.053062331 -0500 ++++ chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/Optional.h 2018-03-07 13:56:36.595904651 -0500 +@@ -6,6 +6,7 @@ + #define Optional_h + + #include "base/optional.h" ++#include "platform/wtf/TemplateUtil.h" + #include "platform/wtf/TypeTraits.h" + + namespace WTF { +diff -up chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/TemplateUtil.h.jdp chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/TemplateUtil.h +--- chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/TemplateUtil.h.jdp 2018-03-07 13:56:47.356679702 -0500 ++++ chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/TemplateUtil.h 2018-03-07 13:57:41.769542223 -0500 +@@ -0,0 +1,28 @@ ++// Copyright 2018 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. ++ ++#ifndef TemplateUtil_h ++#define TemplateUtil_h ++ ++#include "base/template_util.h" ++#include "platform/wtf/Vector.h" ++ ++namespace base { ++ ++#if defined(__GNUC__) && !defined(__clang__) && __GNUC__ <= 7 ++// Workaround for g++7 and earlier family. ++// Due to https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80654, without this ++// Optional> where T is non-copyable causes a compile error. ++// As we know it is not trivially copy constructible, explicitly declare so. ++// ++// It completes the declaration in base/template_util.h that was provided ++// for std::vector ++template ++struct is_trivially_copy_constructible> : std::false_type {}; ++#endif ++ ++} // namespace base ++ ++#endif // TemplateUtil_h ++ diff --git a/chromium.spec b/chromium.spec index 5fe1f18..e0cce6e 100644 --- a/chromium.spec +++ b/chromium.spec @@ -26,7 +26,7 @@ # Requires is trickier. %global __provides_exclude_from %{chromium_path}/.*\\.so|%{chromium_path}/lib/.*\\.so -%global privlibs libaccessibility|libanimation|libaura_extra|libaura|libbase_i18n|libbase|libbindings|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core_mojo_bindings_shared|libblink_core|libblink_modules|libblink_mojo_bindings_shared|libblink_offscreen_canvas_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcc_animation|libcc_base|libcc_blink|libcc_debug|libcc_ipc|libcc_paint|libcc|libcdm_manager|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent|libcpp|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_gamepad|libdevices|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevice_vr_mojo_bindings|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libembedder|libembedder_switches|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents|libevents_x|libffmpeg|libfingerprint|libfreetype_harfbuzz|libgcm|libgeolocation|libgeometry_skia|libgeometry|libgesture_detection|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_switches|libgfx_x11|libgin|libgles2_c_lib|libgles2_implementation|libgles2_utils|libGLESv2|libgl_init|libgl_in_process_context|libgl_wrapper|libgpu|libgpu_util|libgtk3ui|libheadless|libhost|libicui18n|libicuuc|libipc_mojom_shared|libipc_mojom|libipc|libjs|libkeyboard|libkeyboard_with_content|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libleveldatabase|libmanager|libmedia_blink|libmedia_devices_mojo_bindings_shared|libmedia_gpu|libmedia_mojo_services|libmedia|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmojo_bindings_shared|libmojo_common_lib|libmojo_ime_lib|libmojo_platform_bindings_shared|libmojo_public_system_cpp|libmojo_public_system|libmojo_system_impl|libnative_theme|libnet|libnet_with_v8|libonc|libplatform|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|librange|libresource_coordinator_cpp|libresource_coordinator_public_interfaces_internal_shared|libsandbox_services|libsandbox|libseccomp_bpf|libsensors|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom_blink|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_constants|libservice_manager_mojom_shared|libservice_manager_mojom|libservice|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_devtools|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libuser_manager|libuser_prefs|libv8_libbase|libv8_libplatform|libv8|libviews|libviz_common|libviz_resource_format|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_swapchain|libVkLayer_threading|libVkLayer_unique_objects|libwebdata_common|libweb_dialogs|libwebview|libwidevinecdmadapter|libwidevinecdm|libwm_public|libwm|libwtf|libx11_events_platform|libx11_window +%global privlibs libaccessibility|libanimation|libaura_extra|libaura|libbase_i18n|libbase|libbindings|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core_mojo_bindings_shared|libblink_core|libblink_modules|libblink_mojo_bindings_shared|libblink_offscreen_canvas_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcbor|libcc_animation|libcc_base|libcc_blink|libcc_debug|libcc_ipc|libcc_paint|libcc|libcdm_manager|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent|libcpp|libcrash_key|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevices|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevice_vr_mojo_bindings|libdevice_vr|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libembedder|libembedder_switches|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents|libevents_x|libffmpeg|libfingerprint|libfontconfig|libfreetype_harfbuzz|libgcm|libgeolocation|libgeometry_skia|libgeometry|libgesture_detection|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_switches|libgfx_x11|libgin|libgles2_c_lib|libgles2_implementation|libgles2|libgles2_utils|libGLESv2|libgl_init|libgl_in_process_context|libgl_wrapper|libgpu_ipc_service|libgpu|libgpu_util|libgtk3ui|libheadless|libhost|libicui18n|libicuuc|libipc_mojom_shared|libipc_mojom|libipc|libkeyboard|libkeyboard_with_content|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libleveldatabase|libmanager|libmedia_blink|libmedia_devices_mojo_bindings_shared|libmedia_gpu|libmedia_mojo_services|libmedia|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmojo_base_lib|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_mojom|libmojo_base_shared_typemap_traits|libmojo_bindings_shared|libmojo_common_lib|libmojo_ime_lib|libmojo_platform_bindings_shared|libmojo_public_system_cpp|libmojo_public_system|libmojo_system_impl|libnative_theme|libnet|libnet_with_v8|libnetwork_session_configurator|libonc|libplatform|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|librange|libresource_coordinator_cpp_base|libresource_coordinator_cpp|libresource_coordinator_public_interfaces_blink|libresource_coordinator_public_interfaces_shared|libresource_coordinator_public_interfaces|libsandbox_services|libsandbox|libseccomp_bpf|libsensors|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom_blink|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_constants|libservice_manager_mojom_shared|libservice_manager_mojom|libservice|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_devtools|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libuser_manager|libuser_prefs|libv8_libbase|libv8_libplatform|libv8|libviews|libviz_common|libviz_resource_format|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_threading|libVkLayer_unique_objects|libwebdata_common|libweb_dialogs|libwebview|libwidevinecdmadapter|libwidevinecdm|libwm_public|libwm|libwtf|libx11_events_platform|libx11_window %global __requires_exclude ^(%{privlibs})\\.so # If we build with shared on, then chrome-remote-desktop depends on chromium libs. @@ -116,7 +116,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3325.146 +Version: %{majorversion}.0.3325.162 Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home @@ -206,6 +206,36 @@ Patch68: chromium-64.0.3282.167-gcc8-fabi11.patch # From Gentoo Patch69: chromium-math.h-r0.patch Patch70: chromium-stdint.patch +# Workaround https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80654 +# crbug.com/784732#27 +# https://chromium-review.googlesource.com/c/chromium/src/+/927942 +Patch71: chromium-65.0.3325.146-workaround-gcc7-is_trivially_copy_constructable-failure.patch +# And https://bugs.chromium.org/p/chromium/issues/detail?id=816952 +Patch72: chromium-65.0.3325.146-wtf-vector-fix.patch +# https://github.com/lgsvl/meta-lgsvl-browser/blob/ac93e7622be66946c76504be6a1db8d644ae1e43/recipes-browser/chromium/files/0001-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch +Patch73: chromium-65.0.3325.146-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch +# https://github.com/lgsvl/meta-lgsvl-browser/blob/ac93e7622be66946c76504be6a1db8d644ae1e43/recipes-browser/chromium/files/0001-wtf-oilpan-Remove-GC-checks-from-WTF-Optional-T.patch +Patch74: chromium-65.0.3325.146-wtf-oilpan-Remove-GC-checks-from-WTF-Optional-T.patch +# https://github.com/lgsvl/meta-lgsvl-browser/blob/ac93e7622be66946c76504be6a1db8d644ae1e43/recipes-browser/chromium/files/0001-Fix-non-copyable-class-s-optional-move.patch +Patch75: chromium-65.0.3325.146-Fix-non-copyable-class-s-optional-move.patch +# https://github.com/lgsvl/meta-lgsvl-browser/blob/ac93e7622be66946c76504be6a1db8d644ae1e43/recipes-browser/chromium/files/0001-Use-affirmative-expression-in-base-Optional.patch +Patch76: chromium-65.0.3325.146-Use-affirmative-expression-in-base-Optional.patch +# https://github.com/lgsvl/meta-lgsvl-browser/blob/ac93e7622be66946c76504be6a1db8d644ae1e43/recipes-browser/chromium/files/0001-Implement-conditional-copy-move-ctors-assign-operato.patch +Patch77: chromium-65.0.3325.146-Implement-conditional-copy-move-ctors-assign-operato.patch +# https://github.com/lgsvl/meta-lgsvl-browser/blob/ac93e7622be66946c76504be6a1db8d644ae1e43/recipes-browser/chromium/files/0001-Implement-converting-constructors-from-Optional-U.patch +Patch78: chromium-65.0.3325.146-Implement-converting-constructors-from-Optional-U.patch +# https://github.com/lgsvl/meta-lgsvl-browser/blob/ac93e7622be66946c76504be6a1db8d644ae1e43/recipes-browser/chromium/files/0001-Implement-value-forward-constructor.patch +Patch79: chromium-65.0.3325.146-Implement-value-forward-constructor.patch +# https://github.com/lgsvl/meta-lgsvl-browser/blob/ac93e7622be66946c76504be6a1db8d644ae1e43/recipes-browser/chromium/files/0001-Update-non-copy-non-move-assign-operators.patch +Patch80: chromium-65.0.3325.146-Update-non-copy-non-move-assign-operators.patch +# https://github.com/lgsvl/meta-lgsvl-browser/blob/ac93e7622be66946c76504be6a1db8d644ae1e43/recipes-browser/chromium/files/0001-GCC-PlaybackImageProvider-Settings-do-not-provide-co.patch +Patch81: chromium-65.0.3325.146-GCC-PlaybackImageProvider-Settings-do-not-provide-co.patch +# https://github.com/lgsvl/meta-lgsvl-browser/blob/ac93e7622be66946c76504be6a1db8d644ae1e43/recipes-browser/chromium/files/0001-GCC-explicitely-std-move-to-base-Optional-instead-of.patch +Patch82: chromium-65.0.3325.146-GCC-explicitely-std-move-to-base-Optional-instead-of.patch +# https://github.com/lgsvl/meta-lgsvl-browser/blob/ac93e7622be66946c76504be6a1db8d644ae1e43/recipes-browser/chromium/files/0001-GCC-IDB-methods-String-renamed-to-GetString.patch +Patch83: chromium-65.0.3325.146-GCC-IDB-methods-String-renamed-to-GetString.patch +# https://github.com/lgsvl/meta-lgsvl-browser/blob/ac93e7622be66946c76504be6a1db8d644ae1e43/recipes-browser/chromium/files/0001-GCC-fully-declare-ConfigurationPolicyProvider.patch +Patch84: chromium-65.0.3325.146-GCC-fully-declare-ConfigurationPolicyProvider.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ @@ -642,6 +672,20 @@ udev. %patch68 -p1 -b .fabi11 %patch69 -p1 -b .gentoo-math %patch70 -p1 -b .gentoo-stdint +%patch71 -p1 -b .gcc7-itcc +%patch72 -p1 -b .wtf-fix +%patch73 -p1 -b .fulldecl +%patch74 -p1 -b .oilpan +%patch75 -p1 -b .noncopyable +%patch76 -p1 -b .affirmative +%patch77 -p1 -b .conditional +%patch78 -p1 -b .converting +%patch79 -p1 -b .vforward +%patch80 -p1 -b .ncnm +%patch81 -p1 -b .pipcc +%patch82 -p1 -b .explicit-std-move +%patch83 -p1 -b .GetString +%patch84 -p1 -b .fully-declare %if 0%{?asan} export CC="clang" @@ -1075,7 +1119,7 @@ sed -i.orig -e 's/getenv("CHROME_VERSION_EXTRA")/"Fedora Project"/' $FILE # Do headless first. ../depot_tools/ninja -C %{headlesstarget} -vvv headless_shell -../depot_tools/ninja -C %{target} -vvv chrome chrome_sandbox chromedriver widevinecdmadapter clearkeycdm policy_templates +../depot_tools/ninja -C %{target} -vvv chrome chrome_sandbox chromedriver widevinecdmadapter clear_key_cdm policy_templates # remote client pushd remoting @@ -1505,6 +1549,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Wed Mar 14 2018 Tom Callaway 65.0.3325.162-1 +- update to 65.0.3325.162 + * Wed Mar 7 2018 Tom Callaway 65.0.3325.146-1 - update to 65.0.3325.146 diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index f5c85a5..7c63d50 100755 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -87,6 +87,7 @@ header_files=" libavcodec/x86/inline_asm.h \ libavcodec/h264chroma.h \ libavcodec/hpeldsp.h \ libavcodec/hwaccel.h \ + libavcodec/hwaccels.h \ libavcodec/idctdsp.h \ libavcodec/internal.h \ libavcodec/kbdwin.h \ @@ -109,6 +110,8 @@ header_files=" libavcodec/x86/inline_asm.h \ libavcodec/mpegvideodsp.h \ libavcodec/mpegvideoencdsp.h \ libavcodec/options_table.h \ + libavcodec/opus_celt.h \ + libavcodec/opus_pvq.h \ libavcodec/opus_rc.h \ libavcodec/pcm_tablegen.h \ libavcodec/pixblockdsp.h \ diff --git a/sources b/sources index 8b00246..e3860a3 100644 --- a/sources +++ b/sources @@ -1,2 +1,3 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 SHA512 (chromium-65.0.3325.146-clean.tar.xz) = 18a45e41eb706fa87a707c89ee419b6a408132d763318c06cffca9e453f09a0e52a76089002ec1c25224d77a54eecc17013a6087dd4acdbd15df073fd7eff937 +SHA512 (chromium-65.0.3325.162-clean.tar.xz) = 6f8d2267ca27027a87515e0dfc4aafeb89b2344b994b48c0b7302dd56868e47df46f270c403f7311a2bbacaf5e1eb8b96b31141e9a99080e12321a0d38a618f5 From 8ca12f156d0e02cef908c4054331026356f90051 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 15 Mar 2018 12:17:47 -0400 Subject: [PATCH 0181/1449] clean sources --- sources | 1 - 1 file changed, 1 deletion(-) diff --git a/sources b/sources index e3860a3..d2b2768 100644 --- a/sources +++ b/sources @@ -1,3 +1,2 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 -SHA512 (chromium-65.0.3325.146-clean.tar.xz) = 18a45e41eb706fa87a707c89ee419b6a408132d763318c06cffca9e453f09a0e52a76089002ec1c25224d77a54eecc17013a6087dd4acdbd15df073fd7eff937 SHA512 (chromium-65.0.3325.162-clean.tar.xz) = 6f8d2267ca27027a87515e0dfc4aafeb89b2344b994b48c0b7302dd56868e47df46f270c403f7311a2bbacaf5e1eb8b96b31141e9a99080e12321a0d38a618f5 From fe5b552f8eb7d1c6928a19de27cb0dc637c33fbe Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 15 Mar 2018 12:29:18 -0400 Subject: [PATCH 0182/1449] version conditionalize gnome-keyring-devel --- chromium.spec | 2 ++ 1 file changed, 2 insertions(+) diff --git a/chromium.spec b/chromium.spec index e0cce6e..252a9a3 100644 --- a/chromium.spec +++ b/chromium.spec @@ -277,7 +277,9 @@ BuildRequires: flex BuildRequires: fontconfig-devel BuildRequires: GConf2-devel BuildRequires: glib2-devel +%if 0%{?fedora} <= 27 BuildRequires: gnome-keyring-devel +%endif BuildRequires: glibc-devel BuildRequires: gperf BuildRequires: libatomic From 3534f5e56ff7746c7d30193cf7e64f2822d39592 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 15 Mar 2018 12:56:27 -0400 Subject: [PATCH 0183/1449] use bundled libjpeg on epel7 --- chromium.spec | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 252a9a3..db28101 100644 --- a/chromium.spec +++ b/chromium.spec @@ -84,12 +84,14 @@ BuildRequires: libicu-devel >= 5.4 %global bundleharfbuzz 1 %global bundlelibwebp 1 %global bundlelibpng 1 +%global bundlelibjpeg 1 %else %global bundleharfbuzz 0 %global bundleopus 1 %global bundlelibusbx 0 %global bundlelibwebp 0 %global bundlelibpng 0 +%global bundlelibjpeg 0 %endif # Needs at least harfbuzz 1.7.3 now. @@ -338,7 +340,12 @@ BuildRequires: libffi-devel # Not newer than 54 (at least not right now) BuildRequires: libicu-devel = 54.1 %endif +%if 0%{?bundlelibjpeg} +# If this is true, we're using the bundled libjpeg +# which we need to do because the RHEL 7 libjpeg doesn't work for chromium anymore +%else BuildRequires: libjpeg-devel +%endif %if 0%{?bundlelibpng} # If this is true, we're using the bundled libpng # which we need to do because the RHEL 7 libpng doesn't work right anymore @@ -482,7 +489,9 @@ Provides: bundled(libaddressinput) = 0 Provides: bundled(libdrm) = 2.4.70 Provides: bundled(libevent) = 1.4.15 Provides: bundled(libjingle) = 9564 -# Provides: bundled(libjpeg-turbo) = 1.4.90 +%if 0%{?bundlelibjpeg} +Provides: bundled(libjpeg-turbo) = 1.4.90 +%endif Provides: bundled(libphonenumber) = a4da30df63a097d67e3c429ead6790ad91d36cf4 %if 0%{?bundlelibpng} Provides: bundled(libpng) = 1.6.22 @@ -1038,7 +1047,10 @@ build/linux/unbundle/replace_gn_files.py --system-libraries \ icu \ %endif libdrm \ +%if %{bundlelibjpeg} +%else libjpeg \ +%endif %if %{bundlelibpng} %else libpng \ From 8cfa28d97447ac6c323c3576d5efffc5bf8fca19 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 15 Mar 2018 13:12:01 -0400 Subject: [PATCH 0184/1449] fix bool issue triggered by newer gcc --- chromium-65.0.3325.162-boolfix.patch | 36 ++++++++++++++++++++++++++++ chromium.spec | 3 +++ 2 files changed, 39 insertions(+) create mode 100644 chromium-65.0.3325.162-boolfix.patch diff --git a/chromium-65.0.3325.162-boolfix.patch b/chromium-65.0.3325.162-boolfix.patch new file mode 100644 index 0000000..325d649 --- /dev/null +++ b/chromium-65.0.3325.162-boolfix.patch @@ -0,0 +1,36 @@ +diff -up chromium-65.0.3325.162/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix chromium-65.0.3325.162/mojo/public/cpp/bindings/associated_interface_ptr_info.h +--- chromium-65.0.3325.162/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix 2018-03-15 13:07:54.999428755 -0400 ++++ chromium-65.0.3325.162/mojo/public/cpp/bindings/associated_interface_ptr_info.h 2018-03-15 13:08:21.270794252 -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 static_cast (handle_); } + + ScopedInterfaceEndpointHandle PassHandle() { + return std::move(handle_); +diff -up chromium-65.0.3325.162/mojo/public/cpp/bindings/associated_interface_request.h.boolfix chromium-65.0.3325.162/mojo/public/cpp/bindings/associated_interface_request.h +--- chromium-65.0.3325.162/mojo/public/cpp/bindings/associated_interface_request.h.boolfix 2018-03-15 13:07:09.680523296 -0400 ++++ chromium-65.0.3325.162/mojo/public/cpp/bindings/associated_interface_request.h 2018-03-15 13:07:44.429684037 -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 static_cast (handle_); } + + ScopedInterfaceEndpointHandle PassHandle() { return std::move(handle_); } + +diff -up chromium-65.0.3325.162/mojo/public/cpp/bindings/interface_request.h.boolfix chromium-65.0.3325.162/mojo/public/cpp/bindings/interface_request.h +--- chromium-65.0.3325.162/mojo/public/cpp/bindings/interface_request.h.boolfix 2018-03-15 13:08:33.494499025 -0400 ++++ chromium-65.0.3325.162/mojo/public/cpp/bindings/interface_request.h 2018-03-15 13:10:39.218462546 -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_; } ++ explicit operator bool() const { return static_cast (handle_); } + + // Removes the message pipe from the request and returns it. + ScopedMessagePipeHandle PassMessagePipe() { return std::move(handle_); } diff --git a/chromium.spec b/chromium.spec index db28101..ce61034 100644 --- a/chromium.spec +++ b/chromium.spec @@ -238,6 +238,8 @@ Patch82: chromium-65.0.3325.146-GCC-explicitely-std-move-to-base-Optional-instea Patch83: chromium-65.0.3325.146-GCC-IDB-methods-String-renamed-to-GetString.patch # https://github.com/lgsvl/meta-lgsvl-browser/blob/ac93e7622be66946c76504be6a1db8d644ae1e43/recipes-browser/chromium/files/0001-GCC-fully-declare-ConfigurationPolicyProvider.patch Patch84: chromium-65.0.3325.146-GCC-fully-declare-ConfigurationPolicyProvider.patch +# ../../mojo/public/cpp/bindings/associated_interface_ptr_info.h:48:43: error: cannot convert 'const mojo::ScopedInterfaceEndpointHandle' to 'bool' in return +Patch85: chromium-65.0.3325.162-boolfix.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ @@ -697,6 +699,7 @@ udev. %patch82 -p1 -b .explicit-std-move %patch83 -p1 -b .GetString %patch84 -p1 -b .fully-declare +%patch85 -p1 -b .boolfix %if 0%{?asan} export CC="clang" From 61203bf461707bb8cad7f9a64969bdf6e3c98d1f Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 15 Mar 2018 13:48:43 -0400 Subject: [PATCH 0185/1449] use normal bool cast --- chromium-65.0.3325.162-boolfix.patch | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/chromium-65.0.3325.162-boolfix.patch b/chromium-65.0.3325.162-boolfix.patch index 325d649..a27f3a8 100644 --- a/chromium-65.0.3325.162-boolfix.patch +++ b/chromium-65.0.3325.162-boolfix.patch @@ -6,7 +6,7 @@ diff -up chromium-65.0.3325.162/mojo/public/cpp/bindings/associated_interface_pt bool is_valid() const { return handle_.is_valid(); } - explicit operator bool() const { return handle_; } -+ explicit operator bool() const { return static_cast (handle_); } ++ explicit operator bool() const { return (bool) handle_; } ScopedInterfaceEndpointHandle PassHandle() { return std::move(handle_); @@ -18,7 +18,7 @@ diff -up chromium-65.0.3325.162/mojo/public/cpp/bindings/associated_interface_re bool is_pending() const { return handle_.is_valid(); } - explicit operator bool() const { return handle_; } -+ explicit operator bool() const { return static_cast (handle_); } ++ explicit operator bool() const { return (bool) handle_; } ScopedInterfaceEndpointHandle PassHandle() { return std::move(handle_); } @@ -30,7 +30,7 @@ diff -up chromium-65.0.3325.162/mojo/public/cpp/bindings/interface_request.h.boo bool is_pending() const { return handle_.is_valid(); } - explicit operator bool() const { return handle_; } -+ explicit operator bool() const { return static_cast (handle_); } ++ explicit operator bool() const { return (bool) handle_; } // Removes the message pipe from the request and returns it. ScopedMessagePipeHandle PassMessagePipe() { return std::move(handle_); } From 9e38b7c8af4f80a71fe22d311d5eeaf31fee968e Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 15 Mar 2018 15:32:44 -0400 Subject: [PATCH 0186/1449] fix skia build issue on aarch64 --- ...-65.0.3325.162-skia-aarch64-buildfix.patch | 21 +++++++++++++++++++ chromium.spec | 3 +++ 2 files changed, 24 insertions(+) create mode 100644 chromium-65.0.3325.162-skia-aarch64-buildfix.patch diff --git a/chromium-65.0.3325.162-skia-aarch64-buildfix.patch b/chromium-65.0.3325.162-skia-aarch64-buildfix.patch new file mode 100644 index 0000000..e48346c --- /dev/null +++ b/chromium-65.0.3325.162-skia-aarch64-buildfix.patch @@ -0,0 +1,21 @@ +diff -up chromium-65.0.3325.162/third_party/skia/src/jumper/SkJumper_stages.cpp.aarch64fix chromium-65.0.3325.162/third_party/skia/src/jumper/SkJumper_stages.cpp +--- chromium-65.0.3325.162/third_party/skia/src/jumper/SkJumper_stages.cpp.aarch64fix 2018-03-15 15:27:35.201345844 -0400 ++++ chromium-65.0.3325.162/third_party/skia/src/jumper/SkJumper_stages.cpp 2018-03-15 15:31:30.471777400 -0400 +@@ -666,7 +666,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) +@@ -686,7 +686,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) diff --git a/chromium.spec b/chromium.spec index ce61034..307e0d4 100644 --- a/chromium.spec +++ b/chromium.spec @@ -240,6 +240,8 @@ Patch83: chromium-65.0.3325.146-GCC-IDB-methods-String-renamed-to-GetString.patc Patch84: chromium-65.0.3325.146-GCC-fully-declare-ConfigurationPolicyProvider.patch # ../../mojo/public/cpp/bindings/associated_interface_ptr_info.h:48:43: error: cannot convert 'const mojo::ScopedInterfaceEndpointHandle' to 'bool' in return Patch85: chromium-65.0.3325.162-boolfix.patch +# From Debian +Patch86: chromium-65.0.3325.162-skia-aarch64-buildfix.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ @@ -700,6 +702,7 @@ udev. %patch83 -p1 -b .GetString %patch84 -p1 -b .fully-declare %patch85 -p1 -b .boolfix +%patch86 -p1 -b .aarch64fix %if 0%{?asan} export CC="clang" From bdba7c7bdaa147447e8c6c2230cb670686ca7c0c Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 16 Mar 2018 14:32:58 -0400 Subject: [PATCH 0187/1449] disable StartupNotify in chromium-browser.desktop (not in google-chrome desktop file) (bz1545241) --- chromium-browser.desktop | 1 - chromium.spec | 4 ++++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/chromium-browser.desktop b/chromium-browser.desktop index fda8567..962decb 100644 --- a/chromium-browser.desktop +++ b/chromium-browser.desktop @@ -136,7 +136,6 @@ Icon=chromium-browser Categories=Network;WebBrowser; MimeType=text/html;text/xml;application/xhtml+xml;x-scheme-handler/http;x-scheme-handler/https;x-scheme-handler/ftp; StartupWMClass=Chromium-browser -StartupNotify=true Keywords=web;browser;internet; Actions=new-window;new-private-window; diff --git a/chromium.spec b/chromium.spec index 307e0d4..4f5e076 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1569,6 +1569,10 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Fri Mar 16 2018 Tom Callaway 65.0.3325.162-2 +- disable StartupNotify in chromium-browser.desktop (not in google-chrome desktop file) + (bz1545241) + * Wed Mar 14 2018 Tom Callaway 65.0.3325.162-1 - update to 65.0.3325.162 From 6d9e4187928d6252b77fb1ed8d64b4c64d6b81f8 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 19 Mar 2018 10:30:17 -0400 Subject: [PATCH 0188/1449] use bundled freetype on epel7 --- chromium.spec | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 4f5e076..047063c 100644 --- a/chromium.spec +++ b/chromium.spec @@ -85,6 +85,7 @@ BuildRequires: libicu-devel >= 5.4 %global bundlelibwebp 1 %global bundlelibpng 1 %global bundlelibjpeg 1 +%global bundlefreetype 1 %else %global bundleharfbuzz 0 %global bundleopus 1 @@ -92,6 +93,7 @@ BuildRequires: libicu-devel >= 5.4 %global bundlelibwebp 0 %global bundlelibpng 0 %global bundlelibjpeg 0 +%global bundlefreetype 0 %endif # Needs at least harfbuzz 1.7.3 now. @@ -119,7 +121,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3325.162 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -332,7 +334,11 @@ BuildRequires: bzip2-devel BuildRequires: dbus-glib-devel BuildRequires: elfutils-libelf-devel BuildRequires: flac-devel +%if 0%{?bundlefreetype} +# nothing +%else BuildRequires: freetype-devel +%endif BuildRequires: hwdata BuildRequires: kernel-headers BuildRequires: libevent-devel @@ -478,6 +484,9 @@ Provides: bundled(fdmlibm) = 5.3 Provides: bundled(ffmpeg) = 3.2git Provides: bundled(fips181) = 2.2.3 Provides: bundled(fontconfig) = 2.11.0 +%if 0%{?bundlefreetype} +Provides: bundled(freetype) = 2.9.3 +%endif Provides: bundled(gperftools) = svn144 %if 0%{?bundleharfbuzz} Provides: bundled(harfbuzz) = 1.4.2 @@ -1043,7 +1052,10 @@ export PATH=$PATH:%{_builddir}/depot_tools build/linux/unbundle/replace_gn_files.py --system-libraries \ flac \ +%if 0%{?bundlefreetype} +%else freetype \ +%endif %if 0%{?bundleharfbuzz} %else harfbuzz-ng \ @@ -1572,6 +1584,7 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt * Fri Mar 16 2018 Tom Callaway 65.0.3325.162-2 - disable StartupNotify in chromium-browser.desktop (not in google-chrome desktop file) (bz1545241) +- use bundled freetype on epel7 * Wed Mar 14 2018 Tom Callaway 65.0.3325.162-1 - update to 65.0.3325.162 From f7e3b54d1f3e091f04765ffc37f4d53179f87d69 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 19 Mar 2018 14:18:55 -0400 Subject: [PATCH 0189/1449] use bundled libdrm on epel7 --- chromium.spec | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/chromium.spec b/chromium.spec index 047063c..9dd3058 100644 --- a/chromium.spec +++ b/chromium.spec @@ -86,6 +86,7 @@ BuildRequires: libicu-devel >= 5.4 %global bundlelibpng 1 %global bundlelibjpeg 1 %global bundlefreetype 1 +%global bundlelibdrm 1 %else %global bundleharfbuzz 0 %global bundleopus 1 @@ -94,6 +95,7 @@ BuildRequires: libicu-devel >= 5.4 %global bundlelibpng 0 %global bundlelibjpeg 0 %global bundlefreetype 0 +%global bundlelibdrm 0 %endif # Needs at least harfbuzz 1.7.3 now. @@ -121,7 +123,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3325.162 -Release: 2%{?dist} +Release: 3%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -292,7 +294,11 @@ BuildRequires: glibc-devel BuildRequires: gperf BuildRequires: libatomic BuildRequires: libcap-devel +%if 0%{?bundlelibdrm} +#nothing +%else BuildRequires: libdrm-devel +%endif BuildRequires: libgcrypt-devel BuildRequires: libudev-devel BuildRequires: libusb-devel @@ -499,7 +505,9 @@ Provides: bundled(icu) = 58.1 Provides: bundled(kitchensink) = 1 Provides: bundled(leveldb) = 1.20 Provides: bundled(libaddressinput) = 0 -Provides: bundled(libdrm) = 2.4.70 +%if 0%{?bundlelibdrm} +Provides: bundled(libdrm) = 2.4.85 +%endif Provides: bundled(libevent) = 1.4.15 Provides: bundled(libjingle) = 9564 %if 0%{?bundlelibjpeg} @@ -1064,7 +1072,10 @@ build/linux/unbundle/replace_gn_files.py --system-libraries \ %else icu \ %endif +%if %{bundlelibdrm} +%else libdrm \ +%endif %if %{bundlelibjpeg} %else libjpeg \ @@ -1581,6 +1592,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Mon Mar 19 2018 Tom Callaway 65.0.3325.162-3 +- use bundled libdrm on epel7 + * Fri Mar 16 2018 Tom Callaway 65.0.3325.162-2 - disable StartupNotify in chromium-browser.desktop (not in google-chrome desktop file) (bz1545241) From f525a513b3edf0be7034a92fa1ae96dcd50705d5 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 20 Mar 2018 10:54:37 -0400 Subject: [PATCH 0190/1449] try use_custom_libcxx=true on epel7 --- chromium.spec | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 9dd3058..53b4163 100644 --- a/chromium.spec +++ b/chromium.spec @@ -842,7 +842,12 @@ CHROMIUM_CORE_GN_DEFINES+=' ffmpeg_branding="ChromeOS" proprietary_codecs=true' %else CHROMIUM_CORE_GN_DEFINES+=' ffmpeg_branding="Chromium" proprietary_codecs=false' %endif -CHROMIUM_CORE_GN_DEFINES+=' treat_warnings_as_errors=false linux_use_bundled_binutils=false use_custom_libcxx=false' +CHROMIUM_CORE_GN_DEFINES+=' treat_warnings_as_errors=false linux_use_bundled_binutils=false' +%if 0%{?rhel} == 7 +CHROMIUM_CORE_GN_DEFINES+=' use_custom_libcxx=true' +%else +CHROMIUM_CORE_GN_DEFINES+=' use_custom_libcxx=false' +%endif %ifarch aarch64 CHROMIUM_CORE_GN_DEFINES+=' target_cpu="arm64"' %endif From 6113fdf4e85fc48c6c8d812f4e955b31cb380da1 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 20 Mar 2018 12:44:57 -0400 Subject: [PATCH 0191/1449] rhel 7 might need libc++ bundled --- chromium.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 53b4163..fcf87dd 100644 --- a/chromium.spec +++ b/chromium.spec @@ -731,8 +731,11 @@ export CXX="g++" export AR="ar" export RANLIB="ranlib" -# NUKE FROM ORBIT +%if 0%{?rhel} == 7 +# eh. rhel 7 might need this +%else rm -rf buildtools/third_party/libc++/BUILD.gn +%endif %if 0%{?nacl} # prep the nacl tree From 0d818fb687afe6de0cb0c4e6b61d858df37731af Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 20 Mar 2018 16:17:37 -0400 Subject: [PATCH 0192/1449] force lstdc++ on epel7 --- chromium-65.0.3325.162-epel7-stdc++.patch | 12 ++++++++++++ chromium.spec | 13 +++++-------- 2 files changed, 17 insertions(+), 8 deletions(-) create mode 100644 chromium-65.0.3325.162-epel7-stdc++.patch diff --git a/chromium-65.0.3325.162-epel7-stdc++.patch b/chromium-65.0.3325.162-epel7-stdc++.patch new file mode 100644 index 0000000..ee2066b --- /dev/null +++ b/chromium-65.0.3325.162-epel7-stdc++.patch @@ -0,0 +1,12 @@ +diff -up chromium-65.0.3325.162/build/config/posix/BUILD.gn.epel7 chromium-65.0.3325.162/build/config/posix/BUILD.gn +--- chromium-65.0.3325.162/build/config/posix/BUILD.gn.epel7 2018-03-20 16:14:42.425926323 -0400 ++++ chromium-65.0.3325.162/build/config/posix/BUILD.gn 2018-03-20 16:15:10.150152245 -0400 +@@ -74,6 +74,8 @@ config("runtime_library") { + "rt", + ] + } ++ } else { ++ libs += [ "stdc++" ] + } + + if (!is_mac && !is_ios && sysroot != "") { diff --git a/chromium.spec b/chromium.spec index fcf87dd..50a10fc 100644 --- a/chromium.spec +++ b/chromium.spec @@ -246,6 +246,8 @@ Patch84: chromium-65.0.3325.146-GCC-fully-declare-ConfigurationPolicyProvider.pa Patch85: chromium-65.0.3325.162-boolfix.patch # From Debian Patch86: chromium-65.0.3325.162-skia-aarch64-buildfix.patch +# Use lstdc++ on EPEL7 only +Patch87: chromium-65.0.3325.162-epel7-stdc++.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ @@ -720,6 +722,9 @@ udev. %patch84 -p1 -b .fully-declare %patch85 -p1 -b .boolfix %patch86 -p1 -b .aarch64fix +%if 0%{?rhel} == 7 +%patch87 -p1 -b .epel7 +%endif %if 0%{?asan} export CC="clang" @@ -731,11 +736,7 @@ export CXX="g++" export AR="ar" export RANLIB="ranlib" -%if 0%{?rhel} == 7 -# eh. rhel 7 might need this -%else rm -rf buildtools/third_party/libc++/BUILD.gn -%endif %if 0%{?nacl} # prep the nacl tree @@ -846,11 +847,7 @@ CHROMIUM_CORE_GN_DEFINES+=' ffmpeg_branding="ChromeOS" proprietary_codecs=true' CHROMIUM_CORE_GN_DEFINES+=' ffmpeg_branding="Chromium" proprietary_codecs=false' %endif CHROMIUM_CORE_GN_DEFINES+=' treat_warnings_as_errors=false linux_use_bundled_binutils=false' -%if 0%{?rhel} == 7 -CHROMIUM_CORE_GN_DEFINES+=' use_custom_libcxx=true' -%else CHROMIUM_CORE_GN_DEFINES+=' use_custom_libcxx=false' -%endif %ifarch aarch64 CHROMIUM_CORE_GN_DEFINES+=' target_cpu="arm64"' %endif From c747d58e15b97a4aab04b7cf13ef650d6a2d0e07 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 21 Mar 2018 16:43:26 -0400 Subject: [PATCH 0193/1449] 65.0.3325.181 --- .gitignore | 1 + chromium.spec | 7 +++++-- sources | 2 +- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index 3e50fe8..ddcd939 100644 --- a/.gitignore +++ b/.gitignore @@ -41,3 +41,4 @@ /chromium-64.0.3282.186-clean.tar.xz /chromium-65.0.3325.146-clean.tar.xz /chromium-65.0.3325.162-clean.tar.xz +/chromium-65.0.3325.181-clean.tar.xz diff --git a/chromium.spec b/chromium.spec index 50a10fc..845e712 100644 --- a/chromium.spec +++ b/chromium.spec @@ -122,8 +122,8 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3325.162 -Release: 3%{?dist} +Version: %{majorversion}.0.3325.181 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1597,6 +1597,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Wed Mar 21 2018 Tom Callaway 65.0.3325.181-1 +- update to 65.0.3325.181 + * Mon Mar 19 2018 Tom Callaway 65.0.3325.162-3 - use bundled libdrm on epel7 diff --git a/sources b/sources index d2b2768..17667f6 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 -SHA512 (chromium-65.0.3325.162-clean.tar.xz) = 6f8d2267ca27027a87515e0dfc4aafeb89b2344b994b48c0b7302dd56868e47df46f270c403f7311a2bbacaf5e1eb8b96b31141e9a99080e12321a0d38a618f5 +SHA512 (chromium-65.0.3325.181-clean.tar.xz) = 12a0bb9e367c628c0db80503f6b0570b5ba95fc766c7a782dc7a98290d3b6c13aa5a3f91c4874e98287ca2fafb41af5db34fb951d06594b369baf29c98ed2846 From 6588e7bdd3acbad84209cd63daa4fe7738d2858a Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 28 Mar 2018 10:01:28 -0400 Subject: [PATCH 0194/1449] check that there is no system google module, shadowing bundled ones :: conditionalize api keys (on by default) --- chromium.spec | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/chromium.spec b/chromium.spec index 845e712..4f76103 100644 --- a/chromium.spec +++ b/chromium.spec @@ -6,6 +6,10 @@ %global lsuffix fedora %endif +# Some people wish not to use the Fedora Google API keys. Mmkay. +# Expect stuff to break in weird ways if you disable. +%global useapikeys 1 + # Leave this alone, please. %global target out/Release %global headlesstarget out/Headless @@ -110,10 +114,17 @@ BuildRequires: libicu-devel >= 5.4 ### Note: These are for Fedora use ONLY. ### For your own distribution, please get your own set of keys. ### http://lists.debian.org/debian-legal/2013/11/msg00006.html +%if %{useapikeys} %global api_key AIzaSyDUIXvzVrt5OkVsgXhQ6NFfvWlA44by-aw %global default_client_id 449907151817.apps.googleusercontent.com %global default_client_secret miEreAep8nuvTdvLums6qyLK %global chromoting_client_id 449907151817-8vnlfih032ni8c4jjps9int9t86k546t.apps.googleusercontent.com +%else +%global api_key %nil +%global default_client_id %nil +%global default_client_secret %nil +%global chromoting_client_id %nil +%endif %global majorversion 65 @@ -1130,6 +1141,12 @@ sed -i 's|exec "${THIS_DIR}/ninja-linux${LONG_BIT}"|exec "/usr/bin/ninja-build"| . /opt/rh/devtoolset-7/enable %endif +# Check that there is no system 'google' module, shadowing bundled ones: +if python -c 'import google ; print google.__path__' 2> /dev/null ; then \ + echo "Python 'google' module is defined, this will shadow modules of this build"; \ + exit 1 ; \ +fi + tools/gn/bootstrap/bootstrap.py -v --gn-gen-args "$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{target}/gn gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{target} @@ -1597,6 +1614,10 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Wed Mar 28 2018 Tom Callaway +- check that there is no system 'google' module, shadowing bundled ones +- conditionalize api keys (on by default) + * Wed Mar 21 2018 Tom Callaway 65.0.3325.181-1 - update to 65.0.3325.181 From 11492d003030b34ed8a8dd57b3845d97ee051c7d Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 4 Apr 2018 11:22:06 -0400 Subject: [PATCH 0195/1449] add explicit dependency on minizip (bz 1534282) --- chromium.spec | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 4f76103..8bbca8a 100644 --- a/chromium.spec +++ b/chromium.spec @@ -134,7 +134,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3325.181 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -584,6 +584,9 @@ Chromium is an open-source web browser, powered by WebKit (Blink). %package common Summary: Files needed for both the headless_shell and full Chromium +# Chromium needs an explicit Requires: minizip +# We put it here to cover headless too. +Requires: minizip%{_isa} %description common %{summary}. @@ -1614,6 +1617,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Wed Apr 4 2018 Tom Callaway 65.0.3325.181-2 +- add explicit dependency on minizip (bz 1534282) + * Wed Mar 28 2018 Tom Callaway - check that there is no system 'google' module, shadowing bundled ones - conditionalize api keys (on by default) From cdad6219176a761555ddcc13017f3e5d88fc16de Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Thu, 29 Mar 2018 14:45:36 +0200 Subject: [PATCH 0196/1449] Be explicit about the Python version used --- chromium.spec | 24 ++++++++++++++++++------ 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/chromium.spec b/chromium.spec index 8bbca8a..6484099 100644 --- a/chromium.spec +++ b/chromium.spec @@ -416,13 +416,21 @@ BuildRequires: pkgconfig(gtk+-3.0) BuildRequires: pkgconfig(gtk+-2.0) %endif BuildRequires: pulseaudio-libs-devel -BuildRequires: python2 +BuildRequires: python2-devel +%if 0%{?fedora} > 27 +BuildRequires: python2-beautifulsoup4 +BuildRequires: python2-beautifulsoup +BuildRequires: python2-html5lib +BuildRequires: python2-markupsafe +BuildRequires: python2-ply +%else BuildRequires: python-beautifulsoup4 BuildRequires: python-BeautifulSoup BuildRequires: python-html5lib BuildRequires: python-markupsafe BuildRequires: python-ply -BuildRequires: python-simplejson +%endif +BuildRequires: python2-simplejson %if 0%{?bundlere2} # Using bundled bits, do nothing. %else @@ -740,6 +748,10 @@ udev. %patch87 -p1 -b .epel7 %endif +# Change shebang in all relevant files in this directory and all subdirectories +# See `man find` for how the `-exec command {} +` syntax works +find -type f -exec sed -i '1s=^#!/usr/bin/\(python\|env python\)[23]\?=#!%{__python2}=' {} + + %if 0%{?asan} export CC="clang" export CXX="clang++" @@ -1069,8 +1081,8 @@ build/linux/unbundle/remove_bundled_libraries.py \ # Look, I don't know. This package is spit and chewing gum. Sorry. rm -rf third_party/markupsafe -ln -s %{python_sitearch}/markupsafe third_party/markupsafe -# We should look on removing other python packages as well i.e. ply +ln -s %{python2_sitearch}/markupsafe third_party/markupsafe +# We should look on removing other python2 packages as well i.e. ply # Fix hardcoded path in remoting code sed -i 's|/opt/google/chrome-remote-desktop|%{crd_path}|g' remoting/host/setup/daemon_controller_delegate_linux.cc @@ -1145,8 +1157,8 @@ sed -i 's|exec "${THIS_DIR}/ninja-linux${LONG_BIT}"|exec "/usr/bin/ninja-build"| %endif # Check that there is no system 'google' module, shadowing bundled ones: -if python -c 'import google ; print google.__path__' 2> /dev/null ; then \ - echo "Python 'google' module is defined, this will shadow modules of this build"; \ +if python2 -c 'import google ; print google.__path__' 2> /dev/null ; then \ + echo "Python 2 'google' module is defined, this will shadow modules of this build"; \ exit 1 ; \ fi From e00e15df7ee56234e38d6db3d6178b65aa22f937 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 17 Apr 2018 12:54:51 -0400 Subject: [PATCH 0197/1449] use system fontconfig (except on epel7) --- chromium.spec | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/chromium.spec b/chromium.spec index 8bbca8a..446d5ec 100644 --- a/chromium.spec +++ b/chromium.spec @@ -91,6 +91,7 @@ BuildRequires: libicu-devel >= 5.4 %global bundlelibjpeg 1 %global bundlefreetype 1 %global bundlelibdrm 1 +%global bundlefontconfig 1 %else %global bundleharfbuzz 0 %global bundleopus 1 @@ -100,6 +101,7 @@ BuildRequires: libicu-devel >= 5.4 %global bundlelibjpeg 0 %global bundlefreetype 0 %global bundlelibdrm 0 +%global bundlefontconfig 0 %endif # Needs at least harfbuzz 1.7.3 now. @@ -134,7 +136,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3325.181 -Release: 2%{?dist} +Release: 3%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -502,7 +504,9 @@ Provides: bundled(fdmlibm) = 5.3 # Don't get too excited. MPEG and other legally problematic stuff is stripped out. Provides: bundled(ffmpeg) = 3.2git Provides: bundled(fips181) = 2.2.3 -Provides: bundled(fontconfig) = 2.11.0 +%if 0%{?bundlefontconfig} +Provides: bundled(fontconfig) = 2.12.6 +%endif %if 0%{?bundlefreetype} Provides: bundled(freetype) = 2.9.3 %endif @@ -1079,6 +1083,10 @@ export PATH=$PATH:%{_builddir}/depot_tools build/linux/unbundle/replace_gn_files.py --system-libraries \ flac \ +%if 0%{?bundlefontconfig} +%else + fontconfig \ +%endif %if 0%{?bundlefreetype} %else freetype \ @@ -1617,6 +1625,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Tue Apr 17 2018 Tom Callaway 65.0.3325.181-3 +- use system fontconfig (except on epel7) + * Wed Apr 4 2018 Tom Callaway 65.0.3325.181-2 - add explicit dependency on minizip (bz 1534282) From 5479a8c69aaf12f5a9977975224620fa0a71c3ec Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 1 May 2018 16:24:18 -0400 Subject: [PATCH 0198/1449] 66.0.3359.139 --- .gitignore | 1 + ...se-Optional-T-requires-the-full-decl.patch | 33 +++ ...nitializer-list-for-NoDestructor-of-.patch | 12 + ...-declare-ConfigurationPolicyProvider.patch | 18 ++ ....0.3359.117-gcc-copy-constructor-fix.patch | 49 ++++ ...6.0.3359.117-gcc-optional-move-fixes.patch | 45 +++ ....117-gcc-vector-copy-constructor-fix.patch | 53 ++++ chromium-66.0.3359.117-missing-files.patch | 272 ++++++++++++++++++ chromium-66.0.3359.117-nounrar.patch | 16 ++ chromium-66.0.3359.117-system-clang.patch | 12 + chromium.spec | 106 +++---- sources | 1 + 12 files changed, 556 insertions(+), 62 deletions(-) create mode 100644 chromium-66.0.3359.117-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch create mode 100644 chromium-66.0.3359.117-GCC-do-not-use-initializer-list-for-NoDestructor-of-.patch create mode 100644 chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch create mode 100644 chromium-66.0.3359.117-gcc-copy-constructor-fix.patch create mode 100644 chromium-66.0.3359.117-gcc-optional-move-fixes.patch create mode 100644 chromium-66.0.3359.117-gcc-vector-copy-constructor-fix.patch create mode 100644 chromium-66.0.3359.117-missing-files.patch create mode 100644 chromium-66.0.3359.117-nounrar.patch create mode 100644 chromium-66.0.3359.117-system-clang.patch diff --git a/.gitignore b/.gitignore index ddcd939..f419b63 100644 --- a/.gitignore +++ b/.gitignore @@ -42,3 +42,4 @@ /chromium-65.0.3325.146-clean.tar.xz /chromium-65.0.3325.162-clean.tar.xz /chromium-65.0.3325.181-clean.tar.xz +/chromium-66.0.3359.139-clean.tar.xz diff --git a/chromium-66.0.3359.117-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch b/chromium-66.0.3359.117-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch new file mode 100644 index 0000000..36ade41 --- /dev/null +++ b/chromium-66.0.3359.117-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch @@ -0,0 +1,33 @@ +diff -up chromium-66.0.3359.117/services/preferences/tracked/pref_hash_filter.h.gcc-full-decl chromium-66.0.3359.117/services/preferences/tracked/pref_hash_filter.h +--- chromium-66.0.3359.117/services/preferences/tracked/pref_hash_filter.h.gcc-full-decl 2018-04-25 16:29:52.372692179 -0400 ++++ chromium-66.0.3359.117/services/preferences/tracked/pref_hash_filter.h 2018-04-25 16:31:15.698058409 -0400 +@@ -21,9 +21,9 @@ + #include "services/preferences/public/mojom/preferences.mojom.h" + #include "services/preferences/tracked/hash_store_contents.h" + #include "services/preferences/tracked/interceptable_pref_filter.h" ++#include "services/preferences/tracked/pref_hash_store.h" + #include "services/preferences/tracked/tracked_preference.h" + +-class PrefHashStore; + class PrefService; + + namespace base { +diff -up chromium-66.0.3359.117/third_party/WebKit/Source/modules/webdatabase/SQLTransactionBackend.h.gcc-full-decl chromium-66.0.3359.117/third_party/WebKit/Source/modules/webdatabase/SQLTransactionBackend.h +--- chromium-66.0.3359.117/third_party/WebKit/Source/modules/webdatabase/SQLTransactionBackend.h.gcc-full-decl 2018-04-17 21:05:12.000000000 -0400 ++++ chromium-66.0.3359.117/third_party/WebKit/Source/modules/webdatabase/SQLTransactionBackend.h 2018-04-25 16:29:52.373692159 -0400 +@@ -30,6 +30,7 @@ + + #include + #include "modules/webdatabase/DatabaseBasicTypes.h" ++#include "modules/webdatabase/SQLError.h" + #include "modules/webdatabase/SQLStatement.h" + #include "modules/webdatabase/SQLStatementBackend.h" + #include "modules/webdatabase/SQLTransactionStateMachine.h" +@@ -41,7 +42,6 @@ + namespace blink { + + class Database; +-class SQLErrorData; + class SQLiteTransaction; + class SQLTransaction; + class SQLTransactionBackend; diff --git a/chromium-66.0.3359.117-GCC-do-not-use-initializer-list-for-NoDestructor-of-.patch b/chromium-66.0.3359.117-GCC-do-not-use-initializer-list-for-NoDestructor-of-.patch new file mode 100644 index 0000000..cb68934 --- /dev/null +++ b/chromium-66.0.3359.117-GCC-do-not-use-initializer-list-for-NoDestructor-of-.patch @@ -0,0 +1,12 @@ +diff -up chromium-66.0.3359.117/chrome/browser/supervised_user/supervised_user_url_filter.cc.flatsetfix chromium-66.0.3359.117/chrome/browser/supervised_user/supervised_user_url_filter.cc +--- chromium-66.0.3359.117/chrome/browser/supervised_user/supervised_user_url_filter.cc.flatsetfix 2018-04-30 14:22:23.997461566 -0400 ++++ chromium-66.0.3359.117/chrome/browser/supervised_user/supervised_user_url_filter.cc 2018-04-30 14:22:51.867920383 -0400 +@@ -368,7 +368,7 @@ SupervisedUserURLFilter::GetFilteringBeh + + // Allow navigations to whitelisted origins (currently families.google.com). + static const base::NoDestructor> kWhitelistedOrigins( +- {GURL(kFamiliesUrl).GetOrigin()}); ++ base::flat_set({GURL(kFamiliesUrl).GetOrigin()})); + if (base::ContainsKey(*kWhitelistedOrigins, effective_url.GetOrigin())) + return ALLOW; + diff --git a/chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch b/chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch new file mode 100644 index 0000000..d5b19cf --- /dev/null +++ b/chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch @@ -0,0 +1,18 @@ +diff -up chromium-66.0.3359.117/components/policy/core/browser/browser_policy_connector_base.h.gcc-cpolicyprovider chromium-66.0.3359.117/components/policy/core/browser/browser_policy_connector_base.h +--- chromium-66.0.3359.117/components/policy/core/browser/browser_policy_connector_base.h.gcc-cpolicyprovider 2018-04-25 16:33:40.872222779 -0400 ++++ chromium-66.0.3359.117/components/policy/core/browser/browser_policy_connector_base.h 2018-04-25 16:37:23.175883637 -0400 +@@ -11,13 +11,13 @@ + #include "base/callback_forward.h" + #include "base/macros.h" + #include "components/policy/core/browser/configuration_policy_handler_list.h" ++#include "components/policy/core/common/configuration_policy_provider.h" + #include "components/policy/core/common/schema.h" + #include "components/policy/core/common/schema_registry.h" + #include "components/policy/policy_export.h" + + namespace policy { + +-class ConfigurationPolicyProvider; + class PolicyService; + class PolicyServiceImpl; + diff --git a/chromium-66.0.3359.117-gcc-copy-constructor-fix.patch b/chromium-66.0.3359.117-gcc-copy-constructor-fix.patch new file mode 100644 index 0000000..09c5b82 --- /dev/null +++ b/chromium-66.0.3359.117-gcc-copy-constructor-fix.patch @@ -0,0 +1,49 @@ +diff -up chromium-66.0.3359.117/cc/raster/playback_image_provider.cc.copycon chromium-66.0.3359.117/cc/raster/playback_image_provider.cc +--- chromium-66.0.3359.117/cc/raster/playback_image_provider.cc.copycon 2018-04-23 13:22:43.109126071 -0400 ++++ chromium-66.0.3359.117/cc/raster/playback_image_provider.cc 2018-04-23 13:23:55.761704938 -0400 +@@ -20,7 +20,7 @@ void UnrefImageFromCache(DrawImage draw_ + PlaybackImageProvider::PlaybackImageProvider( + ImageDecodeCache* cache, + const gfx::ColorSpace& target_color_space, +- base::Optional settings) ++ base::Optional&& settings) + : cache_(cache), + target_color_space_(target_color_space), + settings_(std::move(settings)) { +@@ -70,7 +70,10 @@ PlaybackImageProvider::GetDecodedDrawIma + } + + PlaybackImageProvider::Settings::Settings() = default; +-PlaybackImageProvider::Settings::Settings(const Settings& other) = default; ++PlaybackImageProvider::Settings::Settings(PlaybackImageProvider::Settings&&) = ++ default; + PlaybackImageProvider::Settings::~Settings() = default; ++PlaybackImageProvider::Settings& PlaybackImageProvider::Settings::operator=( ++ PlaybackImageProvider::Settings&&) = default; + + } // namespace cc +diff -up chromium-66.0.3359.117/cc/raster/playback_image_provider.h.copycon chromium-66.0.3359.117/cc/raster/playback_image_provider.h +--- chromium-66.0.3359.117/cc/raster/playback_image_provider.h.copycon 2018-04-23 13:24:07.699471148 -0400 ++++ chromium-66.0.3359.117/cc/raster/playback_image_provider.h 2018-04-23 13:24:57.080506348 -0400 +@@ -20,8 +20,10 @@ class CC_EXPORT PlaybackImageProvider : + public: + struct CC_EXPORT Settings { + Settings(); +- Settings(const Settings& other); ++ Settings(const Settings&) = delete; ++ Settings(Settings&&); + ~Settings(); ++ Settings& operator=(Settings&&); + + // The set of image ids to skip during raster. + PaintImageIdFlatSet images_to_skip; +@@ -34,7 +36,7 @@ class CC_EXPORT PlaybackImageProvider : + // If no settings are provided, all images are skipped during rasterization. + PlaybackImageProvider(ImageDecodeCache* cache, + const gfx::ColorSpace& target_color_space, +- base::Optional settings); ++ base::Optional&& settings); + ~PlaybackImageProvider() override; + + PlaybackImageProvider(PlaybackImageProvider&& other); +diff -up chromium-66.0.3359.117/cc/raster/playback_image_provider_unittest.cc.copycon chromium-66.0.3359.117/cc/raster/playback_image_provider_unittest.cc diff --git a/chromium-66.0.3359.117-gcc-optional-move-fixes.patch b/chromium-66.0.3359.117-gcc-optional-move-fixes.patch new file mode 100644 index 0000000..80df7d0 --- /dev/null +++ b/chromium-66.0.3359.117-gcc-optional-move-fixes.patch @@ -0,0 +1,45 @@ +diff -up chromium-66.0.3359.117/content/browser/appcache/appcache_request_handler.cc.gccomove chromium-66.0.3359.117/content/browser/appcache/appcache_request_handler.cc +--- chromium-66.0.3359.117/content/browser/appcache/appcache_request_handler.cc.gccomove 2018-04-23 12:53:32.419477463 -0400 ++++ chromium-66.0.3359.117/content/browser/appcache/appcache_request_handler.cc 2018-04-23 12:54:02.497887258 -0400 +@@ -639,7 +639,7 @@ AppCacheRequestHandler::MaybeCreateSubre + + SubresourceLoaderParams params; + params.loader_factory_info = factory_ptr.PassInterface(); +- return params; ++ return base::Optional(std::move(params)); + } + + void AppCacheRequestHandler::MaybeCreateSubresourceLoader( +diff -up chromium-66.0.3359.117/content/browser/service_worker/service_worker_controllee_request_handler.cc.gccomove chromium-66.0.3359.117/content/browser/service_worker/service_worker_controllee_request_handler.cc +--- chromium-66.0.3359.117/content/browser/service_worker/service_worker_controllee_request_handler.cc.gccomove 2018-04-23 12:54:16.614610083 -0400 ++++ chromium-66.0.3359.117/content/browser/service_worker/service_worker_controllee_request_handler.cc 2018-04-23 12:54:38.401182827 -0400 +@@ -271,7 +271,7 @@ ServiceWorkerControlleeRequestHandler::M + controller_info->object_info = provider_host_->GetOrCreateServiceWorkerHandle( + provider_host_->controller()); + params.controller_service_worker_info = std::move(controller_info); +- return params; ++ return base::Optional(std::move(params)); + } + + void ServiceWorkerControlleeRequestHandler::PrepareForMainResource( +diff -up chromium-66.0.3359.117/device/fido/device_response_converter.cc.gccomove chromium-66.0.3359.117/device/fido/device_response_converter.cc +--- chromium-66.0.3359.117/device/fido/device_response_converter.cc.gccomove 2018-04-23 12:54:51.452926482 -0400 ++++ chromium-66.0.3359.117/device/fido/device_response_converter.cc 2018-04-23 12:55:24.248283058 -0400 +@@ -121,7 +121,7 @@ base::Optionalsecond.GetUnsigned()); + } + +- return response; ++ return base::Optional(std::move(response)); + } + + base::Optional ReadCTAPGetInfoResponse( +@@ -241,7 +241,7 @@ base::Optional(std::move(response)); + } + + } // namespace device diff --git a/chromium-66.0.3359.117-gcc-vector-copy-constructor-fix.patch b/chromium-66.0.3359.117-gcc-vector-copy-constructor-fix.patch new file mode 100644 index 0000000..b86c200 --- /dev/null +++ b/chromium-66.0.3359.117-gcc-vector-copy-constructor-fix.patch @@ -0,0 +1,53 @@ +diff -up chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/DEPS.944404 chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/DEPS +--- chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/DEPS.944404 2018-04-23 14:18:43.702116916 -0400 ++++ chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/DEPS 2018-04-23 14:19:05.854680223 -0400 +@@ -16,6 +16,7 @@ include_rules = [ + "+base/process/process_metrics.h", + "+base/rand_util.h", + "+base/strings", ++ "+base/template_util.h", + "+base/threading/thread_checker.h", + "+base/time/time.h", + "+base/tuple.h", +diff -up chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/Optional.h.944404 chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/Optional.h +--- chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/Optional.h.944404 2018-04-23 14:20:05.718499685 -0400 ++++ chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/Optional.h 2018-04-23 14:20:18.165253615 -0400 +@@ -6,6 +6,7 @@ + #define Optional_h + + #include "base/optional.h" ++#include "platform/wtf/TemplateUtil.h" + + namespace WTF { + +diff -up chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/TemplateUtil.h.944404 chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/TemplateUtil.h +--- chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/TemplateUtil.h.944404 2018-04-23 14:20:31.660987877 -0400 ++++ chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/TemplateUtil.h 2018-04-23 14:21:40.276637297 -0400 +@@ -0,0 +1,27 @@ ++// Copyright 2018 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. ++ ++#ifndef TemplateUtil_h ++#define TemplateUtil_h ++ ++#include "base/template_util.h" ++#include "platform/wtf/Vector.h" ++ ++namespace base { ++ ++#if defined(__GNUC__) && !defined(__clang__) && __GNUC__ <= 7 ++// Workaround for g++7 and earlier family. ++// Due to https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80654, without this ++// Optional> where T is non-copyable causes a compile error. ++// As we know it is not trivially copy constructible, explicitly declare so. ++// ++// It completes the declaration in base/template_util.h that was provided ++// for std::vector ++template ++struct is_trivially_copy_constructible> : std::false_type {}; ++#endif ++ ++} // namespace base ++ ++#endif // TemplateUtil_h diff --git a/chromium-66.0.3359.117-missing-files.patch b/chromium-66.0.3359.117-missing-files.patch new file mode 100644 index 0000000..746d56e --- /dev/null +++ b/chromium-66.0.3359.117-missing-files.patch @@ -0,0 +1,272 @@ +diff -up chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/__init__.py.missing chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/__init__.py +--- chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/__init__.py.missing 2018-04-19 09:51:46.165723235 -0400 ++++ chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/__init__.py 2018-04-19 09:51:46.171723115 -0400 +@@ -0,0 +1,3 @@ ++# 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-66.0.3359.117/third_party/blink/tools/blinkpy/common/name_style_converter.py.missing chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/name_style_converter.py +--- chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/name_style_converter.py.missing 2018-04-19 09:51:46.171723115 -0400 ++++ chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/name_style_converter.py 2018-04-19 09:51:46.172723095 -0400 +@@ -0,0 +1,110 @@ ++# 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. ++# pylint: disable=import-error,print-statement,relative-import ++import re ++SPECIAL_TOKENS = [ ++ # This list should be sorted by length. ++ 'CString', ++ 'Float32', ++ 'Float64', ++ 'Base64', ++ 'IFrame', ++ 'Latin1', ++ 'PlugIn', ++ 'SQLite', ++ 'Uint16', ++ 'Uint32', ++ 'WebGL2', ++ 'ASCII', ++ 'CType', ++ 'DList', ++ 'Int16', ++ 'Int32', ++ 'MPath', ++ 'OList', ++ 'TSpan', ++ 'UList', ++ 'UTF16', ++ 'Uint8', ++ 'WebGL', ++ 'XPath', ++ 'ETC1', ++ 'HTML', ++ 'Int8', ++ 'S3TC', ++ 'SPv2', ++ 'UTF8', ++ 'API', ++ 'CSS', ++ 'DOM', ++ 'EXT', ++ 'RTC', ++ 'SVG', ++ '2D', ++ 'AX', ++ 'V0', ++ 'V8', ++] ++MATCHING_EXPRESSION = '((?:[A-Z][a-z]+)|[0-9]D?$)' ++class SmartTokenizer(object): ++ """Detects special cases that are not easily discernible without additional ++ knowledge, such as recognizing that in SVGSVGElement, the first two SVGs ++ are separate tokens, but WebGL is one token.""" ++ def __init__(self, name): ++ self.remaining = name ++ def tokenize(self): ++ name = self.remaining ++ tokens = [] ++ while len(name) > 0: ++ matched_token = None ++ for token in SPECIAL_TOKENS: ++ if name.startswith(token): ++ matched_token = token ++ break ++ if not matched_token: ++ match = re.search(MATCHING_EXPRESSION, name) ++ if not match: ++ matched_token = name ++ elif match.start(0) != 0: ++ matched_token = name[:match.start(0)] ++ else: ++ matched_token = match.group(0) ++ tokens.append(name[:len(matched_token)]) ++ name = name[len(matched_token):] ++ return tokens ++class NameStyleConverter(object): ++ """Converts names from camelCase to various other styles. ++ """ ++ def __init__(self, name): ++ self.tokens = self.tokenize(name) ++ def tokenize(self, name): ++ tokenizer = SmartTokenizer(name) ++ return tokenizer.tokenize() ++ def to_snake_case(self): ++ """Snake case is the file and variable name style per Google C++ Style ++ Guide: ++ https://google.github.io/styleguide/cppguide.html#Variable_Names ++ Also known as the hacker case. ++ https://en.wikipedia.org/wiki/Snake_case ++ """ ++ return '_'.join([token.lower() for token in self.tokens]) ++ def to_upper_camel_case(self): ++ """Upper-camel case is the class and function name style per ++ Google C++ Style Guide: ++ https://google.github.io/styleguide/cppguide.html#Function_Names ++ Also known as the PascalCase. ++ https://en.wikipedia.org/wiki/Camel_case. ++ """ ++ return ''.join([token[0].upper() + token[1:] for token in self.tokens]) ++ def to_macro_case(self): ++ """Macro case is the macro name style per Google C++ Style Guide: ++ https://google.github.io/styleguide/cppguide.html#Macro_Names ++ """ ++ return '_'.join([token.upper() for token in self.tokens]) ++ def to_all_cases(self): ++ return { ++ 'snake_case': self.to_snake_case(), ++ 'upper_camel_case': self.to_upper_camel_case(), ++ 'macro_case': self.to_macro_case(), ++ } +diff -up chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/name_style_converter_test.py.missing chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/name_style_converter_test.py +--- chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/name_style_converter_test.py.missing 2018-04-19 09:51:46.172723095 -0400 ++++ chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/name_style_converter_test.py 2018-04-19 09:51:46.173723075 -0400 +@@ -0,0 +1,140 @@ ++# 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. ++# pylint: disable=import-error,print-statement,relative-import,protected-access ++"""Unit tests for name_style_converter.py.""" ++import unittest ++from name_style_converter import NameStyleConverter ++from name_style_converter import SmartTokenizer ++class SmartTokenizerTest(unittest.TestCase): ++ def test_simple_cases(self): ++ tokenizer = SmartTokenizer('foo') ++ self.assertEqual(tokenizer.tokenize(), ['foo']) ++ tokenizer = SmartTokenizer('fooBar') ++ self.assertEqual(tokenizer.tokenize(), ['foo', 'Bar']) ++ tokenizer = SmartTokenizer('fooBarBaz') ++ self.assertEqual(tokenizer.tokenize(), ['foo', 'Bar', 'Baz']) ++ tokenizer = SmartTokenizer('Baz') ++ self.assertEqual(tokenizer.tokenize(), ['Baz']) ++ tokenizer = SmartTokenizer('') ++ self.assertEqual(tokenizer.tokenize(), []) ++ tokenizer = SmartTokenizer('FOO') ++ self.assertEqual(tokenizer.tokenize(), ['FOO']) ++ tokenizer = SmartTokenizer('foo2') ++ self.assertEqual(tokenizer.tokenize(), ['foo', '2']) ++ def test_tricky_cases(self): ++ tokenizer = SmartTokenizer('XMLHttpRequest') ++ self.assertEqual(tokenizer.tokenize(), ['XML', 'Http', 'Request']) ++ tokenizer = SmartTokenizer('HTMLElement') ++ self.assertEqual(tokenizer.tokenize(), ['HTML', 'Element']) ++ tokenizer = SmartTokenizer('WebGLRenderingContext') ++ self.assertEqual(tokenizer.tokenize(), ++ ['WebGL', 'Rendering', 'Context']) ++ tokenizer = SmartTokenizer('CanvasRenderingContext2D') ++ self.assertEqual(tokenizer.tokenize(), ++ ['Canvas', 'Rendering', 'Context', '2D']) ++ tokenizer = SmartTokenizer('CanvasRenderingContext2DAPITest') ++ self.assertEqual(tokenizer.tokenize(), ++ ['Canvas', 'Rendering', 'Context', '2D', 'API', 'Test']) ++ tokenizer = SmartTokenizer('SVGSVGElement') ++ self.assertEqual(tokenizer.tokenize(), ['SVG', 'SVG', 'Element']) ++ tokenizer = SmartTokenizer('CanvasRenderingContext2D') ++ self.assertEqual(tokenizer.tokenize(), ['Canvas', 'Rendering', 'Context', '2D']) ++ tokenizer = SmartTokenizer('CSSURLImageValue') ++ self.assertEqual(tokenizer.tokenize(), ['CSS', 'URL', 'Image', 'Value']) ++ tokenizer = SmartTokenizer('CSSPropertyAPID') ++ self.assertEqual(tokenizer.tokenize(), ['CSS', 'Property', 'API', 'D']) ++ tokenizer = SmartTokenizer('AXARIAGridCell') ++ self.assertEqual(tokenizer.tokenize(), ['AX', 'ARIA', 'Grid', 'Cell']) ++ tokenizer = SmartTokenizer('CDATASection') ++ self.assertEqual(tokenizer.tokenize(), ['CDATA', 'Section']) ++ tokenizer = SmartTokenizer('ASCIICType') ++ self.assertEqual(tokenizer.tokenize(), ['ASCII', 'CType']) ++ tokenizer = SmartTokenizer('CString') ++ self.assertEqual(tokenizer.tokenize(), ['CString']) ++ tokenizer = SmartTokenizer('HTMLDListElement') ++ self.assertEqual(tokenizer.tokenize(), ['HTML', 'DList', 'Element']) ++ tokenizer = SmartTokenizer('HTMLOListElement') ++ self.assertEqual(tokenizer.tokenize(), ['HTML', 'OList', 'Element']) ++ tokenizer = SmartTokenizer('HTMLIFrameElement') ++ self.assertEqual(tokenizer.tokenize(), ['HTML', 'IFrame', 'Element']) ++ tokenizer = SmartTokenizer('HTMLPlugInElement') ++ self.assertEqual(tokenizer.tokenize(), ['HTML', 'PlugIn', 'Element']) ++ # No special handling for OptGroup, FieldSet, and TextArea. ++ tokenizer = SmartTokenizer('HTMLOptGroupElement') ++ self.assertEqual(tokenizer.tokenize(), ['HTML', 'Opt', 'Group', 'Element']) ++ tokenizer = SmartTokenizer('HTMLFieldSetElement') ++ self.assertEqual(tokenizer.tokenize(), ['HTML', 'Field', 'Set', 'Element']) ++ tokenizer = SmartTokenizer('HTMLTextAreaElement') ++ self.assertEqual(tokenizer.tokenize(), ['HTML', 'Text', 'Area', 'Element']) ++ tokenizer = SmartTokenizer('Path2D') ++ self.assertEqual(tokenizer.tokenize(), ['Path', '2D']) ++ tokenizer = SmartTokenizer('Point2D') ++ self.assertEqual(tokenizer.tokenize(), ['Point', '2D']) ++ tokenizer = SmartTokenizer('CanvasRenderingContext2DState') ++ self.assertEqual(tokenizer.tokenize(), ['Canvas', 'Rendering', 'Context', '2D', 'State']) ++ tokenizer = SmartTokenizer('RTCDTMFSender') ++ self.assertEqual(tokenizer.tokenize(), ['RTC', 'DTMF', 'Sender']) ++ tokenizer = SmartTokenizer('WebGLCompressedTextureS3TCsRGB') ++ self.assertEqual(tokenizer.tokenize(), ['WebGL', 'Compressed', 'Texture', 'S3TC', 'sRGB']) ++ tokenizer = SmartTokenizer('WebGL2CompressedTextureETC1') ++ self.assertEqual(tokenizer.tokenize(), ['WebGL2', 'Compressed', 'Texture', 'ETC1']) ++ tokenizer = SmartTokenizer('EXTsRGB') ++ self.assertEqual(tokenizer.tokenize(), ['EXT', 'sRGB']) ++ tokenizer = SmartTokenizer('SVGFEBlendElement') ++ self.assertEqual(tokenizer.tokenize(), ['SVG', 'FE', 'Blend', 'Element']) ++ tokenizer = SmartTokenizer('SVGMPathElement') ++ self.assertEqual(tokenizer.tokenize(), ['SVG', 'MPath', 'Element']) ++ tokenizer = SmartTokenizer('SVGTSpanElement') ++ self.assertEqual(tokenizer.tokenize(), ['SVG', 'TSpan', 'Element']) ++ tokenizer = SmartTokenizer('SVGURIReference') ++ self.assertEqual(tokenizer.tokenize(), ['SVG', 'URI', 'Reference']) ++ tokenizer = SmartTokenizer('UTF16TextIterator') ++ self.assertEqual(tokenizer.tokenize(), ['UTF16', 'Text', 'Iterator']) ++ tokenizer = SmartTokenizer('UTF8Decoder') ++ self.assertEqual(tokenizer.tokenize(), ['UTF8', 'Decoder']) ++ tokenizer = SmartTokenizer('Uint8Array') ++ self.assertEqual(tokenizer.tokenize(), ['Uint8', 'Array']) ++ tokenizer = SmartTokenizer('DOMWindowBase64') ++ self.assertEqual(tokenizer.tokenize(), ['DOM', 'Window', 'Base64']) ++ tokenizer = SmartTokenizer('TextCodecLatin1') ++ self.assertEqual(tokenizer.tokenize(), ['Text', 'Codec', 'Latin1']) ++ tokenizer = SmartTokenizer('V8BindingForCore') ++ self.assertEqual(tokenizer.tokenize(), ['V8', 'Binding', 'For', 'Core']) ++ tokenizer = SmartTokenizer('V8DOMRect') ++ self.assertEqual(tokenizer.tokenize(), ['V8', 'DOM', 'Rect']) ++ tokenizer = SmartTokenizer('V0InsertionPoint') ++ self.assertEqual(tokenizer.tokenize(), ['V0', 'Insertion', 'Point']) ++ tokenizer = SmartTokenizer('ShadowDOMV0Test') ++ self.assertEqual(tokenizer.tokenize(), ['Shadow', 'DOM', 'V0', 'Test']) ++ tokenizer = SmartTokenizer('ElementShadowV0') ++ self.assertEqual(tokenizer.tokenize(), ['Element', 'Shadow', 'V0']) ++ tokenizer = SmartTokenizer('StubChromeClientForSPv2') ++ self.assertEqual(tokenizer.tokenize(), ['Stub', 'Chrome', 'Client', 'For', 'SPv2']) ++ tokenizer = SmartTokenizer('SQLiteAuthorizer') ++ self.assertEqual(tokenizer.tokenize(), ['SQLite', 'Authorizer']) ++ tokenizer = SmartTokenizer('XPathEvaluator') ++ self.assertEqual(tokenizer.tokenize(), ['XPath', 'Evaluator']) ++ tokenizer = SmartTokenizer('IsXHTMLDocument') ++ self.assertEqual(tokenizer.tokenize(), ['Is', 'XHTML', 'Document']) ++ tokenizer = SmartTokenizer('Animation.idl') ++ self.assertEqual(tokenizer.tokenize(), ['Animation', '.idl']) ++class NameStyleConverterTest(unittest.TestCase): ++ def test_snake_case(self): ++ converter = NameStyleConverter('HTMLElement') ++ self.assertEqual(converter.to_snake_case(), 'html_element') ++ def test_upper_camel_case(self): ++ converter = NameStyleConverter('someSuperThing') ++ self.assertEqual(converter.to_upper_camel_case(), 'SomeSuperThing') ++ converter = NameStyleConverter('SVGElement') ++ self.assertEqual(converter.to_upper_camel_case(), 'SVGElement') ++ def test_macro_case(self): ++ converter = NameStyleConverter('WebGLBaz2D') ++ self.assertEqual(converter.to_macro_case(), 'WEBGL_BAZ_2D') ++ def test_all_cases(self): ++ converter = NameStyleConverter('SVGScriptElement') ++ self.assertEqual(converter.to_all_cases(), { ++ 'snake_case': 'svg_script_element', ++ 'upper_camel_case': 'SVGScriptElement', ++ 'macro_case': 'SVG_SCRIPT_ELEMENT', ++ }) +diff -up chromium-66.0.3359.117/third_party/blink/tools/blinkpy/__init__.py.missing chromium-66.0.3359.117/third_party/blink/tools/blinkpy/__init__.py +--- chromium-66.0.3359.117/third_party/blink/tools/blinkpy/__init__.py.missing 2018-04-19 11:34:40.621293007 -0400 ++++ chromium-66.0.3359.117/third_party/blink/tools/blinkpy/__init__.py 2018-04-19 11:34:34.440413163 -0400 +@@ -0,0 +1,3 @@ ++# 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 --git a/chromium-66.0.3359.117-nounrar.patch b/chromium-66.0.3359.117-nounrar.patch new file mode 100644 index 0000000..67a517b --- /dev/null +++ b/chromium-66.0.3359.117-nounrar.patch @@ -0,0 +1,16 @@ +diff -up chromium-66.0.3359.117/chrome/services/file_util/public/cpp/BUILD.gn.nounrar chromium-66.0.3359.117/chrome/services/file_util/public/cpp/BUILD.gn +--- chromium-66.0.3359.117/chrome/services/file_util/public/cpp/BUILD.gn.nounrar 2018-04-25 12:17:13.858139109 -0400 ++++ chromium-66.0.3359.117/chrome/services/file_util/public/cpp/BUILD.gn 2018-04-25 12:19:53.639532053 -0400 +@@ -27,9 +27,9 @@ source_set("cpp") { + } + + #TODO(crbug/750327): This dependency is here temporarily. +- deps = [ +- "//third_party/unrar:unrar", +- ] ++ # deps = [ ++ # "//third_party/unrar:unrar", ++ # ] + + public_deps += [ "//chrome/common/safe_browsing" ] + } diff --git a/chromium-66.0.3359.117-system-clang.patch b/chromium-66.0.3359.117-system-clang.patch new file mode 100644 index 0000000..e90dc58 --- /dev/null +++ b/chromium-66.0.3359.117-system-clang.patch @@ -0,0 +1,12 @@ +diff -up chromium-66.0.3359.117/build/config/clang/clang.gni.system-clang chromium-66.0.3359.117/build/config/clang/clang.gni +--- chromium-66.0.3359.117/build/config/clang/clang.gni.system-clang 2018-04-18 12:08:45.658190297 -0400 ++++ chromium-66.0.3359.117/build/config/clang/clang.gni 2018-04-18 12:09:37.612032982 -0400 +@@ -4,7 +4,7 @@ + + import("//build/toolchain/toolchain.gni") + +-default_clang_base_path = "//third_party/llvm-build/Release+Asserts" ++default_clang_base_path = "/usr" + + declare_args() { + # Indicates if the build should use the Chrome-specific plugins for enforcing diff --git a/chromium.spec b/chromium.spec index 7da20e9..5a09534 100644 --- a/chromium.spec +++ b/chromium.spec @@ -30,7 +30,7 @@ # Requires is trickier. %global __provides_exclude_from %{chromium_path}/.*\\.so|%{chromium_path}/lib/.*\\.so -%global privlibs libaccessibility|libanimation|libaura_extra|libaura|libbase_i18n|libbase|libbindings|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core_mojo_bindings_shared|libblink_core|libblink_modules|libblink_mojo_bindings_shared|libblink_offscreen_canvas_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcbor|libcc_animation|libcc_base|libcc_blink|libcc_debug|libcc_ipc|libcc_paint|libcc|libcdm_manager|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent|libcpp|libcrash_key|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevices|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevice_vr_mojo_bindings|libdevice_vr|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libembedder|libembedder_switches|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents|libevents_x|libffmpeg|libfingerprint|libfontconfig|libfreetype_harfbuzz|libgcm|libgeolocation|libgeometry_skia|libgeometry|libgesture_detection|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_switches|libgfx_x11|libgin|libgles2_c_lib|libgles2_implementation|libgles2|libgles2_utils|libGLESv2|libgl_init|libgl_in_process_context|libgl_wrapper|libgpu_ipc_service|libgpu|libgpu_util|libgtk3ui|libheadless|libhost|libicui18n|libicuuc|libipc_mojom_shared|libipc_mojom|libipc|libkeyboard|libkeyboard_with_content|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libleveldatabase|libmanager|libmedia_blink|libmedia_devices_mojo_bindings_shared|libmedia_gpu|libmedia_mojo_services|libmedia|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmojo_base_lib|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_mojom|libmojo_base_shared_typemap_traits|libmojo_bindings_shared|libmojo_common_lib|libmojo_ime_lib|libmojo_platform_bindings_shared|libmojo_public_system_cpp|libmojo_public_system|libmojo_system_impl|libnative_theme|libnet|libnet_with_v8|libnetwork_session_configurator|libonc|libplatform|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|librange|libresource_coordinator_cpp_base|libresource_coordinator_cpp|libresource_coordinator_public_interfaces_blink|libresource_coordinator_public_interfaces_shared|libresource_coordinator_public_interfaces|libsandbox_services|libsandbox|libseccomp_bpf|libsensors|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom_blink|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_constants|libservice_manager_mojom_shared|libservice_manager_mojom|libservice|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_devtools|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libuser_manager|libuser_prefs|libv8_libbase|libv8_libplatform|libv8|libviews|libviz_common|libviz_resource_format|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_threading|libVkLayer_unique_objects|libwebdata_common|libweb_dialogs|libwebview|libwidevinecdmadapter|libwidevinecdm|libwm_public|libwm|libwtf|libx11_events_platform|libx11_window +%global privlibs libaccessibility|libanimation|libaura_extra|libaura|libbase_i18n|libbase|libbindings_base|libbindings|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core_mojo_bindings_shared|libblink_core|libblink_modules|libblink_mojo_bindings_shared|libblink_offscreen_canvas_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcbor|libcc_animation|libcc_base|libcc_blink|libcc_debug|libcc_ipc|libcc_paint|libcc|libcdm_manager|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent|libcrash_key|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevices|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevice_vr_mojo_bindings|libdevice_vr|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libembedder|libembedder_switches|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents|libevents_x|libffmpeg|libfingerprint|libfreetype_harfbuzz|libgcm|libgeolocation|libgeometry_skia|libgeometry|libgesture_detection|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_switches|libgfx_x11|libgin|libgles2_implementation|libgles2|libgles2_utils|libGLESv2|libgl_init|libgl_in_process_context|libgl_wrapper|libgpu_ipc_service|libgpu|libgpu_util|libgtk3ui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc_mojom_shared|libipc_mojom|libipc|libkeyboard|libkeyboard_with_content|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libleveldatabase|libmanager|libmedia_blink|libmedia_devices_mojo_bindings_shared|libmedia_gpu|libmedia_mojo_services|libmedia|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmojo_base_lib|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_mojom|libmojo_base_shared_typemap_traits|libmojo_common_lib|libmojo_ime_lib|libmojo_mojom_bindings_shared|libmojo_mojom_bindings|libmojom_platform_shared|libmojom_shared|libmojo_public_system_cpp|libmojo_public_system|libmojo_system_impl|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp_base|libnetwork_cpp|libnetwork_service|libnetwork_session_configurator|libonc|libplatform|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp_base|libresource_coordinator_cpp|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libresource_coordinator_public_mojom|libsandbox_services|libsandbox|libseccomp_bpf|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom_blink|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_constants|libservice_manager_mojom_shared|libservice_manager_mojom|libservice|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing_cpp|libtracing_mojom_shared|libtracing_mojom|libtracing|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libuser_manager|libuser_prefs|libv8_libbase|libv8_libplatform|libv8|libviews|libviz_common|libviz_resource_format|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_threading|libVkLayer_unique_objects|libwebdata_common|libweb_dialogs|libwebview|libwidevinecdmadapter|libwidevinecdm|libwm_public|libwm|libwtf|libx11_events_platform|libx11_window %global __requires_exclude ^(%{privlibs})\\.so # If we build with shared on, then chrome-remote-desktop depends on chromium libs. @@ -128,15 +128,15 @@ BuildRequires: libicu-devel >= 5.4 %global chromoting_client_id %nil %endif -%global majorversion 65 +%global majorversion 66 %if %{freeworld} Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3325.181 -Release: 3%{?dist} +Version: %{majorversion}.0.3359.139 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -195,7 +195,7 @@ Patch36: chromium-58.0.3029.96-revert-b794998819088f76b4cf44c8db6940240c563cf4.p # Correctly compile the stdatomic.h in ffmpeg with gcc 4.8 Patch37: chromium-64.0.3282.119-ffmpeg-stdatomic.patch # Nacl can't die soon enough -Patch39: chromium-59.0.3071.86-system-clang.patch +Patch39: chromium-66.0.3359.117-system-clang.patch # Do not prefix libpng functions Patch42: chromium-60.0.3112.78-no-libpng-prefix.patch # Do not mangle libjpeg @@ -213,54 +213,35 @@ Patch53: chromium-61.0.3163.79-gcc-no-opt-safe-math.patch # Only needed when glibc 2.26.90 or later is used Patch57: chromium-63.0.3289.84-aarch64-glibc-2.26.90.patch # From gentoo -Patch62: chromium-65.0.3325.146-gcc5-r3.patch +Patch62: chromium-66.0.3359.117-gcc5-r3.patch # Do not try to use libc++ in the remoting stack Patch63: chromium-63.0.3289.84-nolibc++.patch # To use round with gcc, you need to #include Patch65: chromium-65.0.3325.146-gcc-round-fix.patch # Include proper headers to invoke memcpy() Patch67: chromium-65.0.3325.146-memcpy-fix.patch -# Work around gcc8 bug in gn -Patch68: chromium-64.0.3282.167-gcc8-fabi11.patch -# From Gentoo -Patch69: chromium-math.h-r0.patch -Patch70: chromium-stdint.patch -# Workaround https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80654 -# crbug.com/784732#27 -# https://chromium-review.googlesource.com/c/chromium/src/+/927942 -Patch71: chromium-65.0.3325.146-workaround-gcc7-is_trivially_copy_constructable-failure.patch -# And https://bugs.chromium.org/p/chromium/issues/detail?id=816952 -Patch72: chromium-65.0.3325.146-wtf-vector-fix.patch -# https://github.com/lgsvl/meta-lgsvl-browser/blob/ac93e7622be66946c76504be6a1db8d644ae1e43/recipes-browser/chromium/files/0001-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch -Patch73: chromium-65.0.3325.146-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch -# https://github.com/lgsvl/meta-lgsvl-browser/blob/ac93e7622be66946c76504be6a1db8d644ae1e43/recipes-browser/chromium/files/0001-wtf-oilpan-Remove-GC-checks-from-WTF-Optional-T.patch -Patch74: chromium-65.0.3325.146-wtf-oilpan-Remove-GC-checks-from-WTF-Optional-T.patch -# https://github.com/lgsvl/meta-lgsvl-browser/blob/ac93e7622be66946c76504be6a1db8d644ae1e43/recipes-browser/chromium/files/0001-Fix-non-copyable-class-s-optional-move.patch -Patch75: chromium-65.0.3325.146-Fix-non-copyable-class-s-optional-move.patch -# https://github.com/lgsvl/meta-lgsvl-browser/blob/ac93e7622be66946c76504be6a1db8d644ae1e43/recipes-browser/chromium/files/0001-Use-affirmative-expression-in-base-Optional.patch -Patch76: chromium-65.0.3325.146-Use-affirmative-expression-in-base-Optional.patch -# https://github.com/lgsvl/meta-lgsvl-browser/blob/ac93e7622be66946c76504be6a1db8d644ae1e43/recipes-browser/chromium/files/0001-Implement-conditional-copy-move-ctors-assign-operato.patch -Patch77: chromium-65.0.3325.146-Implement-conditional-copy-move-ctors-assign-operato.patch -# https://github.com/lgsvl/meta-lgsvl-browser/blob/ac93e7622be66946c76504be6a1db8d644ae1e43/recipes-browser/chromium/files/0001-Implement-converting-constructors-from-Optional-U.patch -Patch78: chromium-65.0.3325.146-Implement-converting-constructors-from-Optional-U.patch -# https://github.com/lgsvl/meta-lgsvl-browser/blob/ac93e7622be66946c76504be6a1db8d644ae1e43/recipes-browser/chromium/files/0001-Implement-value-forward-constructor.patch -Patch79: chromium-65.0.3325.146-Implement-value-forward-constructor.patch -# https://github.com/lgsvl/meta-lgsvl-browser/blob/ac93e7622be66946c76504be6a1db8d644ae1e43/recipes-browser/chromium/files/0001-Update-non-copy-non-move-assign-operators.patch -Patch80: chromium-65.0.3325.146-Update-non-copy-non-move-assign-operators.patch -# https://github.com/lgsvl/meta-lgsvl-browser/blob/ac93e7622be66946c76504be6a1db8d644ae1e43/recipes-browser/chromium/files/0001-GCC-PlaybackImageProvider-Settings-do-not-provide-co.patch -Patch81: chromium-65.0.3325.146-GCC-PlaybackImageProvider-Settings-do-not-provide-co.patch -# https://github.com/lgsvl/meta-lgsvl-browser/blob/ac93e7622be66946c76504be6a1db8d644ae1e43/recipes-browser/chromium/files/0001-GCC-explicitely-std-move-to-base-Optional-instead-of.patch -Patch82: chromium-65.0.3325.146-GCC-explicitely-std-move-to-base-Optional-instead-of.patch -# https://github.com/lgsvl/meta-lgsvl-browser/blob/ac93e7622be66946c76504be6a1db8d644ae1e43/recipes-browser/chromium/files/0001-GCC-IDB-methods-String-renamed-to-GetString.patch -Patch83: chromium-65.0.3325.146-GCC-IDB-methods-String-renamed-to-GetString.patch -# https://github.com/lgsvl/meta-lgsvl-browser/blob/ac93e7622be66946c76504be6a1db8d644ae1e43/recipes-browser/chromium/files/0001-GCC-fully-declare-ConfigurationPolicyProvider.patch -Patch84: chromium-65.0.3325.146-GCC-fully-declare-ConfigurationPolicyProvider.patch # ../../mojo/public/cpp/bindings/associated_interface_ptr_info.h:48:43: error: cannot convert 'const mojo::ScopedInterfaceEndpointHandle' to 'bool' in return Patch85: chromium-65.0.3325.162-boolfix.patch # From Debian Patch86: chromium-65.0.3325.162-skia-aarch64-buildfix.patch # Use lstdc++ on EPEL7 only Patch87: chromium-65.0.3325.162-epel7-stdc++.patch +# Missing files in tarball +Patch88: chromium-66.0.3359.117-missing-files.patch +# https://chromium.googlesource.com/chromium/src/+/ba4141e451f4e0b1b19410b1b503bd32e150df06%5E%21/#F0 +Patch89: chromium-66.0.3359.117-gcc-optional-move-fixes.patch +# https://chromium.googlesource.com/chromium/src/+/4f2b52281ce1649ea8347489443965ad33262ecc%5E%21 +Patch90: chromium-66.0.3359.117-gcc-copy-constructor-fix.patch +# https://bugs.chromium.org/p/chromium/issues/detail?id=816952 +Patch91: chromium-66.0.3359.117-gcc-vector-copy-constructor-fix.patch +# Do not use unrar code, it is non-free +Patch92: chromium-66.0.3359.117-nounrar.patch +# Upstream GCC fixes +Patch93: chromium-66.0.3359.117-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch +Patch94: chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch +Patch95: chromium-65.0.3325.146-GCC-IDB-methods-String-renamed-to-GetString.patch +# https://github.com/archlinuxarm/PKGBUILDs/blob/master/extra/chromium/0006-GCC-do-not-use-initializer-list-for-NoDestructor-of-.patch +Patch96: chromium-66.0.3359.117-GCC-do-not-use-initializer-list-for-NoDestructor-of-.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ @@ -561,7 +542,6 @@ Provides: bundled(libudis86) = 1.7.1 Provides: bundled(mesa) = 9.0.3 Provides: bundled(NSBezierPath) = 1.0 Provides: bundled(mozc) -Provides: bundled(mt19937ar) = 2002.1.26 %if %{bundleopus} Provides: bundled(opus) = 1.1.3 %endif @@ -729,28 +709,20 @@ udev. %patch63 -p1 -b .nolibc++ %patch65 -p1 -b .gcc-round-fix %patch67 -p1 -b .memcpyfix -%patch68 -p1 -b .fabi11 -%patch69 -p1 -b .gentoo-math -%patch70 -p1 -b .gentoo-stdint -%patch71 -p1 -b .gcc7-itcc -%patch72 -p1 -b .wtf-fix -%patch73 -p1 -b .fulldecl -%patch74 -p1 -b .oilpan -%patch75 -p1 -b .noncopyable -%patch76 -p1 -b .affirmative -%patch77 -p1 -b .conditional -%patch78 -p1 -b .converting -%patch79 -p1 -b .vforward -%patch80 -p1 -b .ncnm -%patch81 -p1 -b .pipcc -%patch82 -p1 -b .explicit-std-move -%patch83 -p1 -b .GetString -%patch84 -p1 -b .fully-declare %patch85 -p1 -b .boolfix %patch86 -p1 -b .aarch64fix %if 0%{?rhel} == 7 %patch87 -p1 -b .epel7 %endif +%patch88 -p1 -b .missing +%patch89 -p1 -b .gccomove +%patch90 -p1 -b .copycon +%patch91 -p1 -b .944404 +%patch92 -p1 -b .nounrar +%patch93 -p1 -b .gcc-full-decl +%patch94 -p1 -b .gcc-cpolicyprovider +%patch95 -p1 -b .gcc-getstring +%patch96 -p1 -b .flatsetfix # Change shebang in all relevant files in this directory and all subdirectories # See `man find` for how the `-exec command {} +` syntax works @@ -942,6 +914,10 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/angle/src/third_party/compiler' \ 'third_party/angle/src/third_party/libXNVCtrl' \ 'third_party/angle/src/third_party/trace_event' \ + 'third_party/angle/third_party/glslang' \ + 'third_party/angle/third_party/spirv-headers' \ + 'third_party/angle/third_party/spirv-tools' \ + 'third_party/angle/third_party/vulkan-validation-layers' \ 'third_party/blanketjs' \ 'third_party/blink' \ 'third_party/boringssl' \ @@ -991,6 +967,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/libXNVCtrl' \ 'third_party/libaddressinput' \ 'third_party/libaom' \ + 'third_party/libaom/source/libaom/third_party/x86inc' \ 'third_party/libdrm' \ 'third_party/libjingle' \ 'third_party/libjpeg_turbo' \ @@ -1019,7 +996,6 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/mesa' \ 'third_party/metrics_proto' \ 'third_party/modp_b64' \ - 'third_party/mt19937ar' \ 'third_party/node' \ 'third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2' \ %if %{freeworld} @@ -1032,12 +1008,12 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/pdfium/third_party/agg23' \ 'third_party/pdfium/third_party/base' \ 'third_party/pdfium/third_party/bigint' \ - 'third_party/pdfium/third_party/build' \ 'third_party/pdfium/third_party/freetype' \ 'third_party/pdfium/third_party/lcms' \ 'third_party/pdfium/third_party/libopenjpeg20' \ 'third_party/pdfium/third_party/libpng16' \ 'third_party/pdfium/third_party/libtiff' \ + 'third_party/pdfium/third_party/skia_shared' \ 'third_party/ply' \ 'third_party/polymer' \ 'third_party/protobuf' \ @@ -1523,7 +1499,7 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %files common %{chromium_path}/headless_lib.pak -%{chromium_path}/mus_app_resources_*.pak +# %%{chromium_path}/mus_app_resources_*.pak %{chromium_path}/pyproto/ %{chromium_path}/resources/ %dir %{chromium_path}/locales/ @@ -1637,6 +1613,12 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Tue May 1 2018 Tom Callaway 66.0.3359.139-1 +- update to 66.0.3359.139 + +* Wed Apr 18 2018 Tom Callaway 66.0.3359.117-1 +- update to 66.0.3359.117 + * Tue Apr 17 2018 Tom Callaway 65.0.3325.181-3 - use system fontconfig (except on epel7) diff --git a/sources b/sources index 17667f6..e027f4c 100644 --- a/sources +++ b/sources @@ -1,2 +1,3 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 SHA512 (chromium-65.0.3325.181-clean.tar.xz) = 12a0bb9e367c628c0db80503f6b0570b5ba95fc766c7a782dc7a98290d3b6c13aa5a3f91c4874e98287ca2fafb41af5db34fb951d06594b369baf29c98ed2846 +SHA512 (chromium-66.0.3359.139-clean.tar.xz) = 580ec80e3300d356e83407e3d663d0a1f4d5963c6ef6baa7870883bfa3340c3684dfa7bf3cc25e1ab95afb4084b15f7cc08ce555cbb5298422fa4ae790d06735 From 840f0beab1d22830e9893da82c02e20c16eaf92e Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 4 May 2018 09:08:24 -0400 Subject: [PATCH 0199/1449] fix sources --- sources | 1 - 1 file changed, 1 deletion(-) diff --git a/sources b/sources index e027f4c..7aaebf2 100644 --- a/sources +++ b/sources @@ -1,3 +1,2 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 -SHA512 (chromium-65.0.3325.181-clean.tar.xz) = 12a0bb9e367c628c0db80503f6b0570b5ba95fc766c7a782dc7a98290d3b6c13aa5a3f91c4874e98287ca2fafb41af5db34fb951d06594b369baf29c98ed2846 SHA512 (chromium-66.0.3359.139-clean.tar.xz) = 580ec80e3300d356e83407e3d663d0a1f4d5963c6ef6baa7870883bfa3340c3684dfa7bf3cc25e1ab95afb4084b15f7cc08ce555cbb5298422fa4ae790d06735 From 85fa5c5e9fb63800ed1d294877240c580c10a065 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 4 May 2018 09:11:04 -0400 Subject: [PATCH 0200/1449] missing patch --- chromium-66.0.3359.117-gcc5-r3.patch | 38 ++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 chromium-66.0.3359.117-gcc5-r3.patch diff --git a/chromium-66.0.3359.117-gcc5-r3.patch b/chromium-66.0.3359.117-gcc5-r3.patch new file mode 100644 index 0000000..56abcf1 --- /dev/null +++ b/chromium-66.0.3359.117-gcc5-r3.patch @@ -0,0 +1,38 @@ +diff -up chromium-66.0.3359.117/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 chromium-66.0.3359.117/gpu/ipc/common/mailbox_struct_traits.h +--- chromium-66.0.3359.117/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 2018-04-17 21:04:33.000000000 -0400 ++++ chromium-66.0.3359.117/gpu/ipc/common/mailbox_struct_traits.h 2018-04-18 12:12:40.065663210 -0400 +@@ -15,7 +15,7 @@ namespace mojo { + template <> + struct StructTraits { + static base::span name(const gpu::Mailbox& mailbox) { +- return mailbox.name; ++ return base::make_span(mailbox.name); + } + static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out); + }; +diff -up chromium-66.0.3359.117/services/viz/public/cpp/compositing/filter_operation_struct_traits.h.gcc5-r3 chromium-66.0.3359.117/services/viz/public/cpp/compositing/filter_operation_struct_traits.h +diff -up chromium-66.0.3359.117/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 chromium-66.0.3359.117/services/viz/public/cpp/compositing/quads_struct_traits.h +--- chromium-66.0.3359.117/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 2018-04-17 21:04:43.000000000 -0400 ++++ chromium-66.0.3359.117/services/viz/public/cpp/compositing/quads_struct_traits.h 2018-04-18 12:12:40.067663160 -0400 +@@ -308,7 +308,7 @@ struct StructTraits vertex_opacity(const viz::DrawQuad& input) { + const viz::TextureDrawQuad* quad = + viz::TextureDrawQuad::MaterialCast(&input); +- return quad->vertex_opacity; ++ return base::make_span(quad->vertex_opacity); + } + + static bool y_flipped(const viz::DrawQuad& input) { +diff -up chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h.gcc5-r3 chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h +diff -up chromium-66.0.3359.117/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 chromium-66.0.3359.117/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc +--- chromium-66.0.3359.117/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 2018-04-17 21:06:20.000000000 -0400 ++++ chromium-66.0.3359.117/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2018-04-18 12:12:40.068663134 -0400 +@@ -10,7 +10,7 @@ + + #include "modules/audio_processing/aec3/aec_state.h" + +-#include ++#include + + #include + #include From 86678985c3cb13b416efc82ad8085bde9b3c5f9f Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 4 May 2018 09:45:30 -0400 Subject: [PATCH 0201/1449] disable patch47 --- chromium.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 5a09534..57b3483 100644 --- a/chromium.spec +++ b/chromium.spec @@ -698,7 +698,7 @@ udev. %patch45 -p1 -b .nozmangle %if 0%{?rhel} == 7 %patch46 -p1 -b .kmaxskip -%patch47 -p1 -b .c99 +# %%patch47 -p1 -b .c99 %endif %patch50 -p1 -b .pathfix %patch53 -p1 -b .nogccoptmath From 3f9e662d546ed0605fdd2f96d829915e01e26bea Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Sat, 5 May 2018 10:10:42 -0400 Subject: [PATCH 0202/1449] fix arm build --- chromium-66.0.3359.139-arm-init-fix.patch | 12 ++++++++++++ chromium.spec | 4 ++++ 2 files changed, 16 insertions(+) create mode 100644 chromium-66.0.3359.139-arm-init-fix.patch diff --git a/chromium-66.0.3359.139-arm-init-fix.patch b/chromium-66.0.3359.139-arm-init-fix.patch new file mode 100644 index 0000000..754af5b --- /dev/null +++ b/chromium-66.0.3359.139-arm-init-fix.patch @@ -0,0 +1,12 @@ +diff -up chromium-66.0.3359.139/skia/ext/convolver_neon.cc.arm-init-fix chromium-66.0.3359.139/skia/ext/convolver_neon.cc +--- chromium-66.0.3359.139/skia/ext/convolver_neon.cc.arm-init-fix 2018-05-05 10:07:03.624424987 -0400 ++++ chromium-66.0.3359.139/skia/ext/convolver_neon.cc 2018-05-05 10:07:45.417503001 -0400 +@@ -23,7 +23,7 @@ AccumRemainder(const unsigned char* pixe + remainder[2] += coeff * pixels_left[i * 4 + 2]; + remainder[3] += coeff * pixels_left[i * 4 + 3]; + } +- return {remainder[0], remainder[1], remainder[2], remainder[3]}; ++ return vld1q_s32(remainder); + } + + // Convolves horizontally along a single row. The row data is given in diff --git a/chromium.spec b/chromium.spec index 57b3483..a045592 100644 --- a/chromium.spec +++ b/chromium.spec @@ -242,6 +242,9 @@ Patch94: chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.pa Patch95: chromium-65.0.3325.146-GCC-IDB-methods-String-renamed-to-GetString.patch # https://github.com/archlinuxarm/PKGBUILDs/blob/master/extra/chromium/0006-GCC-do-not-use-initializer-list-for-NoDestructor-of-.patch Patch96: chromium-66.0.3359.117-GCC-do-not-use-initializer-list-for-NoDestructor-of-.patch +# https://chromium.googlesource.com/chromium/src/+/b84682f31dc99b9c90f5a04947075815697c68d9%5E%21/#F0 +Patch97: chromium-66.0.3359.139-arm-init-fix.patch + # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ @@ -723,6 +726,7 @@ udev. %patch94 -p1 -b .gcc-cpolicyprovider %patch95 -p1 -b .gcc-getstring %patch96 -p1 -b .flatsetfix +%patch97 -p1 -b .arm-init-fix # Change shebang in all relevant files in this directory and all subdirectories # See `man find` for how the `-exec command {} +` syntax works From 55ffd9547db06b26640637bb7d3d8ae59376f921 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 14 May 2018 13:02:26 -0400 Subject: [PATCH 0203/1449] 66.0.3359.170 --- .gitignore | 1 + chromium.spec | 7 ++++++- sources | 1 + 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index f419b63..87db5ff 100644 --- a/.gitignore +++ b/.gitignore @@ -43,3 +43,4 @@ /chromium-65.0.3325.162-clean.tar.xz /chromium-65.0.3325.181-clean.tar.xz /chromium-66.0.3359.139-clean.tar.xz +/chromium-66.0.3359.170-clean.tar.xz diff --git a/chromium.spec b/chromium.spec index a045592..ca4b2e9 100644 --- a/chromium.spec +++ b/chromium.spec @@ -135,7 +135,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3359.139 +Version: %{majorversion}.0.3359.170 Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home @@ -1250,6 +1250,7 @@ cp -a nacl_helper* *.nexe pnacl tls_edit %{buildroot}%{chromium_path} chmod -x %{buildroot}%{chromium_path}/nacl_helper_bootstrap* *.nexe %endif cp -a protoc pyproto %{buildroot}%{chromium_path} +cp -a swiftshader %{buildroot}%{chromium_path} cp -a chrome %{buildroot}%{chromium_path}/%{chromium_browser_channel} cp -a chrome_sandbox %{buildroot}%{chromium_path}/chrome-sandbox cp -a ../../chrome/app/resources/manpage.1.in %{buildroot}%{_mandir}/man1/%{chromium_browser_channel}.1 @@ -1617,6 +1618,10 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Mon May 14 2018 Tom Callaway 66.0.3359.170-1 +- update to 66.0.3359.170 +- include swiftshader files + * Tue May 1 2018 Tom Callaway 66.0.3359.139-1 - update to 66.0.3359.139 diff --git a/sources b/sources index 7aaebf2..da10506 100644 --- a/sources +++ b/sources @@ -1,2 +1,3 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 SHA512 (chromium-66.0.3359.139-clean.tar.xz) = 580ec80e3300d356e83407e3d663d0a1f4d5963c6ef6baa7870883bfa3340c3684dfa7bf3cc25e1ab95afb4084b15f7cc08ce555cbb5298422fa4ae790d06735 +SHA512 (chromium-66.0.3359.170-clean.tar.xz) = de4115e61db2a4a452518c5766d0b133a7c75e0721f217fc5d1e53eb8f7d8045842b083295aa166e2963fe9525a8b7af3549ec96a2cc06e3c2b5206d86efd804 From b3bbed0df7bed3d22a92ac3a8cea268ec90ac910 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 14 May 2018 16:47:14 -0400 Subject: [PATCH 0204/1449] add swiftshader to files --- chromium.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/chromium.spec b/chromium.spec index ca4b2e9..ce3ee3b 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1484,6 +1484,7 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/icudtl.dat %{chromium_path}/%{chromium_browser_channel} %{chromium_path}/%{chromium_browser_channel}.sh +%{chromium_path}/swiftshader/ %if 0%{?nacl} %{chromium_path}/nacl_helper* %{chromium_path}/*.nexe From 16a75be12ecc20fe732e797e622a1a2af49bac95 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 15 May 2018 14:17:16 -0400 Subject: [PATCH 0205/1449] only x86_64 i686 have swiftshader --- chromium.spec | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index ce3ee3b..b592614 100644 --- a/chromium.spec +++ b/chromium.spec @@ -136,7 +136,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3359.170 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1250,7 +1250,9 @@ cp -a nacl_helper* *.nexe pnacl tls_edit %{buildroot}%{chromium_path} chmod -x %{buildroot}%{chromium_path}/nacl_helper_bootstrap* *.nexe %endif cp -a protoc pyproto %{buildroot}%{chromium_path} +%ifarch x86_64 i686 cp -a swiftshader %{buildroot}%{chromium_path} +%endif cp -a chrome %{buildroot}%{chromium_path}/%{chromium_browser_channel} cp -a chrome_sandbox %{buildroot}%{chromium_path}/chrome-sandbox cp -a ../../chrome/app/resources/manpage.1.in %{buildroot}%{_mandir}/man1/%{chromium_browser_channel}.1 @@ -1484,7 +1486,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/icudtl.dat %{chromium_path}/%{chromium_browser_channel} %{chromium_path}/%{chromium_browser_channel}.sh +%ifarch x86_64 i686 %{chromium_path}/swiftshader/ +%endif %if 0%{?nacl} %{chromium_path}/nacl_helper* %{chromium_path}/*.nexe @@ -1619,6 +1623,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Tue May 15 2018 Tom Callaway 66.0.3359.170-2 +- only x86_64 i686 have swiftshader + * Mon May 14 2018 Tom Callaway 66.0.3359.170-1 - update to 66.0.3359.170 - include swiftshader files From f953b3f37b00bd26f4b2c3558a83ccdb0f241bca Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 15 May 2018 15:05:11 -0400 Subject: [PATCH 0206/1449] fix gcc8 alignof issue on i686 --- chromium-66.0.3359.170-gcc8-alignof.patch | 18 ++++++++++++++++++ chromium.spec | 6 ++++++ 2 files changed, 24 insertions(+) create mode 100644 chromium-66.0.3359.170-gcc8-alignof.patch diff --git a/chromium-66.0.3359.170-gcc8-alignof.patch b/chromium-66.0.3359.170-gcc8-alignof.patch new file mode 100644 index 0000000..0c2b356 --- /dev/null +++ b/chromium-66.0.3359.170-gcc8-alignof.patch @@ -0,0 +1,18 @@ +diff -up chromium-66.0.3359.170/mojo/public/c/system/macros.h.gcc8-alignof chromium-66.0.3359.170/mojo/public/c/system/macros.h +--- chromium-66.0.3359.170/mojo/public/c/system/macros.h.gcc8-alignof 2018-05-15 14:58:46.448912634 -0400 ++++ chromium-66.0.3359.170/mojo/public/c/system/macros.h 2018-05-15 14:58:52.041784613 -0400 +@@ -18,7 +18,13 @@ + #endif + + // Like the C++11 |alignof| operator. +-#if __cplusplus >= 201103L ++#if defined(__GNUC__) && __GNUC__ >= 8 ++// GCC 8 has changed the alignof operator to return the minimal alignment ++// required by the target ABI, instead of the preferred alignment. ++// This means that on 32-bit x86, it will return 4 instead of 8. ++// Use __alignof__ instead to avoid this. ++#define MOJO_ALIGNOF(type) __alignof__(type) ++#elif __cplusplus >= 201103L + #define MOJO_ALIGNOF(type) alignof(type) + #elif defined(__GNUC__) + #define MOJO_ALIGNOF(type) __alignof__(type) diff --git a/chromium.spec b/chromium.spec index b592614..396593f 100644 --- a/chromium.spec +++ b/chromium.spec @@ -244,6 +244,10 @@ Patch95: chromium-65.0.3325.146-GCC-IDB-methods-String-renamed-to-GetString.patc Patch96: chromium-66.0.3359.117-GCC-do-not-use-initializer-list-for-NoDestructor-of-.patch # https://chromium.googlesource.com/chromium/src/+/b84682f31dc99b9c90f5a04947075815697c68d9%5E%21/#F0 Patch97: chromium-66.0.3359.139-arm-init-fix.patch +# GCC8 has changed the alignof operator to return the minimal alignment required by the target ABI +# instead of the preferred alignment. This means int64_t is now 4 on i686 (instead of 8). +# Use __alignof__ to get the value we expect (and chromium checks for). +Patch98: chromium-66.0.3359.170-gcc8-alignof.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: @@ -727,6 +731,7 @@ udev. %patch95 -p1 -b .gcc-getstring %patch96 -p1 -b .flatsetfix %patch97 -p1 -b .arm-init-fix +%patch98 -p1 -b .gcc8-alignof # Change shebang in all relevant files in this directory and all subdirectories # See `man find` for how the `-exec command {} +` syntax works @@ -1625,6 +1630,7 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog * Tue May 15 2018 Tom Callaway 66.0.3359.170-2 - only x86_64 i686 have swiftshader +- fix gcc8 alignof issue on i686 * Mon May 14 2018 Tom Callaway 66.0.3359.170-1 - update to 66.0.3359.170 From 7575596a1825dc70b70648d2b9dc637af5b07103 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 21 May 2018 10:43:18 -0400 Subject: [PATCH 0207/1449] update to 66.0.3359.181 --- .gitignore | 1 + chromium.spec | 7 +++++-- sources | 3 +-- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 87db5ff..9e6dbec 100644 --- a/.gitignore +++ b/.gitignore @@ -44,3 +44,4 @@ /chromium-65.0.3325.181-clean.tar.xz /chromium-66.0.3359.139-clean.tar.xz /chromium-66.0.3359.170-clean.tar.xz +/chromium-66.0.3359.181-clean.tar.xz diff --git a/chromium.spec b/chromium.spec index 396593f..4250859 100644 --- a/chromium.spec +++ b/chromium.spec @@ -135,8 +135,8 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3359.170 -Release: 2%{?dist} +Version: %{majorversion}.0.3359.181 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1628,6 +1628,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Mon May 21 2018 Tom Callaway 66.0.3359.181-1 +- update to 66.0.3359.181 + * Tue May 15 2018 Tom Callaway 66.0.3359.170-2 - only x86_64 i686 have swiftshader - fix gcc8 alignof issue on i686 diff --git a/sources b/sources index da10506..75b07a7 100644 --- a/sources +++ b/sources @@ -1,3 +1,2 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 -SHA512 (chromium-66.0.3359.139-clean.tar.xz) = 580ec80e3300d356e83407e3d663d0a1f4d5963c6ef6baa7870883bfa3340c3684dfa7bf3cc25e1ab95afb4084b15f7cc08ce555cbb5298422fa4ae790d06735 -SHA512 (chromium-66.0.3359.170-clean.tar.xz) = de4115e61db2a4a452518c5766d0b133a7c75e0721f217fc5d1e53eb8f7d8045842b083295aa166e2963fe9525a8b7af3549ec96a2cc06e3c2b5206d86efd804 +SHA512 (chromium-66.0.3359.181-clean.tar.xz) = 713e0488dc6443e29a0914d801159d25200388ec4e9912afd2be3b54f5b64af4a6c8560423209c00d9ee4ad1802ce4e76db2a952a1f8643f3247469ffecf0ec4 From f1f56dc61948694be32a0faf09302dedb91bfdd7 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 24 May 2018 09:22:01 -0400 Subject: [PATCH 0208/1449] fix missing files --- chromium.spec | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 4250859..197c0eb 100644 --- a/chromium.spec +++ b/chromium.spec @@ -136,7 +136,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3359.181 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1267,6 +1267,8 @@ sed -i "s|@@MENUNAME@@|%{chromium_menu_name}|g" %{buildroot}%{_mandir}/man1/%{ch # https://code.google.com/p/chromium/issues/detail?id=421063 cp -a natives_blob.bin %{buildroot}%{chromium_path} cp -a snapshot_blob.bin %{buildroot}%{chromium_path} +cp -a v8_context_snapshot.bin %{buildroot}%{chromium_path} +cp -a xdg-mime xdg-settings %{buildroot}%{chromium_path} %if 0%{?shared} cp -a lib*.so* %{buildroot}%{chromium_path} cp -p %{buildroot}%{chromium_path}/libwidevinecdm.so{,.fedora} @@ -1506,6 +1508,8 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt # %%{chromium_path}/pseudo_locales/ # %%{chromium_path}/plugins/ %attr(4755, root, root) %{chromium_path}/chrome-sandbox +%{chromium_path}/xdg-mime +%{chromium_path}/xdg-settings %{_mandir}/man1/%{chromium_browser_channel}.* %{_datadir}/icons/hicolor/*/apps/%{chromium_browser_channel}.png %{_datadir}/applications/*.desktop @@ -1628,6 +1632,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Wed May 23 2018 Tom Callaway 66.0.3359.181-2 +- fix missing files + * Mon May 21 2018 Tom Callaway 66.0.3359.181-1 - update to 66.0.3359.181 From d164b6684b6e9ccac9426780ff0342a5435c9c87 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 29 May 2018 15:17:38 -0400 Subject: [PATCH 0209/1449] also filter out fontconfig on epel7 --- chromium.spec | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/chromium.spec b/chromium.spec index 197c0eb..ab27f9b 100644 --- a/chromium.spec +++ b/chromium.spec @@ -30,7 +30,11 @@ # Requires is trickier. %global __provides_exclude_from %{chromium_path}/.*\\.so|%{chromium_path}/lib/.*\\.so -%global privlibs libaccessibility|libanimation|libaura_extra|libaura|libbase_i18n|libbase|libbindings_base|libbindings|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core_mojo_bindings_shared|libblink_core|libblink_modules|libblink_mojo_bindings_shared|libblink_offscreen_canvas_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcbor|libcc_animation|libcc_base|libcc_blink|libcc_debug|libcc_ipc|libcc_paint|libcc|libcdm_manager|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent|libcrash_key|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevices|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevice_vr_mojo_bindings|libdevice_vr|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libembedder|libembedder_switches|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents|libevents_x|libffmpeg|libfingerprint|libfreetype_harfbuzz|libgcm|libgeolocation|libgeometry_skia|libgeometry|libgesture_detection|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_switches|libgfx_x11|libgin|libgles2_implementation|libgles2|libgles2_utils|libGLESv2|libgl_init|libgl_in_process_context|libgl_wrapper|libgpu_ipc_service|libgpu|libgpu_util|libgtk3ui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc_mojom_shared|libipc_mojom|libipc|libkeyboard|libkeyboard_with_content|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libleveldatabase|libmanager|libmedia_blink|libmedia_devices_mojo_bindings_shared|libmedia_gpu|libmedia_mojo_services|libmedia|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmojo_base_lib|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_mojom|libmojo_base_shared_typemap_traits|libmojo_common_lib|libmojo_ime_lib|libmojo_mojom_bindings_shared|libmojo_mojom_bindings|libmojom_platform_shared|libmojom_shared|libmojo_public_system_cpp|libmojo_public_system|libmojo_system_impl|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp_base|libnetwork_cpp|libnetwork_service|libnetwork_session_configurator|libonc|libplatform|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp_base|libresource_coordinator_cpp|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libresource_coordinator_public_mojom|libsandbox_services|libsandbox|libseccomp_bpf|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom_blink|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_constants|libservice_manager_mojom_shared|libservice_manager_mojom|libservice|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing_cpp|libtracing_mojom_shared|libtracing_mojom|libtracing|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libuser_manager|libuser_prefs|libv8_libbase|libv8_libplatform|libv8|libviews|libviz_common|libviz_resource_format|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_threading|libVkLayer_unique_objects|libwebdata_common|libweb_dialogs|libwebview|libwidevinecdmadapter|libwidevinecdm|libwm_public|libwm|libwtf|libx11_events_platform|libx11_window +%if 0%{?rhel} == 7 +%global privlibs libaccessibility|libanimation|libaura_extra|libaura|libbase_i18n|libbase|libbindings_base|libbindings|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core_mojo_bindings_shared|libblink_core|libblink_modules|libblink_mojo_bindings_shared|libblink_offscreen_canvas_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcbor|libcc_animation|libcc_base|libcc_blink|libcc_debug|libcc_ipc|libcc_paint|libcc|libcdm_manager|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent|libcrash_key|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevices|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevice_vr_mojo_bindings|libdevice_vr|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libembedder|libembedder_switches|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents|libevents_x|libffmpeg|libfingerprint|libfontconfig|libfreetype_harfbuzz|libgcm|libgeolocation|libgeometry_skia|libgeometry|libgesture_detection|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_switches|libgfx_x11|libgin|libgles2_implementation|libgles2|libgles2_utils|libGLESv2|libgl_init|libgl_in_process_context|libgl_wrapper|libgpu_ipc_service|libgpu|libgpu_util|libgtk3ui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc_mojom_shared|libipc_mojom|libipc|libkeyboard|libkeyboard_with_content|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libleveldatabase|libmanager|libmedia_blink|libmedia_devices_mojo_bindings_shared|libmedia_gpu|libmedia_mojo_services|libmedia|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmojo_base_lib|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_mojom|libmojo_base_shared_typemap_traits|libmojo_common_lib|libmojo_ime_lib|libmojo_mojom_bindings_shared|libmojo_mojom_bindings|libmojom_platform_shared|libmojom_shared|libmojo_public_system_cpp|libmojo_public_system|libmojo_system_impl|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp_base|libnetwork_cpp|libnetwork_service|libnetwork_session_configurator|libonc|libplatform|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp_base|libresource_coordinator_cpp|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libresource_coordinator_public_mojom|libsandbox_services|libsandbox|libseccomp_bpf|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom_blink|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_constants|libservice_manager_mojom_shared|libservice_manager_mojom|libservice|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing_cpp|libtracing_mojom_shared|libtracing_mojom|libtracing|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libuser_manager|libuser_prefs|libv8_libbase|libv8_libplatform|libv8|libviews|libviz_common|libviz_resource_format|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_threading|libVkLayer_unique_objects|libwebdata_common|libweb_dialogs|libwebview|libwidevinecdmadapter|libwidevinecdm|libwm_public|libwm|libwtf|libx11_events_platform|libx11_window +%else +%global privlibs libaccessibility|libanimation|libaura_extra|libaura|libbase_i18n|libbase|libbindings_base|libbindings|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core_mojo_bindings_shared|libblink_core|libblink_modules|libblink_mojo_bindings_shared|libblink_offscreen_canvas_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcbor|libcc_animation|libcc_base|libcc_blink|libcc_debug|libcc_ipc|libcc_paint|libcc|libcdm_manager|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent|libcrash_key|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevices|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevice_vr_mojo_bindings|libdevice_vr|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libembedder|libembedder_switches|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents|libevents_x|libffmpeg|libfingerprint|libfreetype_harfbuzz|libgcm|libgeolocation|libgeometry_skia|libgeometry|libgesture_detection|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_switches|libgfx_x11|libgin|libgles2_implementation|libgles2|libgles2_utils|libGLESv2|libgl_init|libgl_in_process_context|libgl_wrapper|libgpu_ipc_service|libgpu|libgpu_util|libgtk3ui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc_mojom_shared|libipc_mojom|libipc|libkeyboard|libkeyboard_with_content|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libleveldatabase|libmanager|libmedia_blink|libmedia_devices_mojo_bindings_shared|libmedia_gpu|libmedia_mojo_services|libmedia|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmojo_base_lib|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_mojom|libmojo_base_shared_typemap_traits|libmojo_common_lib|libmojo_ime_lib|libmojo_mojom_bindings_shared|libmojo_mojom_bindings|libmojom_platform_shared|libmojom_shared|libmojo_public_system_cpp|libmojo_public_system|libmojo_system_impl|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp_base|libnetwork_cpp|libnetwork_service|libnetwork_session_configurator|libonc|libplatform|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp_base|libresource_coordinator_cpp|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libresource_coordinator_public_mojom|libsandbox_services|libsandbox|libseccomp_bpf|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom_blink|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_constants|libservice_manager_mojom_shared|libservice_manager_mojom|libservice|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing_cpp|libtracing_mojom_shared|libtracing_mojom|libtracing|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libuser_manager|libuser_prefs|libv8_libbase|libv8_libplatform|libv8|libviews|libviz_common|libviz_resource_format|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_threading|libVkLayer_unique_objects|libwebdata_common|libweb_dialogs|libwebview|libwidevinecdmadapter|libwidevinecdm|libwm_public|libwm|libwtf|libx11_events_platform|libx11_window +%endif %global __requires_exclude ^(%{privlibs})\\.so # If we build with shared on, then chrome-remote-desktop depends on chromium libs. @@ -136,7 +140,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3359.181 -Release: 2%{?dist} +Release: 3%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1632,6 +1636,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Tue May 29 2018 Tom Callaway 66.0.3359.181-3 +- also filter out fontconfig on epel7 + * Wed May 23 2018 Tom Callaway 66.0.3359.181-2 - fix missing files From afb86c1562c3a056e1d4a67e5a219cbb31890815 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 30 May 2018 13:41:28 -0400 Subject: [PATCH 0210/1449] 67 --- chromium.spec | 55 +++++++++++++++++++++++++++------------------------ 1 file changed, 29 insertions(+), 26 deletions(-) diff --git a/chromium.spec b/chromium.spec index ab27f9b..b34dbd1 100644 --- a/chromium.spec +++ b/chromium.spec @@ -132,21 +132,21 @@ BuildRequires: libicu-devel >= 5.4 %global chromoting_client_id %nil %endif -%global majorversion 66 +%global majorversion 67 %if %{freeworld} Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3359.181 -Release: 3%{?dist} +Version: %{majorversion}.0.3396.62 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) ### Chromium Fedora Patches ### -Patch0: chromium-64.0.3282.119-gcc5.patch +Patch0: chromium-67.0.3396.62-gcc5.patch Patch1: chromium-45.0.2454.101-linux-path-max.patch Patch2: chromium-55.0.2883.75-addrfix.patch Patch4: chromium-46.0.2490.71-notest.patch @@ -172,7 +172,7 @@ Patch18: chromium-52.0.2743.82-master-prefs-path.patch # https://bugzilla.redhat.com/show_bug.cgi?id=1361157 Patch19: chromium-52.0.2743.116-unset-madv_free.patch # Use gn system files -Patch20: chromium-60.0.3112.78-gn-system.patch +Patch20: chromium-67.0.3396.62-gn-system.patch # Fix last commit position issue # https://groups.google.com/a/chromium.org/forum/#!topic/gn-dev/7nlJv486bD4 Patch21: chromium-60.0.3112.78-last-commit-position.patch @@ -188,10 +188,10 @@ Patch26: chromium-59.0.3071.86-i686-ld-memory-tricks.patch # /builddir/build/BUILD/chromium-54.0.2840.90/out/Release/../../content/renderer/child_frame_compositing_helper.cc:214: undefined reference to `cc_blink::WebLayerImpl::setOpaque(bool)' Patch27: chromium-63.0.3289.84-setopaque.patch # Use -fpermissive to build WebKit -Patch31: chromium-56.0.2924.87-fpermissive.patch +# Patch31: chromium-56.0.2924.87-fpermissive.patch # Fix issue with compilation on gcc7 # Thanks to Ben Noordhuis -Patch33: chromium-65.0.3325.146-gcc7.patch +# Patch33: chromium-65.0.3325.146-gcc7.patch # Revert https://chromium.googlesource.com/chromium/src/+/b794998819088f76b4cf44c8db6940240c563cf4%5E%21/#F0 # https://bugs.chromium.org/p/chromium/issues/detail?id=712737 # https://bugzilla.redhat.com/show_bug.cgi?id=1446851 @@ -219,35 +219,35 @@ Patch57: chromium-63.0.3289.84-aarch64-glibc-2.26.90.patch # From gentoo Patch62: chromium-66.0.3359.117-gcc5-r3.patch # Do not try to use libc++ in the remoting stack -Patch63: chromium-63.0.3289.84-nolibc++.patch +# Patch63: chromium-63.0.3289.84-nolibc++.patch # To use round with gcc, you need to #include Patch65: chromium-65.0.3325.146-gcc-round-fix.patch # Include proper headers to invoke memcpy() Patch67: chromium-65.0.3325.146-memcpy-fix.patch # ../../mojo/public/cpp/bindings/associated_interface_ptr_info.h:48:43: error: cannot convert 'const mojo::ScopedInterfaceEndpointHandle' to 'bool' in return -Patch85: chromium-65.0.3325.162-boolfix.patch +Patch85: chromium-67.0.3396.62-boolfix.patch # From Debian -Patch86: chromium-65.0.3325.162-skia-aarch64-buildfix.patch +Patch86: chromium-67.0.3396.62-skia-aarch64-buildfix.patch # Use lstdc++ on EPEL7 only Patch87: chromium-65.0.3325.162-epel7-stdc++.patch # Missing files in tarball Patch88: chromium-66.0.3359.117-missing-files.patch # https://chromium.googlesource.com/chromium/src/+/ba4141e451f4e0b1b19410b1b503bd32e150df06%5E%21/#F0 -Patch89: chromium-66.0.3359.117-gcc-optional-move-fixes.patch +# Patch89: chromium-66.0.3359.117-gcc-optional-move-fixes.patch # https://chromium.googlesource.com/chromium/src/+/4f2b52281ce1649ea8347489443965ad33262ecc%5E%21 -Patch90: chromium-66.0.3359.117-gcc-copy-constructor-fix.patch +# Patch90: chromium-66.0.3359.117-gcc-copy-constructor-fix.patch # https://bugs.chromium.org/p/chromium/issues/detail?id=816952 -Patch91: chromium-66.0.3359.117-gcc-vector-copy-constructor-fix.patch +# Patch91: chromium-66.0.3359.117-gcc-vector-copy-constructor-fix.patch # Do not use unrar code, it is non-free Patch92: chromium-66.0.3359.117-nounrar.patch # Upstream GCC fixes Patch93: chromium-66.0.3359.117-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch Patch94: chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch -Patch95: chromium-65.0.3325.146-GCC-IDB-methods-String-renamed-to-GetString.patch +# Patch95: chromium-65.0.3325.146-GCC-IDB-methods-String-renamed-to-GetString.patch # https://github.com/archlinuxarm/PKGBUILDs/blob/master/extra/chromium/0006-GCC-do-not-use-initializer-list-for-NoDestructor-of-.patch -Patch96: chromium-66.0.3359.117-GCC-do-not-use-initializer-list-for-NoDestructor-of-.patch +# Patch96: chromium-66.0.3359.117-GCC-do-not-use-initializer-list-for-NoDestructor-of-.patch # https://chromium.googlesource.com/chromium/src/+/b84682f31dc99b9c90f5a04947075815697c68d9%5E%21/#F0 -Patch97: chromium-66.0.3359.139-arm-init-fix.patch +# Patch97: chromium-66.0.3359.139-arm-init-fix.patch # GCC8 has changed the alignof operator to return the minimal alignment required by the target ABI # instead of the preferred alignment. This means int64_t is now 4 on i686 (instead of 8). # Use __alignof__ to get the value we expect (and chromium checks for). @@ -699,8 +699,8 @@ udev. %patch25 -p1 -b .jpegfix %patch26 -p1 -b .ldmemory %patch27 -p1 -b .setopaque -%patch31 -p1 -b .permissive -%patch33 -p1 -b .gcc7 +# %%patch31 -p1 -b .permissive +# %%patch33 -p1 -b .gcc7 %patch36 -p1 -b .revert %patch37 -p1 -b .ffmpeg-stdatomic %patch39 -p1 -b .system-clang @@ -717,7 +717,7 @@ udev. # %%patch57 -p1 -b .aarch64glibc # %%endif %patch62 -p1 -b .gcc5-r3 -%patch63 -p1 -b .nolibc++ +# %%patch63 -p1 -b .nolibc++ %patch65 -p1 -b .gcc-round-fix %patch67 -p1 -b .memcpyfix %patch85 -p1 -b .boolfix @@ -726,15 +726,15 @@ udev. %patch87 -p1 -b .epel7 %endif %patch88 -p1 -b .missing -%patch89 -p1 -b .gccomove -%patch90 -p1 -b .copycon -%patch91 -p1 -b .944404 +# %%patch89 -p1 -b .gccomove +# %%patch90 -p1 -b .copycon +# %%patch91 -p1 -b .944404 %patch92 -p1 -b .nounrar -%patch93 -p1 -b .gcc-full-decl +# %%patch93 -p1 -b .gcc-full-decl %patch94 -p1 -b .gcc-cpolicyprovider -%patch95 -p1 -b .gcc-getstring -%patch96 -p1 -b .flatsetfix -%patch97 -p1 -b .arm-init-fix +# %%patch95 -p1 -b .gcc-getstring +# %%patch96 -p1 -b .flatsetfix +# %%patch97 -p1 -b .arm-init-fix %patch98 -p1 -b .gcc8-alignof # Change shebang in all relevant files in this directory and all subdirectories @@ -1636,6 +1636,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Wed May 30 2018 Tom Callaway 67.0.3396.62-1 +- 67 releases of chromium on the wall... + * Tue May 29 2018 Tom Callaway 66.0.3359.181-3 - also filter out fontconfig on epel7 From 169992d5d82be4342a14cf6eacf730eb72138a80 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 30 May 2018 13:42:00 -0400 Subject: [PATCH 0211/1449] 67 patches --- chromium-67.0.3396.62-boolfix.patch | 36 +++ chromium-67.0.3396.62-gcc5.patch | 12 + chromium-67.0.3396.62-gn-system.patch | 208 ++++++++++++++++++ ...m-67.0.3396.62-skia-aarch64-buildfix.patch | 21 ++ 4 files changed, 277 insertions(+) create mode 100644 chromium-67.0.3396.62-boolfix.patch create mode 100644 chromium-67.0.3396.62-gcc5.patch create mode 100644 chromium-67.0.3396.62-gn-system.patch create mode 100644 chromium-67.0.3396.62-skia-aarch64-buildfix.patch diff --git a/chromium-67.0.3396.62-boolfix.patch b/chromium-67.0.3396.62-boolfix.patch new file mode 100644 index 0000000..d0ed189 --- /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 0000000..ceef85d --- /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 0000000..4a08e94 --- /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 0000000..6b37b08 --- /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) From 02b89a300d0d8ba8f3b68ee0e517e1bad98292ba Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 4 Jun 2018 09:01:56 -0400 Subject: [PATCH 0212/1449] fixup spec --- .gitignore | 3 +++ chromium.spec | 62 +++++++++++++++++++++++++++++++++++---------------- sources | 3 +++ 3 files changed, 49 insertions(+), 19 deletions(-) diff --git a/.gitignore b/.gitignore index 9e6dbec..adc3998 100644 --- a/.gitignore +++ b/.gitignore @@ -45,3 +45,6 @@ /chromium-66.0.3359.139-clean.tar.xz /chromium-66.0.3359.170-clean.tar.xz /chromium-66.0.3359.181-clean.tar.xz +/chromium-67.0.3396.62-clean.tar.xz +/gelasio.zip +/MuktiNarrow-0.94.tar.bz2 diff --git a/chromium.spec b/chromium.spec index b34dbd1..1c3ae3b 100644 --- a/chromium.spec +++ b/chromium.spec @@ -29,13 +29,13 @@ # We don't want any libs in these directories to generate Provides # Requires is trickier. -%global __provides_exclude_from %{chromium_path}/.*\\.so|%{chromium_path}/lib/.*\\.so +%global __provides_exclude_from %{chromium_path}/.*\\.so|%{chromium_path}/lib/.*\\.so|%{chromium_path}/lib/.*\\.so.* %if 0%{?rhel} == 7 -%global privlibs libaccessibility|libanimation|libaura_extra|libaura|libbase_i18n|libbase|libbindings_base|libbindings|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core_mojo_bindings_shared|libblink_core|libblink_modules|libblink_mojo_bindings_shared|libblink_offscreen_canvas_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcbor|libcc_animation|libcc_base|libcc_blink|libcc_debug|libcc_ipc|libcc_paint|libcc|libcdm_manager|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent|libcrash_key|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevices|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevice_vr_mojo_bindings|libdevice_vr|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libembedder|libembedder_switches|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents|libevents_x|libffmpeg|libfingerprint|libfontconfig|libfreetype_harfbuzz|libgcm|libgeolocation|libgeometry_skia|libgeometry|libgesture_detection|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_switches|libgfx_x11|libgin|libgles2_implementation|libgles2|libgles2_utils|libGLESv2|libgl_init|libgl_in_process_context|libgl_wrapper|libgpu_ipc_service|libgpu|libgpu_util|libgtk3ui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc_mojom_shared|libipc_mojom|libipc|libkeyboard|libkeyboard_with_content|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libleveldatabase|libmanager|libmedia_blink|libmedia_devices_mojo_bindings_shared|libmedia_gpu|libmedia_mojo_services|libmedia|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmojo_base_lib|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_mojom|libmojo_base_shared_typemap_traits|libmojo_common_lib|libmojo_ime_lib|libmojo_mojom_bindings_shared|libmojo_mojom_bindings|libmojom_platform_shared|libmojom_shared|libmojo_public_system_cpp|libmojo_public_system|libmojo_system_impl|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp_base|libnetwork_cpp|libnetwork_service|libnetwork_session_configurator|libonc|libplatform|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp_base|libresource_coordinator_cpp|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libresource_coordinator_public_mojom|libsandbox_services|libsandbox|libseccomp_bpf|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom_blink|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_constants|libservice_manager_mojom_shared|libservice_manager_mojom|libservice|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing_cpp|libtracing_mojom_shared|libtracing_mojom|libtracing|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libuser_manager|libuser_prefs|libv8_libbase|libv8_libplatform|libv8|libviews|libviz_common|libviz_resource_format|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_threading|libVkLayer_unique_objects|libwebdata_common|libweb_dialogs|libwebview|libwidevinecdmadapter|libwidevinecdm|libwm_public|libwm|libwtf|libx11_events_platform|libx11_window +%global privlibs libaccessibility|libanimation|libapdu|libaura_extra|libaura|libbase_i18n|libbase|libbindings_base|libbindings|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core_mojo_bindings_shared|libblink_core|libblink_modules|libblink_mojo_bindings_shared|libblink_offscreen_canvas_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcbor|libcc_animation|libcc_base|libcc_blink|libcc_debug|libcc_ipc|libcc_paint|libcc|libcdm_manager|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent|libcrash_key|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevices|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevice_vr_mojo_bindings|libdevice_vr|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libembedder|libembedder_switches|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents|libevents_x|libffmpeg|libfido|libfingerprint|libfreetype_harfbuzz|libgcm|libgeolocation|libgeometry_skia|libgeometry|libgesture_detection|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_switches|libgfx_x11|libgin|libgles2_implementation|libgles2|libgles2_utils|libGLESv2|libgl_init|libgl_in_process_context|libgl_wrapper|libgpu_ipc_service|libgpu|libgpu_util|libgtk3ui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc_mojom_shared|libipc_mojom|libipc|libkeyboard|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libleveldatabase|libmanager|libmedia_blink|libmedia_devices_mojo_bindings_shared|libmedia_gpu|libmedia_mojo_services|libmedia|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirclient|libmojo_base_lib|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_mojom|libmojo_base_shared_typemap_traits|libmojo_edk_ports|libmojo_edk|libmojo_ime_lib|libmojom_core_shared|libmojo_mojom_bindings_shared|libmojo_mojom_bindings|libmojom_platform_shared|libmojo_public_system_cpp|libmojo_public_system|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp_base|libnetwork_cpp|libnetwork_service|libnetwork_session_configurator|libonc|libplatform|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp_base|libresource_coordinator_cpp|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libresource_coordinator_public_mojom|libsandbox_services|libsandbox|libseccomp_bpf|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom_blink|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_constants|libservice_manager_mojom_shared|libservice_manager_mojom|libservice|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing_cpp|libtracing_mojom_shared|libtracing_mojom|libtracing|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libuser_manager|libuser_prefs|libv8_libbase|libv8_libplatform|libv8|libviews|libviz_common|libviz_resource_format|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_threading|libVkLayer_unique_objects|libwebdata_common|libweb_dialogs|libwebview|libwm_public|libwm|libwtf|libx11_events_platform|libx11_window|libbase|libEGL|libGLESv2|libfontconfig %else -%global privlibs libaccessibility|libanimation|libaura_extra|libaura|libbase_i18n|libbase|libbindings_base|libbindings|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core_mojo_bindings_shared|libblink_core|libblink_modules|libblink_mojo_bindings_shared|libblink_offscreen_canvas_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcbor|libcc_animation|libcc_base|libcc_blink|libcc_debug|libcc_ipc|libcc_paint|libcc|libcdm_manager|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent|libcrash_key|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevices|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevice_vr_mojo_bindings|libdevice_vr|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libembedder|libembedder_switches|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents|libevents_x|libffmpeg|libfingerprint|libfreetype_harfbuzz|libgcm|libgeolocation|libgeometry_skia|libgeometry|libgesture_detection|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_switches|libgfx_x11|libgin|libgles2_implementation|libgles2|libgles2_utils|libGLESv2|libgl_init|libgl_in_process_context|libgl_wrapper|libgpu_ipc_service|libgpu|libgpu_util|libgtk3ui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc_mojom_shared|libipc_mojom|libipc|libkeyboard|libkeyboard_with_content|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libleveldatabase|libmanager|libmedia_blink|libmedia_devices_mojo_bindings_shared|libmedia_gpu|libmedia_mojo_services|libmedia|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmojo_base_lib|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_mojom|libmojo_base_shared_typemap_traits|libmojo_common_lib|libmojo_ime_lib|libmojo_mojom_bindings_shared|libmojo_mojom_bindings|libmojom_platform_shared|libmojom_shared|libmojo_public_system_cpp|libmojo_public_system|libmojo_system_impl|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp_base|libnetwork_cpp|libnetwork_service|libnetwork_session_configurator|libonc|libplatform|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp_base|libresource_coordinator_cpp|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libresource_coordinator_public_mojom|libsandbox_services|libsandbox|libseccomp_bpf|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom_blink|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_constants|libservice_manager_mojom_shared|libservice_manager_mojom|libservice|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing_cpp|libtracing_mojom_shared|libtracing_mojom|libtracing|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libuser_manager|libuser_prefs|libv8_libbase|libv8_libplatform|libv8|libviews|libviz_common|libviz_resource_format|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_threading|libVkLayer_unique_objects|libwebdata_common|libweb_dialogs|libwebview|libwidevinecdmadapter|libwidevinecdm|libwm_public|libwm|libwtf|libx11_events_platform|libx11_window +%global privlibs libaccessibility|libanimation|libapdu|libaura_extra|libaura|libbase_i18n|libbase|libbindings_base|libbindings|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core_mojo_bindings_shared|libblink_core|libblink_modules|libblink_mojo_bindings_shared|libblink_offscreen_canvas_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcbor|libcc_animation|libcc_base|libcc_blink|libcc_debug|libcc_ipc|libcc_paint|libcc|libcdm_manager|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent|libcrash_key|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevices|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevice_vr_mojo_bindings|libdevice_vr|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libembedder|libembedder_switches|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents|libevents_x|libffmpeg|libfido|libfingerprint|libfreetype_harfbuzz|libgcm|libgeolocation|libgeometry_skia|libgeometry|libgesture_detection|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_switches|libgfx_x11|libgin|libgles2_implementation|libgles2|libgles2_utils|libGLESv2|libgl_init|libgl_in_process_context|libgl_wrapper|libgpu_ipc_service|libgpu|libgpu_util|libgtk3ui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc_mojom_shared|libipc_mojom|libipc|libkeyboard|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libleveldatabase|libmanager|libmedia_blink|libmedia_devices_mojo_bindings_shared|libmedia_gpu|libmedia_mojo_services|libmedia|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirclient|libmojo_base_lib|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_mojom|libmojo_base_shared_typemap_traits|libmojo_edk_ports|libmojo_edk|libmojo_ime_lib|libmojom_core_shared|libmojo_mojom_bindings_shared|libmojo_mojom_bindings|libmojom_platform_shared|libmojo_public_system_cpp|libmojo_public_system|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp_base|libnetwork_cpp|libnetwork_service|libnetwork_session_configurator|libonc|libplatform|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp_base|libresource_coordinator_cpp|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libresource_coordinator_public_mojom|libsandbox_services|libsandbox|libseccomp_bpf|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom_blink|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_constants|libservice_manager_mojom_shared|libservice_manager_mojom|libservice|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing_cpp|libtracing_mojom_shared|libtracing_mojom|libtracing|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libuser_manager|libuser_prefs|libv8_libbase|libv8_libplatform|libv8|libviews|libviz_common|libviz_resource_format|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_threading|libVkLayer_unique_objects|libwebdata_common|libweb_dialogs|libwebview|libwm_public|libwm|libwtf|libx11_events_platform|libx11_window|libbase|libEGL|libGLESv2 %endif -%global __requires_exclude ^(%{privlibs})\\.so +%global __requires_exclude ^(%{privlibs})\\.so* # If we build with shared on, then chrome-remote-desktop depends on chromium libs. # If we build with shared off, then users cannot swap out libffmpeg (and i686 gets a lot harder to build) @@ -279,6 +279,9 @@ Source8: get_linux_tests_names.py Source9: chromium-browser.xml Source11: chrome-remote-desktop@.service Source13: master_preferences +# Unpackaged fonts +Source14: https://fontlibrary.org/assets/downloads/gelasio/4d610887ff4d445cbc639aae7828d139/gelasio.zip +Source15: http://download.savannah.nongnu.org/releases/freebangfont/MuktiNarrow-0.94.tar.bz2 # We can assume gcc and binutils. BuildRequires: gcc-c++ @@ -438,6 +441,16 @@ BuildRequires: pkgconfig(gnome-keyring-1) # remote desktop needs this BuildRequires: pam-devel BuildRequires: systemd +BuildRequires: google-croscore-arimo-fonts +BuildRequires: google-croscore-cousine-fonts +BuildRequires: dejavu-sans-fonts +BuildRequires: thai-scalable-garuda-fonts +BuildRequires: lohit-devanagari-fonts +BuildRequires: lohit-gurmukhi-fonts +BuildRequires: lohit-tamil-fonts +BuildRequires: google-noto-sans-cjk-jp-fonts +BuildRequires: google-noto-sans-khmer-fonts +BuildRequires: google-croscore-tinos-fonts # using the built from source version on aarch64 BuildRequires: ninja-build @@ -848,6 +861,23 @@ ln -s /usr/bin/clang clang popd %endif +# Unpack fonts +pushd third_party/test_fonts +mkdir test_fonts +cd test_fonts +unzip %{SOURCE14} +tar xf %{SOURCE15} +mv MuktiNarrow0.94/MuktiNarrow.ttf . +rm -rf MuktiNarrow0.94 +cp -a /usr/share/fonts/google-croscore/Arimo-*.ttf . +cp -a /usr/share/fonts/google-croscore/Cousine-*.ttf . +cp -a /usr/share/fonts/dejavu/DejaVuSans.ttf /usr/share/fonts/dejavu/DejaVuSans-Bold.ttf . +cp -a /usr/share/fonts/thai-scalable/Garuda.ttf . +cp -a /usr/share/fonts/lohit-devanagari/Lohit-Devanagari.ttf /usr/share/fonts/lohit-gurmukhi/Lohit-Gurmukhi.ttf /usr/share/fonts/lohit-tamil/Lohit-Tamil.ttf . +cp -a /usr/share/fonts/google-noto-cjk/NotoSansCJKjp-Regular.otf /usr/share/fonts/google-noto/NotoSansKhmer-Regular.ttf . +cp -a /usr/share/fonts/google-croscore/Tinos-*.ttf . +popd + # Core defines are flags that are true for both the browser and headless. CHROMIUM_CORE_GN_DEFINES="" CHROMIUM_CORE_GN_DEFINES+=' is_debug=false' @@ -880,7 +910,7 @@ CHROMIUM_BROWSER_GN_DEFINES+=' is_component_ffmpeg=false is_component_build=fals %endif CHROMIUM_BROWSER_GN_DEFINES+=' remove_webcore_debug_symbols=true enable_hangout_services_extension=true' CHROMIUM_BROWSER_GN_DEFINES+=' use_aura=true' -CHROMIUM_BROWSER_GN_DEFINES+=' enable_webrtc=true enable_widevine=true' +CHROMIUM_BROWSER_GN_DEFINES+=' enable_webrtc=true' %if 0%{gtk3} CHROMIUM_BROWSER_GN_DEFINES+=' use_gtk3=true' %else @@ -931,6 +961,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/angle/third_party/spirv-headers' \ 'third_party/angle/third_party/spirv-tools' \ 'third_party/angle/third_party/vulkan-validation-layers' \ + 'third_party/apple_apsl' \ 'third_party/blanketjs' \ 'third_party/blink' \ 'third_party/boringssl' \ @@ -951,6 +982,8 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/catapult/tracing/third_party/pako' \ 'third_party/ced' \ 'third_party/cld_3' \ + 'third_party/crashpad' \ + 'third_party/crashpad/crashpad/third_party/zlib/' \ 'third_party/crc32c' \ 'third_party/cros_system_api' \ 'third_party/devscripts' \ @@ -1053,6 +1086,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/swiftshader/third_party/LLVM' \ 'third_party/swiftshader/third_party/llvm-subzero' \ 'third_party/tcmalloc' \ + 'third_party/test_fonts' \ 'third_party/usb_ids' \ 'third_party/usrsctp' \ 'third_party/vulkan' \ @@ -1196,7 +1230,7 @@ sed -i.orig -e 's/getenv("CHROME_VERSION_EXTRA")/"Fedora Project"/' $FILE # Do headless first. ../depot_tools/ninja -C %{headlesstarget} -vvv headless_shell -../depot_tools/ninja -C %{target} -vvv chrome chrome_sandbox chromedriver widevinecdmadapter clear_key_cdm policy_templates +../depot_tools/ninja -C %{target} -vvv chrome chrome_sandbox chromedriver clear_key_cdm policy_templates # remote client pushd remoting @@ -1273,9 +1307,10 @@ cp -a natives_blob.bin %{buildroot}%{chromium_path} cp -a snapshot_blob.bin %{buildroot}%{chromium_path} cp -a v8_context_snapshot.bin %{buildroot}%{chromium_path} cp -a xdg-mime xdg-settings %{buildroot}%{chromium_path} +cp -a MEIPreload %{buildroot}%{chromium_path} %if 0%{?shared} cp -a lib*.so* %{buildroot}%{chromium_path} -cp -p %{buildroot}%{chromium_path}/libwidevinecdm.so{,.fedora} +# cp -p %%{buildroot}%{chromium_path}/libwidevinecdm.so{,.fedora} cp -p %{buildroot}%{chromium_path}/libffmpeg.so{,.%{lsuffix}} cp -p %{buildroot}%{chromium_path}/libffmpeg.so.TOC{,.%{lsuffix}} cp -p %{buildroot}%{chromium_path}/libmedia.so{,.%{lsuffix}} @@ -1416,17 +1451,6 @@ if st and st.type == "link" then os.remove(path) end -%posttrans libs -%{_sbindir}/update-alternatives --install \ - %{_libdir}/chromium-browser/libwidevinecdm.so libwidevinecdm.so \ - %{_libdir}/chromium-browser/libwidevinecdm.so.fedora 10 - -%preun libs -if [ $1 = 0 ]; then - %{_sbindir}/alternatives --remove libwidevinecdm.so \ - %{_libdir}/chromium-browser/libwidevinecdm.so.fedora -fi - %if %{freeworld} %posttrans -n chromium-libs-media-freeworld %{_sbindir}/update-alternatives --install \ @@ -1497,6 +1521,7 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/icudtl.dat %{chromium_path}/%{chromium_browser_channel} %{chromium_path}/%{chromium_browser_channel}.sh +%{chromium_path}/MEIPreload/ %ifarch x86_64 i686 %{chromium_path}/swiftshader/ %endif @@ -1587,7 +1612,6 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %files libs %exclude %{chromium_path}/libffmpeg.so* %exclude %{chromium_path}/libmedia.so* -%exclude %{chromium_path}/libwidevinecdm.so %{chromium_path}/lib*.so* %endif diff --git a/sources b/sources index 75b07a7..042c8b0 100644 --- a/sources +++ b/sources @@ -1,2 +1,5 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 SHA512 (chromium-66.0.3359.181-clean.tar.xz) = 713e0488dc6443e29a0914d801159d25200388ec4e9912afd2be3b54f5b64af4a6c8560423209c00d9ee4ad1802ce4e76db2a952a1f8643f3247469ffecf0ec4 +SHA512 (chromium-67.0.3396.62-clean.tar.xz) = 5c7784a70eca7e5cfc9442190c7addc2f14b6038431135062eed9e5bf0df684b37eb691316b889f801be69cf3837810de7bf8330cf1411b5c22b0722c806f7da +SHA512 (gelasio.zip) = 0a22def3eca8848161ee72453dc5f97cc52ed09ffe21834152f2535d3a71f404cdf1f6e1809564bacb86aae75278cbcb96cae52b537d3ccdc299b60d6d0bc53e +SHA512 (MuktiNarrow-0.94.tar.bz2) = f7abd429e2591eaa047d1ac982d97fa67dc1480c42e55b2a97861abd90918704dce90b6bb27dec7b6d696f188017a74de54a7b7f45281f0515923b90300959d1 From 3bfff4f3c248e386930d42d21ff6b8136bc11a22 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 4 Jun 2018 09:02:15 -0400 Subject: [PATCH 0213/1449] fix sources --- sources | 1 - 1 file changed, 1 deletion(-) diff --git a/sources b/sources index 042c8b0..ac757ae 100644 --- a/sources +++ b/sources @@ -1,5 +1,4 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 -SHA512 (chromium-66.0.3359.181-clean.tar.xz) = 713e0488dc6443e29a0914d801159d25200388ec4e9912afd2be3b54f5b64af4a6c8560423209c00d9ee4ad1802ce4e76db2a952a1f8643f3247469ffecf0ec4 SHA512 (chromium-67.0.3396.62-clean.tar.xz) = 5c7784a70eca7e5cfc9442190c7addc2f14b6038431135062eed9e5bf0df684b37eb691316b889f801be69cf3837810de7bf8330cf1411b5c22b0722c806f7da SHA512 (gelasio.zip) = 0a22def3eca8848161ee72453dc5f97cc52ed09ffe21834152f2535d3a71f404cdf1f6e1809564bacb86aae75278cbcb96cae52b537d3ccdc299b60d6d0bc53e SHA512 (MuktiNarrow-0.94.tar.bz2) = f7abd429e2591eaa047d1ac982d97fa67dc1480c42e55b2a97861abd90918704dce90b6bb27dec7b6d696f188017a74de54a7b7f45281f0515923b90300959d1 From 022abfe75fd1f6a2755a503f3a7a4db4313cf400 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 4 Jun 2018 15:04:58 -0400 Subject: [PATCH 0214/1449] fix crashpad issue on aarch64 --- ...ium-67.0.3396.62-crashpad-aarch64-buildfix.patch | 13 +++++++++++++ chromium.spec | 3 +++ 2 files changed, 16 insertions(+) create mode 100644 chromium-67.0.3396.62-crashpad-aarch64-buildfix.patch diff --git a/chromium-67.0.3396.62-crashpad-aarch64-buildfix.patch b/chromium-67.0.3396.62-crashpad-aarch64-buildfix.patch new file mode 100644 index 0000000..e19d726 --- /dev/null +++ b/chromium-67.0.3396.62-crashpad-aarch64-buildfix.patch @@ -0,0 +1,13 @@ +diff -up chromium-67.0.3396.62/third_party/crashpad/crashpad/util/misc/capture_context_linux.S.aarch64fix chromium-67.0.3396.62/third_party/crashpad/crashpad/util/misc/capture_context_linux.S +--- chromium-67.0.3396.62/third_party/crashpad/crashpad/util/misc/capture_context_linux.S.aarch64fix 2018-06-04 14:58:04.730083967 -0400 ++++ chromium-67.0.3396.62/third_party/crashpad/crashpad/util/misc/capture_context_linux.S 2018-06-04 14:58:24.896572816 -0400 +@@ -288,7 +288,7 @@ CAPTURECONTEXT_SYMBOL2: + #elif defined(__aarch64__) + + // Zero out fault_address, which is unused. +- str x31, [x0, #0xb0] // context->uc_mcontext.fault_address ++ str xzr, [x0, #0xb0] // context->uc_mcontext.fault_address + + // Save general purpose registers in context->uc_mcontext.regs[i]. + // The original x0 can't be recovered. +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 diff --git a/chromium.spec b/chromium.spec index 1c3ae3b..3de1213 100644 --- a/chromium.spec +++ b/chromium.spec @@ -252,6 +252,8 @@ Patch94: chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.pa # instead of the preferred alignment. This means int64_t is now 4 on i686 (instead of 8). # Use __alignof__ to get the value we expect (and chromium checks for). Patch98: chromium-66.0.3359.170-gcc8-alignof.patch +# https://chromium.googlesource.com/crashpad/crashpad/+/26ef5c910fc7e2edb441f1d2b39944195342dee9 +Patch99: chromium-67.0.3396.62-crashpad-aarch64-buildfix.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: @@ -749,6 +751,7 @@ udev. # %%patch96 -p1 -b .flatsetfix # %%patch97 -p1 -b .arm-init-fix %patch98 -p1 -b .gcc8-alignof +%patch99 -p1 -b .crashpad-aarch64-fix # Change shebang in all relevant files in this directory and all subdirectories # See `man find` for how the `-exec command {} +` syntax works From 27ff9a9cfc0ce4f24f3f12edd8bf8d1e7649b4cf Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 5 Jun 2018 14:21:44 -0400 Subject: [PATCH 0215/1449] fix epel fonts --- .gitignore | 14 ++++++++++++++ chromium.spec | 51 +++++++++++++++++++++++++++++++++++++++++++++------ sources | 14 ++++++++++++++ 3 files changed, 73 insertions(+), 6 deletions(-) diff --git a/.gitignore b/.gitignore index adc3998..bf98cac 100644 --- a/.gitignore +++ b/.gitignore @@ -48,3 +48,17 @@ /chromium-67.0.3396.62-clean.tar.xz /gelasio.zip /MuktiNarrow-0.94.tar.bz2 +/NotoSansCJKjp-hinted.zip +/lohit-gurmukhi-ttf-2.91.2.tar.gz +/Arimo-BoldItalic.ttf +/Arimo-Bold.ttf +/Arimo-Italic.ttf +/Arimo-Regular.ttf +/Cousine-BoldItalic.ttf +/Cousine-Bold.ttf +/Cousine-Italic.ttf +/Cousine-Regular.ttf +/Tinos-BoldItalic.ttf +/Tinos-Bold.ttf +/Tinos-Italic.ttf +/Tinos-Regular.ttf diff --git a/chromium.spec b/chromium.spec index 3de1213..0a596a9 100644 --- a/chromium.spec +++ b/chromium.spec @@ -443,16 +443,34 @@ BuildRequires: pkgconfig(gnome-keyring-1) # remote desktop needs this BuildRequires: pam-devel BuildRequires: systemd +# for third_party/test_fonts +%if 0%{?rhel} == 7 +Source100: https://github.com/google/fonts/blob/master/apache/arimo/Arimo-Bold.ttf +Source101: https://github.com/google/fonts/blob/master/apache/arimo/Arimo-BoldItalic.ttf +Source102: https://github.com/google/fonts/blob/master/apache/arimo/Arimo-Italic.ttf +Source103: https://github.com/google/fonts/blob/master/apache/arimo/Arimo-Regular.ttf +Source104: https://github.com/google/fonts/blob/master/apache/cousine/Cousine-Bold.ttf +Source105: https://github.com/google/fonts/blob/master/apache/cousine/Cousine-BoldItalic.ttf +Source106: https://github.com/google/fonts/blob/master/apache/cousine/Cousine-Italic.ttf +Source107: https://github.com/google/fonts/blob/master/apache/cousine/Cousine-Regular.ttf +Source108: https://github.com/google/fonts/blob/master/apache/tinos/Tinos-Bold.ttf +Source109: https://github.com/google/fonts/blob/master/apache/tinos/Tinos-BoldItalic.ttf +Source110: https://github.com/google/fonts/blob/master/apache/tinos/Tinos-Italic.ttf +Source111: https://github.com/google/fonts/blob/master/apache/tinos/Tinos-Regular.ttf +Source112: https://releases.pagure.org/lohit/lohit-gurmukhi-ttf-2.91.2.tar.gz +Source113: https://noto-website-2.storage.googleapis.com/pkgs/NotoSansCJKjp-hinted.zip +%else BuildRequires: google-croscore-arimo-fonts BuildRequires: google-croscore-cousine-fonts +BuildRequires: google-croscore-tinos-fonts +BuildRequires: google-noto-sans-cjk-jp-fonts +BuildRequires: lohit-gurmukhi-fonts +%endif BuildRequires: dejavu-sans-fonts BuildRequires: thai-scalable-garuda-fonts BuildRequires: lohit-devanagari-fonts -BuildRequires: lohit-gurmukhi-fonts BuildRequires: lohit-tamil-fonts -BuildRequires: google-noto-sans-cjk-jp-fonts BuildRequires: google-noto-sans-khmer-fonts -BuildRequires: google-croscore-tinos-fonts # using the built from source version on aarch64 BuildRequires: ninja-build @@ -872,13 +890,34 @@ unzip %{SOURCE14} tar xf %{SOURCE15} mv MuktiNarrow0.94/MuktiNarrow.ttf . rm -rf MuktiNarrow0.94 +%if 0%{?rhel} == 7 +cp %{SOURCE100} . +cp %{SOURCE101} . +cp %{SOURCE102} . +cp %{SOURCE103} . +cp %{SOURCE104} . +cp %{SOURCE105} . +cp %{SOURCE106} . +cp %{SOURCE107} . +cp %{SOURCE108} . +cp %{SOURCE109} . +cp %{SOURCE110} . +cp %{SOURCE111} . +tar xf %{SOURCE112} +mv lohit-gurmukhi-ttf-2.91.2/Lohit-Gurmukhi.ttf . +rm -rf lohit-gurmukhi-ttf-2.91.2 +unzip %{SOURCE113} +%else cp -a /usr/share/fonts/google-croscore/Arimo-*.ttf . cp -a /usr/share/fonts/google-croscore/Cousine-*.ttf . +cp -a /usr/share/fonts/google-croscore/Tinos-*.ttf . +cp -a /usr/share/fonts/lohit-gurmukhi/Lohit-Gurmukhi.ttf . +cp -a /usr/share/fonts/google-noto-cjk/NotoSansCJKjp-Regular.otf . +%endif cp -a /usr/share/fonts/dejavu/DejaVuSans.ttf /usr/share/fonts/dejavu/DejaVuSans-Bold.ttf . cp -a /usr/share/fonts/thai-scalable/Garuda.ttf . -cp -a /usr/share/fonts/lohit-devanagari/Lohit-Devanagari.ttf /usr/share/fonts/lohit-gurmukhi/Lohit-Gurmukhi.ttf /usr/share/fonts/lohit-tamil/Lohit-Tamil.ttf . -cp -a /usr/share/fonts/google-noto-cjk/NotoSansCJKjp-Regular.otf /usr/share/fonts/google-noto/NotoSansKhmer-Regular.ttf . -cp -a /usr/share/fonts/google-croscore/Tinos-*.ttf . +cp -a /usr/share/fonts/lohit-devanagari/Lohit-Devanagari.ttf /usr/share/fonts/lohit-tamil/Lohit-Tamil.ttf . +cp -a /usr/share/fonts/google-noto/NotoSansKhmer-Regular.ttf . popd # Core defines are flags that are true for both the browser and headless. diff --git a/sources b/sources index ac757ae..68e84f7 100644 --- a/sources +++ b/sources @@ -2,3 +2,17 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b180 SHA512 (chromium-67.0.3396.62-clean.tar.xz) = 5c7784a70eca7e5cfc9442190c7addc2f14b6038431135062eed9e5bf0df684b37eb691316b889f801be69cf3837810de7bf8330cf1411b5c22b0722c806f7da SHA512 (gelasio.zip) = 0a22def3eca8848161ee72453dc5f97cc52ed09ffe21834152f2535d3a71f404cdf1f6e1809564bacb86aae75278cbcb96cae52b537d3ccdc299b60d6d0bc53e SHA512 (MuktiNarrow-0.94.tar.bz2) = f7abd429e2591eaa047d1ac982d97fa67dc1480c42e55b2a97861abd90918704dce90b6bb27dec7b6d696f188017a74de54a7b7f45281f0515923b90300959d1 +SHA512 (NotoSansCJKjp-hinted.zip) = e7bcbc53a10b8ec3679dcade5a8a94cea7e1f60875ab38f2193b4fa8e33968e1f0abc8184a3df1e5210f6f5c731f96c727c6aa8f519423a29707d2dee5ada193 +SHA512 (lohit-gurmukhi-ttf-2.91.2.tar.gz) = 714ed72d201e7f8956d24e9d9f1526207beb91a604e88c02a8b0d145f19d9bfe1408ca290d1665ebef462ab3854365dcd9850529803277738e2585addf3e280a +SHA512 (Arimo-BoldItalic.ttf) = cb1f411f2630f2754dfb0244b3c56fde43650d603512d47c143bc0f24028da4d7ca2b35a633226ef9c502b97c63cfbd5a6d696934b3e60b2a98ad879b113a4c4 +SHA512 (Arimo-Bold.ttf) = 2853e5f41e6899baf226db2578aba09f2f88085eaea02da024621492d21e1af8bdefdefd354ea23dc4d5de5cb0d554085040a0108820f213e86dd532986fdb41 +SHA512 (Arimo-Italic.ttf) = 56ef918e5811dcd375e6cd8d79dc69f4db75d544639c0f6ac3a0343b3b4ef94b7dee5a6066f1558d8747a32bbee074256be68b943ff31cfbd2f5f32acfa7c1c5 +SHA512 (Arimo-Regular.ttf) = 05e6aa6b785b0038a8e0e0a8a618a1b8e907a700be302148eaebc91cfac3c9e2d9acf90b9d077ff3b9ff54bd5f8a9c522a039cff6103cdeee54be29b6a0b355f +SHA512 (Cousine-BoldItalic.ttf) = 2125aa9f5db4ae4a3725d308b6afbfbce5957f3c96a3c5fcba8ebf5cd167017d9c7023391e947ed68d12fa97e2cba3f156a3acca276d9f5ed50df7d78c07f918 +SHA512 (Cousine-Bold.ttf) = 1759fd23419ae0e1bfc9be92abb9cb0c74084ce85e7f53c055d86ec3d62da83169d0d67ed96fd4e496b28acf382933d63448459108b109d8202db7f18f05caab +SHA512 (Cousine-Italic.ttf) = ec3fc9d940b748dbbc64aa66184413a78ae2b085181eed563449df044b891e951e8feebd865be5be42f0cd001acf5bdce9084a006f9b5be32f096f7df0dc7700 +SHA512 (Cousine-Regular.ttf) = a665a6a4a5583079eb87509e2da7d6bd06965e6a7655217302b088caef942ae9ad63e6cffda18d0001fc9ab2284836766843e46bfdacd188b54f39d7855f36a0 +SHA512 (Tinos-BoldItalic.ttf) = 2574de2add94ef976b731fac688951fab49574c9b0ccd259ba647ea3598ca026bcfb88e2ea3f19effb3af71fdc0eb5fa9973f0b6e996c22185c5f2aab5a23fdd +SHA512 (Tinos-Bold.ttf) = 54aeca804c06a4d5c57ade596e73df91a6a1c4401c4aadba55d987b3fb73045d35f3df02678b59abb77c4914ec741755536c0adf808c931e4b77848c52c229c4 +SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0e22a16414278217f37497b904a18540273c0e2d79d4f1faabde3b0eb5446283b318c73bafb38 +SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f From 0b37303d5a782fad15707b55c596464d94bb16f2 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 6 Jun 2018 10:17:14 -0400 Subject: [PATCH 0216/1449] work around bug in RHEL7 python exec --- ....0.3396.62-epel7-use-old-python-exec-syntax.patch | 12 ++++++++++++ chromium.spec | 12 +++++++++++- 2 files changed, 23 insertions(+), 1 deletion(-) create mode 100644 chromium-67.0.3396.62-epel7-use-old-python-exec-syntax.patch diff --git a/chromium-67.0.3396.62-epel7-use-old-python-exec-syntax.patch b/chromium-67.0.3396.62-epel7-use-old-python-exec-syntax.patch new file mode 100644 index 0000000..1aa5600 --- /dev/null +++ b/chromium-67.0.3396.62-epel7-use-old-python-exec-syntax.patch @@ -0,0 +1,12 @@ +diff -up chromium-67.0.3396.62/tools/gn/bootstrap/bootstrap.py.oldexec chromium-67.0.3396.62/tools/gn/bootstrap/bootstrap.py +--- chromium-67.0.3396.62/tools/gn/bootstrap/bootstrap.py.oldexec 2018-06-06 10:13:40.862084284 -0400 ++++ chromium-67.0.3396.62/tools/gn/bootstrap/bootstrap.py 2018-06-06 10:14:08.809490819 -0400 +@@ -112,7 +112,7 @@ def windows_prepare_toolchain(tempdir): + + _globals = {"__builtins__":None} + _locals = {} +- exec(response, _globals, _locals) ++ exec response in _globals, _locals + + return _locals + diff --git a/chromium.spec b/chromium.spec index 0a596a9..d612465 100644 --- a/chromium.spec +++ b/chromium.spec @@ -140,7 +140,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3396.62 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -254,6 +254,9 @@ Patch94: chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.pa Patch98: chromium-66.0.3359.170-gcc8-alignof.patch # https://chromium.googlesource.com/crashpad/crashpad/+/26ef5c910fc7e2edb441f1d2b39944195342dee9 Patch99: chromium-67.0.3396.62-crashpad-aarch64-buildfix.patch +# RHEL 7 has a bug in its python2.7 which does not propely handle exec with a tuple +# https://bugs.python.org/issue21591 +Patch100: chromium-67.0.3396.62-epel7-use-old-python-exec-syntax.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: @@ -770,6 +773,10 @@ udev. # %%patch97 -p1 -b .arm-init-fix %patch98 -p1 -b .gcc8-alignof %patch99 -p1 -b .crashpad-aarch64-fix +%if 0%{?rhel} == 7 +%patch100 -p1 -b .oldexec +%endif + # Change shebang in all relevant files in this directory and all subdirectories # See `man find` for how the `-exec command {} +` syntax works @@ -1702,6 +1709,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Wed Jun 6 2018 Tom Callaway 67.0.3396.62-2 +- work around bug in RHEL7 python exec + * Wed May 30 2018 Tom Callaway 67.0.3396.62-1 - 67 releases of chromium on the wall... From 9cdea2b94c69910f92c1ecc347aa8073f1a6ef75 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 7 Jun 2018 13:54:30 -0400 Subject: [PATCH 0217/1449] update to 67.0.3396.79 --- .gitignore | 1 + chromium.spec | 7 +++++-- sources | 2 +- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index bf98cac..0bb4453 100644 --- a/.gitignore +++ b/.gitignore @@ -62,3 +62,4 @@ /Tinos-Bold.ttf /Tinos-Italic.ttf /Tinos-Regular.ttf +/chromium-67.0.3396.79-clean.tar.xz diff --git a/chromium.spec b/chromium.spec index d612465..54d3c69 100644 --- a/chromium.spec +++ b/chromium.spec @@ -139,8 +139,8 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3396.62 -Release: 2%{?dist} +Version: %{majorversion}.0.3396.79 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1709,6 +1709,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Thu Jun 7 2018 Tom Callaway 67.0.3396.79-1 +- update to 67.0.3396.79 + * Wed Jun 6 2018 Tom Callaway 67.0.3396.62-2 - work around bug in RHEL7 python exec diff --git a/sources b/sources index 68e84f7..e8b818f 100644 --- a/sources +++ b/sources @@ -1,5 +1,4 @@ SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03 -SHA512 (chromium-67.0.3396.62-clean.tar.xz) = 5c7784a70eca7e5cfc9442190c7addc2f14b6038431135062eed9e5bf0df684b37eb691316b889f801be69cf3837810de7bf8330cf1411b5c22b0722c806f7da SHA512 (gelasio.zip) = 0a22def3eca8848161ee72453dc5f97cc52ed09ffe21834152f2535d3a71f404cdf1f6e1809564bacb86aae75278cbcb96cae52b537d3ccdc299b60d6d0bc53e SHA512 (MuktiNarrow-0.94.tar.bz2) = f7abd429e2591eaa047d1ac982d97fa67dc1480c42e55b2a97861abd90918704dce90b6bb27dec7b6d696f188017a74de54a7b7f45281f0515923b90300959d1 SHA512 (NotoSansCJKjp-hinted.zip) = e7bcbc53a10b8ec3679dcade5a8a94cea7e1f60875ab38f2193b4fa8e33968e1f0abc8184a3df1e5210f6f5c731f96c727c6aa8f519423a29707d2dee5ada193 @@ -16,3 +15,4 @@ SHA512 (Tinos-BoldItalic.ttf) = 2574de2add94ef976b731fac688951fab49574c9b0ccd259 SHA512 (Tinos-Bold.ttf) = 54aeca804c06a4d5c57ade596e73df91a6a1c4401c4aadba55d987b3fb73045d35f3df02678b59abb77c4914ec741755536c0adf808c931e4b77848c52c229c4 SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0e22a16414278217f37497b904a18540273c0e2d79d4f1faabde3b0eb5446283b318c73bafb38 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f +SHA512 (chromium-67.0.3396.79-clean.tar.xz) = 253265e7b3a277821224a484faeb6993553b2aa636b92bab6eb2e839510d46fbee6ac9994d6a99075e47e046092437369c48eefba4cc98c9ba2889a54d6ee8a4 From afed03bdcdc0b467aef479c3c4133cbf2c55ac70 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 19 Jun 2018 12:19:07 -0400 Subject: [PATCH 0218/1449] 67.0.3396.87 --- .gitignore | 1 + chromium.spec | 5 ++++- sources | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 0bb4453..4386671 100644 --- a/.gitignore +++ b/.gitignore @@ -63,3 +63,4 @@ /Tinos-Italic.ttf /Tinos-Regular.ttf /chromium-67.0.3396.79-clean.tar.xz +/chromium-67.0.3396.87-clean.tar.xz diff --git a/chromium.spec b/chromium.spec index 54d3c69..de6127a 100644 --- a/chromium.spec +++ b/chromium.spec @@ -139,7 +139,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3396.79 +Version: %{majorversion}.0.3396.87 Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home @@ -1709,6 +1709,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Tue Jun 19 2018 Tom Callaway 67.0.3396.87-1 +- update to 67.0.3396.87 + * Thu Jun 7 2018 Tom Callaway 67.0.3396.79-1 - update to 67.0.3396.79 diff --git a/sources b/sources index e8b818f..3121cf4 100644 --- a/sources +++ b/sources @@ -15,4 +15,4 @@ SHA512 (Tinos-BoldItalic.ttf) = 2574de2add94ef976b731fac688951fab49574c9b0ccd259 SHA512 (Tinos-Bold.ttf) = 54aeca804c06a4d5c57ade596e73df91a6a1c4401c4aadba55d987b3fb73045d35f3df02678b59abb77c4914ec741755536c0adf808c931e4b77848c52c229c4 SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0e22a16414278217f37497b904a18540273c0e2d79d4f1faabde3b0eb5446283b318c73bafb38 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f -SHA512 (chromium-67.0.3396.79-clean.tar.xz) = 253265e7b3a277821224a484faeb6993553b2aa636b92bab6eb2e839510d46fbee6ac9994d6a99075e47e046092437369c48eefba4cc98c9ba2889a54d6ee8a4 +SHA512 (chromium-67.0.3396.87-clean.tar.xz) = 4eb152bb926c7fd953b62a963852d6b7d5ef29a6cb9ddff453c2d2edf14a8104c2d1fea818e0bb2d18ea9b1d4c64f058c69aaa85d2d2a865190f0409717aebcc From 92b60dd6231b2b7bf1f5212720a5f423cc0417d8 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 19 Jun 2018 12:27:31 -0400 Subject: [PATCH 0219/1449] move from appdata/ to metainfo/ --- chromium.spec | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/chromium.spec b/chromium.spec index de6127a..844d160 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1459,8 +1459,8 @@ install -m 0644 %{SOURCE13} %{buildroot}%{_sysconfdir}/%{name}/ mkdir -p %{buildroot}%{_datadir}/applications/ desktop-file-install --dir %{buildroot}%{_datadir}/applications %{SOURCE4} -install -D -m0644 chrome/installer/linux/common/chromium-browser/chromium-browser.appdata.xml ${RPM_BUILD_ROOT}%{_datadir}/appdata/%{chromium_browser_channel}.appdata.xml -appstream-util validate-relax --nonet ${RPM_BUILD_ROOT}%{_datadir}/appdata/%{chromium_browser_channel}.appdata.xml +install -D -m0644 chrome/installer/linux/common/chromium-browser/chromium-browser.appdata.xml ${RPM_BUILD_ROOT}%{_datadir}/metainfo/%{chromium_browser_channel}.appdata.xml +appstream-util validate-relax --nonet ${RPM_BUILD_ROOT}%{_datadir}/metainfo/%{chromium_browser_channel}.appdata.xml mkdir -p %{buildroot}%{_datadir}/gnome-control-center/default-apps/ cp -a %{SOURCE9} %{buildroot}%{_datadir}/gnome-control-center/default-apps/ @@ -1591,7 +1591,7 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{_mandir}/man1/%{chromium_browser_channel}.* %{_datadir}/icons/hicolor/*/apps/%{chromium_browser_channel}.png %{_datadir}/applications/*.desktop -%{_datadir}/appdata/*.appdata.xml +%{_datadir}/metainfo/*.appdata.xml %{_datadir}/gnome-control-center/default-apps/chromium-browser.xml %files common From 77c46e3fc5ee9f405afad017e7b4cafb2fb68d04 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 25 Jun 2018 16:08:01 -0400 Subject: [PATCH 0220/1449] add fedora to the user agent string --- chromium-67.0.3396.87-fedora-user-agent.patch | 12 ++++++++++++ chromium.spec | 8 +++++++- 2 files changed, 19 insertions(+), 1 deletion(-) create mode 100644 chromium-67.0.3396.87-fedora-user-agent.patch diff --git a/chromium-67.0.3396.87-fedora-user-agent.patch b/chromium-67.0.3396.87-fedora-user-agent.patch new file mode 100644 index 0000000..8df304d --- /dev/null +++ b/chromium-67.0.3396.87-fedora-user-agent.patch @@ -0,0 +1,12 @@ +diff -up chromium-67.0.3396.87/content/common/user_agent.cc.fedora-user-agent chromium-67.0.3396.87/content/common/user_agent.cc +--- chromium-67.0.3396.87/content/common/user_agent.cc.fedora-user-agent 2018-06-25 16:01:48.092188102 -0400 ++++ chromium-67.0.3396.87/content/common/user_agent.cc 2018-06-25 16:02:42.634878954 -0400 +@@ -141,7 +141,7 @@ std::string getUserAgentPlatform() { + #elif defined(OS_MACOSX) + "Macintosh; "; + #elif defined(USE_X11) || defined(USE_OZONE) +- "X11; "; // strange, but that's what Firefox uses ++ "X11; Fedora; "; // strange, but that's what Firefox uses + #elif defined(OS_ANDROID) + "Linux; "; + #else diff --git a/chromium.spec b/chromium.spec index 844d160..a2f2d93 100644 --- a/chromium.spec +++ b/chromium.spec @@ -140,7 +140,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3396.87 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -257,6 +257,8 @@ Patch99: chromium-67.0.3396.62-crashpad-aarch64-buildfix.patch # RHEL 7 has a bug in its python2.7 which does not propely handle exec with a tuple # https://bugs.python.org/issue21591 Patch100: chromium-67.0.3396.62-epel7-use-old-python-exec-syntax.patch +# Add "Fedora" to the user agent string +Patch101: chromium-67.0.3396.87-fedora-user-agent.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: @@ -776,6 +778,7 @@ udev. %if 0%{?rhel} == 7 %patch100 -p1 -b .oldexec %endif +%patch101 -p1 -b .fedora-user-agent # Change shebang in all relevant files in this directory and all subdirectories @@ -1709,6 +1712,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Mon Jun 25 2018 Tom Callaway 67.0.3396.87-2 +- add "Fedora" to the user agent string + * Tue Jun 19 2018 Tom Callaway 67.0.3396.87-1 - update to 67.0.3396.87 From 2c3a8f916afaffbf539ce90251f08f4eb6567244 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 9 Jul 2018 16:27:44 -0400 Subject: [PATCH 0221/1449] 67.0.3396.99 --- .gitignore | 1 + chromium.spec | 7 +++++-- sources | 2 +- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index 4386671..0fac3a1 100644 --- a/.gitignore +++ b/.gitignore @@ -64,3 +64,4 @@ /Tinos-Regular.ttf /chromium-67.0.3396.79-clean.tar.xz /chromium-67.0.3396.87-clean.tar.xz +/chromium-67.0.3396.99-clean.tar.xz diff --git a/chromium.spec b/chromium.spec index a2f2d93..6cceb5a 100644 --- a/chromium.spec +++ b/chromium.spec @@ -139,8 +139,8 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3396.87 -Release: 2%{?dist} +Version: %{majorversion}.0.3396.99 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1712,6 +1712,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Mon Jul 9 2018 Tom Callaway 67.0.3396.99-1 +- update to 67.0.3396.99 + * Mon Jun 25 2018 Tom Callaway 67.0.3396.87-2 - add "Fedora" to the user agent string diff --git a/sources b/sources index 3121cf4..8e00335 100644 --- a/sources +++ b/sources @@ -15,4 +15,4 @@ SHA512 (Tinos-BoldItalic.ttf) = 2574de2add94ef976b731fac688951fab49574c9b0ccd259 SHA512 (Tinos-Bold.ttf) = 54aeca804c06a4d5c57ade596e73df91a6a1c4401c4aadba55d987b3fb73045d35f3df02678b59abb77c4914ec741755536c0adf808c931e4b77848c52c229c4 SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0e22a16414278217f37497b904a18540273c0e2d79d4f1faabde3b0eb5446283b318c73bafb38 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f -SHA512 (chromium-67.0.3396.87-clean.tar.xz) = 4eb152bb926c7fd953b62a963852d6b7d5ef29a6cb9ddff453c2d2edf14a8104c2d1fea818e0bb2d18ea9b1d4c64f058c69aaa85d2d2a865190f0409717aebcc +SHA512 (chromium-67.0.3396.99-clean.tar.xz) = b83d2d2f50bf6e5ce70baecf3f59f50fb7d69339c2f16aea30111650b8d0ccaf051bd1873fe63f94146212b60d59aa72c73bd8f9d96b2e27e3f354b75ba82ba4 From 8fac8b3f43a1edddc9767fabf7c68d531c311106 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 11 Jul 2018 12:34:10 -0400 Subject: [PATCH 0222/1449] try to fix version.py for rawhide --- chromium-67.0.3396.99-py3fix.patch | 12 ++++++++++++ chromium.spec | 3 +++ 2 files changed, 15 insertions(+) create mode 100644 chromium-67.0.3396.99-py3fix.patch diff --git a/chromium-67.0.3396.99-py3fix.patch b/chromium-67.0.3396.99-py3fix.patch new file mode 100644 index 0000000..5dd7267 --- /dev/null +++ b/chromium-67.0.3396.99-py3fix.patch @@ -0,0 +1,12 @@ +diff -up chromium-67.0.3396.99/build/util/version.py.py3fix chromium-67.0.3396.99/build/util/version.py +--- chromium-67.0.3396.99/build/util/version.py.py3fix 2018-07-11 11:39:14.728600503 -0400 ++++ chromium-67.0.3396.99/build/util/version.py 2018-07-11 11:39:22.401406816 -0400 +@@ -68,7 +68,7 @@ def subst_template(contents, values): + try: + contents = contents.replace('@' + key + '@', val) + except TypeError: +- print repr(key), repr(val) ++ print(repr(key), repr(val)) + return contents + + diff --git a/chromium.spec b/chromium.spec index 6cceb5a..901468e 100644 --- a/chromium.spec +++ b/chromium.spec @@ -259,6 +259,8 @@ Patch99: chromium-67.0.3396.62-crashpad-aarch64-buildfix.patch Patch100: chromium-67.0.3396.62-epel7-use-old-python-exec-syntax.patch # Add "Fedora" to the user agent string Patch101: chromium-67.0.3396.87-fedora-user-agent.patch +# Try to fix version.py for Rawhide +Patch102: chromium-67.0.3396.99-py3fix.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: @@ -779,6 +781,7 @@ udev. %patch100 -p1 -b .oldexec %endif %patch101 -p1 -b .fedora-user-agent +%patch102 -p1 -b .py3fix # Change shebang in all relevant files in this directory and all subdirectories From f7dfb309f65e3ebcd18c9f0cdde385db92b72df7 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 12 Jul 2018 21:46:24 +0000 Subject: [PATCH 0223/1449] - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- chromium.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 901468e..5142e88 100644 --- a/chromium.spec +++ b/chromium.spec @@ -140,7 +140,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3396.99 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1715,6 +1715,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Thu Jul 12 2018 Fedora Release Engineering - 67.0.3396.99-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + * Mon Jul 9 2018 Tom Callaway 67.0.3396.99-1 - update to 67.0.3396.99 From 7048e95ab61cd1430de6842df0f967fa38f3bd35 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 24 Jul 2018 17:01:35 -0400 Subject: [PATCH 0224/1449] setuid user-session, more python2 hacks --- chromium-67.0.3396.99-py2-bootstrap.patch | 21 +++++++++++++++++++++ chromium.spec | 9 ++++----- 2 files changed, 25 insertions(+), 5 deletions(-) create mode 100644 chromium-67.0.3396.99-py2-bootstrap.patch diff --git a/chromium-67.0.3396.99-py2-bootstrap.patch b/chromium-67.0.3396.99-py2-bootstrap.patch new file mode 100644 index 0000000..a6c2435 --- /dev/null +++ b/chromium-67.0.3396.99-py2-bootstrap.patch @@ -0,0 +1,21 @@ +diff -up chromium-67.0.3396.99/tools/gn/bootstrap/bootstrap.py.py2 chromium-67.0.3396.99/tools/gn/bootstrap/bootstrap.py +--- chromium-67.0.3396.99/tools/gn/bootstrap/bootstrap.py.py2 2018-07-24 16:58:53.372022183 -0400 ++++ chromium-67.0.3396.99/tools/gn/bootstrap/bootstrap.py 2018-07-24 17:00:03.200279816 -0400 +@@ -983,7 +983,7 @@ def build_gn_with_gn(temp_gn, build_dir, + gn_gen_args = options.gn_gen_args or '' + if not options.debug: + gn_gen_args += ' is_debug=false' +- cmd = [temp_gn, 'gen', build_dir, '--args=%s' % gn_gen_args, ++ cmd = [temp_gn, 'gen', '--script-executable=/usr/bin/python2', build_dir, '--args=%s' % gn_gen_args, + "--root="+SRC_ROOT + ] + check_call(cmd) +@@ -997,7 +997,7 @@ def build_gn_with_gn(temp_gn, build_dir, + # build.ninja currently refers back to gn from the temporary directory. + # Regenerate the build files using the gn we just built so that the reference + # gets updated to "./gn". +- cmd = [os.path.join(build_dir, 'gn'), 'gen', build_dir, ++ cmd = [os.path.join(build_dir, 'gn'), 'gen', '--script-executable=/usr/bin/python2', build_dir, + '--args=%s' % gn_gen_args] + check_call(cmd) + diff --git a/chromium.spec b/chromium.spec index 5142e88..80bbe66 100644 --- a/chromium.spec +++ b/chromium.spec @@ -261,6 +261,7 @@ Patch100: chromium-67.0.3396.62-epel7-use-old-python-exec-syntax.patch Patch101: chromium-67.0.3396.87-fedora-user-agent.patch # Try to fix version.py for Rawhide Patch102: chromium-67.0.3396.99-py3fix.patch +Patch103: chromium-67.0.3396.99-py2-bootstrap.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: @@ -677,11 +678,7 @@ Requires(post): systemd Requires(preun): systemd Requires(postun): systemd Requires: xorg-x11-server-Xvfb -%if 0%{?rhel} == 7 -Requires: python-psutil -%else Requires: python2-psutil -%endif %if 0%{?shared} Requires: chromium-libs%{_isa} = %{version}-%{release} %endif @@ -782,6 +779,7 @@ udev. %endif %patch101 -p1 -b .fedora-user-agent %patch102 -p1 -b .py3fix +%patch103 -p1 -b .py2 # Change shebang in all relevant files in this directory and all subdirectories @@ -1249,7 +1247,7 @@ if python2 -c 'import google ; print google.__path__' 2> /dev/null ; then \ fi tools/gn/bootstrap/bootstrap.py -v --gn-gen-args "$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" -%{target}/gn gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{target} +%{target}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{target} %if %{freeworld} # do not need to do headless gen @@ -1395,6 +1393,7 @@ cp -a remoting_locales %{buildroot}%{crd_path}/ cp -a remoting_me2me_host %{buildroot}%{crd_path}/chrome-remote-desktop-host cp -a remoting_start_host %{buildroot}%{crd_path}/start-host cp -a remoting_user_session %{buildroot}%{crd_path}/user-session +chmod +s %{buildroot}%{crd_path}/user-session # chromium mkdir -p %{buildroot}%{_sysconfdir}/chromium/native-messaging-hosts From f3867e49867b8a0d49fbae22e9122a1056201857 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 25 Jul 2018 09:29:07 -0400 Subject: [PATCH 0225/1449] missed one gn gen --- chromium.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 80bbe66..6fe07a6 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1252,7 +1252,7 @@ tools/gn/bootstrap/bootstrap.py -v --gn-gen-args "$CHROMIUM_CORE_GN_DEFINES $CHR %if %{freeworld} # do not need to do headless gen %else -%{target}/gn gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_HEADLESS_GN_DEFINES" %{headlesstarget} +%{target}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_HEADLESS_GN_DEFINES" %{headlesstarget} %endif %if %{bundlelibusbx} From e0bcc175b4722c77e42c3d1e890a09d7a656ae55 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 25 Jul 2018 09:48:31 -0400 Subject: [PATCH 0226/1449] include third_party/rcssmin --- chromium.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/chromium.spec b/chromium.spec index 6fe07a6..a8d735c 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1119,6 +1119,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/protobuf/third_party/six' \ 'third_party/qcms' \ 'third_party/qunit' \ + 'third_party/rcssmin' \ %if 0%{?bundlere2} 'third_party/re2' \ %endif From cb0be2c990fc724e1bb330d1ea043e9eda1714d8 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 25 Jul 2018 14:16:12 -0400 Subject: [PATCH 0227/1449] fix more python hardcoding --- chromium-67.0.3396.99-py2-bootstrap.patch | 21 +++++++++++++++++++++ chromium.spec | 1 - 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/chromium-67.0.3396.99-py2-bootstrap.patch b/chromium-67.0.3396.99-py2-bootstrap.patch index a6c2435..b59c84b 100644 --- a/chromium-67.0.3396.99-py2-bootstrap.patch +++ b/chromium-67.0.3396.99-py2-bootstrap.patch @@ -1,3 +1,24 @@ +diff -up chromium-67.0.3396.99/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py.py2 chromium-67.0.3396.99/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py +--- chromium-67.0.3396.99/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py.py2 2018-07-25 14:14:02.004886479 -0400 ++++ chromium-67.0.3396.99/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py 2018-07-25 14:15:30.167896461 -0400 +@@ -58,7 +58,7 @@ def _MinifyJS(input_js): + + with tempfile.NamedTemporaryFile() as _: + args = [ +- 'python', ++ 'python2', + rjsmin_path + ] + p = subprocess.Popen(args, +@@ -177,7 +177,7 @@ def _MinifyCSS(css_text): + os.path.join(py_vulcanize_path, 'third_party', 'rcssmin', 'rcssmin.py')) + + with tempfile.NamedTemporaryFile() as _: +- rcssmin_args = ['python', rcssmin_path] ++ rcssmin_args = ['python2', rcssmin_path] + p = subprocess.Popen(rcssmin_args, + stdin=subprocess.PIPE, + stdout=subprocess.PIPE, diff -up chromium-67.0.3396.99/tools/gn/bootstrap/bootstrap.py.py2 chromium-67.0.3396.99/tools/gn/bootstrap/bootstrap.py --- chromium-67.0.3396.99/tools/gn/bootstrap/bootstrap.py.py2 2018-07-24 16:58:53.372022183 -0400 +++ chromium-67.0.3396.99/tools/gn/bootstrap/bootstrap.py 2018-07-24 17:00:03.200279816 -0400 diff --git a/chromium.spec b/chromium.spec index a8d735c..6fe07a6 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1119,7 +1119,6 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/protobuf/third_party/six' \ 'third_party/qcms' \ 'third_party/qunit' \ - 'third_party/rcssmin' \ %if 0%{?bundlere2} 'third_party/re2' \ %endif From 14101bb995bba2e8231504e5a43a573c48e63214 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 9 Aug 2018 16:23:34 -0400 Subject: [PATCH 0228/1449] 68 --- .gitignore | 1 + chromium-68.0.3440.106-boolfix.patch | 36 ++++++++++ ...mium-68.0.3440.106-fedora-user-agent.patch | 12 ++++ ...440.106-fix-build-networking_private.patch | 12 ++++ ...mium-68.0.3440.106-master-prefs-path.patch | 15 +++++ chromium-68.0.3440.106-notest.patch | 11 ++++ chromium-68.0.3440.84-cors-string.patch | 51 +++++++++++++++ chromium-68.0.3440.84-libjpeg.patch | 62 ++++++++++++++++++ chromium-68.0.3440.84-libwebp-shim.patch | 43 ++++++++++++ chromium-68.0.3440.84-move-unique-ptr.patch | 65 +++++++++++++++++++ chromium-latest.py | 6 +- chromium.spec | 62 ++++++++++++++---- clean_ffmpeg.sh | 2 +- sources | 2 +- 14 files changed, 363 insertions(+), 17 deletions(-) create mode 100644 chromium-68.0.3440.106-boolfix.patch create mode 100644 chromium-68.0.3440.106-fedora-user-agent.patch create mode 100644 chromium-68.0.3440.106-fix-build-networking_private.patch create mode 100644 chromium-68.0.3440.106-master-prefs-path.patch create mode 100644 chromium-68.0.3440.106-notest.patch create mode 100644 chromium-68.0.3440.84-cors-string.patch create mode 100644 chromium-68.0.3440.84-libjpeg.patch create mode 100644 chromium-68.0.3440.84-libwebp-shim.patch create mode 100644 chromium-68.0.3440.84-move-unique-ptr.patch diff --git a/.gitignore b/.gitignore index 0fac3a1..b6aec29 100644 --- a/.gitignore +++ b/.gitignore @@ -65,3 +65,4 @@ /chromium-67.0.3396.79-clean.tar.xz /chromium-67.0.3396.87-clean.tar.xz /chromium-67.0.3396.99-clean.tar.xz +/chromium-68.0.3440.106-clean.tar.xz diff --git a/chromium-68.0.3440.106-boolfix.patch b/chromium-68.0.3440.106-boolfix.patch new file mode 100644 index 0000000..ed22aa9 --- /dev/null +++ b/chromium-68.0.3440.106-boolfix.patch @@ -0,0 +1,36 @@ +diff -up chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_ptr_info.h +--- chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix 2018-08-09 03:21:23.066802340 -0400 ++++ chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_ptr_info.h 2018-08-09 03:25:10.638595925 -0400 +@@ -45,7 +45,7 @@ class AssociatedInterfacePtrInfo { + + bool is_valid() const { return handle_.is_valid(); } + +- explicit operator bool() const { return handle_.is_valid(); } ++ explicit operator bool() const { return (bool) handle_.is_valid(); } + + ScopedInterfaceEndpointHandle PassHandle() { + return std::move(handle_); +diff -up chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_request.h.boolfix chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_request.h +--- chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_request.h.boolfix 2018-08-09 03:21:23.067802318 -0400 ++++ chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_request.h 2018-08-09 03:24:44.935229067 -0400 +@@ -50,7 +50,7 @@ class AssociatedInterfaceRequest { + // handle. + 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(); } + + ScopedInterfaceEndpointHandle PassHandle() { return std::move(handle_); } + +diff -up chromium-68.0.3440.106/mojo/public/cpp/bindings/interface_request.h.boolfix chromium-68.0.3440.106/mojo/public/cpp/bindings/interface_request.h +--- chromium-68.0.3440.106/mojo/public/cpp/bindings/interface_request.h.boolfix 2018-08-08 15:11:05.000000000 -0400 ++++ chromium-68.0.3440.106/mojo/public/cpp/bindings/interface_request.h 2018-08-09 03:21:23.067802318 -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-68.0.3440.106-fedora-user-agent.patch b/chromium-68.0.3440.106-fedora-user-agent.patch new file mode 100644 index 0000000..6c4cb82 --- /dev/null +++ b/chromium-68.0.3440.106-fedora-user-agent.patch @@ -0,0 +1,12 @@ +diff -up chromium-68.0.3440.106/content/common/user_agent.cc.fedora-user-agent chromium-68.0.3440.106/content/common/user_agent.cc +--- chromium-68.0.3440.106/content/common/user_agent.cc.fedora-user-agent 2018-08-09 03:27:45.965769824 -0400 ++++ chromium-68.0.3440.106/content/common/user_agent.cc 2018-08-09 03:28:34.001586650 -0400 +@@ -135,7 +135,7 @@ std::string getUserAgentPlatform() { + #elif defined(OS_MACOSX) + "Macintosh; "; + #elif defined(USE_X11) || defined(USE_OZONE) +- "X11; "; // strange, but that's what Firefox uses ++ "X11; Fedora; "; // strange, but that's what Firefox uses + #elif defined(OS_ANDROID) + "Linux; "; + #elif defined(OS_POSIX) || defined(OS_FUCHSIA) diff --git a/chromium-68.0.3440.106-fix-build-networking_private.patch b/chromium-68.0.3440.106-fix-build-networking_private.patch new file mode 100644 index 0000000..787d3db --- /dev/null +++ b/chromium-68.0.3440.106-fix-build-networking_private.patch @@ -0,0 +1,12 @@ +diff -up chromium-68.0.3440.106/extensions/browser/api/networking_private/BUILD.gn.fixb chromium-68.0.3440.106/extensions/browser/api/networking_private/BUILD.gn +--- chromium-68.0.3440.106/extensions/browser/api/networking_private/BUILD.gn.fixb 2018-08-09 03:56:36.091622243 -0400 ++++ chromium-68.0.3440.106/extensions/browser/api/networking_private/BUILD.gn 2018-08-09 03:57:03.047001659 -0400 +@@ -61,7 +61,7 @@ source_set("networking_private") { + ] + deps += [ "//chromeos" ] + } else { +- not_needed(default_sources) ++ not_needed([ "default_sources" ]) + sources = [ + "networking_private_stubs.cc", + ] diff --git a/chromium-68.0.3440.106-master-prefs-path.patch b/chromium-68.0.3440.106-master-prefs-path.patch new file mode 100644 index 0000000..9304adf --- /dev/null +++ b/chromium-68.0.3440.106-master-prefs-path.patch @@ -0,0 +1,15 @@ +diff -up chromium-68.0.3440.106/chrome/browser/first_run/first_run_internal_linux.cc.etc chromium-68.0.3440.106/chrome/browser/first_run/first_run_internal_linux.cc +--- chromium-68.0.3440.106/chrome/browser/first_run/first_run_internal_linux.cc.etc 2018-08-09 03:12:33.444705798 -0400 ++++ chromium-68.0.3440.106/chrome/browser/first_run/first_run_internal_linux.cc 2018-08-09 03:14:46.275754910 -0400 +@@ -19,9 +19,9 @@ bool IsOrganicFirstRun() { + + base::FilePath MasterPrefsPath() { + // The standard location of the master prefs is next to the chrome binary. ++ // ...but we patch it to use /etc/chromium + base::FilePath master_prefs; +- if (!base::PathService::Get(base::DIR_EXE, &master_prefs)) +- return base::FilePath(); ++ master_prefs = base::FilePath("/etc/chromium"); + return master_prefs.AppendASCII(installer::kDefaultMasterPrefs); + } + diff --git a/chromium-68.0.3440.106-notest.patch b/chromium-68.0.3440.106-notest.patch new file mode 100644 index 0000000..c20a40e --- /dev/null +++ b/chromium-68.0.3440.106-notest.patch @@ -0,0 +1,11 @@ +diff -up chromium-68.0.3440.106/chrome/test/data/webui_test_resources.grd.notest chromium-68.0.3440.106/chrome/test/data/webui_test_resources.grd +--- chromium-68.0.3440.106/chrome/test/data/webui_test_resources.grd.notest 2018-08-09 03:08:33.953029806 -0400 ++++ chromium-68.0.3440.106/chrome/test/data/webui_test_resources.grd 2018-08-09 03:09:40.264567818 -0400 +@@ -8,7 +8,6 @@ + + + +- + + + diff --git a/chromium-68.0.3440.84-cors-string.patch b/chromium-68.0.3440.84-cors-string.patch new file mode 100644 index 0000000..b724cd4 --- /dev/null +++ b/chromium-68.0.3440.84-cors-string.patch @@ -0,0 +1,51 @@ +From 01d891fa0790950549c7bedb34edf869827a372e Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Thu, 31 May 2018 17:03:37 +0000 +Subject: [PATCH] CORS legacy: add missing string include +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +The cors_legacy.h file includes declarations using std::string, but +it is not declared due to missing #include . + +Also drop unneeded declarations in .cpp file. + +Change-Id: I00df799f84a6c3530c2f12f1e52d24c7d9bd6bfd +Reviewed-on: https://chromium-review.googlesource.com/1080707 +Reviewed-by: Tom Sepez +Commit-Queue: José Dapena Paz +Cr-Commit-Position: refs/heads/master@{#563282} +--- + services/network/public/cpp/cors/cors_legacy.cc | 2 -- + services/network/public/cpp/cors/cors_legacy.h | 1 + + 2 files changed, 1 insertion(+), 2 deletions(-) + +diff --git a/services/network/public/cpp/cors/cors_legacy.cc b/services/network/public/cpp/cors/cors_legacy.cc +index 8f32ac3be64e..f01af63619b5 100644 +--- a/services/network/public/cpp/cors/cors_legacy.cc ++++ b/services/network/public/cpp/cors/cors_legacy.cc +@@ -5,8 +5,6 @@ + #include "services/network/public/cpp/cors/cors_legacy.h" + + #include +-#include +-#include + + #include "url/gurl.h" + #include "url/url_util.h" +diff --git a/services/network/public/cpp/cors/cors_legacy.h b/services/network/public/cpp/cors/cors_legacy.h +index d2cdf026ca3a..dc9295a92c47 100644 +--- a/services/network/public/cpp/cors/cors_legacy.h ++++ b/services/network/public/cpp/cors/cors_legacy.h +@@ -5,6 +5,7 @@ + #ifndef SERVICES_NETWORK_PUBLIC_CPP_CORS_CORS_LEGACY_H_ + #define SERVICES_NETWORK_PUBLIC_CPP_CORS_CORS_LEGACY_H_ + ++#include + #include + + #include "base/component_export.h" +-- +2.17.1 + diff --git a/chromium-68.0.3440.84-libjpeg.patch b/chromium-68.0.3440.84-libjpeg.patch new file mode 100644 index 0000000..5354281 --- /dev/null +++ b/chromium-68.0.3440.84-libjpeg.patch @@ -0,0 +1,62 @@ +From c6b0194f7a4d9f494b2d51f46d2c332e2e5f4050 Mon Sep 17 00:00:00 2001 +From: Daniel Bratell +Date: Mon, 28 May 2018 13:13:01 +0000 +Subject: [PATCH] Use the same libjpeg in all of blink/platform + +The normal libjpeg renames some symbols with macros so if its +headers are included together with libjpeg-turbo's headers +in the same translation unit, there will be an inconsistent +renaming of libjpeg symbols. This happened in some extreme +jumbo configuration and resulted in confising linker errors. + +This patch changes an include so that jpeglib.h becomes included +the same way everywhere. + +Change-Id: I7f122d0919d58371bb40dc0097a766b857b9815e +Reviewed-on: https://chromium-review.googlesource.com/1073423 +Reviewed-by: Kentaro Hara +Commit-Queue: Daniel Bratell +Cr-Commit-Position: refs/heads/master@{#562243} +--- + .../renderer/platform/image-encoders/image_encoder.cc | 11 +++++++++++ + .../renderer/platform/image-encoders/image_encoder.h | 2 -- + 2 files changed, 11 insertions(+), 2 deletions(-) + +diff --git a/third_party/blink/renderer/platform/image-encoders/image_encoder.cc b/third_party/blink/renderer/platform/image-encoders/image_encoder.cc +index 0c7f14c7c0e4..4c450f5d6783 100644 +--- a/third_party/blink/renderer/platform/image-encoders/image_encoder.cc ++++ b/third_party/blink/renderer/platform/image-encoders/image_encoder.cc +@@ -4,6 +4,17 @@ + + #include "third_party/blink/renderer/platform/image-encoders/image_encoder.h" + ++#include "build/build_config.h" ++ ++#if defined(OS_WIN) ++#include // Included before jpeglib.h because of INT32 clash ++#endif // OS_WIN ++#include // Needed by jpeglib.h ++ ++#include "jpeglib.h" // for JPEG_MAX_DIMENSION ++ ++#include "third_party/libwebp/src/webp/encode.h" // for WEBP_MAX_DIMENSION ++ + namespace blink { + + bool ImageEncoder::Encode(Vector* dst, +diff --git a/third_party/blink/renderer/platform/image-encoders/image_encoder.h b/third_party/blink/renderer/platform/image-encoders/image_encoder.h +index 0d1460f34827..40306097d507 100644 +--- a/third_party/blink/renderer/platform/image-encoders/image_encoder.h ++++ b/third_party/blink/renderer/platform/image-encoders/image_encoder.h +@@ -7,8 +7,6 @@ + + #include "third_party/blink/renderer/platform/platform_export.h" + #include "third_party/blink/renderer/platform/wtf/vector.h" +-#include "third_party/libjpeg/jpeglib.h" // for JPEG_MAX_DIMENSION +-#include "third_party/libwebp/src/webp/encode.h" // for WEBP_MAX_DIMENSION + #include "third_party/skia/include/core/SkStream.h" + #include "third_party/skia/include/encode/SkJpegEncoder.h" + #include "third_party/skia/include/encode/SkPngEncoder.h" +-- +2.17.1 + diff --git a/chromium-68.0.3440.84-libwebp-shim.patch b/chromium-68.0.3440.84-libwebp-shim.patch new file mode 100644 index 0000000..cb387a4 --- /dev/null +++ b/chromium-68.0.3440.84-libwebp-shim.patch @@ -0,0 +1,43 @@ +diff --git a/build/linux/unbundle/libwebp.gn b/build/linux/unbundle/libwebp.gn +index ab92adecf400..12574d87be58 100644 +--- a/build/linux/unbundle/libwebp.gn ++++ b/build/linux/unbundle/libwebp.gn +@@ -2,12 +2,34 @@ + # 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_libwebp") { ++ packages = [ ++ "libwebp", ++ "libwebpdemux", ++ "libwebpmux", ++ ] ++} ++ ++shim_headers("libwebp_shim") { ++ root_path = "src" ++ headers = [ ++ "webp/decode.h", ++ "webp/demux.h", ++ "webp/encode.h", ++ "webp/mux.h", ++ "webp/mux_types.h", ++ "webp/types.h", ++ ] ++} ++ + source_set("libwebp_webp") { +- libs = [ +- "webp", +- "webpdemux", +- "webpmux", ++ deps = [ ++ ":libwebp_shim", + ] ++ public_configs = [ ":system_libwebp" ] + } + + group("libwebp") { diff --git a/chromium-68.0.3440.84-move-unique-ptr.patch b/chromium-68.0.3440.84-move-unique-ptr.patch new file mode 100644 index 0000000..2942a8f --- /dev/null +++ b/chromium-68.0.3440.84-move-unique-ptr.patch @@ -0,0 +1,65 @@ +From 56cb5f7da1025f6db869e840ed34d3b98b9ab899 Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Tue, 29 May 2018 16:04:14 +0000 +Subject: [PATCH] GCC: do not std::move unique ptr of forward declared UrlIndex +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +GCC fails to resolve the size of UrlIndex, needed +for moving a std::unique_ptr of UrlIndex. This is because +moved is done on a forward-declared UrlIndex. + +To avoid the problem, move the call to std::move to the .cc +file so the full declaration is available. + +Build error: +../../buildtools/third_party/libc++/trunk/include/memory: In instantiation of ‘void std::__1::default_delete<_Tp>::operator()(_Tp*) const [with _Tp = bookmarks::UrlIndex]’: +../../buildtools/third_party/libc++/trunk/include/memory:2634:22: required from ‘void std::__1::unique_ptr<_Tp, _Dp>::reset(std::__1::unique_ptr<_Tp, _Dp>::pointer) [with _Tp = bookmarks::UrlIndex; _Dp = std::__1::default_delete; std::__1::unique_ptr<_Tp, _Dp>::pointer = bookmarks::UrlIndex*]’ +../../buildtools/third_party/libc++/trunk/include/memory:2588:24: required from ‘std::__1::unique_ptr<_Tp, _Dp>::~unique_ptr() [with _Tp = bookmarks::UrlIndex; _Dp = std::__1::default_delete]’ +../../components/bookmarks/browser/bookmark_storage.h:107:76: required from here +../../buildtools/third_party/libc++/trunk/include/memory:2317:25: error: invalid application of ‘sizeof’ to incomplete type ‘bookmarks::UrlIndex’ + static_assert(sizeof(_Tp) > 0, + +Bug: 819294 +Change-Id: I793a807c28e797aaa2e31d9c8b7e09fb6ca6b9e7 +Reviewed-on: https://chromium-review.googlesource.com/1071648 +Commit-Queue: Scott Violet +Reviewed-by: Scott Violet +Cr-Commit-Position: refs/heads/master@{#562446} +--- + components/bookmarks/browser/bookmark_storage.cc | 4 ++++ + components/bookmarks/browser/bookmark_storage.h | 2 +- + 2 files changed, 5 insertions(+), 1 deletion(-) + +diff --git a/components/bookmarks/browser/bookmark_storage.cc b/components/bookmarks/browser/bookmark_storage.cc +index 1633ba1df2a4..3ae0c62292e7 100644 +--- a/components/bookmarks/browser/bookmark_storage.cc ++++ b/components/bookmarks/browser/bookmark_storage.cc +@@ -158,6 +158,10 @@ void BookmarkLoadDetails::CreateUrlIndex() { + url_index_ = std::make_unique(std::move(root_node_)); + } + ++std::unique_ptr BookmarkLoadDetails::owned_url_index() { ++ return std::move(url_index_); ++} ++ + BookmarkPermanentNode* BookmarkLoadDetails::CreatePermanentNode( + BookmarkClient* client, + BookmarkNode::Type type) { +diff --git a/components/bookmarks/browser/bookmark_storage.h b/components/bookmarks/browser/bookmark_storage.h +index 08df5bb65d83..0a1b1a1b65b9 100644 +--- a/components/bookmarks/browser/bookmark_storage.h ++++ b/components/bookmarks/browser/bookmark_storage.h +@@ -104,7 +104,7 @@ class BookmarkLoadDetails { + bool ids_reassigned() const { return ids_reassigned_; } + + void CreateUrlIndex(); +- std::unique_ptr owned_url_index() { return std::move(url_index_); } ++ std::unique_ptr owned_url_index(); + + private: + // Creates one of the possible permanent nodes (bookmark bar node, other node +-- +2.17.1 + diff --git a/chromium-latest.py b/chromium-latest.py index c77899d..87889ad 100755 --- a/chromium-latest.py +++ b/chromium-latest.py @@ -256,6 +256,9 @@ if __name__ == '__main__': parser_add_argument( '--version', help='Download a specific version of Chromium') + parser_add_argument( + '--naclvers', + help='Display the commit versions of nacl toolchain components') # Parse the args if optparse: @@ -307,7 +310,8 @@ if __name__ == '__main__': print "%s is possibly corrupted, exiting." % (latest) sys.exit(1) - nacl_versions(chromium_version) + if (args.naclvers): + nacl_versions(chromium_version) if (args.cleansources): junk_dirs = ['third_party/WebKit/Tools/Scripts/webkitpy/layout_tests', diff --git a/chromium.spec b/chromium.spec index 6fe07a6..c674cad 100644 --- a/chromium.spec +++ b/chromium.spec @@ -31,9 +31,9 @@ %global __provides_exclude_from %{chromium_path}/.*\\.so|%{chromium_path}/lib/.*\\.so|%{chromium_path}/lib/.*\\.so.* %if 0%{?rhel} == 7 -%global privlibs libaccessibility|libanimation|libapdu|libaura_extra|libaura|libbase_i18n|libbase|libbindings_base|libbindings|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core_mojo_bindings_shared|libblink_core|libblink_modules|libblink_mojo_bindings_shared|libblink_offscreen_canvas_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcbor|libcc_animation|libcc_base|libcc_blink|libcc_debug|libcc_ipc|libcc_paint|libcc|libcdm_manager|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent|libcrash_key|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevices|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevice_vr_mojo_bindings|libdevice_vr|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libembedder|libembedder_switches|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents|libevents_x|libffmpeg|libfido|libfingerprint|libfreetype_harfbuzz|libgcm|libgeolocation|libgeometry_skia|libgeometry|libgesture_detection|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_switches|libgfx_x11|libgin|libgles2_implementation|libgles2|libgles2_utils|libGLESv2|libgl_init|libgl_in_process_context|libgl_wrapper|libgpu_ipc_service|libgpu|libgpu_util|libgtk3ui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc_mojom_shared|libipc_mojom|libipc|libkeyboard|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libleveldatabase|libmanager|libmedia_blink|libmedia_devices_mojo_bindings_shared|libmedia_gpu|libmedia_mojo_services|libmedia|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirclient|libmojo_base_lib|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_mojom|libmojo_base_shared_typemap_traits|libmojo_edk_ports|libmojo_edk|libmojo_ime_lib|libmojom_core_shared|libmojo_mojom_bindings_shared|libmojo_mojom_bindings|libmojom_platform_shared|libmojo_public_system_cpp|libmojo_public_system|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp_base|libnetwork_cpp|libnetwork_service|libnetwork_session_configurator|libonc|libplatform|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp_base|libresource_coordinator_cpp|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libresource_coordinator_public_mojom|libsandbox_services|libsandbox|libseccomp_bpf|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom_blink|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_constants|libservice_manager_mojom_shared|libservice_manager_mojom|libservice|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing_cpp|libtracing_mojom_shared|libtracing_mojom|libtracing|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libuser_manager|libuser_prefs|libv8_libbase|libv8_libplatform|libv8|libviews|libviz_common|libviz_resource_format|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_threading|libVkLayer_unique_objects|libwebdata_common|libweb_dialogs|libwebview|libwm_public|libwm|libwtf|libx11_events_platform|libx11_window|libbase|libEGL|libGLESv2|libfontconfig +%global privlibs libaccessibility|libanimation|libapdu|libaura_extra|libaura|libbase_i18n|libbase|libbindings_base|libbindings|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core_mojo_bindings_shared|libblink_core|libblink_modules|libblink_mojo_bindings_shared|libblink_offscreen_canvas_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcbor|libcc_animation|libcc_base|libcc_blink|libcc_debug|libcc_ipc|libcc_paint|libcc|libcdm_manager|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent|libcrash_key|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevices|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevice_vr_mojo_bindings|libdevice_vr|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libembedder|libembedder_switches|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents|libevents_x|libffmpeg|libfido|libfingerprint|libfreetype_harfbuzz|libgcm|libgeolocation|libgeometry_skia|libgeometry|libgesture_detection|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_switches|libgfx_x11|libgin|libgles2_implementation|libgles2|libgles2_utils|libGLESv2|libgl_init|libgl_in_process_context|libgl_wrapper|libgpu_ipc_service|libgpu|libgpu_util|libgtk3ui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc_mojom_shared|libipc_mojom|libipc|libkeyboard|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libleveldatabase|libmanager|libmedia_blink|libmedia_devices_mojo_bindings_shared|libmedia_gpu|libmedia_mojo_services|libmedia|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirclient|libmojo_base_lib|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_mojom|libmojo_base_shared_typemap_traits|libmojo_edk_ports|libmojo_edk|libmojo_ime_lib|libmojom_core_shared|libmojo_mojom_bindings_shared|libmojo_mojom_bindings|libmojom_platform_shared|libmojo_public_system_cpp|libmojo_public_system|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp_base|libnetwork_cpp|libnetwork_service|libnetwork_session_configurator|libonc|libplatform|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp_base|libresource_coordinator_cpp|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libresource_coordinator_public_mojom|libsandbox_services|libsandbox|libseccomp_bpf|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom_blink|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_constants|libservice_manager_mojom_shared|libservice_manager_mojom|libservice|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing_cpp|libtracing_mojom_shared|libtracing_mojom|libtracing|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libuser_manager|libuser_prefs|libv8_libbase|libv8_libplatform|libv8|libviews|libviz_common|libviz_resource_format|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_threading|libVkLayer_unique_objects|libwebdata_common|libweb_dialogs|libwebview|libwm_public|libwm|libwtf|libx11_events_platform|libx11_window|libbase|libEGL|libGLESv2|libfontconfig|libzygote %else -%global privlibs libaccessibility|libanimation|libapdu|libaura_extra|libaura|libbase_i18n|libbase|libbindings_base|libbindings|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core_mojo_bindings_shared|libblink_core|libblink_modules|libblink_mojo_bindings_shared|libblink_offscreen_canvas_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcbor|libcc_animation|libcc_base|libcc_blink|libcc_debug|libcc_ipc|libcc_paint|libcc|libcdm_manager|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent|libcrash_key|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevices|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevice_vr_mojo_bindings|libdevice_vr|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libembedder|libembedder_switches|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents|libevents_x|libffmpeg|libfido|libfingerprint|libfreetype_harfbuzz|libgcm|libgeolocation|libgeometry_skia|libgeometry|libgesture_detection|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_switches|libgfx_x11|libgin|libgles2_implementation|libgles2|libgles2_utils|libGLESv2|libgl_init|libgl_in_process_context|libgl_wrapper|libgpu_ipc_service|libgpu|libgpu_util|libgtk3ui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc_mojom_shared|libipc_mojom|libipc|libkeyboard|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libleveldatabase|libmanager|libmedia_blink|libmedia_devices_mojo_bindings_shared|libmedia_gpu|libmedia_mojo_services|libmedia|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirclient|libmojo_base_lib|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_mojom|libmojo_base_shared_typemap_traits|libmojo_edk_ports|libmojo_edk|libmojo_ime_lib|libmojom_core_shared|libmojo_mojom_bindings_shared|libmojo_mojom_bindings|libmojom_platform_shared|libmojo_public_system_cpp|libmojo_public_system|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp_base|libnetwork_cpp|libnetwork_service|libnetwork_session_configurator|libonc|libplatform|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp_base|libresource_coordinator_cpp|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libresource_coordinator_public_mojom|libsandbox_services|libsandbox|libseccomp_bpf|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom_blink|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_constants|libservice_manager_mojom_shared|libservice_manager_mojom|libservice|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing_cpp|libtracing_mojom_shared|libtracing_mojom|libtracing|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libuser_manager|libuser_prefs|libv8_libbase|libv8_libplatform|libv8|libviews|libviz_common|libviz_resource_format|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_threading|libVkLayer_unique_objects|libwebdata_common|libweb_dialogs|libwebview|libwm_public|libwm|libwtf|libx11_events_platform|libx11_window|libbase|libEGL|libGLESv2 +%global privlibs libaccessibility|libanimation|libapdu|libaura_extra|libaura|libbase_i18n|libbase|libbindings_base|libbindings|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core_mojo_bindings_shared|libblink_core|libblink_modules|libblink_mojo_bindings_shared|libblink_offscreen_canvas_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcbor|libcc_animation|libcc_base|libcc_blink|libcc_debug|libcc_ipc|libcc_paint|libcc|libcdm_manager|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent|libcrash_key|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevices|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevice_vr_mojo_bindings|libdevice_vr|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libembedder|libembedder_switches|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents|libevents_x|libffmpeg|libfido|libfingerprint|libfreetype_harfbuzz|libgcm|libgeolocation|libgeometry_skia|libgeometry|libgesture_detection|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_switches|libgfx_x11|libgin|libgles2_implementation|libgles2|libgles2_utils|libGLESv2|libgl_init|libgl_in_process_context|libgl_wrapper|libgpu_ipc_service|libgpu|libgpu_util|libgtk3ui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc_mojom_shared|libipc_mojom|libipc|libkeyboard|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libleveldatabase|libmanager|libmedia_blink|libmedia_devices_mojo_bindings_shared|libmedia_gpu|libmedia_mojo_services|libmedia|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirclient|libmojo_base_lib|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_mojom|libmojo_base_shared_typemap_traits|libmojo_edk_ports|libmojo_edk|libmojo_ime_lib|libmojom_core_shared|libmojo_mojom_bindings_shared|libmojo_mojom_bindings|libmojom_platform_shared|libmojo_public_system_cpp|libmojo_public_system|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp_base|libnetwork_cpp|libnetwork_service|libnetwork_session_configurator|libonc|libplatform|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp_base|libresource_coordinator_cpp|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libresource_coordinator_public_mojom|libsandbox_services|libsandbox|libseccomp_bpf|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom_blink|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_constants|libservice_manager_mojom_shared|libservice_manager_mojom|libservice|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing_cpp|libtracing_mojom_shared|libtracing_mojom|libtracing|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libuser_manager|libuser_prefs|libv8_libbase|libv8_libplatform|libv8|libviews|libviz_common|libviz_resource_format|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_threading|libVkLayer_unique_objects|libwebdata_common|libweb_dialogs|libwebview|libwm_public|libwm|libwtf|libx11_events_platform|libx11_window|libbase|libEGL|libGLESv2|libzygote %endif %global __requires_exclude ^(%{privlibs})\\.so* @@ -132,15 +132,15 @@ BuildRequires: libicu-devel >= 5.4 %global chromoting_client_id %nil %endif -%global majorversion 67 +%global majorversion 68 %if %{freeworld} Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3396.99 -Release: 2%{?dist} +Version: %{majorversion}.0.3440.106 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -149,7 +149,7 @@ License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and Open Patch0: chromium-67.0.3396.62-gcc5.patch Patch1: chromium-45.0.2454.101-linux-path-max.patch Patch2: chromium-55.0.2883.75-addrfix.patch -Patch4: chromium-46.0.2490.71-notest.patch +Patch4: chromium-68.0.3440.106-notest.patch # In file included from ../linux/directory.c:21: # In file included from ../../../../native_client/src/nonsfi/linux/abi_conversion.h:20: # ../../../../native_client/src/nonsfi/linux/linux_syscall_structs.h:44:13: error: GNU-style inline assembly is disabled @@ -167,7 +167,7 @@ Patch12: chromium-55.0.2883.75-cups22.patch # Use PIE in the Linux sandbox (from openSUSE via Russian Fedora) Patch15: chromium-55.0.2883.75-sandbox-pie.patch # Use /etc/chromium for master_prefs -Patch18: chromium-52.0.2743.82-master-prefs-path.patch +Patch18: chromium-68.0.3440.106-master-prefs-path.patch # Disable MADV_FREE (if set by glibc) # https://bugzilla.redhat.com/show_bug.cgi?id=1361157 Patch19: chromium-52.0.2743.116-unset-madv_free.patch @@ -186,7 +186,7 @@ Patch25: chromium-54.0.2840.59-jpeg-include-dir.patch Patch26: chromium-59.0.3071.86-i686-ld-memory-tricks.patch # obj/content/renderer/renderer/child_frame_compositing_helper.o: In function `content::ChildFrameCompositingHelper::OnSetSurface(cc::SurfaceId const&, gfx::Size const&, float, cc::SurfaceSequence const&)': # /builddir/build/BUILD/chromium-54.0.2840.90/out/Release/../../content/renderer/child_frame_compositing_helper.cc:214: undefined reference to `cc_blink::WebLayerImpl::setOpaque(bool)' -Patch27: chromium-63.0.3289.84-setopaque.patch +# Patch27: chromium-63.0.3289.84-setopaque.patch # Use -fpermissive to build WebKit # Patch31: chromium-56.0.2924.87-fpermissive.patch # Fix issue with compilation on gcc7 @@ -225,7 +225,7 @@ Patch65: chromium-65.0.3325.146-gcc-round-fix.patch # Include proper headers to invoke memcpy() Patch67: chromium-65.0.3325.146-memcpy-fix.patch # ../../mojo/public/cpp/bindings/associated_interface_ptr_info.h:48:43: error: cannot convert 'const mojo::ScopedInterfaceEndpointHandle' to 'bool' in return -Patch85: chromium-67.0.3396.62-boolfix.patch +Patch85: chromium-68.0.3440.106-boolfix.patch # From Debian Patch86: chromium-67.0.3396.62-skia-aarch64-buildfix.patch # Use lstdc++ on EPEL7 only @@ -258,11 +258,23 @@ Patch99: chromium-67.0.3396.62-crashpad-aarch64-buildfix.patch # https://bugs.python.org/issue21591 Patch100: chromium-67.0.3396.62-epel7-use-old-python-exec-syntax.patch # Add "Fedora" to the user agent string -Patch101: chromium-67.0.3396.87-fedora-user-agent.patch +Patch101: chromium-68.0.3440.106-fedora-user-agent.patch # Try to fix version.py for Rawhide Patch102: chromium-67.0.3396.99-py3fix.patch Patch103: chromium-67.0.3396.99-py2-bootstrap.patch - +# ERROR at //extensions/browser/api/networking_private/BUILD.gn:15:5: Undefined identifier +# "networking_cast_private_delegate.cc", +# ^------------------------------------ +# https://chromium.googlesource.com/chromium/src/+/abde0a4bd9f3bfddebe825cc25cc3bc857e3d088%5E%21/#F1 +Patch104: chromium-68.0.3440.106-fix-build-networking_private.patch +# CORS legacy: add missing string include +Patch105: chromium-68.0.3440.84-cors-string.patch +# Fix libjpeg include handling +Patch106: chromium-68.0.3440.84-libjpeg.patch +# Fix webp bundling shim +Patch107: chromium-68.0.3440.84-libwebp-shim.patch +# GCC: do not std::move unique ptr of forward declared UrlIndex +Patch108: chromium-68.0.3440.84-move-unique-ptr.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ @@ -735,7 +747,7 @@ udev. %patch24 -p1 -b .nullfix %patch25 -p1 -b .jpegfix %patch26 -p1 -b .ldmemory -%patch27 -p1 -b .setopaque +# %%patch27 -p1 -b .setopaque # %%patch31 -p1 -b .permissive # %%patch33 -p1 -b .gcc7 %patch36 -p1 -b .revert @@ -780,6 +792,11 @@ udev. %patch101 -p1 -b .fedora-user-agent %patch102 -p1 -b .py3fix %patch103 -p1 -b .py2 +%patch104 -p1 -b .fixb +%patch105 -p1 -b .cors +%patch106 -p1 -b .libjpeg +%patch107 -p1 -b .webp +%patch108 -p1 -b .move-unique-ptr # Change shebang in all relevant files in this directory and all subdirectories @@ -963,7 +980,7 @@ CHROMIUM_BROWSER_GN_DEFINES+=' is_component_ffmpeg=false is_component_build=fals %endif CHROMIUM_BROWSER_GN_DEFINES+=' remove_webcore_debug_symbols=true enable_hangout_services_extension=true' CHROMIUM_BROWSER_GN_DEFINES+=' use_aura=true' -CHROMIUM_BROWSER_GN_DEFINES+=' enable_webrtc=true' +# CHROMIUM_BROWSER_GN_DEFINES+=' enable_webrtc=true' %if 0%{gtk3} CHROMIUM_BROWSER_GN_DEFINES+=' use_gtk3=true' %else @@ -999,8 +1016,11 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'base/third_party/xdg_user_dirs' \ 'chrome/third_party/mozilla_security_manager' \ 'courgette/third_party' \ + 'net/third_party/http2' \ 'net/third_party/mozilla_security_manager' \ 'net/third_party/nss' \ + 'net/third_party/quic' \ + 'net/third_party/spdy' \ 'third_party/WebKit' \ 'third_party/adobe' \ 'third_party/analytics' \ @@ -1066,7 +1086,6 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/libXNVCtrl' \ 'third_party/libaddressinput' \ 'third_party/libaom' \ - 'third_party/libaom/source/libaom/third_party/x86inc' \ 'third_party/libdrm' \ 'third_party/libjingle' \ 'third_party/libjpeg_turbo' \ @@ -1074,6 +1093,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/libpng' \ 'third_party/libsecret' \ 'third_party/libsrtp' \ + 'third_party/libsync' \ 'third_party/libudev' \ 'third_party/libusb' \ 'third_party/libvpx' \ @@ -1113,20 +1133,24 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/pdfium/third_party/libpng16' \ 'third_party/pdfium/third_party/libtiff' \ 'third_party/pdfium/third_party/skia_shared' \ + 'third_party/perfetto' \ 'third_party/ply' \ 'third_party/polymer' \ 'third_party/protobuf' \ 'third_party/protobuf/third_party/six' \ + 'third_party/pyjson5' \ 'third_party/qcms' \ 'third_party/qunit' \ %if 0%{?bundlere2} 'third_party/re2' \ %endif + 'third_party/rnnoise' \ 'third_party/s2cellid' \ 'third_party/sfntly' \ 'third_party/sinonjs' \ 'third_party/skia' \ 'third_party/skia/third_party/gif' \ + 'third_party/skia/third_party/skcms' \ 'third_party/skia/third_party/vulkan' \ 'third_party/smhasher' \ 'third_party/snappy' \ @@ -1156,6 +1180,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'url/third_party/mozilla' \ 'v8/src/third_party/utf8-decoder' \ 'v8/src/third_party/valgrind' \ + 'v8/third_party/antlr4' \ 'v8/third_party/inspector_protocol' \ --do-remove @@ -1714,6 +1739,15 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Thu Aug 9 2018 Tom Callaway - 68.0.3440.106-1 +- update to 68.0.3440.106 + +* Wed Aug 8 2018 Tom Callaway - 68.0.3440.84-1 +- update to 68.0.3440.84 + +* Mon Jul 30 2018 Tom Callaway - 68.0.3440.75-1 +- update to 68.0.3440.75 + * Thu Jul 12 2018 Fedora Release Engineering - 67.0.3396.99-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index 7c63d50..aea5295 100755 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -107,6 +107,7 @@ header_files=" libavcodec/x86/inline_asm.h \ libavcodec/mpegpicture.h \ libavcodec/mpegutils.h \ libavcodec/mpegvideo.h \ + libavcodec/mpegvideodata.h \ libavcodec/mpegvideodsp.h \ libavcodec/mpegvideoencdsp.h \ libavcodec/options_table.h \ @@ -304,7 +305,6 @@ other_files=" BUILD.gn \ CREDITS.chromium \ ffmpeg_generated.gni \ ffmpeg_options.gni \ - ffmpegsumo.ver \ INSTALL.md \ LICENSE.md \ MAINTAINERS \ diff --git a/sources b/sources index 8e00335..5c21bc7 100644 --- a/sources +++ b/sources @@ -15,4 +15,4 @@ SHA512 (Tinos-BoldItalic.ttf) = 2574de2add94ef976b731fac688951fab49574c9b0ccd259 SHA512 (Tinos-Bold.ttf) = 54aeca804c06a4d5c57ade596e73df91a6a1c4401c4aadba55d987b3fb73045d35f3df02678b59abb77c4914ec741755536c0adf808c931e4b77848c52c229c4 SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0e22a16414278217f37497b904a18540273c0e2d79d4f1faabde3b0eb5446283b318c73bafb38 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f -SHA512 (chromium-67.0.3396.99-clean.tar.xz) = b83d2d2f50bf6e5ce70baecf3f59f50fb7d69339c2f16aea30111650b8d0ccaf051bd1873fe63f94146212b60d59aa72c73bd8f9d96b2e27e3f354b75ba82ba4 +SHA512 (chromium-68.0.3440.106-clean.tar.xz) = a609975c96674f3a84a33bb3d57271535671e11d0775efeceff4f8a965851216038cf491281aaab0cc64c6e99af033f9c8a93f759f232e8c686408dbc09c8dd5 From 9ac9791f7dc280489a918e8da56fa0f296783c71 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 10 Aug 2018 08:56:11 -0400 Subject: [PATCH 0229/1449] add Ahem font --- .gitignore | 1 + chromium.spec | 2 ++ sources | 1 + 3 files changed, 4 insertions(+) diff --git a/.gitignore b/.gitignore index b6aec29..da9b487 100644 --- a/.gitignore +++ b/.gitignore @@ -66,3 +66,4 @@ /chromium-67.0.3396.87-clean.tar.xz /chromium-67.0.3396.99-clean.tar.xz /chromium-68.0.3440.106-clean.tar.xz +/Ahem.ttf diff --git a/chromium.spec b/chromium.spec index c674cad..5bd38a6 100644 --- a/chromium.spec +++ b/chromium.spec @@ -304,6 +304,7 @@ Source13: master_preferences # Unpackaged fonts Source14: https://fontlibrary.org/assets/downloads/gelasio/4d610887ff4d445cbc639aae7828d139/gelasio.zip Source15: http://download.savannah.nongnu.org/releases/freebangfont/MuktiNarrow-0.94.tar.bz2 +Source16: https://github.com/web-platform-tests/wpt/raw/master/fonts/Ahem.ttf # We can assume gcc and binutils. BuildRequires: gcc-c++ @@ -918,6 +919,7 @@ unzip %{SOURCE14} tar xf %{SOURCE15} mv MuktiNarrow0.94/MuktiNarrow.ttf . rm -rf MuktiNarrow0.94 +cp %{SOURCE16} . %if 0%{?rhel} == 7 cp %{SOURCE100} . cp %{SOURCE101} . diff --git a/sources b/sources index 5c21bc7..d81fedb 100644 --- a/sources +++ b/sources @@ -16,3 +16,4 @@ SHA512 (Tinos-Bold.ttf) = 54aeca804c06a4d5c57ade596e73df91a6a1c4401c4aadba55d987 SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0e22a16414278217f37497b904a18540273c0e2d79d4f1faabde3b0eb5446283b318c73bafb38 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (chromium-68.0.3440.106-clean.tar.xz) = a609975c96674f3a84a33bb3d57271535671e11d0775efeceff4f8a965851216038cf491281aaab0cc64c6e99af033f9c8a93f759f232e8c686408dbc09c8dd5 +SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd From 65058cdc673d9eef2966ab8d8cc8e9a64791ffd8 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 14 Aug 2018 12:58:46 -0400 Subject: [PATCH 0230/1449] add Public Domain GardinerMod fonts --- GardinerModBug.ttf | Bin 0 -> 2864 bytes GardinerModCat.ttf | Bin 0 -> 2296 bytes chromium.spec | 5 +++++ 3 files changed, 5 insertions(+) create mode 100644 GardinerModBug.ttf create mode 100644 GardinerModCat.ttf diff --git a/GardinerModBug.ttf b/GardinerModBug.ttf new file mode 100644 index 0000000000000000000000000000000000000000..09f4c3e10f7d3e668dc1181ef4d5155f5295a1ff GIT binary patch literal 2864 zcmds3Yit}>75>hh$K9FT+4s(@sw!SmC4>a(kE8*q0#t#7K#IyMKY08>@fzLn27*K- zeshjS_tQD|p8K6|u5>R5fPv>A;ZVJP?7(8@$MZli2_W&?4iicYkct50h1tt18yk>-U~}RUTmy%|Lp;wMFDzuW%=@z=02nV{ZAqf(VN0Pv;VLA-#s1K`F8{Z5O(i%Bm1v$ zqWO8HU3n<@g86BPb!xp?2b47tQQG}VkDKgAWO{(~P&hK7-l&0TUjs$P+x5{Ft)L=v9ZZPt$Wrh=oUk`@;s+o@Gc<&@)k+_9a4?QyrjU9V89dTNB6 z2#HM9aXn`jd9LssRB&9+&fBV;uT@24lv1N)jglp{sd`o?rIOsU7_YcqRa9~-i`X348qp6LnpNp4%J=)-p|+%cu9SeD9j(W#?4+$WhzS|%6M zQnux}Jq1UstEt>6INWyf+^m$Xs^4#=?D#sFDU}N&>`pKW-h;^c0QIAyh-Jj8zIXjQOvYl679I2!apVk?rB$f#E1g`;w}naW$qV zNDj3<6P7!-Wt7C;NUsqwy3J5qF_s;nK(Z!>bc4!@VFZ?pjv`OB=QFBfg#&hk+hc)r z;&)S*tR6O8EgFVyDse4aIL13OYi&pOO|-`%VQHC^U{4@u4eFg155~A#Y5RUOoHX0= z+Me)0MjKFzA$|DvP$3kP!byr6B||m}k{lpqZ|%vcFG}B3o9{@Hq^bt7bcZdU4#dlo zorP0sP}1c}vZ#mJ7)e_?+EWzR-`9UIn>};b`i-WkOfN_>XByj;mv(AePj3B7jMz)I zp&0V|B?=Ksn#ORul+HTd+1<(uu|4eAwkLMK`s~Q`SatE#!8b;-iCCIECzb!i2iRBU z)qok0r-LO$>MY7Cm*i-c$0Hrh$*!+;1;-=ZckJeO`wYd%#T1#=)9JjK3-vd(Cx|2p zN!s(I5i7?Hl7gJ#fskel+#;G#RsPaw?}5Y4iK!_*p5S}pr;DPS`MGq;;HVQ@nnRBXL7M_*=nx8eK;7fwbIlP+3r$%pSck@ zIsM72hq9d+o-m%@qEI?9)g84A>Dk1*5m72PZ^Z1}))9-FooatD+Y_$Ey$|>wXtx1u4hE9x6s!X~*63h1-wrgBcb(!@jA!Tm)N=3t=F*V-S{+*jnDoji34+CG-&A`l1^N+`N$MlAIbVbrN)kqp=!k$%U zfn!^g=I?jv@9YY)RGS$H_eV9YY0FYCOVF=NM2u85{ibAS{Ln!yCeyyN5)1O_6VB%C z6~?z7yUSP$6M}g34q)K$T5$;lyx77rg1FPd3PSix3#$lIhq#4ht#v_eVuA^&g&D$d zT3EtU7;Rx0Cf;aa1!?@Ug;iv*A*xMc7OR-UB9_p=Dh^;7bHL>6>fGW|WA(uD9B>2; zEMN^6{JA*NSXjF-y9(5?j3r$0$5kw#fgH*hLJ>J^NA7)UZ|2Gvgo{CxQA7zmBl51><4i8$aHBA>&6ZP z2HV(;TiHq&a8>=lV*;am)XHmzh&q7?NcxK1ZC=9d!q`ScrBovsfa2qLDaBkc_zh z3RjwfYP>xWk16p)K4)gb*^HGimRmR^Ht=}NP~thuw6+rA%I7RIpNq#5R>HC;mS|zk zGPB{35mv$)SHjv#Gc7ZlAvuF90%#`5#bbh0;UP6FqV+6uXj_TRlQ&tw;7S`&x(N@d zT3E|wER(HBN*Ib^=5vORXhzO593suq6hkq>S~e6{R80i3wTDzquxldLaxRJ%*A$`F zR-Mlo3B%IFOoV4*GY_dGVThz{o^GNM#hxY%Gn?T{g>(C#>A!YoK#|?gDnsjsTlatX zYLrk{_3j-cX51Pug1)8~i!IsKShKEobR^&NZ)a3mSLmNpLM_efqf%$Ghf6NTD2wNN zI{S{E7`|;!YV_dd%J0F1>f+qr+^9&O7PVaqyGI8LZ}bOzo}YHOJnr5DBdIe%m3;JM zKI_B6D9f@&0Sxrr3szd9*E}(JN~# zGf%1H`Qt||*qR-js#IR8^Rwq3I_ZzG-9zm`KXp@j%|lLpuiwo2I&*U6@$q|;lV+6h z;!yimb4z-DIzyG68~VFi7Lxw8ZB%Nc2NOOjC)OGbP1;6(lDH$ZFgWt)!aZwt4yf)k z4@ZtarybCei_b?k1zQ4?seY=qem1c=;%QB^xeHRdqj$?NJ$3Dg`xg$4Z9H|Tb~d;% z=2c14dc`ZB33+&cH(CIEIJ@diq7Ei#z*+}WD6kyNkiZiTme7Fn4wm7?&kpABkyi1V zN-MAaGA0OvIheu+!@&%-0~M+RL;Lq{L<>u@joGDyKh z3K^u)gB(ztov9XQE8}H7)0Niy^i>M Date: Tue, 14 Aug 2018 16:32:41 -0400 Subject: [PATCH 0231/1449] fix aarch64 compile --- ...res_2d_i16_neon-Make-s2-a-uint64x1_t.patch | 54 +++++++++++++++++++ chromium.spec | 3 ++ 2 files changed, 57 insertions(+) create mode 100644 0001-vpx_sum_squares_2d_i16_neon-Make-s2-a-uint64x1_t.patch diff --git a/0001-vpx_sum_squares_2d_i16_neon-Make-s2-a-uint64x1_t.patch b/0001-vpx_sum_squares_2d_i16_neon-Make-s2-a-uint64x1_t.patch new file mode 100644 index 0000000..f73ded3 --- /dev/null +++ b/0001-vpx_sum_squares_2d_i16_neon-Make-s2-a-uint64x1_t.patch @@ -0,0 +1,54 @@ +Upstream-Status: Submitted + +GCC aarch64 build fix [this is actually a libvpx patch, not a Chromium one] + +Sent to: https://chromium-review.googlesource.com/c/webm/libvpx/+/1136449 + +Signed-off-by: Raphael Kubo da Costa +--- +From c20bd394f18c47bf133b51d6a40399273c3f24e0 Mon Sep 17 00:00:00 2001 +From: Raphael Kubo da Costa +Date: Fri, 13 Jul 2018 14:29:09 +0200 +Subject: [PATCH] vpx_sum_squares_2d_i16_neon(): Make |s2| a uint64x1_t. + +This fixes the build with at least GCC 7.3, where it was previously failing +with: + +../../third_party/libvpx/source/libvpx/vpx_dsp/arm/sum_squares_neon.c: In function 'vpx_sum_squares_2d_i16_neon': +../../third_party/libvpx/source/libvpx/vpx_dsp/arm/sum_squares_neon.c:34:5: note: use -flax-vector-conversions to permit conversions between vectors with differing element types or numbers of subparts + s2 = vpaddl_u32(s1); + ^~ +../../third_party/libvpx/source/libvpx/vpx_dsp/arm/sum_squares_neon.c:34:8: error: incompatible types when assigning to type 'int64x1_t' from type 'uint64x1_t' + s2 = vpaddl_u32(s1); + ^ +../../third_party/libvpx/source/libvpx/vpx_dsp/arm/sum_squares_neon.c:81:8: error: incompatible types when assigning to type 'int64x1_t' from type 'uint64x1_t' + s2 = vadd_u64(vget_low_u64(s1), vget_high_u64(s1)); + ^ +../../third_party/libvpx/source/libvpx/vpx_dsp/arm/sum_squares_neon.c:84:24: error: incompatible type for argument 1 of 'vget_lane_u64' + return vget_lane_u64(s2, 0); + ^~ + +The generated assembly was verified to remain identical with both GCC and +LLVM. + +Change-Id: I2778428ee1fee0a674d0d4910347c2a717de21ac +--- + vpx_dsp/arm/sum_squares_neon.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/vpx_dsp/arm/sum_squares_neon.c b/vpx_dsp/arm/sum_squares_neon.c +index 8942ba83b..cfefad993 100644 +--- a/third_party/libvpx/source/libvpx/vpx_dsp/arm/sum_squares_neon.c ++++ b/third_party/libvpx/source/libvpx/vpx_dsp/arm/sum_squares_neon.c +@@ -14,7 +14,7 @@ + #include "./vpx_dsp_rtcd.h" + + uint64_t vpx_sum_squares_2d_i16_neon(const int16_t *src, int stride, int size) { +- int64x1_t s2; ++ uint64x1_t s2; + + if (size == 4) { + int16x4_t s[4]; +-- +2.14.4 + diff --git a/chromium.spec b/chromium.spec index a36d54d..2ec53dc 100644 --- a/chromium.spec +++ b/chromium.spec @@ -275,6 +275,8 @@ Patch106: chromium-68.0.3440.84-libjpeg.patch Patch107: chromium-68.0.3440.84-libwebp-shim.patch # GCC: do not std::move unique ptr of forward declared UrlIndex Patch108: chromium-68.0.3440.84-move-unique-ptr.patch +# https://github.com/OSSystems/meta-browser/blob/master/recipes-browser/chromium/files/0001-vpx_sum_squares_2d_i16_neon-Make-s2-a-uint64x1_t.patch +Patch109: 0001-vpx_sum_squares_2d_i16_neon-Make-s2-a-uint64x1_t.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ @@ -801,6 +803,7 @@ udev. %patch106 -p1 -b .libjpeg %patch107 -p1 -b .webp %patch108 -p1 -b .move-unique-ptr +%patch109 -p1 -b .aarch64-int64x1_t # Change shebang in all relevant files in this directory and all subdirectories From 4cfe27ecef78cb0e873bf2004a7de6d745ce0db7 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 17 Aug 2018 14:59:05 -0400 Subject: [PATCH 0232/1449] Fix default on redeclaration error --- ...440.106-fix-default-on-redeclaration.patch | 30 +++++++++++++++++++ chromium.spec | 9 +++++- 2 files changed, 38 insertions(+), 1 deletion(-) create mode 100644 chromium-68.0.3440.106-fix-default-on-redeclaration.patch diff --git a/chromium-68.0.3440.106-fix-default-on-redeclaration.patch b/chromium-68.0.3440.106-fix-default-on-redeclaration.patch new file mode 100644 index 0000000..4a92fba --- /dev/null +++ b/chromium-68.0.3440.106-fix-default-on-redeclaration.patch @@ -0,0 +1,30 @@ +diff -up chromium-68.0.3440.106/components/search_provider_logos/logo_common.cc.122692c chromium-68.0.3440.106/components/search_provider_logos/logo_common.cc +--- chromium-68.0.3440.106/components/search_provider_logos/logo_common.cc.122692c 2018-08-17 14:54:30.587338865 -0400 ++++ chromium-68.0.3440.106/components/search_provider_logos/logo_common.cc 2018-08-17 14:55:20.461184298 -0400 +@@ -14,22 +14,22 @@ LogoMetadata::LogoMetadata() = default; + LogoMetadata::LogoMetadata(const LogoMetadata&) = default; + LogoMetadata::LogoMetadata(LogoMetadata&&) noexcept = default; + LogoMetadata& LogoMetadata::operator=(const LogoMetadata&) = default; +-LogoMetadata& LogoMetadata::operator=(LogoMetadata&&) noexcept = default; ++LogoMetadata& LogoMetadata::operator=(LogoMetadata&&) = default; + LogoMetadata::~LogoMetadata() = default; + + EncodedLogo::EncodedLogo() = default; + EncodedLogo::EncodedLogo(const EncodedLogo&) = default; + EncodedLogo::EncodedLogo(EncodedLogo&&) noexcept = default; + EncodedLogo& EncodedLogo::operator=(const EncodedLogo&) = default; +-EncodedLogo& EncodedLogo::operator=(EncodedLogo&&) noexcept = default; ++EncodedLogo& EncodedLogo::operator=(EncodedLogo&&) = default; + EncodedLogo::~EncodedLogo() = default; + + Logo::Logo() = default; + Logo::~Logo() = default; + + LogoCallbacks::LogoCallbacks() = default; +-LogoCallbacks::LogoCallbacks(LogoCallbacks&&) noexcept = default; +-LogoCallbacks& LogoCallbacks::operator=(LogoCallbacks&&) noexcept = default; ++LogoCallbacks::LogoCallbacks(LogoCallbacks&&) = default; ++LogoCallbacks& LogoCallbacks::operator=(LogoCallbacks&&) = default; + LogoCallbacks::~LogoCallbacks() = default; + + } // namespace search_provider_logos diff --git a/chromium.spec b/chromium.spec index 2ec53dc..629d3cf 100644 --- a/chromium.spec +++ b/chromium.spec @@ -140,7 +140,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3440.106 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -277,6 +277,9 @@ Patch107: chromium-68.0.3440.84-libwebp-shim.patch Patch108: chromium-68.0.3440.84-move-unique-ptr.patch # https://github.com/OSSystems/meta-browser/blob/master/recipes-browser/chromium/files/0001-vpx_sum_squares_2d_i16_neon-Make-s2-a-uint64x1_t.patch Patch109: 0001-vpx_sum_squares_2d_i16_neon-Make-s2-a-uint64x1_t.patch +# Fix default on redeclaration error +# https://chromium.googlesource.com/chromium/src/+/122692ccee62223f266a988c575ae687e3f4c056%5E%21/#F0 +Patch110: chromium-68.0.3440.106-fix-default-on-redeclaration.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ @@ -804,6 +807,7 @@ udev. %patch107 -p1 -b .webp %patch108 -p1 -b .move-unique-ptr %patch109 -p1 -b .aarch64-int64x1_t +%patch110 -p1 -b .fix-default-redeclaration # Change shebang in all relevant files in this directory and all subdirectories @@ -1749,6 +1753,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Fri Aug 17 2018 Tom Callaway - 68.0.3440.106-2 +- fix error with defaulting on redeclaration + * Thu Aug 9 2018 Tom Callaway - 68.0.3440.106-1 - update to 68.0.3440.106 From 016a7a3a6518add109d7cfa36d327daf58ea49e8 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Sun, 19 Aug 2018 09:43:17 -0400 Subject: [PATCH 0233/1449] fix library filters --- chromium.spec | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/chromium.spec b/chromium.spec index 629d3cf..f744db4 100644 --- a/chromium.spec +++ b/chromium.spec @@ -31,9 +31,9 @@ %global __provides_exclude_from %{chromium_path}/.*\\.so|%{chromium_path}/lib/.*\\.so|%{chromium_path}/lib/.*\\.so.* %if 0%{?rhel} == 7 -%global privlibs libaccessibility|libanimation|libapdu|libaura_extra|libaura|libbase_i18n|libbase|libbindings_base|libbindings|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core_mojo_bindings_shared|libblink_core|libblink_modules|libblink_mojo_bindings_shared|libblink_offscreen_canvas_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcbor|libcc_animation|libcc_base|libcc_blink|libcc_debug|libcc_ipc|libcc_paint|libcc|libcdm_manager|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent|libcrash_key|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevices|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevice_vr_mojo_bindings|libdevice_vr|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libembedder|libembedder_switches|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents|libevents_x|libffmpeg|libfido|libfingerprint|libfreetype_harfbuzz|libgcm|libgeolocation|libgeometry_skia|libgeometry|libgesture_detection|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_switches|libgfx_x11|libgin|libgles2_implementation|libgles2|libgles2_utils|libGLESv2|libgl_init|libgl_in_process_context|libgl_wrapper|libgpu_ipc_service|libgpu|libgpu_util|libgtk3ui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc_mojom_shared|libipc_mojom|libipc|libkeyboard|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libleveldatabase|libmanager|libmedia_blink|libmedia_devices_mojo_bindings_shared|libmedia_gpu|libmedia_mojo_services|libmedia|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirclient|libmojo_base_lib|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_mojom|libmojo_base_shared_typemap_traits|libmojo_edk_ports|libmojo_edk|libmojo_ime_lib|libmojom_core_shared|libmojo_mojom_bindings_shared|libmojo_mojom_bindings|libmojom_platform_shared|libmojo_public_system_cpp|libmojo_public_system|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp_base|libnetwork_cpp|libnetwork_service|libnetwork_session_configurator|libonc|libplatform|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp_base|libresource_coordinator_cpp|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libresource_coordinator_public_mojom|libsandbox_services|libsandbox|libseccomp_bpf|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom_blink|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_constants|libservice_manager_mojom_shared|libservice_manager_mojom|libservice|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing_cpp|libtracing_mojom_shared|libtracing_mojom|libtracing|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libuser_manager|libuser_prefs|libv8_libbase|libv8_libplatform|libv8|libviews|libviz_common|libviz_resource_format|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_threading|libVkLayer_unique_objects|libwebdata_common|libweb_dialogs|libwebview|libwm_public|libwm|libwtf|libx11_events_platform|libx11_window|libbase|libEGL|libGLESv2|libfontconfig|libzygote +%global privlibs libaccessibility|libanimation|libapdu|libaura_extra|libaura|libbase_i18n|libbase|libbindings_base|libbindings|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core_mojo_bindings_shared|libblink_core|libblink_embedded_frame_sink_mojo_bindings_shared|libblink_modules|libblink_mojo_bindings_shared|libblink_offscreen_canvas_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcatalog_lib|libcbor|libcc_animation|libcc_base|libcc_blink|libcc_debug|libcc_ipc|libcc_paint|libcc|libcdm_manager|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent|libcrash_key|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevices|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevice_vr_mojo_bindings|libdevice_vr|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libembedder|libembedder_switches|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents|libevents_x|libffmpeg|libfido|libfingerprint|libfreetype_harfbuzz|libgcm|libgeolocation|libgeometry_skia|libgeometry|libgesture_detection|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_switches|libgfx_x11|libgin|libgles2_implementation|libgles2|libgles2_utils|libGLESv2|libgl_init|libgl_in_process_context|libgl_wrapper|libgpu_ipc_service|libgpu|libgpu_util|libgtk3ui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc_mojom_shared|libipc_mojom|libipc|libkeyboard|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libleveldatabase|libmanager|libmedia_blink|libmedia_devices_mojo_bindings_shared|libmedia_gpu|libmedia_mojo_services|libmedia|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirclient|libmojo_base_lib|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_mojom|libmojo_base_shared_typemap_traits|libmojo_cpp_platform|libmojo_edk_ports|libmojo_edk|libmojo_ime_lib|libmojom_core_shared|libmojo_mojom_bindings_shared|libmojo_mojom_bindings|libmojom_platform_shared|libmojo_public_system_cpp|libmojo_public_system|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp_base|libnetwork_cpp|libnetwork_service|libnetwork_session_configurator|libonc|libperfetto|libplatform|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp_base|libresource_coordinator_cpp|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libresource_coordinator_public_mojom|libsandbox_services|libsandbox|libseccomp_bpf|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom_blink|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_constants|libservice_manager_mojom_shared|libservice_manager_mojom|libservice|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing_cpp|libtracing_mojom_shared|libtracing_mojom|libtracing|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libuser_manager|libuser_prefs|libv8_libbase|libv8_libplatform|libv8|libviews|libviz_common|libviz_resource_format|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_threading|libVkLayer_unique_objects|libwebdata_common|libweb_dialogs|libwebview|libwm_public|libwm|libwtf|libx11_events_platform|libx11_window|libbase|libEGL|libGLESv2|libfontconfig|libzygote %else -%global privlibs libaccessibility|libanimation|libapdu|libaura_extra|libaura|libbase_i18n|libbase|libbindings_base|libbindings|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core_mojo_bindings_shared|libblink_core|libblink_modules|libblink_mojo_bindings_shared|libblink_offscreen_canvas_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcbor|libcc_animation|libcc_base|libcc_blink|libcc_debug|libcc_ipc|libcc_paint|libcc|libcdm_manager|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent|libcrash_key|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevices|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevice_vr_mojo_bindings|libdevice_vr|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libembedder|libembedder_switches|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents|libevents_x|libffmpeg|libfido|libfingerprint|libfreetype_harfbuzz|libgcm|libgeolocation|libgeometry_skia|libgeometry|libgesture_detection|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_switches|libgfx_x11|libgin|libgles2_implementation|libgles2|libgles2_utils|libGLESv2|libgl_init|libgl_in_process_context|libgl_wrapper|libgpu_ipc_service|libgpu|libgpu_util|libgtk3ui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc_mojom_shared|libipc_mojom|libipc|libkeyboard|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libleveldatabase|libmanager|libmedia_blink|libmedia_devices_mojo_bindings_shared|libmedia_gpu|libmedia_mojo_services|libmedia|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirclient|libmojo_base_lib|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_mojom|libmojo_base_shared_typemap_traits|libmojo_edk_ports|libmojo_edk|libmojo_ime_lib|libmojom_core_shared|libmojo_mojom_bindings_shared|libmojo_mojom_bindings|libmojom_platform_shared|libmojo_public_system_cpp|libmojo_public_system|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp_base|libnetwork_cpp|libnetwork_service|libnetwork_session_configurator|libonc|libplatform|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp_base|libresource_coordinator_cpp|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libresource_coordinator_public_mojom|libsandbox_services|libsandbox|libseccomp_bpf|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom_blink|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_constants|libservice_manager_mojom_shared|libservice_manager_mojom|libservice|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing_cpp|libtracing_mojom_shared|libtracing_mojom|libtracing|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libuser_manager|libuser_prefs|libv8_libbase|libv8_libplatform|libv8|libviews|libviz_common|libviz_resource_format|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_threading|libVkLayer_unique_objects|libwebdata_common|libweb_dialogs|libwebview|libwm_public|libwm|libwtf|libx11_events_platform|libx11_window|libbase|libEGL|libGLESv2|libzygote +%global privlibs libaccessibility|libanimation|libapdu|libaura_extra|libaura|libbase_i18n|libbase|libbindings_base|libbindings|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core_mojo_bindings_shared|libblink_core|libblink_embedded_frame_sink_mojo_bindings_shared|libblink_modules|libblink_mojo_bindings_shared|libblink_offscreen_canvas_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcatalog_lib|libcbor|libcc_animation|libcc_base|libcc_blink|libcc_debug|libcc_ipc|libcc_paint|libcc|libcdm_manager|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent|libcrash_key|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevices|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevice_vr_mojo_bindings|libdevice_vr|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libembedder|libembedder_switches|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents|libevents_x|libffmpeg|libfido|libfingerprint|libfreetype_harfbuzz|libgcm|libgeolocation|libgeometry_skia|libgeometry|libgesture_detection|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_switches|libgfx_x11|libgin|libgles2_implementation|libgles2|libgles2_utils|libGLESv2|libgl_init|libgl_in_process_context|libgl_wrapper|libgpu_ipc_service|libgpu|libgpu_util|libgtk3ui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc_mojom_shared|libipc_mojom|libipc|libkeyboard|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libleveldatabase|libmanager|libmedia_blink|libmedia_devices_mojo_bindings_shared|libmedia_gpu|libmedia_mojo_services|libmedia|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirclient|libmojo_base_lib|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_mojom|libmojo_base_shared_typemap_traits|libmojo_edk_ports|libmojo_edk|libmojo_ime_lib|libmojom_core_shared|libmojo_cpp_platform|libmojo_mojom_bindings_shared|libmojo_mojom_bindings|libmojom_platform_shared|libmojo_public_system_cpp|libmojo_public_system|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp_base|libnetwork_cpp|libnetwork_service|libnetwork_session_configurator|libonc|libperfetto|libplatform|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp_base|libresource_coordinator_cpp|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libresource_coordinator_public_mojom|libsandbox_services|libsandbox|libseccomp_bpf|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom_blink|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_constants|libservice_manager_mojom_shared|libservice_manager_mojom|libservice|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing_cpp|libtracing_mojom_shared|libtracing_mojom|libtracing|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libuser_manager|libuser_prefs|libv8_libbase|libv8_libplatform|libv8|libviews|libviz_common|libviz_resource_format|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_threading|libVkLayer_unique_objects|libwebdata_common|libweb_dialogs|libwebview|libwm_public|libwm|libwtf|libx11_events_platform|libx11_window|libbase|libEGL|libGLESv2|libzygote %endif %global __requires_exclude ^(%{privlibs})\\.so* @@ -140,7 +140,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3440.106 -Release: 2%{?dist} +Release: 3%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1753,6 +1753,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Sun Aug 19 2018 Tom Callaway - 68.0.3440.106-3 +- fix library filters + * Fri Aug 17 2018 Tom Callaway - 68.0.3440.106-2 - fix error with defaulting on redeclaration From f9b8d48bcbb24115886570a8560f8423c5ff823d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Patrik=20Novotn=C3=BD?= Date: Tue, 28 Aug 2018 11:22:04 +0200 Subject: [PATCH 0234/1449] Update dependency to minizip-compat(-devel) Related: rhbz#1609830, rhbz#1615381 --- chromium.spec | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/chromium.spec b/chromium.spec index f744db4..78673b3 100644 --- a/chromium.spec +++ b/chromium.spec @@ -140,7 +140,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3440.106 -Release: 3%{?dist} +Release: 4%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -346,7 +346,7 @@ BuildRequires: libusb-devel BuildRequires: libXdamage-devel BuildRequires: libXScrnSaver-devel BuildRequires: libXtst-devel -BuildRequires: minizip-devel +BuildRequires: minizip-compat-devel BuildRequires: nodejs BuildRequires: nss-devel >= 3.26 BuildRequires: pciutils-devel @@ -649,9 +649,9 @@ Chromium is an open-source web browser, powered by WebKit (Blink). %package common Summary: Files needed for both the headless_shell and full Chromium -# Chromium needs an explicit Requires: minizip +# Chromium needs an explicit Requires: minizip-compat # We put it here to cover headless too. -Requires: minizip%{_isa} +Requires: minizip-compat%{_isa} %description common %{summary}. @@ -1753,6 +1753,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Tue Aug 28 2018 Patrik Novotný - 68.0.3440.106-4 +- change requires to minizip-compat(-devel), rhbz#1609830, rhbz#1615381 + * Sun Aug 19 2018 Tom Callaway - 68.0.3440.106-3 - fix library filters From e688f351b4719484bf672ea07b91d6a4aaaddb76 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 5 Sep 2018 13:40:21 -0400 Subject: [PATCH 0235/1449] conditionalize minizip-compat change --- chromium.spec | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/chromium.spec b/chromium.spec index 78673b3..45cacb5 100644 --- a/chromium.spec +++ b/chromium.spec @@ -346,7 +346,11 @@ BuildRequires: libusb-devel BuildRequires: libXdamage-devel BuildRequires: libXScrnSaver-devel BuildRequires: libXtst-devel +%if 0%{?fedora} >= 30 BuildRequires: minizip-compat-devel +%else +BuildRequires: minizip-devel +%endif BuildRequires: nodejs BuildRequires: nss-devel >= 3.26 BuildRequires: pciutils-devel @@ -651,7 +655,11 @@ Chromium is an open-source web browser, powered by WebKit (Blink). Summary: Files needed for both the headless_shell and full Chromium # Chromium needs an explicit Requires: minizip-compat # We put it here to cover headless too. +%if 0%{?fedora} >= 30 Requires: minizip-compat%{_isa} +%else +Requires: minizip%{_isa} +%endif %description common %{summary}. From 0fc6cb9e41deeb2d0a941b7bf79649873aa2527a Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 14 Sep 2018 08:04:34 -0400 Subject: [PATCH 0236/1449] 69.0.3497.92 --- .gitignore | 1 + ...ium-69.0.3497.81-build-sanely-please.patch | 33 +++++++ chromium-69.0.3497.81-gcc8-alignof.patch | 18 ++++ chromium-69.0.3497.81-norar.patch | 79 +++++++++++++++++ chromium-69.0.3497.81-py2-bootstrap.patch | 33 +++++++ chromium-69.0.3497.81-widevine-r2.patch | 23 +++++ chromium.spec | 88 +++++++++++-------- sources | 1 + 8 files changed, 237 insertions(+), 39 deletions(-) create mode 100644 chromium-69.0.3497.81-build-sanely-please.patch create mode 100644 chromium-69.0.3497.81-gcc8-alignof.patch create mode 100644 chromium-69.0.3497.81-norar.patch create mode 100644 chromium-69.0.3497.81-py2-bootstrap.patch create mode 100644 chromium-69.0.3497.81-widevine-r2.patch diff --git a/.gitignore b/.gitignore index da9b487..7bca843 100644 --- a/.gitignore +++ b/.gitignore @@ -67,3 +67,4 @@ /chromium-67.0.3396.99-clean.tar.xz /chromium-68.0.3440.106-clean.tar.xz /Ahem.ttf +/chromium-69.0.3497.92-clean.tar.xz diff --git a/chromium-69.0.3497.81-build-sanely-please.patch b/chromium-69.0.3497.81-build-sanely-please.patch new file mode 100644 index 0000000..6241a97 --- /dev/null +++ b/chromium-69.0.3497.81-build-sanely-please.patch @@ -0,0 +1,33 @@ +diff -up chromium-69.0.3497.81/build/config/BUILD.gn.fyoursysroot chromium-69.0.3497.81/build/config/BUILD.gn +--- chromium-69.0.3497.81/build/config/BUILD.gn.fyoursysroot 2018-09-06 13:43:44.863375238 -0400 ++++ chromium-69.0.3497.81/build/config/BUILD.gn 2018-09-06 13:43:58.377083290 -0400 +@@ -284,9 +284,9 @@ group("executable_and_loadable_module_an + public_deps += [ "//build/config/sanitizers:deps" ] + } + +- if (use_custom_libcxx) { +- public_deps += [ "//buildtools/third_party/libc++" ] +- } ++ # if (use_custom_libcxx) { ++ # public_deps += [ "//buildtools/third_party/libc++" ] ++ # } + + if (use_afl) { + public_deps += [ "//third_party/afl" ] +diff -up chromium-69.0.3497.81/build/config/sysroot.gni.fyoursysroot chromium-69.0.3497.81/build/config/sysroot.gni +--- chromium-69.0.3497.81/build/config/sysroot.gni.fyoursysroot 2018-09-06 13:40:46.212232232 -0400 ++++ chromium-69.0.3497.81/build/config/sysroot.gni 2018-09-06 13:41:02.421882529 -0400 +@@ -15,9 +15,10 @@ declare_args() { + # The absolute path to directory containing linux sysroot images + target_sysroot_dir = "//build/linux" + +- use_sysroot = current_cpu == "x86" || current_cpu == "x64" || +- current_cpu == "arm" || current_cpu == "arm64" || +- current_cpu == "mipsel" || current_cpu == "mips64el" ++ use_sysroot = false ++ # use_sysroot = current_cpu == "x86" || current_cpu == "x64" || ++ # current_cpu == "arm" || current_cpu == "arm64" || ++ # current_cpu == "mipsel" || current_cpu == "mips64el" + } + + if (current_os == target_os && current_cpu == target_cpu && diff --git a/chromium-69.0.3497.81-gcc8-alignof.patch b/chromium-69.0.3497.81-gcc8-alignof.patch new file mode 100644 index 0000000..234b391 --- /dev/null +++ b/chromium-69.0.3497.81-gcc8-alignof.patch @@ -0,0 +1,18 @@ +diff -up chromium-69.0.3497.81/mojo/public/c/system/macros.h.gcc8-alignof chromium-69.0.3497.81/mojo/public/c/system/macros.h +--- chromium-69.0.3497.81/mojo/public/c/system/macros.h.gcc8-alignof 2018-09-06 10:11:54.336432699 -0400 ++++ chromium-69.0.3497.81/mojo/public/c/system/macros.h 2018-09-06 10:13:56.555727572 -0400 +@@ -27,7 +27,13 @@ + (sizeof(void*) == 4 ? 32 : 0) + + // Like the C++11 |alignof| operator. +-#if __cplusplus >= 201103L ++#if defined(__GNUC__) && __GNUC__ >= 8 ++// GCC 8 has changed the alignof operator to return the minimal alignment ++// required by the target ABI, instead of the preferred alignment. ++// This means that on 32-bit x86, it will return 4 instead of 8. ++// Use __alignof__ instead to avoid this. ++#define MOJO_ALIGNOF(type) __alignof__(type) ++#elif __cplusplus >= 201103L + #define MOJO_ALIGNOF(type) alignof(type) + #elif defined(__GNUC__) + #define MOJO_ALIGNOF(type) __alignof__(type) diff --git a/chromium-69.0.3497.81-norar.patch b/chromium-69.0.3497.81-norar.patch new file mode 100644 index 0000000..9545b60 --- /dev/null +++ b/chromium-69.0.3497.81-norar.patch @@ -0,0 +1,79 @@ +diff -up chromium-69.0.3497.81/chrome/common/safe_browsing/BUILD.gn.nounrar chromium-69.0.3497.81/chrome/common/safe_browsing/BUILD.gn +--- chromium-69.0.3497.81/chrome/common/safe_browsing/BUILD.gn.nounrar 2018-09-06 13:29:47.114511569 -0400 ++++ chromium-69.0.3497.81/chrome/common/safe_browsing/BUILD.gn 2018-09-06 13:29:47.120511452 -0400 +@@ -55,40 +55,6 @@ if (safe_browsing_mode == 1) { + "//components/safe_browsing:csd_proto", + ] + } +- +- source_set("rar_analyzer") { +- sources = [ +- "rar_analyzer.cc", +- "rar_analyzer.h", +- ] +- +- deps = [ +- ":archive_analyzer_results", +- ":download_protection_util", +- ":file_type_policies", +- "//base", +- "//base:i18n", +- "//third_party/unrar:unrar", +- ] +- +- defines = [ +- "_FILE_OFFSET_BITS=64", +- "LARGEFILE_SOURCE", +- "RAR_SMP", +- "SILENT", +- +- # The following is set to disable certain macro definitions in the unrar +- # source code. +- "CHROMIUM_UNRAR", +- +- # Disables exceptions in unrar, replaces them with process termination. +- "UNRAR_NO_EXCEPTIONS", +- ] +- +- public_deps = [ +- "//components/safe_browsing:csd_proto", +- ] +- } + } + + source_set("safe_browsing") { +@@ -121,7 +87,6 @@ source_set("safe_browsing") { + deps += [ + ":archive_analyzer_results", + ":download_protection_util", +- ":rar_analyzer", + "//components/safe_browsing:features", + ] + +diff -up chromium-69.0.3497.81/chrome/common/safe_browsing/DEPS.nounrar chromium-69.0.3497.81/chrome/common/safe_browsing/DEPS +--- chromium-69.0.3497.81/chrome/common/safe_browsing/DEPS.nounrar 2018-09-06 13:29:47.119511472 -0400 ++++ chromium-69.0.3497.81/chrome/common/safe_browsing/DEPS 2018-09-06 13:29:47.116511530 -0400 +@@ -1,6 +1,5 @@ + include_rules = [ + "+components/safe_browsing", + "+third_party/protobuf", +- "+third_party/unrar", + "+third_party/zlib", + ] +diff -up chromium-69.0.3497.81/chrome/services/file_util/safe_archive_analyzer.cc.nounrar chromium-69.0.3497.81/chrome/services/file_util/safe_archive_analyzer.cc +--- chromium-69.0.3497.81/chrome/services/file_util/safe_archive_analyzer.cc.nounrar 2018-09-07 10:10:42.286041744 -0400 ++++ chromium-69.0.3497.81/chrome/services/file_util/safe_archive_analyzer.cc 2018-09-07 10:11:14.934308285 -0400 +@@ -47,9 +47,13 @@ void SafeArchiveAnalyzer::AnalyzeDmgFile + + void SafeArchiveAnalyzer::AnalyzeRarFile(base::File rar_file, + AnalyzeRarFileCallback callback) { ++#if 0 + DCHECK(rar_file.IsValid()); + + safe_browsing::ArchiveAnalyzerResults results; + safe_browsing::rar_analyzer::AnalyzeRarFile(std::move(rar_file), &results); + std::move(callback).Run(results); ++#else ++ NOTREACHED(); ++#endif + } diff --git a/chromium-69.0.3497.81-py2-bootstrap.patch b/chromium-69.0.3497.81-py2-bootstrap.patch new file mode 100644 index 0000000..8a5db71 --- /dev/null +++ b/chromium-69.0.3497.81-py2-bootstrap.patch @@ -0,0 +1,33 @@ +diff -up chromium-69.0.3497.81/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py.py2 chromium-69.0.3497.81/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py +--- chromium-69.0.3497.81/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py.py2 2018-09-06 10:45:17.919774145 -0400 ++++ chromium-69.0.3497.81/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py 2018-09-06 10:45:17.914774254 -0400 +@@ -58,7 +58,7 @@ def _MinifyJS(input_js): + + with tempfile.NamedTemporaryFile() as _: + args = [ +- 'python', ++ 'python2', + rjsmin_path + ] + p = subprocess.Popen(args, +@@ -177,7 +177,7 @@ def _MinifyCSS(css_text): + os.path.join(py_vulcanize_path, 'third_party', 'rcssmin', 'rcssmin.py')) + + with tempfile.NamedTemporaryFile() as _: +- rcssmin_args = ['python', rcssmin_path] ++ rcssmin_args = ['python2', rcssmin_path] + p = subprocess.Popen(rcssmin_args, + stdin=subprocess.PIPE, + stdout=subprocess.PIPE, +diff -up chromium-69.0.3497.81/tools/gn/bootstrap/bootstrap.py.py2 chromium-69.0.3497.81/tools/gn/bootstrap/bootstrap.py +--- chromium-69.0.3497.81/tools/gn/bootstrap/bootstrap.py.py2 2018-09-06 10:44:42.225550561 -0400 ++++ chromium-69.0.3497.81/tools/gn/bootstrap/bootstrap.py 2018-09-06 13:06:24.251636231 -0400 +@@ -87,7 +87,7 @@ def main(argv): + if not options.debug: + gn_gen_args += ' is_debug=false' + subprocess.check_call([ +- gn_path, 'gen', out_dir, ++ gn_path, 'gen', out_dir, ' --script-executable=/usr/bin/python2', + '--args=%s' % gn_gen_args, "--root=" + SRC_ROOT + ]) + diff --git a/chromium-69.0.3497.81-widevine-r2.patch b/chromium-69.0.3497.81-widevine-r2.patch new file mode 100644 index 0000000..a66a0fb --- /dev/null +++ b/chromium-69.0.3497.81-widevine-r2.patch @@ -0,0 +1,23 @@ +diff -up chromium-69.0.3497.81/third_party/widevine/cdm/BUILD.gn.wvhack chromium-69.0.3497.81/third_party/widevine/cdm/BUILD.gn +--- chromium-69.0.3497.81/third_party/widevine/cdm/BUILD.gn.wvhack 2018-09-06 13:28:22.655272555 -0400 ++++ chromium-69.0.3497.81/third_party/widevine/cdm/BUILD.gn 2018-09-06 13:28:22.655272555 -0400 +@@ -11,7 +11,7 @@ import("//third_party/widevine/cdm/widev + # Internal Cast builds set enable_widevine=true to bring in Widevine support. + # TODO(xhwang): Support component updated CDM on other platforms and remove this + # assert. +-assert(!enable_widevine || is_win || is_mac || is_chromecast, ++assert(!enable_widevine || is_win || is_mac || is_chromecast || is_linux, + "Component updated CDM only supported on Windows and Mac for now.") + + widevine_arch = current_cpu +diff -up chromium-69.0.3497.81/third_party/widevine/cdm/stub/widevine_cdm_version.h.wvhack chromium-69.0.3497.81/third_party/widevine/cdm/stub/widevine_cdm_version.h +--- chromium-69.0.3497.81/third_party/widevine/cdm/stub/widevine_cdm_version.h.wvhack 2018-09-06 13:28:22.654272577 -0400 ++++ chromium-69.0.3497.81/third_party/widevine/cdm/stub/widevine_cdm_version.h 2018-09-06 13:28:22.654272577 -0400 +@@ -10,6 +10,7 @@ + + #include "third_party/widevine/cdm/widevine_cdm_common.h" + ++#define WIDEVINE_CDM_VERSION_STRING "unknown" + #define WIDEVINE_CDM_AVAILABLE + + #endif // WIDEVINE_CDM_VERSION_H_ diff --git a/chromium.spec b/chromium.spec index 45cacb5..19c30b5 100644 --- a/chromium.spec +++ b/chromium.spec @@ -29,11 +29,16 @@ # We don't want any libs in these directories to generate Provides # Requires is trickier. +# To generate this list, go into %%{buildroot}%%{chromium_path} and run +# for i in `find . -name "*.so"`; do NAME=`basename -s .so $i`; printf "$NAME|"; done +# for RHEL7, append libfontconfig to the end +# make sure there is not a trailing | at the end of the list + %global __provides_exclude_from %{chromium_path}/.*\\.so|%{chromium_path}/lib/.*\\.so|%{chromium_path}/lib/.*\\.so.* %if 0%{?rhel} == 7 -%global privlibs libaccessibility|libanimation|libapdu|libaura_extra|libaura|libbase_i18n|libbase|libbindings_base|libbindings|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core_mojo_bindings_shared|libblink_core|libblink_embedded_frame_sink_mojo_bindings_shared|libblink_modules|libblink_mojo_bindings_shared|libblink_offscreen_canvas_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcatalog_lib|libcbor|libcc_animation|libcc_base|libcc_blink|libcc_debug|libcc_ipc|libcc_paint|libcc|libcdm_manager|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent|libcrash_key|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevices|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevice_vr_mojo_bindings|libdevice_vr|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libembedder|libembedder_switches|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents|libevents_x|libffmpeg|libfido|libfingerprint|libfreetype_harfbuzz|libgcm|libgeolocation|libgeometry_skia|libgeometry|libgesture_detection|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_switches|libgfx_x11|libgin|libgles2_implementation|libgles2|libgles2_utils|libGLESv2|libgl_init|libgl_in_process_context|libgl_wrapper|libgpu_ipc_service|libgpu|libgpu_util|libgtk3ui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc_mojom_shared|libipc_mojom|libipc|libkeyboard|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libleveldatabase|libmanager|libmedia_blink|libmedia_devices_mojo_bindings_shared|libmedia_gpu|libmedia_mojo_services|libmedia|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirclient|libmojo_base_lib|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_mojom|libmojo_base_shared_typemap_traits|libmojo_cpp_platform|libmojo_edk_ports|libmojo_edk|libmojo_ime_lib|libmojom_core_shared|libmojo_mojom_bindings_shared|libmojo_mojom_bindings|libmojom_platform_shared|libmojo_public_system_cpp|libmojo_public_system|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp_base|libnetwork_cpp|libnetwork_service|libnetwork_session_configurator|libonc|libperfetto|libplatform|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp_base|libresource_coordinator_cpp|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libresource_coordinator_public_mojom|libsandbox_services|libsandbox|libseccomp_bpf|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom_blink|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_constants|libservice_manager_mojom_shared|libservice_manager_mojom|libservice|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing_cpp|libtracing_mojom_shared|libtracing_mojom|libtracing|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libuser_manager|libuser_prefs|libv8_libbase|libv8_libplatform|libv8|libviews|libviz_common|libviz_resource_format|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_threading|libVkLayer_unique_objects|libwebdata_common|libweb_dialogs|libwebview|libwm_public|libwm|libwtf|libx11_events_platform|libx11_window|libbase|libEGL|libGLESv2|libfontconfig|libzygote +%global privlibs libEGL|libGLESv2|libEGL|libGLESv2|libVkICD_mock_icd|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_threading|libVkLayer_unique_objects|libaccessibility|libanimation|libapdu|libaura|libaura_extra|libbase|libbase_i18n|libbindings|libbindings_base|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core|libblink_core_mojo_bindings_shared|libblink_embedded_frame_sink_mojo_bindings_shared|libblink_modules|libblink_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcatalog_lib|libcbor|libcc|libcc_animation|libcc_base|libcc_debug|libcc_mojo_embedder|libcc_paint|libcdm_manager|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom|libcontent_service_mojom_shared|libcrash_key|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevice_vr|libdevice_vr_mojo_bindings|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevices|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libembedder|libembedder_switches|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libffmpeg|libfido|libfingerprint|libfreetype_harfbuzz|libgamepad_mojom|libgamepad_mojom_blink|libgamepad_mojom_shared|libgamepad_shared_typemap_traits|libgcm|libgeometry|libgeometry_skia|libgesture_detection|libgfx|libgfx_ipc|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_switches|libgfx_x11|libgin|libgl_in_process_context|libgl_init|libgl_wrapper|libgles2|libgles2_implementation|libgles2_utils|libgpu|libgpu_ipc_service|libgtk3ui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc|libipc_mojom|libipc_mojom_shared|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libleveldatabase|libmanager|libmedia|libmedia_blink|libmedia_devices_mojo_bindings_shared|libmedia_gpu|libmedia_mojo_services|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmojo_base_lib|libmojo_base_mojom|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_shared_typemap_traits|libmojo_core_embedder|libmojo_core_embedder_internal|libmojo_core_ports|libmojo_cpp_platform|libmojo_ime_lib|libmojo_mojom_bindings|libmojo_mojom_bindings_shared|libmojo_public_system|libmojo_public_system_cpp|libmojom_core_shared|libmojom_platform_shared|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp|libnetwork_cpp_base|libnetwork_service|libnetwork_session_configurator|libonc|libperfetto|libplatform|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp|libresource_coordinator_cpp_base|libresource_coordinator_public_mojom|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libsandbox|libsandbox_services|libseccomp_bpf|libservice|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom|libservice_manager_mojom_blink|libservice_manager_mojom_constants|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_shared|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libtracing_cpp|libtracing_mojom|libtracing_mojom_shared|libui_base|libui_base_ime|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|liburl|libui_views_mus_lib|liburl_ipc|liburl_matcher|libuser_manager|libuser_prefs|libv8|libv8_libbase|libv8_libplatform|libviews|libviz_common|libviz_resource_format|libvr_common|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libweb_dialogs|libwebdata_common|libwebview|libwm|libwm_public|libwtf|libx11_events_platform|libx11_window|libzygote|libfontconfig %else -%global privlibs libaccessibility|libanimation|libapdu|libaura_extra|libaura|libbase_i18n|libbase|libbindings_base|libbindings|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core_mojo_bindings_shared|libblink_core|libblink_embedded_frame_sink_mojo_bindings_shared|libblink_modules|libblink_mojo_bindings_shared|libblink_offscreen_canvas_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcatalog_lib|libcbor|libcc_animation|libcc_base|libcc_blink|libcc_debug|libcc_ipc|libcc_paint|libcc|libcdm_manager|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent|libcrash_key|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevices|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevice_vr_mojo_bindings|libdevice_vr|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libembedder|libembedder_switches|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents|libevents_x|libffmpeg|libfido|libfingerprint|libfreetype_harfbuzz|libgcm|libgeolocation|libgeometry_skia|libgeometry|libgesture_detection|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_switches|libgfx_x11|libgin|libgles2_implementation|libgles2|libgles2_utils|libGLESv2|libgl_init|libgl_in_process_context|libgl_wrapper|libgpu_ipc_service|libgpu|libgpu_util|libgtk3ui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc_mojom_shared|libipc_mojom|libipc|libkeyboard|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libleveldatabase|libmanager|libmedia_blink|libmedia_devices_mojo_bindings_shared|libmedia_gpu|libmedia_mojo_services|libmedia|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirclient|libmojo_base_lib|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_mojom|libmojo_base_shared_typemap_traits|libmojo_edk_ports|libmojo_edk|libmojo_ime_lib|libmojom_core_shared|libmojo_cpp_platform|libmojo_mojom_bindings_shared|libmojo_mojom_bindings|libmojom_platform_shared|libmojo_public_system_cpp|libmojo_public_system|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp_base|libnetwork_cpp|libnetwork_service|libnetwork_session_configurator|libonc|libperfetto|libplatform|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp_base|libresource_coordinator_cpp|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libresource_coordinator_public_mojom|libsandbox_services|libsandbox|libseccomp_bpf|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom_blink|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_constants|libservice_manager_mojom_shared|libservice_manager_mojom|libservice|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing_cpp|libtracing_mojom_shared|libtracing_mojom|libtracing|libui_base_ime|libui_base|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libuser_manager|libuser_prefs|libv8_libbase|libv8_libplatform|libv8|libviews|libviz_common|libviz_resource_format|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_threading|libVkLayer_unique_objects|libwebdata_common|libweb_dialogs|libwebview|libwm_public|libwm|libwtf|libx11_events_platform|libx11_window|libbase|libEGL|libGLESv2|libzygote +%global privlibs libEGL|libGLESv2|libEGL|libGLESv2|libVkICD_mock_icd|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_threading|libVkLayer_unique_objects|libaccessibility|libanimation|libapdu|libaura|libaura_extra|libbase|libbase_i18n|libbindings|libbindings_base|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core|libblink_core_mojo_bindings_shared|libblink_embedded_frame_sink_mojo_bindings_shared|libblink_modules|libblink_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcatalog_lib|libcbor|libcc|libcc_animation|libcc_base|libcc_debug|libcc_mojo_embedder|libcc_paint|libcdm_manager|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom|libcontent_service_mojom_shared|libcrash_key|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevice_vr|libdevice_vr_mojo_bindings|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevices|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libembedder|libembedder_switches|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libffmpeg|libfido|libfingerprint|libfreetype_harfbuzz|libgamepad_mojom|libgamepad_mojom_blink|libgamepad_mojom_shared|libgamepad_shared_typemap_traits|libgcm|libgeometry|libgeometry_skia|libgesture_detection|libgfx|libgfx_ipc|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_switches|libgfx_x11|libgin|libgl_in_process_context|libgl_init|libgl_wrapper|libgles2|libgles2_implementation|libgles2_utils|libgpu|libgpu_ipc_service|libgtk3ui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc|libipc_mojom|libipc_mojom_shared|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libleveldatabase|libmanager|libmedia|libmedia_blink|libmedia_devices_mojo_bindings_shared|libmedia_gpu|libmedia_mojo_services|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmojo_base_lib|libmojo_base_mojom|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_shared_typemap_traits|libmojo_core_embedder|libmojo_core_embedder_internal|libmojo_core_ports|libmojo_cpp_platform|libmojo_ime_lib|libmojo_mojom_bindings|libmojo_mojom_bindings_shared|libmojo_public_system|libmojo_public_system_cpp|libmojom_core_shared|libmojom_platform_shared|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp|libnetwork_cpp_base|libnetwork_service|libnetwork_session_configurator|libonc|libperfetto|libplatform|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp|libresource_coordinator_cpp_base|libresource_coordinator_public_mojom|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libsandbox|libsandbox_services|libseccomp_bpf|libservice|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom|libservice_manager_mojom_blink|libservice_manager_mojom_constants|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_shared|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libtracing_cpp|libtracing_mojom|libtracing_mojom_shared|libui_base|libui_base_ime|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|liburl|libui_views_mus_lib|liburl_ipc|liburl_matcher|libuser_manager|libuser_prefs|libv8|libv8_libbase|libv8_libplatform|libviews|libviz_common|libviz_resource_format|libvr_common|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libweb_dialogs|libwebdata_common|libwebview|libwm|libwm_public|libwtf|libx11_events_platform|libx11_window|libzygote %endif %global __requires_exclude ^(%{privlibs})\\.so* @@ -132,15 +137,15 @@ BuildRequires: libicu-devel >= 5.4 %global chromoting_client_id %nil %endif -%global majorversion 68 +%global majorversion 69 %if %{freeworld} Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3440.106 -Release: 4%{?dist} +Version: %{majorversion}.0.3497.92 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -175,7 +180,7 @@ Patch19: chromium-52.0.2743.116-unset-madv_free.patch Patch20: chromium-67.0.3396.62-gn-system.patch # Fix last commit position issue # https://groups.google.com/a/chromium.org/forum/#!topic/gn-dev/7nlJv486bD4 -Patch21: chromium-60.0.3112.78-last-commit-position.patch +# Patch21: chromium-60.0.3112.78-last-commit-position.patch # Fix issue where timespec is not defined when sys/stat.h is included. Patch22: chromium-53.0.2785.92-boringssl-time-fix.patch # I wouldn't have to do this if there was a standard way to append extra compiler flags @@ -239,7 +244,7 @@ Patch88: chromium-66.0.3359.117-missing-files.patch # https://bugs.chromium.org/p/chromium/issues/detail?id=816952 # Patch91: chromium-66.0.3359.117-gcc-vector-copy-constructor-fix.patch # Do not use unrar code, it is non-free -Patch92: chromium-66.0.3359.117-nounrar.patch +Patch92: chromium-69.0.3497.81-norar.patch # Upstream GCC fixes Patch93: chromium-66.0.3359.117-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch Patch94: chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch @@ -251,9 +256,7 @@ Patch94: chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.pa # GCC8 has changed the alignof operator to return the minimal alignment required by the target ABI # instead of the preferred alignment. This means int64_t is now 4 on i686 (instead of 8). # Use __alignof__ to get the value we expect (and chromium checks for). -Patch98: chromium-66.0.3359.170-gcc8-alignof.patch -# https://chromium.googlesource.com/crashpad/crashpad/+/26ef5c910fc7e2edb441f1d2b39944195342dee9 -Patch99: chromium-67.0.3396.62-crashpad-aarch64-buildfix.patch +Patch98: chromium-69.0.3497.81-gcc8-alignof.patch # RHEL 7 has a bug in its python2.7 which does not propely handle exec with a tuple # https://bugs.python.org/issue21591 Patch100: chromium-67.0.3396.62-epel7-use-old-python-exec-syntax.patch @@ -261,25 +264,22 @@ Patch100: chromium-67.0.3396.62-epel7-use-old-python-exec-syntax.patch Patch101: chromium-68.0.3440.106-fedora-user-agent.patch # Try to fix version.py for Rawhide Patch102: chromium-67.0.3396.99-py3fix.patch -Patch103: chromium-67.0.3396.99-py2-bootstrap.patch -# ERROR at //extensions/browser/api/networking_private/BUILD.gn:15:5: Undefined identifier -# "networking_cast_private_delegate.cc", -# ^------------------------------------ -# https://chromium.googlesource.com/chromium/src/+/abde0a4bd9f3bfddebe825cc25cc3bc857e3d088%5E%21/#F1 -Patch104: chromium-68.0.3440.106-fix-build-networking_private.patch -# CORS legacy: add missing string include -Patch105: chromium-68.0.3440.84-cors-string.patch -# Fix libjpeg include handling -Patch106: chromium-68.0.3440.84-libjpeg.patch -# Fix webp bundling shim -Patch107: chromium-68.0.3440.84-libwebp-shim.patch +Patch103: chromium-69.0.3497.81-py2-bootstrap.patch # GCC: do not std::move unique ptr of forward declared UrlIndex -Patch108: chromium-68.0.3440.84-move-unique-ptr.patch +# Patch108: chromium-68.0.3440.84-move-unique-ptr.patch # https://github.com/OSSystems/meta-browser/blob/master/recipes-browser/chromium/files/0001-vpx_sum_squares_2d_i16_neon-Make-s2-a-uint64x1_t.patch Patch109: 0001-vpx_sum_squares_2d_i16_neon-Make-s2-a-uint64x1_t.patch # Fix default on redeclaration error # https://chromium.googlesource.com/chromium/src/+/122692ccee62223f266a988c575ae687e3f4c056%5E%21/#F0 Patch110: chromium-68.0.3440.106-fix-default-on-redeclaration.patch +# Use Gentoo's Widevine hack +# https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-widevine-r2.patch +Patch111: chromium-69.0.3497.81-widevine-r2.patch +# Do not require sysroot +# Forget about trying to make libc++ +# BUILD SANELY PLEASE +Patch112: chromium-69.0.3497.81-build-sanely-please.patch + # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ @@ -359,8 +359,8 @@ BuildRequires: pulseaudio-libs-devel # for /usr/bin/appstream-util BuildRequires: libappstream-glib -# Fedora turns on NaCl -# NaCl needs these +# gn needs these +BuildRequires: libstdc++-static BuildRequires: libstdc++-devel, openssl-devel %if 0%{?nacl} BuildRequires: nacl-gcc, nacl-binutils, nacl-newlib @@ -759,7 +759,7 @@ udev. %patch18 -p1 -b .etc # %%patch19 -p1 -b .madv_free %patch20 -p1 -b .gnsystem -%patch21 -p1 -b .lastcommit +# %%patch21 -p1 -b .lastcommit %patch22 -p1 -b .timefix %patch24 -p1 -b .nullfix %patch25 -p1 -b .jpegfix @@ -802,20 +802,17 @@ udev. # %%patch96 -p1 -b .flatsetfix # %%patch97 -p1 -b .arm-init-fix %patch98 -p1 -b .gcc8-alignof -%patch99 -p1 -b .crashpad-aarch64-fix %if 0%{?rhel} == 7 -%patch100 -p1 -b .oldexec +# %%patch100 -p1 -b .oldexec %endif %patch101 -p1 -b .fedora-user-agent %patch102 -p1 -b .py3fix %patch103 -p1 -b .py2 -%patch104 -p1 -b .fixb -%patch105 -p1 -b .cors -%patch106 -p1 -b .libjpeg -%patch107 -p1 -b .webp -%patch108 -p1 -b .move-unique-ptr +# %%patch108 -p1 -b .move-unique-ptr %patch109 -p1 -b .aarch64-int64x1_t %patch110 -p1 -b .fix-default-redeclaration +%patch111 -p1 -b .wvhack +%patch112 -p1 -b .sanebuild # Change shebang in all relevant files in this directory and all subdirectories @@ -1002,6 +999,7 @@ CHROMIUM_BROWSER_GN_DEFINES+=' is_component_ffmpeg=false is_component_build=fals %endif CHROMIUM_BROWSER_GN_DEFINES+=' remove_webcore_debug_symbols=true enable_hangout_services_extension=true' CHROMIUM_BROWSER_GN_DEFINES+=' use_aura=true' +CHROMIUM_BROWSER_GN_DEFINES+=' enable_widevine=true' # CHROMIUM_BROWSER_GN_DEFINES+=' enable_webrtc=true' %if 0%{gtk3} CHROMIUM_BROWSER_GN_DEFINES+=' use_gtk3=true' @@ -1044,6 +1042,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'net/third_party/quic' \ 'net/third_party/spdy' \ 'third_party/WebKit' \ + 'third_party/abseil-cpp' \ 'third_party/adobe' \ 'third_party/analytics' \ 'third_party/angle' \ @@ -1055,6 +1054,9 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/angle/third_party/glslang' \ 'third_party/angle/third_party/spirv-headers' \ 'third_party/angle/third_party/spirv-tools' \ + 'third_party/angle/third_party/vulkan-headers' \ + 'third_party/angle/third_party/vulkan-loader' \ + 'third_party/angle/third_party/vulkan-tools' \ 'third_party/angle/third_party/vulkan-validation-layers' \ 'third_party/apple_apsl' \ 'third_party/blanketjs' \ @@ -1068,7 +1070,10 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/catapult' \ 'third_party/catapult/common/py_vulcanize/third_party/rcssmin' \ 'third_party/catapult/common/py_vulcanize/third_party/rjsmin' \ + 'third_party/catapult/third_party/beautifulsoup4' \ + 'third_party/catapult/third_party/html5lib-python' \ 'third_party/catapult/third_party/polymer' \ + 'third_party/catapult/third_party/six' \ 'third_party/catapult/tracing/third_party/d3' \ 'third_party/catapult/tracing/third_party/gl-matrix' \ 'third_party/catapult/tracing/third_party/jszip' \ @@ -1169,6 +1174,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/rnnoise' \ 'third_party/s2cellid' \ 'third_party/sfntly' \ + 'third_party/simplejson' \ 'third_party/sinonjs' \ 'third_party/skia' \ 'third_party/skia/third_party/gif' \ @@ -1199,6 +1205,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/yasm' \ 'third_party/zlib' \ 'third_party/zlib/google' \ + 'tools/gn/base/third_party/icu' \ 'url/third_party/mozilla' \ 'v8/src/third_party/utf8-decoder' \ 'v8/src/third_party/valgrind' \ @@ -1293,7 +1300,7 @@ if python2 -c 'import google ; print google.__path__' 2> /dev/null ; then \ exit 1 ; \ fi -tools/gn/bootstrap/bootstrap.py -v --gn-gen-args "$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" +tools/gn/bootstrap/bootstrap.py -v "$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{target}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{target} %if %{freeworld} @@ -1311,9 +1318,6 @@ rm -rf third_party/libusb/src/libusb/libusb.h cp -a %{_includedir}/libusb-1.0/libusb.h third_party/libusb/src/libusb/libusb.h %endif -# make up a version for widevine -sed '14i#define WIDEVINE_CDM_VERSION_STRING "Something fresh"' -i "third_party/widevine/cdm/stub/widevine_cdm_version.h" - # Hard code extra version FILE=chrome/common/channel_info_posix.cc sed -i.orig -e 's/getenv("CHROME_VERSION_EXTRA")/"Fedora Project"/' $FILE @@ -1616,10 +1620,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %dir %{chromium_path} %{chromium_path}/*.bin %{chromium_path}/chrome_*.pak -%{chromium_path}/keyboard_resources.pak %{chromium_path}/resources.pak -%{chromium_path}/views_mus_resources.pak %{chromium_path}/icudtl.dat +%{chromium_path}/views_mus_resources.pak %{chromium_path}/%{chromium_browser_channel} %{chromium_path}/%{chromium_browser_channel}.sh %{chromium_path}/MEIPreload/ @@ -1713,6 +1716,7 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %files libs %exclude %{chromium_path}/libffmpeg.so* %exclude %{chromium_path}/libmedia.so* +# %%exclude %%{chromium_path}/libwidevinecdm.so %{chromium_path}/lib*.so* %endif @@ -1761,6 +1765,12 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Wed Sep 12 2018 Tom Callaway - 69.0.3497.92-1 +- update to 69.0.3497.92 + +* Wed Sep 5 2018 Tom Callaway - 69.0.3497.81-1 +- update to 69.0.3497.81 + * Tue Aug 28 2018 Patrik Novotný - 68.0.3440.106-4 - change requires to minizip-compat(-devel), rhbz#1609830, rhbz#1615381 diff --git a/sources b/sources index d81fedb..19cd551 100644 --- a/sources +++ b/sources @@ -17,3 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (chromium-68.0.3440.106-clean.tar.xz) = a609975c96674f3a84a33bb3d57271535671e11d0775efeceff4f8a965851216038cf491281aaab0cc64c6e99af033f9c8a93f759f232e8c686408dbc09c8dd5 SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd +SHA512 (chromium-69.0.3497.92-clean.tar.xz) = 8cba541684ba3539e888c76e00a27c0f4cbcce9164544768a840002b8c44727d6f0596e288170989331d7693b510ec26cb6fb4b68e530339dfb0685cc9ed4fd8 From a913b5cdd206870f555737823567cd4f501d65b7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Sun, 16 Sep 2018 12:14:42 +0200 Subject: [PATCH 0237/1449] Also fix shebangs with spaces pyproto/google/protobuf/internal/_parameterized.py has this shebang: #! /usr/bin/env python That was not covered by the sed and ended up with brp-mangle-shebang warnings (soon to be errors). --- chromium.spec | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/chromium.spec b/chromium.spec index 19c30b5..c7003a4 100644 --- a/chromium.spec +++ b/chromium.spec @@ -814,10 +814,9 @@ udev. %patch111 -p1 -b .wvhack %patch112 -p1 -b .sanebuild - # Change shebang in all relevant files in this directory and all subdirectories # See `man find` for how the `-exec command {} +` syntax works -find -type f -exec sed -i '1s=^#!/usr/bin/\(python\|env python\)[23]\?=#!%{__python2}=' {} + +find -type f -exec sed -iE '1s=^#! */usr/bin/\(python\|env python\)[23]\?=#!%{__python2}=' {} + %if 0%{?asan} export CC="clang" From a367efa14798064320908bb1be2eed79fd7f9013 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 4 Oct 2018 16:56:42 -0400 Subject: [PATCH 0238/1449] update to 69.0.3497.100 --- .gitignore | 1 + chromium.spec | 5 ++++- sources | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 7bca843..9ace0dc 100644 --- a/.gitignore +++ b/.gitignore @@ -68,3 +68,4 @@ /chromium-68.0.3440.106-clean.tar.xz /Ahem.ttf /chromium-69.0.3497.92-clean.tar.xz +/chromium-69.0.3497.100-clean.tar.xz diff --git a/chromium.spec b/chromium.spec index c7003a4..10cbe8a 100644 --- a/chromium.spec +++ b/chromium.spec @@ -144,7 +144,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3497.92 +Version: %{majorversion}.0.3497.100 Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home @@ -1764,6 +1764,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Thu Oct 4 2018 Tom Callaway - 69.0.3497.100-1 +- update to 69.0.3497.100 + * Wed Sep 12 2018 Tom Callaway - 69.0.3497.92-1 - update to 69.0.3497.92 diff --git a/sources b/sources index 19cd551..6be1d19 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (chromium-68.0.3440.106-clean.tar.xz) = a609975c96674f3a84a33bb3d57271535671e11d0775efeceff4f8a965851216038cf491281aaab0cc64c6e99af033f9c8a93f759f232e8c686408dbc09c8dd5 SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd -SHA512 (chromium-69.0.3497.92-clean.tar.xz) = 8cba541684ba3539e888c76e00a27c0f4cbcce9164544768a840002b8c44727d6f0596e288170989331d7693b510ec26cb6fb4b68e530339dfb0685cc9ed4fd8 +SHA512 (chromium-69.0.3497.100-clean.tar.xz) = 6e7bf831054d78e9bde8d708616189215e5b4baaeb2c37ca2864d3fb37326d70f5cb01ad91ad1fc0facfc1a688b6ae24c3649495759c00ed546b3f90c8d3fc54 From cf170d6fd131076123a3ad02044016bcf1a3edf5 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 16 Oct 2018 15:40:50 -0400 Subject: [PATCH 0239/1449] freeworld build does not need fonts --- chromium.spec | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 10cbe8a..d9ecfc0 100644 --- a/chromium.spec +++ b/chromium.spec @@ -145,7 +145,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3497.100 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -477,6 +477,9 @@ BuildRequires: pkgconfig(gnome-keyring-1) BuildRequires: pam-devel BuildRequires: systemd # for third_party/test_fonts +%if %{freeworld} +# dont need fonts for this +%else %if 0%{?rhel} == 7 Source100: https://github.com/google/fonts/blob/master/apache/arimo/Arimo-Bold.ttf Source101: https://github.com/google/fonts/blob/master/apache/arimo/Arimo-BoldItalic.ttf @@ -504,6 +507,7 @@ BuildRequires: thai-scalable-garuda-fonts BuildRequires: lohit-devanagari-fonts BuildRequires: lohit-tamil-fonts BuildRequires: google-noto-sans-khmer-fonts +%endif # using the built from source version on aarch64 BuildRequires: ninja-build @@ -926,6 +930,9 @@ popd %endif # Unpack fonts +%if %{freeworld} +# no font fun needed. +%else pushd third_party/test_fonts mkdir test_fonts cd test_fonts @@ -965,6 +972,7 @@ cp -a /usr/share/fonts/thai-scalable/Garuda.ttf . cp -a /usr/share/fonts/lohit-devanagari/Lohit-Devanagari.ttf /usr/share/fonts/lohit-tamil/Lohit-Tamil.ttf . cp -a /usr/share/fonts/google-noto/NotoSansKhmer-Regular.ttf . popd +%endif # Core defines are flags that are true for both the browser and headless. CHROMIUM_CORE_GN_DEFINES="" @@ -1764,6 +1772,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Tue Oct 16 2018 Tom Callaway - 69.0.3497.100-2 +- do not play with fonts on freeworld builds + * Thu Oct 4 2018 Tom Callaway - 69.0.3497.100-1 - update to 69.0.3497.100 From 52661628c0e5df2cb2af4d594d6f05bc774710b6 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 2 Nov 2018 13:30:53 -0400 Subject: [PATCH 0240/1449] 70.0.3538.77 --- .gitignore | 1 + ...38.67-disable-fontconfig-cache-magic.patch | 13 +++ chromium-70.0.3538.67-sandbox-pie.patch | 20 ++++ chromium-gcc8-r588316.patch | 98 +++++++++++++++++++ chromium-gcc8-r588547.patch | 30 ++++++ chromium-gcc8-r589614.patch | 37 +++++++ chromium-gcc8-r591015.patch | 70 +++++++++++++ chromium.spec | 72 +++++++++----- sources | 2 +- 9 files changed, 318 insertions(+), 25 deletions(-) create mode 100644 chromium-70.0.3538.67-disable-fontconfig-cache-magic.patch create mode 100644 chromium-70.0.3538.67-sandbox-pie.patch create mode 100644 chromium-gcc8-r588316.patch create mode 100644 chromium-gcc8-r588547.patch create mode 100644 chromium-gcc8-r589614.patch create mode 100644 chromium-gcc8-r591015.patch diff --git a/.gitignore b/.gitignore index 9ace0dc..c7fe514 100644 --- a/.gitignore +++ b/.gitignore @@ -69,3 +69,4 @@ /Ahem.ttf /chromium-69.0.3497.92-clean.tar.xz /chromium-69.0.3497.100-clean.tar.xz +/chromium-70.0.3538.77-clean.tar.xz diff --git a/chromium-70.0.3538.67-disable-fontconfig-cache-magic.patch b/chromium-70.0.3538.67-disable-fontconfig-cache-magic.patch new file mode 100644 index 0000000..0c60643 --- /dev/null +++ b/chromium-70.0.3538.67-disable-fontconfig-cache-magic.patch @@ -0,0 +1,13 @@ +diff -up chromium-70.0.3538.67/base/test/BUILD.gn.nofc chromium-70.0.3538.67/base/test/BUILD.gn +--- chromium-70.0.3538.67/base/test/BUILD.gn.nofc 2018-10-29 11:29:01.356812567 -0400 ++++ chromium-70.0.3538.67/base/test/BUILD.gn 2018-10-29 11:29:12.631584916 -0400 +@@ -209,9 +209,6 @@ static_library("test_support") { + data_deps = [ + "//third_party/test_fonts", + ] +- if (current_toolchain == host_toolchain) { +- data_deps += [ ":do_generate_fontconfig_caches" ] +- } + } + + if (is_ios) { diff --git a/chromium-70.0.3538.67-sandbox-pie.patch b/chromium-70.0.3538.67-sandbox-pie.patch new file mode 100644 index 0000000..0f104e9 --- /dev/null +++ b/chromium-70.0.3538.67-sandbox-pie.patch @@ -0,0 +1,20 @@ +diff -up chromium-70.0.3538.67/sandbox/linux/BUILD.gn.sandboxpie chromium-70.0.3538.67/sandbox/linux/BUILD.gn +--- chromium-70.0.3538.67/sandbox/linux/BUILD.gn.sandboxpie 2018-10-18 12:14:05.766939769 -0400 ++++ chromium-70.0.3538.67/sandbox/linux/BUILD.gn 2018-10-18 12:16:37.820027182 -0400 +@@ -315,10 +315,16 @@ if (is_linux) { + # For ULLONG_MAX + "-std=gnu99", + ++ "-fPIE", ++ + # These files have a suspicious comparison. + # TODO fix this and re-enable this warning. + "-Wno-sign-compare", + ] ++ ++ ldflags = [ ++ "-pie", ++ ] + } + } + diff --git a/chromium-gcc8-r588316.patch b/chromium-gcc8-r588316.patch new file mode 100644 index 0000000..d980805 --- /dev/null +++ b/chromium-gcc8-r588316.patch @@ -0,0 +1,98 @@ +From 87902b3202f81d689dd314c17006ffc907fe12a1 Mon Sep 17 00:00:00 2001 +From: Wang Qing +Date: Mon, 3 Sep 2018 02:41:08 +0000 +Subject: [PATCH] Fix build error for blink. +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +This CLs fixed the error of constexpr function call to non-constexpr function. + +Bug: 878202 +Change-Id: I6ad217a687e62a9a384980d852743a56479de3a9 +Reviewed-on: https://chromium-review.googlesource.com/1192467 +Commit-Queue: 汪 清 +Reviewed-by: Eric Willigers +Cr-Commit-Position: refs/heads/master@{#588316} +--- + .../core/animation/animation_time_delta.cc | 22 ++++++++++++++ + .../core/animation/animation_time_delta.h | 30 +++++++------------ + 2 files changed, 32 insertions(+), 20 deletions(-) + +diff --git a/third_party/blink/renderer/core/animation/animation_time_delta.cc b/third_party/blink/renderer/core/animation/animation_time_delta.cc +index 1b25469c7f2f..2e30a18890da 100644 +--- a/third_party/blink/renderer/core/animation/animation_time_delta.cc ++++ b/third_party/blink/renderer/core/animation/animation_time_delta.cc +@@ -7,6 +7,28 @@ + namespace blink { + + #if !defined(BLINK_ANIMATION_USE_TIME_DELTA) ++// Comparison operators on AnimationTimeDelta. ++bool CORE_EXPORT operator==(const AnimationTimeDelta& lhs, ++ const AnimationTimeDelta& rhs) { ++ return lhs.InSecondsF() == rhs.InSecondsF(); ++} ++bool CORE_EXPORT operator!=(const AnimationTimeDelta& lhs, ++ const AnimationTimeDelta& rhs) { ++ return lhs.InSecondsF() != rhs.InSecondsF(); ++} ++bool CORE_EXPORT operator>(const AnimationTimeDelta& lhs, ++ const AnimationTimeDelta& rhs) { ++ return lhs.InSecondsF() > rhs.InSecondsF(); ++} ++bool CORE_EXPORT operator>=(const AnimationTimeDelta& lhs, ++ const AnimationTimeDelta& rhs) { ++ return lhs.InSecondsF() >= rhs.InSecondsF(); ++} ++bool CORE_EXPORT operator<=(const AnimationTimeDelta& lhs, ++ const AnimationTimeDelta& rhs) { ++ return lhs.InSecondsF() <= rhs.InSecondsF(); ++} ++ + std::ostream& operator<<(std::ostream& os, AnimationTimeDelta time) { + return os << time.InSecondsF() << " s"; + } +diff --git a/third_party/blink/renderer/core/animation/animation_time_delta.h b/third_party/blink/renderer/core/animation/animation_time_delta.h +index 1903c1150d3e..95d218466d90 100644 +--- a/third_party/blink/renderer/core/animation/animation_time_delta.h ++++ b/third_party/blink/renderer/core/animation/animation_time_delta.h +@@ -90,26 +90,16 @@ AnimationTimeDelta operator*(T a, AnimationTimeDelta td) { + } + + // Comparison operators on AnimationTimeDelta. +-constexpr bool CORE_EXPORT operator==(const AnimationTimeDelta& lhs, +- const AnimationTimeDelta& rhs) { +- return lhs.InSecondsF() == rhs.InSecondsF(); +-} +-constexpr bool CORE_EXPORT operator!=(const AnimationTimeDelta& lhs, +- const AnimationTimeDelta& rhs) { +- return lhs.InSecondsF() != rhs.InSecondsF(); +-} +-constexpr bool CORE_EXPORT operator>(const AnimationTimeDelta& lhs, +- const AnimationTimeDelta& rhs) { +- return lhs.InSecondsF() > rhs.InSecondsF(); +-} +-constexpr bool CORE_EXPORT operator>=(const AnimationTimeDelta& lhs, +- const AnimationTimeDelta& rhs) { +- return lhs.InSecondsF() >= rhs.InSecondsF(); +-} +-constexpr bool CORE_EXPORT operator<=(const AnimationTimeDelta& lhs, +- const AnimationTimeDelta& rhs) { +- return lhs.InSecondsF() <= rhs.InSecondsF(); +-} ++bool CORE_EXPORT operator==(const AnimationTimeDelta& lhs, ++ const AnimationTimeDelta& rhs); ++bool CORE_EXPORT operator!=(const AnimationTimeDelta& lhs, ++ const AnimationTimeDelta& rhs); ++bool CORE_EXPORT operator>(const AnimationTimeDelta& lhs, ++ const AnimationTimeDelta& rhs); ++bool CORE_EXPORT operator>=(const AnimationTimeDelta& lhs, ++ const AnimationTimeDelta& rhs); ++bool CORE_EXPORT operator<=(const AnimationTimeDelta& lhs, ++ const AnimationTimeDelta& rhs); + + // Defined to allow DCHECK_EQ/etc to work with the class. + CORE_EXPORT std::ostream& operator<<(std::ostream& os, AnimationTimeDelta time); +-- +2.17.2 + diff --git a/chromium-gcc8-r588547.patch b/chromium-gcc8-r588547.patch new file mode 100644 index 0000000..5f12f7f --- /dev/null +++ b/chromium-gcc8-r588547.patch @@ -0,0 +1,30 @@ +From e3ad3deb6a6e79284f3748fa7410311d87df91c5 Mon Sep 17 00:00:00 2001 +From: Henrique Nakashima +Date: Tue, 4 Sep 2018 16:49:51 +0000 +Subject: [PATCH] IWYU: stdint.h in pdfium_mem_buffer_file_write.h for uint8_t + +Bug: 879900 +Change-Id: I9c15d1c280a23c53d31f2d72c9d0d1db79eab886 +Reviewed-on: https://chromium-review.googlesource.com/1204410 +Reviewed-by: Lei Zhang +Commit-Queue: Henrique Nakashima +Cr-Commit-Position: refs/heads/master@{#588547} +--- + pdf/pdfium/pdfium_mem_buffer_file_write.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/pdf/pdfium/pdfium_mem_buffer_file_write.h b/pdf/pdfium/pdfium_mem_buffer_file_write.h +index 03c54bb63800..82e82d23684d 100644 +--- a/pdf/pdfium/pdfium_mem_buffer_file_write.h ++++ b/pdf/pdfium/pdfium_mem_buffer_file_write.h +@@ -6,6 +6,7 @@ + #define PDF_PDFIUM_PDFIUM_MEM_BUFFER_FILE_WRITE_H_ + + #include ++#include + + #include + +-- +2.17.2 + diff --git a/chromium-gcc8-r589614.patch b/chromium-gcc8-r589614.patch new file mode 100644 index 0000000..0c187fd --- /dev/null +++ b/chromium-gcc8-r589614.patch @@ -0,0 +1,37 @@ +From cbdb8bd6567c8143dc8c1e5e86a21a8ea064eea4 Mon Sep 17 00:00:00 2001 +From: Maksim Sisov +Date: Fri, 7 Sep 2018 18:57:42 +0000 +Subject: [PATCH] OmniboxTextView: fix gcc error for structure initialization + +It looks like there is bug in GCC 6, which cannot go through +structure initialization normally. + +Thus, instead of a default initialization of one of the members, +explicitly initialize it to a default value. + +Change-Id: Ia55cc6658e6b6b2f8a80c2582dd28f001c9e648c +Reviewed-on: https://chromium-review.googlesource.com/1213181 +Reviewed-by: Scott Violet +Commit-Queue: Maksim Sisov +Cr-Commit-Position: refs/heads/master@{#589614} +--- + chrome/browser/ui/views/omnibox/omnibox_text_view.cc | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/chrome/browser/ui/views/omnibox/omnibox_text_view.cc b/chrome/browser/ui/views/omnibox/omnibox_text_view.cc +index f0a8083dc930..9021284f166d 100644 +--- a/chrome/browser/ui/views/omnibox/omnibox_text_view.cc ++++ b/chrome/browser/ui/views/omnibox/omnibox_text_view.cc +@@ -175,7 +175,8 @@ void ApplyTextStyleForType(SuggestionAnswer::TextStyle text_style, + style = {part_color, .baseline = gfx::SUPERIOR}; + break; + case SuggestionAnswer::TextStyle::BOLD: +- style = {part_color, .weight = gfx::Font::Weight::BOLD}; ++ style = {part_color, .baseline = gfx::NORMAL_BASELINE, ++ .weight = gfx::Font::Weight::BOLD}; + break; + case SuggestionAnswer::TextStyle::NORMAL: + case SuggestionAnswer::TextStyle::NORMAL_DIM: +-- +2.17.2 + diff --git a/chromium-gcc8-r591015.patch b/chromium-gcc8-r591015.patch new file mode 100644 index 0000000..65c09e8 --- /dev/null +++ b/chromium-gcc8-r591015.patch @@ -0,0 +1,70 @@ +From e98f8ef8b2f236ecbb01df8c39e6ee1c8fbe8d7d Mon Sep 17 00:00:00 2001 +From: Maksim Sisov +Date: Thu, 13 Sep 2018 15:17:29 +0000 +Subject: [PATCH] ScrollPaintPropertyNode: Rename SnapContainerData() to + GetSnapContainerData() + +GCC is stricter than clang when it comes to class members' names and how +they can change the meaning of a previously existing symbol with the same +name. + +Here is a short error message: + +error: changes meaning of 'SnapContainerData' from 'using SnapContainerData = +class cc::SnapContainerData' [-fpermissive] using SnapContainerData = +cc::SnapContainerData; + +Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_slimming_paint_v2;master.tryserver.blink:linux_trusty_blink_rel +Change-Id: I0de5460f17b13484253e1ff0538b111c9a3b0d13 +Reviewed-on: https://chromium-review.googlesource.com/1213180 +Commit-Queue: Maksim Sisov +Reviewed-by: Philip Rogers +Cr-Commit-Position: refs/heads/master@{#591015} +--- + .../blink/renderer/core/paint/paint_property_tree_update_tests.cc | 2 +- + .../renderer/platform/graphics/compositing/property_tree_manager.cc | 2 +- + .../blink/renderer/platform/graphics/paint/scroll_paint_property_node.h | 2 +- + 3 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/third_party/blink/renderer/core/paint/paint_property_tree_update_tests.cc b/third_party/blink/renderer/core/paint/paint_property_tree_update_tests.cc +index 0d999d45076f..1fe1815a5659 100644 +--- a/third_party/blink/renderer/core/paint/paint_property_tree_update_tests.cc ++++ b/third_party/blink/renderer/core/paint/paint_property_tree_update_tests.cc +@@ -1310,7 +1310,7 @@ TEST_P(PaintPropertyTreeUpdateTest, EnsureSnapContainerData) { + GetDocument().View()->Resize(300, 300); + GetDocument().View()->UpdateAllLifecyclePhases(); + +- auto doc_snap_container_data = DocScroll()->SnapContainerData(); ++ auto doc_snap_container_data = DocScroll()->GetSnapContainerData(); + ASSERT_TRUE(doc_snap_container_data); + EXPECT_EQ(doc_snap_container_data->scroll_snap_type().axis, SnapAxis::kBoth); + EXPECT_EQ(doc_snap_container_data->scroll_snap_type().strictness, +diff --git a/third_party/blink/renderer/platform/graphics/compositing/property_tree_manager.cc b/third_party/blink/renderer/platform/graphics/compositing/property_tree_manager.cc +index 745b8c8b387e..5f87eeea9435 100644 +--- a/third_party/blink/renderer/platform/graphics/compositing/property_tree_manager.cc ++++ b/third_party/blink/renderer/platform/graphics/compositing/property_tree_manager.cc +@@ -333,7 +333,7 @@ void PropertyTreeManager::CreateCompositorScrollNode( + scroll_node->OverscrollBehaviorX()), + static_cast( + scroll_node->OverscrollBehaviorY())); +- compositor_node.snap_container_data = scroll_node->SnapContainerData(); ++ compositor_node.snap_container_data = scroll_node->GetSnapContainerData(); + + auto compositor_element_id = scroll_node->GetCompositorElementId(); + if (compositor_element_id) { +diff --git a/third_party/blink/renderer/platform/graphics/paint/scroll_paint_property_node.h b/third_party/blink/renderer/platform/graphics/paint/scroll_paint_property_node.h +index e1479269ccc3..5bd7f65f10ba 100644 +--- a/third_party/blink/renderer/platform/graphics/paint/scroll_paint_property_node.h ++++ b/third_party/blink/renderer/platform/graphics/paint/scroll_paint_property_node.h +@@ -99,7 +99,7 @@ class PLATFORM_EXPORT ScrollPaintPropertyNode + return state_.overscroll_behavior.y; + } + +- base::Optional SnapContainerData() const { ++ base::Optional GetSnapContainerData() const { + return state_.snap_container_data; + } + +-- +2.14.3 + diff --git a/chromium.spec b/chromium.spec index d9ecfc0..06d4203 100644 --- a/chromium.spec +++ b/chromium.spec @@ -13,6 +13,7 @@ # Leave this alone, please. %global target out/Release %global headlesstarget out/Headless +%global remotingtarget out/Remoting # Debuginfo packages aren't very useful here. If you need to debug # you should do a proper debug build (not implemented in this spec yet) @@ -36,9 +37,9 @@ %global __provides_exclude_from %{chromium_path}/.*\\.so|%{chromium_path}/lib/.*\\.so|%{chromium_path}/lib/.*\\.so.* %if 0%{?rhel} == 7 -%global privlibs libEGL|libGLESv2|libEGL|libGLESv2|libVkICD_mock_icd|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_threading|libVkLayer_unique_objects|libaccessibility|libanimation|libapdu|libaura|libaura_extra|libbase|libbase_i18n|libbindings|libbindings_base|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core|libblink_core_mojo_bindings_shared|libblink_embedded_frame_sink_mojo_bindings_shared|libblink_modules|libblink_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcatalog_lib|libcbor|libcc|libcc_animation|libcc_base|libcc_debug|libcc_mojo_embedder|libcc_paint|libcdm_manager|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom|libcontent_service_mojom_shared|libcrash_key|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevice_vr|libdevice_vr_mojo_bindings|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevices|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libembedder|libembedder_switches|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libffmpeg|libfido|libfingerprint|libfreetype_harfbuzz|libgamepad_mojom|libgamepad_mojom_blink|libgamepad_mojom_shared|libgamepad_shared_typemap_traits|libgcm|libgeometry|libgeometry_skia|libgesture_detection|libgfx|libgfx_ipc|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_switches|libgfx_x11|libgin|libgl_in_process_context|libgl_init|libgl_wrapper|libgles2|libgles2_implementation|libgles2_utils|libgpu|libgpu_ipc_service|libgtk3ui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc|libipc_mojom|libipc_mojom_shared|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libleveldatabase|libmanager|libmedia|libmedia_blink|libmedia_devices_mojo_bindings_shared|libmedia_gpu|libmedia_mojo_services|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmojo_base_lib|libmojo_base_mojom|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_shared_typemap_traits|libmojo_core_embedder|libmojo_core_embedder_internal|libmojo_core_ports|libmojo_cpp_platform|libmojo_ime_lib|libmojo_mojom_bindings|libmojo_mojom_bindings_shared|libmojo_public_system|libmojo_public_system_cpp|libmojom_core_shared|libmojom_platform_shared|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp|libnetwork_cpp_base|libnetwork_service|libnetwork_session_configurator|libonc|libperfetto|libplatform|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp|libresource_coordinator_cpp_base|libresource_coordinator_public_mojom|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libsandbox|libsandbox_services|libseccomp_bpf|libservice|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom|libservice_manager_mojom_blink|libservice_manager_mojom_constants|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_shared|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libtracing_cpp|libtracing_mojom|libtracing_mojom_shared|libui_base|libui_base_ime|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|liburl|libui_views_mus_lib|liburl_ipc|liburl_matcher|libuser_manager|libuser_prefs|libv8|libv8_libbase|libv8_libplatform|libviews|libviz_common|libviz_resource_format|libvr_common|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libweb_dialogs|libwebdata_common|libwebview|libwm|libwm_public|libwtf|libx11_events_platform|libx11_window|libzygote|libfontconfig +%global privlibs libEGL|libGLESv2|libVkICD_mock_icd|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_threading|libVkLayer_unique_objects|libaccessibility|libandroid_mojo_bindings_shared|libanimation|libapdu|libaura|libaura_extra|libbase|libbase_i18n|libbindings|libbindings_base|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core|libblink_core_mojo_bindings_shared|libblink_embedded_frame_sink_mojo_bindings_shared|libblink_modules|libblink_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcatalog_lib|libcbor|libcc|libcc_animation|libcc_base|libcc_debug|libcc_mojo_embedder|libcc_paint|libcdm_manager|libchrome_features|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom|libcontent_service_mojom_shared|libcrash_key|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevice_vr|libdevice_vr_mojo_bindings|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevices|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libembedder|libembedder_switches|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libfido|libfingerprint|libfreetype_harfbuzz|libgamepad_mojom|libgamepad_mojom_blink|libgamepad_mojom_shared|libgamepad_shared_typemap_traits|libgcm|libgeometry|libgeometry_skia|libgesture_detection|libgfx|libgfx_ipc|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_switches|libgfx_x11|libgin|libgl_in_process_context|libgl_init|libgl_wrapper|libgles2|libgles2_implementation|libgles2_utils|libgpu|libgpu_ipc_service|libgtkui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc|libipc_mojom|libipc_mojom_shared|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libleveldatabase|liblive_tab_count_metrics|libmanager|libmedia|libmedia_blink|libmedia_devices_mojo_bindings_shared|libmedia_gpu|libmedia_mojo_services|libmedia_session_cpp|libmedia_session_public_mojom|libmedia_session_public_mojom_shared|libmedia_webrtc|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirclient.so.9|libmirroring_service|libmojo_base_lib|libmojo_base_mojom|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_shared_typemap_traits|libmojo_core_embedder|libmojo_core_embedder_internal|libmojo_core_ports|libmojo_cpp_platform|libmojo_ime_lib|libmojo_mojom_bindings|libmojo_mojom_bindings_shared|libmojo_public_system|libmojo_public_system_cpp|libmojom_core_shared|libmojom_platform_shared|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp|libnetwork_cpp_base|libnetwork_service|libnetwork_session_configurator|libonc|libos_crypt|libperfetto|libplatform|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp|libresource_coordinator_cpp_base|libresource_coordinator_public_mojom|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libsandbox|libsandbox_services|libscheduling_metrics|libseccomp_bpf|libservice|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom|libservice_manager_mojom_blink|libservice_manager_mojom_constants|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_shared|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libtracing_cpp|libtracing_mojom|libtracing_mojom_shared|libui_base|libui_base_ime|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl|liburl_ipc|liburl_matcher|libusb_shared|libuser_manager|libuser_prefs|libv8|libv8_libbase|libv8_libplatform|libviews|libviz_common|libviz_resource_format_utils|libvr_common|libvr_ui|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libweb_dialogs|libwebdata_common|libwebgpu|libwebview|libwm|libwm_public|libwtf|libx11_events_platform|libx11_window|libzygote|libfontconfig %else -%global privlibs libEGL|libGLESv2|libEGL|libGLESv2|libVkICD_mock_icd|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_threading|libVkLayer_unique_objects|libaccessibility|libanimation|libapdu|libaura|libaura_extra|libbase|libbase_i18n|libbindings|libbindings_base|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core|libblink_core_mojo_bindings_shared|libblink_embedded_frame_sink_mojo_bindings_shared|libblink_modules|libblink_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcatalog_lib|libcbor|libcc|libcc_animation|libcc_base|libcc_debug|libcc_mojo_embedder|libcc_paint|libcdm_manager|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom|libcontent_service_mojom_shared|libcrash_key|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevice_vr|libdevice_vr_mojo_bindings|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevices|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libembedder|libembedder_switches|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libffmpeg|libfido|libfingerprint|libfreetype_harfbuzz|libgamepad_mojom|libgamepad_mojom_blink|libgamepad_mojom_shared|libgamepad_shared_typemap_traits|libgcm|libgeometry|libgeometry_skia|libgesture_detection|libgfx|libgfx_ipc|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_switches|libgfx_x11|libgin|libgl_in_process_context|libgl_init|libgl_wrapper|libgles2|libgles2_implementation|libgles2_utils|libgpu|libgpu_ipc_service|libgtk3ui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc|libipc_mojom|libipc_mojom_shared|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libleveldatabase|libmanager|libmedia|libmedia_blink|libmedia_devices_mojo_bindings_shared|libmedia_gpu|libmedia_mojo_services|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmojo_base_lib|libmojo_base_mojom|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_shared_typemap_traits|libmojo_core_embedder|libmojo_core_embedder_internal|libmojo_core_ports|libmojo_cpp_platform|libmojo_ime_lib|libmojo_mojom_bindings|libmojo_mojom_bindings_shared|libmojo_public_system|libmojo_public_system_cpp|libmojom_core_shared|libmojom_platform_shared|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp|libnetwork_cpp_base|libnetwork_service|libnetwork_session_configurator|libonc|libperfetto|libplatform|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp|libresource_coordinator_cpp_base|libresource_coordinator_public_mojom|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libsandbox|libsandbox_services|libseccomp_bpf|libservice|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom|libservice_manager_mojom_blink|libservice_manager_mojom_constants|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_shared|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libtracing_cpp|libtracing_mojom|libtracing_mojom_shared|libui_base|libui_base_ime|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|liburl|libui_views_mus_lib|liburl_ipc|liburl_matcher|libuser_manager|libuser_prefs|libv8|libv8_libbase|libv8_libplatform|libviews|libviz_common|libviz_resource_format|libvr_common|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libweb_dialogs|libwebdata_common|libwebview|libwm|libwm_public|libwtf|libx11_events_platform|libx11_window|libzygote +%global privlibs libEGL|libGLESv2|libVkICD_mock_icd|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_threading|libVkLayer_unique_objects|libaccessibility|libandroid_mojo_bindings_shared|libanimation|libapdu|libaura|libaura_extra|libbase|libbase_i18n|libbindings|libbindings_base|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core|libblink_core_mojo_bindings_shared|libblink_embedded_frame_sink_mojo_bindings_shared|libblink_modules|libblink_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcatalog_lib|libcbor|libcc|libcc_animation|libcc_base|libcc_debug|libcc_mojo_embedder|libcc_paint|libcdm_manager|libchrome_features|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom|libcontent_service_mojom_shared|libcrash_key|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevice_vr|libdevice_vr_mojo_bindings|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevices|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libembedder|libembedder_switches|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libfido|libfingerprint|libfreetype_harfbuzz|libgamepad_mojom|libgamepad_mojom_blink|libgamepad_mojom_shared|libgamepad_shared_typemap_traits|libgcm|libgeometry|libgeometry_skia|libgesture_detection|libgfx|libgfx_ipc|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_switches|libgfx_x11|libgin|libgl_in_process_context|libgl_init|libgl_wrapper|libgles2|libgles2_implementation|libgles2_utils|libgpu|libgpu_ipc_service|libgtkui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc|libipc_mojom|libipc_mojom_shared|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libleveldatabase|liblive_tab_count_metrics|libmanager|libmedia|libmedia_blink|libmedia_devices_mojo_bindings_shared|libmedia_gpu|libmedia_mojo_services|libmedia_session_cpp|libmedia_session_public_mojom|libmedia_session_public_mojom_shared|libmedia_webrtc|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirclient.so.9|libmirroring_service|libmojo_base_lib|libmojo_base_mojom|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_shared_typemap_traits|libmojo_core_embedder|libmojo_core_embedder_internal|libmojo_core_ports|libmojo_cpp_platform|libmojo_ime_lib|libmojo_mojom_bindings|libmojo_mojom_bindings_shared|libmojo_public_system|libmojo_public_system_cpp|libmojom_core_shared|libmojom_platform_shared|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp|libnetwork_cpp_base|libnetwork_service|libnetwork_session_configurator|libonc|libos_crypt|libperfetto|libplatform|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp|libresource_coordinator_cpp_base|libresource_coordinator_public_mojom|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libsandbox|libsandbox_services|libscheduling_metrics|libseccomp_bpf|libservice|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom|libservice_manager_mojom_blink|libservice_manager_mojom_constants|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_shared|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libtracing_cpp|libtracing_mojom|libtracing_mojom_shared|libui_base|libui_base_ime|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl|liburl_ipc|liburl_matcher|libusb_shared|libuser_manager|libuser_prefs|libv8|libv8_libbase|libv8_libplatform|libviews|libviz_common|libviz_resource_format_utils|libvr_common|libvr_ui|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libweb_dialogs|libwebdata_common|libwebgpu|libwebview|libwm|libwm_public|libwtf|libx11_events_platform|libx11_window|libzygote %endif %global __requires_exclude ^(%{privlibs})\\.so* @@ -113,9 +114,9 @@ BuildRequires: libicu-devel >= 5.4 %global bundlefontconfig 0 %endif -# Needs at least harfbuzz 1.7.3 now. -# 2018-03-07 -%if 0%{?fedora} < 28 +# Needs at least harfbuzz 1.8.6 now. +# 2018-10-24 +%if 0%{?fedora} < 29 %global bundleharfbuzz 1 %else %global bundleharfbuzz 0 @@ -137,15 +138,15 @@ BuildRequires: libicu-devel >= 5.4 %global chromoting_client_id %nil %endif -%global majorversion 69 +%global majorversion 70 %if %{freeworld} Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3497.100 -Release: 2%{?dist} +Version: %{majorversion}.0.3538.77 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -170,7 +171,7 @@ Patch9: chromium-48.0.2564.116-libusb_interrupt_event_handler.patch # https://bugs.chromium.org/p/chromium/issues/detail?id=622493 Patch12: chromium-55.0.2883.75-cups22.patch # Use PIE in the Linux sandbox (from openSUSE via Russian Fedora) -Patch15: chromium-55.0.2883.75-sandbox-pie.patch +Patch15: chromium-70.0.3538.67-sandbox-pie.patch # Use /etc/chromium for master_prefs Patch18: chromium-68.0.3440.106-master-prefs-path.patch # Disable MADV_FREE (if set by glibc) @@ -265,10 +266,6 @@ Patch101: chromium-68.0.3440.106-fedora-user-agent.patch # Try to fix version.py for Rawhide Patch102: chromium-67.0.3396.99-py3fix.patch Patch103: chromium-69.0.3497.81-py2-bootstrap.patch -# GCC: do not std::move unique ptr of forward declared UrlIndex -# Patch108: chromium-68.0.3440.84-move-unique-ptr.patch -# https://github.com/OSSystems/meta-browser/blob/master/recipes-browser/chromium/files/0001-vpx_sum_squares_2d_i16_neon-Make-s2-a-uint64x1_t.patch -Patch109: 0001-vpx_sum_squares_2d_i16_neon-Make-s2-a-uint64x1_t.patch # Fix default on redeclaration error # https://chromium.googlesource.com/chromium/src/+/122692ccee62223f266a988c575ae687e3f4c056%5E%21/#F0 Patch110: chromium-68.0.3440.106-fix-default-on-redeclaration.patch @@ -279,7 +276,13 @@ Patch111: chromium-69.0.3497.81-widevine-r2.patch # Forget about trying to make libc++ # BUILD SANELY PLEASE Patch112: chromium-69.0.3497.81-build-sanely-please.patch - +# Still moar GCC cleanups from upstream +Patch113: chromium-gcc8-r588316.patch +Patch114: chromium-gcc8-r588547.patch +Patch115: chromium-gcc8-r589614.patch +Patch116: chromium-gcc8-r591015.patch +# Disable fontconfig cache magic that breaks remoting +Patch117: chromium-70.0.3538.67-disable-fontconfig-cache-magic.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ @@ -582,7 +585,7 @@ Provides: bundled(freetype) = 2.9.3 %endif Provides: bundled(gperftools) = svn144 %if 0%{?bundleharfbuzz} -Provides: bundled(harfbuzz) = 1.4.2 +Provides: bundled(harfbuzz) = 1.8.6 %endif Provides: bundled(hunspell) = 1.6.0 Provides: bundled(iccjpeg) @@ -813,10 +816,14 @@ udev. %patch102 -p1 -b .py3fix %patch103 -p1 -b .py2 # %%patch108 -p1 -b .move-unique-ptr -%patch109 -p1 -b .aarch64-int64x1_t %patch110 -p1 -b .fix-default-redeclaration %patch111 -p1 -b .wvhack %patch112 -p1 -b .sanebuild +%patch113 -p1 -b .r588316 +%patch114 -p1 -b .r588547 +%patch115 -p1 -b .r589614 +%patch116 -p1 -b .r591015 +%patch117 -p1 -b .nofc # Change shebang in all relevant files in this directory and all subdirectories # See `man find` for how the `-exec command {} +` syntax works @@ -992,6 +999,7 @@ CHROMIUM_CORE_GN_DEFINES+=' use_custom_libcxx=false' %ifarch aarch64 CHROMIUM_CORE_GN_DEFINES+=' target_cpu="arm64"' %endif +CHROMIUM_CORE_GN_DEFINES+=' use_jumbo_build=true jumbo_file_merge_limit=12' export CHROMIUM_CORE_GN_DEFINES CHROMIUM_BROWSER_GN_DEFINES="" @@ -1008,11 +1016,6 @@ CHROMIUM_BROWSER_GN_DEFINES+=' remove_webcore_debug_symbols=true enable_hangout_ CHROMIUM_BROWSER_GN_DEFINES+=' use_aura=true' CHROMIUM_BROWSER_GN_DEFINES+=' enable_widevine=true' # CHROMIUM_BROWSER_GN_DEFINES+=' enable_webrtc=true' -%if 0%{gtk3} -CHROMIUM_BROWSER_GN_DEFINES+=' use_gtk3=true' -%else -CHROMIUM_BROWSER_GN_DEFINES+=' use_gtk3=false' -%endif export CHROMIUM_BROWSER_GN_DEFINES CHROMIUM_HEADLESS_GN_DEFINES="" @@ -1048,6 +1051,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'net/third_party/nss' \ 'net/third_party/quic' \ 'net/third_party/spdy' \ + 'net/third_party/uri_template' \ 'third_party/WebKit' \ 'third_party/abseil-cpp' \ 'third_party/adobe' \ @@ -1120,6 +1124,8 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/libXNVCtrl' \ 'third_party/libaddressinput' \ 'third_party/libaom' \ + 'third_party/libaom/source/libaom/third_party/vector' \ + 'third_party/libaom/source/libaom/third_party/x86inc' \ 'third_party/libdrm' \ 'third_party/libjingle' \ 'third_party/libjpeg_turbo' \ @@ -1206,6 +1212,13 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/web-animations-js' \ 'third_party/webdriver' \ 'third_party/webrtc' \ + 'third_party/webrtc/common_audio/third_party/fft4g' \ + 'third_party/webrtc/common_audio/third_party/spl_sqrt_floor' \ + 'third_party/webrtc/modules/third_party/fft' \ + 'third_party/webrtc/modules/third_party/g711' \ + 'third_party/webrtc/modules/third_party/g722' \ + 'third_party/webrtc/rtc_base/third_party/base64' \ + 'third_party/webrtc/rtc_base/third_party/sigslot' \ 'third_party/widevine' \ 'third_party/woff2' \ 'third_party/xdg-utils' \ @@ -1216,7 +1229,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'url/third_party/mozilla' \ 'v8/src/third_party/utf8-decoder' \ 'v8/src/third_party/valgrind' \ - 'v8/third_party/antlr4' \ + 'v8/third_party/v8' \ 'v8/third_party/inspector_protocol' \ --do-remove @@ -1316,6 +1329,8 @@ tools/gn/bootstrap/bootstrap.py -v "$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_ %{target}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_HEADLESS_GN_DEFINES" %{headlesstarget} %endif +%{target}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{remotingtarget} + %if %{bundlelibusbx} # no hackity hack hack %else @@ -1347,7 +1362,7 @@ sed -i.orig -e 's/getenv("CHROME_VERSION_EXTRA")/"Fedora Project"/' $FILE pushd remoting # ../../depot_tools/ninja -C ../%{target} -vvv remoting_me2me_host remoting_start_host remoting_it2me_native_messaging_host remoting_me2me_native_messaging_host remoting_native_messaging_manifests remoting_resources -../../depot_tools/ninja -C ../%{target} -vvv remoting_all +../../depot_tools/ninja -C ../%{remotingtarget} -vvv remoting_all %if 0%{?build_remoting_app} %if 0%{?nacl} GOOGLE_CLIENT_ID_REMOTING_IDENTITY_API=%{chromoting_client_id} ../../depot_tools/ninja -vv -C ../out/Release/ remoting_webapp @@ -1443,6 +1458,9 @@ for i in ../chromium-browser%{?chromium_channel}/lib*.so; do done popd %endif +popd + +pushd %{remotingtarget} # See remoting/host/installer/linux/Makefile for logic cp -a remoting_native_messaging_host %{buildroot}%{crd_path}/native-messaging-host @@ -1468,6 +1486,7 @@ for i in ../../../chromium/native-messaging-hosts/*; do cp -a $i . done popd +popd mkdir -p %{buildroot}/var/lib/chrome-remote-desktop touch %{buildroot}/var/lib/chrome-remote-desktop/hashes @@ -1482,7 +1501,6 @@ popd cp -a remoting_client_plugin_newlib.* %{buildroot}%{chromium_path} %endif %endif -popd pushd %{headlesstarget} cp -a headless_lib.pak headless_shell %{buildroot}%{chromium_path} @@ -1772,6 +1790,12 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Fri Nov 2 2018 Tom Callaway - 70.0.3538.77-1 +- .77 came out while I was working on this. :/ + +* Fri Nov 2 2018 Tom Callaway - 70.0.3538.67-1 +- update to 70 + * Tue Oct 16 2018 Tom Callaway - 69.0.3497.100-2 - do not play with fonts on freeworld builds diff --git a/sources b/sources index 6be1d19..1bbb46d 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (chromium-68.0.3440.106-clean.tar.xz) = a609975c96674f3a84a33bb3d57271535671e11d0775efeceff4f8a965851216038cf491281aaab0cc64c6e99af033f9c8a93f759f232e8c686408dbc09c8dd5 SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd -SHA512 (chromium-69.0.3497.100-clean.tar.xz) = 6e7bf831054d78e9bde8d708616189215e5b4baaeb2c37ca2864d3fb37326d70f5cb01ad91ad1fc0facfc1a688b6ae24c3649495759c00ed546b3f90c8d3fc54 +SHA512 (chromium-70.0.3538.77-clean.tar.xz) = 6086567e3ef317fed2c9edd9a435c1a862aafff39d496d827da3a21ed3ae60570ab2b052df5a8cfe5cee00742c4ca30ad9af25f8d70e52d1878aed92503fda20 From a8d905fd0387c5880c8b7e8bd485a0a69c7936e4 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 5 Nov 2018 16:01:43 -0500 Subject: [PATCH 0241/1449] drop jumbo_file_merge_limit to 8 to (hopefully) avoid OOMs on aarch64 --- chromium.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/chromium.spec b/chromium.spec index 06d4203..532c874 100644 --- a/chromium.spec +++ b/chromium.spec @@ -146,7 +146,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3538.77 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -999,7 +999,7 @@ CHROMIUM_CORE_GN_DEFINES+=' use_custom_libcxx=false' %ifarch aarch64 CHROMIUM_CORE_GN_DEFINES+=' target_cpu="arm64"' %endif -CHROMIUM_CORE_GN_DEFINES+=' use_jumbo_build=true jumbo_file_merge_limit=12' +CHROMIUM_CORE_GN_DEFINES+=' use_jumbo_build=true jumbo_file_merge_limit=8' export CHROMIUM_CORE_GN_DEFINES CHROMIUM_BROWSER_GN_DEFINES="" @@ -1790,6 +1790,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Mon Nov 5 2018 Tom Callaway - 70.0.3538.77-2 +- drop jumbo_file_merge_limit to 8 to (hopefully) avoid OOMs on aarch64 + * Fri Nov 2 2018 Tom Callaway - 70.0.3538.77-1 - .77 came out while I was working on this. :/ From 3558506da1924769455320f3419000cd6f836f74 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 6 Nov 2018 10:21:34 -0500 Subject: [PATCH 0242/1449] fix build with harfbuzz2 in rawhide --- chromium-70.0.3538.77-harfbuzz2-fix.patch | 80 +++++++++++++++++++++++ chromium.spec | 12 +++- 2 files changed, 91 insertions(+), 1 deletion(-) create mode 100644 chromium-70.0.3538.77-harfbuzz2-fix.patch diff --git a/chromium-70.0.3538.77-harfbuzz2-fix.patch b/chromium-70.0.3538.77-harfbuzz2-fix.patch new file mode 100644 index 0000000..2d5602d --- /dev/null +++ b/chromium-70.0.3538.77-harfbuzz2-fix.patch @@ -0,0 +1,80 @@ +From 7ae38170a117e909bb28e1470842b68de3501197 Mon Sep 17 00:00:00 2001 +From: Mike Gilbert +Date: Sun, 21 Oct 2018 10:06:53 -0400 +Subject: [PATCH] blink: add 'const' modifier for harfbuzz hb_codepoint_t + pointers + +This resolves a build failure against harfbuzz 2.0. + +Based on a patch by Alexandre Fierreira. + +Bug: https://bugs.gentoo.org/669034 +--- + .../renderer/platform/fonts/shaping/harfbuzz_face.cc | 2 +- + .../renderer/platform/fonts/skia/skia_text_metrics.cc | 9 +++++++-- + .../renderer/platform/fonts/skia/skia_text_metrics.h | 2 +- + 3 files changed, 9 insertions(+), 4 deletions(-) + +diff --git a/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face.cc b/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face.cc +index 8e7d91ca371f..e279a5876cb3 100644 +--- a/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face.cc ++++ b/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face.cc +@@ -139,7 +139,7 @@ static hb_position_t HarfBuzzGetGlyphHorizontalAdvance(hb_font_t* hb_font, + static void HarfBuzzGetGlyphHorizontalAdvances(hb_font_t* font, + void* font_data, + unsigned count, +- hb_codepoint_t* first_glyph, ++ const hb_codepoint_t* first_glyph, + unsigned int glyph_stride, + hb_position_t* first_advance, + unsigned int advance_stride, +diff --git a/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.cc b/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.cc +index 77ec6209fab9..9f9070921448 100644 +--- a/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.cc ++++ b/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.cc +@@ -18,6 +18,11 @@ T* advance_by_byte_size(T* p, unsigned byte_size) { + return reinterpret_cast(reinterpret_cast(p) + byte_size); + } + ++template ++T* advance_by_byte_size_const(T* p, unsigned byte_size) { ++ return reinterpret_cast(reinterpret_cast(p) + byte_size); ++} ++ + } // namespace + + SkiaTextMetrics::SkiaTextMetrics(const SkPaint* paint) : paint_(paint) { +@@ -39,7 +44,7 @@ void SkiaTextMetrics::GetGlyphWidthForHarfBuzz(hb_codepoint_t codepoint, + } + + void SkiaTextMetrics::GetGlyphWidthForHarfBuzz(unsigned count, +- hb_codepoint_t* glyphs, ++ const hb_codepoint_t* glyphs, + unsigned glyph_stride, + hb_position_t* advances, + unsigned advance_stride) { +@@ -48,7 +53,7 @@ void SkiaTextMetrics::GetGlyphWidthForHarfBuzz(unsigned count, + // array that copy them to a regular array. + Vector glyph_array(count); + for (unsigned i = 0; i < count; +- i++, glyphs = advance_by_byte_size(glyphs, glyph_stride)) { ++ i++, glyphs = advance_by_byte_size_const(glyphs, glyph_stride)) { + glyph_array[i] = *glyphs; + } + Vector sk_width_array(count); +diff --git a/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.h b/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.h +index 787d8af0375a..3bc4407c641b 100644 +--- a/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.h ++++ b/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.h +@@ -19,7 +19,7 @@ class SkiaTextMetrics final { + + void GetGlyphWidthForHarfBuzz(hb_codepoint_t, hb_position_t* width); + void GetGlyphWidthForHarfBuzz(unsigned count, +- hb_codepoint_t* first_glyph, ++ const hb_codepoint_t* first_glyph, + unsigned glyph_stride, + hb_position_t* first_advance, + unsigned advance_stride); +-- +2.19.1 + diff --git a/chromium.spec b/chromium.spec index 532c874..855ecf0 100644 --- a/chromium.spec +++ b/chromium.spec @@ -146,7 +146,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3538.77 -Release: 2%{?dist} +Release: 3%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -283,6 +283,9 @@ Patch115: chromium-gcc8-r589614.patch Patch116: chromium-gcc8-r591015.patch # Disable fontconfig cache magic that breaks remoting Patch117: chromium-70.0.3538.67-disable-fontconfig-cache-magic.patch +# Fix build against harfbuzz2 +Patch118: chromium-70.0.3538.77-harfbuzz2-fix.patch + # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ @@ -824,6 +827,10 @@ udev. %patch115 -p1 -b .r589614 %patch116 -p1 -b .r591015 %patch117 -p1 -b .nofc +%if 0%{?fedora} >= 30 +%patch118 -p1 -b .harfbuzz2 +%endif + # Change shebang in all relevant files in this directory and all subdirectories # See `man find` for how the `-exec command {} +` syntax works @@ -1790,6 +1797,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Tue Nov 6 2018 Tom Callaway - 70.0.3538.77-3 +- fix build with harfbuzz2 in rawhide + * Mon Nov 5 2018 Tom Callaway - 70.0.3538.77-2 - drop jumbo_file_merge_limit to 8 to (hopefully) avoid OOMs on aarch64 From 35ec6a6d16d70d4b42515a731823bd0fbd76b860 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 6 Nov 2018 13:29:47 -0500 Subject: [PATCH 0243/1449] fix aarch64 build against latest linux kernel headers --- ...ium-70.0.3538.77-aarch64-arch-want-new-stat.patch | 12 ++++++++++++ chromium.spec | 3 +++ 2 files changed, 15 insertions(+) create mode 100644 chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch diff --git a/chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch b/chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch new file mode 100644 index 0000000..ccecfcb --- /dev/null +++ b/chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch @@ -0,0 +1,12 @@ +diff -up chromium-70.0.3538.77/sandbox/linux/system_headers/arm64_linux_syscalls.h.aarch64-new-stat chromium-70.0.3538.77/sandbox/linux/system_headers/arm64_linux_syscalls.h +--- chromium-70.0.3538.77/sandbox/linux/system_headers/arm64_linux_syscalls.h.aarch64-new-stat 2018-11-06 13:27:05.118766581 -0500 ++++ chromium-70.0.3538.77/sandbox/linux/system_headers/arm64_linux_syscalls.h 2018-11-06 13:27:34.575204504 -0500 +@@ -5,6 +5,8 @@ + #ifndef SANDBOX_LINUX_SYSTEM_HEADERS_ARM64_LINUX_SYSCALLS_H_ + #define SANDBOX_LINUX_SYSTEM_HEADERS_ARM64_LINUX_SYSCALLS_H_ + ++#define __ARCH_WANT_NEW_STAT ++ + #include + + #if !defined(__NR_io_setup) diff --git a/chromium.spec b/chromium.spec index 855ecf0..59df03e 100644 --- a/chromium.spec +++ b/chromium.spec @@ -285,6 +285,8 @@ Patch116: chromium-gcc8-r591015.patch Patch117: chromium-70.0.3538.67-disable-fontconfig-cache-magic.patch # Fix build against harfbuzz2 Patch118: chromium-70.0.3538.77-harfbuzz2-fix.patch +# Fix aarch64 build against latest linux kernel headers +Patch119: chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: @@ -830,6 +832,7 @@ udev. %if 0%{?fedora} >= 30 %patch118 -p1 -b .harfbuzz2 %endif +%patch119 -p1 -b .aarch64-new-stat # Change shebang in all relevant files in this directory and all subdirectories From 4e28fb24fc74b095e2b0f086626848daceac4b97 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 7 Nov 2018 10:24:41 -0500 Subject: [PATCH 0244/1449] fix library requires filtering --- chromium.spec | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/chromium.spec b/chromium.spec index 59df03e..ceadc66 100644 --- a/chromium.spec +++ b/chromium.spec @@ -37,9 +37,9 @@ %global __provides_exclude_from %{chromium_path}/.*\\.so|%{chromium_path}/lib/.*\\.so|%{chromium_path}/lib/.*\\.so.* %if 0%{?rhel} == 7 -%global privlibs libEGL|libGLESv2|libVkICD_mock_icd|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_threading|libVkLayer_unique_objects|libaccessibility|libandroid_mojo_bindings_shared|libanimation|libapdu|libaura|libaura_extra|libbase|libbase_i18n|libbindings|libbindings_base|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core|libblink_core_mojo_bindings_shared|libblink_embedded_frame_sink_mojo_bindings_shared|libblink_modules|libblink_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcatalog_lib|libcbor|libcc|libcc_animation|libcc_base|libcc_debug|libcc_mojo_embedder|libcc_paint|libcdm_manager|libchrome_features|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom|libcontent_service_mojom_shared|libcrash_key|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevice_vr|libdevice_vr_mojo_bindings|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevices|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libembedder|libembedder_switches|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libfido|libfingerprint|libfreetype_harfbuzz|libgamepad_mojom|libgamepad_mojom_blink|libgamepad_mojom_shared|libgamepad_shared_typemap_traits|libgcm|libgeometry|libgeometry_skia|libgesture_detection|libgfx|libgfx_ipc|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_switches|libgfx_x11|libgin|libgl_in_process_context|libgl_init|libgl_wrapper|libgles2|libgles2_implementation|libgles2_utils|libgpu|libgpu_ipc_service|libgtkui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc|libipc_mojom|libipc_mojom_shared|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libleveldatabase|liblive_tab_count_metrics|libmanager|libmedia|libmedia_blink|libmedia_devices_mojo_bindings_shared|libmedia_gpu|libmedia_mojo_services|libmedia_session_cpp|libmedia_session_public_mojom|libmedia_session_public_mojom_shared|libmedia_webrtc|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirclient.so.9|libmirroring_service|libmojo_base_lib|libmojo_base_mojom|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_shared_typemap_traits|libmojo_core_embedder|libmojo_core_embedder_internal|libmojo_core_ports|libmojo_cpp_platform|libmojo_ime_lib|libmojo_mojom_bindings|libmojo_mojom_bindings_shared|libmojo_public_system|libmojo_public_system_cpp|libmojom_core_shared|libmojom_platform_shared|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp|libnetwork_cpp_base|libnetwork_service|libnetwork_session_configurator|libonc|libos_crypt|libperfetto|libplatform|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp|libresource_coordinator_cpp_base|libresource_coordinator_public_mojom|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libsandbox|libsandbox_services|libscheduling_metrics|libseccomp_bpf|libservice|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom|libservice_manager_mojom_blink|libservice_manager_mojom_constants|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_shared|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libtracing_cpp|libtracing_mojom|libtracing_mojom_shared|libui_base|libui_base_ime|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl|liburl_ipc|liburl_matcher|libusb_shared|libuser_manager|libuser_prefs|libv8|libv8_libbase|libv8_libplatform|libviews|libviz_common|libviz_resource_format_utils|libvr_common|libvr_ui|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libweb_dialogs|libwebdata_common|libwebgpu|libwebview|libwm|libwm_public|libwtf|libx11_events_platform|libx11_window|libzygote|libfontconfig +%global privlibs libEGL|libGLESv2|libVkICD_mock_icd|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_threading|libVkLayer_unique_objects|libaccessibility|libandroid_mojo_bindings_shared|libanimation|libapdu|libaura|libaura_extra|libbase|libbase_i18n|libbindings|libbindings_base|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core|libblink_core_mojo_bindings_shared|libblink_embedded_frame_sink_mojo_bindings_shared|libblink_modules|libblink_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcatalog_lib|libcbor|libcc|libcc_animation|libcc_base|libcc_debug|libcc_mojo_embedder|libcc_paint|libcdm_manager|libchrome_features|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom|libcontent_service_mojom_shared|libcrash_key|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevice_vr|libdevice_vr_mojo_bindings|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevices|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libembedder|libembedder_switches|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libffmpeg|libfido|libfingerprint|libfreetype_harfbuzz|libgamepad_mojom|libgamepad_mojom_blink|libgamepad_mojom_shared|libgamepad_shared_typemap_traits|libgcm|libgeometry|libgeometry_skia|libgesture_detection|libgfx|libgfx_ipc|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_switches|libgfx_x11|libgin|libgl_in_process_context|libgl_init|libgl_wrapper|libgles2|libgles2_implementation|libgles2_utils|libgpu|libgpu_ipc_service|libgtkui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc|libipc_mojom|libipc_mojom_shared|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libleveldatabase|liblive_tab_count_metrics|libmanager|libmedia|libmedia_blink|libmedia_devices_mojo_bindings_shared|libmedia_gpu|libmedia_mojo_services|libmedia_session_cpp|libmedia_session_public_mojom|libmedia_session_public_mojom_shared|libmedia_webrtc|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirclient.so.9|libmirroring_service|libmojo_base_lib|libmojo_base_mojom|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_shared_typemap_traits|libmojo_core_embedder|libmojo_core_embedder_internal|libmojo_core_ports|libmojo_cpp_platform|libmojo_ime_lib|libmojo_mojom_bindings|libmojo_mojom_bindings_shared|libmojo_public_system|libmojo_public_system_cpp|libmojom_core_shared|libmojom_platform_shared|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp|libnetwork_cpp_base|libnetwork_service|libnetwork_session_configurator|libonc|libos_crypt|libperfetto|libplatform|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp|libresource_coordinator_cpp_base|libresource_coordinator_public_mojom|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libsandbox|libsandbox_services|libscheduling_metrics|libseccomp_bpf|libservice|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom|libservice_manager_mojom_blink|libservice_manager_mojom_constants|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_shared|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libtracing_cpp|libtracing_mojom|libtracing_mojom_shared|libui_base|libui_base_ime|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl|liburl_ipc|liburl_matcher|libusb_shared|libuser_manager|libuser_prefs|libv8|libv8_libbase|libv8_libplatform|libviews|libviz_common|libviz_resource_format_utils|libvr_common|libvr_ui|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libweb_dialogs|libwebdata_common|libwebgpu|libwebview|libwm|libwm_public|libwtf|libx11_events_platform|libx11_window|libzygote|libfontconfig %else -%global privlibs libEGL|libGLESv2|libVkICD_mock_icd|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_threading|libVkLayer_unique_objects|libaccessibility|libandroid_mojo_bindings_shared|libanimation|libapdu|libaura|libaura_extra|libbase|libbase_i18n|libbindings|libbindings_base|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core|libblink_core_mojo_bindings_shared|libblink_embedded_frame_sink_mojo_bindings_shared|libblink_modules|libblink_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcatalog_lib|libcbor|libcc|libcc_animation|libcc_base|libcc_debug|libcc_mojo_embedder|libcc_paint|libcdm_manager|libchrome_features|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom|libcontent_service_mojom_shared|libcrash_key|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevice_vr|libdevice_vr_mojo_bindings|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevices|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libembedder|libembedder_switches|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libfido|libfingerprint|libfreetype_harfbuzz|libgamepad_mojom|libgamepad_mojom_blink|libgamepad_mojom_shared|libgamepad_shared_typemap_traits|libgcm|libgeometry|libgeometry_skia|libgesture_detection|libgfx|libgfx_ipc|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_switches|libgfx_x11|libgin|libgl_in_process_context|libgl_init|libgl_wrapper|libgles2|libgles2_implementation|libgles2_utils|libgpu|libgpu_ipc_service|libgtkui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc|libipc_mojom|libipc_mojom_shared|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libleveldatabase|liblive_tab_count_metrics|libmanager|libmedia|libmedia_blink|libmedia_devices_mojo_bindings_shared|libmedia_gpu|libmedia_mojo_services|libmedia_session_cpp|libmedia_session_public_mojom|libmedia_session_public_mojom_shared|libmedia_webrtc|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirclient.so.9|libmirroring_service|libmojo_base_lib|libmojo_base_mojom|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_shared_typemap_traits|libmojo_core_embedder|libmojo_core_embedder_internal|libmojo_core_ports|libmojo_cpp_platform|libmojo_ime_lib|libmojo_mojom_bindings|libmojo_mojom_bindings_shared|libmojo_public_system|libmojo_public_system_cpp|libmojom_core_shared|libmojom_platform_shared|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp|libnetwork_cpp_base|libnetwork_service|libnetwork_session_configurator|libonc|libos_crypt|libperfetto|libplatform|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp|libresource_coordinator_cpp_base|libresource_coordinator_public_mojom|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libsandbox|libsandbox_services|libscheduling_metrics|libseccomp_bpf|libservice|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom|libservice_manager_mojom_blink|libservice_manager_mojom_constants|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_shared|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libtracing_cpp|libtracing_mojom|libtracing_mojom_shared|libui_base|libui_base_ime|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl|liburl_ipc|liburl_matcher|libusb_shared|libuser_manager|libuser_prefs|libv8|libv8_libbase|libv8_libplatform|libviews|libviz_common|libviz_resource_format_utils|libvr_common|libvr_ui|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libweb_dialogs|libwebdata_common|libwebgpu|libwebview|libwm|libwm_public|libwtf|libx11_events_platform|libx11_window|libzygote +%global privlibs libEGL|libGLESv2|libVkICD_mock_icd|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_threading|libVkLayer_unique_objects|libaccessibility|libandroid_mojo_bindings_shared|libanimation|libapdu|libaura|libaura_extra|libbase|libbase_i18n|libbindings|libbindings_base|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core|libblink_core_mojo_bindings_shared|libblink_embedded_frame_sink_mojo_bindings_shared|libblink_modules|libblink_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcatalog_lib|libcbor|libcc|libcc_animation|libcc_base|libcc_debug|libcc_mojo_embedder|libcc_paint|libcdm_manager|libchrome_features|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom|libcontent_service_mojom_shared|libcrash_key|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevice_vr|libdevice_vr_mojo_bindings|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevices|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libembedder|libembedder_switches|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libffmpeg|libfido|libfingerprint|libfreetype_harfbuzz|libgamepad_mojom|libgamepad_mojom_blink|libgamepad_mojom_shared|libgamepad_shared_typemap_traits|libgcm|libgeometry|libgeometry_skia|libgesture_detection|libgfx|libgfx_ipc|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_switches|libgfx_x11|libgin|libgl_in_process_context|libgl_init|libgl_wrapper|libgles2|libgles2_implementation|libgles2_utils|libgpu|libgpu_ipc_service|libgtkui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc|libipc_mojom|libipc_mojom_shared|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libleveldatabase|liblive_tab_count_metrics|libmanager|libmedia|libmedia_blink|libmedia_devices_mojo_bindings_shared|libmedia_gpu|libmedia_mojo_services|libmedia_session_cpp|libmedia_session_public_mojom|libmedia_session_public_mojom_shared|libmedia_webrtc|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirclient.so.9|libmirroring_service|libmojo_base_lib|libmojo_base_mojom|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_shared_typemap_traits|libmojo_core_embedder|libmojo_core_embedder_internal|libmojo_core_ports|libmojo_cpp_platform|libmojo_ime_lib|libmojo_mojom_bindings|libmojo_mojom_bindings_shared|libmojo_public_system|libmojo_public_system_cpp|libmojom_core_shared|libmojom_platform_shared|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp|libnetwork_cpp_base|libnetwork_service|libnetwork_session_configurator|libonc|libos_crypt|libperfetto|libplatform|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp|libresource_coordinator_cpp_base|libresource_coordinator_public_mojom|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libsandbox|libsandbox_services|libscheduling_metrics|libseccomp_bpf|libservice|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom|libservice_manager_mojom_blink|libservice_manager_mojom_constants|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_shared|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libtracing_cpp|libtracing_mojom|libtracing_mojom_shared|libui_base|libui_base_ime|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl|liburl_ipc|liburl_matcher|libusb_shared|libuser_manager|libuser_prefs|libv8|libv8_libbase|libv8_libplatform|libviews|libviz_common|libviz_resource_format_utils|libvr_common|libvr_ui|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libweb_dialogs|libwebdata_common|libwebgpu|libwebview|libwm|libwm_public|libwtf|libx11_events_platform|libx11_window|libzygote %endif %global __requires_exclude ^(%{privlibs})\\.so* @@ -146,7 +146,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3538.77 -Release: 3%{?dist} +Release: 4%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1800,6 +1800,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Wed Nov 7 2018 Tom Callaway - 70.0.3538.77-4 +- fix library requires filtering + * Tue Nov 6 2018 Tom Callaway - 70.0.3538.77-3 - fix build with harfbuzz2 in rawhide From 785459dde15e21a236b18a19a83b571c9ce01a80 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Thu, 15 Nov 2018 12:53:55 +0100 Subject: [PATCH 0245/1449] https://fedoraproject.org/wiki/Changes/No_more_automagic_Python_bytecompilation_phase_2 --- chromium.spec | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/chromium.spec b/chromium.spec index ceadc66..4b24f23 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1,3 +1,7 @@ +# This package depends on automagic byte compilation +# https://fedoraproject.org/wiki/Changes/No_more_automagic_Python_bytecompilation_phase_2 +%global _python_bytecompile_extra 1 + # NEVER EVER EVER turn this on in official builds %global freeworld 0 %if %{freeworld} From 8401a03dd0e2254a35f8cba9047472c59d2bf42c Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 26 Nov 2018 13:11:42 -0500 Subject: [PATCH 0246/1449] .110 --- .gitignore | 1 + chromium.spec | 7 +++++-- sources | 2 +- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index c7fe514..ba0ef80 100644 --- a/.gitignore +++ b/.gitignore @@ -70,3 +70,4 @@ /chromium-69.0.3497.92-clean.tar.xz /chromium-69.0.3497.100-clean.tar.xz /chromium-70.0.3538.77-clean.tar.xz +/chromium-70.0.3538.110-clean.tar.xz diff --git a/chromium.spec b/chromium.spec index 4b24f23..4520dfa 100644 --- a/chromium.spec +++ b/chromium.spec @@ -149,8 +149,8 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3538.77 -Release: 4%{?dist} +Version: %{majorversion}.0.3538.110 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1804,6 +1804,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Mon Nov 26 2018 Tom Callaway - 70.0.3538.110-1 +- update to .110 + * Wed Nov 7 2018 Tom Callaway - 70.0.3538.77-4 - fix library requires filtering diff --git a/sources b/sources index 1bbb46d..7941afe 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (chromium-68.0.3440.106-clean.tar.xz) = a609975c96674f3a84a33bb3d57271535671e11d0775efeceff4f8a965851216038cf491281aaab0cc64c6e99af033f9c8a93f759f232e8c686408dbc09c8dd5 SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd -SHA512 (chromium-70.0.3538.77-clean.tar.xz) = 6086567e3ef317fed2c9edd9a435c1a862aafff39d496d827da3a21ed3ae60570ab2b052df5a8cfe5cee00742c4ca30ad9af25f8d70e52d1878aed92503fda20 +SHA512 (chromium-70.0.3538.110-clean.tar.xz) = 3c251137d56373820b8ec175b31947a9dccb8e7bb53a54c45afdd26747dc8ba23b1f2bd71b2e44f419e2ec74fa2fc10ae0501c6e47093b04e05f5547d0a123ee From 7029b1fedee475ec3017b84e3d5411f7513cbadc Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 26 Nov 2018 13:43:04 -0500 Subject: [PATCH 0247/1449] remove sysroot options --- ...70.0.3538.110-remove-sysroot-options.patch | 23 +++++++++++++++++++ chromium.spec | 3 +++ 2 files changed, 26 insertions(+) create mode 100644 chromium-70.0.3538.110-remove-sysroot-options.patch diff --git a/chromium-70.0.3538.110-remove-sysroot-options.patch b/chromium-70.0.3538.110-remove-sysroot-options.patch new file mode 100644 index 0000000..9eb99d1 --- /dev/null +++ b/chromium-70.0.3538.110-remove-sysroot-options.patch @@ -0,0 +1,23 @@ +diff -up chromium-70.0.3538.110/tools/gn/bootstrap/bootstrap.py.sysrootfix chromium-70.0.3538.110/tools/gn/bootstrap/bootstrap.py +--- chromium-70.0.3538.110/tools/gn/bootstrap/bootstrap.py.sysrootfix 2018-11-26 13:40:19.324713204 -0500 ++++ chromium-70.0.3538.110/tools/gn/bootstrap/bootstrap.py 2018-11-26 13:40:43.199180888 -0500 +@@ -46,10 +46,6 @@ def main(argv): + '--build-path', + help='The directory in which to build gn, ' + 'relative to the src directory. (eg. out/Release)') +- parser.add_option( +- '--with-sysroot', +- action='store_true', +- help='Download and build with the Debian sysroot.') + parser.add_option('-v', '--verbose', help='ignored') + options, args = parser.parse_args(argv) + if args: +@@ -71,8 +67,6 @@ def main(argv): + '--no-last-commit-position', + '--out-path=' + gn_build_dir, + ] +- if not options.with_sysroot: +- cmd.append('--no-sysroot') + if options.debug: + cmd.append('--debug') + subprocess.check_call(cmd) diff --git a/chromium.spec b/chromium.spec index 4520dfa..0fc4290 100644 --- a/chromium.spec +++ b/chromium.spec @@ -291,6 +291,8 @@ Patch117: chromium-70.0.3538.67-disable-fontconfig-cache-magic.patch Patch118: chromium-70.0.3538.77-harfbuzz2-fix.patch # Fix aarch64 build against latest linux kernel headers Patch119: chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch +# https://chromium.googlesource.com/chromium/src/tools/gn/+/6630c2e334d7bc179e95a3d543a8eca3201d6725 +Patch120: chromium-70.0.3538.110-remove-sysroot-options.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: @@ -837,6 +839,7 @@ udev. %patch118 -p1 -b .harfbuzz2 %endif %patch119 -p1 -b .aarch64-new-stat +%patch120 -p1 -b .sysrootfix # Change shebang in all relevant files in this directory and all subdirectories From 278c62709d1dba5883c3b69047706837bb402bd7 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 27 Nov 2018 16:15:35 -0500 Subject: [PATCH 0248/1449] enable vaapi support (thanks to Akarshan Biswas for doing the hard work here) --- chromium-browser.sh | 1 + chromium.spec | 8 + enable-vaapi.patch | 645 ++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 654 insertions(+) create mode 100644 enable-vaapi.patch diff --git a/chromium-browser.sh b/chromium-browser.sh index 887bd26..97607b9 100755 --- a/chromium-browser.sh +++ b/chromium-browser.sh @@ -43,6 +43,7 @@ CHROMIUM_DISTRO_FLAGS=" --enable-plugins \ --enable-extensions \ --enable-user-scripts \ --enable-printing \ + --enable-gpu-rasterization \ --enable-sync \ --auto-ssl-client-auth @@EXTRA_FLAGS@@" diff --git a/chromium.spec b/chromium.spec index 0fc4290..0813245 100644 --- a/chromium.spec +++ b/chromium.spec @@ -293,6 +293,9 @@ Patch118: chromium-70.0.3538.77-harfbuzz2-fix.patch Patch119: chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch # https://chromium.googlesource.com/chromium/src/tools/gn/+/6630c2e334d7bc179e95a3d543a8eca3201d6725 Patch120: chromium-70.0.3538.110-remove-sysroot-options.patch +# Enable VAAPI support on Linux +# NOTE: This patch will never land upstream +Patch121: enable-vaapi.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: @@ -840,6 +843,7 @@ udev. %endif %patch119 -p1 -b .aarch64-new-stat %patch120 -p1 -b .sysrootfix +%patch121 -p1 -b .vaapi # Change shebang in all relevant files in this directory and all subdirectories @@ -1032,6 +1036,7 @@ CHROMIUM_BROWSER_GN_DEFINES+=' is_component_ffmpeg=false is_component_build=fals CHROMIUM_BROWSER_GN_DEFINES+=' remove_webcore_debug_symbols=true enable_hangout_services_extension=true' CHROMIUM_BROWSER_GN_DEFINES+=' use_aura=true' CHROMIUM_BROWSER_GN_DEFINES+=' enable_widevine=true' +CHROMIUM_BROWSER_GN_DEFINES+=' use_vaapi=true' # CHROMIUM_BROWSER_GN_DEFINES+=' enable_webrtc=true' export CHROMIUM_BROWSER_GN_DEFINES @@ -1807,6 +1812,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Tue Nov 27 2018 Tom Callaway - 70.0.3538.110-2 +- enable vaapi support (thanks to Akarshan Biswas for doing the hard work here) + * Mon Nov 26 2018 Tom Callaway - 70.0.3538.110-1 - update to .110 diff --git a/enable-vaapi.patch b/enable-vaapi.patch new file mode 100644 index 0000000..4f94214 --- /dev/null +++ b/enable-vaapi.patch @@ -0,0 +1,645 @@ + + + +enable-vaapi.patch - free/chromium-vaapi.git - chromium-vaapi + + + + + + + + + + + + + +
+ + + + +
+summaryrefslogtreecommitdiffstats
+ + + +
+
+
blob: 6211000401f259d82599ee2bef4f255dabf0cd32 (plain) + + +
1
+2
+3
+4
+5
+6
+7
+8
+9
+10
+11
+12
+13
+14
+15
+16
+17
+18
+19
+20
+21
+22
+23
+24
+25
+26
+27
+28
+29
+30
+31
+32
+33
+34
+35
+36
+37
+38
+39
+40
+41
+42
+43
+44
+45
+46
+47
+48
+49
+50
+51
+52
+53
+54
+55
+56
+57
+58
+59
+60
+61
+62
+63
+64
+65
+66
+67
+68
+69
+70
+71
+72
+73
+74
+75
+76
+77
+78
+79
+80
+81
+82
+83
+84
+85
+86
+87
+88
+89
+90
+91
+92
+93
+94
+95
+96
+97
+98
+99
+100
+101
+102
+103
+104
+105
+106
+107
+108
+109
+110
+111
+112
+113
+114
+115
+116
+117
+118
+119
+120
+121
+122
+123
+124
+125
+126
+127
+128
+129
+130
+131
+132
+133
+134
+135
+136
+137
+138
+139
+140
+141
+142
+143
+144
+145
+146
+147
+148
+149
+150
+151
+152
+153
+154
+155
+156
+157
+158
+159
+160
+161
+162
+163
+164
+165
+166
+167
+168
+169
+170
+171
+172
+173
+174
+175
+176
+177
+178
+179
+180
+181
+182
+183
+184
+185
+186
+187
+188
+189
+190
+191
+192
+193
+194
+195
+196
+197
+198
+199
+200
+201
+202
+203
+204
+205
+206
+207
+208
+209
+210
+211
+212
+213
+214
+215
+216
+217
+218
+219
+220
+221
+222
+223
+224
+225
+226
+227
+228
+229
+230
+231
+232
+233
+234
+235
+236
+237
+238
+239
+240
+241
+242
+243
+244
+245
+246
+247
+248
+249
+250
+251
+252
+253
+254
+255
+256
+257
+258
+259
+260
+261
+262
+263
+264
+265
+266
+267
+268
+269
+270
+271
+272
+273
+274
+275
+276
+277
+278
+279
+280
+281
+282
+283
+284
+285
+286
+287
+288
+289
+290
+291
+292
+
From 9eef10b939b9eee6e7bb58c4ca3a8e119df518c1 Mon Sep 17 00:00:00 2001
+From: Akarshan Biswas <akarshan.biswas@gmail.com>
+Date: Sun, 4 Nov 2018 20:26:54 +0530
+Subject: [PATCH] Enable vaapi on Linux
+
+---
+ chrome/browser/about_flags.cc                | 14 +++++++------
+ chrome/browser/flag_descriptions.cc          | 22 +++++++++++++-------
+ chrome/browser/flag_descriptions.h           | 16 +++++++++-----
+ components/viz/service/main/viz_main_impl.cc |  2 +-
+ content/gpu/BUILD.gn                         |  6 ++++++
+ content/gpu/gpu_main.cc                      |  4 ++--
+ gpu/config/software_rendering_list.json      | 11 ----------
+ media/base/media_switches.cc                 |  2 +-
+ media/filters/BUILD.gn                       |  3 ++-
+ media/gpu/BUILD.gn                           |  7 +++++++
+ 10 files changed, 52 insertions(+), 35 deletions(-)
+
+diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
+index d029d0648..39df8d6cf 100644
+--- a/chrome/browser/about_flags.cc
++++ b/chrome/browser/about_flags.cc
+@@ -1775,7 +1775,7 @@ const FeatureEntry kFeatureEntries[] = {
+         "disable-accelerated-video-decode",
+         flag_descriptions::kAcceleratedVideoDecodeName,
+         flag_descriptions::kAcceleratedVideoDecodeDescription,
+-        kOsMac | kOsWin | kOsCrOS | kOsAndroid,
++        kOsMac | kOsWin | kOsCrOS | kOsAndroid | kOsLinux,
+         SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedVideoDecode),
+     },
+ #if defined(OS_WIN)
+@@ -2457,12 +2457,12 @@ const FeatureEntry kFeatureEntries[] = {
+      FEATURE_VALUE_TYPE(features::kOpenVR)},
+ #endif  // ENABLE_OPENVR
+ #endif  // ENABLE_VR
+-#if defined(OS_CHROMEOS)
++#if defined(OS_CHROMEOS) || defined(OS_LINUX)
+     {"disable-accelerated-mjpeg-decode",
+      flag_descriptions::kAcceleratedMjpegDecodeName,
+-     flag_descriptions::kAcceleratedMjpegDecodeDescription, kOsCrOS,
++     flag_descriptions::kAcceleratedMjpegDecodeDescription, kOsCrOS | kOsLinux,
+      SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedMjpegDecode)},
+-#endif  // OS_CHROMEOS
++#endif  // OS_CHROMEOS OS_LINUX
+     {"v8-cache-options", flag_descriptions::kV8CacheOptionsName,
+      flag_descriptions::kV8CacheOptionsDescription, kOsAll,
+      MULTI_VALUE_TYPE(kV8CacheOptionsChoices)},
+@@ -4444,12 +4444,14 @@ const FeatureEntry kFeatureEntries[] = {
+                                     "AutofillDropdownLayout")},
+ #endif  // OS_ANDROID
+ 
+-#if defined(OS_CHROMEOS)
++#if defined(OS_CHROMEOS) || defined(OS_LINUX)
+     {"enable-vaapi-jpeg-image-decode-acceleration",
+      flag_descriptions::kVaapiJpegImageDecodeAccelerationName,
+-     flag_descriptions::kVaapiJpegImageDecodeAccelerationDescription, kOsCrOS,
++     flag_descriptions::kVaapiJpegImageDecodeAccelerationDescription, kOsCrOS | kOsLinux,
+      FEATURE_VALUE_TYPE(features::kVaapiJpegImageDecodeAcceleration)},
++#endif
+ 
++#if defined(OS_CHROMEOS)
+     {"enable-home-launcher-gestures",
+      flag_descriptions::kEnableHomeLauncherGesturesName,
+      flag_descriptions::kEnableHomeLauncherGesturesDescription, kOsCrOS,
+diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc
+index 0cb812619..df8ecb24e 100644
+--- a/chrome/browser/flag_descriptions.cc
++++ b/chrome/browser/flag_descriptions.cc
+@@ -3053,9 +3053,9 @@ const char kTextSuggestionsTouchBarDescription[] =
+ 
+ #endif
+ 
+-// Chrome OS -------------------------------------------------------------------
++// Chrome OS and Linux -------------------------------------------------------------------
+ 
+-#if defined(OS_CHROMEOS)
++#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
+ 
+ const char kAcceleratedMjpegDecodeName[] =
+     "Hardware-accelerated mjpeg decode for captured frame";
+@@ -3063,6 +3063,18 @@ const char kAcceleratedMjpegDecodeDescription[] =
+     "Enable hardware-accelerated mjpeg decode for captured frame where "
+     "available.";
+ 
++const char kVaapiJpegImageDecodeAccelerationName[] =
++    "VA-API JPEG decode acceleration for images";
++const char kVaapiJpegImageDecodeAccelerationDescription[] =
++    "Enable or disable decode acceleration of JPEG images (as opposed to camera"
++    " captures) using the VA-API.";
++
++#endif  // defined(OS_CHROMEOS) defined(OS_LINUX) and !defined(OS_ANDROID)
++
++// Only Chrome OS  ------------------------------------------------------
++
++#if defined(OS_CHROMEOS)
++
+ const char kAllowTouchpadThreeFingerClickName[] = "Touchpad three-finger-click";
+ const char kAllowTouchpadThreeFingerClickDescription[] =
+     "Enables touchpad three-finger-click as middle button.";
+@@ -3564,12 +3576,6 @@ const char kUseMonitorColorSpaceDescription[] =
+     "Enables Chrome to use the  color space information provided by the monitor"
+     " instead of the default sRGB color space.";
+ 
+-const char kVaapiJpegImageDecodeAccelerationName[] =
+-    "VA-API JPEG decode acceleration for images";
+-const char kVaapiJpegImageDecodeAccelerationDescription[] =
+-    "Enable or disable decode acceleration of JPEG images (as opposed to camera"
+-    " captures) using the VA-API.";
+-
+ const char kVideoPlayerChromecastSupportName[] =
+     "Experimental Chromecast support for Video Player";
+ const char kVideoPlayerChromecastSupportDescription[] =
+diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
+index b3c5e5691..14d7e33e9 100644
+--- a/chrome/browser/flag_descriptions.h
++++ b/chrome/browser/flag_descriptions.h
+@@ -1846,13 +1846,22 @@ extern const char kPermissionPromptPersistenceToggleDescription[];
+ 
+ #endif  // defined(OS_MACOSX)
+ 
+-// Chrome OS ------------------------------------------------------------------
++// Chrome OS and Linux ------------------------------------------------------------------
+ 
+-#if defined(OS_CHROMEOS)
++#if defined(OS_CHROMEOS)  || (defined(OS_LINUX) && !defined(OS_ANDROID))
+ 
+ extern const char kAcceleratedMjpegDecodeName[];
+ extern const char kAcceleratedMjpegDecodeDescription[];
+ 
++extern const char kVaapiJpegImageDecodeAccelerationName[];
++extern const char kVaapiJpegImageDecodeAccelerationDescription[];
++
++#endif
++
++// Chrome OS ----------------------------------------------------------------------
++
++#if defined(OS_CHROMEOS)
++
+ extern const char kAllowTouchpadThreeFingerClickName[];
+ extern const char kAllowTouchpadThreeFingerClickDescription[];
+ 
+@@ -2158,9 +2167,6 @@ extern const char kUseMashDescription[];
+ extern const char kUseMonitorColorSpaceName[];
+ extern const char kUseMonitorColorSpaceDescription[];
+ 
+-extern const char kVaapiJpegImageDecodeAccelerationName[];
+-extern const char kVaapiJpegImageDecodeAccelerationDescription[];
+-
+ extern const char kVideoPlayerChromecastSupportName[];
+ extern const char kVideoPlayerChromecastSupportDescription[];
+ 
+diff --git a/components/viz/service/main/viz_main_impl.cc b/components/viz/service/main/viz_main_impl.cc
+index 2196abef4..b4e0a1ae1 100644
+--- a/components/viz/service/main/viz_main_impl.cc
++++ b/components/viz/service/main/viz_main_impl.cc
+@@ -41,7 +41,7 @@ std::unique_ptr<base::Thread> CreateAndStartIOThread() {
+   // It should be possible to use |main_task_runner_| for doing IO tasks.
+   base::Thread::Options thread_options(base::MessageLoop::TYPE_IO, 0);
+   thread_options.priority = base::ThreadPriority::NORMAL;
+-#if defined(OS_ANDROID) || defined(OS_CHROMEOS)
++#if defined(OS_ANDROID) || defined(OS_CHROMEOS) || defined(OS_LINUX)
+   // TODO(reveman): Remove this in favor of setting it explicitly for each
+   // type of process.
+   thread_options.priority = base::ThreadPriority::DISPLAY;
+diff --git a/content/gpu/BUILD.gn b/content/gpu/BUILD.gn
+index 8974e441d..d7eba85a9 100644
+--- a/content/gpu/BUILD.gn
++++ b/content/gpu/BUILD.gn
+@@ -6,6 +6,7 @@ import("//build/config/jumbo.gni")
+ import("//build/config/ui.gni")
+ import("//gpu/vulkan/features.gni")
+ import("//media/media_options.gni")
++import("//media/gpu/args.gni")
+ import("//ui/ozone/ozone.gni")
+ 
+ # See //content/BUILD.gn for how this works.
+@@ -134,4 +135,9 @@ target(link_target_type, "gpu_sources") {
+       (!is_chromecast || is_cast_desktop_build)) {
+     configs += [ "//build/config/linux/dri" ]
+   }
++
++  # Use vaapi on desktop Linux builds when use_vaapi is set
++  if (is_desktop_linux && use_vaapi) {
++    public_configs = [ "//media/gpu:libva_config" ]
++  }
+ }
+diff --git a/content/gpu/gpu_main.cc b/content/gpu/gpu_main.cc
+index f589d015d..03fd1b44a 100644
+--- a/content/gpu/gpu_main.cc
++++ b/content/gpu/gpu_main.cc
+@@ -283,7 +283,7 @@ int GpuMain(const MainFunctionParams& parameters) {
+ 
+   base::PlatformThread::SetName("CrGpuMain");
+ 
+-#if defined(OS_ANDROID) || defined(OS_CHROMEOS)
++#if defined(OS_ANDROID) || defined(OS_CHROMEOS) || defined(OS_LINUX)
+   // Set thread priority before sandbox initialization.
+   base::PlatformThread::SetCurrentThreadPriority(base::ThreadPriority::DISPLAY);
+ #endif
+@@ -316,7 +316,7 @@ int GpuMain(const MainFunctionParams& parameters) {
+   GetContentClient()->SetGpuInfo(gpu_init->gpu_info());
+ 
+   base::ThreadPriority io_thread_priority = base::ThreadPriority::NORMAL;
+-#if defined(OS_ANDROID) || defined(OS_CHROMEOS)
++#if defined(OS_ANDROID) || defined(OS_CHROMEOS) || defined(OS_LINUX)
+   io_thread_priority = base::ThreadPriority::DISPLAY;
+ #endif
+ 
+diff --git a/gpu/config/software_rendering_list.json b/gpu/config/software_rendering_list.json
+index 445953a64..0aac9ddb6 100644
+--- a/gpu/config/software_rendering_list.json
++++ b/gpu/config/software_rendering_list.json
+@@ -373,17 +373,6 @@
+         "all"
+       ]
+     },
+-    {
+-      "id": 48,
+-      "description": "Accelerated video decode is unavailable on Linux",
+-      "cr_bugs": [137247],
+-      "os": {
+-        "type": "linux"
+-      },
+-      "features": [
+-        "accelerated_video_decode"
+-      ]
+-    },
+     {
+       "id": 50,
+       "description": "Disable VMware software renderer on older Mesa",
+diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc
+index 684c1d5cf..e887e60bb 100644
+--- a/media/base/media_switches.cc
++++ b/media/base/media_switches.cc
+@@ -468,7 +468,7 @@ bool IsVideoCaptureAcceleratedJpegDecodingEnabled() {
+           switches::kUseFakeJpegDecodeAccelerator)) {
+     return true;
+   }
+-#if defined(OS_CHROMEOS)
++#if defined(OS_CHROMEOS) || defined(OS_LINUX)
+   return true;
+ #endif
+   return false;
+diff --git a/media/filters/BUILD.gn b/media/filters/BUILD.gn
+index ab6215152..b8d1ee896 100644
+--- a/media/filters/BUILD.gn
++++ b/media/filters/BUILD.gn
+@@ -5,6 +5,7 @@
+ import("//build/config/jumbo.gni")
+ import("//media/media_options.gni")
+ import("//third_party/libaom/options.gni")
++import("//media/gpu/args.gni")
+ 
+ jumbo_source_set("filters") {
+   # Do not expand the visibility here without double-checking with OWNERS, this
+@@ -198,7 +199,7 @@ jumbo_source_set("filters") {
+     deps += [ "//media/base/android" ]
+   }
+ 
+-  if (current_cpu != "arm" && is_linux) {
++  if (use_vaapi && is_linux) {
+     sources += [
+       "h264_bitstream_buffer.cc",
+       "h264_bitstream_buffer.h",
+diff --git a/media/gpu/BUILD.gn b/media/gpu/BUILD.gn
+index 9ef4730a4..0c3a06c24 100644
+--- a/media/gpu/BUILD.gn
++++ b/media/gpu/BUILD.gn
+@@ -501,6 +501,12 @@ if (use_v4l2_codec || use_vaapi || is_mac || is_win) {
+   }
+ }
+ 
++import("//build/config/linux/pkg_config.gni")
++
++pkg_config("libva_config") {
++  packages = [ "libva" ]
++}
++
+ if (use_vaapi) {
+   test("jpeg_encode_accelerator_unittest") {
+     deps = [
+@@ -571,6 +577,7 @@ if (use_v4l2_codec || use_vaapi) {
+     if (use_ozone) {
+       deps += [ "//ui/ozone" ]
+     }
++    public_configs = [ ":libva_config" ]
+   }
+ }
+ 
+-- 
+2.19.1
+
+
+
+ +
+ + From 4a928246b8f0a04149cddbb4a874322575da5a37 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 27 Nov 2018 16:16:13 -0500 Subject: [PATCH 0249/1449] increment release, you dummy --- chromium.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 0813245..c189130 100644 --- a/chromium.spec +++ b/chromium.spec @@ -150,7 +150,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3538.110 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) From 8529bb834b687bf54b36f9038884eb5d26dca226 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 27 Nov 2018 16:40:18 -0500 Subject: [PATCH 0250/1449] fix patch --- enable-vaapi.patch | 492 +++++---------------------------------------- 1 file changed, 54 insertions(+), 438 deletions(-) diff --git a/enable-vaapi.patch b/enable-vaapi.patch index 4f94214..16aa3b0 100644 --- a/enable-vaapi.patch +++ b/enable-vaapi.patch @@ -1,373 +1,7 @@ - - - -enable-vaapi.patch - free/chromium-vaapi.git - chromium-vaapi - - - - - - - - - - - - - -
- - - - -
-summaryrefslogtreecommitdiffstats
- - - -
-
-
blob: 6211000401f259d82599ee2bef4f255dabf0cd32 (plain) - - -
1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-45
-46
-47
-48
-49
-50
-51
-52
-53
-54
-55
-56
-57
-58
-59
-60
-61
-62
-63
-64
-65
-66
-67
-68
-69
-70
-71
-72
-73
-74
-75
-76
-77
-78
-79
-80
-81
-82
-83
-84
-85
-86
-87
-88
-89
-90
-91
-92
-93
-94
-95
-96
-97
-98
-99
-100
-101
-102
-103
-104
-105
-106
-107
-108
-109
-110
-111
-112
-113
-114
-115
-116
-117
-118
-119
-120
-121
-122
-123
-124
-125
-126
-127
-128
-129
-130
-131
-132
-133
-134
-135
-136
-137
-138
-139
-140
-141
-142
-143
-144
-145
-146
-147
-148
-149
-150
-151
-152
-153
-154
-155
-156
-157
-158
-159
-160
-161
-162
-163
-164
-165
-166
-167
-168
-169
-170
-171
-172
-173
-174
-175
-176
-177
-178
-179
-180
-181
-182
-183
-184
-185
-186
-187
-188
-189
-190
-191
-192
-193
-194
-195
-196
-197
-198
-199
-200
-201
-202
-203
-204
-205
-206
-207
-208
-209
-210
-211
-212
-213
-214
-215
-216
-217
-218
-219
-220
-221
-222
-223
-224
-225
-226
-227
-228
-229
-230
-231
-232
-233
-234
-235
-236
-237
-238
-239
-240
-241
-242
-243
-244
-245
-246
-247
-248
-249
-250
-251
-252
-253
-254
-255
-256
-257
-258
-259
-260
-261
-262
-263
-264
-265
-266
-267
-268
-269
-270
-271
-272
-273
-274
-275
-276
-277
-278
-279
-280
-281
-282
-283
-284
-285
-286
-287
-288
-289
-290
-291
-292
-
From 9eef10b939b9eee6e7bb58c4ca3a8e119df518c1 Mon Sep 17 00:00:00 2001
-From: Akarshan Biswas <akarshan.biswas@gmail.com>
-Date: Sun, 4 Nov 2018 20:26:54 +0530
-Subject: [PATCH] Enable vaapi on Linux
-
----
- chrome/browser/about_flags.cc                | 14 +++++++------
- chrome/browser/flag_descriptions.cc          | 22 +++++++++++++-------
- chrome/browser/flag_descriptions.h           | 16 +++++++++-----
- components/viz/service/main/viz_main_impl.cc |  2 +-
- content/gpu/BUILD.gn                         |  6 ++++++
- content/gpu/gpu_main.cc                      |  4 ++--
- gpu/config/software_rendering_list.json      | 11 ----------
- media/base/media_switches.cc                 |  2 +-
- media/filters/BUILD.gn                       |  3 ++-
- media/gpu/BUILD.gn                           |  7 +++++++
- 10 files changed, 52 insertions(+), 35 deletions(-)
-
-diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
-index d029d0648..39df8d6cf 100644
---- a/chrome/browser/about_flags.cc
-+++ b/chrome/browser/about_flags.cc
-@@ -1775,7 +1775,7 @@ const FeatureEntry kFeatureEntries[] = {
+diff -up chromium-70.0.3538.110/chrome/browser/about_flags.cc.vaapi chromium-70.0.3538.110/chrome/browser/about_flags.cc
+--- chromium-70.0.3538.110/chrome/browser/about_flags.cc.vaapi	2018-11-19 13:55:02.000000000 -0500
++++ chromium-70.0.3538.110/chrome/browser/about_flags.cc	2018-11-27 16:32:03.917049560 -0500
+@@ -1776,7 +1776,7 @@ const FeatureEntry kFeatureEntries[] = {
          "disable-accelerated-video-decode",
          flag_descriptions::kAcceleratedVideoDecodeName,
          flag_descriptions::kAcceleratedVideoDecodeDescription,
@@ -376,7 +10,7 @@ index d029d0648..39df8d6cf 100644
          SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedVideoDecode),
      },
  #if defined(OS_WIN)
-@@ -2457,12 +2457,12 @@ const FeatureEntry kFeatureEntries[] = {
+@@ -2458,12 +2458,12 @@ const FeatureEntry kFeatureEntries[] = {
       FEATURE_VALUE_TYPE(features::kOpenVR)},
  #endif  // ENABLE_OPENVR
  #endif  // ENABLE_VR
@@ -392,7 +26,7 @@ index d029d0648..39df8d6cf 100644
      {"v8-cache-options", flag_descriptions::kV8CacheOptionsName,
       flag_descriptions::kV8CacheOptionsDescription, kOsAll,
       MULTI_VALUE_TYPE(kV8CacheOptionsChoices)},
-@@ -4444,12 +4444,14 @@ const FeatureEntry kFeatureEntries[] = {
+@@ -4449,12 +4449,14 @@ const FeatureEntry kFeatureEntries[] = {
                                      "AutofillDropdownLayout")},
  #endif  // OS_ANDROID
  
@@ -409,11 +43,10 @@ index d029d0648..39df8d6cf 100644
      {"enable-home-launcher-gestures",
       flag_descriptions::kEnableHomeLauncherGesturesName,
       flag_descriptions::kEnableHomeLauncherGesturesDescription, kOsCrOS,
-diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc
-index 0cb812619..df8ecb24e 100644
---- a/chrome/browser/flag_descriptions.cc
-+++ b/chrome/browser/flag_descriptions.cc
-@@ -3053,9 +3053,9 @@ const char kTextSuggestionsTouchBarDescription[] =
+diff -up chromium-70.0.3538.110/chrome/browser/flag_descriptions.cc.vaapi chromium-70.0.3538.110/chrome/browser/flag_descriptions.cc
+--- chromium-70.0.3538.110/chrome/browser/flag_descriptions.cc.vaapi	2018-11-19 13:55:03.000000000 -0500
++++ chromium-70.0.3538.110/chrome/browser/flag_descriptions.cc	2018-11-27 16:32:03.917049560 -0500
+@@ -3053,9 +3053,9 @@ const char kTextSuggestionsTouchBarDescr
  
  #endif
  
@@ -421,11 +54,11 @@ index 0cb812619..df8ecb24e 100644
 +// Chrome OS and Linux -------------------------------------------------------------------
  
 -#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
++#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
  
  const char kAcceleratedMjpegDecodeName[] =
      "Hardware-accelerated mjpeg decode for captured frame";
-@@ -3063,6 +3063,18 @@ const char kAcceleratedMjpegDecodeDescription[] =
+@@ -3063,6 +3063,18 @@ const char kAcceleratedMjpegDecodeDescri
      "Enable hardware-accelerated mjpeg decode for captured frame where "
      "available.";
  
@@ -444,7 +77,7 @@ index 0cb812619..df8ecb24e 100644
  const char kAllowTouchpadThreeFingerClickName[] = "Touchpad three-finger-click";
  const char kAllowTouchpadThreeFingerClickDescription[] =
      "Enables touchpad three-finger-click as middle button.";
-@@ -3564,12 +3576,6 @@ const char kUseMonitorColorSpaceDescription[] =
+@@ -3570,12 +3582,6 @@ const char kUseMonitorColorSpaceDescript
      "Enables Chrome to use the  color space information provided by the monitor"
      " instead of the default sRGB color space.";
  
@@ -457,11 +90,10 @@ index 0cb812619..df8ecb24e 100644
  const char kVideoPlayerChromecastSupportName[] =
      "Experimental Chromecast support for Video Player";
  const char kVideoPlayerChromecastSupportDescription[] =
-diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
-index b3c5e5691..14d7e33e9 100644
---- a/chrome/browser/flag_descriptions.h
-+++ b/chrome/browser/flag_descriptions.h
-@@ -1846,13 +1846,22 @@ extern const char kPermissionPromptPersistenceToggleDescription[];
+diff -up chromium-70.0.3538.110/chrome/browser/flag_descriptions.h.vaapi chromium-70.0.3538.110/chrome/browser/flag_descriptions.h
+--- chromium-70.0.3538.110/chrome/browser/flag_descriptions.h.vaapi	2018-11-19 13:55:03.000000000 -0500
++++ chromium-70.0.3538.110/chrome/browser/flag_descriptions.h	2018-11-27 16:32:03.918049538 -0500
+@@ -1846,13 +1846,22 @@ extern const char kPermissionPromptPersi
  
  #endif  // defined(OS_MACOSX)
  
@@ -469,7 +101,7 @@ index b3c5e5691..14d7e33e9 100644
 +// Chrome OS and Linux ------------------------------------------------------------------
  
 -#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS)  || (defined(OS_LINUX) && !defined(OS_ANDROID))
++#if defined(OS_CHROMEOS)  || (defined(OS_LINUX) && !defined(OS_ANDROID))
  
  extern const char kAcceleratedMjpegDecodeName[];
  extern const char kAcceleratedMjpegDecodeDescription[];
@@ -486,7 +118,7 @@ index b3c5e5691..14d7e33e9 100644
  extern const char kAllowTouchpadThreeFingerClickName[];
  extern const char kAllowTouchpadThreeFingerClickDescription[];
  
-@@ -2158,9 +2167,6 @@ extern const char kUseMashDescription[];
+@@ -2161,9 +2170,6 @@ extern const char kUseMashDescription[];
  extern const char kUseMonitorColorSpaceName[];
  extern const char kUseMonitorColorSpaceDescription[];
  
@@ -496,11 +128,10 @@ index b3c5e5691..14d7e33e9 100644
  extern const char kVideoPlayerChromecastSupportName[];
  extern const char kVideoPlayerChromecastSupportDescription[];
  
-diff --git a/components/viz/service/main/viz_main_impl.cc b/components/viz/service/main/viz_main_impl.cc
-index 2196abef4..b4e0a1ae1 100644
---- a/components/viz/service/main/viz_main_impl.cc
-+++ b/components/viz/service/main/viz_main_impl.cc
-@@ -41,7 +41,7 @@ std::unique_ptr<base::Thread> CreateAndStartIOThread() {
+diff -up chromium-70.0.3538.110/components/viz/service/main/viz_main_impl.cc.vaapi chromium-70.0.3538.110/components/viz/service/main/viz_main_impl.cc
+--- chromium-70.0.3538.110/components/viz/service/main/viz_main_impl.cc.vaapi	2018-11-19 13:55:07.000000000 -0500
++++ chromium-70.0.3538.110/components/viz/service/main/viz_main_impl.cc	2018-11-27 16:32:03.918049538 -0500
+@@ -41,7 +41,7 @@ std::unique_ptr CreateAndS
    // It should be possible to use |main_task_runner_| for doing IO tasks.
    base::Thread::Options thread_options(base::MessageLoop::TYPE_IO, 0);
    thread_options.priority = base::ThreadPriority::NORMAL;
@@ -509,10 +140,9 @@ index 2196abef4..b4e0a1ae1 100644
    // TODO(reveman): Remove this in favor of setting it explicitly for each
    // type of process.
    thread_options.priority = base::ThreadPriority::DISPLAY;
-diff --git a/content/gpu/BUILD.gn b/content/gpu/BUILD.gn
-index 8974e441d..d7eba85a9 100644
---- a/content/gpu/BUILD.gn
-+++ b/content/gpu/BUILD.gn
+diff -up chromium-70.0.3538.110/content/gpu/BUILD.gn.vaapi chromium-70.0.3538.110/content/gpu/BUILD.gn
+--- chromium-70.0.3538.110/content/gpu/BUILD.gn.vaapi	2018-11-19 13:55:07.000000000 -0500
++++ chromium-70.0.3538.110/content/gpu/BUILD.gn	2018-11-27 16:32:03.926049365 -0500
 @@ -6,6 +6,7 @@ import("//build/config/jumbo.gni")
  import("//build/config/ui.gni")
  import("//gpu/vulkan/features.gni")
@@ -521,21 +151,20 @@ index 8974e441d..d7eba85a9 100644
  import("//ui/ozone/ozone.gni")
  
  # See //content/BUILD.gn for how this works.
-@@ -134,4 +135,9 @@ target(link_target_type, "gpu_sources") {
+@@ -134,4 +135,9 @@ target(link_target_type, "gpu_sources")
        (!is_chromecast || is_cast_desktop_build)) {
      configs += [ "//build/config/linux/dri" ]
    }
 +
 +  # Use vaapi on desktop Linux builds when use_vaapi is set
-+  if (is_desktop_linux && use_vaapi) {
++  if (is_desktop_linux && use_vaapi) {
 +    public_configs = [ "//media/gpu:libva_config" ]
 +  }
  }
-diff --git a/content/gpu/gpu_main.cc b/content/gpu/gpu_main.cc
-index f589d015d..03fd1b44a 100644
---- a/content/gpu/gpu_main.cc
-+++ b/content/gpu/gpu_main.cc
-@@ -283,7 +283,7 @@ int GpuMain(const MainFunctionParams& parameters) {
+diff -up chromium-70.0.3538.110/content/gpu/gpu_main.cc.vaapi chromium-70.0.3538.110/content/gpu/gpu_main.cc
+--- chromium-70.0.3538.110/content/gpu/gpu_main.cc.vaapi	2018-11-19 13:55:07.000000000 -0500
++++ chromium-70.0.3538.110/content/gpu/gpu_main.cc	2018-11-27 16:33:26.059266401 -0500
+@@ -283,7 +283,7 @@ int GpuMain(const MainFunctionParams& pa
  
    base::PlatformThread::SetName("CrGpuMain");
  
@@ -544,8 +173,8 @@ index f589d015d..03fd1b44a 100644
    // Set thread priority before sandbox initialization.
    base::PlatformThread::SetCurrentThreadPriority(base::ThreadPriority::DISPLAY);
  #endif
-@@ -316,7 +316,7 @@ int GpuMain(const MainFunctionParams& parameters) {
-   GetContentClient()->SetGpuInfo(gpu_init->gpu_info());
+@@ -316,7 +316,7 @@ int GpuMain(const MainFunctionParams& pa
+   GetContentClient()->SetGpuInfo(gpu_init->gpu_info());
  
    base::ThreadPriority io_thread_priority = base::ThreadPriority::NORMAL;
 -#if defined(OS_ANDROID) || defined(OS_CHROMEOS)
@@ -553,15 +182,13 @@ index f589d015d..03fd1b44a 100644
    io_thread_priority = base::ThreadPriority::DISPLAY;
  #endif
  
-diff --git a/gpu/config/software_rendering_list.json b/gpu/config/software_rendering_list.json
-index 445953a64..0aac9ddb6 100644
---- a/gpu/config/software_rendering_list.json
-+++ b/gpu/config/software_rendering_list.json
-@@ -373,17 +373,6 @@
-         "all"
+diff -up chromium-70.0.3538.110/gpu/config/software_rendering_list.json.vaapi chromium-70.0.3538.110/gpu/config/software_rendering_list.json
+--- chromium-70.0.3538.110/gpu/config/software_rendering_list.json.vaapi	2018-11-19 13:55:08.000000000 -0500
++++ chromium-70.0.3538.110/gpu/config/software_rendering_list.json	2018-11-27 16:32:03.936049148 -0500
+@@ -374,17 +374,6 @@
        ]
      },
--    {
+     {
 -      "id": 48,
 -      "description": "Accelerated video decode is unavailable on Linux",
 -      "cr_bugs": [137247],
@@ -572,14 +199,14 @@ index 445953a64..0aac9ddb6 100644
 -        "accelerated_video_decode"
 -      ]
 -    },
-     {
+-    {
        "id": 50,
        "description": "Disable VMware software renderer on older Mesa",
-diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc
-index 684c1d5cf..e887e60bb 100644
---- a/media/base/media_switches.cc
-+++ b/media/base/media_switches.cc
-@@ -468,7 +468,7 @@ bool IsVideoCaptureAcceleratedJpegDecodingEnabled() {
+       "cr_bugs": [145531, 332596, 571899, 629434],
+diff -up chromium-70.0.3538.110/media/base/media_switches.cc.vaapi chromium-70.0.3538.110/media/base/media_switches.cc
+--- chromium-70.0.3538.110/media/base/media_switches.cc.vaapi	2018-11-19 13:55:09.000000000 -0500
++++ chromium-70.0.3538.110/media/base/media_switches.cc	2018-11-27 16:32:03.937049127 -0500
+@@ -468,7 +468,7 @@ bool IsVideoCaptureAcceleratedJpegDecodi
            switches::kUseFakeJpegDecodeAccelerator)) {
      return true;
    }
@@ -588,10 +215,9 @@ index 684c1d5cf..e887e60bb 100644
    return true;
  #endif
    return false;
-diff --git a/media/filters/BUILD.gn b/media/filters/BUILD.gn
-index ab6215152..b8d1ee896 100644
---- a/media/filters/BUILD.gn
-+++ b/media/filters/BUILD.gn
+diff -up chromium-70.0.3538.110/media/filters/BUILD.gn.vaapi chromium-70.0.3538.110/media/filters/BUILD.gn
+--- chromium-70.0.3538.110/media/filters/BUILD.gn.vaapi	2018-11-19 13:55:09.000000000 -0500
++++ chromium-70.0.3538.110/media/filters/BUILD.gn	2018-11-27 16:34:43.272581693 -0500
 @@ -5,6 +5,7 @@
  import("//build/config/jumbo.gni")
  import("//media/media_options.gni")
@@ -604,16 +230,15 @@ index ab6215152..b8d1ee896 100644
      deps += [ "//media/base/android" ]
    }
  
--  if (current_cpu != "arm" && is_linux) {
-+  if (use_vaapi && is_linux) {
+-  if (current_cpu != "arm" && is_linux) {
++  if (use_vaapi && is_linux) {
      sources += [
        "h264_bitstream_buffer.cc",
        "h264_bitstream_buffer.h",
-diff --git a/media/gpu/BUILD.gn b/media/gpu/BUILD.gn
-index 9ef4730a4..0c3a06c24 100644
---- a/media/gpu/BUILD.gn
-+++ b/media/gpu/BUILD.gn
-@@ -501,6 +501,12 @@ if (use_v4l2_codec || use_vaapi || is_mac || is_win) {
+diff -up chromium-70.0.3538.110/media/gpu/BUILD.gn.vaapi chromium-70.0.3538.110/media/gpu/BUILD.gn
+--- chromium-70.0.3538.110/media/gpu/BUILD.gn.vaapi	2018-11-19 13:55:09.000000000 -0500
++++ chromium-70.0.3538.110/media/gpu/BUILD.gn	2018-11-27 16:32:03.937049127 -0500
+@@ -501,6 +501,12 @@ if (use_v4l2_codec || use_vaapi || is_ma
    }
  }
  
@@ -634,12 +259,3 @@ index 9ef4730a4..0c3a06c24 100644
    }
  }
  
--- 
-2.19.1
-
-
-
- -
- - From 0d5fe2e2776b35f5d48b00a1a72f935d69ec7a64 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 28 Nov 2018 12:36:25 -0500 Subject: [PATCH 0251/1449] use clean vaapi patch, add BR: libva-devel --- chromium.spec | 1 + enable-vaapi.patch | 127 ++++++++++++++++++++++++++++----------------- 2 files changed, 80 insertions(+), 48 deletions(-) diff --git a/chromium.spec b/chromium.spec index c189130..268e8f6 100644 --- a/chromium.spec +++ b/chromium.spec @@ -441,6 +441,7 @@ BuildRequires: libudev-devel Requires: libusbx >= 1.0.21-0.1.git448584a BuildRequires: libusbx-devel >= 1.0.21-0.1.git448584a %endif +BuildRequires: libva-devel # We don't use libvpx anymore because Chromium loves to # use bleeding edge revisions here that break other things # ... so we just use the bundled libvpx. diff --git a/enable-vaapi.patch b/enable-vaapi.patch index 16aa3b0..6211000 100644 --- a/enable-vaapi.patch +++ b/enable-vaapi.patch @@ -1,7 +1,26 @@ -diff -up chromium-70.0.3538.110/chrome/browser/about_flags.cc.vaapi chromium-70.0.3538.110/chrome/browser/about_flags.cc ---- chromium-70.0.3538.110/chrome/browser/about_flags.cc.vaapi 2018-11-19 13:55:02.000000000 -0500 -+++ chromium-70.0.3538.110/chrome/browser/about_flags.cc 2018-11-27 16:32:03.917049560 -0500 -@@ -1776,7 +1776,7 @@ const FeatureEntry kFeatureEntries[] = { +From 9eef10b939b9eee6e7bb58c4ca3a8e119df518c1 Mon Sep 17 00:00:00 2001 +From: Akarshan Biswas +Date: Sun, 4 Nov 2018 20:26:54 +0530 +Subject: [PATCH] Enable vaapi on Linux + +--- + chrome/browser/about_flags.cc | 14 +++++++------ + chrome/browser/flag_descriptions.cc | 22 +++++++++++++------- + chrome/browser/flag_descriptions.h | 16 +++++++++----- + components/viz/service/main/viz_main_impl.cc | 2 +- + content/gpu/BUILD.gn | 6 ++++++ + content/gpu/gpu_main.cc | 4 ++-- + gpu/config/software_rendering_list.json | 11 ---------- + media/base/media_switches.cc | 2 +- + media/filters/BUILD.gn | 3 ++- + media/gpu/BUILD.gn | 7 +++++++ + 10 files changed, 52 insertions(+), 35 deletions(-) + +diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc +index d029d0648..39df8d6cf 100644 +--- a/chrome/browser/about_flags.cc ++++ b/chrome/browser/about_flags.cc +@@ -1775,7 +1775,7 @@ const FeatureEntry kFeatureEntries[] = { "disable-accelerated-video-decode", flag_descriptions::kAcceleratedVideoDecodeName, flag_descriptions::kAcceleratedVideoDecodeDescription, @@ -10,7 +29,7 @@ diff -up chromium-70.0.3538.110/chrome/browser/about_flags.cc.vaapi chromium-70. SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedVideoDecode), }, #if defined(OS_WIN) -@@ -2458,12 +2458,12 @@ const FeatureEntry kFeatureEntries[] = { +@@ -2457,12 +2457,12 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE(features::kOpenVR)}, #endif // ENABLE_OPENVR #endif // ENABLE_VR @@ -26,7 +45,7 @@ diff -up chromium-70.0.3538.110/chrome/browser/about_flags.cc.vaapi chromium-70. {"v8-cache-options", flag_descriptions::kV8CacheOptionsName, flag_descriptions::kV8CacheOptionsDescription, kOsAll, MULTI_VALUE_TYPE(kV8CacheOptionsChoices)}, -@@ -4449,12 +4449,14 @@ const FeatureEntry kFeatureEntries[] = { +@@ -4444,12 +4444,14 @@ const FeatureEntry kFeatureEntries[] = { "AutofillDropdownLayout")}, #endif // OS_ANDROID @@ -43,10 +62,11 @@ diff -up chromium-70.0.3538.110/chrome/browser/about_flags.cc.vaapi chromium-70. {"enable-home-launcher-gestures", flag_descriptions::kEnableHomeLauncherGesturesName, flag_descriptions::kEnableHomeLauncherGesturesDescription, kOsCrOS, -diff -up chromium-70.0.3538.110/chrome/browser/flag_descriptions.cc.vaapi chromium-70.0.3538.110/chrome/browser/flag_descriptions.cc ---- chromium-70.0.3538.110/chrome/browser/flag_descriptions.cc.vaapi 2018-11-19 13:55:03.000000000 -0500 -+++ chromium-70.0.3538.110/chrome/browser/flag_descriptions.cc 2018-11-27 16:32:03.917049560 -0500 -@@ -3053,9 +3053,9 @@ const char kTextSuggestionsTouchBarDescr +diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc +index 0cb812619..df8ecb24e 100644 +--- a/chrome/browser/flag_descriptions.cc ++++ b/chrome/browser/flag_descriptions.cc +@@ -3053,9 +3053,9 @@ const char kTextSuggestionsTouchBarDescription[] = #endif @@ -58,7 +78,7 @@ diff -up chromium-70.0.3538.110/chrome/browser/flag_descriptions.cc.vaapi chromi const char kAcceleratedMjpegDecodeName[] = "Hardware-accelerated mjpeg decode for captured frame"; -@@ -3063,6 +3063,18 @@ const char kAcceleratedMjpegDecodeDescri +@@ -3063,6 +3063,18 @@ const char kAcceleratedMjpegDecodeDescription[] = "Enable hardware-accelerated mjpeg decode for captured frame where " "available."; @@ -77,7 +97,7 @@ diff -up chromium-70.0.3538.110/chrome/browser/flag_descriptions.cc.vaapi chromi const char kAllowTouchpadThreeFingerClickName[] = "Touchpad three-finger-click"; const char kAllowTouchpadThreeFingerClickDescription[] = "Enables touchpad three-finger-click as middle button."; -@@ -3570,12 +3582,6 @@ const char kUseMonitorColorSpaceDescript +@@ -3564,12 +3576,6 @@ const char kUseMonitorColorSpaceDescription[] = "Enables Chrome to use the color space information provided by the monitor" " instead of the default sRGB color space."; @@ -90,10 +110,11 @@ diff -up chromium-70.0.3538.110/chrome/browser/flag_descriptions.cc.vaapi chromi const char kVideoPlayerChromecastSupportName[] = "Experimental Chromecast support for Video Player"; const char kVideoPlayerChromecastSupportDescription[] = -diff -up chromium-70.0.3538.110/chrome/browser/flag_descriptions.h.vaapi chromium-70.0.3538.110/chrome/browser/flag_descriptions.h ---- chromium-70.0.3538.110/chrome/browser/flag_descriptions.h.vaapi 2018-11-19 13:55:03.000000000 -0500 -+++ chromium-70.0.3538.110/chrome/browser/flag_descriptions.h 2018-11-27 16:32:03.918049538 -0500 -@@ -1846,13 +1846,22 @@ extern const char kPermissionPromptPersi +diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h +index b3c5e5691..14d7e33e9 100644 +--- a/chrome/browser/flag_descriptions.h ++++ b/chrome/browser/flag_descriptions.h +@@ -1846,13 +1846,22 @@ extern const char kPermissionPromptPersistenceToggleDescription[]; #endif // defined(OS_MACOSX) @@ -118,7 +139,7 @@ diff -up chromium-70.0.3538.110/chrome/browser/flag_descriptions.h.vaapi chromiu extern const char kAllowTouchpadThreeFingerClickName[]; extern const char kAllowTouchpadThreeFingerClickDescription[]; -@@ -2161,9 +2170,6 @@ extern const char kUseMashDescription[]; +@@ -2158,9 +2167,6 @@ extern const char kUseMashDescription[]; extern const char kUseMonitorColorSpaceName[]; extern const char kUseMonitorColorSpaceDescription[]; @@ -128,10 +149,11 @@ diff -up chromium-70.0.3538.110/chrome/browser/flag_descriptions.h.vaapi chromiu extern const char kVideoPlayerChromecastSupportName[]; extern const char kVideoPlayerChromecastSupportDescription[]; -diff -up chromium-70.0.3538.110/components/viz/service/main/viz_main_impl.cc.vaapi chromium-70.0.3538.110/components/viz/service/main/viz_main_impl.cc ---- chromium-70.0.3538.110/components/viz/service/main/viz_main_impl.cc.vaapi 2018-11-19 13:55:07.000000000 -0500 -+++ chromium-70.0.3538.110/components/viz/service/main/viz_main_impl.cc 2018-11-27 16:32:03.918049538 -0500 -@@ -41,7 +41,7 @@ std::unique_ptr CreateAndS +diff --git a/components/viz/service/main/viz_main_impl.cc b/components/viz/service/main/viz_main_impl.cc +index 2196abef4..b4e0a1ae1 100644 +--- a/components/viz/service/main/viz_main_impl.cc ++++ b/components/viz/service/main/viz_main_impl.cc +@@ -41,7 +41,7 @@ std::unique_ptr CreateAndStartIOThread() { // It should be possible to use |main_task_runner_| for doing IO tasks. base::Thread::Options thread_options(base::MessageLoop::TYPE_IO, 0); thread_options.priority = base::ThreadPriority::NORMAL; @@ -140,9 +162,10 @@ diff -up chromium-70.0.3538.110/components/viz/service/main/viz_main_impl.cc.vaa // TODO(reveman): Remove this in favor of setting it explicitly for each // type of process. thread_options.priority = base::ThreadPriority::DISPLAY; -diff -up chromium-70.0.3538.110/content/gpu/BUILD.gn.vaapi chromium-70.0.3538.110/content/gpu/BUILD.gn ---- chromium-70.0.3538.110/content/gpu/BUILD.gn.vaapi 2018-11-19 13:55:07.000000000 -0500 -+++ chromium-70.0.3538.110/content/gpu/BUILD.gn 2018-11-27 16:32:03.926049365 -0500 +diff --git a/content/gpu/BUILD.gn b/content/gpu/BUILD.gn +index 8974e441d..d7eba85a9 100644 +--- a/content/gpu/BUILD.gn ++++ b/content/gpu/BUILD.gn @@ -6,6 +6,7 @@ import("//build/config/jumbo.gni") import("//build/config/ui.gni") import("//gpu/vulkan/features.gni") @@ -151,7 +174,7 @@ diff -up chromium-70.0.3538.110/content/gpu/BUILD.gn.vaapi chromium-70.0.3538.11 import("//ui/ozone/ozone.gni") # See //content/BUILD.gn for how this works. -@@ -134,4 +135,9 @@ target(link_target_type, "gpu_sources") +@@ -134,4 +135,9 @@ target(link_target_type, "gpu_sources") { (!is_chromecast || is_cast_desktop_build)) { configs += [ "//build/config/linux/dri" ] } @@ -161,10 +184,11 @@ diff -up chromium-70.0.3538.110/content/gpu/BUILD.gn.vaapi chromium-70.0.3538.11 + public_configs = [ "//media/gpu:libva_config" ] + } } -diff -up chromium-70.0.3538.110/content/gpu/gpu_main.cc.vaapi chromium-70.0.3538.110/content/gpu/gpu_main.cc ---- chromium-70.0.3538.110/content/gpu/gpu_main.cc.vaapi 2018-11-19 13:55:07.000000000 -0500 -+++ chromium-70.0.3538.110/content/gpu/gpu_main.cc 2018-11-27 16:33:26.059266401 -0500 -@@ -283,7 +283,7 @@ int GpuMain(const MainFunctionParams& pa +diff --git a/content/gpu/gpu_main.cc b/content/gpu/gpu_main.cc +index f589d015d..03fd1b44a 100644 +--- a/content/gpu/gpu_main.cc ++++ b/content/gpu/gpu_main.cc +@@ -283,7 +283,7 @@ int GpuMain(const MainFunctionParams& parameters) { base::PlatformThread::SetName("CrGpuMain"); @@ -173,7 +197,7 @@ diff -up chromium-70.0.3538.110/content/gpu/gpu_main.cc.vaapi chromium-70.0.3538 // Set thread priority before sandbox initialization. base::PlatformThread::SetCurrentThreadPriority(base::ThreadPriority::DISPLAY); #endif -@@ -316,7 +316,7 @@ int GpuMain(const MainFunctionParams& pa +@@ -316,7 +316,7 @@ int GpuMain(const MainFunctionParams& parameters) { GetContentClient()->SetGpuInfo(gpu_init->gpu_info()); base::ThreadPriority io_thread_priority = base::ThreadPriority::NORMAL; @@ -182,13 +206,15 @@ diff -up chromium-70.0.3538.110/content/gpu/gpu_main.cc.vaapi chromium-70.0.3538 io_thread_priority = base::ThreadPriority::DISPLAY; #endif -diff -up chromium-70.0.3538.110/gpu/config/software_rendering_list.json.vaapi chromium-70.0.3538.110/gpu/config/software_rendering_list.json ---- chromium-70.0.3538.110/gpu/config/software_rendering_list.json.vaapi 2018-11-19 13:55:08.000000000 -0500 -+++ chromium-70.0.3538.110/gpu/config/software_rendering_list.json 2018-11-27 16:32:03.936049148 -0500 -@@ -374,17 +374,6 @@ +diff --git a/gpu/config/software_rendering_list.json b/gpu/config/software_rendering_list.json +index 445953a64..0aac9ddb6 100644 +--- a/gpu/config/software_rendering_list.json ++++ b/gpu/config/software_rendering_list.json +@@ -373,17 +373,6 @@ + "all" ] }, - { +- { - "id": 48, - "description": "Accelerated video decode is unavailable on Linux", - "cr_bugs": [137247], @@ -199,14 +225,14 @@ diff -up chromium-70.0.3538.110/gpu/config/software_rendering_list.json.vaapi ch - "accelerated_video_decode" - ] - }, -- { + { "id": 50, "description": "Disable VMware software renderer on older Mesa", - "cr_bugs": [145531, 332596, 571899, 629434], -diff -up chromium-70.0.3538.110/media/base/media_switches.cc.vaapi chromium-70.0.3538.110/media/base/media_switches.cc ---- chromium-70.0.3538.110/media/base/media_switches.cc.vaapi 2018-11-19 13:55:09.000000000 -0500 -+++ chromium-70.0.3538.110/media/base/media_switches.cc 2018-11-27 16:32:03.937049127 -0500 -@@ -468,7 +468,7 @@ bool IsVideoCaptureAcceleratedJpegDecodi +diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc +index 684c1d5cf..e887e60bb 100644 +--- a/media/base/media_switches.cc ++++ b/media/base/media_switches.cc +@@ -468,7 +468,7 @@ bool IsVideoCaptureAcceleratedJpegDecodingEnabled() { switches::kUseFakeJpegDecodeAccelerator)) { return true; } @@ -215,9 +241,10 @@ diff -up chromium-70.0.3538.110/media/base/media_switches.cc.vaapi chromium-70.0 return true; #endif return false; -diff -up chromium-70.0.3538.110/media/filters/BUILD.gn.vaapi chromium-70.0.3538.110/media/filters/BUILD.gn ---- chromium-70.0.3538.110/media/filters/BUILD.gn.vaapi 2018-11-19 13:55:09.000000000 -0500 -+++ chromium-70.0.3538.110/media/filters/BUILD.gn 2018-11-27 16:34:43.272581693 -0500 +diff --git a/media/filters/BUILD.gn b/media/filters/BUILD.gn +index ab6215152..b8d1ee896 100644 +--- a/media/filters/BUILD.gn ++++ b/media/filters/BUILD.gn @@ -5,6 +5,7 @@ import("//build/config/jumbo.gni") import("//media/media_options.gni") @@ -235,10 +262,11 @@ diff -up chromium-70.0.3538.110/media/filters/BUILD.gn.vaapi chromium-70.0.3538. sources += [ "h264_bitstream_buffer.cc", "h264_bitstream_buffer.h", -diff -up chromium-70.0.3538.110/media/gpu/BUILD.gn.vaapi chromium-70.0.3538.110/media/gpu/BUILD.gn ---- chromium-70.0.3538.110/media/gpu/BUILD.gn.vaapi 2018-11-19 13:55:09.000000000 -0500 -+++ chromium-70.0.3538.110/media/gpu/BUILD.gn 2018-11-27 16:32:03.937049127 -0500 -@@ -501,6 +501,12 @@ if (use_v4l2_codec || use_vaapi || is_ma +diff --git a/media/gpu/BUILD.gn b/media/gpu/BUILD.gn +index 9ef4730a4..0c3a06c24 100644 +--- a/media/gpu/BUILD.gn ++++ b/media/gpu/BUILD.gn +@@ -501,6 +501,12 @@ if (use_v4l2_codec || use_vaapi || is_mac || is_win) { } } @@ -259,3 +287,6 @@ diff -up chromium-70.0.3538.110/media/gpu/BUILD.gn.vaapi chromium-70.0.3538.110/ } } +-- +2.19.1 + From 20998a3addbc35bfe1ebda7759cec1d13fa616cf Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 29 Nov 2018 09:32:34 -0500 Subject: [PATCH 0252/1449] use fpermissive on vaapi code on i686 --- ...70.0.3538.110-vaapi-i686-fpermissive.patch | 24 +++++++++++++++++++ chromium.spec | 4 ++++ 2 files changed, 28 insertions(+) create mode 100644 chromium-70.0.3538.110-vaapi-i686-fpermissive.patch diff --git a/chromium-70.0.3538.110-vaapi-i686-fpermissive.patch b/chromium-70.0.3538.110-vaapi-i686-fpermissive.patch new file mode 100644 index 0000000..9678488 --- /dev/null +++ b/chromium-70.0.3538.110-vaapi-i686-fpermissive.patch @@ -0,0 +1,24 @@ +diff -up chromium-70.0.3538.110/media/gpu/vaapi/BUILD.gn.i686permissive chromium-70.0.3538.110/media/gpu/vaapi/BUILD.gn +--- chromium-70.0.3538.110/media/gpu/vaapi/BUILD.gn.i686permissive 2018-11-29 09:27:02.405909871 -0500 ++++ chromium-70.0.3538.110/media/gpu/vaapi/BUILD.gn 2018-11-29 09:29:50.648259696 -0500 +@@ -10,6 +10,11 @@ import("//ui/ozone/ozone.gni") + + assert(use_vaapi) + ++config("vaapi_permissive") { ++ cflags = [ "-fpermissive" ] ++} ++ ++ + action("libva_generate_stubs") { + extra_header = "va_stub_header.fragment" + +@@ -98,6 +103,8 @@ source_set("vaapi") { + "//third_party/libyuv", + ] + ++ configs += [ ":vaapi_permissive" ] ++ + if (use_x11) { + configs += [ "//build/config/linux:x11" ] + deps += [ "//ui/gfx/x" ] diff --git a/chromium.spec b/chromium.spec index 268e8f6..6b0cd20 100644 --- a/chromium.spec +++ b/chromium.spec @@ -296,6 +296,7 @@ Patch120: chromium-70.0.3538.110-remove-sysroot-options.patch # Enable VAAPI support on Linux # NOTE: This patch will never land upstream Patch121: enable-vaapi.patch +Patch122: chromium-70.0.3538.110-vaapi-i686-fpermissive.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: @@ -845,6 +846,9 @@ udev. %patch119 -p1 -b .aarch64-new-stat %patch120 -p1 -b .sysrootfix %patch121 -p1 -b .vaapi +%ifarch i686 +%patch122 -p1 -b .i686permissive +%endif # Change shebang in all relevant files in this directory and all subdirectories From 62238334785614a72eac9fffebbf2d91916b1dc6 Mon Sep 17 00:00:00 2001 From: Akarshan Biswas Date: Tue, 11 Dec 2018 12:40:16 +0530 Subject: [PATCH 0253/1449] Update vaapi patch for 71 and add to patch to relax the version check for vaapi --- chromium.spec | 9 ++++++-- enable-vaapi.patch | 56 +++++++++++++++++++++++----------------------- 2 files changed, 35 insertions(+), 30 deletions(-) diff --git a/chromium.spec b/chromium.spec index 6b0cd20..0e7c20a 100644 --- a/chromium.spec +++ b/chromium.spec @@ -297,7 +297,12 @@ Patch120: chromium-70.0.3538.110-remove-sysroot-options.patch # NOTE: This patch will never land upstream Patch121: enable-vaapi.patch Patch122: chromium-70.0.3538.110-vaapi-i686-fpermissive.patch - +# Since the newer versions of VA-API are ABI compatible, relax the version checks for VA-API, by using VA_CHECK_VERSION(). +# This will help in updating the libva to the latest releases,while still supporting the old versions, till the new version of +# libva is merged and picked by the builds. Thus ensuring that hardware accleration is not broken while updating the libva. +# Taken and rebased from https://chromium-review.googlesource.com/c/chromium/src/+/1352519 +# The patch might land somewhere in the future and will be removed. +Patch123: relax-libva-version.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ @@ -849,7 +854,7 @@ udev. %ifarch i686 %patch122 -p1 -b .i686permissive %endif - +%patch123 -p1 -b .relaxva # Change shebang in all relevant files in this directory and all subdirectories # See `man find` for how the `-exec command {} +` syntax works diff --git a/enable-vaapi.patch b/enable-vaapi.patch index 6211000..1997af3 100644 --- a/enable-vaapi.patch +++ b/enable-vaapi.patch @@ -1,4 +1,4 @@ -From 9eef10b939b9eee6e7bb58c4ca3a8e119df518c1 Mon Sep 17 00:00:00 2001 +From efdd5bdf093e9074c9eba73650ff5ad95b280ec8 Mon Sep 17 00:00:00 2001 From: Akarshan Biswas Date: Sun, 4 Nov 2018 20:26:54 +0530 Subject: [PATCH] Enable vaapi on Linux @@ -17,10 +17,10 @@ Subject: [PATCH] Enable vaapi on Linux 10 files changed, 52 insertions(+), 35 deletions(-) diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc -index d029d0648..39df8d6cf 100644 +index db54ccb61..f32075fb8 100644 --- a/chrome/browser/about_flags.cc +++ b/chrome/browser/about_flags.cc -@@ -1775,7 +1775,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -1797,7 +1797,7 @@ const FeatureEntry kFeatureEntries[] = { "disable-accelerated-video-decode", flag_descriptions::kAcceleratedVideoDecodeName, flag_descriptions::kAcceleratedVideoDecodeDescription, @@ -29,9 +29,9 @@ index d029d0648..39df8d6cf 100644 SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedVideoDecode), }, #if defined(OS_WIN) -@@ -2457,12 +2457,12 @@ const FeatureEntry kFeatureEntries[] = { - FEATURE_VALUE_TYPE(features::kOpenVR)}, - #endif // ENABLE_OPENVR +@@ -2456,12 +2456,12 @@ const FeatureEntry kFeatureEntries[] = { + FEATURE_VALUE_TYPE(service_manager::features::kXRSandbox)}, + #endif // ENABLE_ISOLATED_XR_SERVICE #endif // ENABLE_VR -#if defined(OS_CHROMEOS) +#if defined(OS_CHROMEOS) || defined(OS_LINUX) @@ -45,7 +45,7 @@ index d029d0648..39df8d6cf 100644 {"v8-cache-options", flag_descriptions::kV8CacheOptionsName, flag_descriptions::kV8CacheOptionsDescription, kOsAll, MULTI_VALUE_TYPE(kV8CacheOptionsChoices)}, -@@ -4444,12 +4444,14 @@ const FeatureEntry kFeatureEntries[] = { +@@ -4371,12 +4371,14 @@ const FeatureEntry kFeatureEntries[] = { "AutofillDropdownLayout")}, #endif // OS_ANDROID @@ -63,10 +63,10 @@ index d029d0648..39df8d6cf 100644 flag_descriptions::kEnableHomeLauncherGesturesName, flag_descriptions::kEnableHomeLauncherGesturesDescription, kOsCrOS, diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc -index 0cb812619..df8ecb24e 100644 +index 6cc51bbfb..3c4babe3d 100644 --- a/chrome/browser/flag_descriptions.cc +++ b/chrome/browser/flag_descriptions.cc -@@ -3053,9 +3053,9 @@ const char kTextSuggestionsTouchBarDescription[] = +@@ -2996,9 +2996,9 @@ const char kTextSuggestionsTouchBarDescription[] = #endif @@ -78,7 +78,7 @@ index 0cb812619..df8ecb24e 100644 const char kAcceleratedMjpegDecodeName[] = "Hardware-accelerated mjpeg decode for captured frame"; -@@ -3063,6 +3063,18 @@ const char kAcceleratedMjpegDecodeDescription[] = +@@ -3006,6 +3006,18 @@ const char kAcceleratedMjpegDecodeDescription[] = "Enable hardware-accelerated mjpeg decode for captured frame where " "available."; @@ -97,7 +97,7 @@ index 0cb812619..df8ecb24e 100644 const char kAllowTouchpadThreeFingerClickName[] = "Touchpad three-finger-click"; const char kAllowTouchpadThreeFingerClickDescription[] = "Enables touchpad three-finger-click as middle button."; -@@ -3564,12 +3576,6 @@ const char kUseMonitorColorSpaceDescription[] = +@@ -3524,12 +3536,6 @@ const char kUseMonitorColorSpaceDescription[] = "Enables Chrome to use the color space information provided by the monitor" " instead of the default sRGB color space."; @@ -111,10 +111,10 @@ index 0cb812619..df8ecb24e 100644 "Experimental Chromecast support for Video Player"; const char kVideoPlayerChromecastSupportDescription[] = diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h -index b3c5e5691..14d7e33e9 100644 +index 944695782..38d8fe144 100644 --- a/chrome/browser/flag_descriptions.h +++ b/chrome/browser/flag_descriptions.h -@@ -1846,13 +1846,22 @@ extern const char kPermissionPromptPersistenceToggleDescription[]; +@@ -1824,13 +1824,22 @@ extern const char kPermissionPromptPersistenceToggleDescription[]; #endif // defined(OS_MACOSX) @@ -139,7 +139,7 @@ index b3c5e5691..14d7e33e9 100644 extern const char kAllowTouchpadThreeFingerClickName[]; extern const char kAllowTouchpadThreeFingerClickDescription[]; -@@ -2158,9 +2167,6 @@ extern const char kUseMashDescription[]; +@@ -2145,9 +2154,6 @@ extern const char kUseMashDescription[]; extern const char kUseMonitorColorSpaceName[]; extern const char kUseMonitorColorSpaceDescription[]; @@ -150,7 +150,7 @@ index b3c5e5691..14d7e33e9 100644 extern const char kVideoPlayerChromecastSupportDescription[]; diff --git a/components/viz/service/main/viz_main_impl.cc b/components/viz/service/main/viz_main_impl.cc -index 2196abef4..b4e0a1ae1 100644 +index 6f5f55de7..b90db3738 100644 --- a/components/viz/service/main/viz_main_impl.cc +++ b/components/viz/service/main/viz_main_impl.cc @@ -41,7 +41,7 @@ std::unique_ptr CreateAndStartIOThread() { @@ -185,10 +185,10 @@ index 8974e441d..d7eba85a9 100644 + } } diff --git a/content/gpu/gpu_main.cc b/content/gpu/gpu_main.cc -index f589d015d..03fd1b44a 100644 +index 8397889b6..188d960a4 100644 --- a/content/gpu/gpu_main.cc +++ b/content/gpu/gpu_main.cc -@@ -283,7 +283,7 @@ int GpuMain(const MainFunctionParams& parameters) { +@@ -284,7 +284,7 @@ int GpuMain(const MainFunctionParams& parameters) { base::PlatformThread::SetName("CrGpuMain"); @@ -197,7 +197,7 @@ index f589d015d..03fd1b44a 100644 // Set thread priority before sandbox initialization. base::PlatformThread::SetCurrentThreadPriority(base::ThreadPriority::DISPLAY); #endif -@@ -316,7 +316,7 @@ int GpuMain(const MainFunctionParams& parameters) { +@@ -317,7 +317,7 @@ int GpuMain(const MainFunctionParams& parameters) { GetContentClient()->SetGpuInfo(gpu_init->gpu_info()); base::ThreadPriority io_thread_priority = base::ThreadPriority::NORMAL; @@ -207,10 +207,10 @@ index f589d015d..03fd1b44a 100644 #endif diff --git a/gpu/config/software_rendering_list.json b/gpu/config/software_rendering_list.json -index 445953a64..0aac9ddb6 100644 +index cb6118b6a..7b8ea0f75 100644 --- a/gpu/config/software_rendering_list.json +++ b/gpu/config/software_rendering_list.json -@@ -373,17 +373,6 @@ +@@ -369,17 +369,6 @@ "all" ] }, @@ -229,10 +229,10 @@ index 445953a64..0aac9ddb6 100644 "id": 50, "description": "Disable VMware software renderer on older Mesa", diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc -index 684c1d5cf..e887e60bb 100644 +index 41bfa9172..30ca4f40a 100644 --- a/media/base/media_switches.cc +++ b/media/base/media_switches.cc -@@ -468,7 +468,7 @@ bool IsVideoCaptureAcceleratedJpegDecodingEnabled() { +@@ -495,7 +495,7 @@ bool IsVideoCaptureAcceleratedJpegDecodingEnabled() { switches::kUseFakeJpegDecodeAccelerator)) { return true; } @@ -242,7 +242,7 @@ index 684c1d5cf..e887e60bb 100644 #endif return false; diff --git a/media/filters/BUILD.gn b/media/filters/BUILD.gn -index ab6215152..b8d1ee896 100644 +index d558b537a..9ad090e07 100644 --- a/media/filters/BUILD.gn +++ b/media/filters/BUILD.gn @@ -5,6 +5,7 @@ @@ -253,7 +253,7 @@ index ab6215152..b8d1ee896 100644 jumbo_source_set("filters") { # Do not expand the visibility here without double-checking with OWNERS, this -@@ -198,7 +199,7 @@ jumbo_source_set("filters") { +@@ -200,7 +201,7 @@ jumbo_source_set("filters") { deps += [ "//media/base/android" ] } @@ -263,10 +263,10 @@ index ab6215152..b8d1ee896 100644 "h264_bitstream_buffer.cc", "h264_bitstream_buffer.h", diff --git a/media/gpu/BUILD.gn b/media/gpu/BUILD.gn -index 9ef4730a4..0c3a06c24 100644 +index 07bfdefda..7e33cd747 100644 --- a/media/gpu/BUILD.gn +++ b/media/gpu/BUILD.gn -@@ -501,6 +501,12 @@ if (use_v4l2_codec || use_vaapi || is_mac || is_win) { +@@ -508,6 +508,12 @@ if (use_v4l2_codec || use_vaapi || is_mac || is_win) { } } @@ -279,7 +279,7 @@ index 9ef4730a4..0c3a06c24 100644 if (use_vaapi) { test("jpeg_encode_accelerator_unittest") { deps = [ -@@ -571,6 +577,7 @@ if (use_v4l2_codec || use_vaapi) { +@@ -578,6 +584,7 @@ if (is_chromeos || is_linux) { if (use_ozone) { deps += [ "//ui/ozone" ] } @@ -288,5 +288,5 @@ index 9ef4730a4..0c3a06c24 100644 } -- -2.19.1 +2.19.2 From f97ba1b6eddf61436aaaa5d3f7e1c347df64928d Mon Sep 17 00:00:00 2001 From: Akarshan Biswas Date: Tue, 11 Dec 2018 12:42:50 +0530 Subject: [PATCH 0254/1449] Add relax libva version check patch --- relax-libva-version.patch | 56 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 relax-libva-version.patch diff --git a/relax-libva-version.patch b/relax-libva-version.patch new file mode 100644 index 0000000..e297fd6 --- /dev/null +++ b/relax-libva-version.patch @@ -0,0 +1,56 @@ +From 6f1309ef8fe10965e4d0018b4f1b80ac6deccdaa Mon Sep 17 00:00:00 2001 +From: Azhar Shaikh +Date: Fri, 30 Nov 2018 23:11:57 +0000 +Subject: [PATCH] media/gpu/vaapi: Relax the version check for VA-API + +Since the newer versions of VA-API are ABI compatible, relax the +version checks for VA-API, by using VA_CHECK_VERSION(). +This will help in updating the libva to the latest releases, +while still supporting the old versions, till the new version of +libva is merged and picked by the builds. Thus ensuring that +hardware accleration is not broken while updating the libva. + +Bug: 905814 +TEST=libva-2.3.0 and libva-2.1.0 are able to do hardware acceleration. + +Suggested-by: Alexandre Courbot +Signed-off-by: Azhar Shaikh +Change-Id: I510549f72290d20676927eeeeb89a87199c062af +Reviewed-on: https://chromium-review.googlesource.com/c/1352519 +Reviewed-by: Alexandre Courbot +Reviewed-by: Hirokazu Honda +Commit-Queue: Miguel Casas +Cr-Commit-Position: refs/heads/master@{#612832} +--- + +diff --git a/AUTHORS b/AUTHORS +index 567fe15..ff42fc5 100644 +--- a/AUTHORS ++++ b/AUTHORS +@@ -103,6 +103,7 @@ + Attila Dusnoki + Avinaash Doreswamy + Ayush Khandelwal ++Azhar Shaikh + Balazs Kelemen + Baul Eun + Behara Mani Shyam Patro +diff --git a/media/gpu/vaapi/vaapi_wrapper.cc b/media/gpu/vaapi/vaapi_wrapper.cc +index b415642..053384d 100644 +--- a/media/gpu/vaapi/vaapi_wrapper.cc ++++ b/media/gpu/vaapi/vaapi_wrapper.cc +@@ -333,7 +333,13 @@ + DVLOG(1) << "VAAPI version: " << major_version << "." << minor_version << " " + << va_vendor_string_; + +- if (major_version != VA_MAJOR_VERSION || minor_version != VA_MINOR_VERSION) { ++ // The VAAPI version is determined from what is loaded on the system by ++ // calling vaInitialize(). We want a runtime evaluation of libva version, ++ // of what is loaded on the system, with, what browser is compiled with. ++ // Also since the libva is now ABI-compatible, relax the version check ++ // which helps in upgrading the libva, without breaking any existing ++ // functionality. ++ if (!VA_CHECK_VERSION(major_version, minor_version, 0)) { + LOG(ERROR) << "This build of Chromium requires VA-API version " + << VA_MAJOR_VERSION << "." << VA_MINOR_VERSION + << ", system version: " << major_version << "." << minor_version; From b2e427f04b59f9c1f1812dea1b85f17d9efcc9f5 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 18 Dec 2018 15:12:33 -0500 Subject: [PATCH 0255/1449] 71.0.3578.98 --- .gitignore | 1 + chromium-71-gcc-0.patch | 57 +++++++++++++ chromium-71.0.3578.98-norar.patch | 79 +++++++++++++++++++ chromium-71.0.3578.98-py2-bootstrap.patch | 33 ++++++++ ...-71.0.3578.98-remove-sysroot-options.patch | 23 ++++++ ...m-71.0.3578.98-skia-aarch64-buildfix.patch | 21 +++++ ...0.3578.98-vaapi-libva1-compatibility.patch | 14 ++++ chromium-71.0.3578.98-widevine-r3.patch | 11 +++ chromium.spec | 56 +++++++------ sources | 3 +- 10 files changed, 274 insertions(+), 24 deletions(-) create mode 100644 chromium-71-gcc-0.patch create mode 100644 chromium-71.0.3578.98-norar.patch create mode 100644 chromium-71.0.3578.98-py2-bootstrap.patch create mode 100644 chromium-71.0.3578.98-remove-sysroot-options.patch create mode 100644 chromium-71.0.3578.98-skia-aarch64-buildfix.patch create mode 100644 chromium-71.0.3578.98-vaapi-libva1-compatibility.patch create mode 100644 chromium-71.0.3578.98-widevine-r3.patch diff --git a/.gitignore b/.gitignore index ba0ef80..4a49cb4 100644 --- a/.gitignore +++ b/.gitignore @@ -71,3 +71,4 @@ /chromium-69.0.3497.100-clean.tar.xz /chromium-70.0.3538.77-clean.tar.xz /chromium-70.0.3538.110-clean.tar.xz +/chromium-71.0.3578.98-clean.tar.xz diff --git a/chromium-71-gcc-0.patch b/chromium-71-gcc-0.patch new file mode 100644 index 0000000..711b827 --- /dev/null +++ b/chromium-71-gcc-0.patch @@ -0,0 +1,57 @@ +From 65be571f6ac2f7942b4df9e50b24da517f829eec Mon Sep 17 00:00:00 2001 +From: Raphael Kubo da Costa +Date: Mon, 15 Oct 2018 20:26:10 +0000 +Subject: [PATCH] google_util: Explicitly use std::initializer_list with + base::NoDestructor +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Follow-up to ac53c5c53 ("Remove CR_DEFINE_STATIC_LOCAL from /components"). +Due to https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84849, having +base::NoDestructor> and passing an initializer list of Us does not +work if this is not done explicitly, as GCC incorrectly fails to determine +which constructor overload to use: + + ../../components/google/core/common/google_util.cc: In function ‘bool google_util::{anonymous}::IsCanonicalHostGoogleHostname(base::StringPiece, google_util::SubdomainPermission)’: + ../../components/google/core/common/google_util.cc:120:24: error: call of overloaded ‘NoDestructor()’ is ambiguous + {GOOGLE_TLD_LIST}); + +See also: https://chromium-review.googlesource.com/c/chromium/src/+/1170905 + +Bug: 819294 +Change-Id: Ie1490b6646d7998d636c485769caabf56c1cf44c +Reviewed-on: https://chromium-review.googlesource.com/c/1275854 +Reviewed-by: Peter Kasting +Commit-Queue: Raphael Kubo da Costa (CET) +Cr-Commit-Position: refs/heads/master@{#599733} +--- + components/google/core/common/google_util.cc | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +diff --git a/components/google/core/common/google_util.cc b/components/google/core/common/google_util.cc +index a44c84393820..7733848a0443 100644 +--- a/components/google/core/common/google_util.cc ++++ b/components/google/core/common/google_util.cc +@@ -117,7 +117,7 @@ bool IsCanonicalHostGoogleHostname(base::StringPiece canonical_host, + StripTrailingDot(&tld); + + static base::NoDestructor> google_tlds( +- {GOOGLE_TLD_LIST}); ++ std::initializer_list({GOOGLE_TLD_LIST})); + return base::ContainsKey(*google_tlds, tld.as_string()); + } + +@@ -132,7 +132,8 @@ bool IsGoogleSearchSubdomainUrl(const GURL& url) { + StripTrailingDot(&host); + + static base::NoDestructor> google_subdomains( +- {"ipv4.google.com", "ipv6.google.com"}); ++ std::initializer_list( ++ {"ipv4.google.com", "ipv6.google.com"})); + + return base::ContainsKey(*google_subdomains, host.as_string()); + } +-- +2.19.1 + diff --git a/chromium-71.0.3578.98-norar.patch b/chromium-71.0.3578.98-norar.patch new file mode 100644 index 0000000..1259088 --- /dev/null +++ b/chromium-71.0.3578.98-norar.patch @@ -0,0 +1,79 @@ +diff -up chromium-71.0.3578.98/chrome/common/safe_browsing/BUILD.gn.nounrar chromium-71.0.3578.98/chrome/common/safe_browsing/BUILD.gn +--- chromium-71.0.3578.98/chrome/common/safe_browsing/BUILD.gn.nounrar 2018-12-12 16:56:04.000000000 -0500 ++++ chromium-71.0.3578.98/chrome/common/safe_browsing/BUILD.gn 2018-12-14 11:44:52.172805635 -0500 +@@ -56,40 +56,6 @@ if (safe_browsing_mode == 1) { + ] + } + +- source_set("rar_analyzer") { +- sources = [ +- "rar_analyzer.cc", +- "rar_analyzer.h", +- ] +- +- deps = [ +- ":archive_analyzer_results", +- ":download_protection_util", +- ":file_type_policies", +- "//base", +- "//base:i18n", +- "//third_party/unrar:unrar", +- ] +- +- defines = [ +- "_FILE_OFFSET_BITS=64", +- "LARGEFILE_SOURCE", +- "RAR_SMP", +- "SILENT", +- +- # The following is set to disable certain macro definitions in the unrar +- # source code. +- "CHROMIUM_UNRAR", +- +- # Disables exceptions in unrar, replaces them with process termination. +- "UNRAR_NO_EXCEPTIONS", +- ] +- +- public_deps = [ +- "//components/safe_browsing:csd_proto", +- ] +- } +- + source_set("disk_image_type_sniffer_mac") { + sources = [ + "disk_image_type_sniffer_mac.cc", +@@ -136,7 +102,6 @@ source_set("safe_browsing") { + deps += [ + ":archive_analyzer_results", + ":download_protection_util", +- ":rar_analyzer", + "//components/safe_browsing:features", + ] + +diff -up chromium-71.0.3578.98/chrome/common/safe_browsing/DEPS.nounrar chromium-71.0.3578.98/chrome/common/safe_browsing/DEPS +--- chromium-71.0.3578.98/chrome/common/safe_browsing/DEPS.nounrar 2018-12-12 16:56:04.000000000 -0500 ++++ chromium-71.0.3578.98/chrome/common/safe_browsing/DEPS 2018-12-14 11:23:58.628142952 -0500 +@@ -1,6 +1,5 @@ + include_rules = [ + "+components/safe_browsing", + "+third_party/protobuf", +- "+third_party/unrar", + "+third_party/zlib", + ] +diff -up chromium-71.0.3578.98/chrome/services/file_util/safe_archive_analyzer.cc.nounrar chromium-71.0.3578.98/chrome/services/file_util/safe_archive_analyzer.cc +--- chromium-71.0.3578.98/chrome/services/file_util/safe_archive_analyzer.cc.nounrar 2018-12-12 16:56:04.000000000 -0500 ++++ chromium-71.0.3578.98/chrome/services/file_util/safe_archive_analyzer.cc 2018-12-14 11:23:58.628142952 -0500 +@@ -47,9 +47,13 @@ void SafeArchiveAnalyzer::AnalyzeDmgFile + + void SafeArchiveAnalyzer::AnalyzeRarFile(base::File rar_file, + AnalyzeRarFileCallback callback) { ++#if 0 + DCHECK(rar_file.IsValid()); + + safe_browsing::ArchiveAnalyzerResults results; + safe_browsing::rar_analyzer::AnalyzeRarFile(std::move(rar_file), &results); + std::move(callback).Run(results); ++#else ++ NOTREACHED(); ++#endif + } diff --git a/chromium-71.0.3578.98-py2-bootstrap.patch b/chromium-71.0.3578.98-py2-bootstrap.patch new file mode 100644 index 0000000..d575dff --- /dev/null +++ b/chromium-71.0.3578.98-py2-bootstrap.patch @@ -0,0 +1,33 @@ +diff -up chromium-71.0.3578.98/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py.py2 chromium-71.0.3578.98/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py +--- chromium-71.0.3578.98/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py.py2 2018-12-12 17:02:58.000000000 -0500 ++++ chromium-71.0.3578.98/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py 2018-12-14 11:48:22.150229631 -0500 +@@ -58,7 +58,7 @@ def _MinifyJS(input_js): + + with tempfile.NamedTemporaryFile() as _: + args = [ +- 'python', ++ 'python2', + rjsmin_path + ] + p = subprocess.Popen(args, +@@ -177,7 +177,7 @@ def _MinifyCSS(css_text): + os.path.join(py_vulcanize_path, 'third_party', 'rcssmin', 'rcssmin.py')) + + with tempfile.NamedTemporaryFile() as _: +- rcssmin_args = ['python', rcssmin_path] ++ rcssmin_args = ['python2', rcssmin_path] + p = subprocess.Popen(rcssmin_args, + stdin=subprocess.PIPE, + stdout=subprocess.PIPE, +diff -up chromium-71.0.3578.98/tools/gn/bootstrap/bootstrap.py.py2 chromium-71.0.3578.98/tools/gn/bootstrap/bootstrap.py +--- chromium-71.0.3578.98/tools/gn/bootstrap/bootstrap.py.py2 2018-12-14 11:48:22.155229522 -0500 ++++ chromium-71.0.3578.98/tools/gn/bootstrap/bootstrap.py 2018-12-14 11:49:31.043728244 -0500 +@@ -93,7 +93,7 @@ def main(argv): + if not options.debug: + gn_gen_args += ' is_debug=false' + subprocess.check_call([ +- gn_path, 'gen', out_dir, ++ gn_path, 'gen', out_dir, ' --script-executable=/usr/bin/python2', + '--args=%s' % gn_gen_args, "--root=" + SRC_ROOT + ]) + diff --git a/chromium-71.0.3578.98-remove-sysroot-options.patch b/chromium-71.0.3578.98-remove-sysroot-options.patch new file mode 100644 index 0000000..a9af73b --- /dev/null +++ b/chromium-71.0.3578.98-remove-sysroot-options.patch @@ -0,0 +1,23 @@ +diff -up chromium-71.0.3578.98/tools/gn/bootstrap/bootstrap.py.sysrootfix chromium-71.0.3578.98/tools/gn/bootstrap/bootstrap.py +--- chromium-71.0.3578.98/tools/gn/bootstrap/bootstrap.py.sysrootfix 2018-12-14 12:52:04.144860836 -0500 ++++ chromium-71.0.3578.98/tools/gn/bootstrap/bootstrap.py 2018-12-14 12:57:54.791539599 -0500 +@@ -46,10 +46,6 @@ def main(argv): + '--build-path', + help='The directory in which to build gn, ' + 'relative to the src directory. (eg. out/Release)') +- parser.add_option( +- '--with-sysroot', +- action='store_true', +- help='Download and build with the Debian sysroot.') + parser.add_option('-v', '--verbose', help='ignored') + parser.add_option( + '--skip-generate-buildfiles', +@@ -76,8 +72,6 @@ def main(argv): + '--no-last-commit-position', + '--out-path=' + gn_build_dir, + ] +- if not options.with_sysroot: +- cmd.append('--no-sysroot') + if options.debug: + cmd.append('--debug') + subprocess.check_call(cmd) diff --git a/chromium-71.0.3578.98-skia-aarch64-buildfix.patch b/chromium-71.0.3578.98-skia-aarch64-buildfix.patch new file mode 100644 index 0000000..5da1674 --- /dev/null +++ b/chromium-71.0.3578.98-skia-aarch64-buildfix.patch @@ -0,0 +1,21 @@ +diff -up chromium-71.0.3578.98/third_party/skia/src/opts/SkRasterPipeline_opts.h.aarch64fix chromium-71.0.3578.98/third_party/skia/src/opts/SkRasterPipeline_opts.h +--- chromium-71.0.3578.98/third_party/skia/src/opts/SkRasterPipeline_opts.h.aarch64fix 2018-12-14 11:17:43.249121756 -0500 ++++ chromium-71.0.3578.98/third_party/skia/src/opts/SkRasterPipeline_opts.h 2018-12-14 11:20:07.770030234 -0500 +@@ -658,7 +658,7 @@ SI F approx_powf(F x, F y) { + } + + SI F from_half(U16 h) { +-#if defined(SK_CPU_ARM64) && !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) +@@ -678,7 +678,7 @@ SI F from_half(U16 h) { + } + + SI U16 to_half(F f) { +-#if defined(SK_CPU_ARM64) && !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) diff --git a/chromium-71.0.3578.98-vaapi-libva1-compatibility.patch b/chromium-71.0.3578.98-vaapi-libva1-compatibility.patch new file mode 100644 index 0000000..5b51e3d --- /dev/null +++ b/chromium-71.0.3578.98-vaapi-libva1-compatibility.patch @@ -0,0 +1,14 @@ +diff -up chromium-71.0.3578.98/media/gpu/vaapi/vaapi_jpeg_decode_accelerator.cc.va1compat chromium-71.0.3578.98/media/gpu/vaapi/vaapi_jpeg_decode_accelerator.cc +--- chromium-71.0.3578.98/media/gpu/vaapi/vaapi_jpeg_decode_accelerator.cc.va1compat 2018-12-17 15:07:48.158717055 -0500 ++++ chromium-71.0.3578.98/media/gpu/vaapi/vaapi_jpeg_decode_accelerator.cc 2018-12-17 15:09:49.780316983 -0500 +@@ -38,6 +38,10 @@ enum VAJDADecoderFailure { + VAJDA_DECODER_FAILURES_MAX, + }; + ++#ifndef VA_FOURCC_I420 ++#define VA_FOURCC_I420 VA_FOURCC('I', '4', '2', '0') ++#endif ++ + static void ReportToUMA(VAJDADecoderFailure failure) { + UMA_HISTOGRAM_ENUMERATION("Media.VAJDA.DecoderFailure", failure, + VAJDA_DECODER_FAILURES_MAX + 1); diff --git a/chromium-71.0.3578.98-widevine-r3.patch b/chromium-71.0.3578.98-widevine-r3.patch new file mode 100644 index 0000000..a8deaf0 --- /dev/null +++ b/chromium-71.0.3578.98-widevine-r3.patch @@ -0,0 +1,11 @@ +diff -up chromium-71.0.3578.98/third_party/widevine/cdm/BUILD.gn.wvhack chromium-71.0.3578.98/third_party/widevine/cdm/BUILD.gn +diff -up chromium-71.0.3578.98/third_party/widevine/cdm/widevine_cdm_version.h.wvhack chromium-71.0.3578.98/third_party/widevine/cdm/widevine_cdm_version.h +--- chromium-71.0.3578.98/third_party/widevine/cdm/widevine_cdm_version.h.wvhack 2018-12-14 11:58:37.918972853 -0500 ++++ chromium-71.0.3578.98/third_party/widevine/cdm/widevine_cdm_version.h 2018-12-14 11:58:57.327554078 -0500 +@@ -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_ diff --git a/chromium.spec b/chromium.spec index 0e7c20a..d5a1ed9 100644 --- a/chromium.spec +++ b/chromium.spec @@ -41,9 +41,9 @@ %global __provides_exclude_from %{chromium_path}/.*\\.so|%{chromium_path}/lib/.*\\.so|%{chromium_path}/lib/.*\\.so.* %if 0%{?rhel} == 7 -%global privlibs libEGL|libGLESv2|libVkICD_mock_icd|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_threading|libVkLayer_unique_objects|libaccessibility|libandroid_mojo_bindings_shared|libanimation|libapdu|libaura|libaura_extra|libbase|libbase_i18n|libbindings|libbindings_base|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core|libblink_core_mojo_bindings_shared|libblink_embedded_frame_sink_mojo_bindings_shared|libblink_modules|libblink_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcatalog_lib|libcbor|libcc|libcc_animation|libcc_base|libcc_debug|libcc_mojo_embedder|libcc_paint|libcdm_manager|libchrome_features|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom|libcontent_service_mojom_shared|libcrash_key|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevice_vr|libdevice_vr_mojo_bindings|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevices|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libembedder|libembedder_switches|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libffmpeg|libfido|libfingerprint|libfreetype_harfbuzz|libgamepad_mojom|libgamepad_mojom_blink|libgamepad_mojom_shared|libgamepad_shared_typemap_traits|libgcm|libgeometry|libgeometry_skia|libgesture_detection|libgfx|libgfx_ipc|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_switches|libgfx_x11|libgin|libgl_in_process_context|libgl_init|libgl_wrapper|libgles2|libgles2_implementation|libgles2_utils|libgpu|libgpu_ipc_service|libgtkui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc|libipc_mojom|libipc_mojom_shared|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libleveldatabase|liblive_tab_count_metrics|libmanager|libmedia|libmedia_blink|libmedia_devices_mojo_bindings_shared|libmedia_gpu|libmedia_mojo_services|libmedia_session_cpp|libmedia_session_public_mojom|libmedia_session_public_mojom_shared|libmedia_webrtc|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirclient.so.9|libmirroring_service|libmojo_base_lib|libmojo_base_mojom|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_shared_typemap_traits|libmojo_core_embedder|libmojo_core_embedder_internal|libmojo_core_ports|libmojo_cpp_platform|libmojo_ime_lib|libmojo_mojom_bindings|libmojo_mojom_bindings_shared|libmojo_public_system|libmojo_public_system_cpp|libmojom_core_shared|libmojom_platform_shared|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp|libnetwork_cpp_base|libnetwork_service|libnetwork_session_configurator|libonc|libos_crypt|libperfetto|libplatform|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp|libresource_coordinator_cpp_base|libresource_coordinator_public_mojom|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libsandbox|libsandbox_services|libscheduling_metrics|libseccomp_bpf|libservice|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom|libservice_manager_mojom_blink|libservice_manager_mojom_constants|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_shared|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libtracing_cpp|libtracing_mojom|libtracing_mojom_shared|libui_base|libui_base_ime|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl|liburl_ipc|liburl_matcher|libusb_shared|libuser_manager|libuser_prefs|libv8|libv8_libbase|libv8_libplatform|libviews|libviz_common|libviz_resource_format_utils|libvr_common|libvr_ui|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libweb_dialogs|libwebdata_common|libwebgpu|libwebview|libwm|libwm_public|libwtf|libx11_events_platform|libx11_window|libzygote|libfontconfig +%global privlibs libaccessibility|libandroid_mojo_bindings_shared|libanimation|libapdu|libaura_extra|libaura|libbase_i18n|libbase|libbindings_base|libbindings|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core_mojo_bindings_shared|libblink_core|libblink_embedded_frame_sink_mojo_bindings_shared|libblink_modules|libblink_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcatalog_lib|libcbor|libcc_animation|libcc_base|libcc_debug|libcc_mojo_embedder|libcc_paint|libcc|libcdm_manager|libchrome_features|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom_shared|libcontent_service_mojom|libcontent|libcrash_key|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevices|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevice_vr_mojo_bindings|libdevice_vr|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libembedder|libembedder_switches|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents|libevents_x|libextras|libffmpeg|libfido|libfingerprint|libfreetype_harfbuzz|libgamepad_mojom_blink|libgamepad_mojom_shared|libgamepad_mojom|libgamepad_shared_typemap_traits|libgcm|libgeometry_skia|libgeometry|libgesture_detection|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_switches|libgfx_x11|libgin|libgles2_implementation|libgles2|libgles2_utils|libGLESv2|libgl_init|libgl_in_process_context|libgl_wrapper|libgpu_ipc_service|libgpu|libgtkui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc_mojom_shared|libipc_mojom|libipc|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libleveldatabase|liblive_tab_count_metrics|libmanager|libmedia_blink|libmedia_devices_mojo_bindings_shared|libmedia_gpu|libmedia_mojo_services|libmedia_session_cpp|libmedia_session_public_mojom_shared|libmedia_session_public_mojom|libmedia|libmedia_webrtc|libmemory_instrumentation|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirroring_service|libmojo_base_lib|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_mojom|libmojo_base_shared_typemap_traits|libmojo_core_embedder_internal|libmojo_core_embedder|libmojo_core_ports|libmojo_cpp_platform|libmojo_ime_lib|libmojom_core_shared|libmojo_mojom_bindings_shared|libmojo_mojom_bindings|libmojom_platform_shared|libmojo_public_system_cpp|libmojo_public_system|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp_base|libnetwork_cpp|libnetwork_service|libnetwork_session_configurator|libonc|libos_crypt|libperfetto|libplatform|libplatform_window_handler_libs|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp_base|libresource_coordinator_cpp_features|libresource_coordinator_cpp|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libresource_coordinator_public_mojom|libsandbox_services|libsandbox|libscheduling_metrics|libseccomp_bpf|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom_blink|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_constants|libservice_manager_mojom_shared|libservice_manager_mojom|libservice|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing_cpp|libtracing_mojom_shared|libtracing_mojom|libtracing|libui_base_ime_linux|libui_base_ime|libui_base_ime_types|libui_base|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libusb_shared|libuser_manager|libuser_prefs|libv8_libbase|libv8_libplatform|libv8|libviews|libviz_common|libviz_resource_format_utils|libVkICD_mock_icd|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_threading|libVkLayer_unique_objects|libvr_common|libvr_ui|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libwebdata_common|libweb_dialogs|libwebgpu|libwebview|libwm_public|libwm|libwtf|libx11_events_platform|libx11_window|libzygote|libfontconfig %else -%global privlibs libEGL|libGLESv2|libVkICD_mock_icd|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_threading|libVkLayer_unique_objects|libaccessibility|libandroid_mojo_bindings_shared|libanimation|libapdu|libaura|libaura_extra|libbase|libbase_i18n|libbindings|libbindings_base|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core|libblink_core_mojo_bindings_shared|libblink_embedded_frame_sink_mojo_bindings_shared|libblink_modules|libblink_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcatalog_lib|libcbor|libcc|libcc_animation|libcc_base|libcc_debug|libcc_mojo_embedder|libcc_paint|libcdm_manager|libchrome_features|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom|libcontent_service_mojom_shared|libcrash_key|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevice_vr|libdevice_vr_mojo_bindings|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevices|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libembedder|libembedder_switches|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libffmpeg|libfido|libfingerprint|libfreetype_harfbuzz|libgamepad_mojom|libgamepad_mojom_blink|libgamepad_mojom_shared|libgamepad_shared_typemap_traits|libgcm|libgeometry|libgeometry_skia|libgesture_detection|libgfx|libgfx_ipc|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_switches|libgfx_x11|libgin|libgl_in_process_context|libgl_init|libgl_wrapper|libgles2|libgles2_implementation|libgles2_utils|libgpu|libgpu_ipc_service|libgtkui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc|libipc_mojom|libipc_mojom_shared|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libleveldatabase|liblive_tab_count_metrics|libmanager|libmedia|libmedia_blink|libmedia_devices_mojo_bindings_shared|libmedia_gpu|libmedia_mojo_services|libmedia_session_cpp|libmedia_session_public_mojom|libmedia_session_public_mojom_shared|libmedia_webrtc|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirclient.so.9|libmirroring_service|libmojo_base_lib|libmojo_base_mojom|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_shared_typemap_traits|libmojo_core_embedder|libmojo_core_embedder_internal|libmojo_core_ports|libmojo_cpp_platform|libmojo_ime_lib|libmojo_mojom_bindings|libmojo_mojom_bindings_shared|libmojo_public_system|libmojo_public_system_cpp|libmojom_core_shared|libmojom_platform_shared|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp|libnetwork_cpp_base|libnetwork_service|libnetwork_session_configurator|libonc|libos_crypt|libperfetto|libplatform|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp|libresource_coordinator_cpp_base|libresource_coordinator_public_mojom|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libsandbox|libsandbox_services|libscheduling_metrics|libseccomp_bpf|libservice|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom|libservice_manager_mojom_blink|libservice_manager_mojom_constants|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_shared|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libtracing_cpp|libtracing_mojom|libtracing_mojom_shared|libui_base|libui_base_ime|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl|liburl_ipc|liburl_matcher|libusb_shared|libuser_manager|libuser_prefs|libv8|libv8_libbase|libv8_libplatform|libviews|libviz_common|libviz_resource_format_utils|libvr_common|libvr_ui|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libweb_dialogs|libwebdata_common|libwebgpu|libwebview|libwm|libwm_public|libwtf|libx11_events_platform|libx11_window|libzygote +%global privlibs libaccessibility|libandroid_mojo_bindings_shared|libanimation|libapdu|libaura_extra|libaura|libbase_i18n|libbase|libbindings_base|libbindings|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core_mojo_bindings_shared|libblink_core|libblink_embedded_frame_sink_mojo_bindings_shared|libblink_modules|libblink_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcatalog_lib|libcbor|libcc_animation|libcc_base|libcc_debug|libcc_mojo_embedder|libcc_paint|libcc|libcdm_manager|libchrome_features|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom_shared|libcontent_service_mojom|libcontent|libcrash_key|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevices|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevice_vr_mojo_bindings|libdevice_vr|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libembedder|libembedder_switches|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents|libevents_x|libextras|libffmpeg|libfido|libfingerprint|libfreetype_harfbuzz|libgamepad_mojom_blink|libgamepad_mojom_shared|libgamepad_mojom|libgamepad_shared_typemap_traits|libgcm|libgeometry_skia|libgeometry|libgesture_detection|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_switches|libgfx_x11|libgin|libgles2_implementation|libgles2|libgles2_utils|libGLESv2|libgl_init|libgl_in_process_context|libgl_wrapper|libgpu_ipc_service|libgpu|libgtkui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc_mojom_shared|libipc_mojom|libipc|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libleveldatabase|liblive_tab_count_metrics|libmanager|libmedia_blink|libmedia_devices_mojo_bindings_shared|libmedia_gpu|libmedia_mojo_services|libmedia_session_cpp|libmedia_session_public_mojom_shared|libmedia_session_public_mojom|libmedia|libmedia_webrtc|libmemory_instrumentation|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirroring_service|libmojo_base_lib|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_mojom|libmojo_base_shared_typemap_traits|libmojo_core_embedder_internal|libmojo_core_embedder|libmojo_core_ports|libmojo_cpp_platform|libmojo_ime_lib|libmojom_core_shared|libmojo_mojom_bindings_shared|libmojo_mojom_bindings|libmojom_platform_shared|libmojo_public_system_cpp|libmojo_public_system|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp_base|libnetwork_cpp|libnetwork_service|libnetwork_session_configurator|libonc|libos_crypt|libperfetto|libplatform|libplatform_window_handler_libs|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp_base|libresource_coordinator_cpp_features|libresource_coordinator_cpp|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libresource_coordinator_public_mojom|libsandbox_services|libsandbox|libscheduling_metrics|libseccomp_bpf|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom_blink|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_constants|libservice_manager_mojom_shared|libservice_manager_mojom|libservice|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing_cpp|libtracing_mojom_shared|libtracing_mojom|libtracing|libui_base_ime_linux|libui_base_ime|libui_base_ime_types|libui_base|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libusb_shared|libuser_manager|libuser_prefs|libv8_libbase|libv8_libplatform|libv8|libviews|libviz_common|libviz_resource_format_utils|libVkICD_mock_icd|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_threading|libVkLayer_unique_objects|libvr_common|libvr_ui|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libwebdata_common|libweb_dialogs|libwebgpu|libwebview|libwm_public|libwm|libwtf|libx11_events_platform|libx11_window|libzygote %endif %global __requires_exclude ^(%{privlibs})\\.so* @@ -142,15 +142,15 @@ BuildRequires: libicu-devel >= 5.4 %global chromoting_client_id %nil %endif -%global majorversion 70 +%global majorversion 71 %if %{freeworld} Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3538.110 -Release: 2%{?dist} +Version: %{majorversion}.0.3578.98 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -237,7 +237,7 @@ Patch67: chromium-65.0.3325.146-memcpy-fix.patch # ../../mojo/public/cpp/bindings/associated_interface_ptr_info.h:48:43: error: cannot convert 'const mojo::ScopedInterfaceEndpointHandle' to 'bool' in return Patch85: chromium-68.0.3440.106-boolfix.patch # From Debian -Patch86: chromium-67.0.3396.62-skia-aarch64-buildfix.patch +Patch86: chromium-71.0.3578.98-skia-aarch64-buildfix.patch # Use lstdc++ on EPEL7 only Patch87: chromium-65.0.3325.162-epel7-stdc++.patch # Missing files in tarball @@ -249,7 +249,7 @@ Patch88: chromium-66.0.3359.117-missing-files.patch # https://bugs.chromium.org/p/chromium/issues/detail?id=816952 # Patch91: chromium-66.0.3359.117-gcc-vector-copy-constructor-fix.patch # Do not use unrar code, it is non-free -Patch92: chromium-69.0.3497.81-norar.patch +Patch92: chromium-71.0.3578.98-norar.patch # Upstream GCC fixes Patch93: chromium-66.0.3359.117-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch Patch94: chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch @@ -269,22 +269,22 @@ Patch100: chromium-67.0.3396.62-epel7-use-old-python-exec-syntax.patch Patch101: chromium-68.0.3440.106-fedora-user-agent.patch # Try to fix version.py for Rawhide Patch102: chromium-67.0.3396.99-py3fix.patch -Patch103: chromium-69.0.3497.81-py2-bootstrap.patch +Patch103: chromium-71.0.3578.98-py2-bootstrap.patch # Fix default on redeclaration error # https://chromium.googlesource.com/chromium/src/+/122692ccee62223f266a988c575ae687e3f4c056%5E%21/#F0 Patch110: chromium-68.0.3440.106-fix-default-on-redeclaration.patch # Use Gentoo's Widevine hack -# https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-widevine-r2.patch -Patch111: chromium-69.0.3497.81-widevine-r2.patch +# https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-widevine-r3.patch +Patch111: chromium-71.0.3578.98-widevine-r3.patch # Do not require sysroot # Forget about trying to make libc++ # BUILD SANELY PLEASE Patch112: chromium-69.0.3497.81-build-sanely-please.patch # Still moar GCC cleanups from upstream -Patch113: chromium-gcc8-r588316.patch -Patch114: chromium-gcc8-r588547.patch -Patch115: chromium-gcc8-r589614.patch -Patch116: chromium-gcc8-r591015.patch +# Patch113: chromium-gcc8-r588316.patch +# Patch114: chromium-gcc8-r588547.patch +# Patch115: chromium-gcc8-r589614.patch +# Patch116: chromium-gcc8-r591015.patch # Disable fontconfig cache magic that breaks remoting Patch117: chromium-70.0.3538.67-disable-fontconfig-cache-magic.patch # Fix build against harfbuzz2 @@ -292,7 +292,7 @@ Patch118: chromium-70.0.3538.77-harfbuzz2-fix.patch # Fix aarch64 build against latest linux kernel headers Patch119: chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch # https://chromium.googlesource.com/chromium/src/tools/gn/+/6630c2e334d7bc179e95a3d543a8eca3201d6725 -Patch120: chromium-70.0.3538.110-remove-sysroot-options.patch +Patch120: chromium-71.0.3578.98-remove-sysroot-options.patch # Enable VAAPI support on Linux # NOTE: This patch will never land upstream Patch121: enable-vaapi.patch @@ -302,7 +302,12 @@ Patch122: chromium-70.0.3538.110-vaapi-i686-fpermissive.patch # libva is merged and picked by the builds. Thus ensuring that hardware accleration is not broken while updating the libva. # Taken and rebased from https://chromium-review.googlesource.com/c/chromium/src/+/1352519 # The patch might land somewhere in the future and will be removed. -Patch123: relax-libva-version.patch +Patch123: relax-libva-version.patch +# Fix compatibility with VA-API library (libva) version 1 +Patch124: chromium-71.0.3578.98-vaapi-libva1-compatibility.patch +# From gentoo +Patch125: https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client/chromium/files/chromium-71-gcc-0.patch + # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ @@ -840,10 +845,10 @@ udev. %patch110 -p1 -b .fix-default-redeclaration %patch111 -p1 -b .wvhack %patch112 -p1 -b .sanebuild -%patch113 -p1 -b .r588316 -%patch114 -p1 -b .r588547 -%patch115 -p1 -b .r589614 -%patch116 -p1 -b .r591015 +# %%patch113 -p1 -b .r588316 +# %%patch114 -p1 -b .r588547 +# %%patch115 -p1 -b .r589614 +# %%patch116 -p1 -b .r591015 %patch117 -p1 -b .nofc %if 0%{?fedora} >= 30 %patch118 -p1 -b .harfbuzz2 @@ -855,6 +860,8 @@ udev. %patch122 -p1 -b .i686permissive %endif %patch123 -p1 -b .relaxva +%patch124 -p1 -b .va1compat +%patch125 -p1 -b .gcc-overloaded # Change shebang in all relevant files in this directory and all subdirectories # See `man find` for how the `-exec command {} +` syntax works @@ -1064,8 +1071,6 @@ ln -s %{_bindir}/node third_party/node/linux/node-linux-x64/bin/node # Remove most of the bundled libraries. Libraries specified below (taken from # Gentoo's Chromium ebuild) are the libraries that needs to be preserved. build/linux/unbundle/remove_bundled_libraries.py \ - 'buildtools/third_party/libc++' \ - 'buildtools/third_party/libc++abi' \ 'base/third_party/dmg_fp' \ 'base/third_party/dynamic_annotations' \ 'base/third_party/icu' \ @@ -1076,6 +1081,8 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'base/third_party/valgrind' \ 'base/third_party/xdg_mime' \ 'base/third_party/xdg_user_dirs' \ + 'buildtools/third_party/libc++' \ + 'buildtools/third_party/libc++abi' \ 'chrome/third_party/mozilla_security_manager' \ 'courgette/third_party' \ 'net/third_party/http2' \ @@ -1150,6 +1157,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/icu' \ 'third_party/inspector_protocol' \ 'third_party/jinja2' \ + 'third_party/jsoncpp' \ 'third_party/jstemplate' \ 'third_party/khronos' \ 'third_party/leveldatabase' \ @@ -1229,6 +1237,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/snappy' \ 'third_party/speech-dispatcher' \ 'third_party/spirv-headers' \ + 'third_party/SPIRV-Tools' \ 'third_party/spirv-tools-angle' \ 'third_party/sqlite' \ 'third_party/swiftshader' \ @@ -1822,6 +1831,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Fri Dec 14 2018 Tom Callaway - 71.0.3578.98-1 +- update to 71.0.3578.98 + * Tue Nov 27 2018 Tom Callaway - 70.0.3538.110-2 - enable vaapi support (thanks to Akarshan Biswas for doing the hard work here) diff --git a/sources b/sources index 7941afe..4b6d47b 100644 --- a/sources +++ b/sources @@ -15,6 +15,5 @@ SHA512 (Tinos-BoldItalic.ttf) = 2574de2add94ef976b731fac688951fab49574c9b0ccd259 SHA512 (Tinos-Bold.ttf) = 54aeca804c06a4d5c57ade596e73df91a6a1c4401c4aadba55d987b3fb73045d35f3df02678b59abb77c4914ec741755536c0adf808c931e4b77848c52c229c4 SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0e22a16414278217f37497b904a18540273c0e2d79d4f1faabde3b0eb5446283b318c73bafb38 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f -SHA512 (chromium-68.0.3440.106-clean.tar.xz) = a609975c96674f3a84a33bb3d57271535671e11d0775efeceff4f8a965851216038cf491281aaab0cc64c6e99af033f9c8a93f759f232e8c686408dbc09c8dd5 SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd -SHA512 (chromium-70.0.3538.110-clean.tar.xz) = 3c251137d56373820b8ec175b31947a9dccb8e7bb53a54c45afdd26747dc8ba23b1f2bd71b2e44f419e2ec74fa2fc10ae0501c6e47093b04e05f5547d0a123ee +SHA512 (chromium-71.0.3578.98-clean.tar.xz) = 8e92cefb1079944a742cd99ef4b50baa71a4517420b7e30bd9cba556df9a032f1dd08acd421e0ad28b40c4d93367529029edebd8c2e6c25ccec2ab231c81828c From 39f814854d291cb71ad9e98652ab7ad1f70f9c40 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 19 Dec 2018 15:43:49 -0500 Subject: [PATCH 0256/1449] need to use devtoolset-8-*. I love hardcoded versions in package names. --- chromium.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/chromium.spec b/chromium.spec index d5a1ed9..fbedfad 100644 --- a/chromium.spec +++ b/chromium.spec @@ -150,7 +150,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3578.98 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -541,7 +541,7 @@ BuildRequires: google-noto-sans-khmer-fonts BuildRequires: ninja-build %if 0%{?rhel} == 7 -BuildRequires: devtoolset-7-toolchain, devtoolset-7-libatomic-devel +BuildRequires: devtoolset-8-toolchain, devtoolset-8-libatomic-devel %endif # There is a hardcoded check for nss 3.26 in the chromium code (crypto/nss_util.cc) @@ -1831,6 +1831,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Wed Dec 19 2018 Tom Callaway - 71.0.3578.98-2 +- need to use devtoolset-8-*. I love hardcoded versions in package names. + * Fri Dec 14 2018 Tom Callaway - 71.0.3578.98-1 - update to 71.0.3578.98 From 8e01649bacefd87c9a046d8a6915ca25953bda25 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 19 Dec 2018 15:59:47 -0500 Subject: [PATCH 0257/1449] more hardcoded devtoolset versions --- chromium.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/chromium.spec b/chromium.spec index fbedfad..9554ff5 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1352,7 +1352,7 @@ sed -i '/aarch64)/ a \ exec "/usr/bin/ninja-build" "$@";;\' ../depot_tool sed -i 's|exec "${THIS_DIR}/ninja-linux${LONG_BIT}"|exec "/usr/bin/ninja-build"|g' ../depot_tools/ninja %if 0%{?rhel} == 7 -. /opt/rh/devtoolset-7/enable +. /opt/rh/devtoolset-8/enable %endif # Check that there is no system 'google' module, shadowing bundled ones: @@ -1387,7 +1387,7 @@ sed -i.orig -e 's/getenv("CHROME_VERSION_EXTRA")/"Fedora Project"/' $FILE %build %if 0%{?rhel} == 7 -. /opt/rh/devtoolset-7/enable +. /opt/rh/devtoolset-8/enable %endif # Now do the full browser From e708c75686b8e4601eedb1826d4d4d2edde4f307 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Thu, 20 Dec 2018 07:25:26 +0100 Subject: [PATCH 0258/1449] Use a variable for the DTS version --- chromium.spec | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/chromium.spec b/chromium.spec index 9554ff5..cb71e2c 100644 --- a/chromium.spec +++ b/chromium.spec @@ -97,6 +97,8 @@ BuildRequires: libicu-devel >= 5.4 %global gtk3 1 %if 0%{?rhel} == 7 +%global dts_version 8 + %global bundleopus 1 %global bundlelibusbx 1 %global bundleharfbuzz 1 @@ -541,7 +543,7 @@ BuildRequires: google-noto-sans-khmer-fonts BuildRequires: ninja-build %if 0%{?rhel} == 7 -BuildRequires: devtoolset-8-toolchain, devtoolset-8-libatomic-devel +BuildRequires: devtoolset-%{dts_version}-toolchain, devtoolset-%{dts_version}-libatomic-devel %endif # There is a hardcoded check for nss 3.26 in the chromium code (crypto/nss_util.cc) @@ -1352,7 +1354,7 @@ sed -i '/aarch64)/ a \ exec "/usr/bin/ninja-build" "$@";;\' ../depot_tool sed -i 's|exec "${THIS_DIR}/ninja-linux${LONG_BIT}"|exec "/usr/bin/ninja-build"|g' ../depot_tools/ninja %if 0%{?rhel} == 7 -. /opt/rh/devtoolset-8/enable +. /opt/rh/devtoolset-%{dts_version}/enable %endif # Check that there is no system 'google' module, shadowing bundled ones: @@ -1387,7 +1389,7 @@ sed -i.orig -e 's/getenv("CHROME_VERSION_EXTRA")/"Fedora Project"/' $FILE %build %if 0%{?rhel} == 7 -. /opt/rh/devtoolset-8/enable +. /opt/rh/devtoolset-%{dts_version}/enable %endif # Now do the full browser From e9829bbce48a38ec1c97cdbcd180f4edf546b90f Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 20 Dec 2018 09:53:41 -0500 Subject: [PATCH 0259/1449] okay, lets try this --- chromium-71.0.3578.98-el7-fix-noexcept.patch | 12 ++++++++++++ chromium.spec | 5 +++++ 2 files changed, 17 insertions(+) create mode 100644 chromium-71.0.3578.98-el7-fix-noexcept.patch diff --git a/chromium-71.0.3578.98-el7-fix-noexcept.patch b/chromium-71.0.3578.98-el7-fix-noexcept.patch new file mode 100644 index 0000000..ba1268b --- /dev/null +++ b/chromium-71.0.3578.98-el7-fix-noexcept.patch @@ -0,0 +1,12 @@ +diff -up chromium-71.0.3578.98/gpu/config/gpu_info.cc.fix-noexcept chromium-71.0.3578.98/gpu/config/gpu_info.cc +--- chromium-71.0.3578.98/gpu/config/gpu_info.cc.fix-noexcept 2018-12-20 09:50:03.320449807 -0500 ++++ chromium-71.0.3578.98/gpu/config/gpu_info.cc 2018-12-20 09:50:25.768849091 -0500 +@@ -116,7 +116,7 @@ GPUInfo::GPUDevice& GPUInfo::GPUDevice:: + const GPUInfo::GPUDevice& other) = default; + + GPUInfo::GPUDevice& GPUInfo::GPUDevice::operator=( +- GPUInfo::GPUDevice&& other) noexcept = default; ++ GPUInfo::GPUDevice&& other) = default; + + GPUInfo::GPUInfo() + : optimus(false), diff --git a/chromium.spec b/chromium.spec index cb71e2c..a050d5e 100644 --- a/chromium.spec +++ b/chromium.spec @@ -309,6 +309,8 @@ Patch123: relax-libva-version.patch Patch124: chromium-71.0.3578.98-vaapi-libva1-compatibility.patch # From gentoo Patch125: https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client/chromium/files/chromium-71-gcc-0.patch +# For el7: error: function 'gpu::GPUInfo::GPUDevice& gpu::GPUInfo::GPUDevice::operator=(gpu::GPUInfo::GPUDevice&&)' defaulted on its redeclaration with an exception-specification that differs from the implicit exception-specification '' +Patch126: chromium-71.0.3578.98-el7-fix-noexcept.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: @@ -864,6 +866,9 @@ udev. %patch123 -p1 -b .relaxva %patch124 -p1 -b .va1compat %patch125 -p1 -b .gcc-overloaded +%if 0%{?rhel} == 7 +%patch126 -p1 -b .fix-noexcept +%endif # Change shebang in all relevant files in this directory and all subdirectories # See `man find` for how the `-exec command {} +` syntax works From 2829ac37e82ed716e939cfe509bc3426268bae08 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 20 Dec 2018 12:35:41 -0500 Subject: [PATCH 0260/1449] RHEL 7s nodejs is too old, do not use it in the buildroot --- chromium.spec | 3 +++ 1 file changed, 3 insertions(+) diff --git a/chromium.spec b/chromium.spec index a050d5e..b3c89c5 100644 --- a/chromium.spec +++ b/chromium.spec @@ -383,7 +383,10 @@ BuildRequires: minizip-compat-devel %else BuildRequires: minizip-devel %endif +# RHEL 7's nodejs is too old +%if 0%{?fedora} BuildRequires: nodejs +%endif BuildRequires: nss-devel >= 3.26 BuildRequires: pciutils-devel BuildRequires: pulseaudio-libs-devel From a4a01ebc744a8952aa85ac347bf11863a2297c2e Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 21 Dec 2018 16:37:45 -0500 Subject: [PATCH 0261/1449] use prebuilt node on rhel7 --- .gitignore | 1 + chromium.spec | 12 +++++++++++- sources | 1 + 3 files changed, 13 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 4a49cb4..8f49a5f 100644 --- a/.gitignore +++ b/.gitignore @@ -72,3 +72,4 @@ /chromium-70.0.3538.77-clean.tar.xz /chromium-70.0.3538.110-clean.tar.xz /chromium-71.0.3578.98-clean.tar.xz +/node-v8.9.1-linux-x64.tar.gz diff --git a/chromium.spec b/chromium.spec index b3c89c5..c9d0936 100644 --- a/chromium.spec +++ b/chromium.spec @@ -344,7 +344,10 @@ Source15: http://download.savannah.nongnu.org/releases/freebangfont/MuktiNarrow- Source16: https://github.com/web-platform-tests/wpt/raw/master/fonts/Ahem.ttf Source17: GardinerModBug.ttf Source18: GardinerModCat.ttf - +# RHEL needs newer nodejs +%if 0%{?rhel} +Source19: node-v8.9.1-linux-x64.tar.gz +%endif # We can assume gcc and binutils. BuildRequires: gcc-c++ @@ -1075,8 +1078,15 @@ CHROMIUM_HEADLESS_GN_DEFINES+=' use_cups=false use_dbus=false use_gio=false use_ CHROMIUM_HEADLESS_GN_DEFINES+=' use_pulseaudio=false use_udev=false' export CHROMIUM_HEADLESS_GN_DEFINES +%if 0%{?rhel} +pushd third_party/node/linux +tar xf %{SOURCE19} +mv node-v8.9.1-linux-x64 node-linux-x64 +popd +%else mkdir -p third_party/node/linux/node-linux-x64/bin ln -s %{_bindir}/node third_party/node/linux/node-linux-x64/bin/node +%endif # Remove most of the bundled libraries. Libraries specified below (taken from # Gentoo's Chromium ebuild) are the libraries that needs to be preserved. diff --git a/sources b/sources index 4b6d47b..f0cf139 100644 --- a/sources +++ b/sources @@ -17,3 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (chromium-71.0.3578.98-clean.tar.xz) = 8e92cefb1079944a742cd99ef4b50baa71a4517420b7e30bd9cba556df9a032f1dd08acd421e0ad28b40c4d93367529029edebd8c2e6c25ccec2ab231c81828c +SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 From 09bce8257e004b7e09d8b871464c1db9ea855778 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Sat, 22 Dec 2018 19:46:19 -0500 Subject: [PATCH 0262/1449] add BR --- chromium.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/chromium.spec b/chromium.spec index c9d0936..093f861 100644 --- a/chromium.spec +++ b/chromium.spec @@ -377,6 +377,7 @@ BuildRequires: libdrm-devel %endif BuildRequires: libgcrypt-devel BuildRequires: libudev-devel +BuildRequires: libuuid-devel BuildRequires: libusb-devel BuildRequires: libXdamage-devel BuildRequires: libXScrnSaver-devel From 41f326e57d36a3e123011d05baa739adea17e447 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 2 Jan 2019 10:59:58 -0500 Subject: [PATCH 0263/1449] fix noexcept, moar --- chromium-71.0.3578.98-el7-fix-noexcept.patch | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/chromium-71.0.3578.98-el7-fix-noexcept.patch b/chromium-71.0.3578.98-el7-fix-noexcept.patch index ba1268b..0080e81 100644 --- a/chromium-71.0.3578.98-el7-fix-noexcept.patch +++ b/chromium-71.0.3578.98-el7-fix-noexcept.patch @@ -1,3 +1,15 @@ +diff -up chromium-71.0.3578.98/components/signin/core/browser/account_info.cc.fix-noexcept chromium-71.0.3578.98/components/signin/core/browser/account_info.cc +--- chromium-71.0.3578.98/components/signin/core/browser/account_info.cc.fix-noexcept 2019-01-02 10:57:29.194710662 -0500 ++++ chromium-71.0.3578.98/components/signin/core/browser/account_info.cc 2019-01-02 10:58:57.829965474 -0500 +@@ -32,7 +32,7 @@ AccountInfo::AccountInfo(AccountInfo&& o + + AccountInfo& AccountInfo::operator=(const AccountInfo& other) = default; + +-AccountInfo& AccountInfo::operator=(AccountInfo&& other) noexcept = default; ++AccountInfo& AccountInfo::operator=(AccountInfo&& other) = default; + + bool AccountInfo::IsEmpty() const { + return account_id.empty() && email.empty() && gaia.empty() && diff -up chromium-71.0.3578.98/gpu/config/gpu_info.cc.fix-noexcept chromium-71.0.3578.98/gpu/config/gpu_info.cc --- chromium-71.0.3578.98/gpu/config/gpu_info.cc.fix-noexcept 2018-12-20 09:50:03.320449807 -0500 +++ chromium-71.0.3578.98/gpu/config/gpu_info.cc 2018-12-20 09:50:25.768849091 -0500 From 143e46648dc83e5358e73b5af359fdf7f35013d1 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 2 Jan 2019 12:07:14 -0500 Subject: [PATCH 0264/1449] fix noexcept, moar moar --- chromium-71.0.3578.98-el7-fix-noexcept.patch | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/chromium-71.0.3578.98-el7-fix-noexcept.patch b/chromium-71.0.3578.98-el7-fix-noexcept.patch index 0080e81..929aed5 100644 --- a/chromium-71.0.3578.98-el7-fix-noexcept.patch +++ b/chromium-71.0.3578.98-el7-fix-noexcept.patch @@ -1,3 +1,15 @@ +diff -up chromium-71.0.3578.98/components/policy/core/common/policy_map.cc.fix-noexcept chromium-71.0.3578.98/components/policy/core/common/policy_map.cc +--- chromium-71.0.3578.98/components/policy/core/common/policy_map.cc.fix-noexcept 2019-01-02 12:06:10.867313533 -0500 ++++ chromium-71.0.3578.98/components/policy/core/common/policy_map.cc 2019-01-02 12:06:27.544980078 -0500 +@@ -18,7 +18,7 @@ PolicyMap::Entry::Entry() = default; + PolicyMap::Entry::~Entry() = default; + + PolicyMap::Entry::Entry(Entry&&) noexcept = default; +-PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) noexcept = default; ++PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) = default; + + PolicyMap::Entry PolicyMap::Entry::DeepCopy() const { + Entry copy; diff -up chromium-71.0.3578.98/components/signin/core/browser/account_info.cc.fix-noexcept chromium-71.0.3578.98/components/signin/core/browser/account_info.cc --- chromium-71.0.3578.98/components/signin/core/browser/account_info.cc.fix-noexcept 2019-01-02 10:57:29.194710662 -0500 +++ chromium-71.0.3578.98/components/signin/core/browser/account_info.cc 2019-01-02 10:58:57.829965474 -0500 From 1b1fef91b988e0ef60ad0b152a51555142f37653 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 2 Jan 2019 14:46:12 -0500 Subject: [PATCH 0265/1449] I SAID MOAR --- chromium-71.0.3578.98-el7-fix-noexcept.patch | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/chromium-71.0.3578.98-el7-fix-noexcept.patch b/chromium-71.0.3578.98-el7-fix-noexcept.patch index 929aed5..234f0a9 100644 --- a/chromium-71.0.3578.98-el7-fix-noexcept.patch +++ b/chromium-71.0.3578.98-el7-fix-noexcept.patch @@ -1,3 +1,15 @@ +diff -up chromium-71.0.3578.98/chrome/common/media_router/media_sink.cc.fix-noexcept chromium-71.0.3578.98/chrome/common/media_router/media_sink.cc +--- chromium-71.0.3578.98/chrome/common/media_router/media_sink.cc.fix-noexcept 2019-01-02 14:44:40.449801789 -0500 ++++ chromium-71.0.3578.98/chrome/common/media_router/media_sink.cc 2019-01-02 14:44:54.167481936 -0500 +@@ -24,7 +24,7 @@ MediaSink::MediaSink() = default; + MediaSink::~MediaSink() = default; + + MediaSink& MediaSink::operator=(const MediaSink& other) = default; +-MediaSink& MediaSink::operator=(MediaSink&& other) noexcept = default; ++MediaSink& MediaSink::operator=(MediaSink&& other) = default; + + bool MediaSink::Equals(const MediaSink& other) const { + return sink_id_ == other.sink_id_; diff -up chromium-71.0.3578.98/components/policy/core/common/policy_map.cc.fix-noexcept chromium-71.0.3578.98/components/policy/core/common/policy_map.cc --- chromium-71.0.3578.98/components/policy/core/common/policy_map.cc.fix-noexcept 2019-01-02 12:06:10.867313533 -0500 +++ chromium-71.0.3578.98/components/policy/core/common/policy_map.cc 2019-01-02 12:06:27.544980078 -0500 From 7ccede1e1c9540468ce6fb36b26563941b92bc01 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 8 Jan 2019 13:31:12 -0500 Subject: [PATCH 0266/1449] drop rsp clobber, which breaks gcc9 (thanks to Jeff Law) --- chromium-71.0.3578.98-gcc9-drop-rsp-clobber.patch | 12 ++++++++++++ chromium.spec | 8 +++++++- 2 files changed, 19 insertions(+), 1 deletion(-) create mode 100644 chromium-71.0.3578.98-gcc9-drop-rsp-clobber.patch diff --git a/chromium-71.0.3578.98-gcc9-drop-rsp-clobber.patch b/chromium-71.0.3578.98-gcc9-drop-rsp-clobber.patch new file mode 100644 index 0000000..d071e81 --- /dev/null +++ b/chromium-71.0.3578.98-gcc9-drop-rsp-clobber.patch @@ -0,0 +1,12 @@ +diff -up chromium-71.0.3578.98/third_party/tcmalloc/gperftools-2.0/chromium/src/base/linux_syscall_support.h.gcc9 chromium-71.0.3578.98/third_party/tcmalloc/gperftools-2.0/chromium/src/base/linux_syscall_support.h +--- chromium-71.0.3578.98/third_party/tcmalloc/gperftools-2.0/chromium/src/base/linux_syscall_support.h.gcc9 2019-01-08 13:27:25.193614727 -0500 ++++ chromium-71.0.3578.98/third_party/tcmalloc/gperftools-2.0/chromium/src/base/linux_syscall_support.h 2019-01-08 13:27:35.161392234 -0500 +@@ -1231,7 +1231,7 @@ typedef unsigned long int ulong; + "d"(LSS_SYSCALL_ARG(parent_tidptr)), + "r"(LSS_SYSCALL_ARG(newtls)), + "r"(LSS_SYSCALL_ARG(child_tidptr)) +- : "rsp", "memory", "r8", "r10", "r11", "rcx"); ++ : "memory", "r8", "r10", "r11", "rcx"); + } + LSS_RETURN(int, __res); + } diff --git a/chromium.spec b/chromium.spec index d5a1ed9..60eb2b8 100644 --- a/chromium.spec +++ b/chromium.spec @@ -150,7 +150,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3578.98 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -307,6 +307,8 @@ Patch123: relax-libva-version.patch Patch124: chromium-71.0.3578.98-vaapi-libva1-compatibility.patch # From gentoo Patch125: https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client/chromium/files/chromium-71-gcc-0.patch +# drop rsp clobber, which breaks gcc9 (thanks to Jeff Law) +Patch126: chromium-71.0.3578.98-gcc9-drop-rsp-clobber.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: @@ -862,6 +864,7 @@ udev. %patch123 -p1 -b .relaxva %patch124 -p1 -b .va1compat %patch125 -p1 -b .gcc-overloaded +%patch126 -p1 -b .gcc9 # Change shebang in all relevant files in this directory and all subdirectories # See `man find` for how the `-exec command {} +` syntax works @@ -1831,6 +1834,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Tue Jan 8 2019 Tom Callaway - 71.0.3578.98-2 +- drop rsp clobber, which breaks gcc9 (thanks to Jeff Law) + * Fri Dec 14 2018 Tom Callaway - 71.0.3578.98-1 - update to 71.0.3578.98 From c8e53a4c094d5a93ef287581de5311ef0b44f965 Mon Sep 17 00:00:00 2001 From: Akarshan Biswas Date: Wed, 9 Jan 2019 17:32:59 +0000 Subject: [PATCH 0267/1449] Fix widevine on chromium Fixes #RHBZ 1464705 --- chromium-71.0.3578.98-widevine-r3.patch | 25 ++++++++++++++++++------- 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/chromium-71.0.3578.98-widevine-r3.patch b/chromium-71.0.3578.98-widevine-r3.patch index a8deaf0..8d875c6 100644 --- a/chromium-71.0.3578.98-widevine-r3.patch +++ b/chromium-71.0.3578.98-widevine-r3.patch @@ -1,11 +1,22 @@ -diff -up chromium-71.0.3578.98/third_party/widevine/cdm/BUILD.gn.wvhack chromium-71.0.3578.98/third_party/widevine/cdm/BUILD.gn -diff -up chromium-71.0.3578.98/third_party/widevine/cdm/widevine_cdm_version.h.wvhack chromium-71.0.3578.98/third_party/widevine/cdm/widevine_cdm_version.h ---- chromium-71.0.3578.98/third_party/widevine/cdm/widevine_cdm_version.h.wvhack 2018-12-14 11:58:37.918972853 -0500 -+++ chromium-71.0.3578.98/third_party/widevine/cdm/widevine_cdm_version.h 2018-12-14 11:58:57.327554078 -0500 -@@ -11,5 +11,6 @@ - // If the Widevine CDM is available define the following: +diff -upr chromium-71.0.3578.80.orig/chrome/common/chrome_content_client.cc chromium-71.0.3578.80/chrome/common/chrome_content_client.cc +--- chromium-71.0.3578.80.orig/chrome/common/chrome_content_client.cc 2018-12-21 20:16:43.000000000 +0000 ++++ chromium-71.0.3578.80/chrome/common/chrome_content_client.cc 2018-12-21 21:34:28.658206942 +0000 +@@ -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 +diff -upr chromium-71.0.3578.80.orig/third_party/widevine/cdm/widevine_cdm_version.h chromium-71.0.3578.80/third_party/widevine/cdm/widevine_cdm_version.h +--- chromium-71.0.3578.80.orig/third_party/widevine/cdm/widevine_cdm_version.h 2018-12-21 20:18:01.000000000 +0000 ++++ chromium-71.0.3578.80/third_party/widevine/cdm/widevine_cdm_version.h 2018-12-21 21:37:45.635374949 +0000 +@@ -12,4 +12,6 @@ // - 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" ++#define WIDEVINE_CDM_VERSION_STRING "unknown" ++ #endif // WIDEVINE_CDM_VERSION_H_ From 17888344634a108a1ad99c8fd575ff3a66df8cf0 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 21 Jan 2019 14:07:36 -0500 Subject: [PATCH 0268/1449] rebuild with widevine fix --- chromium.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 60eb2b8..ba0b240 100644 --- a/chromium.spec +++ b/chromium.spec @@ -150,7 +150,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3578.98 -Release: 2%{?dist} +Release: 3%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1834,6 +1834,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Mon Jan 21 2019 Tom Callaway - 71.0.3578.98-3 +- rebuild with widevine fix + * Tue Jan 8 2019 Tom Callaway - 71.0.3578.98-2 - drop rsp clobber, which breaks gcc9 (thanks to Jeff Law) From ea2fe9d69d3c17e6de6deea7b37f4afd6776747f Mon Sep 17 00:00:00 2001 From: Igor Gnatenko Date: Tue, 29 Jan 2019 05:57:55 +0100 Subject: [PATCH 0269/1449] Remove obsolete scriptlets References: https://fedoraproject.org/wiki/Changes/RemoveObsoleteScriptlets Signed-off-by: Igor Gnatenko --- chromium.spec | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/chromium.spec b/chromium.spec index ba0b240..d182531 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1605,19 +1605,6 @@ if selinuxenabled; then restorecon -R -v %{chromium_path}/%{chromium_browser_channel} fi -touch --no-create %{_datadir}/icons/hicolor &>/dev/null || : -update-desktop-database &> /dev/null || : - -%postun -if [ $1 -eq 0 ] ; then - touch --no-create %{_datadir}/icons/hicolor &>/dev/null - gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : -fi -update-desktop-database &> /dev/null || : - -%posttrans -gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : - %pretrans -n chrome-remote-desktop -p path = "/etc/opt/chrome/native-messaging-hosts" st = posix.stat(path) From e58b7c17b68ef2dd5712f5251c2d54e46b10d93e Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 31 Jan 2019 15:34:26 +0000 Subject: [PATCH 0270/1449] - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- chromium.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index d182531..4a799ed 100644 --- a/chromium.spec +++ b/chromium.spec @@ -150,7 +150,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3578.98 -Release: 3%{?dist} +Release: 4%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1821,6 +1821,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Thu Jan 31 2019 Fedora Release Engineering - 71.0.3578.98-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + * Mon Jan 21 2019 Tom Callaway - 71.0.3578.98-3 - rebuild with widevine fix From 2d03f674957b66309738ab8718328ebddacadfee Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 26 Feb 2019 11:12:29 -0500 Subject: [PATCH 0271/1449] rebuild for libva api change --- chromium.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 4a799ed..71bf6c0 100644 --- a/chromium.spec +++ b/chromium.spec @@ -150,7 +150,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3578.98 -Release: 4%{?dist} +Release: 5%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1821,6 +1821,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Tue Feb 26 2019 Tom Callaway - 71.0.3578.98-5 +- rebuild for libva api change + * Thu Jan 31 2019 Fedora Release Engineering - 71.0.3578.98-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild From 4818465e5db6439cd6c72705112cab4bc2032f4e Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 11 Mar 2019 13:11:15 -0400 Subject: [PATCH 0272/1449] chromium 72 --- ...mium-72.0.3626.121-fedora-user-agent.patch | 12 + chromium-72.0.3626.121-fix-va-check.patch | 29 ++ chromium-72.0.3626.121-gcc5-r3.patch | 36 +++ chromium-72.0.3626.121-norar.patch | 79 +++++ chromium-72.0.3626.121-notest.patch | 11 + chromium.spec | 39 +-- enable-vaapi.patch | 297 ++++++------------ 7 files changed, 277 insertions(+), 226 deletions(-) create mode 100644 chromium-72.0.3626.121-fedora-user-agent.patch create mode 100644 chromium-72.0.3626.121-fix-va-check.patch create mode 100644 chromium-72.0.3626.121-gcc5-r3.patch create mode 100644 chromium-72.0.3626.121-norar.patch create mode 100644 chromium-72.0.3626.121-notest.patch diff --git a/chromium-72.0.3626.121-fedora-user-agent.patch b/chromium-72.0.3626.121-fedora-user-agent.patch new file mode 100644 index 0000000..5cef6f0 --- /dev/null +++ b/chromium-72.0.3626.121-fedora-user-agent.patch @@ -0,0 +1,12 @@ +diff -up chromium-72.0.3626.121/content/common/user_agent.cc.fedora-user-agent chromium-72.0.3626.121/content/common/user_agent.cc +--- chromium-72.0.3626.121/content/common/user_agent.cc.fedora-user-agent 2019-03-10 14:21:02.877454982 -0400 ++++ chromium-72.0.3626.121/content/common/user_agent.cc 2019-03-10 14:22:05.728812272 -0400 +@@ -36,7 +36,7 @@ std::string GetUserAgentPlatform() { + #elif defined(OS_MACOSX) + "Macintosh; "; + #elif defined(USE_X11) || defined(USE_OZONE) +- "X11; "; // strange, but that's what Firefox uses ++ "X11; Fedora; "; // strange, but that's what Firefox uses + #elif defined(OS_ANDROID) + "Linux; "; + #elif defined(OS_POSIX) || defined(OS_FUCHSIA) diff --git a/chromium-72.0.3626.121-fix-va-check.patch b/chromium-72.0.3626.121-fix-va-check.patch new file mode 100644 index 0000000..aa0eb71 --- /dev/null +++ b/chromium-72.0.3626.121-fix-va-check.patch @@ -0,0 +1,29 @@ +diff -up chromium-72.0.3626.121/media/gpu/vaapi/vaapi_wrapper.cc.fixvacheck chromium-72.0.3626.121/media/gpu/vaapi/vaapi_wrapper.cc +--- chromium-72.0.3626.121/media/gpu/vaapi/vaapi_wrapper.cc.fixvacheck 2019-03-10 14:54:38.744305074 -0400 ++++ chromium-72.0.3626.121/media/gpu/vaapi/vaapi_wrapper.cc 2019-03-10 14:55:34.383221574 -0400 +@@ -334,15 +334,16 @@ bool VADisplayState::InitializeOnce() { + << va_vendor_string_; + + // The VAAPI version is determined from what is loaded on the system by +- // calling vaInitialize(). We want a runtime evaluation of libva version, +- // of what is loaded on the system, with, what browser is compiled with. +- // Also since the libva is now ABI-compatible, relax the version check +- // which helps in upgrading the libva, without breaking any existing +- // functionality. +- if (!VA_CHECK_VERSION(major_version, minor_version, 0)) { +- LOG(ERROR) << "This build of Chromium requires VA-API version " +- << VA_MAJOR_VERSION << "." << VA_MINOR_VERSION +- << ", system version: " << major_version << "." << minor_version; ++ // calling vaInitialize(). Since the libva is now ABI-compatible, relax the ++ // version check which helps in upgrading the libva, without breaking any ++ // existing functionality. Make sure the system version is not older than ++ // the version with which the chromium is built since libva is only ++ // guaranteed to be backward (and not forward) compatible. ++ if (VA_MAJOR_VERSION > major_version || ++ (VA_MAJOR_VERSION == major_version && VA_MINOR_VERSION > minor_version)) { ++ LOG(ERROR) << "The system version " << major_version << "." << minor_version ++ << " should be greater than or equal to " ++ << VA_MAJOR_VERSION << "." << VA_MINOR_VERSION; + return false; + } + return true; diff --git a/chromium-72.0.3626.121-gcc5-r3.patch b/chromium-72.0.3626.121-gcc5-r3.patch new file mode 100644 index 0000000..f4cf40b --- /dev/null +++ b/chromium-72.0.3626.121-gcc5-r3.patch @@ -0,0 +1,36 @@ +diff -up chromium-72.0.3626.121/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 chromium-72.0.3626.121/gpu/ipc/common/mailbox_struct_traits.h +--- chromium-72.0.3626.121/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 2019-03-01 23:10:21.000000000 -0500 ++++ chromium-72.0.3626.121/gpu/ipc/common/mailbox_struct_traits.h 2019-03-10 14:07:48.300244125 -0400 +@@ -15,7 +15,7 @@ namespace mojo { + template <> + struct StructTraits { + static base::span name(const gpu::Mailbox& mailbox) { +- return mailbox.name; ++ return base::make_span(mailbox.name); + } + static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out); + }; +diff -up chromium-72.0.3626.121/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 chromium-72.0.3626.121/services/viz/public/cpp/compositing/quads_struct_traits.h +--- chromium-72.0.3626.121/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 2019-03-01 23:10:31.000000000 -0500 ++++ chromium-72.0.3626.121/services/viz/public/cpp/compositing/quads_struct_traits.h 2019-03-10 14:07:48.303244046 -0400 +@@ -340,7 +340,7 @@ struct StructTraits vertex_opacity(const viz::DrawQuad& input) { + const viz::TextureDrawQuad* quad = + viz::TextureDrawQuad::MaterialCast(&input); +- return quad->vertex_opacity; ++ return base::make_span(quad->vertex_opacity); + } + + static bool y_flipped(const viz::DrawQuad& input) { +diff -up chromium-72.0.3626.121/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 chromium-72.0.3626.121/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc +--- chromium-72.0.3626.121/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 2019-03-10 14:07:48.307243941 -0400 ++++ chromium-72.0.3626.121/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2019-03-10 14:09:16.565920044 -0400 +@@ -10,7 +10,7 @@ + + #include "modules/audio_processing/aec3/aec_state.h" + +-#include ++#include + #include + #include + #include diff --git a/chromium-72.0.3626.121-norar.patch b/chromium-72.0.3626.121-norar.patch new file mode 100644 index 0000000..d5d2632 --- /dev/null +++ b/chromium-72.0.3626.121-norar.patch @@ -0,0 +1,79 @@ +diff -up chromium-72.0.3626.121/chrome/common/safe_browsing/BUILD.gn.nounrar chromium-72.0.3626.121/chrome/common/safe_browsing/BUILD.gn +--- chromium-72.0.3626.121/chrome/common/safe_browsing/BUILD.gn.nounrar 2019-03-10 14:15:47.187705953 -0400 ++++ chromium-72.0.3626.121/chrome/common/safe_browsing/BUILD.gn 2019-03-10 14:16:47.154138649 -0400 +@@ -56,40 +56,6 @@ if (safe_browsing_mode == 1) { + ] + } + +- source_set("rar_analyzer") { +- sources = [ +- "rar_analyzer.cc", +- "rar_analyzer.h", +- ] +- +- deps = [ +- ":archive_analyzer_results", +- ":download_type_util", +- ":file_type_policies", +- "//base", +- "//base:i18n", +- "//third_party/unrar:unrar", +- ] +- +- defines = [ +- "_FILE_OFFSET_BITS=64", +- "LARGEFILE_SOURCE", +- "RAR_SMP", +- "SILENT", +- +- # The following is set to disable certain macro definitions in the unrar +- # source code. +- "CHROMIUM_UNRAR", +- +- # Disables exceptions in unrar, replaces them with process termination. +- "UNRAR_NO_EXCEPTIONS", +- ] +- +- public_deps = [ +- "//components/safe_browsing:csd_proto", +- ] +- } +- + source_set("disk_image_type_sniffer_mac") { + sources = [ + "disk_image_type_sniffer_mac.cc", +@@ -150,7 +116,6 @@ source_set("safe_browsing") { + deps += [ + ":archive_analyzer_results", + ":download_type_util", +- ":rar_analyzer", + "//components/safe_browsing:features", + ] + +diff -up chromium-72.0.3626.121/chrome/common/safe_browsing/DEPS.nounrar chromium-72.0.3626.121/chrome/common/safe_browsing/DEPS +--- chromium-72.0.3626.121/chrome/common/safe_browsing/DEPS.nounrar 2019-03-01 23:10:03.000000000 -0500 ++++ chromium-72.0.3626.121/chrome/common/safe_browsing/DEPS 2019-03-10 14:14:55.430058716 -0400 +@@ -1,6 +1,5 @@ + include_rules = [ + "+components/safe_browsing", + "+third_party/protobuf", +- "+third_party/unrar", + "+third_party/zlib", + ] +diff -up chromium-72.0.3626.121/chrome/services/file_util/safe_archive_analyzer.cc.nounrar chromium-72.0.3626.121/chrome/services/file_util/safe_archive_analyzer.cc +--- chromium-72.0.3626.121/chrome/services/file_util/safe_archive_analyzer.cc.nounrar 2019-03-01 23:10:04.000000000 -0500 ++++ chromium-72.0.3626.121/chrome/services/file_util/safe_archive_analyzer.cc 2019-03-10 14:14:55.433058638 -0400 +@@ -47,9 +47,13 @@ void SafeArchiveAnalyzer::AnalyzeDmgFile + + void SafeArchiveAnalyzer::AnalyzeRarFile(base::File rar_file, + AnalyzeRarFileCallback callback) { ++#if 0 + DCHECK(rar_file.IsValid()); + + safe_browsing::ArchiveAnalyzerResults results; + safe_browsing::rar_analyzer::AnalyzeRarFile(std::move(rar_file), &results); + std::move(callback).Run(results); ++#else ++ NOTREACHED(); ++#endif + } diff --git a/chromium-72.0.3626.121-notest.patch b/chromium-72.0.3626.121-notest.patch new file mode 100644 index 0000000..e8b7bf4 --- /dev/null +++ b/chromium-72.0.3626.121-notest.patch @@ -0,0 +1,11 @@ +diff -up chromium-72.0.3626.121/chrome/test/data/webui_test_resources.grd.notest chromium-72.0.3626.121/chrome/test/data/webui_test_resources.grd +--- chromium-72.0.3626.121/chrome/test/data/webui_test_resources.grd.notest 2019-03-10 13:54:17.843583876 -0400 ++++ chromium-72.0.3626.121/chrome/test/data/webui_test_resources.grd 2019-03-10 14:03:29.302063637 -0400 +@@ -8,7 +8,6 @@ + + + +- + + + diff --git a/chromium.spec b/chromium.spec index 71bf6c0..dea5c85 100644 --- a/chromium.spec +++ b/chromium.spec @@ -2,6 +2,9 @@ # https://fedoraproject.org/wiki/Changes/No_more_automagic_Python_bytecompilation_phase_2 %global _python_bytecompile_extra 1 +# This is faster when it works, but it doesn't always. +%global use_jumbo 0 + # NEVER EVER EVER turn this on in official builds %global freeworld 0 %if %{freeworld} @@ -142,15 +145,15 @@ BuildRequires: libicu-devel >= 5.4 %global chromoting_client_id %nil %endif -%global majorversion 71 +%global majorversion 72 %if %{freeworld} Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3578.98 -Release: 5%{?dist} +Version: %{majorversion}.0.3626.121 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -159,7 +162,7 @@ License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and Open Patch0: chromium-67.0.3396.62-gcc5.patch Patch1: chromium-45.0.2454.101-linux-path-max.patch Patch2: chromium-55.0.2883.75-addrfix.patch -Patch4: chromium-68.0.3440.106-notest.patch +Patch4: chromium-72.0.3626.121-notest.patch # In file included from ../linux/directory.c:21: # In file included from ../../../../native_client/src/nonsfi/linux/abi_conversion.h:20: # ../../../../native_client/src/nonsfi/linux/linux_syscall_structs.h:44:13: error: GNU-style inline assembly is disabled @@ -227,7 +230,7 @@ Patch53: chromium-61.0.3163.79-gcc-no-opt-safe-math.patch # Only needed when glibc 2.26.90 or later is used Patch57: chromium-63.0.3289.84-aarch64-glibc-2.26.90.patch # From gentoo -Patch62: chromium-66.0.3359.117-gcc5-r3.patch +Patch62: chromium-72.0.3626.121-gcc5-r3.patch # Do not try to use libc++ in the remoting stack # Patch63: chromium-63.0.3289.84-nolibc++.patch # To use round with gcc, you need to #include @@ -249,7 +252,7 @@ Patch88: chromium-66.0.3359.117-missing-files.patch # https://bugs.chromium.org/p/chromium/issues/detail?id=816952 # Patch91: chromium-66.0.3359.117-gcc-vector-copy-constructor-fix.patch # Do not use unrar code, it is non-free -Patch92: chromium-71.0.3578.98-norar.patch +Patch92: chromium-72.0.3626.121-norar.patch # Upstream GCC fixes Patch93: chromium-66.0.3359.117-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch Patch94: chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch @@ -266,7 +269,7 @@ Patch98: chromium-69.0.3497.81-gcc8-alignof.patch # https://bugs.python.org/issue21591 Patch100: chromium-67.0.3396.62-epel7-use-old-python-exec-syntax.patch # Add "Fedora" to the user agent string -Patch101: chromium-68.0.3440.106-fedora-user-agent.patch +Patch101: chromium-72.0.3626.121-fedora-user-agent.patch # Try to fix version.py for Rawhide Patch102: chromium-67.0.3396.99-py3fix.patch Patch103: chromium-71.0.3578.98-py2-bootstrap.patch @@ -291,8 +294,6 @@ Patch117: chromium-70.0.3538.67-disable-fontconfig-cache-magic.patch Patch118: chromium-70.0.3538.77-harfbuzz2-fix.patch # Fix aarch64 build against latest linux kernel headers Patch119: chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch -# https://chromium.googlesource.com/chromium/src/tools/gn/+/6630c2e334d7bc179e95a3d543a8eca3201d6725 -Patch120: chromium-71.0.3578.98-remove-sysroot-options.patch # Enable VAAPI support on Linux # NOTE: This patch will never land upstream Patch121: enable-vaapi.patch @@ -305,10 +306,10 @@ Patch122: chromium-70.0.3538.110-vaapi-i686-fpermissive.patch Patch123: relax-libva-version.patch # Fix compatibility with VA-API library (libva) version 1 Patch124: chromium-71.0.3578.98-vaapi-libva1-compatibility.patch -# From gentoo -Patch125: https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client/chromium/files/chromium-71-gcc-0.patch # drop rsp clobber, which breaks gcc9 (thanks to Jeff Law) Patch126: chromium-71.0.3578.98-gcc9-drop-rsp-clobber.patch +# Fix va check code +Patch127: chromium-72.0.3626.121-fix-va-check.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: @@ -856,15 +857,14 @@ udev. %patch118 -p1 -b .harfbuzz2 %endif %patch119 -p1 -b .aarch64-new-stat -%patch120 -p1 -b .sysrootfix %patch121 -p1 -b .vaapi %ifarch i686 %patch122 -p1 -b .i686permissive %endif %patch123 -p1 -b .relaxva %patch124 -p1 -b .va1compat -%patch125 -p1 -b .gcc-overloaded %patch126 -p1 -b .gcc9 +%patch127 -p1 -b .fixvacheck # Change shebang in all relevant files in this directory and all subdirectories # See `man find` for how the `-exec command {} +` syntax works @@ -1040,7 +1040,9 @@ CHROMIUM_CORE_GN_DEFINES+=' use_custom_libcxx=false' %ifarch aarch64 CHROMIUM_CORE_GN_DEFINES+=' target_cpu="arm64"' %endif +%if %{?use_jumbo} CHROMIUM_CORE_GN_DEFINES+=' use_jumbo_build=true jumbo_file_merge_limit=8' +%endif export CHROMIUM_CORE_GN_DEFINES CHROMIUM_BROWSER_GN_DEFINES="" @@ -1094,13 +1096,12 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'net/third_party/quic' \ 'net/third_party/spdy' \ 'net/third_party/uri_template' \ - 'third_party/WebKit' \ 'third_party/abseil-cpp' \ 'third_party/adobe' \ - 'third_party/analytics' \ 'third_party/angle' \ 'third_party/angle/src/common/third_party/base' \ 'third_party/angle/src/common/third_party/smhasher' \ + 'third_party/angle/src/common/third_party/xxhash' \ 'third_party/angle/src/third_party/compiler' \ 'third_party/angle/src/third_party/libXNVCtrl' \ 'third_party/angle/src/third_party/trace_event' \ @@ -1135,6 +1136,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/catapult/tracing/third_party/pako' \ 'third_party/ced' \ 'third_party/cld_3' \ + 'third_party/closure_compiler' \ 'third_party/crashpad' \ 'third_party/crashpad/crashpad/third_party/zlib/' \ 'third_party/crc32c' \ @@ -1149,7 +1151,6 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/flot' \ 'third_party/fontconfig' \ 'third_party/freetype' \ - 'third_party/glslang-angle' \ 'third_party/google_input_tools' \ 'third_party/google_input_tools/third_party/closure_library' \ 'third_party/google_input_tools/third_party/closure_library/third_party/closure' \ @@ -1198,6 +1199,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/mesa' \ 'third_party/metrics_proto' \ 'third_party/modp_b64' \ + 'third_party/nasm' \ 'third_party/node' \ 'third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2' \ %if %{freeworld} @@ -1241,7 +1243,6 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/speech-dispatcher' \ 'third_party/spirv-headers' \ 'third_party/SPIRV-Tools' \ - 'third_party/spirv-tools-angle' \ 'third_party/sqlite' \ 'third_party/swiftshader' \ 'third_party/swiftshader/third_party/subzero' \ @@ -1252,7 +1253,6 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/usb_ids' \ 'third_party/usrsctp' \ 'third_party/vulkan' \ - 'third_party/vulkan-validation-layers' \ 'third_party/web-animations-js' \ 'third_party/webdriver' \ 'third_party/webrtc' \ @@ -1821,6 +1821,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Sat Mar 9 2019 Tom Callaway - 72.0.3626.121-1 +- update to 72.0.3626.121 + * Tue Feb 26 2019 Tom Callaway - 71.0.3578.98-5 - rebuild for libva api change diff --git a/enable-vaapi.patch b/enable-vaapi.patch index 1997af3..6e09024 100644 --- a/enable-vaapi.patch +++ b/enable-vaapi.patch @@ -1,26 +1,22 @@ -From efdd5bdf093e9074c9eba73650ff5ad95b280ec8 Mon Sep 17 00:00:00 2001 +From abc7295ca1653c85472916909f0eb76e28e79a58 Mon Sep 17 00:00:00 2001 From: Akarshan Biswas -Date: Sun, 4 Nov 2018 20:26:54 +0530 -Subject: [PATCH] Enable vaapi on Linux +Date: Thu, 24 Jan 2019 12:45:29 +0530 +Subject: [PATCH] Enable mojo with VDA2 on Linux --- - chrome/browser/about_flags.cc | 14 +++++++------ - chrome/browser/flag_descriptions.cc | 22 +++++++++++++------- - chrome/browser/flag_descriptions.h | 16 +++++++++----- - components/viz/service/main/viz_main_impl.cc | 2 +- - content/gpu/BUILD.gn | 6 ++++++ - content/gpu/gpu_main.cc | 4 ++-- - gpu/config/software_rendering_list.json | 11 ---------- - media/base/media_switches.cc | 2 +- - media/filters/BUILD.gn | 3 ++- - media/gpu/BUILD.gn | 7 +++++++ - 10 files changed, 52 insertions(+), 35 deletions(-) + chrome/browser/about_flags.cc | 8 ++++---- + chrome/browser/flag_descriptions.cc | 9 +++++++-- + chrome/browser/flag_descriptions.h | 10 ++++++++-- + gpu/config/software_rendering_list.json | 3 ++- + media/media_options.gni | 9 ++++++--- + media/mojo/services/gpu_mojo_media_client.cc | 4 ++-- + 6 files changed, 29 insertions(+), 14 deletions(-) diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc -index db54ccb61..f32075fb8 100644 +index 0a84c6ac1..be2aa1d8b 100644 --- a/chrome/browser/about_flags.cc +++ b/chrome/browser/about_flags.cc -@@ -1797,7 +1797,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -1714,7 +1714,7 @@ const FeatureEntry kFeatureEntries[] = { "disable-accelerated-video-decode", flag_descriptions::kAcceleratedVideoDecodeName, flag_descriptions::kAcceleratedVideoDecodeDescription, @@ -29,7 +25,7 @@ index db54ccb61..f32075fb8 100644 SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedVideoDecode), }, #if defined(OS_WIN) -@@ -2456,12 +2456,12 @@ const FeatureEntry kFeatureEntries[] = { +@@ -2345,12 +2345,12 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE(service_manager::features::kXRSandbox)}, #endif // ENABLE_ISOLATED_XR_SERVICE #endif // ENABLE_VR @@ -41,80 +37,42 @@ index db54ccb61..f32075fb8 100644 + flag_descriptions::kAcceleratedMjpegDecodeDescription, kOsCrOS | kOsLinux, SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedMjpegDecode)}, -#endif // OS_CHROMEOS -+#endif // OS_CHROMEOS OS_LINUX ++#endif // OS_CHROMEOS // OS_LINUX {"v8-cache-options", flag_descriptions::kV8CacheOptionsName, flag_descriptions::kV8CacheOptionsDescription, kOsAll, MULTI_VALUE_TYPE(kV8CacheOptionsChoices)}, -@@ -4371,12 +4371,14 @@ const FeatureEntry kFeatureEntries[] = { - "AutofillDropdownLayout")}, - #endif // OS_ANDROID - --#if defined(OS_CHROMEOS) -+#if defined(OS_CHROMEOS) || defined(OS_LINUX) - {"enable-vaapi-jpeg-image-decode-acceleration", - flag_descriptions::kVaapiJpegImageDecodeAccelerationName, -- flag_descriptions::kVaapiJpegImageDecodeAccelerationDescription, kOsCrOS, -+ flag_descriptions::kVaapiJpegImageDecodeAccelerationDescription, kOsCrOS | kOsLinux, - FEATURE_VALUE_TYPE(features::kVaapiJpegImageDecodeAcceleration)}, -+#endif - -+#if defined(OS_CHROMEOS) - {"enable-home-launcher-gestures", - flag_descriptions::kEnableHomeLauncherGesturesName, - flag_descriptions::kEnableHomeLauncherGesturesDescription, kOsCrOS, diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc -index 6cc51bbfb..3c4babe3d 100644 +index 62637e092..86f89fc6e 100644 --- a/chrome/browser/flag_descriptions.cc +++ b/chrome/browser/flag_descriptions.cc -@@ -2996,9 +2996,9 @@ const char kTextSuggestionsTouchBarDescription[] = +@@ -3085,15 +3085,20 @@ const char kTextSuggestionsTouchBarDescription[] = #endif -// Chrome OS ------------------------------------------------------------------- -+// Chrome OS and Linux ------------------------------------------------------------------- ++// Chrome OS Linux------------------------------------------------------------------- -#if defined(OS_CHROMEOS) +#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID)) const char kAcceleratedMjpegDecodeName[] = "Hardware-accelerated mjpeg decode for captured frame"; -@@ -3006,6 +3006,18 @@ const char kAcceleratedMjpegDecodeDescription[] = + const char kAcceleratedMjpegDecodeDescription[] = "Enable hardware-accelerated mjpeg decode for captured frame where " "available."; - -+const char kVaapiJpegImageDecodeAccelerationName[] = -+ "VA-API JPEG decode acceleration for images"; -+const char kVaapiJpegImageDecodeAccelerationDescription[] = -+ "Enable or disable decode acceleration of JPEG images (as opposed to camera" -+ " captures) using the VA-API."; ++#endif + -+#endif // defined(OS_CHROMEOS) defined(OS_LINUX) and !defined(OS_ANDROID) -+ -+// Only Chrome OS ------------------------------------------------------ ++// Chrome OS -------------------------------------------------- + +#if defined(OS_CHROMEOS) -+ + const char kAllowTouchpadThreeFingerClickName[] = "Touchpad three-finger-click"; const char kAllowTouchpadThreeFingerClickDescription[] = - "Enables touchpad three-finger-click as middle button."; -@@ -3524,12 +3536,6 @@ const char kUseMonitorColorSpaceDescription[] = - "Enables Chrome to use the color space information provided by the monitor" - " instead of the default sRGB color space."; - --const char kVaapiJpegImageDecodeAccelerationName[] = -- "VA-API JPEG decode acceleration for images"; --const char kVaapiJpegImageDecodeAccelerationDescription[] = -- "Enable or disable decode acceleration of JPEG images (as opposed to camera" -- " captures) using the VA-API."; -- - const char kVideoPlayerChromecastSupportName[] = - "Experimental Chromecast support for Video Player"; - const char kVideoPlayerChromecastSupportDescription[] = diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h -index 944695782..38d8fe144 100644 +index 5dac660bb..6cc4115da 100644 --- a/chrome/browser/flag_descriptions.h +++ b/chrome/browser/flag_descriptions.h -@@ -1824,13 +1824,22 @@ extern const char kPermissionPromptPersistenceToggleDescription[]; +@@ -1846,13 +1846,19 @@ extern const char kPermissionPromptPersistenceToggleDescription[]; #endif // defined(OS_MACOSX) @@ -122,171 +80,94 @@ index 944695782..38d8fe144 100644 +// Chrome OS and Linux ------------------------------------------------------------------ -#if defined(OS_CHROMEOS) -+#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID)) ++#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID)) extern const char kAcceleratedMjpegDecodeName[]; extern const char kAcceleratedMjpegDecodeDescription[]; -+extern const char kVaapiJpegImageDecodeAccelerationName[]; -+extern const char kVaapiJpegImageDecodeAccelerationDescription[]; ++#endif // defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID)) + -+#endif -+ -+// Chrome OS ---------------------------------------------------------------------- ++// Chrome OS ------------------------------------------------------------------------ + +#if defined(OS_CHROMEOS) + extern const char kAllowTouchpadThreeFingerClickName[]; extern const char kAllowTouchpadThreeFingerClickDescription[]; -@@ -2145,9 +2154,6 @@ extern const char kUseMashDescription[]; - extern const char kUseMonitorColorSpaceName[]; - extern const char kUseMonitorColorSpaceDescription[]; - --extern const char kVaapiJpegImageDecodeAccelerationName[]; --extern const char kVaapiJpegImageDecodeAccelerationDescription[]; -- - extern const char kVideoPlayerChromecastSupportName[]; - extern const char kVideoPlayerChromecastSupportDescription[]; - -diff --git a/components/viz/service/main/viz_main_impl.cc b/components/viz/service/main/viz_main_impl.cc -index 6f5f55de7..b90db3738 100644 ---- a/components/viz/service/main/viz_main_impl.cc -+++ b/components/viz/service/main/viz_main_impl.cc -@@ -41,7 +41,7 @@ std::unique_ptr CreateAndStartIOThread() { - // It should be possible to use |main_task_runner_| for doing IO tasks. - base::Thread::Options thread_options(base::MessageLoop::TYPE_IO, 0); - thread_options.priority = base::ThreadPriority::NORMAL; --#if defined(OS_ANDROID) || defined(OS_CHROMEOS) -+#if defined(OS_ANDROID) || defined(OS_CHROMEOS) || defined(OS_LINUX) - // TODO(reveman): Remove this in favor of setting it explicitly for each - // type of process. - thread_options.priority = base::ThreadPriority::DISPLAY; -diff --git a/content/gpu/BUILD.gn b/content/gpu/BUILD.gn -index 8974e441d..d7eba85a9 100644 ---- a/content/gpu/BUILD.gn -+++ b/content/gpu/BUILD.gn -@@ -6,6 +6,7 @@ import("//build/config/jumbo.gni") - import("//build/config/ui.gni") - import("//gpu/vulkan/features.gni") - import("//media/media_options.gni") -+import("//media/gpu/args.gni") - import("//ui/ozone/ozone.gni") - - # See //content/BUILD.gn for how this works. -@@ -134,4 +135,9 @@ target(link_target_type, "gpu_sources") { - (!is_chromecast || is_cast_desktop_build)) { - configs += [ "//build/config/linux/dri" ] - } -+ -+ # Use vaapi on desktop Linux builds when use_vaapi is set -+ if (is_desktop_linux && use_vaapi) { -+ public_configs = [ "//media/gpu:libva_config" ] -+ } - } -diff --git a/content/gpu/gpu_main.cc b/content/gpu/gpu_main.cc -index 8397889b6..188d960a4 100644 ---- a/content/gpu/gpu_main.cc -+++ b/content/gpu/gpu_main.cc -@@ -284,7 +284,7 @@ int GpuMain(const MainFunctionParams& parameters) { - - base::PlatformThread::SetName("CrGpuMain"); - --#if defined(OS_ANDROID) || defined(OS_CHROMEOS) -+#if defined(OS_ANDROID) || defined(OS_CHROMEOS) || defined(OS_LINUX) - // Set thread priority before sandbox initialization. - base::PlatformThread::SetCurrentThreadPriority(base::ThreadPriority::DISPLAY); - #endif -@@ -317,7 +317,7 @@ int GpuMain(const MainFunctionParams& parameters) { - GetContentClient()->SetGpuInfo(gpu_init->gpu_info()); - - base::ThreadPriority io_thread_priority = base::ThreadPriority::NORMAL; --#if defined(OS_ANDROID) || defined(OS_CHROMEOS) -+#if defined(OS_ANDROID) || defined(OS_CHROMEOS) || defined(OS_LINUX) - io_thread_priority = base::ThreadPriority::DISPLAY; - #endif - diff --git a/gpu/config/software_rendering_list.json b/gpu/config/software_rendering_list.json -index cb6118b6a..7b8ea0f75 100644 +index 65f37b3f1..ae8a1718f 100644 --- a/gpu/config/software_rendering_list.json +++ b/gpu/config/software_rendering_list.json -@@ -369,17 +369,6 @@ - "all" - ] +@@ -371,11 +371,12 @@ }, -- { -- "id": 48, -- "description": "Accelerated video decode is unavailable on Linux", -- "cr_bugs": [137247], -- "os": { -- "type": "linux" -- }, -- "features": [ -- "accelerated_video_decode" -- ] -- }, { - "id": 50, - "description": "Disable VMware software renderer on older Mesa", -diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc -index 41bfa9172..30ca4f40a 100644 ---- a/media/base/media_switches.cc -+++ b/media/base/media_switches.cc -@@ -495,7 +495,7 @@ bool IsVideoCaptureAcceleratedJpegDecodingEnabled() { - switches::kUseFakeJpegDecodeAccelerator)) { - return true; - } --#if defined(OS_CHROMEOS) -+#if defined(OS_CHROMEOS) || defined(OS_LINUX) - return true; - #endif - return false; -diff --git a/media/filters/BUILD.gn b/media/filters/BUILD.gn -index d558b537a..9ad090e07 100644 ---- a/media/filters/BUILD.gn -+++ b/media/filters/BUILD.gn + "id": 48, +- "description": "Accelerated video decode is unavailable on Linux", ++ "description": "Accelerated VA-API video decode is not supported on NVIDIA platforms", + "cr_bugs": [137247], + "os": { + "type": "linux" + }, ++ "vendor_id": "0x10de", + "features": [ + "accelerated_video_decode" + ] +diff --git a/media/media_options.gni b/media/media_options.gni +index 46eaa5818..6e338f651 100644 +--- a/media/media_options.gni ++++ b/media/media_options.gni @@ -5,6 +5,7 @@ - import("//build/config/jumbo.gni") - import("//media/media_options.gni") - import("//third_party/libaom/options.gni") + import("//build/config/chrome_build.gni") + import("//build/config/chromecast_build.gni") + import("//build/config/features.gni") +import("//media/gpu/args.gni") + import("//testing/libfuzzer/fuzzer_test.gni") - jumbo_source_set("filters") { - # Do not expand the visibility here without double-checking with OWNERS, this -@@ -200,7 +201,7 @@ jumbo_source_set("filters") { - deps += [ "//media/base/android" ] - } + # Do not expand this list without double-checking with OWNERS, this is a list of +@@ -129,8 +130,9 @@ declare_args() { + # |mojo_media_services|). When enabled, selected mojo paths will be enabled in + # the media pipeline and corresponding services will hosted in the selected + # remote process (e.g. "utility" process, see |mojo_media_host|). +- enable_mojo_media = is_android || is_chromecast || is_chromeos || is_mac || +- is_win || enable_library_cdms ++ enable_mojo_media = ++ is_android || is_chromecast || is_chromeos || is_mac || is_win || ++ enable_library_cdms || (is_desktop_linux && use_vaapi) -- if (current_cpu != "arm" && is_linux) { -+ if (use_vaapi && is_linux) { - sources += [ - "h264_bitstream_buffer.cc", - "h264_bitstream_buffer.h", -diff --git a/media/gpu/BUILD.gn b/media/gpu/BUILD.gn -index 07bfdefda..7e33cd747 100644 ---- a/media/gpu/BUILD.gn -+++ b/media/gpu/BUILD.gn -@@ -508,6 +508,12 @@ if (use_v4l2_codec || use_vaapi || is_mac || is_win) { - } - } - -+import("//build/config/linux/pkg_config.gni") -+ -+pkg_config("libva_config") { -+ packages = [ "libva" ] -+} -+ - if (use_vaapi) { - test("jpeg_encode_accelerator_unittest") { - deps = [ -@@ -578,6 +584,7 @@ if (is_chromeos || is_linux) { - if (use_ozone) { - deps += [ "//ui/ozone" ] + # Enable the TestMojoMediaClient to be used in mojo MediaService. This is for + # testing only and will override the default platform MojoMediaClient, if any. +@@ -200,7 +202,8 @@ if (enable_mojo_media) { + ] + _default_mojo_media_host = "gpu" } -+ public_configs = [ ":libva_config" ] +- } else if (is_chromeos || is_mac || is_win) { ++ } else if (is_chromeos || is_mac || is_win || ++ (is_desktop_linux && use_vaapi)) { + _default_mojo_media_services = [ "video_decoder" ] + _default_mojo_media_host = "gpu" } - } +diff --git a/media/mojo/services/gpu_mojo_media_client.cc b/media/mojo/services/gpu_mojo_media_client.cc +index 75f5e611c..09a8fef92 100644 +--- a/media/mojo/services/gpu_mojo_media_client.cc ++++ b/media/mojo/services/gpu_mojo_media_client.cc +@@ -54,7 +54,7 @@ namespace media { + namespace { + #if defined(OS_ANDROID) || defined(OS_CHROMEOS) || defined(OS_MACOSX) || \ +- defined(OS_WIN) ++ defined(OS_WIN) || defined(OS_LINUX) + gpu::CommandBufferStub* GetCommandBufferStub( + base::WeakPtr media_gpu_channel_manager, + base::UnguessableToken channel_token, +@@ -148,7 +148,7 @@ std::unique_ptr GpuMojoMediaClient::CreateVideoDecoder( + android_overlay_factory_cb_, std::move(request_overlay_info_cb), + std::make_unique(gpu_task_runner_, + std::move(get_stub_cb))); +-#elif defined(OS_CHROMEOS) || defined(OS_MACOSX) || defined(OS_WIN) ++#elif defined(OS_CHROMEOS) || defined(OS_MACOSX) || defined(OS_WIN) || defined(OS_LINUX) + std::unique_ptr vda_video_decoder = VdaVideoDecoder::Create( + task_runner, gpu_task_runner_, media_log->Clone(), target_color_space, + gpu_preferences_, gpu_workarounds_, -- -2.19.2 +2.20.1 From 6f3b08b26ce88070402b55f7db2ddc9479496cc6 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 11 Mar 2019 13:14:40 -0400 Subject: [PATCH 0273/1449] new source --- .gitignore | 1 + sources | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 4a49cb4..ab24241 100644 --- a/.gitignore +++ b/.gitignore @@ -72,3 +72,4 @@ /chromium-70.0.3538.77-clean.tar.xz /chromium-70.0.3538.110-clean.tar.xz /chromium-71.0.3578.98-clean.tar.xz +/chromium-72.0.3626.121-clean.tar.xz diff --git a/sources b/sources index 4b6d47b..97d6c4c 100644 --- a/sources +++ b/sources @@ -16,4 +16,4 @@ SHA512 (Tinos-Bold.ttf) = 54aeca804c06a4d5c57ade596e73df91a6a1c4401c4aadba55d987 SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0e22a16414278217f37497b904a18540273c0e2d79d4f1faabde3b0eb5446283b318c73bafb38 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd -SHA512 (chromium-71.0.3578.98-clean.tar.xz) = 8e92cefb1079944a742cd99ef4b50baa71a4517420b7e30bd9cba556df9a032f1dd08acd421e0ad28b40c4d93367529029edebd8c2e6c25ccec2ab231c81828c +SHA512 (chromium-72.0.3626.121-clean.tar.xz) = 28f4ebee0139fdad94529a57da86f817175e86cdc72bfa6c727ac75b134c56b8729a59cce7c12294b8c7dfe64edaf193ae6d246746b4c04dc353aca7d7e95c89 From 9071ee2d2f996b84c95651d6f02ef316fee613c1 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 14 Mar 2019 17:26:19 -0400 Subject: [PATCH 0274/1449] go 73, go! --- .gitignore | 1 + chromium-73-gcc-0.patch | 108 +++++++++++++++++ chromium-73-gcc-1.patch | 99 ++++++++++++++++ chromium-73-gcc-2.patch | 51 ++++++++ chromium-73-gcc-3.patch | 69 +++++++++++ chromium-73-gcc-4.patch | 59 ++++++++++ chromium-73-gcc-5.patch | 65 +++++++++++ chromium-73-gcc-6.patch | 88 ++++++++++++++ ...sable-fno-delete-null-pointer-checks.patch | 48 ++++++++ chromium-73.0.3683.75-norar.patch | 81 +++++++++++++ ...um-73.0.3683.75-pipewire-cstring-fix.patch | 11 ++ chromium.spec | 96 ++++++++++----- enable-vaapi.patch | 109 +++--------------- sources | 2 +- 14 files changed, 762 insertions(+), 125 deletions(-) create mode 100644 chromium-73-gcc-0.patch create mode 100644 chromium-73-gcc-1.patch create mode 100644 chromium-73-gcc-2.patch create mode 100644 chromium-73-gcc-3.patch create mode 100644 chromium-73-gcc-4.patch create mode 100644 chromium-73-gcc-5.patch create mode 100644 chromium-73-gcc-6.patch create mode 100644 chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch create mode 100644 chromium-73.0.3683.75-norar.patch create mode 100644 chromium-73.0.3683.75-pipewire-cstring-fix.patch diff --git a/.gitignore b/.gitignore index ab24241..8c7b0a6 100644 --- a/.gitignore +++ b/.gitignore @@ -73,3 +73,4 @@ /chromium-70.0.3538.110-clean.tar.xz /chromium-71.0.3578.98-clean.tar.xz /chromium-72.0.3626.121-clean.tar.xz +/chromium-73.0.3683.75-clean.tar.xz diff --git a/chromium-73-gcc-0.patch b/chromium-73-gcc-0.patch new file mode 100644 index 0000000..5a50700 --- /dev/null +++ b/chromium-73-gcc-0.patch @@ -0,0 +1,108 @@ +From 2c3b57cafbbb38c13a519c9d2fda8b65691d9564 Mon Sep 17 00:00:00 2001 +From: Raphael Kubo da Costa +Date: Thu, 7 Feb 2019 22:55:37 +0000 +Subject: [PATCH] allocator shim: Swap ALIGN_LINKAGE and SHIM_ALWAYS_EXPORT's + positions +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +This fixes the GCC build. GCC seems to be stricter with the position of the +linkage specification, so just swap the terms to prevent an error that looks +like: + +In file included from ../../base/allocator/allocator_shim.cc:333: +../../base/allocator/allocator_shim_override_cpp_symbols.h:39:30: error: expected unqualified-id before string constant + #define ALIGN_LINKAGE extern "C" + ^~~ +../../base/allocator/allocator_shim_override_cpp_symbols.h:99:20: note: in expansion of macro ‘ALIGN_LINKAGE’ + SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void* ALIGN_NEW(std::size_t size, + ^~~~~~~~~~~~~ + +Bug: 819294 +Change-Id: I0aa16ea88cead42e83796a1c86afad8b447ddc50 +Reviewed-on: https://chromium-review.googlesource.com/c/1458256 +Auto-Submit: Raphael Kubo da Costa +Reviewed-by: Thomas Anderson +Reviewed-by: Primiano Tucci +Commit-Queue: Raphael Kubo da Costa +Cr-Commit-Position: refs/heads/master@{#630084} +--- + .../allocator_shim_override_cpp_symbols.h | 20 +++++++++---------- + 1 file changed, 10 insertions(+), 10 deletions(-) + +diff --git a/base/allocator/allocator_shim_override_cpp_symbols.h b/base/allocator/allocator_shim_override_cpp_symbols.h +index 1228f5e33d28..01d25b7f6437 100644 +--- a/base/allocator/allocator_shim_override_cpp_symbols.h ++++ b/base/allocator/allocator_shim_override_cpp_symbols.h +@@ -96,57 +96,57 @@ SHIM_ALWAYS_EXPORT void operator delete[](void* p, size_t) __THROW { + ShimCppDelete(p); + } + +-SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void* ALIGN_NEW(std::size_t size, ++ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void* ALIGN_NEW(std::size_t size, + ALIGN_VAL_T alignment) { + return ShimCppAlignedNew(size, static_cast(alignment)); + } + +-SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void* ALIGN_NEW_NOTHROW( ++ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void* ALIGN_NEW_NOTHROW( + std::size_t size, + ALIGN_VAL_T alignment, + const std::nothrow_t&) __THROW { + return ShimCppAlignedNew(size, static_cast(alignment)); + } + +-SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void ALIGN_DEL(void* p, ALIGN_VAL_T) __THROW { ++ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void ALIGN_DEL(void* p, ALIGN_VAL_T) __THROW { + ShimCppDelete(p); + } + +-SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void ALIGN_DEL_SIZED(void* p, ++ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void ALIGN_DEL_SIZED(void* p, + std::size_t size, + ALIGN_VAL_T) __THROW { + ShimCppDelete(p); + } + +-SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void ++ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void + ALIGN_DEL_NOTHROW(void* p, ALIGN_VAL_T, const std::nothrow_t&) __THROW { + ShimCppDelete(p); + } + +-SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void* ALIGN_NEW_ARR(std::size_t size, ++ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void* ALIGN_NEW_ARR(std::size_t size, + ALIGN_VAL_T alignment) { + return ShimCppAlignedNew(size, static_cast(alignment)); + } + +-SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void* ALIGN_NEW_ARR_NOTHROW( ++ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void* ALIGN_NEW_ARR_NOTHROW( + std::size_t size, + ALIGN_VAL_T alignment, + const std::nothrow_t&) __THROW { + return ShimCppAlignedNew(size, static_cast(alignment)); + } + +-SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void ALIGN_DEL_ARR(void* p, ++ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void ALIGN_DEL_ARR(void* p, + ALIGN_VAL_T) __THROW { + ShimCppDelete(p); + } + +-SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void ALIGN_DEL_ARR_SIZED(void* p, ++ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void ALIGN_DEL_ARR_SIZED(void* p, + std::size_t size, + ALIGN_VAL_T) __THROW { + ShimCppDelete(p); + } + +-SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void ++ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void + ALIGN_DEL_ARR_NOTHROW(void* p, ALIGN_VAL_T, const std::nothrow_t&) __THROW { + ShimCppDelete(p); + } +-- +2.20.1 + diff --git a/chromium-73-gcc-1.patch b/chromium-73-gcc-1.patch new file mode 100644 index 0000000..c3f8e42 --- /dev/null +++ b/chromium-73-gcc-1.patch @@ -0,0 +1,99 @@ +From 130a5ae24a02daba8729ba2216bcaf3dbfacea69 Mon Sep 17 00:00:00 2001 +From: Raphael Kubo da Costa +Date: Fri, 8 Feb 2019 16:58:38 +0000 +Subject: [PATCH] media::learning: Make LabelledExample's move assignment + operator noexcept +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +The GCC build is currently broken with an error like this: + + ../../media/learning/common/labelled_example.cc:20:1: error: function ‘media::learning::LabelledExample::LabelledExample(media::learning::LabelledExample&&)’ defaulted on its redeclaration with an exception-specification that differs from the implicit exception-specification ‘’ + LabelledExample::LabelledExample(LabelledExample&& rhs) noexcept = default; + ^~~~~~~~~~~~~~~ + +With GCC, having that noexcept marker requires all members to be marked with +noexcept themselves, and TargetValue was missing some assignment operators +and noexcept markers. + +clang is fine because we pass -fno-exceptions and it disables the same error +there, while GCC continues to raise it (bug 843143 and its corresponding CL +have a longer discussion on this issue). + +Bug: 819294 +Change-Id: Ide30932fc466ccb52d6883a82777e703dae48798 +Reviewed-on: https://chromium-review.googlesource.com/c/1458210 +Commit-Queue: Frank Liberato +Reviewed-by: Frank Liberato +Auto-Submit: Raphael Kubo da Costa +Cr-Commit-Position: refs/heads/master@{#630355} +--- + media/learning/common/labelled_example.cc | 3 ++- + media/learning/common/labelled_example.h | 2 +- + media/learning/common/value.cc | 6 ++++++ + media/learning/common/value.h | 4 ++++ + 4 files changed, 13 insertions(+), 2 deletions(-) + +diff --git a/media/learning/common/labelled_example.cc b/media/learning/common/labelled_example.cc +index 76d08509298e..43e834f9f3cf 100644 +--- a/media/learning/common/labelled_example.cc ++++ b/media/learning/common/labelled_example.cc +@@ -59,7 +59,8 @@ bool LabelledExample::operator<(const LabelledExample& rhs) const { + LabelledExample& LabelledExample::operator=(const LabelledExample& rhs) = + default; + +-LabelledExample& LabelledExample::operator=(LabelledExample&& rhs) = default; ++LabelledExample& LabelledExample::operator=(LabelledExample&& rhs) noexcept = ++ default; + + TrainingData::TrainingData() = default; + +diff --git a/media/learning/common/labelled_example.h b/media/learning/common/labelled_example.h +index 4f43c54e7a76..365abc3c0ebf 100644 +--- a/media/learning/common/labelled_example.h ++++ b/media/learning/common/labelled_example.h +@@ -40,7 +40,7 @@ struct COMPONENT_EXPORT(LEARNING_COMMON) LabelledExample { + bool operator<(const LabelledExample& rhs) const; + + LabelledExample& operator=(const LabelledExample& rhs); +- LabelledExample& operator=(LabelledExample&& rhs); ++ LabelledExample& operator=(LabelledExample&& rhs) noexcept; + + // Observed feature values. + // Note that to interpret these values, you probably need to have the +diff --git a/media/learning/common/value.cc b/media/learning/common/value.cc +index 9c9395c25d4e..12ea399d24c3 100644 +--- a/media/learning/common/value.cc ++++ b/media/learning/common/value.cc +@@ -23,6 +23,12 @@ Value::Value(const std::string& x) : value_(base::PersistentHash(x)) {} + + Value::Value(const Value& other) : value_(other.value_) {} + ++Value::Value(Value&& rhs) noexcept = default; ++ ++Value& Value::operator=(const Value& rhs) = default; ++ ++Value& Value::operator=(Value&& rhs) noexcept = default; ++ + bool Value::operator==(const Value& rhs) const { + return value_ == rhs.value_; + } +diff --git a/media/learning/common/value.h b/media/learning/common/value.h +index 0e64da961f34..62f4953f691c 100644 +--- a/media/learning/common/value.h ++++ b/media/learning/common/value.h +@@ -38,6 +38,10 @@ class COMPONENT_EXPORT(LEARNING_COMMON) Value { + explicit Value(const std::string& x); + + Value(const Value& other); ++ Value(Value&&) noexcept; ++ ++ Value& operator=(const Value&); ++ Value& operator=(Value&&) noexcept; + + bool operator==(const Value& rhs) const; + bool operator!=(const Value& rhs) const; +-- +2.20.1 + diff --git a/chromium-73-gcc-2.patch b/chromium-73-gcc-2.patch new file mode 100644 index 0000000..9d1f05a --- /dev/null +++ b/chromium-73-gcc-2.patch @@ -0,0 +1,51 @@ +From a5ba6f9bb7665040045dc0f8087407096630ad7b Mon Sep 17 00:00:00 2001 +From: Raphael Kubo da Costa +Date: Fri, 8 Feb 2019 02:57:28 +0000 +Subject: [PATCH] color_utils: Use std::sqrt() instead of std::sqrtf() +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +This fixes the build with libstdc++: + + ../../ui/gfx/color_utils.cc: In function ‘SkColor color_utils::SetDarkestColorForTesting(SkColor)’: + ../../ui/gfx/color_utils.cc:434:12: error: ‘sqrtf’ is not a member of ‘std’ + std::sqrtf((dark_luminance + 0.05f) * (kWhiteLuminance + 0.05f)) - 0.05f; + ^~~~~ + ../../ui/gfx/color_utils.cc:434:12: note: suggested alternative: ‘sqrt’ + std::sqrtf((dark_luminance + 0.05f) * (kWhiteLuminance + 0.05f)) - 0.05f; + ^~~~~ + sqrt + +sqrtf() is not formally part of C++14 as far as I can see even though libc++ +has it in . Additionally, we're only dealing with floats in all parts +of the expression above, so using the float sqrt() overload should be +harmless anyway. + +Bug: 819294 +Change-Id: If6c7bf31819df97a761e6963def6d6506154c34d +Reviewed-on: https://chromium-review.googlesource.com/c/1458193 +Auto-Submit: Raphael Kubo da Costa +Reviewed-by: Peter Kasting +Commit-Queue: Raphael Kubo da Costa +Cr-Commit-Position: refs/heads/master@{#630140} +--- + ui/gfx/color_utils.cc | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/ui/gfx/color_utils.cc b/ui/gfx/color_utils.cc +index c868cd54bac3..92ba1407d594 100644 +--- a/ui/gfx/color_utils.cc ++++ b/ui/gfx/color_utils.cc +@@ -431,7 +431,7 @@ SkColor SetDarkestColorForTesting(SkColor color) { + // GetContrastRatio(kWhiteLuminance, g_luminance_midpoint). The formula below + // can be verified by plugging it into how GetContrastRatio() operates. + g_luminance_midpoint = +- std::sqrtf((dark_luminance + 0.05f) * (kWhiteLuminance + 0.05f)) - 0.05f; ++ std::sqrt((dark_luminance + 0.05f) * (kWhiteLuminance + 0.05f)) - 0.05f; + + return previous_darkest_color; + } +-- +2.20.1 + diff --git a/chromium-73-gcc-3.patch b/chromium-73-gcc-3.patch new file mode 100644 index 0000000..9cc6cf2 --- /dev/null +++ b/chromium-73-gcc-3.patch @@ -0,0 +1,69 @@ +From c33e832cc145c696d2157796c7640e659740dafa Mon Sep 17 00:00:00 2001 +From: Raphael Kubo da Costa +Date: Fri, 8 Feb 2019 08:44:00 +0000 +Subject: [PATCH] quic_flags_impl: Fix GCC build after #618558 +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Due to https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84849, having +base::NoDestructor> and passing an initializer list of Us does not +work if this is not done explicitly, as GCC incorrectly fails to determine +which constructor overload to use: + + ../../net/third_party/quic/platform/impl/quic_flags_impl.cc: In member function ‘bool quic::TypedQuicFlagHelper::SetFlag(const string&) const [with T = bool; std::__cxx11::string = std::__cxx11::basic_string]’: + ../../net/third_party/quic/platform/impl/quic_flags_impl.cc:156:41: error: call of overloaded ‘NoDestructor()’ is ambiguous + {"", "1", "t", "true", "y", "yes"}); + ^ + In file included from ../../net/third_party/quic/platform/impl/quic_flags_impl.h:16, + from ../../net/third_party/quic/platform/impl/quic_flags_impl.cc:5: + ../../base/no_destructor.h:62:3: note: candidate: ‘base::NoDestructor::NoDestructor(const base::NoDestructor&) [with T = std::set >]’ + NoDestructor(const NoDestructor&) = delete; + ^~~~~~~~~~~~ + ../../base/no_destructor.h:60:12: note: candidate: ‘base::NoDestructor::NoDestructor(T&&) [with T = std::set >]’ + explicit NoDestructor(T&& x) { new (storage_) T(std::move(x)); } + ^~~~~~~~~~~~ + ../../base/no_destructor.h:59:12: note: candidate: ‘base::NoDestructor::NoDestructor(const T&) [with T = std::set >]’ + explicit NoDestructor(const T& x) { new (storage_) T(x); } + ^~~~~~~~~~~~ + +Explicitly use an std::initializer_list to make the build work everywhere. + +Bug: 819294 +Change-Id: I775be20e3766a88a656b58c94c40869cb1bee2a8 +Reviewed-on: https://chromium-review.googlesource.com/c/1458214 +Auto-Submit: Raphael Kubo da Costa +Reviewed-by: Ryan Hamilton +Commit-Queue: Raphael Kubo da Costa +Cr-Commit-Position: refs/heads/master@{#630249} +--- + net/third_party/quic/platform/impl/quic_flags_impl.cc | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +diff --git a/net/third_party/quic/platform/impl/quic_flags_impl.cc b/net/third_party/quic/platform/impl/quic_flags_impl.cc +index 5e6962d1e770..3fa45fc6892d 100644 +--- a/net/third_party/quic/platform/impl/quic_flags_impl.cc ++++ b/net/third_party/quic/platform/impl/quic_flags_impl.cc +@@ -5,6 +5,7 @@ + #include "net/third_party/quic/platform/impl/quic_flags_impl.h" + + #include ++#include + #include + #include + +@@ -153,9 +154,9 @@ std::string QuicFlagRegistry::GetHelp() const { + template <> + bool TypedQuicFlagHelper::SetFlag(const std::string& s) const { + static const base::NoDestructor> kTrueValues( +- {"", "1", "t", "true", "y", "yes"}); ++ std::initializer_list({"", "1", "t", "true", "y", "yes"})); + static const base::NoDestructor> kFalseValues( +- {"0", "f", "false", "n", "no"}); ++ std::initializer_list({"0", "f", "false", "n", "no"})); + if (kTrueValues->find(base::ToLowerASCII(s)) != kTrueValues->end()) { + *flag_ = true; + return true; +-- +2.20.1 + diff --git a/chromium-73-gcc-4.patch b/chromium-73-gcc-4.patch new file mode 100644 index 0000000..df7d630 --- /dev/null +++ b/chromium-73-gcc-4.patch @@ -0,0 +1,59 @@ +From bdd76190e54e6a0e11343dd19e4bf1d06956fa48 Mon Sep 17 00:00:00 2001 +From: Raphael Kubo da Costa +Date: Wed, 13 Feb 2019 01:02:27 +0000 +Subject: [PATCH] BaseRenderingContext2D: Use base::CheckMul and simplify code + in putImageData() +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Follow-up to commit e0b3253a56 ("Fix image conversion truncation issues"). +The current code does not build with GCC due to +https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89287: + + ../../third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc: In member function ‘void blink::BaseRenderingContext2D::putImageData(blink::ImageData*, int, int, int, int, int, int, blink::ExceptionState&)’: + ../../third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc:1777:44: error: default type conversion can't deduce template argument for ‘template::value, void>::type* > constexpr base::internal::StrictNumeric::operator Dst() const [with Dst = Dst; typename std::enable_if::value>::type* = ; T = long unsigned int]’ + new uint8_t[data_length.ValueOrDie()]); + ^ + +Work around it by using the more idiomatic base::CheckMul() with +AssignIfValid, so that we can have |data_length| be a size_t again and not +leave it to the compiler to figure out the type we want when creating the +|converted_pixels| array. + +Bug: 819294 +Change-Id: Id124cc4f3d749b45def4708e21e4badafd708578 +Reviewed-on: https://chromium-review.googlesource.com/c/1467201 +Auto-Submit: Raphael Kubo da Costa +Commit-Queue: Kentaro Hara +Reviewed-by: Kentaro Hara +Cr-Commit-Position: refs/heads/master@{#631472} +--- + .../canvas/canvas2d/base_rendering_context_2d.cc | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +diff --git a/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc b/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc +index d9fa696c9a9d..34a8a202bfd3 100644 +--- a/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc ++++ b/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc +@@ -1769,12 +1769,12 @@ void BaseRenderingContext2D::putImageData(ImageData* data, + CanvasColorParams(ColorParams().ColorSpace(), PixelFormat(), kNonOpaque); + if (data_color_params.NeedsColorConversion(context_color_params) || + PixelFormat() == kF16CanvasPixelFormat) { +- base::CheckedNumeric data_length = data->Size().Area(); +- data_length *= context_color_params.BytesPerPixel(); +- if (!data_length.IsValid()) ++ size_t data_length; ++ if (!base::CheckMul(data->Size().Area(), ++ context_color_params.BytesPerPixel()) ++ .AssignIfValid(&data_length)) + return; +- std::unique_ptr converted_pixels( +- new uint8_t[data_length.ValueOrDie()]); ++ std::unique_ptr converted_pixels(new uint8_t[data_length]); + if (data->ImageDataInCanvasColorSettings( + ColorParams().ColorSpace(), PixelFormat(), converted_pixels.get(), + kRGBAColorType)) { +-- +2.20.1 + diff --git a/chromium-73-gcc-5.patch b/chromium-73-gcc-5.patch new file mode 100644 index 0000000..033861e --- /dev/null +++ b/chromium-73-gcc-5.patch @@ -0,0 +1,65 @@ +From 78b0f0dfa9e6f3c37b71102c01def92f1ab8c330 Mon Sep 17 00:00:00 2001 +From: Raphael Kubo da Costa +Date: Wed, 13 Feb 2019 23:28:46 +0000 +Subject: [PATCH] CastActivityManager: Do not make DoLaunchSessionParams' move + constructor noexcept +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +This fixes the GCC build: + + ../../chrome/browser/media/router/providers/cast/cast_activity_manager.cc:806:1: error: function ‘media_router::CastActivityManager::DoLaunchSessionParams::DoLaunchSessionParams(media_router::CastActivityManager::DoLaunchSessionParams&&)’ defaulted on its redeclaration with an exception-specification that differs from the implicit exception-specification ‘’ + CastActivityManager::DoLaunchSessionParams::DoLaunchSessionParams( + ^~~~~~~~~~~~~~~~~~~ + +With GCC, having that noexcept marker requires all members to be marked with +noexcept themselves, and MediaRoute, CastMediaSource and url::Origin need +the right annotations. Just making DoLaunchSessionParams not noexcept is the +least intrusive solution for now. + +clang is fine because we pass -fno-exceptions and it disables the same error +there, while GCC continues to raise it (bug 843143 and its corresponding CL +have a longer discussion on this issue). + +Bug: 819294 +Change-Id: Ia3a5fb60b5e74e68bd35cfa50e2fcc728b64e5eb +Reviewed-on: https://chromium-review.googlesource.com/c/1469942 +Commit-Queue: mark a. foltz +Auto-Submit: Raphael Kubo da Costa +Reviewed-by: mark a. foltz +Cr-Commit-Position: refs/heads/master@{#631962} +--- + .../media/router/providers/cast/cast_activity_manager.cc | 2 +- + .../browser/media/router/providers/cast/cast_activity_manager.h | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/chrome/browser/media/router/providers/cast/cast_activity_manager.cc b/chrome/browser/media/router/providers/cast/cast_activity_manager.cc +index b7ee9695f69a..8569e0cd30a3 100644 +--- a/chrome/browser/media/router/providers/cast/cast_activity_manager.cc ++++ b/chrome/browser/media/router/providers/cast/cast_activity_manager.cc +@@ -804,7 +804,7 @@ CastActivityManager::DoLaunchSessionParams::DoLaunchSessionParams( + callback(std::move(callback)) {} + + CastActivityManager::DoLaunchSessionParams::DoLaunchSessionParams( +- DoLaunchSessionParams&& other) noexcept = default; ++ DoLaunchSessionParams&& other) = default; + + CastActivityManager::DoLaunchSessionParams::~DoLaunchSessionParams() = default; + +diff --git a/chrome/browser/media/router/providers/cast/cast_activity_manager.h b/chrome/browser/media/router/providers/cast/cast_activity_manager.h +index 325bffc725ee..08fe0ccca603 100644 +--- a/chrome/browser/media/router/providers/cast/cast_activity_manager.h ++++ b/chrome/browser/media/router/providers/cast/cast_activity_manager.h +@@ -295,7 +295,7 @@ class CastActivityManager : public cast_channel::CastMessageHandler::Observer, + const url::Origin& origin, + int tab_id, + mojom::MediaRouteProvider::CreateRouteCallback callback); +- DoLaunchSessionParams(DoLaunchSessionParams&& other) noexcept; ++ DoLaunchSessionParams(DoLaunchSessionParams&& other); + ~DoLaunchSessionParams(); + DoLaunchSessionParams& operator=(DoLaunchSessionParams&&) = delete; + +-- +2.20.1 + diff --git a/chromium-73-gcc-6.patch b/chromium-73-gcc-6.patch new file mode 100644 index 0000000..752f83c --- /dev/null +++ b/chromium-73-gcc-6.patch @@ -0,0 +1,88 @@ +From cf4c534f04c223f8a9d65407852e2a531a6d7fb6 Mon Sep 17 00:00:00 2001 +From: Raphael Kubo da Costa +Date: Thu, 14 Feb 2019 22:22:21 +0000 +Subject: [PATCH] chrome/browser: Replace some forward declarations with actual + includes +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +This fixes the GCC build which was failing like this: + + ../../base/scoped_observer.h: In instantiation of ‘void ScopedObserver::RemoveAll() [with Source = TabStripModel; Observer = TabStripModelObserver]’: + ../../base/scoped_observer.h:26:5: required from ‘ScopedObserver::~ScopedObserver() [with Source = TabStripModel; Observer = TabStripModelObserver]’ + ../../chrome/browser/ui/views/extensions/extension_popup.h:115:70: required from here + ../../base/scoped_observer.h:45:20: error: invalid use of incomplete type ‘class TabStripModel’ + sources_[i]->RemoveObserver(observer_); + ~~~~~~~~~~~~~^~~~~~~~~~~~~~ + +This is caused by https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89311 ("Brace +initialization needlessly invokes destructor"), i.e. having something like + + ScopedObserver observer_{this}; + +in a header declaration requires T and U to be fully declared because +ScopedObserver's destructor references them. In a few cases, T was only +forward-declared. + +Bug: 819294 +Change-Id: Ie5b9dc2745e27d4532c5539e3845a8c9147a0595 +Reviewed-on: https://chromium-review.googlesource.com/c/1472576 +Auto-Submit: Raphael Kubo da Costa +Commit-Queue: Alan Cutter +Reviewed-by: Finnur Thorarinsson +Reviewed-by: Alan Cutter +Cr-Commit-Position: refs/heads/master@{#632385} +--- + chrome/browser/ui/views/extensions/extension_popup.cc | 1 - + chrome/browser/ui/views/extensions/extension_popup.h | 1 + + chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.cc | 1 - + chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.h | 2 +- + .../web_applications/extensions/bookmark_app_tab_helper.cc | 1 - + .../web_applications/extensions/bookmark_app_tab_helper.h | 2 +- + 6 files changed, 3 insertions(+), 5 deletions(-) + +diff --git a/chrome/browser/ui/views/extensions/extension_popup.cc b/chrome/browser/ui/views/extensions/extension_popup.cc +index 3f0985d383dd..57d16aba9e9f 100644 +--- a/chrome/browser/ui/views/extensions/extension_popup.cc ++++ b/chrome/browser/ui/views/extensions/extension_popup.cc +@@ -8,7 +8,6 @@ + #include "chrome/browser/devtools/devtools_window.h" + #include "chrome/browser/extensions/extension_view_host.h" + #include "chrome/browser/ui/browser.h" +-#include "chrome/browser/ui/tabs/tab_strip_model.h" + #include "content/public/browser/devtools_agent_host.h" + #include "content/public/browser/notification_details.h" + #include "content/public/browser/notification_source.h" +diff --git a/chrome/browser/ui/views/extensions/extension_popup.h b/chrome/browser/ui/views/extensions/extension_popup.h +index 3661b5bda950..9018efa0fea5 100644 +--- a/chrome/browser/ui/views/extensions/extension_popup.h ++++ b/chrome/browser/ui/views/extensions/extension_popup.h +@@ -9,6 +9,7 @@ + #include "base/compiler_specific.h" + #include "base/macros.h" + #include "base/scoped_observer.h" ++#include "chrome/browser/ui/tabs/tab_strip_model.h" + #include "chrome/browser/ui/tabs/tab_strip_model_observer.h" + #include "chrome/browser/ui/views/extensions/extension_view_views.h" + #include "content/public/browser/devtools_agent_host_observer.h" +diff --git a/chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.h b/chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.h +index 2a3ea8e4f91f..ac44a4f05dec 100644 +--- a/chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.h ++++ b/chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.h +@@ -8,6 +8,7 @@ + #include "base/macros.h" + #include "base/memory/weak_ptr.h" + #include "base/scoped_observer.h" ++#include "chrome/browser/ui/toolbar/toolbar_actions_bar.h" + #include "chrome/browser/ui/toolbar/toolbar_actions_bar_observer.h" + #include "chrome/browser/ui/views/toolbar/app_menu_observer.h" + #include "ui/views/controls/scroll_view.h" +@@ -15,7 +16,6 @@ class AppMenu; + class AppMenu; + class Browser; + class BrowserActionsContainer; +-class ToolbarActionsBar; + + namespace views { + class MenuItemView; diff --git a/chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch b/chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch new file mode 100644 index 0000000..f8abb52 --- /dev/null +++ b/chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch @@ -0,0 +1,48 @@ +diff -up chromium-73.0.3683.75/build/toolchain/linux/BUILD.gn.disable-ndnpc chromium-73.0.3683.75/build/toolchain/linux/BUILD.gn +--- chromium-73.0.3683.75/build/toolchain/linux/BUILD.gn.disable-ndnpc 2019-03-13 10:29:00.331009643 -0400 ++++ chromium-73.0.3683.75/build/toolchain/linux/BUILD.gn 2019-03-13 10:29:28.344458746 -0400 +@@ -31,7 +31,7 @@ gcc_toolchain("arm64") { + ld = cxx + readelf = "${toolprefix}readelf" + nm = "${toolprefix}nm" +- extra_cppflags = "-fno-delete-null-pointer-checks" ++ extra_cppflags = "" + + toolchain_args = { + current_cpu = "arm64" +@@ -50,7 +50,7 @@ gcc_toolchain("arm") { + ld = cxx + readelf = "${toolprefix}readelf" + nm = "${toolprefix}nm" +- extra_cppflags = "-fno-delete-null-pointer-checks" ++ extra_cppflags = "" + + toolchain_args = { + current_cpu = "arm" +@@ -101,7 +101,7 @@ gcc_toolchain("x86") { + nm = "nm" + ar = "ar" + ld = cxx +- extra_cppflags = "-fno-delete-null-pointer-checks -g1" ++ extra_cppflags = "-g1" + + # Output linker map files for binary size analysis. + enable_linker_map = true +@@ -155,7 +155,7 @@ gcc_toolchain("x64") { + nm = "nm" + ar = "ar" + ld = cxx +- extra_cppflags = "-fno-delete-null-pointer-checks" ++ extra_cppflags = "" + + # Output linker map files for binary size analysis. + enable_linker_map = true +@@ -190,7 +190,7 @@ gcc_toolchain("mipsel") { + ld = cxx + readelf = "${toolprefix}readelf" + nm = "${toolprefix}nm" +- extra_cppflags = "-fno-delete-null-pointer-checks" ++ extra_cppflags = "" + + toolchain_args = { + cc_wrapper = "" diff --git a/chromium-73.0.3683.75-norar.patch b/chromium-73.0.3683.75-norar.patch new file mode 100644 index 0000000..d61fd9c --- /dev/null +++ b/chromium-73.0.3683.75-norar.patch @@ -0,0 +1,81 @@ +diff -up chromium-73.0.3683.75/chrome/common/safe_browsing/BUILD.gn.nounrar chromium-73.0.3683.75/chrome/common/safe_browsing/BUILD.gn +--- chromium-73.0.3683.75/chrome/common/safe_browsing/BUILD.gn.nounrar 2019-03-13 08:59:45.988801102 -0400 ++++ chromium-73.0.3683.75/chrome/common/safe_browsing/BUILD.gn 2019-03-13 09:00:20.244977448 -0400 +@@ -64,41 +64,6 @@ if (safe_browsing_mode == 1) { + ] + } + +- source_set("rar_analyzer") { +- sources = [ +- "rar_analyzer.cc", +- "rar_analyzer.h", +- ] +- +- deps = [ +- ":archive_analyzer_results", +- ":download_type_util", +- ":file_type_policies", +- "//base", +- "//base:i18n", +- "//components/safe_browsing:features", +- "//third_party/unrar:unrar", +- ] +- +- defines = [ +- "_FILE_OFFSET_BITS=64", +- "LARGEFILE_SOURCE", +- "RAR_SMP", +- "SILENT", +- +- # The following is set to disable certain macro definitions in the unrar +- # source code. +- "CHROMIUM_UNRAR", +- +- # Disables exceptions in unrar, replaces them with process termination. +- "UNRAR_NO_EXCEPTIONS", +- ] +- +- public_deps = [ +- "//components/safe_browsing:csd_proto", +- ] +- } +- + source_set("disk_image_type_sniffer_mac") { + sources = [ + "disk_image_type_sniffer_mac.cc", +@@ -167,7 +132,6 @@ source_set("safe_browsing") { + ":archive_analyzer_results", + ":binary_feature_extractor", + ":download_type_util", +- ":rar_analyzer", + "//components/safe_browsing:features", + ] + +diff -up chromium-73.0.3683.75/chrome/common/safe_browsing/DEPS.nounrar chromium-73.0.3683.75/chrome/common/safe_browsing/DEPS +--- chromium-73.0.3683.75/chrome/common/safe_browsing/DEPS.nounrar 2019-03-11 18:00:54.000000000 -0400 ++++ chromium-73.0.3683.75/chrome/common/safe_browsing/DEPS 2019-03-13 08:59:26.513282690 -0400 +@@ -1,6 +1,5 @@ + include_rules = [ + "+components/safe_browsing", + "+third_party/protobuf", +- "+third_party/unrar", + "+third_party/zlib", + ] +diff -up chromium-73.0.3683.75/chrome/services/file_util/safe_archive_analyzer.cc.nounrar chromium-73.0.3683.75/chrome/services/file_util/safe_archive_analyzer.cc +--- chromium-73.0.3683.75/chrome/services/file_util/safe_archive_analyzer.cc.nounrar 2019-03-13 08:59:26.518282566 -0400 ++++ chromium-73.0.3683.75/chrome/services/file_util/safe_archive_analyzer.cc 2019-03-13 09:01:03.885935483 -0400 +@@ -48,10 +48,14 @@ void SafeArchiveAnalyzer::AnalyzeDmgFile + void SafeArchiveAnalyzer::AnalyzeRarFile(base::File rar_file, + base::File temporary_file, + AnalyzeRarFileCallback callback) { ++#if 0 + DCHECK(rar_file.IsValid()); + + safe_browsing::ArchiveAnalyzerResults results; + safe_browsing::rar_analyzer::AnalyzeRarFile( + std::move(rar_file), std::move(temporary_file), &results); + std::move(callback).Run(results); ++#else ++ NOTREACHED(); ++#endif + } diff --git a/chromium-73.0.3683.75-pipewire-cstring-fix.patch b/chromium-73.0.3683.75-pipewire-cstring-fix.patch new file mode 100644 index 0000000..ce8b70b --- /dev/null +++ b/chromium-73.0.3683.75-pipewire-cstring-fix.patch @@ -0,0 +1,11 @@ +diff -up chromium-73.0.3683.75/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc.cstringfix chromium-73.0.3683.75/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc +--- chromium-73.0.3683.75/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc.cstringfix 2019-03-13 13:04:25.290842447 -0400 ++++ chromium-73.0.3683.75/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc 2019-03-13 13:05:13.234897441 -0400 +@@ -18,6 +18,7 @@ + #include + #include + ++#include + #include + #include + diff --git a/chromium.spec b/chromium.spec index dea5c85..ef49304 100644 --- a/chromium.spec +++ b/chromium.spec @@ -3,7 +3,10 @@ %global _python_bytecompile_extra 1 # This is faster when it works, but it doesn't always. -%global use_jumbo 0 +%global use_jumbo 1 + +# We usually want this. +%global build_headless 1 # NEVER EVER EVER turn this on in official builds %global freeworld 0 @@ -44,9 +47,9 @@ %global __provides_exclude_from %{chromium_path}/.*\\.so|%{chromium_path}/lib/.*\\.so|%{chromium_path}/lib/.*\\.so.* %if 0%{?rhel} == 7 -%global privlibs libaccessibility|libandroid_mojo_bindings_shared|libanimation|libapdu|libaura_extra|libaura|libbase_i18n|libbase|libbindings_base|libbindings|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core_mojo_bindings_shared|libblink_core|libblink_embedded_frame_sink_mojo_bindings_shared|libblink_modules|libblink_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcatalog_lib|libcbor|libcc_animation|libcc_base|libcc_debug|libcc_mojo_embedder|libcc_paint|libcc|libcdm_manager|libchrome_features|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom_shared|libcontent_service_mojom|libcontent|libcrash_key|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevices|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevice_vr_mojo_bindings|libdevice_vr|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libembedder|libembedder_switches|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents|libevents_x|libextras|libffmpeg|libfido|libfingerprint|libfreetype_harfbuzz|libgamepad_mojom_blink|libgamepad_mojom_shared|libgamepad_mojom|libgamepad_shared_typemap_traits|libgcm|libgeometry_skia|libgeometry|libgesture_detection|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_switches|libgfx_x11|libgin|libgles2_implementation|libgles2|libgles2_utils|libGLESv2|libgl_init|libgl_in_process_context|libgl_wrapper|libgpu_ipc_service|libgpu|libgtkui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc_mojom_shared|libipc_mojom|libipc|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libleveldatabase|liblive_tab_count_metrics|libmanager|libmedia_blink|libmedia_devices_mojo_bindings_shared|libmedia_gpu|libmedia_mojo_services|libmedia_session_cpp|libmedia_session_public_mojom_shared|libmedia_session_public_mojom|libmedia|libmedia_webrtc|libmemory_instrumentation|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirroring_service|libmojo_base_lib|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_mojom|libmojo_base_shared_typemap_traits|libmojo_core_embedder_internal|libmojo_core_embedder|libmojo_core_ports|libmojo_cpp_platform|libmojo_ime_lib|libmojom_core_shared|libmojo_mojom_bindings_shared|libmojo_mojom_bindings|libmojom_platform_shared|libmojo_public_system_cpp|libmojo_public_system|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp_base|libnetwork_cpp|libnetwork_service|libnetwork_session_configurator|libonc|libos_crypt|libperfetto|libplatform|libplatform_window_handler_libs|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp_base|libresource_coordinator_cpp_features|libresource_coordinator_cpp|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libresource_coordinator_public_mojom|libsandbox_services|libsandbox|libscheduling_metrics|libseccomp_bpf|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom_blink|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_constants|libservice_manager_mojom_shared|libservice_manager_mojom|libservice|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing_cpp|libtracing_mojom_shared|libtracing_mojom|libtracing|libui_base_ime_linux|libui_base_ime|libui_base_ime_types|libui_base|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libusb_shared|libuser_manager|libuser_prefs|libv8_libbase|libv8_libplatform|libv8|libviews|libviz_common|libviz_resource_format_utils|libVkICD_mock_icd|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_threading|libVkLayer_unique_objects|libvr_common|libvr_ui|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libwebdata_common|libweb_dialogs|libwebgpu|libwebview|libwm_public|libwm|libwtf|libx11_events_platform|libx11_window|libzygote|libfontconfig +%global privlibs libEGL|libGLESv2|libVkICD_mock_icd|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_threading|libVkLayer_unique_objects|libaccessibility|libandroid_mojo_bindings_shared|libanimation|libapdu|libaura|libaura_extra|libbase|libbase_i18n|libbindings|libbindings_base|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core|libblink_core_mojo_bindings_shared|libblink_embedded_frame_sink_mojo_bindings_shared|libblink_modules|libblink_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcatalog_lib|libcbor|libcc|libcc_animation|libcc_base|libcc_debug|libcc_mojo_embedder|libcc_paint|libcdm_manager|libcertificate_matching|libchrome_features|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom|libcontent_service_mojom_shared|libcrash_key|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevice_vr|libdevice_vr_mojo_bindings|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevices|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libembedder|libembedder_switches|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libextras|libfido|libfingerprint|libfreetype_harfbuzz|libgamepad_mojom|libgamepad_mojom_blink|libgamepad_mojom_shared|libgamepad_shared_typemap_traits|libgcm|libgeometry|libgeometry_skia|libgesture_detection|libgfx|libgfx_ipc|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_switches|libgfx_x11|libgin|libgl_in_process_context|libgl_init|libgl_wrapper|libgles2|libgles2_implementation|libgles2_utils|libgpu|libgpu_ipc_service|libgtkui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc|libipc_mojom|libipc_mojom_shared|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|liblearning_common|liblearning_impl|libleveldatabase|liblive_tab_count_metrics|libmanager|libmedia_blink|libmedia_gpu|libmedia_mojo_services|libmedia_session_cpp|libmedia_webrtc|libmemory_instrumentation|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirclient.so.9|libmirclient.so.9.TOC|libmirroring_service|libmojo_base_lib|libmojo_base_mojom|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_shared_typemap_traits|libmojo_core_embedder|libmojo_core_embedder_internal|libmojo_core_ports|libmojo_cpp_platform|libmojo_ime_lib|libmojo_mojom_bindings|libmojo_mojom_bindings_shared|libmojo_public_system|libmojo_public_system_cpp|libmojom_core_shared|libmojom_modules_shared|libmojom_platform_shared|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp|libnetwork_cpp_base|libnetwork_service|libnetwork_session_configurator|libonc|libos_crypt|libperfetto|libplatform|libplatform_window_handler_libs|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp|libresource_coordinator_cpp_base|libresource_coordinator_cpp_features|libresource_coordinator_public_mojom|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libsandbox|libsandbox_services|libscheduling_metrics|libseccomp_bpf|libservice|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom|libservice_manager_mojom_blink|libservice_manager_mojom_constants|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_shared|libservice_manager_mojom_traits|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libspeech_recognition_error_code_mojom|libspeech_recognition_error_code_mojom_blink|libspeech_recognition_error_code_mojom_shared|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libtracing_cpp|libtracing_mojom|libtracing_mojom_shared|libui_accessibility_ax_mojom|libui_accessibility_ax_mojom_blink|libui_accessibility_ax_mojom_shared|libui_base|libui_base_clipboard|libui_base_clipboard_types|libui_base_ime|libui_base_ime_linux|libui_base_ime_types|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl|liburl_ipc|liburl_matcher|libusb_shared|libuser_manager|libuser_prefs|libv8|libv8_libbase|libv8_libplatform|libviews|libviz_common|libviz_resource_format_utils|libviz_vulkan_context_provider|libvr_base|libvr_common|libvr_ui|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libweb_dialogs|libweb_feature_mojo_bindings_mojom|libweb_feature_mojo_bindings_mojom_blink|libweb_feature_mojo_bindings_mojom_shared|libwebdata_common|libwebgpu|libwebview|libwm|libwm_public|libwtf|libx11_events_platform|libx11_window|libzygote|libmedia|libffmpeg|libfontconfig %else -%global privlibs libaccessibility|libandroid_mojo_bindings_shared|libanimation|libapdu|libaura_extra|libaura|libbase_i18n|libbase|libbindings_base|libbindings|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core_mojo_bindings_shared|libblink_core|libblink_embedded_frame_sink_mojo_bindings_shared|libblink_modules|libblink_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcatalog_lib|libcbor|libcc_animation|libcc_base|libcc_debug|libcc_mojo_embedder|libcc_paint|libcc|libcdm_manager|libchrome_features|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom_shared|libcontent_service_mojom|libcontent|libcrash_key|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevices|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevice_vr_mojo_bindings|libdevice_vr|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libembedder|libembedder_switches|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents|libevents_x|libextras|libffmpeg|libfido|libfingerprint|libfreetype_harfbuzz|libgamepad_mojom_blink|libgamepad_mojom_shared|libgamepad_mojom|libgamepad_shared_typemap_traits|libgcm|libgeometry_skia|libgeometry|libgesture_detection|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_switches|libgfx_x11|libgin|libgles2_implementation|libgles2|libgles2_utils|libGLESv2|libgl_init|libgl_in_process_context|libgl_wrapper|libgpu_ipc_service|libgpu|libgtkui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc_mojom_shared|libipc_mojom|libipc|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|libleveldatabase|liblive_tab_count_metrics|libmanager|libmedia_blink|libmedia_devices_mojo_bindings_shared|libmedia_gpu|libmedia_mojo_services|libmedia_session_cpp|libmedia_session_public_mojom_shared|libmedia_session_public_mojom|libmedia|libmedia_webrtc|libmemory_instrumentation|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirroring_service|libmojo_base_lib|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_mojom|libmojo_base_shared_typemap_traits|libmojo_core_embedder_internal|libmojo_core_embedder|libmojo_core_ports|libmojo_cpp_platform|libmojo_ime_lib|libmojom_core_shared|libmojo_mojom_bindings_shared|libmojo_mojom_bindings|libmojom_platform_shared|libmojo_public_system_cpp|libmojo_public_system|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp_base|libnetwork_cpp|libnetwork_service|libnetwork_session_configurator|libonc|libos_crypt|libperfetto|libplatform|libplatform_window_handler_libs|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp_base|libresource_coordinator_cpp_features|libresource_coordinator_cpp|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libresource_coordinator_public_mojom|libsandbox_services|libsandbox|libscheduling_metrics|libseccomp_bpf|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom_blink|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_constants|libservice_manager_mojom_shared|libservice_manager_mojom|libservice|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing_cpp|libtracing_mojom_shared|libtracing_mojom|libtracing|libui_base_ime_linux|libui_base_ime|libui_base_ime_types|libui_base|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl_ipc|liburl_matcher|liburl|libusb_shared|libuser_manager|libuser_prefs|libv8_libbase|libv8_libplatform|libv8|libviews|libviz_common|libviz_resource_format_utils|libVkICD_mock_icd|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_threading|libVkLayer_unique_objects|libvr_common|libvr_ui|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libwebdata_common|libweb_dialogs|libwebgpu|libwebview|libwm_public|libwm|libwtf|libx11_events_platform|libx11_window|libzygote +%global privlibs libEGL|libGLESv2|libVkICD_mock_icd|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_threading|libVkLayer_unique_objects|libaccessibility|libandroid_mojo_bindings_shared|libanimation|libapdu|libaura|libaura_extra|libbase|libbase_i18n|libbindings|libbindings_base|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core|libblink_core_mojo_bindings_shared|libblink_embedded_frame_sink_mojo_bindings_shared|libblink_modules|libblink_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcatalog_lib|libcbor|libcc|libcc_animation|libcc_base|libcc_debug|libcc_mojo_embedder|libcc_paint|libcdm_manager|libcertificate_matching|libchrome_features|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom|libcontent_service_mojom_shared|libcrash_key|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevice_vr|libdevice_vr_mojo_bindings|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevices|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libembedder|libembedder_switches|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libextras|libfido|libfingerprint|libfreetype_harfbuzz|libgamepad_mojom|libgamepad_mojom_blink|libgamepad_mojom_shared|libgamepad_shared_typemap_traits|libgcm|libgeometry|libgeometry_skia|libgesture_detection|libgfx|libgfx_ipc|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_switches|libgfx_x11|libgin|libgl_in_process_context|libgl_init|libgl_wrapper|libgles2|libgles2_implementation|libgles2_utils|libgpu|libgpu_ipc_service|libgtkui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc|libipc_mojom|libipc_mojom_shared|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|liblearning_common|liblearning_impl|libleveldatabase|liblive_tab_count_metrics|libmanager|libmedia_blink|libmedia_gpu|libmedia_mojo_services|libmedia_session_cpp|libmedia_webrtc|libmemory_instrumentation|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirclient.so.9|libmirclient.so.9.TOC|libmirroring_service|libmojo_base_lib|libmojo_base_mojom|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_shared_typemap_traits|libmojo_core_embedder|libmojo_core_embedder_internal|libmojo_core_ports|libmojo_cpp_platform|libmojo_ime_lib|libmojo_mojom_bindings|libmojo_mojom_bindings_shared|libmojo_public_system|libmojo_public_system_cpp|libmojom_core_shared|libmojom_modules_shared|libmojom_platform_shared|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp|libnetwork_cpp_base|libnetwork_service|libnetwork_session_configurator|libonc|libos_crypt|libperfetto|libplatform|libplatform_window_handler_libs|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp|libresource_coordinator_cpp_base|libresource_coordinator_cpp_features|libresource_coordinator_public_mojom|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libsandbox|libsandbox_services|libscheduling_metrics|libseccomp_bpf|libservice|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom|libservice_manager_mojom_blink|libservice_manager_mojom_constants|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_shared|libservice_manager_mojom_traits|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libspeech_recognition_error_code_mojom|libspeech_recognition_error_code_mojom_blink|libspeech_recognition_error_code_mojom_shared|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libtracing_cpp|libtracing_mojom|libtracing_mojom_shared|libui_accessibility_ax_mojom|libui_accessibility_ax_mojom_blink|libui_accessibility_ax_mojom_shared|libui_base|libui_base_clipboard|libui_base_clipboard_types|libui_base_ime|libui_base_ime_linux|libui_base_ime_types|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl|liburl_ipc|liburl_matcher|libusb_shared|libuser_manager|libuser_prefs|libv8|libv8_libbase|libv8_libplatform|libviews|libviz_common|libviz_resource_format_utils|libviz_vulkan_context_provider|libvr_base|libvr_common|libvr_ui|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libweb_dialogs|libweb_feature_mojo_bindings_mojom|libweb_feature_mojo_bindings_mojom_blink|libweb_feature_mojo_bindings_mojom_shared|libwebdata_common|libwebgpu|libwebview|libwm|libwm_public|libwtf|libx11_events_platform|libx11_window|libzygote|libmedia|libffmpeg %endif %global __requires_exclude ^(%{privlibs})\\.so* @@ -121,9 +124,9 @@ BuildRequires: libicu-devel >= 5.4 %global bundlefontconfig 0 %endif -# Needs at least harfbuzz 1.8.6 now. -# 2018-10-24 -%if 0%{?fedora} < 29 +# Needs at least harfbuzz 2.3.0 now. +# 2019-03-13 +%if 0%{?fedora} < 30 %global bundleharfbuzz 1 %else %global bundleharfbuzz 0 @@ -145,14 +148,14 @@ BuildRequires: libicu-devel >= 5.4 %global chromoting_client_id %nil %endif -%global majorversion 72 +%global majorversion 73 %if %{freeworld} Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3626.121 +Version: %{majorversion}.0.3683.75 Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home @@ -252,7 +255,7 @@ Patch88: chromium-66.0.3359.117-missing-files.patch # https://bugs.chromium.org/p/chromium/issues/detail?id=816952 # Patch91: chromium-66.0.3359.117-gcc-vector-copy-constructor-fix.patch # Do not use unrar code, it is non-free -Patch92: chromium-72.0.3626.121-norar.patch +Patch92: chromium-73.0.3683.75-norar.patch # Upstream GCC fixes Patch93: chromium-66.0.3359.117-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch Patch94: chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch @@ -264,7 +267,7 @@ Patch94: chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.pa # GCC8 has changed the alignof operator to return the minimal alignment required by the target ABI # instead of the preferred alignment. This means int64_t is now 4 on i686 (instead of 8). # Use __alignof__ to get the value we expect (and chromium checks for). -Patch98: chromium-69.0.3497.81-gcc8-alignof.patch +# Patch98: chromium-69.0.3497.81-gcc8-alignof.patch # RHEL 7 has a bug in its python2.7 which does not propely handle exec with a tuple # https://bugs.python.org/issue21591 Patch100: chromium-67.0.3396.62-epel7-use-old-python-exec-syntax.patch @@ -290,27 +293,29 @@ Patch112: chromium-69.0.3497.81-build-sanely-please.patch # Patch116: chromium-gcc8-r591015.patch # Disable fontconfig cache magic that breaks remoting Patch117: chromium-70.0.3538.67-disable-fontconfig-cache-magic.patch -# Fix build against harfbuzz2 -Patch118: chromium-70.0.3538.77-harfbuzz2-fix.patch # Fix aarch64 build against latest linux kernel headers Patch119: chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch # Enable VAAPI support on Linux # NOTE: This patch will never land upstream Patch121: enable-vaapi.patch Patch122: chromium-70.0.3538.110-vaapi-i686-fpermissive.patch -# Since the newer versions of VA-API are ABI compatible, relax the version checks for VA-API, by using VA_CHECK_VERSION(). -# This will help in updating the libva to the latest releases,while still supporting the old versions, till the new version of -# libva is merged and picked by the builds. Thus ensuring that hardware accleration is not broken while updating the libva. -# Taken and rebased from https://chromium-review.googlesource.com/c/chromium/src/+/1352519 -# The patch might land somewhere in the future and will be removed. -Patch123: relax-libva-version.patch # Fix compatibility with VA-API library (libva) version 1 Patch124: chromium-71.0.3578.98-vaapi-libva1-compatibility.patch # drop rsp clobber, which breaks gcc9 (thanks to Jeff Law) Patch126: chromium-71.0.3578.98-gcc9-drop-rsp-clobber.patch -# Fix va check code -Patch127: chromium-72.0.3626.121-fix-va-check.patch - +# Thank you Gentoo. +# +Patch128: chromium-73-gcc-0.patch +Patch129: chromium-73-gcc-1.patch +Patch130: chromium-73-gcc-2.patch +Patch131: chromium-73-gcc-3.patch +Patch132: chromium-73-gcc-4.patch +Patch133: chromium-73-gcc-5.patch +Patch134: chromium-73-gcc-6.patch +# Disable -fno-delete-null-pointer-checks +Patch135: chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch +# Add #include to get pipewire code to build +Patch136: chromium-73.0.3683.75-pipewire-cstring-fix.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ @@ -364,6 +369,11 @@ BuildRequires: gnome-keyring-devel %endif BuildRequires: glibc-devel BuildRequires: gperf +%if 0%{?bundleharfbuzz} +#nothing +%else +BuildRequires: harfbuzz-devel >= 2.3.0 +%endif BuildRequires: libatomic BuildRequires: libcap-devel %if 0%{?bundlelibdrm} @@ -387,6 +397,11 @@ BuildRequires: nss-devel >= 3.26 BuildRequires: pciutils-devel BuildRequires: pulseaudio-libs-devel +# For screen sharing on Wayland, currently Fedora only thing - no epel +%if 0%{?fedora} +BuildRequires: pkgconfig(libpipewire-0.2) +%endif + # for /usr/bin/appstream-util BuildRequires: libappstream-glib @@ -614,7 +629,7 @@ Provides: bundled(freetype) = 2.9.3 %endif Provides: bundled(gperftools) = svn144 %if 0%{?bundleharfbuzz} -Provides: bundled(harfbuzz) = 1.8.6 +Provides: bundled(harfbuzz) = 2.3.0 %endif Provides: bundled(hunspell) = 1.6.0 Provides: bundled(iccjpeg) @@ -837,7 +852,7 @@ udev. # %%patch95 -p1 -b .gcc-getstring # %%patch96 -p1 -b .flatsetfix # %%patch97 -p1 -b .arm-init-fix -%patch98 -p1 -b .gcc8-alignof +# %%patch98 -p1 -b .gcc8-alignof %if 0%{?rhel} == 7 # %%patch100 -p1 -b .oldexec %endif @@ -853,18 +868,22 @@ udev. # %%patch115 -p1 -b .r589614 # %%patch116 -p1 -b .r591015 %patch117 -p1 -b .nofc -%if 0%{?fedora} >= 30 -%patch118 -p1 -b .harfbuzz2 -%endif %patch119 -p1 -b .aarch64-new-stat %patch121 -p1 -b .vaapi %ifarch i686 %patch122 -p1 -b .i686permissive %endif -%patch123 -p1 -b .relaxva %patch124 -p1 -b .va1compat %patch126 -p1 -b .gcc9 -%patch127 -p1 -b .fixvacheck +%patch128 -p1 -b .gentoogcc0 +%patch129 -p1 -b .gentoogcc1 +%patch130 -p1 -b .gentoogcc2 +%patch131 -p1 -b .gentoogcc3 +%patch132 -p1 -b .gentoogcc4 +%patch133 -p1 -b .gentoogcc5 +%patch134 -p1 -b .gentoogcc6 +%patch135 -p1 -b .disable-ndnpc +%patch136 -p1 -b .cstring-fix # Change shebang in all relevant files in this directory and all subdirectories # See `man find` for how the `-exec command {} +` syntax works @@ -1059,7 +1078,9 @@ CHROMIUM_BROWSER_GN_DEFINES+=' remove_webcore_debug_symbols=true enable_hangout_ CHROMIUM_BROWSER_GN_DEFINES+=' use_aura=true' CHROMIUM_BROWSER_GN_DEFINES+=' enable_widevine=true' CHROMIUM_BROWSER_GN_DEFINES+=' use_vaapi=true' -# CHROMIUM_BROWSER_GN_DEFINES+=' enable_webrtc=true' +%if 0%{?fedora} +CHROMIUM_BROWSER_GN_DEFINES+=' rtc_use_pipewire=true rtc_link_pipewire=true' +%endif export CHROMIUM_BROWSER_GN_DEFINES CHROMIUM_HEADLESS_GN_DEFINES="" @@ -1090,11 +1111,9 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'buildtools/third_party/libc++abi' \ 'chrome/third_party/mozilla_security_manager' \ 'courgette/third_party' \ - 'net/third_party/http2' \ 'net/third_party/mozilla_security_manager' \ 'net/third_party/nss' \ 'net/third_party/quic' \ - 'net/third_party/spdy' \ 'net/third_party/uri_template' \ 'third_party/abseil-cpp' \ 'third_party/adobe' \ @@ -1235,6 +1254,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/simplejson' \ 'third_party/sinonjs' \ 'third_party/skia' \ + 'third_party/skia/include/third_party/vulkan' \ 'third_party/skia/third_party/gif' \ 'third_party/skia/third_party/skcms' \ 'third_party/skia/third_party/vulkan' \ @@ -1271,6 +1291,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/zlib/google' \ 'tools/gn/base/third_party/icu' \ 'url/third_party/mozilla' \ + 'v8/src/third_party/siphash' \ 'v8/src/third_party/utf8-decoder' \ 'v8/src/third_party/valgrind' \ 'v8/third_party/v8' \ @@ -1370,8 +1391,10 @@ tools/gn/bootstrap/bootstrap.py -v "$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_ %if %{freeworld} # do not need to do headless gen %else +%if %{build_headless} %{target}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_HEADLESS_GN_DEFINES" %{headlesstarget} %endif +%endif %{target}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{remotingtarget} @@ -1397,8 +1420,10 @@ sed -i.orig -e 's/getenv("CHROME_VERSION_EXTRA")/"Fedora Project"/' $FILE %if 0%{freeworld} ../depot_tools/ninja -C %{target} -vvv media %else +%if %{build_headless} # Do headless first. ../depot_tools/ninja -C %{headlesstarget} -vvv headless_shell +%endif ../depot_tools/ninja -C %{target} -vvv chrome chrome_sandbox chromedriver clear_key_cdm policy_templates @@ -1546,9 +1571,11 @@ cp -a remoting_client_plugin_newlib.* %{buildroot}%{chromium_path} %endif %endif +%if %{build_headless} pushd %{headlesstarget} cp -a headless_lib.pak headless_shell %{buildroot}%{chromium_path} popd +%endif cp -a remoting/host/linux/linux_me2me_host.py %{buildroot}%{crd_path}/chrome-remote-desktop cp -a remoting/host/installer/linux/is-remoting-session %{buildroot}%{crd_path}/ @@ -1706,7 +1733,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{_datadir}/gnome-control-center/default-apps/chromium-browser.xml %files common +%if %{build_headless} %{chromium_path}/headless_lib.pak +%endif # %%{chromium_path}/mus_app_resources_*.pak %{chromium_path}/pyproto/ %{chromium_path}/resources/ @@ -1765,8 +1794,10 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %lang(zh_CN) %{chromium_path}/locales/zh-CN.pak* %lang(zh_TW) %{chromium_path}/locales/zh-TW.pak* +%if %{build_headless} %files headless %{chromium_path}/headless_shell +%endif %if 0%{?shared} %files libs @@ -1821,6 +1852,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Tue Mar 12 2019 Tom Callaway - 73.0.3683.75-1 +- update to 73.0.3683.75 + * Sat Mar 9 2019 Tom Callaway - 72.0.3626.121-1 - update to 72.0.3626.121 diff --git a/enable-vaapi.patch b/enable-vaapi.patch index 6e09024..08c1f94 100644 --- a/enable-vaapi.patch +++ b/enable-vaapi.patch @@ -1,22 +1,7 @@ -From abc7295ca1653c85472916909f0eb76e28e79a58 Mon Sep 17 00:00:00 2001 -From: Akarshan Biswas -Date: Thu, 24 Jan 2019 12:45:29 +0530 -Subject: [PATCH] Enable mojo with VDA2 on Linux - ---- - chrome/browser/about_flags.cc | 8 ++++---- - chrome/browser/flag_descriptions.cc | 9 +++++++-- - chrome/browser/flag_descriptions.h | 10 ++++++++-- - gpu/config/software_rendering_list.json | 3 ++- - media/media_options.gni | 9 ++++++--- - media/mojo/services/gpu_mojo_media_client.cc | 4 ++-- - 6 files changed, 29 insertions(+), 14 deletions(-) - -diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc -index 0a84c6ac1..be2aa1d8b 100644 ---- a/chrome/browser/about_flags.cc -+++ b/chrome/browser/about_flags.cc -@@ -1714,7 +1714,7 @@ const FeatureEntry kFeatureEntries[] = { +diff -up chromium-73.0.3683.75/chrome/browser/about_flags.cc.vaapi chromium-73.0.3683.75/chrome/browser/about_flags.cc +--- chromium-73.0.3683.75/chrome/browser/about_flags.cc.vaapi 2019-03-11 18:00:53.000000000 -0400 ++++ chromium-73.0.3683.75/chrome/browser/about_flags.cc 2019-03-13 09:04:44.186716761 -0400 +@@ -1606,7 +1606,7 @@ const FeatureEntry kFeatureEntries[] = { "disable-accelerated-video-decode", flag_descriptions::kAcceleratedVideoDecodeName, flag_descriptions::kAcceleratedVideoDecodeDescription, @@ -25,7 +10,7 @@ index 0a84c6ac1..be2aa1d8b 100644 SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedVideoDecode), }, #if defined(OS_WIN) -@@ -2345,12 +2345,12 @@ const FeatureEntry kFeatureEntries[] = { +@@ -2216,12 +2216,12 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE(service_manager::features::kXRSandbox)}, #endif // ENABLE_ISOLATED_XR_SERVICE #endif // ENABLE_VR @@ -41,11 +26,10 @@ index 0a84c6ac1..be2aa1d8b 100644 {"v8-cache-options", flag_descriptions::kV8CacheOptionsName, flag_descriptions::kV8CacheOptionsDescription, kOsAll, MULTI_VALUE_TYPE(kV8CacheOptionsChoices)}, -diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc -index 62637e092..86f89fc6e 100644 ---- a/chrome/browser/flag_descriptions.cc -+++ b/chrome/browser/flag_descriptions.cc -@@ -3085,15 +3085,20 @@ const char kTextSuggestionsTouchBarDescription[] = +diff -up chromium-73.0.3683.75/chrome/browser/flag_descriptions.cc.vaapi chromium-73.0.3683.75/chrome/browser/flag_descriptions.cc +--- chromium-73.0.3683.75/chrome/browser/flag_descriptions.cc.vaapi 2019-03-11 18:00:53.000000000 -0400 ++++ chromium-73.0.3683.75/chrome/browser/flag_descriptions.cc 2019-03-13 09:04:44.188716714 -0400 +@@ -3096,15 +3096,20 @@ const char kTextSuggestionsTouchBarDescr #endif @@ -68,11 +52,10 @@ index 62637e092..86f89fc6e 100644 const char kAllowTouchpadThreeFingerClickName[] = "Touchpad three-finger-click"; const char kAllowTouchpadThreeFingerClickDescription[] = -diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h -index 5dac660bb..6cc4115da 100644 ---- a/chrome/browser/flag_descriptions.h -+++ b/chrome/browser/flag_descriptions.h -@@ -1846,13 +1846,19 @@ extern const char kPermissionPromptPersistenceToggleDescription[]; +diff -up chromium-73.0.3683.75/chrome/browser/flag_descriptions.h.vaapi chromium-73.0.3683.75/chrome/browser/flag_descriptions.h +--- chromium-73.0.3683.75/chrome/browser/flag_descriptions.h.vaapi 2019-03-11 18:00:53.000000000 -0400 ++++ chromium-73.0.3683.75/chrome/browser/flag_descriptions.h 2019-03-13 09:04:44.190716667 -0400 +@@ -1842,13 +1842,19 @@ extern const char kPermissionPromptPersi #endif // defined(OS_MACOSX) @@ -94,10 +77,9 @@ index 5dac660bb..6cc4115da 100644 extern const char kAllowTouchpadThreeFingerClickName[]; extern const char kAllowTouchpadThreeFingerClickDescription[]; -diff --git a/gpu/config/software_rendering_list.json b/gpu/config/software_rendering_list.json -index 65f37b3f1..ae8a1718f 100644 ---- a/gpu/config/software_rendering_list.json -+++ b/gpu/config/software_rendering_list.json +diff -up chromium-73.0.3683.75/gpu/config/software_rendering_list.json.vaapi chromium-73.0.3683.75/gpu/config/software_rendering_list.json +--- chromium-73.0.3683.75/gpu/config/software_rendering_list.json.vaapi 2019-03-11 18:00:59.000000000 -0400 ++++ chromium-73.0.3683.75/gpu/config/software_rendering_list.json 2019-03-13 09:04:44.196716525 -0400 @@ -371,11 +371,12 @@ }, { @@ -112,62 +94,3 @@ index 65f37b3f1..ae8a1718f 100644 "features": [ "accelerated_video_decode" ] -diff --git a/media/media_options.gni b/media/media_options.gni -index 46eaa5818..6e338f651 100644 ---- a/media/media_options.gni -+++ b/media/media_options.gni -@@ -5,6 +5,7 @@ - import("//build/config/chrome_build.gni") - import("//build/config/chromecast_build.gni") - import("//build/config/features.gni") -+import("//media/gpu/args.gni") - import("//testing/libfuzzer/fuzzer_test.gni") - - # Do not expand this list without double-checking with OWNERS, this is a list of -@@ -129,8 +130,9 @@ declare_args() { - # |mojo_media_services|). When enabled, selected mojo paths will be enabled in - # the media pipeline and corresponding services will hosted in the selected - # remote process (e.g. "utility" process, see |mojo_media_host|). -- enable_mojo_media = is_android || is_chromecast || is_chromeos || is_mac || -- is_win || enable_library_cdms -+ enable_mojo_media = -+ is_android || is_chromecast || is_chromeos || is_mac || is_win || -+ enable_library_cdms || (is_desktop_linux && use_vaapi) - - # Enable the TestMojoMediaClient to be used in mojo MediaService. This is for - # testing only and will override the default platform MojoMediaClient, if any. -@@ -200,7 +202,8 @@ if (enable_mojo_media) { - ] - _default_mojo_media_host = "gpu" - } -- } else if (is_chromeos || is_mac || is_win) { -+ } else if (is_chromeos || is_mac || is_win || -+ (is_desktop_linux && use_vaapi)) { - _default_mojo_media_services = [ "video_decoder" ] - _default_mojo_media_host = "gpu" - } -diff --git a/media/mojo/services/gpu_mojo_media_client.cc b/media/mojo/services/gpu_mojo_media_client.cc -index 75f5e611c..09a8fef92 100644 ---- a/media/mojo/services/gpu_mojo_media_client.cc -+++ b/media/mojo/services/gpu_mojo_media_client.cc -@@ -54,7 +54,7 @@ namespace media { - namespace { - - #if defined(OS_ANDROID) || defined(OS_CHROMEOS) || defined(OS_MACOSX) || \ -- defined(OS_WIN) -+ defined(OS_WIN) || defined(OS_LINUX) - gpu::CommandBufferStub* GetCommandBufferStub( - base::WeakPtr media_gpu_channel_manager, - base::UnguessableToken channel_token, -@@ -148,7 +148,7 @@ std::unique_ptr GpuMojoMediaClient::CreateVideoDecoder( - android_overlay_factory_cb_, std::move(request_overlay_info_cb), - std::make_unique(gpu_task_runner_, - std::move(get_stub_cb))); --#elif defined(OS_CHROMEOS) || defined(OS_MACOSX) || defined(OS_WIN) -+#elif defined(OS_CHROMEOS) || defined(OS_MACOSX) || defined(OS_WIN) || defined(OS_LINUX) - std::unique_ptr vda_video_decoder = VdaVideoDecoder::Create( - task_runner, gpu_task_runner_, media_log->Clone(), target_color_space, - gpu_preferences_, gpu_workarounds_, --- -2.20.1 - diff --git a/sources b/sources index 97d6c4c..65231ba 100644 --- a/sources +++ b/sources @@ -16,4 +16,4 @@ SHA512 (Tinos-Bold.ttf) = 54aeca804c06a4d5c57ade596e73df91a6a1c4401c4aadba55d987 SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0e22a16414278217f37497b904a18540273c0e2d79d4f1faabde3b0eb5446283b318c73bafb38 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd -SHA512 (chromium-72.0.3626.121-clean.tar.xz) = 28f4ebee0139fdad94529a57da86f817175e86cdc72bfa6c727ac75b134c56b8729a59cce7c12294b8c7dfe64edaf193ae6d246746b4c04dc353aca7d7e95c89 +SHA512 (chromium-73.0.3683.75-clean.tar.xz) = f240e8d58f8093db409e4a90a6c2c8dbbef3e5c0ba1d9acd8fd907be4e34042c76329881a4880bf52cc91b8e4949704d041279f91d76fd614c7d2d7020436fe6 From a73d7769d7cf1253e4b67ada82996241719df4f4 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 15 Mar 2019 09:23:08 +0100 Subject: [PATCH 0275/1449] Add java to build requires FAILED: gen/mojo/public/js/mojo_bindings_lite.js /bin/sh: java: command not found --- chromium.spec | 2 ++ 1 file changed, 2 insertions(+) diff --git a/chromium.spec b/chromium.spec index ef49304..07b53f4 100644 --- a/chromium.spec +++ b/chromium.spec @@ -557,6 +557,8 @@ BuildRequires: google-noto-sans-khmer-fonts %endif # using the built from source version on aarch64 BuildRequires: ninja-build +# Yes, java is needed as well.. +BuildRequires: java-1.8.0-openjdk-headless %if 0%{?rhel} == 7 BuildRequires: devtoolset-7-toolchain, devtoolset-7-libatomic-devel From 70ab9e45ec5dd8c009770705c8aabc15e91ae2ab Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 15 Mar 2019 10:28:54 +0100 Subject: [PATCH 0276/1449] Rebase the vaapi i686 -fpermissive patch --- ...70.0.3538.110-vaapi-i686-fpermissive.patch | 24 ------------------- ...-73.0.3683.75-vaapi-i686-fpermissive.patch | 23 ++++++++++++++++++ chromium.spec | 2 +- 3 files changed, 24 insertions(+), 25 deletions(-) delete mode 100644 chromium-70.0.3538.110-vaapi-i686-fpermissive.patch create mode 100644 chromium-73.0.3683.75-vaapi-i686-fpermissive.patch diff --git a/chromium-70.0.3538.110-vaapi-i686-fpermissive.patch b/chromium-70.0.3538.110-vaapi-i686-fpermissive.patch deleted file mode 100644 index 9678488..0000000 --- a/chromium-70.0.3538.110-vaapi-i686-fpermissive.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff -up chromium-70.0.3538.110/media/gpu/vaapi/BUILD.gn.i686permissive chromium-70.0.3538.110/media/gpu/vaapi/BUILD.gn ---- chromium-70.0.3538.110/media/gpu/vaapi/BUILD.gn.i686permissive 2018-11-29 09:27:02.405909871 -0500 -+++ chromium-70.0.3538.110/media/gpu/vaapi/BUILD.gn 2018-11-29 09:29:50.648259696 -0500 -@@ -10,6 +10,11 @@ import("//ui/ozone/ozone.gni") - - assert(use_vaapi) - -+config("vaapi_permissive") { -+ cflags = [ "-fpermissive" ] -+} -+ -+ - action("libva_generate_stubs") { - extra_header = "va_stub_header.fragment" - -@@ -98,6 +103,8 @@ source_set("vaapi") { - "//third_party/libyuv", - ] - -+ configs += [ ":vaapi_permissive" ] -+ - if (use_x11) { - configs += [ "//build/config/linux:x11" ] - deps += [ "//ui/gfx/x" ] diff --git a/chromium-73.0.3683.75-vaapi-i686-fpermissive.patch b/chromium-73.0.3683.75-vaapi-i686-fpermissive.patch new file mode 100644 index 0000000..aeee818 --- /dev/null +++ b/chromium-73.0.3683.75-vaapi-i686-fpermissive.patch @@ -0,0 +1,23 @@ +diff -up chromium-73.0.3683.75/media/gpu/vaapi/BUILD.gn.i686permissive chromium-73.0.3683.75/media/gpu/vaapi/BUILD.gn +--- chromium-73.0.3683.75/media/gpu/vaapi/BUILD.gn.i686permissive 2019-03-15 10:10:18.689287815 +0100 ++++ chromium-73.0.3683.75/media/gpu/vaapi/BUILD.gn 2019-03-15 10:11:56.943294101 +0100 +@@ -11,6 +11,10 @@ import("//ui/ozone/ozone.gni") + + assert(use_vaapi) + ++config("vaapi_permissive") { ++ cflags = [ "-fpermissive" ] ++} ++ + generate_stubs("libva_stubs") { + extra_header = "va_stub_header.fragment" + sigs = [ "va.sigs" ] +@@ -79,6 +83,8 @@ source_set("vaapi") { + configs += [ "//build/config/linux/libva" ] + } + ++ configs += [ ":vaapi_permissive" ] ++ + if (use_x11) { + configs += [ "//build/config/linux:x11" ] + deps += [ "//ui/gfx/x" ] diff --git a/chromium.spec b/chromium.spec index 07b53f4..882d816 100644 --- a/chromium.spec +++ b/chromium.spec @@ -298,7 +298,7 @@ Patch119: chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch # Enable VAAPI support on Linux # NOTE: This patch will never land upstream Patch121: enable-vaapi.patch -Patch122: chromium-70.0.3538.110-vaapi-i686-fpermissive.patch +Patch122: chromium-73.0.3683.75-vaapi-i686-fpermissive.patch # Fix compatibility with VA-API library (libva) version 1 Patch124: chromium-71.0.3578.98-vaapi-libva1-compatibility.patch # drop rsp clobber, which breaks gcc9 (thanks to Jeff Law) From d805cb942359fb09d3f6974df5cab972a1bda785 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 15 Mar 2019 09:06:15 -0400 Subject: [PATCH 0277/1449] swiftshader for aarch64? ok. --- chromium-73.0.3683.75-no-header-hygiene.patch | 17 +++++++++++++++++ chromium.spec | 8 ++++++-- 2 files changed, 23 insertions(+), 2 deletions(-) create mode 100644 chromium-73.0.3683.75-no-header-hygiene.patch diff --git a/chromium-73.0.3683.75-no-header-hygiene.patch b/chromium-73.0.3683.75-no-header-hygiene.patch new file mode 100644 index 0000000..a8d2a19 --- /dev/null +++ b/chromium-73.0.3683.75-no-header-hygiene.patch @@ -0,0 +1,17 @@ +diff -up chromium-73.0.3683.75/third_party/swiftshader/third_party/llvm-7.0/BUILD.gn.nohh chromium-73.0.3683.75/third_party/swiftshader/third_party/llvm-7.0/BUILD.gn +--- chromium-73.0.3683.75/third_party/swiftshader/third_party/llvm-7.0/BUILD.gn.nohh 2019-03-15 09:02:26.167929864 -0400 ++++ chromium-73.0.3683.75/third_party/swiftshader/third_party/llvm-7.0/BUILD.gn 2019-03-15 09:03:30.334433446 -0400 +@@ -74,9 +74,12 @@ config("swiftshader_llvm_private_config" + "-Wno-unused-private-field", + "-Wno-unused-result", + "-Wno-unused-variable", +- "-Wno-error=header-hygiene", + ] + ++ if (is_clang) { ++ cflags += [ "-Wno-error=header-hygiene" ] ++ } ++ + defines = [ + "__STDC_CONSTANT_MACROS", + "__STDC_LIMIT_MACROS", diff --git a/chromium.spec b/chromium.spec index 882d816..260a0c9 100644 --- a/chromium.spec +++ b/chromium.spec @@ -316,6 +316,8 @@ Patch134: chromium-73-gcc-6.patch Patch135: chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch # Add #include to get pipewire code to build Patch136: chromium-73.0.3683.75-pipewire-cstring-fix.patch +# Conditionalize header-hygiene flags for clang +Patch137: chromium-73.0.3683.75-no-header-hygiene.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ @@ -886,6 +888,7 @@ udev. %patch134 -p1 -b .gentoogcc6 %patch135 -p1 -b .disable-ndnpc %patch136 -p1 -b .cstring-fix +%patch137 -p1 -b .nohh # Change shebang in all relevant files in this directory and all subdirectories # See `man find` for how the `-exec command {} +` syntax works @@ -1270,6 +1273,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/swiftshader/third_party/subzero' \ 'third_party/swiftshader/third_party/LLVM' \ 'third_party/swiftshader/third_party/llvm-subzero' \ + 'third_party/swiftshader/third_party/llvm-7.0' \ 'third_party/tcmalloc' \ 'third_party/test_fonts' \ 'third_party/usb_ids' \ @@ -1490,7 +1494,7 @@ cp -a nacl_helper* *.nexe pnacl tls_edit %{buildroot}%{chromium_path} chmod -x %{buildroot}%{chromium_path}/nacl_helper_bootstrap* *.nexe %endif cp -a protoc pyproto %{buildroot}%{chromium_path} -%ifarch x86_64 i686 +%ifarch x86_64 i686 aarch64 cp -a swiftshader %{buildroot}%{chromium_path} %endif cp -a chrome %{buildroot}%{chromium_path}/%{chromium_browser_channel} @@ -1711,7 +1715,7 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/%{chromium_browser_channel} %{chromium_path}/%{chromium_browser_channel}.sh %{chromium_path}/MEIPreload/ -%ifarch x86_64 i686 +%ifarch x86_64 i686 aarch64 %{chromium_path}/swiftshader/ %endif %if 0%{?nacl} From a21606ada3441c35b5aa0aa323e14b7dee1485a0 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 15 Mar 2019 12:11:37 -0400 Subject: [PATCH 0278/1449] add aarch64 crashpad compile fix --- chromium-73.0.3683.75-aarch64-crashpad-limits.patch | 11 +++++++++++ chromium.spec | 3 +++ 2 files changed, 14 insertions(+) create mode 100644 chromium-73.0.3683.75-aarch64-crashpad-limits.patch diff --git a/chromium-73.0.3683.75-aarch64-crashpad-limits.patch b/chromium-73.0.3683.75-aarch64-crashpad-limits.patch new file mode 100644 index 0000000..4eb9529 --- /dev/null +++ b/chromium-73.0.3683.75-aarch64-crashpad-limits.patch @@ -0,0 +1,11 @@ +diff -up chromium-73.0.3683.75/third_party/crashpad/crashpad/snapshot/linux/cpu_context_linux.cc.aarch64-limits chromium-73.0.3683.75/third_party/crashpad/crashpad/snapshot/linux/cpu_context_linux.cc +--- chromium-73.0.3683.75/third_party/crashpad/crashpad/snapshot/linux/cpu_context_linux.cc.aarch64-limits 2019-03-15 12:08:21.208676651 -0400 ++++ chromium-73.0.3683.75/third_party/crashpad/crashpad/snapshot/linux/cpu_context_linux.cc 2019-03-15 12:08:40.934251685 -0400 +@@ -16,6 +16,7 @@ + + #include + #include ++#include + + #include "base/logging.h" + diff --git a/chromium.spec b/chromium.spec index 260a0c9..1aea42c 100644 --- a/chromium.spec +++ b/chromium.spec @@ -318,6 +318,8 @@ Patch135: chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch Patch136: chromium-73.0.3683.75-pipewire-cstring-fix.patch # Conditionalize header-hygiene flags for clang Patch137: chromium-73.0.3683.75-no-header-hygiene.patch +# Add missing #include needed to build crashpad for aarch64 +Patch138: chromium-73.0.3683.75-aarch64-crashpad-limits.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ @@ -889,6 +891,7 @@ udev. %patch135 -p1 -b .disable-ndnpc %patch136 -p1 -b .cstring-fix %patch137 -p1 -b .nohh +%patch138 -p1 -b .aarch64-limits # Change shebang in all relevant files in this directory and all subdirectories # See `man find` for how the `-exec command {} +` syntax works From 6a0dee3b9c274867daa2584c6ec6fb744c9f5432 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Sun, 17 Mar 2019 19:00:54 -0400 Subject: [PATCH 0279/1449] try disabling jumbo for aarch64 --- chromium.spec | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/chromium.spec b/chromium.spec index 1aea42c..ddc465b 100644 --- a/chromium.spec +++ b/chromium.spec @@ -3,7 +3,11 @@ %global _python_bytecompile_extra 1 # This is faster when it works, but it doesn't always. +%ifarch aarch64 +%global use_jumbo 0 +%else %global use_jumbo 1 +%endif # We usually want this. %global build_headless 1 From 24a79238b2f82f88931be9a6909027f99e688af1 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 19 Mar 2019 09:31:47 -0400 Subject: [PATCH 0280/1449] do not package pyproto/protoc --- chromium.spec | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index ddc465b..2b4ea21 100644 --- a/chromium.spec +++ b/chromium.spec @@ -160,7 +160,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3683.75 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1500,7 +1500,10 @@ cp -a *.pak locales resources icudtl.dat %{buildroot}%{chromium_path} cp -a nacl_helper* *.nexe pnacl tls_edit %{buildroot}%{chromium_path} chmod -x %{buildroot}%{chromium_path}/nacl_helper_bootstrap* *.nexe %endif +# Reasonably sure we don't need this anymore. Chrome doesn't include it. +%if 0 cp -a protoc pyproto %{buildroot}%{chromium_path} +%endif %ifarch x86_64 i686 aarch64 cp -a swiftshader %{buildroot}%{chromium_path} %endif @@ -1732,7 +1735,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/tls_edit %endif %dir %{chromium_path}/PepperFlash/ +%if 0 %{chromium_path}/protoc +%endif # %%{chromium_path}/remoting_locales/ # %%{chromium_path}/pseudo_locales/ # %%{chromium_path}/plugins/ @@ -1750,7 +1755,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/headless_lib.pak %endif # %%{chromium_path}/mus_app_resources_*.pak +%if 0 %{chromium_path}/pyproto/ +%endif %{chromium_path}/resources/ %dir %{chromium_path}/locales/ %lang(am) %{chromium_path}/locales/am.pak* @@ -1865,6 +1872,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Tue Mar 19 2019 Tom Callaway - 73.0.3683.75-2 +- do not include pyproto/protoc files in package + * Tue Mar 12 2019 Tom Callaway - 73.0.3683.75-1 - update to 73.0.3683.75 From a01021d41d2d88e2c7866005b08578d1b678644f Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 19 Mar 2019 15:18:34 -0400 Subject: [PATCH 0281/1449] disable vaapi on epel7 --- chromium.spec | 2 ++ 1 file changed, 2 insertions(+) diff --git a/chromium.spec b/chromium.spec index ca804ac..5ba0e47 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1103,7 +1103,9 @@ CHROMIUM_BROWSER_GN_DEFINES+=' is_component_ffmpeg=false is_component_build=fals CHROMIUM_BROWSER_GN_DEFINES+=' remove_webcore_debug_symbols=true enable_hangout_services_extension=true' CHROMIUM_BROWSER_GN_DEFINES+=' use_aura=true' CHROMIUM_BROWSER_GN_DEFINES+=' enable_widevine=true' +%if 0%{?fedora} >= 28 CHROMIUM_BROWSER_GN_DEFINES+=' use_vaapi=true' +%endif %if 0%{?fedora} CHROMIUM_BROWSER_GN_DEFINES+=' rtc_use_pipewire=true rtc_link_pipewire=true' %endif From 6bc005ac5fd7cf4c83284e4b7277cfb53cd5bd22 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 20 Mar 2019 09:47:29 -0400 Subject: [PATCH 0282/1449] update noexcept patch --- chromium-73.0.3683.75-el7-fix-noexcept.patch | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/chromium-73.0.3683.75-el7-fix-noexcept.patch b/chromium-73.0.3683.75-el7-fix-noexcept.patch index 6d9b286..3fc69ba 100644 --- a/chromium-73.0.3683.75-el7-fix-noexcept.patch +++ b/chromium-73.0.3683.75-el7-fix-noexcept.patch @@ -1,7 +1,7 @@ diff -up chromium-73.0.3683.75/chrome/common/media_router/media_sink.cc.el7-noexcept chromium-73.0.3683.75/chrome/common/media_router/media_sink.cc ---- chromium-73.0.3683.75/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-03-19 11:03:09.820613771 -0400 -+++ chromium-73.0.3683.75/chrome/common/media_router/media_sink.cc 2019-03-19 11:08:05.915213225 -0400 -@@ -19,7 +19,7 @@ MediaSink::MediaSink(const MediaSink::Id +--- chromium-73.0.3683.75/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-03-11 18:00:54.000000000 -0400 ++++ chromium-73.0.3683.75/chrome/common/media_router/media_sink.cc 2019-03-20 09:45:29.400426336 -0400 +@@ -19,12 +19,12 @@ MediaSink::MediaSink(const MediaSink::Id provider_id_(provider_id) {} MediaSink::MediaSink(const MediaSink& other) = default; @@ -10,9 +10,15 @@ diff -up chromium-73.0.3683.75/chrome/common/media_router/media_sink.cc.el7-noex MediaSink::MediaSink() = default; MediaSink::~MediaSink() = default; + MediaSink& MediaSink::operator=(const MediaSink& other) = default; +-MediaSink& MediaSink::operator=(MediaSink&& other) noexcept = default; ++MediaSink& MediaSink::operator=(MediaSink&& other) = default; + + bool MediaSink::IsMaybeCloudSink() const { + switch (icon_type_) { diff -up chromium-73.0.3683.75/components/policy/core/common/policy_map.cc.el7-noexcept chromium-73.0.3683.75/components/policy/core/common/policy_map.cc --- chromium-73.0.3683.75/components/policy/core/common/policy_map.cc.el7-noexcept 2019-03-11 18:00:56.000000000 -0400 -+++ chromium-73.0.3683.75/components/policy/core/common/policy_map.cc 2019-03-19 11:03:09.823613699 -0400 ++++ chromium-73.0.3683.75/components/policy/core/common/policy_map.cc 2019-03-19 11:11:38.310689134 -0400 @@ -25,7 +25,7 @@ PolicyMap::Entry::Entry() = default; PolicyMap::Entry::~Entry() = default; @@ -24,7 +30,7 @@ diff -up chromium-73.0.3683.75/components/policy/core/common/policy_map.cc.el7-n Entry copy; diff -up chromium-73.0.3683.75/components/signin/core/browser/account_info.cc.el7-noexcept chromium-73.0.3683.75/components/signin/core/browser/account_info.cc --- chromium-73.0.3683.75/components/signin/core/browser/account_info.cc.el7-noexcept 2019-03-11 18:00:57.000000000 -0400 -+++ chromium-73.0.3683.75/components/signin/core/browser/account_info.cc 2019-03-19 11:03:09.872612537 -0400 ++++ chromium-73.0.3683.75/components/signin/core/browser/account_info.cc 2019-03-19 11:11:38.311689112 -0400 @@ -50,7 +50,7 @@ AccountInfo::AccountInfo(AccountInfo&& o AccountInfo& AccountInfo::operator=(const AccountInfo& other) = default; @@ -35,8 +41,8 @@ diff -up chromium-73.0.3683.75/components/signin/core/browser/account_info.cc.el bool AccountInfo::IsEmpty() const { return account_id.empty() && email.empty() && gaia.empty() && diff -up chromium-73.0.3683.75/gpu/config/gpu_info.cc.el7-noexcept chromium-73.0.3683.75/gpu/config/gpu_info.cc ---- chromium-73.0.3683.75/gpu/config/gpu_info.cc.el7-noexcept 2019-03-11 18:00:59.000000000 -0400 -+++ chromium-73.0.3683.75/gpu/config/gpu_info.cc 2019-03-19 11:03:10.238603858 -0400 +--- chromium-73.0.3683.75/gpu/config/gpu_info.cc.el7-noexcept 2019-03-19 11:12:36.992435015 -0400 ++++ chromium-73.0.3683.75/gpu/config/gpu_info.cc 2019-03-19 11:12:37.061433540 -0400 @@ -118,7 +118,7 @@ GPUInfo::GPUDevice& GPUInfo::GPUDevice:: const GPUInfo::GPUDevice& other) = default; From f9dc161c1c22a54fe63406ce6d49ee8242d07c72 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 22 Mar 2019 16:24:13 -0400 Subject: [PATCH 0283/1449] update to 73.0.3683.86 --- .gitignore | 1 + chromium.spec | 7 +++++-- sources | 2 +- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index c78bbdf..c2058f9 100644 --- a/.gitignore +++ b/.gitignore @@ -75,3 +75,4 @@ /node-v8.9.1-linux-x64.tar.gz /chromium-72.0.3626.121-clean.tar.xz /chromium-73.0.3683.75-clean.tar.xz +/chromium-73.0.3683.86-clean.tar.xz diff --git a/chromium.spec b/chromium.spec index 5ba0e47..3a7343c 100644 --- a/chromium.spec +++ b/chromium.spec @@ -161,8 +161,8 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3683.75 -Release: 2%{?dist} +Version: %{majorversion}.0.3683.86 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1895,6 +1895,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Fri Mar 22 2019 Tom Callaway - 73.0.3683.86-1 +- update to 73.0.3683.86 + * Tue Mar 19 2019 Tom Callaway - 73.0.3683.75-2 - do not include pyproto/protoc files in package diff --git a/sources b/sources index fcfd066..43b333f 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-73.0.3683.75-clean.tar.xz) = f240e8d58f8093db409e4a90a6c2c8dbbef3e5c0ba1d9acd8fd907be4e34042c76329881a4880bf52cc91b8e4949704d041279f91d76fd614c7d2d7020436fe6 +SHA512 (chromium-73.0.3683.86-clean.tar.xz) = 0bdd96420814dbd9b14385abc529ef69f8565a9277e118bade44c43bc0d8024b496db23b1385684744b5931565b6a1baf8cb13bfa7e609a20408238c302bf3c2 From c0e09c73fbbdcd6d593592d49883cee1d0fa07ef Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 27 Mar 2019 16:04:13 -0400 Subject: [PATCH 0284/1449] remove lang macro from en-US.pak* because Chromium crashes if it is not present (bz1692660) --- chromium.spec | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/chromium.spec b/chromium.spec index 3a7343c..25c9b0c 100644 --- a/chromium.spec +++ b/chromium.spec @@ -162,7 +162,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3683.86 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1793,7 +1793,10 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %lang(de) %{chromium_path}/locales/de.pak* %lang(el) %{chromium_path}/locales/el.pak* %lang(en_GB) %{chromium_path}/locales/en-GB.pak* -%lang(en_US) %{chromium_path}/locales/en-US.pak* +# Chromium _ALWAYS_ needs en-US.pak as a fallback +# This means we cannot apply the lang code here. +# Otherwise, it is filtered out on install. +%{chromium_path}/locales/en-US.pak* %lang(es) %{chromium_path}/locales/es.pak* %lang(es) %{chromium_path}/locales/es-419.pak* %lang(et) %{chromium_path}/locales/et.pak* @@ -1895,6 +1898,10 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Wed Mar 27 2019 Tom Callaway - 73.0.3683.86-2 +- remove lang macro from en-US.pak* because Chromium crashes if it is not present + (bz1692660) + * Fri Mar 22 2019 Tom Callaway - 73.0.3683.86-1 - update to 73.0.3683.86 From ae0be165a7b409c3090360955fcd1b4ae6cd5987 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 11 Apr 2019 11:15:59 -0400 Subject: [PATCH 0285/1449] update to 73.0.3683.103, add CLONE_VFORK to seccomp filter for linux to handle glibc 2.29 change --- .gitignore | 1 + chromium-73.0.3683.86-glibc-2.29-clone-vfork.patch | 13 +++++++++++++ chromium.spec | 11 +++++++++-- sources | 2 +- 4 files changed, 24 insertions(+), 3 deletions(-) create mode 100644 chromium-73.0.3683.86-glibc-2.29-clone-vfork.patch diff --git a/.gitignore b/.gitignore index c2058f9..ad17be0 100644 --- a/.gitignore +++ b/.gitignore @@ -76,3 +76,4 @@ /chromium-72.0.3626.121-clean.tar.xz /chromium-73.0.3683.75-clean.tar.xz /chromium-73.0.3683.86-clean.tar.xz +/chromium-73.0.3683.103-clean.tar.xz diff --git a/chromium-73.0.3683.86-glibc-2.29-clone-vfork.patch b/chromium-73.0.3683.86-glibc-2.29-clone-vfork.patch new file mode 100644 index 0000000..752090a --- /dev/null +++ b/chromium-73.0.3683.86-glibc-2.29-clone-vfork.patch @@ -0,0 +1,13 @@ +diff -up chromium-73.0.3683.86/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc.clonevfork chromium-73.0.3683.86/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc +--- chromium-73.0.3683.86/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc.clonevfork 2019-04-11 10:22:21.250929060 -0400 ++++ chromium-73.0.3683.86/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc 2019-04-11 10:23:58.832770803 -0400 +@@ -146,7 +146,8 @@ ResultExpr RestrictCloneToThreadsAndEPER + + const uint64_t kGlibcPthreadFlags = + CLONE_VM | CLONE_FS | CLONE_FILES | CLONE_SIGHAND | CLONE_THREAD | +- CLONE_SYSVSEM | CLONE_SETTLS | CLONE_PARENT_SETTID | CLONE_CHILD_CLEARTID; ++ CLONE_SYSVSEM | CLONE_SETTLS | CLONE_PARENT_SETTID | ++ CLONE_CHILD_CLEARTID | CLONE_VFORK; + const BoolExpr glibc_test = flags == kGlibcPthreadFlags; + + const BoolExpr android_test = diff --git a/chromium.spec b/chromium.spec index 25c9b0c..dbc5a56 100644 --- a/chromium.spec +++ b/chromium.spec @@ -161,8 +161,8 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3683.86 -Release: 2%{?dist} +Version: %{majorversion}.0.3683.103 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -328,6 +328,8 @@ Patch137: chromium-73.0.3683.75-no-header-hygiene.patch Patch138: chromium-73.0.3683.75-aarch64-crashpad-limits.patch # el7 only patch Patch139: chromium-73.0.3683.75-el7-fix-noexcept.patch +# https://bugs.chromium.org/p/chromium/issues/detail?id=949312 +Patch140: chromium-73.0.3683.86-glibc-2.29-clone-vfork.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ @@ -910,6 +912,7 @@ udev. %if 0%{?rhel} == 7 %patch139 -p1 -b .el7-noexcept %endif +%patch140 -p1 -b .clonevfork # Change shebang in all relevant files in this directory and all subdirectories # See `man find` for how the `-exec command {} +` syntax works @@ -1898,6 +1901,10 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Thu Apr 11 2019 Tom Callaway - 73.0.3683.103-1 +- update to 73.0.3683.103 +- add CLONE_VFORK to seccomp filter for linux to handle glibc 2.29 change + * Wed Mar 27 2019 Tom Callaway - 73.0.3683.86-2 - remove lang macro from en-US.pak* because Chromium crashes if it is not present (bz1692660) diff --git a/sources b/sources index 43b333f..ad9a0ee 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-73.0.3683.86-clean.tar.xz) = 0bdd96420814dbd9b14385abc529ef69f8565a9277e118bade44c43bc0d8024b496db23b1385684744b5931565b6a1baf8cb13bfa7e609a20408238c302bf3c2 +SHA512 (chromium-73.0.3683.103-clean.tar.xz) = 73d43cc50586f4313994711ec45ddfe6b5780d13dff9004522c596035d2b75b197de0cdeab70c4c69da18846a3cd1ec6b5a264a8015eb46e4ce42db7b5ca793a From 41b87b039adf11906a2fceaaa66bf1651bb595ef Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 16 Apr 2019 11:54:46 -0400 Subject: [PATCH 0286/1449] improved seccomp glibc 2.29 patch --- ...73.0.3683.103-glibc-2.29-clone-vfork.patch | 29 +++++++++++++++++++ ...-73.0.3683.86-glibc-2.29-clone-vfork.patch | 13 --------- chromium.spec | 6 ++-- 3 files changed, 32 insertions(+), 16 deletions(-) create mode 100644 chromium-73.0.3683.103-glibc-2.29-clone-vfork.patch delete mode 100644 chromium-73.0.3683.86-glibc-2.29-clone-vfork.patch diff --git a/chromium-73.0.3683.103-glibc-2.29-clone-vfork.patch b/chromium-73.0.3683.103-glibc-2.29-clone-vfork.patch new file mode 100644 index 0000000..8ff952b --- /dev/null +++ b/chromium-73.0.3683.103-glibc-2.29-clone-vfork.patch @@ -0,0 +1,29 @@ +diff -up chromium-73.0.3683.103/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc.glibc229 chromium-73.0.3683.103/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc +--- chromium-73.0.3683.103/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc.glibc229 2019-04-16 11:49:35.353081246 -0400 ++++ chromium-73.0.3683.103/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc 2019-04-16 11:51:22.105794620 -0400 +@@ -134,7 +134,8 @@ namespace sandbox { + #if !defined(OS_NACL_NONSFI) + // Allow Glibc's and Android pthread creation flags, crash on any other + // thread creation attempts and EPERM attempts to use neither +-// CLONE_VM, nor CLONE_THREAD, which includes all fork() implementations. ++// CLONE_VM nor CLONE_THREAD (all fork implementations), unless CLONE_VFORK is ++// present (as in posix_spawn). + ResultExpr RestrictCloneToThreadsAndEPERMFork() { + const Arg flags(0); + +@@ -153,8 +154,14 @@ ResultExpr RestrictCloneToThreadsAndEPER + AnyOf(flags == kAndroidCloneMask, flags == kObsoleteAndroidCloneMask, + flags == kGlibcPthreadFlags); + ++ const uint64_t kImportantSpawnFlags = CLONE_VFORK | CLONE_VM; ++ ++ const BoolExpr isForkOrSpawn = ++ AnyOf((flags & (CLONE_VM | CLONE_THREAD)) == 0, ++ (flags & kImportantSpawnFlags) == kImportantSpawnFlags); ++ + return If(IsAndroid() ? android_test : glibc_test, Allow()) +- .ElseIf((flags & (CLONE_VM | CLONE_THREAD)) == 0, Error(EPERM)) ++ .ElseIf(isForkOrSpawn, Error(EPERM)) + .Else(CrashSIGSYSClone()); + } + diff --git a/chromium-73.0.3683.86-glibc-2.29-clone-vfork.patch b/chromium-73.0.3683.86-glibc-2.29-clone-vfork.patch deleted file mode 100644 index 752090a..0000000 --- a/chromium-73.0.3683.86-glibc-2.29-clone-vfork.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -up chromium-73.0.3683.86/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc.clonevfork chromium-73.0.3683.86/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc ---- chromium-73.0.3683.86/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc.clonevfork 2019-04-11 10:22:21.250929060 -0400 -+++ chromium-73.0.3683.86/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc 2019-04-11 10:23:58.832770803 -0400 -@@ -146,7 +146,8 @@ ResultExpr RestrictCloneToThreadsAndEPER - - const uint64_t kGlibcPthreadFlags = - CLONE_VM | CLONE_FS | CLONE_FILES | CLONE_SIGHAND | CLONE_THREAD | -- CLONE_SYSVSEM | CLONE_SETTLS | CLONE_PARENT_SETTID | CLONE_CHILD_CLEARTID; -+ CLONE_SYSVSEM | CLONE_SETTLS | CLONE_PARENT_SETTID | -+ CLONE_CHILD_CLEARTID | CLONE_VFORK; - const BoolExpr glibc_test = flags == kGlibcPthreadFlags; - - const BoolExpr android_test = diff --git a/chromium.spec b/chromium.spec index dbc5a56..aa1e24a 100644 --- a/chromium.spec +++ b/chromium.spec @@ -329,7 +329,7 @@ Patch138: chromium-73.0.3683.75-aarch64-crashpad-limits.patch # el7 only patch Patch139: chromium-73.0.3683.75-el7-fix-noexcept.patch # https://bugs.chromium.org/p/chromium/issues/detail?id=949312 -Patch140: chromium-73.0.3683.86-glibc-2.29-clone-vfork.patch +Patch140: chromium-73.0.3683.103-glibc-2.29-clone-vfork.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ @@ -912,7 +912,7 @@ udev. %if 0%{?rhel} == 7 %patch139 -p1 -b .el7-noexcept %endif -%patch140 -p1 -b .clonevfork +%patch140 -p1 -b .glibc229 # Change shebang in all relevant files in this directory and all subdirectories # See `man find` for how the `-exec command {} +` syntax works @@ -1903,7 +1903,7 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog * Thu Apr 11 2019 Tom Callaway - 73.0.3683.103-1 - update to 73.0.3683.103 -- add CLONE_VFORK to seccomp filter for linux to handle glibc 2.29 change +- add CLONE_VFORK logic to seccomp filter for linux to handle glibc 2.29 change * Wed Mar 27 2019 Tom Callaway - 73.0.3683.86-2 - remove lang macro from en-US.pak* because Chromium crashes if it is not present From f4a1a5cfc04b62df32bfacf128850833fcd70ef6 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 3 Jun 2019 17:14:49 -0400 Subject: [PATCH 0287/1449] 74.0.3729.169 --- .gitignore | 1 + chromium-71.0.3578.98-widevine-r3.patch | 4 +- chromium-74-2f28731.patch | 324 +++++++++ chromium-74-7685422.patch | 12 + chromium-74-c2c467f.patch | 75 ++ chromium-74-e1b1f3a.patch | 587 ++++++++++++++++ ...74.0.3729.169-glibc-2.29-clone-vfork.patch | 50 ++ chromium-widevine-other-locations.patch | 23 + chromium.spec | 64 +- clean_ffmpeg.sh | 1 + quiche-00f47df.patch | 38 + revert-gn-4960.patch | 655 ++++++++++++++++++ revert-gn-4980.patch | 134 ++++ sources | 2 +- 14 files changed, 1940 insertions(+), 30 deletions(-) create mode 100644 chromium-74-2f28731.patch create mode 100644 chromium-74-7685422.patch create mode 100644 chromium-74-c2c467f.patch create mode 100644 chromium-74-e1b1f3a.patch create mode 100644 chromium-74.0.3729.169-glibc-2.29-clone-vfork.patch create mode 100644 chromium-widevine-other-locations.patch create mode 100644 quiche-00f47df.patch create mode 100644 revert-gn-4960.patch create mode 100644 revert-gn-4980.patch diff --git a/.gitignore b/.gitignore index ad17be0..e0568e7 100644 --- a/.gitignore +++ b/.gitignore @@ -77,3 +77,4 @@ /chromium-73.0.3683.75-clean.tar.xz /chromium-73.0.3683.86-clean.tar.xz /chromium-73.0.3683.103-clean.tar.xz +/chromium-74.0.3729.169-clean.tar.xz diff --git a/chromium-71.0.3578.98-widevine-r3.patch b/chromium-71.0.3578.98-widevine-r3.patch index 8d875c6..75392a7 100644 --- a/chromium-71.0.3578.98-widevine-r3.patch +++ b/chromium-71.0.3578.98-widevine-r3.patch @@ -6,7 +6,7 @@ diff -upr chromium-71.0.3578.80.orig/chrome/common/chrome_content_client.cc chro // 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) ++#if !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 @@ -17,6 +17,6 @@ diff -upr chromium-71.0.3578.80.orig/third_party/widevine/cdm/widevine_cdm_versi // - 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" ++#define WIDEVINE_CDM_VERSION_STRING "undefined" + #endif // WIDEVINE_CDM_VERSION_H_ diff --git a/chromium-74-2f28731.patch b/chromium-74-2f28731.patch new file mode 100644 index 0000000..2019ec2 --- /dev/null +++ b/chromium-74-2f28731.patch @@ -0,0 +1,324 @@ +diff -up chromium-74.0.3729.169/base/values.cc.2f28731 chromium-74.0.3729.169/base/values.cc +--- chromium-74.0.3729.169/base/values.cc.2f28731 2019-05-31 15:03:32.200591044 -0400 ++++ chromium-74.0.3729.169/base/values.cc 2019-05-31 15:13:39.546036829 -0400 +@@ -12,6 +12,7 @@ + #include + #include + ++#include "base/bit_cast.h" + #include "base/json/json_writer.h" + #include "base/logging.h" + #include "base/memory/ptr_util.h" +@@ -36,6 +37,9 @@ static_assert(std::is_standard_layout(0.0); + return; + case Type::STRING: + new (&string_value_) std::string(); +@@ -149,21 +151,16 @@ Value::Value(Type type) : type_(type) { + CHECK(false); + } + +-Value::Value(bool in_bool) +- : bool_type_(Type::BOOLEAN), +- bool_value_(in_bool) {} +- +-Value::Value(int in_int) +- : int_type_(Type::INTEGER), +- int_value_(in_int) {} ++Value::Value(bool in_bool) : type_(Type::BOOLEAN), bool_value_(in_bool) {} ++ ++Value::Value(int in_int) : type_(Type::INTEGER), int_value_(in_int) {} + + Value::Value(double in_double) +- : double_type_(Type::DOUBLE), +- double_value_(in_double) { +- if (!std::isfinite(double_value_)) { ++ : type_(Type::DOUBLE), double_value_(bit_cast(in_double)) { ++ if (!std::isfinite(in_double)) { + NOTREACHED() << "Non-finite (i.e. NaN or positive/negative infinity) " + << "values cannot be represented in JSON"; +- double_value_ = 0.0; ++ double_value_ = bit_cast(0.0); + } + } + +@@ -172,8 +169,7 @@ Value::Value(const char* in_string) : Va + Value::Value(StringPiece in_string) : Value(std::string(in_string)) {} + + Value::Value(std::string&& in_string) noexcept +- : string_type_(Type::STRING), +- string_value_(std::move(in_string)) { ++ : type_(Type::STRING), string_value_(std::move(in_string)) { + DCHECK(IsStringUTF8(string_value_)); + } + +@@ -182,19 +178,15 @@ Value::Value(const char16* in_string16) + Value::Value(StringPiece16 in_string16) : Value(UTF16ToUTF8(in_string16)) {} + + Value::Value(const std::vector& in_blob) +- : binary_type_(Type::BINARY), +- binary_value_(in_blob.begin(), in_blob.end()) {} ++ : type_(Type::BINARY), binary_value_(in_blob.begin(), in_blob.end()) {} + + Value::Value(base::span in_blob) +- : binary_type_(Type::BINARY), +- binary_value_(in_blob.begin(), in_blob.end()) {} ++ : type_(Type::BINARY), binary_value_(in_blob.begin(), in_blob.end()) {} + + Value::Value(BlobStorage&& in_blob) noexcept +- : binary_type_(Type::BINARY), +- binary_value_(std::move(in_blob)) {} ++ : type_(Type::BINARY), binary_value_(std::move(in_blob)) {} + +-Value::Value(const DictStorage& in_dict) +- : dict_type_(Type::DICTIONARY), dict_() { ++Value::Value(const DictStorage& in_dict) : type_(Type::DICTIONARY), dict_() { + dict_.reserve(in_dict.size()); + for (const auto& it : in_dict) { + dict_.try_emplace(dict_.end(), it.first, +@@ -203,18 +195,16 @@ Value::Value(const DictStorage& in_dict) + } + + Value::Value(DictStorage&& in_dict) noexcept +- : dict_type_(Type::DICTIONARY), +- dict_(std::move(in_dict)) {} ++ : type_(Type::DICTIONARY), dict_(std::move(in_dict)) {} + +-Value::Value(const ListStorage& in_list) : list_type_(Type::LIST), list_() { ++Value::Value(const ListStorage& in_list) : type_(Type::LIST), list_() { + list_.reserve(in_list.size()); + for (const auto& val : in_list) + list_.emplace_back(val.Clone()); + } + + Value::Value(ListStorage&& in_list) noexcept +- : list_type_(Type::LIST), +- list_(std::move(in_list)) {} ++ : type_(Type::LIST), list_(std::move(in_list)) {} + + Value& Value::operator=(Value&& that) noexcept { + InternalCleanup(); +@@ -223,6 +213,10 @@ Value& Value::operator=(Value&& that) no + return *this; + } + ++double Value::AsDoubleInternal() const { ++ return bit_cast(double_value_); ++} ++ + Value Value::Clone() const { + switch (type_) { + case Type::NONE: +@@ -232,7 +226,7 @@ Value Value::Clone() const { + case Type::INTEGER: + return Value(int_value_); + case Type::DOUBLE: +- return Value(double_value_); ++ return Value(AsDoubleInternal()); + case Type::STRING: + return Value(string_value_); + case Type::BINARY: +@@ -277,7 +271,7 @@ int Value::GetInt() const { + + double Value::GetDouble() const { + if (is_double()) +- return double_value_; ++ return AsDoubleInternal(); + if (is_int()) + return int_value_; + CHECK(false); +@@ -342,9 +336,10 @@ base::Optional Value::FindDouble + const Value* result = FindKey(key); + if (result) { + if (result->is_int()) +- return base::make_optional(static_cast(result->int_value_)); +- if (result->is_double()) +- return base::make_optional(result->double_value_); ++ return static_cast(result->int_value_); ++ if (result->is_double()) { ++ return result->AsDoubleInternal(); ++ } + } + return base::nullopt; + } +@@ -548,7 +543,7 @@ bool Value::GetAsInteger(int* out_value) + + bool Value::GetAsDouble(double* out_value) const { + if (out_value && is_double()) { +- *out_value = double_value_; ++ *out_value = AsDoubleInternal(); + return true; + } + if (out_value && is_int()) { +@@ -643,7 +638,7 @@ bool operator==(const Value& lhs, const + case Value::Type::INTEGER: + return lhs.int_value_ == rhs.int_value_; + case Value::Type::DOUBLE: +- return lhs.double_value_ == rhs.double_value_; ++ return lhs.AsDoubleInternal() == rhs.AsDoubleInternal(); + case Value::Type::STRING: + return lhs.string_value_ == rhs.string_value_; + case Value::Type::BINARY: +@@ -688,7 +683,7 @@ bool operator<(const Value& lhs, const V + case Value::Type::INTEGER: + return lhs.int_value_ < rhs.int_value_; + case Value::Type::DOUBLE: +- return lhs.double_value_ < rhs.double_value_; ++ return lhs.AsDoubleInternal() < rhs.AsDoubleInternal(); + case Value::Type::STRING: + return lhs.string_value_ < rhs.string_value_; + case Value::Type::BINARY: +diff -up chromium-74.0.3729.169/base/values.h.2f28731 chromium-74.0.3729.169/base/values.h +--- chromium-74.0.3729.169/base/values.h.2f28731 2019-05-31 15:13:48.418868163 -0400 ++++ chromium-74.0.3729.169/base/values.h 2019-05-31 15:17:06.015112057 -0400 +@@ -77,12 +77,13 @@ class Value; + // base::Value dict(base::Value::Type::DICTIONARY); + // dict.SetKey("mykey", base::Value(foo)); + // return dict; +-// } + class BASE_EXPORT Value { + public: + using BlobStorage = std::vector; + using DictStorage = flat_map>; + using ListStorage = std::vector; ++ // See technical note below explaining why this is used. ++ using DoubleStorage = struct { alignas(4) char v[sizeof(double)]; }; + + enum class Type : unsigned char { + NONE = 0, +@@ -111,7 +112,10 @@ class BASE_EXPORT Value { + static std::unique_ptr ToUniquePtrValue(Value val); + + Value(Value&& that) noexcept; +- Value() noexcept; // A null value. ++ Value() noexcept {} // A null value ++ // Fun fact: using '= default' above instead of '{}' does not work because ++ // the compiler complains that the default constructor was deleted since ++ // the inner union contains fields with non-default constructors. + + // Value's copy constructor and copy assignment operator are deleted. Use this + // to obtain a deep copy explicitly. +@@ -379,82 +383,29 @@ class BASE_EXPORT Value { + size_t EstimateMemoryUsage() const; + + protected: +- // Technical note: +- // The naive way to implement a tagged union leads to wasted bytes +- // in the object on CPUs like ARM ones, which impose an 8-byte alignment +- // for double values. I.e. if one does something like: +- // +- // struct TaggedValue { +- // int type_; // size = 1, align = 4 +- // union { +- // bool bool_value_; // size = 1, align = 1 +- // int int_value_; // size = 4, align = 4 +- // double double_value_; // size = 8, align = 8 +- // std::string string_value_; // size = 12, align = 4 (32-bit) +- // }; +- // }; +- // +- // The end result is that the union will have an alignment of 8, and a size +- // of 16, due to 4 extra padding bytes following |string_value_| to respect +- // the alignment requirement. +- // +- // As a consequence, the struct TaggedValue will have a size of 24 bytes, +- // due to the size of the union (16), the size of |type_| (4) and 4 bytes +- // of padding between |type_| and the union to respect its alignment. +- // +- // This means 8 bytes of unused memory per instance on 32-bit ARM! +- // +- // To reclaim these, a union of structs is used instead, in order to ensure +- // that |double_value_| below is always located at an offset that is a +- // multiple of 8, relative to the start of the overall data structure. +- // +- // Each struct must declare its own |type_| field, which must have a different +- // name, to appease the C++ compiler. +- // +- // Using this technique sizeof(base::Value) == 16 on 32-bit ARM instead +- // of 24, without losing any information. Results are unchanged for x86, +- // x86_64 and arm64 (16, 32 and 32 bytes respectively). ++ // Special case for doubles, which are aligned to 8 bytes on some ++ // 32-bit architectures. In this case, a simple declaration as a ++ // double member would make the whole union 8 byte-aligned, which ++ // would also force 4 bytes of wasted padding space before it in ++ // the Value layout. ++ // ++ // To override this, store the value as an array of 32-bit integers, and ++ // perform the appropriate bit casts when reading / writing to it. ++ Type type_ = Type::NONE; ++ + union { +- struct { +- // TODO(crbug.com/646113): Make these private once DictionaryValue and +- // ListValue are properly inlined. +- Type type_ : 8; +- }; +- struct { +- Type bool_type_ : 8; +- bool bool_value_; +- }; +- struct { +- Type int_type_ : 8; +- int int_value_; +- }; +- struct { +- Type double_type_ : 8; +- // Subtle: On architectures that require it, the compiler will ensure +- // that |double_value_|'s offset is a multiple of 8 (e.g. 32-bit ARM). +- // See technical note above to understand why it is important. +- double double_value_; +- }; +- struct { +- Type string_type_ : 8; +- std::string string_value_; +- }; +- struct { +- Type binary_type_ : 8; +- BlobStorage binary_value_; +- }; +- struct { +- Type dict_type_ : 8; +- DictStorage dict_; +- }; +- struct { +- Type list_type_ : 8; +- ListStorage list_; +- }; ++ bool bool_value_; ++ int int_value_; ++ DoubleStorage double_value_; ++ std::string string_value_; ++ BlobStorage binary_value_; ++ DictStorage dict_; ++ ListStorage list_; + }; + + private: + friend class ValuesTest_SizeOfValue_Test; ++ double AsDoubleInternal() const; + void InternalMoveConstructFrom(Value&& that); + void InternalCleanup(); + diff --git a/chromium-74-7685422.patch b/chromium-74-7685422.patch new file mode 100644 index 0000000..f86da1f --- /dev/null +++ b/chromium-74-7685422.patch @@ -0,0 +1,12 @@ +diff -up chromium-74.0.3729.169/base/values.h.gentoo3 chromium-74.0.3729.169/base/values.h +--- chromium-74.0.3729.169/base/values.h.gentoo3 2019-05-31 14:02:13.019800039 -0400 ++++ chromium-74.0.3729.169/base/values.h 2019-05-31 14:02:32.531380130 -0400 +@@ -84,7 +84,7 @@ class BASE_EXPORT Value { + using DictStorage = flat_map>; + using ListStorage = std::vector; + +- enum class Type { ++ enum class Type : unsigned char { + NONE = 0, + BOOLEAN, + INTEGER, diff --git a/chromium-74-c2c467f.patch b/chromium-74-c2c467f.patch new file mode 100644 index 0000000..e9e5d22 --- /dev/null +++ b/chromium-74-c2c467f.patch @@ -0,0 +1,75 @@ +From c2c467f69fc00d353879d7add5f2c04a6acabbb1 Mon Sep 17 00:00:00 2001 +From: David 'Digit' Turner +Date: Wed, 20 Mar 2019 21:41:09 +0000 +Subject: [PATCH] base: Value::FindDoubleKey() converts integers to doubles + +Ensure that FindDoubleKey() can return the value of an +INTEGER key as a double. This is consistent with the behaviour +of Value::GetDouble() which will auto-convert INTEGER values +to doubles. + +BUG=646113 +R=dcheng@chromium.org,jdoerrie@chromium.org,sdefresne@chromium.org,hidehiko@chromium.org + +Change-Id: I2c08cb91b6cfd5db268a182ffffe16682d848008 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1529017 +Reviewed-by: Sylvain Defresne +Reviewed-by: Daniel Cheng +Commit-Queue: David Turner +Cr-Commit-Position: refs/heads/master@{#642680} +--- + base/values.cc | 10 ++++++++-- + base/values.h | 2 ++ + base/values_unittest.cc | 2 +- + 3 files changed, 11 insertions(+), 3 deletions(-) + +diff --git a/base/values.cc b/base/values.cc +index 035aa2350cde..69d66ff8ab00 100644 +--- a/base/values.cc ++++ b/base/values.cc +@@ -339,8 +339,14 @@ base::Optional Value::FindIntKey(StringPiece key) const { + } + + base::Optional Value::FindDoubleKey(StringPiece key) const { +- const Value* result = FindKeyOfType(key, Type::DOUBLE); +- return result ? base::make_optional(result->double_value_) : base::nullopt; ++ const Value* result = FindKey(key); ++ if (result) { ++ if (result->is_int()) ++ return base::make_optional(static_cast(result->int_value_)); ++ if (result->is_double()) ++ return base::make_optional(result->double_value_); ++ } ++ return base::nullopt; + } + + const std::string* Value::FindStringKey(StringPiece key) const { +diff --git a/base/values.h b/base/values.h +index e31cadd83102..6f2cd3cc3d79 100644 +--- a/base/values.h ++++ b/base/values.h +@@ -200,6 +200,8 @@ class BASE_EXPORT Value { + // function's name. + base::Optional FindBoolKey(StringPiece key) const; + base::Optional FindIntKey(StringPiece key) const; ++ // Note FindDoubleKey() will auto-convert INTEGER keys to their double ++ // value, for consistency with GetDouble(). + base::Optional FindDoubleKey(StringPiece key) const; + + // |FindStringKey| returns |nullptr| if value is not found or not a string. +diff --git a/base/values_unittest.cc b/base/values_unittest.cc +index b23fd8332491..7c545c09d947 100644 +--- a/base/values_unittest.cc ++++ b/base/values_unittest.cc +@@ -674,7 +674,7 @@ TEST(ValuesTest, FindDoubleKey) { + const Value dict(std::move(storage)); + EXPECT_EQ(base::nullopt, dict.FindDoubleKey("null")); + EXPECT_EQ(base::nullopt, dict.FindDoubleKey("bool")); +- EXPECT_EQ(base::nullopt, dict.FindDoubleKey("int")); ++ EXPECT_NE(base::nullopt, dict.FindDoubleKey("int")); + EXPECT_NE(base::nullopt, dict.FindDoubleKey("double")); + EXPECT_EQ(base::nullopt, dict.FindDoubleKey("string")); + EXPECT_EQ(base::nullopt, dict.FindDoubleKey("blob")); +-- +2.21.0 + diff --git a/chromium-74-e1b1f3a.patch b/chromium-74-e1b1f3a.patch new file mode 100644 index 0000000..344b087 --- /dev/null +++ b/chromium-74-e1b1f3a.patch @@ -0,0 +1,587 @@ +From e1b1f3a5f273c8da533fad495b9de316e2c83c9b Mon Sep 17 00:00:00 2001 +From: jdoerrie +Date: Sat, 16 Mar 2019 04:08:01 +0000 +Subject: [PATCH] [base] Add Dead Type to base::Value + +This change adds a temporary DEAD type to base::Value which should help +to track down use-after-free bugs. Furthermore, this change also removes +the now unneeded is_alive_ flag. + +Bug: 859477, 941404 +Change-Id: I9b7a2f3cbb0b22d7e3ed35b2453537419f3f7e55 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1478897 +Reviewed-by: Pavol Marko +Reviewed-by: Tao Bai +Reviewed-by: Thomas Anderson +Reviewed-by: Mike Pinkerton +Reviewed-by: Bill Budge +Reviewed-by: Ken Rockot +Reviewed-by: Steven Bennetts +Reviewed-by: Daniel Cheng +Reviewed-by: David Turner +Commit-Queue: Thomas Anderson +Cr-Commit-Position: refs/heads/master@{#641404} +--- + base/json/json_writer.cc | 5 ++ + base/values.cc | 68 ++++++++++++------- + base/values.h | 23 ++----- + base/values_unittest.cc | 10 ++- + .../ui/cocoa/applescript/apple_event_util.mm | 10 +++ + chromeos/network/onc/variable_expander.cc | 6 ++ + .../core/browser/android/policy_converter.cc | 11 ++- + .../core/common/policy_loader_win_unittest.cc | 8 ++- + .../policy/core/common/policy_test_utils.cc | 5 ++ + .../policy/core/common/registry_dict.cc | 4 ++ + .../gin_java_script_to_java_types_coercion.cc | 8 ++- + ipc/ipc_message_utils.cc | 11 ++- + mojo/public/cpp/base/values_mojom_traits.h | 7 +- + .../ppb_x509_certificate_private_shared.cc | 2 + + 14 files changed, 127 insertions(+), 51 deletions(-) + +diff --git a/base/json/json_writer.cc b/base/json/json_writer.cc +index 376a459f9a46..cd020e7fa0c0 100644 +--- a/base/json/json_writer.cc ++++ b/base/json/json_writer.cc +@@ -179,6 +179,11 @@ bool JSONWriter::BuildJSONString(const Value& node, size_t depth) { + // Successful only if we're allowed to omit it. + DLOG_IF(ERROR, !omit_binary_values_) << "Cannot serialize binary value."; + return omit_binary_values_; ++ ++ // TODO(crbug.com/859477): Remove after root cause is found. ++ case Value::Type::DEAD: ++ CHECK(false); ++ return false; + } + + // TODO(crbug.com/859477): Revert to NOTREACHED() after root cause is found. +diff --git a/base/values.cc b/base/values.cc +index 0c002551b317..035aa2350cde 100644 +--- a/base/values.cc ++++ b/base/values.cc +@@ -90,8 +90,6 @@ std::unique_ptr CopyWithoutEmptyChildren(const Value& node) { + + } // namespace + +-constexpr uint16_t Value::kMagicIsAlive; +- + // static + std::unique_ptr Value::CreateWithCopiedBuffer(const char* buffer, + size_t size) { +@@ -112,9 +110,9 @@ Value::Value(Value&& that) noexcept { + InternalMoveConstructFrom(std::move(that)); + } + +-Value::Value() noexcept : type_(Type::NONE), is_alive_(kMagicIsAlive) {} ++Value::Value() noexcept : type_(Type::NONE) {} + +-Value::Value(Type type) : type_(type), is_alive_(kMagicIsAlive) { ++Value::Value(Type type) : type_(type) { + // Initialize with the default value. + switch (type_) { + case Type::NONE: +@@ -141,22 +139,26 @@ Value::Value(Type type) : type_(type), is_alive_(kMagicIsAlive) { + case Type::LIST: + new (&list_) ListStorage(); + return; ++ // TODO(crbug.com/859477): Remove after root cause is found. ++ case Type::DEAD: ++ CHECK(false); ++ return; + } ++ ++ // TODO(crbug.com/859477): Revert to NOTREACHED() after root cause is found. ++ CHECK(false); + } + + Value::Value(bool in_bool) + : bool_type_(Type::BOOLEAN), +- bool_is_alive_(kMagicIsAlive), + bool_value_(in_bool) {} + + Value::Value(int in_int) + : int_type_(Type::INTEGER), +- int_is_alive_(kMagicIsAlive), + int_value_(in_int) {} + + Value::Value(double in_double) + : double_type_(Type::DOUBLE), +- double_is_alive_(kMagicIsAlive), + double_value_(in_double) { + if (!std::isfinite(double_value_)) { + NOTREACHED() << "Non-finite (i.e. NaN or positive/negative infinity) " +@@ -171,7 +173,6 @@ Value::Value(StringPiece in_string) : Value(std::string(in_string)) {} + + Value::Value(std::string&& in_string) noexcept + : string_type_(Type::STRING), +- string_is_alive_(kMagicIsAlive), + string_value_(std::move(in_string)) { + DCHECK(IsStringUTF8(string_value_)); + } +@@ -182,21 +183,18 @@ Value::Value(StringPiece16 in_string16) : Value(UTF16ToUTF8(in_string16)) {} + + Value::Value(const std::vector& in_blob) + : binary_type_(Type::BINARY), +- binary_is_alive_(kMagicIsAlive), + binary_value_(in_blob.begin(), in_blob.end()) {} + + Value::Value(base::span in_blob) + : binary_type_(Type::BINARY), +- binary_is_alive_(kMagicIsAlive), + binary_value_(in_blob.begin(), in_blob.end()) {} + + Value::Value(BlobStorage&& in_blob) noexcept + : binary_type_(Type::BINARY), +- binary_is_alive_(kMagicIsAlive), + binary_value_(std::move(in_blob)) {} + + Value::Value(const DictStorage& in_dict) +- : dict_type_(Type::DICTIONARY), dict_is_alive_(kMagicIsAlive), dict_() { ++ : dict_type_(Type::DICTIONARY), dict_() { + dict_.reserve(in_dict.size()); + for (const auto& it : in_dict) { + dict_.try_emplace(dict_.end(), it.first, +@@ -206,11 +204,9 @@ Value::Value(const DictStorage& in_dict) + + Value::Value(DictStorage&& in_dict) noexcept + : dict_type_(Type::DICTIONARY), +- dict_is_alive_(kMagicIsAlive), + dict_(std::move(in_dict)) {} + +-Value::Value(const ListStorage& in_list) +- : list_type_(Type::LIST), list_is_alive_(kMagicIsAlive), list_() { ++Value::Value(const ListStorage& in_list) : list_type_(Type::LIST), list_() { + list_.reserve(in_list.size()); + for (const auto& val : in_list) + list_.emplace_back(val.Clone()); +@@ -218,7 +214,6 @@ Value::Value(const ListStorage& in_list) + + Value::Value(ListStorage&& in_list) noexcept + : list_type_(Type::LIST), +- list_is_alive_(kMagicIsAlive), + list_(std::move(in_list)) {} + + Value& Value::operator=(Value&& that) noexcept { +@@ -246,15 +241,21 @@ Value Value::Clone() const { + return Value(dict_); + case Type::LIST: + return Value(list_); ++ // TODO(crbug.com/859477): Remove after root cause is found. ++ case Type::DEAD: ++ CHECK(false); ++ return Value(); + } + +- NOTREACHED(); ++ // TODO(crbug.com/859477): Revert to NOTREACHED() after root cause is found. ++ CHECK(false); + return Value(); + } + + Value::~Value() { + InternalCleanup(); +- is_alive_ = 0; ++ // TODO(crbug.com/859477): Remove after root cause is found. ++ type_ = Type::DEAD; + } + + // static +@@ -654,9 +655,14 @@ bool operator==(const Value& lhs, const Value& rhs) { + }); + case Value::Type::LIST: + return lhs.list_ == rhs.list_; ++ // TODO(crbug.com/859477): Remove after root cause is found. ++ case Value::Type::DEAD: ++ CHECK(false); ++ return false; + } + +- NOTREACHED(); ++ // TODO(crbug.com/859477): Revert to NOTREACHED() after root cause is found. ++ CHECK(false); + return false; + } + +@@ -693,9 +699,14 @@ bool operator<(const Value& lhs, const Value& rhs) { + }); + case Value::Type::LIST: + return lhs.list_ < rhs.list_; ++ // TODO(crbug.com/859477): Remove after root cause is found. ++ case Value::Type::DEAD: ++ CHECK(false); ++ return false; + } + +- NOTREACHED(); ++ // TODO(crbug.com/859477): Revert to NOTREACHED() after root cause is found. ++ CHECK(false); + return false; + } + +@@ -733,7 +744,6 @@ size_t Value::EstimateMemoryUsage() const { + + void Value::InternalMoveConstructFrom(Value&& that) { + type_ = that.type_; +- is_alive_ = that.is_alive_; + + switch (type_) { + case Type::NONE: +@@ -759,12 +769,17 @@ void Value::InternalMoveConstructFrom(Value&& that) { + case Type::LIST: + new (&list_) ListStorage(std::move(that.list_)); + return; ++ // TODO(crbug.com/859477): Remove after root cause is found. ++ case Type::DEAD: ++ CHECK(false); ++ return; + } ++ ++ // TODO(crbug.com/859477): Revert to NOTREACHED() after root cause is found. ++ CHECK(false); + } + + void Value::InternalCleanup() { +- CHECK_EQ(is_alive_, kMagicIsAlive); +- + switch (type_) { + case Type::NONE: + case Type::BOOLEAN: +@@ -785,7 +800,14 @@ void Value::InternalCleanup() { + case Type::LIST: + list_.~ListStorage(); + return; ++ // TODO(crbug.com/859477): Remove after root cause is found. ++ case Type::DEAD: ++ CHECK(false); ++ return; + } ++ ++ // TODO(crbug.com/859477): Revert to NOTREACHED() after root cause is found. ++ CHECK(false); + } + + ///////////////////// DictionaryValue //////////////////// +diff --git a/base/values.h b/base/values.h +index 429ef1dfdebd..e31cadd83102 100644 +--- a/base/values.h ++++ b/base/values.h +@@ -92,7 +92,9 @@ class BASE_EXPORT Value { + STRING, + BINARY, + DICTIONARY, +- LIST ++ LIST, ++ // TODO(crbug.com/859477): Remove once root cause is found. ++ DEAD + // Note: Do not add more types. See the file-level comment above for why. + }; + +@@ -375,10 +377,6 @@ class BASE_EXPORT Value { + size_t EstimateMemoryUsage() const; + + protected: +- // Magic IsAlive signature to debug double frees. +- // TODO(crbug.com/859477): Remove once root cause is found. +- static constexpr uint16_t kMagicIsAlive = 0x2f19; +- + // Technical note: + // The naive way to implement a tagged union leads to wasted bytes + // in the object on CPUs like ARM ones, which impose an 8-byte alignment +@@ -408,8 +406,8 @@ class BASE_EXPORT Value { + // that |double_value_| below is always located at an offset that is a + // multiple of 8, relative to the start of the overall data structure. + // +- // Each struct must declare its own |type_| and |is_alive_| field, which +- // must have a different name, to appease the C++ compiler. ++ // Each struct must declare its own |type_| field, which must have a different ++ // name, to appease the C++ compiler. + // + // Using this technique sizeof(base::Value) == 16 on 32-bit ARM instead + // of 24, without losing any information. Results are unchanged for x86, +@@ -419,24 +417,17 @@ class BASE_EXPORT Value { + // TODO(crbug.com/646113): Make these private once DictionaryValue and + // ListValue are properly inlined. + Type type_ : 8; +- +- // IsAlive member to debug double frees. +- // TODO(crbug.com/859477): Remove once root cause is found. +- uint16_t is_alive_ = kMagicIsAlive; + }; + struct { + Type bool_type_ : 8; +- uint16_t bool_is_alive_; + bool bool_value_; + }; + struct { + Type int_type_ : 8; +- uint16_t int_is_alive_; + int int_value_; + }; + struct { + Type double_type_ : 8; +- uint16_t double_is_alive_; + // Subtle: On architectures that require it, the compiler will ensure + // that |double_value_|'s offset is a multiple of 8 (e.g. 32-bit ARM). + // See technical note above to understand why it is important. +@@ -444,22 +435,18 @@ class BASE_EXPORT Value { + }; + struct { + Type string_type_ : 8; +- uint16_t string_is_alive_; + std::string string_value_; + }; + struct { + Type binary_type_ : 8; +- uint16_t binary_is_alive_; + BlobStorage binary_value_; + }; + struct { + Type dict_type_ : 8; +- uint16_t dict_is_alive_; + DictStorage dict_; + }; + struct { + Type list_type_ : 8; +- uint16_t list_is_alive_; + ListStorage list_; + }; + }; +diff --git a/base/values_unittest.cc b/base/values_unittest.cc +index 0a641bcc7ef4..b23fd8332491 100644 +--- a/base/values_unittest.cc ++++ b/base/values_unittest.cc +@@ -20,17 +20,20 @@ + #include "base/strings/string16.h" + #include "base/strings/string_piece.h" + #include "base/strings/utf_string_conversions.h" ++#include "build/build_config.h" + #include "testing/gmock/include/gmock/gmock.h" + #include "testing/gtest/include/gtest/gtest.h" + + namespace base { + ++// Test is currently incorrect on Windows x86. ++#if !defined(OS_WIN) || !defined(ARCH_CPU_X86) + TEST(ValuesTest, SizeOfValue) { + // Ensure that base::Value is as small as possible, i.e. that there is + // no wasted space after the inner value due to alignment constraints. +- // Distinguish between the 'header' that includes |type_| and |is_alive_| +- // and the inner value that follows it, which can be a bool, int, double, +- // string, blob, list or dict. ++ // Distinguish between the 'header' that includes |type_| and and the inner ++ // value that follows it, which can be a bool, int, double, string, blob, list ++ // or dict. + #define INNER_TYPES_LIST(X) \ + X(bool, bool_value_) \ + X(int, int_value_) \ +@@ -61,6 +64,7 @@ TEST(ValuesTest, SizeOfValue) { + LOG(INFO) << "max_inner_struct_limit=" << max_inner_struct_limit; + } + } ++#endif + + TEST(ValuesTest, TestNothrow) { + static_assert(std::is_nothrow_move_constructible::value, +diff --git a/chrome/browser/ui/cocoa/applescript/apple_event_util.mm b/chrome/browser/ui/cocoa/applescript/apple_event_util.mm +index 16d685607ced..25a59338ee73 100644 +--- a/chrome/browser/ui/cocoa/applescript/apple_event_util.mm ++++ b/chrome/browser/ui/cocoa/applescript/apple_event_util.mm +@@ -96,6 +96,16 @@ NSAppleEventDescriptor* ValueToAppleEventDescriptor(const base::Value* value) { + } + break; + } ++ ++ // TODO(crbug.com/859477): Remove after root cause is found. ++ case base::Value::Type::DEAD: ++ CHECK(false); ++ break; ++ ++ // TODO(crbug.com/859477): Remove after root cause is found. ++ default: ++ CHECK(false); ++ break; + } + + return descriptor; +diff --git a/chromeos/network/onc/variable_expander.cc b/chromeos/network/onc/variable_expander.cc +index fd72752c2aa6..cd5bbb238eb3 100644 +--- a/chromeos/network/onc/variable_expander.cc ++++ b/chromeos/network/onc/variable_expander.cc +@@ -145,6 +145,12 @@ bool VariableExpander::ExpandValue(base::Value* value) const { + // Nothing to do here. + break; + } ++ ++ // TODO(crbug.com/859477): Remove after root cause is found. ++ case base::Value::Type::DEAD: { ++ CHECK(false); ++ break; ++ } + } + return no_error; + } +diff --git a/components/policy/core/browser/android/policy_converter.cc b/components/policy/core/browser/android/policy_converter.cc +index b711a64febc9..9d41ad0d1507 100644 +--- a/components/policy/core/browser/android/policy_converter.cc ++++ b/components/policy/core/browser/android/policy_converter.cc +@@ -175,10 +175,17 @@ std::unique_ptr PolicyConverter::ConvertValueToSchema( + } + return value; + } ++ ++ // TODO(crbug.com/859477): Remove after root cause is found. ++ case base::Value::Type::DEAD: { ++ CHECK(false); ++ return nullptr; ++ } + } + +- NOTREACHED(); +- return std::unique_ptr(); ++ // TODO(crbug.com/859477): Revert to NOTREACHED() after root cause is found. ++ CHECK(false); ++ return nullptr; + } + + void PolicyConverter::SetPolicyValue(const std::string& key, +diff --git a/components/policy/core/common/policy_loader_win_unittest.cc b/components/policy/core/common/policy_loader_win_unittest.cc +index 311e7fb122fc..0377307c5e28 100644 +--- a/components/policy/core/common/policy_loader_win_unittest.cc ++++ b/components/policy/core/common/policy_loader_win_unittest.cc +@@ -133,8 +133,14 @@ bool InstallValue(const base::Value& value, + + case base::Value::Type::BINARY: + return false; ++ ++ // TODO(crbug.com/859477): Remove after root cause is found. ++ case base::Value::Type::DEAD: ++ CHECK(false); ++ return false; + } +- NOTREACHED(); ++ // TODO(crbug.com/859477): Revert to NOTREACHED() after root cause is found. ++ CHECK(false); + return false; + } + +diff --git a/components/policy/core/common/policy_test_utils.cc b/components/policy/core/common/policy_test_utils.cc +index 5af98b47275c..919f004153ec 100644 +--- a/components/policy/core/common/policy_test_utils.cc ++++ b/components/policy/core/common/policy_test_utils.cc +@@ -137,6 +137,11 @@ CFPropertyListRef ValueToProperty(const base::Value& value) { + // because there's no equivalent JSON type, and policy values can only + // take valid JSON values. + break; ++ ++ // TODO(crbug.com/859477): Remove after root cause is found. ++ case base::Value::Type::DEAD: ++ CHECK(false); ++ break; + } + + return NULL; +diff --git a/components/policy/core/common/registry_dict.cc b/components/policy/core/common/registry_dict.cc +index f3ed372bdcb3..696ba7e04abe 100644 +--- a/components/policy/core/common/registry_dict.cc ++++ b/components/policy/core/common/registry_dict.cc +@@ -135,6 +135,10 @@ std::unique_ptr ConvertRegistryValue(const base::Value& value, + case base::Value::Type::BINARY: + // No conversion possible. + break; ++ // TODO(crbug.com/859477): Remove after root cause is found. ++ case base::Value::Type::DEAD: ++ CHECK(false); ++ return nullptr; + } + + LOG(WARNING) << "Failed to convert " << value.type() << " to " +diff --git a/content/browser/android/java/gin_java_script_to_java_types_coercion.cc b/content/browser/android/java/gin_java_script_to_java_types_coercion.cc +index dabd66ba8c72..84fd5489a414 100644 +--- a/content/browser/android/java/gin_java_script_to_java_types_coercion.cc ++++ b/content/browser/android/java/gin_java_script_to_java_types_coercion.cc +@@ -722,8 +722,14 @@ jvalue CoerceJavaScriptValueToJavaValue(JNIEnv* env, + case base::Value::Type::BINARY: + return CoerceGinJavaBridgeValueToJavaValue( + env, value, target_type, coerce_to_string, object_refs, error); ++ // TODO(crbug.com/859477): Remove after root cause is found. ++ case base::Value::Type::DEAD: ++ CHECK(false); ++ return jvalue(); + } +- NOTREACHED(); ++ ++ // TODO(crbug.com/859477): Revert to NOTREACHED() after root cause is found. ++ CHECK(false); + return jvalue(); + } + +diff --git a/ipc/ipc_message_utils.cc b/ipc/ipc_message_utils.cc +index ec04c77c6c18..df6ec39bd663 100644 +--- a/ipc/ipc_message_utils.cc ++++ b/ipc/ipc_message_utils.cc +@@ -92,7 +92,7 @@ void WriteValue(base::Pickle* m, const base::Value* value, int recursion) { + + switch (value->type()) { + case base::Value::Type::NONE: +- break; ++ break; + case base::Value::Type::BOOLEAN: { + bool val; + result = value->GetAsBoolean(&val); +@@ -147,6 +147,11 @@ void WriteValue(base::Pickle* m, const base::Value* value, int recursion) { + } + break; + } ++ ++ // TODO(crbug.com/859477): Remove after root cause is found. ++ default: ++ CHECK(false); ++ break; + } + } + +@@ -260,7 +265,9 @@ bool ReadValue(const base::Pickle* m, + break; + } + default: +- return false; ++ // TODO(crbug.com/859477): Remove after root cause is found. ++ CHECK(false); ++ return false; + } + + return true; +diff --git a/mojo/public/cpp/base/values_mojom_traits.h b/mojo/public/cpp/base/values_mojom_traits.h +index cdb9bbbd94df..66752b7c90d8 100644 +--- a/mojo/public/cpp/base/values_mojom_traits.h ++++ b/mojo/public/cpp/base/values_mojom_traits.h +@@ -86,8 +86,13 @@ struct COMPONENT_EXPORT(MOJO_BASE_SHARED_TRAITS) + return mojo_base::mojom::ValueDataView::Tag::DICTIONARY_VALUE; + case base::Value::Type::LIST: + return mojo_base::mojom::ValueDataView::Tag::LIST_VALUE; ++ // TODO(crbug.com/859477): Remove after root cause is found. ++ case base::Value::Type::DEAD: ++ CHECK(false); ++ return mojo_base::mojom::ValueDataView::Tag::NULL_VALUE; + } +- NOTREACHED(); ++ // TODO(crbug.com/859477): Revert to NOTREACHED() after root cause is found. ++ CHECK(false); + return mojo_base::mojom::ValueDataView::Tag::NULL_VALUE; + } + +diff --git a/ppapi/shared_impl/private/ppb_x509_certificate_private_shared.cc b/ppapi/shared_impl/private/ppb_x509_certificate_private_shared.cc +index 6ffff36337e0..7f392d50f718 100644 +--- a/ppapi/shared_impl/private/ppb_x509_certificate_private_shared.cc ++++ b/ppapi/shared_impl/private/ppb_x509_certificate_private_shared.cc +@@ -73,6 +73,8 @@ PP_Var PPB_X509Certificate_Fields::GetFieldAsPPVar( + } + case base::Value::Type::DICTIONARY: + case base::Value::Type::LIST: ++ // TODO(crbug.com/859477): Remove after root cause is found. ++ case base::Value::Type::DEAD: + // Not handled. + break; + } +-- +2.21.0 + diff --git a/chromium-74.0.3729.169-glibc-2.29-clone-vfork.patch b/chromium-74.0.3729.169-glibc-2.29-clone-vfork.patch new file mode 100644 index 0000000..0c9a5d1 --- /dev/null +++ b/chromium-74.0.3729.169-glibc-2.29-clone-vfork.patch @@ -0,0 +1,50 @@ +diff -up chromium-74.0.3729.169/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc.glibc229 chromium-74.0.3729.169/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc +--- chromium-74.0.3729.169/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc.glibc229 2019-05-31 13:45:04.165403187 -0400 ++++ chromium-74.0.3729.169/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc 2019-05-31 13:45:38.200830150 -0400 +@@ -162,6 +162,15 @@ ResultExpr EvaluateSyscallImpl(int fs_de + } + #endif + ++#if defined(__NR_vfork) ++ // vfork() is almost never used as a system call, but some libc versions (e.g. ++ // older versions of bionic) might use it in a posix_spawn() implementation, ++ // which is used by system(); ++ if (sysno == __NR_vfork) { ++ return Error(EPERM); ++ } ++#endif ++ + if (sysno == __NR_futex) + return RestrictFutex(); + +diff -up chromium-74.0.3729.169/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc.glibc229 chromium-74.0.3729.169/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc +--- chromium-74.0.3729.169/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc.glibc229 2019-05-31 13:45:54.653553140 -0400 ++++ chromium-74.0.3729.169/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc 2019-05-31 13:47:19.357675791 -0400 +@@ -134,7 +134,8 @@ namespace sandbox { + #if !defined(OS_NACL_NONSFI) + // Allow Glibc's and Android pthread creation flags, crash on any other + // thread creation attempts and EPERM attempts to use neither +-// CLONE_VM, nor CLONE_THREAD, which includes all fork() implementations. ++// CLONE_VM nor CLONE_THREAD (all fork implementations), unless CLONE_VFORK is ++// present (as in newer versions of posix_spawn). + ResultExpr RestrictCloneToThreadsAndEPERMFork() { + const Arg flags(0); + +@@ -153,8 +154,16 @@ ResultExpr RestrictCloneToThreadsAndEPER + AnyOf(flags == kAndroidCloneMask, flags == kObsoleteAndroidCloneMask, + flags == kGlibcPthreadFlags); + ++ // The following two flags are the two important flags in any vfork-emulating ++ // clone call. EPERM any clone call that contains both of them. ++ const uint64_t kImportantCloneVforkFlags = CLONE_VFORK | CLONE_VM; ++ ++ const BoolExpr is_fork_or_clone_vfork = ++ AnyOf((flags & (CLONE_VM | CLONE_THREAD)) == 0, ++ (flags & kImportantCloneVforkFlags) == kImportantCloneVforkFlags); ++ + return If(IsAndroid() ? android_test : glibc_test, Allow()) +- .ElseIf((flags & (CLONE_VM | CLONE_THREAD)) == 0, Error(EPERM)) ++ .ElseIf(is_fork_or_clone_vfork, Error(EPERM)) + .Else(CrashSIGSYSClone()); + } + diff --git a/chromium-widevine-other-locations.patch b/chromium-widevine-other-locations.patch new file mode 100644 index 0000000..0460180 --- /dev/null +++ b/chromium-widevine-other-locations.patch @@ -0,0 +1,23 @@ +Description: try alternative locations for libwidevinecdm.so: + - $HOME/.local/lib/ (snap-friendly, see https://launchpad.net/bugs/1738149) + - /opt/google/chrome/ (installed by official google chrome package) +Author: Olivier Tilloy + +--- a/chrome/common/chrome_paths.cc ++++ b/chrome/common/chrome_paths.cc +@@ -377,6 +377,15 @@ bool PathProvider(int key, base::FilePat + // TODO(crbug.com/663554): Remove this after component updated CDM is + // supported on Linux and ChromeOS. + case chrome::FILE_WIDEVINE_CDM: ++ base::PathService::Get(base::DIR_HOME, &cur); ++ cur = cur.Append(FILE_PATH_LITERAL(".local/lib/libwidevinecdm.so")); ++ if (base::PathExists(cur)) { ++ break; ++ } ++ if (base::PathExists(base::FilePath(FILE_PATH_LITERAL("/opt/google/chrome/libwidevinecdm.so")))) { ++ cur = base::FilePath(FILE_PATH_LITERAL("/opt/google/chrome/libwidevinecdm.so")); ++ break; ++ } + if (!GetComponentDirectory(&cur)) + return false; + cur = diff --git a/chromium.spec b/chromium.spec index aa1e24a..886e509 100644 --- a/chromium.spec +++ b/chromium.spec @@ -51,9 +51,9 @@ %global __provides_exclude_from %{chromium_path}/.*\\.so|%{chromium_path}/lib/.*\\.so|%{chromium_path}/lib/.*\\.so.* %if 0%{?rhel} == 7 -%global privlibs libEGL|libGLESv2|libVkICD_mock_icd|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_threading|libVkLayer_unique_objects|libaccessibility|libandroid_mojo_bindings_shared|libanimation|libapdu|libaura|libaura_extra|libbase|libbase_i18n|libbindings|libbindings_base|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core|libblink_core_mojo_bindings_shared|libblink_embedded_frame_sink_mojo_bindings_shared|libblink_modules|libblink_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcatalog_lib|libcbor|libcc|libcc_animation|libcc_base|libcc_debug|libcc_mojo_embedder|libcc_paint|libcdm_manager|libcertificate_matching|libchrome_features|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom|libcontent_service_mojom_shared|libcrash_key|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevice_vr|libdevice_vr_mojo_bindings|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevices|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libembedder|libembedder_switches|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libextras|libfido|libfingerprint|libfreetype_harfbuzz|libgamepad_mojom|libgamepad_mojom_blink|libgamepad_mojom_shared|libgamepad_shared_typemap_traits|libgcm|libgeometry|libgeometry_skia|libgesture_detection|libgfx|libgfx_ipc|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_switches|libgfx_x11|libgin|libgl_in_process_context|libgl_init|libgl_wrapper|libgles2|libgles2_implementation|libgles2_utils|libgpu|libgpu_ipc_service|libgtkui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc|libipc_mojom|libipc_mojom_shared|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|liblearning_common|liblearning_impl|libleveldatabase|liblive_tab_count_metrics|libmanager|libmedia_blink|libmedia_gpu|libmedia_mojo_services|libmedia_session_cpp|libmedia_webrtc|libmemory_instrumentation|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirclient.so.9|libmirclient.so.9.TOC|libmirroring_service|libmojo_base_lib|libmojo_base_mojom|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_shared_typemap_traits|libmojo_core_embedder|libmojo_core_embedder_internal|libmojo_core_ports|libmojo_cpp_platform|libmojo_ime_lib|libmojo_mojom_bindings|libmojo_mojom_bindings_shared|libmojo_public_system|libmojo_public_system_cpp|libmojom_core_shared|libmojom_modules_shared|libmojom_platform_shared|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp|libnetwork_cpp_base|libnetwork_service|libnetwork_session_configurator|libonc|libos_crypt|libperfetto|libplatform|libplatform_window_handler_libs|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp|libresource_coordinator_cpp_base|libresource_coordinator_cpp_features|libresource_coordinator_public_mojom|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libsandbox|libsandbox_services|libscheduling_metrics|libseccomp_bpf|libservice|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom|libservice_manager_mojom_blink|libservice_manager_mojom_constants|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_shared|libservice_manager_mojom_traits|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libspeech_recognition_error_code_mojom|libspeech_recognition_error_code_mojom_blink|libspeech_recognition_error_code_mojom_shared|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libtracing_cpp|libtracing_mojom|libtracing_mojom_shared|libui_accessibility_ax_mojom|libui_accessibility_ax_mojom_blink|libui_accessibility_ax_mojom_shared|libui_base|libui_base_clipboard|libui_base_clipboard_types|libui_base_ime|libui_base_ime_linux|libui_base_ime_types|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl|liburl_ipc|liburl_matcher|libusb_shared|libuser_manager|libuser_prefs|libv8|libv8_libbase|libv8_libplatform|libviews|libviz_common|libviz_resource_format_utils|libviz_vulkan_context_provider|libvr_base|libvr_common|libvr_ui|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libweb_dialogs|libweb_feature_mojo_bindings_mojom|libweb_feature_mojo_bindings_mojom_blink|libweb_feature_mojo_bindings_mojom_shared|libwebdata_common|libwebgpu|libwebview|libwm|libwm_public|libwtf|libx11_events_platform|libx11_window|libzygote|libmedia|libffmpeg|libfontconfig +%global privlibs libEGL|libGLESv2|libVkICD_mock_icd|libVkLayer_core_validation|libVkLayer_object_lifetimes|libVkLayer_stateless_validation|libVkLayer_thread_safety|libVkLayer_unique_objects|libaccessibility|libandroid_mojo_bindings_shared|libanimation|libapdu|libaura|libaura_extra|libbase|libbase_i18n|libbindings|libbindings_base|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core|libblink_core_mojo_bindings_shared|libblink_embedded_frame_sink_mojo_bindings_shared|libblink_modules|libblink_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcbor|libcc|libcc_animation|libcc_base|libcc_debug|libcc_mojo_embedder|libcc_paint|libcdm_manager|libcertificate_matching|libchrome_features|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom|libcontent_service_mojom_shared|libcrash_key|libcrcrypto|libdbus|libdbus_thread_linux|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevice_vr|libdevice_vr_mojo_bindings|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevices|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libembedder|libembedder_switches|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libextras|libfido|libfingerprint|libfreetype_harfbuzz|libgamepad_mojom|libgamepad_mojom_blink|libgamepad_mojom_shared|libgamepad_shared_typemap_traits|libgcm|libgeometry|libgeometry_skia|libgesture_detection|libgfx|libgfx_ipc|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_switches|libgfx_x11|libgin|libgl_in_process_context|libgl_init|libgl_wrapper|libgles2|libgles2_implementation|libgles2_utils|libgpu|libgpu_ipc_service|libgtkui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc|libipc_mojom|libipc_mojom_shared|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|liblearning_common|liblearning_impl|libleveldatabase|liblive_tab_count_metrics|libmanager|libmedia_blink|libmedia_filters_jpeg_parser|libmedia_gpu|libmedia_mojo_services|libmedia_session_cpp|libmedia_webrtc|libmemory_instrumentation|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirclient.so.9|libmirroring_service|libmojo_base_lib|libmojo_base_mojom|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_shared_typemap_traits|libmojo_core_embedder|libmojo_core_embedder_internal|libmojo_core_ports|libmojo_cpp_platform|libmojo_ime_lib|libmojo_mojom_bindings|libmojo_mojom_bindings_shared|libmojo_public_system|libmojo_public_system_cpp|libmojom_core_shared|libmojom_mhtml_load_result_shared|libmojom_modules_shared|libmojom_platform_shared|libmpris|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp|libnetwork_cpp_base|libnetwork_service|libnetwork_session_configurator|libonc|libos_crypt|libperfetto|libplatform|libplatform_window_handler_libs|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp_base|libresource_coordinator_cpp_features|libresource_coordinator_public_mojom|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libsandbox|libsandbox_services|libscheduling_metrics|libseccomp_bpf|libservice|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom|libservice_manager_mojom_blink|libservice_manager_mojom_constants|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_shared|libservice_manager_mojom_traits|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libspeech_recognition_error_code_mojom|libspeech_recognition_error_code_mojom_blink|libspeech_recognition_error_code_mojom_shared|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libtracing_cpp|libtracing_mojom|libtracing_mojom_shared|libui_accessibility_ax_mojom|libui_accessibility_ax_mojom_blink|libui_accessibility_ax_mojom_shared|libui_base|libui_base_clipboard|libui_base_clipboard_types|libui_base_features|libui_base_ime|libui_base_ime_linux|libui_base_ime_types|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl|liburl_ipc|liburl_matcher|libusb_shared|libuser_manager|libuser_prefs|libv8|libv8_libbase|libv8_libplatform|libviews|libviz_common|libviz_resource_format_utils|libviz_vulkan_context_provider|libvr_base|libvr_common|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libweb_dialogs|libweb_feature_mojo_bindings_mojom|libweb_feature_mojo_bindings_mojom_blink|libweb_feature_mojo_bindings_mojom_shared|libwebdata_common|libwebgpu|libwebview|libwm|libwm_public|libwtf|libx11_events_platform|libx11_window|libzygote|libmedia|libffmpeg|libfontconfig %else -%global privlibs libEGL|libGLESv2|libVkICD_mock_icd|libVkLayer_core_validation|libVkLayer_object_tracker|libVkLayer_parameter_validation|libVkLayer_threading|libVkLayer_unique_objects|libaccessibility|libandroid_mojo_bindings_shared|libanimation|libapdu|libaura|libaura_extra|libbase|libbase_i18n|libbindings|libbindings_base|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core|libblink_core_mojo_bindings_shared|libblink_embedded_frame_sink_mojo_bindings_shared|libblink_modules|libblink_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcatalog_lib|libcbor|libcc|libcc_animation|libcc_base|libcc_debug|libcc_mojo_embedder|libcc_paint|libcdm_manager|libcertificate_matching|libchrome_features|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom|libcontent_service_mojom_shared|libcrash_key|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevice_vr|libdevice_vr_mojo_bindings|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevices|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libembedder|libembedder_switches|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libextras|libfido|libfingerprint|libfreetype_harfbuzz|libgamepad_mojom|libgamepad_mojom_blink|libgamepad_mojom_shared|libgamepad_shared_typemap_traits|libgcm|libgeometry|libgeometry_skia|libgesture_detection|libgfx|libgfx_ipc|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_switches|libgfx_x11|libgin|libgl_in_process_context|libgl_init|libgl_wrapper|libgles2|libgles2_implementation|libgles2_utils|libgpu|libgpu_ipc_service|libgtkui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc|libipc_mojom|libipc_mojom_shared|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|liblearning_common|liblearning_impl|libleveldatabase|liblive_tab_count_metrics|libmanager|libmedia_blink|libmedia_gpu|libmedia_mojo_services|libmedia_session_cpp|libmedia_webrtc|libmemory_instrumentation|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirclient.so.9|libmirclient.so.9.TOC|libmirroring_service|libmojo_base_lib|libmojo_base_mojom|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_shared_typemap_traits|libmojo_core_embedder|libmojo_core_embedder_internal|libmojo_core_ports|libmojo_cpp_platform|libmojo_ime_lib|libmojo_mojom_bindings|libmojo_mojom_bindings_shared|libmojo_public_system|libmojo_public_system_cpp|libmojom_core_shared|libmojom_modules_shared|libmojom_platform_shared|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp|libnetwork_cpp_base|libnetwork_service|libnetwork_session_configurator|libonc|libos_crypt|libperfetto|libplatform|libplatform_window_handler_libs|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp|libresource_coordinator_cpp_base|libresource_coordinator_cpp_features|libresource_coordinator_public_mojom|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libsandbox|libsandbox_services|libscheduling_metrics|libseccomp_bpf|libservice|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom|libservice_manager_mojom_blink|libservice_manager_mojom_constants|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_shared|libservice_manager_mojom_traits|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libspeech_recognition_error_code_mojom|libspeech_recognition_error_code_mojom_blink|libspeech_recognition_error_code_mojom_shared|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libtracing_cpp|libtracing_mojom|libtracing_mojom_shared|libui_accessibility_ax_mojom|libui_accessibility_ax_mojom_blink|libui_accessibility_ax_mojom_shared|libui_base|libui_base_clipboard|libui_base_clipboard_types|libui_base_ime|libui_base_ime_linux|libui_base_ime_types|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl|liburl_ipc|liburl_matcher|libusb_shared|libuser_manager|libuser_prefs|libv8|libv8_libbase|libv8_libplatform|libviews|libviz_common|libviz_resource_format_utils|libviz_vulkan_context_provider|libvr_base|libvr_common|libvr_ui|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libweb_dialogs|libweb_feature_mojo_bindings_mojom|libweb_feature_mojo_bindings_mojom_blink|libweb_feature_mojo_bindings_mojom_shared|libwebdata_common|libwebgpu|libwebview|libwm|libwm_public|libwtf|libx11_events_platform|libx11_window|libzygote|libmedia|libffmpeg +%global privlibs libEGL|libGLESv2|libVkICD_mock_icd|libVkLayer_core_validation|libVkLayer_object_lifetimes|libVkLayer_stateless_validation|libVkLayer_thread_safety|libVkLayer_unique_objects|libaccessibility|libandroid_mojo_bindings_shared|libanimation|libapdu|libaura|libaura_extra|libbase|libbase_i18n|libbindings|libbindings_base|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core|libblink_core_mojo_bindings_shared|libblink_embedded_frame_sink_mojo_bindings_shared|libblink_modules|libblink_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcbor|libcc|libcc_animation|libcc_base|libcc_debug|libcc_mojo_embedder|libcc_paint|libcdm_manager|libcertificate_matching|libchrome_features|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom|libcontent_service_mojom_shared|libcrash_key|libcrcrypto|libdbus|libdbus_thread_linux|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevice_vr|libdevice_vr_mojo_bindings|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevices|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libembedder|libembedder_switches|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libextras|libfido|libfingerprint|libfreetype_harfbuzz|libgamepad_mojom|libgamepad_mojom_blink|libgamepad_mojom_shared|libgamepad_shared_typemap_traits|libgcm|libgeometry|libgeometry_skia|libgesture_detection|libgfx|libgfx_ipc|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_switches|libgfx_x11|libgin|libgl_in_process_context|libgl_init|libgl_wrapper|libgles2|libgles2_implementation|libgles2_utils|libgpu|libgpu_ipc_service|libgtkui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc|libipc_mojom|libipc_mojom_shared|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|liblearning_common|liblearning_impl|libleveldatabase|liblive_tab_count_metrics|libmanager|libmedia_blink|libmedia_filters_jpeg_parser|libmedia_gpu|libmedia_mojo_services|libmedia_session_cpp|libmedia_webrtc|libmemory_instrumentation|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirclient.so.9|libmirroring_service|libmojo_base_lib|libmojo_base_mojom|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_shared_typemap_traits|libmojo_core_embedder|libmojo_core_embedder_internal|libmojo_core_ports|libmojo_cpp_platform|libmojo_ime_lib|libmojo_mojom_bindings|libmojo_mojom_bindings_shared|libmojo_public_system|libmojo_public_system_cpp|libmojom_core_shared|libmojom_mhtml_load_result_shared|libmojom_modules_shared|libmojom_platform_shared|libmpris|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp|libnetwork_cpp_base|libnetwork_service|libnetwork_session_configurator|libonc|libos_crypt|libperfetto|libplatform|libplatform_window_handler_libs|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp_base|libresource_coordinator_cpp_features|libresource_coordinator_public_mojom|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libsandbox|libsandbox_services|libscheduling_metrics|libseccomp_bpf|libservice|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom|libservice_manager_mojom_blink|libservice_manager_mojom_constants|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_shared|libservice_manager_mojom_traits|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libspeech_recognition_error_code_mojom|libspeech_recognition_error_code_mojom_blink|libspeech_recognition_error_code_mojom_shared|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libtracing_cpp|libtracing_mojom|libtracing_mojom_shared|libui_accessibility_ax_mojom|libui_accessibility_ax_mojom_blink|libui_accessibility_ax_mojom_shared|libui_base|libui_base_clipboard|libui_base_clipboard_types|libui_base_features|libui_base_ime|libui_base_ime_linux|libui_base_ime_types|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl|liburl_ipc|liburl_matcher|libusb_shared|libuser_manager|libuser_prefs|libv8|libv8_libbase|libv8_libplatform|libviews|libviz_common|libviz_resource_format_utils|libviz_vulkan_context_provider|libvr_base|libvr_common|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libweb_dialogs|libweb_feature_mojo_bindings_mojom|libweb_feature_mojo_bindings_mojom_blink|libweb_feature_mojo_bindings_mojom_shared|libwebdata_common|libwebgpu|libwebview|libwm|libwm_public|libwtf|libx11_events_platform|libx11_window|libzygote|libmedia|libffmpeg %endif %global __requires_exclude ^(%{privlibs})\\.so* @@ -154,14 +154,14 @@ BuildRequires: libicu-devel >= 5.4 %global chromoting_client_id %nil %endif -%global majorversion 73 +%global majorversion 74 %if %{freeworld} Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3683.103 +Version: %{majorversion}.0.3729.169 Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home @@ -309,27 +309,30 @@ Patch122: chromium-73.0.3683.75-vaapi-i686-fpermissive.patch Patch124: chromium-71.0.3578.98-vaapi-libva1-compatibility.patch # drop rsp clobber, which breaks gcc9 (thanks to Jeff Law) Patch126: chromium-71.0.3578.98-gcc9-drop-rsp-clobber.patch -# Thank you Gentoo. -# -Patch128: chromium-73-gcc-0.patch -Patch129: chromium-73-gcc-1.patch -Patch130: chromium-73-gcc-2.patch -Patch131: chromium-73-gcc-3.patch -Patch132: chromium-73-gcc-4.patch -Patch133: chromium-73-gcc-5.patch -Patch134: chromium-73-gcc-6.patch +# Thanks Gentoo +Patch128: https://dev.gentoo.org/~floppym/dist/chromium-74-e1b1f3a.patch +Patch129: https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client/chromium/files/quiche-00f47df.patch +# Thanks Ubuntu +# Disable these two patches when v75 lands +Patch130: revert-gn-4980.patch +Patch131: revert-gn-4960.patch +# Try to load widevine from other places +Patch132: chromium-widevine-other-locations.patch +# Gentoo again! +# https://chromium.googlesource.com/chromium/src/+/7685422a90e1da829cb32d685a4b970d30738098 +Patch133: chromium-74-7685422.patch +Patch134: chromium-74-c2c467f.patch # Disable -fno-delete-null-pointer-checks Patch135: chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch # Add #include to get pipewire code to build Patch136: chromium-73.0.3683.75-pipewire-cstring-fix.patch -# Conditionalize header-hygiene flags for clang -Patch137: chromium-73.0.3683.75-no-header-hygiene.patch -# Add missing #include needed to build crashpad for aarch64 -Patch138: chromium-73.0.3683.75-aarch64-crashpad-limits.patch +# One more gentoo patch +# https://chromium-review.googlesource.com/c/chromium/src/+/1472716 +Patch137: chromium-74-2f28731.patch # el7 only patch Patch139: chromium-73.0.3683.75-el7-fix-noexcept.patch # https://bugs.chromium.org/p/chromium/issues/detail?id=949312 -Patch140: chromium-73.0.3683.103-glibc-2.29-clone-vfork.patch +Patch140: chromium-74.0.3729.169-glibc-2.29-clone-vfork.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ @@ -898,17 +901,16 @@ udev. %endif %patch124 -p1 -b .va1compat %patch126 -p1 -b .gcc9 -%patch128 -p1 -b .gentoogcc0 -%patch129 -p1 -b .gentoogcc1 -%patch130 -p1 -b .gentoogcc2 -%patch131 -p1 -b .gentoogcc3 -%patch132 -p1 -b .gentoogcc4 -%patch133 -p1 -b .gentoogcc5 -%patch134 -p1 -b .gentoogcc6 +%patch128 -p1 -b .gentoo2 +%patch129 -p1 -b .gentoo3 +%patch130 -p1 -b .revert-gn-4980 +%patch131 -p1 -b .revert-gn-4960 +%patch132 -p1 -b .widevine-other-locations +%patch133 -p1 -b .gentoo4 +%patch134 -p1 -b .gentoo5 %patch135 -p1 -b .disable-ndnpc %patch136 -p1 -b .cstring-fix -%patch137 -p1 -b .nohh -%patch138 -p1 -b .aarch64-limits +%patch137 -p1 -b .2f28731 %if 0%{?rhel} == 7 %patch139 -p1 -b .el7-noexcept %endif @@ -1198,8 +1200,10 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/crashpad/crashpad/third_party/zlib/' \ 'third_party/crc32c' \ 'third_party/cros_system_api' \ + 'third_party/dav1d' \ 'third_party/devscripts' \ 'third_party/dom_distiller_js' \ + 'third_party/emoji-segmenter' \ 'third_party/expat' \ 'third_party/ffmpeg' \ 'third_party/fips181' \ @@ -1212,6 +1216,9 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/google_input_tools/third_party/closure_library' \ 'third_party/google_input_tools/third_party/closure_library/third_party/closure' \ 'third_party/googletest' \ + 'third_party/glslang' \ + 'third_party/grpc' \ + 'third_party/grpc/src/third_party/nanopb' \ 'third_party/harfbuzz-ng' \ 'third_party/hunspell' \ 'third_party/iccjpeg' \ @@ -1901,6 +1908,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Fri May 31 2019 Tom Callaway - 74.0.3729.169-1 +- update to 74.0.3729.169 + * Thu Apr 11 2019 Tom Callaway - 73.0.3683.103-1 - update to 73.0.3683.103 - add CLONE_VFORK logic to seccomp filter for linux to handle glibc 2.29 change diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index aea5295..cc5390b 100755 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -117,6 +117,7 @@ header_files=" libavcodec/x86/inline_asm.h \ libavcodec/pcm_tablegen.h \ libavcodec/pixblockdsp.h \ libavcodec/pixels.h \ + libavcodec/png.h \ libavcodec/put_bits.h \ libavcodec/qpeldsp.h \ libavcodec/ratecontrol.h \ diff --git a/quiche-00f47df.patch b/quiche-00f47df.patch new file mode 100644 index 0000000..720edf9 --- /dev/null +++ b/quiche-00f47df.patch @@ -0,0 +1,38 @@ +From 00f47df999c9b19e80fdc01db0ae9ca1b6a12b3a Mon Sep 17 00:00:00 2001 +From: vasilvv +Date: Wed, 3 Apr 2019 13:58:53 -0700 +Subject: [PATCH] GCC: do not delete move constructor of QuicStreamSendBuffer +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +QuicStreamSendBuffer constructor is implicitely required in the +initialization of the vector of substreams in QuicCryptoStream. +Though clang apparently ignores that, GCC fails to build. + +BUG=chromium:819294 + +Originally submitted by José Dapena Paz at https://quiche-review.googlesource.com/c/quiche/+/2420 + +PiperOrigin-RevId: 241800134 +Change-Id: I4e3c97d6e5895d85340e8c1b740e6196d9104066 +--- + quic/core/quic_stream_send_buffer.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/quic/core/quic_stream_send_buffer.h b/quic/core/quic_stream_send_buffer.h +index e34514b..74e9d0d 100644 +--- a/net/third_party/quic/core/quic_stream_send_buffer.h ++++ b/net/third_party/quic/core/quic_stream_send_buffer.h +@@ -62,7 +62,7 @@ class QUIC_EXPORT_PRIVATE QuicStreamSendBuffer { + public: + explicit QuicStreamSendBuffer(QuicBufferAllocator* allocator); + QuicStreamSendBuffer(const QuicStreamSendBuffer& other) = delete; +- QuicStreamSendBuffer(QuicStreamSendBuffer&& other) = delete; ++ QuicStreamSendBuffer(QuicStreamSendBuffer&& other) = default; + ~QuicStreamSendBuffer(); + + // Save |data_length| of data starts at |iov_offset| in |iov| to send buffer. +-- +2.21.0 + diff --git a/revert-gn-4960.patch b/revert-gn-4960.patch new file mode 100644 index 0000000..bb51ada --- /dev/null +++ b/revert-gn-4960.patch @@ -0,0 +1,655 @@ +Description: revert https://gn.googlesource.com/gn/+/0d038c2e0a32a528713d3dfaf1f1e0cdfe87fd46, which breaks the chromium build + +--- a/tools/gn/build/gen.py ++++ b/tools/gn/build/gen.py +@@ -522,6 +522,7 @@ def WriteGNNinja(path, platform, host, o + 'tools/gn/setup.cc', + 'tools/gn/source_dir.cc', + 'tools/gn/source_file.cc', ++ 'tools/gn/source_file_type.cc', + 'tools/gn/standard_out.cc', + 'tools/gn/string_utils.cc', + 'tools/gn/substitution_list.cc', +--- a/tools/gn/tools/gn/c_tool.h ++++ b/tools/gn/tools/gn/c_tool.h +@@ -12,6 +12,7 @@ + #include "tools/gn/label.h" + #include "tools/gn/label_ptr.h" + #include "tools/gn/scope.h" ++#include "tools/gn/source_file_type.h" + #include "tools/gn/substitution_list.h" + #include "tools/gn/substitution_pattern.h" + #include "tools/gn/tool.h" +--- a/tools/gn/tools/gn/compile_commands_writer.cc ++++ b/tools/gn/tools/gn/compile_commands_writer.cc +@@ -122,7 +122,7 @@ void WriteCommand(const Target* target, + const CompileFlags& flags, + std::vector& tool_outputs, + PathOutput& path_output, +- SourceFile::Type source_type, ++ SourceFileType source_type, + const char* tool_name, + EscapeOptions opts, + std::string* compile_commands) { +@@ -144,16 +144,16 @@ void WriteCommand(const Target* target, + } else if (range.type == &CSubstitutionCFlags) { + command_out << flags.cflags; + } else if (range.type == &CSubstitutionCFlagsC) { +- if (source_type == SourceFile::SOURCE_C) ++ if (source_type == SOURCE_C) + command_out << flags.cflags_c; + } else if (range.type == &CSubstitutionCFlagsCc) { +- if (source_type == SourceFile::SOURCE_CPP) ++ if (source_type == SOURCE_CPP) + command_out << flags.cflags_cc; + } else if (range.type == &CSubstitutionCFlagsObjC) { +- if (source_type == SourceFile::SOURCE_M) ++ if (source_type == SOURCE_M) + command_out << flags.cflags_objc; + } else if (range.type == &CSubstitutionCFlagsObjCc) { +- if (source_type == SourceFile::SOURCE_MM) ++ if (source_type == SOURCE_MM) + command_out << flags.cflags_objcc; + } else if (range.type == &SubstitutionLabel || + range.type == &SubstitutionLabelName || +@@ -222,11 +222,9 @@ void CompileCommandsWriter::RenderJSON(c + for (const auto& source : target->sources()) { + // If this source is not a C/C++/ObjC/ObjC++ source (not header) file, + // continue as it does not belong in the compilation database. +- SourceFile::Type source_type = source.type(); +- if (source_type != SourceFile::SOURCE_CPP && +- source_type != SourceFile::SOURCE_C && +- source_type != SourceFile::SOURCE_M && +- source_type != SourceFile::SOURCE_MM) ++ SourceFileType source_type = GetSourceFileType(source); ++ if (source_type != SOURCE_CPP && source_type != SOURCE_C && ++ source_type != SOURCE_M && source_type != SOURCE_MM) + continue; + + const char* tool_name = Tool::kToolNone; +@@ -324,4 +322,4 @@ void CompileCommandsWriter::VisitDeps(co + VisitDeps(pair.ptr, visited); + } + } +-} ++} +\ No newline at end of file +--- a/tools/gn/tools/gn/general_tool.h ++++ b/tools/gn/tools/gn/general_tool.h +@@ -11,6 +11,7 @@ + #include "base/macros.h" + #include "tools/gn/label.h" + #include "tools/gn/label_ptr.h" ++#include "tools/gn/source_file_type.h" + #include "tools/gn/substitution_list.h" + #include "tools/gn/substitution_pattern.h" + #include "tools/gn/tool.h" +--- a/tools/gn/tools/gn/header_checker.cc ++++ b/tools/gn/tools/gn/header_checker.cc +@@ -18,6 +18,7 @@ + #include "tools/gn/err.h" + #include "tools/gn/filesystem_utils.h" + #include "tools/gn/scheduler.h" ++#include "tools/gn/source_file_type.h" + #include "tools/gn/target.h" + #include "tools/gn/trace.h" + #include "util/worker_pool.h" +@@ -151,10 +152,9 @@ void HeaderChecker::RunCheckOverFiles(co + + for (const auto& file : files) { + // Only check C-like source files (RC files also have includes). +- SourceFile::Type type = file.first.type(); +- if (type != SourceFile::SOURCE_CPP && type != SourceFile::SOURCE_H && +- type != SourceFile::SOURCE_C && type != SourceFile::SOURCE_M && +- type != SourceFile::SOURCE_MM && type != SourceFile::SOURCE_RC) ++ SourceFileType type = GetSourceFileType(file.first); ++ if (type != SOURCE_CPP && type != SOURCE_H && type != SOURCE_C && ++ type != SOURCE_M && type != SOURCE_MM && type != SOURCE_RC) + continue; + + if (!check_generated_) { +--- a/tools/gn/tools/gn/ninja_binary_target_writer.cc ++++ b/tools/gn/tools/gn/ninja_binary_target_writer.cc +@@ -23,23 +23,22 @@ + #include "tools/gn/ninja_utils.h" + #include "tools/gn/scheduler.h" + #include "tools/gn/settings.h" ++#include "tools/gn/source_file_type.h" + #include "tools/gn/string_utils.h" + #include "tools/gn/substitution_writer.h" + #include "tools/gn/target.h" + + bool NinjaBinaryTargetWriter::SourceFileTypeSet::CSourceUsed() { +- return Get(SourceFile::SOURCE_CPP) || Get(SourceFile::SOURCE_H) || +- Get(SourceFile::SOURCE_C) || Get(SourceFile::SOURCE_M) || +- Get(SourceFile::SOURCE_MM) || Get(SourceFile::SOURCE_RC) || +- Get(SourceFile::SOURCE_S); ++ return Get(SOURCE_CPP) || Get(SOURCE_H) || Get(SOURCE_C) || Get(SOURCE_M) || ++ Get(SOURCE_MM) || Get(SOURCE_RC) || Get(SOURCE_S); + } + + bool NinjaBinaryTargetWriter::SourceFileTypeSet::RustSourceUsed() { +- return Get(SourceFile::SOURCE_RS); ++ return Get(SOURCE_RS); + } + + bool NinjaBinaryTargetWriter::SourceFileTypeSet::GoSourceUsed() { +- return Get(SourceFile::SOURCE_GO); ++ return Get(SOURCE_GO); + } + + NinjaBinaryTargetWriter::NinjaBinaryTargetWriter(const Target* target, +@@ -50,6 +49,10 @@ NinjaBinaryTargetWriter::NinjaBinaryTarg + NinjaBinaryTargetWriter::~NinjaBinaryTargetWriter() = default; + + void NinjaBinaryTargetWriter::Run() { ++ SourceFileTypeSet used_types; ++ for (const auto& source : target_->sources()) ++ used_types.Set(GetSourceFileType(source)); ++ + NinjaCBinaryTargetWriter writer(target_, out_); + writer.Run(); + } +--- a/tools/gn/tools/gn/ninja_binary_target_writer.h ++++ b/tools/gn/tools/gn/ninja_binary_target_writer.h +@@ -23,12 +23,11 @@ class NinjaBinaryTargetWriter : public N + class SourceFileTypeSet { + public: + SourceFileTypeSet() { +- memset(flags_, 0, +- sizeof(bool) * static_cast(SourceFile::SOURCE_NUMTYPES)); ++ memset(flags_, 0, sizeof(bool) * static_cast(SOURCE_NUMTYPES)); + } + +- void Set(SourceFile::Type type) { flags_[static_cast(type)] = true; } +- bool Get(SourceFile::Type type) const { ++ void Set(SourceFileType type) { flags_[static_cast(type)] = true; } ++ bool Get(SourceFileType type) const { + return flags_[static_cast(type)]; + } + +@@ -37,7 +36,7 @@ class NinjaBinaryTargetWriter : public N + bool GoSourceUsed(); + + private: +- bool flags_[static_cast(SourceFile::SOURCE_NUMTYPES)]; ++ bool flags_[static_cast(SOURCE_NUMTYPES)]; + }; + + NinjaBinaryTargetWriter(const Target* target, std::ostream& out); +--- a/tools/gn/tools/gn/ninja_c_binary_target_writer.cc ++++ b/tools/gn/tools/gn/ninja_c_binary_target_writer.cc +@@ -24,6 +24,7 @@ + #include "tools/gn/ninja_utils.h" + #include "tools/gn/scheduler.h" + #include "tools/gn/settings.h" ++#include "tools/gn/source_file_type.h" + #include "tools/gn/string_utils.h" + #include "tools/gn/substitution_writer.h" + #include "tools/gn/target.h" +@@ -66,27 +67,27 @@ void AddSourceSetObjectFiles(const Targe + if (source_set->GetOutputFilesForSource(source, &tool_name, &tool_outputs)) + obj_files->push_back(tool_outputs[0]); + +- used_types.Set(source.type()); ++ used_types.Set(GetSourceFileType(source)); + } + + // Add MSVC precompiled header object files. GCC .gch files are not object + // files so they are omitted. + if (source_set->config_values().has_precompiled_headers()) { +- if (used_types.Get(SourceFile::SOURCE_C)) { ++ if (used_types.Get(SOURCE_C)) { + const CTool* tool = source_set->toolchain()->GetToolAsC(CTool::kCToolCc); + if (tool && tool->precompiled_header_type() == CTool::PCH_MSVC) { + GetPCHOutputFiles(source_set, CTool::kCToolCc, &tool_outputs); + obj_files->Append(tool_outputs.begin(), tool_outputs.end()); + } + } +- if (used_types.Get(SourceFile::SOURCE_CPP)) { ++ if (used_types.Get(SOURCE_CPP)) { + const CTool* tool = source_set->toolchain()->GetToolAsC(CTool::kCToolCxx); + if (tool && tool->precompiled_header_type() == CTool::PCH_MSVC) { + GetPCHOutputFiles(source_set, CTool::kCToolCxx, &tool_outputs); + obj_files->Append(tool_outputs.begin(), tool_outputs.end()); + } + } +- if (used_types.Get(SourceFile::SOURCE_M)) { ++ if (used_types.Get(SOURCE_M)) { + const CTool* tool = + source_set->toolchain()->GetToolAsC(CTool::kCToolObjC); + if (tool && tool->precompiled_header_type() == CTool::PCH_MSVC) { +@@ -94,7 +95,7 @@ void AddSourceSetObjectFiles(const Targe + obj_files->Append(tool_outputs.begin(), tool_outputs.end()); + } + } +- if (used_types.Get(SourceFile::SOURCE_MM)) { ++ if (used_types.Get(SOURCE_MM)) { + const CTool* tool = + source_set->toolchain()->GetToolAsC(CTool::kCToolObjCxx); + if (tool && tool->precompiled_header_type() == CTool::PCH_MSVC) { +@@ -118,7 +119,7 @@ void NinjaCBinaryTargetWriter::Run() { + // Figure out what source types are needed. + SourceFileTypeSet used_types; + for (const auto& source : target_->sources()) +- used_types.Set(source.type()); ++ used_types.Set(GetSourceFileType(source)); + + WriteCompilerVars(used_types); + +@@ -234,34 +235,31 @@ void NinjaCBinaryTargetWriter::WriteComp + target_->config_values().has_precompiled_headers(); + + EscapeOptions opts = GetFlagOptions(); +- if (used_types.Get(SourceFile::SOURCE_S) || +- used_types.Get(SourceFile::SOURCE_ASM)) { ++ if (used_types.Get(SOURCE_S) || used_types.Get(SOURCE_ASM)) { + WriteOneFlag(target_, &CSubstitutionAsmFlags, false, Tool::kToolNone, + &ConfigValues::asmflags, opts, path_output_, out_); + } +- if (used_types.Get(SourceFile::SOURCE_C) || +- used_types.Get(SourceFile::SOURCE_CPP) || +- used_types.Get(SourceFile::SOURCE_M) || +- used_types.Get(SourceFile::SOURCE_MM)) { ++ if (used_types.Get(SOURCE_C) || used_types.Get(SOURCE_CPP) || ++ used_types.Get(SOURCE_M) || used_types.Get(SOURCE_MM)) { + WriteOneFlag(target_, &CSubstitutionCFlags, false, Tool::kToolNone, + &ConfigValues::cflags, opts, path_output_, out_); + } +- if (used_types.Get(SourceFile::SOURCE_C)) { ++ if (used_types.Get(SOURCE_C)) { + WriteOneFlag(target_, &CSubstitutionCFlagsC, has_precompiled_headers, + CTool::kCToolCc, &ConfigValues::cflags_c, opts, path_output_, + out_); + } +- if (used_types.Get(SourceFile::SOURCE_CPP)) { ++ if (used_types.Get(SOURCE_CPP)) { + WriteOneFlag(target_, &CSubstitutionCFlagsCc, has_precompiled_headers, + CTool::kCToolCxx, &ConfigValues::cflags_cc, opts, path_output_, + out_); + } +- if (used_types.Get(SourceFile::SOURCE_M)) { ++ if (used_types.Get(SOURCE_M)) { + WriteOneFlag(target_, &CSubstitutionCFlagsObjC, has_precompiled_headers, + CTool::kCToolObjC, &ConfigValues::cflags_objc, opts, + path_output_, out_); + } +- if (used_types.Get(SourceFile::SOURCE_MM)) { ++ if (used_types.Get(SOURCE_MM)) { + WriteOneFlag(target_, &CSubstitutionCFlagsObjCc, has_precompiled_headers, + CTool::kCToolObjCxx, &ConfigValues::cflags_objcc, opts, + path_output_, out_); +@@ -321,14 +319,14 @@ void NinjaCBinaryTargetWriter::WritePCHC + + const CTool* tool_c = target_->toolchain()->GetToolAsC(CTool::kCToolCc); + if (tool_c && tool_c->precompiled_header_type() != CTool::PCH_NONE && +- used_types.Get(SourceFile::SOURCE_C)) { ++ used_types.Get(SOURCE_C)) { + WritePCHCommand(&CSubstitutionCFlagsC, CTool::kCToolCc, + tool_c->precompiled_header_type(), input_dep, + order_only_deps, object_files, other_files); + } + const CTool* tool_cxx = target_->toolchain()->GetToolAsC(CTool::kCToolCxx); + if (tool_cxx && tool_cxx->precompiled_header_type() != CTool::PCH_NONE && +- used_types.Get(SourceFile::SOURCE_CPP)) { ++ used_types.Get(SOURCE_CPP)) { + WritePCHCommand(&CSubstitutionCFlagsCc, CTool::kCToolCxx, + tool_cxx->precompiled_header_type(), input_dep, + order_only_deps, object_files, other_files); +@@ -336,7 +334,7 @@ void NinjaCBinaryTargetWriter::WritePCHC + + const CTool* tool_objc = target_->toolchain()->GetToolAsC(CTool::kCToolObjC); + if (tool_objc && tool_objc->precompiled_header_type() == CTool::PCH_GCC && +- used_types.Get(SourceFile::SOURCE_M)) { ++ used_types.Get(SOURCE_M)) { + WritePCHCommand(&CSubstitutionCFlagsObjC, CTool::kCToolObjC, + tool_objc->precompiled_header_type(), input_dep, + order_only_deps, object_files, other_files); +@@ -345,7 +343,7 @@ void NinjaCBinaryTargetWriter::WritePCHC + const CTool* tool_objcxx = + target_->toolchain()->GetToolAsC(CTool::kCToolObjCxx); + if (tool_objcxx && tool_objcxx->precompiled_header_type() == CTool::PCH_GCC && +- used_types.Get(SourceFile::SOURCE_MM)) { ++ used_types.Get(SOURCE_MM)) { + WritePCHCommand(&CSubstitutionCFlagsObjCc, CTool::kCToolObjCxx, + tool_objcxx->precompiled_header_type(), input_dep, + order_only_deps, object_files, other_files); +@@ -478,7 +476,7 @@ void NinjaCBinaryTargetWriter::WriteSour + deps.resize(0); + const char* tool_name = Tool::kToolNone; + if (!target_->GetOutputFilesForSource(source, &tool_name, &tool_outputs)) { +- if (source.type() == SourceFile::SOURCE_DEF) ++ if (GetSourceFileType(source) == SOURCE_DEF) + other_files->push_back(source); + continue; // No output for this source. + } +@@ -599,7 +597,7 @@ void NinjaCBinaryTargetWriter::WriteLink + const SourceFile* optional_def_file = nullptr; + if (!other_files.empty()) { + for (const SourceFile& src_file : other_files) { +- if (src_file.type() == SourceFile::SOURCE_DEF) { ++ if (GetSourceFileType(src_file) == SOURCE_DEF) { + optional_def_file = &src_file; + implicit_deps.push_back( + OutputFile(settings_->build_settings(), src_file)); +--- a/tools/gn/tools/gn/source_file.cc ++++ b/tools/gn/tools/gn/source_file.cc +@@ -21,48 +21,18 @@ void AssertValueSourceFileString(const s + DCHECK(!EndsWithSlash(s)) << s; + } + +-SourceFile::Type GetSourceFileType(const std::string& file) { +- base::StringPiece extension = FindExtension(&file); +- if (extension == "cc" || extension == "cpp" || extension == "cxx") +- return SourceFile::SOURCE_CPP; +- if (extension == "h" || extension == "hpp" || extension == "hxx" || +- extension == "hh" || extension == "inc") +- return SourceFile::SOURCE_H; +- if (extension == "c") +- return SourceFile::SOURCE_C; +- if (extension == "m") +- return SourceFile::SOURCE_M; +- if (extension == "mm") +- return SourceFile::SOURCE_MM; +- if (extension == "rc") +- return SourceFile::SOURCE_RC; +- if (extension == "S" || extension == "s" || extension == "asm") +- return SourceFile::SOURCE_S; +- if (extension == "o" || extension == "obj") +- return SourceFile::SOURCE_O; +- if (extension == "def") +- return SourceFile::SOURCE_DEF; +- if (extension == "rs") +- return SourceFile::SOURCE_RS; +- if (extension == "go") +- return SourceFile::SOURCE_GO; +- +- return SourceFile::SOURCE_UNKNOWN; +-} +- + } // namespace + +-SourceFile::SourceFile() : type_(SOURCE_UNKNOWN) {} ++SourceFile::SourceFile() = default; + + SourceFile::SourceFile(const base::StringPiece& p) +- : value_(p.data(), p.size()), type_(GetSourceFileType(value_)) { ++ : value_(p.data(), p.size()) { + DCHECK(!value_.empty()); + AssertValueSourceFileString(value_); + NormalizePath(&value_); + } + +-SourceFile::SourceFile(SwapIn, std::string* value) +- : type_(GetSourceFileType(*value)) { ++SourceFile::SourceFile(SwapIn, std::string* value) { + value_.swap(*value); + DCHECK(!value_.empty()); + AssertValueSourceFileString(value_); +--- a/tools/gn/tools/gn/source_file.h ++++ b/tools/gn/tools/gn/source_file.h +@@ -20,28 +20,6 @@ class SourceDir; + // ends in one. + class SourceFile { + public: +- // This should be sequential integers starting from 0 so they can be used as +- // array indices. +- enum Type { +- SOURCE_UNKNOWN = 0, +- SOURCE_ASM, +- SOURCE_C, +- SOURCE_CPP, +- SOURCE_H, +- SOURCE_M, +- SOURCE_MM, +- SOURCE_S, +- SOURCE_RC, +- SOURCE_O, // Object files can be inputs, too. Also counts .obj. +- SOURCE_DEF, +- +- SOURCE_RS, +- SOURCE_GO, +- +- // Must be last. +- SOURCE_NUMTYPES, +- }; +- + enum SwapIn { SWAP_IN }; + + SourceFile(); +@@ -58,7 +36,6 @@ class SourceFile { + + bool is_null() const { return value_.empty(); } + const std::string& value() const { return value_; } +- Type type() const { return type_; } + + // Returns everything after the last slash. + std::string GetName() const; +@@ -103,7 +80,6 @@ class SourceFile { + friend class SourceDir; + + std::string value_; +- Type type_; + + // Copy & assign supported. + }; +--- /dev/null ++++ b/tools/gn/tools/gn/source_file_type.cc +@@ -0,0 +1,37 @@ ++// Copyright 2014 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. ++ ++#include "tools/gn/source_file_type.h" ++ ++#include "tools/gn/filesystem_utils.h" ++#include "tools/gn/source_file.h" ++ ++SourceFileType GetSourceFileType(const SourceFile& file) { ++ base::StringPiece extension = FindExtension(&file.value()); ++ if (extension == "cc" || extension == "cpp" || extension == "cxx") ++ return SOURCE_CPP; ++ if (extension == "h" || extension == "hpp" || extension == "hxx" || ++ extension == "hh") ++ return SOURCE_H; ++ if (extension == "c") ++ return SOURCE_C; ++ if (extension == "m") ++ return SOURCE_M; ++ if (extension == "mm") ++ return SOURCE_MM; ++ if (extension == "rc") ++ return SOURCE_RC; ++ if (extension == "S" || extension == "s" || extension == "asm") ++ return SOURCE_S; ++ if (extension == "o" || extension == "obj") ++ return SOURCE_O; ++ if (extension == "def") ++ return SOURCE_DEF; ++ if (extension == "rs") ++ return SOURCE_RS; ++ if (extension == "go") ++ return SOURCE_GO; ++ ++ return SOURCE_UNKNOWN; ++} +--- /dev/null ++++ b/tools/gn/tools/gn/source_file_type.h +@@ -0,0 +1,34 @@ ++// Copyright 2014 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. ++ ++#ifndef TOOLS_GN_SOURCE_FILE_TYPE_H_ ++#define TOOLS_GN_SOURCE_FILE_TYPE_H_ ++ ++class SourceFile; ++ ++// This should be sequential integers starting from 0 so they can be used as ++// array indices. ++enum SourceFileType { ++ SOURCE_UNKNOWN = 0, ++ SOURCE_ASM, ++ SOURCE_C, ++ SOURCE_CPP, ++ SOURCE_H, ++ SOURCE_M, ++ SOURCE_MM, ++ SOURCE_S, ++ SOURCE_RC, ++ SOURCE_O, // Object files can be inputs, too. Also counts .obj. ++ SOURCE_DEF, ++ ++ SOURCE_RS, ++ SOURCE_GO, ++ ++ // Must be last. ++ SOURCE_NUMTYPES, ++}; ++ ++SourceFileType GetSourceFileType(const SourceFile& file); ++ ++#endif // TOOLS_GN_SOURCE_FILE_TYPE_H_ +--- a/tools/gn/tools/gn/target.cc ++++ b/tools/gn/tools/gn/target.cc +@@ -16,6 +16,7 @@ + #include "tools/gn/filesystem_utils.h" + #include "tools/gn/functions.h" + #include "tools/gn/scheduler.h" ++#include "tools/gn/source_file_type.h" + #include "tools/gn/substitution_writer.h" + #include "tools/gn/tool.h" + #include "tools/gn/toolchain.h" +@@ -486,10 +487,10 @@ bool Target::GetOutputFilesForSource(con + outputs->clear(); + *computed_tool_type = Tool::kToolNone; + +- SourceFile::Type file_type = source.type(); +- if (file_type == SourceFile::SOURCE_UNKNOWN) ++ SourceFileType file_type = GetSourceFileType(source); ++ if (file_type == SOURCE_UNKNOWN) + return false; +- if (file_type == SourceFile::SOURCE_O) { ++ if (file_type == SOURCE_O) { + // Object files just get passed to the output and not compiled. + outputs->push_back(OutputFile(settings()->build_settings(), source)); + return true; +--- a/tools/gn/tools/gn/tool.cc ++++ b/tools/gn/tools/gn/tool.cc +@@ -261,27 +261,27 @@ std::unique_ptr Tool::CreateTool(c + } + + // static +-const char* Tool::GetToolTypeForSourceType(SourceFile::Type type) { ++const char* Tool::GetToolTypeForSourceType(SourceFileType type) { + switch (type) { +- case SourceFile::SOURCE_C: ++ case SOURCE_C: + return CTool::kCToolCc; +- case SourceFile::SOURCE_CPP: ++ case SOURCE_CPP: + return CTool::kCToolCxx; +- case SourceFile::SOURCE_M: ++ case SOURCE_M: + return CTool::kCToolObjC; +- case SourceFile::SOURCE_MM: ++ case SOURCE_MM: + return CTool::kCToolObjCxx; +- case SourceFile::SOURCE_ASM: +- case SourceFile::SOURCE_S: ++ case SOURCE_ASM: ++ case SOURCE_S: + return CTool::kCToolAsm; +- case SourceFile::SOURCE_RC: ++ case SOURCE_RC: + return CTool::kCToolRc; +- case SourceFile::SOURCE_UNKNOWN: +- case SourceFile::SOURCE_H: +- case SourceFile::SOURCE_O: +- case SourceFile::SOURCE_DEF: +- case SourceFile::SOURCE_GO: +- case SourceFile::SOURCE_RS: ++ case SOURCE_UNKNOWN: ++ case SOURCE_H: ++ case SOURCE_O: ++ case SOURCE_DEF: ++ case SOURCE_GO: ++ case SOURCE_RS: + return kToolNone; + default: + NOTREACHED(); +--- a/tools/gn/tools/gn/tool.h ++++ b/tools/gn/tools/gn/tool.h +@@ -12,7 +12,7 @@ + #include "tools/gn/label.h" + #include "tools/gn/label_ptr.h" + #include "tools/gn/scope.h" +-#include "tools/gn/source_file.h" ++#include "tools/gn/source_file_type.h" + #include "tools/gn/substitution_list.h" + #include "tools/gn/substitution_pattern.h" + +@@ -171,7 +171,7 @@ class Tool { + Toolchain* toolchain, + Err* err); + +- static const char* GetToolTypeForSourceType(SourceFile::Type type); ++ static const char* GetToolTypeForSourceType(SourceFileType type); + static const char* GetToolTypeForTargetFinalOutput(const Target* target); + + protected: +--- a/tools/gn/tools/gn/toolchain.cc ++++ b/tools/gn/tools/gn/toolchain.cc +@@ -88,16 +88,16 @@ void Toolchain::ToolchainSetupComplete() + setup_complete_ = true; + } + +-const Tool* Toolchain::GetToolForSourceType(SourceFile::Type type) const { ++const Tool* Toolchain::GetToolForSourceType(SourceFileType type) const { + return GetTool(Tool::GetToolTypeForSourceType(type)); + } + +-const CTool* Toolchain::GetToolForSourceTypeAsC(SourceFile::Type type) const { ++const CTool* Toolchain::GetToolForSourceTypeAsC(SourceFileType type) const { + return GetToolAsC(Tool::GetToolTypeForSourceType(type)); + } + + const GeneralTool* Toolchain::GetToolForSourceTypeAsGeneral( +- SourceFile::Type type) const { ++ SourceFileType type) const { + return GetToolAsGeneral(Tool::GetToolTypeForSourceType(type)); + } + +--- a/tools/gn/tools/gn/toolchain.h ++++ b/tools/gn/tools/gn/toolchain.h +@@ -12,6 +12,7 @@ + #include "tools/gn/item.h" + #include "tools/gn/label_ptr.h" + #include "tools/gn/scope.h" ++#include "tools/gn/source_file_type.h" + #include "tools/gn/substitution_type.h" + #include "tools/gn/tool.h" + #include "tools/gn/value.h" +@@ -87,9 +88,9 @@ class Toolchain : public Item { + } + + // Returns the tool for compiling the given source file type. +- const Tool* GetToolForSourceType(SourceFile::Type type) const; +- const CTool* GetToolForSourceTypeAsC(SourceFile::Type type) const; +- const GeneralTool* GetToolForSourceTypeAsGeneral(SourceFile::Type type) const; ++ const Tool* GetToolForSourceType(SourceFileType type) const; ++ const CTool* GetToolForSourceTypeAsC(SourceFileType type) const; ++ const GeneralTool* GetToolForSourceTypeAsGeneral(SourceFileType type) const; + + // Returns the tool that produces the final output for the given target type. + // This isn't necessarily the tool you would expect. For copy target, this +--- a/tools/gn/tools/gn/visual_studio_writer.cc ++++ b/tools/gn/tools/gn/visual_studio_writer.cc +@@ -24,6 +24,7 @@ + #include "tools/gn/label_pattern.h" + #include "tools/gn/parse_tree.h" + #include "tools/gn/path_output.h" ++#include "tools/gn/source_file_type.h" + #include "tools/gn/standard_out.h" + #include "tools/gn/target.h" + #include "tools/gn/variables.h" diff --git a/revert-gn-4980.patch b/revert-gn-4980.patch new file mode 100644 index 0000000..fe550e9 --- /dev/null +++ b/revert-gn-4980.patch @@ -0,0 +1,134 @@ +Description: revert https://gn.googlesource.com/gn/+/8730b0feb6b991fa47368566501ab9ccfb453c92, which breaks the chromium build + +--- a/tools/gn/tools/gn/binary_target_generator.cc ++++ b/tools/gn/tools/gn/binary_target_generator.cc +@@ -68,38 +68,6 @@ void BinaryTargetGenerator::DoRun() { + return; + } + +-bool BinaryTargetGenerator::FillSources() { +- bool ret = TargetGenerator::FillSources(); +- for (std::size_t i = 0; i < target_->sources().size(); ++i) { +- const auto& source = target_->sources()[i]; +- switch (source.type()) { +- case SourceFile::SOURCE_CPP: +- case SourceFile::SOURCE_H: +- case SourceFile::SOURCE_C: +- case SourceFile::SOURCE_M: +- case SourceFile::SOURCE_MM: +- case SourceFile::SOURCE_S: +- case SourceFile::SOURCE_ASM: +- case SourceFile::SOURCE_O: +- // These are allowed. +- break; +- case SourceFile::SOURCE_RC: +- case SourceFile::SOURCE_DEF: +- case SourceFile::SOURCE_RS: +- case SourceFile::SOURCE_GO: +- case SourceFile::SOURCE_UNKNOWN: +- case SourceFile::SOURCE_NUMTYPES: +- *err_ = +- Err(scope_->GetValue(variables::kSources, true)->list_value()[i], +- std::string("Only source, header, and object files belong in " +- "the sources of a ") + +- Target::GetStringForOutputType(target_->output_type()) + +- ". " + source.value() + " is not one of the valid types."); +- } +- } +- return ret; +-} +- + bool BinaryTargetGenerator::FillCompleteStaticLib() { + if (target_->output_type() == Target::STATIC_LIBRARY) { + const Value* value = scope_->GetValue(variables::kCompleteStaticLib, true); +--- a/tools/gn/tools/gn/binary_target_generator.h ++++ b/tools/gn/tools/gn/binary_target_generator.h +@@ -22,7 +22,6 @@ class BinaryTargetGenerator : public Tar + + protected: + void DoRun() override; +- bool FillSources() override; + + private: + bool FillCompleteStaticLib(); +--- a/tools/gn/tools/gn/source_dir.cc ++++ b/tools/gn/tools/gn/source_dir.cc +@@ -98,10 +98,10 @@ SourceFile SourceDir::ResolveRelativeFil + return ret; + + const std::string& input_string = p.string_value(); +- if (!ValidateResolveInput(true, p, input_string, err)) ++ if (!ValidateResolveInput(true, p, input_string, err)) { + return ret; +- +- ret.SetValue(ResolveRelative(input_string, value_, true, source_root)); ++ } ++ ret.value_ = ResolveRelative(input_string, value_, true, source_root); + return ret; + } + +--- a/tools/gn/tools/gn/source_file.cc ++++ b/tools/gn/tools/gn/source_file.cc +@@ -55,19 +55,18 @@ SourceFile::Type GetSourceFileType(const + SourceFile::SourceFile() : type_(SOURCE_UNKNOWN) {} + + SourceFile::SourceFile(const base::StringPiece& p) +- : value_(p.data(), p.size()) { ++ : value_(p.data(), p.size()), type_(GetSourceFileType(value_)) { + DCHECK(!value_.empty()); + AssertValueSourceFileString(value_); + NormalizePath(&value_); +- type_ = GetSourceFileType(value_); + } + +-SourceFile::SourceFile(SwapIn, std::string* value) { ++SourceFile::SourceFile(SwapIn, std::string* value) ++ : type_(GetSourceFileType(*value)) { + value_.swap(*value); + DCHECK(!value_.empty()); + AssertValueSourceFileString(value_); + NormalizePath(&value_); +- type_ = GetSourceFileType(value_); + } + + SourceFile::~SourceFile() = default; +@@ -93,8 +92,3 @@ SourceDir SourceFile::GetDir() const { + base::FilePath SourceFile::Resolve(const base::FilePath& source_root) const { + return ResolvePath(value_, true, source_root); + } +- +-void SourceFile::SetValue(const std::string& value) { +- value_ = value; +- type_ = GetSourceFileType(value_); +-} +--- a/tools/gn/tools/gn/source_file.h ++++ b/tools/gn/tools/gn/source_file.h +@@ -97,16 +97,11 @@ class SourceFile { + return value_ < other.value_; + } + +- void swap(SourceFile& other) { +- value_.swap(other.value_); +- std::swap(type_, other.type_); +- } ++ void swap(SourceFile& other) { value_.swap(other.value_); } + + private: + friend class SourceDir; + +- void SetValue(const std::string& value); +- + std::string value_; + Type type_; + +--- a/tools/gn/tools/gn/target_generator.h ++++ b/tools/gn/tools/gn/target_generator.h +@@ -47,7 +47,7 @@ class TargetGenerator { + + const BuildSettings* GetBuildSettings() const; + +- virtual bool FillSources(); ++ bool FillSources(); + bool FillPublic(); + bool FillConfigs(); + bool FillOutputs(bool allow_substitutions); diff --git a/sources b/sources index ad9a0ee..2a4c258 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-73.0.3683.103-clean.tar.xz) = 73d43cc50586f4313994711ec45ddfe6b5780d13dff9004522c596035d2b75b197de0cdeab70c4c69da18846a3cd1ec6b5a264a8015eb46e4ce42db7b5ca793a +SHA512 (chromium-74.0.3729.169-clean.tar.xz) = 09db23d3b1b8020b21fa8f2b3be2a3be09815b4572ed5ef746061b171a01f75ab62af8ca092dbfb1bfa8065e5994fca56af8d0382053a70e46cb4ef57bf88b65 From 43b2c19f2ea012c08a1d9e5498749ac818e948a7 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 10 Jun 2019 14:36:48 -0400 Subject: [PATCH 0288/1449] 75.0.3770.80 --- .gitignore | 1 + chromium-67.0.3396.99-py3fix.patch | 12 - chromium-74-2f28731.patch | 324 ---------- chromium-74-7685422.patch | 12 - chromium-74-c2c467f.patch | 75 --- chromium-74-e1b1f3a.patch | 587 ------------------ ...74.0.3729.169-glibc-2.29-clone-vfork.patch | 50 -- chromium-75.0.3770.80-SIOCGSTAMP.patch | 15 + ...5.0.3770.80-aeed4d-gcc-dcheck_ne-fix.patch | 14 + chromium-75.0.3770.80-gcc-no-assume.patch | 21 + chromium-75.0.3770.80-no-zlib-mangle.patch | 14 + ...-75.0.3770.80-pure-virtual-crash-fix.patch | 24 + chromium-75.0.3770.80-revert-daff6b.patch | 13 + ...0.3770.80-vaapi-libva1-compatibility.patch | 14 + chromium.spec | 71 ++- clean_ffmpeg.sh | 1 + enable-vaapi.patch | 50 +- quiche-00f47df.patch | 38 -- sources | 2 +- 19 files changed, 184 insertions(+), 1154 deletions(-) delete mode 100644 chromium-67.0.3396.99-py3fix.patch delete mode 100644 chromium-74-2f28731.patch delete mode 100644 chromium-74-7685422.patch delete mode 100644 chromium-74-c2c467f.patch delete mode 100644 chromium-74-e1b1f3a.patch delete mode 100644 chromium-74.0.3729.169-glibc-2.29-clone-vfork.patch create mode 100644 chromium-75.0.3770.80-SIOCGSTAMP.patch create mode 100644 chromium-75.0.3770.80-aeed4d-gcc-dcheck_ne-fix.patch create mode 100644 chromium-75.0.3770.80-gcc-no-assume.patch create mode 100644 chromium-75.0.3770.80-no-zlib-mangle.patch create mode 100644 chromium-75.0.3770.80-pure-virtual-crash-fix.patch create mode 100644 chromium-75.0.3770.80-revert-daff6b.patch create mode 100644 chromium-75.0.3770.80-vaapi-libva1-compatibility.patch delete mode 100644 quiche-00f47df.patch diff --git a/.gitignore b/.gitignore index e0568e7..3b0fcbc 100644 --- a/.gitignore +++ b/.gitignore @@ -78,3 +78,4 @@ /chromium-73.0.3683.86-clean.tar.xz /chromium-73.0.3683.103-clean.tar.xz /chromium-74.0.3729.169-clean.tar.xz +/chromium-75.0.3770.80-clean.tar.xz diff --git a/chromium-67.0.3396.99-py3fix.patch b/chromium-67.0.3396.99-py3fix.patch deleted file mode 100644 index 5dd7267..0000000 --- a/chromium-67.0.3396.99-py3fix.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-67.0.3396.99/build/util/version.py.py3fix chromium-67.0.3396.99/build/util/version.py ---- chromium-67.0.3396.99/build/util/version.py.py3fix 2018-07-11 11:39:14.728600503 -0400 -+++ chromium-67.0.3396.99/build/util/version.py 2018-07-11 11:39:22.401406816 -0400 -@@ -68,7 +68,7 @@ def subst_template(contents, values): - try: - contents = contents.replace('@' + key + '@', val) - except TypeError: -- print repr(key), repr(val) -+ print(repr(key), repr(val)) - return contents - - diff --git a/chromium-74-2f28731.patch b/chromium-74-2f28731.patch deleted file mode 100644 index 2019ec2..0000000 --- a/chromium-74-2f28731.patch +++ /dev/null @@ -1,324 +0,0 @@ -diff -up chromium-74.0.3729.169/base/values.cc.2f28731 chromium-74.0.3729.169/base/values.cc ---- chromium-74.0.3729.169/base/values.cc.2f28731 2019-05-31 15:03:32.200591044 -0400 -+++ chromium-74.0.3729.169/base/values.cc 2019-05-31 15:13:39.546036829 -0400 -@@ -12,6 +12,7 @@ - #include - #include - -+#include "base/bit_cast.h" - #include "base/json/json_writer.h" - #include "base/logging.h" - #include "base/memory/ptr_util.h" -@@ -36,6 +37,9 @@ static_assert(std::is_standard_layout(0.0); - return; - case Type::STRING: - new (&string_value_) std::string(); -@@ -149,21 +151,16 @@ Value::Value(Type type) : type_(type) { - CHECK(false); - } - --Value::Value(bool in_bool) -- : bool_type_(Type::BOOLEAN), -- bool_value_(in_bool) {} -- --Value::Value(int in_int) -- : int_type_(Type::INTEGER), -- int_value_(in_int) {} -+Value::Value(bool in_bool) : type_(Type::BOOLEAN), bool_value_(in_bool) {} -+ -+Value::Value(int in_int) : type_(Type::INTEGER), int_value_(in_int) {} - - Value::Value(double in_double) -- : double_type_(Type::DOUBLE), -- double_value_(in_double) { -- if (!std::isfinite(double_value_)) { -+ : type_(Type::DOUBLE), double_value_(bit_cast(in_double)) { -+ if (!std::isfinite(in_double)) { - NOTREACHED() << "Non-finite (i.e. NaN or positive/negative infinity) " - << "values cannot be represented in JSON"; -- double_value_ = 0.0; -+ double_value_ = bit_cast(0.0); - } - } - -@@ -172,8 +169,7 @@ Value::Value(const char* in_string) : Va - Value::Value(StringPiece in_string) : Value(std::string(in_string)) {} - - Value::Value(std::string&& in_string) noexcept -- : string_type_(Type::STRING), -- string_value_(std::move(in_string)) { -+ : type_(Type::STRING), string_value_(std::move(in_string)) { - DCHECK(IsStringUTF8(string_value_)); - } - -@@ -182,19 +178,15 @@ Value::Value(const char16* in_string16) - Value::Value(StringPiece16 in_string16) : Value(UTF16ToUTF8(in_string16)) {} - - Value::Value(const std::vector& in_blob) -- : binary_type_(Type::BINARY), -- binary_value_(in_blob.begin(), in_blob.end()) {} -+ : type_(Type::BINARY), binary_value_(in_blob.begin(), in_blob.end()) {} - - Value::Value(base::span in_blob) -- : binary_type_(Type::BINARY), -- binary_value_(in_blob.begin(), in_blob.end()) {} -+ : type_(Type::BINARY), binary_value_(in_blob.begin(), in_blob.end()) {} - - Value::Value(BlobStorage&& in_blob) noexcept -- : binary_type_(Type::BINARY), -- binary_value_(std::move(in_blob)) {} -+ : type_(Type::BINARY), binary_value_(std::move(in_blob)) {} - --Value::Value(const DictStorage& in_dict) -- : dict_type_(Type::DICTIONARY), dict_() { -+Value::Value(const DictStorage& in_dict) : type_(Type::DICTIONARY), dict_() { - dict_.reserve(in_dict.size()); - for (const auto& it : in_dict) { - dict_.try_emplace(dict_.end(), it.first, -@@ -203,18 +195,16 @@ Value::Value(const DictStorage& in_dict) - } - - Value::Value(DictStorage&& in_dict) noexcept -- : dict_type_(Type::DICTIONARY), -- dict_(std::move(in_dict)) {} -+ : type_(Type::DICTIONARY), dict_(std::move(in_dict)) {} - --Value::Value(const ListStorage& in_list) : list_type_(Type::LIST), list_() { -+Value::Value(const ListStorage& in_list) : type_(Type::LIST), list_() { - list_.reserve(in_list.size()); - for (const auto& val : in_list) - list_.emplace_back(val.Clone()); - } - - Value::Value(ListStorage&& in_list) noexcept -- : list_type_(Type::LIST), -- list_(std::move(in_list)) {} -+ : type_(Type::LIST), list_(std::move(in_list)) {} - - Value& Value::operator=(Value&& that) noexcept { - InternalCleanup(); -@@ -223,6 +213,10 @@ Value& Value::operator=(Value&& that) no - return *this; - } - -+double Value::AsDoubleInternal() const { -+ return bit_cast(double_value_); -+} -+ - Value Value::Clone() const { - switch (type_) { - case Type::NONE: -@@ -232,7 +226,7 @@ Value Value::Clone() const { - case Type::INTEGER: - return Value(int_value_); - case Type::DOUBLE: -- return Value(double_value_); -+ return Value(AsDoubleInternal()); - case Type::STRING: - return Value(string_value_); - case Type::BINARY: -@@ -277,7 +271,7 @@ int Value::GetInt() const { - - double Value::GetDouble() const { - if (is_double()) -- return double_value_; -+ return AsDoubleInternal(); - if (is_int()) - return int_value_; - CHECK(false); -@@ -342,9 +336,10 @@ base::Optional Value::FindDouble - const Value* result = FindKey(key); - if (result) { - if (result->is_int()) -- return base::make_optional(static_cast(result->int_value_)); -- if (result->is_double()) -- return base::make_optional(result->double_value_); -+ return static_cast(result->int_value_); -+ if (result->is_double()) { -+ return result->AsDoubleInternal(); -+ } - } - return base::nullopt; - } -@@ -548,7 +543,7 @@ bool Value::GetAsInteger(int* out_value) - - bool Value::GetAsDouble(double* out_value) const { - if (out_value && is_double()) { -- *out_value = double_value_; -+ *out_value = AsDoubleInternal(); - return true; - } - if (out_value && is_int()) { -@@ -643,7 +638,7 @@ bool operator==(const Value& lhs, const - case Value::Type::INTEGER: - return lhs.int_value_ == rhs.int_value_; - case Value::Type::DOUBLE: -- return lhs.double_value_ == rhs.double_value_; -+ return lhs.AsDoubleInternal() == rhs.AsDoubleInternal(); - case Value::Type::STRING: - return lhs.string_value_ == rhs.string_value_; - case Value::Type::BINARY: -@@ -688,7 +683,7 @@ bool operator<(const Value& lhs, const V - case Value::Type::INTEGER: - return lhs.int_value_ < rhs.int_value_; - case Value::Type::DOUBLE: -- return lhs.double_value_ < rhs.double_value_; -+ return lhs.AsDoubleInternal() < rhs.AsDoubleInternal(); - case Value::Type::STRING: - return lhs.string_value_ < rhs.string_value_; - case Value::Type::BINARY: -diff -up chromium-74.0.3729.169/base/values.h.2f28731 chromium-74.0.3729.169/base/values.h ---- chromium-74.0.3729.169/base/values.h.2f28731 2019-05-31 15:13:48.418868163 -0400 -+++ chromium-74.0.3729.169/base/values.h 2019-05-31 15:17:06.015112057 -0400 -@@ -77,12 +77,13 @@ class Value; - // base::Value dict(base::Value::Type::DICTIONARY); - // dict.SetKey("mykey", base::Value(foo)); - // return dict; --// } - class BASE_EXPORT Value { - public: - using BlobStorage = std::vector; - using DictStorage = flat_map>; - using ListStorage = std::vector; -+ // See technical note below explaining why this is used. -+ using DoubleStorage = struct { alignas(4) char v[sizeof(double)]; }; - - enum class Type : unsigned char { - NONE = 0, -@@ -111,7 +112,10 @@ class BASE_EXPORT Value { - static std::unique_ptr ToUniquePtrValue(Value val); - - Value(Value&& that) noexcept; -- Value() noexcept; // A null value. -+ Value() noexcept {} // A null value -+ // Fun fact: using '= default' above instead of '{}' does not work because -+ // the compiler complains that the default constructor was deleted since -+ // the inner union contains fields with non-default constructors. - - // Value's copy constructor and copy assignment operator are deleted. Use this - // to obtain a deep copy explicitly. -@@ -379,82 +383,29 @@ class BASE_EXPORT Value { - size_t EstimateMemoryUsage() const; - - protected: -- // Technical note: -- // The naive way to implement a tagged union leads to wasted bytes -- // in the object on CPUs like ARM ones, which impose an 8-byte alignment -- // for double values. I.e. if one does something like: -- // -- // struct TaggedValue { -- // int type_; // size = 1, align = 4 -- // union { -- // bool bool_value_; // size = 1, align = 1 -- // int int_value_; // size = 4, align = 4 -- // double double_value_; // size = 8, align = 8 -- // std::string string_value_; // size = 12, align = 4 (32-bit) -- // }; -- // }; -- // -- // The end result is that the union will have an alignment of 8, and a size -- // of 16, due to 4 extra padding bytes following |string_value_| to respect -- // the alignment requirement. -- // -- // As a consequence, the struct TaggedValue will have a size of 24 bytes, -- // due to the size of the union (16), the size of |type_| (4) and 4 bytes -- // of padding between |type_| and the union to respect its alignment. -- // -- // This means 8 bytes of unused memory per instance on 32-bit ARM! -- // -- // To reclaim these, a union of structs is used instead, in order to ensure -- // that |double_value_| below is always located at an offset that is a -- // multiple of 8, relative to the start of the overall data structure. -- // -- // Each struct must declare its own |type_| field, which must have a different -- // name, to appease the C++ compiler. -- // -- // Using this technique sizeof(base::Value) == 16 on 32-bit ARM instead -- // of 24, without losing any information. Results are unchanged for x86, -- // x86_64 and arm64 (16, 32 and 32 bytes respectively). -+ // Special case for doubles, which are aligned to 8 bytes on some -+ // 32-bit architectures. In this case, a simple declaration as a -+ // double member would make the whole union 8 byte-aligned, which -+ // would also force 4 bytes of wasted padding space before it in -+ // the Value layout. -+ // -+ // To override this, store the value as an array of 32-bit integers, and -+ // perform the appropriate bit casts when reading / writing to it. -+ Type type_ = Type::NONE; -+ - union { -- struct { -- // TODO(crbug.com/646113): Make these private once DictionaryValue and -- // ListValue are properly inlined. -- Type type_ : 8; -- }; -- struct { -- Type bool_type_ : 8; -- bool bool_value_; -- }; -- struct { -- Type int_type_ : 8; -- int int_value_; -- }; -- struct { -- Type double_type_ : 8; -- // Subtle: On architectures that require it, the compiler will ensure -- // that |double_value_|'s offset is a multiple of 8 (e.g. 32-bit ARM). -- // See technical note above to understand why it is important. -- double double_value_; -- }; -- struct { -- Type string_type_ : 8; -- std::string string_value_; -- }; -- struct { -- Type binary_type_ : 8; -- BlobStorage binary_value_; -- }; -- struct { -- Type dict_type_ : 8; -- DictStorage dict_; -- }; -- struct { -- Type list_type_ : 8; -- ListStorage list_; -- }; -+ bool bool_value_; -+ int int_value_; -+ DoubleStorage double_value_; -+ std::string string_value_; -+ BlobStorage binary_value_; -+ DictStorage dict_; -+ ListStorage list_; - }; - - private: - friend class ValuesTest_SizeOfValue_Test; -+ double AsDoubleInternal() const; - void InternalMoveConstructFrom(Value&& that); - void InternalCleanup(); - diff --git a/chromium-74-7685422.patch b/chromium-74-7685422.patch deleted file mode 100644 index f86da1f..0000000 --- a/chromium-74-7685422.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-74.0.3729.169/base/values.h.gentoo3 chromium-74.0.3729.169/base/values.h ---- chromium-74.0.3729.169/base/values.h.gentoo3 2019-05-31 14:02:13.019800039 -0400 -+++ chromium-74.0.3729.169/base/values.h 2019-05-31 14:02:32.531380130 -0400 -@@ -84,7 +84,7 @@ class BASE_EXPORT Value { - using DictStorage = flat_map>; - using ListStorage = std::vector; - -- enum class Type { -+ enum class Type : unsigned char { - NONE = 0, - BOOLEAN, - INTEGER, diff --git a/chromium-74-c2c467f.patch b/chromium-74-c2c467f.patch deleted file mode 100644 index e9e5d22..0000000 --- a/chromium-74-c2c467f.patch +++ /dev/null @@ -1,75 +0,0 @@ -From c2c467f69fc00d353879d7add5f2c04a6acabbb1 Mon Sep 17 00:00:00 2001 -From: David 'Digit' Turner -Date: Wed, 20 Mar 2019 21:41:09 +0000 -Subject: [PATCH] base: Value::FindDoubleKey() converts integers to doubles - -Ensure that FindDoubleKey() can return the value of an -INTEGER key as a double. This is consistent with the behaviour -of Value::GetDouble() which will auto-convert INTEGER values -to doubles. - -BUG=646113 -R=dcheng@chromium.org,jdoerrie@chromium.org,sdefresne@chromium.org,hidehiko@chromium.org - -Change-Id: I2c08cb91b6cfd5db268a182ffffe16682d848008 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1529017 -Reviewed-by: Sylvain Defresne -Reviewed-by: Daniel Cheng -Commit-Queue: David Turner -Cr-Commit-Position: refs/heads/master@{#642680} ---- - base/values.cc | 10 ++++++++-- - base/values.h | 2 ++ - base/values_unittest.cc | 2 +- - 3 files changed, 11 insertions(+), 3 deletions(-) - -diff --git a/base/values.cc b/base/values.cc -index 035aa2350cde..69d66ff8ab00 100644 ---- a/base/values.cc -+++ b/base/values.cc -@@ -339,8 +339,14 @@ base::Optional Value::FindIntKey(StringPiece key) const { - } - - base::Optional Value::FindDoubleKey(StringPiece key) const { -- const Value* result = FindKeyOfType(key, Type::DOUBLE); -- return result ? base::make_optional(result->double_value_) : base::nullopt; -+ const Value* result = FindKey(key); -+ if (result) { -+ if (result->is_int()) -+ return base::make_optional(static_cast(result->int_value_)); -+ if (result->is_double()) -+ return base::make_optional(result->double_value_); -+ } -+ return base::nullopt; - } - - const std::string* Value::FindStringKey(StringPiece key) const { -diff --git a/base/values.h b/base/values.h -index e31cadd83102..6f2cd3cc3d79 100644 ---- a/base/values.h -+++ b/base/values.h -@@ -200,6 +200,8 @@ class BASE_EXPORT Value { - // function's name. - base::Optional FindBoolKey(StringPiece key) const; - base::Optional FindIntKey(StringPiece key) const; -+ // Note FindDoubleKey() will auto-convert INTEGER keys to their double -+ // value, for consistency with GetDouble(). - base::Optional FindDoubleKey(StringPiece key) const; - - // |FindStringKey| returns |nullptr| if value is not found or not a string. -diff --git a/base/values_unittest.cc b/base/values_unittest.cc -index b23fd8332491..7c545c09d947 100644 ---- a/base/values_unittest.cc -+++ b/base/values_unittest.cc -@@ -674,7 +674,7 @@ TEST(ValuesTest, FindDoubleKey) { - const Value dict(std::move(storage)); - EXPECT_EQ(base::nullopt, dict.FindDoubleKey("null")); - EXPECT_EQ(base::nullopt, dict.FindDoubleKey("bool")); -- EXPECT_EQ(base::nullopt, dict.FindDoubleKey("int")); -+ EXPECT_NE(base::nullopt, dict.FindDoubleKey("int")); - EXPECT_NE(base::nullopt, dict.FindDoubleKey("double")); - EXPECT_EQ(base::nullopt, dict.FindDoubleKey("string")); - EXPECT_EQ(base::nullopt, dict.FindDoubleKey("blob")); --- -2.21.0 - diff --git a/chromium-74-e1b1f3a.patch b/chromium-74-e1b1f3a.patch deleted file mode 100644 index 344b087..0000000 --- a/chromium-74-e1b1f3a.patch +++ /dev/null @@ -1,587 +0,0 @@ -From e1b1f3a5f273c8da533fad495b9de316e2c83c9b Mon Sep 17 00:00:00 2001 -From: jdoerrie -Date: Sat, 16 Mar 2019 04:08:01 +0000 -Subject: [PATCH] [base] Add Dead Type to base::Value - -This change adds a temporary DEAD type to base::Value which should help -to track down use-after-free bugs. Furthermore, this change also removes -the now unneeded is_alive_ flag. - -Bug: 859477, 941404 -Change-Id: I9b7a2f3cbb0b22d7e3ed35b2453537419f3f7e55 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1478897 -Reviewed-by: Pavol Marko -Reviewed-by: Tao Bai -Reviewed-by: Thomas Anderson -Reviewed-by: Mike Pinkerton -Reviewed-by: Bill Budge -Reviewed-by: Ken Rockot -Reviewed-by: Steven Bennetts -Reviewed-by: Daniel Cheng -Reviewed-by: David Turner -Commit-Queue: Thomas Anderson -Cr-Commit-Position: refs/heads/master@{#641404} ---- - base/json/json_writer.cc | 5 ++ - base/values.cc | 68 ++++++++++++------- - base/values.h | 23 ++----- - base/values_unittest.cc | 10 ++- - .../ui/cocoa/applescript/apple_event_util.mm | 10 +++ - chromeos/network/onc/variable_expander.cc | 6 ++ - .../core/browser/android/policy_converter.cc | 11 ++- - .../core/common/policy_loader_win_unittest.cc | 8 ++- - .../policy/core/common/policy_test_utils.cc | 5 ++ - .../policy/core/common/registry_dict.cc | 4 ++ - .../gin_java_script_to_java_types_coercion.cc | 8 ++- - ipc/ipc_message_utils.cc | 11 ++- - mojo/public/cpp/base/values_mojom_traits.h | 7 +- - .../ppb_x509_certificate_private_shared.cc | 2 + - 14 files changed, 127 insertions(+), 51 deletions(-) - -diff --git a/base/json/json_writer.cc b/base/json/json_writer.cc -index 376a459f9a46..cd020e7fa0c0 100644 ---- a/base/json/json_writer.cc -+++ b/base/json/json_writer.cc -@@ -179,6 +179,11 @@ bool JSONWriter::BuildJSONString(const Value& node, size_t depth) { - // Successful only if we're allowed to omit it. - DLOG_IF(ERROR, !omit_binary_values_) << "Cannot serialize binary value."; - return omit_binary_values_; -+ -+ // TODO(crbug.com/859477): Remove after root cause is found. -+ case Value::Type::DEAD: -+ CHECK(false); -+ return false; - } - - // TODO(crbug.com/859477): Revert to NOTREACHED() after root cause is found. -diff --git a/base/values.cc b/base/values.cc -index 0c002551b317..035aa2350cde 100644 ---- a/base/values.cc -+++ b/base/values.cc -@@ -90,8 +90,6 @@ std::unique_ptr CopyWithoutEmptyChildren(const Value& node) { - - } // namespace - --constexpr uint16_t Value::kMagicIsAlive; -- - // static - std::unique_ptr Value::CreateWithCopiedBuffer(const char* buffer, - size_t size) { -@@ -112,9 +110,9 @@ Value::Value(Value&& that) noexcept { - InternalMoveConstructFrom(std::move(that)); - } - --Value::Value() noexcept : type_(Type::NONE), is_alive_(kMagicIsAlive) {} -+Value::Value() noexcept : type_(Type::NONE) {} - --Value::Value(Type type) : type_(type), is_alive_(kMagicIsAlive) { -+Value::Value(Type type) : type_(type) { - // Initialize with the default value. - switch (type_) { - case Type::NONE: -@@ -141,22 +139,26 @@ Value::Value(Type type) : type_(type), is_alive_(kMagicIsAlive) { - case Type::LIST: - new (&list_) ListStorage(); - return; -+ // TODO(crbug.com/859477): Remove after root cause is found. -+ case Type::DEAD: -+ CHECK(false); -+ return; - } -+ -+ // TODO(crbug.com/859477): Revert to NOTREACHED() after root cause is found. -+ CHECK(false); - } - - Value::Value(bool in_bool) - : bool_type_(Type::BOOLEAN), -- bool_is_alive_(kMagicIsAlive), - bool_value_(in_bool) {} - - Value::Value(int in_int) - : int_type_(Type::INTEGER), -- int_is_alive_(kMagicIsAlive), - int_value_(in_int) {} - - Value::Value(double in_double) - : double_type_(Type::DOUBLE), -- double_is_alive_(kMagicIsAlive), - double_value_(in_double) { - if (!std::isfinite(double_value_)) { - NOTREACHED() << "Non-finite (i.e. NaN or positive/negative infinity) " -@@ -171,7 +173,6 @@ Value::Value(StringPiece in_string) : Value(std::string(in_string)) {} - - Value::Value(std::string&& in_string) noexcept - : string_type_(Type::STRING), -- string_is_alive_(kMagicIsAlive), - string_value_(std::move(in_string)) { - DCHECK(IsStringUTF8(string_value_)); - } -@@ -182,21 +183,18 @@ Value::Value(StringPiece16 in_string16) : Value(UTF16ToUTF8(in_string16)) {} - - Value::Value(const std::vector& in_blob) - : binary_type_(Type::BINARY), -- binary_is_alive_(kMagicIsAlive), - binary_value_(in_blob.begin(), in_blob.end()) {} - - Value::Value(base::span in_blob) - : binary_type_(Type::BINARY), -- binary_is_alive_(kMagicIsAlive), - binary_value_(in_blob.begin(), in_blob.end()) {} - - Value::Value(BlobStorage&& in_blob) noexcept - : binary_type_(Type::BINARY), -- binary_is_alive_(kMagicIsAlive), - binary_value_(std::move(in_blob)) {} - - Value::Value(const DictStorage& in_dict) -- : dict_type_(Type::DICTIONARY), dict_is_alive_(kMagicIsAlive), dict_() { -+ : dict_type_(Type::DICTIONARY), dict_() { - dict_.reserve(in_dict.size()); - for (const auto& it : in_dict) { - dict_.try_emplace(dict_.end(), it.first, -@@ -206,11 +204,9 @@ Value::Value(const DictStorage& in_dict) - - Value::Value(DictStorage&& in_dict) noexcept - : dict_type_(Type::DICTIONARY), -- dict_is_alive_(kMagicIsAlive), - dict_(std::move(in_dict)) {} - --Value::Value(const ListStorage& in_list) -- : list_type_(Type::LIST), list_is_alive_(kMagicIsAlive), list_() { -+Value::Value(const ListStorage& in_list) : list_type_(Type::LIST), list_() { - list_.reserve(in_list.size()); - for (const auto& val : in_list) - list_.emplace_back(val.Clone()); -@@ -218,7 +214,6 @@ Value::Value(const ListStorage& in_list) - - Value::Value(ListStorage&& in_list) noexcept - : list_type_(Type::LIST), -- list_is_alive_(kMagicIsAlive), - list_(std::move(in_list)) {} - - Value& Value::operator=(Value&& that) noexcept { -@@ -246,15 +241,21 @@ Value Value::Clone() const { - return Value(dict_); - case Type::LIST: - return Value(list_); -+ // TODO(crbug.com/859477): Remove after root cause is found. -+ case Type::DEAD: -+ CHECK(false); -+ return Value(); - } - -- NOTREACHED(); -+ // TODO(crbug.com/859477): Revert to NOTREACHED() after root cause is found. -+ CHECK(false); - return Value(); - } - - Value::~Value() { - InternalCleanup(); -- is_alive_ = 0; -+ // TODO(crbug.com/859477): Remove after root cause is found. -+ type_ = Type::DEAD; - } - - // static -@@ -654,9 +655,14 @@ bool operator==(const Value& lhs, const Value& rhs) { - }); - case Value::Type::LIST: - return lhs.list_ == rhs.list_; -+ // TODO(crbug.com/859477): Remove after root cause is found. -+ case Value::Type::DEAD: -+ CHECK(false); -+ return false; - } - -- NOTREACHED(); -+ // TODO(crbug.com/859477): Revert to NOTREACHED() after root cause is found. -+ CHECK(false); - return false; - } - -@@ -693,9 +699,14 @@ bool operator<(const Value& lhs, const Value& rhs) { - }); - case Value::Type::LIST: - return lhs.list_ < rhs.list_; -+ // TODO(crbug.com/859477): Remove after root cause is found. -+ case Value::Type::DEAD: -+ CHECK(false); -+ return false; - } - -- NOTREACHED(); -+ // TODO(crbug.com/859477): Revert to NOTREACHED() after root cause is found. -+ CHECK(false); - return false; - } - -@@ -733,7 +744,6 @@ size_t Value::EstimateMemoryUsage() const { - - void Value::InternalMoveConstructFrom(Value&& that) { - type_ = that.type_; -- is_alive_ = that.is_alive_; - - switch (type_) { - case Type::NONE: -@@ -759,12 +769,17 @@ void Value::InternalMoveConstructFrom(Value&& that) { - case Type::LIST: - new (&list_) ListStorage(std::move(that.list_)); - return; -+ // TODO(crbug.com/859477): Remove after root cause is found. -+ case Type::DEAD: -+ CHECK(false); -+ return; - } -+ -+ // TODO(crbug.com/859477): Revert to NOTREACHED() after root cause is found. -+ CHECK(false); - } - - void Value::InternalCleanup() { -- CHECK_EQ(is_alive_, kMagicIsAlive); -- - switch (type_) { - case Type::NONE: - case Type::BOOLEAN: -@@ -785,7 +800,14 @@ void Value::InternalCleanup() { - case Type::LIST: - list_.~ListStorage(); - return; -+ // TODO(crbug.com/859477): Remove after root cause is found. -+ case Type::DEAD: -+ CHECK(false); -+ return; - } -+ -+ // TODO(crbug.com/859477): Revert to NOTREACHED() after root cause is found. -+ CHECK(false); - } - - ///////////////////// DictionaryValue //////////////////// -diff --git a/base/values.h b/base/values.h -index 429ef1dfdebd..e31cadd83102 100644 ---- a/base/values.h -+++ b/base/values.h -@@ -92,7 +92,9 @@ class BASE_EXPORT Value { - STRING, - BINARY, - DICTIONARY, -- LIST -+ LIST, -+ // TODO(crbug.com/859477): Remove once root cause is found. -+ DEAD - // Note: Do not add more types. See the file-level comment above for why. - }; - -@@ -375,10 +377,6 @@ class BASE_EXPORT Value { - size_t EstimateMemoryUsage() const; - - protected: -- // Magic IsAlive signature to debug double frees. -- // TODO(crbug.com/859477): Remove once root cause is found. -- static constexpr uint16_t kMagicIsAlive = 0x2f19; -- - // Technical note: - // The naive way to implement a tagged union leads to wasted bytes - // in the object on CPUs like ARM ones, which impose an 8-byte alignment -@@ -408,8 +406,8 @@ class BASE_EXPORT Value { - // that |double_value_| below is always located at an offset that is a - // multiple of 8, relative to the start of the overall data structure. - // -- // Each struct must declare its own |type_| and |is_alive_| field, which -- // must have a different name, to appease the C++ compiler. -+ // Each struct must declare its own |type_| field, which must have a different -+ // name, to appease the C++ compiler. - // - // Using this technique sizeof(base::Value) == 16 on 32-bit ARM instead - // of 24, without losing any information. Results are unchanged for x86, -@@ -419,24 +417,17 @@ class BASE_EXPORT Value { - // TODO(crbug.com/646113): Make these private once DictionaryValue and - // ListValue are properly inlined. - Type type_ : 8; -- -- // IsAlive member to debug double frees. -- // TODO(crbug.com/859477): Remove once root cause is found. -- uint16_t is_alive_ = kMagicIsAlive; - }; - struct { - Type bool_type_ : 8; -- uint16_t bool_is_alive_; - bool bool_value_; - }; - struct { - Type int_type_ : 8; -- uint16_t int_is_alive_; - int int_value_; - }; - struct { - Type double_type_ : 8; -- uint16_t double_is_alive_; - // Subtle: On architectures that require it, the compiler will ensure - // that |double_value_|'s offset is a multiple of 8 (e.g. 32-bit ARM). - // See technical note above to understand why it is important. -@@ -444,22 +435,18 @@ class BASE_EXPORT Value { - }; - struct { - Type string_type_ : 8; -- uint16_t string_is_alive_; - std::string string_value_; - }; - struct { - Type binary_type_ : 8; -- uint16_t binary_is_alive_; - BlobStorage binary_value_; - }; - struct { - Type dict_type_ : 8; -- uint16_t dict_is_alive_; - DictStorage dict_; - }; - struct { - Type list_type_ : 8; -- uint16_t list_is_alive_; - ListStorage list_; - }; - }; -diff --git a/base/values_unittest.cc b/base/values_unittest.cc -index 0a641bcc7ef4..b23fd8332491 100644 ---- a/base/values_unittest.cc -+++ b/base/values_unittest.cc -@@ -20,17 +20,20 @@ - #include "base/strings/string16.h" - #include "base/strings/string_piece.h" - #include "base/strings/utf_string_conversions.h" -+#include "build/build_config.h" - #include "testing/gmock/include/gmock/gmock.h" - #include "testing/gtest/include/gtest/gtest.h" - - namespace base { - -+// Test is currently incorrect on Windows x86. -+#if !defined(OS_WIN) || !defined(ARCH_CPU_X86) - TEST(ValuesTest, SizeOfValue) { - // Ensure that base::Value is as small as possible, i.e. that there is - // no wasted space after the inner value due to alignment constraints. -- // Distinguish between the 'header' that includes |type_| and |is_alive_| -- // and the inner value that follows it, which can be a bool, int, double, -- // string, blob, list or dict. -+ // Distinguish between the 'header' that includes |type_| and and the inner -+ // value that follows it, which can be a bool, int, double, string, blob, list -+ // or dict. - #define INNER_TYPES_LIST(X) \ - X(bool, bool_value_) \ - X(int, int_value_) \ -@@ -61,6 +64,7 @@ TEST(ValuesTest, SizeOfValue) { - LOG(INFO) << "max_inner_struct_limit=" << max_inner_struct_limit; - } - } -+#endif - - TEST(ValuesTest, TestNothrow) { - static_assert(std::is_nothrow_move_constructible::value, -diff --git a/chrome/browser/ui/cocoa/applescript/apple_event_util.mm b/chrome/browser/ui/cocoa/applescript/apple_event_util.mm -index 16d685607ced..25a59338ee73 100644 ---- a/chrome/browser/ui/cocoa/applescript/apple_event_util.mm -+++ b/chrome/browser/ui/cocoa/applescript/apple_event_util.mm -@@ -96,6 +96,16 @@ NSAppleEventDescriptor* ValueToAppleEventDescriptor(const base::Value* value) { - } - break; - } -+ -+ // TODO(crbug.com/859477): Remove after root cause is found. -+ case base::Value::Type::DEAD: -+ CHECK(false); -+ break; -+ -+ // TODO(crbug.com/859477): Remove after root cause is found. -+ default: -+ CHECK(false); -+ break; - } - - return descriptor; -diff --git a/chromeos/network/onc/variable_expander.cc b/chromeos/network/onc/variable_expander.cc -index fd72752c2aa6..cd5bbb238eb3 100644 ---- a/chromeos/network/onc/variable_expander.cc -+++ b/chromeos/network/onc/variable_expander.cc -@@ -145,6 +145,12 @@ bool VariableExpander::ExpandValue(base::Value* value) const { - // Nothing to do here. - break; - } -+ -+ // TODO(crbug.com/859477): Remove after root cause is found. -+ case base::Value::Type::DEAD: { -+ CHECK(false); -+ break; -+ } - } - return no_error; - } -diff --git a/components/policy/core/browser/android/policy_converter.cc b/components/policy/core/browser/android/policy_converter.cc -index b711a64febc9..9d41ad0d1507 100644 ---- a/components/policy/core/browser/android/policy_converter.cc -+++ b/components/policy/core/browser/android/policy_converter.cc -@@ -175,10 +175,17 @@ std::unique_ptr PolicyConverter::ConvertValueToSchema( - } - return value; - } -+ -+ // TODO(crbug.com/859477): Remove after root cause is found. -+ case base::Value::Type::DEAD: { -+ CHECK(false); -+ return nullptr; -+ } - } - -- NOTREACHED(); -- return std::unique_ptr(); -+ // TODO(crbug.com/859477): Revert to NOTREACHED() after root cause is found. -+ CHECK(false); -+ return nullptr; - } - - void PolicyConverter::SetPolicyValue(const std::string& key, -diff --git a/components/policy/core/common/policy_loader_win_unittest.cc b/components/policy/core/common/policy_loader_win_unittest.cc -index 311e7fb122fc..0377307c5e28 100644 ---- a/components/policy/core/common/policy_loader_win_unittest.cc -+++ b/components/policy/core/common/policy_loader_win_unittest.cc -@@ -133,8 +133,14 @@ bool InstallValue(const base::Value& value, - - case base::Value::Type::BINARY: - return false; -+ -+ // TODO(crbug.com/859477): Remove after root cause is found. -+ case base::Value::Type::DEAD: -+ CHECK(false); -+ return false; - } -- NOTREACHED(); -+ // TODO(crbug.com/859477): Revert to NOTREACHED() after root cause is found. -+ CHECK(false); - return false; - } - -diff --git a/components/policy/core/common/policy_test_utils.cc b/components/policy/core/common/policy_test_utils.cc -index 5af98b47275c..919f004153ec 100644 ---- a/components/policy/core/common/policy_test_utils.cc -+++ b/components/policy/core/common/policy_test_utils.cc -@@ -137,6 +137,11 @@ CFPropertyListRef ValueToProperty(const base::Value& value) { - // because there's no equivalent JSON type, and policy values can only - // take valid JSON values. - break; -+ -+ // TODO(crbug.com/859477): Remove after root cause is found. -+ case base::Value::Type::DEAD: -+ CHECK(false); -+ break; - } - - return NULL; -diff --git a/components/policy/core/common/registry_dict.cc b/components/policy/core/common/registry_dict.cc -index f3ed372bdcb3..696ba7e04abe 100644 ---- a/components/policy/core/common/registry_dict.cc -+++ b/components/policy/core/common/registry_dict.cc -@@ -135,6 +135,10 @@ std::unique_ptr ConvertRegistryValue(const base::Value& value, - case base::Value::Type::BINARY: - // No conversion possible. - break; -+ // TODO(crbug.com/859477): Remove after root cause is found. -+ case base::Value::Type::DEAD: -+ CHECK(false); -+ return nullptr; - } - - LOG(WARNING) << "Failed to convert " << value.type() << " to " -diff --git a/content/browser/android/java/gin_java_script_to_java_types_coercion.cc b/content/browser/android/java/gin_java_script_to_java_types_coercion.cc -index dabd66ba8c72..84fd5489a414 100644 ---- a/content/browser/android/java/gin_java_script_to_java_types_coercion.cc -+++ b/content/browser/android/java/gin_java_script_to_java_types_coercion.cc -@@ -722,8 +722,14 @@ jvalue CoerceJavaScriptValueToJavaValue(JNIEnv* env, - case base::Value::Type::BINARY: - return CoerceGinJavaBridgeValueToJavaValue( - env, value, target_type, coerce_to_string, object_refs, error); -+ // TODO(crbug.com/859477): Remove after root cause is found. -+ case base::Value::Type::DEAD: -+ CHECK(false); -+ return jvalue(); - } -- NOTREACHED(); -+ -+ // TODO(crbug.com/859477): Revert to NOTREACHED() after root cause is found. -+ CHECK(false); - return jvalue(); - } - -diff --git a/ipc/ipc_message_utils.cc b/ipc/ipc_message_utils.cc -index ec04c77c6c18..df6ec39bd663 100644 ---- a/ipc/ipc_message_utils.cc -+++ b/ipc/ipc_message_utils.cc -@@ -92,7 +92,7 @@ void WriteValue(base::Pickle* m, const base::Value* value, int recursion) { - - switch (value->type()) { - case base::Value::Type::NONE: -- break; -+ break; - case base::Value::Type::BOOLEAN: { - bool val; - result = value->GetAsBoolean(&val); -@@ -147,6 +147,11 @@ void WriteValue(base::Pickle* m, const base::Value* value, int recursion) { - } - break; - } -+ -+ // TODO(crbug.com/859477): Remove after root cause is found. -+ default: -+ CHECK(false); -+ break; - } - } - -@@ -260,7 +265,9 @@ bool ReadValue(const base::Pickle* m, - break; - } - default: -- return false; -+ // TODO(crbug.com/859477): Remove after root cause is found. -+ CHECK(false); -+ return false; - } - - return true; -diff --git a/mojo/public/cpp/base/values_mojom_traits.h b/mojo/public/cpp/base/values_mojom_traits.h -index cdb9bbbd94df..66752b7c90d8 100644 ---- a/mojo/public/cpp/base/values_mojom_traits.h -+++ b/mojo/public/cpp/base/values_mojom_traits.h -@@ -86,8 +86,13 @@ struct COMPONENT_EXPORT(MOJO_BASE_SHARED_TRAITS) - return mojo_base::mojom::ValueDataView::Tag::DICTIONARY_VALUE; - case base::Value::Type::LIST: - return mojo_base::mojom::ValueDataView::Tag::LIST_VALUE; -+ // TODO(crbug.com/859477): Remove after root cause is found. -+ case base::Value::Type::DEAD: -+ CHECK(false); -+ return mojo_base::mojom::ValueDataView::Tag::NULL_VALUE; - } -- NOTREACHED(); -+ // TODO(crbug.com/859477): Revert to NOTREACHED() after root cause is found. -+ CHECK(false); - return mojo_base::mojom::ValueDataView::Tag::NULL_VALUE; - } - -diff --git a/ppapi/shared_impl/private/ppb_x509_certificate_private_shared.cc b/ppapi/shared_impl/private/ppb_x509_certificate_private_shared.cc -index 6ffff36337e0..7f392d50f718 100644 ---- a/ppapi/shared_impl/private/ppb_x509_certificate_private_shared.cc -+++ b/ppapi/shared_impl/private/ppb_x509_certificate_private_shared.cc -@@ -73,6 +73,8 @@ PP_Var PPB_X509Certificate_Fields::GetFieldAsPPVar( - } - case base::Value::Type::DICTIONARY: - case base::Value::Type::LIST: -+ // TODO(crbug.com/859477): Remove after root cause is found. -+ case base::Value::Type::DEAD: - // Not handled. - break; - } --- -2.21.0 - diff --git a/chromium-74.0.3729.169-glibc-2.29-clone-vfork.patch b/chromium-74.0.3729.169-glibc-2.29-clone-vfork.patch deleted file mode 100644 index 0c9a5d1..0000000 --- a/chromium-74.0.3729.169-glibc-2.29-clone-vfork.patch +++ /dev/null @@ -1,50 +0,0 @@ -diff -up chromium-74.0.3729.169/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc.glibc229 chromium-74.0.3729.169/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc ---- chromium-74.0.3729.169/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc.glibc229 2019-05-31 13:45:04.165403187 -0400 -+++ chromium-74.0.3729.169/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc 2019-05-31 13:45:38.200830150 -0400 -@@ -162,6 +162,15 @@ ResultExpr EvaluateSyscallImpl(int fs_de - } - #endif - -+#if defined(__NR_vfork) -+ // vfork() is almost never used as a system call, but some libc versions (e.g. -+ // older versions of bionic) might use it in a posix_spawn() implementation, -+ // which is used by system(); -+ if (sysno == __NR_vfork) { -+ return Error(EPERM); -+ } -+#endif -+ - if (sysno == __NR_futex) - return RestrictFutex(); - -diff -up chromium-74.0.3729.169/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc.glibc229 chromium-74.0.3729.169/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc ---- chromium-74.0.3729.169/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc.glibc229 2019-05-31 13:45:54.653553140 -0400 -+++ chromium-74.0.3729.169/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc 2019-05-31 13:47:19.357675791 -0400 -@@ -134,7 +134,8 @@ namespace sandbox { - #if !defined(OS_NACL_NONSFI) - // Allow Glibc's and Android pthread creation flags, crash on any other - // thread creation attempts and EPERM attempts to use neither --// CLONE_VM, nor CLONE_THREAD, which includes all fork() implementations. -+// CLONE_VM nor CLONE_THREAD (all fork implementations), unless CLONE_VFORK is -+// present (as in newer versions of posix_spawn). - ResultExpr RestrictCloneToThreadsAndEPERMFork() { - const Arg flags(0); - -@@ -153,8 +154,16 @@ ResultExpr RestrictCloneToThreadsAndEPER - AnyOf(flags == kAndroidCloneMask, flags == kObsoleteAndroidCloneMask, - flags == kGlibcPthreadFlags); - -+ // The following two flags are the two important flags in any vfork-emulating -+ // clone call. EPERM any clone call that contains both of them. -+ const uint64_t kImportantCloneVforkFlags = CLONE_VFORK | CLONE_VM; -+ -+ const BoolExpr is_fork_or_clone_vfork = -+ AnyOf((flags & (CLONE_VM | CLONE_THREAD)) == 0, -+ (flags & kImportantCloneVforkFlags) == kImportantCloneVforkFlags); -+ - return If(IsAndroid() ? android_test : glibc_test, Allow()) -- .ElseIf((flags & (CLONE_VM | CLONE_THREAD)) == 0, Error(EPERM)) -+ .ElseIf(is_fork_or_clone_vfork, Error(EPERM)) - .Else(CrashSIGSYSClone()); - } - diff --git a/chromium-75.0.3770.80-SIOCGSTAMP.patch b/chromium-75.0.3770.80-SIOCGSTAMP.patch new file mode 100644 index 0000000..0ef1e7f --- /dev/null +++ b/chromium-75.0.3770.80-SIOCGSTAMP.patch @@ -0,0 +1,15 @@ +diff -up chromium-75.0.3770.80/third_party/webrtc/rtc_base/physical_socket_server.h.SIOCGSTAMP chromium-75.0.3770.80/third_party/webrtc/rtc_base/physical_socket_server.h +--- chromium-75.0.3770.80/third_party/webrtc/rtc_base/physical_socket_server.h.SIOCGSTAMP 2019-06-06 10:04:57.050403639 -0400 ++++ chromium-75.0.3770.80/third_party/webrtc/rtc_base/physical_socket_server.h 2019-06-06 10:06:03.975121688 -0400 +@@ -16,6 +16,11 @@ + #define WEBRTC_USE_EPOLL 1 + #endif + ++// for SIOCGSTAMP in Linux 5.2 ++#if defined(WEBRTC_LINUX) ++#include ++#endif ++ + #include + #include + #include diff --git a/chromium-75.0.3770.80-aeed4d-gcc-dcheck_ne-fix.patch b/chromium-75.0.3770.80-aeed4d-gcc-dcheck_ne-fix.patch new file mode 100644 index 0000000..2a8ac2f --- /dev/null +++ b/chromium-75.0.3770.80-aeed4d-gcc-dcheck_ne-fix.patch @@ -0,0 +1,14 @@ +diff -up chromium-75.0.3770.80/cc/scheduler/compositor_frame_reporting_controller.cc.gcc-dcheck_ne-fix chromium-75.0.3770.80/cc/scheduler/compositor_frame_reporting_controller.cc +--- chromium-75.0.3770.80/cc/scheduler/compositor_frame_reporting_controller.cc.gcc-dcheck_ne-fix 2019-06-06 12:42:27.431575032 -0400 ++++ chromium-75.0.3770.80/cc/scheduler/compositor_frame_reporting_controller.cc 2019-06-06 12:43:05.692848409 -0400 +@@ -31,8 +31,8 @@ void CompositorFrameReportingController: + + 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, diff --git a/chromium-75.0.3770.80-gcc-no-assume.patch b/chromium-75.0.3770.80-gcc-no-assume.patch new file mode 100644 index 0000000..0bbb08f --- /dev/null +++ b/chromium-75.0.3770.80-gcc-no-assume.patch @@ -0,0 +1,21 @@ +diff -up chromium-75.0.3770.80/third_party/angle/src/common/debug.h.gcc-assume chromium-75.0.3770.80/third_party/angle/src/common/debug.h +--- chromium-75.0.3770.80/third_party/angle/src/common/debug.h.gcc-assume 2019-06-06 17:38:01.876631704 -0400 ++++ chromium-75.0.3770.80/third_party/angle/src/common/debug.h 2019-06-07 09:30:06.205446547 -0400 +@@ -248,7 +248,7 @@ std::ostream &FmtHex(std::ostream &os, T + # define EVENT(message, ...) (void(0)) + #endif + +-#if defined(COMPILER_GCC) || defined(__clang__) ++#if defined(__GNUC__) + # define ANGLE_CRASH() __builtin_trap() + #else + # define ANGLE_CRASH() ((void)(*(volatile char *)0 = 0)), __assume(0) +@@ -336,7 +336,7 @@ std::ostream &FmtHex(std::ostream &os, T + # 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") diff --git a/chromium-75.0.3770.80-no-zlib-mangle.patch b/chromium-75.0.3770.80-no-zlib-mangle.patch new file mode 100644 index 0000000..998be67 --- /dev/null +++ b/chromium-75.0.3770.80-no-zlib-mangle.patch @@ -0,0 +1,14 @@ +diff -up chromium-75.0.3770.80/third_party/zlib/zconf.h.nozmangle chromium-75.0.3770.80/third_party/zlib/zconf.h +--- chromium-75.0.3770.80/third_party/zlib/zconf.h.nozmangle 2019-06-05 11:12:30.420412467 -0400 ++++ chromium-75.0.3770.80/third_party/zlib/zconf.h 2019-06-05 11:17:43.512683058 -0400 +@@ -8,10 +8,6 @@ + #ifndef ZCONF_H + #define ZCONF_H + +-/* This include does prefixing as below, but with an updated set of names. Also +- * sets up export macros in component builds. */ +-#include "chromeconf.h" +- + /* + * If you *really* need a unique prefix for all types and library functions, + * compile with -DZ_PREFIX. The "standard" zlib should be compiled without it. diff --git a/chromium-75.0.3770.80-pure-virtual-crash-fix.patch b/chromium-75.0.3770.80-pure-virtual-crash-fix.patch new file mode 100644 index 0000000..06c909f --- /dev/null +++ b/chromium-75.0.3770.80-pure-virtual-crash-fix.patch @@ -0,0 +1,24 @@ +diff -up chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.cc.pure-virtual-fix chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.cc +--- chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.cc.pure-virtual-fix 2019-06-07 15:03:43.302202979 -0400 ++++ chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.cc 2019-06-07 15:04:25.140393048 -0400 +@@ -116,4 +116,9 @@ void RenderProcessUserData::RenderProces + base::Unretained(process_node_.get()), info.exit_code)); + } + ++void RenderProcessUserData::RenderProcessHostDestroyed( ++ content::RenderProcessHost* host) { ++ host->RemoveUserData(kRenderProcessUserDataKey); ++} ++ + } // namespace performance_manager +diff -up chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.h.pure-virtual-fix chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.h +--- chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.h.pure-virtual-fix 2019-06-07 15:04:43.530039597 -0400 ++++ chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.h 2019-06-07 15:05:13.770458374 -0400 +@@ -47,6 +47,7 @@ class RenderProcessUserData : public bas + 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. diff --git a/chromium-75.0.3770.80-revert-daff6b.patch b/chromium-75.0.3770.80-revert-daff6b.patch new file mode 100644 index 0000000..f996898 --- /dev/null +++ b/chromium-75.0.3770.80-revert-daff6b.patch @@ -0,0 +1,13 @@ +diff -up chromium-75.0.3770.80/components/omnibox/browser/autocomplete_match.cc.revert-daff6b chromium-75.0.3770.80/components/omnibox/browser/autocomplete_match.cc +--- chromium-75.0.3770.80/components/omnibox/browser/autocomplete_match.cc.revert-daff6b 2019-06-06 14:54:13.819190586 -0400 ++++ chromium-75.0.3770.80/components/omnibox/browser/autocomplete_match.cc 2019-06-06 14:54:31.892839991 -0400 +@@ -154,8 +154,7 @@ AutocompleteMatch::AutocompleteMatch(con + additional_info(match.additional_info), + duplicate_matches(match.duplicate_matches) {} + +-AutocompleteMatch::AutocompleteMatch(AutocompleteMatch&& match) noexcept = +- default; ++AutocompleteMatch::AutocompleteMatch(AutocompleteMatch&& match) = default; + + AutocompleteMatch::~AutocompleteMatch() { + } diff --git a/chromium-75.0.3770.80-vaapi-libva1-compatibility.patch b/chromium-75.0.3770.80-vaapi-libva1-compatibility.patch new file mode 100644 index 0000000..dc0bfcb --- /dev/null +++ b/chromium-75.0.3770.80-vaapi-libva1-compatibility.patch @@ -0,0 +1,14 @@ +diff -up chromium-75.0.3770.80/media/gpu/vaapi/vaapi_mjpeg_decode_accelerator.cc.va1compat chromium-75.0.3770.80/media/gpu/vaapi/vaapi_mjpeg_decode_accelerator.cc +--- chromium-75.0.3770.80/media/gpu/vaapi/vaapi_mjpeg_decode_accelerator.cc.va1compat 2019-06-05 11:35:57.274466969 -0400 ++++ chromium-75.0.3770.80/media/gpu/vaapi/vaapi_mjpeg_decode_accelerator.cc 2019-06-05 11:36:17.201067326 -0400 +@@ -39,6 +39,10 @@ enum VAJDADecoderFailure { + VAJDA_DECODER_FAILURES_MAX, + }; + ++#ifndef VA_FOURCC_I420 ++#define VA_FOURCC_I420 VA_FOURCC('I', '4', '2', '0') ++#endif ++ + static void ReportToVAJDADecoderFailureUMA(VAJDADecoderFailure failure) { + UMA_HISTOGRAM_ENUMERATION("Media.VAJDA.DecoderFailure", failure, + VAJDA_DECODER_FAILURES_MAX + 1); diff --git a/chromium.spec b/chromium.spec index 886e509..7dd7d6d 100644 --- a/chromium.spec +++ b/chromium.spec @@ -12,6 +12,9 @@ # We usually want this. %global build_headless 1 +# We'd like to always have this on. +%global use_vaapi 0 + # NEVER EVER EVER turn this on in official builds %global freeworld 0 %if %{freeworld} @@ -51,9 +54,9 @@ %global __provides_exclude_from %{chromium_path}/.*\\.so|%{chromium_path}/lib/.*\\.so|%{chromium_path}/lib/.*\\.so.* %if 0%{?rhel} == 7 -%global privlibs libEGL|libGLESv2|libVkICD_mock_icd|libVkLayer_core_validation|libVkLayer_object_lifetimes|libVkLayer_stateless_validation|libVkLayer_thread_safety|libVkLayer_unique_objects|libaccessibility|libandroid_mojo_bindings_shared|libanimation|libapdu|libaura|libaura_extra|libbase|libbase_i18n|libbindings|libbindings_base|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core|libblink_core_mojo_bindings_shared|libblink_embedded_frame_sink_mojo_bindings_shared|libblink_modules|libblink_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcbor|libcc|libcc_animation|libcc_base|libcc_debug|libcc_mojo_embedder|libcc_paint|libcdm_manager|libcertificate_matching|libchrome_features|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom|libcontent_service_mojom_shared|libcrash_key|libcrcrypto|libdbus|libdbus_thread_linux|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevice_vr|libdevice_vr_mojo_bindings|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevices|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libembedder|libembedder_switches|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libextras|libfido|libfingerprint|libfreetype_harfbuzz|libgamepad_mojom|libgamepad_mojom_blink|libgamepad_mojom_shared|libgamepad_shared_typemap_traits|libgcm|libgeometry|libgeometry_skia|libgesture_detection|libgfx|libgfx_ipc|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_switches|libgfx_x11|libgin|libgl_in_process_context|libgl_init|libgl_wrapper|libgles2|libgles2_implementation|libgles2_utils|libgpu|libgpu_ipc_service|libgtkui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc|libipc_mojom|libipc_mojom_shared|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|liblearning_common|liblearning_impl|libleveldatabase|liblive_tab_count_metrics|libmanager|libmedia_blink|libmedia_filters_jpeg_parser|libmedia_gpu|libmedia_mojo_services|libmedia_session_cpp|libmedia_webrtc|libmemory_instrumentation|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirclient.so.9|libmirroring_service|libmojo_base_lib|libmojo_base_mojom|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_shared_typemap_traits|libmojo_core_embedder|libmojo_core_embedder_internal|libmojo_core_ports|libmojo_cpp_platform|libmojo_ime_lib|libmojo_mojom_bindings|libmojo_mojom_bindings_shared|libmojo_public_system|libmojo_public_system_cpp|libmojom_core_shared|libmojom_mhtml_load_result_shared|libmojom_modules_shared|libmojom_platform_shared|libmpris|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp|libnetwork_cpp_base|libnetwork_service|libnetwork_session_configurator|libonc|libos_crypt|libperfetto|libplatform|libplatform_window_handler_libs|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp_base|libresource_coordinator_cpp_features|libresource_coordinator_public_mojom|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libsandbox|libsandbox_services|libscheduling_metrics|libseccomp_bpf|libservice|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom|libservice_manager_mojom_blink|libservice_manager_mojom_constants|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_shared|libservice_manager_mojom_traits|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libspeech_recognition_error_code_mojom|libspeech_recognition_error_code_mojom_blink|libspeech_recognition_error_code_mojom_shared|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libtracing_cpp|libtracing_mojom|libtracing_mojom_shared|libui_accessibility_ax_mojom|libui_accessibility_ax_mojom_blink|libui_accessibility_ax_mojom_shared|libui_base|libui_base_clipboard|libui_base_clipboard_types|libui_base_features|libui_base_ime|libui_base_ime_linux|libui_base_ime_types|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl|liburl_ipc|liburl_matcher|libusb_shared|libuser_manager|libuser_prefs|libv8|libv8_libbase|libv8_libplatform|libviews|libviz_common|libviz_resource_format_utils|libviz_vulkan_context_provider|libvr_base|libvr_common|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libweb_dialogs|libweb_feature_mojo_bindings_mojom|libweb_feature_mojo_bindings_mojom_blink|libweb_feature_mojo_bindings_mojom_shared|libwebdata_common|libwebgpu|libwebview|libwm|libwm_public|libwtf|libx11_events_platform|libx11_window|libzygote|libmedia|libffmpeg|libfontconfig +%global privlibs libEGL|libGLESv2|libVkICD_mock_icd|libVkLayer_core_validation|libVkLayer_object_lifetimes|libVkLayer_stateless_validation|libVkLayer_thread_safety|libVkLayer_unique_objects|libaccessibility|libandroid_mojo_bindings_shared|libanimation|libapdu|libaura|libaura_extra|libauthenticator_test_mojo_bindings_shared|libbase|libbase_i18n|libbindings|libbindings_base|libblink_common|libblink_controller|libblink_core|libblink_embedded_frame_sink_mojo_bindings_shared|libblink_features|libblink_modules|libblink_mojo_bindings_shared|libblink_mojom_broadcastchannel_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcbor|libcc|libcc_animation|libcc_base|libcc_debug|libcc_mojo_embedder|libcc_paint|libcdm_manager|libcertificate_matching|libchrome_features|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom|libcontent_service_mojom_shared|libcrash_key|libcrcrypto|libdbus|libdbus_thread_linux|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevice_vr|libdevice_vr_mojo_bindings|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevices|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libembedder|libembedder_switches|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libextras|libfido|libfingerprint|libfreetype_harfbuzz|libgamepad_mojom|libgamepad_mojom_blink|libgamepad_mojom_shared|libgamepad_shared_typemap_traits|libgcm|libgeometry|libgeometry_skia|libgesture_detection|libgfx|libgfx_ipc|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_switches|libgfx_x11|libgin|libgl_in_process_context|libgl_init|libgl_wrapper|libgles2|libgles2_implementation|libgles2_utils|libgpu|libgpu_ipc_service|libgtkui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc|libipc_mojom|libipc_mojom_shared|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|liblearning_common|liblearning_impl|libleveldatabase|liblive_tab_count_metrics|libmanager|libmedia_blink|libmedia_filters_jpeg_parser|libmedia_gpu|libmedia_mojo_services|libmedia_session_cpp|libmedia_webrtc|libmemory_instrumentation|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirclient.so.9|libmirroring_service|libmojo_base_lib|libmojo_base_mojom|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_shared_typemap_traits|libmojo_core_embedder|libmojo_core_embedder_internal|libmojo_core_ports|libmojo_cpp_platform|libmojo_ime_lib|libmojo_mojom_bindings|libmojo_mojom_bindings_shared|libmojo_public_system|libmojo_public_system_cpp|libmojom_core_shared|libmojom_mhtml_load_result_shared|libmojom_modules_shared|libmojom_platform_shared|libmpris|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp|libnetwork_cpp_base|libnetwork_service|libnetwork_session_configurator|libonc|libos_crypt|libperfetto|libplatform|libplatform_window_handler_libs|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp_base|libresource_coordinator_cpp_features|libresource_coordinator_public_mojom|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libsandbox|libsandbox_services|libscheduling_metrics|libseccomp_bpf|libservice|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom|libservice_manager_mojom_blink|libservice_manager_mojom_constants|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_shared|libservice_manager_mojom_traits|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libtracing_cpp|libtracing_mojom|libtracing_mojom_shared|libui_accessibility_ax_mojom|libui_accessibility_ax_mojom_blink|libui_accessibility_ax_mojom_shared|libui_base|libui_base_clipboard|libui_base_clipboard_types|libui_base_features|libui_base_idle|libui_base_ime|libui_base_ime_init|libui_base_ime_linux|libui_base_ime_types|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl|liburl_ipc|liburl_matcher|libusb_shared|libuser_manager|libuser_prefs|libv8|libv8_libbase|libv8_libplatform|libviews|libviz_common|libviz_resource_format_utils|libviz_vulkan_context_provider|libvr_base|libvr_common|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libweb_dialogs|libweb_feature_mojo_bindings_mojom|libweb_feature_mojo_bindings_mojom_blink|libweb_feature_mojo_bindings_mojom_shared|libwebdata_common|libwebgpu|libwebview|libwm|libwm_public|libwtf|libx11_events_platform|libx11_window|libzygote|libmedia|libffmpeg|libfontconfig %else -%global privlibs libEGL|libGLESv2|libVkICD_mock_icd|libVkLayer_core_validation|libVkLayer_object_lifetimes|libVkLayer_stateless_validation|libVkLayer_thread_safety|libVkLayer_unique_objects|libaccessibility|libandroid_mojo_bindings_shared|libanimation|libapdu|libaura|libaura_extra|libbase|libbase_i18n|libbindings|libbindings_base|libblink_android_mojo_bindings_shared|libblink_common|libblink_controller|libblink_core|libblink_core_mojo_bindings_shared|libblink_embedded_frame_sink_mojo_bindings_shared|libblink_modules|libblink_mojo_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcbor|libcc|libcc_animation|libcc_base|libcc_debug|libcc_mojo_embedder|libcc_paint|libcdm_manager|libcertificate_matching|libchrome_features|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom|libcontent_service_mojom_shared|libcrash_key|libcrcrypto|libdbus|libdbus_thread_linux|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevice_vr|libdevice_vr_mojo_bindings|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevices|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libembedder|libembedder_switches|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libextras|libfido|libfingerprint|libfreetype_harfbuzz|libgamepad_mojom|libgamepad_mojom_blink|libgamepad_mojom_shared|libgamepad_shared_typemap_traits|libgcm|libgeometry|libgeometry_skia|libgesture_detection|libgfx|libgfx_ipc|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_switches|libgfx_x11|libgin|libgl_in_process_context|libgl_init|libgl_wrapper|libgles2|libgles2_implementation|libgles2_utils|libgpu|libgpu_ipc_service|libgtkui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc|libipc_mojom|libipc_mojom_shared|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|liblearning_common|liblearning_impl|libleveldatabase|liblive_tab_count_metrics|libmanager|libmedia_blink|libmedia_filters_jpeg_parser|libmedia_gpu|libmedia_mojo_services|libmedia_session_cpp|libmedia_webrtc|libmemory_instrumentation|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirclient.so.9|libmirroring_service|libmojo_base_lib|libmojo_base_mojom|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_shared_typemap_traits|libmojo_core_embedder|libmojo_core_embedder_internal|libmojo_core_ports|libmojo_cpp_platform|libmojo_ime_lib|libmojo_mojom_bindings|libmojo_mojom_bindings_shared|libmojo_public_system|libmojo_public_system_cpp|libmojom_core_shared|libmojom_mhtml_load_result_shared|libmojom_modules_shared|libmojom_platform_shared|libmpris|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp|libnetwork_cpp_base|libnetwork_service|libnetwork_session_configurator|libonc|libos_crypt|libperfetto|libplatform|libplatform_window_handler_libs|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp_base|libresource_coordinator_cpp_features|libresource_coordinator_public_mojom|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libsandbox|libsandbox_services|libscheduling_metrics|libseccomp_bpf|libservice|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom|libservice_manager_mojom_blink|libservice_manager_mojom_constants|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_shared|libservice_manager_mojom_traits|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libspeech_recognition_error_code_mojom|libspeech_recognition_error_code_mojom_blink|libspeech_recognition_error_code_mojom_shared|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libtracing_cpp|libtracing_mojom|libtracing_mojom_shared|libui_accessibility_ax_mojom|libui_accessibility_ax_mojom_blink|libui_accessibility_ax_mojom_shared|libui_base|libui_base_clipboard|libui_base_clipboard_types|libui_base_features|libui_base_ime|libui_base_ime_linux|libui_base_ime_types|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl|liburl_ipc|liburl_matcher|libusb_shared|libuser_manager|libuser_prefs|libv8|libv8_libbase|libv8_libplatform|libviews|libviz_common|libviz_resource_format_utils|libviz_vulkan_context_provider|libvr_base|libvr_common|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libweb_dialogs|libweb_feature_mojo_bindings_mojom|libweb_feature_mojo_bindings_mojom_blink|libweb_feature_mojo_bindings_mojom_shared|libwebdata_common|libwebgpu|libwebview|libwm|libwm_public|libwtf|libx11_events_platform|libx11_window|libzygote|libmedia|libffmpeg +%global privlibs libEGL|libGLESv2|libVkICD_mock_icd|libVkLayer_core_validation|libVkLayer_object_lifetimes|libVkLayer_stateless_validation|libVkLayer_thread_safety|libVkLayer_unique_objects|libaccessibility|libandroid_mojo_bindings_shared|libanimation|libapdu|libaura|libaura_extra|libauthenticator_test_mojo_bindings_shared|libbase|libbase_i18n|libbindings|libbindings_base|libblink_common|libblink_controller|libblink_core|libblink_embedded_frame_sink_mojo_bindings_shared|libblink_features|libblink_modules|libblink_mojo_bindings_shared|libblink_mojom_broadcastchannel_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcbor|libcc|libcc_animation|libcc_base|libcc_debug|libcc_mojo_embedder|libcc_paint|libcdm_manager|libcertificate_matching|libchrome_features|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom|libcontent_service_mojom_shared|libcrash_key|libcrcrypto|libdbus|libdbus_thread_linux|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevice_vr|libdevice_vr_mojo_bindings|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevices|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libembedder|libembedder_switches|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libextras|libfido|libfingerprint|libfreetype_harfbuzz|libgamepad_mojom|libgamepad_mojom_blink|libgamepad_mojom_shared|libgamepad_shared_typemap_traits|libgcm|libgeometry|libgeometry_skia|libgesture_detection|libgfx|libgfx_ipc|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_switches|libgfx_x11|libgin|libgl_in_process_context|libgl_init|libgl_wrapper|libgles2|libgles2_implementation|libgles2_utils|libgpu|libgpu_ipc_service|libgtkui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc|libipc_mojom|libipc_mojom_shared|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|liblearning_common|liblearning_impl|libleveldatabase|liblive_tab_count_metrics|libmanager|libmedia_blink|libmedia_filters_jpeg_parser|libmedia_gpu|libmedia_mojo_services|libmedia_session_cpp|libmedia_webrtc|libmemory_instrumentation|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirclient.so.9|libmirroring_service|libmojo_base_lib|libmojo_base_mojom|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_shared_typemap_traits|libmojo_core_embedder|libmojo_core_embedder_internal|libmojo_core_ports|libmojo_cpp_platform|libmojo_ime_lib|libmojo_mojom_bindings|libmojo_mojom_bindings_shared|libmojo_public_system|libmojo_public_system_cpp|libmojom_core_shared|libmojom_mhtml_load_result_shared|libmojom_modules_shared|libmojom_platform_shared|libmpris|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp|libnetwork_cpp_base|libnetwork_service|libnetwork_session_configurator|libonc|libos_crypt|libperfetto|libplatform|libplatform_window_handler_libs|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp_base|libresource_coordinator_cpp_features|libresource_coordinator_public_mojom|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libsandbox|libsandbox_services|libscheduling_metrics|libseccomp_bpf|libservice|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom|libservice_manager_mojom_blink|libservice_manager_mojom_constants|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_shared|libservice_manager_mojom_traits|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libtracing_cpp|libtracing_mojom|libtracing_mojom_shared|libui_accessibility_ax_mojom|libui_accessibility_ax_mojom_blink|libui_accessibility_ax_mojom_shared|libui_base|libui_base_clipboard|libui_base_clipboard_types|libui_base_features|libui_base_idle|libui_base_ime|libui_base_ime_init|libui_base_ime_linux|libui_base_ime_types|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl|liburl_ipc|liburl_matcher|libusb_shared|libuser_manager|libuser_prefs|libv8|libv8_libbase|libv8_libplatform|libviews|libviz_common|libviz_resource_format_utils|libviz_vulkan_context_provider|libvr_base|libvr_common|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libweb_dialogs|libweb_feature_mojo_bindings_mojom|libweb_feature_mojo_bindings_mojom_blink|libweb_feature_mojo_bindings_mojom_shared|libwebdata_common|libwebgpu|libwebview|libwm|libwm_public|libwtf|libx11_events_platform|libx11_window|libzygote|libmedia|libffmpeg %endif %global __requires_exclude ^(%{privlibs})\\.so* @@ -154,14 +157,14 @@ BuildRequires: libicu-devel >= 5.4 %global chromoting_client_id %nil %endif -%global majorversion 74 +%global majorversion 75 %if %{freeworld} Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3729.169 +Version: %{majorversion}.0.3770.80 Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home @@ -227,7 +230,7 @@ Patch42: chromium-60.0.3112.78-no-libpng-prefix.patch # Do not mangle libjpeg Patch43: chromium-60.0.3112.78-jpeg-nomangle.patch # Do not mangle zlib -Patch45: chromium-60.0.3112.78-no-zlib-mangle.patch +Patch45: chromium-75.0.3770.80-no-zlib-mangle.patch # Apply these changes to work around EPEL7 compiler issues Patch46: chromium-62.0.3202.62-kmaxskip-constexpr.patch Patch47: chromium-60.0.3112.90-vulkan-force-c99.patch @@ -280,7 +283,6 @@ Patch100: chromium-67.0.3396.62-epel7-use-old-python-exec-syntax.patch # Add "Fedora" to the user agent string Patch101: chromium-72.0.3626.121-fedora-user-agent.patch # Try to fix version.py for Rawhide -Patch102: chromium-67.0.3396.99-py3fix.patch Patch103: chromium-71.0.3578.98-py2-bootstrap.patch # Fix default on redeclaration error # https://chromium.googlesource.com/chromium/src/+/122692ccee62223f266a988c575ae687e3f4c056%5E%21/#F0 @@ -306,33 +308,33 @@ Patch119: chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch Patch121: enable-vaapi.patch Patch122: chromium-73.0.3683.75-vaapi-i686-fpermissive.patch # Fix compatibility with VA-API library (libva) version 1 -Patch124: chromium-71.0.3578.98-vaapi-libva1-compatibility.patch +Patch124: chromium-75.0.3770.80-vaapi-libva1-compatibility.patch # drop rsp clobber, which breaks gcc9 (thanks to Jeff Law) Patch126: chromium-71.0.3578.98-gcc9-drop-rsp-clobber.patch -# Thanks Gentoo -Patch128: https://dev.gentoo.org/~floppym/dist/chromium-74-e1b1f3a.patch -Patch129: https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client/chromium/files/quiche-00f47df.patch # Thanks Ubuntu # Disable these two patches when v75 lands Patch130: revert-gn-4980.patch Patch131: revert-gn-4960.patch # Try to load widevine from other places Patch132: chromium-widevine-other-locations.patch -# Gentoo again! -# https://chromium.googlesource.com/chromium/src/+/7685422a90e1da829cb32d685a4b970d30738098 -Patch133: chromium-74-7685422.patch -Patch134: chromium-74-c2c467f.patch # Disable -fno-delete-null-pointer-checks Patch135: chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch # Add #include to get pipewire code to build Patch136: chromium-73.0.3683.75-pipewire-cstring-fix.patch -# One more gentoo patch -# https://chromium-review.googlesource.com/c/chromium/src/+/1472716 -Patch137: chromium-74-2f28731.patch # el7 only patch Patch139: chromium-73.0.3683.75-el7-fix-noexcept.patch -# https://bugs.chromium.org/p/chromium/issues/detail?id=949312 -Patch140: chromium-74.0.3729.169-glibc-2.29-clone-vfork.patch +# gcc does not have __assume +Patch140: chromium-75.0.3770.80-gcc-no-assume.patch +# Linux 5.2 defines SIOCGSTAMP in a slightly different way, so we need to teach chromium where to find it +Patch141: chromium-75.0.3770.80-SIOCGSTAMP.patch +# https://chromium.googlesource.com/chromium/src/+/aeed4d1f15ce84a17ea0bc219e258dc4982b2368%5E%21/#F0 +Patch142: chromium-75.0.3770.80-aeed4d-gcc-dcheck_ne-fix.patch +# Revert https://chromium.googlesource.com/chromium/src/+/daff6b66faae53a0cefb88987c9ff4843629b728%5E%21/#F0 +# It might make clang happy but it breaks gcc. F*** clang. +Patch143: chromium-75.0.3770.80-revert-daff6b.patch +# Avoid pure virtual crash destroying RenderProcessUserData +# https://chromium.googlesource.com/chromium/src/+/cdf306db81efaaaa954487585d5a5a16205a5ebd%5E%21/ +Patch144: chromium-75.0.3770.80-pure-virtual-crash-fix.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ @@ -883,7 +885,6 @@ udev. # %%patch100 -p1 -b .oldexec %endif %patch101 -p1 -b .fedora-user-agent -%patch102 -p1 -b .py3fix %patch103 -p1 -b .py2 # %%patch108 -p1 -b .move-unique-ptr %patch110 -p1 -b .fix-default-redeclaration @@ -895,26 +896,27 @@ udev. # %%patch116 -p1 -b .r591015 %patch117 -p1 -b .nofc %patch119 -p1 -b .aarch64-new-stat +%if %{use_vaapi} %patch121 -p1 -b .vaapi +%endif %ifarch i686 %patch122 -p1 -b .i686permissive %endif %patch124 -p1 -b .va1compat %patch126 -p1 -b .gcc9 -%patch128 -p1 -b .gentoo2 -%patch129 -p1 -b .gentoo3 -%patch130 -p1 -b .revert-gn-4980 -%patch131 -p1 -b .revert-gn-4960 +# %%patch130 -p1 -b .revert-gn-4980 +# %%patch131 -p1 -b .revert-gn-4960 %patch132 -p1 -b .widevine-other-locations -%patch133 -p1 -b .gentoo4 -%patch134 -p1 -b .gentoo5 %patch135 -p1 -b .disable-ndnpc %patch136 -p1 -b .cstring-fix -%patch137 -p1 -b .2f28731 %if 0%{?rhel} == 7 %patch139 -p1 -b .el7-noexcept %endif -%patch140 -p1 -b .glibc229 +%patch140 -p1 -b .gcc-assume +%patch141 -p1 -b .SIOCGSTAMP +%patch142 -p1 -b .gcc-dcheck_ne-fix +%patch143 -p1 -b .revert-daff6b +%patch144 -p1 -b .pure-virtual-fix # Change shebang in all relevant files in this directory and all subdirectories # See `man find` for how the `-exec command {} +` syntax works @@ -1105,12 +1107,14 @@ CHROMIUM_BROWSER_GN_DEFINES+=' is_component_ffmpeg=true is_component_build=true' %else CHROMIUM_BROWSER_GN_DEFINES+=' is_component_ffmpeg=false is_component_build=false' %endif -CHROMIUM_BROWSER_GN_DEFINES+=' remove_webcore_debug_symbols=true enable_hangout_services_extension=true' +CHROMIUM_BROWSER_GN_DEFINES+=' blink_symbol_level=0 enable_hangout_services_extension=true' CHROMIUM_BROWSER_GN_DEFINES+=' use_aura=true' CHROMIUM_BROWSER_GN_DEFINES+=' enable_widevine=true' +%if %{use_vaapi} %if 0%{?fedora} >= 28 CHROMIUM_BROWSER_GN_DEFINES+=' use_vaapi=true' %endif +%endif %if 0%{?fedora} CHROMIUM_BROWSER_GN_DEFINES+=' rtc_use_pipewire=true rtc_link_pipewire=true' %endif @@ -1172,6 +1176,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/angle/third_party/vulkan-tools' \ 'third_party/angle/third_party/vulkan-validation-layers' \ 'third_party/apple_apsl' \ + 'third_party/axe-core' \ 'third_party/blanketjs' \ 'third_party/blink' \ 'third_party/boringssl' \ @@ -1197,16 +1202,17 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/cld_3' \ 'third_party/closure_compiler' \ 'third_party/crashpad' \ + 'third_party/crashpad/crashpad/third_party/lss' \ 'third_party/crashpad/crashpad/third_party/zlib/' \ 'third_party/crc32c' \ 'third_party/cros_system_api' \ 'third_party/dav1d' \ + 'third_party/dawn' \ 'third_party/devscripts' \ 'third_party/dom_distiller_js' \ 'third_party/emoji-segmenter' \ 'third_party/expat' \ 'third_party/ffmpeg' \ - 'third_party/fips181' \ 'third_party/flac' \ 'third_party/flatbuffers' \ 'third_party/flot' \ @@ -1283,6 +1289,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/pdfium/third_party/libtiff' \ 'third_party/pdfium/third_party/skia_shared' \ 'third_party/perfetto' \ + 'third_party/pffft' \ 'third_party/ply' \ 'third_party/polymer' \ 'third_party/protobuf' \ @@ -1908,6 +1915,10 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Wed Jun 5 2019 Tom Callaway - 75.0.3770.80-1 +- update to 75.0.3770.80 +- disable vaapi (via conditional), too broken + * Fri May 31 2019 Tom Callaway - 74.0.3729.169-1 - update to 74.0.3729.169 diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index cc5390b..1933058 100755 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -111,6 +111,7 @@ header_files=" libavcodec/x86/inline_asm.h \ libavcodec/mpegvideodsp.h \ libavcodec/mpegvideoencdsp.h \ libavcodec/options_table.h \ + libavcodec/opusdsp.h \ libavcodec/opus_celt.h \ libavcodec/opus_pvq.h \ libavcodec/opus_rc.h \ diff --git a/enable-vaapi.patch b/enable-vaapi.patch index 08c1f94..3286af7 100644 --- a/enable-vaapi.patch +++ b/enable-vaapi.patch @@ -1,7 +1,7 @@ -diff -up chromium-73.0.3683.75/chrome/browser/about_flags.cc.vaapi chromium-73.0.3683.75/chrome/browser/about_flags.cc ---- chromium-73.0.3683.75/chrome/browser/about_flags.cc.vaapi 2019-03-11 18:00:53.000000000 -0400 -+++ chromium-73.0.3683.75/chrome/browser/about_flags.cc 2019-03-13 09:04:44.186716761 -0400 -@@ -1606,7 +1606,7 @@ const FeatureEntry kFeatureEntries[] = { +diff -up chromium-75.0.3770.80/chrome/browser/about_flags.cc.vaapi chromium-75.0.3770.80/chrome/browser/about_flags.cc +--- chromium-75.0.3770.80/chrome/browser/about_flags.cc.vaapi 2019-06-04 14:55:16.000000000 -0400 ++++ chromium-75.0.3770.80/chrome/browser/about_flags.cc 2019-06-05 11:26:46.472753047 -0400 +@@ -1390,7 +1390,7 @@ const FeatureEntry kFeatureEntries[] = { "disable-accelerated-video-decode", flag_descriptions::kAcceleratedVideoDecodeName, flag_descriptions::kAcceleratedVideoDecodeDescription, @@ -10,7 +10,7 @@ diff -up chromium-73.0.3683.75/chrome/browser/about_flags.cc.vaapi chromium-73.0 SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedVideoDecode), }, #if defined(OS_WIN) -@@ -2216,12 +2216,12 @@ const FeatureEntry kFeatureEntries[] = { +@@ -1882,12 +1882,12 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE(service_manager::features::kXRSandbox)}, #endif // ENABLE_ISOLATED_XR_SERVICE #endif // ENABLE_VR @@ -26,15 +26,15 @@ diff -up chromium-73.0.3683.75/chrome/browser/about_flags.cc.vaapi chromium-73.0 {"v8-cache-options", flag_descriptions::kV8CacheOptionsName, flag_descriptions::kV8CacheOptionsDescription, kOsAll, MULTI_VALUE_TYPE(kV8CacheOptionsChoices)}, -diff -up chromium-73.0.3683.75/chrome/browser/flag_descriptions.cc.vaapi chromium-73.0.3683.75/chrome/browser/flag_descriptions.cc ---- chromium-73.0.3683.75/chrome/browser/flag_descriptions.cc.vaapi 2019-03-11 18:00:53.000000000 -0400 -+++ chromium-73.0.3683.75/chrome/browser/flag_descriptions.cc 2019-03-13 09:04:44.188716714 -0400 -@@ -3096,15 +3096,20 @@ const char kTextSuggestionsTouchBarDescr +diff -up chromium-75.0.3770.80/chrome/browser/flag_descriptions.cc.vaapi chromium-75.0.3770.80/chrome/browser/flag_descriptions.cc +--- chromium-75.0.3770.80/chrome/browser/flag_descriptions.cc.vaapi 2019-06-05 11:26:46.473753026 -0400 ++++ chromium-75.0.3770.80/chrome/browser/flag_descriptions.cc 2019-06-05 11:29:28.039397479 -0400 +@@ -2941,15 +2941,20 @@ const char kMacSystemMediaPermissionsInf #endif -// Chrome OS ------------------------------------------------------------------- -+// Chrome OS Linux------------------------------------------------------------------- ++// Chrome OS & Linux------------------------------------------------------------ -#if defined(OS_CHROMEOS) +#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID)) @@ -46,21 +46,21 @@ diff -up chromium-73.0.3683.75/chrome/browser/flag_descriptions.cc.vaapi chromiu "available."; +#endif + -+// Chrome OS -------------------------------------------------- ++// Chrome OS ------------------------------------------------------------------- + +#if defined(OS_CHROMEOS) - const char kAllowTouchpadThreeFingerClickName[] = "Touchpad three-finger-click"; - const char kAllowTouchpadThreeFingerClickDescription[] = -diff -up chromium-73.0.3683.75/chrome/browser/flag_descriptions.h.vaapi chromium-73.0.3683.75/chrome/browser/flag_descriptions.h ---- chromium-73.0.3683.75/chrome/browser/flag_descriptions.h.vaapi 2019-03-11 18:00:53.000000000 -0400 -+++ chromium-73.0.3683.75/chrome/browser/flag_descriptions.h 2019-03-13 09:04:44.190716667 -0400 -@@ -1842,13 +1842,19 @@ extern const char kPermissionPromptPersi + const char kAppServiceAshName[] = "App Service Ash"; + const char kAppServiceAshDescription[] = +diff -up chromium-75.0.3770.80/chrome/browser/flag_descriptions.h.vaapi chromium-75.0.3770.80/chrome/browser/flag_descriptions.h +--- chromium-75.0.3770.80/chrome/browser/flag_descriptions.h.vaapi 2019-06-05 11:26:46.475752984 -0400 ++++ chromium-75.0.3770.80/chrome/browser/flag_descriptions.h 2019-06-05 11:30:39.503928986 -0400 +@@ -1765,13 +1765,19 @@ extern const char kPermissionPromptPersi #endif // defined(OS_MACOSX) -// Chrome OS ------------------------------------------------------------------ -+// Chrome OS and Linux ------------------------------------------------------------------ ++// Chrome OS & Linux ---------------------------------------------------------- -#if defined(OS_CHROMEOS) +#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID)) @@ -68,18 +68,18 @@ diff -up chromium-73.0.3683.75/chrome/browser/flag_descriptions.h.vaapi chromium extern const char kAcceleratedMjpegDecodeName[]; extern const char kAcceleratedMjpegDecodeDescription[]; -+#endif // defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID)) ++#endif + -+// Chrome OS ------------------------------------------------------------------------ ++// Chrome OS ------------------------------------------------------------------ + +#if defined(OS_CHROMEOS) + - extern const char kAllowTouchpadThreeFingerClickName[]; - extern const char kAllowTouchpadThreeFingerClickDescription[]; + extern const char kAppServiceAshName[]; + extern const char kAppServiceAshDescription[]; -diff -up chromium-73.0.3683.75/gpu/config/software_rendering_list.json.vaapi chromium-73.0.3683.75/gpu/config/software_rendering_list.json ---- chromium-73.0.3683.75/gpu/config/software_rendering_list.json.vaapi 2019-03-11 18:00:59.000000000 -0400 -+++ chromium-73.0.3683.75/gpu/config/software_rendering_list.json 2019-03-13 09:04:44.196716525 -0400 +diff -up chromium-75.0.3770.80/gpu/config/software_rendering_list.json.vaapi chromium-75.0.3770.80/gpu/config/software_rendering_list.json +--- chromium-75.0.3770.80/gpu/config/software_rendering_list.json.vaapi 2019-06-04 14:55:24.000000000 -0400 ++++ chromium-75.0.3770.80/gpu/config/software_rendering_list.json 2019-06-05 11:26:46.482752839 -0400 @@ -371,11 +371,12 @@ }, { diff --git a/quiche-00f47df.patch b/quiche-00f47df.patch deleted file mode 100644 index 720edf9..0000000 --- a/quiche-00f47df.patch +++ /dev/null @@ -1,38 +0,0 @@ -From 00f47df999c9b19e80fdc01db0ae9ca1b6a12b3a Mon Sep 17 00:00:00 2001 -From: vasilvv -Date: Wed, 3 Apr 2019 13:58:53 -0700 -Subject: [PATCH] GCC: do not delete move constructor of QuicStreamSendBuffer -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -QuicStreamSendBuffer constructor is implicitely required in the -initialization of the vector of substreams in QuicCryptoStream. -Though clang apparently ignores that, GCC fails to build. - -BUG=chromium:819294 - -Originally submitted by José Dapena Paz at https://quiche-review.googlesource.com/c/quiche/+/2420 - -PiperOrigin-RevId: 241800134 -Change-Id: I4e3c97d6e5895d85340e8c1b740e6196d9104066 ---- - quic/core/quic_stream_send_buffer.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/quic/core/quic_stream_send_buffer.h b/quic/core/quic_stream_send_buffer.h -index e34514b..74e9d0d 100644 ---- a/net/third_party/quic/core/quic_stream_send_buffer.h -+++ b/net/third_party/quic/core/quic_stream_send_buffer.h -@@ -62,7 +62,7 @@ class QUIC_EXPORT_PRIVATE QuicStreamSendBuffer { - public: - explicit QuicStreamSendBuffer(QuicBufferAllocator* allocator); - QuicStreamSendBuffer(const QuicStreamSendBuffer& other) = delete; -- QuicStreamSendBuffer(QuicStreamSendBuffer&& other) = delete; -+ QuicStreamSendBuffer(QuicStreamSendBuffer&& other) = default; - ~QuicStreamSendBuffer(); - - // Save |data_length| of data starts at |iov_offset| in |iov| to send buffer. --- -2.21.0 - diff --git a/sources b/sources index 2a4c258..992e987 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-74.0.3729.169-clean.tar.xz) = 09db23d3b1b8020b21fa8f2b3be2a3be09815b4572ed5ef746061b171a01f75ab62af8ca092dbfb1bfa8065e5994fca56af8d0382053a70e46cb4ef57bf88b65 +SHA512 (chromium-75.0.3770.80-clean.tar.xz) = 509093ac03016b3dcb34b715de9b206223780159ca6a17f3d8d88d2a82100923a52a77b20b03e84afa297930174096fad9e76e027e279e5bd3696e8738abf079 From ee64066a7c78c6f095071102d5172cabb750fd88 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 10 Jun 2019 14:51:10 -0400 Subject: [PATCH 0289/1449] fix i686 fpermissive --- ...-73.0.3683.75-vaapi-i686-fpermissive.patch | 23 ------------------- ...-75.0.3770.80-vaapi-i686-fpermissive.patch | 23 +++++++++++++++++++ chromium.spec | 2 +- 3 files changed, 24 insertions(+), 24 deletions(-) delete mode 100644 chromium-73.0.3683.75-vaapi-i686-fpermissive.patch create mode 100644 chromium-75.0.3770.80-vaapi-i686-fpermissive.patch diff --git a/chromium-73.0.3683.75-vaapi-i686-fpermissive.patch b/chromium-73.0.3683.75-vaapi-i686-fpermissive.patch deleted file mode 100644 index aeee818..0000000 --- a/chromium-73.0.3683.75-vaapi-i686-fpermissive.patch +++ /dev/null @@ -1,23 +0,0 @@ -diff -up chromium-73.0.3683.75/media/gpu/vaapi/BUILD.gn.i686permissive chromium-73.0.3683.75/media/gpu/vaapi/BUILD.gn ---- chromium-73.0.3683.75/media/gpu/vaapi/BUILD.gn.i686permissive 2019-03-15 10:10:18.689287815 +0100 -+++ chromium-73.0.3683.75/media/gpu/vaapi/BUILD.gn 2019-03-15 10:11:56.943294101 +0100 -@@ -11,6 +11,10 @@ import("//ui/ozone/ozone.gni") - - assert(use_vaapi) - -+config("vaapi_permissive") { -+ cflags = [ "-fpermissive" ] -+} -+ - generate_stubs("libva_stubs") { - extra_header = "va_stub_header.fragment" - sigs = [ "va.sigs" ] -@@ -79,6 +83,8 @@ source_set("vaapi") { - configs += [ "//build/config/linux/libva" ] - } - -+ configs += [ ":vaapi_permissive" ] -+ - if (use_x11) { - configs += [ "//build/config/linux:x11" ] - deps += [ "//ui/gfx/x" ] diff --git a/chromium-75.0.3770.80-vaapi-i686-fpermissive.patch b/chromium-75.0.3770.80-vaapi-i686-fpermissive.patch new file mode 100644 index 0000000..c44473d --- /dev/null +++ b/chromium-75.0.3770.80-vaapi-i686-fpermissive.patch @@ -0,0 +1,23 @@ +diff -up chromium-75.0.3770.80/media/gpu/vaapi/BUILD.gn.i686permissive chromium-75.0.3770.80/media/gpu/vaapi/BUILD.gn +--- chromium-75.0.3770.80/media/gpu/vaapi/BUILD.gn.i686permissive 2019-06-10 14:47:37.315515026 -0400 ++++ chromium-75.0.3770.80/media/gpu/vaapi/BUILD.gn 2019-06-10 14:48:25.250604888 -0400 +@@ -11,6 +11,10 @@ import("//ui/ozone/ozone.gni") + + assert(use_vaapi) + ++config("vaapi_permissive") { ++ cflags = [ "-fpermissive" ] ++} ++ + generate_stubs("libva_stubs") { + extra_header = "va_stub_header.fragment" + sigs = [ "va.sigs" ] +@@ -89,6 +93,8 @@ source_set("vaapi") { + deps += [ "//media/gpu/linux" ] + } + ++ configs += [ ":vaapi_permissive" ] ++ + if (use_x11) { + configs += [ "//build/config/linux:x11" ] + deps += [ "//ui/gfx/x" ] diff --git a/chromium.spec b/chromium.spec index 7dd7d6d..cc6fbd7 100644 --- a/chromium.spec +++ b/chromium.spec @@ -306,7 +306,7 @@ Patch119: chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch # Enable VAAPI support on Linux # NOTE: This patch will never land upstream Patch121: enable-vaapi.patch -Patch122: chromium-73.0.3683.75-vaapi-i686-fpermissive.patch +Patch122: chromium-75.0.3770.80-vaapi-i686-fpermissive.patch # Fix compatibility with VA-API library (libva) version 1 Patch124: chromium-75.0.3770.80-vaapi-libva1-compatibility.patch # drop rsp clobber, which breaks gcc9 (thanks to Jeff Law) From 86f6063379330532d316e21560f4c0c798f9d31a Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 12 Jun 2019 09:45:13 -0400 Subject: [PATCH 0290/1449] more headers to save --- clean_ffmpeg.sh | 2 ++ sources | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index 1933058..9815da1 100755 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -58,6 +58,8 @@ generated_files_headers="$generated_files_headers ${generated_files//.asm/.h}" header_files=" libavcodec/x86/inline_asm.h \ libavcodec/x86/mathops.h \ libavcodec/x86/vp56_arith.h \ + libavcodec/aarch64/vp8dsp.h \ + libavcodec/arm/vp8dsp.h \ libavcodec/aac.h \ libavcodec/aacps.h \ libavcodec/aacpsdsp.h \ diff --git a/sources b/sources index 992e987..50b6570 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-75.0.3770.80-clean.tar.xz) = 509093ac03016b3dcb34b715de9b206223780159ca6a17f3d8d88d2a82100923a52a77b20b03e84afa297930174096fad9e76e027e279e5bd3696e8738abf079 +SHA512 (chromium-75.0.3770.80-clean.tar.xz) = 6d073f4c08042daf75fefb2ce7f3ca24f5c6d11606b29f896c2bab1c5361b5635b56ea3ee352574b186f2860a93654ca1c4f609172efc3298a5fee2965d4859c From 3d2e9d1afe4d42d48c724d7831a681b2af63d172 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 12 Jun 2019 17:08:39 -0400 Subject: [PATCH 0291/1449] rename function to avoid conflict with rawhide glibc "gettid()" --- chromium-75.0.3770.80-grpc-gettid-fix.patch | 22 +++++++++++++++++++++ chromium.spec | 4 ++++ 2 files changed, 26 insertions(+) create mode 100644 chromium-75.0.3770.80-grpc-gettid-fix.patch diff --git a/chromium-75.0.3770.80-grpc-gettid-fix.patch b/chromium-75.0.3770.80-grpc-gettid-fix.patch new file mode 100644 index 0000000..c526f4a --- /dev/null +++ b/chromium-75.0.3770.80-grpc-gettid-fix.patch @@ -0,0 +1,22 @@ +diff -up chromium-75.0.3770.80/third_party/grpc/src/src/core/lib/gpr/log_linux.cc.gettid-fix chromium-75.0.3770.80/third_party/grpc/src/src/core/lib/gpr/log_linux.cc +--- chromium-75.0.3770.80/third_party/grpc/src/src/core/lib/gpr/log_linux.cc.gettid-fix 2019-06-12 17:05:01.720907204 -0400 ++++ chromium-75.0.3770.80/third_party/grpc/src/src/core/lib/gpr/log_linux.cc 2019-06-12 17:06:01.000671370 -0400 +@@ -40,7 +40,8 @@ + #include + #include + +-static long gettid(void) { return syscall(__NR_gettid); } ++/* renamed to avoid conflict with glibc 'gettid()' */ ++static long gettid_gpr(void) { return syscall(__NR_gettid); } + + void gpr_log(const char* file, int line, gpr_log_severity severity, + const char* format, ...) { +@@ -70,7 +71,7 @@ void gpr_default_log(gpr_log_func_args* + gpr_timespec now = gpr_now(GPR_CLOCK_REALTIME); + struct tm tm; + static __thread long tid = 0; +- if (tid == 0) tid = gettid(); ++ if (tid == 0) tid = gettid_gpr(); + + timer = static_cast(now.tv_sec); + final_slash = strrchr(args->file, '/'); diff --git a/chromium.spec b/chromium.spec index cc6fbd7..b1a8228 100644 --- a/chromium.spec +++ b/chromium.spec @@ -335,6 +335,9 @@ Patch143: chromium-75.0.3770.80-revert-daff6b.patch # Avoid pure virtual crash destroying RenderProcessUserData # https://chromium.googlesource.com/chromium/src/+/cdf306db81efaaaa954487585d5a5a16205a5ebd%5E%21/ Patch144: chromium-75.0.3770.80-pure-virtual-crash-fix.patch +# rename function to avoid conflict with rawhide glibc "gettid()" +Patch145: chromium-75.0.3770.80-grpc-gettid-fix.patch + # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ @@ -917,6 +920,7 @@ udev. %patch142 -p1 -b .gcc-dcheck_ne-fix %patch143 -p1 -b .revert-daff6b %patch144 -p1 -b .pure-virtual-fix +%patch145 -p1 -b .gettid-fix # Change shebang in all relevant files in this directory and all subdirectories # See `man find` for how the `-exec command {} +` syntax works From e8606232c29efd76403b37b3444100571ade75f8 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 13 Jun 2019 10:41:45 -0400 Subject: [PATCH 0292/1449] one more file for aarch64 --- clean_ffmpeg.sh | 1 + sources | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index 9815da1..fd2d434 100755 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -206,6 +206,7 @@ manual_files=" libavcodec/aarch64/fft_neon.S \ libavcodec/aarch64/hpeldsp_neon.S \ libavcodec/aarch64/mdct_neon.S \ libavcodec/aarch64/vorbisdsp_neon.S \ + libavcodec/aarch64/vp8dsp_neon.S \ libavcodec/x86/hpeldsp_rnd_template.c \ libavcodec/x86/mdct15.asm \ libavcodec/x86/mdct15_init.c \ diff --git a/sources b/sources index 50b6570..ba5c46c 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-75.0.3770.80-clean.tar.xz) = 6d073f4c08042daf75fefb2ce7f3ca24f5c6d11606b29f896c2bab1c5361b5635b56ea3ee352574b186f2860a93654ca1c4f609172efc3298a5fee2965d4859c +SHA512 (chromium-75.0.3770.80-clean.tar.xz) = 99ffa8e4d5538f337e375b5783ac114e170bfc150d194c6c6379f65e5443d84495d0c17f843a78205f2b81c8a4f6a7be465f1385281277cd65f76e4100574a8b From 8008a5242407932d700e1453c6940c8cf5e85123 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 14 Jun 2019 11:02:12 -0400 Subject: [PATCH 0293/1449] .90 and another missing aarch64 file --- .gitignore | 1 + chromium.spec | 5 ++++- clean_ffmpeg.sh | 1 + sources | 2 +- 4 files changed, 7 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 3b0fcbc..dc0cf00 100644 --- a/.gitignore +++ b/.gitignore @@ -79,3 +79,4 @@ /chromium-73.0.3683.103-clean.tar.xz /chromium-74.0.3729.169-clean.tar.xz /chromium-75.0.3770.80-clean.tar.xz +/chromium-75.0.3770.90-clean.tar.xz diff --git a/chromium.spec b/chromium.spec index b1a8228..aadd63c 100644 --- a/chromium.spec +++ b/chromium.spec @@ -164,7 +164,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3770.80 +Version: %{majorversion}.0.3770.90 Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home @@ -1919,6 +1919,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Fri Jun 14 2019 Tom Callaway - 75.0.3770.90-1 +- update to 75.0.3770.90 + * Wed Jun 5 2019 Tom Callaway - 75.0.3770.80-1 - update to 75.0.3770.80 - disable vaapi (via conditional), too broken diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index fd2d434..2f27435 100755 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -205,6 +205,7 @@ manual_files=" libavcodec/aarch64/fft_neon.S \ libavcodec/aarch64/h264pred_neon.S \ libavcodec/aarch64/hpeldsp_neon.S \ libavcodec/aarch64/mdct_neon.S \ + libavcodec/aarch64/neon.S \ libavcodec/aarch64/vorbisdsp_neon.S \ libavcodec/aarch64/vp8dsp_neon.S \ libavcodec/x86/hpeldsp_rnd_template.c \ diff --git a/sources b/sources index ba5c46c..45520ce 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-75.0.3770.80-clean.tar.xz) = 99ffa8e4d5538f337e375b5783ac114e170bfc150d194c6c6379f65e5443d84495d0c17f843a78205f2b81c8a4f6a7be465f1385281277cd65f76e4100574a8b +SHA512 (chromium-75.0.3770.90-clean.tar.xz) = 0645e94cf85562dd39cda7fc9b5aece6eb807897a150dbf1bc32fda330262ef5416ba3c5966298340d8ec96dc8c895bdcec6742b1d5b3b127390a4cc2e1ad8df From 3a2a8e70705501109152cf6c653d55954f0b9c11 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 20 Jun 2019 09:29:36 -0400 Subject: [PATCH 0294/1449] update to 75.0.3770.100 --- .gitignore | 1 + chromium.spec | 5 ++++- sources | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index dc0cf00..61d44ef 100644 --- a/.gitignore +++ b/.gitignore @@ -80,3 +80,4 @@ /chromium-74.0.3729.169-clean.tar.xz /chromium-75.0.3770.80-clean.tar.xz /chromium-75.0.3770.90-clean.tar.xz +/chromium-75.0.3770.100-clean.tar.xz diff --git a/chromium.spec b/chromium.spec index aadd63c..3c33fcf 100644 --- a/chromium.spec +++ b/chromium.spec @@ -164,7 +164,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3770.90 +Version: %{majorversion}.0.3770.100 Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home @@ -1919,6 +1919,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Thu Jun 20 2019 Tom Callaway - 75.0.3770.100-1 +- update to 75.0.3770.100 + * Fri Jun 14 2019 Tom Callaway - 75.0.3770.90-1 - update to 75.0.3770.90 diff --git a/sources b/sources index 45520ce..5ba7f4f 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-75.0.3770.90-clean.tar.xz) = 0645e94cf85562dd39cda7fc9b5aece6eb807897a150dbf1bc32fda330262ef5416ba3c5966298340d8ec96dc8c895bdcec6742b1d5b3b127390a4cc2e1ad8df +SHA512 (chromium-75.0.3770.100-clean.tar.xz) = ee2fad215cf39edc572b4ecd040f1130e857e19a34e64fffb14a995ca325adc0b01d6e8bfae4f91c2fecd13ed018049e64fe2c2cc755502b8e3291698698512e From 8ca0005ac17f944b9e04c7f65eb0a8bd85372e96 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 20 Jun 2019 10:22:41 -0400 Subject: [PATCH 0295/1449] update epel7 patches --- chromium-75.0.3770.100-el7-fix-noexcept.patch | 54 +++++++++++++++++++ chromium-75.0.3770.100-epel7-stdc++.patch | 11 ++++ chromium.spec | 4 +- 3 files changed, 67 insertions(+), 2 deletions(-) create mode 100644 chromium-75.0.3770.100-el7-fix-noexcept.patch create mode 100644 chromium-75.0.3770.100-epel7-stdc++.patch diff --git a/chromium-75.0.3770.100-el7-fix-noexcept.patch b/chromium-75.0.3770.100-el7-fix-noexcept.patch new file mode 100644 index 0000000..eaba072 --- /dev/null +++ b/chromium-75.0.3770.100-el7-fix-noexcept.patch @@ -0,0 +1,54 @@ +diff -up chromium-75.0.3770.100/chrome/common/media_router/media_sink.cc.el7-noexcept chromium-75.0.3770.100/chrome/common/media_router/media_sink.cc +--- chromium-75.0.3770.100/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-06-18 11:47:55.000000000 -0400 ++++ chromium-75.0.3770.100/chrome/common/media_router/media_sink.cc 2019-06-20 10:17:27.440446569 -0400 +@@ -19,12 +19,12 @@ MediaSink::MediaSink(const MediaSink::Id + provider_id_(provider_id) {} + + MediaSink::MediaSink(const MediaSink& other) = default; +-MediaSink::MediaSink(MediaSink&& other) noexcept = default; ++MediaSink::MediaSink(MediaSink&& other) = default; + MediaSink::MediaSink() = default; + MediaSink::~MediaSink() = default; + + MediaSink& MediaSink::operator=(const MediaSink& other) = default; +-MediaSink& MediaSink::operator=(MediaSink&& other) noexcept = default; ++MediaSink& MediaSink::operator=(MediaSink&& other) = default; + + bool MediaSink::IsMaybeCloudSink() const { + switch (icon_type_) { +diff -up chromium-75.0.3770.100/components/policy/core/common/policy_map.cc.el7-noexcept chromium-75.0.3770.100/components/policy/core/common/policy_map.cc +--- chromium-75.0.3770.100/components/policy/core/common/policy_map.cc.el7-noexcept 2019-06-18 11:48:01.000000000 -0400 ++++ chromium-75.0.3770.100/components/policy/core/common/policy_map.cc 2019-06-20 10:17:27.444446463 -0400 +@@ -31,7 +31,7 @@ PolicyMap::Entry::Entry( + PolicyMap::Entry::~Entry() = default; + + PolicyMap::Entry::Entry(Entry&&) noexcept = default; +-PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) noexcept = default; ++PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) = default; + + PolicyMap::Entry PolicyMap::Entry::DeepCopy() const { + Entry copy; +diff -up chromium-75.0.3770.100/components/signin/core/browser/account_info.cc.el7-noexcept chromium-75.0.3770.100/components/signin/core/browser/account_info.cc +--- chromium-75.0.3770.100/components/signin/core/browser/account_info.cc.el7-noexcept 2019-06-20 10:17:27.444446463 -0400 ++++ chromium-75.0.3770.100/components/signin/core/browser/account_info.cc 2019-06-20 10:19:17.959532865 -0400 +@@ -51,7 +51,7 @@ CoreAccountInfo::CoreAccountInfo(CoreAcc + CoreAccountInfo& CoreAccountInfo::operator=(const CoreAccountInfo& other) = + default; + +-CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) noexcept = ++CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) = + default; + + bool CoreAccountInfo::IsEmpty() const { +diff -up chromium-75.0.3770.100/gpu/config/gpu_info.cc.el7-noexcept chromium-75.0.3770.100/gpu/config/gpu_info.cc +--- chromium-75.0.3770.100/gpu/config/gpu_info.cc.el7-noexcept 2019-06-18 11:48:10.000000000 -0400 ++++ chromium-75.0.3770.100/gpu/config/gpu_info.cc 2019-06-20 10:17:27.445446437 -0400 +@@ -181,7 +181,7 @@ GPUInfo::GPUDevice& GPUInfo::GPUDevice:: + const GPUInfo::GPUDevice& other) = default; + + GPUInfo::GPUDevice& GPUInfo::GPUDevice::operator=( +- GPUInfo::GPUDevice&& other) noexcept = default; ++ GPUInfo::GPUDevice&& other) = default; + + GPUInfo::GPUInfo() + : optimus(false), diff --git a/chromium-75.0.3770.100-epel7-stdc++.patch b/chromium-75.0.3770.100-epel7-stdc++.patch new file mode 100644 index 0000000..e4d62a0 --- /dev/null +++ b/chromium-75.0.3770.100-epel7-stdc++.patch @@ -0,0 +1,11 @@ +diff -up chromium-75.0.3770.100/build/config/BUILD.gn.epel7 chromium-75.0.3770.100/build/config/BUILD.gn +--- chromium-75.0.3770.100/build/config/BUILD.gn.epel7 2019-06-20 10:10:03.099549006 -0400 ++++ chromium-75.0.3770.100/build/config/BUILD.gn 2019-06-20 10:10:21.483158162 -0400 +@@ -267,6 +267,7 @@ config("default_libs") { + "dl", + "pthread", + "rt", ++ "stdc++", + ] + } + } diff --git a/chromium.spec b/chromium.spec index 3c33fcf..9ecb449 100644 --- a/chromium.spec +++ b/chromium.spec @@ -254,7 +254,7 @@ Patch85: chromium-68.0.3440.106-boolfix.patch # From Debian Patch86: chromium-71.0.3578.98-skia-aarch64-buildfix.patch # Use lstdc++ on EPEL7 only -Patch87: chromium-65.0.3325.162-epel7-stdc++.patch +Patch87: chromium-75.0.3770.100-epel7-stdc++.patch # Missing files in tarball Patch88: chromium-66.0.3359.117-missing-files.patch # https://chromium.googlesource.com/chromium/src/+/ba4141e451f4e0b1b19410b1b503bd32e150df06%5E%21/#F0 @@ -322,7 +322,7 @@ Patch135: chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch # Add #include to get pipewire code to build Patch136: chromium-73.0.3683.75-pipewire-cstring-fix.patch # el7 only patch -Patch139: chromium-73.0.3683.75-el7-fix-noexcept.patch +Patch139: chromium-75.0.3770.100-el7-fix-noexcept.patch # gcc does not have __assume Patch140: chromium-75.0.3770.80-gcc-no-assume.patch # Linux 5.2 defines SIOCGSTAMP in a slightly different way, so we need to teach chromium where to find it From 583677e39c313eff908945914f78318bcca0b55f Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 24 Jun 2019 11:05:43 -0400 Subject: [PATCH 0296/1449] disable jumbo for epel7 --- chromium.spec | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/chromium.spec b/chromium.spec index 9ecb449..1ecd6b1 100644 --- a/chromium.spec +++ b/chromium.spec @@ -6,8 +6,12 @@ %ifarch aarch64 %global use_jumbo 0 %else +%if 0%{?rhel} +%global use_jumbo 0 +%else %global use_jumbo 1 %endif +%endif # We usually want this. %global build_headless 1 From 1646709894bee11759b780dcf9794446c374b5ee Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 25 Jun 2019 10:58:05 -0400 Subject: [PATCH 0297/1449] fix v8 compile with gcc --- chromium-75.0.3770.100-fix-v8-gcc.patch | 14 ++++++++++++++ chromium.spec | 14 ++++++++------ 2 files changed, 22 insertions(+), 6 deletions(-) create mode 100644 chromium-75.0.3770.100-fix-v8-gcc.patch diff --git a/chromium-75.0.3770.100-fix-v8-gcc.patch b/chromium-75.0.3770.100-fix-v8-gcc.patch new file mode 100644 index 0000000..4a1a4b0 --- /dev/null +++ b/chromium-75.0.3770.100-fix-v8-gcc.patch @@ -0,0 +1,14 @@ +diff -up chromium-75.0.3770.100/v8/src/objects/js-objects.cc.fix-v8-gcc chromium-75.0.3770.100/v8/src/objects/js-objects.cc +--- chromium-75.0.3770.100/v8/src/objects/js-objects.cc.fix-v8-gcc 2019-06-25 10:55:08.132254304 -0400 ++++ chromium-75.0.3770.100/v8/src/objects/js-objects.cc 2019-06-25 10:55:23.147933648 -0400 +@@ -3792,6 +3792,10 @@ void JSObject::ApplyAttributesToDictiona + } + } + ++template void JSObject::ApplyAttributesToDictionary( ++ Isolate* isolate, ReadOnlyRoots roots, Handle dictionary, ++ const PropertyAttributes attributes); ++ + template + Maybe JSObject::PreventExtensionsWithTransition( + Handle object, ShouldThrow should_throw) { diff --git a/chromium.spec b/chromium.spec index 1ecd6b1..e6d9c63 100644 --- a/chromium.spec +++ b/chromium.spec @@ -6,12 +6,8 @@ %ifarch aarch64 %global use_jumbo 0 %else -%if 0%{?rhel} -%global use_jumbo 0 -%else %global use_jumbo 1 %endif -%endif # We usually want this. %global build_headless 1 @@ -169,7 +165,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3770.100 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -341,7 +337,9 @@ Patch143: chromium-75.0.3770.80-revert-daff6b.patch Patch144: chromium-75.0.3770.80-pure-virtual-crash-fix.patch # rename function to avoid conflict with rawhide glibc "gettid()" Patch145: chromium-75.0.3770.80-grpc-gettid-fix.patch - +# fix v8 compile with gcc +# https://chromium.googlesource.com/v8/v8/+/3b8c624bda58d05aea80dd9626cd550537d6ac3f%5E%21/#F1 +Patch146: chromium-75.0.3770.100-fix-v8-gcc.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ @@ -925,6 +923,7 @@ udev. %patch143 -p1 -b .revert-daff6b %patch144 -p1 -b .pure-virtual-fix %patch145 -p1 -b .gettid-fix +%patch146 -p1 -b .fix-v8-gcc # Change shebang in all relevant files in this directory and all subdirectories # See `man find` for how the `-exec command {} +` syntax works @@ -1923,6 +1922,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Tue Jun 25 2019 Tom Callaway - 75.0.3770.100-2 +- fix v8 compile with gcc + * Thu Jun 20 2019 Tom Callaway - 75.0.3770.100-1 - update to 75.0.3770.100 From 6edb7f7410b084675bdb67d4db056ff3a076a427 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 25 Jun 2019 12:36:35 -0400 Subject: [PATCH 0298/1449] try this patch variant --- chromium-75.0.3770.100-el7-fix-noexcept.patch | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/chromium-75.0.3770.100-el7-fix-noexcept.patch b/chromium-75.0.3770.100-el7-fix-noexcept.patch index eaba072..7c86056 100644 --- a/chromium-75.0.3770.100-el7-fix-noexcept.patch +++ b/chromium-75.0.3770.100-el7-fix-noexcept.patch @@ -28,18 +28,6 @@ diff -up chromium-75.0.3770.100/components/policy/core/common/policy_map.cc.el7- PolicyMap::Entry PolicyMap::Entry::DeepCopy() const { Entry copy; -diff -up chromium-75.0.3770.100/components/signin/core/browser/account_info.cc.el7-noexcept chromium-75.0.3770.100/components/signin/core/browser/account_info.cc ---- chromium-75.0.3770.100/components/signin/core/browser/account_info.cc.el7-noexcept 2019-06-20 10:17:27.444446463 -0400 -+++ chromium-75.0.3770.100/components/signin/core/browser/account_info.cc 2019-06-20 10:19:17.959532865 -0400 -@@ -51,7 +51,7 @@ CoreAccountInfo::CoreAccountInfo(CoreAcc - CoreAccountInfo& CoreAccountInfo::operator=(const CoreAccountInfo& other) = - default; - --CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) noexcept = -+CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) = - default; - - bool CoreAccountInfo::IsEmpty() const { diff -up chromium-75.0.3770.100/gpu/config/gpu_info.cc.el7-noexcept chromium-75.0.3770.100/gpu/config/gpu_info.cc --- chromium-75.0.3770.100/gpu/config/gpu_info.cc.el7-noexcept 2019-06-18 11:48:10.000000000 -0400 +++ chromium-75.0.3770.100/gpu/config/gpu_info.cc 2019-06-20 10:17:27.445446437 -0400 From 069f28a4209bf5be0df4779d0106d35df514f1df Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 26 Jun 2019 16:08:52 -0400 Subject: [PATCH 0299/1449] more noexcept fixes for epel7 --- chromium-75.0.3770.100-el7-fix-noexcept.patch | 33 +++++++++++++++---- 1 file changed, 27 insertions(+), 6 deletions(-) diff --git a/chromium-75.0.3770.100-el7-fix-noexcept.patch b/chromium-75.0.3770.100-el7-fix-noexcept.patch index 7c86056..836e918 100644 --- a/chromium-75.0.3770.100-el7-fix-noexcept.patch +++ b/chromium-75.0.3770.100-el7-fix-noexcept.patch @@ -1,6 +1,6 @@ diff -up chromium-75.0.3770.100/chrome/common/media_router/media_sink.cc.el7-noexcept chromium-75.0.3770.100/chrome/common/media_router/media_sink.cc ---- chromium-75.0.3770.100/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-06-18 11:47:55.000000000 -0400 -+++ chromium-75.0.3770.100/chrome/common/media_router/media_sink.cc 2019-06-20 10:17:27.440446569 -0400 +--- chromium-75.0.3770.100/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-06-26 13:28:13.262084778 -0400 ++++ chromium-75.0.3770.100/chrome/common/media_router/media_sink.cc 2019-06-26 13:28:13.266084674 -0400 @@ -19,12 +19,12 @@ MediaSink::MediaSink(const MediaSink::Id provider_id_(provider_id) {} @@ -17,8 +17,8 @@ diff -up chromium-75.0.3770.100/chrome/common/media_router/media_sink.cc.el7-noe bool MediaSink::IsMaybeCloudSink() const { switch (icon_type_) { diff -up chromium-75.0.3770.100/components/policy/core/common/policy_map.cc.el7-noexcept chromium-75.0.3770.100/components/policy/core/common/policy_map.cc ---- chromium-75.0.3770.100/components/policy/core/common/policy_map.cc.el7-noexcept 2019-06-18 11:48:01.000000000 -0400 -+++ chromium-75.0.3770.100/components/policy/core/common/policy_map.cc 2019-06-20 10:17:27.444446463 -0400 +--- chromium-75.0.3770.100/components/policy/core/common/policy_map.cc.el7-noexcept 2019-06-26 13:21:22.653201310 -0400 ++++ chromium-75.0.3770.100/components/policy/core/common/policy_map.cc 2019-06-26 13:21:22.666201034 -0400 @@ -31,7 +31,7 @@ PolicyMap::Entry::Entry( PolicyMap::Entry::~Entry() = default; @@ -28,9 +28,30 @@ diff -up chromium-75.0.3770.100/components/policy/core/common/policy_map.cc.el7- PolicyMap::Entry PolicyMap::Entry::DeepCopy() const { Entry copy; +diff -up chromium-75.0.3770.100/components/signin/core/browser/account_info.cc.el7-noexcept chromium-75.0.3770.100/components/signin/core/browser/account_info.cc +--- chromium-75.0.3770.100/components/signin/core/browser/account_info.cc.el7-noexcept 2019-06-26 16:01:57.348338042 -0400 ++++ chromium-75.0.3770.100/components/signin/core/browser/account_info.cc 2019-06-26 16:02:36.117552225 -0400 +@@ -51,7 +51,7 @@ CoreAccountInfo::CoreAccountInfo(CoreAcc + CoreAccountInfo& CoreAccountInfo::operator=(const CoreAccountInfo& other) = + default; + +-CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) noexcept = ++CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) = + default; + + bool CoreAccountInfo::IsEmpty() const { +@@ -68,7 +68,7 @@ AccountInfo::AccountInfo(AccountInfo&& o + + AccountInfo& AccountInfo::operator=(const AccountInfo& other) = default; + +-AccountInfo& AccountInfo::operator=(AccountInfo&& other) noexcept = default; ++AccountInfo& AccountInfo::operator=(AccountInfo&& other) = default; + + bool AccountInfo::IsEmpty() const { + return CoreAccountInfo::IsEmpty() && hosted_domain.empty() && diff -up chromium-75.0.3770.100/gpu/config/gpu_info.cc.el7-noexcept chromium-75.0.3770.100/gpu/config/gpu_info.cc ---- chromium-75.0.3770.100/gpu/config/gpu_info.cc.el7-noexcept 2019-06-18 11:48:10.000000000 -0400 -+++ chromium-75.0.3770.100/gpu/config/gpu_info.cc 2019-06-20 10:17:27.445446437 -0400 +--- chromium-75.0.3770.100/gpu/config/gpu_info.cc.el7-noexcept 2019-06-26 13:20:44.513026991 -0400 ++++ chromium-75.0.3770.100/gpu/config/gpu_info.cc 2019-06-26 13:20:44.530026607 -0400 @@ -181,7 +181,7 @@ GPUInfo::GPUDevice& GPUInfo::GPUDevice:: const GPUInfo::GPUDevice& other) = default; From 3da184df434f6e6f0e228af2eb77f1eac53039db Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 11 Jul 2019 17:06:38 -0400 Subject: [PATCH 0300/1449] apply upstream fix to resolve issue where it is dangerous to post a task with a RenderProcessHost pointer because the RenderProcessHost can go away before the task is run (causing a segfault). --- chromium-75.0.3770.100-git00281713.patch | 34 ++++++++++++++++++++++++ chromium.spec | 11 +++++++- 2 files changed, 44 insertions(+), 1 deletion(-) create mode 100644 chromium-75.0.3770.100-git00281713.patch diff --git a/chromium-75.0.3770.100-git00281713.patch b/chromium-75.0.3770.100-git00281713.patch new file mode 100644 index 0000000..4356435 --- /dev/null +++ b/chromium-75.0.3770.100-git00281713.patch @@ -0,0 +1,34 @@ +diff -up chromium-75.0.3770.100/chrome/browser/performance_manager/chrome_content_browser_client_performance_manager_part.cc.git00281713 chromium-75.0.3770.100/chrome/browser/performance_manager/chrome_content_browser_client_performance_manager_part.cc +--- chromium-75.0.3770.100/chrome/browser/performance_manager/chrome_content_browser_client_performance_manager_part.cc.git00281713 2019-07-02 09:10:38.951369854 -0400 ++++ chromium-75.0.3770.100/chrome/browser/performance_manager/chrome_content_browser_client_performance_manager_part.cc 2019-07-02 09:11:59.864642942 -0400 +@@ -12,13 +12,19 @@ + #include "chrome/browser/performance_manager/graph/process_node_impl.h" + #include "chrome/browser/performance_manager/performance_manager.h" + #include "chrome/browser/performance_manager/render_process_user_data.h" ++#include "content/public/browser/render_process_host.h" + #include "services/resource_coordinator/public/mojom/coordination_unit.mojom.h" + + namespace { + + void BindProcessNode( +- content::RenderProcessHost* render_process_host, ++ int render_process_host_id, + resource_coordinator::mojom::ProcessCoordinationUnitRequest request) { ++ content::RenderProcessHost* render_process_host = ++ content::RenderProcessHost::FromID(render_process_host_id); ++ if (!render_process_host) ++ return; ++ + performance_manager::RenderProcessUserData* user_data = + performance_manager::RenderProcessUserData::GetForRenderProcessHost( + render_process_host); +@@ -47,8 +53,7 @@ void ChromeContentBrowserClientPerforman + blink::AssociatedInterfaceRegistry* associated_registry, + content::RenderProcessHost* render_process_host) { + registry->AddInterface( +- base::BindRepeating(&BindProcessNode, +- base::Unretained(render_process_host)), ++ base::BindRepeating(&BindProcessNode, render_process_host->GetID()), + base::SequencedTaskRunnerHandle::Get()); + + // Ideally this would strictly be a "CreateForRenderProcess", but when a diff --git a/chromium.spec b/chromium.spec index e6d9c63..a741cda 100644 --- a/chromium.spec +++ b/chromium.spec @@ -165,7 +165,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3770.100 -Release: 2%{?dist} +Release: 3%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -340,6 +340,9 @@ Patch145: chromium-75.0.3770.80-grpc-gettid-fix.patch # fix v8 compile with gcc # https://chromium.googlesource.com/v8/v8/+/3b8c624bda58d05aea80dd9626cd550537d6ac3f%5E%21/#F1 Patch146: chromium-75.0.3770.100-fix-v8-gcc.patch +# https://chromium.googlesource.com/chromium/src/+/00281713519dbd84b90d2996a009bf3a7e294435%5E%21/#F0 +Patch147: chromium-75.0.3770.100-git00281713.patch + # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ @@ -924,6 +927,7 @@ udev. %patch144 -p1 -b .pure-virtual-fix %patch145 -p1 -b .gettid-fix %patch146 -p1 -b .fix-v8-gcc +%patch147 -p1 -b .git00281713 # Change shebang in all relevant files in this directory and all subdirectories # See `man find` for how the `-exec command {} +` syntax works @@ -1922,6 +1926,11 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Tue Jul 2 2019 Tom Callaway - 75.0.3770.100-3 +- apply upstream fix to resolve issue where it is dangerous to post a + task with a RenderProcessHost pointer because the RenderProcessHost + can go away before the task is run (causing a segfault). + * Tue Jun 25 2019 Tom Callaway - 75.0.3770.100-2 - fix v8 compile with gcc From 8c4c53d9b3dbf8e4272b8f7c01cbf5241f658f82 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 24 Jul 2019 20:14:22 +0000 Subject: [PATCH 0301/1449] - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- chromium.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index a741cda..de018ef 100644 --- a/chromium.spec +++ b/chromium.spec @@ -165,7 +165,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3770.100 -Release: 3%{?dist} +Release: 4%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1926,6 +1926,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Wed Jul 24 2019 Fedora Release Engineering - 75.0.3770.100-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + * Tue Jul 2 2019 Tom Callaway - 75.0.3770.100-3 - apply upstream fix to resolve issue where it is dangerous to post a task with a RenderProcessHost pointer because the RenderProcessHost From a77981312eab329555316eb924a841f7be09887e Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 12 Aug 2019 17:09:21 +0200 Subject: [PATCH 0302/1449] Cleanup the patches --- ...res_2d_i16_neon-Make-s2-a-uint64x1_t.patch | 54 -- chromium-46.0.2490.71-notest.patch | 11 - chromium-52.0.2743.116-unset-madv_free.patch | 15 - chromium-52.0.2743.82-arm-webrtc.patch | 51 -- chromium-52.0.2743.82-master-prefs-path.patch | 15 - chromium-55.0.2883.75-sandbox-pie.patch | 30 - chromium-56.0.2924.87-fpermissive.patch | 13 - chromium-56.0.2924.87-gcc5.patch | 354 ---------- chromium-59.0.3071.115-ucontext-fix.patch | 214 ------ chromium-59.0.3071.86-ffmpeg-stdatomic.patch | 17 - chromium-59.0.3071.86-nullfix.patch | 43 -- chromium-59.0.3071.86-system-clang.patch | 10 - chromium-60.0.3112.78-gn-system.patch | 221 ------ ...um-60.0.3112.78-last-commit-position.patch | 28 - chromium-60.0.3112.78-no-zlib-mangle.patch | 13 - chromium-60.0.3112.90-vulkan-force-c99.patch | 11 - ...m-61.0.3163.79-aarch64-glibc-2.26.90.patch | 12 - ...mium-61.0.3163.79-fix-ffmpeg-aarch64.patch | 12 - chromium-61.0.3163.79-setopaque.patch | 12 - ...62.0.3202.62-correct-cplusplus-check.patch | 20 - chromium-62.0.3202.62-dde535-gcc-fix.patch | 13 - chromium-62.0.3202.62-enable-mp3.patch | 484 ------------- ...7-no-nullptr-assignment-on-StructPtr.patch | 12 - chromium-62.0.3202.62-gcc-nc.patch | 11 - chromium-62.0.3202.62-gcc7.patch | 11 - chromium-62.0.3202.62-rvalue-fix.patch | 45 -- ...m-63.0.3289.84-aarch64-glibc-2.26.90.patch | 12 - chromium-63.0.3289.84-enable-mp3.patch | 485 ------------- ...mium-63.0.3289.84-fix-ffmpeg-aarch64.patch | 12 - ...mium-63.0.3289.84-fix-ft-hb-unbundle.patch | 36 - chromium-63.0.3289.84-gcc-round-fix.patch | 11 - chromium-63.0.3289.84-gcc5-r3.patch | 104 --- chromium-63.0.3289.84-nolibc++.patch | 15 - chromium-63.0.3289.84-setopaque.patch | 12 - chromium-64.0.3282.119-enable-mp3.patch | 54 -- ...mium-64.0.3282.119-gcc-constexpr-fix.patch | 70 -- chromium-64.0.3282.119-gcc-round-fix.patch | 12 - chromium-64.0.3282.119-gcc5-r3.patch | 75 -- chromium-64.0.3282.119-gcc5.patch | 57 -- chromium-64.0.3282.119-gcc7.patch | 11 - chromium-64.0.3282.119-memcpy-fix.patch | 11 - chromium-64.0.3282.167-gcc8-fabi11.patch | 15 - ...x-non-copyable-class-s-optional-move.patch | 41 -- ...-methods-String-renamed-to-GetString.patch | 108 --- ...eProvider-Settings-do-not-provide-co.patch | 22 - ...se-Optional-T-requires-the-full-decl.patch | 33 - ...std-move-to-base-Optional-instead-of.patch | 24 - ...-declare-ConfigurationPolicyProvider.patch | 18 - ...ional-copy-move-ctors-assign-operato.patch | 91 --- ...verting-constructors-from-Optional-U.patch | 116 ---- ...-Implement-value-forward-constructor.patch | 72 -- ...e-non-copy-non-move-assign-operators.patch | 144 ---- ...irmative-expression-in-base-Optional.patch | 265 ------- chromium-65.0.3325.146-gcc5-r3.patch | 74 -- chromium-65.0.3325.146-gcc7.patch | 11 - ...trivially_copy_constructable-failure.patch | 55 -- ...Remove-GC-checks-from-WTF-Optional-T.patch | 61 -- chromium-65.0.3325.146-wtf-vector-fix.patch | 54 -- chromium-65.0.3325.162-boolfix.patch | 36 - chromium-65.0.3325.162-epel7-stdc++.patch | 12 - ...-65.0.3325.162-skia-aarch64-buildfix.patch | 21 - ...se-Optional-T-requires-the-full-decl.patch | 33 - ...nitializer-list-for-NoDestructor-of-.patch | 12 - ....0.3359.117-gcc-copy-constructor-fix.patch | 49 -- ...6.0.3359.117-gcc-optional-move-fixes.patch | 45 -- ....117-gcc-vector-copy-constructor-fix.patch | 53 -- chromium-66.0.3359.117-gcc5-r3.patch | 38 - chromium-66.0.3359.117-nounrar.patch | 16 - chromium-66.0.3359.139-arm-init-fix.patch | 12 - chromium-66.0.3359.170-gcc8-alignof.patch | 18 - chromium-67.0.3396.62-boolfix.patch | 36 - ....0.3396.62-crashpad-aarch64-buildfix.patch | 13 - ....62-epel7-use-old-python-exec-syntax.patch | 12 - ...m-67.0.3396.62-skia-aarch64-buildfix.patch | 21 - chromium-67.0.3396.87-fedora-user-agent.patch | 12 - chromium-67.0.3396.99-py2-bootstrap.patch | 42 -- ...mium-68.0.3440.106-fedora-user-agent.patch | 12 - ...440.106-fix-build-networking_private.patch | 12 - chromium-68.0.3440.106-notest.patch | 11 - chromium-68.0.3440.84-cors-string.patch | 51 -- chromium-68.0.3440.84-libjpeg.patch | 62 -- chromium-68.0.3440.84-libwebp-shim.patch | 43 -- chromium-68.0.3440.84-move-unique-ptr.patch | 65 -- chromium-69.0.3497.81-gcc8-alignof.patch | 18 - chromium-69.0.3497.81-norar.patch | 79 --- chromium-69.0.3497.81-py2-bootstrap.patch | 33 - chromium-69.0.3497.81-widevine-r2.patch | 23 - ...70.0.3538.110-remove-sysroot-options.patch | 23 - chromium-70.0.3538.77-harfbuzz2-fix.patch | 80 --- chromium-71-gcc-0.patch | 57 -- chromium-71.0.3578.98-el7-fix-noexcept.patch | 48 -- chromium-71.0.3578.98-norar.patch | 79 --- ...-71.0.3578.98-remove-sysroot-options.patch | 23 - ...0.3578.98-vaapi-libva1-compatibility.patch | 14 - chromium-72.0.3626.121-fix-va-check.patch | 29 - chromium-72.0.3626.121-norar.patch | 79 --- chromium-73-gcc-0.patch | 108 --- chromium-73-gcc-1.patch | 99 --- chromium-73-gcc-2.patch | 51 -- chromium-73-gcc-3.patch | 69 -- chromium-73-gcc-4.patch | 59 -- chromium-73-gcc-5.patch | 65 -- chromium-73-gcc-6.patch | 88 --- ...73.0.3683.103-glibc-2.29-clone-vfork.patch | 29 - ...73.0.3683.75-aarch64-crashpad-limits.patch | 11 - chromium-73.0.3683.75-el7-fix-noexcept.patch | 54 -- chromium-73.0.3683.75-no-header-hygiene.patch | 17 - chromium-gcc5-r3.patch | 98 --- chromium-gcc8-r588316.patch | 98 --- chromium-gcc8-r588547.patch | 30 - chromium-gcc8-r589614.patch | 37 - chromium-gcc8-r591015.patch | 70 -- chromium-gn-bootstrap-r17.patch | 68 -- chromium-math.h-r0.patch | 29 - chromium-stdint.patch | 21 - chromium.spec | 417 +++++------ relax-libva-version.patch | 56 -- revert-gn-4960.patch | 655 ------------------ revert-gn-4980.patch | 134 ---- 119 files changed, 174 insertions(+), 7424 deletions(-) delete mode 100644 0001-vpx_sum_squares_2d_i16_neon-Make-s2-a-uint64x1_t.patch delete mode 100644 chromium-46.0.2490.71-notest.patch delete mode 100644 chromium-52.0.2743.116-unset-madv_free.patch delete mode 100644 chromium-52.0.2743.82-arm-webrtc.patch delete mode 100644 chromium-52.0.2743.82-master-prefs-path.patch delete mode 100644 chromium-55.0.2883.75-sandbox-pie.patch delete mode 100644 chromium-56.0.2924.87-fpermissive.patch delete mode 100644 chromium-56.0.2924.87-gcc5.patch delete mode 100644 chromium-59.0.3071.115-ucontext-fix.patch delete mode 100644 chromium-59.0.3071.86-ffmpeg-stdatomic.patch delete mode 100644 chromium-59.0.3071.86-nullfix.patch delete mode 100644 chromium-59.0.3071.86-system-clang.patch delete mode 100644 chromium-60.0.3112.78-gn-system.patch delete mode 100644 chromium-60.0.3112.78-last-commit-position.patch delete mode 100644 chromium-60.0.3112.78-no-zlib-mangle.patch delete mode 100644 chromium-60.0.3112.90-vulkan-force-c99.patch delete mode 100644 chromium-61.0.3163.79-aarch64-glibc-2.26.90.patch delete mode 100644 chromium-61.0.3163.79-fix-ffmpeg-aarch64.patch delete mode 100644 chromium-61.0.3163.79-setopaque.patch delete mode 100644 chromium-62.0.3202.62-correct-cplusplus-check.patch delete mode 100644 chromium-62.0.3202.62-dde535-gcc-fix.patch delete mode 100644 chromium-62.0.3202.62-enable-mp3.patch delete mode 100644 chromium-62.0.3202.62-epel7-no-nullptr-assignment-on-StructPtr.patch delete mode 100644 chromium-62.0.3202.62-gcc-nc.patch delete mode 100644 chromium-62.0.3202.62-gcc7.patch delete mode 100644 chromium-62.0.3202.62-rvalue-fix.patch delete mode 100644 chromium-63.0.3289.84-aarch64-glibc-2.26.90.patch delete mode 100644 chromium-63.0.3289.84-enable-mp3.patch delete mode 100644 chromium-63.0.3289.84-fix-ffmpeg-aarch64.patch delete mode 100644 chromium-63.0.3289.84-fix-ft-hb-unbundle.patch delete mode 100644 chromium-63.0.3289.84-gcc-round-fix.patch delete mode 100644 chromium-63.0.3289.84-gcc5-r3.patch delete mode 100644 chromium-63.0.3289.84-nolibc++.patch delete mode 100644 chromium-63.0.3289.84-setopaque.patch delete mode 100644 chromium-64.0.3282.119-enable-mp3.patch delete mode 100644 chromium-64.0.3282.119-gcc-constexpr-fix.patch delete mode 100644 chromium-64.0.3282.119-gcc-round-fix.patch delete mode 100644 chromium-64.0.3282.119-gcc5-r3.patch delete mode 100644 chromium-64.0.3282.119-gcc5.patch delete mode 100644 chromium-64.0.3282.119-gcc7.patch delete mode 100644 chromium-64.0.3282.119-memcpy-fix.patch delete mode 100644 chromium-64.0.3282.167-gcc8-fabi11.patch delete mode 100644 chromium-65.0.3325.146-Fix-non-copyable-class-s-optional-move.patch delete mode 100644 chromium-65.0.3325.146-GCC-IDB-methods-String-renamed-to-GetString.patch delete mode 100644 chromium-65.0.3325.146-GCC-PlaybackImageProvider-Settings-do-not-provide-co.patch delete mode 100644 chromium-65.0.3325.146-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch delete mode 100644 chromium-65.0.3325.146-GCC-explicitely-std-move-to-base-Optional-instead-of.patch delete mode 100644 chromium-65.0.3325.146-GCC-fully-declare-ConfigurationPolicyProvider.patch delete mode 100644 chromium-65.0.3325.146-Implement-conditional-copy-move-ctors-assign-operato.patch delete mode 100644 chromium-65.0.3325.146-Implement-converting-constructors-from-Optional-U.patch delete mode 100644 chromium-65.0.3325.146-Implement-value-forward-constructor.patch delete mode 100644 chromium-65.0.3325.146-Update-non-copy-non-move-assign-operators.patch delete mode 100644 chromium-65.0.3325.146-Use-affirmative-expression-in-base-Optional.patch delete mode 100644 chromium-65.0.3325.146-gcc5-r3.patch delete mode 100644 chromium-65.0.3325.146-gcc7.patch delete mode 100644 chromium-65.0.3325.146-workaround-gcc7-is_trivially_copy_constructable-failure.patch delete mode 100644 chromium-65.0.3325.146-wtf-oilpan-Remove-GC-checks-from-WTF-Optional-T.patch delete mode 100644 chromium-65.0.3325.146-wtf-vector-fix.patch delete mode 100644 chromium-65.0.3325.162-boolfix.patch delete mode 100644 chromium-65.0.3325.162-epel7-stdc++.patch delete mode 100644 chromium-65.0.3325.162-skia-aarch64-buildfix.patch delete mode 100644 chromium-66.0.3359.117-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch delete mode 100644 chromium-66.0.3359.117-GCC-do-not-use-initializer-list-for-NoDestructor-of-.patch delete mode 100644 chromium-66.0.3359.117-gcc-copy-constructor-fix.patch delete mode 100644 chromium-66.0.3359.117-gcc-optional-move-fixes.patch delete mode 100644 chromium-66.0.3359.117-gcc-vector-copy-constructor-fix.patch delete mode 100644 chromium-66.0.3359.117-gcc5-r3.patch delete mode 100644 chromium-66.0.3359.117-nounrar.patch delete mode 100644 chromium-66.0.3359.139-arm-init-fix.patch delete mode 100644 chromium-66.0.3359.170-gcc8-alignof.patch delete mode 100644 chromium-67.0.3396.62-boolfix.patch delete mode 100644 chromium-67.0.3396.62-crashpad-aarch64-buildfix.patch delete mode 100644 chromium-67.0.3396.62-epel7-use-old-python-exec-syntax.patch delete mode 100644 chromium-67.0.3396.62-skia-aarch64-buildfix.patch delete mode 100644 chromium-67.0.3396.87-fedora-user-agent.patch delete mode 100644 chromium-67.0.3396.99-py2-bootstrap.patch delete mode 100644 chromium-68.0.3440.106-fedora-user-agent.patch delete mode 100644 chromium-68.0.3440.106-fix-build-networking_private.patch delete mode 100644 chromium-68.0.3440.106-notest.patch delete mode 100644 chromium-68.0.3440.84-cors-string.patch delete mode 100644 chromium-68.0.3440.84-libjpeg.patch delete mode 100644 chromium-68.0.3440.84-libwebp-shim.patch delete mode 100644 chromium-68.0.3440.84-move-unique-ptr.patch delete mode 100644 chromium-69.0.3497.81-gcc8-alignof.patch delete mode 100644 chromium-69.0.3497.81-norar.patch delete mode 100644 chromium-69.0.3497.81-py2-bootstrap.patch delete mode 100644 chromium-69.0.3497.81-widevine-r2.patch delete mode 100644 chromium-70.0.3538.110-remove-sysroot-options.patch delete mode 100644 chromium-70.0.3538.77-harfbuzz2-fix.patch delete mode 100644 chromium-71-gcc-0.patch delete mode 100644 chromium-71.0.3578.98-el7-fix-noexcept.patch delete mode 100644 chromium-71.0.3578.98-norar.patch delete mode 100644 chromium-71.0.3578.98-remove-sysroot-options.patch delete mode 100644 chromium-71.0.3578.98-vaapi-libva1-compatibility.patch delete mode 100644 chromium-72.0.3626.121-fix-va-check.patch delete mode 100644 chromium-72.0.3626.121-norar.patch delete mode 100644 chromium-73-gcc-0.patch delete mode 100644 chromium-73-gcc-1.patch delete mode 100644 chromium-73-gcc-2.patch delete mode 100644 chromium-73-gcc-3.patch delete mode 100644 chromium-73-gcc-4.patch delete mode 100644 chromium-73-gcc-5.patch delete mode 100644 chromium-73-gcc-6.patch delete mode 100644 chromium-73.0.3683.103-glibc-2.29-clone-vfork.patch delete mode 100644 chromium-73.0.3683.75-aarch64-crashpad-limits.patch delete mode 100644 chromium-73.0.3683.75-el7-fix-noexcept.patch delete mode 100644 chromium-73.0.3683.75-no-header-hygiene.patch delete mode 100644 chromium-gcc5-r3.patch delete mode 100644 chromium-gcc8-r588316.patch delete mode 100644 chromium-gcc8-r588547.patch delete mode 100644 chromium-gcc8-r589614.patch delete mode 100644 chromium-gcc8-r591015.patch delete mode 100644 chromium-gn-bootstrap-r17.patch delete mode 100644 chromium-math.h-r0.patch delete mode 100644 chromium-stdint.patch delete mode 100644 relax-libva-version.patch delete mode 100644 revert-gn-4960.patch delete mode 100644 revert-gn-4980.patch diff --git a/0001-vpx_sum_squares_2d_i16_neon-Make-s2-a-uint64x1_t.patch b/0001-vpx_sum_squares_2d_i16_neon-Make-s2-a-uint64x1_t.patch deleted file mode 100644 index f73ded3..0000000 --- a/0001-vpx_sum_squares_2d_i16_neon-Make-s2-a-uint64x1_t.patch +++ /dev/null @@ -1,54 +0,0 @@ -Upstream-Status: Submitted - -GCC aarch64 build fix [this is actually a libvpx patch, not a Chromium one] - -Sent to: https://chromium-review.googlesource.com/c/webm/libvpx/+/1136449 - -Signed-off-by: Raphael Kubo da Costa ---- -From c20bd394f18c47bf133b51d6a40399273c3f24e0 Mon Sep 17 00:00:00 2001 -From: Raphael Kubo da Costa -Date: Fri, 13 Jul 2018 14:29:09 +0200 -Subject: [PATCH] vpx_sum_squares_2d_i16_neon(): Make |s2| a uint64x1_t. - -This fixes the build with at least GCC 7.3, where it was previously failing -with: - -../../third_party/libvpx/source/libvpx/vpx_dsp/arm/sum_squares_neon.c: In function 'vpx_sum_squares_2d_i16_neon': -../../third_party/libvpx/source/libvpx/vpx_dsp/arm/sum_squares_neon.c:34:5: note: use -flax-vector-conversions to permit conversions between vectors with differing element types or numbers of subparts - s2 = vpaddl_u32(s1); - ^~ -../../third_party/libvpx/source/libvpx/vpx_dsp/arm/sum_squares_neon.c:34:8: error: incompatible types when assigning to type 'int64x1_t' from type 'uint64x1_t' - s2 = vpaddl_u32(s1); - ^ -../../third_party/libvpx/source/libvpx/vpx_dsp/arm/sum_squares_neon.c:81:8: error: incompatible types when assigning to type 'int64x1_t' from type 'uint64x1_t' - s2 = vadd_u64(vget_low_u64(s1), vget_high_u64(s1)); - ^ -../../third_party/libvpx/source/libvpx/vpx_dsp/arm/sum_squares_neon.c:84:24: error: incompatible type for argument 1 of 'vget_lane_u64' - return vget_lane_u64(s2, 0); - ^~ - -The generated assembly was verified to remain identical with both GCC and -LLVM. - -Change-Id: I2778428ee1fee0a674d0d4910347c2a717de21ac ---- - vpx_dsp/arm/sum_squares_neon.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/vpx_dsp/arm/sum_squares_neon.c b/vpx_dsp/arm/sum_squares_neon.c -index 8942ba83b..cfefad993 100644 ---- a/third_party/libvpx/source/libvpx/vpx_dsp/arm/sum_squares_neon.c -+++ b/third_party/libvpx/source/libvpx/vpx_dsp/arm/sum_squares_neon.c -@@ -14,7 +14,7 @@ - #include "./vpx_dsp_rtcd.h" - - uint64_t vpx_sum_squares_2d_i16_neon(const int16_t *src, int stride, int size) { -- int64x1_t s2; -+ uint64x1_t s2; - - if (size == 4) { - int16x4_t s[4]; --- -2.14.4 - diff --git a/chromium-46.0.2490.71-notest.patch b/chromium-46.0.2490.71-notest.patch deleted file mode 100644 index e4e3448..0000000 --- a/chromium-46.0.2490.71-notest.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-46.0.2490.71/chrome/test/data/webui_test_resources.grd.notest chromium-46.0.2490.71/chrome/test/data/webui_test_resources.grd ---- chromium-46.0.2490.71/chrome/test/data/webui_test_resources.grd.notest 2015-10-16 02:01:56.644149741 -0400 -+++ chromium-46.0.2490.71/chrome/test/data/webui_test_resources.grd 2015-10-16 02:02:36.217285227 -0400 -@@ -8,7 +8,6 @@ - - - -- - - - diff --git a/chromium-52.0.2743.116-unset-madv_free.patch b/chromium-52.0.2743.116-unset-madv_free.patch deleted file mode 100644 index 2867c79..0000000 --- a/chromium-52.0.2743.116-unset-madv_free.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -up chromium-52.0.2743.116/third_party/WebKit/Source/wtf/allocator/PageAllocator.cpp.madv_free chromium-52.0.2743.116/third_party/WebKit/Source/wtf/allocator/PageAllocator.cpp ---- chromium-52.0.2743.116/third_party/WebKit/Source/wtf/allocator/PageAllocator.cpp.madv_free 2016-08-15 13:07:29.279655676 -0400 -+++ chromium-52.0.2743.116/third_party/WebKit/Source/wtf/allocator/PageAllocator.cpp 2016-08-15 13:08:38.447317416 -0400 -@@ -41,6 +41,11 @@ - #include - #include - -+#if OS(LINUX) && defined(MADV_FREE) -+// Added in Linux 4.5, but it breaks the sandbox. -+#undef MADV_FREE -+#endif -+ - #ifndef MADV_FREE - #define MADV_FREE MADV_DONTNEED - #endif diff --git a/chromium-52.0.2743.82-arm-webrtc.patch b/chromium-52.0.2743.82-arm-webrtc.patch deleted file mode 100644 index f1a6629..0000000 --- a/chromium-52.0.2743.82-arm-webrtc.patch +++ /dev/null @@ -1,51 +0,0 @@ -diff -up chromium-52.0.2743.82/third_party/webrtc/system_wrappers/source/cpu_features.cc.armwebrtc chromium-52.0.2743.82/third_party/webrtc/system_wrappers/source/cpu_features.cc ---- chromium-52.0.2743.82/third_party/webrtc/system_wrappers/source/cpu_features.cc.armwebrtc 2016-08-03 09:30:53.922861020 +0200 -+++ chromium-52.0.2743.82/third_party/webrtc/system_wrappers/source/cpu_features.cc 2016-08-03 09:32:00.337498174 +0200 -@@ -18,6 +18,47 @@ - - #include "webrtc/typedefs.h" - -+#include -+#ifdef __arm__ -+#include -+#include -+#include -+#include -+#endif -+ -+#ifdef __arm__ -+uint64_t WebRtc_GetCPUFeaturesARM() { -+ static bool detected = false; -+ static uint64_t have_neon = 0; -+ -+ int fd; -+ Elf32_auxv_t auxv; -+ unsigned int hwcaps; -+ -+ if (!detected) { -+ int fd; -+ Elf32_auxv_t auxv; -+ unsigned int hwcaps; -+ -+ fd = open("/proc/self/auxv", O_RDONLY); -+ if (fd >= 0) { -+ while (read(fd, &auxv, sizeof(Elf32_auxv_t)) == sizeof(Elf32_auxv_t)) { -+ if (auxv.a_type == AT_HWCAP) { -+ have_neon = (auxv.a_un.a_val & HWCAP_NEON) ? kCPUFeatureNEON : 0; -+ break; -+ } -+ } -+ close (fd); -+ } else { -+ have_neon = 0; -+ } -+ detected = true; -+ } -+ -+ return 0 | have_neon; // others here as we need them -+} -+#endif -+ - // No CPU feature is available => straight C path. - int GetCPUInfoNoASM(CPUFeature feature) { - (void)feature; diff --git a/chromium-52.0.2743.82-master-prefs-path.patch b/chromium-52.0.2743.82-master-prefs-path.patch deleted file mode 100644 index 6ddd26f..0000000 --- a/chromium-52.0.2743.82-master-prefs-path.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -up chromium-52.0.2743.82/chrome/browser/first_run/first_run_internal_linux.cc.etc chromium-52.0.2743.82/chrome/browser/first_run/first_run_internal_linux.cc ---- chromium-52.0.2743.82/chrome/browser/first_run/first_run_internal_linux.cc.etc 2016-08-03 10:15:57.980692109 +0200 -+++ chromium-52.0.2743.82/chrome/browser/first_run/first_run_internal_linux.cc 2016-08-03 10:16:44.553325229 +0200 -@@ -19,9 +19,9 @@ bool IsOrganicFirstRun() { - - base::FilePath MasterPrefsPath() { - // The standard location of the master prefs is next to the chrome binary. -+ // ...but we patch it to use /etc/chromium - base::FilePath master_prefs; -- if (!PathService::Get(base::DIR_EXE, &master_prefs)) -- return base::FilePath(); -+ master_prefs = base::FilePath("/etc/chromium"); - return master_prefs.AppendASCII(installer::kDefaultMasterPrefs); - } - diff --git a/chromium-55.0.2883.75-sandbox-pie.patch b/chromium-55.0.2883.75-sandbox-pie.patch deleted file mode 100644 index 6aae0b0..0000000 --- a/chromium-55.0.2883.75-sandbox-pie.patch +++ /dev/null @@ -1,30 +0,0 @@ -diff -up chromium-55.0.2883.75/sandbox/linux/BUILD.gn.sandboxpie chromium-55.0.2883.75/sandbox/linux/BUILD.gn ---- chromium-55.0.2883.75/sandbox/linux/BUILD.gn.sandboxpie 2016-12-01 18:02:17.000000000 -0500 -+++ chromium-55.0.2883.75/sandbox/linux/BUILD.gn 2016-12-12 16:26:06.863426221 -0500 -@@ -279,11 +279,17 @@ if (is_linux) { - # For ULLONG_MAX - "-std=gnu99", - -+ "-fPIE", -+ - # These files have a suspicious comparison. - # TODO fix this and re-enable this warning. - "-Wno-sign-compare", - ] - -+ ldflags = [ -+ "-pie", -+ ] -+ - import("//build/config/compiler/compiler.gni") - import("//build/config/sanitizers/sanitizers.gni") - if (is_component_build || using_sanitizer) { -@@ -293,7 +299,7 @@ if (is_linux) { - # other flags that executable_config might have. - configs -= [ "//build/config:executable_config" ] - if (!use_gold) { -- ldflags = [ "-Wl,--disable-new-dtags" ] -+ ldflags += [ "-Wl,--disable-new-dtags" ] - } - } - diff --git a/chromium-56.0.2924.87-fpermissive.patch b/chromium-56.0.2924.87-fpermissive.patch deleted file mode 100644 index be68cf9..0000000 --- a/chromium-56.0.2924.87-fpermissive.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -up chromium-56.0.2924.87/third_party/WebKit/Source/BUILD.gn.permissive chromium-56.0.2924.87/third_party/WebKit/Source/BUILD.gn ---- chromium-56.0.2924.87/third_party/WebKit/Source/BUILD.gn.permissive 2017-02-13 12:32:23.419665971 -0500 -+++ chromium-56.0.2924.87/third_party/WebKit/Source/BUILD.gn 2017-02-13 12:33:16.146629190 -0500 -@@ -54,6 +54,9 @@ config("config") { - cflags = [] - defines = [] - -+ # error: there are no arguments to 'swapAnchor' that depend on a template parameter, so a declaration of 'swapAnchor' must be available [-fpermissive] -+ cflags += [ "-fpermissive" ] -+ - if (is_win) { - cflags += [ - "/wd4305", # Truncation from 'type1' to 'type2'. diff --git a/chromium-56.0.2924.87-gcc5.patch b/chromium-56.0.2924.87-gcc5.patch deleted file mode 100644 index 902f92b..0000000 --- a/chromium-56.0.2924.87-gcc5.patch +++ /dev/null @@ -1,354 +0,0 @@ -diff -up chromium-56.0.2924.87/third_party/cld_2/src/internal/cld_generated_cjk_uni_prop_80.cc.gcc5 chromium-56.0.2924.87/third_party/cld_2/src/internal/cld_generated_cjk_uni_prop_80.cc ---- chromium-56.0.2924.87/third_party/cld_2/src/internal/cld_generated_cjk_uni_prop_80.cc.gcc5 2017-02-01 21:03:47.000000000 -0500 -+++ chromium-56.0.2924.87/third_party/cld_2/src/internal/cld_generated_cjk_uni_prop_80.cc 2017-02-09 10:38:38.319790897 -0500 -@@ -165,8 +165,8 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - // state[16 + 2] 0x000000 Byte 2 of 3 (relative offsets) - X__,X__,X__,X__,X__,X__,X__,X__, X__,X__,X__,X__,X__,X__,X__,X__, - X__,X__,X__,X__,X__,X__,X__,X__, X__,X__,X__,X__,X__,X__,X__,X__, ---14,-14,-14,-14,-14,-14,-14,-14, -14,-14,-14,-14,-14,-14,-14,-14, ---14,-14,-14,-14,-14,-14,-14,-14, -14,-14,-14,-14,-14,-14,-14,-14, -+(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14, (uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14, -+(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14, (uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14, - - // state[17 + 2] 0x0031c0 Byte 3 of 3 (property) - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -@@ -259,10 +259,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 229,229,229, 3,208, 0,229, 5, 233, 0,229,229,229,208,229,229, - - // state[32 + 2] 0x002000 Byte 2 of 3 (relative offsets) ---30,-30,-30,-30,-30,-30,-30,-30, -30,-30,-30,-30,-30,-30,-30,-30, ---30,-30,-30,-30,-30,-30,-30,-30, -30,-30,-30,-30,-30,-30,-30,-30, ---30,-30,-30,-30,-30,-30,-30,-30, -30,-30,-30,-30,-30,-30,-30,-30, ---30,-30,-30,-30,-30,-30,-30,-30, -30,-30,-30,-30,-30,-30,-30,-30, -+(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, (uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, -+(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, (uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, -+(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, (uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, -+(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, (uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, - - // state[33 + 2] 0x003780 Byte 3 of 3 (property) - 229,208,229,229,208,229,229,229, 208,208,208,208,208, 4, 6,208, -@@ -355,10 +355,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 228,229,229,229,229,233,233, 6, 208,229, 3,229,233, 6, 6, 0, - - // state[48 + 2] 0x001000 Byte 2 of 3 (relative offsets) ---46,-46,-46,-46,-42,-41,-40,-39, -46,-46,-46,-46,-46,-46,-46,-46, ---46,-46,-46,-46,-46,-46,-46,-46, -46,-46,-46,-46,-46,-46,-46,-46, ---46,-46,-46,-46,-46,-46,-46,-46, -46,-46,-46,-46,-46,-46,-46,-46, ---46,-46,-46,-46,-46,-46,-46,-46, -46,-46,-46,-46,-46,-46,-46,-46, -+(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-42,(uint8)-41,(uint8)-40,(uint8)-39, (uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, -+(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, (uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, -+(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, (uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, -+(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, (uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, - - // state[49 + 2] 0x003b40 Byte 3 of 3 (property) - 6,227,208,233,208, 3, 3,208, 208,229, 0,229,233,219, 0, 6, -@@ -451,10 +451,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 229,208,208,208,217,208,229,229, 229,229,208,217,208,229,229,229, - - // state[64 + 2] 0x003000 Byte 2 of 3 (relative offsets) ---54,-53,-52,-51,-50,-58,-49,-47, -62,-62,-62,-62,-62,-62,-62,-62, ---46,-45,-44,-43,-42,-41,-40,-39, -38,-37,-36,-35,-34,-33,-31,-30, ---29,-28,-27,-26,-25,-24,-23,-22, -21,-20,-19,-18,-17,-15,-14,-13, ---12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, -+(uint8)-54,(uint8)-53,(uint8)-52,(uint8)-51,(uint8)-50,(uint8)-58,(uint8)-49,(uint8)-47, (uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62, -+(uint8)-46,(uint8)-45,(uint8)-44,(uint8)-43,(uint8)-42,(uint8)-41,(uint8)-40,(uint8)-39, (uint8)-38,(uint8)-37,(uint8)-36,(uint8)-35,(uint8)-34,(uint8)-33,(uint8)-31,(uint8)-30, -+(uint8)-29,(uint8)-28,(uint8)-27,(uint8)-26,(uint8)-25,(uint8)-24,(uint8)-23,(uint8)-22, (uint8)-21,(uint8)-20,(uint8)-19,(uint8)-18,(uint8)-17,(uint8)-15,(uint8)-14,(uint8)-13, -+(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, - - // state[65 + 2] 0x003f00 Byte 3 of 3 (property) - 217,217,208, 3,208,217,208,208, 6,229,208,228,229,229,208,229, -@@ -547,10 +547,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 229,208,229,229,208,229,233, 0, 208,208,229,208,227,229,229,229, - - // state[80 + 2] 0x004000 Byte 2 of 3 (relative offsets) ---11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, -+(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, - 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, -- 38, 39, 40, 41, 42, 43, 44,-78, 45, 46, 47, 48, 49, 50, 51, 52, -+ 38, 39, 40, 41, 42, 43, 44,(uint8)-78, 45, 46, 47, 48, 49, 50, 51, 52, - - // state[81 + 2] 0x0042c0 Byte 3 of 3 (property) - 229, 0,229,229,229, 3, 4, 4, 229,229,229,229,208,229, 0,208, -@@ -931,7 +931,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 0,142, 98, 28,117,206,212,212, 220, 15, 0,231,199,231,111, 28, - - // state[144 + 2] 0x005000 Byte 2 of 3 (relative offsets) ---11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, -+(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, - 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, - 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, -@@ -1315,7 +1315,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 16, 15,211,118, 0,231, 68,231, 0, 99,161, 0,115,221,144,140, - - // state[208 + 2] 0x006000 Byte 2 of 3 (relative offsets) ---10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, -+(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, - 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, - 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, -@@ -1699,7 +1699,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 119, 16, 51, 0, 0, 68,136, 72, 144,118, 87,201,191,136, 78,233, - - // state[272 + 2] 0x007000 Byte 2 of 3 (relative offsets) -- -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, -+ (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, - 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, - 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, -@@ -2083,7 +2083,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 212,212, 0,126,140,220,220, 0, 0, 0,127,118,106, 0,199, 0, - - // state[336 + 2] 0x008000 Byte 2 of 3 (relative offsets) -- -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, 8, -+ (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, - 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, -@@ -2467,7 +2467,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 0,122, 0,231,100,232, 0, 0, 117, 0,206,231, 0, 0,231, 0, - - // state[400 + 2] 0x009000 Byte 2 of 3 (relative offsets) -- -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, 8, 9, -+ (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, 9, - 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, - 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, -@@ -2851,10 +2851,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - - // state[464 + 2] 0x00a000 Byte 2 of 3 (relative offsets) -- -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -- -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -- -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -- -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -+ (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, -+ (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, -+ (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, -+ (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, - - // state[465 + 2] 0x000080 Byte 2 of 2 (property) - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -@@ -2947,10 +2947,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 208,208,208,208, 5, 6,208, 2, 0, 6, 6, 5,208,208,208, 6, - - // state[480 + 2] 0x00b000 Byte 2 of 3 (relative offsets) ---20,-20,-20,-20,-20,-20,-20,-20, -20,-20,-20,-20,-20,-20,-20,-20, ---20,-20,-20,-20,-20,-20,-20,-20, -20,-20,-20,-20,-20,-20,-20,-20, ---20,-20,-20,-20,-20,-20,-20,-20, -20,-20,-20,-20,-20,-20,-20,-20, ---20,-20,-20,-20,-20,-20,-20,-20, -20,-20,-20,-20,-20,-20,-20,-20, -+(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, (uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, -+(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, (uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, -+(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, (uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, -+(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, (uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, - - // state[481 + 2] 0x020100 Byte 4 of 4 (property) - 2, 6, 5, 6, 5,229, 5,208, 208,208,208,208,208,208,208,229, -@@ -3043,10 +3043,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 208,208, 5, 5, 5,208,208, 2, 229, 5, 5, 5, 5, 5, 6,208, - - // state[496 + 2] 0x00d000 Byte 2 of 3 (relative offsets) ---35,-35,-35,-35,-35,-35,-35,-35, -35,-35,-35,-35,-35,-35,-35,-35, ---35,-35,-35,-35,-35,-35,-35,-35, -35,-35,-35,-35,-35,-35,-34,-33, ---33,-33,-33,-33,-33,-33,-33,-33, -33,-33,-33,-33,-33,-33,-33,-33, ---33,-33,-33,-33,-33,-33,-33,-33, -33,-33,-33,-33,-33,-33,-33,-33, -+(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35, (uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35, -+(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35, (uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-34,(uint8)-33, -+(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33, (uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33, -+(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33, (uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33, - - // state[497 + 2] 0x0204c0 Byte 4 of 4 (property) - 2, 2, 5, 5, 5, 2,208, 2, 5, 5, 6,208,208, 5, 5, 5, -@@ -3139,10 +3139,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 208,208, 5, 5, 5, 5, 6, 6, 208,208, 2,208,208,208,208,208, - - // state[512 + 2] 0x00f000 Byte 2 of 3 (relative offsets) ---47,-47,-47,-47,-47,-47,-47,-47, -47,-47,-47,-47,-47,-47,-47,-47, ---47,-47,-47,-47,-47,-47,-47,-47, -47,-47,-47,-47,-47,-47,-47,-47, ---47,-47,-47,-47,-46,-45,-44,-43, -42,-41,-44,-40,-47,-47,-47,-47, ---47,-47,-47,-47,-47,-47,-47,-47, -47,-47,-47,-47,-47,-39,-38,-37, -+(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, (uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, -+(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, (uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, -+(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-46,(uint8)-45,(uint8)-44,(uint8)-43, (uint8)-42,(uint8)-41,(uint8)-44,(uint8)-40,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, -+(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, (uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-39,(uint8)-38,(uint8)-37, - - // state[513 + 2] 0x020880 Byte 4 of 4 (property) - 5, 5, 5, 6,208,208,208,208, 208,208, 5, 5, 6, 6,208,208, -@@ -3235,10 +3235,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 5, 6,208,218,208,208,208,218, 208, 6,227,229, 6, 6, 6,208, - - // state[528 + 2] 0x020000 Byte 3 of 4 (relative offsets) ---52,-51,-50,-49,-47,-46,-45,-44, -43,-42,-41,-40,-39,-38,-37,-36, ---35,-34,-33,-31,-30,-29,-28,-27, -26,-25,-24,-23,-22,-21,-20,-19, ---18,-17,-15,-14,-13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -- -1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, -+(uint8)-52,(uint8)-51,(uint8)-50,(uint8)-49,(uint8)-47,(uint8)-46,(uint8)-45,(uint8)-44, (uint8)-43,(uint8)-42,(uint8)-41,(uint8)-40,(uint8)-39,(uint8)-38,(uint8)-37,(uint8)-36, -+(uint8)-35,(uint8)-34,(uint8)-33,(uint8)-31,(uint8)-30,(uint8)-29,(uint8)-28,(uint8)-27, (uint8)-26,(uint8)-25,(uint8)-24,(uint8)-23,(uint8)-22,(uint8)-21,(uint8)-20,(uint8)-19, -+(uint8)-18,(uint8)-17,(uint8)-15,(uint8)-14,(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, -+ (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, - - // state[529 + 2] 0x020c40 Byte 4 of 4 (property) - 227, 5, 5, 5, 2, 2, 2, 2, 213, 2, 2, 2, 2, 2,208, 6, -@@ -3427,7 +3427,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 208,208,208,208,208,208,208,208, 208, 6, 6, 6, 6, 2, 5, 5, - - // state[560 + 2] 0x021000 Byte 3 of 4 (relative offsets) ---16,-15,-14,-13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, -+(uint8)-16,(uint8)-15,(uint8)-14,(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, - 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, -@@ -3811,7 +3811,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 5, 5, 5, 6, 6, 6, 5,208, 208,229,208,208, 5, 5, 5, 5, - - // state[624 + 2] 0x022000 Byte 3 of 4 (relative offsets) ---15,-14,-13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, -+(uint8)-15,(uint8)-14,(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, - 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, - 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, - 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, -@@ -4195,7 +4195,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 6, 6, 4, 5,208,208,208,208, 208,208,229, 6, 5, 6, 6, 6, - - // state[688 + 2] 0x023000 Byte 3 of 4 (relative offsets) ---14,-13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, -+(uint8)-14,(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, - 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, - 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, - 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -@@ -4579,7 +4579,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 5, 5, 5, 5, 5, 5, 5, 6, 208,208,208,208,208,208, 6, 6, - - // state[752 + 2] 0x024000 Byte 3 of 4 (relative offsets) ---13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, -+(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, - 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, - 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, - 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, -@@ -4963,7 +4963,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 229, 6, 2, 2, 2, 2, 2, 2, 2, 2, 2, 5, 2, 2, 6,229, - - // state[816 + 2] 0x025000 Byte 3 of 4 (relative offsets) ---12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, -+(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, - 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, - 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, - 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, -@@ -5347,7 +5347,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 6, 6, 6, 5, 5, 5, 5, 6, 6, 6, 3, 6,229,208,208,229, - - // state[880 + 2] 0x026000 Byte 3 of 4 (relative offsets) ---11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, -+(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, - 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, - 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, -@@ -5731,7 +5731,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 208, 6, 6,208,208,208,208,208, 6, 6, 6,216, 5, 5, 5, 5, - - // state[944 + 2] 0x027000 Byte 3 of 4 (relative offsets) ---10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, -+(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, - 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, - 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, -@@ -6115,7 +6115,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 5, 5, 5, 6,208,208, 6, 6, 208,229,208,208,208, 5, 5, 5, - - // state[1008 + 2] 0x028000 Byte 3 of 4 (relative offsets) -- -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, -+ (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, - 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, - 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, -@@ -6499,7 +6499,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 208,208, 5, 5, 6,208,208, 5, 208,208,208, 6,208, 6,208,208, - - // state[1072 + 2] 0x029000 Byte 3 of 4 (relative offsets) -- -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, 8, -+ (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, - 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, -@@ -6883,7 +6883,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 229,229,229,229,208,208,208,229, 208,208,208,229, 0,229,208,208, - - // state[1136 + 2] 0x02a000 Byte 3 of 4 (relative offsets) -- -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, 8, 9, -+ (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, 9, - 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 22, 22, 22, - 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, - 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, -@@ -7075,10 +7075,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, - - // state[1168 + 2] 0x02f000 Byte 3 of 4 (relative offsets) -- -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -- -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -- -8, -7, -6, -5, -4, -3, -2, -1, 1, -9, -9, -9, -9, -9, -9, -9, -- -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -+ (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, -+ (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, -+ (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, -+ (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, - - // state[1169 + 2] 0x02fa00 Byte 4 of 4 (property) - 217, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,217, 5, 5, -diff -up chromium-56.0.2924.87/third_party/webgl/src/specs/latest/2.0/webgl2.idl.gcc5 chromium-56.0.2924.87/third_party/webgl/src/specs/latest/2.0/webgl2.idl ---- chromium-56.0.2924.87/third_party/webgl/src/specs/latest/2.0/webgl2.idl.gcc5 2017-02-01 21:03:57.000000000 -0500 -+++ chromium-56.0.2924.87/third_party/webgl/src/specs/latest/2.0/webgl2.idl 2017-02-09 10:38:38.380789675 -0500 -@@ -265,7 +265,7 @@ interface WebGL2RenderingContextBase - 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 -up chromium-56.0.2924.87/third_party/WebKit/Source/core/dom/NodeFilter.h.gcc5 chromium-56.0.2924.87/third_party/WebKit/Source/core/dom/NodeFilter.h ---- chromium-56.0.2924.87/third_party/WebKit/Source/core/dom/NodeFilter.h.gcc5 2017-02-01 21:03:09.000000000 -0500 -+++ chromium-56.0.2924.87/third_party/WebKit/Source/core/dom/NodeFilter.h 2017-02-09 10:38:38.387789535 -0500 -@@ -49,7 +49,7 @@ class NodeFilter final : public GarbageC - * to the value of NodeType for the equivalent node type. - */ - enum { -- kShowAll = 0xFFFFFFFF, -+ kShowAll = 256 /* 0xFFFFFFFF */, - kShowElement = 0x00000001, - kShowAttribute = 0x00000002, - kShowText = 0x00000004, -diff -up chromium-56.0.2924.87/third_party/WebKit/Source/core/dom/NodeFilter.idl.gcc5 chromium-56.0.2924.87/third_party/WebKit/Source/core/dom/NodeFilter.idl ---- chromium-56.0.2924.87/third_party/WebKit/Source/core/dom/NodeFilter.idl.gcc5 2017-02-01 21:03:09.000000000 -0500 -+++ chromium-56.0.2924.87/third_party/WebKit/Source/core/dom/NodeFilter.idl 2017-02-09 10:38:38.394789395 -0500 -@@ -30,7 +30,7 @@ - const unsigned short FILTER_SKIP = 3; - - // Constants for whatToShow -- const unsigned long SHOW_ALL = 0xFFFFFFFF; -+ const unsigned long SHOW_ALL = 256; // 0xFFFFFFFF - const unsigned long SHOW_ELEMENT = 0x1; - const unsigned long SHOW_ATTRIBUTE = 0x2; // historical - const unsigned long SHOW_TEXT = 0x4; -diff -up chromium-56.0.2924.87/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl.gcc5 chromium-56.0.2924.87/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl ---- chromium-56.0.2924.87/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl.gcc5 2017-02-01 21:03:09.000000000 -0500 -+++ chromium-56.0.2924.87/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl 2017-02-09 11:07:32.828682863 -0500 -@@ -239,7 +239,7 @@ typedef unsigned long long GLuint64; - 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; -@@ -269,7 +269,7 @@ typedef unsigned long long GLuint64; - const GLenum TEXTURE_IMMUTABLE_FORMAT = 0x912F; - const GLenum MAX_ELEMENT_INDEX = 0x8D6B; - const GLenum TEXTURE_IMMUTABLE_LEVELS = 0x82DF; -- const GLint TIMEOUT_IGNORED = -1; -+ const GLint TIMEOUT_IGNORED = 256; - - /* WebGL-specific enums */ - const GLenum MAX_CLIENT_WAIT_TIMEOUT_WEBGL = 0x9247; diff --git a/chromium-59.0.3071.115-ucontext-fix.patch b/chromium-59.0.3071.115-ucontext-fix.patch deleted file mode 100644 index 96bfadb..0000000 --- a/chromium-59.0.3071.115-ucontext-fix.patch +++ /dev/null @@ -1,214 +0,0 @@ -diff -up chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc.ucontextfix chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc ---- chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc.ucontextfix 2017-07-12 15:23:33.019591380 -0400 -+++ chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc 2017-07-12 15:32:52.069197546 -0400 -@@ -36,19 +36,19 @@ namespace google_breakpad { - - // Minidump defines register structures which are different from the raw - // structures which we get from the kernel. These are platform specific --// functions to juggle the ucontext and user structures into minidump format. -+// functions to juggle the ucontext_t and user structures into minidump format. - - #if defined(__i386__) - --uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) { -+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) { - return uc->uc_mcontext.gregs[REG_ESP]; - } - --uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) { -+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) { - return uc->uc_mcontext.gregs[REG_EIP]; - } - --void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc, -+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc, - const struct _libc_fpstate* fp) { - const greg_t* regs = uc->uc_mcontext.gregs; - -@@ -88,15 +88,15 @@ void UContextReader::FillCPUContext(RawC - - #elif defined(__x86_64) - --uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) { -+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) { - return uc->uc_mcontext.gregs[REG_RSP]; - } - --uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) { -+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) { - return uc->uc_mcontext.gregs[REG_RIP]; - } - --void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc, -+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc, - const struct _libc_fpstate* fpregs) { - const greg_t* regs = uc->uc_mcontext.gregs; - -@@ -145,15 +145,15 @@ void UContextReader::FillCPUContext(RawC - - #elif defined(__ARM_EABI__) - --uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) { -+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) { - return uc->uc_mcontext.arm_sp; - } - --uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) { -+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) { - return uc->uc_mcontext.arm_pc; - } - --void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc) { -+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc) { - out->context_flags = MD_CONTEXT_ARM_FULL; - - out->iregs[0] = uc->uc_mcontext.arm_r0; -@@ -184,15 +184,15 @@ void UContextReader::FillCPUContext(RawC - - #elif defined(__aarch64__) - --uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) { -+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) { - return uc->uc_mcontext.sp; - } - --uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) { -+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) { - return uc->uc_mcontext.pc; - } - --void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc, -+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc, - const struct fpsimd_context* fpregs) { - out->context_flags = MD_CONTEXT_ARM64_FULL; - -@@ -210,15 +210,15 @@ void UContextReader::FillCPUContext(RawC - - #elif defined(__mips__) - --uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) { -+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) { - return uc->uc_mcontext.gregs[MD_CONTEXT_MIPS_REG_SP]; - } - --uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) { -+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) { - return uc->uc_mcontext.pc; - } - --void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc) { -+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc) { - #if _MIPS_SIM == _ABI64 - out->context_flags = MD_CONTEXT_MIPS64_FULL; - #elif _MIPS_SIM == _ABIO32 -diff -up chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h.ucontextfix chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h ---- chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h.ucontextfix 2017-07-12 15:33:08.486806743 -0400 -+++ chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h 2017-07-12 15:33:57.299644808 -0400 -@@ -39,23 +39,23 @@ - - namespace google_breakpad { - --// Wraps platform-dependent implementations of accessors to ucontext structs. -+// Wraps platform-dependent implementations of accessors to ucontext_t structs. - struct UContextReader { -- static uintptr_t GetStackPointer(const struct ucontext* uc); -+ static uintptr_t GetStackPointer(const ucontext_t* uc); - -- static uintptr_t GetInstructionPointer(const struct ucontext* uc); -+ static uintptr_t GetInstructionPointer(const ucontext_t* uc); - -- // Juggle a arch-specific ucontext into a minidump format -+ // Juggle a arch-specific ucontext_t into a minidump format - // out: the minidump structure - // info: the collection of register structures. - #if defined(__i386__) || defined(__x86_64) -- static void FillCPUContext(RawContextCPU *out, const ucontext *uc, -+ static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc, - const struct _libc_fpstate* fp); - #elif defined(__aarch64__) -- static void FillCPUContext(RawContextCPU *out, const ucontext *uc, -+ static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc, - const struct fpsimd_context* fpregs); - #else -- static void FillCPUContext(RawContextCPU *out, const ucontext *uc); -+ static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc); - #endif - }; - -diff -up chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.cc.ucontextfix chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.cc ---- chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.cc.ucontextfix 2017-07-12 15:34:09.094364048 -0400 -+++ chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.cc 2017-07-12 15:35:36.483283853 -0400 -@@ -439,9 +439,9 @@ bool ExceptionHandler::HandleSignal(int - // Fill in all the holes in the struct to make Valgrind happy. - memset(&g_crash_context_, 0, sizeof(g_crash_context_)); - memcpy(&g_crash_context_.siginfo, info, sizeof(siginfo_t)); -- memcpy(&g_crash_context_.context, uc, sizeof(struct ucontext)); -+ memcpy(&g_crash_context_.context, uc, sizeof(ucontext_t)); - #if defined(__aarch64__) -- struct ucontext* uc_ptr = (struct ucontext*)uc; -+ ucontext_t* uc_ptr = (ucontext_t*)uc; - struct fpsimd_context* fp_ptr = - (struct fpsimd_context*)&uc_ptr->uc_mcontext.__reserved; - if (fp_ptr->head.magic == FPSIMD_MAGIC) { -@@ -450,9 +450,9 @@ bool ExceptionHandler::HandleSignal(int - } - #elif !defined(__ARM_EABI__) && !defined(__mips__) - // FP state is not part of user ABI on ARM Linux. -- // In case of MIPS Linux FP state is already part of struct ucontext -+ // In case of MIPS Linux FP state is already part of ucontext_t - // and 'float_state' is not a member of CrashContext. -- struct ucontext* uc_ptr = (struct ucontext*)uc; -+ ucontext_t* uc_ptr = (ucontext_t*)uc; - if (uc_ptr->uc_mcontext.fpregs) { - memcpy(&g_crash_context_.float_state, uc_ptr->uc_mcontext.fpregs, - sizeof(g_crash_context_.float_state)); -@@ -476,7 +476,7 @@ bool ExceptionHandler::SimulateSignalDel - // ExceptionHandler::HandleSignal(). - siginfo.si_code = SI_USER; - siginfo.si_pid = getpid(); -- struct ucontext context; -+ ucontext_t context; - getcontext(&context); - return HandleSignal(sig, &siginfo, &context); - } -diff -up chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.h.ucontextfix chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.h ---- chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.h.ucontextfix 2017-07-12 15:35:48.559996380 -0400 -+++ chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.h 2017-07-12 15:36:32.615948562 -0400 -@@ -191,11 +191,11 @@ class ExceptionHandler { - struct CrashContext { - siginfo_t siginfo; - pid_t tid; // the crashing thread. -- struct ucontext context; -+ ucontext_t context; - #if !defined(__ARM_EABI__) && !defined(__mips__) - // #ifdef this out because FP state is not part of user ABI for Linux ARM. - // In case of MIPS Linux FP state is already part of struct -- // ucontext so 'float_state' is not required. -+ // ucontext_t so 'float_state' is not required. - fpstate_t float_state; - #endif - }; -diff -up chromium-59.0.3071.115/breakpad/src/client/linux/microdump_writer/microdump_writer.cc.ucontextfix chromium-59.0.3071.115/breakpad/src/client/linux/microdump_writer/microdump_writer.cc ---- chromium-59.0.3071.115/breakpad/src/client/linux/microdump_writer/microdump_writer.cc.ucontextfix 2017-07-12 15:37:26.232674196 -0400 -+++ chromium-59.0.3071.115/breakpad/src/client/linux/microdump_writer/microdump_writer.cc 2017-07-12 15:37:39.032369973 -0400 -@@ -579,7 +579,7 @@ class MicrodumpWriter { - - void* Alloc(unsigned bytes) { return dumper_->allocator()->Alloc(bytes); } - -- const struct ucontext* const ucontext_; -+ const ucontext_t* const ucontext_; - #if !defined(__ARM_EABI__) && !defined(__mips__) - const google_breakpad::fpstate_t* const float_state_; - #endif -diff -up chromium-59.0.3071.115/breakpad/src/client/linux/minidump_writer/minidump_writer.cc.ucontextfix chromium-59.0.3071.115/breakpad/src/client/linux/minidump_writer/minidump_writer.cc ---- chromium-59.0.3071.115/breakpad/src/client/linux/minidump_writer/minidump_writer.cc.ucontextfix 2017-07-12 15:37:54.041013246 -0400 -+++ chromium-59.0.3071.115/breakpad/src/client/linux/minidump_writer/minidump_writer.cc 2017-07-12 15:38:19.600405748 -0400 -@@ -1323,7 +1323,7 @@ class MinidumpWriter { - const int fd_; // File descriptor where the minidum should be written. - const char* path_; // Path to the file where the minidum should be written. - -- const struct ucontext* const ucontext_; // also from the signal handler -+ const ucontext_t* const ucontext_; // also from the signal handler - #if !defined(__ARM_EABI__) && !defined(__mips__) - const google_breakpad::fpstate_t* const float_state_; // ditto - #endif diff --git a/chromium-59.0.3071.86-ffmpeg-stdatomic.patch b/chromium-59.0.3071.86-ffmpeg-stdatomic.patch deleted file mode 100644 index a512513..0000000 --- a/chromium-59.0.3071.86-ffmpeg-stdatomic.patch +++ /dev/null @@ -1,17 +0,0 @@ -diff -up chromium-59.0.3071.86/third_party/ffmpeg/libavutil/cpu.c.ffmpeg-stdatomic chromium-59.0.3071.86/third_party/ffmpeg/libavutil/cpu.c ---- chromium-59.0.3071.86/third_party/ffmpeg/libavutil/cpu.c.ffmpeg-stdatomic 2017-06-07 17:15:24.993945430 -0400 -+++ chromium-59.0.3071.86/third_party/ffmpeg/libavutil/cpu.c 2017-06-07 17:18:41.625997601 -0400 -@@ -17,7 +17,13 @@ - */ - - #include -+// GCC 4.8 didn't have stdatomic, but was advertising it. -+// https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58016 -+#if !defined(__clang__) && defined(__GNUC__) && (__GNUC__ == 4 || (__GNUC__ == 4 && (__GNUC_MINOR__ == 8))) -+#include -+#else - #include -+#endif - - #include "cpu.h" - #include "cpu_internal.h" diff --git a/chromium-59.0.3071.86-nullfix.patch b/chromium-59.0.3071.86-nullfix.patch deleted file mode 100644 index 20e9d18..0000000 --- a/chromium-59.0.3071.86-nullfix.patch +++ /dev/null @@ -1,43 +0,0 @@ -diff -up chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn.nullfix chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn ---- chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn.nullfix 2017-06-05 15:03:01.000000000 -0400 -+++ chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn 2017-06-07 15:32:43.531911624 -0400 -@@ -31,6 +31,7 @@ gcc_toolchain("arm64") { - ld = cxx - readelf = "${toolprefix}readelf" - nm = "${toolprefix}nm" -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - toolchain_args = { - current_cpu = "arm64" -@@ -49,6 +50,7 @@ gcc_toolchain("arm") { - ld = cxx - readelf = "${toolprefix}readelf" - nm = "${toolprefix}nm" -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - toolchain_args = { - current_cpu = "arm" -@@ -91,6 +93,7 @@ gcc_toolchain("x86") { - nm = "nm" - ar = "ar" - ld = cxx -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - # Output linker map files for binary size analysis. - enable_linker_map = true -@@ -136,6 +139,7 @@ gcc_toolchain("x64") { - nm = "nm" - ar = "ar" - ld = cxx -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - # Output linker map files for binary size analysis. - enable_linker_map = true -@@ -161,6 +165,7 @@ gcc_toolchain("mipsel") { - ld = cxx - readelf = "mipsel-linux-gnu-readelf" - nm = "mipsel-linux-gnu-nm" -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - toolchain_args = { - cc_wrapper = "" diff --git a/chromium-59.0.3071.86-system-clang.patch b/chromium-59.0.3071.86-system-clang.patch deleted file mode 100644 index 458834b..0000000 --- a/chromium-59.0.3071.86-system-clang.patch +++ /dev/null @@ -1,10 +0,0 @@ -diff -up chromium-59.0.3071.86/build/config/clang/clang.gni.system-clang chromium-59.0.3071.86/build/config/clang/clang.gni ---- chromium-59.0.3071.86/build/config/clang/clang.gni.system-clang 2017-06-11 20:57:07.327949687 -0400 -+++ chromium-59.0.3071.86/build/config/clang/clang.gni 2017-06-11 20:57:24.085620826 -0400 -@@ -9,5 +9,5 @@ declare_args() { - # coding guidelines, etc. Only used when compiling with Clang. - clang_use_chrome_plugins = is_clang && !is_nacl && !use_xcode_clang - -- clang_base_path = "//third_party/llvm-build/Release+Asserts" -+ clang_base_path = "/usr" - } diff --git a/chromium-60.0.3112.78-gn-system.patch b/chromium-60.0.3112.78-gn-system.patch deleted file mode 100644 index 60489bb..0000000 --- a/chromium-60.0.3112.78-gn-system.patch +++ /dev/null @@ -1,221 +0,0 @@ -diff -up chromium-60.0.3112.78/build/linux/unbundle/libjpeg.gn.gnsystem chromium-60.0.3112.78/build/linux/unbundle/libjpeg.gn ---- chromium-60.0.3112.78/build/linux/unbundle/libjpeg.gn.gnsystem 2017-07-25 15:04:48.000000000 -0400 -+++ chromium-60.0.3112.78/build/linux/unbundle/libjpeg.gn 2017-07-31 10:38:25.879951641 -0400 -@@ -16,6 +16,10 @@ source_set("libjpeg") { - libs = [ "jpeg" ] - } - -+config("system_libjpeg") { -+ defines = [ "USE_SYSTEM_LIBJPEG=1" ] -+} -+ - source_set("simd") { - } - -diff -up chromium-60.0.3112.78/build/linux/unbundle/libusb.gn.gnsystem chromium-60.0.3112.78/build/linux/unbundle/libusb.gn ---- chromium-60.0.3112.78/build/linux/unbundle/libusb.gn.gnsystem 2017-07-31 10:38:25.880951622 -0400 -+++ chromium-60.0.3112.78/build/linux/unbundle/libusb.gn 2017-07-31 10:38:25.879951641 -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-60.0.3112.78/build/linux/unbundle/opus.gn.gnsystem chromium-60.0.3112.78/build/linux/unbundle/opus.gn ---- chromium-60.0.3112.78/build/linux/unbundle/opus.gn.gnsystem 2017-07-25 15:04:48.000000000 -0400 -+++ chromium-60.0.3112.78/build/linux/unbundle/opus.gn 2017-07-31 10:38:25.880951622 -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-60.0.3112.78/build/linux/unbundle/replace_gn_files.py.gnsystem chromium-60.0.3112.78/build/linux/unbundle/replace_gn_files.py ---- chromium-60.0.3112.78/build/linux/unbundle/replace_gn_files.py.gnsystem 2017-07-31 10:38:25.880951622 -0400 -+++ chromium-60.0.3112.78/build/linux/unbundle/replace_gn_files.py 2017-07-31 10:39:58.067159914 -0400 -@@ -26,6 +26,7 @@ REPLACEMENTS = { - 'libevent': 'base/third_party/libevent/BUILD.gn', - 'libjpeg': 'build/secondary/third_party/libjpeg_turbo/BUILD.gn', - '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-60.0.3112.78-last-commit-position.patch b/chromium-60.0.3112.78-last-commit-position.patch deleted file mode 100644 index 7c26d9f..0000000 --- a/chromium-60.0.3112.78-last-commit-position.patch +++ /dev/null @@ -1,28 +0,0 @@ -diff -up chromium-60.0.3112.78/tools/gn/BUILD.gn.lastcommit chromium-60.0.3112.78/tools/gn/BUILD.gn ---- chromium-60.0.3112.78/tools/gn/BUILD.gn.lastcommit 2017-07-31 10:42:38.568041044 -0400 -+++ chromium-60.0.3112.78/tools/gn/BUILD.gn 2017-07-31 10:47:50.760974587 -0400 -@@ -268,7 +268,6 @@ executable("gn") { - - deps = [ - ":gn_lib", -- ":last_commit_position", - "//base", - "//build/config:exe_and_shlib_deps", - "//build/win:default_exe_manifest", -diff -up chromium-60.0.3112.78/tools/gn/gn_main.cc.lastcommit chromium-60.0.3112.78/tools/gn/gn_main.cc ---- chromium-60.0.3112.78/tools/gn/gn_main.cc.lastcommit 2017-07-25 15:05:19.000000000 -0400 -+++ chromium-60.0.3112.78/tools/gn/gn_main.cc 2017-07-31 10:42:38.568041044 -0400 -@@ -12,13 +12,7 @@ - #include "tools/gn/standard_out.h" - #include "tools/gn/switches.h" - --// Only the GN-generated build makes this header for now. --// TODO(brettw) consider adding this if we need it in GYP. --#if defined(GN_BUILD) --#include "tools/gn/last_commit_position.h" --#else - #define LAST_COMMIT_POSITION "UNKNOWN" --#endif - - namespace { - diff --git a/chromium-60.0.3112.78-no-zlib-mangle.patch b/chromium-60.0.3112.78-no-zlib-mangle.patch deleted file mode 100644 index 4b90360..0000000 --- a/chromium-60.0.3112.78-no-zlib-mangle.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -up chromium-60.0.3112.78/third_party/zlib/zconf.h.nozmangle chromium-60.0.3112.78/third_party/zlib/zconf.h ---- chromium-60.0.3112.78/third_party/zlib/zconf.h.nozmangle 2017-08-04 10:45:17.509152089 -0400 -+++ chromium-60.0.3112.78/third_party/zlib/zconf.h 2017-08-04 10:45:30.451902380 -0400 -@@ -8,9 +8,6 @@ - #ifndef ZCONF_H - #define ZCONF_H - --/* This include does prefixing as below, but with an updated set of names */ --#include "names.h" -- - /* - * If you *really* need a unique prefix for all types and library functions, - * compile with -DZ_PREFIX. The "standard" zlib should be compiled without it. diff --git a/chromium-60.0.3112.90-vulkan-force-c99.patch b/chromium-60.0.3112.90-vulkan-force-c99.patch deleted file mode 100644 index 881aa91..0000000 --- a/chromium-60.0.3112.90-vulkan-force-c99.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-60.0.3112.90/third_party/angle/src/vulkan_support/BUILD.gn.c99 chromium-60.0.3112.90/third_party/angle/src/vulkan_support/BUILD.gn ---- chromium-60.0.3112.90/third_party/angle/src/vulkan_support/BUILD.gn.c99 2017-08-14 10:40:48.028799820 -0400 -+++ chromium-60.0.3112.90/third_party/angle/src/vulkan_support/BUILD.gn 2017-08-14 10:41:43.054734910 -0400 -@@ -180,6 +180,7 @@ config("vulkan_internal_config") { - cflags += [ "-Wno-ignored-attributes" ] - } - if (is_linux) { -+ cflags += [ "-std=c99" ] - defines += [ - "SYSCONFDIR=\"/etc\"", - "FALLBACK_CONFIG_DIRS=\"/etc/xdg\"", diff --git a/chromium-61.0.3163.79-aarch64-glibc-2.26.90.patch b/chromium-61.0.3163.79-aarch64-glibc-2.26.90.patch deleted file mode 100644 index 12e88d2..0000000 --- a/chromium-61.0.3163.79-aarch64-glibc-2.26.90.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-61.0.3163.79/breakpad/src/client/linux/handler/exception_handler.cc.aarch64glibc chromium-61.0.3163.79/breakpad/src/client/linux/handler/exception_handler.cc ---- chromium-61.0.3163.79/breakpad/src/client/linux/handler/exception_handler.cc.aarch64glibc 2017-09-12 10:12:25.375736650 -0400 -+++ chromium-61.0.3163.79/breakpad/src/client/linux/handler/exception_handler.cc 2017-09-12 10:14:42.339638321 -0400 -@@ -461,7 +461,7 @@ bool ExceptionHandler::HandleSignal(int - #if defined(__aarch64__) - ucontext_t* uc_ptr = (ucontext_t*)uc; - struct fpsimd_context* fp_ptr = -- (struct fpsimd_context*)&uc_ptr->uc_mcontext.__reserved; -+ (struct fpsimd_context*)&uc_ptr->uc_mcontext.__glibc_reserved1; - if (fp_ptr->head.magic == FPSIMD_MAGIC) { - memcpy(&g_crash_context_.float_state, fp_ptr, - sizeof(g_crash_context_.float_state)); diff --git a/chromium-61.0.3163.79-fix-ffmpeg-aarch64.patch b/chromium-61.0.3163.79-fix-ffmpeg-aarch64.patch deleted file mode 100644 index a8c7260..0000000 --- a/chromium-61.0.3163.79-fix-ffmpeg-aarch64.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-61.0.3163.79/third_party/ffmpeg/ffmpeg_generated.gni.aarch64 chromium-61.0.3163.79/third_party/ffmpeg/ffmpeg_generated.gni ---- chromium-61.0.3163.79/third_party/ffmpeg/ffmpeg_generated.gni.aarch64 2017-09-06 14:34:36.247232957 -0400 -+++ chromium-61.0.3163.79/third_party/ffmpeg/ffmpeg_generated.gni 2017-09-06 14:36:37.632892363 -0400 -@@ -537,7 +537,7 @@ if (use_linux_config && current_cpu == " - ] - } - --if ((is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS")) { -+if ((is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chromium")) { - ffmpeg_c_sources += [ - "libavcodec/aarch64/mpegaudiodsp_init.c", - ] diff --git a/chromium-61.0.3163.79-setopaque.patch b/chromium-61.0.3163.79-setopaque.patch deleted file mode 100644 index b797d10..0000000 --- a/chromium-61.0.3163.79-setopaque.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-61.0.3163.79/cc/blink/web_layer_impl.h.setopaque chromium-61.0.3163.79/cc/blink/web_layer_impl.h ---- chromium-61.0.3163.79/cc/blink/web_layer_impl.h.setopaque 2017-09-06 13:55:45.454175023 -0400 -+++ chromium-61.0.3163.79/cc/blink/web_layer_impl.h 2017-09-06 13:58:02.395533936 -0400 -@@ -71,7 +71,7 @@ class CC_BLINK_EXPORT WebLayerImpl : pub - bool IsRootForIsolatedGroup() override; - void SetShouldHitTest(bool should_hit_test) override; - bool ShouldHitTest() override; -- void SetOpaque(bool opaque) override; -+ CC_BLINK_EXPORT void SetOpaque(bool opaque) override; - bool Opaque() const override; - void SetPosition(const blink::WebFloatPoint& position) override; - blink::WebFloatPoint GetPosition() const override; diff --git a/chromium-62.0.3202.62-correct-cplusplus-check.patch b/chromium-62.0.3202.62-correct-cplusplus-check.patch deleted file mode 100644 index 39f8580..0000000 --- a/chromium-62.0.3202.62-correct-cplusplus-check.patch +++ /dev/null @@ -1,20 +0,0 @@ -diff -up chromium-62.0.3202.62/third_party/crc32c/src/include/crc32c/crc32c.h.fix-cplusplus-conditional chromium-62.0.3202.62/third_party/crc32c/src/include/crc32c/crc32c.h ---- chromium-62.0.3202.62/third_party/crc32c/src/include/crc32c/crc32c.h.fix-cplusplus-conditional 2017-10-17 15:12:35.000000000 -0400 -+++ chromium-62.0.3202.62/third_party/crc32c/src/include/crc32c/crc32c.h 2017-10-19 11:41:45.860279576 -0400 -@@ -38,6 +38,8 @@ inline uint32_t Crc32c(const std::string - // Visual Studio provides a header even in C++11 mode. When - // included, the header issues an #error. (C1189) - #if !defined(_MSC_VER) || __cplusplus >= 201703L -+// GCC issues an #error if __cplusplus <= 201402L -+#if defined(__GNUC__) && __cplusplus > 201402L - #include - - // Comptues the CRC32C of the bytes in the string_view. -@@ -46,6 +48,7 @@ inline uint32_t Crc32c(const std::string - string_view.size()); - } - -+#endif // defined(__GNUC__) && __cplusplus > 201402L - #endif // !defined(_MSC_VER) || __cplusplus >= 201703L - #endif // __has_include() - #endif // defined(__has_include) diff --git a/chromium-62.0.3202.62-dde535-gcc-fix.patch b/chromium-62.0.3202.62-dde535-gcc-fix.patch deleted file mode 100644 index 378403a..0000000 --- a/chromium-62.0.3202.62-dde535-gcc-fix.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -up chromium-62.0.3202.62/services/resource_coordinator/resource_coordinator_service.cc.dde535 chromium-62.0.3202.62/services/resource_coordinator/resource_coordinator_service.cc ---- chromium-62.0.3202.62/services/resource_coordinator/resource_coordinator_service.cc.dde535 2017-10-18 10:04:33.237966223 -0400 -+++ chromium-62.0.3202.62/services/resource_coordinator/resource_coordinator_service.cc 2017-10-18 10:05:00.442438694 -0400 -@@ -18,7 +18,8 @@ std::unique_ptr(); - -- return resource_coordinator_service; -+ return std::unique_ptr( -+ resource_coordinator_service.release()); - } - - ResourceCoordinatorService::ResourceCoordinatorService() diff --git a/chromium-62.0.3202.62-enable-mp3.patch b/chromium-62.0.3202.62-enable-mp3.patch deleted file mode 100644 index 3ed9dbf..0000000 --- a/chromium-62.0.3202.62-enable-mp3.patch +++ /dev/null @@ -1,484 +0,0 @@ -diff -up chromium-62.0.3202.62/components/neterror/resources/sounds/button-press.mp3 chromium-62.0.3202.62/components/neterror/resources/sounds/button-press -diff -up chromium-62.0.3202.62/components/neterror/resources/sounds/hit.mp3 chromium-62.0.3202.62/components/neterror/resources/sounds/hit -diff -up chromium-62.0.3202.62/components/neterror/resources/sounds/score-reached.mp3 chromium-62.0.3202.62/components/neterror/resources/sounds/score-reached -diff -up chromium-62.0.3202.62/media/base/mime_util_internal.cc.mp3 chromium-62.0.3202.62/media/base/mime_util_internal.cc ---- chromium-62.0.3202.62/media/base/mime_util_internal.cc.mp3 2017-10-17 15:10:44.000000000 -0400 -+++ chromium-62.0.3202.62/media/base/mime_util_internal.cc 2017-10-18 09:32:16.957562156 -0400 -@@ -266,15 +266,19 @@ void MimeUtil::AddSupportedMediaFormats( - CodecSet webm_codecs(webm_audio_codecs); - webm_codecs.insert(webm_video_codecs.begin(), webm_video_codecs.end()); - --#if BUILDFLAG(USE_PROPRIETARY_CODECS) - const CodecSet mp3_codecs{MP3}; -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - const CodecSet aac{MPEG2_AAC, MPEG4_AAC}; -+#else -+ const CodecSet aac{}; -+#endif -+ CodecSet mp4_audio_codecs(aac); -+ mp4_audio_codecs.emplace(MP3); - -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - CodecSet avc_and_aac(aac); - avc_and_aac.emplace(H264); - -- CodecSet mp4_audio_codecs(aac); -- mp4_audio_codecs.emplace(MP3); - mp4_audio_codecs.emplace(FLAC); - #if BUILDFLAG(ENABLE_AC3_EAC3_AUDIO_DEMUXING) - mp4_audio_codecs.emplace(AC3); -@@ -311,10 +315,10 @@ void MimeUtil::AddSupportedMediaFormats( - AddContainerWithCodecs("application/ogg", ogg_codecs, false); - AddContainerWithCodecs("audio/flac", implicit_codec, false); - --#if BUILDFLAG(USE_PROPRIETARY_CODECS) - AddContainerWithCodecs("audio/mpeg", mp3_codecs, true); // Allow "mp3". - AddContainerWithCodecs("audio/mp3", implicit_codec, true); - AddContainerWithCodecs("audio/x-mp3", implicit_codec, true); -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - AddContainerWithCodecs("audio/aac", implicit_codec, true); // AAC / ADTS. - AddContainerWithCodecs("audio/mp4", mp4_audio_codecs, true); - DCHECK(!mp4_video_codecs.empty()); -@@ -920,7 +924,6 @@ bool MimeUtil::IsCodecProprietary(Codec - case INVALID_CODEC: - case AC3: - case EAC3: -- case MP3: - case MPEG2_AAC: - case MPEG4_AAC: - case H264: -@@ -928,6 +931,7 @@ bool MimeUtil::IsCodecProprietary(Codec - case DOLBY_VISION: - return true; - -+ case MP3: - case PCM: - case VORBIS: - case OPUS: -diff -up chromium-62.0.3202.62/media/formats/BUILD.gn.mp3 chromium-62.0.3202.62/media/formats/BUILD.gn ---- chromium-62.0.3202.62/media/formats/BUILD.gn.mp3 2017-10-17 15:10:45.000000000 -0400 -+++ chromium-62.0.3202.62/media/formats/BUILD.gn 2017-10-18 09:25:18.353676481 -0400 -@@ -17,6 +17,14 @@ source_set("formats") { - "ac3/ac3_util.h", - "common/offset_byte_queue.cc", - "common/offset_byte_queue.h", -+ "mpeg/adts_constants.cc", -+ "mpeg/adts_constants.h", -+ "mpeg/adts_stream_parser.cc", -+ "mpeg/adts_stream_parser.h", -+ "mpeg/mpeg1_audio_stream_parser.cc", -+ "mpeg/mpeg1_audio_stream_parser.h", -+ "mpeg/mpeg_audio_stream_parser_base.cc", -+ "mpeg/mpeg_audio_stream_parser_base.h", - "webm/webm_audio_client.cc", - "webm/webm_audio_client.h", - "webm/webm_cluster_parser.cc", -@@ -78,14 +86,6 @@ source_set("formats") { - "mp4/sample_to_group_iterator.h", - "mp4/track_run_iterator.cc", - "mp4/track_run_iterator.h", -- "mpeg/adts_constants.cc", -- "mpeg/adts_constants.h", -- "mpeg/adts_stream_parser.cc", -- "mpeg/adts_stream_parser.h", -- "mpeg/mpeg1_audio_stream_parser.cc", -- "mpeg/mpeg1_audio_stream_parser.h", -- "mpeg/mpeg_audio_stream_parser_base.cc", -- "mpeg/mpeg_audio_stream_parser_base.h", - ] - } - -diff -up chromium-62.0.3202.62/third_party/catapult/third_party/gsutil/gslib/tests/test_data/test.mp3 chromium-62.0.3202.62/third_party/catapult/third_party/gsutil/gslib/tests/test_data/test -diff -up chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h.mp3 chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h ---- chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h.mp3 2017-10-18 09:05:31.000000000 -0400 -+++ chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h 2017-10-18 09:25:18.354676462 -0400 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/chrome/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-cross-compile --cross-prefix=/usr/bin/aarch64-linux-gnu- --target-os=linux --arch=aarch64 --enable-armv8 --extra-cflags='-march=armv8-a' --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/chrome/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-cross-compile --cross-prefix=/usr/bin/aarch64-linux-gnu- --target-os=linux --arch=aarch64 --enable-armv8 --extra-cflags='-march=armv8-a' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -542,7 +542,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -620,9 +620,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -968,7 +968,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1275,7 +1275,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2217,7 +2217,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h.mp3 chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h ---- chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h.mp3 2017-10-18 09:05:31.000000000 -0400 -+++ chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h 2017-10-18 09:25:18.355676443 -0400 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/jrummell/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --disable-neon --extra-cflags='-mfpu=vfpv3-d16' --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/jrummell/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --disable-neon --extra-cflags='-mfpu=vfpv3-d16' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -542,7 +542,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -620,9 +620,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -968,7 +968,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1275,7 +1275,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2217,7 +2217,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h.mp3 chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h ---- chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h.mp3 2017-10-18 09:05:31.000000000 -0400 -+++ chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h 2017-10-18 09:25:18.360676348 -0400 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/jrummell/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --enable-neon --extra-cflags='-mfpu=neon' --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/jrummell/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --enable-neon --extra-cflags='-mfpu=neon' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -542,7 +542,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -620,9 +620,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -968,7 +968,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1275,7 +1275,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2217,7 +2217,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h.mp3 chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h ---- chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h.mp3 2017-10-18 09:05:31.000000000 -0400 -+++ chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h 2017-10-18 09:25:18.360676348 -0400 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/chrome/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=i686 --extra-cflags='\"-m32\"' --extra-ldflags='\"-m32\"' --enable-yasm --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/chrome/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=i686 --extra-cflags='\"-m32\"' --extra-ldflags='\"-m32\"' --enable-yasm --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -542,7 +542,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -620,9 +620,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -968,7 +968,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1275,7 +1275,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2217,7 +2217,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h.mp3 chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h ---- chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h.mp3 2017-10-18 09:05:31.000000000 -0400 -+++ chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h 2017-10-18 09:25:18.361676329 -0400 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/chrome/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-lto --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/chrome/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-lto --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -542,7 +542,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -620,9 +620,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -968,7 +968,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1275,7 +1275,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2217,7 +2217,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-62.0.3202.62/third_party/ffmpeg/ffmpeg_generated.gni.mp3 chromium-62.0.3202.62/third_party/ffmpeg/ffmpeg_generated.gni ---- chromium-62.0.3202.62/third_party/ffmpeg/ffmpeg_generated.gni.mp3 2017-10-18 09:05:28.000000000 -0400 -+++ chromium-62.0.3202.62/third_party/ffmpeg/ffmpeg_generated.gni 2017-10-18 09:25:18.362676310 -0400 -@@ -182,17 +182,9 @@ if ((is_mac) || (is_win) || (use_linux_c - ] - } - --if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mips64el" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { -+if ((current_cpu == "x64") || (is_android && current_cpu == "arm" && arm_use_neon) || (is_android && current_cpu == "arm64") || (is_android && current_cpu == "mips64el") || (is_android && current_cpu == "mipsel") || (is_android && current_cpu == "x86") || (is_win) || (use_linux_config && current_cpu == "arm" && arm_use_neon) || (use_linux_config && current_cpu == "arm" && arm_use_neon) || (use_linux_config && current_cpu == "arm") || (use_linux_config && current_cpu == "arm") || (use_linux_config && current_cpu == "arm64") || (use_linux_config && current_cpu == "mipsel") || (use_linux_config && current_cpu == "x64") || (use_linux_config && current_cpu == "x86")) { - ffmpeg_c_sources += [ -- "libavcodec/aac_ac3_parser.c", -- "libavcodec/aac_parser.c", -- "libavcodec/aacadtsdec.c", -- "libavcodec/aacps_float.c", -- "libavcodec/aacpsdsp_float.c", -- "libavcodec/aacsbr.c", -- "libavcodec/aactab.c", - "libavcodec/ac3tab.c", -- "libavcodec/autorename_libavcodec_aacdec.c", - "libavcodec/autorename_libavcodec_mpegaudiodsp.c", - "libavcodec/autorename_libavcodec_sbrdsp.c", - "libavcodec/cbrt_data.c", -@@ -210,7 +202,6 @@ if ((current_cpu == "x64" && ffmpeg_bran - "libavcodec/mpegaudiodsp_float.c", - "libavcodec/sinewin.c", - "libavcodec/sinewin_fixed.c", -- "libavformat/aacdec.c", - "libavformat/apetag.c", - "libavformat/img2.c", - "libavformat/mov.c", -@@ -219,6 +210,20 @@ if ((current_cpu == "x64" && ffmpeg_bran - ] - } - -+if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mips64el" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { -+ ffmpeg_c_sources += [ -+ "libavcodec/aac_ac3_parser.c", -+ "libavcodec/aac_parser.c", -+ "libavcodec/aacadtsdec.c", -+ "libavcodec/aacps_float.c", -+ "libavcodec/aacpsdsp_float.c", -+ "libavcodec/aacsbr.c", -+ "libavcodec/aactab.c", -+ "libavcodec/autorename_libavcodec_aacdec.c", -+ "libavformat/aacdec.c", -+ ] -+} -+ - if ((is_android && current_cpu == "x64") || (is_android && current_cpu == "x86") || (is_mac) || (is_win) || (use_linux_config && current_cpu == "x64") || (use_linux_config && current_cpu == "x86")) { - ffmpeg_c_sources += [ - "libavcodec/x86/autorename_libavcodec_x86_vorbisdsp_init.c", -@@ -322,15 +327,19 @@ if ((is_mac) || (is_win) || (use_linux_c - if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { - ffmpeg_c_sources += [ - "libavcodec/x86/aacpsdsp_init.c", -+ ] -+ ffmpeg_yasm_sources += [ -+ "libavcodec/x86/aacpsdsp.asm", -+ ] -+} -+ -+if ((current_cpu == "x64") || (is_android && current_cpu == "x86") || (use_linux_config && current_cpu == "x64") || (use_linux_config && current_cpu == "x86") || (is_win)) { -+ ffmpeg_c_sources += [ - "libavcodec/x86/dct_init.c", - "libavcodec/x86/mpegaudiodsp.c", - "libavcodec/x86/sbrdsp_init.c", - ] --} -- --if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { - ffmpeg_yasm_sources += [ -- "libavcodec/x86/aacpsdsp.asm", - "libavcodec/x86/dct32.asm", - "libavcodec/x86/imdct36.asm", - "libavcodec/x86/sbrdsp.asm", -diff -up chromium-62.0.3202.62/third_party/ffmpeg/libavcodec/sbrdsp.c.mp3 chromium-62.0.3202.62/third_party/ffmpeg/libavcodec/sbrdsp.c ---- chromium-62.0.3202.62/third_party/ffmpeg/libavcodec/sbrdsp.c.mp3 2017-10-18 09:05:30.000000000 -0400 -+++ chromium-62.0.3202.62/third_party/ffmpeg/libavcodec/sbrdsp.c 2017-10-18 09:25:18.362676310 -0400 -@@ -23,6 +23,7 @@ - #define USE_FIXED 0 - - #include "aac.h" -+#include "aacsbrdata.h" - #include "config.h" - #include "libavutil/attributes.h" - #include "libavutil/intfloat.h" -diff -up chromium-62.0.3202.62/third_party/webrtc/examples/objc/AppRTCMobile/ios/resources/mozart.mp3 chromium-62.0.3202.62/third_party/webrtc/examples/objc/AppRTCMobile/ios/resources/mozart -diff -up chromium-62.0.3202.62/tools/android/audio_focus_grabber/java/res/raw/ping.mp3 chromium-62.0.3202.62/tools/android/audio_focus_grabber/java/res/raw/ping diff --git a/chromium-62.0.3202.62-epel7-no-nullptr-assignment-on-StructPtr.patch b/chromium-62.0.3202.62-epel7-no-nullptr-assignment-on-StructPtr.patch deleted file mode 100644 index 7af702a..0000000 --- a/chromium-62.0.3202.62-epel7-no-nullptr-assignment-on-StructPtr.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-62.0.3202.62/third_party/WebKit/Source/platform/blob/BlobData.cpp.nonullptr chromium-62.0.3202.62/third_party/WebKit/Source/platform/blob/BlobData.cpp ---- chromium-62.0.3202.62/third_party/WebKit/Source/platform/blob/BlobData.cpp.nonullptr 2017-10-18 10:10:14.216353575 -0400 -+++ chromium-62.0.3202.62/third_party/WebKit/Source/platform/blob/BlobData.cpp 2017-10-18 10:10:23.657170980 -0400 -@@ -295,7 +295,7 @@ BlobDataHandle::BlobDataHandle(std::uniq - - size_t current_memory_population = 0; - Vector elements; -- const DataElementPtr null_element = nullptr; -+ const DataElementPtr null_element; - BlobBytesProvider* last_bytes_provider = nullptr; - RefPtr file_runner = Platform::Current()->FileTaskRunner(); - diff --git a/chromium-62.0.3202.62-gcc-nc.patch b/chromium-62.0.3202.62-gcc-nc.patch deleted file mode 100644 index 0a74d25..0000000 --- a/chromium-62.0.3202.62-gcc-nc.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-62.0.3202.62/content/network/network_service_impl.cc.gcc-nc chromium-62.0.3202.62/content/network/network_service_impl.cc ---- chromium-62.0.3202.62/content/network/network_service_impl.cc.gcc-nc 2017-10-18 10:07:04.045041261 -0400 -+++ chromium-62.0.3202.62/content/network/network_service_impl.cc 2017-10-18 10:07:53.175088528 -0400 -@@ -90,6 +90,7 @@ NetworkServiceImpl::CreateNetworkContext - base::MakeUnique(this, std::move(request), - std::move(params), std::move(builder)); - *url_request_context = network_context->url_request_context(); -+ return std::unique_ptr(network_context.release()); - return network_context; - } - diff --git a/chromium-62.0.3202.62-gcc7.patch b/chromium-62.0.3202.62-gcc7.patch deleted file mode 100644 index 90d177d..0000000 --- a/chromium-62.0.3202.62-gcc7.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-62.0.3202.62/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 chromium-62.0.3202.62/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h ---- chromium-62.0.3202.62/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 2017-10-18 09:20:04.072765163 -0400 -+++ chromium-62.0.3202.62/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h 2017-10-18 09:21:40.156905187 -0400 -@@ -9,6 +9,7 @@ - #include "platform/graphics/WebGraphicsContext3DProviderWrapper.h" - #include "platform/wtf/ThreadSpecific.h" - -+#include - #include - - namespace blink { diff --git a/chromium-62.0.3202.62-rvalue-fix.patch b/chromium-62.0.3202.62-rvalue-fix.patch deleted file mode 100644 index 89197cd..0000000 --- a/chromium-62.0.3202.62-rvalue-fix.patch +++ /dev/null @@ -1,45 +0,0 @@ -diff -up chromium-62.0.3202.62/chrome/browser/ui/webui/settings/on_startup_handler.cc.another-rvalue-fix chromium-62.0.3202.62/chrome/browser/ui/webui/settings/on_startup_handler.cc ---- chromium-62.0.3202.62/chrome/browser/ui/webui/settings/on_startup_handler.cc.another-rvalue-fix 2017-10-18 10:15:58.855675480 -0400 -+++ chromium-62.0.3202.62/chrome/browser/ui/webui/settings/on_startup_handler.cc 2017-10-18 10:16:28.925093301 -0400 -@@ -77,7 +77,7 @@ std::unique_ptr OnStartupHa - !extensions::ExtensionSystem::Get(profile_) - ->management_policy() - ->MustRemainEnabled(ntp_extension, nullptr)); -- return dict; -+ return std::move(dict); - } - - void OnStartupHandler::HandleGetNtpExtension(const base::ListValue* args) { -diff -up chromium-62.0.3202.62/ui/views/animation/ink_drop_host_view.cc.another-rvalue-fix chromium-62.0.3202.62/ui/views/animation/ink_drop_host_view.cc ---- chromium-62.0.3202.62/ui/views/animation/ink_drop_host_view.cc.another-rvalue-fix 2017-10-18 10:15:16.408497853 -0400 -+++ chromium-62.0.3202.62/ui/views/animation/ink_drop_host_view.cc 2017-10-18 10:15:43.793967075 -0400 -@@ -305,7 +305,7 @@ std::unique_ptr InkDropHost - base::MakeUnique(this, size()); - ink_drop->SetAutoHighlightMode( - views::InkDropImpl::AutoHighlightMode::HIDE_ON_RIPPLE); -- return ink_drop; -+ return std:move(ink_drop); - } - - std::unique_ptr -@@ -314,7 +314,7 @@ InkDropHostView::CreateDefaultFloodFillI - InkDropHostView::CreateDefaultInkDropImpl(); - ink_drop->SetAutoHighlightMode( - views::InkDropImpl::AutoHighlightMode::SHOW_ON_RIPPLE); -- return ink_drop; -+ return std:move(ink_drop); - } - - } // namespace views -diff -up chromium-62.0.3202.62/ui/views/controls/button/checkbox.cc.another-rvalue-fix chromium-62.0.3202.62/ui/views/controls/button/checkbox.cc ---- chromium-62.0.3202.62/ui/views/controls/button/checkbox.cc.another-rvalue-fix 2017-10-18 10:14:18.054627919 -0400 -+++ chromium-62.0.3202.62/ui/views/controls/button/checkbox.cc 2017-10-18 10:14:42.265159378 -0400 -@@ -198,7 +198,7 @@ std::unique_ptr Checkbox::Creat - std::unique_ptr ink_drop = CreateDefaultInkDropImpl(); - ink_drop->SetShowHighlightOnHover(false); - ink_drop->SetAutoHighlightMode(InkDropImpl::AutoHighlightMode::NONE); -- return ink_drop; -+ return std::move(ink_drop); - } - - std::unique_ptr Checkbox::CreateInkDropRipple() const { diff --git a/chromium-63.0.3289.84-aarch64-glibc-2.26.90.patch b/chromium-63.0.3289.84-aarch64-glibc-2.26.90.patch deleted file mode 100644 index 469d680..0000000 --- a/chromium-63.0.3289.84-aarch64-glibc-2.26.90.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-63.0.3239.84/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc.aarch64glibc chromium-63.0.3239.84/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc ---- chromium-63.0.3239.84/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc.aarch64glibc 2017-12-12 09:56:24.469343868 -0500 -+++ chromium-63.0.3239.84/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc 2017-12-12 09:56:38.468071095 -0500 -@@ -461,7 +461,7 @@ bool ExceptionHandler::HandleSignal(int - #if defined(__aarch64__) - ucontext_t* uc_ptr = (ucontext_t*)uc; - struct fpsimd_context* fp_ptr = -- (struct fpsimd_context*)&uc_ptr->uc_mcontext.__reserved; -+ (struct fpsimd_context*)&uc_ptr->uc_mcontext.__glibc_reserved1; - if (fp_ptr->head.magic == FPSIMD_MAGIC) { - memcpy(&g_crash_context_.float_state, fp_ptr, - sizeof(g_crash_context_.float_state)); diff --git a/chromium-63.0.3289.84-enable-mp3.patch b/chromium-63.0.3289.84-enable-mp3.patch deleted file mode 100644 index 91a331a..0000000 --- a/chromium-63.0.3289.84-enable-mp3.patch +++ /dev/null @@ -1,485 +0,0 @@ -diff -up chromium-63.0.3239.84/components/neterror/resources/sounds/button-press.mp3 chromium-63.0.3239.84/components/neterror/resources/sounds/button-press -diff -up chromium-63.0.3239.84/components/neterror/resources/sounds/hit.mp3 chromium-63.0.3239.84/components/neterror/resources/sounds/hit -diff -up chromium-63.0.3239.84/components/neterror/resources/sounds/score-reached.mp3 chromium-63.0.3239.84/components/neterror/resources/sounds/score-reached -diff -up chromium-63.0.3239.84/media/base/mime_util_internal.cc.mp3 chromium-63.0.3239.84/media/base/mime_util_internal.cc ---- chromium-63.0.3239.84/media/base/mime_util_internal.cc.mp3 2017-12-06 15:05:29.000000000 -0500 -+++ chromium-63.0.3239.84/media/base/mime_util_internal.cc 2017-12-07 10:52:02.472510232 -0500 -@@ -266,15 +266,19 @@ void MimeUtil::AddSupportedMediaFormats( - CodecSet webm_codecs(webm_audio_codecs); - webm_codecs.insert(webm_video_codecs.begin(), webm_video_codecs.end()); - --#if BUILDFLAG(USE_PROPRIETARY_CODECS) - const CodecSet mp3_codecs{MP3}; -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - const CodecSet aac{MPEG2_AAC, MPEG4_AAC}; -+#else -+ const CodecSet aac{}; -+#endif -+ CodecSet mp4_audio_codecs(aac); -+ mp4_audio_codecs.emplace(MP3); - -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - CodecSet avc_and_aac(aac); - avc_and_aac.emplace(H264); - -- CodecSet mp4_audio_codecs(aac); -- mp4_audio_codecs.emplace(MP3); - mp4_audio_codecs.emplace(FLAC); - #if BUILDFLAG(ENABLE_AC3_EAC3_AUDIO_DEMUXING) - mp4_audio_codecs.emplace(AC3); -@@ -311,10 +315,10 @@ void MimeUtil::AddSupportedMediaFormats( - AddContainerWithCodecs("application/ogg", ogg_codecs, false); - AddContainerWithCodecs("audio/flac", implicit_codec, false); - --#if BUILDFLAG(USE_PROPRIETARY_CODECS) - AddContainerWithCodecs("audio/mpeg", mp3_codecs, true); // Allow "mp3". - AddContainerWithCodecs("audio/mp3", implicit_codec, true); - AddContainerWithCodecs("audio/x-mp3", implicit_codec, true); -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - AddContainerWithCodecs("audio/aac", implicit_codec, true); // AAC / ADTS. - AddContainerWithCodecs("audio/mp4", mp4_audio_codecs, true); - DCHECK(!mp4_video_codecs.empty()); -@@ -935,7 +939,6 @@ bool MimeUtil::IsCodecProprietary(Codec - case INVALID_CODEC: - case AC3: - case EAC3: -- case MP3: - case MPEG2_AAC: - case MPEG4_AAC: - case H264: -@@ -943,6 +946,7 @@ bool MimeUtil::IsCodecProprietary(Codec - case DOLBY_VISION: - return true; - -+ case MP3: - case PCM: - case VORBIS: - case OPUS: -diff -up chromium-63.0.3239.84/media/formats/BUILD.gn.mp3 chromium-63.0.3239.84/media/formats/BUILD.gn ---- chromium-63.0.3239.84/media/formats/BUILD.gn.mp3 2017-12-06 15:05:29.000000000 -0500 -+++ chromium-63.0.3239.84/media/formats/BUILD.gn 2017-12-07 10:52:02.473510212 -0500 -@@ -20,6 +20,14 @@ source_set("formats") { - "ac3/ac3_util.h", - "common/offset_byte_queue.cc", - "common/offset_byte_queue.h", -+ "mpeg/adts_constants.cc", -+ "mpeg/adts_constants.h", -+ "mpeg/adts_stream_parser.cc", -+ "mpeg/adts_stream_parser.h", -+ "mpeg/mpeg1_audio_stream_parser.cc", -+ "mpeg/mpeg1_audio_stream_parser.h", -+ "mpeg/mpeg_audio_stream_parser_base.cc", -+ "mpeg/mpeg_audio_stream_parser_base.h", - "webm/webm_audio_client.cc", - "webm/webm_audio_client.h", - "webm/webm_cluster_parser.cc", -@@ -81,14 +89,6 @@ source_set("formats") { - "mp4/sample_to_group_iterator.h", - "mp4/track_run_iterator.cc", - "mp4/track_run_iterator.h", -- "mpeg/adts_constants.cc", -- "mpeg/adts_constants.h", -- "mpeg/adts_stream_parser.cc", -- "mpeg/adts_stream_parser.h", -- "mpeg/mpeg1_audio_stream_parser.cc", -- "mpeg/mpeg1_audio_stream_parser.h", -- "mpeg/mpeg_audio_stream_parser_base.cc", -- "mpeg/mpeg_audio_stream_parser_base.h", - ] - } - -diff -up chromium-63.0.3239.84/third_party/catapult/third_party/gsutil/gslib/tests/test_data/test.mp3 chromium-63.0.3239.84/third_party/catapult/third_party/gsutil/gslib/tests/test_data/test -diff -up chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h.mp3 chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h ---- chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h.mp3 2017-12-07 09:51:37.000000000 -0500 -+++ chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h 2017-12-07 11:08:41.116117073 -0500 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/blink3/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-cross-compile --cross-prefix=/usr/bin/aarch64-linux-gnu- --target-os=linux --arch=aarch64 --enable-armv8 --extra-cflags='-march=armv8-a' --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/blink3/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-cross-compile --cross-prefix=/usr/bin/aarch64-linux-gnu- --target-os=linux --arch=aarch64 --enable-armv8 --extra-cflags='-march=armv8-a' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -547,7 +547,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -626,9 +626,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -979,7 +979,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1292,7 +1292,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2267,7 +2267,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h.mp3 chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h ---- chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h.mp3 2017-12-07 09:51:37.000000000 -0500 -+++ chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h 2017-12-07 11:09:23.602291820 -0500 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/chcunningham/chrome_root/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --disable-neon --extra-cflags='-mfpu=vfpv3-d16' --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/chcunningham/chrome_root/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --disable-neon --extra-cflags='-mfpu=vfpv3-d16' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -547,7 +547,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -626,9 +626,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -979,7 +979,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1292,7 +1292,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2267,7 +2267,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h.mp3 chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h ---- chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h.mp3 2017-12-07 09:51:37.000000000 -0500 -+++ chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h 2017-12-07 11:09:49.945779754 -0500 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/chcunningham/chrome_root/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --enable-neon --extra-cflags='-mfpu=neon' --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/chcunningham/chrome_root/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --enable-neon --extra-cflags='-mfpu=neon' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -547,7 +547,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -626,9 +626,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -979,7 +979,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1292,7 +1292,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2267,7 +2267,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h.mp3 chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h ---- chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h.mp3 2017-12-07 09:51:37.000000000 -0500 -+++ chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h 2017-12-07 11:10:25.513089579 -0500 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/blink3/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=i686 --extra-cflags='\"-m32\"' --extra-ldflags='\"-m32\"' --enable-yasm --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/blink3/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=i686 --extra-cflags='\"-m32\"' --extra-ldflags='\"-m32\"' --enable-yasm --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -547,7 +547,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -626,9 +626,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -979,7 +979,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1292,7 +1292,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2267,7 +2267,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h.mp3 chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h ---- chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h.mp3 2017-12-07 09:51:37.000000000 -0500 -+++ chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h 2017-12-07 11:10:50.721599547 -0500 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/blink3/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-lto --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/blink3/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-lto --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -547,7 +547,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -626,9 +626,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -979,7 +979,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1292,7 +1292,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2267,7 +2267,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-63.0.3239.84/third_party/ffmpeg/ffmpeg_generated.gni.mp3 chromium-63.0.3239.84/third_party/ffmpeg/ffmpeg_generated.gni ---- chromium-63.0.3239.84/third_party/ffmpeg/ffmpeg_generated.gni.mp3 2017-12-07 09:51:36.000000000 -0500 -+++ chromium-63.0.3239.84/third_party/ffmpeg/ffmpeg_generated.gni 2017-12-07 11:16:58.728447124 -0500 -@@ -183,17 +183,9 @@ if ((is_mac) || (is_win) || (use_linux_c - ] - } - --if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mips64el" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { -+if ((current_cpu == "x64") || (is_android && current_cpu == "arm" && arm_use_neon) || (is_android && current_cpu == "arm64") || (is_android && current_cpu == "mips64el") || (is_android && current_cpu == "mipsel") || (is_android && current_cpu == "x86") || (is_win) || (use_linux_config && current_cpu == "arm" && arm_use_neon) || (use_linux_config && current_cpu == "arm") || (use_linux_config && current_cpu == "arm64") || (use_linux_config && current_cpu == "mipsel") || (use_linux_config && current_cpu == "x64") || (use_linux_config && current_cpu == "x86")) { - ffmpeg_c_sources += [ -- "libavcodec/aac_ac3_parser.c", -- "libavcodec/aac_parser.c", -- "libavcodec/aacadtsdec.c", -- "libavcodec/aacps_float.c", -- "libavcodec/aacpsdsp_float.c", -- "libavcodec/aacsbr.c", -- "libavcodec/aactab.c", - "libavcodec/ac3tab.c", -- "libavcodec/autorename_libavcodec_aacdec.c", - "libavcodec/autorename_libavcodec_mdct15.c", - "libavcodec/autorename_libavcodec_mpegaudiodsp.c", - "libavcodec/autorename_libavcodec_sbrdsp.c", -@@ -211,7 +203,6 @@ if ((current_cpu == "x64" && ffmpeg_bran - "libavcodec/mpegaudiodsp_float.c", - "libavcodec/sinewin.c", - "libavcodec/sinewin_fixed.c", -- "libavformat/aacdec.c", - "libavformat/apetag.c", - "libavformat/img2.c", - "libavformat/mov.c", -@@ -220,6 +211,20 @@ if ((current_cpu == "x64" && ffmpeg_bran - ] - } - -+if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mips64el" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { -+ ffmpeg_c_sources += [ -+ "libavcodec/aac_ac3_parser.c", -+ "libavcodec/aac_parser.c", -+ "libavcodec/aacadtsdec.c", -+ "libavcodec/aacps_float.c", -+ "libavcodec/aacpsdsp_float.c", -+ "libavcodec/aacsbr.c", -+ "libavcodec/aactab.c", -+ "libavcodec/autorename_libavcodec_aacdec.c", -+ "libavformat/aacdec.c", -+ ] -+} -+ - if ((is_android && current_cpu == "x64") || (is_android && current_cpu == "x86") || (is_mac) || (is_win) || (use_linux_config && current_cpu == "x64") || (use_linux_config && current_cpu == "x86")) { - ffmpeg_c_sources += [ - "libavcodec/x86/autorename_libavcodec_x86_vorbisdsp_init.c", -@@ -323,16 +328,20 @@ if ((is_mac) || (is_win) || (use_linux_c - if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { - ffmpeg_c_sources += [ - "libavcodec/x86/aacpsdsp_init.c", -+ ] -+ ffmpeg_yasm_sources += [ -+ "libavcodec/x86/aacpsdsp.asm", -+ ] -+} -+ -+if ((current_cpu == "x64") || (is_android && current_cpu == "x86") || (use_linux_config && current_cpu == "x64") || (use_linux_config && current_cpu == "x86") || (is_win)) { -+ ffmpeg_c_sources += [ - "libavcodec/x86/dct_init.c", - "libavcodec/x86/mdct15_init.c", - "libavcodec/x86/mpegaudiodsp.c", - "libavcodec/x86/sbrdsp_init.c", - ] --} -- --if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { - ffmpeg_yasm_sources += [ -- "libavcodec/x86/aacpsdsp.asm", - "libavcodec/x86/dct32.asm", - "libavcodec/x86/imdct36.asm", - "libavcodec/x86/mdct15.asm", -diff -up chromium-63.0.3239.84/third_party/ffmpeg/libavcodec/sbrdsp.c.mp3 chromium-63.0.3239.84/third_party/ffmpeg/libavcodec/sbrdsp.c ---- chromium-63.0.3239.84/third_party/ffmpeg/libavcodec/sbrdsp.c.mp3 2017-12-07 09:51:37.000000000 -0500 -+++ chromium-63.0.3239.84/third_party/ffmpeg/libavcodec/sbrdsp.c 2017-12-07 10:52:02.484509992 -0500 -@@ -23,6 +23,7 @@ - #define USE_FIXED 0 - - #include "aac.h" -+#include "aacsbrdata.h" - #include "config.h" - #include "libavutil/attributes.h" - #include "libavutil/intfloat.h" -diff -up chromium-63.0.3239.84/third_party/webrtc/examples/objc/AppRTCMobile/ios/resources/mozart.mp3 chromium-63.0.3239.84/third_party/webrtc/examples/objc/AppRTCMobile/ios/resources/mozart -diff -up chromium-63.0.3239.84/tools/android/audio_focus_grabber/java/res/raw/ping.mp3 chromium-63.0.3239.84/tools/android/audio_focus_grabber/java/res/raw/ping diff --git a/chromium-63.0.3289.84-fix-ffmpeg-aarch64.patch b/chromium-63.0.3289.84-fix-ffmpeg-aarch64.patch deleted file mode 100644 index 8df206b..0000000 --- a/chromium-63.0.3289.84-fix-ffmpeg-aarch64.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-63.0.3239.84/third_party/ffmpeg/ffmpeg_generated.gni.aarch64 chromium-63.0.3239.84/third_party/ffmpeg/ffmpeg_generated.gni ---- chromium-63.0.3239.84/third_party/ffmpeg/ffmpeg_generated.gni.aarch64 2017-12-07 11:23:07.077290535 -0500 -+++ chromium-63.0.3239.84/third_party/ffmpeg/ffmpeg_generated.gni 2017-12-07 11:27:30.354175021 -0500 -@@ -541,7 +541,7 @@ if (use_linux_config && current_cpu == " - ] - } - --if ((is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS")) { -+if ((is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64")) { - ffmpeg_c_sources += [ - "libavcodec/aarch64/aacpsdsp_init_aarch64.c", - "libavcodec/aarch64/mpegaudiodsp_init.c", diff --git a/chromium-63.0.3289.84-fix-ft-hb-unbundle.patch b/chromium-63.0.3289.84-fix-ft-hb-unbundle.patch deleted file mode 100644 index 9ca87ad..0000000 --- a/chromium-63.0.3289.84-fix-ft-hb-unbundle.patch +++ /dev/null @@ -1,36 +0,0 @@ -diff -up chromium-63.0.3239.84/build/linux/unbundle/freetype.gn.fixunbundle chromium-63.0.3239.84/build/linux/unbundle/freetype.gn ---- chromium-63.0.3239.84/build/linux/unbundle/freetype.gn.fixunbundle 2017-12-07 12:07:48.652161826 -0500 -+++ chromium-63.0.3239.84/build/linux/unbundle/freetype.gn 2017-12-07 12:08:52.514919585 -0500 -@@ -117,6 +117,14 @@ source_set("freetype") { - public_configs = [ ":freetype_config" ] - } - -+source_set("freetype_source") { -+ visibility = [ "//third_party:freetype_harfbuzz" ] -+ deps = [ -+ ":freetype_shim", -+ ] -+ public_configs = [ ":freetype_config" ] -+} -+ - source_set("bootstrap_freetype_for_harfbuzz") { - deps = [ - ":freetype_shim", -diff -up chromium-63.0.3239.84/build/linux/unbundle/harfbuzz-ng.gn.fixunbundle chromium-63.0.3239.84/build/linux/unbundle/harfbuzz-ng.gn ---- chromium-63.0.3239.84/build/linux/unbundle/harfbuzz-ng.gn.fixunbundle 2017-12-07 12:09:57.057661738 -0500 -+++ chromium-63.0.3239.84/build/linux/unbundle/harfbuzz-ng.gn 2017-12-07 12:10:03.225541404 -0500 -@@ -24,6 +24,14 @@ group("harfbuzz-ng") { - ] - } - -+source_set("harfbuzz_source") { -+ visibility = [ "//third_party:freetype_harfbuzz" ] -+ deps = [ -+ ":harfbuzz_shim", -+ ] -+ public_configs = [ ":system_harfbuzz" ] -+} -+ - source_set("harfbuzz-ng-ft") { - deps = [ - ":harfbuzz_shim", diff --git a/chromium-63.0.3289.84-gcc-round-fix.patch b/chromium-63.0.3289.84-gcc-round-fix.patch deleted file mode 100644 index 86d0a7e..0000000 --- a/chromium-63.0.3289.84-gcc-round-fix.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-63.0.3239.84/third_party/webrtc/p2p/base/port.cc.gcc-round-fix chromium-63.0.3239.84/third_party/webrtc/p2p/base/port.cc ---- chromium-63.0.3239.84/third_party/webrtc/p2p/base/port.cc.gcc-round-fix 2017-12-07 16:20:01.521717091 -0500 -+++ chromium-63.0.3239.84/third_party/webrtc/p2p/base/port.cc 2017-12-07 16:20:13.025491739 -0500 -@@ -11,6 +11,7 @@ - #include "p2p/base/port.h" - - #include -+#include - #include - - #include "p2p/base/common.h" diff --git a/chromium-63.0.3289.84-gcc5-r3.patch b/chromium-63.0.3289.84-gcc5-r3.patch deleted file mode 100644 index 83c6911..0000000 --- a/chromium-63.0.3289.84-gcc5-r3.patch +++ /dev/null @@ -1,104 +0,0 @@ -diff -up chromium-63.0.3239.84/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 chromium-63.0.3239.84/gpu/ipc/common/mailbox_struct_traits.h ---- chromium-63.0.3239.84/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 2017-12-06 15:05:28.000000000 -0500 -+++ chromium-63.0.3239.84/gpu/ipc/common/mailbox_struct_traits.h 2017-12-07 11:32:15.416636125 -0500 -@@ -15,7 +15,7 @@ namespace mojo { - template <> - struct StructTraits { - static base::span name(const gpu::Mailbox& mailbox) { -- return mailbox.name; -+ return base::make_span(mailbox.name); - } - static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out); - }; -diff -up chromium-63.0.3239.84/services/viz/public/cpp/compositing/filter_operation_struct_traits.h.gcc5-r3 chromium-63.0.3239.84/services/viz/public/cpp/compositing/filter_operation_struct_traits.h ---- chromium-63.0.3239.84/services/viz/public/cpp/compositing/filter_operation_struct_traits.h.gcc5-r3 2017-12-06 15:05:31.000000000 -0500 -+++ chromium-63.0.3239.84/services/viz/public/cpp/compositing/filter_operation_struct_traits.h 2017-12-07 11:32:15.422636011 -0500 -@@ -134,7 +134,7 @@ struct StructTraits matrix(const cc::FilterOperation& operation) { - if (operation.type() != cc::FilterOperation::COLOR_MATRIX) - return base::span(); -- return operation.matrix(); -+ return base::make_span(operation.matrix()); - } - - static base::span shape( -diff -up chromium-63.0.3239.84/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 chromium-63.0.3239.84/services/viz/public/cpp/compositing/quads_struct_traits.h ---- chromium-63.0.3239.84/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 2017-12-07 11:32:15.429635877 -0500 -+++ chromium-63.0.3239.84/services/viz/public/cpp/compositing/quads_struct_traits.h 2017-12-07 11:34:00.081601880 -0500 -@@ -309,7 +309,7 @@ struct StructTraits vertex_opacity(const viz::DrawQuad& input) { - const viz::TextureDrawQuad* quad = - viz::TextureDrawQuad::MaterialCast(&input); -- return quad->vertex_opacity; -+ return base::make_span(quad->vertex_opacity); - } - - static bool y_flipped(const viz::DrawQuad& input) { -diff -up chromium-63.0.3239.84/third_party/WebKit/Source/platform/exported/WebCORS.cpp.gcc5-r3 chromium-63.0.3239.84/third_party/WebKit/Source/platform/exported/WebCORS.cpp ---- chromium-63.0.3239.84/third_party/WebKit/Source/platform/exported/WebCORS.cpp.gcc5-r3 2017-12-06 15:05:46.000000000 -0500 -+++ chromium-63.0.3239.84/third_party/WebKit/Source/platform/exported/WebCORS.cpp 2017-12-07 11:32:15.430635859 -0500 -@@ -480,7 +480,7 @@ WebString AccessControlErrorString( - } - default: - NOTREACHED(); -- return ""; -+ return WebString(); - } - } - -@@ -512,7 +512,7 @@ WebString PreflightErrorString(const Pre - } - default: - NOTREACHED(); -- return ""; -+ return WebString(); - } - } - -@@ -533,7 +533,7 @@ WebString RedirectErrorString(const Redi - } - default: - NOTREACHED(); -- return ""; -+ return WebString(); - } - } - -diff -up chromium-63.0.3239.84/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h.gcc5-r3 chromium-63.0.3239.84/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h ---- chromium-63.0.3239.84/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h.gcc5-r3 2017-12-06 15:05:46.000000000 -0500 -+++ chromium-63.0.3239.84/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h 2017-12-07 11:32:15.408636277 -0500 -@@ -63,7 +63,7 @@ class WTF_EXPORT ArrayBufferContents { - allocation_length_(0), - data_(data), - data_length_(0), -- kind_(AllocationKind::kNormal), -+ kind_(WTF::ArrayBufferContents::AllocationKind::kNormal), - deleter_(deleter) {} - DataHandle(void* allocation_base, - size_t allocation_length, -@@ -94,11 +94,11 @@ class WTF_EXPORT ArrayBufferContents { - reinterpret_cast(allocation_base_) + - allocation_length_); - switch (kind_) { -- case AllocationKind::kNormal: -+ case WTF::ArrayBufferContents::AllocationKind::kNormal: - DCHECK(deleter_); - deleter_(data_); - return; -- case AllocationKind::kReservation: -+ case WTF::ArrayBufferContents::AllocationKind::kReservation: - ReleaseReservedMemory(allocation_base_, allocation_length_); - return; - } -diff -up chromium-63.0.3239.84/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 chromium-63.0.3239.84/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc ---- chromium-63.0.3239.84/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 2017-12-07 11:32:15.409636258 -0500 -+++ chromium-63.0.3239.84/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2017-12-07 11:33:10.714561105 -0500 -@@ -10,7 +10,7 @@ - - #include "modules/audio_processing/aec3/aec_state.h" - --#include -+#include - #include - #include - diff --git a/chromium-63.0.3289.84-nolibc++.patch b/chromium-63.0.3289.84-nolibc++.patch deleted file mode 100644 index 0d999c8..0000000 --- a/chromium-63.0.3289.84-nolibc++.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -up chromium-63.0.3239.84/remoting/host/linux/BUILD.gn.nolibc++ chromium-63.0.3239.84/remoting/host/linux/BUILD.gn ---- chromium-63.0.3239.84/remoting/host/linux/BUILD.gn.nolibc++ 2017-12-07 11:55:43.173273434 -0500 -+++ chromium-63.0.3239.84/remoting/host/linux/BUILD.gn 2017-12-07 11:55:53.244077772 -0500 -@@ -62,11 +62,9 @@ if (enable_me2me_host) { - if (is_component_build) { - sources += [ - "$root_build_dir/libbase.so", -- "$root_build_dir/libc++.so", - ] - deps += [ - "//base:base", -- "//buildtools/third_party/libc++:libc++", - ] - } - } diff --git a/chromium-63.0.3289.84-setopaque.patch b/chromium-63.0.3289.84-setopaque.patch deleted file mode 100644 index 8fb585a..0000000 --- a/chromium-63.0.3289.84-setopaque.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-63.0.3239.84/cc/blink/web_layer_impl.h.setopaque chromium-63.0.3239.84/cc/blink/web_layer_impl.h ---- chromium-63.0.3239.84/cc/blink/web_layer_impl.h.setopaque 2017-12-07 10:47:48.262446682 -0500 -+++ chromium-63.0.3239.84/cc/blink/web_layer_impl.h 2017-12-07 10:48:47.437298948 -0500 -@@ -67,7 +67,7 @@ class CC_BLINK_EXPORT WebLayerImpl : pub - void SetIsRootForIsolatedGroup(bool root) override; - bool IsRootForIsolatedGroup() override; - void SetHitTestableWithoutDrawsContent(bool should_hit_test) override; -- void SetOpaque(bool opaque) override; -+ CC_BLINK_EXPORT void SetOpaque(bool opaque) override; - bool Opaque() const override; - void SetPosition(const blink::WebFloatPoint& position) override; - blink::WebFloatPoint GetPosition() const override; diff --git a/chromium-64.0.3282.119-enable-mp3.patch b/chromium-64.0.3282.119-enable-mp3.patch deleted file mode 100644 index 849b5ee..0000000 --- a/chromium-64.0.3282.119-enable-mp3.patch +++ /dev/null @@ -1,54 +0,0 @@ -diff -up chromium-64.0.3282.119/media/base/mime_util_internal.cc.mp3 chromium-64.0.3282.119/media/base/mime_util_internal.cc ---- chromium-64.0.3282.119/media/base/mime_util_internal.cc.mp3 2018-01-24 15:05:48.000000000 -0500 -+++ chromium-64.0.3282.119/media/base/mime_util_internal.cc 2018-01-25 11:18:12.354147726 -0500 -@@ -279,15 +279,19 @@ void MimeUtil::AddSupportedMediaFormats( - CodecSet webm_codecs(webm_audio_codecs); - webm_codecs.insert(webm_video_codecs.begin(), webm_video_codecs.end()); - --#if BUILDFLAG(USE_PROPRIETARY_CODECS) - const CodecSet mp3_codecs{MP3}; -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - const CodecSet aac{MPEG2_AAC, MPEG4_AAC}; -+#else -+ const CodecSet aac{}; -+#endif -+ CodecSet mp4_audio_codecs(aac); -+ mp4_audio_codecs.emplace(MP3); - -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - CodecSet avc_and_aac(aac); - avc_and_aac.emplace(H264); - -- CodecSet mp4_audio_codecs(aac); -- mp4_audio_codecs.emplace(MP3); - mp4_audio_codecs.emplace(FLAC); - #if BUILDFLAG(ENABLE_AC3_EAC3_AUDIO_DEMUXING) - mp4_audio_codecs.emplace(AC3); -@@ -329,10 +333,10 @@ void MimeUtil::AddSupportedMediaFormats( - AddContainerWithCodecs("application/ogg", ogg_codecs, false); - AddContainerWithCodecs("audio/flac", implicit_codec, false); - --#if BUILDFLAG(USE_PROPRIETARY_CODECS) - AddContainerWithCodecs("audio/mpeg", mp3_codecs, true); // Allow "mp3". - AddContainerWithCodecs("audio/mp3", implicit_codec, true); - AddContainerWithCodecs("audio/x-mp3", implicit_codec, true); -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - AddContainerWithCodecs("audio/aac", implicit_codec, true); // AAC / ADTS. - AddContainerWithCodecs("audio/mp4", mp4_audio_codecs, true); - DCHECK(!mp4_video_codecs.empty()); -@@ -970,7 +974,6 @@ bool MimeUtil::IsCodecProprietary(Codec - case INVALID_CODEC: - case AC3: - case EAC3: -- case MP3: - case MPEG2_AAC: - case MPEG4_AAC: - case H264: -@@ -978,6 +981,7 @@ bool MimeUtil::IsCodecProprietary(Codec - case DOLBY_VISION: - return true; - -+ case MP3: - case PCM: - case VORBIS: - case OPUS: diff --git a/chromium-64.0.3282.119-gcc-constexpr-fix.patch b/chromium-64.0.3282.119-gcc-constexpr-fix.patch deleted file mode 100644 index 57b63cd..0000000 --- a/chromium-64.0.3282.119-gcc-constexpr-fix.patch +++ /dev/null @@ -1,70 +0,0 @@ -diff -up chromium-64.0.3282.119/third_party/angle/src/compiler/translator/StaticType.h.gcc-constexpr chromium-64.0.3282.119/third_party/angle/src/compiler/translator/StaticType.h ---- chromium-64.0.3282.119/third_party/angle/src/compiler/translator/StaticType.h.gcc-constexpr 2018-01-25 15:50:16.971171007 -0500 -+++ chromium-64.0.3282.119/third_party/angle/src/compiler/translator/StaticType.h 2018-01-25 15:51:14.158053914 -0500 -@@ -160,7 +160,7 @@ template --const TType *GetForVecMatHelper(unsigned char primarySize) -+constexpr const TType *GetForVecMatHelper(unsigned char primarySize) - { - static_assert(basicType == EbtFloat || basicType == EbtInt || basicType == EbtUInt || - basicType == EbtBool, -@@ -186,7 +186,7 @@ const TType *GetForVecMatHelper(unsigned - template --const TType *GetForVecMat(unsigned char primarySize, unsigned char secondarySize = 1) -+constexpr const TType *GetForVecMat(unsigned char primarySize, unsigned char secondarySize = 1) - { - static_assert(basicType == EbtFloat || basicType == EbtInt || basicType == EbtUInt || - basicType == EbtBool, -@@ -208,7 +208,7 @@ const TType *GetForVecMat(unsigned char - } - - template --const TType *GetForVec(TQualifier qualifier, unsigned char size) -+constexpr const TType *GetForVec(TQualifier qualifier, unsigned char size) - { - switch (qualifier) - { -diff -up chromium-64.0.3282.119/third_party/angle/src/compiler/translator/SymbolTable.cpp.gcc-constexpr chromium-64.0.3282.119/third_party/angle/src/compiler/translator/SymbolTable.cpp ---- chromium-64.0.3282.119/third_party/angle/src/compiler/translator/SymbolTable.cpp.gcc-constexpr 2018-01-25 15:51:27.670790008 -0500 -+++ chromium-64.0.3282.119/third_party/angle/src/compiler/translator/SymbolTable.cpp 2018-01-25 15:52:04.117077652 -0500 -@@ -189,7 +189,7 @@ TSymbolTable::~TSymbolTable() - pop(); - } - --bool IsGenType(const TType *type) -+constexpr bool IsGenType(const TType *type) - { - if (type) - { -@@ -201,7 +201,7 @@ bool IsGenType(const TType *type) - return false; - } - --bool IsVecType(const TType *type) -+constexpr bool IsVecType(const TType *type) - { - if (type) - { -diff -up chromium-64.0.3282.119/third_party/angle/src/compiler/translator/Types.h.gcc-constexpr chromium-64.0.3282.119/third_party/angle/src/compiler/translator/Types.h ---- chromium-64.0.3282.119/third_party/angle/src/compiler/translator/Types.h.gcc-constexpr 2018-01-25 15:52:15.042864767 -0500 -+++ chromium-64.0.3282.119/third_party/angle/src/compiler/translator/Types.h 2018-01-25 15:52:56.763049389 -0500 -@@ -236,13 +236,13 @@ class TType - { - } - -- TBasicType getBasicType() const { return type; } -+ constexpr TBasicType getBasicType() const { return type; } - void setBasicType(TBasicType t); - - TPrecision getPrecision() const { return precision; } - void setPrecision(TPrecision p) { precision = p; } - -- TQualifier getQualifier() const { return qualifier; } -+ constexpr TQualifier getQualifier() const { return qualifier; } - void setQualifier(TQualifier q) { qualifier = q; } - - bool isInvariant() const { return invariant; } diff --git a/chromium-64.0.3282.119-gcc-round-fix.patch b/chromium-64.0.3282.119-gcc-round-fix.patch deleted file mode 100644 index 465808c..0000000 --- a/chromium-64.0.3282.119-gcc-round-fix.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-64.0.3282.119/third_party/webrtc/p2p/base/port.cc.gcc-round-fix chromium-64.0.3282.119/third_party/webrtc/p2p/base/port.cc ---- chromium-64.0.3282.119/third_party/webrtc/p2p/base/port.cc.gcc-round-fix 2018-01-25 12:03:14.696443814 -0500 -+++ chromium-64.0.3282.119/third_party/webrtc/p2p/base/port.cc 2018-01-25 12:20:26.446448618 -0500 -@@ -10,7 +10,7 @@ - - #include "p2p/base/port.h" - --#include -+#include - - #include - #include diff --git a/chromium-64.0.3282.119-gcc5-r3.patch b/chromium-64.0.3282.119-gcc5-r3.patch deleted file mode 100644 index 3679ecf..0000000 --- a/chromium-64.0.3282.119-gcc5-r3.patch +++ /dev/null @@ -1,75 +0,0 @@ -diff -up chromium-64.0.3282.119/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 chromium-64.0.3282.119/gpu/ipc/common/mailbox_struct_traits.h ---- chromium-64.0.3282.119/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 2018-01-24 15:05:47.000000000 -0500 -+++ chromium-64.0.3282.119/gpu/ipc/common/mailbox_struct_traits.h 2018-01-25 11:58:48.251623423 -0500 -@@ -15,7 +15,7 @@ namespace mojo { - template <> - struct StructTraits { - static base::span name(const gpu::Mailbox& mailbox) { -- return mailbox.name; -+ return base::make_span(mailbox.name); - } - static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out); - }; -diff -up chromium-64.0.3282.119/services/viz/public/cpp/compositing/filter_operation_struct_traits.h.gcc5-r3 chromium-64.0.3282.119/services/viz/public/cpp/compositing/filter_operation_struct_traits.h ---- chromium-64.0.3282.119/services/viz/public/cpp/compositing/filter_operation_struct_traits.h.gcc5-r3 2018-01-24 15:05:51.000000000 -0500 -+++ chromium-64.0.3282.119/services/viz/public/cpp/compositing/filter_operation_struct_traits.h 2018-01-25 11:58:48.252623400 -0500 -@@ -137,7 +137,7 @@ struct StructTraits matrix(const cc::FilterOperation& operation) { - if (operation.type() != cc::FilterOperation::COLOR_MATRIX) - return base::span(); -- return operation.matrix(); -+ return base::make_span(operation.matrix()); - } - - static base::span shape( -diff -up chromium-64.0.3282.119/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 chromium-64.0.3282.119/services/viz/public/cpp/compositing/quads_struct_traits.h ---- chromium-64.0.3282.119/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 2018-01-24 15:05:51.000000000 -0500 -+++ chromium-64.0.3282.119/services/viz/public/cpp/compositing/quads_struct_traits.h 2018-01-25 11:58:48.252623400 -0500 -@@ -308,7 +308,7 @@ struct StructTraits vertex_opacity(const viz::DrawQuad& input) { - const viz::TextureDrawQuad* quad = - viz::TextureDrawQuad::MaterialCast(&input); -- return quad->vertex_opacity; -+ return base::make_span(quad->vertex_opacity); - } - - static bool y_flipped(const viz::DrawQuad& input) { -diff -up chromium-64.0.3282.119/third_party/WebKit/Source/platform/exported/WebCORS.cpp.gcc5-r3 chromium-64.0.3282.119/third_party/WebKit/Source/platform/exported/WebCORS.cpp -diff -up chromium-64.0.3282.119/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h.gcc5-r3 chromium-64.0.3282.119/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h ---- chromium-64.0.3282.119/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h.gcc5-r3 2018-01-24 15:06:11.000000000 -0500 -+++ chromium-64.0.3282.119/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h 2018-01-25 11:58:48.253623376 -0500 -@@ -62,7 +62,7 @@ class WTF_EXPORT ArrayBufferContents { - allocation_length_(0), - data_(data), - data_length_(0), -- kind_(AllocationKind::kNormal), -+ kind_(WTF::ArrayBufferContents::AllocationKind::kNormal), - deleter_(deleter) {} - DataHandle(void* allocation_base, - size_t allocation_length, -@@ -93,11 +93,11 @@ class WTF_EXPORT ArrayBufferContents { - reinterpret_cast(allocation_base_) + - allocation_length_); - switch (kind_) { -- case AllocationKind::kNormal: -+ case WTF::ArrayBufferContents::AllocationKind::kNormal: - DCHECK(deleter_); - deleter_(data_); - return; -- case AllocationKind::kReservation: -+ case WTF::ArrayBufferContents::AllocationKind::kReservation: - ReleaseReservedMemory(allocation_base_, allocation_length_); - return; - } -diff -up chromium-64.0.3282.119/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 chromium-64.0.3282.119/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc ---- chromium-64.0.3282.119/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 2018-01-25 11:58:48.253623376 -0500 -+++ chromium-64.0.3282.119/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2018-01-25 12:01:28.769900550 -0500 -@@ -10,7 +10,7 @@ - - #include "modules/audio_processing/aec3/aec_state.h" - --#include -+#include - - #include - #include diff --git a/chromium-64.0.3282.119-gcc5.patch b/chromium-64.0.3282.119-gcc5.patch deleted file mode 100644 index 0fdc39f..0000000 --- a/chromium-64.0.3282.119-gcc5.patch +++ /dev/null @@ -1,57 +0,0 @@ -diff -up chromium-64.0.3282.119/third_party/webgl/src/specs/latest/2.0/webgl2.idl.gcc5 chromium-64.0.3282.119/third_party/webgl/src/specs/latest/2.0/webgl2.idl ---- chromium-64.0.3282.119/third_party/webgl/src/specs/latest/2.0/webgl2.idl.gcc5 2018-01-25 11:07:27.179175007 -0500 -+++ chromium-64.0.3282.119/third_party/webgl/src/specs/latest/2.0/webgl2.idl 2018-01-25 11:07:38.037925336 -0500 -@@ -263,7 +263,7 @@ interface WebGL2RenderingContextBase - 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 -up chromium-64.0.3282.119/third_party/WebKit/Source/core/dom/NodeFilter.h.gcc5 chromium-64.0.3282.119/third_party/WebKit/Source/core/dom/NodeFilter.h ---- chromium-64.0.3282.119/third_party/WebKit/Source/core/dom/NodeFilter.h.gcc5 2018-01-25 11:11:08.581962228 -0500 -+++ chromium-64.0.3282.119/third_party/WebKit/Source/core/dom/NodeFilter.h 2018-01-25 11:11:24.062593478 -0500 -@@ -49,7 +49,7 @@ class NodeFilter final { - * to the value of NodeType for the equivalent node type. - */ - enum { -- kShowAll = 0xFFFFFFFF, -+ kShowAll = 256 /* 0xFFFFFFFF */, - kShowElement = 0x00000001, - kShowAttribute = 0x00000002, - kShowText = 0x00000004, -diff -up chromium-64.0.3282.119/third_party/WebKit/Source/core/dom/NodeFilter.idl.gcc5 chromium-64.0.3282.119/third_party/WebKit/Source/core/dom/NodeFilter.idl ---- chromium-64.0.3282.119/third_party/WebKit/Source/core/dom/NodeFilter.idl.gcc5 2018-01-25 11:11:34.816335412 -0500 -+++ chromium-64.0.3282.119/third_party/WebKit/Source/core/dom/NodeFilter.idl 2018-01-25 11:12:23.380171262 -0500 -@@ -27,7 +27,7 @@ callback interface NodeFilter { - const unsigned short FILTER_SKIP = 3; - - // Constants for whatToShow -- const unsigned long SHOW_ALL = 0xFFFFFFFF; -+ const unsigned long SHOW_ALL = 256; // 0xFFFFFFFF - const unsigned long SHOW_ELEMENT = 0x1; - const unsigned long SHOW_ATTRIBUTE = 0x2; // historical - const unsigned long SHOW_TEXT = 0x4; -diff -up chromium-64.0.3282.119/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl.gcc5 chromium-64.0.3282.119/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl ---- chromium-64.0.3282.119/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl.gcc5 2018-01-25 11:12:57.367363214 -0500 -+++ chromium-64.0.3282.119/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl 2018-01-25 11:13:29.883590960 -0500 -@@ -241,7 +241,7 @@ typedef unsigned long long GLuint64; - 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; -@@ -271,7 +271,7 @@ typedef unsigned long long GLuint64; - const GLenum TEXTURE_IMMUTABLE_FORMAT = 0x912F; - const GLenum MAX_ELEMENT_INDEX = 0x8D6B; - const GLenum TEXTURE_IMMUTABLE_LEVELS = 0x82DF; -- const GLint TIMEOUT_IGNORED = -1; -+ const GLint TIMEOUT_IGNORED = 256; - - /* WebGL-specific enums */ - const GLenum MAX_CLIENT_WAIT_TIMEOUT_WEBGL = 0x9247; diff --git a/chromium-64.0.3282.119-gcc7.patch b/chromium-64.0.3282.119-gcc7.patch deleted file mode 100644 index 7fe383e..0000000 --- a/chromium-64.0.3282.119-gcc7.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-64.0.3282.119/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 chromium-64.0.3282.119/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h ---- chromium-64.0.3282.119/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 2018-01-25 11:15:00.291466617 -0500 -+++ chromium-64.0.3282.119/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h 2018-01-25 11:16:36.159320291 -0500 -@@ -10,6 +10,7 @@ - #include "platform/wtf/Functional.h" - #include "platform/wtf/ThreadSpecific.h" - -+#include - #include - - namespace blink { diff --git a/chromium-64.0.3282.119-memcpy-fix.patch b/chromium-64.0.3282.119-memcpy-fix.patch deleted file mode 100644 index 39c3c25..0000000 --- a/chromium-64.0.3282.119-memcpy-fix.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-64.0.3282.119/cc/paint/raw_memory_transfer_cache_entry.cc.memcpyfix chromium-64.0.3282.119/cc/paint/raw_memory_transfer_cache_entry.cc ---- chromium-64.0.3282.119/cc/paint/raw_memory_transfer_cache_entry.cc.memcpyfix 2018-01-26 15:04:44.708100850 -0500 -+++ chromium-64.0.3282.119/cc/paint/raw_memory_transfer_cache_entry.cc 2018-01-26 15:04:54.234915081 -0500 -@@ -3,6 +3,7 @@ - // found in the LICENSE file. - - #include "cc/paint/raw_memory_transfer_cache_entry.h" -+#include - - namespace cc { - diff --git a/chromium-64.0.3282.167-gcc8-fabi11.patch b/chromium-64.0.3282.167-gcc8-fabi11.patch deleted file mode 100644 index 5f0c527..0000000 --- a/chromium-64.0.3282.167-gcc8-fabi11.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -up chromium-64.0.3282.167/tools/gn/bootstrap/bootstrap.py.fabi11 chromium-64.0.3282.167/tools/gn/bootstrap/bootstrap.py ---- chromium-64.0.3282.167/tools/gn/bootstrap/bootstrap.py.fabi11 2018-02-19 11:39:15.807713662 -0500 -+++ chromium-64.0.3282.167/tools/gn/bootstrap/bootstrap.py 2018-02-19 11:39:47.038070341 -0500 -@@ -336,6 +336,11 @@ def write_gn_ninja(path, root_gen_dir, o - cflags = os.environ.get('CFLAGS', '').split() - cflags_cc = os.environ.get('CXXFLAGS', '').split() - ldflags = os.environ.get('LDFLAGS', '').split() -+ -+ # Work around GCC8 bug gcc#84286 -+ cflags.extend(['-fabi-version=11']) -+ cflags_cc.extend(['-fabi-version=11']) -+ - include_dirs = [root_gen_dir, SRC_ROOT] - libs = [] - diff --git a/chromium-65.0.3325.146-Fix-non-copyable-class-s-optional-move.patch b/chromium-65.0.3325.146-Fix-non-copyable-class-s-optional-move.patch deleted file mode 100644 index 6cf8ca8..0000000 --- a/chromium-65.0.3325.146-Fix-non-copyable-class-s-optional-move.patch +++ /dev/null @@ -1,41 +0,0 @@ -diff -up chromium-65.0.3325.146/base/optional.h.noncopyable chromium-65.0.3325.146/base/optional.h ---- chromium-65.0.3325.146/base/optional.h.noncopyable 2018-03-13 16:52:15.953729689 -0400 -+++ chromium-65.0.3325.146/base/optional.h 2018-03-13 16:53:55.365792522 -0400 -@@ -45,6 +45,15 @@ struct OptionalStorageBase { - - // When T is not trivially destructible we must call its - // destructor before deallocating its memory. -+ // Note that this hides the (implicitly declared) move constructor, which -+ // would be used for constexpr move constructor in OptionalStorage. -+ // It is needed iff T is trivially move constructible. However, the current -+ // is_trivially_{copy,move}_constructible implementation requires -+ // is_trivially_destructible (which looks a bug, cf: -+ // https://gcc.gnu.org/bugzilla/show_bug.cgi?id=51452 and -+ // http://cplusplus.github.io/LWG/lwg-active.html#2116), so it is not -+ // necessary for this case at the moment. Please see also the destructor -+ // comment in "is_trivially_destructible = true" specialization below. - ~OptionalStorageBase() { - if (!is_null_) - value_.~T(); -@@ -78,9 +87,18 @@ struct OptionalStorageBase(args)...) {} - - // When T is trivially destructible (i.e. its destructor does nothing) there -- // is no need to call it. Explicitly defaulting the destructor means it's not -- // user-provided. Those two together make this destructor trivial. -- ~OptionalStorageBase() = default; -+ // is no need to call it. Implicitly defined destructor is trivial, because -+ // both members (bool and union containing only variants which are trivially -+ // destructible) are trivially destructible. -+ // Explicitly-defaulted destructor is also trivial, but do not use it here, -+ // because it hides the implicit move constructor. It is needed to implement -+ // constexpr move constructor in OptionalStorage iff T is trivially move -+ // constructible. Note that, if T is trivially move constructible, the move -+ // constructor of OptionalStorageBase is also implicitly defined and it is -+ // trivially move constructor. If T is not trivially move constructible, -+ // "not declaring move constructor without destructor declaration" here means -+ // "delete move constructor", which works because any move constructor of -+ // OptionalStorage will not refer to it in that case. - - template - void Init(Args&&... args) { diff --git a/chromium-65.0.3325.146-GCC-IDB-methods-String-renamed-to-GetString.patch b/chromium-65.0.3325.146-GCC-IDB-methods-String-renamed-to-GetString.patch deleted file mode 100644 index dbdf68f..0000000 --- a/chromium-65.0.3325.146-GCC-IDB-methods-String-renamed-to-GetString.patch +++ /dev/null @@ -1,108 +0,0 @@ -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/bindings/modules/v8/V8BindingForModules.cpp.GetString chromium-65.0.3325.146/third_party/WebKit/Source/bindings/modules/v8/V8BindingForModules.cpp ---- chromium-65.0.3325.146/third_party/WebKit/Source/bindings/modules/v8/V8BindingForModules.cpp.GetString 2018-03-13 22:54:27.262671113 -0400 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/bindings/modules/v8/V8BindingForModules.cpp 2018-03-13 22:55:47.722113713 -0400 -@@ -68,7 +68,7 @@ v8::Local ToV8(const IDBKeyPa - case IDBKeyPath::kNullType: - return v8::Null(isolate); - case IDBKeyPath::kStringType: -- return V8String(isolate, value.String()); -+ return V8String(isolate, value.GetString()); - case IDBKeyPath::kArrayType: - return ToV8(value.Array(), creation_context, isolate); - } -@@ -97,7 +97,7 @@ v8::Local ToV8(const IDBKey* - case IDBKey::kNumberType: - return v8::Number::New(isolate, key->Number()); - case IDBKey::kStringType: -- return V8String(isolate, key->String()); -+ return V8String(isolate, key->GetString()); - case IDBKey::kBinaryType: - // https://w3c.github.io/IndexedDB/#convert-a-value-to-a-key - return ToV8(DOMArrayBuffer::Create(key->Binary()), creation_context, -@@ -379,7 +379,7 @@ static std::unique_ptr CreateIDB - } - - DCHECK_EQ(key_path.GetType(), IDBKeyPath::kStringType); -- return CreateIDBKeyFromValueAndKeyPath(isolate, value, key_path.String(), -+ return CreateIDBKeyFromValueAndKeyPath(isolate, value, key_path.GetString(), - exception_state); - } - -@@ -483,7 +483,7 @@ bool InjectV8KeyIntoV8Value(v8::Isolate* - DCHECK(isolate->InContext()); - - DCHECK_EQ(key_path.GetType(), IDBKeyPath::kStringType); -- Vector key_path_elements = ParseKeyPath(key_path.String()); -+ Vector key_path_elements = ParseKeyPath(key_path.GetString()); - - // The conbination of a key generator and an empty key path is forbidden by - // spec. -@@ -569,7 +569,7 @@ bool CanInjectIDBKeyIntoScriptValue(v8:: - const IDBKeyPath& key_path) { - IDB_TRACE("canInjectIDBKeyIntoScriptValue"); - DCHECK_EQ(key_path.GetType(), IDBKeyPath::kStringType); -- Vector key_path_elements = ParseKeyPath(key_path.String()); -+ Vector key_path_elements = ParseKeyPath(key_path.GetString()); - - if (!key_path_elements.size()) - return false; -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/modules/exported/WebIDBKey.cpp.GetString chromium-65.0.3325.146/third_party/WebKit/Source/modules/exported/WebIDBKey.cpp ---- chromium-65.0.3325.146/third_party/WebKit/Source/modules/exported/WebIDBKey.cpp.GetString 2018-03-13 22:56:04.041798217 -0400 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/modules/exported/WebIDBKey.cpp 2018-03-13 22:56:22.481440993 -0400 -@@ -56,7 +56,7 @@ WebData WebIDBKeyView::Binary() const { - } - - WebString WebIDBKeyView::String() const { -- return private_->String(); -+ return private_->GetString(); - } - - double WebIDBKeyView::Date() const { -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBDatabase.cpp.GetString chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBDatabase.cpp ---- chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBDatabase.cpp.GetString 2018-03-13 22:56:36.028178758 -0400 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBDatabase.cpp 2018-03-13 22:56:58.846736831 -0400 -@@ -297,7 +297,7 @@ IDBObjectStore* IDBDatabase::createObjec - } - - if (auto_increment && ((key_path.GetType() == IDBKeyPath::kStringType && -- key_path.String().IsEmpty()) || -+ key_path.GetString().IsEmpty()) || - key_path.GetType() == IDBKeyPath::kArrayType)) { - exception_state.ThrowDOMException( - kInvalidAccessError, -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBKey.h.GetString chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBKey.h ---- chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBKey.h.GetString 2018-03-13 22:57:13.229458842 -0400 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBKey.h 2018-03-13 22:57:38.633966776 -0400 -@@ -106,7 +106,7 @@ class MODULES_EXPORT IDBKey { - return binary_; - } - -- const String& String() const { -+ const String& GetString() const { - DCHECK_EQ(type_, kStringType); - return string_; - } -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBKeyPath.h.GetString chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBKeyPath.h ---- chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBKeyPath.h.GetString 2018-03-13 22:57:51.104725428 -0400 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBKeyPath.h 2018-03-13 22:58:09.459369906 -0400 -@@ -65,7 +65,7 @@ class MODULES_EXPORT IDBKeyPath { - return array_; - } - -- const String& String() const { -+ const String& GetString() const { - DCHECK_EQ(type_, kStringType); - return string_; - } -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/InspectorIndexedDBAgent.cpp.GetString chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/InspectorIndexedDBAgent.cpp ---- chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/InspectorIndexedDBAgent.cpp.GetString 2018-03-13 22:58:28.778995834 -0400 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/InspectorIndexedDBAgent.cpp 2018-03-13 22:58:45.044681364 -0400 -@@ -399,7 +399,7 @@ static std::unique_ptr KeyPathF - case IDBKeyPath::kStringType: - key_path = KeyPath::create() - .setType(KeyPath::TypeEnum::String) -- .setString(idb_key_path.String()) -+ .setString(idb_key_path.GetString()) - .build(); - break; - case IDBKeyPath::kArrayType: { diff --git a/chromium-65.0.3325.146-GCC-PlaybackImageProvider-Settings-do-not-provide-co.patch b/chromium-65.0.3325.146-GCC-PlaybackImageProvider-Settings-do-not-provide-co.patch deleted file mode 100644 index 8edc424..0000000 --- a/chromium-65.0.3325.146-GCC-PlaybackImageProvider-Settings-do-not-provide-co.patch +++ /dev/null @@ -1,22 +0,0 @@ -diff -up chromium-65.0.3325.146/cc/raster/playback_image_provider.cc.pipcc chromium-65.0.3325.146/cc/raster/playback_image_provider.cc ---- chromium-65.0.3325.146/cc/raster/playback_image_provider.cc.pipcc 2018-03-13 22:47:00.271322726 -0400 -+++ chromium-65.0.3325.146/cc/raster/playback_image_provider.cc 2018-03-13 22:47:53.127300060 -0400 -@@ -92,7 +92,6 @@ PlaybackImageProvider::GetDecodedDrawIma - } - - PlaybackImageProvider::Settings::Settings() = default; --PlaybackImageProvider::Settings::Settings(const Settings& other) = default; - PlaybackImageProvider::Settings::~Settings() = default; - - } // namespace cc -diff -up chromium-65.0.3325.146/cc/raster/playback_image_provider.h.pipcc chromium-65.0.3325.146/cc/raster/playback_image_provider.h ---- chromium-65.0.3325.146/cc/raster/playback_image_provider.h.pipcc 2018-03-13 22:48:00.673153629 -0400 -+++ chromium-65.0.3325.146/cc/raster/playback_image_provider.h 2018-03-13 22:48:12.726920597 -0400 -@@ -20,7 +20,6 @@ class CC_EXPORT PlaybackImageProvider : - public: - struct CC_EXPORT Settings { - Settings(); -- Settings(const Settings& other); - ~Settings(); - - // The set of image ids to skip during raster. diff --git a/chromium-65.0.3325.146-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch b/chromium-65.0.3325.146-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch deleted file mode 100644 index 62124be..0000000 --- a/chromium-65.0.3325.146-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch +++ /dev/null @@ -1,33 +0,0 @@ -diff -up chromium-65.0.3325.146/services/preferences/tracked/pref_hash_filter.h.fulldecl chromium-65.0.3325.146/services/preferences/tracked/pref_hash_filter.h ---- chromium-65.0.3325.146/services/preferences/tracked/pref_hash_filter.h.fulldecl 2018-03-13 16:38:38.870652491 -0400 -+++ chromium-65.0.3325.146/services/preferences/tracked/pref_hash_filter.h 2018-03-13 16:39:02.691186647 -0400 -@@ -21,9 +21,9 @@ - #include "services/preferences/public/interfaces/preferences.mojom.h" - #include "services/preferences/tracked/hash_store_contents.h" - #include "services/preferences/tracked/interceptable_pref_filter.h" -+#include "services/preferences/tracked/pref_hash_store.h" - #include "services/preferences/tracked/tracked_preference.h" - --class PrefHashStore; - class PrefService; - - namespace base { -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/modules/webdatabase/SQLTransactionBackend.h.fulldecl chromium-65.0.3325.146/third_party/WebKit/Source/modules/webdatabase/SQLTransactionBackend.h ---- chromium-65.0.3325.146/third_party/WebKit/Source/modules/webdatabase/SQLTransactionBackend.h.fulldecl 2018-03-13 16:39:13.787970233 -0400 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/modules/webdatabase/SQLTransactionBackend.h 2018-03-13 16:39:42.614407235 -0400 -@@ -30,6 +30,7 @@ - - #include - #include "modules/webdatabase/DatabaseBasicTypes.h" -+#include "modules/webdatabase/SQLError.h" - #include "modules/webdatabase/SQLStatement.h" - #include "modules/webdatabase/SQLStatementBackend.h" - #include "modules/webdatabase/SQLTransactionStateMachine.h" -@@ -41,7 +42,6 @@ - namespace blink { - - class Database; --class SQLErrorData; - class SQLiteTransaction; - class SQLTransaction; - class SQLTransactionBackend; diff --git a/chromium-65.0.3325.146-GCC-explicitely-std-move-to-base-Optional-instead-of.patch b/chromium-65.0.3325.146-GCC-explicitely-std-move-to-base-Optional-instead-of.patch deleted file mode 100644 index 9c6f315..0000000 --- a/chromium-65.0.3325.146-GCC-explicitely-std-move-to-base-Optional-instead-of.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff -up chromium-65.0.3325.146/content/browser/appcache/appcache_request_handler.cc.explicit-std-move chromium-65.0.3325.146/content/browser/appcache/appcache_request_handler.cc ---- chromium-65.0.3325.146/content/browser/appcache/appcache_request_handler.cc.explicit-std-move 2018-03-13 22:50:41.346043716 -0400 -+++ chromium-65.0.3325.146/content/browser/appcache/appcache_request_handler.cc 2018-03-13 22:51:21.428267583 -0400 -@@ -639,7 +639,7 @@ AppCacheRequestHandler::MaybeCreateSubre - - SubresourceLoaderParams params; - params.loader_factory_info = factory_ptr.PassInterface(); -- return params; -+ return base::Optional(std::move(params)); - } - - void AppCacheRequestHandler::MaybeCreateSubresourceLoader( -diff -up chromium-65.0.3325.146/content/browser/service_worker/service_worker_controllee_request_handler.cc.explicit-std-move chromium-65.0.3325.146/content/browser/service_worker/service_worker_controllee_request_handler.cc ---- chromium-65.0.3325.146/content/browser/service_worker/service_worker_controllee_request_handler.cc.explicit-std-move 2018-03-13 22:51:38.133943776 -0400 -+++ chromium-65.0.3325.146/content/browser/service_worker/service_worker_controllee_request_handler.cc 2018-03-13 22:51:57.658566347 -0400 -@@ -271,7 +271,7 @@ ServiceWorkerControlleeRequestHandler::M - controller_info->object_info = provider_host_->GetOrCreateServiceWorkerHandle( - provider_host_->controller()); - params.controller_service_worker_info = std::move(controller_info); -- return params; -+ return base::Optional(std::move(params)); - } - - void ServiceWorkerControlleeRequestHandler::PrepareForMainResource( diff --git a/chromium-65.0.3325.146-GCC-fully-declare-ConfigurationPolicyProvider.patch b/chromium-65.0.3325.146-GCC-fully-declare-ConfigurationPolicyProvider.patch deleted file mode 100644 index 809a321..0000000 --- a/chromium-65.0.3325.146-GCC-fully-declare-ConfigurationPolicyProvider.patch +++ /dev/null @@ -1,18 +0,0 @@ -diff -up chromium-65.0.3325.146/components/policy/core/browser/browser_policy_connector_base.h.fully-declare chromium-65.0.3325.146/components/policy/core/browser/browser_policy_connector_base.h ---- chromium-65.0.3325.146/components/policy/core/browser/browser_policy_connector_base.h.fully-declare 2018-03-13 23:02:13.989635567 -0400 -+++ chromium-65.0.3325.146/components/policy/core/browser/browser_policy_connector_base.h 2018-03-13 23:02:44.318048625 -0400 -@@ -12,13 +12,13 @@ - #include "base/macros.h" - #include "base/optional.h" - #include "components/policy/core/browser/configuration_policy_handler_list.h" -+#include "components/policy/core/common/configuration_policy_provider.h" - #include "components/policy/core/common/schema.h" - #include "components/policy/core/common/schema_registry.h" - #include "components/policy/policy_export.h" - - namespace policy { - --class ConfigurationPolicyProvider; - class PolicyService; - class PolicyServiceImpl; - diff --git a/chromium-65.0.3325.146-Implement-conditional-copy-move-ctors-assign-operato.patch b/chromium-65.0.3325.146-Implement-conditional-copy-move-ctors-assign-operato.patch deleted file mode 100644 index 9b4befe..0000000 --- a/chromium-65.0.3325.146-Implement-conditional-copy-move-ctors-assign-operato.patch +++ /dev/null @@ -1,91 +0,0 @@ -diff -up chromium-65.0.3325.146/base/optional.h.conditional chromium-65.0.3325.146/base/optional.h ---- chromium-65.0.3325.146/base/optional.h.conditional 2018-03-13 22:11:02.328058249 -0400 -+++ chromium-65.0.3325.146/base/optional.h 2018-03-13 22:12:43.622098296 -0400 -@@ -266,6 +266,58 @@ class OptionalBase { - OptionalStorage storage_; - }; - -+// The following {Copy,Move}{Constructible,Assignable} structs are helpers to -+// implement constructor/assign-operator overloading. Specifically, if T is -+// is not movable but copyable, Optional's move constructor should not -+// participate in overload resolution. This inheritance trick implements that. -+template -+struct CopyConstructible {}; -+ -+template <> -+struct CopyConstructible { -+ constexpr CopyConstructible() = default; -+ constexpr CopyConstructible(const CopyConstructible&) = delete; -+ constexpr CopyConstructible(CopyConstructible&&) = default; -+ CopyConstructible& operator=(const CopyConstructible&) = default; -+ CopyConstructible& operator=(CopyConstructible&&) = default; -+}; -+ -+template -+struct MoveConstructible {}; -+ -+template <> -+struct MoveConstructible { -+ constexpr MoveConstructible() = default; -+ constexpr MoveConstructible(const MoveConstructible&) = default; -+ constexpr MoveConstructible(MoveConstructible&&) = delete; -+ MoveConstructible& operator=(const MoveConstructible&) = default; -+ MoveConstructible& operator=(MoveConstructible&&) = default; -+}; -+ -+template -+struct CopyAssignable {}; -+ -+template <> -+struct CopyAssignable { -+ constexpr CopyAssignable() = default; -+ constexpr CopyAssignable(const CopyAssignable&) = default; -+ constexpr CopyAssignable(CopyAssignable&&) = default; -+ CopyAssignable& operator=(const CopyAssignable&) = delete; -+ CopyAssignable& operator=(CopyAssignable&&) = default; -+}; -+ -+template -+struct MoveAssignable {}; -+ -+template <> -+struct MoveAssignable { -+ constexpr MoveAssignable() = default; -+ constexpr MoveAssignable(const MoveAssignable&) = default; -+ constexpr MoveAssignable(MoveAssignable&&) = default; -+ MoveAssignable& operator=(const MoveAssignable&) = default; -+ MoveAssignable& operator=(MoveAssignable&&) = delete; -+}; -+ - } // namespace internal - - // base::Optional is a Chromium version of the C++17 optional class: -@@ -280,12 +332,18 @@ class OptionalBase { - // - No exceptions are thrown, because they are banned from Chromium. - // - All the non-members are in the 'base' namespace instead of 'std'. - template --class Optional : public internal::OptionalBase { -+class Optional -+ : public internal::OptionalBase, -+ public internal::CopyConstructible::value>, -+ public internal::MoveConstructible::value>, -+ public internal::CopyAssignable::value && -+ std::is_copy_assignable::value>, -+ public internal::MoveAssignable::value && -+ std::is_move_assignable::value> { - public: - using value_type = T; - - // Defer default/copy/move constructor implementation to OptionalBase. -- // TODO(hidehiko): Implement conditional enabling. - constexpr Optional() = default; - constexpr Optional(const Optional& other) = default; - constexpr Optional(Optional&& other) = default; -@@ -316,7 +374,6 @@ class Optional : public internal::Option - ~Optional() = default; - - // Defer copy-/move- assign operator implementation to OptionalBase. -- // TOOD(hidehiko): Implement conditional enabling. - Optional& operator=(const Optional& other) = default; - Optional& operator=(Optional&& other) = default; - diff --git a/chromium-65.0.3325.146-Implement-converting-constructors-from-Optional-U.patch b/chromium-65.0.3325.146-Implement-converting-constructors-from-Optional-U.patch deleted file mode 100644 index 3214104..0000000 --- a/chromium-65.0.3325.146-Implement-converting-constructors-from-Optional-U.patch +++ /dev/null @@ -1,116 +0,0 @@ -diff -up chromium-65.0.3325.146/base/optional.h.converting chromium-65.0.3325.146/base/optional.h ---- chromium-65.0.3325.146/base/optional.h.converting 2018-03-13 22:31:05.248797490 -0400 -+++ chromium-65.0.3325.146/base/optional.h 2018-03-13 22:33:10.826368771 -0400 -@@ -31,6 +31,10 @@ constexpr in_place_t in_place = {}; - // http://en.cppreference.com/w/cpp/utility/optional/nullopt - constexpr nullopt_t nullopt(0); - -+// Forward declaration, which is refered by following helpers. -+template -+class Optional; -+ - namespace internal { - - template ::value> -@@ -220,6 +224,19 @@ class OptionalBase { - constexpr explicit OptionalBase(in_place_t, Args&&... args) - : storage_(in_place, std::forward(args)...) {} - -+ // Implementation of converting constructors. -+ template -+ explicit OptionalBase(const OptionalBase& other) { -+ if (other.storage_.is_populated_) -+ storage_.Init(other.storage_.value_); -+ } -+ -+ template -+ explicit OptionalBase(OptionalBase&& other) { -+ if (other.storage_.is_populated_) -+ storage_.Init(std::move(other.storage_.value_)); -+ } -+ - ~OptionalBase() = default; - - OptionalBase& operator=(const OptionalBase& other) { -@@ -263,6 +280,11 @@ class OptionalBase { - storage_.is_populated_ = false; - } - -+ // For implementing conversion, allow access to other typed OptionalBase -+ // class. -+ template -+ friend class OptionalBase; -+ - OptionalStorage storage_; - }; - -@@ -318,6 +340,20 @@ struct MoveAssignable { - MoveAssignable& operator=(MoveAssignable&&) = delete; - }; - -+// Helper to conditionally enable converting constructors. -+template -+struct IsConvertibleFromOptional -+ : std::integral_constant< -+ bool, -+ std::is_constructible&>::value || -+ std::is_constructible&>::value || -+ std::is_constructible&&>::value || -+ std::is_constructible&&>::value || -+ std::is_convertible&, T>::value || -+ std::is_convertible&, T>::value || -+ std::is_convertible&&, T>::value || -+ std::is_convertible&&, T>::value> {}; -+ - } // namespace internal - - // base::Optional is a Chromium version of the C++17 optional class: -@@ -348,7 +384,47 @@ class Optional - constexpr Optional(const Optional& other) = default; - constexpr Optional(Optional&& other) = default; - -- constexpr Optional(nullopt_t) {} -+ constexpr Optional(nullopt_t) {} // NOLINT(runtime/explicit) -+ -+ // Converting copy constructor. "explicit" only if -+ // std::is_convertible::value is false. It is implemented by -+ // declaring two almost same constructors, but that condition in enable_if_t -+ // is different, so that either one is chosen, thanks to SFINAE. -+ template < -+ typename U, -+ std::enable_if_t::value && -+ !internal::IsConvertibleFromOptional::value && -+ std::is_convertible::value, -+ bool> = false> -+ Optional(const Optional& other) : internal::OptionalBase(other) {} -+ -+ template < -+ typename U, -+ std::enable_if_t::value && -+ !internal::IsConvertibleFromOptional::value && -+ !std::is_convertible::value, -+ bool> = false> -+ explicit Optional(const Optional& other) -+ : internal::OptionalBase(other) {} -+ -+ // Converting move constructor. Similar to converting copy constructor, -+ // declaring two (explicit and non-explicit) constructors. -+ template < -+ typename U, -+ std::enable_if_t::value && -+ !internal::IsConvertibleFromOptional::value && -+ std::is_convertible::value, -+ bool> = false> -+ Optional(Optional&& other) : internal::OptionalBase(std::move(other)) {} -+ -+ template < -+ typename U, -+ std::enable_if_t::value && -+ !internal::IsConvertibleFromOptional::value && -+ !std::is_convertible::value, -+ bool> = false> -+ explicit Optional(Optional&& other) -+ : internal::OptionalBase(std::move(other)) {} - - constexpr Optional(const T& value) - : internal::OptionalBase(in_place, value) {} diff --git a/chromium-65.0.3325.146-Implement-value-forward-constructor.patch b/chromium-65.0.3325.146-Implement-value-forward-constructor.patch deleted file mode 100644 index db727d8..0000000 --- a/chromium-65.0.3325.146-Implement-value-forward-constructor.patch +++ /dev/null @@ -1,72 +0,0 @@ -diff -up chromium-65.0.3325.146/base/optional.h.vforward chromium-65.0.3325.146/base/optional.h ---- chromium-65.0.3325.146/base/optional.h.vforward 2018-03-13 22:35:46.383359966 -0400 -+++ chromium-65.0.3325.146/base/optional.h 2018-03-13 22:37:48.724992995 -0400 -@@ -354,6 +354,10 @@ struct IsConvertibleFromOptional - std::is_convertible&&, T>::value || - std::is_convertible&&, T>::value> {}; - -+// Forward compatibility for C++20. -+template -+using RemoveCvRefT = std::remove_cv_t>; -+ - } // namespace internal - - // base::Optional is a Chromium version of the C++17 optional class: -@@ -367,6 +371,13 @@ struct IsConvertibleFromOptional - // - 'constexpr' might be missing in some places for reasons specified locally. - // - No exceptions are thrown, because they are banned from Chromium. - // - All the non-members are in the 'base' namespace instead of 'std'. -+// -+// Note that T cannot have a constructor T(Optional) etc. Optional checks -+// T's constructor (specifically via IsConvertibleFromOptional), and in the -+// check whether T can be constructible from Optional, which is recursive -+// so it does not work. As of Feb 2018, std::optional C++17 implementation in -+// both clang and gcc has same limitation. MSVC SFINAE looks to have different -+// behavior, but anyway it reports an error, too. - template - class Optional - : public internal::OptionalBase, -@@ -426,12 +437,6 @@ class Optional - explicit Optional(Optional&& other) - : internal::OptionalBase(std::move(other)) {} - -- constexpr Optional(const T& value) -- : internal::OptionalBase(in_place, value) {} -- -- constexpr Optional(T&& value) -- : internal::OptionalBase(in_place, std::move(value)) {} -- - template - constexpr explicit Optional(in_place_t, Args&&... args) - : internal::OptionalBase(in_place, std::forward(args)...) {} -@@ -447,6 +452,30 @@ class Optional - Args&&... args) - : internal::OptionalBase(in_place, il, std::forward(args)...) {} - -+ // Forward value constructor. Similar to converting constructors, -+ // conditionally explicit. -+ template < -+ typename U = value_type, -+ std::enable_if_t< -+ std::is_constructible::value && -+ !std::is_same, in_place_t>::value && -+ !std::is_same, Optional>::value && -+ std::is_convertible::value, -+ bool> = false> -+ constexpr Optional(U&& value) -+ : internal::OptionalBase(in_place, std::forward(value)) {} -+ -+ template < -+ typename U = value_type, -+ std::enable_if_t< -+ std::is_constructible::value && -+ !std::is_same, in_place_t>::value && -+ !std::is_same, Optional>::value && -+ !std::is_convertible::value, -+ bool> = false> -+ constexpr explicit Optional(U&& value) -+ : internal::OptionalBase(in_place, std::forward(value)) {} -+ - ~Optional() = default; - - // Defer copy-/move- assign operator implementation to OptionalBase. diff --git a/chromium-65.0.3325.146-Update-non-copy-non-move-assign-operators.patch b/chromium-65.0.3325.146-Update-non-copy-non-move-assign-operators.patch deleted file mode 100644 index f9c4503..0000000 --- a/chromium-65.0.3325.146-Update-non-copy-non-move-assign-operators.patch +++ /dev/null @@ -1,144 +0,0 @@ -diff -up chromium-65.0.3325.146/base/optional.h.ncnm chromium-65.0.3325.146/base/optional.h ---- chromium-65.0.3325.146/base/optional.h.ncnm 2018-03-13 22:40:11.743226276 -0400 -+++ chromium-65.0.3325.146/base/optional.h 2018-03-13 22:44:30.948211358 -0400 -@@ -240,37 +240,37 @@ class OptionalBase { - ~OptionalBase() = default; - - OptionalBase& operator=(const OptionalBase& other) { -- if (!other.storage_.is_populated_) { -- FreeIfNeeded(); -- return *this; -- } -- -- InitOrAssign(other.storage_.value_); -+ CopyAssign(other); - return *this; - } - - OptionalBase& operator=(OptionalBase&& other) { -- if (!other.storage_.is_populated_) { -- FreeIfNeeded(); -- return *this; -- } -- -- InitOrAssign(std::move(other.storage_.value_)); -+ MoveAssign(std::move(other)); - return *this; - } - -- void InitOrAssign(const T& value) { -- if (!storage_.is_populated_) -- storage_.Init(value); -+ template -+ void CopyAssign(const OptionalBase& other) { -+ if (other.storage_.is_populated_) -+ InitOrAssign(other.storage_.value_); - else -- storage_.value_ = value; -+ FreeIfNeeded(); - } - -- void InitOrAssign(T&& value) { -- if (!storage_.is_populated_) -- storage_.Init(std::move(value)); -+ template -+ void MoveAssign(OptionalBase&& other) { -+ if (other.storage_.is_populated_) -+ InitOrAssign(std::move(other.storage_.value_)); -+ else -+ FreeIfNeeded(); -+ } -+ -+ template -+ void InitOrAssign(U&& value) { -+ if (storage_.is_populated_) -+ storage_.value_ = std::forward(value); - else -- storage_.value_ = std::move(value); -+ storage_.Init(std::forward(value)); - } - - void FreeIfNeeded() { -@@ -340,7 +340,7 @@ struct MoveAssignable { - MoveAssignable& operator=(MoveAssignable&&) = delete; - }; - --// Helper to conditionally enable converting constructors. -+// Helper to conditionally enable converting constructors and assign operators. - template - struct IsConvertibleFromOptional - : std::integral_constant< -@@ -354,6 +354,16 @@ struct IsConvertibleFromOptional - std::is_convertible&&, T>::value || - std::is_convertible&&, T>::value> {}; - -+template -+struct IsAssignableFromOptional -+ : std::integral_constant< -+ bool, -+ IsConvertibleFromOptional::value || -+ std::is_assignable&>::value || -+ std::is_assignable&>::value || -+ std::is_assignable&&>::value || -+ std::is_assignable&&>::value> {}; -+ - // Forward compatibility for C++20. - template - using RemoveCvRefT = std::remove_cv_t>; -@@ -487,14 +497,42 @@ class Optional - return *this; - } - -- template -- typename std::enable_if, T>::value, -- Optional&>::type -+ // Perfect-forwarded assignment. -+ template -+ std::enable_if_t< -+ !std::is_same, Optional>::value && -+ std::is_constructible::value && -+ std::is_assignable::value && -+ (!std::is_scalar::value || -+ !std::is_same, T>::value), -+ Optional&> - operator=(U&& value) { - InitOrAssign(std::forward(value)); - return *this; - } - -+// Copy assign the state of other. -+ template -+ std::enable_if_t::value && -+ std::is_constructible::value && -+ std::is_assignable::value, -+ Optional&> -+ operator=(const Optional& other) { -+ CopyAssign(other); -+ return *this; -+ } -+ -+ // Move assign the state of other. -+ template -+ std::enable_if_t::value && -+ std::is_constructible::value && -+ std::is_assignable::value, -+ Optional&> -+ operator=(Optional&& other) { -+ MoveAssign(std::move(other)); -+ return *this; -+ } -+ - constexpr const T* operator->() const { - DCHECK(storage_.is_populated_); - return &value(); -@@ -606,8 +644,10 @@ class Optional - private: - // Accessing template base class's protected member needs explicit - // declaration to do so. -+ using internal::OptionalBase::CopyAssign; - using internal::OptionalBase::FreeIfNeeded; - using internal::OptionalBase::InitOrAssign; -+ using internal::OptionalBase::MoveAssign; - using internal::OptionalBase::storage_; - }; - diff --git a/chromium-65.0.3325.146-Use-affirmative-expression-in-base-Optional.patch b/chromium-65.0.3325.146-Use-affirmative-expression-in-base-Optional.patch deleted file mode 100644 index 8aaea85..0000000 --- a/chromium-65.0.3325.146-Use-affirmative-expression-in-base-Optional.patch +++ /dev/null @@ -1,265 +0,0 @@ -diff -up chromium-65.0.3325.146/base/optional.h.affirmative chromium-65.0.3325.146/base/optional.h ---- chromium-65.0.3325.146/base/optional.h.affirmative 2018-03-13 22:27:29.451969704 -0400 -+++ chromium-65.0.3325.146/base/optional.h 2018-03-13 22:27:57.031436045 -0400 -@@ -41,7 +41,7 @@ struct OptionalStorageBase { - - template - constexpr explicit OptionalStorageBase(in_place_t, Args&&... args) -- : is_null_(false), value_(std::forward(args)...) {} -+ : is_populated_(true), value_(std::forward(args)...) {} - - // When T is not trivially destructible we must call its - // destructor before deallocating its memory. -@@ -55,18 +55,18 @@ struct OptionalStorageBase { - // necessary for this case at the moment. Please see also the destructor - // comment in "is_trivially_destructible = true" specialization below. - ~OptionalStorageBase() { -- if (!is_null_) -+ if (is_populated_) - value_.~T(); - } - - template - void Init(Args&&... args) { -- DCHECK(is_null_); -+ DCHECK(!is_populated_); - ::new (&value_) T(std::forward(args)...); -- is_null_ = false; -+ is_populated_ = true; - } - -- bool is_null_ = true; -+ bool is_populated_ = false; - union { - // |empty_| exists so that the union will always be initialized, even when - // it doesn't contain a value. Union members must be initialized for the -@@ -84,7 +84,7 @@ struct OptionalStorageBase - constexpr explicit OptionalStorageBase(in_place_t, Args&&... args) -- : is_null_(false), value_(std::forward(args)...) {} -+ : is_populated_(true), value_(std::forward(args)...) {} - - // When T is trivially destructible (i.e. its destructor does nothing) there - // is no need to call it. Implicitly defined destructor is trivial, because -@@ -102,12 +102,12 @@ struct OptionalStorageBase - void Init(Args&&... args) { -- DCHECK(is_null_); -+ DCHECK(!is_populated_); - ::new (&value_) T(std::forward(args)...); -- is_null_ = false; -+ is_populated_ = true; - } - -- bool is_null_ = true; -+ bool is_populated_ = false; - union { - // |empty_| exists so that the union will always be initialized, even when - // it doesn't contain a value. Union members must be initialized for the -@@ -133,7 +133,7 @@ struct OptionalStorage : OptionalStorage - - // Accessing the members of template base class requires explicit - // declaration. -- using OptionalStorageBase::is_null_; -+ using OptionalStorageBase::is_populated_; - using OptionalStorageBase::value_; - using OptionalStorageBase::Init; - -@@ -145,12 +145,12 @@ struct OptionalStorage : OptionalStorage - OptionalStorage() = default; - - OptionalStorage(const OptionalStorage& other) { -- if (!other.is_null_) -+ if (other.is_populated_) - Init(other.value_); - } - - OptionalStorage(OptionalStorage&& other) { -- if (!other.is_null_) -+ if (other.is_populated_) - Init(std::move(other.value_)); - } - }; -@@ -160,7 +160,7 @@ struct OptionalStorage - : OptionalStorageBase { -- using OptionalStorageBase::is_null_; -+ using OptionalStorageBase::is_populated_; - using OptionalStorageBase::value_; - using OptionalStorageBase::Init; - using OptionalStorageBase::OptionalStorageBase; -@@ -169,7 +169,7 @@ struct OptionalStorage - : OptionalStorageBase { -- using OptionalStorageBase::is_null_; -+ using OptionalStorageBase::is_populated_; - using OptionalStorageBase::value_; - using OptionalStorageBase::Init; - using OptionalStorageBase::OptionalStorageBase; -@@ -188,7 +188,7 @@ struct OptionalStorage storage_; -@@ -334,12 +334,12 @@ class Optional : public internal::Option - } - - constexpr const T* operator->() const { -- DCHECK(!storage_.is_null_); -+ DCHECK(storage_.is_populated_); - return &value(); - } - - constexpr T* operator->() { -- DCHECK(!storage_.is_null_); -+ DCHECK(storage_.is_populated_); - return &value(); - } - -@@ -351,27 +351,27 @@ class Optional : public internal::Option - - constexpr T&& operator*() && { return std::move(value()); } - -- constexpr explicit operator bool() const { return !storage_.is_null_; } -+ constexpr explicit operator bool() const { return storage_.is_populated_; } - -- constexpr bool has_value() const { return !storage_.is_null_; } -+ constexpr bool has_value() const { return storage_.is_populated_; } - - constexpr T& value() & { -- DCHECK(!storage_.is_null_); -+ DCHECK(storage_.is_populated_); - return storage_.value_; - } - - constexpr const T& value() const & { -- DCHECK(!storage_.is_null_); -+ DCHECK(storage_.is_populated_); - return storage_.value_; - } - - constexpr T&& value() && { -- DCHECK(!storage_.is_null_); -+ DCHECK(storage_.is_populated_); - return std::move(storage_.value_); - } - - constexpr const T&& value() const && { -- DCHECK(!storage_.is_null_); -+ DCHECK(storage_.is_populated_); - return std::move(storage_.value_); - } - -@@ -382,8 +382,9 @@ class Optional : public internal::Option - // "T must be copy constructible"); - static_assert(std::is_convertible::value, - "U must be convertible to T"); -- return storage_.is_null_ ? static_cast(std::forward(default_value)) -- : value(); -+ return storage_.is_populated_ -+ ? value() -+ : static_cast(std::forward(default_value)); - } - - template -@@ -393,26 +394,27 @@ class Optional : public internal::Option - // "T must be move constructible"); - static_assert(std::is_convertible::value, - "U must be convertible to T"); -- return storage_.is_null_ ? static_cast(std::forward(default_value)) -- : std::move(value()); -+ return storage_.is_populated_ -+ ? std::move(value()) -+ : static_cast(std::forward(default_value)); - } - - void swap(Optional& other) { -- if (storage_.is_null_ && other.storage_.is_null_) -+ if (!storage_.is_populated_ && !other.storage_.is_populated_) - return; - -- if (storage_.is_null_ != other.storage_.is_null_) { -- if (storage_.is_null_) { -- storage_.Init(std::move(other.storage_.value_)); -- other.FreeIfNeeded(); -- } else { -+ if (storage_.is_populated_ != other.storage_.is_populated_) { -+ if (storage_.is_populated_) { - other.storage_.Init(std::move(storage_.value_)); - FreeIfNeeded(); -+ } else { -+ storage_.Init(std::move(other.storage_.value_)); -+ other.FreeIfNeeded(); - } - return; - } - -- DCHECK(!storage_.is_null_ && !other.storage_.is_null_); -+ DCHECK(storage_.is_populated_ && other.storage_.is_populated_); - using std::swap; - swap(**this, *other); - } diff --git a/chromium-65.0.3325.146-gcc5-r3.patch b/chromium-65.0.3325.146-gcc5-r3.patch deleted file mode 100644 index ab74a35..0000000 --- a/chromium-65.0.3325.146-gcc5-r3.patch +++ /dev/null @@ -1,74 +0,0 @@ -diff -up chromium-65.0.3325.146/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 chromium-65.0.3325.146/gpu/ipc/common/mailbox_struct_traits.h ---- chromium-65.0.3325.146/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 2018-03-06 18:04:32.000000000 -0500 -+++ chromium-65.0.3325.146/gpu/ipc/common/mailbox_struct_traits.h 2018-03-07 10:42:07.198179638 -0500 -@@ -15,7 +15,7 @@ namespace mojo { - template <> - struct StructTraits { - static base::span name(const gpu::Mailbox& mailbox) { -- return mailbox.name; -+ return base::make_span(mailbox.name); - } - static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out); - }; -diff -up chromium-65.0.3325.146/services/viz/public/cpp/compositing/filter_operation_struct_traits.h.gcc5-r3 chromium-65.0.3325.146/services/viz/public/cpp/compositing/filter_operation_struct_traits.h ---- chromium-65.0.3325.146/services/viz/public/cpp/compositing/filter_operation_struct_traits.h.gcc5-r3 2018-03-06 18:04:37.000000000 -0500 -+++ chromium-65.0.3325.146/services/viz/public/cpp/compositing/filter_operation_struct_traits.h 2018-03-07 10:42:07.198179638 -0500 -@@ -138,7 +138,7 @@ struct StructTraits matrix(const cc::FilterOperation& operation) { - if (operation.type() != cc::FilterOperation::COLOR_MATRIX) - return base::span(); -- return operation.matrix(); -+ return base::make_span(operation.matrix()); - } - - static base::span shape( -diff -up chromium-65.0.3325.146/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 chromium-65.0.3325.146/services/viz/public/cpp/compositing/quads_struct_traits.h ---- chromium-65.0.3325.146/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 2018-03-06 18:04:37.000000000 -0500 -+++ chromium-65.0.3325.146/services/viz/public/cpp/compositing/quads_struct_traits.h 2018-03-07 10:42:07.198179638 -0500 -@@ -308,7 +308,7 @@ struct StructTraits vertex_opacity(const viz::DrawQuad& input) { - const viz::TextureDrawQuad* quad = - viz::TextureDrawQuad::MaterialCast(&input); -- return quad->vertex_opacity; -+ return base::make_span(quad->vertex_opacity); - } - - static bool y_flipped(const viz::DrawQuad& input) { -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h.gcc5-r3 chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h ---- chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h.gcc5-r3 2018-03-06 18:05:06.000000000 -0500 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h 2018-03-07 10:48:53.996093882 -0500 -@@ -62,7 +62,7 @@ class WTF_EXPORT ArrayBufferContents { - allocation_length_(length), - data_(data), - data_length_(length), -- kind_(AllocationKind::kNormal), -+ kind_(WTF::ArrayBufferContents::AllocationKind::kNormal), - deleter_(deleter) {} - DataHandle(void* allocation_base, - size_t allocation_length, -@@ -93,11 +93,11 @@ class WTF_EXPORT ArrayBufferContents { - reinterpret_cast(allocation_base_) + - allocation_length_); - switch (kind_) { -- case AllocationKind::kNormal: -+ case WTF::ArrayBufferContents::AllocationKind::kNormal: - DCHECK(deleter_); - deleter_(data_); - return; -- case AllocationKind::kReservation: -+ case WTF::ArrayBufferContents::AllocationKind::kReservation: - ReleaseReservedMemory(allocation_base_, allocation_length_); - return; - } -diff -up chromium-65.0.3325.146/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 chromium-65.0.3325.146/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc ---- chromium-65.0.3325.146/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 2018-03-06 18:06:09.000000000 -0500 -+++ chromium-65.0.3325.146/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2018-03-07 10:42:07.199179616 -0500 -@@ -10,7 +10,7 @@ - - #include "modules/audio_processing/aec3/aec_state.h" - --#include -+#include - - #include - #include diff --git a/chromium-65.0.3325.146-gcc7.patch b/chromium-65.0.3325.146-gcc7.patch deleted file mode 100644 index 4f2b46c..0000000 --- a/chromium-65.0.3325.146-gcc7.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 chromium-65.0.3325.146/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h ---- chromium-65.0.3325.146/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 2018-03-07 10:34:48.783900894 -0500 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h 2018-03-07 10:35:44.885638503 -0500 -@@ -5,6 +5,7 @@ - #ifndef SharedGpuContext_h - #define SharedGpuContext_h - -+#include - #include - #include "base/callback.h" - #include "base/memory/weak_ptr.h" diff --git a/chromium-65.0.3325.146-workaround-gcc7-is_trivially_copy_constructable-failure.patch b/chromium-65.0.3325.146-workaround-gcc7-is_trivially_copy_constructable-failure.patch deleted file mode 100644 index 241dfb5..0000000 --- a/chromium-65.0.3325.146-workaround-gcc7-is_trivially_copy_constructable-failure.patch +++ /dev/null @@ -1,55 +0,0 @@ -diff -up chromium-65.0.3325.146/base/optional.h.784732 chromium-65.0.3325.146/base/optional.h ---- chromium-65.0.3325.146/base/optional.h.784732 2018-03-07 13:40:00.103579631 -0500 -+++ chromium-65.0.3325.146/base/optional.h 2018-03-07 13:41:08.950323996 -0500 -@@ -9,6 +9,7 @@ - #include - - #include "base/logging.h" -+#include "base/template_util.h" - - namespace base { - -@@ -106,7 +107,7 @@ struct OptionalStorageBase::value, -+ bool = is_trivially_copy_constructible::value, - bool = std::is_trivially_move_constructible::value> - struct OptionalStorage : OptionalStorageBase { - // This is no trivially {copy,move} constructible case. Other cases are -diff -up chromium-65.0.3325.146/base/template_util.h.784732 chromium-65.0.3325.146/base/template_util.h ---- chromium-65.0.3325.146/base/template_util.h.784732 2018-03-07 13:41:19.479131969 -0500 -+++ chromium-65.0.3325.146/base/template_util.h 2018-03-07 13:42:41.308639551 -0500 -@@ -10,6 +10,7 @@ - #include - #include - #include -+#include - - #include "build/build_config.h" - -@@ -127,6 +128,23 @@ template - using is_trivially_copyable = std::is_trivially_copyable; - #endif - -+#if defined(__GNUC__) && !defined(__clang__) && __GNUC__ <= 7 -+// Workaround for g++7 and earlier family. -+// Due to https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80654, without this -+// Optional> where T is non-copyable causes a compile error. -+// As we know it is not trivially copy constructible, explicitly declare so. -+template -+struct is_trivially_copy_constructible -+ : std::is_trivially_copy_constructible {}; -+ -+template -+struct is_trivially_copy_constructible> : std::false_type {}; -+#else -+// Otherwise use std::is_trivially_copy_constructible as is. -+template -+using is_trivially_copy_constructible = std::is_trivially_copy_constructible; -+#endif -+ - } // namespace base - - #undef CR_USE_FALLBACKS_FOR_GCC_WITH_LIBCXX diff --git a/chromium-65.0.3325.146-wtf-oilpan-Remove-GC-checks-from-WTF-Optional-T.patch b/chromium-65.0.3325.146-wtf-oilpan-Remove-GC-checks-from-WTF-Optional-T.patch deleted file mode 100644 index 8b5ff7f..0000000 --- a/chromium-65.0.3325.146-wtf-oilpan-Remove-GC-checks-from-WTF-Optional-T.patch +++ /dev/null @@ -1,61 +0,0 @@ -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/platform/heap/TraceTraits.h.oilpan chromium-65.0.3325.146/third_party/WebKit/Source/platform/heap/TraceTraits.h ---- chromium-65.0.3325.146/third_party/WebKit/Source/platform/heap/TraceTraits.h.oilpan 2018-03-13 16:45:40.613426445 -0400 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/platform/heap/TraceTraits.h 2018-03-13 16:45:49.946244905 -0400 -@@ -18,6 +18,7 @@ - #include "platform/wtf/HashTable.h" - #include "platform/wtf/LinkedHashSet.h" - #include "platform/wtf/ListHashSet.h" -+#include "platform/wtf/Optional.h" - #include "platform/wtf/TypeTraits.h" - - namespace blink { -@@ -325,6 +326,23 @@ class TraceTrait> { - } - }; - -+// While using Optional with garbage-collected types is generally disallowed -+// by the OptionalGarbageCollected check in blink_gc_plugin, garbage-collected -+// containers such as HeapVector are allowed and need to be traced. -+template -+class TraceTrait> { -+ STATIC_ONLY(TraceTrait); -+ -+ public: -+ template -+ static void Trace(VisitorDispatcher visitor, WTF::Optional* optional) { -+ if (*optional != WTF::nullopt) { -+ TraceIfEnabled::value>::Trace(visitor, -+ optional->value()); -+ } -+ } -+}; -+ - // If eager tracing leads to excessively deep |trace()| call chains (and - // the system stack usage that this brings), the marker implementation will - // switch to using an explicit mark stack. Recursive and deep object graphs -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/Optional.h.oilpan chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/Optional.h ---- chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/Optional.h.oilpan 2018-03-13 16:46:01.683015951 -0400 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/Optional.h 2018-03-13 16:46:51.632043375 -0400 -@@ -7,20 +7,15 @@ - - #include "base/optional.h" - #include "platform/wtf/TemplateUtil.h" --#include "platform/wtf/TypeTraits.h" - - namespace WTF { - - // WTF::Optional is base::Optional. See base/optional.h for documentation. - // - // A clang plugin enforces that garbage collected types are not allocated --// outside of the heap, similarly we enforce that one doesn't create garbage --// collected types nested inside an Optional. -+// outside of the heap. GC containers such as HeapVector are allowed though. - template --using Optional = -- typename std::enable_if::value || -- IsPersistentReferenceType::value, -- base::Optional>::type; -+using Optional = base::Optional; - - constexpr base::nullopt_t nullopt = base::nullopt; - constexpr base::in_place_t in_place = base::in_place; diff --git a/chromium-65.0.3325.146-wtf-vector-fix.patch b/chromium-65.0.3325.146-wtf-vector-fix.patch deleted file mode 100644 index e4bfeba..0000000 --- a/chromium-65.0.3325.146-wtf-vector-fix.patch +++ /dev/null @@ -1,54 +0,0 @@ -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/DEPS.jdp chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/DEPS ---- chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/DEPS.jdp 2018-03-07 13:54:42.653286576 -0500 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/DEPS 2018-03-07 13:55:00.973903591 -0500 -@@ -16,6 +16,7 @@ include_rules = [ - "+base/process/process_metrics.h", - "+base/rand_util.h", - "+base/strings", -+ "+base/template_util.h", - "+base/threading/thread_checker.h", - "+base/time/time.h", - "+base/tuple.h", -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/Optional.h.jdp chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/Optional.h ---- chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/Optional.h.jdp 2018-03-07 13:56:29.053062331 -0500 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/Optional.h 2018-03-07 13:56:36.595904651 -0500 -@@ -6,6 +6,7 @@ - #define Optional_h - - #include "base/optional.h" -+#include "platform/wtf/TemplateUtil.h" - #include "platform/wtf/TypeTraits.h" - - namespace WTF { -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/TemplateUtil.h.jdp chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/TemplateUtil.h ---- chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/TemplateUtil.h.jdp 2018-03-07 13:56:47.356679702 -0500 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/TemplateUtil.h 2018-03-07 13:57:41.769542223 -0500 -@@ -0,0 +1,28 @@ -+// Copyright 2018 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. -+ -+#ifndef TemplateUtil_h -+#define TemplateUtil_h -+ -+#include "base/template_util.h" -+#include "platform/wtf/Vector.h" -+ -+namespace base { -+ -+#if defined(__GNUC__) && !defined(__clang__) && __GNUC__ <= 7 -+// Workaround for g++7 and earlier family. -+// Due to https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80654, without this -+// Optional> where T is non-copyable causes a compile error. -+// As we know it is not trivially copy constructible, explicitly declare so. -+// -+// It completes the declaration in base/template_util.h that was provided -+// for std::vector -+template -+struct is_trivially_copy_constructible> : std::false_type {}; -+#endif -+ -+} // namespace base -+ -+#endif // TemplateUtil_h -+ diff --git a/chromium-65.0.3325.162-boolfix.patch b/chromium-65.0.3325.162-boolfix.patch deleted file mode 100644 index a27f3a8..0000000 --- a/chromium-65.0.3325.162-boolfix.patch +++ /dev/null @@ -1,36 +0,0 @@ -diff -up chromium-65.0.3325.162/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix chromium-65.0.3325.162/mojo/public/cpp/bindings/associated_interface_ptr_info.h ---- chromium-65.0.3325.162/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix 2018-03-15 13:07:54.999428755 -0400 -+++ chromium-65.0.3325.162/mojo/public/cpp/bindings/associated_interface_ptr_info.h 2018-03-15 13:08:21.270794252 -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-65.0.3325.162/mojo/public/cpp/bindings/associated_interface_request.h.boolfix chromium-65.0.3325.162/mojo/public/cpp/bindings/associated_interface_request.h ---- chromium-65.0.3325.162/mojo/public/cpp/bindings/associated_interface_request.h.boolfix 2018-03-15 13:07:09.680523296 -0400 -+++ chromium-65.0.3325.162/mojo/public/cpp/bindings/associated_interface_request.h 2018-03-15 13:07:44.429684037 -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-65.0.3325.162/mojo/public/cpp/bindings/interface_request.h.boolfix chromium-65.0.3325.162/mojo/public/cpp/bindings/interface_request.h ---- chromium-65.0.3325.162/mojo/public/cpp/bindings/interface_request.h.boolfix 2018-03-15 13:08:33.494499025 -0400 -+++ chromium-65.0.3325.162/mojo/public/cpp/bindings/interface_request.h 2018-03-15 13:10:39.218462546 -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_; } -+ explicit operator bool() const { return (bool) handle_; } - - // Removes the message pipe from the request and returns it. - ScopedMessagePipeHandle PassMessagePipe() { return std::move(handle_); } diff --git a/chromium-65.0.3325.162-epel7-stdc++.patch b/chromium-65.0.3325.162-epel7-stdc++.patch deleted file mode 100644 index ee2066b..0000000 --- a/chromium-65.0.3325.162-epel7-stdc++.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-65.0.3325.162/build/config/posix/BUILD.gn.epel7 chromium-65.0.3325.162/build/config/posix/BUILD.gn ---- chromium-65.0.3325.162/build/config/posix/BUILD.gn.epel7 2018-03-20 16:14:42.425926323 -0400 -+++ chromium-65.0.3325.162/build/config/posix/BUILD.gn 2018-03-20 16:15:10.150152245 -0400 -@@ -74,6 +74,8 @@ config("runtime_library") { - "rt", - ] - } -+ } else { -+ libs += [ "stdc++" ] - } - - if (!is_mac && !is_ios && sysroot != "") { diff --git a/chromium-65.0.3325.162-skia-aarch64-buildfix.patch b/chromium-65.0.3325.162-skia-aarch64-buildfix.patch deleted file mode 100644 index e48346c..0000000 --- a/chromium-65.0.3325.162-skia-aarch64-buildfix.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -up chromium-65.0.3325.162/third_party/skia/src/jumper/SkJumper_stages.cpp.aarch64fix chromium-65.0.3325.162/third_party/skia/src/jumper/SkJumper_stages.cpp ---- chromium-65.0.3325.162/third_party/skia/src/jumper/SkJumper_stages.cpp.aarch64fix 2018-03-15 15:27:35.201345844 -0400 -+++ chromium-65.0.3325.162/third_party/skia/src/jumper/SkJumper_stages.cpp 2018-03-15 15:31:30.471777400 -0400 -@@ -666,7 +666,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) -@@ -686,7 +686,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) diff --git a/chromium-66.0.3359.117-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch b/chromium-66.0.3359.117-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch deleted file mode 100644 index 36ade41..0000000 --- a/chromium-66.0.3359.117-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch +++ /dev/null @@ -1,33 +0,0 @@ -diff -up chromium-66.0.3359.117/services/preferences/tracked/pref_hash_filter.h.gcc-full-decl chromium-66.0.3359.117/services/preferences/tracked/pref_hash_filter.h ---- chromium-66.0.3359.117/services/preferences/tracked/pref_hash_filter.h.gcc-full-decl 2018-04-25 16:29:52.372692179 -0400 -+++ chromium-66.0.3359.117/services/preferences/tracked/pref_hash_filter.h 2018-04-25 16:31:15.698058409 -0400 -@@ -21,9 +21,9 @@ - #include "services/preferences/public/mojom/preferences.mojom.h" - #include "services/preferences/tracked/hash_store_contents.h" - #include "services/preferences/tracked/interceptable_pref_filter.h" -+#include "services/preferences/tracked/pref_hash_store.h" - #include "services/preferences/tracked/tracked_preference.h" - --class PrefHashStore; - class PrefService; - - namespace base { -diff -up chromium-66.0.3359.117/third_party/WebKit/Source/modules/webdatabase/SQLTransactionBackend.h.gcc-full-decl chromium-66.0.3359.117/third_party/WebKit/Source/modules/webdatabase/SQLTransactionBackend.h ---- chromium-66.0.3359.117/third_party/WebKit/Source/modules/webdatabase/SQLTransactionBackend.h.gcc-full-decl 2018-04-17 21:05:12.000000000 -0400 -+++ chromium-66.0.3359.117/third_party/WebKit/Source/modules/webdatabase/SQLTransactionBackend.h 2018-04-25 16:29:52.373692159 -0400 -@@ -30,6 +30,7 @@ - - #include - #include "modules/webdatabase/DatabaseBasicTypes.h" -+#include "modules/webdatabase/SQLError.h" - #include "modules/webdatabase/SQLStatement.h" - #include "modules/webdatabase/SQLStatementBackend.h" - #include "modules/webdatabase/SQLTransactionStateMachine.h" -@@ -41,7 +42,6 @@ - namespace blink { - - class Database; --class SQLErrorData; - class SQLiteTransaction; - class SQLTransaction; - class SQLTransactionBackend; diff --git a/chromium-66.0.3359.117-GCC-do-not-use-initializer-list-for-NoDestructor-of-.patch b/chromium-66.0.3359.117-GCC-do-not-use-initializer-list-for-NoDestructor-of-.patch deleted file mode 100644 index cb68934..0000000 --- a/chromium-66.0.3359.117-GCC-do-not-use-initializer-list-for-NoDestructor-of-.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-66.0.3359.117/chrome/browser/supervised_user/supervised_user_url_filter.cc.flatsetfix chromium-66.0.3359.117/chrome/browser/supervised_user/supervised_user_url_filter.cc ---- chromium-66.0.3359.117/chrome/browser/supervised_user/supervised_user_url_filter.cc.flatsetfix 2018-04-30 14:22:23.997461566 -0400 -+++ chromium-66.0.3359.117/chrome/browser/supervised_user/supervised_user_url_filter.cc 2018-04-30 14:22:51.867920383 -0400 -@@ -368,7 +368,7 @@ SupervisedUserURLFilter::GetFilteringBeh - - // Allow navigations to whitelisted origins (currently families.google.com). - static const base::NoDestructor> kWhitelistedOrigins( -- {GURL(kFamiliesUrl).GetOrigin()}); -+ base::flat_set({GURL(kFamiliesUrl).GetOrigin()})); - if (base::ContainsKey(*kWhitelistedOrigins, effective_url.GetOrigin())) - return ALLOW; - diff --git a/chromium-66.0.3359.117-gcc-copy-constructor-fix.patch b/chromium-66.0.3359.117-gcc-copy-constructor-fix.patch deleted file mode 100644 index 09c5b82..0000000 --- a/chromium-66.0.3359.117-gcc-copy-constructor-fix.patch +++ /dev/null @@ -1,49 +0,0 @@ -diff -up chromium-66.0.3359.117/cc/raster/playback_image_provider.cc.copycon chromium-66.0.3359.117/cc/raster/playback_image_provider.cc ---- chromium-66.0.3359.117/cc/raster/playback_image_provider.cc.copycon 2018-04-23 13:22:43.109126071 -0400 -+++ chromium-66.0.3359.117/cc/raster/playback_image_provider.cc 2018-04-23 13:23:55.761704938 -0400 -@@ -20,7 +20,7 @@ void UnrefImageFromCache(DrawImage draw_ - PlaybackImageProvider::PlaybackImageProvider( - ImageDecodeCache* cache, - const gfx::ColorSpace& target_color_space, -- base::Optional settings) -+ base::Optional&& settings) - : cache_(cache), - target_color_space_(target_color_space), - settings_(std::move(settings)) { -@@ -70,7 +70,10 @@ PlaybackImageProvider::GetDecodedDrawIma - } - - PlaybackImageProvider::Settings::Settings() = default; --PlaybackImageProvider::Settings::Settings(const Settings& other) = default; -+PlaybackImageProvider::Settings::Settings(PlaybackImageProvider::Settings&&) = -+ default; - PlaybackImageProvider::Settings::~Settings() = default; -+PlaybackImageProvider::Settings& PlaybackImageProvider::Settings::operator=( -+ PlaybackImageProvider::Settings&&) = default; - - } // namespace cc -diff -up chromium-66.0.3359.117/cc/raster/playback_image_provider.h.copycon chromium-66.0.3359.117/cc/raster/playback_image_provider.h ---- chromium-66.0.3359.117/cc/raster/playback_image_provider.h.copycon 2018-04-23 13:24:07.699471148 -0400 -+++ chromium-66.0.3359.117/cc/raster/playback_image_provider.h 2018-04-23 13:24:57.080506348 -0400 -@@ -20,8 +20,10 @@ class CC_EXPORT PlaybackImageProvider : - public: - struct CC_EXPORT Settings { - Settings(); -- Settings(const Settings& other); -+ Settings(const Settings&) = delete; -+ Settings(Settings&&); - ~Settings(); -+ Settings& operator=(Settings&&); - - // The set of image ids to skip during raster. - PaintImageIdFlatSet images_to_skip; -@@ -34,7 +36,7 @@ class CC_EXPORT PlaybackImageProvider : - // If no settings are provided, all images are skipped during rasterization. - PlaybackImageProvider(ImageDecodeCache* cache, - const gfx::ColorSpace& target_color_space, -- base::Optional settings); -+ base::Optional&& settings); - ~PlaybackImageProvider() override; - - PlaybackImageProvider(PlaybackImageProvider&& other); -diff -up chromium-66.0.3359.117/cc/raster/playback_image_provider_unittest.cc.copycon chromium-66.0.3359.117/cc/raster/playback_image_provider_unittest.cc diff --git a/chromium-66.0.3359.117-gcc-optional-move-fixes.patch b/chromium-66.0.3359.117-gcc-optional-move-fixes.patch deleted file mode 100644 index 80df7d0..0000000 --- a/chromium-66.0.3359.117-gcc-optional-move-fixes.patch +++ /dev/null @@ -1,45 +0,0 @@ -diff -up chromium-66.0.3359.117/content/browser/appcache/appcache_request_handler.cc.gccomove chromium-66.0.3359.117/content/browser/appcache/appcache_request_handler.cc ---- chromium-66.0.3359.117/content/browser/appcache/appcache_request_handler.cc.gccomove 2018-04-23 12:53:32.419477463 -0400 -+++ chromium-66.0.3359.117/content/browser/appcache/appcache_request_handler.cc 2018-04-23 12:54:02.497887258 -0400 -@@ -639,7 +639,7 @@ AppCacheRequestHandler::MaybeCreateSubre - - SubresourceLoaderParams params; - params.loader_factory_info = factory_ptr.PassInterface(); -- return params; -+ return base::Optional(std::move(params)); - } - - void AppCacheRequestHandler::MaybeCreateSubresourceLoader( -diff -up chromium-66.0.3359.117/content/browser/service_worker/service_worker_controllee_request_handler.cc.gccomove chromium-66.0.3359.117/content/browser/service_worker/service_worker_controllee_request_handler.cc ---- chromium-66.0.3359.117/content/browser/service_worker/service_worker_controllee_request_handler.cc.gccomove 2018-04-23 12:54:16.614610083 -0400 -+++ chromium-66.0.3359.117/content/browser/service_worker/service_worker_controllee_request_handler.cc 2018-04-23 12:54:38.401182827 -0400 -@@ -271,7 +271,7 @@ ServiceWorkerControlleeRequestHandler::M - controller_info->object_info = provider_host_->GetOrCreateServiceWorkerHandle( - provider_host_->controller()); - params.controller_service_worker_info = std::move(controller_info); -- return params; -+ return base::Optional(std::move(params)); - } - - void ServiceWorkerControlleeRequestHandler::PrepareForMainResource( -diff -up chromium-66.0.3359.117/device/fido/device_response_converter.cc.gccomove chromium-66.0.3359.117/device/fido/device_response_converter.cc ---- chromium-66.0.3359.117/device/fido/device_response_converter.cc.gccomove 2018-04-23 12:54:51.452926482 -0400 -+++ chromium-66.0.3359.117/device/fido/device_response_converter.cc 2018-04-23 12:55:24.248283058 -0400 -@@ -121,7 +121,7 @@ base::Optionalsecond.GetUnsigned()); - } - -- return response; -+ return base::Optional(std::move(response)); - } - - base::Optional ReadCTAPGetInfoResponse( -@@ -241,7 +241,7 @@ base::Optional(std::move(response)); - } - - } // namespace device diff --git a/chromium-66.0.3359.117-gcc-vector-copy-constructor-fix.patch b/chromium-66.0.3359.117-gcc-vector-copy-constructor-fix.patch deleted file mode 100644 index b86c200..0000000 --- a/chromium-66.0.3359.117-gcc-vector-copy-constructor-fix.patch +++ /dev/null @@ -1,53 +0,0 @@ -diff -up chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/DEPS.944404 chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/DEPS ---- chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/DEPS.944404 2018-04-23 14:18:43.702116916 -0400 -+++ chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/DEPS 2018-04-23 14:19:05.854680223 -0400 -@@ -16,6 +16,7 @@ include_rules = [ - "+base/process/process_metrics.h", - "+base/rand_util.h", - "+base/strings", -+ "+base/template_util.h", - "+base/threading/thread_checker.h", - "+base/time/time.h", - "+base/tuple.h", -diff -up chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/Optional.h.944404 chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/Optional.h ---- chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/Optional.h.944404 2018-04-23 14:20:05.718499685 -0400 -+++ chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/Optional.h 2018-04-23 14:20:18.165253615 -0400 -@@ -6,6 +6,7 @@ - #define Optional_h - - #include "base/optional.h" -+#include "platform/wtf/TemplateUtil.h" - - namespace WTF { - -diff -up chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/TemplateUtil.h.944404 chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/TemplateUtil.h ---- chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/TemplateUtil.h.944404 2018-04-23 14:20:31.660987877 -0400 -+++ chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/TemplateUtil.h 2018-04-23 14:21:40.276637297 -0400 -@@ -0,0 +1,27 @@ -+// Copyright 2018 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. -+ -+#ifndef TemplateUtil_h -+#define TemplateUtil_h -+ -+#include "base/template_util.h" -+#include "platform/wtf/Vector.h" -+ -+namespace base { -+ -+#if defined(__GNUC__) && !defined(__clang__) && __GNUC__ <= 7 -+// Workaround for g++7 and earlier family. -+// Due to https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80654, without this -+// Optional> where T is non-copyable causes a compile error. -+// As we know it is not trivially copy constructible, explicitly declare so. -+// -+// It completes the declaration in base/template_util.h that was provided -+// for std::vector -+template -+struct is_trivially_copy_constructible> : std::false_type {}; -+#endif -+ -+} // namespace base -+ -+#endif // TemplateUtil_h diff --git a/chromium-66.0.3359.117-gcc5-r3.patch b/chromium-66.0.3359.117-gcc5-r3.patch deleted file mode 100644 index 56abcf1..0000000 --- a/chromium-66.0.3359.117-gcc5-r3.patch +++ /dev/null @@ -1,38 +0,0 @@ -diff -up chromium-66.0.3359.117/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 chromium-66.0.3359.117/gpu/ipc/common/mailbox_struct_traits.h ---- chromium-66.0.3359.117/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 2018-04-17 21:04:33.000000000 -0400 -+++ chromium-66.0.3359.117/gpu/ipc/common/mailbox_struct_traits.h 2018-04-18 12:12:40.065663210 -0400 -@@ -15,7 +15,7 @@ namespace mojo { - template <> - struct StructTraits { - static base::span name(const gpu::Mailbox& mailbox) { -- return mailbox.name; -+ return base::make_span(mailbox.name); - } - static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out); - }; -diff -up chromium-66.0.3359.117/services/viz/public/cpp/compositing/filter_operation_struct_traits.h.gcc5-r3 chromium-66.0.3359.117/services/viz/public/cpp/compositing/filter_operation_struct_traits.h -diff -up chromium-66.0.3359.117/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 chromium-66.0.3359.117/services/viz/public/cpp/compositing/quads_struct_traits.h ---- chromium-66.0.3359.117/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 2018-04-17 21:04:43.000000000 -0400 -+++ chromium-66.0.3359.117/services/viz/public/cpp/compositing/quads_struct_traits.h 2018-04-18 12:12:40.067663160 -0400 -@@ -308,7 +308,7 @@ struct StructTraits vertex_opacity(const viz::DrawQuad& input) { - const viz::TextureDrawQuad* quad = - viz::TextureDrawQuad::MaterialCast(&input); -- return quad->vertex_opacity; -+ return base::make_span(quad->vertex_opacity); - } - - static bool y_flipped(const viz::DrawQuad& input) { -diff -up chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h.gcc5-r3 chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h -diff -up chromium-66.0.3359.117/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 chromium-66.0.3359.117/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc ---- chromium-66.0.3359.117/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 2018-04-17 21:06:20.000000000 -0400 -+++ chromium-66.0.3359.117/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2018-04-18 12:12:40.068663134 -0400 -@@ -10,7 +10,7 @@ - - #include "modules/audio_processing/aec3/aec_state.h" - --#include -+#include - - #include - #include diff --git a/chromium-66.0.3359.117-nounrar.patch b/chromium-66.0.3359.117-nounrar.patch deleted file mode 100644 index 67a517b..0000000 --- a/chromium-66.0.3359.117-nounrar.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff -up chromium-66.0.3359.117/chrome/services/file_util/public/cpp/BUILD.gn.nounrar chromium-66.0.3359.117/chrome/services/file_util/public/cpp/BUILD.gn ---- chromium-66.0.3359.117/chrome/services/file_util/public/cpp/BUILD.gn.nounrar 2018-04-25 12:17:13.858139109 -0400 -+++ chromium-66.0.3359.117/chrome/services/file_util/public/cpp/BUILD.gn 2018-04-25 12:19:53.639532053 -0400 -@@ -27,9 +27,9 @@ source_set("cpp") { - } - - #TODO(crbug/750327): This dependency is here temporarily. -- deps = [ -- "//third_party/unrar:unrar", -- ] -+ # deps = [ -+ # "//third_party/unrar:unrar", -+ # ] - - public_deps += [ "//chrome/common/safe_browsing" ] - } diff --git a/chromium-66.0.3359.139-arm-init-fix.patch b/chromium-66.0.3359.139-arm-init-fix.patch deleted file mode 100644 index 754af5b..0000000 --- a/chromium-66.0.3359.139-arm-init-fix.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-66.0.3359.139/skia/ext/convolver_neon.cc.arm-init-fix chromium-66.0.3359.139/skia/ext/convolver_neon.cc ---- chromium-66.0.3359.139/skia/ext/convolver_neon.cc.arm-init-fix 2018-05-05 10:07:03.624424987 -0400 -+++ chromium-66.0.3359.139/skia/ext/convolver_neon.cc 2018-05-05 10:07:45.417503001 -0400 -@@ -23,7 +23,7 @@ AccumRemainder(const unsigned char* pixe - remainder[2] += coeff * pixels_left[i * 4 + 2]; - remainder[3] += coeff * pixels_left[i * 4 + 3]; - } -- return {remainder[0], remainder[1], remainder[2], remainder[3]}; -+ return vld1q_s32(remainder); - } - - // Convolves horizontally along a single row. The row data is given in diff --git a/chromium-66.0.3359.170-gcc8-alignof.patch b/chromium-66.0.3359.170-gcc8-alignof.patch deleted file mode 100644 index 0c2b356..0000000 --- a/chromium-66.0.3359.170-gcc8-alignof.patch +++ /dev/null @@ -1,18 +0,0 @@ -diff -up chromium-66.0.3359.170/mojo/public/c/system/macros.h.gcc8-alignof chromium-66.0.3359.170/mojo/public/c/system/macros.h ---- chromium-66.0.3359.170/mojo/public/c/system/macros.h.gcc8-alignof 2018-05-15 14:58:46.448912634 -0400 -+++ chromium-66.0.3359.170/mojo/public/c/system/macros.h 2018-05-15 14:58:52.041784613 -0400 -@@ -18,7 +18,13 @@ - #endif - - // Like the C++11 |alignof| operator. --#if __cplusplus >= 201103L -+#if defined(__GNUC__) && __GNUC__ >= 8 -+// GCC 8 has changed the alignof operator to return the minimal alignment -+// required by the target ABI, instead of the preferred alignment. -+// This means that on 32-bit x86, it will return 4 instead of 8. -+// Use __alignof__ instead to avoid this. -+#define MOJO_ALIGNOF(type) __alignof__(type) -+#elif __cplusplus >= 201103L - #define MOJO_ALIGNOF(type) alignof(type) - #elif defined(__GNUC__) - #define MOJO_ALIGNOF(type) __alignof__(type) diff --git a/chromium-67.0.3396.62-boolfix.patch b/chromium-67.0.3396.62-boolfix.patch deleted file mode 100644 index d0ed189..0000000 --- a/chromium-67.0.3396.62-boolfix.patch +++ /dev/null @@ -1,36 +0,0 @@ -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-crashpad-aarch64-buildfix.patch b/chromium-67.0.3396.62-crashpad-aarch64-buildfix.patch deleted file mode 100644 index e19d726..0000000 --- a/chromium-67.0.3396.62-crashpad-aarch64-buildfix.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -up chromium-67.0.3396.62/third_party/crashpad/crashpad/util/misc/capture_context_linux.S.aarch64fix chromium-67.0.3396.62/third_party/crashpad/crashpad/util/misc/capture_context_linux.S ---- chromium-67.0.3396.62/third_party/crashpad/crashpad/util/misc/capture_context_linux.S.aarch64fix 2018-06-04 14:58:04.730083967 -0400 -+++ chromium-67.0.3396.62/third_party/crashpad/crashpad/util/misc/capture_context_linux.S 2018-06-04 14:58:24.896572816 -0400 -@@ -288,7 +288,7 @@ CAPTURECONTEXT_SYMBOL2: - #elif defined(__aarch64__) - - // Zero out fault_address, which is unused. -- str x31, [x0, #0xb0] // context->uc_mcontext.fault_address -+ str xzr, [x0, #0xb0] // context->uc_mcontext.fault_address - - // Save general purpose registers in context->uc_mcontext.regs[i]. - // The original x0 can't be recovered. -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 diff --git a/chromium-67.0.3396.62-epel7-use-old-python-exec-syntax.patch b/chromium-67.0.3396.62-epel7-use-old-python-exec-syntax.patch deleted file mode 100644 index 1aa5600..0000000 --- a/chromium-67.0.3396.62-epel7-use-old-python-exec-syntax.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-67.0.3396.62/tools/gn/bootstrap/bootstrap.py.oldexec chromium-67.0.3396.62/tools/gn/bootstrap/bootstrap.py ---- chromium-67.0.3396.62/tools/gn/bootstrap/bootstrap.py.oldexec 2018-06-06 10:13:40.862084284 -0400 -+++ chromium-67.0.3396.62/tools/gn/bootstrap/bootstrap.py 2018-06-06 10:14:08.809490819 -0400 -@@ -112,7 +112,7 @@ def windows_prepare_toolchain(tempdir): - - _globals = {"__builtins__":None} - _locals = {} -- exec(response, _globals, _locals) -+ exec response in _globals, _locals - - return _locals - diff --git a/chromium-67.0.3396.62-skia-aarch64-buildfix.patch b/chromium-67.0.3396.62-skia-aarch64-buildfix.patch deleted file mode 100644 index 6b37b08..0000000 --- a/chromium-67.0.3396.62-skia-aarch64-buildfix.patch +++ /dev/null @@ -1,21 +0,0 @@ -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) diff --git a/chromium-67.0.3396.87-fedora-user-agent.patch b/chromium-67.0.3396.87-fedora-user-agent.patch deleted file mode 100644 index 8df304d..0000000 --- a/chromium-67.0.3396.87-fedora-user-agent.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-67.0.3396.87/content/common/user_agent.cc.fedora-user-agent chromium-67.0.3396.87/content/common/user_agent.cc ---- chromium-67.0.3396.87/content/common/user_agent.cc.fedora-user-agent 2018-06-25 16:01:48.092188102 -0400 -+++ chromium-67.0.3396.87/content/common/user_agent.cc 2018-06-25 16:02:42.634878954 -0400 -@@ -141,7 +141,7 @@ std::string getUserAgentPlatform() { - #elif defined(OS_MACOSX) - "Macintosh; "; - #elif defined(USE_X11) || defined(USE_OZONE) -- "X11; "; // strange, but that's what Firefox uses -+ "X11; Fedora; "; // strange, but that's what Firefox uses - #elif defined(OS_ANDROID) - "Linux; "; - #else diff --git a/chromium-67.0.3396.99-py2-bootstrap.patch b/chromium-67.0.3396.99-py2-bootstrap.patch deleted file mode 100644 index b59c84b..0000000 --- a/chromium-67.0.3396.99-py2-bootstrap.patch +++ /dev/null @@ -1,42 +0,0 @@ -diff -up chromium-67.0.3396.99/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py.py2 chromium-67.0.3396.99/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py ---- chromium-67.0.3396.99/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py.py2 2018-07-25 14:14:02.004886479 -0400 -+++ chromium-67.0.3396.99/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py 2018-07-25 14:15:30.167896461 -0400 -@@ -58,7 +58,7 @@ def _MinifyJS(input_js): - - with tempfile.NamedTemporaryFile() as _: - args = [ -- 'python', -+ 'python2', - rjsmin_path - ] - p = subprocess.Popen(args, -@@ -177,7 +177,7 @@ def _MinifyCSS(css_text): - os.path.join(py_vulcanize_path, 'third_party', 'rcssmin', 'rcssmin.py')) - - with tempfile.NamedTemporaryFile() as _: -- rcssmin_args = ['python', rcssmin_path] -+ rcssmin_args = ['python2', rcssmin_path] - p = subprocess.Popen(rcssmin_args, - stdin=subprocess.PIPE, - stdout=subprocess.PIPE, -diff -up chromium-67.0.3396.99/tools/gn/bootstrap/bootstrap.py.py2 chromium-67.0.3396.99/tools/gn/bootstrap/bootstrap.py ---- chromium-67.0.3396.99/tools/gn/bootstrap/bootstrap.py.py2 2018-07-24 16:58:53.372022183 -0400 -+++ chromium-67.0.3396.99/tools/gn/bootstrap/bootstrap.py 2018-07-24 17:00:03.200279816 -0400 -@@ -983,7 +983,7 @@ def build_gn_with_gn(temp_gn, build_dir, - gn_gen_args = options.gn_gen_args or '' - if not options.debug: - gn_gen_args += ' is_debug=false' -- cmd = [temp_gn, 'gen', build_dir, '--args=%s' % gn_gen_args, -+ cmd = [temp_gn, 'gen', '--script-executable=/usr/bin/python2', build_dir, '--args=%s' % gn_gen_args, - "--root="+SRC_ROOT - ] - check_call(cmd) -@@ -997,7 +997,7 @@ def build_gn_with_gn(temp_gn, build_dir, - # build.ninja currently refers back to gn from the temporary directory. - # Regenerate the build files using the gn we just built so that the reference - # gets updated to "./gn". -- cmd = [os.path.join(build_dir, 'gn'), 'gen', build_dir, -+ cmd = [os.path.join(build_dir, 'gn'), 'gen', '--script-executable=/usr/bin/python2', build_dir, - '--args=%s' % gn_gen_args] - check_call(cmd) - diff --git a/chromium-68.0.3440.106-fedora-user-agent.patch b/chromium-68.0.3440.106-fedora-user-agent.patch deleted file mode 100644 index 6c4cb82..0000000 --- a/chromium-68.0.3440.106-fedora-user-agent.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-68.0.3440.106/content/common/user_agent.cc.fedora-user-agent chromium-68.0.3440.106/content/common/user_agent.cc ---- chromium-68.0.3440.106/content/common/user_agent.cc.fedora-user-agent 2018-08-09 03:27:45.965769824 -0400 -+++ chromium-68.0.3440.106/content/common/user_agent.cc 2018-08-09 03:28:34.001586650 -0400 -@@ -135,7 +135,7 @@ std::string getUserAgentPlatform() { - #elif defined(OS_MACOSX) - "Macintosh; "; - #elif defined(USE_X11) || defined(USE_OZONE) -- "X11; "; // strange, but that's what Firefox uses -+ "X11; Fedora; "; // strange, but that's what Firefox uses - #elif defined(OS_ANDROID) - "Linux; "; - #elif defined(OS_POSIX) || defined(OS_FUCHSIA) diff --git a/chromium-68.0.3440.106-fix-build-networking_private.patch b/chromium-68.0.3440.106-fix-build-networking_private.patch deleted file mode 100644 index 787d3db..0000000 --- a/chromium-68.0.3440.106-fix-build-networking_private.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-68.0.3440.106/extensions/browser/api/networking_private/BUILD.gn.fixb chromium-68.0.3440.106/extensions/browser/api/networking_private/BUILD.gn ---- chromium-68.0.3440.106/extensions/browser/api/networking_private/BUILD.gn.fixb 2018-08-09 03:56:36.091622243 -0400 -+++ chromium-68.0.3440.106/extensions/browser/api/networking_private/BUILD.gn 2018-08-09 03:57:03.047001659 -0400 -@@ -61,7 +61,7 @@ source_set("networking_private") { - ] - deps += [ "//chromeos" ] - } else { -- not_needed(default_sources) -+ not_needed([ "default_sources" ]) - sources = [ - "networking_private_stubs.cc", - ] diff --git a/chromium-68.0.3440.106-notest.patch b/chromium-68.0.3440.106-notest.patch deleted file mode 100644 index c20a40e..0000000 --- a/chromium-68.0.3440.106-notest.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-68.0.3440.106/chrome/test/data/webui_test_resources.grd.notest chromium-68.0.3440.106/chrome/test/data/webui_test_resources.grd ---- chromium-68.0.3440.106/chrome/test/data/webui_test_resources.grd.notest 2018-08-09 03:08:33.953029806 -0400 -+++ chromium-68.0.3440.106/chrome/test/data/webui_test_resources.grd 2018-08-09 03:09:40.264567818 -0400 -@@ -8,7 +8,6 @@ - - - -- - - - diff --git a/chromium-68.0.3440.84-cors-string.patch b/chromium-68.0.3440.84-cors-string.patch deleted file mode 100644 index b724cd4..0000000 --- a/chromium-68.0.3440.84-cors-string.patch +++ /dev/null @@ -1,51 +0,0 @@ -From 01d891fa0790950549c7bedb34edf869827a372e Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Thu, 31 May 2018 17:03:37 +0000 -Subject: [PATCH] CORS legacy: add missing string include -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -The cors_legacy.h file includes declarations using std::string, but -it is not declared due to missing #include . - -Also drop unneeded declarations in .cpp file. - -Change-Id: I00df799f84a6c3530c2f12f1e52d24c7d9bd6bfd -Reviewed-on: https://chromium-review.googlesource.com/1080707 -Reviewed-by: Tom Sepez -Commit-Queue: José Dapena Paz -Cr-Commit-Position: refs/heads/master@{#563282} ---- - services/network/public/cpp/cors/cors_legacy.cc | 2 -- - services/network/public/cpp/cors/cors_legacy.h | 1 + - 2 files changed, 1 insertion(+), 2 deletions(-) - -diff --git a/services/network/public/cpp/cors/cors_legacy.cc b/services/network/public/cpp/cors/cors_legacy.cc -index 8f32ac3be64e..f01af63619b5 100644 ---- a/services/network/public/cpp/cors/cors_legacy.cc -+++ b/services/network/public/cpp/cors/cors_legacy.cc -@@ -5,8 +5,6 @@ - #include "services/network/public/cpp/cors/cors_legacy.h" - - #include --#include --#include - - #include "url/gurl.h" - #include "url/url_util.h" -diff --git a/services/network/public/cpp/cors/cors_legacy.h b/services/network/public/cpp/cors/cors_legacy.h -index d2cdf026ca3a..dc9295a92c47 100644 ---- a/services/network/public/cpp/cors/cors_legacy.h -+++ b/services/network/public/cpp/cors/cors_legacy.h -@@ -5,6 +5,7 @@ - #ifndef SERVICES_NETWORK_PUBLIC_CPP_CORS_CORS_LEGACY_H_ - #define SERVICES_NETWORK_PUBLIC_CPP_CORS_CORS_LEGACY_H_ - -+#include - #include - - #include "base/component_export.h" --- -2.17.1 - diff --git a/chromium-68.0.3440.84-libjpeg.patch b/chromium-68.0.3440.84-libjpeg.patch deleted file mode 100644 index 5354281..0000000 --- a/chromium-68.0.3440.84-libjpeg.patch +++ /dev/null @@ -1,62 +0,0 @@ -From c6b0194f7a4d9f494b2d51f46d2c332e2e5f4050 Mon Sep 17 00:00:00 2001 -From: Daniel Bratell -Date: Mon, 28 May 2018 13:13:01 +0000 -Subject: [PATCH] Use the same libjpeg in all of blink/platform - -The normal libjpeg renames some symbols with macros so if its -headers are included together with libjpeg-turbo's headers -in the same translation unit, there will be an inconsistent -renaming of libjpeg symbols. This happened in some extreme -jumbo configuration and resulted in confising linker errors. - -This patch changes an include so that jpeglib.h becomes included -the same way everywhere. - -Change-Id: I7f122d0919d58371bb40dc0097a766b857b9815e -Reviewed-on: https://chromium-review.googlesource.com/1073423 -Reviewed-by: Kentaro Hara -Commit-Queue: Daniel Bratell -Cr-Commit-Position: refs/heads/master@{#562243} ---- - .../renderer/platform/image-encoders/image_encoder.cc | 11 +++++++++++ - .../renderer/platform/image-encoders/image_encoder.h | 2 -- - 2 files changed, 11 insertions(+), 2 deletions(-) - -diff --git a/third_party/blink/renderer/platform/image-encoders/image_encoder.cc b/third_party/blink/renderer/platform/image-encoders/image_encoder.cc -index 0c7f14c7c0e4..4c450f5d6783 100644 ---- a/third_party/blink/renderer/platform/image-encoders/image_encoder.cc -+++ b/third_party/blink/renderer/platform/image-encoders/image_encoder.cc -@@ -4,6 +4,17 @@ - - #include "third_party/blink/renderer/platform/image-encoders/image_encoder.h" - -+#include "build/build_config.h" -+ -+#if defined(OS_WIN) -+#include // Included before jpeglib.h because of INT32 clash -+#endif // OS_WIN -+#include // Needed by jpeglib.h -+ -+#include "jpeglib.h" // for JPEG_MAX_DIMENSION -+ -+#include "third_party/libwebp/src/webp/encode.h" // for WEBP_MAX_DIMENSION -+ - namespace blink { - - bool ImageEncoder::Encode(Vector* dst, -diff --git a/third_party/blink/renderer/platform/image-encoders/image_encoder.h b/third_party/blink/renderer/platform/image-encoders/image_encoder.h -index 0d1460f34827..40306097d507 100644 ---- a/third_party/blink/renderer/platform/image-encoders/image_encoder.h -+++ b/third_party/blink/renderer/platform/image-encoders/image_encoder.h -@@ -7,8 +7,6 @@ - - #include "third_party/blink/renderer/platform/platform_export.h" - #include "third_party/blink/renderer/platform/wtf/vector.h" --#include "third_party/libjpeg/jpeglib.h" // for JPEG_MAX_DIMENSION --#include "third_party/libwebp/src/webp/encode.h" // for WEBP_MAX_DIMENSION - #include "third_party/skia/include/core/SkStream.h" - #include "third_party/skia/include/encode/SkJpegEncoder.h" - #include "third_party/skia/include/encode/SkPngEncoder.h" --- -2.17.1 - diff --git a/chromium-68.0.3440.84-libwebp-shim.patch b/chromium-68.0.3440.84-libwebp-shim.patch deleted file mode 100644 index cb387a4..0000000 --- a/chromium-68.0.3440.84-libwebp-shim.patch +++ /dev/null @@ -1,43 +0,0 @@ -diff --git a/build/linux/unbundle/libwebp.gn b/build/linux/unbundle/libwebp.gn -index ab92adecf400..12574d87be58 100644 ---- a/build/linux/unbundle/libwebp.gn -+++ b/build/linux/unbundle/libwebp.gn -@@ -2,12 +2,34 @@ - # 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_libwebp") { -+ packages = [ -+ "libwebp", -+ "libwebpdemux", -+ "libwebpmux", -+ ] -+} -+ -+shim_headers("libwebp_shim") { -+ root_path = "src" -+ headers = [ -+ "webp/decode.h", -+ "webp/demux.h", -+ "webp/encode.h", -+ "webp/mux.h", -+ "webp/mux_types.h", -+ "webp/types.h", -+ ] -+} -+ - source_set("libwebp_webp") { -- libs = [ -- "webp", -- "webpdemux", -- "webpmux", -+ deps = [ -+ ":libwebp_shim", - ] -+ public_configs = [ ":system_libwebp" ] - } - - group("libwebp") { diff --git a/chromium-68.0.3440.84-move-unique-ptr.patch b/chromium-68.0.3440.84-move-unique-ptr.patch deleted file mode 100644 index 2942a8f..0000000 --- a/chromium-68.0.3440.84-move-unique-ptr.patch +++ /dev/null @@ -1,65 +0,0 @@ -From 56cb5f7da1025f6db869e840ed34d3b98b9ab899 Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Tue, 29 May 2018 16:04:14 +0000 -Subject: [PATCH] GCC: do not std::move unique ptr of forward declared UrlIndex -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -GCC fails to resolve the size of UrlIndex, needed -for moving a std::unique_ptr of UrlIndex. This is because -moved is done on a forward-declared UrlIndex. - -To avoid the problem, move the call to std::move to the .cc -file so the full declaration is available. - -Build error: -../../buildtools/third_party/libc++/trunk/include/memory: In instantiation of ‘void std::__1::default_delete<_Tp>::operator()(_Tp*) const [with _Tp = bookmarks::UrlIndex]’: -../../buildtools/third_party/libc++/trunk/include/memory:2634:22: required from ‘void std::__1::unique_ptr<_Tp, _Dp>::reset(std::__1::unique_ptr<_Tp, _Dp>::pointer) [with _Tp = bookmarks::UrlIndex; _Dp = std::__1::default_delete; std::__1::unique_ptr<_Tp, _Dp>::pointer = bookmarks::UrlIndex*]’ -../../buildtools/third_party/libc++/trunk/include/memory:2588:24: required from ‘std::__1::unique_ptr<_Tp, _Dp>::~unique_ptr() [with _Tp = bookmarks::UrlIndex; _Dp = std::__1::default_delete]’ -../../components/bookmarks/browser/bookmark_storage.h:107:76: required from here -../../buildtools/third_party/libc++/trunk/include/memory:2317:25: error: invalid application of ‘sizeof’ to incomplete type ‘bookmarks::UrlIndex’ - static_assert(sizeof(_Tp) > 0, - -Bug: 819294 -Change-Id: I793a807c28e797aaa2e31d9c8b7e09fb6ca6b9e7 -Reviewed-on: https://chromium-review.googlesource.com/1071648 -Commit-Queue: Scott Violet -Reviewed-by: Scott Violet -Cr-Commit-Position: refs/heads/master@{#562446} ---- - components/bookmarks/browser/bookmark_storage.cc | 4 ++++ - components/bookmarks/browser/bookmark_storage.h | 2 +- - 2 files changed, 5 insertions(+), 1 deletion(-) - -diff --git a/components/bookmarks/browser/bookmark_storage.cc b/components/bookmarks/browser/bookmark_storage.cc -index 1633ba1df2a4..3ae0c62292e7 100644 ---- a/components/bookmarks/browser/bookmark_storage.cc -+++ b/components/bookmarks/browser/bookmark_storage.cc -@@ -158,6 +158,10 @@ void BookmarkLoadDetails::CreateUrlIndex() { - url_index_ = std::make_unique(std::move(root_node_)); - } - -+std::unique_ptr BookmarkLoadDetails::owned_url_index() { -+ return std::move(url_index_); -+} -+ - BookmarkPermanentNode* BookmarkLoadDetails::CreatePermanentNode( - BookmarkClient* client, - BookmarkNode::Type type) { -diff --git a/components/bookmarks/browser/bookmark_storage.h b/components/bookmarks/browser/bookmark_storage.h -index 08df5bb65d83..0a1b1a1b65b9 100644 ---- a/components/bookmarks/browser/bookmark_storage.h -+++ b/components/bookmarks/browser/bookmark_storage.h -@@ -104,7 +104,7 @@ class BookmarkLoadDetails { - bool ids_reassigned() const { return ids_reassigned_; } - - void CreateUrlIndex(); -- std::unique_ptr owned_url_index() { return std::move(url_index_); } -+ std::unique_ptr owned_url_index(); - - private: - // Creates one of the possible permanent nodes (bookmark bar node, other node --- -2.17.1 - diff --git a/chromium-69.0.3497.81-gcc8-alignof.patch b/chromium-69.0.3497.81-gcc8-alignof.patch deleted file mode 100644 index 234b391..0000000 --- a/chromium-69.0.3497.81-gcc8-alignof.patch +++ /dev/null @@ -1,18 +0,0 @@ -diff -up chromium-69.0.3497.81/mojo/public/c/system/macros.h.gcc8-alignof chromium-69.0.3497.81/mojo/public/c/system/macros.h ---- chromium-69.0.3497.81/mojo/public/c/system/macros.h.gcc8-alignof 2018-09-06 10:11:54.336432699 -0400 -+++ chromium-69.0.3497.81/mojo/public/c/system/macros.h 2018-09-06 10:13:56.555727572 -0400 -@@ -27,7 +27,13 @@ - (sizeof(void*) == 4 ? 32 : 0) - - // Like the C++11 |alignof| operator. --#if __cplusplus >= 201103L -+#if defined(__GNUC__) && __GNUC__ >= 8 -+// GCC 8 has changed the alignof operator to return the minimal alignment -+// required by the target ABI, instead of the preferred alignment. -+// This means that on 32-bit x86, it will return 4 instead of 8. -+// Use __alignof__ instead to avoid this. -+#define MOJO_ALIGNOF(type) __alignof__(type) -+#elif __cplusplus >= 201103L - #define MOJO_ALIGNOF(type) alignof(type) - #elif defined(__GNUC__) - #define MOJO_ALIGNOF(type) __alignof__(type) diff --git a/chromium-69.0.3497.81-norar.patch b/chromium-69.0.3497.81-norar.patch deleted file mode 100644 index 9545b60..0000000 --- a/chromium-69.0.3497.81-norar.patch +++ /dev/null @@ -1,79 +0,0 @@ -diff -up chromium-69.0.3497.81/chrome/common/safe_browsing/BUILD.gn.nounrar chromium-69.0.3497.81/chrome/common/safe_browsing/BUILD.gn ---- chromium-69.0.3497.81/chrome/common/safe_browsing/BUILD.gn.nounrar 2018-09-06 13:29:47.114511569 -0400 -+++ chromium-69.0.3497.81/chrome/common/safe_browsing/BUILD.gn 2018-09-06 13:29:47.120511452 -0400 -@@ -55,40 +55,6 @@ if (safe_browsing_mode == 1) { - "//components/safe_browsing:csd_proto", - ] - } -- -- source_set("rar_analyzer") { -- sources = [ -- "rar_analyzer.cc", -- "rar_analyzer.h", -- ] -- -- deps = [ -- ":archive_analyzer_results", -- ":download_protection_util", -- ":file_type_policies", -- "//base", -- "//base:i18n", -- "//third_party/unrar:unrar", -- ] -- -- defines = [ -- "_FILE_OFFSET_BITS=64", -- "LARGEFILE_SOURCE", -- "RAR_SMP", -- "SILENT", -- -- # The following is set to disable certain macro definitions in the unrar -- # source code. -- "CHROMIUM_UNRAR", -- -- # Disables exceptions in unrar, replaces them with process termination. -- "UNRAR_NO_EXCEPTIONS", -- ] -- -- public_deps = [ -- "//components/safe_browsing:csd_proto", -- ] -- } - } - - source_set("safe_browsing") { -@@ -121,7 +87,6 @@ source_set("safe_browsing") { - deps += [ - ":archive_analyzer_results", - ":download_protection_util", -- ":rar_analyzer", - "//components/safe_browsing:features", - ] - -diff -up chromium-69.0.3497.81/chrome/common/safe_browsing/DEPS.nounrar chromium-69.0.3497.81/chrome/common/safe_browsing/DEPS ---- chromium-69.0.3497.81/chrome/common/safe_browsing/DEPS.nounrar 2018-09-06 13:29:47.119511472 -0400 -+++ chromium-69.0.3497.81/chrome/common/safe_browsing/DEPS 2018-09-06 13:29:47.116511530 -0400 -@@ -1,6 +1,5 @@ - include_rules = [ - "+components/safe_browsing", - "+third_party/protobuf", -- "+third_party/unrar", - "+third_party/zlib", - ] -diff -up chromium-69.0.3497.81/chrome/services/file_util/safe_archive_analyzer.cc.nounrar chromium-69.0.3497.81/chrome/services/file_util/safe_archive_analyzer.cc ---- chromium-69.0.3497.81/chrome/services/file_util/safe_archive_analyzer.cc.nounrar 2018-09-07 10:10:42.286041744 -0400 -+++ chromium-69.0.3497.81/chrome/services/file_util/safe_archive_analyzer.cc 2018-09-07 10:11:14.934308285 -0400 -@@ -47,9 +47,13 @@ void SafeArchiveAnalyzer::AnalyzeDmgFile - - void SafeArchiveAnalyzer::AnalyzeRarFile(base::File rar_file, - AnalyzeRarFileCallback callback) { -+#if 0 - DCHECK(rar_file.IsValid()); - - safe_browsing::ArchiveAnalyzerResults results; - safe_browsing::rar_analyzer::AnalyzeRarFile(std::move(rar_file), &results); - std::move(callback).Run(results); -+#else -+ NOTREACHED(); -+#endif - } diff --git a/chromium-69.0.3497.81-py2-bootstrap.patch b/chromium-69.0.3497.81-py2-bootstrap.patch deleted file mode 100644 index 8a5db71..0000000 --- a/chromium-69.0.3497.81-py2-bootstrap.patch +++ /dev/null @@ -1,33 +0,0 @@ -diff -up chromium-69.0.3497.81/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py.py2 chromium-69.0.3497.81/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py ---- chromium-69.0.3497.81/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py.py2 2018-09-06 10:45:17.919774145 -0400 -+++ chromium-69.0.3497.81/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py 2018-09-06 10:45:17.914774254 -0400 -@@ -58,7 +58,7 @@ def _MinifyJS(input_js): - - with tempfile.NamedTemporaryFile() as _: - args = [ -- 'python', -+ 'python2', - rjsmin_path - ] - p = subprocess.Popen(args, -@@ -177,7 +177,7 @@ def _MinifyCSS(css_text): - os.path.join(py_vulcanize_path, 'third_party', 'rcssmin', 'rcssmin.py')) - - with tempfile.NamedTemporaryFile() as _: -- rcssmin_args = ['python', rcssmin_path] -+ rcssmin_args = ['python2', rcssmin_path] - p = subprocess.Popen(rcssmin_args, - stdin=subprocess.PIPE, - stdout=subprocess.PIPE, -diff -up chromium-69.0.3497.81/tools/gn/bootstrap/bootstrap.py.py2 chromium-69.0.3497.81/tools/gn/bootstrap/bootstrap.py ---- chromium-69.0.3497.81/tools/gn/bootstrap/bootstrap.py.py2 2018-09-06 10:44:42.225550561 -0400 -+++ chromium-69.0.3497.81/tools/gn/bootstrap/bootstrap.py 2018-09-06 13:06:24.251636231 -0400 -@@ -87,7 +87,7 @@ def main(argv): - if not options.debug: - gn_gen_args += ' is_debug=false' - subprocess.check_call([ -- gn_path, 'gen', out_dir, -+ gn_path, 'gen', out_dir, ' --script-executable=/usr/bin/python2', - '--args=%s' % gn_gen_args, "--root=" + SRC_ROOT - ]) - diff --git a/chromium-69.0.3497.81-widevine-r2.patch b/chromium-69.0.3497.81-widevine-r2.patch deleted file mode 100644 index a66a0fb..0000000 --- a/chromium-69.0.3497.81-widevine-r2.patch +++ /dev/null @@ -1,23 +0,0 @@ -diff -up chromium-69.0.3497.81/third_party/widevine/cdm/BUILD.gn.wvhack chromium-69.0.3497.81/third_party/widevine/cdm/BUILD.gn ---- chromium-69.0.3497.81/third_party/widevine/cdm/BUILD.gn.wvhack 2018-09-06 13:28:22.655272555 -0400 -+++ chromium-69.0.3497.81/third_party/widevine/cdm/BUILD.gn 2018-09-06 13:28:22.655272555 -0400 -@@ -11,7 +11,7 @@ import("//third_party/widevine/cdm/widev - # Internal Cast builds set enable_widevine=true to bring in Widevine support. - # TODO(xhwang): Support component updated CDM on other platforms and remove this - # assert. --assert(!enable_widevine || is_win || is_mac || is_chromecast, -+assert(!enable_widevine || is_win || is_mac || is_chromecast || is_linux, - "Component updated CDM only supported on Windows and Mac for now.") - - widevine_arch = current_cpu -diff -up chromium-69.0.3497.81/third_party/widevine/cdm/stub/widevine_cdm_version.h.wvhack chromium-69.0.3497.81/third_party/widevine/cdm/stub/widevine_cdm_version.h ---- chromium-69.0.3497.81/third_party/widevine/cdm/stub/widevine_cdm_version.h.wvhack 2018-09-06 13:28:22.654272577 -0400 -+++ chromium-69.0.3497.81/third_party/widevine/cdm/stub/widevine_cdm_version.h 2018-09-06 13:28:22.654272577 -0400 -@@ -10,6 +10,7 @@ - - #include "third_party/widevine/cdm/widevine_cdm_common.h" - -+#define WIDEVINE_CDM_VERSION_STRING "unknown" - #define WIDEVINE_CDM_AVAILABLE - - #endif // WIDEVINE_CDM_VERSION_H_ diff --git a/chromium-70.0.3538.110-remove-sysroot-options.patch b/chromium-70.0.3538.110-remove-sysroot-options.patch deleted file mode 100644 index 9eb99d1..0000000 --- a/chromium-70.0.3538.110-remove-sysroot-options.patch +++ /dev/null @@ -1,23 +0,0 @@ -diff -up chromium-70.0.3538.110/tools/gn/bootstrap/bootstrap.py.sysrootfix chromium-70.0.3538.110/tools/gn/bootstrap/bootstrap.py ---- chromium-70.0.3538.110/tools/gn/bootstrap/bootstrap.py.sysrootfix 2018-11-26 13:40:19.324713204 -0500 -+++ chromium-70.0.3538.110/tools/gn/bootstrap/bootstrap.py 2018-11-26 13:40:43.199180888 -0500 -@@ -46,10 +46,6 @@ def main(argv): - '--build-path', - help='The directory in which to build gn, ' - 'relative to the src directory. (eg. out/Release)') -- parser.add_option( -- '--with-sysroot', -- action='store_true', -- help='Download and build with the Debian sysroot.') - parser.add_option('-v', '--verbose', help='ignored') - options, args = parser.parse_args(argv) - if args: -@@ -71,8 +67,6 @@ def main(argv): - '--no-last-commit-position', - '--out-path=' + gn_build_dir, - ] -- if not options.with_sysroot: -- cmd.append('--no-sysroot') - if options.debug: - cmd.append('--debug') - subprocess.check_call(cmd) diff --git a/chromium-70.0.3538.77-harfbuzz2-fix.patch b/chromium-70.0.3538.77-harfbuzz2-fix.patch deleted file mode 100644 index 2d5602d..0000000 --- a/chromium-70.0.3538.77-harfbuzz2-fix.patch +++ /dev/null @@ -1,80 +0,0 @@ -From 7ae38170a117e909bb28e1470842b68de3501197 Mon Sep 17 00:00:00 2001 -From: Mike Gilbert -Date: Sun, 21 Oct 2018 10:06:53 -0400 -Subject: [PATCH] blink: add 'const' modifier for harfbuzz hb_codepoint_t - pointers - -This resolves a build failure against harfbuzz 2.0. - -Based on a patch by Alexandre Fierreira. - -Bug: https://bugs.gentoo.org/669034 ---- - .../renderer/platform/fonts/shaping/harfbuzz_face.cc | 2 +- - .../renderer/platform/fonts/skia/skia_text_metrics.cc | 9 +++++++-- - .../renderer/platform/fonts/skia/skia_text_metrics.h | 2 +- - 3 files changed, 9 insertions(+), 4 deletions(-) - -diff --git a/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face.cc b/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face.cc -index 8e7d91ca371f..e279a5876cb3 100644 ---- a/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face.cc -+++ b/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face.cc -@@ -139,7 +139,7 @@ static hb_position_t HarfBuzzGetGlyphHorizontalAdvance(hb_font_t* hb_font, - static void HarfBuzzGetGlyphHorizontalAdvances(hb_font_t* font, - void* font_data, - unsigned count, -- hb_codepoint_t* first_glyph, -+ const hb_codepoint_t* first_glyph, - unsigned int glyph_stride, - hb_position_t* first_advance, - unsigned int advance_stride, -diff --git a/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.cc b/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.cc -index 77ec6209fab9..9f9070921448 100644 ---- a/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.cc -+++ b/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.cc -@@ -18,6 +18,11 @@ T* advance_by_byte_size(T* p, unsigned byte_size) { - return reinterpret_cast(reinterpret_cast(p) + byte_size); - } - -+template -+T* advance_by_byte_size_const(T* p, unsigned byte_size) { -+ return reinterpret_cast(reinterpret_cast(p) + byte_size); -+} -+ - } // namespace - - SkiaTextMetrics::SkiaTextMetrics(const SkPaint* paint) : paint_(paint) { -@@ -39,7 +44,7 @@ void SkiaTextMetrics::GetGlyphWidthForHarfBuzz(hb_codepoint_t codepoint, - } - - void SkiaTextMetrics::GetGlyphWidthForHarfBuzz(unsigned count, -- hb_codepoint_t* glyphs, -+ const hb_codepoint_t* glyphs, - unsigned glyph_stride, - hb_position_t* advances, - unsigned advance_stride) { -@@ -48,7 +53,7 @@ void SkiaTextMetrics::GetGlyphWidthForHarfBuzz(unsigned count, - // array that copy them to a regular array. - Vector glyph_array(count); - for (unsigned i = 0; i < count; -- i++, glyphs = advance_by_byte_size(glyphs, glyph_stride)) { -+ i++, glyphs = advance_by_byte_size_const(glyphs, glyph_stride)) { - glyph_array[i] = *glyphs; - } - Vector sk_width_array(count); -diff --git a/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.h b/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.h -index 787d8af0375a..3bc4407c641b 100644 ---- a/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.h -+++ b/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.h -@@ -19,7 +19,7 @@ class SkiaTextMetrics final { - - void GetGlyphWidthForHarfBuzz(hb_codepoint_t, hb_position_t* width); - void GetGlyphWidthForHarfBuzz(unsigned count, -- hb_codepoint_t* first_glyph, -+ const hb_codepoint_t* first_glyph, - unsigned glyph_stride, - hb_position_t* first_advance, - unsigned advance_stride); --- -2.19.1 - diff --git a/chromium-71-gcc-0.patch b/chromium-71-gcc-0.patch deleted file mode 100644 index 711b827..0000000 --- a/chromium-71-gcc-0.patch +++ /dev/null @@ -1,57 +0,0 @@ -From 65be571f6ac2f7942b4df9e50b24da517f829eec Mon Sep 17 00:00:00 2001 -From: Raphael Kubo da Costa -Date: Mon, 15 Oct 2018 20:26:10 +0000 -Subject: [PATCH] google_util: Explicitly use std::initializer_list with - base::NoDestructor -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Follow-up to ac53c5c53 ("Remove CR_DEFINE_STATIC_LOCAL from /components"). -Due to https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84849, having -base::NoDestructor> and passing an initializer list of Us does not -work if this is not done explicitly, as GCC incorrectly fails to determine -which constructor overload to use: - - ../../components/google/core/common/google_util.cc: In function ‘bool google_util::{anonymous}::IsCanonicalHostGoogleHostname(base::StringPiece, google_util::SubdomainPermission)’: - ../../components/google/core/common/google_util.cc:120:24: error: call of overloaded ‘NoDestructor()’ is ambiguous - {GOOGLE_TLD_LIST}); - -See also: https://chromium-review.googlesource.com/c/chromium/src/+/1170905 - -Bug: 819294 -Change-Id: Ie1490b6646d7998d636c485769caabf56c1cf44c -Reviewed-on: https://chromium-review.googlesource.com/c/1275854 -Reviewed-by: Peter Kasting -Commit-Queue: Raphael Kubo da Costa (CET) -Cr-Commit-Position: refs/heads/master@{#599733} ---- - components/google/core/common/google_util.cc | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - -diff --git a/components/google/core/common/google_util.cc b/components/google/core/common/google_util.cc -index a44c84393820..7733848a0443 100644 ---- a/components/google/core/common/google_util.cc -+++ b/components/google/core/common/google_util.cc -@@ -117,7 +117,7 @@ bool IsCanonicalHostGoogleHostname(base::StringPiece canonical_host, - StripTrailingDot(&tld); - - static base::NoDestructor> google_tlds( -- {GOOGLE_TLD_LIST}); -+ std::initializer_list({GOOGLE_TLD_LIST})); - return base::ContainsKey(*google_tlds, tld.as_string()); - } - -@@ -132,7 +132,8 @@ bool IsGoogleSearchSubdomainUrl(const GURL& url) { - StripTrailingDot(&host); - - static base::NoDestructor> google_subdomains( -- {"ipv4.google.com", "ipv6.google.com"}); -+ std::initializer_list( -+ {"ipv4.google.com", "ipv6.google.com"})); - - return base::ContainsKey(*google_subdomains, host.as_string()); - } --- -2.19.1 - diff --git a/chromium-71.0.3578.98-el7-fix-noexcept.patch b/chromium-71.0.3578.98-el7-fix-noexcept.patch deleted file mode 100644 index 234f0a9..0000000 --- a/chromium-71.0.3578.98-el7-fix-noexcept.patch +++ /dev/null @@ -1,48 +0,0 @@ -diff -up chromium-71.0.3578.98/chrome/common/media_router/media_sink.cc.fix-noexcept chromium-71.0.3578.98/chrome/common/media_router/media_sink.cc ---- chromium-71.0.3578.98/chrome/common/media_router/media_sink.cc.fix-noexcept 2019-01-02 14:44:40.449801789 -0500 -+++ chromium-71.0.3578.98/chrome/common/media_router/media_sink.cc 2019-01-02 14:44:54.167481936 -0500 -@@ -24,7 +24,7 @@ MediaSink::MediaSink() = default; - MediaSink::~MediaSink() = default; - - MediaSink& MediaSink::operator=(const MediaSink& other) = default; --MediaSink& MediaSink::operator=(MediaSink&& other) noexcept = default; -+MediaSink& MediaSink::operator=(MediaSink&& other) = default; - - bool MediaSink::Equals(const MediaSink& other) const { - return sink_id_ == other.sink_id_; -diff -up chromium-71.0.3578.98/components/policy/core/common/policy_map.cc.fix-noexcept chromium-71.0.3578.98/components/policy/core/common/policy_map.cc ---- chromium-71.0.3578.98/components/policy/core/common/policy_map.cc.fix-noexcept 2019-01-02 12:06:10.867313533 -0500 -+++ chromium-71.0.3578.98/components/policy/core/common/policy_map.cc 2019-01-02 12:06:27.544980078 -0500 -@@ -18,7 +18,7 @@ PolicyMap::Entry::Entry() = default; - PolicyMap::Entry::~Entry() = default; - - PolicyMap::Entry::Entry(Entry&&) noexcept = default; --PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) noexcept = default; -+PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) = default; - - PolicyMap::Entry PolicyMap::Entry::DeepCopy() const { - Entry copy; -diff -up chromium-71.0.3578.98/components/signin/core/browser/account_info.cc.fix-noexcept chromium-71.0.3578.98/components/signin/core/browser/account_info.cc ---- chromium-71.0.3578.98/components/signin/core/browser/account_info.cc.fix-noexcept 2019-01-02 10:57:29.194710662 -0500 -+++ chromium-71.0.3578.98/components/signin/core/browser/account_info.cc 2019-01-02 10:58:57.829965474 -0500 -@@ -32,7 +32,7 @@ AccountInfo::AccountInfo(AccountInfo&& o - - AccountInfo& AccountInfo::operator=(const AccountInfo& other) = default; - --AccountInfo& AccountInfo::operator=(AccountInfo&& other) noexcept = default; -+AccountInfo& AccountInfo::operator=(AccountInfo&& other) = default; - - bool AccountInfo::IsEmpty() const { - return account_id.empty() && email.empty() && gaia.empty() && -diff -up chromium-71.0.3578.98/gpu/config/gpu_info.cc.fix-noexcept chromium-71.0.3578.98/gpu/config/gpu_info.cc ---- chromium-71.0.3578.98/gpu/config/gpu_info.cc.fix-noexcept 2018-12-20 09:50:03.320449807 -0500 -+++ chromium-71.0.3578.98/gpu/config/gpu_info.cc 2018-12-20 09:50:25.768849091 -0500 -@@ -116,7 +116,7 @@ GPUInfo::GPUDevice& GPUInfo::GPUDevice:: - const GPUInfo::GPUDevice& other) = default; - - GPUInfo::GPUDevice& GPUInfo::GPUDevice::operator=( -- GPUInfo::GPUDevice&& other) noexcept = default; -+ GPUInfo::GPUDevice&& other) = default; - - GPUInfo::GPUInfo() - : optimus(false), diff --git a/chromium-71.0.3578.98-norar.patch b/chromium-71.0.3578.98-norar.patch deleted file mode 100644 index 1259088..0000000 --- a/chromium-71.0.3578.98-norar.patch +++ /dev/null @@ -1,79 +0,0 @@ -diff -up chromium-71.0.3578.98/chrome/common/safe_browsing/BUILD.gn.nounrar chromium-71.0.3578.98/chrome/common/safe_browsing/BUILD.gn ---- chromium-71.0.3578.98/chrome/common/safe_browsing/BUILD.gn.nounrar 2018-12-12 16:56:04.000000000 -0500 -+++ chromium-71.0.3578.98/chrome/common/safe_browsing/BUILD.gn 2018-12-14 11:44:52.172805635 -0500 -@@ -56,40 +56,6 @@ if (safe_browsing_mode == 1) { - ] - } - -- source_set("rar_analyzer") { -- sources = [ -- "rar_analyzer.cc", -- "rar_analyzer.h", -- ] -- -- deps = [ -- ":archive_analyzer_results", -- ":download_protection_util", -- ":file_type_policies", -- "//base", -- "//base:i18n", -- "//third_party/unrar:unrar", -- ] -- -- defines = [ -- "_FILE_OFFSET_BITS=64", -- "LARGEFILE_SOURCE", -- "RAR_SMP", -- "SILENT", -- -- # The following is set to disable certain macro definitions in the unrar -- # source code. -- "CHROMIUM_UNRAR", -- -- # Disables exceptions in unrar, replaces them with process termination. -- "UNRAR_NO_EXCEPTIONS", -- ] -- -- public_deps = [ -- "//components/safe_browsing:csd_proto", -- ] -- } -- - source_set("disk_image_type_sniffer_mac") { - sources = [ - "disk_image_type_sniffer_mac.cc", -@@ -136,7 +102,6 @@ source_set("safe_browsing") { - deps += [ - ":archive_analyzer_results", - ":download_protection_util", -- ":rar_analyzer", - "//components/safe_browsing:features", - ] - -diff -up chromium-71.0.3578.98/chrome/common/safe_browsing/DEPS.nounrar chromium-71.0.3578.98/chrome/common/safe_browsing/DEPS ---- chromium-71.0.3578.98/chrome/common/safe_browsing/DEPS.nounrar 2018-12-12 16:56:04.000000000 -0500 -+++ chromium-71.0.3578.98/chrome/common/safe_browsing/DEPS 2018-12-14 11:23:58.628142952 -0500 -@@ -1,6 +1,5 @@ - include_rules = [ - "+components/safe_browsing", - "+third_party/protobuf", -- "+third_party/unrar", - "+third_party/zlib", - ] -diff -up chromium-71.0.3578.98/chrome/services/file_util/safe_archive_analyzer.cc.nounrar chromium-71.0.3578.98/chrome/services/file_util/safe_archive_analyzer.cc ---- chromium-71.0.3578.98/chrome/services/file_util/safe_archive_analyzer.cc.nounrar 2018-12-12 16:56:04.000000000 -0500 -+++ chromium-71.0.3578.98/chrome/services/file_util/safe_archive_analyzer.cc 2018-12-14 11:23:58.628142952 -0500 -@@ -47,9 +47,13 @@ void SafeArchiveAnalyzer::AnalyzeDmgFile - - void SafeArchiveAnalyzer::AnalyzeRarFile(base::File rar_file, - AnalyzeRarFileCallback callback) { -+#if 0 - DCHECK(rar_file.IsValid()); - - safe_browsing::ArchiveAnalyzerResults results; - safe_browsing::rar_analyzer::AnalyzeRarFile(std::move(rar_file), &results); - std::move(callback).Run(results); -+#else -+ NOTREACHED(); -+#endif - } diff --git a/chromium-71.0.3578.98-remove-sysroot-options.patch b/chromium-71.0.3578.98-remove-sysroot-options.patch deleted file mode 100644 index a9af73b..0000000 --- a/chromium-71.0.3578.98-remove-sysroot-options.patch +++ /dev/null @@ -1,23 +0,0 @@ -diff -up chromium-71.0.3578.98/tools/gn/bootstrap/bootstrap.py.sysrootfix chromium-71.0.3578.98/tools/gn/bootstrap/bootstrap.py ---- chromium-71.0.3578.98/tools/gn/bootstrap/bootstrap.py.sysrootfix 2018-12-14 12:52:04.144860836 -0500 -+++ chromium-71.0.3578.98/tools/gn/bootstrap/bootstrap.py 2018-12-14 12:57:54.791539599 -0500 -@@ -46,10 +46,6 @@ def main(argv): - '--build-path', - help='The directory in which to build gn, ' - 'relative to the src directory. (eg. out/Release)') -- parser.add_option( -- '--with-sysroot', -- action='store_true', -- help='Download and build with the Debian sysroot.') - parser.add_option('-v', '--verbose', help='ignored') - parser.add_option( - '--skip-generate-buildfiles', -@@ -76,8 +72,6 @@ def main(argv): - '--no-last-commit-position', - '--out-path=' + gn_build_dir, - ] -- if not options.with_sysroot: -- cmd.append('--no-sysroot') - if options.debug: - cmd.append('--debug') - subprocess.check_call(cmd) diff --git a/chromium-71.0.3578.98-vaapi-libva1-compatibility.patch b/chromium-71.0.3578.98-vaapi-libva1-compatibility.patch deleted file mode 100644 index 5b51e3d..0000000 --- a/chromium-71.0.3578.98-vaapi-libva1-compatibility.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -up chromium-71.0.3578.98/media/gpu/vaapi/vaapi_jpeg_decode_accelerator.cc.va1compat chromium-71.0.3578.98/media/gpu/vaapi/vaapi_jpeg_decode_accelerator.cc ---- chromium-71.0.3578.98/media/gpu/vaapi/vaapi_jpeg_decode_accelerator.cc.va1compat 2018-12-17 15:07:48.158717055 -0500 -+++ chromium-71.0.3578.98/media/gpu/vaapi/vaapi_jpeg_decode_accelerator.cc 2018-12-17 15:09:49.780316983 -0500 -@@ -38,6 +38,10 @@ enum VAJDADecoderFailure { - VAJDA_DECODER_FAILURES_MAX, - }; - -+#ifndef VA_FOURCC_I420 -+#define VA_FOURCC_I420 VA_FOURCC('I', '4', '2', '0') -+#endif -+ - static void ReportToUMA(VAJDADecoderFailure failure) { - UMA_HISTOGRAM_ENUMERATION("Media.VAJDA.DecoderFailure", failure, - VAJDA_DECODER_FAILURES_MAX + 1); diff --git a/chromium-72.0.3626.121-fix-va-check.patch b/chromium-72.0.3626.121-fix-va-check.patch deleted file mode 100644 index aa0eb71..0000000 --- a/chromium-72.0.3626.121-fix-va-check.patch +++ /dev/null @@ -1,29 +0,0 @@ -diff -up chromium-72.0.3626.121/media/gpu/vaapi/vaapi_wrapper.cc.fixvacheck chromium-72.0.3626.121/media/gpu/vaapi/vaapi_wrapper.cc ---- chromium-72.0.3626.121/media/gpu/vaapi/vaapi_wrapper.cc.fixvacheck 2019-03-10 14:54:38.744305074 -0400 -+++ chromium-72.0.3626.121/media/gpu/vaapi/vaapi_wrapper.cc 2019-03-10 14:55:34.383221574 -0400 -@@ -334,15 +334,16 @@ bool VADisplayState::InitializeOnce() { - << va_vendor_string_; - - // The VAAPI version is determined from what is loaded on the system by -- // calling vaInitialize(). We want a runtime evaluation of libva version, -- // of what is loaded on the system, with, what browser is compiled with. -- // Also since the libva is now ABI-compatible, relax the version check -- // which helps in upgrading the libva, without breaking any existing -- // functionality. -- if (!VA_CHECK_VERSION(major_version, minor_version, 0)) { -- LOG(ERROR) << "This build of Chromium requires VA-API version " -- << VA_MAJOR_VERSION << "." << VA_MINOR_VERSION -- << ", system version: " << major_version << "." << minor_version; -+ // calling vaInitialize(). Since the libva is now ABI-compatible, relax the -+ // version check which helps in upgrading the libva, without breaking any -+ // existing functionality. Make sure the system version is not older than -+ // the version with which the chromium is built since libva is only -+ // guaranteed to be backward (and not forward) compatible. -+ if (VA_MAJOR_VERSION > major_version || -+ (VA_MAJOR_VERSION == major_version && VA_MINOR_VERSION > minor_version)) { -+ LOG(ERROR) << "The system version " << major_version << "." << minor_version -+ << " should be greater than or equal to " -+ << VA_MAJOR_VERSION << "." << VA_MINOR_VERSION; - return false; - } - return true; diff --git a/chromium-72.0.3626.121-norar.patch b/chromium-72.0.3626.121-norar.patch deleted file mode 100644 index d5d2632..0000000 --- a/chromium-72.0.3626.121-norar.patch +++ /dev/null @@ -1,79 +0,0 @@ -diff -up chromium-72.0.3626.121/chrome/common/safe_browsing/BUILD.gn.nounrar chromium-72.0.3626.121/chrome/common/safe_browsing/BUILD.gn ---- chromium-72.0.3626.121/chrome/common/safe_browsing/BUILD.gn.nounrar 2019-03-10 14:15:47.187705953 -0400 -+++ chromium-72.0.3626.121/chrome/common/safe_browsing/BUILD.gn 2019-03-10 14:16:47.154138649 -0400 -@@ -56,40 +56,6 @@ if (safe_browsing_mode == 1) { - ] - } - -- source_set("rar_analyzer") { -- sources = [ -- "rar_analyzer.cc", -- "rar_analyzer.h", -- ] -- -- deps = [ -- ":archive_analyzer_results", -- ":download_type_util", -- ":file_type_policies", -- "//base", -- "//base:i18n", -- "//third_party/unrar:unrar", -- ] -- -- defines = [ -- "_FILE_OFFSET_BITS=64", -- "LARGEFILE_SOURCE", -- "RAR_SMP", -- "SILENT", -- -- # The following is set to disable certain macro definitions in the unrar -- # source code. -- "CHROMIUM_UNRAR", -- -- # Disables exceptions in unrar, replaces them with process termination. -- "UNRAR_NO_EXCEPTIONS", -- ] -- -- public_deps = [ -- "//components/safe_browsing:csd_proto", -- ] -- } -- - source_set("disk_image_type_sniffer_mac") { - sources = [ - "disk_image_type_sniffer_mac.cc", -@@ -150,7 +116,6 @@ source_set("safe_browsing") { - deps += [ - ":archive_analyzer_results", - ":download_type_util", -- ":rar_analyzer", - "//components/safe_browsing:features", - ] - -diff -up chromium-72.0.3626.121/chrome/common/safe_browsing/DEPS.nounrar chromium-72.0.3626.121/chrome/common/safe_browsing/DEPS ---- chromium-72.0.3626.121/chrome/common/safe_browsing/DEPS.nounrar 2019-03-01 23:10:03.000000000 -0500 -+++ chromium-72.0.3626.121/chrome/common/safe_browsing/DEPS 2019-03-10 14:14:55.430058716 -0400 -@@ -1,6 +1,5 @@ - include_rules = [ - "+components/safe_browsing", - "+third_party/protobuf", -- "+third_party/unrar", - "+third_party/zlib", - ] -diff -up chromium-72.0.3626.121/chrome/services/file_util/safe_archive_analyzer.cc.nounrar chromium-72.0.3626.121/chrome/services/file_util/safe_archive_analyzer.cc ---- chromium-72.0.3626.121/chrome/services/file_util/safe_archive_analyzer.cc.nounrar 2019-03-01 23:10:04.000000000 -0500 -+++ chromium-72.0.3626.121/chrome/services/file_util/safe_archive_analyzer.cc 2019-03-10 14:14:55.433058638 -0400 -@@ -47,9 +47,13 @@ void SafeArchiveAnalyzer::AnalyzeDmgFile - - void SafeArchiveAnalyzer::AnalyzeRarFile(base::File rar_file, - AnalyzeRarFileCallback callback) { -+#if 0 - DCHECK(rar_file.IsValid()); - - safe_browsing::ArchiveAnalyzerResults results; - safe_browsing::rar_analyzer::AnalyzeRarFile(std::move(rar_file), &results); - std::move(callback).Run(results); -+#else -+ NOTREACHED(); -+#endif - } diff --git a/chromium-73-gcc-0.patch b/chromium-73-gcc-0.patch deleted file mode 100644 index 5a50700..0000000 --- a/chromium-73-gcc-0.patch +++ /dev/null @@ -1,108 +0,0 @@ -From 2c3b57cafbbb38c13a519c9d2fda8b65691d9564 Mon Sep 17 00:00:00 2001 -From: Raphael Kubo da Costa -Date: Thu, 7 Feb 2019 22:55:37 +0000 -Subject: [PATCH] allocator shim: Swap ALIGN_LINKAGE and SHIM_ALWAYS_EXPORT's - positions -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -This fixes the GCC build. GCC seems to be stricter with the position of the -linkage specification, so just swap the terms to prevent an error that looks -like: - -In file included from ../../base/allocator/allocator_shim.cc:333: -../../base/allocator/allocator_shim_override_cpp_symbols.h:39:30: error: expected unqualified-id before string constant - #define ALIGN_LINKAGE extern "C" - ^~~ -../../base/allocator/allocator_shim_override_cpp_symbols.h:99:20: note: in expansion of macro ‘ALIGN_LINKAGE’ - SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void* ALIGN_NEW(std::size_t size, - ^~~~~~~~~~~~~ - -Bug: 819294 -Change-Id: I0aa16ea88cead42e83796a1c86afad8b447ddc50 -Reviewed-on: https://chromium-review.googlesource.com/c/1458256 -Auto-Submit: Raphael Kubo da Costa -Reviewed-by: Thomas Anderson -Reviewed-by: Primiano Tucci -Commit-Queue: Raphael Kubo da Costa -Cr-Commit-Position: refs/heads/master@{#630084} ---- - .../allocator_shim_override_cpp_symbols.h | 20 +++++++++---------- - 1 file changed, 10 insertions(+), 10 deletions(-) - -diff --git a/base/allocator/allocator_shim_override_cpp_symbols.h b/base/allocator/allocator_shim_override_cpp_symbols.h -index 1228f5e33d28..01d25b7f6437 100644 ---- a/base/allocator/allocator_shim_override_cpp_symbols.h -+++ b/base/allocator/allocator_shim_override_cpp_symbols.h -@@ -96,57 +96,57 @@ SHIM_ALWAYS_EXPORT void operator delete[](void* p, size_t) __THROW { - ShimCppDelete(p); - } - --SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void* ALIGN_NEW(std::size_t size, -+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void* ALIGN_NEW(std::size_t size, - ALIGN_VAL_T alignment) { - return ShimCppAlignedNew(size, static_cast(alignment)); - } - --SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void* ALIGN_NEW_NOTHROW( -+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void* ALIGN_NEW_NOTHROW( - std::size_t size, - ALIGN_VAL_T alignment, - const std::nothrow_t&) __THROW { - return ShimCppAlignedNew(size, static_cast(alignment)); - } - --SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void ALIGN_DEL(void* p, ALIGN_VAL_T) __THROW { -+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void ALIGN_DEL(void* p, ALIGN_VAL_T) __THROW { - ShimCppDelete(p); - } - --SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void ALIGN_DEL_SIZED(void* p, -+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void ALIGN_DEL_SIZED(void* p, - std::size_t size, - ALIGN_VAL_T) __THROW { - ShimCppDelete(p); - } - --SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void -+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void - ALIGN_DEL_NOTHROW(void* p, ALIGN_VAL_T, const std::nothrow_t&) __THROW { - ShimCppDelete(p); - } - --SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void* ALIGN_NEW_ARR(std::size_t size, -+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void* ALIGN_NEW_ARR(std::size_t size, - ALIGN_VAL_T alignment) { - return ShimCppAlignedNew(size, static_cast(alignment)); - } - --SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void* ALIGN_NEW_ARR_NOTHROW( -+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void* ALIGN_NEW_ARR_NOTHROW( - std::size_t size, - ALIGN_VAL_T alignment, - const std::nothrow_t&) __THROW { - return ShimCppAlignedNew(size, static_cast(alignment)); - } - --SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void ALIGN_DEL_ARR(void* p, -+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void ALIGN_DEL_ARR(void* p, - ALIGN_VAL_T) __THROW { - ShimCppDelete(p); - } - --SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void ALIGN_DEL_ARR_SIZED(void* p, -+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void ALIGN_DEL_ARR_SIZED(void* p, - std::size_t size, - ALIGN_VAL_T) __THROW { - ShimCppDelete(p); - } - --SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void -+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void - ALIGN_DEL_ARR_NOTHROW(void* p, ALIGN_VAL_T, const std::nothrow_t&) __THROW { - ShimCppDelete(p); - } --- -2.20.1 - diff --git a/chromium-73-gcc-1.patch b/chromium-73-gcc-1.patch deleted file mode 100644 index c3f8e42..0000000 --- a/chromium-73-gcc-1.patch +++ /dev/null @@ -1,99 +0,0 @@ -From 130a5ae24a02daba8729ba2216bcaf3dbfacea69 Mon Sep 17 00:00:00 2001 -From: Raphael Kubo da Costa -Date: Fri, 8 Feb 2019 16:58:38 +0000 -Subject: [PATCH] media::learning: Make LabelledExample's move assignment - operator noexcept -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -The GCC build is currently broken with an error like this: - - ../../media/learning/common/labelled_example.cc:20:1: error: function ‘media::learning::LabelledExample::LabelledExample(media::learning::LabelledExample&&)’ defaulted on its redeclaration with an exception-specification that differs from the implicit exception-specification ‘’ - LabelledExample::LabelledExample(LabelledExample&& rhs) noexcept = default; - ^~~~~~~~~~~~~~~ - -With GCC, having that noexcept marker requires all members to be marked with -noexcept themselves, and TargetValue was missing some assignment operators -and noexcept markers. - -clang is fine because we pass -fno-exceptions and it disables the same error -there, while GCC continues to raise it (bug 843143 and its corresponding CL -have a longer discussion on this issue). - -Bug: 819294 -Change-Id: Ide30932fc466ccb52d6883a82777e703dae48798 -Reviewed-on: https://chromium-review.googlesource.com/c/1458210 -Commit-Queue: Frank Liberato -Reviewed-by: Frank Liberato -Auto-Submit: Raphael Kubo da Costa -Cr-Commit-Position: refs/heads/master@{#630355} ---- - media/learning/common/labelled_example.cc | 3 ++- - media/learning/common/labelled_example.h | 2 +- - media/learning/common/value.cc | 6 ++++++ - media/learning/common/value.h | 4 ++++ - 4 files changed, 13 insertions(+), 2 deletions(-) - -diff --git a/media/learning/common/labelled_example.cc b/media/learning/common/labelled_example.cc -index 76d08509298e..43e834f9f3cf 100644 ---- a/media/learning/common/labelled_example.cc -+++ b/media/learning/common/labelled_example.cc -@@ -59,7 +59,8 @@ bool LabelledExample::operator<(const LabelledExample& rhs) const { - LabelledExample& LabelledExample::operator=(const LabelledExample& rhs) = - default; - --LabelledExample& LabelledExample::operator=(LabelledExample&& rhs) = default; -+LabelledExample& LabelledExample::operator=(LabelledExample&& rhs) noexcept = -+ default; - - TrainingData::TrainingData() = default; - -diff --git a/media/learning/common/labelled_example.h b/media/learning/common/labelled_example.h -index 4f43c54e7a76..365abc3c0ebf 100644 ---- a/media/learning/common/labelled_example.h -+++ b/media/learning/common/labelled_example.h -@@ -40,7 +40,7 @@ struct COMPONENT_EXPORT(LEARNING_COMMON) LabelledExample { - bool operator<(const LabelledExample& rhs) const; - - LabelledExample& operator=(const LabelledExample& rhs); -- LabelledExample& operator=(LabelledExample&& rhs); -+ LabelledExample& operator=(LabelledExample&& rhs) noexcept; - - // Observed feature values. - // Note that to interpret these values, you probably need to have the -diff --git a/media/learning/common/value.cc b/media/learning/common/value.cc -index 9c9395c25d4e..12ea399d24c3 100644 ---- a/media/learning/common/value.cc -+++ b/media/learning/common/value.cc -@@ -23,6 +23,12 @@ Value::Value(const std::string& x) : value_(base::PersistentHash(x)) {} - - Value::Value(const Value& other) : value_(other.value_) {} - -+Value::Value(Value&& rhs) noexcept = default; -+ -+Value& Value::operator=(const Value& rhs) = default; -+ -+Value& Value::operator=(Value&& rhs) noexcept = default; -+ - bool Value::operator==(const Value& rhs) const { - return value_ == rhs.value_; - } -diff --git a/media/learning/common/value.h b/media/learning/common/value.h -index 0e64da961f34..62f4953f691c 100644 ---- a/media/learning/common/value.h -+++ b/media/learning/common/value.h -@@ -38,6 +38,10 @@ class COMPONENT_EXPORT(LEARNING_COMMON) Value { - explicit Value(const std::string& x); - - Value(const Value& other); -+ Value(Value&&) noexcept; -+ -+ Value& operator=(const Value&); -+ Value& operator=(Value&&) noexcept; - - bool operator==(const Value& rhs) const; - bool operator!=(const Value& rhs) const; --- -2.20.1 - diff --git a/chromium-73-gcc-2.patch b/chromium-73-gcc-2.patch deleted file mode 100644 index 9d1f05a..0000000 --- a/chromium-73-gcc-2.patch +++ /dev/null @@ -1,51 +0,0 @@ -From a5ba6f9bb7665040045dc0f8087407096630ad7b Mon Sep 17 00:00:00 2001 -From: Raphael Kubo da Costa -Date: Fri, 8 Feb 2019 02:57:28 +0000 -Subject: [PATCH] color_utils: Use std::sqrt() instead of std::sqrtf() -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -This fixes the build with libstdc++: - - ../../ui/gfx/color_utils.cc: In function ‘SkColor color_utils::SetDarkestColorForTesting(SkColor)’: - ../../ui/gfx/color_utils.cc:434:12: error: ‘sqrtf’ is not a member of ‘std’ - std::sqrtf((dark_luminance + 0.05f) * (kWhiteLuminance + 0.05f)) - 0.05f; - ^~~~~ - ../../ui/gfx/color_utils.cc:434:12: note: suggested alternative: ‘sqrt’ - std::sqrtf((dark_luminance + 0.05f) * (kWhiteLuminance + 0.05f)) - 0.05f; - ^~~~~ - sqrt - -sqrtf() is not formally part of C++14 as far as I can see even though libc++ -has it in . Additionally, we're only dealing with floats in all parts -of the expression above, so using the float sqrt() overload should be -harmless anyway. - -Bug: 819294 -Change-Id: If6c7bf31819df97a761e6963def6d6506154c34d -Reviewed-on: https://chromium-review.googlesource.com/c/1458193 -Auto-Submit: Raphael Kubo da Costa -Reviewed-by: Peter Kasting -Commit-Queue: Raphael Kubo da Costa -Cr-Commit-Position: refs/heads/master@{#630140} ---- - ui/gfx/color_utils.cc | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/ui/gfx/color_utils.cc b/ui/gfx/color_utils.cc -index c868cd54bac3..92ba1407d594 100644 ---- a/ui/gfx/color_utils.cc -+++ b/ui/gfx/color_utils.cc -@@ -431,7 +431,7 @@ SkColor SetDarkestColorForTesting(SkColor color) { - // GetContrastRatio(kWhiteLuminance, g_luminance_midpoint). The formula below - // can be verified by plugging it into how GetContrastRatio() operates. - g_luminance_midpoint = -- std::sqrtf((dark_luminance + 0.05f) * (kWhiteLuminance + 0.05f)) - 0.05f; -+ std::sqrt((dark_luminance + 0.05f) * (kWhiteLuminance + 0.05f)) - 0.05f; - - return previous_darkest_color; - } --- -2.20.1 - diff --git a/chromium-73-gcc-3.patch b/chromium-73-gcc-3.patch deleted file mode 100644 index 9cc6cf2..0000000 --- a/chromium-73-gcc-3.patch +++ /dev/null @@ -1,69 +0,0 @@ -From c33e832cc145c696d2157796c7640e659740dafa Mon Sep 17 00:00:00 2001 -From: Raphael Kubo da Costa -Date: Fri, 8 Feb 2019 08:44:00 +0000 -Subject: [PATCH] quic_flags_impl: Fix GCC build after #618558 -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Due to https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84849, having -base::NoDestructor> and passing an initializer list of Us does not -work if this is not done explicitly, as GCC incorrectly fails to determine -which constructor overload to use: - - ../../net/third_party/quic/platform/impl/quic_flags_impl.cc: In member function ‘bool quic::TypedQuicFlagHelper::SetFlag(const string&) const [with T = bool; std::__cxx11::string = std::__cxx11::basic_string]’: - ../../net/third_party/quic/platform/impl/quic_flags_impl.cc:156:41: error: call of overloaded ‘NoDestructor()’ is ambiguous - {"", "1", "t", "true", "y", "yes"}); - ^ - In file included from ../../net/third_party/quic/platform/impl/quic_flags_impl.h:16, - from ../../net/third_party/quic/platform/impl/quic_flags_impl.cc:5: - ../../base/no_destructor.h:62:3: note: candidate: ‘base::NoDestructor::NoDestructor(const base::NoDestructor&) [with T = std::set >]’ - NoDestructor(const NoDestructor&) = delete; - ^~~~~~~~~~~~ - ../../base/no_destructor.h:60:12: note: candidate: ‘base::NoDestructor::NoDestructor(T&&) [with T = std::set >]’ - explicit NoDestructor(T&& x) { new (storage_) T(std::move(x)); } - ^~~~~~~~~~~~ - ../../base/no_destructor.h:59:12: note: candidate: ‘base::NoDestructor::NoDestructor(const T&) [with T = std::set >]’ - explicit NoDestructor(const T& x) { new (storage_) T(x); } - ^~~~~~~~~~~~ - -Explicitly use an std::initializer_list to make the build work everywhere. - -Bug: 819294 -Change-Id: I775be20e3766a88a656b58c94c40869cb1bee2a8 -Reviewed-on: https://chromium-review.googlesource.com/c/1458214 -Auto-Submit: Raphael Kubo da Costa -Reviewed-by: Ryan Hamilton -Commit-Queue: Raphael Kubo da Costa -Cr-Commit-Position: refs/heads/master@{#630249} ---- - net/third_party/quic/platform/impl/quic_flags_impl.cc | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - -diff --git a/net/third_party/quic/platform/impl/quic_flags_impl.cc b/net/third_party/quic/platform/impl/quic_flags_impl.cc -index 5e6962d1e770..3fa45fc6892d 100644 ---- a/net/third_party/quic/platform/impl/quic_flags_impl.cc -+++ b/net/third_party/quic/platform/impl/quic_flags_impl.cc -@@ -5,6 +5,7 @@ - #include "net/third_party/quic/platform/impl/quic_flags_impl.h" - - #include -+#include - #include - #include - -@@ -153,9 +154,9 @@ std::string QuicFlagRegistry::GetHelp() const { - template <> - bool TypedQuicFlagHelper::SetFlag(const std::string& s) const { - static const base::NoDestructor> kTrueValues( -- {"", "1", "t", "true", "y", "yes"}); -+ std::initializer_list({"", "1", "t", "true", "y", "yes"})); - static const base::NoDestructor> kFalseValues( -- {"0", "f", "false", "n", "no"}); -+ std::initializer_list({"0", "f", "false", "n", "no"})); - if (kTrueValues->find(base::ToLowerASCII(s)) != kTrueValues->end()) { - *flag_ = true; - return true; --- -2.20.1 - diff --git a/chromium-73-gcc-4.patch b/chromium-73-gcc-4.patch deleted file mode 100644 index df7d630..0000000 --- a/chromium-73-gcc-4.patch +++ /dev/null @@ -1,59 +0,0 @@ -From bdd76190e54e6a0e11343dd19e4bf1d06956fa48 Mon Sep 17 00:00:00 2001 -From: Raphael Kubo da Costa -Date: Wed, 13 Feb 2019 01:02:27 +0000 -Subject: [PATCH] BaseRenderingContext2D: Use base::CheckMul and simplify code - in putImageData() -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Follow-up to commit e0b3253a56 ("Fix image conversion truncation issues"). -The current code does not build with GCC due to -https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89287: - - ../../third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc: In member function ‘void blink::BaseRenderingContext2D::putImageData(blink::ImageData*, int, int, int, int, int, int, blink::ExceptionState&)’: - ../../third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc:1777:44: error: default type conversion can't deduce template argument for ‘template::value, void>::type* > constexpr base::internal::StrictNumeric::operator Dst() const [with Dst = Dst; typename std::enable_if::value>::type* = ; T = long unsigned int]’ - new uint8_t[data_length.ValueOrDie()]); - ^ - -Work around it by using the more idiomatic base::CheckMul() with -AssignIfValid, so that we can have |data_length| be a size_t again and not -leave it to the compiler to figure out the type we want when creating the -|converted_pixels| array. - -Bug: 819294 -Change-Id: Id124cc4f3d749b45def4708e21e4badafd708578 -Reviewed-on: https://chromium-review.googlesource.com/c/1467201 -Auto-Submit: Raphael Kubo da Costa -Commit-Queue: Kentaro Hara -Reviewed-by: Kentaro Hara -Cr-Commit-Position: refs/heads/master@{#631472} ---- - .../canvas/canvas2d/base_rendering_context_2d.cc | 10 +++++----- - 1 file changed, 5 insertions(+), 5 deletions(-) - -diff --git a/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc b/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc -index d9fa696c9a9d..34a8a202bfd3 100644 ---- a/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc -+++ b/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc -@@ -1769,12 +1769,12 @@ void BaseRenderingContext2D::putImageData(ImageData* data, - CanvasColorParams(ColorParams().ColorSpace(), PixelFormat(), kNonOpaque); - if (data_color_params.NeedsColorConversion(context_color_params) || - PixelFormat() == kF16CanvasPixelFormat) { -- base::CheckedNumeric data_length = data->Size().Area(); -- data_length *= context_color_params.BytesPerPixel(); -- if (!data_length.IsValid()) -+ size_t data_length; -+ if (!base::CheckMul(data->Size().Area(), -+ context_color_params.BytesPerPixel()) -+ .AssignIfValid(&data_length)) - return; -- std::unique_ptr converted_pixels( -- new uint8_t[data_length.ValueOrDie()]); -+ std::unique_ptr converted_pixels(new uint8_t[data_length]); - if (data->ImageDataInCanvasColorSettings( - ColorParams().ColorSpace(), PixelFormat(), converted_pixels.get(), - kRGBAColorType)) { --- -2.20.1 - diff --git a/chromium-73-gcc-5.patch b/chromium-73-gcc-5.patch deleted file mode 100644 index 033861e..0000000 --- a/chromium-73-gcc-5.patch +++ /dev/null @@ -1,65 +0,0 @@ -From 78b0f0dfa9e6f3c37b71102c01def92f1ab8c330 Mon Sep 17 00:00:00 2001 -From: Raphael Kubo da Costa -Date: Wed, 13 Feb 2019 23:28:46 +0000 -Subject: [PATCH] CastActivityManager: Do not make DoLaunchSessionParams' move - constructor noexcept -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -This fixes the GCC build: - - ../../chrome/browser/media/router/providers/cast/cast_activity_manager.cc:806:1: error: function ‘media_router::CastActivityManager::DoLaunchSessionParams::DoLaunchSessionParams(media_router::CastActivityManager::DoLaunchSessionParams&&)’ defaulted on its redeclaration with an exception-specification that differs from the implicit exception-specification ‘’ - CastActivityManager::DoLaunchSessionParams::DoLaunchSessionParams( - ^~~~~~~~~~~~~~~~~~~ - -With GCC, having that noexcept marker requires all members to be marked with -noexcept themselves, and MediaRoute, CastMediaSource and url::Origin need -the right annotations. Just making DoLaunchSessionParams not noexcept is the -least intrusive solution for now. - -clang is fine because we pass -fno-exceptions and it disables the same error -there, while GCC continues to raise it (bug 843143 and its corresponding CL -have a longer discussion on this issue). - -Bug: 819294 -Change-Id: Ia3a5fb60b5e74e68bd35cfa50e2fcc728b64e5eb -Reviewed-on: https://chromium-review.googlesource.com/c/1469942 -Commit-Queue: mark a. foltz -Auto-Submit: Raphael Kubo da Costa -Reviewed-by: mark a. foltz -Cr-Commit-Position: refs/heads/master@{#631962} ---- - .../media/router/providers/cast/cast_activity_manager.cc | 2 +- - .../browser/media/router/providers/cast/cast_activity_manager.h | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/chrome/browser/media/router/providers/cast/cast_activity_manager.cc b/chrome/browser/media/router/providers/cast/cast_activity_manager.cc -index b7ee9695f69a..8569e0cd30a3 100644 ---- a/chrome/browser/media/router/providers/cast/cast_activity_manager.cc -+++ b/chrome/browser/media/router/providers/cast/cast_activity_manager.cc -@@ -804,7 +804,7 @@ CastActivityManager::DoLaunchSessionParams::DoLaunchSessionParams( - callback(std::move(callback)) {} - - CastActivityManager::DoLaunchSessionParams::DoLaunchSessionParams( -- DoLaunchSessionParams&& other) noexcept = default; -+ DoLaunchSessionParams&& other) = default; - - CastActivityManager::DoLaunchSessionParams::~DoLaunchSessionParams() = default; - -diff --git a/chrome/browser/media/router/providers/cast/cast_activity_manager.h b/chrome/browser/media/router/providers/cast/cast_activity_manager.h -index 325bffc725ee..08fe0ccca603 100644 ---- a/chrome/browser/media/router/providers/cast/cast_activity_manager.h -+++ b/chrome/browser/media/router/providers/cast/cast_activity_manager.h -@@ -295,7 +295,7 @@ class CastActivityManager : public cast_channel::CastMessageHandler::Observer, - const url::Origin& origin, - int tab_id, - mojom::MediaRouteProvider::CreateRouteCallback callback); -- DoLaunchSessionParams(DoLaunchSessionParams&& other) noexcept; -+ DoLaunchSessionParams(DoLaunchSessionParams&& other); - ~DoLaunchSessionParams(); - DoLaunchSessionParams& operator=(DoLaunchSessionParams&&) = delete; - --- -2.20.1 - diff --git a/chromium-73-gcc-6.patch b/chromium-73-gcc-6.patch deleted file mode 100644 index 752f83c..0000000 --- a/chromium-73-gcc-6.patch +++ /dev/null @@ -1,88 +0,0 @@ -From cf4c534f04c223f8a9d65407852e2a531a6d7fb6 Mon Sep 17 00:00:00 2001 -From: Raphael Kubo da Costa -Date: Thu, 14 Feb 2019 22:22:21 +0000 -Subject: [PATCH] chrome/browser: Replace some forward declarations with actual - includes -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -This fixes the GCC build which was failing like this: - - ../../base/scoped_observer.h: In instantiation of ‘void ScopedObserver::RemoveAll() [with Source = TabStripModel; Observer = TabStripModelObserver]’: - ../../base/scoped_observer.h:26:5: required from ‘ScopedObserver::~ScopedObserver() [with Source = TabStripModel; Observer = TabStripModelObserver]’ - ../../chrome/browser/ui/views/extensions/extension_popup.h:115:70: required from here - ../../base/scoped_observer.h:45:20: error: invalid use of incomplete type ‘class TabStripModel’ - sources_[i]->RemoveObserver(observer_); - ~~~~~~~~~~~~~^~~~~~~~~~~~~~ - -This is caused by https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89311 ("Brace -initialization needlessly invokes destructor"), i.e. having something like - - ScopedObserver observer_{this}; - -in a header declaration requires T and U to be fully declared because -ScopedObserver's destructor references them. In a few cases, T was only -forward-declared. - -Bug: 819294 -Change-Id: Ie5b9dc2745e27d4532c5539e3845a8c9147a0595 -Reviewed-on: https://chromium-review.googlesource.com/c/1472576 -Auto-Submit: Raphael Kubo da Costa -Commit-Queue: Alan Cutter -Reviewed-by: Finnur Thorarinsson -Reviewed-by: Alan Cutter -Cr-Commit-Position: refs/heads/master@{#632385} ---- - chrome/browser/ui/views/extensions/extension_popup.cc | 1 - - chrome/browser/ui/views/extensions/extension_popup.h | 1 + - chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.cc | 1 - - chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.h | 2 +- - .../web_applications/extensions/bookmark_app_tab_helper.cc | 1 - - .../web_applications/extensions/bookmark_app_tab_helper.h | 2 +- - 6 files changed, 3 insertions(+), 5 deletions(-) - -diff --git a/chrome/browser/ui/views/extensions/extension_popup.cc b/chrome/browser/ui/views/extensions/extension_popup.cc -index 3f0985d383dd..57d16aba9e9f 100644 ---- a/chrome/browser/ui/views/extensions/extension_popup.cc -+++ b/chrome/browser/ui/views/extensions/extension_popup.cc -@@ -8,7 +8,6 @@ - #include "chrome/browser/devtools/devtools_window.h" - #include "chrome/browser/extensions/extension_view_host.h" - #include "chrome/browser/ui/browser.h" --#include "chrome/browser/ui/tabs/tab_strip_model.h" - #include "content/public/browser/devtools_agent_host.h" - #include "content/public/browser/notification_details.h" - #include "content/public/browser/notification_source.h" -diff --git a/chrome/browser/ui/views/extensions/extension_popup.h b/chrome/browser/ui/views/extensions/extension_popup.h -index 3661b5bda950..9018efa0fea5 100644 ---- a/chrome/browser/ui/views/extensions/extension_popup.h -+++ b/chrome/browser/ui/views/extensions/extension_popup.h -@@ -9,6 +9,7 @@ - #include "base/compiler_specific.h" - #include "base/macros.h" - #include "base/scoped_observer.h" -+#include "chrome/browser/ui/tabs/tab_strip_model.h" - #include "chrome/browser/ui/tabs/tab_strip_model_observer.h" - #include "chrome/browser/ui/views/extensions/extension_view_views.h" - #include "content/public/browser/devtools_agent_host_observer.h" -diff --git a/chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.h b/chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.h -index 2a3ea8e4f91f..ac44a4f05dec 100644 ---- a/chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.h -+++ b/chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.h -@@ -8,6 +8,7 @@ - #include "base/macros.h" - #include "base/memory/weak_ptr.h" - #include "base/scoped_observer.h" -+#include "chrome/browser/ui/toolbar/toolbar_actions_bar.h" - #include "chrome/browser/ui/toolbar/toolbar_actions_bar_observer.h" - #include "chrome/browser/ui/views/toolbar/app_menu_observer.h" - #include "ui/views/controls/scroll_view.h" -@@ -15,7 +16,6 @@ class AppMenu; - class AppMenu; - class Browser; - class BrowserActionsContainer; --class ToolbarActionsBar; - - namespace views { - class MenuItemView; diff --git a/chromium-73.0.3683.103-glibc-2.29-clone-vfork.patch b/chromium-73.0.3683.103-glibc-2.29-clone-vfork.patch deleted file mode 100644 index 8ff952b..0000000 --- a/chromium-73.0.3683.103-glibc-2.29-clone-vfork.patch +++ /dev/null @@ -1,29 +0,0 @@ -diff -up chromium-73.0.3683.103/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc.glibc229 chromium-73.0.3683.103/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc ---- chromium-73.0.3683.103/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc.glibc229 2019-04-16 11:49:35.353081246 -0400 -+++ chromium-73.0.3683.103/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc 2019-04-16 11:51:22.105794620 -0400 -@@ -134,7 +134,8 @@ namespace sandbox { - #if !defined(OS_NACL_NONSFI) - // Allow Glibc's and Android pthread creation flags, crash on any other - // thread creation attempts and EPERM attempts to use neither --// CLONE_VM, nor CLONE_THREAD, which includes all fork() implementations. -+// CLONE_VM nor CLONE_THREAD (all fork implementations), unless CLONE_VFORK is -+// present (as in posix_spawn). - ResultExpr RestrictCloneToThreadsAndEPERMFork() { - const Arg flags(0); - -@@ -153,8 +154,14 @@ ResultExpr RestrictCloneToThreadsAndEPER - AnyOf(flags == kAndroidCloneMask, flags == kObsoleteAndroidCloneMask, - flags == kGlibcPthreadFlags); - -+ const uint64_t kImportantSpawnFlags = CLONE_VFORK | CLONE_VM; -+ -+ const BoolExpr isForkOrSpawn = -+ AnyOf((flags & (CLONE_VM | CLONE_THREAD)) == 0, -+ (flags & kImportantSpawnFlags) == kImportantSpawnFlags); -+ - return If(IsAndroid() ? android_test : glibc_test, Allow()) -- .ElseIf((flags & (CLONE_VM | CLONE_THREAD)) == 0, Error(EPERM)) -+ .ElseIf(isForkOrSpawn, Error(EPERM)) - .Else(CrashSIGSYSClone()); - } - diff --git a/chromium-73.0.3683.75-aarch64-crashpad-limits.patch b/chromium-73.0.3683.75-aarch64-crashpad-limits.patch deleted file mode 100644 index 4eb9529..0000000 --- a/chromium-73.0.3683.75-aarch64-crashpad-limits.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-73.0.3683.75/third_party/crashpad/crashpad/snapshot/linux/cpu_context_linux.cc.aarch64-limits chromium-73.0.3683.75/third_party/crashpad/crashpad/snapshot/linux/cpu_context_linux.cc ---- chromium-73.0.3683.75/third_party/crashpad/crashpad/snapshot/linux/cpu_context_linux.cc.aarch64-limits 2019-03-15 12:08:21.208676651 -0400 -+++ chromium-73.0.3683.75/third_party/crashpad/crashpad/snapshot/linux/cpu_context_linux.cc 2019-03-15 12:08:40.934251685 -0400 -@@ -16,6 +16,7 @@ - - #include - #include -+#include - - #include "base/logging.h" - diff --git a/chromium-73.0.3683.75-el7-fix-noexcept.patch b/chromium-73.0.3683.75-el7-fix-noexcept.patch deleted file mode 100644 index 3fc69ba..0000000 --- a/chromium-73.0.3683.75-el7-fix-noexcept.patch +++ /dev/null @@ -1,54 +0,0 @@ -diff -up chromium-73.0.3683.75/chrome/common/media_router/media_sink.cc.el7-noexcept chromium-73.0.3683.75/chrome/common/media_router/media_sink.cc ---- chromium-73.0.3683.75/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-03-11 18:00:54.000000000 -0400 -+++ chromium-73.0.3683.75/chrome/common/media_router/media_sink.cc 2019-03-20 09:45:29.400426336 -0400 -@@ -19,12 +19,12 @@ MediaSink::MediaSink(const MediaSink::Id - provider_id_(provider_id) {} - - MediaSink::MediaSink(const MediaSink& other) = default; --MediaSink::MediaSink(MediaSink&& other) noexcept = default; -+MediaSink::MediaSink(MediaSink&& other) = default; - MediaSink::MediaSink() = default; - MediaSink::~MediaSink() = default; - - MediaSink& MediaSink::operator=(const MediaSink& other) = default; --MediaSink& MediaSink::operator=(MediaSink&& other) noexcept = default; -+MediaSink& MediaSink::operator=(MediaSink&& other) = default; - - bool MediaSink::IsMaybeCloudSink() const { - switch (icon_type_) { -diff -up chromium-73.0.3683.75/components/policy/core/common/policy_map.cc.el7-noexcept chromium-73.0.3683.75/components/policy/core/common/policy_map.cc ---- chromium-73.0.3683.75/components/policy/core/common/policy_map.cc.el7-noexcept 2019-03-11 18:00:56.000000000 -0400 -+++ chromium-73.0.3683.75/components/policy/core/common/policy_map.cc 2019-03-19 11:11:38.310689134 -0400 -@@ -25,7 +25,7 @@ PolicyMap::Entry::Entry() = default; - PolicyMap::Entry::~Entry() = default; - - PolicyMap::Entry::Entry(Entry&&) noexcept = default; --PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) noexcept = default; -+PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) = default; - - PolicyMap::Entry PolicyMap::Entry::DeepCopy() const { - Entry copy; -diff -up chromium-73.0.3683.75/components/signin/core/browser/account_info.cc.el7-noexcept chromium-73.0.3683.75/components/signin/core/browser/account_info.cc ---- chromium-73.0.3683.75/components/signin/core/browser/account_info.cc.el7-noexcept 2019-03-11 18:00:57.000000000 -0400 -+++ chromium-73.0.3683.75/components/signin/core/browser/account_info.cc 2019-03-19 11:11:38.311689112 -0400 -@@ -50,7 +50,7 @@ AccountInfo::AccountInfo(AccountInfo&& o - - AccountInfo& AccountInfo::operator=(const AccountInfo& other) = default; - --AccountInfo& AccountInfo::operator=(AccountInfo&& other) noexcept = default; -+AccountInfo& AccountInfo::operator=(AccountInfo&& other) = default; - - bool AccountInfo::IsEmpty() const { - return account_id.empty() && email.empty() && gaia.empty() && -diff -up chromium-73.0.3683.75/gpu/config/gpu_info.cc.el7-noexcept chromium-73.0.3683.75/gpu/config/gpu_info.cc ---- chromium-73.0.3683.75/gpu/config/gpu_info.cc.el7-noexcept 2019-03-19 11:12:36.992435015 -0400 -+++ chromium-73.0.3683.75/gpu/config/gpu_info.cc 2019-03-19 11:12:37.061433540 -0400 -@@ -118,7 +118,7 @@ GPUInfo::GPUDevice& GPUInfo::GPUDevice:: - const GPUInfo::GPUDevice& other) = default; - - GPUInfo::GPUDevice& GPUInfo::GPUDevice::operator=( -- GPUInfo::GPUDevice&& other) noexcept = default; -+ GPUInfo::GPUDevice&& other) = default; - - GPUInfo::GPUInfo() - : optimus(false), diff --git a/chromium-73.0.3683.75-no-header-hygiene.patch b/chromium-73.0.3683.75-no-header-hygiene.patch deleted file mode 100644 index a8d2a19..0000000 --- a/chromium-73.0.3683.75-no-header-hygiene.patch +++ /dev/null @@ -1,17 +0,0 @@ -diff -up chromium-73.0.3683.75/third_party/swiftshader/third_party/llvm-7.0/BUILD.gn.nohh chromium-73.0.3683.75/third_party/swiftshader/third_party/llvm-7.0/BUILD.gn ---- chromium-73.0.3683.75/third_party/swiftshader/third_party/llvm-7.0/BUILD.gn.nohh 2019-03-15 09:02:26.167929864 -0400 -+++ chromium-73.0.3683.75/third_party/swiftshader/third_party/llvm-7.0/BUILD.gn 2019-03-15 09:03:30.334433446 -0400 -@@ -74,9 +74,12 @@ config("swiftshader_llvm_private_config" - "-Wno-unused-private-field", - "-Wno-unused-result", - "-Wno-unused-variable", -- "-Wno-error=header-hygiene", - ] - -+ if (is_clang) { -+ cflags += [ "-Wno-error=header-hygiene" ] -+ } -+ - defines = [ - "__STDC_CONSTANT_MACROS", - "__STDC_LIMIT_MACROS", diff --git a/chromium-gcc5-r3.patch b/chromium-gcc5-r3.patch deleted file mode 100644 index 7605df6..0000000 --- a/chromium-gcc5-r3.patch +++ /dev/null @@ -1,98 +0,0 @@ ---- a/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h -+++ b/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h -@@ -63,7 +63,7 @@ class WTF_EXPORT ArrayBufferContents { - allocation_length_(0), - data_(data), - data_length_(0), -- kind_(AllocationKind::kNormal), -+ kind_(WTF::ArrayBufferContents::AllocationKind::kNormal), - deleter_(deleter) {} - DataHandle(void* allocation_base, - size_t allocation_length, -@@ -94,11 +94,11 @@ class WTF_EXPORT ArrayBufferContents { - reinterpret_cast(allocation_base_) + - allocation_length_); - switch (kind_) { -- case AllocationKind::kNormal: -+ case WTF::ArrayBufferContents::AllocationKind::kNormal: - DCHECK(deleter_); - deleter_(data_); - return; -- case AllocationKind::kReservation: -+ case WTF::ArrayBufferContents::AllocationKind::kReservation: - ReleaseReservedMemory(allocation_base_, allocation_length_); - return; - } ---- a/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.orig 2017-08-15 12:45:59.433532111 +0000 -+++ b/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2017-08-15 17:52:59.691328825 +0000 -@@ -10,7 +10,7 @@ - - #include "webrtc/modules/audio_processing/aec3/aec_state.h" - --#include -+#include - #include - #include - ---- a/gpu/ipc/common/mailbox_struct_traits.h -+++ b/gpu/ipc/common/mailbox_struct_traits.h -@@ -15,7 +15,7 @@ namespace mojo { - template <> - struct StructTraits { - static base::span name(const gpu::Mailbox& mailbox) { -- return mailbox.name; -+ return base::make_span(mailbox.name); - } - static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out); - }; ---- a/services/viz/public/cpp/compositing/filter_operation_struct_traits.h -+++ b/services/viz/public/cpp/compositing/filter_operation_struct_traits.h -@@ -134,7 +134,7 @@ struct StructTraits { - static base::span matrix(const cc::FilterOperation& operation) { - if (operation.type() != cc::FilterOperation::COLOR_MATRIX) - return base::span(); -- return operation.matrix(); -+ return base::make_span(operation.matrix()); - } - - static base::span shape( ---- a/services/viz/public/cpp/compositing/quads_struct_traits.h -+++ b/services/viz/public/cpp/compositing/quads_struct_traits.h -@@ -284,7 +284,7 @@ - - static base::span vertex_opacity(const cc::DrawQuad& input) { - const cc::TextureDrawQuad* quad = cc::TextureDrawQuad::MaterialCast(&input); -- return quad->vertex_opacity; -+ return base::make_span(quad->vertex_opacity); - } - - static bool y_flipped(const cc::DrawQuad& input) { ---- a/third_party/WebKit/Source/platform/exported/WebCORS.cpp -+++ b/third_party/WebKit/Source/platform/exported/WebCORS.cpp -@@ -480,7 +480,7 @@ WebString AccessControlErrorString( - } - default: - NOTREACHED(); -- return ""; -+ return WebString(); - } - } - -@@ -512,7 +512,7 @@ WebString PreflightErrorString(const PreflightStatus status, - } - default: - NOTREACHED(); -- return ""; -+ return WebString(); - } - } - -@@ -533,7 +533,7 @@ WebString RedirectErrorString(const RedirectStatus status, - } - default: - NOTREACHED(); -- return ""; -+ return WebString(); - } - } - diff --git a/chromium-gcc8-r588316.patch b/chromium-gcc8-r588316.patch deleted file mode 100644 index d980805..0000000 --- a/chromium-gcc8-r588316.patch +++ /dev/null @@ -1,98 +0,0 @@ -From 87902b3202f81d689dd314c17006ffc907fe12a1 Mon Sep 17 00:00:00 2001 -From: Wang Qing -Date: Mon, 3 Sep 2018 02:41:08 +0000 -Subject: [PATCH] Fix build error for blink. -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -This CLs fixed the error of constexpr function call to non-constexpr function. - -Bug: 878202 -Change-Id: I6ad217a687e62a9a384980d852743a56479de3a9 -Reviewed-on: https://chromium-review.googlesource.com/1192467 -Commit-Queue: 汪 清 -Reviewed-by: Eric Willigers -Cr-Commit-Position: refs/heads/master@{#588316} ---- - .../core/animation/animation_time_delta.cc | 22 ++++++++++++++ - .../core/animation/animation_time_delta.h | 30 +++++++------------ - 2 files changed, 32 insertions(+), 20 deletions(-) - -diff --git a/third_party/blink/renderer/core/animation/animation_time_delta.cc b/third_party/blink/renderer/core/animation/animation_time_delta.cc -index 1b25469c7f2f..2e30a18890da 100644 ---- a/third_party/blink/renderer/core/animation/animation_time_delta.cc -+++ b/third_party/blink/renderer/core/animation/animation_time_delta.cc -@@ -7,6 +7,28 @@ - namespace blink { - - #if !defined(BLINK_ANIMATION_USE_TIME_DELTA) -+// Comparison operators on AnimationTimeDelta. -+bool CORE_EXPORT operator==(const AnimationTimeDelta& lhs, -+ const AnimationTimeDelta& rhs) { -+ return lhs.InSecondsF() == rhs.InSecondsF(); -+} -+bool CORE_EXPORT operator!=(const AnimationTimeDelta& lhs, -+ const AnimationTimeDelta& rhs) { -+ return lhs.InSecondsF() != rhs.InSecondsF(); -+} -+bool CORE_EXPORT operator>(const AnimationTimeDelta& lhs, -+ const AnimationTimeDelta& rhs) { -+ return lhs.InSecondsF() > rhs.InSecondsF(); -+} -+bool CORE_EXPORT operator>=(const AnimationTimeDelta& lhs, -+ const AnimationTimeDelta& rhs) { -+ return lhs.InSecondsF() >= rhs.InSecondsF(); -+} -+bool CORE_EXPORT operator<=(const AnimationTimeDelta& lhs, -+ const AnimationTimeDelta& rhs) { -+ return lhs.InSecondsF() <= rhs.InSecondsF(); -+} -+ - std::ostream& operator<<(std::ostream& os, AnimationTimeDelta time) { - return os << time.InSecondsF() << " s"; - } -diff --git a/third_party/blink/renderer/core/animation/animation_time_delta.h b/third_party/blink/renderer/core/animation/animation_time_delta.h -index 1903c1150d3e..95d218466d90 100644 ---- a/third_party/blink/renderer/core/animation/animation_time_delta.h -+++ b/third_party/blink/renderer/core/animation/animation_time_delta.h -@@ -90,26 +90,16 @@ AnimationTimeDelta operator*(T a, AnimationTimeDelta td) { - } - - // Comparison operators on AnimationTimeDelta. --constexpr bool CORE_EXPORT operator==(const AnimationTimeDelta& lhs, -- const AnimationTimeDelta& rhs) { -- return lhs.InSecondsF() == rhs.InSecondsF(); --} --constexpr bool CORE_EXPORT operator!=(const AnimationTimeDelta& lhs, -- const AnimationTimeDelta& rhs) { -- return lhs.InSecondsF() != rhs.InSecondsF(); --} --constexpr bool CORE_EXPORT operator>(const AnimationTimeDelta& lhs, -- const AnimationTimeDelta& rhs) { -- return lhs.InSecondsF() > rhs.InSecondsF(); --} --constexpr bool CORE_EXPORT operator>=(const AnimationTimeDelta& lhs, -- const AnimationTimeDelta& rhs) { -- return lhs.InSecondsF() >= rhs.InSecondsF(); --} --constexpr bool CORE_EXPORT operator<=(const AnimationTimeDelta& lhs, -- const AnimationTimeDelta& rhs) { -- return lhs.InSecondsF() <= rhs.InSecondsF(); --} -+bool CORE_EXPORT operator==(const AnimationTimeDelta& lhs, -+ const AnimationTimeDelta& rhs); -+bool CORE_EXPORT operator!=(const AnimationTimeDelta& lhs, -+ const AnimationTimeDelta& rhs); -+bool CORE_EXPORT operator>(const AnimationTimeDelta& lhs, -+ const AnimationTimeDelta& rhs); -+bool CORE_EXPORT operator>=(const AnimationTimeDelta& lhs, -+ const AnimationTimeDelta& rhs); -+bool CORE_EXPORT operator<=(const AnimationTimeDelta& lhs, -+ const AnimationTimeDelta& rhs); - - // Defined to allow DCHECK_EQ/etc to work with the class. - CORE_EXPORT std::ostream& operator<<(std::ostream& os, AnimationTimeDelta time); --- -2.17.2 - diff --git a/chromium-gcc8-r588547.patch b/chromium-gcc8-r588547.patch deleted file mode 100644 index 5f12f7f..0000000 --- a/chromium-gcc8-r588547.patch +++ /dev/null @@ -1,30 +0,0 @@ -From e3ad3deb6a6e79284f3748fa7410311d87df91c5 Mon Sep 17 00:00:00 2001 -From: Henrique Nakashima -Date: Tue, 4 Sep 2018 16:49:51 +0000 -Subject: [PATCH] IWYU: stdint.h in pdfium_mem_buffer_file_write.h for uint8_t - -Bug: 879900 -Change-Id: I9c15d1c280a23c53d31f2d72c9d0d1db79eab886 -Reviewed-on: https://chromium-review.googlesource.com/1204410 -Reviewed-by: Lei Zhang -Commit-Queue: Henrique Nakashima -Cr-Commit-Position: refs/heads/master@{#588547} ---- - pdf/pdfium/pdfium_mem_buffer_file_write.h | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/pdf/pdfium/pdfium_mem_buffer_file_write.h b/pdf/pdfium/pdfium_mem_buffer_file_write.h -index 03c54bb63800..82e82d23684d 100644 ---- a/pdf/pdfium/pdfium_mem_buffer_file_write.h -+++ b/pdf/pdfium/pdfium_mem_buffer_file_write.h -@@ -6,6 +6,7 @@ - #define PDF_PDFIUM_PDFIUM_MEM_BUFFER_FILE_WRITE_H_ - - #include -+#include - - #include - --- -2.17.2 - diff --git a/chromium-gcc8-r589614.patch b/chromium-gcc8-r589614.patch deleted file mode 100644 index 0c187fd..0000000 --- a/chromium-gcc8-r589614.patch +++ /dev/null @@ -1,37 +0,0 @@ -From cbdb8bd6567c8143dc8c1e5e86a21a8ea064eea4 Mon Sep 17 00:00:00 2001 -From: Maksim Sisov -Date: Fri, 7 Sep 2018 18:57:42 +0000 -Subject: [PATCH] OmniboxTextView: fix gcc error for structure initialization - -It looks like there is bug in GCC 6, which cannot go through -structure initialization normally. - -Thus, instead of a default initialization of one of the members, -explicitly initialize it to a default value. - -Change-Id: Ia55cc6658e6b6b2f8a80c2582dd28f001c9e648c -Reviewed-on: https://chromium-review.googlesource.com/1213181 -Reviewed-by: Scott Violet -Commit-Queue: Maksim Sisov -Cr-Commit-Position: refs/heads/master@{#589614} ---- - chrome/browser/ui/views/omnibox/omnibox_text_view.cc | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/chrome/browser/ui/views/omnibox/omnibox_text_view.cc b/chrome/browser/ui/views/omnibox/omnibox_text_view.cc -index f0a8083dc930..9021284f166d 100644 ---- a/chrome/browser/ui/views/omnibox/omnibox_text_view.cc -+++ b/chrome/browser/ui/views/omnibox/omnibox_text_view.cc -@@ -175,7 +175,8 @@ void ApplyTextStyleForType(SuggestionAnswer::TextStyle text_style, - style = {part_color, .baseline = gfx::SUPERIOR}; - break; - case SuggestionAnswer::TextStyle::BOLD: -- style = {part_color, .weight = gfx::Font::Weight::BOLD}; -+ style = {part_color, .baseline = gfx::NORMAL_BASELINE, -+ .weight = gfx::Font::Weight::BOLD}; - break; - case SuggestionAnswer::TextStyle::NORMAL: - case SuggestionAnswer::TextStyle::NORMAL_DIM: --- -2.17.2 - diff --git a/chromium-gcc8-r591015.patch b/chromium-gcc8-r591015.patch deleted file mode 100644 index 65c09e8..0000000 --- a/chromium-gcc8-r591015.patch +++ /dev/null @@ -1,70 +0,0 @@ -From e98f8ef8b2f236ecbb01df8c39e6ee1c8fbe8d7d Mon Sep 17 00:00:00 2001 -From: Maksim Sisov -Date: Thu, 13 Sep 2018 15:17:29 +0000 -Subject: [PATCH] ScrollPaintPropertyNode: Rename SnapContainerData() to - GetSnapContainerData() - -GCC is stricter than clang when it comes to class members' names and how -they can change the meaning of a previously existing symbol with the same -name. - -Here is a short error message: - -error: changes meaning of 'SnapContainerData' from 'using SnapContainerData = -class cc::SnapContainerData' [-fpermissive] using SnapContainerData = -cc::SnapContainerData; - -Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_slimming_paint_v2;master.tryserver.blink:linux_trusty_blink_rel -Change-Id: I0de5460f17b13484253e1ff0538b111c9a3b0d13 -Reviewed-on: https://chromium-review.googlesource.com/1213180 -Commit-Queue: Maksim Sisov -Reviewed-by: Philip Rogers -Cr-Commit-Position: refs/heads/master@{#591015} ---- - .../blink/renderer/core/paint/paint_property_tree_update_tests.cc | 2 +- - .../renderer/platform/graphics/compositing/property_tree_manager.cc | 2 +- - .../blink/renderer/platform/graphics/paint/scroll_paint_property_node.h | 2 +- - 3 files changed, 3 insertions(+), 3 deletions(-) - -diff --git a/third_party/blink/renderer/core/paint/paint_property_tree_update_tests.cc b/third_party/blink/renderer/core/paint/paint_property_tree_update_tests.cc -index 0d999d45076f..1fe1815a5659 100644 ---- a/third_party/blink/renderer/core/paint/paint_property_tree_update_tests.cc -+++ b/third_party/blink/renderer/core/paint/paint_property_tree_update_tests.cc -@@ -1310,7 +1310,7 @@ TEST_P(PaintPropertyTreeUpdateTest, EnsureSnapContainerData) { - GetDocument().View()->Resize(300, 300); - GetDocument().View()->UpdateAllLifecyclePhases(); - -- auto doc_snap_container_data = DocScroll()->SnapContainerData(); -+ auto doc_snap_container_data = DocScroll()->GetSnapContainerData(); - ASSERT_TRUE(doc_snap_container_data); - EXPECT_EQ(doc_snap_container_data->scroll_snap_type().axis, SnapAxis::kBoth); - EXPECT_EQ(doc_snap_container_data->scroll_snap_type().strictness, -diff --git a/third_party/blink/renderer/platform/graphics/compositing/property_tree_manager.cc b/third_party/blink/renderer/platform/graphics/compositing/property_tree_manager.cc -index 745b8c8b387e..5f87eeea9435 100644 ---- a/third_party/blink/renderer/platform/graphics/compositing/property_tree_manager.cc -+++ b/third_party/blink/renderer/platform/graphics/compositing/property_tree_manager.cc -@@ -333,7 +333,7 @@ void PropertyTreeManager::CreateCompositorScrollNode( - scroll_node->OverscrollBehaviorX()), - static_cast( - scroll_node->OverscrollBehaviorY())); -- compositor_node.snap_container_data = scroll_node->SnapContainerData(); -+ compositor_node.snap_container_data = scroll_node->GetSnapContainerData(); - - auto compositor_element_id = scroll_node->GetCompositorElementId(); - if (compositor_element_id) { -diff --git a/third_party/blink/renderer/platform/graphics/paint/scroll_paint_property_node.h b/third_party/blink/renderer/platform/graphics/paint/scroll_paint_property_node.h -index e1479269ccc3..5bd7f65f10ba 100644 ---- a/third_party/blink/renderer/platform/graphics/paint/scroll_paint_property_node.h -+++ b/third_party/blink/renderer/platform/graphics/paint/scroll_paint_property_node.h -@@ -99,7 +99,7 @@ class PLATFORM_EXPORT ScrollPaintPropertyNode - return state_.overscroll_behavior.y; - } - -- base::Optional SnapContainerData() const { -+ base::Optional GetSnapContainerData() const { - return state_.snap_container_data; - } - --- -2.14.3 - diff --git a/chromium-gn-bootstrap-r17.patch b/chromium-gn-bootstrap-r17.patch deleted file mode 100644 index 6cfd08d..0000000 --- a/chromium-gn-bootstrap-r17.patch +++ /dev/null @@ -1,68 +0,0 @@ ---- a/tools/gn/bootstrap/bootstrap.py -+++ b/tools/gn/bootstrap/bootstrap.py -@@ -179,6 +179,7 @@ def build_gn_with_ninja_manually(tempdir, options): - - write_buildflag_header_manually(root_gen_dir, 'base/debug/debugging_flags.h', - { -+ 'ENABLE_LOCATION_SOURCE': 'false', - 'ENABLE_PROFILING': 'false', - 'CAN_UNWIND_WITH_FRAME_POINTERS': 'false' - }) -@@ -204,7 +205,7 @@ def build_gn_with_ninja_manually(tempdir, options): - - write_gn_ninja(os.path.join(tempdir, 'build.ninja'), - root_gen_dir, options) -- cmd = ['ninja', '-C', tempdir] -+ cmd = ['ninja', '-C', tempdir, '-w', 'dupbuild=err'] - if options.verbose: - cmd.append('-v') - -@@ -458,6 +459,7 @@ def write_gn_ninja(path, root_gen_dir, options): - 'base/metrics/bucket_ranges.cc', - 'base/metrics/field_trial.cc', - 'base/metrics/field_trial_param_associator.cc', -+ 'base/metrics/field_trial_params.cc', - 'base/metrics/histogram.cc', - 'base/metrics/histogram_base.cc', - 'base/metrics/histogram_functions.cc', -@@ -507,6 +509,7 @@ def write_gn_ninja(path, root_gen_dir, options): - 'base/task_scheduler/scheduler_lock_impl.cc', - 'base/task_scheduler/scheduler_single_thread_task_runner_manager.cc', - 'base/task_scheduler/scheduler_worker.cc', -+ 'base/task_scheduler/scheduler_worker_pool.cc', - 'base/task_scheduler/scheduler_worker_pool_impl.cc', - 'base/task_scheduler/scheduler_worker_pool_params.cc', - 'base/task_scheduler/scheduler_worker_stack.cc', -@@ -523,6 +526,7 @@ def write_gn_ninja(path, root_gen_dir, options): - 'base/third_party/icu/icu_utf.cc', - 'base/third_party/nspr/prtime.cc', - 'base/threading/post_task_and_reply_impl.cc', -+ 'base/threading/scoped_blocking_call.cc', - 'base/threading/sequence_local_storage_map.cc', - 'base/threading/sequenced_task_runner_handle.cc', - 'base/threading/sequenced_worker_pool.cc', -@@ -579,7 +583,6 @@ def write_gn_ninja(path, root_gen_dir, options): - 'base/unguessable_token.cc', - 'base/value_iterators.cc', - 'base/values.cc', -- 'base/value_iterators.cc', - 'base/vlog.cc', - ]) - -@@ -652,7 +655,6 @@ def write_gn_ninja(path, root_gen_dir, options): - static_libraries['base']['sources'].extend([ - 'base/memory/shared_memory_handle_posix.cc', - 'base/memory/shared_memory_posix.cc', -- 'base/memory/shared_memory_tracker.cc', - 'base/nix/xdg_util.cc', - 'base/process/internal_linux.cc', - 'base/process/memory_linux.cc', -@@ -827,7 +829,7 @@ def build_gn_with_gn(temp_gn, build_dir, options): - cmd = [temp_gn, 'gen', build_dir, '--args=%s' % gn_gen_args] - check_call(cmd) - -- cmd = ['ninja', '-C', build_dir] -+ cmd = ['ninja', '-C', build_dir, '-w', 'dupbuild=err'] - if options.verbose: - cmd.append('-v') - cmd.append('gn') diff --git a/chromium-math.h-r0.patch b/chromium-math.h-r0.patch deleted file mode 100644 index 6c7c747..0000000 --- a/chromium-math.h-r0.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 9f63f94a11abc34d40ede8b8712fa15b5844a8c0 Mon Sep 17 00:00:00 2001 -From: Tom Anderson -Date: Sat, 27 Jan 2018 20:03:37 +0000 -Subject: [PATCH] Fix build with glibc 2.27 - -BUG=806340 -TBR=hamelphi@chromium.org - -Change-Id: Ib4e5091212d874d9ad88f3e9a1fdfee3ed7e0d5e -Reviewed-on: https://chromium-review.googlesource.com/890059 -Reviewed-by: Thomas Anderson -Reviewed-by: Philippe Hamel -Commit-Queue: Thomas Anderson -Cr-Commit-Position: refs/heads/master@{#532249} ---- - -diff --git a/components/assist_ranker/ranker_example_util.cc b/components/assist_ranker/ranker_example_util.cc -index 54d4dbd..ceedd8f 100644 ---- a/components/assist_ranker/ranker_example_util.cc -+++ b/components/assist_ranker/ranker_example_util.cc -@@ -2,6 +2,8 @@ - // Use of this source code is governed by a BSD-style license that can be - // found in the LICENSE file. - -+#include -+ - #include "components/assist_ranker/ranker_example_util.h" - #include "base/bit_cast.h" - #include "base/format_macros.h" diff --git a/chromium-stdint.patch b/chromium-stdint.patch deleted file mode 100644 index 8774439..0000000 --- a/chromium-stdint.patch +++ /dev/null @@ -1,21 +0,0 @@ -From 0235c2b657d936f3cdb09053776e5929fc84704b Mon Sep 17 00:00:00 2001 -From: Tomas Popela -Date: Wed, 31 Jan 2018 18:57:07 +0000 -Subject: [PATCH] Add missing stdint include - -diff --git a/chrome/browser/vr/sample_queue.cc b/chrome/browser/vr/sample_queue.cc -index c2ca777ce90c..53cb3aab1576 100644 ---- a/chrome/browser/vr/sample_queue.cc -+++ b/chrome/browser/vr/sample_queue.cc -@@ -2,6 +2,8 @@ - // Use of this source code is governed by a BSD-style license that can be - // found in the LICENSE file. - -+#include -+ - #include "chrome/browser/vr/sample_queue.h" - - namespace vr { --- -2.16.2 - diff --git a/chromium.spec b/chromium.spec index de018ef..d734490 100644 --- a/chromium.spec +++ b/chromium.spec @@ -174,175 +174,130 @@ License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and Open Patch0: chromium-67.0.3396.62-gcc5.patch Patch1: chromium-45.0.2454.101-linux-path-max.patch Patch2: chromium-55.0.2883.75-addrfix.patch -Patch4: chromium-72.0.3626.121-notest.patch +Patch3: chromium-72.0.3626.121-notest.patch +# Use libusb_interrupt_event_handler from current libusbx (1.0.21-0.1.git448584a) +Patch4: chromium-48.0.2564.116-libusb_interrupt_event_handler.patch +# Ignore deprecations in cups 2.2 +# https://bugs.chromium.org/p/chromium/issues/detail?id=622493 +Patch5: chromium-55.0.2883.75-cups22.patch +# Use PIE in the Linux sandbox (from openSUSE via Russian Fedora) +Patch6: chromium-70.0.3538.67-sandbox-pie.patch +# Use /etc/chromium for master_prefs +Patch7: chromium-68.0.3440.106-master-prefs-path.patch +# Use gn system files +Patch8: chromium-67.0.3396.62-gn-system.patch +# Fix issue where timespec is not defined when sys/stat.h is included. +Patch9: chromium-53.0.2785.92-boringssl-time-fix.patch +# I wouldn't have to do this if there was a standard way to append extra compiler flags +Patch10: chromium-63.0.3289.84-nullfix.patch +# Add explicit includedir for jpeglib.h +Patch11: chromium-54.0.2840.59-jpeg-include-dir.patch +# On i686, pass --no-keep-memory --reduce-memory-overheads to ld. +Patch12: chromium-59.0.3071.86-i686-ld-memory-tricks.patch +# Revert https://chromium.googlesource.com/chromium/src/+/b794998819088f76b4cf44c8db6940240c563cf4%5E%21/#F0 +# https://bugs.chromium.org/p/chromium/issues/detail?id=712737 +# https://bugzilla.redhat.com/show_bug.cgi?id=1446851 +Patch13: chromium-58.0.3029.96-revert-b794998819088f76b4cf44c8db6940240c563cf4.patch +# Correctly compile the stdatomic.h in ffmpeg with gcc 4.8 +Patch14: chromium-64.0.3282.119-ffmpeg-stdatomic.patch +# Nacl can't die soon enough +Patch15: chromium-66.0.3359.117-system-clang.patch +# Do not prefix libpng functions +Patch16: chromium-60.0.3112.78-no-libpng-prefix.patch +# Do not mangle libjpeg +Patch17: chromium-60.0.3112.78-jpeg-nomangle.patch +# Do not mangle zlib +Patch18: chromium-75.0.3770.80-no-zlib-mangle.patch +# Fix libavutil include pathing to find arch specific timer.h +# For some reason, this only fails on aarch64. No idea why. +Patch19: chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch +# from gentoo +Patch20: chromium-61.0.3163.79-gcc-no-opt-safe-math.patch +# From gentoo +Patch21: chromium-72.0.3626.121-gcc5-r3.patch +# To use round with gcc, you need to #include +Patch22: chromium-65.0.3325.146-gcc-round-fix.patch +# Include proper headers to invoke memcpy() +Patch23: chromium-65.0.3325.146-memcpy-fix.patch +# ../../mojo/public/cpp/bindings/associated_interface_ptr_info.h:48:43: error: cannot convert 'const mojo::ScopedInterfaceEndpointHandle' to 'bool' in return +Patch24: chromium-68.0.3440.106-boolfix.patch +# From Debian +Patch25: chromium-71.0.3578.98-skia-aarch64-buildfix.patch +# Missing files in tarball +Patch26: chromium-66.0.3359.117-missing-files.patch +# Do not use unrar code, it is non-free +Patch27: chromium-73.0.3683.75-norar.patch +# Upstream GCC fixes +Patch28: chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch +# Add "Fedora" to the user agent string +Patch29: chromium-72.0.3626.121-fedora-user-agent.patch +# Try to fix version.py for Rawhide +Patch30: chromium-71.0.3578.98-py2-bootstrap.patch +# Fix default on redeclaration error +# https://chromium.googlesource.com/chromium/src/+/122692ccee62223f266a988c575ae687e3f4c056%5E%21/#F0 +Patch31: chromium-68.0.3440.106-fix-default-on-redeclaration.patch +# Use Gentoo's Widevine hack +# https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-widevine-r3.patch +Patch32: chromium-71.0.3578.98-widevine-r3.patch +# Do not require sysroot +# Forget about trying to make libc++ +# BUILD SANELY PLEASE +Patch33: chromium-69.0.3497.81-build-sanely-please.patch +# Disable fontconfig cache magic that breaks remoting +Patch34: chromium-70.0.3538.67-disable-fontconfig-cache-magic.patch +# Fix aarch64 build against latest linux kernel headers +Patch35: chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch +# drop rsp clobber, which breaks gcc9 (thanks to Jeff Law) +Patch36: chromium-71.0.3578.98-gcc9-drop-rsp-clobber.patch +# Try to load widevine from other places +Patch37: chromium-widevine-other-locations.patch +# Disable -fno-delete-null-pointer-checks +Patch38: chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch +# Add #include to get pipewire code to build +Patch39: chromium-73.0.3683.75-pipewire-cstring-fix.patch +# gcc does not have __assume +Patch40: chromium-75.0.3770.80-gcc-no-assume.patch +# Linux 5.2 defines SIOCGSTAMP in a slightly different way, so we need to teach chromium where to find it +Patch41: chromium-75.0.3770.80-SIOCGSTAMP.patch +# https://chromium.googlesource.com/chromium/src/+/aeed4d1f15ce84a17ea0bc219e258dc4982b2368%5E%21/#F0 +Patch42: chromium-75.0.3770.80-aeed4d-gcc-dcheck_ne-fix.patch +# Revert https://chromium.googlesource.com/chromium/src/+/daff6b66faae53a0cefb88987c9ff4843629b728%5E%21/#F0 +# It might make clang happy but it breaks gcc. F*** clang. +Patch43: chromium-75.0.3770.80-revert-daff6b.patch +# Avoid pure virtual crash destroying RenderProcessUserData +# https://chromium.googlesource.com/chromium/src/+/cdf306db81efaaaa954487585d5a5a16205a5ebd%5E%21/ +Patch44: chromium-75.0.3770.80-pure-virtual-crash-fix.patch +# rename function to avoid conflict with rawhide glibc "gettid()" +Patch45: chromium-75.0.3770.80-grpc-gettid-fix.patch +# fix v8 compile with gcc +# https://chromium.googlesource.com/v8/v8/+/3b8c624bda58d05aea80dd9626cd550537d6ac3f%5E%21/#F1 +Patch46: chromium-75.0.3770.100-fix-v8-gcc.patch +# https://chromium.googlesource.com/chromium/src/+/00281713519dbd84b90d2996a009bf3a7e294435%5E%21/#F0 +Patch47: chromium-75.0.3770.100-git00281713.patch + +# Apply these changes to work around EPEL7 compiler issues +Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch +# Use lstdc++ on EPEL7 only +Patch101: chromium-75.0.3770.100-epel7-stdc++.patch +# el7 only patch +Patch102: chromium-75.0.3770.100-el7-fix-noexcept.patch + # In file included from ../linux/directory.c:21: # In file included from ../../../../native_client/src/nonsfi/linux/abi_conversion.h:20: # ../../../../native_client/src/nonsfi/linux/linux_syscall_structs.h:44:13: error: GNU-style inline assembly is disabled # __asm__ __volatile__("mov %%gs, %0" : "=r"(gs)); # ^ # 1 error generated. -Patch6: chromium-47.0.2526.80-pnacl-fgnu-inline-asm.patch +Patch200: chromium-47.0.2526.80-pnacl-fgnu-inline-asm.patch # Ignore broken nacl open fd counter -Patch7: chromium-47.0.2526.80-nacl-ignore-broken-fd-counter.patch -# Use libusb_interrupt_event_handler from current libusbx (1.0.21-0.1.git448584a) -Patch9: chromium-48.0.2564.116-libusb_interrupt_event_handler.patch -# Ignore deprecations in cups 2.2 -# https://bugs.chromium.org/p/chromium/issues/detail?id=622493 -Patch12: chromium-55.0.2883.75-cups22.patch -# Use PIE in the Linux sandbox (from openSUSE via Russian Fedora) -Patch15: chromium-70.0.3538.67-sandbox-pie.patch -# Use /etc/chromium for master_prefs -Patch18: chromium-68.0.3440.106-master-prefs-path.patch -# Disable MADV_FREE (if set by glibc) -# https://bugzilla.redhat.com/show_bug.cgi?id=1361157 -Patch19: chromium-52.0.2743.116-unset-madv_free.patch -# Use gn system files -Patch20: chromium-67.0.3396.62-gn-system.patch -# Fix last commit position issue -# https://groups.google.com/a/chromium.org/forum/#!topic/gn-dev/7nlJv486bD4 -# Patch21: chromium-60.0.3112.78-last-commit-position.patch -# Fix issue where timespec is not defined when sys/stat.h is included. -Patch22: chromium-53.0.2785.92-boringssl-time-fix.patch -# I wouldn't have to do this if there was a standard way to append extra compiler flags -Patch24: chromium-63.0.3289.84-nullfix.patch -# Add explicit includedir for jpeglib.h -Patch25: chromium-54.0.2840.59-jpeg-include-dir.patch -# On i686, pass --no-keep-memory --reduce-memory-overheads to ld. -Patch26: chromium-59.0.3071.86-i686-ld-memory-tricks.patch -# obj/content/renderer/renderer/child_frame_compositing_helper.o: In function `content::ChildFrameCompositingHelper::OnSetSurface(cc::SurfaceId const&, gfx::Size const&, float, cc::SurfaceSequence const&)': -# /builddir/build/BUILD/chromium-54.0.2840.90/out/Release/../../content/renderer/child_frame_compositing_helper.cc:214: undefined reference to `cc_blink::WebLayerImpl::setOpaque(bool)' -# Patch27: chromium-63.0.3289.84-setopaque.patch -# Use -fpermissive to build WebKit -# Patch31: chromium-56.0.2924.87-fpermissive.patch -# Fix issue with compilation on gcc7 -# Thanks to Ben Noordhuis -# Patch33: chromium-65.0.3325.146-gcc7.patch -# Revert https://chromium.googlesource.com/chromium/src/+/b794998819088f76b4cf44c8db6940240c563cf4%5E%21/#F0 -# https://bugs.chromium.org/p/chromium/issues/detail?id=712737 -# https://bugzilla.redhat.com/show_bug.cgi?id=1446851 -Patch36: chromium-58.0.3029.96-revert-b794998819088f76b4cf44c8db6940240c563cf4.patch -# Correctly compile the stdatomic.h in ffmpeg with gcc 4.8 -Patch37: chromium-64.0.3282.119-ffmpeg-stdatomic.patch -# Nacl can't die soon enough -Patch39: chromium-66.0.3359.117-system-clang.patch -# Do not prefix libpng functions -Patch42: chromium-60.0.3112.78-no-libpng-prefix.patch -# Do not mangle libjpeg -Patch43: chromium-60.0.3112.78-jpeg-nomangle.patch -# Do not mangle zlib -Patch45: chromium-75.0.3770.80-no-zlib-mangle.patch -# Apply these changes to work around EPEL7 compiler issues -Patch46: chromium-62.0.3202.62-kmaxskip-constexpr.patch -Patch47: chromium-60.0.3112.90-vulkan-force-c99.patch -# Fix libavutil include pathing to find arch specific timer.h -# For some reason, this only fails on aarch64. No idea why. -Patch50: chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch -# from gentoo -Patch53: chromium-61.0.3163.79-gcc-no-opt-safe-math.patch -# Only needed when glibc 2.26.90 or later is used -Patch57: chromium-63.0.3289.84-aarch64-glibc-2.26.90.patch -# From gentoo -Patch62: chromium-72.0.3626.121-gcc5-r3.patch -# Do not try to use libc++ in the remoting stack -# Patch63: chromium-63.0.3289.84-nolibc++.patch -# To use round with gcc, you need to #include -Patch65: chromium-65.0.3325.146-gcc-round-fix.patch -# Include proper headers to invoke memcpy() -Patch67: chromium-65.0.3325.146-memcpy-fix.patch -# ../../mojo/public/cpp/bindings/associated_interface_ptr_info.h:48:43: error: cannot convert 'const mojo::ScopedInterfaceEndpointHandle' to 'bool' in return -Patch85: chromium-68.0.3440.106-boolfix.patch -# From Debian -Patch86: chromium-71.0.3578.98-skia-aarch64-buildfix.patch -# Use lstdc++ on EPEL7 only -Patch87: chromium-75.0.3770.100-epel7-stdc++.patch -# Missing files in tarball -Patch88: chromium-66.0.3359.117-missing-files.patch -# https://chromium.googlesource.com/chromium/src/+/ba4141e451f4e0b1b19410b1b503bd32e150df06%5E%21/#F0 -# Patch89: chromium-66.0.3359.117-gcc-optional-move-fixes.patch -# https://chromium.googlesource.com/chromium/src/+/4f2b52281ce1649ea8347489443965ad33262ecc%5E%21 -# Patch90: chromium-66.0.3359.117-gcc-copy-constructor-fix.patch -# https://bugs.chromium.org/p/chromium/issues/detail?id=816952 -# Patch91: chromium-66.0.3359.117-gcc-vector-copy-constructor-fix.patch -# Do not use unrar code, it is non-free -Patch92: chromium-73.0.3683.75-norar.patch -# Upstream GCC fixes -Patch93: chromium-66.0.3359.117-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch -Patch94: chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch -# Patch95: chromium-65.0.3325.146-GCC-IDB-methods-String-renamed-to-GetString.patch -# https://github.com/archlinuxarm/PKGBUILDs/blob/master/extra/chromium/0006-GCC-do-not-use-initializer-list-for-NoDestructor-of-.patch -# Patch96: chromium-66.0.3359.117-GCC-do-not-use-initializer-list-for-NoDestructor-of-.patch -# https://chromium.googlesource.com/chromium/src/+/b84682f31dc99b9c90f5a04947075815697c68d9%5E%21/#F0 -# Patch97: chromium-66.0.3359.139-arm-init-fix.patch -# GCC8 has changed the alignof operator to return the minimal alignment required by the target ABI -# instead of the preferred alignment. This means int64_t is now 4 on i686 (instead of 8). -# Use __alignof__ to get the value we expect (and chromium checks for). -# Patch98: chromium-69.0.3497.81-gcc8-alignof.patch -# RHEL 7 has a bug in its python2.7 which does not propely handle exec with a tuple -# https://bugs.python.org/issue21591 -Patch100: chromium-67.0.3396.62-epel7-use-old-python-exec-syntax.patch -# Add "Fedora" to the user agent string -Patch101: chromium-72.0.3626.121-fedora-user-agent.patch -# Try to fix version.py for Rawhide -Patch103: chromium-71.0.3578.98-py2-bootstrap.patch -# Fix default on redeclaration error -# https://chromium.googlesource.com/chromium/src/+/122692ccee62223f266a988c575ae687e3f4c056%5E%21/#F0 -Patch110: chromium-68.0.3440.106-fix-default-on-redeclaration.patch -# Use Gentoo's Widevine hack -# https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-widevine-r3.patch -Patch111: chromium-71.0.3578.98-widevine-r3.patch -# Do not require sysroot -# Forget about trying to make libc++ -# BUILD SANELY PLEASE -Patch112: chromium-69.0.3497.81-build-sanely-please.patch -# Still moar GCC cleanups from upstream -# Patch113: chromium-gcc8-r588316.patch -# Patch114: chromium-gcc8-r588547.patch -# Patch115: chromium-gcc8-r589614.patch -# Patch116: chromium-gcc8-r591015.patch -# Disable fontconfig cache magic that breaks remoting -Patch117: chromium-70.0.3538.67-disable-fontconfig-cache-magic.patch -# Fix aarch64 build against latest linux kernel headers -Patch119: chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch +Patch201: chromium-47.0.2526.80-nacl-ignore-broken-fd-counter.patch + # Enable VAAPI support on Linux # NOTE: This patch will never land upstream -Patch121: enable-vaapi.patch -Patch122: chromium-75.0.3770.80-vaapi-i686-fpermissive.patch +Patch202: enable-vaapi.patch +Patch203: chromium-75.0.3770.80-vaapi-i686-fpermissive.patch # Fix compatibility with VA-API library (libva) version 1 -Patch124: chromium-75.0.3770.80-vaapi-libva1-compatibility.patch -# drop rsp clobber, which breaks gcc9 (thanks to Jeff Law) -Patch126: chromium-71.0.3578.98-gcc9-drop-rsp-clobber.patch -# Thanks Ubuntu -# Disable these two patches when v75 lands -Patch130: revert-gn-4980.patch -Patch131: revert-gn-4960.patch -# Try to load widevine from other places -Patch132: chromium-widevine-other-locations.patch -# Disable -fno-delete-null-pointer-checks -Patch135: chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch -# Add #include to get pipewire code to build -Patch136: chromium-73.0.3683.75-pipewire-cstring-fix.patch -# el7 only patch -Patch139: chromium-75.0.3770.100-el7-fix-noexcept.patch -# gcc does not have __assume -Patch140: chromium-75.0.3770.80-gcc-no-assume.patch -# Linux 5.2 defines SIOCGSTAMP in a slightly different way, so we need to teach chromium where to find it -Patch141: chromium-75.0.3770.80-SIOCGSTAMP.patch -# https://chromium.googlesource.com/chromium/src/+/aeed4d1f15ce84a17ea0bc219e258dc4982b2368%5E%21/#F0 -Patch142: chromium-75.0.3770.80-aeed4d-gcc-dcheck_ne-fix.patch -# Revert https://chromium.googlesource.com/chromium/src/+/daff6b66faae53a0cefb88987c9ff4843629b728%5E%21/#F0 -# It might make clang happy but it breaks gcc. F*** clang. -Patch143: chromium-75.0.3770.80-revert-daff6b.patch -# Avoid pure virtual crash destroying RenderProcessUserData -# https://chromium.googlesource.com/chromium/src/+/cdf306db81efaaaa954487585d5a5a16205a5ebd%5E%21/ -Patch144: chromium-75.0.3770.80-pure-virtual-crash-fix.patch -# rename function to avoid conflict with rawhide glibc "gettid()" -Patch145: chromium-75.0.3770.80-grpc-gettid-fix.patch -# fix v8 compile with gcc -# https://chromium.googlesource.com/v8/v8/+/3b8c624bda58d05aea80dd9626cd550537d6ac3f%5E%21/#F1 -Patch146: chromium-75.0.3770.100-fix-v8-gcc.patch -# https://chromium.googlesource.com/chromium/src/+/00281713519dbd84b90d2996a009bf3a7e294435%5E%21/#F0 -Patch147: chromium-75.0.3770.100-git00281713.patch - +Patch204: chromium-75.0.3770.80-vaapi-libva1-compatibility.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ @@ -837,97 +792,73 @@ udev. %patch0 -p1 -b .gcc5 %patch1 -p1 -b .pathmax %patch2 -p1 -b .addrfix -%patch4 -p1 -b .notest -# %%patch6 -p1 -b .gnu-inline -%patch7 -p1 -b .ignore-fd-count -%patch9 -p1 -b .modern-libusbx -%patch12 -p1 -b .cups22 -%patch15 -p1 -b .sandboxpie -%patch18 -p1 -b .etc -# %%patch19 -p1 -b .madv_free -%patch20 -p1 -b .gnsystem -# %%patch21 -p1 -b .lastcommit -%patch22 -p1 -b .timefix -%patch24 -p1 -b .nullfix -%patch25 -p1 -b .jpegfix -%patch26 -p1 -b .ldmemory -# %%patch27 -p1 -b .setopaque -# %%patch31 -p1 -b .permissive -# %%patch33 -p1 -b .gcc7 -%patch36 -p1 -b .revert -%patch37 -p1 -b .ffmpeg-stdatomic -%patch39 -p1 -b .system-clang -%patch42 -p1 -b .noprefix -%patch43 -p1 -b .nomangle -%patch45 -p1 -b .nozmangle +%patch3 -p1 -b .notest +%patch4 -p1 -b .modern-libusbx +%patch5 -p1 -b .cups22 +%patch6 -p1 -b .sandboxpie +%patch7 -p1 -b .etc +%patch8 -p1 -b .gnsystem +%patch9 -p1 -b .timefix +%patch10 -p1 -b .nullfix +%patch11 -p1 -b .jpegfix +%patch12 -p1 -b .ldmemory +%patch13 -p1 -b .revert +%patch14 -p1 -b .ffmpeg-stdatomic +%patch15 -p1 -b .system-clang +%patch16 -p1 -b .noprefix +%patch17 -p1 -b .nomangle +%patch18 -p1 -b .nozmangle +%patch19 -p1 -b .pathfix +%patch20 -p1 -b .nogccoptmath +%patch21 -p1 -b .gcc5-r3 +%patch22 -p1 -b .gcc-round-fix +%patch23 -p1 -b .memcpyfix +%patch24 -p1 -b .boolfix +%patch25 -p1 -b .aarch64fix +%patch26 -p1 -b .missing-files +%patch27 -p1 -b .nounrar +%patch28 -p1 -b .gcc-cpolicyprovider +%patch29 -p1 -b .fedora-user-agent +%patch30 -p1 -b .py2 +%patch31 -p1 -b .fix-default-redeclaration +%patch32 -p1 -b .wvhack +%patch33 -p1 -b .sanebuild +%patch34 -p1 -b .nofc +%patch35 -p1 -b .aarch64-new-stat +%patch36 -p1 -b .gcc9 +%patch37 -p1 -b .widevine-other-locations +%patch38 -p1 -b .disable-ndnpc +%patch39 -p1 -b .cstring-fix +%patch40 -p1 -b .gcc-assume +%patch41 -p1 -b .SIOCGSTAMP +%patch42 -p1 -b .gcc-dcheck_ne-fix +%patch43 -p1 -b .revert-daff6b +%patch44 -p1 -b .pure-virtual-fix +%patch45 -p1 -b .gettid-fix +%patch46 -p1 -b .fix-v8-gcc +%patch47 -p1 -b .git00281713 + +# EPEL specific patches %if 0%{?rhel} == 7 -%patch46 -p1 -b .kmaxskip -# %%patch47 -p1 -b .c99 +%patch100 -p1 -b .kmaxskip +%patch101 -p1 -b .epel7 +%patch102 -p1 -b .el7-noexcept %endif -%patch50 -p1 -b .pathfix -%patch53 -p1 -b .nogccoptmath -# %%if 0%%{?fedora} >= 28 -# %%patch57 -p1 -b .aarch64glibc -# %%endif -%patch62 -p1 -b .gcc5-r3 -# %%patch63 -p1 -b .nolibc++ -%patch65 -p1 -b .gcc-round-fix -%patch67 -p1 -b .memcpyfix -%patch85 -p1 -b .boolfix -%patch86 -p1 -b .aarch64fix -%if 0%{?rhel} == 7 -%patch87 -p1 -b .epel7 + +# Feature specific patches +%if ! 0%{?killnacl} +%patch200 -p1 -b .gnu-inline +%patch201 -p1 -b .ignore-fd-count %endif -%patch88 -p1 -b .missing -# %%patch89 -p1 -b .gccomove -# %%patch90 -p1 -b .copycon -# %%patch91 -p1 -b .944404 -%patch92 -p1 -b .nounrar -# %%patch93 -p1 -b .gcc-full-decl -%patch94 -p1 -b .gcc-cpolicyprovider -# %%patch95 -p1 -b .gcc-getstring -# %%patch96 -p1 -b .flatsetfix -# %%patch97 -p1 -b .arm-init-fix -# %%patch98 -p1 -b .gcc8-alignof -%if 0%{?rhel} == 7 -# %%patch100 -p1 -b .oldexec -%endif -%patch101 -p1 -b .fedora-user-agent -%patch103 -p1 -b .py2 -# %%patch108 -p1 -b .move-unique-ptr -%patch110 -p1 -b .fix-default-redeclaration -%patch111 -p1 -b .wvhack -%patch112 -p1 -b .sanebuild -# %%patch113 -p1 -b .r588316 -# %%patch114 -p1 -b .r588547 -# %%patch115 -p1 -b .r589614 -# %%patch116 -p1 -b .r591015 -%patch117 -p1 -b .nofc -%patch119 -p1 -b .aarch64-new-stat + %if %{use_vaapi} -%patch121 -p1 -b .vaapi -%endif +%patch202 -p1 -b .vaapi %ifarch i686 -%patch122 -p1 -b .i686permissive +%patch203 -p1 -b .i686permissive +%patch204 -p1 -b .va1compat %endif -%patch124 -p1 -b .va1compat -%patch126 -p1 -b .gcc9 -# %%patch130 -p1 -b .revert-gn-4980 -# %%patch131 -p1 -b .revert-gn-4960 -%patch132 -p1 -b .widevine-other-locations -%patch135 -p1 -b .disable-ndnpc -%patch136 -p1 -b .cstring-fix -%if 0%{?rhel} == 7 -%patch139 -p1 -b .el7-noexcept %endif -%patch140 -p1 -b .gcc-assume -%patch141 -p1 -b .SIOCGSTAMP -%patch142 -p1 -b .gcc-dcheck_ne-fix -%patch143 -p1 -b .revert-daff6b -%patch144 -p1 -b .pure-virtual-fix -%patch145 -p1 -b .gettid-fix -%patch146 -p1 -b .fix-v8-gcc -%patch147 -p1 -b .git00281713 + # Change shebang in all relevant files in this directory and all subdirectories # See `man find` for how the `-exec command {} +` syntax works diff --git a/relax-libva-version.patch b/relax-libva-version.patch deleted file mode 100644 index e297fd6..0000000 --- a/relax-libva-version.patch +++ /dev/null @@ -1,56 +0,0 @@ -From 6f1309ef8fe10965e4d0018b4f1b80ac6deccdaa Mon Sep 17 00:00:00 2001 -From: Azhar Shaikh -Date: Fri, 30 Nov 2018 23:11:57 +0000 -Subject: [PATCH] media/gpu/vaapi: Relax the version check for VA-API - -Since the newer versions of VA-API are ABI compatible, relax the -version checks for VA-API, by using VA_CHECK_VERSION(). -This will help in updating the libva to the latest releases, -while still supporting the old versions, till the new version of -libva is merged and picked by the builds. Thus ensuring that -hardware accleration is not broken while updating the libva. - -Bug: 905814 -TEST=libva-2.3.0 and libva-2.1.0 are able to do hardware acceleration. - -Suggested-by: Alexandre Courbot -Signed-off-by: Azhar Shaikh -Change-Id: I510549f72290d20676927eeeeb89a87199c062af -Reviewed-on: https://chromium-review.googlesource.com/c/1352519 -Reviewed-by: Alexandre Courbot -Reviewed-by: Hirokazu Honda -Commit-Queue: Miguel Casas -Cr-Commit-Position: refs/heads/master@{#612832} ---- - -diff --git a/AUTHORS b/AUTHORS -index 567fe15..ff42fc5 100644 ---- a/AUTHORS -+++ b/AUTHORS -@@ -103,6 +103,7 @@ - Attila Dusnoki - Avinaash Doreswamy - Ayush Khandelwal -+Azhar Shaikh - Balazs Kelemen - Baul Eun - Behara Mani Shyam Patro -diff --git a/media/gpu/vaapi/vaapi_wrapper.cc b/media/gpu/vaapi/vaapi_wrapper.cc -index b415642..053384d 100644 ---- a/media/gpu/vaapi/vaapi_wrapper.cc -+++ b/media/gpu/vaapi/vaapi_wrapper.cc -@@ -333,7 +333,13 @@ - DVLOG(1) << "VAAPI version: " << major_version << "." << minor_version << " " - << va_vendor_string_; - -- if (major_version != VA_MAJOR_VERSION || minor_version != VA_MINOR_VERSION) { -+ // The VAAPI version is determined from what is loaded on the system by -+ // calling vaInitialize(). We want a runtime evaluation of libva version, -+ // of what is loaded on the system, with, what browser is compiled with. -+ // Also since the libva is now ABI-compatible, relax the version check -+ // which helps in upgrading the libva, without breaking any existing -+ // functionality. -+ if (!VA_CHECK_VERSION(major_version, minor_version, 0)) { - LOG(ERROR) << "This build of Chromium requires VA-API version " - << VA_MAJOR_VERSION << "." << VA_MINOR_VERSION - << ", system version: " << major_version << "." << minor_version; diff --git a/revert-gn-4960.patch b/revert-gn-4960.patch deleted file mode 100644 index bb51ada..0000000 --- a/revert-gn-4960.patch +++ /dev/null @@ -1,655 +0,0 @@ -Description: revert https://gn.googlesource.com/gn/+/0d038c2e0a32a528713d3dfaf1f1e0cdfe87fd46, which breaks the chromium build - ---- a/tools/gn/build/gen.py -+++ b/tools/gn/build/gen.py -@@ -522,6 +522,7 @@ def WriteGNNinja(path, platform, host, o - 'tools/gn/setup.cc', - 'tools/gn/source_dir.cc', - 'tools/gn/source_file.cc', -+ 'tools/gn/source_file_type.cc', - 'tools/gn/standard_out.cc', - 'tools/gn/string_utils.cc', - 'tools/gn/substitution_list.cc', ---- a/tools/gn/tools/gn/c_tool.h -+++ b/tools/gn/tools/gn/c_tool.h -@@ -12,6 +12,7 @@ - #include "tools/gn/label.h" - #include "tools/gn/label_ptr.h" - #include "tools/gn/scope.h" -+#include "tools/gn/source_file_type.h" - #include "tools/gn/substitution_list.h" - #include "tools/gn/substitution_pattern.h" - #include "tools/gn/tool.h" ---- a/tools/gn/tools/gn/compile_commands_writer.cc -+++ b/tools/gn/tools/gn/compile_commands_writer.cc -@@ -122,7 +122,7 @@ void WriteCommand(const Target* target, - const CompileFlags& flags, - std::vector& tool_outputs, - PathOutput& path_output, -- SourceFile::Type source_type, -+ SourceFileType source_type, - const char* tool_name, - EscapeOptions opts, - std::string* compile_commands) { -@@ -144,16 +144,16 @@ void WriteCommand(const Target* target, - } else if (range.type == &CSubstitutionCFlags) { - command_out << flags.cflags; - } else if (range.type == &CSubstitutionCFlagsC) { -- if (source_type == SourceFile::SOURCE_C) -+ if (source_type == SOURCE_C) - command_out << flags.cflags_c; - } else if (range.type == &CSubstitutionCFlagsCc) { -- if (source_type == SourceFile::SOURCE_CPP) -+ if (source_type == SOURCE_CPP) - command_out << flags.cflags_cc; - } else if (range.type == &CSubstitutionCFlagsObjC) { -- if (source_type == SourceFile::SOURCE_M) -+ if (source_type == SOURCE_M) - command_out << flags.cflags_objc; - } else if (range.type == &CSubstitutionCFlagsObjCc) { -- if (source_type == SourceFile::SOURCE_MM) -+ if (source_type == SOURCE_MM) - command_out << flags.cflags_objcc; - } else if (range.type == &SubstitutionLabel || - range.type == &SubstitutionLabelName || -@@ -222,11 +222,9 @@ void CompileCommandsWriter::RenderJSON(c - for (const auto& source : target->sources()) { - // If this source is not a C/C++/ObjC/ObjC++ source (not header) file, - // continue as it does not belong in the compilation database. -- SourceFile::Type source_type = source.type(); -- if (source_type != SourceFile::SOURCE_CPP && -- source_type != SourceFile::SOURCE_C && -- source_type != SourceFile::SOURCE_M && -- source_type != SourceFile::SOURCE_MM) -+ SourceFileType source_type = GetSourceFileType(source); -+ if (source_type != SOURCE_CPP && source_type != SOURCE_C && -+ source_type != SOURCE_M && source_type != SOURCE_MM) - continue; - - const char* tool_name = Tool::kToolNone; -@@ -324,4 +322,4 @@ void CompileCommandsWriter::VisitDeps(co - VisitDeps(pair.ptr, visited); - } - } --} -+} -\ No newline at end of file ---- a/tools/gn/tools/gn/general_tool.h -+++ b/tools/gn/tools/gn/general_tool.h -@@ -11,6 +11,7 @@ - #include "base/macros.h" - #include "tools/gn/label.h" - #include "tools/gn/label_ptr.h" -+#include "tools/gn/source_file_type.h" - #include "tools/gn/substitution_list.h" - #include "tools/gn/substitution_pattern.h" - #include "tools/gn/tool.h" ---- a/tools/gn/tools/gn/header_checker.cc -+++ b/tools/gn/tools/gn/header_checker.cc -@@ -18,6 +18,7 @@ - #include "tools/gn/err.h" - #include "tools/gn/filesystem_utils.h" - #include "tools/gn/scheduler.h" -+#include "tools/gn/source_file_type.h" - #include "tools/gn/target.h" - #include "tools/gn/trace.h" - #include "util/worker_pool.h" -@@ -151,10 +152,9 @@ void HeaderChecker::RunCheckOverFiles(co - - for (const auto& file : files) { - // Only check C-like source files (RC files also have includes). -- SourceFile::Type type = file.first.type(); -- if (type != SourceFile::SOURCE_CPP && type != SourceFile::SOURCE_H && -- type != SourceFile::SOURCE_C && type != SourceFile::SOURCE_M && -- type != SourceFile::SOURCE_MM && type != SourceFile::SOURCE_RC) -+ SourceFileType type = GetSourceFileType(file.first); -+ if (type != SOURCE_CPP && type != SOURCE_H && type != SOURCE_C && -+ type != SOURCE_M && type != SOURCE_MM && type != SOURCE_RC) - continue; - - if (!check_generated_) { ---- a/tools/gn/tools/gn/ninja_binary_target_writer.cc -+++ b/tools/gn/tools/gn/ninja_binary_target_writer.cc -@@ -23,23 +23,22 @@ - #include "tools/gn/ninja_utils.h" - #include "tools/gn/scheduler.h" - #include "tools/gn/settings.h" -+#include "tools/gn/source_file_type.h" - #include "tools/gn/string_utils.h" - #include "tools/gn/substitution_writer.h" - #include "tools/gn/target.h" - - bool NinjaBinaryTargetWriter::SourceFileTypeSet::CSourceUsed() { -- return Get(SourceFile::SOURCE_CPP) || Get(SourceFile::SOURCE_H) || -- Get(SourceFile::SOURCE_C) || Get(SourceFile::SOURCE_M) || -- Get(SourceFile::SOURCE_MM) || Get(SourceFile::SOURCE_RC) || -- Get(SourceFile::SOURCE_S); -+ return Get(SOURCE_CPP) || Get(SOURCE_H) || Get(SOURCE_C) || Get(SOURCE_M) || -+ Get(SOURCE_MM) || Get(SOURCE_RC) || Get(SOURCE_S); - } - - bool NinjaBinaryTargetWriter::SourceFileTypeSet::RustSourceUsed() { -- return Get(SourceFile::SOURCE_RS); -+ return Get(SOURCE_RS); - } - - bool NinjaBinaryTargetWriter::SourceFileTypeSet::GoSourceUsed() { -- return Get(SourceFile::SOURCE_GO); -+ return Get(SOURCE_GO); - } - - NinjaBinaryTargetWriter::NinjaBinaryTargetWriter(const Target* target, -@@ -50,6 +49,10 @@ NinjaBinaryTargetWriter::NinjaBinaryTarg - NinjaBinaryTargetWriter::~NinjaBinaryTargetWriter() = default; - - void NinjaBinaryTargetWriter::Run() { -+ SourceFileTypeSet used_types; -+ for (const auto& source : target_->sources()) -+ used_types.Set(GetSourceFileType(source)); -+ - NinjaCBinaryTargetWriter writer(target_, out_); - writer.Run(); - } ---- a/tools/gn/tools/gn/ninja_binary_target_writer.h -+++ b/tools/gn/tools/gn/ninja_binary_target_writer.h -@@ -23,12 +23,11 @@ class NinjaBinaryTargetWriter : public N - class SourceFileTypeSet { - public: - SourceFileTypeSet() { -- memset(flags_, 0, -- sizeof(bool) * static_cast(SourceFile::SOURCE_NUMTYPES)); -+ memset(flags_, 0, sizeof(bool) * static_cast(SOURCE_NUMTYPES)); - } - -- void Set(SourceFile::Type type) { flags_[static_cast(type)] = true; } -- bool Get(SourceFile::Type type) const { -+ void Set(SourceFileType type) { flags_[static_cast(type)] = true; } -+ bool Get(SourceFileType type) const { - return flags_[static_cast(type)]; - } - -@@ -37,7 +36,7 @@ class NinjaBinaryTargetWriter : public N - bool GoSourceUsed(); - - private: -- bool flags_[static_cast(SourceFile::SOURCE_NUMTYPES)]; -+ bool flags_[static_cast(SOURCE_NUMTYPES)]; - }; - - NinjaBinaryTargetWriter(const Target* target, std::ostream& out); ---- a/tools/gn/tools/gn/ninja_c_binary_target_writer.cc -+++ b/tools/gn/tools/gn/ninja_c_binary_target_writer.cc -@@ -24,6 +24,7 @@ - #include "tools/gn/ninja_utils.h" - #include "tools/gn/scheduler.h" - #include "tools/gn/settings.h" -+#include "tools/gn/source_file_type.h" - #include "tools/gn/string_utils.h" - #include "tools/gn/substitution_writer.h" - #include "tools/gn/target.h" -@@ -66,27 +67,27 @@ void AddSourceSetObjectFiles(const Targe - if (source_set->GetOutputFilesForSource(source, &tool_name, &tool_outputs)) - obj_files->push_back(tool_outputs[0]); - -- used_types.Set(source.type()); -+ used_types.Set(GetSourceFileType(source)); - } - - // Add MSVC precompiled header object files. GCC .gch files are not object - // files so they are omitted. - if (source_set->config_values().has_precompiled_headers()) { -- if (used_types.Get(SourceFile::SOURCE_C)) { -+ if (used_types.Get(SOURCE_C)) { - const CTool* tool = source_set->toolchain()->GetToolAsC(CTool::kCToolCc); - if (tool && tool->precompiled_header_type() == CTool::PCH_MSVC) { - GetPCHOutputFiles(source_set, CTool::kCToolCc, &tool_outputs); - obj_files->Append(tool_outputs.begin(), tool_outputs.end()); - } - } -- if (used_types.Get(SourceFile::SOURCE_CPP)) { -+ if (used_types.Get(SOURCE_CPP)) { - const CTool* tool = source_set->toolchain()->GetToolAsC(CTool::kCToolCxx); - if (tool && tool->precompiled_header_type() == CTool::PCH_MSVC) { - GetPCHOutputFiles(source_set, CTool::kCToolCxx, &tool_outputs); - obj_files->Append(tool_outputs.begin(), tool_outputs.end()); - } - } -- if (used_types.Get(SourceFile::SOURCE_M)) { -+ if (used_types.Get(SOURCE_M)) { - const CTool* tool = - source_set->toolchain()->GetToolAsC(CTool::kCToolObjC); - if (tool && tool->precompiled_header_type() == CTool::PCH_MSVC) { -@@ -94,7 +95,7 @@ void AddSourceSetObjectFiles(const Targe - obj_files->Append(tool_outputs.begin(), tool_outputs.end()); - } - } -- if (used_types.Get(SourceFile::SOURCE_MM)) { -+ if (used_types.Get(SOURCE_MM)) { - const CTool* tool = - source_set->toolchain()->GetToolAsC(CTool::kCToolObjCxx); - if (tool && tool->precompiled_header_type() == CTool::PCH_MSVC) { -@@ -118,7 +119,7 @@ void NinjaCBinaryTargetWriter::Run() { - // Figure out what source types are needed. - SourceFileTypeSet used_types; - for (const auto& source : target_->sources()) -- used_types.Set(source.type()); -+ used_types.Set(GetSourceFileType(source)); - - WriteCompilerVars(used_types); - -@@ -234,34 +235,31 @@ void NinjaCBinaryTargetWriter::WriteComp - target_->config_values().has_precompiled_headers(); - - EscapeOptions opts = GetFlagOptions(); -- if (used_types.Get(SourceFile::SOURCE_S) || -- used_types.Get(SourceFile::SOURCE_ASM)) { -+ if (used_types.Get(SOURCE_S) || used_types.Get(SOURCE_ASM)) { - WriteOneFlag(target_, &CSubstitutionAsmFlags, false, Tool::kToolNone, - &ConfigValues::asmflags, opts, path_output_, out_); - } -- if (used_types.Get(SourceFile::SOURCE_C) || -- used_types.Get(SourceFile::SOURCE_CPP) || -- used_types.Get(SourceFile::SOURCE_M) || -- used_types.Get(SourceFile::SOURCE_MM)) { -+ if (used_types.Get(SOURCE_C) || used_types.Get(SOURCE_CPP) || -+ used_types.Get(SOURCE_M) || used_types.Get(SOURCE_MM)) { - WriteOneFlag(target_, &CSubstitutionCFlags, false, Tool::kToolNone, - &ConfigValues::cflags, opts, path_output_, out_); - } -- if (used_types.Get(SourceFile::SOURCE_C)) { -+ if (used_types.Get(SOURCE_C)) { - WriteOneFlag(target_, &CSubstitutionCFlagsC, has_precompiled_headers, - CTool::kCToolCc, &ConfigValues::cflags_c, opts, path_output_, - out_); - } -- if (used_types.Get(SourceFile::SOURCE_CPP)) { -+ if (used_types.Get(SOURCE_CPP)) { - WriteOneFlag(target_, &CSubstitutionCFlagsCc, has_precompiled_headers, - CTool::kCToolCxx, &ConfigValues::cflags_cc, opts, path_output_, - out_); - } -- if (used_types.Get(SourceFile::SOURCE_M)) { -+ if (used_types.Get(SOURCE_M)) { - WriteOneFlag(target_, &CSubstitutionCFlagsObjC, has_precompiled_headers, - CTool::kCToolObjC, &ConfigValues::cflags_objc, opts, - path_output_, out_); - } -- if (used_types.Get(SourceFile::SOURCE_MM)) { -+ if (used_types.Get(SOURCE_MM)) { - WriteOneFlag(target_, &CSubstitutionCFlagsObjCc, has_precompiled_headers, - CTool::kCToolObjCxx, &ConfigValues::cflags_objcc, opts, - path_output_, out_); -@@ -321,14 +319,14 @@ void NinjaCBinaryTargetWriter::WritePCHC - - const CTool* tool_c = target_->toolchain()->GetToolAsC(CTool::kCToolCc); - if (tool_c && tool_c->precompiled_header_type() != CTool::PCH_NONE && -- used_types.Get(SourceFile::SOURCE_C)) { -+ used_types.Get(SOURCE_C)) { - WritePCHCommand(&CSubstitutionCFlagsC, CTool::kCToolCc, - tool_c->precompiled_header_type(), input_dep, - order_only_deps, object_files, other_files); - } - const CTool* tool_cxx = target_->toolchain()->GetToolAsC(CTool::kCToolCxx); - if (tool_cxx && tool_cxx->precompiled_header_type() != CTool::PCH_NONE && -- used_types.Get(SourceFile::SOURCE_CPP)) { -+ used_types.Get(SOURCE_CPP)) { - WritePCHCommand(&CSubstitutionCFlagsCc, CTool::kCToolCxx, - tool_cxx->precompiled_header_type(), input_dep, - order_only_deps, object_files, other_files); -@@ -336,7 +334,7 @@ void NinjaCBinaryTargetWriter::WritePCHC - - const CTool* tool_objc = target_->toolchain()->GetToolAsC(CTool::kCToolObjC); - if (tool_objc && tool_objc->precompiled_header_type() == CTool::PCH_GCC && -- used_types.Get(SourceFile::SOURCE_M)) { -+ used_types.Get(SOURCE_M)) { - WritePCHCommand(&CSubstitutionCFlagsObjC, CTool::kCToolObjC, - tool_objc->precompiled_header_type(), input_dep, - order_only_deps, object_files, other_files); -@@ -345,7 +343,7 @@ void NinjaCBinaryTargetWriter::WritePCHC - const CTool* tool_objcxx = - target_->toolchain()->GetToolAsC(CTool::kCToolObjCxx); - if (tool_objcxx && tool_objcxx->precompiled_header_type() == CTool::PCH_GCC && -- used_types.Get(SourceFile::SOURCE_MM)) { -+ used_types.Get(SOURCE_MM)) { - WritePCHCommand(&CSubstitutionCFlagsObjCc, CTool::kCToolObjCxx, - tool_objcxx->precompiled_header_type(), input_dep, - order_only_deps, object_files, other_files); -@@ -478,7 +476,7 @@ void NinjaCBinaryTargetWriter::WriteSour - deps.resize(0); - const char* tool_name = Tool::kToolNone; - if (!target_->GetOutputFilesForSource(source, &tool_name, &tool_outputs)) { -- if (source.type() == SourceFile::SOURCE_DEF) -+ if (GetSourceFileType(source) == SOURCE_DEF) - other_files->push_back(source); - continue; // No output for this source. - } -@@ -599,7 +597,7 @@ void NinjaCBinaryTargetWriter::WriteLink - const SourceFile* optional_def_file = nullptr; - if (!other_files.empty()) { - for (const SourceFile& src_file : other_files) { -- if (src_file.type() == SourceFile::SOURCE_DEF) { -+ if (GetSourceFileType(src_file) == SOURCE_DEF) { - optional_def_file = &src_file; - implicit_deps.push_back( - OutputFile(settings_->build_settings(), src_file)); ---- a/tools/gn/tools/gn/source_file.cc -+++ b/tools/gn/tools/gn/source_file.cc -@@ -21,48 +21,18 @@ void AssertValueSourceFileString(const s - DCHECK(!EndsWithSlash(s)) << s; - } - --SourceFile::Type GetSourceFileType(const std::string& file) { -- base::StringPiece extension = FindExtension(&file); -- if (extension == "cc" || extension == "cpp" || extension == "cxx") -- return SourceFile::SOURCE_CPP; -- if (extension == "h" || extension == "hpp" || extension == "hxx" || -- extension == "hh" || extension == "inc") -- return SourceFile::SOURCE_H; -- if (extension == "c") -- return SourceFile::SOURCE_C; -- if (extension == "m") -- return SourceFile::SOURCE_M; -- if (extension == "mm") -- return SourceFile::SOURCE_MM; -- if (extension == "rc") -- return SourceFile::SOURCE_RC; -- if (extension == "S" || extension == "s" || extension == "asm") -- return SourceFile::SOURCE_S; -- if (extension == "o" || extension == "obj") -- return SourceFile::SOURCE_O; -- if (extension == "def") -- return SourceFile::SOURCE_DEF; -- if (extension == "rs") -- return SourceFile::SOURCE_RS; -- if (extension == "go") -- return SourceFile::SOURCE_GO; -- -- return SourceFile::SOURCE_UNKNOWN; --} -- - } // namespace - --SourceFile::SourceFile() : type_(SOURCE_UNKNOWN) {} -+SourceFile::SourceFile() = default; - - SourceFile::SourceFile(const base::StringPiece& p) -- : value_(p.data(), p.size()), type_(GetSourceFileType(value_)) { -+ : value_(p.data(), p.size()) { - DCHECK(!value_.empty()); - AssertValueSourceFileString(value_); - NormalizePath(&value_); - } - --SourceFile::SourceFile(SwapIn, std::string* value) -- : type_(GetSourceFileType(*value)) { -+SourceFile::SourceFile(SwapIn, std::string* value) { - value_.swap(*value); - DCHECK(!value_.empty()); - AssertValueSourceFileString(value_); ---- a/tools/gn/tools/gn/source_file.h -+++ b/tools/gn/tools/gn/source_file.h -@@ -20,28 +20,6 @@ class SourceDir; - // ends in one. - class SourceFile { - public: -- // This should be sequential integers starting from 0 so they can be used as -- // array indices. -- enum Type { -- SOURCE_UNKNOWN = 0, -- SOURCE_ASM, -- SOURCE_C, -- SOURCE_CPP, -- SOURCE_H, -- SOURCE_M, -- SOURCE_MM, -- SOURCE_S, -- SOURCE_RC, -- SOURCE_O, // Object files can be inputs, too. Also counts .obj. -- SOURCE_DEF, -- -- SOURCE_RS, -- SOURCE_GO, -- -- // Must be last. -- SOURCE_NUMTYPES, -- }; -- - enum SwapIn { SWAP_IN }; - - SourceFile(); -@@ -58,7 +36,6 @@ class SourceFile { - - bool is_null() const { return value_.empty(); } - const std::string& value() const { return value_; } -- Type type() const { return type_; } - - // Returns everything after the last slash. - std::string GetName() const; -@@ -103,7 +80,6 @@ class SourceFile { - friend class SourceDir; - - std::string value_; -- Type type_; - - // Copy & assign supported. - }; ---- /dev/null -+++ b/tools/gn/tools/gn/source_file_type.cc -@@ -0,0 +1,37 @@ -+// Copyright 2014 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. -+ -+#include "tools/gn/source_file_type.h" -+ -+#include "tools/gn/filesystem_utils.h" -+#include "tools/gn/source_file.h" -+ -+SourceFileType GetSourceFileType(const SourceFile& file) { -+ base::StringPiece extension = FindExtension(&file.value()); -+ if (extension == "cc" || extension == "cpp" || extension == "cxx") -+ return SOURCE_CPP; -+ if (extension == "h" || extension == "hpp" || extension == "hxx" || -+ extension == "hh") -+ return SOURCE_H; -+ if (extension == "c") -+ return SOURCE_C; -+ if (extension == "m") -+ return SOURCE_M; -+ if (extension == "mm") -+ return SOURCE_MM; -+ if (extension == "rc") -+ return SOURCE_RC; -+ if (extension == "S" || extension == "s" || extension == "asm") -+ return SOURCE_S; -+ if (extension == "o" || extension == "obj") -+ return SOURCE_O; -+ if (extension == "def") -+ return SOURCE_DEF; -+ if (extension == "rs") -+ return SOURCE_RS; -+ if (extension == "go") -+ return SOURCE_GO; -+ -+ return SOURCE_UNKNOWN; -+} ---- /dev/null -+++ b/tools/gn/tools/gn/source_file_type.h -@@ -0,0 +1,34 @@ -+// Copyright 2014 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. -+ -+#ifndef TOOLS_GN_SOURCE_FILE_TYPE_H_ -+#define TOOLS_GN_SOURCE_FILE_TYPE_H_ -+ -+class SourceFile; -+ -+// This should be sequential integers starting from 0 so they can be used as -+// array indices. -+enum SourceFileType { -+ SOURCE_UNKNOWN = 0, -+ SOURCE_ASM, -+ SOURCE_C, -+ SOURCE_CPP, -+ SOURCE_H, -+ SOURCE_M, -+ SOURCE_MM, -+ SOURCE_S, -+ SOURCE_RC, -+ SOURCE_O, // Object files can be inputs, too. Also counts .obj. -+ SOURCE_DEF, -+ -+ SOURCE_RS, -+ SOURCE_GO, -+ -+ // Must be last. -+ SOURCE_NUMTYPES, -+}; -+ -+SourceFileType GetSourceFileType(const SourceFile& file); -+ -+#endif // TOOLS_GN_SOURCE_FILE_TYPE_H_ ---- a/tools/gn/tools/gn/target.cc -+++ b/tools/gn/tools/gn/target.cc -@@ -16,6 +16,7 @@ - #include "tools/gn/filesystem_utils.h" - #include "tools/gn/functions.h" - #include "tools/gn/scheduler.h" -+#include "tools/gn/source_file_type.h" - #include "tools/gn/substitution_writer.h" - #include "tools/gn/tool.h" - #include "tools/gn/toolchain.h" -@@ -486,10 +487,10 @@ bool Target::GetOutputFilesForSource(con - outputs->clear(); - *computed_tool_type = Tool::kToolNone; - -- SourceFile::Type file_type = source.type(); -- if (file_type == SourceFile::SOURCE_UNKNOWN) -+ SourceFileType file_type = GetSourceFileType(source); -+ if (file_type == SOURCE_UNKNOWN) - return false; -- if (file_type == SourceFile::SOURCE_O) { -+ if (file_type == SOURCE_O) { - // Object files just get passed to the output and not compiled. - outputs->push_back(OutputFile(settings()->build_settings(), source)); - return true; ---- a/tools/gn/tools/gn/tool.cc -+++ b/tools/gn/tools/gn/tool.cc -@@ -261,27 +261,27 @@ std::unique_ptr Tool::CreateTool(c - } - - // static --const char* Tool::GetToolTypeForSourceType(SourceFile::Type type) { -+const char* Tool::GetToolTypeForSourceType(SourceFileType type) { - switch (type) { -- case SourceFile::SOURCE_C: -+ case SOURCE_C: - return CTool::kCToolCc; -- case SourceFile::SOURCE_CPP: -+ case SOURCE_CPP: - return CTool::kCToolCxx; -- case SourceFile::SOURCE_M: -+ case SOURCE_M: - return CTool::kCToolObjC; -- case SourceFile::SOURCE_MM: -+ case SOURCE_MM: - return CTool::kCToolObjCxx; -- case SourceFile::SOURCE_ASM: -- case SourceFile::SOURCE_S: -+ case SOURCE_ASM: -+ case SOURCE_S: - return CTool::kCToolAsm; -- case SourceFile::SOURCE_RC: -+ case SOURCE_RC: - return CTool::kCToolRc; -- case SourceFile::SOURCE_UNKNOWN: -- case SourceFile::SOURCE_H: -- case SourceFile::SOURCE_O: -- case SourceFile::SOURCE_DEF: -- case SourceFile::SOURCE_GO: -- case SourceFile::SOURCE_RS: -+ case SOURCE_UNKNOWN: -+ case SOURCE_H: -+ case SOURCE_O: -+ case SOURCE_DEF: -+ case SOURCE_GO: -+ case SOURCE_RS: - return kToolNone; - default: - NOTREACHED(); ---- a/tools/gn/tools/gn/tool.h -+++ b/tools/gn/tools/gn/tool.h -@@ -12,7 +12,7 @@ - #include "tools/gn/label.h" - #include "tools/gn/label_ptr.h" - #include "tools/gn/scope.h" --#include "tools/gn/source_file.h" -+#include "tools/gn/source_file_type.h" - #include "tools/gn/substitution_list.h" - #include "tools/gn/substitution_pattern.h" - -@@ -171,7 +171,7 @@ class Tool { - Toolchain* toolchain, - Err* err); - -- static const char* GetToolTypeForSourceType(SourceFile::Type type); -+ static const char* GetToolTypeForSourceType(SourceFileType type); - static const char* GetToolTypeForTargetFinalOutput(const Target* target); - - protected: ---- a/tools/gn/tools/gn/toolchain.cc -+++ b/tools/gn/tools/gn/toolchain.cc -@@ -88,16 +88,16 @@ void Toolchain::ToolchainSetupComplete() - setup_complete_ = true; - } - --const Tool* Toolchain::GetToolForSourceType(SourceFile::Type type) const { -+const Tool* Toolchain::GetToolForSourceType(SourceFileType type) const { - return GetTool(Tool::GetToolTypeForSourceType(type)); - } - --const CTool* Toolchain::GetToolForSourceTypeAsC(SourceFile::Type type) const { -+const CTool* Toolchain::GetToolForSourceTypeAsC(SourceFileType type) const { - return GetToolAsC(Tool::GetToolTypeForSourceType(type)); - } - - const GeneralTool* Toolchain::GetToolForSourceTypeAsGeneral( -- SourceFile::Type type) const { -+ SourceFileType type) const { - return GetToolAsGeneral(Tool::GetToolTypeForSourceType(type)); - } - ---- a/tools/gn/tools/gn/toolchain.h -+++ b/tools/gn/tools/gn/toolchain.h -@@ -12,6 +12,7 @@ - #include "tools/gn/item.h" - #include "tools/gn/label_ptr.h" - #include "tools/gn/scope.h" -+#include "tools/gn/source_file_type.h" - #include "tools/gn/substitution_type.h" - #include "tools/gn/tool.h" - #include "tools/gn/value.h" -@@ -87,9 +88,9 @@ class Toolchain : public Item { - } - - // Returns the tool for compiling the given source file type. -- const Tool* GetToolForSourceType(SourceFile::Type type) const; -- const CTool* GetToolForSourceTypeAsC(SourceFile::Type type) const; -- const GeneralTool* GetToolForSourceTypeAsGeneral(SourceFile::Type type) const; -+ const Tool* GetToolForSourceType(SourceFileType type) const; -+ const CTool* GetToolForSourceTypeAsC(SourceFileType type) const; -+ const GeneralTool* GetToolForSourceTypeAsGeneral(SourceFileType type) const; - - // Returns the tool that produces the final output for the given target type. - // This isn't necessarily the tool you would expect. For copy target, this ---- a/tools/gn/tools/gn/visual_studio_writer.cc -+++ b/tools/gn/tools/gn/visual_studio_writer.cc -@@ -24,6 +24,7 @@ - #include "tools/gn/label_pattern.h" - #include "tools/gn/parse_tree.h" - #include "tools/gn/path_output.h" -+#include "tools/gn/source_file_type.h" - #include "tools/gn/standard_out.h" - #include "tools/gn/target.h" - #include "tools/gn/variables.h" diff --git a/revert-gn-4980.patch b/revert-gn-4980.patch deleted file mode 100644 index fe550e9..0000000 --- a/revert-gn-4980.patch +++ /dev/null @@ -1,134 +0,0 @@ -Description: revert https://gn.googlesource.com/gn/+/8730b0feb6b991fa47368566501ab9ccfb453c92, which breaks the chromium build - ---- a/tools/gn/tools/gn/binary_target_generator.cc -+++ b/tools/gn/tools/gn/binary_target_generator.cc -@@ -68,38 +68,6 @@ void BinaryTargetGenerator::DoRun() { - return; - } - --bool BinaryTargetGenerator::FillSources() { -- bool ret = TargetGenerator::FillSources(); -- for (std::size_t i = 0; i < target_->sources().size(); ++i) { -- const auto& source = target_->sources()[i]; -- switch (source.type()) { -- case SourceFile::SOURCE_CPP: -- case SourceFile::SOURCE_H: -- case SourceFile::SOURCE_C: -- case SourceFile::SOURCE_M: -- case SourceFile::SOURCE_MM: -- case SourceFile::SOURCE_S: -- case SourceFile::SOURCE_ASM: -- case SourceFile::SOURCE_O: -- // These are allowed. -- break; -- case SourceFile::SOURCE_RC: -- case SourceFile::SOURCE_DEF: -- case SourceFile::SOURCE_RS: -- case SourceFile::SOURCE_GO: -- case SourceFile::SOURCE_UNKNOWN: -- case SourceFile::SOURCE_NUMTYPES: -- *err_ = -- Err(scope_->GetValue(variables::kSources, true)->list_value()[i], -- std::string("Only source, header, and object files belong in " -- "the sources of a ") + -- Target::GetStringForOutputType(target_->output_type()) + -- ". " + source.value() + " is not one of the valid types."); -- } -- } -- return ret; --} -- - bool BinaryTargetGenerator::FillCompleteStaticLib() { - if (target_->output_type() == Target::STATIC_LIBRARY) { - const Value* value = scope_->GetValue(variables::kCompleteStaticLib, true); ---- a/tools/gn/tools/gn/binary_target_generator.h -+++ b/tools/gn/tools/gn/binary_target_generator.h -@@ -22,7 +22,6 @@ class BinaryTargetGenerator : public Tar - - protected: - void DoRun() override; -- bool FillSources() override; - - private: - bool FillCompleteStaticLib(); ---- a/tools/gn/tools/gn/source_dir.cc -+++ b/tools/gn/tools/gn/source_dir.cc -@@ -98,10 +98,10 @@ SourceFile SourceDir::ResolveRelativeFil - return ret; - - const std::string& input_string = p.string_value(); -- if (!ValidateResolveInput(true, p, input_string, err)) -+ if (!ValidateResolveInput(true, p, input_string, err)) { - return ret; -- -- ret.SetValue(ResolveRelative(input_string, value_, true, source_root)); -+ } -+ ret.value_ = ResolveRelative(input_string, value_, true, source_root); - return ret; - } - ---- a/tools/gn/tools/gn/source_file.cc -+++ b/tools/gn/tools/gn/source_file.cc -@@ -55,19 +55,18 @@ SourceFile::Type GetSourceFileType(const - SourceFile::SourceFile() : type_(SOURCE_UNKNOWN) {} - - SourceFile::SourceFile(const base::StringPiece& p) -- : value_(p.data(), p.size()) { -+ : value_(p.data(), p.size()), type_(GetSourceFileType(value_)) { - DCHECK(!value_.empty()); - AssertValueSourceFileString(value_); - NormalizePath(&value_); -- type_ = GetSourceFileType(value_); - } - --SourceFile::SourceFile(SwapIn, std::string* value) { -+SourceFile::SourceFile(SwapIn, std::string* value) -+ : type_(GetSourceFileType(*value)) { - value_.swap(*value); - DCHECK(!value_.empty()); - AssertValueSourceFileString(value_); - NormalizePath(&value_); -- type_ = GetSourceFileType(value_); - } - - SourceFile::~SourceFile() = default; -@@ -93,8 +92,3 @@ SourceDir SourceFile::GetDir() const { - base::FilePath SourceFile::Resolve(const base::FilePath& source_root) const { - return ResolvePath(value_, true, source_root); - } -- --void SourceFile::SetValue(const std::string& value) { -- value_ = value; -- type_ = GetSourceFileType(value_); --} ---- a/tools/gn/tools/gn/source_file.h -+++ b/tools/gn/tools/gn/source_file.h -@@ -97,16 +97,11 @@ class SourceFile { - return value_ < other.value_; - } - -- void swap(SourceFile& other) { -- value_.swap(other.value_); -- std::swap(type_, other.type_); -- } -+ void swap(SourceFile& other) { value_.swap(other.value_); } - - private: - friend class SourceDir; - -- void SetValue(const std::string& value); -- - std::string value_; - Type type_; - ---- a/tools/gn/tools/gn/target_generator.h -+++ b/tools/gn/tools/gn/target_generator.h -@@ -47,7 +47,7 @@ class TargetGenerator { - - const BuildSettings* GetBuildSettings() const; - -- virtual bool FillSources(); -+ bool FillSources(); - bool FillPublic(); - bool FillConfigs(); - bool FillOutputs(bool allow_substitutions); From 38e8f689d58c92e2a4ca9e95c8c9aa67718c5616 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 13 Aug 2019 07:05:33 +0200 Subject: [PATCH 0303/1449] Update to 76.0.3809.100 --- .gitignore | 1 + ...4.116-libusb_interrupt_event_handler.patch | 15 - chromium-55.0.2883.75-cups22.patch | 29 -- chromium-66.0.3359.117-missing-files.patch | 272 ------------------ ...um-73.0.3683.75-pipewire-cstring-fix.patch | 11 - ...9.100-libusb_interrupt_event_handler.patch | 15 + chromium.spec | 32 +-- sources | 2 +- 8 files changed, 24 insertions(+), 353 deletions(-) delete mode 100644 chromium-48.0.2564.116-libusb_interrupt_event_handler.patch delete mode 100644 chromium-55.0.2883.75-cups22.patch delete mode 100644 chromium-66.0.3359.117-missing-files.patch delete mode 100644 chromium-73.0.3683.75-pipewire-cstring-fix.patch create mode 100644 chromium-76.0.3809.100-libusb_interrupt_event_handler.patch diff --git a/.gitignore b/.gitignore index 61d44ef..2bfdc54 100644 --- a/.gitignore +++ b/.gitignore @@ -81,3 +81,4 @@ /chromium-75.0.3770.80-clean.tar.xz /chromium-75.0.3770.90-clean.tar.xz /chromium-75.0.3770.100-clean.tar.xz +/chromium-76.0.3809.100-clean.tar.xz diff --git a/chromium-48.0.2564.116-libusb_interrupt_event_handler.patch b/chromium-48.0.2564.116-libusb_interrupt_event_handler.patch deleted file mode 100644 index d0b2484..0000000 --- a/chromium-48.0.2564.116-libusb_interrupt_event_handler.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -up chromium-48.0.2564.116/device/usb/usb_context.cc.modern-libusbx chromium-48.0.2564.116/device/usb/usb_context.cc ---- chromium-48.0.2564.116/device/usb/usb_context.cc.modern-libusbx 2016-02-24 10:21:10.534996028 -0500 -+++ chromium-48.0.2564.116/device/usb/usb_context.cc 2016-02-24 10:22:28.270499864 -0500 -@@ -57,7 +57,11 @@ void UsbContext::UsbEventHandler::Run() - - void UsbContext::UsbEventHandler::Stop() { - base::subtle::Release_Store(&running_, 0); -+#ifdef LIBUSB_API_VERSION >= 0x01000105 -+ libusb_interrupt_event_handler(context_); -+#else - libusb_interrupt_handle_event(context_); -+#endif - } - - UsbContext::UsbContext(PlatformUsbContext context) : context_(context) { diff --git a/chromium-55.0.2883.75-cups22.patch b/chromium-55.0.2883.75-cups22.patch deleted file mode 100644 index d1a2bf8..0000000 --- a/chromium-55.0.2883.75-cups22.patch +++ /dev/null @@ -1,29 +0,0 @@ -diff -up chromium-52.0.2743.82/printing/backend/print_backend_cups.cc.cups22 chromium-52.0.2743.82/printing/backend/print_backend_cups.cc ---- chromium-52.0.2743.82/printing/backend/print_backend_cups.cc.cups22 2016-07-22 09:20:15.794340886 -0400 -+++ chromium-52.0.2743.82/printing/backend/print_backend_cups.cc 2016-07-22 09:20:26.338261197 -0400 -@@ -16,6 +16,7 @@ - #include "base/synchronization/lock.h" - #include "base/values.h" - #include "printing/backend/cups_helper.h" -+#include - #include "printing/backend/print_backend_consts.h" - #include "url/gurl.h" - -diff -up chromium-52.0.2743.82/printing/BUILD.gn.cups22 chromium-52.0.2743.82/printing/BUILD.gn ---- chromium-52.0.2743.82/printing/BUILD.gn.cups22 2016-07-21 11:27:05.597507544 -0400 -+++ chromium-52.0.2743.82/printing/BUILD.gn 2016-07-21 14:36:45.574137758 -0400 -@@ -147,12 +147,13 @@ component("printing") { - ], - "trim string") - -- if (cups_version == "1.6" || cups_version == "1.7") { -+ if (cups_version == "1.6" || cups_version == "1.7" || cups_version == "2.2") { - cflags += [ - # CUPS 1.6 deprecated the PPD APIs, but we will stay with this - # API for now as supported Linux and Mac OS'es are still using - # older versions of CUPS. More info: crbug.com/226176 - "-Wno-deprecated-declarations", -+ "-D_PPD_DEPRECATED=", - # CUPS 1.7 deprecates httpConnectEncrypt(), see the mac section - # below. - ] diff --git a/chromium-66.0.3359.117-missing-files.patch b/chromium-66.0.3359.117-missing-files.patch deleted file mode 100644 index 746d56e..0000000 --- a/chromium-66.0.3359.117-missing-files.patch +++ /dev/null @@ -1,272 +0,0 @@ -diff -up chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/__init__.py.missing chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/__init__.py ---- chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/__init__.py.missing 2018-04-19 09:51:46.165723235 -0400 -+++ chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/__init__.py 2018-04-19 09:51:46.171723115 -0400 -@@ -0,0 +1,3 @@ -+# 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-66.0.3359.117/third_party/blink/tools/blinkpy/common/name_style_converter.py.missing chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/name_style_converter.py ---- chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/name_style_converter.py.missing 2018-04-19 09:51:46.171723115 -0400 -+++ chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/name_style_converter.py 2018-04-19 09:51:46.172723095 -0400 -@@ -0,0 +1,110 @@ -+# 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. -+# pylint: disable=import-error,print-statement,relative-import -+import re -+SPECIAL_TOKENS = [ -+ # This list should be sorted by length. -+ 'CString', -+ 'Float32', -+ 'Float64', -+ 'Base64', -+ 'IFrame', -+ 'Latin1', -+ 'PlugIn', -+ 'SQLite', -+ 'Uint16', -+ 'Uint32', -+ 'WebGL2', -+ 'ASCII', -+ 'CType', -+ 'DList', -+ 'Int16', -+ 'Int32', -+ 'MPath', -+ 'OList', -+ 'TSpan', -+ 'UList', -+ 'UTF16', -+ 'Uint8', -+ 'WebGL', -+ 'XPath', -+ 'ETC1', -+ 'HTML', -+ 'Int8', -+ 'S3TC', -+ 'SPv2', -+ 'UTF8', -+ 'API', -+ 'CSS', -+ 'DOM', -+ 'EXT', -+ 'RTC', -+ 'SVG', -+ '2D', -+ 'AX', -+ 'V0', -+ 'V8', -+] -+MATCHING_EXPRESSION = '((?:[A-Z][a-z]+)|[0-9]D?$)' -+class SmartTokenizer(object): -+ """Detects special cases that are not easily discernible without additional -+ knowledge, such as recognizing that in SVGSVGElement, the first two SVGs -+ are separate tokens, but WebGL is one token.""" -+ def __init__(self, name): -+ self.remaining = name -+ def tokenize(self): -+ name = self.remaining -+ tokens = [] -+ while len(name) > 0: -+ matched_token = None -+ for token in SPECIAL_TOKENS: -+ if name.startswith(token): -+ matched_token = token -+ break -+ if not matched_token: -+ match = re.search(MATCHING_EXPRESSION, name) -+ if not match: -+ matched_token = name -+ elif match.start(0) != 0: -+ matched_token = name[:match.start(0)] -+ else: -+ matched_token = match.group(0) -+ tokens.append(name[:len(matched_token)]) -+ name = name[len(matched_token):] -+ return tokens -+class NameStyleConverter(object): -+ """Converts names from camelCase to various other styles. -+ """ -+ def __init__(self, name): -+ self.tokens = self.tokenize(name) -+ def tokenize(self, name): -+ tokenizer = SmartTokenizer(name) -+ return tokenizer.tokenize() -+ def to_snake_case(self): -+ """Snake case is the file and variable name style per Google C++ Style -+ Guide: -+ https://google.github.io/styleguide/cppguide.html#Variable_Names -+ Also known as the hacker case. -+ https://en.wikipedia.org/wiki/Snake_case -+ """ -+ return '_'.join([token.lower() for token in self.tokens]) -+ def to_upper_camel_case(self): -+ """Upper-camel case is the class and function name style per -+ Google C++ Style Guide: -+ https://google.github.io/styleguide/cppguide.html#Function_Names -+ Also known as the PascalCase. -+ https://en.wikipedia.org/wiki/Camel_case. -+ """ -+ return ''.join([token[0].upper() + token[1:] for token in self.tokens]) -+ def to_macro_case(self): -+ """Macro case is the macro name style per Google C++ Style Guide: -+ https://google.github.io/styleguide/cppguide.html#Macro_Names -+ """ -+ return '_'.join([token.upper() for token in self.tokens]) -+ def to_all_cases(self): -+ return { -+ 'snake_case': self.to_snake_case(), -+ 'upper_camel_case': self.to_upper_camel_case(), -+ 'macro_case': self.to_macro_case(), -+ } -diff -up chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/name_style_converter_test.py.missing chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/name_style_converter_test.py ---- chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/name_style_converter_test.py.missing 2018-04-19 09:51:46.172723095 -0400 -+++ chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/name_style_converter_test.py 2018-04-19 09:51:46.173723075 -0400 -@@ -0,0 +1,140 @@ -+# 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. -+# pylint: disable=import-error,print-statement,relative-import,protected-access -+"""Unit tests for name_style_converter.py.""" -+import unittest -+from name_style_converter import NameStyleConverter -+from name_style_converter import SmartTokenizer -+class SmartTokenizerTest(unittest.TestCase): -+ def test_simple_cases(self): -+ tokenizer = SmartTokenizer('foo') -+ self.assertEqual(tokenizer.tokenize(), ['foo']) -+ tokenizer = SmartTokenizer('fooBar') -+ self.assertEqual(tokenizer.tokenize(), ['foo', 'Bar']) -+ tokenizer = SmartTokenizer('fooBarBaz') -+ self.assertEqual(tokenizer.tokenize(), ['foo', 'Bar', 'Baz']) -+ tokenizer = SmartTokenizer('Baz') -+ self.assertEqual(tokenizer.tokenize(), ['Baz']) -+ tokenizer = SmartTokenizer('') -+ self.assertEqual(tokenizer.tokenize(), []) -+ tokenizer = SmartTokenizer('FOO') -+ self.assertEqual(tokenizer.tokenize(), ['FOO']) -+ tokenizer = SmartTokenizer('foo2') -+ self.assertEqual(tokenizer.tokenize(), ['foo', '2']) -+ def test_tricky_cases(self): -+ tokenizer = SmartTokenizer('XMLHttpRequest') -+ self.assertEqual(tokenizer.tokenize(), ['XML', 'Http', 'Request']) -+ tokenizer = SmartTokenizer('HTMLElement') -+ self.assertEqual(tokenizer.tokenize(), ['HTML', 'Element']) -+ tokenizer = SmartTokenizer('WebGLRenderingContext') -+ self.assertEqual(tokenizer.tokenize(), -+ ['WebGL', 'Rendering', 'Context']) -+ tokenizer = SmartTokenizer('CanvasRenderingContext2D') -+ self.assertEqual(tokenizer.tokenize(), -+ ['Canvas', 'Rendering', 'Context', '2D']) -+ tokenizer = SmartTokenizer('CanvasRenderingContext2DAPITest') -+ self.assertEqual(tokenizer.tokenize(), -+ ['Canvas', 'Rendering', 'Context', '2D', 'API', 'Test']) -+ tokenizer = SmartTokenizer('SVGSVGElement') -+ self.assertEqual(tokenizer.tokenize(), ['SVG', 'SVG', 'Element']) -+ tokenizer = SmartTokenizer('CanvasRenderingContext2D') -+ self.assertEqual(tokenizer.tokenize(), ['Canvas', 'Rendering', 'Context', '2D']) -+ tokenizer = SmartTokenizer('CSSURLImageValue') -+ self.assertEqual(tokenizer.tokenize(), ['CSS', 'URL', 'Image', 'Value']) -+ tokenizer = SmartTokenizer('CSSPropertyAPID') -+ self.assertEqual(tokenizer.tokenize(), ['CSS', 'Property', 'API', 'D']) -+ tokenizer = SmartTokenizer('AXARIAGridCell') -+ self.assertEqual(tokenizer.tokenize(), ['AX', 'ARIA', 'Grid', 'Cell']) -+ tokenizer = SmartTokenizer('CDATASection') -+ self.assertEqual(tokenizer.tokenize(), ['CDATA', 'Section']) -+ tokenizer = SmartTokenizer('ASCIICType') -+ self.assertEqual(tokenizer.tokenize(), ['ASCII', 'CType']) -+ tokenizer = SmartTokenizer('CString') -+ self.assertEqual(tokenizer.tokenize(), ['CString']) -+ tokenizer = SmartTokenizer('HTMLDListElement') -+ self.assertEqual(tokenizer.tokenize(), ['HTML', 'DList', 'Element']) -+ tokenizer = SmartTokenizer('HTMLOListElement') -+ self.assertEqual(tokenizer.tokenize(), ['HTML', 'OList', 'Element']) -+ tokenizer = SmartTokenizer('HTMLIFrameElement') -+ self.assertEqual(tokenizer.tokenize(), ['HTML', 'IFrame', 'Element']) -+ tokenizer = SmartTokenizer('HTMLPlugInElement') -+ self.assertEqual(tokenizer.tokenize(), ['HTML', 'PlugIn', 'Element']) -+ # No special handling for OptGroup, FieldSet, and TextArea. -+ tokenizer = SmartTokenizer('HTMLOptGroupElement') -+ self.assertEqual(tokenizer.tokenize(), ['HTML', 'Opt', 'Group', 'Element']) -+ tokenizer = SmartTokenizer('HTMLFieldSetElement') -+ self.assertEqual(tokenizer.tokenize(), ['HTML', 'Field', 'Set', 'Element']) -+ tokenizer = SmartTokenizer('HTMLTextAreaElement') -+ self.assertEqual(tokenizer.tokenize(), ['HTML', 'Text', 'Area', 'Element']) -+ tokenizer = SmartTokenizer('Path2D') -+ self.assertEqual(tokenizer.tokenize(), ['Path', '2D']) -+ tokenizer = SmartTokenizer('Point2D') -+ self.assertEqual(tokenizer.tokenize(), ['Point', '2D']) -+ tokenizer = SmartTokenizer('CanvasRenderingContext2DState') -+ self.assertEqual(tokenizer.tokenize(), ['Canvas', 'Rendering', 'Context', '2D', 'State']) -+ tokenizer = SmartTokenizer('RTCDTMFSender') -+ self.assertEqual(tokenizer.tokenize(), ['RTC', 'DTMF', 'Sender']) -+ tokenizer = SmartTokenizer('WebGLCompressedTextureS3TCsRGB') -+ self.assertEqual(tokenizer.tokenize(), ['WebGL', 'Compressed', 'Texture', 'S3TC', 'sRGB']) -+ tokenizer = SmartTokenizer('WebGL2CompressedTextureETC1') -+ self.assertEqual(tokenizer.tokenize(), ['WebGL2', 'Compressed', 'Texture', 'ETC1']) -+ tokenizer = SmartTokenizer('EXTsRGB') -+ self.assertEqual(tokenizer.tokenize(), ['EXT', 'sRGB']) -+ tokenizer = SmartTokenizer('SVGFEBlendElement') -+ self.assertEqual(tokenizer.tokenize(), ['SVG', 'FE', 'Blend', 'Element']) -+ tokenizer = SmartTokenizer('SVGMPathElement') -+ self.assertEqual(tokenizer.tokenize(), ['SVG', 'MPath', 'Element']) -+ tokenizer = SmartTokenizer('SVGTSpanElement') -+ self.assertEqual(tokenizer.tokenize(), ['SVG', 'TSpan', 'Element']) -+ tokenizer = SmartTokenizer('SVGURIReference') -+ self.assertEqual(tokenizer.tokenize(), ['SVG', 'URI', 'Reference']) -+ tokenizer = SmartTokenizer('UTF16TextIterator') -+ self.assertEqual(tokenizer.tokenize(), ['UTF16', 'Text', 'Iterator']) -+ tokenizer = SmartTokenizer('UTF8Decoder') -+ self.assertEqual(tokenizer.tokenize(), ['UTF8', 'Decoder']) -+ tokenizer = SmartTokenizer('Uint8Array') -+ self.assertEqual(tokenizer.tokenize(), ['Uint8', 'Array']) -+ tokenizer = SmartTokenizer('DOMWindowBase64') -+ self.assertEqual(tokenizer.tokenize(), ['DOM', 'Window', 'Base64']) -+ tokenizer = SmartTokenizer('TextCodecLatin1') -+ self.assertEqual(tokenizer.tokenize(), ['Text', 'Codec', 'Latin1']) -+ tokenizer = SmartTokenizer('V8BindingForCore') -+ self.assertEqual(tokenizer.tokenize(), ['V8', 'Binding', 'For', 'Core']) -+ tokenizer = SmartTokenizer('V8DOMRect') -+ self.assertEqual(tokenizer.tokenize(), ['V8', 'DOM', 'Rect']) -+ tokenizer = SmartTokenizer('V0InsertionPoint') -+ self.assertEqual(tokenizer.tokenize(), ['V0', 'Insertion', 'Point']) -+ tokenizer = SmartTokenizer('ShadowDOMV0Test') -+ self.assertEqual(tokenizer.tokenize(), ['Shadow', 'DOM', 'V0', 'Test']) -+ tokenizer = SmartTokenizer('ElementShadowV0') -+ self.assertEqual(tokenizer.tokenize(), ['Element', 'Shadow', 'V0']) -+ tokenizer = SmartTokenizer('StubChromeClientForSPv2') -+ self.assertEqual(tokenizer.tokenize(), ['Stub', 'Chrome', 'Client', 'For', 'SPv2']) -+ tokenizer = SmartTokenizer('SQLiteAuthorizer') -+ self.assertEqual(tokenizer.tokenize(), ['SQLite', 'Authorizer']) -+ tokenizer = SmartTokenizer('XPathEvaluator') -+ self.assertEqual(tokenizer.tokenize(), ['XPath', 'Evaluator']) -+ tokenizer = SmartTokenizer('IsXHTMLDocument') -+ self.assertEqual(tokenizer.tokenize(), ['Is', 'XHTML', 'Document']) -+ tokenizer = SmartTokenizer('Animation.idl') -+ self.assertEqual(tokenizer.tokenize(), ['Animation', '.idl']) -+class NameStyleConverterTest(unittest.TestCase): -+ def test_snake_case(self): -+ converter = NameStyleConverter('HTMLElement') -+ self.assertEqual(converter.to_snake_case(), 'html_element') -+ def test_upper_camel_case(self): -+ converter = NameStyleConverter('someSuperThing') -+ self.assertEqual(converter.to_upper_camel_case(), 'SomeSuperThing') -+ converter = NameStyleConverter('SVGElement') -+ self.assertEqual(converter.to_upper_camel_case(), 'SVGElement') -+ def test_macro_case(self): -+ converter = NameStyleConverter('WebGLBaz2D') -+ self.assertEqual(converter.to_macro_case(), 'WEBGL_BAZ_2D') -+ def test_all_cases(self): -+ converter = NameStyleConverter('SVGScriptElement') -+ self.assertEqual(converter.to_all_cases(), { -+ 'snake_case': 'svg_script_element', -+ 'upper_camel_case': 'SVGScriptElement', -+ 'macro_case': 'SVG_SCRIPT_ELEMENT', -+ }) -diff -up chromium-66.0.3359.117/third_party/blink/tools/blinkpy/__init__.py.missing chromium-66.0.3359.117/third_party/blink/tools/blinkpy/__init__.py ---- chromium-66.0.3359.117/third_party/blink/tools/blinkpy/__init__.py.missing 2018-04-19 11:34:40.621293007 -0400 -+++ chromium-66.0.3359.117/third_party/blink/tools/blinkpy/__init__.py 2018-04-19 11:34:34.440413163 -0400 -@@ -0,0 +1,3 @@ -+# 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 --git a/chromium-73.0.3683.75-pipewire-cstring-fix.patch b/chromium-73.0.3683.75-pipewire-cstring-fix.patch deleted file mode 100644 index ce8b70b..0000000 --- a/chromium-73.0.3683.75-pipewire-cstring-fix.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-73.0.3683.75/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc.cstringfix chromium-73.0.3683.75/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc ---- chromium-73.0.3683.75/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc.cstringfix 2019-03-13 13:04:25.290842447 -0400 -+++ chromium-73.0.3683.75/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc 2019-03-13 13:05:13.234897441 -0400 -@@ -18,6 +18,7 @@ - #include - #include - -+#include - #include - #include - diff --git a/chromium-76.0.3809.100-libusb_interrupt_event_handler.patch b/chromium-76.0.3809.100-libusb_interrupt_event_handler.patch new file mode 100644 index 0000000..690f0f9 --- /dev/null +++ b/chromium-76.0.3809.100-libusb_interrupt_event_handler.patch @@ -0,0 +1,15 @@ +diff -up chromium-76.0.3809.100/services/device/usb/usb_context.cc.modern-libusbx chromium-76.0.3809.100/services/device/usb/usb_context.cc +--- chromium-76.0.3809.100/services/device/usb/usb_context.cc.modern-libusbx 2019-08-12 15:40:49.034170484 +0200 ++++ chromium-76.0.3809.100/services/device/usb/usb_context.cc 2019-08-12 15:41:23.775558867 +0200 +@@ -58,7 +58,11 @@ void UsbContext::UsbEventHandler::Run() + + void UsbContext::UsbEventHandler::Stop() { + base::subtle::Release_Store(&running_, 0); ++#ifdef LIBUSB_API_VERSION >= 0x01000105 ++ libusb_interrupt_event_handler(context_); ++#else + libusb_interrupt_handle_event(context_); ++#endif + } + + UsbContext::UsbContext(PlatformUsbContext context) : context_(context) { diff --git a/chromium.spec b/chromium.spec index d734490..1d3a256 100644 --- a/chromium.spec +++ b/chromium.spec @@ -157,15 +157,15 @@ BuildRequires: libicu-devel >= 5.4 %global chromoting_client_id %nil %endif -%global majorversion 75 +%global majorversion 76 %if %{freeworld} Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3770.100 -Release: 4%{?dist} +Version: %{majorversion}.0.3809.100 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -176,10 +176,7 @@ Patch1: chromium-45.0.2454.101-linux-path-max.patch Patch2: chromium-55.0.2883.75-addrfix.patch Patch3: chromium-72.0.3626.121-notest.patch # Use libusb_interrupt_event_handler from current libusbx (1.0.21-0.1.git448584a) -Patch4: chromium-48.0.2564.116-libusb_interrupt_event_handler.patch -# Ignore deprecations in cups 2.2 -# https://bugs.chromium.org/p/chromium/issues/detail?id=622493 -Patch5: chromium-55.0.2883.75-cups22.patch +Patch4: chromium-76.0.3809.100-libusb_interrupt_event_handler.patch # Use PIE in the Linux sandbox (from openSUSE via Russian Fedora) Patch6: chromium-70.0.3538.67-sandbox-pie.patch # Use /etc/chromium for master_prefs @@ -223,8 +220,6 @@ Patch23: chromium-65.0.3325.146-memcpy-fix.patch Patch24: chromium-68.0.3440.106-boolfix.patch # From Debian Patch25: chromium-71.0.3578.98-skia-aarch64-buildfix.patch -# Missing files in tarball -Patch26: chromium-66.0.3359.117-missing-files.patch # Do not use unrar code, it is non-free Patch27: chromium-73.0.3683.75-norar.patch # Upstream GCC fixes @@ -253,14 +248,8 @@ Patch36: chromium-71.0.3578.98-gcc9-drop-rsp-clobber.patch Patch37: chromium-widevine-other-locations.patch # Disable -fno-delete-null-pointer-checks Patch38: chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch -# Add #include to get pipewire code to build -Patch39: chromium-73.0.3683.75-pipewire-cstring-fix.patch -# gcc does not have __assume -Patch40: chromium-75.0.3770.80-gcc-no-assume.patch # Linux 5.2 defines SIOCGSTAMP in a slightly different way, so we need to teach chromium where to find it Patch41: chromium-75.0.3770.80-SIOCGSTAMP.patch -# https://chromium.googlesource.com/chromium/src/+/aeed4d1f15ce84a17ea0bc219e258dc4982b2368%5E%21/#F0 -Patch42: chromium-75.0.3770.80-aeed4d-gcc-dcheck_ne-fix.patch # Revert https://chromium.googlesource.com/chromium/src/+/daff6b66faae53a0cefb88987c9ff4843629b728%5E%21/#F0 # It might make clang happy but it breaks gcc. F*** clang. Patch43: chromium-75.0.3770.80-revert-daff6b.patch @@ -272,8 +261,6 @@ Patch45: chromium-75.0.3770.80-grpc-gettid-fix.patch # fix v8 compile with gcc # https://chromium.googlesource.com/v8/v8/+/3b8c624bda58d05aea80dd9626cd550537d6ac3f%5E%21/#F1 Patch46: chromium-75.0.3770.100-fix-v8-gcc.patch -# https://chromium.googlesource.com/chromium/src/+/00281713519dbd84b90d2996a009bf3a7e294435%5E%21/#F0 -Patch47: chromium-75.0.3770.100-git00281713.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -794,7 +781,6 @@ udev. %patch2 -p1 -b .addrfix %patch3 -p1 -b .notest %patch4 -p1 -b .modern-libusbx -%patch5 -p1 -b .cups22 %patch6 -p1 -b .sandboxpie %patch7 -p1 -b .etc %patch8 -p1 -b .gnsystem @@ -815,7 +801,6 @@ udev. %patch23 -p1 -b .memcpyfix %patch24 -p1 -b .boolfix %patch25 -p1 -b .aarch64fix -%patch26 -p1 -b .missing-files %patch27 -p1 -b .nounrar %patch28 -p1 -b .gcc-cpolicyprovider %patch29 -p1 -b .fedora-user-agent @@ -828,15 +813,11 @@ udev. %patch36 -p1 -b .gcc9 %patch37 -p1 -b .widevine-other-locations %patch38 -p1 -b .disable-ndnpc -%patch39 -p1 -b .cstring-fix -%patch40 -p1 -b .gcc-assume %patch41 -p1 -b .SIOCGSTAMP -%patch42 -p1 -b .gcc-dcheck_ne-fix %patch43 -p1 -b .revert-daff6b %patch44 -p1 -b .pure-virtual-fix %patch45 -p1 -b .gettid-fix %patch46 -p1 -b .fix-v8-gcc -%patch47 -p1 -b .git00281713 # EPEL specific patches %if 0%{?rhel} == 7 @@ -1217,7 +1198,6 @@ build/linux/unbundle/remove_bundled_libraries.py \ %if %{freeworld} 'third_party/openh264' \ %endif - 'third_party/openmax_dl' \ 'third_party/opus' \ 'third_party/ots' \ 'third_party/pdfium' \ @@ -1260,7 +1240,6 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/sqlite' \ 'third_party/swiftshader' \ 'third_party/swiftshader/third_party/subzero' \ - 'third_party/swiftshader/third_party/LLVM' \ 'third_party/swiftshader/third_party/llvm-subzero' \ 'third_party/swiftshader/third_party/llvm-7.0' \ 'third_party/tcmalloc' \ @@ -1857,6 +1836,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Tue Aug 13 2019 Tomas Popela - 76.0.3809.100-1 +- Update to 76.0.3809.100 + * Wed Jul 24 2019 Fedora Release Engineering - 75.0.3770.100-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild diff --git a/sources b/sources index 5ba7f4f..778c103 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-75.0.3770.100-clean.tar.xz) = ee2fad215cf39edc572b4ecd040f1130e857e19a34e64fffb14a995ca325adc0b01d6e8bfae4f91c2fecd13ed018049e64fe2c2cc755502b8e3291698698512e +SHA512 (chromium-76.0.3809.100-clean.tar.xz) = ad250b8cd0a01297fdff85c12a4dca85477cf027a68c0a9f7a3bc93b825772d17ddd062a89020ae954def781f19fe44beedb33ec8a86f3c12af290edb43d6ee9 From 44822a9bb7a5f3e2bc958f6de38a66d12d964823 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 13 Aug 2019 15:39:15 +0200 Subject: [PATCH 0304/1449] Add more fixes --- chromium-76.0.3809.100-gcc-cc-no-except.patch | 105 ++++++++++++++++ chromium-76.0.3809.100-gcc-net-fetcher.patch | 63 ++++++++++ chromium-76.0.3809.100-gcc-vulkan.patch | 115 ++++++++++++++++++ chromium.spec | 14 +++ get_free_ffmpeg_source_files.py | 8 +- sources | 2 +- 6 files changed, 302 insertions(+), 5 deletions(-) create mode 100644 chromium-76.0.3809.100-gcc-cc-no-except.patch create mode 100644 chromium-76.0.3809.100-gcc-net-fetcher.patch create mode 100644 chromium-76.0.3809.100-gcc-vulkan.patch diff --git a/chromium-76.0.3809.100-gcc-cc-no-except.patch b/chromium-76.0.3809.100-gcc-cc-no-except.patch new file mode 100644 index 0000000..e4d754a --- /dev/null +++ b/chromium-76.0.3809.100-gcc-cc-no-except.patch @@ -0,0 +1,105 @@ +From 84c91abab33966f928497c24db4a39f436d2dca8 Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Fri, 07 Jun 2019 09:50:11 +0000 +Subject: [PATCH] Make SharedMemoryMapping move constructor noexcept + +As LayerTreeHostImpl::UIResourceData move constructor is declared +noexcept with default implementation, the move constructor of its +members should also be noexcept. GCC will fail to build otherwise +for mismatching noexcept declaration. + +We also set the move assignment operator. + +Bug: 819294 +Change-Id: Icd663da83b882e15f7d16780c9241972e09bc492 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645297 +Commit-Queue: José Dapena Paz +Reviewed-by: Daniel Cheng +Cr-Commit-Position: refs/heads/master@{#667064} +--- + +diff --git a/base/memory/shared_memory_mapping.cc b/base/memory/shared_memory_mapping.cc +index 2be2570..8426fa8 100644 +--- a/base/memory/shared_memory_mapping.cc ++++ b/base/memory/shared_memory_mapping.cc +@@ -33,7 +33,7 @@ + + SharedMemoryMapping::SharedMemoryMapping() = default; + +-SharedMemoryMapping::SharedMemoryMapping(SharedMemoryMapping&& mapping) ++SharedMemoryMapping::SharedMemoryMapping(SharedMemoryMapping&& mapping) noexcept + : memory_(mapping.memory_), + size_(mapping.size_), + mapped_size_(mapping.mapped_size_), +@@ -42,7 +42,7 @@ + } + + SharedMemoryMapping& SharedMemoryMapping::operator=( +- SharedMemoryMapping&& mapping) { ++ SharedMemoryMapping&& mapping) noexcept { + Unmap(); + memory_ = mapping.memory_; + size_ = mapping.size_; +@@ -90,9 +90,9 @@ + + ReadOnlySharedMemoryMapping::ReadOnlySharedMemoryMapping() = default; + ReadOnlySharedMemoryMapping::ReadOnlySharedMemoryMapping( +- ReadOnlySharedMemoryMapping&&) = default; ++ ReadOnlySharedMemoryMapping&&) noexcept = default; + ReadOnlySharedMemoryMapping& ReadOnlySharedMemoryMapping::operator=( +- ReadOnlySharedMemoryMapping&&) = default; ++ ReadOnlySharedMemoryMapping&&) noexcept = default; + ReadOnlySharedMemoryMapping::ReadOnlySharedMemoryMapping( + void* address, + size_t size, +@@ -102,9 +102,9 @@ + + WritableSharedMemoryMapping::WritableSharedMemoryMapping() = default; + WritableSharedMemoryMapping::WritableSharedMemoryMapping( +- WritableSharedMemoryMapping&&) = default; ++ WritableSharedMemoryMapping&&) noexcept = default; + WritableSharedMemoryMapping& WritableSharedMemoryMapping::operator=( +- WritableSharedMemoryMapping&&) = default; ++ WritableSharedMemoryMapping&&) noexcept = default; + WritableSharedMemoryMapping::WritableSharedMemoryMapping( + void* address, + size_t size, +diff --git a/base/memory/shared_memory_mapping.h b/base/memory/shared_memory_mapping.h +index d9569af..2b8858e 100644 +--- a/base/memory/shared_memory_mapping.h ++++ b/base/memory/shared_memory_mapping.h +@@ -32,8 +32,8 @@ + SharedMemoryMapping(); + + // Move operations are allowed. +- SharedMemoryMapping(SharedMemoryMapping&& mapping); +- SharedMemoryMapping& operator=(SharedMemoryMapping&& mapping); ++ SharedMemoryMapping(SharedMemoryMapping&& mapping) noexcept; ++ SharedMemoryMapping& operator=(SharedMemoryMapping&& mapping) noexcept; + + // Unmaps the region if the mapping is valid. + virtual ~SharedMemoryMapping(); +@@ -93,8 +93,9 @@ + ReadOnlySharedMemoryMapping(); + + // Move operations are allowed. +- ReadOnlySharedMemoryMapping(ReadOnlySharedMemoryMapping&&); +- ReadOnlySharedMemoryMapping& operator=(ReadOnlySharedMemoryMapping&&); ++ ReadOnlySharedMemoryMapping(ReadOnlySharedMemoryMapping&&) noexcept; ++ ReadOnlySharedMemoryMapping& operator=( ++ ReadOnlySharedMemoryMapping&&) noexcept; + + // Returns the base address of the mapping. This is read-only memory. This is + // page-aligned. This is nullptr for invalid instances. +@@ -171,8 +172,9 @@ + WritableSharedMemoryMapping(); + + // Move operations are allowed. +- WritableSharedMemoryMapping(WritableSharedMemoryMapping&&); +- WritableSharedMemoryMapping& operator=(WritableSharedMemoryMapping&&); ++ WritableSharedMemoryMapping(WritableSharedMemoryMapping&&) noexcept; ++ WritableSharedMemoryMapping& operator=( ++ WritableSharedMemoryMapping&&) noexcept; + + // Returns the base address of the mapping. This is writable memory. This is + // page-aligned. This is nullptr for invalid instances. diff --git a/chromium-76.0.3809.100-gcc-net-fetcher.patch b/chromium-76.0.3809.100-gcc-net-fetcher.patch new file mode 100644 index 0000000..bc0ed98 --- /dev/null +++ b/chromium-76.0.3809.100-gcc-net-fetcher.patch @@ -0,0 +1,63 @@ +From 502e6e42633d2571c8236c8649b031fe9915eb5b Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Tue, 11 Jun 2019 16:56:27 +0000 +Subject: [PATCH] GCC: CertNetFetcherImpl declares Job as a friend but it is in the anonymous namespace + +GCC does not allow friendship declaration to anonymous namespace as done with Job +object in the CertNetFetcherImpl. This fix removes the friend declaration, and just +makes RemoveJob method public, that was the only reason to make Job a friend. + +Error was: +./../net/cert_net/cert_net_fetcher_impl.cc: In member function ‘void net::{anonymous}::Job::DetachRequest(net::CertNetFetcherImpl::RequestCore*)’: +../../net/cert_net/cert_net_fetcher_impl.cc:458:42: error: ‘std::unique_ptr net::CertNetFetcherImpl::AsyncCertNetFetcherImpl::RemoveJob(net::{anonymous}::Job*)’ is private within this context + delete_this = parent_->RemoveJob(this); + ^ +../../net/cert_net/cert_net_fetcher_impl.cc:151:24: note: declared private here + std::unique_ptr RemoveJob(Job* job); + ^~~~~~~~~ +../../net/cert_net/cert_net_fetcher_impl.cc: In member function ‘void net::{anonymous}::Job::OnJobCompleted(net::Error)’: +../../net/cert_net/cert_net_fetcher_impl.cc:610:61: error: ‘std::unique_ptr net::CertNetFetcherImpl::AsyncCertNetFetcherImpl::RemoveJob(net::{anonymous}::Job*)’ is private within this context + std::unique_ptr delete_this = parent_->RemoveJob(this); + ^ +../../net/cert_net/cert_net_fetcher_impl.cc:151:24: note: declared private here + std::unique_ptr RemoveJob(Job* job); + ^~~~~~~~~ + +Bug: 819294 +Change-Id: I3609f4558e570741395366de6a4cd40577d91450 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1651783 +Commit-Queue: Eric Roman +Reviewed-by: Eric Roman +Cr-Commit-Position: refs/heads/master@{#668015} +--- + +diff --git a/net/cert_net/cert_net_fetcher_impl.cc b/net/cert_net/cert_net_fetcher_impl.cc +index 11a1166..349c656 100644 +--- a/net/cert_net/cert_net_fetcher_impl.cc ++++ b/net/cert_net/cert_net_fetcher_impl.cc +@@ -135,21 +135,19 @@ + void Fetch(std::unique_ptr request_params, + scoped_refptr request); + ++ // Removes |job| from the in progress jobs and transfers ownership to the ++ // caller. ++ std::unique_ptr RemoveJob(Job* job); ++ + // Cancels outstanding jobs, which stops network requests and signals the + // corresponding RequestCores that the requests have completed. + void Shutdown(); + + private: +- friend class Job; +- + // Finds a job with a matching RequestPararms or returns nullptr if there was + // no match. + Job* FindJob(const RequestParams& params); + +- // Removes |job| from the in progress jobs and transfers ownership to the +- // caller. +- std::unique_ptr RemoveJob(Job* job); +- + // The in-progress jobs. This set does not contain the job which is actively + // invoking callbacks (OnJobCompleted). + JobSet jobs_; diff --git a/chromium-76.0.3809.100-gcc-vulkan.patch b/chromium-76.0.3809.100-gcc-vulkan.patch new file mode 100644 index 0000000..cf93bce --- /dev/null +++ b/chromium-76.0.3809.100-gcc-vulkan.patch @@ -0,0 +1,115 @@ +From fdb3bb1f8c41d044a5b0cb80257a26dd3c8f83a3 Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Tue, 11 Jun 2019 17:39:38 +0000 +Subject: [PATCH] GCC: do not use old C notation to assign struct with property names. + +The notation for initialization of structs referring to its properties +is invalid in C++. This is not accepted in GCC. It was making build +fail in VulkanCommandBuffer. + +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc: In member function 'void gpu::VulkanCommandBuffer::TransitionImageLayout(VkImage, VkImageLayout, VkImageLayout)': +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:214:7: error: expected primary-expression before '.' token + .subresourceRange.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT, + ^ +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:215:7: error: expected primary-expression before '.' token + .subresourceRange.baseMipLevel = 0, + ^ +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:216:7: error: expected primary-expression before '.' token + .subresourceRange.levelCount = 1, + ^ +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:217:7: error: expected primary-expression before '.' token + .subresourceRange.baseArrayLayer = 0, + ^ +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:218:7: error: expected primary-expression before '.' token + .subresourceRange.layerCount = 1, + ^ +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc: In member function 'void gpu::VulkanCommandBuffer::CopyBufferToImage(VkBuffer, VkImage, uint32_t, uint32_t, uint32_t, uint32_t)': +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:235:7: error: expected primary-expression before '.' token + .imageSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT, + ^ +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:236:7: error: expected primary-expression before '.' token + .imageSubresource.mipLevel = 0, + ^ +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:237:7: error: expected primary-expression before '.' token + .imageSubresource.baseArrayLayer = 0, + ^ +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:238:7: error: expected primary-expression before '.' token + .imageSubresource.layerCount = 1, + ^ +Bug: 819294 + +Change-Id: I999abece0c727e77964789183642ba62009c2c22 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1651802 +Commit-Queue: José Dapena Paz +Reviewed-by: Antoine Labour +Cr-Commit-Position: refs/heads/master@{#668033} +--- + +diff --git a/gpu/vulkan/vulkan_command_buffer.cc b/gpu/vulkan/vulkan_command_buffer.cc +index ba776e4..4f14c85 100644 +--- a/gpu/vulkan/vulkan_command_buffer.cc ++++ b/gpu/vulkan/vulkan_command_buffer.cc +@@ -207,21 +207,20 @@ + void VulkanCommandBuffer::TransitionImageLayout(VkImage image, + VkImageLayout old_layout, + VkImageLayout new_layout) { +- VkImageMemoryBarrier barrier = { +- .sType = VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER, +- .srcAccessMask = GetAccessMask(old_layout), +- .dstAccessMask = GetAccessMask(new_layout), +- .oldLayout = old_layout, +- .newLayout = new_layout, +- .srcQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED, +- .dstQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED, +- .image = image, +- .subresourceRange.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT, +- .subresourceRange.baseMipLevel = 0, +- .subresourceRange.levelCount = 1, +- .subresourceRange.baseArrayLayer = 0, +- .subresourceRange.layerCount = 1, +- }; ++ VkImageMemoryBarrier barrier = {}; ++ barrier.sType = VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER; ++ barrier.srcAccessMask = GetAccessMask(old_layout); ++ barrier.dstAccessMask = GetAccessMask(new_layout); ++ barrier.oldLayout = old_layout; ++ barrier.newLayout = new_layout; ++ barrier.srcQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED; ++ barrier.dstQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED; ++ barrier.image = image; ++ barrier.subresourceRange.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT; ++ barrier.subresourceRange.baseMipLevel = 0; ++ barrier.subresourceRange.levelCount = 1; ++ barrier.subresourceRange.baseArrayLayer = 0; ++ barrier.subresourceRange.layerCount = 1; + vkCmdPipelineBarrier(command_buffer_, GetPipelineStageFlags(old_layout), + GetPipelineStageFlags(new_layout), 0, 0, nullptr, 0, + nullptr, 1, &barrier); +@@ -233,17 +232,16 @@ + uint32_t buffer_height, + uint32_t width, + uint32_t height) { +- VkBufferImageCopy region = { +- .bufferOffset = 0, +- .bufferRowLength = buffer_width, +- .bufferImageHeight = buffer_height, +- .imageSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT, +- .imageSubresource.mipLevel = 0, +- .imageSubresource.baseArrayLayer = 0, +- .imageSubresource.layerCount = 1, +- .imageOffset = {0, 0, 0}, +- .imageExtent = {width, height, 1}, +- }; ++ VkBufferImageCopy region = {}; ++ region.bufferOffset = 0; ++ region.bufferRowLength = buffer_width; ++ region.bufferImageHeight = buffer_height; ++ region.imageSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT; ++ region.imageSubresource.mipLevel = 0; ++ region.imageSubresource.baseArrayLayer = 0; ++ region.imageSubresource.layerCount = 1; ++ region.imageOffset = {0, 0, 0}; ++ region.imageExtent = {width, height, 1}; + vkCmdCopyBufferToImage(command_buffer_, buffer, image, + VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, 1, ®ion); + } diff --git a/chromium.spec b/chromium.spec index 1d3a256..602b236 100644 --- a/chromium.spec +++ b/chromium.spec @@ -261,6 +261,13 @@ Patch45: chromium-75.0.3770.80-grpc-gettid-fix.patch # fix v8 compile with gcc # https://chromium.googlesource.com/v8/v8/+/3b8c624bda58d05aea80dd9626cd550537d6ac3f%5E%21/#F1 Patch46: chromium-75.0.3770.100-fix-v8-gcc.patch +# Fix Vulkan compilation with gcc +# https://chromium.googlesource.com/chromium/src/+/fdb3bb1f8c41d044a5b0cb80257a26dd3c8f83a3 +Patch47: chromium-76.0.3809.100-gcc-vulkan.patch +# https://chromium-review.googlesource.com/c/chromium/src/+/1645297 +Patch48: chromium-76.0.3809.100-gcc-cc-no-except.patch +# https://chromium.googlesource.com/chromium/src.git/+/502e6e42633d2571c8236c8649b031fe9915eb5b +Patch49: chromium-76.0.3809.100-gcc-net-fetcher.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -818,6 +825,9 @@ udev. %patch44 -p1 -b .pure-virtual-fix %patch45 -p1 -b .gettid-fix %patch46 -p1 -b .fix-v8-gcc +%patch47 -p1 -b .gcc-vulkan +%patch48 -p1 -b .gcc-cc-no-except +%patch49 -p1 -b .gcc-net-fetcher # EPEL specific patches %if 0%{?rhel} == 7 @@ -1064,6 +1074,7 @@ ln -s %{_bindir}/node third_party/node/linux/node-linux-x64/bin/node # Remove most of the bundled libraries. Libraries specified below (taken from # Gentoo's Chromium ebuild) are the libraries that needs to be preserved. build/linux/unbundle/remove_bundled_libraries.py \ + 'base/third_party/cityhash' \ 'base/third_party/dmg_fp' \ 'base/third_party/dynamic_annotations' \ 'base/third_party/icu' \ @@ -1104,6 +1115,8 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/blink' \ 'third_party/boringssl' \ 'third_party/boringssl/src/third_party/fiat' \ + 'third_party/boringssl/src/third_party/sike' \ + 'third_party/boringssl/linux-x86_64/crypto/third_party/sike/' \ 'third_party/breakpad' \ 'third_party/breakpad/breakpad/src/third_party/curl' \ 'third_party/brotli' \ @@ -1229,6 +1242,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/sinonjs' \ 'third_party/skia' \ 'third_party/skia/include/third_party/vulkan' \ + 'third_party/skia/include/third_party/skcms' \ 'third_party/skia/third_party/gif' \ 'third_party/skia/third_party/skcms' \ 'third_party/skia/third_party/vulkan' \ diff --git a/get_free_ffmpeg_source_files.py b/get_free_ffmpeg_source_files.py index 76c73ae..f2225ea 100755 --- a/get_free_ffmpeg_source_files.py +++ b/get_free_ffmpeg_source_files.py @@ -41,9 +41,9 @@ def parse_sources(input_sources, output_sources, arch_not_arm): append_sources (block[1], output_sources) -def parse_ffmpeg_gyni_file(gyni_path, arch_not_arm): +def parse_ffmpeg_gni_file(gni_path, arch_not_arm): - with open(gyni_path, "r") as input_file: + with open(gni_path, "r") as input_file: content = input_file.read().replace('\n', '') output_sources = [] @@ -62,7 +62,7 @@ def parse_ffmpeg_gyni_file(gyni_path, arch_not_arm): limitations = ['ffmpeg_branding == "Chrome"', 'ffmpeg_branding == "ChromeOS"'] if ('use_linux_config' in condition) and not any(limitation in condition for limitation in limitations): if (arch_not_arm): - if ('x64' in condition) or ('x86' in condition): + if ('x64' in condition) or ('x86' in condition) or ('use_linux_config' in condition): parse_sources (block[1], output_sources, arch_not_arm) inserted = True else: @@ -79,4 +79,4 @@ def parse_ffmpeg_gyni_file(gyni_path, arch_not_arm): if __name__ == "__main__": path = "%s/third_party/ffmpeg/ffmpeg_generated.gni" % sys.argv[1] - parse_ffmpeg_gyni_file (path, False if sys.argv[2] == "0" else True) + parse_ffmpeg_gni_file (path, False if sys.argv[2] == "0" else True) diff --git a/sources b/sources index 778c103..4e53fd1 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-76.0.3809.100-clean.tar.xz) = ad250b8cd0a01297fdff85c12a4dca85477cf027a68c0a9f7a3bc93b825772d17ddd062a89020ae954def781f19fe44beedb33ec8a86f3c12af290edb43d6ee9 +SHA512 (chromium-76.0.3809.100-clean.tar.xz) = f9fecad99618dffbfa3331b77dd82244447382761ca864380ea145d58f4bd90bb1c0fd3d433aca7d71f63e24c4120bff15c3a4dd9b86e94096cdf31c02b80cd5 From fcb9e6e6edba2dee44b4896fe6e94eabc5ab8009 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 14 Aug 2019 14:38:51 +0200 Subject: [PATCH 0305/1449] Backport more build fixes from upstream --- ....3809.100-gcc-ambigous-instantiation.patch | 39 +++ ...0.3809.100-gcc-feature-policy-parser.patch | 76 ++++++ ...0.3809.100-gcc-hasfraction-constexpr.patch | 32 +++ ...100-gcc-move-explicit-initialization.patch | 97 ++++++++ ...ium-76.0.3809.100-quiche-compile-fix.patch | 225 ++++++++++++++++++ ...m-76.0.3809.100-throttling-dead-beef.patch | 30 +++ ...ium-76.0.3809.100-weak-ptr-no-except.patch | 66 +++++ chromium.spec | 21 ++ 8 files changed, 586 insertions(+) create mode 100644 chromium-76.0.3809.100-gcc-ambigous-instantiation.patch create mode 100644 chromium-76.0.3809.100-gcc-feature-policy-parser.patch create mode 100644 chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch create mode 100644 chromium-76.0.3809.100-gcc-move-explicit-initialization.patch create mode 100644 chromium-76.0.3809.100-quiche-compile-fix.patch create mode 100644 chromium-76.0.3809.100-throttling-dead-beef.patch create mode 100644 chromium-76.0.3809.100-weak-ptr-no-except.patch diff --git a/chromium-76.0.3809.100-gcc-ambigous-instantiation.patch b/chromium-76.0.3809.100-gcc-ambigous-instantiation.patch new file mode 100644 index 0000000..587abf3 --- /dev/null +++ b/chromium-76.0.3809.100-gcc-ambigous-instantiation.patch @@ -0,0 +1,39 @@ +From 52b5ceac95b67491b1c71f0ef9a32b778bbbaa2e Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Wed, 05 Jun 2019 19:46:55 +0000 +Subject: [PATCH] GCC: avoid ambiguous NoDestructor creation in GetNeverSniffedMimeTypes. + +Use brace-list notation to wrap the already existing brace-list for +initializing the flat-set. This resolves an ambiguous instantiation +in GCC. + +Bug: 819294 +Change-Id: I89ddf12522d62a5140a8c2c41dc98e30ec7a0e78 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645774 +Reviewed-by: Matt Menke +Commit-Queue: José Dapena Paz +Cr-Commit-Position: refs/heads/master@{#666401} +--- + +diff --git a/services/network/cross_origin_read_blocking.cc b/services/network/cross_origin_read_blocking.cc +index 30999c0..60a03f6 100644 +--- a/services/network/cross_origin_read_blocking.cc ++++ b/services/network/cross_origin_read_blocking.cc +@@ -211,7 +211,7 @@ + // confirmation sniffing because images, scripts, etc. are frequently + // mislabelled by http servers as HTML/JSON/XML). + base::flat_set& GetNeverSniffedMimeTypes() { +- static base::NoDestructor> s_types({ ++ static base::NoDestructor> s_types{{ + // The list below has been populated based on most commonly used content + // types according to HTTP Archive - see: + // https://github.com/whatwg/fetch/issues/860#issuecomment-457330454 +@@ -224,7 +224,7 @@ + "application/x-www-form-urlencoded", + "application/zip", + "text/event-stream", +- }); ++ }}; + + // All items need to be lower-case, to support case-insensitive comparisons + // later. diff --git a/chromium-76.0.3809.100-gcc-feature-policy-parser.patch b/chromium-76.0.3809.100-gcc-feature-policy-parser.patch new file mode 100644 index 0000000..0dbffd5 --- /dev/null +++ b/chromium-76.0.3809.100-gcc-feature-policy-parser.patch @@ -0,0 +1,76 @@ +From 0aca7b8dea0f52ba7bd58dfce4ac236ee60670a8 Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Tue, 04 Jun 2019 19:44:58 +0200 +Subject: [PATCH] GCC: FeaturePolicyParser ParseValueForFuzzer is not in anonymous namespace + +Compilation fails because we are declaring ParseValueForFuzzer as friend method, +but we are declaring it is in anonymous namespace. Moving to global namespace +still fails (in this case in Clang). + +So final solution is making it a public static method of FeaturePolicyParser. + +Bug: 819294 +Change-Id: Iea307cb6faef675b748d6eb5da2175dcbb17fdc7 +--- + +diff --git a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc +index 3b7f4a9..eaee409 100644 +--- a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc ++++ b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc +@@ -317,6 +317,13 @@ + return value; + } + ++void FeaturePolicyParser::ParseValueForFuzzer( ++ blink::mojom::PolicyValueType feature_type, ++ const WTF::String& value_string) { ++ bool ok; ++ ParseValueForType(feature_type, value_string, &ok); ++} ++ + bool IsFeatureDeclared(mojom::FeaturePolicyFeature feature, + const ParsedFeaturePolicy& policy) { + return std::any_of(policy.begin(), policy.end(), +diff --git a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h +index fd25d90..36af405 100644 +--- a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h ++++ b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h +@@ -16,9 +16,6 @@ + #include "third_party/blink/renderer/platform/wtf/text/wtf_string.h" + #include "third_party/blink/renderer/platform/wtf/vector.h" + +-// Forward declare for friendship. +-void ParseValueForFuzzer(blink::mojom::PolicyValueType, const WTF::String&); +- + namespace blink { + + class Document; +@@ -79,8 +76,9 @@ + const FeatureNameMap& feature_names, + ExecutionContext* execution_context = nullptr); + ++ static void ParseValueForFuzzer(mojom::PolicyValueType, const String&); ++ + private: +- friend void ::ParseValueForFuzzer(mojom::PolicyValueType, const String&); + static PolicyValue GetFallbackValueForFeature( + mojom::FeaturePolicyFeature feature); + static PolicyValue ParseValueForType(mojom::PolicyValueType feature_type, +diff --git a/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc b/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc +index 7f8e6aa..53350e43 100644 +--- a/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc ++++ b/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc +@@ -23,9 +23,9 @@ + extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) { + static blink::BlinkFuzzerTestSupport test_support = + blink::BlinkFuzzerTestSupport(); +- ParseValueForFuzzer(blink::mojom::PolicyValueType::kBool, +- WTF::String(data, size)); +- ParseValueForFuzzer(blink::mojom::PolicyValueType::kDecDouble, +- WTF::String(data, size)); ++ blink::FeaturePolicyParser::ParseValueForFuzzer( ++ blink::mojom::PolicyValueType::kBool, WTF::String(data, size)); ++ blink::FeaturePolicyParser::ParseValueForFuzzer( ++ blink::mojom::PolicyValueType::kDecDouble, WTF::String(data, size)); + return 0; + } diff --git a/chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch b/chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch new file mode 100644 index 0000000..26bba05 --- /dev/null +++ b/chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch @@ -0,0 +1,32 @@ +From cf6d6b40d711fce93a24a2cf517fa3becdbae8bb Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Wed, 05 Jun 2019 17:18:40 +0000 +Subject: [PATCH] Make blink::LayoutUnit::HasFraction constexpr + +Other HasFraction methods as in PhysicalUnit are declared already +constexpr and using it. It breaks GCC build. + +Bug: 819294. +Change-Id: I0c4bd9bd206d45cf31f7fa815ce8533718a425cb +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645222 +Reviewed-by: vmpstr +Reviewed-by: Xianzhu Wang +Commit-Queue: José Dapena Paz +Cr-Commit-Position: refs/heads/master@{#666336} +--- + +diff --git a/third_party/blink/renderer/platform/geometry/layout_unit.h b/third_party/blink/renderer/platform/geometry/layout_unit.h +index f073986..b6dbc76 100644 +--- a/third_party/blink/renderer/platform/geometry/layout_unit.h ++++ b/third_party/blink/renderer/platform/geometry/layout_unit.h +@@ -202,7 +202,9 @@ + return value_ > 0 ? LayoutUnit() : *this; + } + +- bool HasFraction() const { return RawValue() % kFixedPointDenominator; } ++ constexpr bool HasFraction() const { ++ return RawValue() % kFixedPointDenominator; ++ } + + LayoutUnit Fraction() const { + // Compute fraction using the mod operator to preserve the sign of the value diff --git a/chromium-76.0.3809.100-gcc-move-explicit-initialization.patch b/chromium-76.0.3809.100-gcc-move-explicit-initialization.patch new file mode 100644 index 0000000..1d4b90f --- /dev/null +++ b/chromium-76.0.3809.100-gcc-move-explicit-initialization.patch @@ -0,0 +1,97 @@ +From dcb55fb8f18abe5f43d260aa67b14b2dc996f992 Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Tue, 11 Jun 2019 08:00:13 +0000 +Subject: [PATCH] GCC: move explicit specialization out of RunInfo + +Explicit specialization in non-namespace scope is not allowed in C++, and GCC breaks +build because of that. Move the template specializations out of RunInfo declaration +in shape_result_inline_headeres.h to fix the GCC build issue. + +Bug: 819294 +Change-Id: Id083852bcf8e9efbdc911fdad28fd8767d2905d0 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1651728 +Reviewed-by: Kinuko Yasuda +Commit-Queue: José Dapena Paz +Cr-Commit-Position: refs/heads/master@{#667901} +--- + +diff --git a/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h b/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h +index 76ee6091..c14d3a0 100644 +--- a/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h ++++ b/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h +@@ -251,37 +251,6 @@ + template + struct iterator final {}; + +- // For non-zero glyph offset array +- template <> +- struct iterator final { +- // The constructor for ShapeResult +- explicit iterator(const GlyphOffsetArray& array) +- : pointer(array.storage_.get()) { +- DCHECK(pointer); +- } +- +- // The constructor for ShapeResultView +- explicit iterator(const GlyphDataRange& range) : pointer(range.offsets) { +- DCHECK(pointer); +- } +- +- GlyphOffset operator*() const { return *pointer; } +- void operator++() { ++pointer; } +- +- const GlyphOffset* pointer; +- }; +- +- // For zero glyph offset array +- template <> +- struct iterator final { +- explicit iterator(const GlyphOffsetArray& array) { +- DCHECK(!array.HasStorage()); +- } +- explicit iterator(const GlyphDataRange& range) { DCHECK(!range.offsets); } +- GlyphOffset operator*() const { return GlyphOffset(); } +- void operator++() {} +- }; +- + template + iterator GetIterator() const { + return iterator(*this); +@@ -495,6 +464,37 @@ + float width_; + }; + ++// For non-zero glyph offset array ++template <> ++struct ShapeResult::RunInfo::GlyphOffsetArray::iterator final { ++ // The constructor for ShapeResult ++ explicit iterator(const GlyphOffsetArray& array) ++ : pointer(array.storage_.get()) { ++ DCHECK(pointer); ++ } ++ ++ // The constructor for ShapeResultView ++ explicit iterator(const GlyphDataRange& range) : pointer(range.offsets) { ++ DCHECK(pointer); ++ } ++ ++ GlyphOffset operator*() const { return *pointer; } ++ void operator++() { ++pointer; } ++ ++ const GlyphOffset* pointer; ++}; ++ ++// For zero glyph offset array ++template <> ++struct ShapeResult::RunInfo::GlyphOffsetArray::iterator final { ++ explicit iterator(const GlyphOffsetArray& array) { ++ DCHECK(!array.HasStorage()); ++ } ++ explicit iterator(const GlyphDataRange& range) { DCHECK(!range.offsets); } ++ GlyphOffset operator*() const { return GlyphOffset(); } ++ void operator++() {} ++}; ++ + // Find the range of HarfBuzzRunGlyphData for the specified character index + // range. This function uses binary search twice, hence O(2 log n). + inline ShapeResult::RunInfo::GlyphDataRange diff --git a/chromium-76.0.3809.100-quiche-compile-fix.patch b/chromium-76.0.3809.100-quiche-compile-fix.patch new file mode 100644 index 0000000..98789d9 --- /dev/null +++ b/chromium-76.0.3809.100-quiche-compile-fix.patch @@ -0,0 +1,225 @@ +diff -up chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc.quiche-compile-fix chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc +--- chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc.quiche-compile-fix 2019-08-14 09:58:07.721193200 +0200 ++++ chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc 2019-08-14 09:59:33.131041525 +0200 +@@ -62,37 +62,37 @@ const size_t kStatelessResetTokenLength + std::string TransportParameterIdToString( + TransportParameters::TransportParameterId param_id) { + switch (param_id) { +- case kOriginalConnectionId: ++ case TransportParameters::kOriginalConnectionId: + return "original_connection_id"; +- case kIdleTimeout: ++ case TransportParameters::kIdleTimeout: + return "idle_timeout"; +- case kStatelessResetToken: ++ case TransportParameters::kStatelessResetToken: + return "stateless_reset_token"; +- case kMaxPacketSize: ++ case TransportParameters::kMaxPacketSize: + return "max_packet_size"; +- case kInitialMaxData: ++ case TransportParameters::kInitialMaxData: + return "initial_max_data"; +- case kInitialMaxStreamDataBidiLocal: ++ case TransportParameters::kInitialMaxStreamDataBidiLocal: + return "initial_max_stream_data_bidi_local"; +- case kInitialMaxStreamDataBidiRemote: ++ case TransportParameters::kInitialMaxStreamDataBidiRemote: + return "initial_max_stream_data_bidi_remote"; +- case kInitialMaxStreamDataUni: ++ case TransportParameters::kInitialMaxStreamDataUni: + return "initial_max_stream_data_uni"; +- case kInitialMaxStreamsBidi: ++ case TransportParameters::kInitialMaxStreamsBidi: + return "initial_max_streams_bidi"; +- case kInitialMaxStreamsUni: ++ case TransportParameters::kInitialMaxStreamsUni: + return "initial_max_streams_uni"; +- case kAckDelayExponent: ++ case TransportParameters::kAckDelayExponent: + return "ack_delay_exponent"; +- case kMaxAckDelay: ++ case TransportParameters::kMaxAckDelay: + return "max_ack_delay"; +- case kDisableMigration: ++ case TransportParameters::kDisableMigration: + return "disable_migration"; +- case kPreferredAddress: ++ case TransportParameters::kPreferredAddress: + return "preferred_address"; +- case kGoogleQuicParam: ++ case TransportParameters::kGoogleQuicParam: + return "google"; +- case kGoogleQuicVersion: ++ case TransportParameters::kGoogleQuicVersion: + return "google-version"; + } + return "Unknown(" + QuicTextUtils::Uint64ToString(param_id) + ")"; +@@ -390,7 +390,7 @@ bool SerializeTransportParameters(const + CBB original_connection_id_param; + if (!in.original_connection_id.IsEmpty()) { + DCHECK_EQ(Perspective::IS_SERVER, in.perspective); +- if (!CBB_add_u16(¶ms, kOriginalConnectionId) || ++ if (!CBB_add_u16(¶ms, TransportParameters::kOriginalConnectionId) || + !CBB_add_u16_length_prefixed(¶ms, &original_connection_id_param) || + !CBB_add_bytes( + &original_connection_id_param, +@@ -412,7 +412,7 @@ bool SerializeTransportParameters(const + if (!in.stateless_reset_token.empty()) { + DCHECK_EQ(kStatelessResetTokenLength, in.stateless_reset_token.size()); + DCHECK_EQ(Perspective::IS_SERVER, in.perspective); +- if (!CBB_add_u16(¶ms, kStatelessResetToken) || ++ if (!CBB_add_u16(¶ms, TransportParameters::kStatelessResetToken) || + !CBB_add_u16_length_prefixed(¶ms, &stateless_reset_token_param) || + !CBB_add_bytes(&stateless_reset_token_param, + in.stateless_reset_token.data(), +@@ -438,7 +438,7 @@ bool SerializeTransportParameters(const + + // disable_migration + if (in.disable_migration) { +- if (!CBB_add_u16(¶ms, kDisableMigration) || ++ if (!CBB_add_u16(¶ms, TransportParameters::kDisableMigration) || + !CBB_add_u16(¶ms, 0u)) { // 0 is the length of this parameter. + QUIC_BUG << "Failed to write disable_migration for " << in; + return false; +@@ -458,7 +458,7 @@ bool SerializeTransportParameters(const + QUIC_BUG << "Bad lengths " << *in.preferred_address; + return false; + } +- if (!CBB_add_u16(¶ms, kPreferredAddress) || ++ if (!CBB_add_u16(¶ms, TransportParameters::kPreferredAddress) || + !CBB_add_u16_length_prefixed(¶ms, &preferred_address_params) || + !CBB_add_bytes( + &preferred_address_params, +@@ -491,7 +491,7 @@ bool SerializeTransportParameters(const + if (in.google_quic_params) { + const QuicData& serialized_google_quic_params = + in.google_quic_params->GetSerialized(); +- if (!CBB_add_u16(¶ms, kGoogleQuicParam) || ++ if (!CBB_add_u16(¶ms, TransportParameters::kGoogleQuicParam) || + !CBB_add_u16_length_prefixed(¶ms, &google_quic_params) || + !CBB_add_bytes(&google_quic_params, + reinterpret_cast( +@@ -505,7 +505,7 @@ bool SerializeTransportParameters(const + + // Google-specific version extension. + CBB google_version_params; +- if (!CBB_add_u16(¶ms, kGoogleQuicVersion) || ++ if (!CBB_add_u16(¶ms, TransportParameters::kGoogleQuicVersion) || + !CBB_add_u16_length_prefixed(¶ms, &google_version_params) || + !CBB_add_u32(&google_version_params, in.version)) { + QUIC_BUG << "Failed to write Google version extension for " << in; +@@ -565,7 +565,7 @@ bool ParseTransportParameters(const uint + } + bool parse_success = true; + switch (param_id) { +- case kOriginalConnectionId: ++ case TransportParameters::kOriginalConnectionId: + if (!out->original_connection_id.IsEmpty()) { + QUIC_DLOG(ERROR) << "Received a second original connection ID"; + return false; +@@ -581,10 +581,10 @@ bool ParseTransportParameters(const uint + CBS_len(&value)); + } + break; +- case kIdleTimeout: ++ case TransportParameters::kIdleTimeout: + parse_success = out->idle_timeout_milliseconds.ReadFromCbs(&value); + break; +- case kStatelessResetToken: ++ case TransportParameters::kStatelessResetToken: + if (!out->stateless_reset_token.empty()) { + QUIC_DLOG(ERROR) << "Received a second stateless reset token"; + return false; +@@ -597,36 +597,36 @@ bool ParseTransportParameters(const uint + out->stateless_reset_token.assign(CBS_data(&value), + CBS_data(&value) + CBS_len(&value)); + break; +- case kMaxPacketSize: ++ case TransportParameters::kMaxPacketSize: + parse_success = out->max_packet_size.ReadFromCbs(&value); + break; +- case kInitialMaxData: ++ case TransportParameters::kInitialMaxData: + parse_success = out->initial_max_data.ReadFromCbs(&value); + break; +- case kInitialMaxStreamDataBidiLocal: ++ case TransportParameters::kInitialMaxStreamDataBidiLocal: + parse_success = + out->initial_max_stream_data_bidi_local.ReadFromCbs(&value); + break; +- case kInitialMaxStreamDataBidiRemote: ++ case TransportParameters::kInitialMaxStreamDataBidiRemote: + parse_success = + out->initial_max_stream_data_bidi_remote.ReadFromCbs(&value); + break; +- case kInitialMaxStreamDataUni: ++ case TransportParameters::kInitialMaxStreamDataUni: + parse_success = out->initial_max_stream_data_uni.ReadFromCbs(&value); + break; +- case kInitialMaxStreamsBidi: ++ case TransportParameters::kInitialMaxStreamsBidi: + parse_success = out->initial_max_streams_bidi.ReadFromCbs(&value); + break; +- case kInitialMaxStreamsUni: ++ case TransportParameters::kInitialMaxStreamsUni: + parse_success = out->initial_max_streams_uni.ReadFromCbs(&value); + break; +- case kAckDelayExponent: ++ case TransportParameters::kAckDelayExponent: + parse_success = out->ack_delay_exponent.ReadFromCbs(&value); + break; +- case kMaxAckDelay: ++ case TransportParameters::kMaxAckDelay: + parse_success = out->max_ack_delay.ReadFromCbs(&value); + break; +- case kDisableMigration: ++ case TransportParameters::kDisableMigration: + if (out->disable_migration) { + QUIC_DLOG(ERROR) << "Received a second disable migration"; + return false; +@@ -638,7 +638,7 @@ bool ParseTransportParameters(const uint + } + out->disable_migration = true; + break; +- case kPreferredAddress: { ++ case TransportParameters::kPreferredAddress: { + uint16_t ipv4_port, ipv6_port; + in_addr ipv4_address; + in6_addr ipv6_address; +@@ -692,7 +692,7 @@ bool ParseTransportParameters(const uint + QuicMakeUnique( + preferred_address); + } break; +- case kGoogleQuicParam: { ++ case TransportParameters::kGoogleQuicParam: { + if (out->google_quic_params) { + QUIC_DLOG(ERROR) << "Received a second Google parameter"; + return false; +@@ -701,7 +701,7 @@ bool ParseTransportParameters(const uint + reinterpret_cast(CBS_data(&value)), CBS_len(&value)); + out->google_quic_params = CryptoFramer::ParseMessage(serialized_params); + } break; +- case kGoogleQuicVersion: { ++ case TransportParameters::kGoogleQuicVersion: { + if (!CBS_get_u32(&value, &out->version)) { + QUIC_DLOG(ERROR) << "Failed to parse Google version extension"; + return false; +diff -up chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc.quiche-compile-fix chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc +--- chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc.quiche-compile-fix 2019-08-14 09:59:19.139902052 +0200 ++++ chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc 2019-08-14 09:59:33.132041535 +0200 +@@ -2,10 +2,12 @@ + // Use of this source code is governed by a BSD-style license that can be + // found in the LICENSE file. + +-#include +- + #include "net/third_party/quiche/src/quic/core/quic_socket_address_coder.h" + ++#include ++#include ++#include ++ + namespace quic { + + namespace { diff --git a/chromium-76.0.3809.100-throttling-dead-beef.patch b/chromium-76.0.3809.100-throttling-dead-beef.patch new file mode 100644 index 0000000..5e392e6 --- /dev/null +++ b/chromium-76.0.3809.100-throttling-dead-beef.patch @@ -0,0 +1,30 @@ +From 53bb5a463ee956c70230eaa5450022185d0ddc3c Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Thu, 06 Jun 2019 07:54:05 +0000 +Subject: [PATCH] ThrottlingController::Liveness needs to be uint32_t + +We are setting kAlive and kDead values assigning values that +are bigger than the maximum signed int32. It is better to use +uint32_t in this case. + +Bug: 819294 +Change-Id: If72b48291a66a3a9db24b4c8e2d11d31936a66ee +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645772 +Reviewed-by: Kinuko Yasuda +Commit-Queue: José Dapena Paz +Cr-Commit-Position: refs/heads/master@{#666619} +--- + +diff --git a/services/network/throttling/throttling_controller.h b/services/network/throttling/throttling_controller.h +index 43751c4..3c6f87b 100644 +--- a/services/network/throttling/throttling_controller.h ++++ b/services/network/throttling/throttling_controller.h +@@ -38,7 +38,7 @@ + + // TODO(https://crbug.com/960874): Debugging code to try and shed some light + // on why the owned maps are invalid. +- enum class Liveness : int32_t { ++ enum class Liveness : uint32_t { + kAlive = 0xCA11AB13, + kDead = 0xDEADBEEF, + }; diff --git a/chromium-76.0.3809.100-weak-ptr-no-except.patch b/chromium-76.0.3809.100-weak-ptr-no-except.patch new file mode 100644 index 0000000..a392971 --- /dev/null +++ b/chromium-76.0.3809.100-weak-ptr-no-except.patch @@ -0,0 +1,66 @@ +From 0370838723e786b51e7ec8ab55014811ec3e3aa3 Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Thu, 18 Jul 2019 14:26:11 +0200 +Subject: [PATCH] Make base::WeakPtr move constructor/operator noexcept to fix GCC build regression + +A GCC build regression has happened on DisjointRangeLockManager, as its move +operator and constructor were declared noexcept. This was failing because the +default implementation depended on base::WeakPtr, that did not provide +noexcept declaration for them. + +So make base::WeakPtr noexcept. + +Bug: 819294 +Change-Id: I936784b881c7c1afea136ceedbe9341e76464f95 +--- + +diff --git a/base/memory/weak_ptr.cc b/base/memory/weak_ptr.cc +index 64fd499..0efcc44 100644 +--- a/base/memory/weak_ptr.cc ++++ b/base/memory/weak_ptr.cc +@@ -46,7 +46,7 @@ + + WeakReference::~WeakReference() = default; + +-WeakReference::WeakReference(WeakReference&& other) = default; ++WeakReference::WeakReference(WeakReference&& other) noexcept = default; + + WeakReference::WeakReference(const WeakReference& other) = default; + +diff --git a/base/memory/weak_ptr.h b/base/memory/weak_ptr.h +index 72b5f1f..ccd22fd13 100644 +--- a/base/memory/weak_ptr.h ++++ b/base/memory/weak_ptr.h +@@ -116,9 +116,9 @@ + explicit WeakReference(const scoped_refptr& flag); + ~WeakReference(); + +- WeakReference(WeakReference&& other); ++ WeakReference(WeakReference&& other) noexcept; + WeakReference(const WeakReference& other); +- WeakReference& operator=(WeakReference&& other) = default; ++ WeakReference& operator=(WeakReference&& other) noexcept = default; + WeakReference& operator=(const WeakReference& other) = default; + + bool IsValid() const; +@@ -153,9 +153,9 @@ + ~WeakPtrBase(); + + WeakPtrBase(const WeakPtrBase& other) = default; +- WeakPtrBase(WeakPtrBase&& other) = default; ++ WeakPtrBase(WeakPtrBase&& other) noexcept = default; + WeakPtrBase& operator=(const WeakPtrBase& other) = default; +- WeakPtrBase& operator=(WeakPtrBase&& other) = default; ++ WeakPtrBase& operator=(WeakPtrBase&& other) noexcept = default; + + void reset() { + ref_ = internal::WeakReference(); +@@ -236,7 +236,7 @@ + ptr_ = reinterpret_cast(t); + } + template +- WeakPtr(WeakPtr&& other) : WeakPtrBase(std::move(other)) { ++ WeakPtr(WeakPtr&& other) noexcept : WeakPtrBase(std::move(other)) { + // Need to cast from U* to T* to do pointer adjustment in case of multiple + // inheritance. This also enforces the "U is a T" rule. + T* t = reinterpret_cast(other.ptr_); diff --git a/chromium.spec b/chromium.spec index 602b236..383bfa9 100644 --- a/chromium.spec +++ b/chromium.spec @@ -268,6 +268,20 @@ Patch47: chromium-76.0.3809.100-gcc-vulkan.patch Patch48: chromium-76.0.3809.100-gcc-cc-no-except.patch # https://chromium.googlesource.com/chromium/src.git/+/502e6e42633d2571c8236c8649b031fe9915eb5b Patch49: chromium-76.0.3809.100-gcc-net-fetcher.patch +# https://quiche.googlesource.com/quiche.git/+/9424add9d73432a794b7944790253213cce6dcb8 +Patch50: chromium-76.0.3809.100-quiche-compile-fix.patch +# https://chromium.googlesource.com/chromium/src/+/53bb5a463ee956c70230eaa5450022185d0ddc3c +Patch51: chromium-76.0.3809.100-throttling-dead-beef.patch +# https://chromium.googlesource.com/chromium/src/+/52b5ceac95b67491b1c71f0ef9a32b778bbbaa2e +Patch52: chromium-76.0.3809.100-gcc-ambigous-instantiation.patch +# https://chromium.googlesource.com/chromium/src.git/+/715cb38eac889625de0c429d2672562188b4107e +Patch53: chromium-76.0.3809.100-weak-ptr-no-except.patch +# https://chromium.googlesource.com/chromium/src.git/+/c6afbd59c997c2b64f11abdd1eaef71ae8ea2ddc +Patch54: chromium-76.0.3809.100-gcc-feature-policy-parser.patch +# https://chromium.googlesource.com/chromium/src.git/+/cf6d6b40d711fce93a24a2cf517fa3becdbae8bb +Patch55: chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch +# https://chromium.googlesource.com/chromium/src.git/+/dcb55fb8f18abe5f43d260aa67b14b2dc996f992 +Patch56: chromium-76.0.3809.100-gcc-move-explicit-initialization.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -828,6 +842,13 @@ udev. %patch47 -p1 -b .gcc-vulkan %patch48 -p1 -b .gcc-cc-no-except %patch49 -p1 -b .gcc-net-fetcher +%patch50 -p1 -b .quiche-compile-fix +%patch51 -p1 -b .throttling-dead-beef +%patch52 -p1 -b .gcc-ambigous-instantiation +%patch53 -p1 -b .weak-ptr-no-except +%patch54 -p1 -b .gcc-feature-policy-parser +%patch55 -p1 -b .gcc-hasfraction-constexpr +%patch56 -p1 -b .gcc-move-explicit-initialization # EPEL specific patches %if 0%{?rhel} == 7 From 481c90e3a6ad165906e4760ef4739d4cc10f1376 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 14 Aug 2019 15:38:35 +0200 Subject: [PATCH 0306/1449] third_party/openscreen need to be preserved --- chromium.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/chromium.spec b/chromium.spec index 383bfa9..f23664a 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1232,6 +1232,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ %if %{freeworld} 'third_party/openh264' \ %endif + 'third_party/openscreen' \ 'third_party/opus' \ 'third_party/ots' \ 'third_party/pdfium' \ From 3f2dbf438203976abc9b0107bff6bdf3297c6fae Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 14 Aug 2019 15:41:23 +0200 Subject: [PATCH 0307/1449] third_party/boringssl/linux-x86_64/crypto/third_party/sike needs to be preserved --- chromium.spec | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index f23664a..0d575b1 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1137,7 +1137,8 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/boringssl' \ 'third_party/boringssl/src/third_party/fiat' \ 'third_party/boringssl/src/third_party/sike' \ - 'third_party/boringssl/linux-x86_64/crypto/third_party/sike/' \ + 'third_party/boringssl/linux-x86_64/crypto/third_party/sike' \ + 'third_party/boringssl/linux-aarch64/crypto/third_party/sike' \ 'third_party/breakpad' \ 'third_party/breakpad/breakpad/src/third_party/curl' \ 'third_party/brotli' \ From 6c1fd53b98f2b055fe077a77f604ce681272b4a4 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 14 Aug 2019 09:52:16 -0400 Subject: [PATCH 0308/1449] loosen dependency on chromium-libs in freeworld build --- chromium.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 0d575b1..bf6bdcb 100644 --- a/chromium.spec +++ b/chromium.spec @@ -730,7 +730,7 @@ Shared libraries used by chromium (and chrome-remote-desktop). Summary: Chromium media libraries built with all possible codecs Provides: chromium-libs-media = %{version}-%{release} Provides: chromium-libs-media%{_isa} = %{version}-%{release} -Requires: chromium-libs%{_isa} = %{version}-%{release} +Requires: chromium-libs%{_isa} = %{version} Requires(post): %{_sbindir}/update-alternatives Requires(preun): %{_sbindir}/update-alternatives From 8b12346860ef33607fa96d2ed9e4b0014889345c Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 14 Aug 2019 16:52:41 +0200 Subject: [PATCH 0309/1449] Pulseaudio changed the API in 12.99 and we need to adapt the signatures --- chromium-76.0.3809.100-pulse-api-change.patch | 42 +++++++++++++++++++ chromium.spec | 13 +++++- 2 files changed, 54 insertions(+), 1 deletion(-) create mode 100644 chromium-76.0.3809.100-pulse-api-change.patch diff --git a/chromium-76.0.3809.100-pulse-api-change.patch b/chromium-76.0.3809.100-pulse-api-change.patch new file mode 100644 index 0000000..37d3dfa --- /dev/null +++ b/chromium-76.0.3809.100-pulse-api-change.patch @@ -0,0 +1,42 @@ +diff -up chromium-76.0.3809.100/media/audio/pulse/pulse.sigs.pulse_api_change chromium-76.0.3809.100/media/audio/pulse/pulse.sigs +--- chromium-76.0.3809.100/media/audio/pulse/pulse.sigs.pulse_api_change 2019-08-14 16:27:55.057702172 +0200 ++++ chromium-76.0.3809.100/media/audio/pulse/pulse.sigs 2019-08-14 16:37:21.603479886 +0200 +@@ -24,7 +24,7 @@ pa_operation* pa_context_get_source_info + pa_operation* pa_context_get_source_info_by_name(pa_context* c, const char* name, pa_source_info_cb_t cb, void *userdata); + pa_operation* pa_context_get_source_info_list(pa_context* c, pa_source_info_cb_t cb, void* userdata); + pa_operation* pa_context_get_sink_info_list(pa_context* c, pa_sink_info_cb_t cb, void* userdata); +-pa_context_state_t pa_context_get_state(pa_context* c); ++pa_context_state_t pa_context_get_state(const pa_context* c); + pa_context* pa_context_new(pa_mainloop_api* mainloop, const char* name); + pa_operation* pa_context_set_source_volume_by_index(pa_context* c, uint32_t idx, const pa_cvolume* volume, pa_context_success_cb_t cb, void* userdata); + void pa_context_set_state_callback(pa_context* c, pa_context_notify_cb_t cb, void* userdata); +@@ -38,23 +38,23 @@ pa_operation* pa_stream_cork(pa_stream* + int pa_stream_disconnect(pa_stream* s); + int pa_stream_drop(pa_stream *p); + pa_operation* pa_stream_flush(pa_stream* s, pa_stream_success_cb_t cb, void* userdata); +-uint32_t pa_stream_get_device_index(pa_stream* s); ++uint32_t pa_stream_get_device_index(const pa_stream* s); + int pa_stream_get_latency(pa_stream* s, pa_usec_t* r_usec, int* negative); +-pa_stream_state_t pa_stream_get_state(pa_stream* p); ++pa_stream_state_t pa_stream_get_state(const pa_stream* p); + pa_stream* pa_stream_new(pa_context* c, const char* name, const pa_sample_spec* ss, const pa_channel_map * map); + pa_stream* pa_stream_new_with_proplist(pa_context* c, const char* name, const pa_sample_spec* ss, const pa_channel_map* map, pa_proplist* p); + pa_proplist* pa_proplist_new(void); +-int pa_proplist_contains(pa_proplist* p, const char* key); ++int pa_proplist_contains(const pa_proplist* p, const char* key); + void pa_proplist_free(pa_proplist* p); +-const char* pa_proplist_gets(pa_proplist* p, const char* key); ++const char* pa_proplist_gets(const pa_proplist* p, const char* key); + int pa_proplist_sets(pa_proplist* p, const char* key, const char* value); +-size_t pa_stream_readable_size(pa_stream *p); ++size_t pa_stream_readable_size(const pa_stream *p); + int pa_stream_peek(pa_stream* p, const void** data, size_t* nbytes); + void pa_stream_set_read_callback(pa_stream* p, pa_stream_request_cb_t cb, void* userdata); + void pa_stream_set_state_callback(pa_stream* s, pa_stream_notify_cb_t cb, void* userdata); + int pa_stream_write(pa_stream* p, const void* data, size_t nbytes, pa_free_cb_t free_cb, int64_t offset, pa_seek_mode_t seek); + void pa_stream_set_write_callback(pa_stream *p, pa_stream_request_cb_t cb, void *userdata); + void pa_stream_unref(pa_stream* s); +-int pa_context_errno(pa_context *c); ++int pa_context_errno(const pa_context *c); + const char* pa_strerror(int error); + pa_cvolume* pa_cvolume_set(pa_cvolume* a, unsigned channels, pa_volume_t v); diff --git a/chromium.spec b/chromium.spec index bf6bdcb..f91b60b 100644 --- a/chromium.spec +++ b/chromium.spec @@ -141,6 +141,13 @@ BuildRequires: libicu-devel >= 5.4 %global bundleharfbuzz 0 %endif +# Pulseaudio changed the API a little in 12.99.1 +%if 0%{?fedora} > 30 +%global pulseaudioapichange 1 +%else +%global pulseaudioapichange 0 +%endif + ### Google API keys (see http://www.chromium.org/developers/how-tos/api-keys) ### Note: These are for Fedora use ONLY. ### For your own distribution, please get your own set of keys. @@ -306,6 +313,8 @@ Patch202: enable-vaapi.patch Patch203: chromium-75.0.3770.80-vaapi-i686-fpermissive.patch # Fix compatibility with VA-API library (libva) version 1 Patch204: chromium-75.0.3770.80-vaapi-libva1-compatibility.patch +# Pulseaudio changed the API a little in 12.99.1 +Patch205: chromium-76.0.3809.100-pulse-api-change.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ @@ -491,7 +500,6 @@ BuildRequires: pkgconfig(gtk+-3.0) %else BuildRequires: pkgconfig(gtk+-2.0) %endif -BuildRequires: pulseaudio-libs-devel BuildRequires: python2-devel %if 0%{?fedora} > 27 BuildRequires: python2-beautifulsoup4 @@ -871,6 +879,9 @@ udev. %endif %endif +%if 0%{?pulseaudioapichange} +%patch205 -p1 -b .pulseaudioapichange +%endif # Change shebang in all relevant files in this directory and all subdirectories # See `man find` for how the `-exec command {} +` syntax works From a491a863e2af05db76391aec32b831d00342a716 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 14 Aug 2019 23:17:42 +0200 Subject: [PATCH 0310/1449] Add missing ffmpeg file on aarch64 --- clean_ffmpeg.sh | 1 + sources | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index 2f27435..e190296 100755 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -216,6 +216,7 @@ manual_files=" libavcodec/aarch64/fft_neon.S \ libavcodec/x86/videodsp_init.c \ libavcodec/x86/vorbisdsp_init.c \ libavcodec/autorename_libavcodec_mdct15.c \ + libavcodec/aarch64/autorename_libavcodec_aarch64_fft_neon.S \ libavcodec/bit_depth_template.c \ libavcodec/fft_template.c \ libavcodec/flacdec.c \ diff --git a/sources b/sources index 4e53fd1..d6d53e4 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-76.0.3809.100-clean.tar.xz) = f9fecad99618dffbfa3331b77dd82244447382761ca864380ea145d58f4bd90bb1c0fd3d433aca7d71f63e24c4120bff15c3a4dd9b86e94096cdf31c02b80cd5 +SHA512 (chromium-76.0.3809.100-clean.tar.xz) = ca39cf3df4716293d40ea78d8b6c7beb134340c42051dc5ae243f127729cc13fb60e9d168ccac29d55b4ef47aba598e3211caa8f3a8ed5689748873a36fce753 From 4376be3d5fd00f265b236e6bc9a7814e0b8dfa24 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 14 Aug 2019 23:22:37 +0200 Subject: [PATCH 0311/1449] Update the Pulseaudio's pa_operation_get_state() signature Missed it while updating the Pulseaudio signatures. --- chromium-76.0.3809.100-pulse-api-change.patch | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/chromium-76.0.3809.100-pulse-api-change.patch b/chromium-76.0.3809.100-pulse-api-change.patch index 37d3dfa..d4e2b46 100644 --- a/chromium-76.0.3809.100-pulse-api-change.patch +++ b/chromium-76.0.3809.100-pulse-api-change.patch @@ -1,7 +1,7 @@ -diff -up chromium-76.0.3809.100/media/audio/pulse/pulse.sigs.pulse_api_change chromium-76.0.3809.100/media/audio/pulse/pulse.sigs ---- chromium-76.0.3809.100/media/audio/pulse/pulse.sigs.pulse_api_change 2019-08-14 16:27:55.057702172 +0200 -+++ chromium-76.0.3809.100/media/audio/pulse/pulse.sigs 2019-08-14 16:37:21.603479886 +0200 -@@ -24,7 +24,7 @@ pa_operation* pa_context_get_source_info +diff -up chromium-76.0.3809.100/media/audio/pulse/pulse.sigs.pulse-api-change chromium-76.0.3809.100/media/audio/pulse/pulse.sigs +--- chromium-76.0.3809.100/media/audio/pulse/pulse.sigs.pulse-api-change 2019-08-14 23:18:59.624627870 +0200 ++++ chromium-76.0.3809.100/media/audio/pulse/pulse.sigs 2019-08-14 23:19:41.258104998 +0200 +@@ -24,11 +24,11 @@ pa_operation* pa_context_get_source_info pa_operation* pa_context_get_source_info_by_name(pa_context* c, const char* name, pa_source_info_cb_t cb, void *userdata); pa_operation* pa_context_get_source_info_list(pa_context* c, pa_source_info_cb_t cb, void* userdata); pa_operation* pa_context_get_sink_info_list(pa_context* c, pa_sink_info_cb_t cb, void* userdata); @@ -10,6 +10,11 @@ diff -up chromium-76.0.3809.100/media/audio/pulse/pulse.sigs.pulse_api_change ch pa_context* pa_context_new(pa_mainloop_api* mainloop, const char* name); pa_operation* pa_context_set_source_volume_by_index(pa_context* c, uint32_t idx, const pa_cvolume* volume, pa_context_success_cb_t cb, void* userdata); void pa_context_set_state_callback(pa_context* c, pa_context_notify_cb_t cb, void* userdata); +-pa_operation_state_t pa_operation_get_state(pa_operation* o); ++pa_operation_state_t pa_operation_get_state(const pa_operation* o); + void pa_context_unref(pa_context* c); + void pa_operation_unref(pa_operation* o); + int pa_stream_begin_write(pa_stream* p, void** data, size_t* nbytes); @@ -38,23 +38,23 @@ pa_operation* pa_stream_cork(pa_stream* int pa_stream_disconnect(pa_stream* s); int pa_stream_drop(pa_stream *p); From 453dfe1db369095fe7f201737409eb6ff0829790 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Thu, 15 Aug 2019 07:03:49 +0200 Subject: [PATCH 0312/1449] Backport another upstream build fix --- ....0.3809.100-gcc-initialization-order.patch | 33 +++++++++++++++++++ chromium.spec | 3 ++ 2 files changed, 36 insertions(+) create mode 100644 chromium-76.0.3809.100-gcc-initialization-order.patch diff --git a/chromium-76.0.3809.100-gcc-initialization-order.patch b/chromium-76.0.3809.100-gcc-initialization-order.patch new file mode 100644 index 0000000..3bf394f --- /dev/null +++ b/chromium-76.0.3809.100-gcc-initialization-order.patch @@ -0,0 +1,33 @@ +From 7dc76c8d9f4cfbce7cf11424120aa6f6094916dc Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Wed, 05 Jun 2019 21:09:01 +0000 +Subject: [PATCH] GCC: XSetWindowAttributes struct initialization should keep order of declaration + +XSetWindowAttributes initialization of attributes in GLSurfaceGLX is not in the +same order of the declaration. GCC fails because of that. + +Bug: 819294 +Change-Id: I8a97da980d5961a35a47ae4d0d8d558b85291f1f +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1646253 +Reviewed-by: Zhenyao Mo +Commit-Queue: José Dapena Paz +Cr-Commit-Position: refs/heads/master@{#666436} +--- + +diff --git a/ui/gl/gl_surface_glx.cc b/ui/gl/gl_surface_glx.cc +index f649dd4..0aa6892 100644 +--- a/ui/gl/gl_surface_glx.cc ++++ b/ui/gl/gl_surface_glx.cc +@@ -583,10 +583,10 @@ + + XSetWindowAttributes swa = { + .background_pixmap = 0, +- .bit_gravity = NorthWestGravity, +- .colormap = g_colormap, + .background_pixel = 0, // ARGB(0,0,0,0) for compositing WM + .border_pixel = 0, ++ .bit_gravity = NorthWestGravity, ++ .colormap = g_colormap, + }; + auto value_mask = CWBackPixmap | CWBitGravity | CWColormap | CWBorderPixel; + if (ui::IsCompositingManagerPresent() && diff --git a/chromium.spec b/chromium.spec index f91b60b..64e3243 100644 --- a/chromium.spec +++ b/chromium.spec @@ -289,6 +289,8 @@ Patch54: chromium-76.0.3809.100-gcc-feature-policy-parser.patch Patch55: chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch # https://chromium.googlesource.com/chromium/src.git/+/dcb55fb8f18abe5f43d260aa67b14b2dc996f992 Patch56: chromium-76.0.3809.100-gcc-move-explicit-initialization.patch +# https://chromium.googlesource.com/chromium/src.git/+/7dc76c8d9f4cfbce7cf11424120aa6f6094916dc +Patch57: chromium-76.0.3809.100-gcc-initialization-order.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -857,6 +859,7 @@ udev. %patch54 -p1 -b .gcc-feature-policy-parser %patch55 -p1 -b .gcc-hasfraction-constexpr %patch56 -p1 -b .gcc-move-explicit-initialization +%patch57 -p1 -b .gcc-initialization-order # EPEL specific patches %if 0%{?rhel} == 7 From cfc50a59ed81324387d036954e96c08805d4f25a Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Thu, 15 Aug 2019 07:10:04 +0200 Subject: [PATCH 0313/1449] Upload the new cleaned tarball with aarch64 sources Previously I forgot to pass the --ffmpegarm while generating the tarball. --- clean_ffmpeg.sh | 1 - sources | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index e190296..2f27435 100755 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -216,7 +216,6 @@ manual_files=" libavcodec/aarch64/fft_neon.S \ libavcodec/x86/videodsp_init.c \ libavcodec/x86/vorbisdsp_init.c \ libavcodec/autorename_libavcodec_mdct15.c \ - libavcodec/aarch64/autorename_libavcodec_aarch64_fft_neon.S \ libavcodec/bit_depth_template.c \ libavcodec/fft_template.c \ libavcodec/flacdec.c \ diff --git a/sources b/sources index d6d53e4..b7a420d 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-76.0.3809.100-clean.tar.xz) = ca39cf3df4716293d40ea78d8b6c7beb134340c42051dc5ae243f127729cc13fb60e9d168ccac29d55b4ef47aba598e3211caa8f3a8ed5689748873a36fce753 +SHA512 (chromium-76.0.3809.100-clean.tar.xz) = 418ade473185717595b47fbf49ad58bd9bf7cece43f9e200108a2f4df1391bc6a09673e7c30a9958205e13650ed220ad289fe3d79d140612ec5c0bb7891fc8c8 From 6ab36cdf55a4aa71200853ab75f3532831f1adab Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Thu, 15 Aug 2019 21:14:35 +0200 Subject: [PATCH 0314/1449] Backport and create more of the GCC fixes --- ...09.100-gcc-accountinfo-move-noexcept.patch | 53 +++++++++++++++++++ ...0.3809.100-gcc-history-move-noexcept.patch | 42 +++++++++++++++ ...0.3809.100-gcc-no-alignas-and-export.patch | 14 +++++ ...0.3809.100-gcc-themeservice-includes.patch | 36 +++++++++++++ chromium.spec | 14 +++++ 5 files changed, 159 insertions(+) create mode 100644 chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch create mode 100644 chromium-76.0.3809.100-gcc-history-move-noexcept.patch create mode 100644 chromium-76.0.3809.100-gcc-no-alignas-and-export.patch create mode 100644 chromium-76.0.3809.100-gcc-themeservice-includes.patch diff --git a/chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch b/chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch new file mode 100644 index 0000000..5f45a8f --- /dev/null +++ b/chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch @@ -0,0 +1,53 @@ +From 719df31ffd4d52b473509cf77acd9c02ec112acb Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Tue, 04 Jun 2019 18:38:12 +0200 +Subject: [PATCH] GCC: fix noexcept from move constructor and assign operators of AccountInfo + +AccountInfo declares them as noexcept and uses default implementation, +so all its members (including AccountId) should be noexcept. But AccountId +is not noexcept. To fix it we just need to make CoreAccountId move +operator/assign operator noexcept. + +Bug: 819294 +Change-Id: Ice38654ab7cf3b9eaa6f54aa36e1fec329264f98 +--- + +diff --git a/google_apis/gaia/core_account_id.cc b/google_apis/gaia/core_account_id.cc +index d808082..12eefe3 100644 +--- a/google_apis/gaia/core_account_id.cc ++++ b/google_apis/gaia/core_account_id.cc +@@ -6,8 +6,16 @@ + + CoreAccountId::CoreAccountId() = default; + ++CoreAccountId::CoreAccountId(const CoreAccountId&) = default; ++ ++CoreAccountId::CoreAccountId(CoreAccountId&&) noexcept = default; ++ + CoreAccountId::~CoreAccountId() = default; + ++CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; ++ ++CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) noexcept = default; ++ + CoreAccountId::CoreAccountId(const char* id) : id(id) {} + + CoreAccountId::CoreAccountId(std::string&& id) : id(std::move(id)) {} +diff --git a/google_apis/gaia/core_account_id.h b/google_apis/gaia/core_account_id.h +index 5ea602a..c2d1911 100644 +--- a/google_apis/gaia/core_account_id.h ++++ b/google_apis/gaia/core_account_id.h +@@ -14,8 +14,13 @@ + // for design and tracking). + struct CoreAccountId { + CoreAccountId(); ++ CoreAccountId(const CoreAccountId&); ++ CoreAccountId(CoreAccountId&&) noexcept; + ~CoreAccountId(); + ++ CoreAccountId& operator=(const CoreAccountId&); ++ CoreAccountId& operator=(CoreAccountId&&) noexcept; ++ + // Those implicit constructor and conversion operator allow to + // progressively migrate the code to use this struct. Removing + // them is tracked by https://crbug.com/959161 diff --git a/chromium-76.0.3809.100-gcc-history-move-noexcept.patch b/chromium-76.0.3809.100-gcc-history-move-noexcept.patch new file mode 100644 index 0000000..2876de4 --- /dev/null +++ b/chromium-76.0.3809.100-gcc-history-move-noexcept.patch @@ -0,0 +1,42 @@ +From abe74a7f0c53a43a9706a42d71b7ff4a5da53380 Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Tue, 11 Jun 2019 10:27:19 +0200 +Subject: [PATCH] GCC: add noexcept move assignment in history::URLRow + +In GCC, build is failing because history::QueryURLResult declares its move +assignment operator as noexcept using default implementation. That requires +its members to provide a move assignment operator that is noexcept too. + +But URLRow was missing noexcept declaration in move assignment operator (even +though it was providing noexcept to its move constructor). + +Bug: 819294 +Change-Id: I726e3cf7a4a50c9206a5d0fba8a561d363483d4f +--- + +diff --git a/components/history/core/browser/url_row.cc b/components/history/core/browser/url_row.cc +index 44c22fd..aec0101 100644 +--- a/components/history/core/browser/url_row.cc ++++ b/components/history/core/browser/url_row.cc +@@ -26,7 +26,7 @@ + } + + URLRow& URLRow::operator=(const URLRow& other) = default; +-URLRow& URLRow::operator=(URLRow&& other) = default; ++URLRow& URLRow::operator=(URLRow&& other) noexcept = default; + + void URLRow::Swap(URLRow* other) { + std::swap(id_, other->id_); +diff --git a/components/history/core/browser/url_row.h b/components/history/core/browser/url_row.h +index 8f6f9cf..31a1ef8 100644 +--- a/components/history/core/browser/url_row.h ++++ b/components/history/core/browser/url_row.h +@@ -35,7 +35,7 @@ + + virtual ~URLRow(); + URLRow& operator=(const URLRow& other); +- URLRow& operator=(URLRow&& other); ++ URLRow& operator=(URLRow&& other) noexcept; + + URLID id() const { return id_; } + diff --git a/chromium-76.0.3809.100-gcc-no-alignas-and-export.patch b/chromium-76.0.3809.100-gcc-no-alignas-and-export.patch new file mode 100644 index 0000000..cc91d1e --- /dev/null +++ b/chromium-76.0.3809.100-gcc-no-alignas-and-export.patch @@ -0,0 +1,14 @@ +diff -up chromium-76.0.3809.100/third_party/blink/renderer/core/css/css_property_value_set.h.gcc-no-alignas chromium-76.0.3809.100/third_party/blink/renderer/core/css/css_property_value_set.h +--- chromium-76.0.3809.100/third_party/blink/renderer/core/css/css_property_value_set.h.gcc-no-alignas 2019-08-09 16:48:13.000000000 +0200 ++++ chromium-76.0.3809.100/third_party/blink/renderer/core/css/css_property_value_set.h 2019-08-15 21:04:30.231532746 +0200 +@@ -176,8 +176,8 @@ class CSSLazyPropertyParser + DISALLOW_COPY_AND_ASSIGN(CSSLazyPropertyParser); + }; + +-class CORE_EXPORT alignas(Member) alignas( +- CSSPropertyValueMetadata) ImmutableCSSPropertyValueSet ++class CORE_EXPORT ALIGNAS(alignof(Member)) ++ ALIGNAS(alignof(CSSPropertyValueMetadata)) ImmutableCSSPropertyValueSet + : public CSSPropertyValueSet { + public: + ImmutableCSSPropertyValueSet(const CSSPropertyValue*, diff --git a/chromium-76.0.3809.100-gcc-themeservice-includes.patch b/chromium-76.0.3809.100-gcc-themeservice-includes.patch new file mode 100644 index 0000000..ad40bb9 --- /dev/null +++ b/chromium-76.0.3809.100-gcc-themeservice-includes.patch @@ -0,0 +1,36 @@ +From d08ea83acc2f5ff395c1fe54f52687e92fe51c3b Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Tue, 04 Jun 2019 22:01:03 +0200 +Subject: [PATCH] IWYU: ThemeService requires NativeTheme + +As ThemeService referes to NativeTheme through a ScopedObserver, +the full declaration is required. + +Bug: 819294 +Change-Id: I9d5bd2e87cfaa76e87f9b5509daea24848906a63 +--- + +diff --git a/chrome/browser/themes/theme_service.cc b/chrome/browser/themes/theme_service.cc +index d65388e2..23dc86d 100644 +--- a/chrome/browser/themes/theme_service.cc ++++ b/chrome/browser/themes/theme_service.cc +@@ -54,7 +54,6 @@ + #include "ui/gfx/color_palette.h" + #include "ui/gfx/image/image_skia.h" + #include "ui/native_theme/common_theme.h" +-#include "ui/native_theme/native_theme.h" + + #if BUILDFLAG(ENABLE_EXTENSIONS) + #include "base/scoped_observer.h" +diff --git a/chrome/browser/themes/theme_service.h b/chrome/browser/themes/theme_service.h +index 6c79c72..f93dc0d 100644 +--- a/chrome/browser/themes/theme_service.h ++++ b/chrome/browser/themes/theme_service.h +@@ -25,6 +25,7 @@ + #include "extensions/buildflags/buildflags.h" + #include "extensions/common/extension_id.h" + #include "ui/base/theme_provider.h" ++#include "ui/native_theme/native_theme.h" + #include "ui/native_theme/native_theme_observer.h" + + class BrowserThemePack; diff --git a/chromium.spec b/chromium.spec index 64e3243..de9e05b 100644 --- a/chromium.spec +++ b/chromium.spec @@ -291,6 +291,16 @@ Patch55: chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch Patch56: chromium-76.0.3809.100-gcc-move-explicit-initialization.patch # https://chromium.googlesource.com/chromium/src.git/+/7dc76c8d9f4cfbce7cf11424120aa6f6094916dc Patch57: chromium-76.0.3809.100-gcc-initialization-order.patch +# https://chromium.googlesource.com/chromium/src.git/+/138904af5d6a4158ef4247fda816a8035e621e59 +Patch58: chromium-76.0.3809.100-gcc-history-move-noexcept.patch +# https://chromium.googlesource.com/chromium/src.git/+/bdc24128b75008743d819e298557a53205706e7c +Patch59: chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch +# https://chromium.googlesource.com/chromium/src.git/+/5d7f227fa844e79568df64e495e7ef958c12d7b2 +Patch60: chromium-76.0.3809.100-gcc-themeservice-includes.patch +# TBD - need to submit it +# In GCC one can't use alignas() for exported classes (as described in +# https://cs.chromium.org/chromium/src/base/compiler_specific.h?rcl=a5bcc05a48f6cc6299edfaf0179278aa03653ee4&l=103) +Patch61: chromium-76.0.3809.100-gcc-no-alignas-and-export.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -860,6 +870,10 @@ udev. %patch55 -p1 -b .gcc-hasfraction-constexpr %patch56 -p1 -b .gcc-move-explicit-initialization %patch57 -p1 -b .gcc-initialization-order +%patch58 -p1 -b .gcc-history-move-noexcept +%patch59 -p1 -b .gcc-accountinfo-move-noexcept +%patch60 -p1 -b .gcc-themeservice-includes +%patch61 -p1 -b .gcc-no-alignas-and-export # EPEL specific patches %if 0%{?rhel} == 7 From f32de4175a201b0ba68395cf00dec837e06d6079 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 16 Aug 2019 13:58:53 +0200 Subject: [PATCH 0315/1449] //third_party dependency missing for remoting --- chromium.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/chromium.spec b/chromium.spec index de9e05b..f003849 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1207,6 +1207,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/google_input_tools' \ 'third_party/google_input_tools/third_party/closure_library' \ 'third_party/google_input_tools/third_party/closure_library/third_party/closure' \ + 'third_party/google_trust_services' \ 'third_party/googletest' \ 'third_party/glslang' \ 'third_party/grpc' \ From 05ed80ce7ee4f1c18ac322cf720e62d21ec15bbc Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 20 Aug 2019 21:36:06 +0200 Subject: [PATCH 0316/1449] Fix the build of remoting_all target --- ...76.0.3809.100-gcc-remoting-constexpr.patch | 27 +++++++++++++++++++ ...6.0.3809.100-vtable-symbol-undefined.patch | 11 ++++++++ chromium.spec | 11 +++++--- 3 files changed, 46 insertions(+), 3 deletions(-) create mode 100644 chromium-76.0.3809.100-gcc-remoting-constexpr.patch create mode 100644 chromium-76.0.3809.100-vtable-symbol-undefined.patch diff --git a/chromium-76.0.3809.100-gcc-remoting-constexpr.patch b/chromium-76.0.3809.100-gcc-remoting-constexpr.patch new file mode 100644 index 0000000..c59702f --- /dev/null +++ b/chromium-76.0.3809.100-gcc-remoting-constexpr.patch @@ -0,0 +1,27 @@ +diff -up chromium-76.0.3809.100/remoting/signaling/message_tracker.cc.gcc-constexpr chromium-76.0.3809.100/remoting/signaling/message_tracker.cc +--- chromium-76.0.3809.100/remoting/signaling/message_tracker.cc.gcc-constexpr 2019-08-09 16:48:08.000000000 +0200 ++++ chromium-76.0.3809.100/remoting/signaling/message_tracker.cc 2019-08-20 21:29:14.545465656 +0200 +@@ -9,8 +9,7 @@ + namespace remoting { + + // static +-const base::TimeDelta MessageTracker::kCleanupInterval = +- base::TimeDelta::FromMinutes(2); ++constexpr base::TimeDelta MessageTracker::kCleanupInterval; + + MessageTracker::MessageTracker() = default; + +diff -up chromium-76.0.3809.100/remoting/signaling/message_tracker.h.gcc-constexpr chromium-76.0.3809.100/remoting/signaling/message_tracker.h +--- chromium-76.0.3809.100/remoting/signaling/message_tracker.h.gcc-constexpr 2019-08-20 21:27:53.539653248 +0200 ++++ chromium-76.0.3809.100/remoting/signaling/message_tracker.h 2019-08-20 21:28:23.371952434 +0200 +@@ -36,7 +36,8 @@ class MessageTracker final { + + // All IDs older than now - kCleanupInterval will be eventually removed, but + // they are not guaranteed to be immediately removed after the interval. +- static constexpr base::TimeDelta kCleanupInterval; ++ static constexpr base::TimeDelta kCleanupInterval = ++ base::TimeDelta::FromMinutes(2); + + void RemoveExpiredIds(); + +diff -up chromium-76.0.3809.100/remoting/signaling/message_tracker_unittest.cc.gcc-constexpr chromium-76.0.3809.100/remoting/signaling/message_tracker_unittest.cc diff --git a/chromium-76.0.3809.100-vtable-symbol-undefined.patch b/chromium-76.0.3809.100-vtable-symbol-undefined.patch new file mode 100644 index 0000000..64532df --- /dev/null +++ b/chromium-76.0.3809.100-vtable-symbol-undefined.patch @@ -0,0 +1,11 @@ +diff -up chromium-76.0.3809.100/net/quic/platform/impl/quic_default_proof_providers_impl.cc.vtable-symbol-undefined chromium-76.0.3809.100/net/quic/platform/impl/quic_default_proof_providers_impl.cc +--- chromium-76.0.3809.100/net/quic/platform/impl/quic_default_proof_providers_impl.cc.vtable-symbol-undefined 2019-08-20 21:21:24.901899270 +0200 ++++ chromium-76.0.3809.100/net/quic/platform/impl/quic_default_proof_providers_impl.cc 2019-08-20 21:19:30.361746211 +0200 +@@ -18,6 +18,7 @@ + #include "net/quic/crypto/proof_verifier_chromium.h" + #include "net/third_party/quiche/src/quic/platform/api/quic_flags.h" + #include "net/third_party/quiche/src/quic/platform/api/quic_ptr_util.h" ++#include "net/quic/platform/impl/quic_flags_impl.cc" + + DEFINE_QUIC_COMMAND_LINE_FLAG(std::string, + certificate_file, diff --git a/chromium.spec b/chromium.spec index f003849..e06bcdd 100644 --- a/chromium.spec +++ b/chromium.spec @@ -297,10 +297,13 @@ Patch58: chromium-76.0.3809.100-gcc-history-move-noexcept.patch Patch59: chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch # https://chromium.googlesource.com/chromium/src.git/+/5d7f227fa844e79568df64e495e7ef958c12d7b2 Patch60: chromium-76.0.3809.100-gcc-themeservice-includes.patch -# TBD - need to submit it -# In GCC one can't use alignas() for exported classes (as described in -# https://cs.chromium.org/chromium/src/base/compiler_specific.h?rcl=a5bcc05a48f6cc6299edfaf0179278aa03653ee4&l=103) +# In GCC one can't use alignas() for exported classes +# https://chromium.googlesource.com/chromium/src.git/+/8148fd96ae04a1150a9c6012634dcd2a7335f87a Patch61: chromium-76.0.3809.100-gcc-no-alignas-and-export.patch +# Needs to be submitted.. +Patch62: chromium-76.0.3809.100-gcc-remoting-constexpr.patch +# Needs to be submitted.. (ugly hack, needs to be added properly to GN files) +Patch63: chromium-76.0.3809.100-vtable-symbol-undefined.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -874,6 +877,8 @@ udev. %patch59 -p1 -b .gcc-accountinfo-move-noexcept %patch60 -p1 -b .gcc-themeservice-includes %patch61 -p1 -b .gcc-no-alignas-and-export +%patch62 -p1 -b .gcc-remoting-constexpr +%patch63 -p1 -b .vtable-symbol-undefined # EPEL specific patches %if 0%{?rhel} == 7 From 234bd983cba301fe205f7b9c924fd5acbbf415c4 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 20 Aug 2019 22:07:44 +0200 Subject: [PATCH 0317/1449] Fix the previously uploaded patch --- chromium-76.0.3809.100-gcc-remoting-constexpr.patch | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/chromium-76.0.3809.100-gcc-remoting-constexpr.patch b/chromium-76.0.3809.100-gcc-remoting-constexpr.patch index c59702f..aec3107 100644 --- a/chromium-76.0.3809.100-gcc-remoting-constexpr.patch +++ b/chromium-76.0.3809.100-gcc-remoting-constexpr.patch @@ -12,13 +12,13 @@ diff -up chromium-76.0.3809.100/remoting/signaling/message_tracker.cc.gcc-conste MessageTracker::MessageTracker() = default; diff -up chromium-76.0.3809.100/remoting/signaling/message_tracker.h.gcc-constexpr chromium-76.0.3809.100/remoting/signaling/message_tracker.h ---- chromium-76.0.3809.100/remoting/signaling/message_tracker.h.gcc-constexpr 2019-08-20 21:27:53.539653248 +0200 +--- chromium-76.0.3809.100/remoting/signaling/message_tracker.h.gcc-constexpr 2019-08-20 22:02:25.625970954 +0200 +++ chromium-76.0.3809.100/remoting/signaling/message_tracker.h 2019-08-20 21:28:23.371952434 +0200 @@ -36,7 +36,8 @@ class MessageTracker final { // All IDs older than now - kCleanupInterval will be eventually removed, but // they are not guaranteed to be immediately removed after the interval. -- static constexpr base::TimeDelta kCleanupInterval; +- static const base::TimeDelta kCleanupInterval; + static constexpr base::TimeDelta kCleanupInterval = + base::TimeDelta::FromMinutes(2); From 02877cca954a9e0168139293baedef66fd483257 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 21 Aug 2019 13:51:11 +0200 Subject: [PATCH 0318/1449] Update the list of private libraries and remove a pak file that was removed --- chromium.spec | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/chromium.spec b/chromium.spec index e06bcdd..8a246b7 100644 --- a/chromium.spec +++ b/chromium.spec @@ -54,9 +54,9 @@ %global __provides_exclude_from %{chromium_path}/.*\\.so|%{chromium_path}/lib/.*\\.so|%{chromium_path}/lib/.*\\.so.* %if 0%{?rhel} == 7 -%global privlibs libEGL|libGLESv2|libVkICD_mock_icd|libVkLayer_core_validation|libVkLayer_object_lifetimes|libVkLayer_stateless_validation|libVkLayer_thread_safety|libVkLayer_unique_objects|libaccessibility|libandroid_mojo_bindings_shared|libanimation|libapdu|libaura|libaura_extra|libauthenticator_test_mojo_bindings_shared|libbase|libbase_i18n|libbindings|libbindings_base|libblink_common|libblink_controller|libblink_core|libblink_embedded_frame_sink_mojo_bindings_shared|libblink_features|libblink_modules|libblink_mojo_bindings_shared|libblink_mojom_broadcastchannel_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcbor|libcc|libcc_animation|libcc_base|libcc_debug|libcc_mojo_embedder|libcc_paint|libcdm_manager|libcertificate_matching|libchrome_features|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom|libcontent_service_mojom_shared|libcrash_key|libcrcrypto|libdbus|libdbus_thread_linux|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevice_vr|libdevice_vr_mojo_bindings|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevices|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libembedder|libembedder_switches|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libextras|libfido|libfingerprint|libfreetype_harfbuzz|libgamepad_mojom|libgamepad_mojom_blink|libgamepad_mojom_shared|libgamepad_shared_typemap_traits|libgcm|libgeometry|libgeometry_skia|libgesture_detection|libgfx|libgfx_ipc|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_switches|libgfx_x11|libgin|libgl_in_process_context|libgl_init|libgl_wrapper|libgles2|libgles2_implementation|libgles2_utils|libgpu|libgpu_ipc_service|libgtkui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc|libipc_mojom|libipc_mojom_shared|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|liblearning_common|liblearning_impl|libleveldatabase|liblive_tab_count_metrics|libmanager|libmedia_blink|libmedia_filters_jpeg_parser|libmedia_gpu|libmedia_mojo_services|libmedia_session_cpp|libmedia_webrtc|libmemory_instrumentation|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirclient.so.9|libmirroring_service|libmojo_base_lib|libmojo_base_mojom|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_shared_typemap_traits|libmojo_core_embedder|libmojo_core_embedder_internal|libmojo_core_ports|libmojo_cpp_platform|libmojo_ime_lib|libmojo_mojom_bindings|libmojo_mojom_bindings_shared|libmojo_public_system|libmojo_public_system_cpp|libmojom_core_shared|libmojom_mhtml_load_result_shared|libmojom_modules_shared|libmojom_platform_shared|libmpris|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp|libnetwork_cpp_base|libnetwork_service|libnetwork_session_configurator|libonc|libos_crypt|libperfetto|libplatform|libplatform_window_handler_libs|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp_base|libresource_coordinator_cpp_features|libresource_coordinator_public_mojom|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libsandbox|libsandbox_services|libscheduling_metrics|libseccomp_bpf|libservice|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom|libservice_manager_mojom_blink|libservice_manager_mojom_constants|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_shared|libservice_manager_mojom_traits|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libtracing_cpp|libtracing_mojom|libtracing_mojom_shared|libui_accessibility_ax_mojom|libui_accessibility_ax_mojom_blink|libui_accessibility_ax_mojom_shared|libui_base|libui_base_clipboard|libui_base_clipboard_types|libui_base_features|libui_base_idle|libui_base_ime|libui_base_ime_init|libui_base_ime_linux|libui_base_ime_types|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl|liburl_ipc|liburl_matcher|libusb_shared|libuser_manager|libuser_prefs|libv8|libv8_libbase|libv8_libplatform|libviews|libviz_common|libviz_resource_format_utils|libviz_vulkan_context_provider|libvr_base|libvr_common|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libweb_dialogs|libweb_feature_mojo_bindings_mojom|libweb_feature_mojo_bindings_mojom_blink|libweb_feature_mojo_bindings_mojom_shared|libwebdata_common|libwebgpu|libwebview|libwm|libwm_public|libwtf|libx11_events_platform|libx11_window|libzygote|libmedia|libffmpeg|libfontconfig +%global privlibs libevents_devices_x11|libgfx_x11|libevents_x|libgl_wrapper|libmemory_instrumentation|libdevice_vr_mojo_bindings|libdiscardable_memory_common|libui_base_ime_init|libnetwork_cpp_base|libos_crypt|libmessage_center|libmanager|libdevice_gamepad|libembedder|libGLESv2|libtracing|libskia|libgl_in_process_context|libapdu|libbluetooth|libviz_resource_format_utils|libmojo_mojom_bindings|libblink_platform|libmojom_modules_shared|libwebdata_common|libshell_dialogs|libresource_coordinator_public_mojom_blink|libgles2_utils|libgpu_ipc_service|libcaptive_portal|libvr_common|libgles2|libdisplay|libgfx_ipc_geometry|libcc_paint|libandroid_mojo_bindings_shared|libipc_mojom_shared|libffmpeg|liburl_matcher|libbindings|libservice|libwtf|libcommon|libleveldatabase|libnetwork_session_configurator|libaura|libcloud_policy_proto_generated_compile|libservice_manager_mojom_constants|libui_touch_selection|libmojo_base_lib|libservice_manager_cpp_types|libservice_manager_mojom_blink|libmojo_core_embedder|libblink_embedded_frame_sink_mojo_bindings_shared|libgesture_detection|liburl_ipc|libweb_feature_mojo_bindings_mojom|libscheduling_metrics|libresource_coordinator_cpp_features|libcc|libdiscardable_memory_client|libsessions|libblink_common|libipc|libvulkan_init|libblink_mojom_broadcastchannel_bindings_shared|libheadless_non_renderer|libcbor|libmojo_core_embedder_internal|libmojo_public_system_cpp|libmojom_core_shared|libgfx|libusb_shared|libtracing_mojom|libuser_manager|libnet|libwebgpu|libplatform_window_handler_libs|libmojo_base_mojom_shared|libui_base|libprinting|libcontent_service_mojom_shared|libstartup_tracing|libdevice_vr_mojo_bindings_blink|libraster|libsandbox|libv8_libbase|libevents|libui_base_idle|libgles2_implementation|libkeyed_service_content|libprefs|libVkLayer_core_validation|libchrome_features|libdiscardable_memory_service|libcapture_lib|libperfetto|libicui18n|libdomain_reliability|libweb_dialogs|libcc_animation|libbase|libtracing_cpp|libGLESv2|libEGL|libVkLayer_thread_safety|libmedia_gpu|libparsers|libservice_manager_cpp|liblearning_common|libdevices|libvulkan_wrapper|libservice_manager_mojom_shared|libgfx_switches|libkeycodes_x11|libweb_feature_mojo_bindings_mojom_shared|liburl|libmpris|libppapi_proxy|libmojo_base_mojom|libprotobuf_lite|libui_base_features|libdevice_vr|libwm_public|libcolor_space|libseccomp_bpf|libinterfaces_shared|libui_base_x|libicuuc|libwebview|libdevice_event_log|libVkLayer_object_lifetimes|libvulkan_x11|libproxy_config|libnetwork_cpp|libextras|libVkICD_mock_icd|libv8_libplatform|libresource_coordinator_public_mojom|libwm|libviews|libsuid_sandbox_client|libEGL|libcapture_base|libnative_theme|libcrcrypto|libmojo_public_system|libservice_manager_mojom_constants_shared|libui_accessibility_ax_mojom_blink|libplatform|libui_data_pack|libgfx_ipc_buffer_types|libclearkeycdm|libmetrics_cpp|libmojo_base_shared_typemap_traits|libx11_events_platform|libcrash_key|libclient|libblink_controller|libfido|libfreetype_harfbuzz|libmojo_mojom_bindings_shared|libaccessibility|libstub_window|libui_base_ime|libpolicy_component|libweb_bluetooth_mojo_bindings_shared|libmojo_core_ports|libsandbox_services|libstorage_common|libviz_vulkan_context_provider|libcontent_common_mojo_bindings_shared|libgamepad_mojom_blink|libkeyed_service_core|libmedia_mojo_services|libmojo_ime_lib|libblink_modules|libgcm|libsql|libgeometry_skia|libVkLayer_unique_objects|libweb_feature_mojo_bindings_mojom_blink|libui_base_ime_linux|libdisplay_types|libdevice_vr_mojo_bindings_shared|libcc_base|libtracing_mojom_shared|libmedia_blink|libcc_mojo_embedder|libpdfium|libevents_ozone_layout|libgfx_ipc_color|libgtkui|libpolicy_proto|libcodec|libgpu|libcontent_service_cpp|libmojom_mhtml_load_result_shared|libdisplay_util|libcontent_service_mojom|libbase_i18n|libservice_manager_mojom_constants_blink|libcompositor|libmojo_base_mojom_blink|libui_message_center_cpp|libsnapshot|libdbus_thread_linux|libtab_count_metrics|libpublic|libui_accessibility_ax_mojom|liblearning_impl|librange|libbrowser_ui_views|libcontent|libvr_base|libppapi_host|libservice_manager_mojom_traits|libgamepad_mojom|libcertificate_matching|libgfx_ipc|libgl_init|libVkLayer_stateless_validation|libshared_with_blink|libshared_memory_support|libevents_base|libnet_with_v8|libmedia_webrtc|libsurface|libcontent_public_common_mojo_bindings_shared|libaura_extra|libdevice_base|libonc|libcdm_manager|libmojom_platform_shared|libui_accessibility_ax_mojom_shared|libhost|libblink_features|libdevice_features|libmirroring_service|libdbus|libgeometry|libchromium_sqlite3|libgamepad_mojom_shared|libauthenticator_test_mojo_bindings_shared|libboringssl|libembedder_switches|libgfx_ipc_skia|libzygote|libmedia_session_cpp|libv8|libnetwork_service|libx11_window|libui_base_clipboard|libanimation|libmessage_support|libui_devtools|libgamepad_shared_typemap_traits|libfingerprint|libviz_common|libppapi_shared|libstorage_browser|libbindings_base|libservice_manager_mojom|libblink_core|libgin|libresource_coordinator_public_mojom_shared|libuser_prefs|libui_base_ime_types|libipc_mojom|libmidi|libmojo_cpp_platform|libcc_debug|libui_base_clipboard_types|libmedia|libfontconfig %else -%global privlibs libEGL|libGLESv2|libVkICD_mock_icd|libVkLayer_core_validation|libVkLayer_object_lifetimes|libVkLayer_stateless_validation|libVkLayer_thread_safety|libVkLayer_unique_objects|libaccessibility|libandroid_mojo_bindings_shared|libanimation|libapdu|libaura|libaura_extra|libauthenticator_test_mojo_bindings_shared|libbase|libbase_i18n|libbindings|libbindings_base|libblink_common|libblink_controller|libblink_core|libblink_embedded_frame_sink_mojo_bindings_shared|libblink_features|libblink_modules|libblink_mojo_bindings_shared|libblink_mojom_broadcastchannel_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcbor|libcc|libcc_animation|libcc_base|libcc_debug|libcc_mojo_embedder|libcc_paint|libcdm_manager|libcertificate_matching|libchrome_features|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom|libcontent_service_mojom_shared|libcrash_key|libcrcrypto|libdbus|libdbus_thread_linux|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevice_vr|libdevice_vr_mojo_bindings|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevices|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libembedder|libembedder_switches|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libextras|libfido|libfingerprint|libfreetype_harfbuzz|libgamepad_mojom|libgamepad_mojom_blink|libgamepad_mojom_shared|libgamepad_shared_typemap_traits|libgcm|libgeometry|libgeometry_skia|libgesture_detection|libgfx|libgfx_ipc|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_switches|libgfx_x11|libgin|libgl_in_process_context|libgl_init|libgl_wrapper|libgles2|libgles2_implementation|libgles2_utils|libgpu|libgpu_ipc_service|libgtkui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc|libipc_mojom|libipc_mojom_shared|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|liblearning_common|liblearning_impl|libleveldatabase|liblive_tab_count_metrics|libmanager|libmedia_blink|libmedia_filters_jpeg_parser|libmedia_gpu|libmedia_mojo_services|libmedia_session_cpp|libmedia_webrtc|libmemory_instrumentation|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirclient.so.9|libmirroring_service|libmojo_base_lib|libmojo_base_mojom|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_shared_typemap_traits|libmojo_core_embedder|libmojo_core_embedder_internal|libmojo_core_ports|libmojo_cpp_platform|libmojo_ime_lib|libmojo_mojom_bindings|libmojo_mojom_bindings_shared|libmojo_public_system|libmojo_public_system_cpp|libmojom_core_shared|libmojom_mhtml_load_result_shared|libmojom_modules_shared|libmojom_platform_shared|libmpris|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp|libnetwork_cpp_base|libnetwork_service|libnetwork_session_configurator|libonc|libos_crypt|libperfetto|libplatform|libplatform_window_handler_libs|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp_base|libresource_coordinator_cpp_features|libresource_coordinator_public_mojom|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libsandbox|libsandbox_services|libscheduling_metrics|libseccomp_bpf|libservice|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom|libservice_manager_mojom_blink|libservice_manager_mojom_constants|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_shared|libservice_manager_mojom_traits|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libtracing_cpp|libtracing_mojom|libtracing_mojom_shared|libui_accessibility_ax_mojom|libui_accessibility_ax_mojom_blink|libui_accessibility_ax_mojom_shared|libui_base|libui_base_clipboard|libui_base_clipboard_types|libui_base_features|libui_base_idle|libui_base_ime|libui_base_ime_init|libui_base_ime_linux|libui_base_ime_types|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl|liburl_ipc|liburl_matcher|libusb_shared|libuser_manager|libuser_prefs|libv8|libv8_libbase|libv8_libplatform|libviews|libviz_common|libviz_resource_format_utils|libviz_vulkan_context_provider|libvr_base|libvr_common|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libweb_dialogs|libweb_feature_mojo_bindings_mojom|libweb_feature_mojo_bindings_mojom_blink|libweb_feature_mojo_bindings_mojom_shared|libwebdata_common|libwebgpu|libwebview|libwm|libwm_public|libwtf|libx11_events_platform|libx11_window|libzygote|libmedia|libffmpeg +%global privlibs libevents_devices_x11|libgfx_x11|libevents_x|libgl_wrapper|libmemory_instrumentation|libdevice_vr_mojo_bindings|libdiscardable_memory_common|libui_base_ime_init|libnetwork_cpp_base|libos_crypt|libmessage_center|libmanager|libdevice_gamepad|libembedder|libGLESv2|libtracing|libskia|libgl_in_process_context|libapdu|libbluetooth|libviz_resource_format_utils|libmojo_mojom_bindings|libblink_platform|libmojom_modules_shared|libwebdata_common|libshell_dialogs|libresource_coordinator_public_mojom_blink|libgles2_utils|libgpu_ipc_service|libcaptive_portal|libvr_common|libgles2|libdisplay|libgfx_ipc_geometry|libcc_paint|libandroid_mojo_bindings_shared|libipc_mojom_shared|libffmpeg|liburl_matcher|libbindings|libservice|libwtf|libcommon|libleveldatabase|libnetwork_session_configurator|libaura|libcloud_policy_proto_generated_compile|libservice_manager_mojom_constants|libui_touch_selection|libmojo_base_lib|libservice_manager_cpp_types|libservice_manager_mojom_blink|libmojo_core_embedder|libblink_embedded_frame_sink_mojo_bindings_shared|libgesture_detection|liburl_ipc|libweb_feature_mojo_bindings_mojom|libscheduling_metrics|libresource_coordinator_cpp_features|libcc|libdiscardable_memory_client|libsessions|libblink_common|libipc|libvulkan_init|libblink_mojom_broadcastchannel_bindings_shared|libheadless_non_renderer|libcbor|libmojo_core_embedder_internal|libmojo_public_system_cpp|libmojom_core_shared|libgfx|libusb_shared|libtracing_mojom|libuser_manager|libnet|libwebgpu|libplatform_window_handler_libs|libmojo_base_mojom_shared|libui_base|libprinting|libcontent_service_mojom_shared|libstartup_tracing|libdevice_vr_mojo_bindings_blink|libraster|libsandbox|libv8_libbase|libevents|libui_base_idle|libgles2_implementation|libkeyed_service_content|libprefs|libVkLayer_core_validation|libchrome_features|libdiscardable_memory_service|libcapture_lib|libperfetto|libicui18n|libdomain_reliability|libweb_dialogs|libcc_animation|libbase|libtracing_cpp|libGLESv2|libEGL|libVkLayer_thread_safety|libmedia_gpu|libparsers|libservice_manager_cpp|liblearning_common|libdevices|libvulkan_wrapper|libservice_manager_mojom_shared|libgfx_switches|libkeycodes_x11|libweb_feature_mojo_bindings_mojom_shared|liburl|libmpris|libppapi_proxy|libmojo_base_mojom|libprotobuf_lite|libui_base_features|libdevice_vr|libwm_public|libcolor_space|libseccomp_bpf|libinterfaces_shared|libui_base_x|libicuuc|libwebview|libdevice_event_log|libVkLayer_object_lifetimes|libvulkan_x11|libproxy_config|libnetwork_cpp|libextras|libVkICD_mock_icd|libv8_libplatform|libresource_coordinator_public_mojom|libwm|libviews|libsuid_sandbox_client|libEGL|libcapture_base|libnative_theme|libcrcrypto|libmojo_public_system|libservice_manager_mojom_constants_shared|libui_accessibility_ax_mojom_blink|libplatform|libui_data_pack|libgfx_ipc_buffer_types|libclearkeycdm|libmetrics_cpp|libmojo_base_shared_typemap_traits|libx11_events_platform|libcrash_key|libclient|libblink_controller|libfido|libfreetype_harfbuzz|libmojo_mojom_bindings_shared|libaccessibility|libstub_window|libui_base_ime|libpolicy_component|libweb_bluetooth_mojo_bindings_shared|libmojo_core_ports|libsandbox_services|libstorage_common|libviz_vulkan_context_provider|libcontent_common_mojo_bindings_shared|libgamepad_mojom_blink|libkeyed_service_core|libmedia_mojo_services|libmojo_ime_lib|libblink_modules|libgcm|libsql|libgeometry_skia|libVkLayer_unique_objects|libweb_feature_mojo_bindings_mojom_blink|libui_base_ime_linux|libdisplay_types|libdevice_vr_mojo_bindings_shared|libcc_base|libtracing_mojom_shared|libmedia_blink|libcc_mojo_embedder|libpdfium|libevents_ozone_layout|libgfx_ipc_color|libgtkui|libpolicy_proto|libcodec|libgpu|libcontent_service_cpp|libmojom_mhtml_load_result_shared|libdisplay_util|libcontent_service_mojom|libbase_i18n|libservice_manager_mojom_constants_blink|libcompositor|libmojo_base_mojom_blink|libui_message_center_cpp|libsnapshot|libdbus_thread_linux|libtab_count_metrics|libpublic|libui_accessibility_ax_mojom|liblearning_impl|librange|libbrowser_ui_views|libcontent|libvr_base|libppapi_host|libservice_manager_mojom_traits|libgamepad_mojom|libcertificate_matching|libgfx_ipc|libgl_init|libVkLayer_stateless_validation|libshared_with_blink|libshared_memory_support|libevents_base|libnet_with_v8|libmedia_webrtc|libsurface|libcontent_public_common_mojo_bindings_shared|libaura_extra|libdevice_base|libonc|libcdm_manager|libmojom_platform_shared|libui_accessibility_ax_mojom_shared|libhost|libblink_features|libdevice_features|libmirroring_service|libdbus|libgeometry|libchromium_sqlite3|libgamepad_mojom_shared|libauthenticator_test_mojo_bindings_shared|libboringssl|libembedder_switches|libgfx_ipc_skia|libzygote|libmedia_session_cpp|libv8|libnetwork_service|libx11_window|libui_base_clipboard|libanimation|libmessage_support|libui_devtools|libgamepad_shared_typemap_traits|libfingerprint|libviz_common|libppapi_shared|libstorage_browser|libbindings_base|libservice_manager_mojom|libblink_core|libgin|libresource_coordinator_public_mojom_shared|libuser_prefs|libui_base_ime_types|libipc_mojom|libmidi|libmojo_cpp_platform|libcc_debug|libui_base_clipboard_types|libmedia %endif %global __requires_exclude ^(%{privlibs})\\.so* @@ -1753,7 +1753,6 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chrome_*.pak %{chromium_path}/resources.pak %{chromium_path}/icudtl.dat -%{chromium_path}/views_mus_resources.pak %{chromium_path}/%{chromium_browser_channel} %{chromium_path}/%{chromium_browser_channel}.sh %{chromium_path}/MEIPreload/ From 333adfcd3829e396207f60316598909ba36b7f8e Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 14 Aug 2019 14:38:51 +0200 Subject: [PATCH 0319/1449] Backport more build fixes from upstream --- ....3809.100-gcc-ambigous-instantiation.patch | 39 +++ ...0.3809.100-gcc-feature-policy-parser.patch | 76 ++++++ ...0.3809.100-gcc-hasfraction-constexpr.patch | 32 +++ ...100-gcc-move-explicit-initialization.patch | 97 ++++++++ ...ium-76.0.3809.100-quiche-compile-fix.patch | 225 ++++++++++++++++++ ...m-76.0.3809.100-throttling-dead-beef.patch | 30 +++ ...ium-76.0.3809.100-weak-ptr-no-except.patch | 66 +++++ chromium.spec | 21 ++ 8 files changed, 586 insertions(+) create mode 100644 chromium-76.0.3809.100-gcc-ambigous-instantiation.patch create mode 100644 chromium-76.0.3809.100-gcc-feature-policy-parser.patch create mode 100644 chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch create mode 100644 chromium-76.0.3809.100-gcc-move-explicit-initialization.patch create mode 100644 chromium-76.0.3809.100-quiche-compile-fix.patch create mode 100644 chromium-76.0.3809.100-throttling-dead-beef.patch create mode 100644 chromium-76.0.3809.100-weak-ptr-no-except.patch diff --git a/chromium-76.0.3809.100-gcc-ambigous-instantiation.patch b/chromium-76.0.3809.100-gcc-ambigous-instantiation.patch new file mode 100644 index 0000000..587abf3 --- /dev/null +++ b/chromium-76.0.3809.100-gcc-ambigous-instantiation.patch @@ -0,0 +1,39 @@ +From 52b5ceac95b67491b1c71f0ef9a32b778bbbaa2e Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Wed, 05 Jun 2019 19:46:55 +0000 +Subject: [PATCH] GCC: avoid ambiguous NoDestructor creation in GetNeverSniffedMimeTypes. + +Use brace-list notation to wrap the already existing brace-list for +initializing the flat-set. This resolves an ambiguous instantiation +in GCC. + +Bug: 819294 +Change-Id: I89ddf12522d62a5140a8c2c41dc98e30ec7a0e78 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645774 +Reviewed-by: Matt Menke +Commit-Queue: José Dapena Paz +Cr-Commit-Position: refs/heads/master@{#666401} +--- + +diff --git a/services/network/cross_origin_read_blocking.cc b/services/network/cross_origin_read_blocking.cc +index 30999c0..60a03f6 100644 +--- a/services/network/cross_origin_read_blocking.cc ++++ b/services/network/cross_origin_read_blocking.cc +@@ -211,7 +211,7 @@ + // confirmation sniffing because images, scripts, etc. are frequently + // mislabelled by http servers as HTML/JSON/XML). + base::flat_set& GetNeverSniffedMimeTypes() { +- static base::NoDestructor> s_types({ ++ static base::NoDestructor> s_types{{ + // The list below has been populated based on most commonly used content + // types according to HTTP Archive - see: + // https://github.com/whatwg/fetch/issues/860#issuecomment-457330454 +@@ -224,7 +224,7 @@ + "application/x-www-form-urlencoded", + "application/zip", + "text/event-stream", +- }); ++ }}; + + // All items need to be lower-case, to support case-insensitive comparisons + // later. diff --git a/chromium-76.0.3809.100-gcc-feature-policy-parser.patch b/chromium-76.0.3809.100-gcc-feature-policy-parser.patch new file mode 100644 index 0000000..0dbffd5 --- /dev/null +++ b/chromium-76.0.3809.100-gcc-feature-policy-parser.patch @@ -0,0 +1,76 @@ +From 0aca7b8dea0f52ba7bd58dfce4ac236ee60670a8 Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Tue, 04 Jun 2019 19:44:58 +0200 +Subject: [PATCH] GCC: FeaturePolicyParser ParseValueForFuzzer is not in anonymous namespace + +Compilation fails because we are declaring ParseValueForFuzzer as friend method, +but we are declaring it is in anonymous namespace. Moving to global namespace +still fails (in this case in Clang). + +So final solution is making it a public static method of FeaturePolicyParser. + +Bug: 819294 +Change-Id: Iea307cb6faef675b748d6eb5da2175dcbb17fdc7 +--- + +diff --git a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc +index 3b7f4a9..eaee409 100644 +--- a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc ++++ b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc +@@ -317,6 +317,13 @@ + return value; + } + ++void FeaturePolicyParser::ParseValueForFuzzer( ++ blink::mojom::PolicyValueType feature_type, ++ const WTF::String& value_string) { ++ bool ok; ++ ParseValueForType(feature_type, value_string, &ok); ++} ++ + bool IsFeatureDeclared(mojom::FeaturePolicyFeature feature, + const ParsedFeaturePolicy& policy) { + return std::any_of(policy.begin(), policy.end(), +diff --git a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h +index fd25d90..36af405 100644 +--- a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h ++++ b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h +@@ -16,9 +16,6 @@ + #include "third_party/blink/renderer/platform/wtf/text/wtf_string.h" + #include "third_party/blink/renderer/platform/wtf/vector.h" + +-// Forward declare for friendship. +-void ParseValueForFuzzer(blink::mojom::PolicyValueType, const WTF::String&); +- + namespace blink { + + class Document; +@@ -79,8 +76,9 @@ + const FeatureNameMap& feature_names, + ExecutionContext* execution_context = nullptr); + ++ static void ParseValueForFuzzer(mojom::PolicyValueType, const String&); ++ + private: +- friend void ::ParseValueForFuzzer(mojom::PolicyValueType, const String&); + static PolicyValue GetFallbackValueForFeature( + mojom::FeaturePolicyFeature feature); + static PolicyValue ParseValueForType(mojom::PolicyValueType feature_type, +diff --git a/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc b/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc +index 7f8e6aa..53350e43 100644 +--- a/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc ++++ b/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc +@@ -23,9 +23,9 @@ + extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) { + static blink::BlinkFuzzerTestSupport test_support = + blink::BlinkFuzzerTestSupport(); +- ParseValueForFuzzer(blink::mojom::PolicyValueType::kBool, +- WTF::String(data, size)); +- ParseValueForFuzzer(blink::mojom::PolicyValueType::kDecDouble, +- WTF::String(data, size)); ++ blink::FeaturePolicyParser::ParseValueForFuzzer( ++ blink::mojom::PolicyValueType::kBool, WTF::String(data, size)); ++ blink::FeaturePolicyParser::ParseValueForFuzzer( ++ blink::mojom::PolicyValueType::kDecDouble, WTF::String(data, size)); + return 0; + } diff --git a/chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch b/chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch new file mode 100644 index 0000000..26bba05 --- /dev/null +++ b/chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch @@ -0,0 +1,32 @@ +From cf6d6b40d711fce93a24a2cf517fa3becdbae8bb Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Wed, 05 Jun 2019 17:18:40 +0000 +Subject: [PATCH] Make blink::LayoutUnit::HasFraction constexpr + +Other HasFraction methods as in PhysicalUnit are declared already +constexpr and using it. It breaks GCC build. + +Bug: 819294. +Change-Id: I0c4bd9bd206d45cf31f7fa815ce8533718a425cb +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645222 +Reviewed-by: vmpstr +Reviewed-by: Xianzhu Wang +Commit-Queue: José Dapena Paz +Cr-Commit-Position: refs/heads/master@{#666336} +--- + +diff --git a/third_party/blink/renderer/platform/geometry/layout_unit.h b/third_party/blink/renderer/platform/geometry/layout_unit.h +index f073986..b6dbc76 100644 +--- a/third_party/blink/renderer/platform/geometry/layout_unit.h ++++ b/third_party/blink/renderer/platform/geometry/layout_unit.h +@@ -202,7 +202,9 @@ + return value_ > 0 ? LayoutUnit() : *this; + } + +- bool HasFraction() const { return RawValue() % kFixedPointDenominator; } ++ constexpr bool HasFraction() const { ++ return RawValue() % kFixedPointDenominator; ++ } + + LayoutUnit Fraction() const { + // Compute fraction using the mod operator to preserve the sign of the value diff --git a/chromium-76.0.3809.100-gcc-move-explicit-initialization.patch b/chromium-76.0.3809.100-gcc-move-explicit-initialization.patch new file mode 100644 index 0000000..1d4b90f --- /dev/null +++ b/chromium-76.0.3809.100-gcc-move-explicit-initialization.patch @@ -0,0 +1,97 @@ +From dcb55fb8f18abe5f43d260aa67b14b2dc996f992 Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Tue, 11 Jun 2019 08:00:13 +0000 +Subject: [PATCH] GCC: move explicit specialization out of RunInfo + +Explicit specialization in non-namespace scope is not allowed in C++, and GCC breaks +build because of that. Move the template specializations out of RunInfo declaration +in shape_result_inline_headeres.h to fix the GCC build issue. + +Bug: 819294 +Change-Id: Id083852bcf8e9efbdc911fdad28fd8767d2905d0 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1651728 +Reviewed-by: Kinuko Yasuda +Commit-Queue: José Dapena Paz +Cr-Commit-Position: refs/heads/master@{#667901} +--- + +diff --git a/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h b/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h +index 76ee6091..c14d3a0 100644 +--- a/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h ++++ b/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h +@@ -251,37 +251,6 @@ + template + struct iterator final {}; + +- // For non-zero glyph offset array +- template <> +- struct iterator final { +- // The constructor for ShapeResult +- explicit iterator(const GlyphOffsetArray& array) +- : pointer(array.storage_.get()) { +- DCHECK(pointer); +- } +- +- // The constructor for ShapeResultView +- explicit iterator(const GlyphDataRange& range) : pointer(range.offsets) { +- DCHECK(pointer); +- } +- +- GlyphOffset operator*() const { return *pointer; } +- void operator++() { ++pointer; } +- +- const GlyphOffset* pointer; +- }; +- +- // For zero glyph offset array +- template <> +- struct iterator final { +- explicit iterator(const GlyphOffsetArray& array) { +- DCHECK(!array.HasStorage()); +- } +- explicit iterator(const GlyphDataRange& range) { DCHECK(!range.offsets); } +- GlyphOffset operator*() const { return GlyphOffset(); } +- void operator++() {} +- }; +- + template + iterator GetIterator() const { + return iterator(*this); +@@ -495,6 +464,37 @@ + float width_; + }; + ++// For non-zero glyph offset array ++template <> ++struct ShapeResult::RunInfo::GlyphOffsetArray::iterator final { ++ // The constructor for ShapeResult ++ explicit iterator(const GlyphOffsetArray& array) ++ : pointer(array.storage_.get()) { ++ DCHECK(pointer); ++ } ++ ++ // The constructor for ShapeResultView ++ explicit iterator(const GlyphDataRange& range) : pointer(range.offsets) { ++ DCHECK(pointer); ++ } ++ ++ GlyphOffset operator*() const { return *pointer; } ++ void operator++() { ++pointer; } ++ ++ const GlyphOffset* pointer; ++}; ++ ++// For zero glyph offset array ++template <> ++struct ShapeResult::RunInfo::GlyphOffsetArray::iterator final { ++ explicit iterator(const GlyphOffsetArray& array) { ++ DCHECK(!array.HasStorage()); ++ } ++ explicit iterator(const GlyphDataRange& range) { DCHECK(!range.offsets); } ++ GlyphOffset operator*() const { return GlyphOffset(); } ++ void operator++() {} ++}; ++ + // Find the range of HarfBuzzRunGlyphData for the specified character index + // range. This function uses binary search twice, hence O(2 log n). + inline ShapeResult::RunInfo::GlyphDataRange diff --git a/chromium-76.0.3809.100-quiche-compile-fix.patch b/chromium-76.0.3809.100-quiche-compile-fix.patch new file mode 100644 index 0000000..98789d9 --- /dev/null +++ b/chromium-76.0.3809.100-quiche-compile-fix.patch @@ -0,0 +1,225 @@ +diff -up chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc.quiche-compile-fix chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc +--- chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc.quiche-compile-fix 2019-08-14 09:58:07.721193200 +0200 ++++ chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc 2019-08-14 09:59:33.131041525 +0200 +@@ -62,37 +62,37 @@ const size_t kStatelessResetTokenLength + std::string TransportParameterIdToString( + TransportParameters::TransportParameterId param_id) { + switch (param_id) { +- case kOriginalConnectionId: ++ case TransportParameters::kOriginalConnectionId: + return "original_connection_id"; +- case kIdleTimeout: ++ case TransportParameters::kIdleTimeout: + return "idle_timeout"; +- case kStatelessResetToken: ++ case TransportParameters::kStatelessResetToken: + return "stateless_reset_token"; +- case kMaxPacketSize: ++ case TransportParameters::kMaxPacketSize: + return "max_packet_size"; +- case kInitialMaxData: ++ case TransportParameters::kInitialMaxData: + return "initial_max_data"; +- case kInitialMaxStreamDataBidiLocal: ++ case TransportParameters::kInitialMaxStreamDataBidiLocal: + return "initial_max_stream_data_bidi_local"; +- case kInitialMaxStreamDataBidiRemote: ++ case TransportParameters::kInitialMaxStreamDataBidiRemote: + return "initial_max_stream_data_bidi_remote"; +- case kInitialMaxStreamDataUni: ++ case TransportParameters::kInitialMaxStreamDataUni: + return "initial_max_stream_data_uni"; +- case kInitialMaxStreamsBidi: ++ case TransportParameters::kInitialMaxStreamsBidi: + return "initial_max_streams_bidi"; +- case kInitialMaxStreamsUni: ++ case TransportParameters::kInitialMaxStreamsUni: + return "initial_max_streams_uni"; +- case kAckDelayExponent: ++ case TransportParameters::kAckDelayExponent: + return "ack_delay_exponent"; +- case kMaxAckDelay: ++ case TransportParameters::kMaxAckDelay: + return "max_ack_delay"; +- case kDisableMigration: ++ case TransportParameters::kDisableMigration: + return "disable_migration"; +- case kPreferredAddress: ++ case TransportParameters::kPreferredAddress: + return "preferred_address"; +- case kGoogleQuicParam: ++ case TransportParameters::kGoogleQuicParam: + return "google"; +- case kGoogleQuicVersion: ++ case TransportParameters::kGoogleQuicVersion: + return "google-version"; + } + return "Unknown(" + QuicTextUtils::Uint64ToString(param_id) + ")"; +@@ -390,7 +390,7 @@ bool SerializeTransportParameters(const + CBB original_connection_id_param; + if (!in.original_connection_id.IsEmpty()) { + DCHECK_EQ(Perspective::IS_SERVER, in.perspective); +- if (!CBB_add_u16(¶ms, kOriginalConnectionId) || ++ if (!CBB_add_u16(¶ms, TransportParameters::kOriginalConnectionId) || + !CBB_add_u16_length_prefixed(¶ms, &original_connection_id_param) || + !CBB_add_bytes( + &original_connection_id_param, +@@ -412,7 +412,7 @@ bool SerializeTransportParameters(const + if (!in.stateless_reset_token.empty()) { + DCHECK_EQ(kStatelessResetTokenLength, in.stateless_reset_token.size()); + DCHECK_EQ(Perspective::IS_SERVER, in.perspective); +- if (!CBB_add_u16(¶ms, kStatelessResetToken) || ++ if (!CBB_add_u16(¶ms, TransportParameters::kStatelessResetToken) || + !CBB_add_u16_length_prefixed(¶ms, &stateless_reset_token_param) || + !CBB_add_bytes(&stateless_reset_token_param, + in.stateless_reset_token.data(), +@@ -438,7 +438,7 @@ bool SerializeTransportParameters(const + + // disable_migration + if (in.disable_migration) { +- if (!CBB_add_u16(¶ms, kDisableMigration) || ++ if (!CBB_add_u16(¶ms, TransportParameters::kDisableMigration) || + !CBB_add_u16(¶ms, 0u)) { // 0 is the length of this parameter. + QUIC_BUG << "Failed to write disable_migration for " << in; + return false; +@@ -458,7 +458,7 @@ bool SerializeTransportParameters(const + QUIC_BUG << "Bad lengths " << *in.preferred_address; + return false; + } +- if (!CBB_add_u16(¶ms, kPreferredAddress) || ++ if (!CBB_add_u16(¶ms, TransportParameters::kPreferredAddress) || + !CBB_add_u16_length_prefixed(¶ms, &preferred_address_params) || + !CBB_add_bytes( + &preferred_address_params, +@@ -491,7 +491,7 @@ bool SerializeTransportParameters(const + if (in.google_quic_params) { + const QuicData& serialized_google_quic_params = + in.google_quic_params->GetSerialized(); +- if (!CBB_add_u16(¶ms, kGoogleQuicParam) || ++ if (!CBB_add_u16(¶ms, TransportParameters::kGoogleQuicParam) || + !CBB_add_u16_length_prefixed(¶ms, &google_quic_params) || + !CBB_add_bytes(&google_quic_params, + reinterpret_cast( +@@ -505,7 +505,7 @@ bool SerializeTransportParameters(const + + // Google-specific version extension. + CBB google_version_params; +- if (!CBB_add_u16(¶ms, kGoogleQuicVersion) || ++ if (!CBB_add_u16(¶ms, TransportParameters::kGoogleQuicVersion) || + !CBB_add_u16_length_prefixed(¶ms, &google_version_params) || + !CBB_add_u32(&google_version_params, in.version)) { + QUIC_BUG << "Failed to write Google version extension for " << in; +@@ -565,7 +565,7 @@ bool ParseTransportParameters(const uint + } + bool parse_success = true; + switch (param_id) { +- case kOriginalConnectionId: ++ case TransportParameters::kOriginalConnectionId: + if (!out->original_connection_id.IsEmpty()) { + QUIC_DLOG(ERROR) << "Received a second original connection ID"; + return false; +@@ -581,10 +581,10 @@ bool ParseTransportParameters(const uint + CBS_len(&value)); + } + break; +- case kIdleTimeout: ++ case TransportParameters::kIdleTimeout: + parse_success = out->idle_timeout_milliseconds.ReadFromCbs(&value); + break; +- case kStatelessResetToken: ++ case TransportParameters::kStatelessResetToken: + if (!out->stateless_reset_token.empty()) { + QUIC_DLOG(ERROR) << "Received a second stateless reset token"; + return false; +@@ -597,36 +597,36 @@ bool ParseTransportParameters(const uint + out->stateless_reset_token.assign(CBS_data(&value), + CBS_data(&value) + CBS_len(&value)); + break; +- case kMaxPacketSize: ++ case TransportParameters::kMaxPacketSize: + parse_success = out->max_packet_size.ReadFromCbs(&value); + break; +- case kInitialMaxData: ++ case TransportParameters::kInitialMaxData: + parse_success = out->initial_max_data.ReadFromCbs(&value); + break; +- case kInitialMaxStreamDataBidiLocal: ++ case TransportParameters::kInitialMaxStreamDataBidiLocal: + parse_success = + out->initial_max_stream_data_bidi_local.ReadFromCbs(&value); + break; +- case kInitialMaxStreamDataBidiRemote: ++ case TransportParameters::kInitialMaxStreamDataBidiRemote: + parse_success = + out->initial_max_stream_data_bidi_remote.ReadFromCbs(&value); + break; +- case kInitialMaxStreamDataUni: ++ case TransportParameters::kInitialMaxStreamDataUni: + parse_success = out->initial_max_stream_data_uni.ReadFromCbs(&value); + break; +- case kInitialMaxStreamsBidi: ++ case TransportParameters::kInitialMaxStreamsBidi: + parse_success = out->initial_max_streams_bidi.ReadFromCbs(&value); + break; +- case kInitialMaxStreamsUni: ++ case TransportParameters::kInitialMaxStreamsUni: + parse_success = out->initial_max_streams_uni.ReadFromCbs(&value); + break; +- case kAckDelayExponent: ++ case TransportParameters::kAckDelayExponent: + parse_success = out->ack_delay_exponent.ReadFromCbs(&value); + break; +- case kMaxAckDelay: ++ case TransportParameters::kMaxAckDelay: + parse_success = out->max_ack_delay.ReadFromCbs(&value); + break; +- case kDisableMigration: ++ case TransportParameters::kDisableMigration: + if (out->disable_migration) { + QUIC_DLOG(ERROR) << "Received a second disable migration"; + return false; +@@ -638,7 +638,7 @@ bool ParseTransportParameters(const uint + } + out->disable_migration = true; + break; +- case kPreferredAddress: { ++ case TransportParameters::kPreferredAddress: { + uint16_t ipv4_port, ipv6_port; + in_addr ipv4_address; + in6_addr ipv6_address; +@@ -692,7 +692,7 @@ bool ParseTransportParameters(const uint + QuicMakeUnique( + preferred_address); + } break; +- case kGoogleQuicParam: { ++ case TransportParameters::kGoogleQuicParam: { + if (out->google_quic_params) { + QUIC_DLOG(ERROR) << "Received a second Google parameter"; + return false; +@@ -701,7 +701,7 @@ bool ParseTransportParameters(const uint + reinterpret_cast(CBS_data(&value)), CBS_len(&value)); + out->google_quic_params = CryptoFramer::ParseMessage(serialized_params); + } break; +- case kGoogleQuicVersion: { ++ case TransportParameters::kGoogleQuicVersion: { + if (!CBS_get_u32(&value, &out->version)) { + QUIC_DLOG(ERROR) << "Failed to parse Google version extension"; + return false; +diff -up chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc.quiche-compile-fix chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc +--- chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc.quiche-compile-fix 2019-08-14 09:59:19.139902052 +0200 ++++ chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc 2019-08-14 09:59:33.132041535 +0200 +@@ -2,10 +2,12 @@ + // Use of this source code is governed by a BSD-style license that can be + // found in the LICENSE file. + +-#include +- + #include "net/third_party/quiche/src/quic/core/quic_socket_address_coder.h" + ++#include ++#include ++#include ++ + namespace quic { + + namespace { diff --git a/chromium-76.0.3809.100-throttling-dead-beef.patch b/chromium-76.0.3809.100-throttling-dead-beef.patch new file mode 100644 index 0000000..5e392e6 --- /dev/null +++ b/chromium-76.0.3809.100-throttling-dead-beef.patch @@ -0,0 +1,30 @@ +From 53bb5a463ee956c70230eaa5450022185d0ddc3c Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Thu, 06 Jun 2019 07:54:05 +0000 +Subject: [PATCH] ThrottlingController::Liveness needs to be uint32_t + +We are setting kAlive and kDead values assigning values that +are bigger than the maximum signed int32. It is better to use +uint32_t in this case. + +Bug: 819294 +Change-Id: If72b48291a66a3a9db24b4c8e2d11d31936a66ee +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645772 +Reviewed-by: Kinuko Yasuda +Commit-Queue: José Dapena Paz +Cr-Commit-Position: refs/heads/master@{#666619} +--- + +diff --git a/services/network/throttling/throttling_controller.h b/services/network/throttling/throttling_controller.h +index 43751c4..3c6f87b 100644 +--- a/services/network/throttling/throttling_controller.h ++++ b/services/network/throttling/throttling_controller.h +@@ -38,7 +38,7 @@ + + // TODO(https://crbug.com/960874): Debugging code to try and shed some light + // on why the owned maps are invalid. +- enum class Liveness : int32_t { ++ enum class Liveness : uint32_t { + kAlive = 0xCA11AB13, + kDead = 0xDEADBEEF, + }; diff --git a/chromium-76.0.3809.100-weak-ptr-no-except.patch b/chromium-76.0.3809.100-weak-ptr-no-except.patch new file mode 100644 index 0000000..a392971 --- /dev/null +++ b/chromium-76.0.3809.100-weak-ptr-no-except.patch @@ -0,0 +1,66 @@ +From 0370838723e786b51e7ec8ab55014811ec3e3aa3 Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Thu, 18 Jul 2019 14:26:11 +0200 +Subject: [PATCH] Make base::WeakPtr move constructor/operator noexcept to fix GCC build regression + +A GCC build regression has happened on DisjointRangeLockManager, as its move +operator and constructor were declared noexcept. This was failing because the +default implementation depended on base::WeakPtr, that did not provide +noexcept declaration for them. + +So make base::WeakPtr noexcept. + +Bug: 819294 +Change-Id: I936784b881c7c1afea136ceedbe9341e76464f95 +--- + +diff --git a/base/memory/weak_ptr.cc b/base/memory/weak_ptr.cc +index 64fd499..0efcc44 100644 +--- a/base/memory/weak_ptr.cc ++++ b/base/memory/weak_ptr.cc +@@ -46,7 +46,7 @@ + + WeakReference::~WeakReference() = default; + +-WeakReference::WeakReference(WeakReference&& other) = default; ++WeakReference::WeakReference(WeakReference&& other) noexcept = default; + + WeakReference::WeakReference(const WeakReference& other) = default; + +diff --git a/base/memory/weak_ptr.h b/base/memory/weak_ptr.h +index 72b5f1f..ccd22fd13 100644 +--- a/base/memory/weak_ptr.h ++++ b/base/memory/weak_ptr.h +@@ -116,9 +116,9 @@ + explicit WeakReference(const scoped_refptr& flag); + ~WeakReference(); + +- WeakReference(WeakReference&& other); ++ WeakReference(WeakReference&& other) noexcept; + WeakReference(const WeakReference& other); +- WeakReference& operator=(WeakReference&& other) = default; ++ WeakReference& operator=(WeakReference&& other) noexcept = default; + WeakReference& operator=(const WeakReference& other) = default; + + bool IsValid() const; +@@ -153,9 +153,9 @@ + ~WeakPtrBase(); + + WeakPtrBase(const WeakPtrBase& other) = default; +- WeakPtrBase(WeakPtrBase&& other) = default; ++ WeakPtrBase(WeakPtrBase&& other) noexcept = default; + WeakPtrBase& operator=(const WeakPtrBase& other) = default; +- WeakPtrBase& operator=(WeakPtrBase&& other) = default; ++ WeakPtrBase& operator=(WeakPtrBase&& other) noexcept = default; + + void reset() { + ref_ = internal::WeakReference(); +@@ -236,7 +236,7 @@ + ptr_ = reinterpret_cast(t); + } + template +- WeakPtr(WeakPtr&& other) : WeakPtrBase(std::move(other)) { ++ WeakPtr(WeakPtr&& other) noexcept : WeakPtrBase(std::move(other)) { + // Need to cast from U* to T* to do pointer adjustment in case of multiple + // inheritance. This also enforces the "U is a T" rule. + T* t = reinterpret_cast(other.ptr_); diff --git a/chromium.spec b/chromium.spec index 602b236..383bfa9 100644 --- a/chromium.spec +++ b/chromium.spec @@ -268,6 +268,20 @@ Patch47: chromium-76.0.3809.100-gcc-vulkan.patch Patch48: chromium-76.0.3809.100-gcc-cc-no-except.patch # https://chromium.googlesource.com/chromium/src.git/+/502e6e42633d2571c8236c8649b031fe9915eb5b Patch49: chromium-76.0.3809.100-gcc-net-fetcher.patch +# https://quiche.googlesource.com/quiche.git/+/9424add9d73432a794b7944790253213cce6dcb8 +Patch50: chromium-76.0.3809.100-quiche-compile-fix.patch +# https://chromium.googlesource.com/chromium/src/+/53bb5a463ee956c70230eaa5450022185d0ddc3c +Patch51: chromium-76.0.3809.100-throttling-dead-beef.patch +# https://chromium.googlesource.com/chromium/src/+/52b5ceac95b67491b1c71f0ef9a32b778bbbaa2e +Patch52: chromium-76.0.3809.100-gcc-ambigous-instantiation.patch +# https://chromium.googlesource.com/chromium/src.git/+/715cb38eac889625de0c429d2672562188b4107e +Patch53: chromium-76.0.3809.100-weak-ptr-no-except.patch +# https://chromium.googlesource.com/chromium/src.git/+/c6afbd59c997c2b64f11abdd1eaef71ae8ea2ddc +Patch54: chromium-76.0.3809.100-gcc-feature-policy-parser.patch +# https://chromium.googlesource.com/chromium/src.git/+/cf6d6b40d711fce93a24a2cf517fa3becdbae8bb +Patch55: chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch +# https://chromium.googlesource.com/chromium/src.git/+/dcb55fb8f18abe5f43d260aa67b14b2dc996f992 +Patch56: chromium-76.0.3809.100-gcc-move-explicit-initialization.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -828,6 +842,13 @@ udev. %patch47 -p1 -b .gcc-vulkan %patch48 -p1 -b .gcc-cc-no-except %patch49 -p1 -b .gcc-net-fetcher +%patch50 -p1 -b .quiche-compile-fix +%patch51 -p1 -b .throttling-dead-beef +%patch52 -p1 -b .gcc-ambigous-instantiation +%patch53 -p1 -b .weak-ptr-no-except +%patch54 -p1 -b .gcc-feature-policy-parser +%patch55 -p1 -b .gcc-hasfraction-constexpr +%patch56 -p1 -b .gcc-move-explicit-initialization # EPEL specific patches %if 0%{?rhel} == 7 From 6338de1419172f50e62e210ac3c70d2490902c4a Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 14 Aug 2019 15:38:35 +0200 Subject: [PATCH 0320/1449] third_party/openscreen need to be preserved --- chromium.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/chromium.spec b/chromium.spec index 383bfa9..f23664a 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1232,6 +1232,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ %if %{freeworld} 'third_party/openh264' \ %endif + 'third_party/openscreen' \ 'third_party/opus' \ 'third_party/ots' \ 'third_party/pdfium' \ From 081e6e7deb9f6a686ff904567f5097b1a87d9b75 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 14 Aug 2019 15:41:23 +0200 Subject: [PATCH 0321/1449] third_party/boringssl/linux-x86_64/crypto/third_party/sike needs to be preserved --- chromium.spec | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index f23664a..0d575b1 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1137,7 +1137,8 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/boringssl' \ 'third_party/boringssl/src/third_party/fiat' \ 'third_party/boringssl/src/third_party/sike' \ - 'third_party/boringssl/linux-x86_64/crypto/third_party/sike/' \ + 'third_party/boringssl/linux-x86_64/crypto/third_party/sike' \ + 'third_party/boringssl/linux-aarch64/crypto/third_party/sike' \ 'third_party/breakpad' \ 'third_party/breakpad/breakpad/src/third_party/curl' \ 'third_party/brotli' \ From a848ba49241b8d9360d50f2be4660b070679bc4b Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 14 Aug 2019 09:52:16 -0400 Subject: [PATCH 0322/1449] loosen dependency on chromium-libs in freeworld build --- chromium.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 0d575b1..bf6bdcb 100644 --- a/chromium.spec +++ b/chromium.spec @@ -730,7 +730,7 @@ Shared libraries used by chromium (and chrome-remote-desktop). Summary: Chromium media libraries built with all possible codecs Provides: chromium-libs-media = %{version}-%{release} Provides: chromium-libs-media%{_isa} = %{version}-%{release} -Requires: chromium-libs%{_isa} = %{version}-%{release} +Requires: chromium-libs%{_isa} = %{version} Requires(post): %{_sbindir}/update-alternatives Requires(preun): %{_sbindir}/update-alternatives From b2aa2214697a15ff6df60d075910c42368111147 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 14 Aug 2019 16:52:41 +0200 Subject: [PATCH 0323/1449] Pulseaudio changed the API in 12.99 and we need to adapt the signatures --- chromium-76.0.3809.100-pulse-api-change.patch | 42 +++++++++++++++++++ chromium.spec | 13 +++++- 2 files changed, 54 insertions(+), 1 deletion(-) create mode 100644 chromium-76.0.3809.100-pulse-api-change.patch diff --git a/chromium-76.0.3809.100-pulse-api-change.patch b/chromium-76.0.3809.100-pulse-api-change.patch new file mode 100644 index 0000000..37d3dfa --- /dev/null +++ b/chromium-76.0.3809.100-pulse-api-change.patch @@ -0,0 +1,42 @@ +diff -up chromium-76.0.3809.100/media/audio/pulse/pulse.sigs.pulse_api_change chromium-76.0.3809.100/media/audio/pulse/pulse.sigs +--- chromium-76.0.3809.100/media/audio/pulse/pulse.sigs.pulse_api_change 2019-08-14 16:27:55.057702172 +0200 ++++ chromium-76.0.3809.100/media/audio/pulse/pulse.sigs 2019-08-14 16:37:21.603479886 +0200 +@@ -24,7 +24,7 @@ pa_operation* pa_context_get_source_info + pa_operation* pa_context_get_source_info_by_name(pa_context* c, const char* name, pa_source_info_cb_t cb, void *userdata); + pa_operation* pa_context_get_source_info_list(pa_context* c, pa_source_info_cb_t cb, void* userdata); + pa_operation* pa_context_get_sink_info_list(pa_context* c, pa_sink_info_cb_t cb, void* userdata); +-pa_context_state_t pa_context_get_state(pa_context* c); ++pa_context_state_t pa_context_get_state(const pa_context* c); + pa_context* pa_context_new(pa_mainloop_api* mainloop, const char* name); + pa_operation* pa_context_set_source_volume_by_index(pa_context* c, uint32_t idx, const pa_cvolume* volume, pa_context_success_cb_t cb, void* userdata); + void pa_context_set_state_callback(pa_context* c, pa_context_notify_cb_t cb, void* userdata); +@@ -38,23 +38,23 @@ pa_operation* pa_stream_cork(pa_stream* + int pa_stream_disconnect(pa_stream* s); + int pa_stream_drop(pa_stream *p); + pa_operation* pa_stream_flush(pa_stream* s, pa_stream_success_cb_t cb, void* userdata); +-uint32_t pa_stream_get_device_index(pa_stream* s); ++uint32_t pa_stream_get_device_index(const pa_stream* s); + int pa_stream_get_latency(pa_stream* s, pa_usec_t* r_usec, int* negative); +-pa_stream_state_t pa_stream_get_state(pa_stream* p); ++pa_stream_state_t pa_stream_get_state(const pa_stream* p); + pa_stream* pa_stream_new(pa_context* c, const char* name, const pa_sample_spec* ss, const pa_channel_map * map); + pa_stream* pa_stream_new_with_proplist(pa_context* c, const char* name, const pa_sample_spec* ss, const pa_channel_map* map, pa_proplist* p); + pa_proplist* pa_proplist_new(void); +-int pa_proplist_contains(pa_proplist* p, const char* key); ++int pa_proplist_contains(const pa_proplist* p, const char* key); + void pa_proplist_free(pa_proplist* p); +-const char* pa_proplist_gets(pa_proplist* p, const char* key); ++const char* pa_proplist_gets(const pa_proplist* p, const char* key); + int pa_proplist_sets(pa_proplist* p, const char* key, const char* value); +-size_t pa_stream_readable_size(pa_stream *p); ++size_t pa_stream_readable_size(const pa_stream *p); + int pa_stream_peek(pa_stream* p, const void** data, size_t* nbytes); + void pa_stream_set_read_callback(pa_stream* p, pa_stream_request_cb_t cb, void* userdata); + void pa_stream_set_state_callback(pa_stream* s, pa_stream_notify_cb_t cb, void* userdata); + int pa_stream_write(pa_stream* p, const void* data, size_t nbytes, pa_free_cb_t free_cb, int64_t offset, pa_seek_mode_t seek); + void pa_stream_set_write_callback(pa_stream *p, pa_stream_request_cb_t cb, void *userdata); + void pa_stream_unref(pa_stream* s); +-int pa_context_errno(pa_context *c); ++int pa_context_errno(const pa_context *c); + const char* pa_strerror(int error); + pa_cvolume* pa_cvolume_set(pa_cvolume* a, unsigned channels, pa_volume_t v); diff --git a/chromium.spec b/chromium.spec index bf6bdcb..f91b60b 100644 --- a/chromium.spec +++ b/chromium.spec @@ -141,6 +141,13 @@ BuildRequires: libicu-devel >= 5.4 %global bundleharfbuzz 0 %endif +# Pulseaudio changed the API a little in 12.99.1 +%if 0%{?fedora} > 30 +%global pulseaudioapichange 1 +%else +%global pulseaudioapichange 0 +%endif + ### Google API keys (see http://www.chromium.org/developers/how-tos/api-keys) ### Note: These are for Fedora use ONLY. ### For your own distribution, please get your own set of keys. @@ -306,6 +313,8 @@ Patch202: enable-vaapi.patch Patch203: chromium-75.0.3770.80-vaapi-i686-fpermissive.patch # Fix compatibility with VA-API library (libva) version 1 Patch204: chromium-75.0.3770.80-vaapi-libva1-compatibility.patch +# Pulseaudio changed the API a little in 12.99.1 +Patch205: chromium-76.0.3809.100-pulse-api-change.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ @@ -491,7 +500,6 @@ BuildRequires: pkgconfig(gtk+-3.0) %else BuildRequires: pkgconfig(gtk+-2.0) %endif -BuildRequires: pulseaudio-libs-devel BuildRequires: python2-devel %if 0%{?fedora} > 27 BuildRequires: python2-beautifulsoup4 @@ -871,6 +879,9 @@ udev. %endif %endif +%if 0%{?pulseaudioapichange} +%patch205 -p1 -b .pulseaudioapichange +%endif # Change shebang in all relevant files in this directory and all subdirectories # See `man find` for how the `-exec command {} +` syntax works From 923b51d3f2c64069f49e4f19405f4e7f5462cb45 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 14 Aug 2019 23:17:42 +0200 Subject: [PATCH 0324/1449] Add missing ffmpeg file on aarch64 --- clean_ffmpeg.sh | 1 + sources | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index 2f27435..e190296 100755 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -216,6 +216,7 @@ manual_files=" libavcodec/aarch64/fft_neon.S \ libavcodec/x86/videodsp_init.c \ libavcodec/x86/vorbisdsp_init.c \ libavcodec/autorename_libavcodec_mdct15.c \ + libavcodec/aarch64/autorename_libavcodec_aarch64_fft_neon.S \ libavcodec/bit_depth_template.c \ libavcodec/fft_template.c \ libavcodec/flacdec.c \ diff --git a/sources b/sources index 4e53fd1..d6d53e4 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-76.0.3809.100-clean.tar.xz) = f9fecad99618dffbfa3331b77dd82244447382761ca864380ea145d58f4bd90bb1c0fd3d433aca7d71f63e24c4120bff15c3a4dd9b86e94096cdf31c02b80cd5 +SHA512 (chromium-76.0.3809.100-clean.tar.xz) = ca39cf3df4716293d40ea78d8b6c7beb134340c42051dc5ae243f127729cc13fb60e9d168ccac29d55b4ef47aba598e3211caa8f3a8ed5689748873a36fce753 From f31a3b1f0c9d88610827a22cbd6cbc8661a9a85f Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 14 Aug 2019 23:22:37 +0200 Subject: [PATCH 0325/1449] Update the Pulseaudio's pa_operation_get_state() signature Missed it while updating the Pulseaudio signatures. --- chromium-76.0.3809.100-pulse-api-change.patch | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/chromium-76.0.3809.100-pulse-api-change.patch b/chromium-76.0.3809.100-pulse-api-change.patch index 37d3dfa..d4e2b46 100644 --- a/chromium-76.0.3809.100-pulse-api-change.patch +++ b/chromium-76.0.3809.100-pulse-api-change.patch @@ -1,7 +1,7 @@ -diff -up chromium-76.0.3809.100/media/audio/pulse/pulse.sigs.pulse_api_change chromium-76.0.3809.100/media/audio/pulse/pulse.sigs ---- chromium-76.0.3809.100/media/audio/pulse/pulse.sigs.pulse_api_change 2019-08-14 16:27:55.057702172 +0200 -+++ chromium-76.0.3809.100/media/audio/pulse/pulse.sigs 2019-08-14 16:37:21.603479886 +0200 -@@ -24,7 +24,7 @@ pa_operation* pa_context_get_source_info +diff -up chromium-76.0.3809.100/media/audio/pulse/pulse.sigs.pulse-api-change chromium-76.0.3809.100/media/audio/pulse/pulse.sigs +--- chromium-76.0.3809.100/media/audio/pulse/pulse.sigs.pulse-api-change 2019-08-14 23:18:59.624627870 +0200 ++++ chromium-76.0.3809.100/media/audio/pulse/pulse.sigs 2019-08-14 23:19:41.258104998 +0200 +@@ -24,11 +24,11 @@ pa_operation* pa_context_get_source_info pa_operation* pa_context_get_source_info_by_name(pa_context* c, const char* name, pa_source_info_cb_t cb, void *userdata); pa_operation* pa_context_get_source_info_list(pa_context* c, pa_source_info_cb_t cb, void* userdata); pa_operation* pa_context_get_sink_info_list(pa_context* c, pa_sink_info_cb_t cb, void* userdata); @@ -10,6 +10,11 @@ diff -up chromium-76.0.3809.100/media/audio/pulse/pulse.sigs.pulse_api_change ch pa_context* pa_context_new(pa_mainloop_api* mainloop, const char* name); pa_operation* pa_context_set_source_volume_by_index(pa_context* c, uint32_t idx, const pa_cvolume* volume, pa_context_success_cb_t cb, void* userdata); void pa_context_set_state_callback(pa_context* c, pa_context_notify_cb_t cb, void* userdata); +-pa_operation_state_t pa_operation_get_state(pa_operation* o); ++pa_operation_state_t pa_operation_get_state(const pa_operation* o); + void pa_context_unref(pa_context* c); + void pa_operation_unref(pa_operation* o); + int pa_stream_begin_write(pa_stream* p, void** data, size_t* nbytes); @@ -38,23 +38,23 @@ pa_operation* pa_stream_cork(pa_stream* int pa_stream_disconnect(pa_stream* s); int pa_stream_drop(pa_stream *p); From 170da1572c9fbe5224d94a9835b423cfa17fe7ae Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Thu, 15 Aug 2019 07:03:49 +0200 Subject: [PATCH 0326/1449] Backport another upstream build fix --- ....0.3809.100-gcc-initialization-order.patch | 33 +++++++++++++++++++ chromium.spec | 3 ++ 2 files changed, 36 insertions(+) create mode 100644 chromium-76.0.3809.100-gcc-initialization-order.patch diff --git a/chromium-76.0.3809.100-gcc-initialization-order.patch b/chromium-76.0.3809.100-gcc-initialization-order.patch new file mode 100644 index 0000000..3bf394f --- /dev/null +++ b/chromium-76.0.3809.100-gcc-initialization-order.patch @@ -0,0 +1,33 @@ +From 7dc76c8d9f4cfbce7cf11424120aa6f6094916dc Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Wed, 05 Jun 2019 21:09:01 +0000 +Subject: [PATCH] GCC: XSetWindowAttributes struct initialization should keep order of declaration + +XSetWindowAttributes initialization of attributes in GLSurfaceGLX is not in the +same order of the declaration. GCC fails because of that. + +Bug: 819294 +Change-Id: I8a97da980d5961a35a47ae4d0d8d558b85291f1f +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1646253 +Reviewed-by: Zhenyao Mo +Commit-Queue: José Dapena Paz +Cr-Commit-Position: refs/heads/master@{#666436} +--- + +diff --git a/ui/gl/gl_surface_glx.cc b/ui/gl/gl_surface_glx.cc +index f649dd4..0aa6892 100644 +--- a/ui/gl/gl_surface_glx.cc ++++ b/ui/gl/gl_surface_glx.cc +@@ -583,10 +583,10 @@ + + XSetWindowAttributes swa = { + .background_pixmap = 0, +- .bit_gravity = NorthWestGravity, +- .colormap = g_colormap, + .background_pixel = 0, // ARGB(0,0,0,0) for compositing WM + .border_pixel = 0, ++ .bit_gravity = NorthWestGravity, ++ .colormap = g_colormap, + }; + auto value_mask = CWBackPixmap | CWBitGravity | CWColormap | CWBorderPixel; + if (ui::IsCompositingManagerPresent() && diff --git a/chromium.spec b/chromium.spec index f91b60b..64e3243 100644 --- a/chromium.spec +++ b/chromium.spec @@ -289,6 +289,8 @@ Patch54: chromium-76.0.3809.100-gcc-feature-policy-parser.patch Patch55: chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch # https://chromium.googlesource.com/chromium/src.git/+/dcb55fb8f18abe5f43d260aa67b14b2dc996f992 Patch56: chromium-76.0.3809.100-gcc-move-explicit-initialization.patch +# https://chromium.googlesource.com/chromium/src.git/+/7dc76c8d9f4cfbce7cf11424120aa6f6094916dc +Patch57: chromium-76.0.3809.100-gcc-initialization-order.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -857,6 +859,7 @@ udev. %patch54 -p1 -b .gcc-feature-policy-parser %patch55 -p1 -b .gcc-hasfraction-constexpr %patch56 -p1 -b .gcc-move-explicit-initialization +%patch57 -p1 -b .gcc-initialization-order # EPEL specific patches %if 0%{?rhel} == 7 From b01a0be49606614662f2dc0a5c7cc018c14b2ecf Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Thu, 15 Aug 2019 07:10:04 +0200 Subject: [PATCH 0327/1449] Upload the new cleaned tarball with aarch64 sources Previously I forgot to pass the --ffmpegarm while generating the tarball. --- clean_ffmpeg.sh | 1 - sources | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index e190296..2f27435 100755 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -216,7 +216,6 @@ manual_files=" libavcodec/aarch64/fft_neon.S \ libavcodec/x86/videodsp_init.c \ libavcodec/x86/vorbisdsp_init.c \ libavcodec/autorename_libavcodec_mdct15.c \ - libavcodec/aarch64/autorename_libavcodec_aarch64_fft_neon.S \ libavcodec/bit_depth_template.c \ libavcodec/fft_template.c \ libavcodec/flacdec.c \ diff --git a/sources b/sources index d6d53e4..b7a420d 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-76.0.3809.100-clean.tar.xz) = ca39cf3df4716293d40ea78d8b6c7beb134340c42051dc5ae243f127729cc13fb60e9d168ccac29d55b4ef47aba598e3211caa8f3a8ed5689748873a36fce753 +SHA512 (chromium-76.0.3809.100-clean.tar.xz) = 418ade473185717595b47fbf49ad58bd9bf7cece43f9e200108a2f4df1391bc6a09673e7c30a9958205e13650ed220ad289fe3d79d140612ec5c0bb7891fc8c8 From 1196d0d541965da13ee93b40cae1dc08167faab5 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Thu, 15 Aug 2019 21:14:35 +0200 Subject: [PATCH 0328/1449] Backport and create more of the GCC fixes --- ...09.100-gcc-accountinfo-move-noexcept.patch | 53 +++++++++++++++++++ ...0.3809.100-gcc-history-move-noexcept.patch | 42 +++++++++++++++ ...0.3809.100-gcc-no-alignas-and-export.patch | 14 +++++ ...0.3809.100-gcc-themeservice-includes.patch | 36 +++++++++++++ chromium.spec | 14 +++++ 5 files changed, 159 insertions(+) create mode 100644 chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch create mode 100644 chromium-76.0.3809.100-gcc-history-move-noexcept.patch create mode 100644 chromium-76.0.3809.100-gcc-no-alignas-and-export.patch create mode 100644 chromium-76.0.3809.100-gcc-themeservice-includes.patch diff --git a/chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch b/chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch new file mode 100644 index 0000000..5f45a8f --- /dev/null +++ b/chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch @@ -0,0 +1,53 @@ +From 719df31ffd4d52b473509cf77acd9c02ec112acb Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Tue, 04 Jun 2019 18:38:12 +0200 +Subject: [PATCH] GCC: fix noexcept from move constructor and assign operators of AccountInfo + +AccountInfo declares them as noexcept and uses default implementation, +so all its members (including AccountId) should be noexcept. But AccountId +is not noexcept. To fix it we just need to make CoreAccountId move +operator/assign operator noexcept. + +Bug: 819294 +Change-Id: Ice38654ab7cf3b9eaa6f54aa36e1fec329264f98 +--- + +diff --git a/google_apis/gaia/core_account_id.cc b/google_apis/gaia/core_account_id.cc +index d808082..12eefe3 100644 +--- a/google_apis/gaia/core_account_id.cc ++++ b/google_apis/gaia/core_account_id.cc +@@ -6,8 +6,16 @@ + + CoreAccountId::CoreAccountId() = default; + ++CoreAccountId::CoreAccountId(const CoreAccountId&) = default; ++ ++CoreAccountId::CoreAccountId(CoreAccountId&&) noexcept = default; ++ + CoreAccountId::~CoreAccountId() = default; + ++CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; ++ ++CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) noexcept = default; ++ + CoreAccountId::CoreAccountId(const char* id) : id(id) {} + + CoreAccountId::CoreAccountId(std::string&& id) : id(std::move(id)) {} +diff --git a/google_apis/gaia/core_account_id.h b/google_apis/gaia/core_account_id.h +index 5ea602a..c2d1911 100644 +--- a/google_apis/gaia/core_account_id.h ++++ b/google_apis/gaia/core_account_id.h +@@ -14,8 +14,13 @@ + // for design and tracking). + struct CoreAccountId { + CoreAccountId(); ++ CoreAccountId(const CoreAccountId&); ++ CoreAccountId(CoreAccountId&&) noexcept; + ~CoreAccountId(); + ++ CoreAccountId& operator=(const CoreAccountId&); ++ CoreAccountId& operator=(CoreAccountId&&) noexcept; ++ + // Those implicit constructor and conversion operator allow to + // progressively migrate the code to use this struct. Removing + // them is tracked by https://crbug.com/959161 diff --git a/chromium-76.0.3809.100-gcc-history-move-noexcept.patch b/chromium-76.0.3809.100-gcc-history-move-noexcept.patch new file mode 100644 index 0000000..2876de4 --- /dev/null +++ b/chromium-76.0.3809.100-gcc-history-move-noexcept.patch @@ -0,0 +1,42 @@ +From abe74a7f0c53a43a9706a42d71b7ff4a5da53380 Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Tue, 11 Jun 2019 10:27:19 +0200 +Subject: [PATCH] GCC: add noexcept move assignment in history::URLRow + +In GCC, build is failing because history::QueryURLResult declares its move +assignment operator as noexcept using default implementation. That requires +its members to provide a move assignment operator that is noexcept too. + +But URLRow was missing noexcept declaration in move assignment operator (even +though it was providing noexcept to its move constructor). + +Bug: 819294 +Change-Id: I726e3cf7a4a50c9206a5d0fba8a561d363483d4f +--- + +diff --git a/components/history/core/browser/url_row.cc b/components/history/core/browser/url_row.cc +index 44c22fd..aec0101 100644 +--- a/components/history/core/browser/url_row.cc ++++ b/components/history/core/browser/url_row.cc +@@ -26,7 +26,7 @@ + } + + URLRow& URLRow::operator=(const URLRow& other) = default; +-URLRow& URLRow::operator=(URLRow&& other) = default; ++URLRow& URLRow::operator=(URLRow&& other) noexcept = default; + + void URLRow::Swap(URLRow* other) { + std::swap(id_, other->id_); +diff --git a/components/history/core/browser/url_row.h b/components/history/core/browser/url_row.h +index 8f6f9cf..31a1ef8 100644 +--- a/components/history/core/browser/url_row.h ++++ b/components/history/core/browser/url_row.h +@@ -35,7 +35,7 @@ + + virtual ~URLRow(); + URLRow& operator=(const URLRow& other); +- URLRow& operator=(URLRow&& other); ++ URLRow& operator=(URLRow&& other) noexcept; + + URLID id() const { return id_; } + diff --git a/chromium-76.0.3809.100-gcc-no-alignas-and-export.patch b/chromium-76.0.3809.100-gcc-no-alignas-and-export.patch new file mode 100644 index 0000000..cc91d1e --- /dev/null +++ b/chromium-76.0.3809.100-gcc-no-alignas-and-export.patch @@ -0,0 +1,14 @@ +diff -up chromium-76.0.3809.100/third_party/blink/renderer/core/css/css_property_value_set.h.gcc-no-alignas chromium-76.0.3809.100/third_party/blink/renderer/core/css/css_property_value_set.h +--- chromium-76.0.3809.100/third_party/blink/renderer/core/css/css_property_value_set.h.gcc-no-alignas 2019-08-09 16:48:13.000000000 +0200 ++++ chromium-76.0.3809.100/third_party/blink/renderer/core/css/css_property_value_set.h 2019-08-15 21:04:30.231532746 +0200 +@@ -176,8 +176,8 @@ class CSSLazyPropertyParser + DISALLOW_COPY_AND_ASSIGN(CSSLazyPropertyParser); + }; + +-class CORE_EXPORT alignas(Member) alignas( +- CSSPropertyValueMetadata) ImmutableCSSPropertyValueSet ++class CORE_EXPORT ALIGNAS(alignof(Member)) ++ ALIGNAS(alignof(CSSPropertyValueMetadata)) ImmutableCSSPropertyValueSet + : public CSSPropertyValueSet { + public: + ImmutableCSSPropertyValueSet(const CSSPropertyValue*, diff --git a/chromium-76.0.3809.100-gcc-themeservice-includes.patch b/chromium-76.0.3809.100-gcc-themeservice-includes.patch new file mode 100644 index 0000000..ad40bb9 --- /dev/null +++ b/chromium-76.0.3809.100-gcc-themeservice-includes.patch @@ -0,0 +1,36 @@ +From d08ea83acc2f5ff395c1fe54f52687e92fe51c3b Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Tue, 04 Jun 2019 22:01:03 +0200 +Subject: [PATCH] IWYU: ThemeService requires NativeTheme + +As ThemeService referes to NativeTheme through a ScopedObserver, +the full declaration is required. + +Bug: 819294 +Change-Id: I9d5bd2e87cfaa76e87f9b5509daea24848906a63 +--- + +diff --git a/chrome/browser/themes/theme_service.cc b/chrome/browser/themes/theme_service.cc +index d65388e2..23dc86d 100644 +--- a/chrome/browser/themes/theme_service.cc ++++ b/chrome/browser/themes/theme_service.cc +@@ -54,7 +54,6 @@ + #include "ui/gfx/color_palette.h" + #include "ui/gfx/image/image_skia.h" + #include "ui/native_theme/common_theme.h" +-#include "ui/native_theme/native_theme.h" + + #if BUILDFLAG(ENABLE_EXTENSIONS) + #include "base/scoped_observer.h" +diff --git a/chrome/browser/themes/theme_service.h b/chrome/browser/themes/theme_service.h +index 6c79c72..f93dc0d 100644 +--- a/chrome/browser/themes/theme_service.h ++++ b/chrome/browser/themes/theme_service.h +@@ -25,6 +25,7 @@ + #include "extensions/buildflags/buildflags.h" + #include "extensions/common/extension_id.h" + #include "ui/base/theme_provider.h" ++#include "ui/native_theme/native_theme.h" + #include "ui/native_theme/native_theme_observer.h" + + class BrowserThemePack; diff --git a/chromium.spec b/chromium.spec index 64e3243..de9e05b 100644 --- a/chromium.spec +++ b/chromium.spec @@ -291,6 +291,16 @@ Patch55: chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch Patch56: chromium-76.0.3809.100-gcc-move-explicit-initialization.patch # https://chromium.googlesource.com/chromium/src.git/+/7dc76c8d9f4cfbce7cf11424120aa6f6094916dc Patch57: chromium-76.0.3809.100-gcc-initialization-order.patch +# https://chromium.googlesource.com/chromium/src.git/+/138904af5d6a4158ef4247fda816a8035e621e59 +Patch58: chromium-76.0.3809.100-gcc-history-move-noexcept.patch +# https://chromium.googlesource.com/chromium/src.git/+/bdc24128b75008743d819e298557a53205706e7c +Patch59: chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch +# https://chromium.googlesource.com/chromium/src.git/+/5d7f227fa844e79568df64e495e7ef958c12d7b2 +Patch60: chromium-76.0.3809.100-gcc-themeservice-includes.patch +# TBD - need to submit it +# In GCC one can't use alignas() for exported classes (as described in +# https://cs.chromium.org/chromium/src/base/compiler_specific.h?rcl=a5bcc05a48f6cc6299edfaf0179278aa03653ee4&l=103) +Patch61: chromium-76.0.3809.100-gcc-no-alignas-and-export.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -860,6 +870,10 @@ udev. %patch55 -p1 -b .gcc-hasfraction-constexpr %patch56 -p1 -b .gcc-move-explicit-initialization %patch57 -p1 -b .gcc-initialization-order +%patch58 -p1 -b .gcc-history-move-noexcept +%patch59 -p1 -b .gcc-accountinfo-move-noexcept +%patch60 -p1 -b .gcc-themeservice-includes +%patch61 -p1 -b .gcc-no-alignas-and-export # EPEL specific patches %if 0%{?rhel} == 7 From ba2f198b9f3f9f682f22b035452537a6236294d1 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 16 Aug 2019 13:58:53 +0200 Subject: [PATCH 0329/1449] //third_party dependency missing for remoting --- chromium.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/chromium.spec b/chromium.spec index de9e05b..f003849 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1207,6 +1207,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/google_input_tools' \ 'third_party/google_input_tools/third_party/closure_library' \ 'third_party/google_input_tools/third_party/closure_library/third_party/closure' \ + 'third_party/google_trust_services' \ 'third_party/googletest' \ 'third_party/glslang' \ 'third_party/grpc' \ From c55af60ffa59e4d4fc75644982db695826c58f54 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 20 Aug 2019 21:36:06 +0200 Subject: [PATCH 0330/1449] Fix the build of remoting_all target --- ...76.0.3809.100-gcc-remoting-constexpr.patch | 27 +++++++++++++++++++ ...6.0.3809.100-vtable-symbol-undefined.patch | 11 ++++++++ chromium.spec | 11 +++++--- 3 files changed, 46 insertions(+), 3 deletions(-) create mode 100644 chromium-76.0.3809.100-gcc-remoting-constexpr.patch create mode 100644 chromium-76.0.3809.100-vtable-symbol-undefined.patch diff --git a/chromium-76.0.3809.100-gcc-remoting-constexpr.patch b/chromium-76.0.3809.100-gcc-remoting-constexpr.patch new file mode 100644 index 0000000..c59702f --- /dev/null +++ b/chromium-76.0.3809.100-gcc-remoting-constexpr.patch @@ -0,0 +1,27 @@ +diff -up chromium-76.0.3809.100/remoting/signaling/message_tracker.cc.gcc-constexpr chromium-76.0.3809.100/remoting/signaling/message_tracker.cc +--- chromium-76.0.3809.100/remoting/signaling/message_tracker.cc.gcc-constexpr 2019-08-09 16:48:08.000000000 +0200 ++++ chromium-76.0.3809.100/remoting/signaling/message_tracker.cc 2019-08-20 21:29:14.545465656 +0200 +@@ -9,8 +9,7 @@ + namespace remoting { + + // static +-const base::TimeDelta MessageTracker::kCleanupInterval = +- base::TimeDelta::FromMinutes(2); ++constexpr base::TimeDelta MessageTracker::kCleanupInterval; + + MessageTracker::MessageTracker() = default; + +diff -up chromium-76.0.3809.100/remoting/signaling/message_tracker.h.gcc-constexpr chromium-76.0.3809.100/remoting/signaling/message_tracker.h +--- chromium-76.0.3809.100/remoting/signaling/message_tracker.h.gcc-constexpr 2019-08-20 21:27:53.539653248 +0200 ++++ chromium-76.0.3809.100/remoting/signaling/message_tracker.h 2019-08-20 21:28:23.371952434 +0200 +@@ -36,7 +36,8 @@ class MessageTracker final { + + // All IDs older than now - kCleanupInterval will be eventually removed, but + // they are not guaranteed to be immediately removed after the interval. +- static constexpr base::TimeDelta kCleanupInterval; ++ static constexpr base::TimeDelta kCleanupInterval = ++ base::TimeDelta::FromMinutes(2); + + void RemoveExpiredIds(); + +diff -up chromium-76.0.3809.100/remoting/signaling/message_tracker_unittest.cc.gcc-constexpr chromium-76.0.3809.100/remoting/signaling/message_tracker_unittest.cc diff --git a/chromium-76.0.3809.100-vtable-symbol-undefined.patch b/chromium-76.0.3809.100-vtable-symbol-undefined.patch new file mode 100644 index 0000000..64532df --- /dev/null +++ b/chromium-76.0.3809.100-vtable-symbol-undefined.patch @@ -0,0 +1,11 @@ +diff -up chromium-76.0.3809.100/net/quic/platform/impl/quic_default_proof_providers_impl.cc.vtable-symbol-undefined chromium-76.0.3809.100/net/quic/platform/impl/quic_default_proof_providers_impl.cc +--- chromium-76.0.3809.100/net/quic/platform/impl/quic_default_proof_providers_impl.cc.vtable-symbol-undefined 2019-08-20 21:21:24.901899270 +0200 ++++ chromium-76.0.3809.100/net/quic/platform/impl/quic_default_proof_providers_impl.cc 2019-08-20 21:19:30.361746211 +0200 +@@ -18,6 +18,7 @@ + #include "net/quic/crypto/proof_verifier_chromium.h" + #include "net/third_party/quiche/src/quic/platform/api/quic_flags.h" + #include "net/third_party/quiche/src/quic/platform/api/quic_ptr_util.h" ++#include "net/quic/platform/impl/quic_flags_impl.cc" + + DEFINE_QUIC_COMMAND_LINE_FLAG(std::string, + certificate_file, diff --git a/chromium.spec b/chromium.spec index f003849..e06bcdd 100644 --- a/chromium.spec +++ b/chromium.spec @@ -297,10 +297,13 @@ Patch58: chromium-76.0.3809.100-gcc-history-move-noexcept.patch Patch59: chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch # https://chromium.googlesource.com/chromium/src.git/+/5d7f227fa844e79568df64e495e7ef958c12d7b2 Patch60: chromium-76.0.3809.100-gcc-themeservice-includes.patch -# TBD - need to submit it -# In GCC one can't use alignas() for exported classes (as described in -# https://cs.chromium.org/chromium/src/base/compiler_specific.h?rcl=a5bcc05a48f6cc6299edfaf0179278aa03653ee4&l=103) +# In GCC one can't use alignas() for exported classes +# https://chromium.googlesource.com/chromium/src.git/+/8148fd96ae04a1150a9c6012634dcd2a7335f87a Patch61: chromium-76.0.3809.100-gcc-no-alignas-and-export.patch +# Needs to be submitted.. +Patch62: chromium-76.0.3809.100-gcc-remoting-constexpr.patch +# Needs to be submitted.. (ugly hack, needs to be added properly to GN files) +Patch63: chromium-76.0.3809.100-vtable-symbol-undefined.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -874,6 +877,8 @@ udev. %patch59 -p1 -b .gcc-accountinfo-move-noexcept %patch60 -p1 -b .gcc-themeservice-includes %patch61 -p1 -b .gcc-no-alignas-and-export +%patch62 -p1 -b .gcc-remoting-constexpr +%patch63 -p1 -b .vtable-symbol-undefined # EPEL specific patches %if 0%{?rhel} == 7 From 53c822f6be8f1d5140bb2be4d122e936f096a9a9 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 20 Aug 2019 22:07:44 +0200 Subject: [PATCH 0331/1449] Fix the previously uploaded patch --- chromium-76.0.3809.100-gcc-remoting-constexpr.patch | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/chromium-76.0.3809.100-gcc-remoting-constexpr.patch b/chromium-76.0.3809.100-gcc-remoting-constexpr.patch index c59702f..aec3107 100644 --- a/chromium-76.0.3809.100-gcc-remoting-constexpr.patch +++ b/chromium-76.0.3809.100-gcc-remoting-constexpr.patch @@ -12,13 +12,13 @@ diff -up chromium-76.0.3809.100/remoting/signaling/message_tracker.cc.gcc-conste MessageTracker::MessageTracker() = default; diff -up chromium-76.0.3809.100/remoting/signaling/message_tracker.h.gcc-constexpr chromium-76.0.3809.100/remoting/signaling/message_tracker.h ---- chromium-76.0.3809.100/remoting/signaling/message_tracker.h.gcc-constexpr 2019-08-20 21:27:53.539653248 +0200 +--- chromium-76.0.3809.100/remoting/signaling/message_tracker.h.gcc-constexpr 2019-08-20 22:02:25.625970954 +0200 +++ chromium-76.0.3809.100/remoting/signaling/message_tracker.h 2019-08-20 21:28:23.371952434 +0200 @@ -36,7 +36,8 @@ class MessageTracker final { // All IDs older than now - kCleanupInterval will be eventually removed, but // they are not guaranteed to be immediately removed after the interval. -- static constexpr base::TimeDelta kCleanupInterval; +- static const base::TimeDelta kCleanupInterval; + static constexpr base::TimeDelta kCleanupInterval = + base::TimeDelta::FromMinutes(2); From cae7041976921f250979d79a53cd227247927c18 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 21 Aug 2019 13:51:11 +0200 Subject: [PATCH 0332/1449] Update the list of private libraries and remove a pak file that was removed --- chromium.spec | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/chromium.spec b/chromium.spec index e06bcdd..8a246b7 100644 --- a/chromium.spec +++ b/chromium.spec @@ -54,9 +54,9 @@ %global __provides_exclude_from %{chromium_path}/.*\\.so|%{chromium_path}/lib/.*\\.so|%{chromium_path}/lib/.*\\.so.* %if 0%{?rhel} == 7 -%global privlibs libEGL|libGLESv2|libVkICD_mock_icd|libVkLayer_core_validation|libVkLayer_object_lifetimes|libVkLayer_stateless_validation|libVkLayer_thread_safety|libVkLayer_unique_objects|libaccessibility|libandroid_mojo_bindings_shared|libanimation|libapdu|libaura|libaura_extra|libauthenticator_test_mojo_bindings_shared|libbase|libbase_i18n|libbindings|libbindings_base|libblink_common|libblink_controller|libblink_core|libblink_embedded_frame_sink_mojo_bindings_shared|libblink_features|libblink_modules|libblink_mojo_bindings_shared|libblink_mojom_broadcastchannel_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcbor|libcc|libcc_animation|libcc_base|libcc_debug|libcc_mojo_embedder|libcc_paint|libcdm_manager|libcertificate_matching|libchrome_features|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom|libcontent_service_mojom_shared|libcrash_key|libcrcrypto|libdbus|libdbus_thread_linux|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevice_vr|libdevice_vr_mojo_bindings|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevices|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libembedder|libembedder_switches|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libextras|libfido|libfingerprint|libfreetype_harfbuzz|libgamepad_mojom|libgamepad_mojom_blink|libgamepad_mojom_shared|libgamepad_shared_typemap_traits|libgcm|libgeometry|libgeometry_skia|libgesture_detection|libgfx|libgfx_ipc|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_switches|libgfx_x11|libgin|libgl_in_process_context|libgl_init|libgl_wrapper|libgles2|libgles2_implementation|libgles2_utils|libgpu|libgpu_ipc_service|libgtkui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc|libipc_mojom|libipc_mojom_shared|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|liblearning_common|liblearning_impl|libleveldatabase|liblive_tab_count_metrics|libmanager|libmedia_blink|libmedia_filters_jpeg_parser|libmedia_gpu|libmedia_mojo_services|libmedia_session_cpp|libmedia_webrtc|libmemory_instrumentation|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirclient.so.9|libmirroring_service|libmojo_base_lib|libmojo_base_mojom|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_shared_typemap_traits|libmojo_core_embedder|libmojo_core_embedder_internal|libmojo_core_ports|libmojo_cpp_platform|libmojo_ime_lib|libmojo_mojom_bindings|libmojo_mojom_bindings_shared|libmojo_public_system|libmojo_public_system_cpp|libmojom_core_shared|libmojom_mhtml_load_result_shared|libmojom_modules_shared|libmojom_platform_shared|libmpris|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp|libnetwork_cpp_base|libnetwork_service|libnetwork_session_configurator|libonc|libos_crypt|libperfetto|libplatform|libplatform_window_handler_libs|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp_base|libresource_coordinator_cpp_features|libresource_coordinator_public_mojom|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libsandbox|libsandbox_services|libscheduling_metrics|libseccomp_bpf|libservice|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom|libservice_manager_mojom_blink|libservice_manager_mojom_constants|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_shared|libservice_manager_mojom_traits|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libtracing_cpp|libtracing_mojom|libtracing_mojom_shared|libui_accessibility_ax_mojom|libui_accessibility_ax_mojom_blink|libui_accessibility_ax_mojom_shared|libui_base|libui_base_clipboard|libui_base_clipboard_types|libui_base_features|libui_base_idle|libui_base_ime|libui_base_ime_init|libui_base_ime_linux|libui_base_ime_types|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl|liburl_ipc|liburl_matcher|libusb_shared|libuser_manager|libuser_prefs|libv8|libv8_libbase|libv8_libplatform|libviews|libviz_common|libviz_resource_format_utils|libviz_vulkan_context_provider|libvr_base|libvr_common|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libweb_dialogs|libweb_feature_mojo_bindings_mojom|libweb_feature_mojo_bindings_mojom_blink|libweb_feature_mojo_bindings_mojom_shared|libwebdata_common|libwebgpu|libwebview|libwm|libwm_public|libwtf|libx11_events_platform|libx11_window|libzygote|libmedia|libffmpeg|libfontconfig +%global privlibs libevents_devices_x11|libgfx_x11|libevents_x|libgl_wrapper|libmemory_instrumentation|libdevice_vr_mojo_bindings|libdiscardable_memory_common|libui_base_ime_init|libnetwork_cpp_base|libos_crypt|libmessage_center|libmanager|libdevice_gamepad|libembedder|libGLESv2|libtracing|libskia|libgl_in_process_context|libapdu|libbluetooth|libviz_resource_format_utils|libmojo_mojom_bindings|libblink_platform|libmojom_modules_shared|libwebdata_common|libshell_dialogs|libresource_coordinator_public_mojom_blink|libgles2_utils|libgpu_ipc_service|libcaptive_portal|libvr_common|libgles2|libdisplay|libgfx_ipc_geometry|libcc_paint|libandroid_mojo_bindings_shared|libipc_mojom_shared|libffmpeg|liburl_matcher|libbindings|libservice|libwtf|libcommon|libleveldatabase|libnetwork_session_configurator|libaura|libcloud_policy_proto_generated_compile|libservice_manager_mojom_constants|libui_touch_selection|libmojo_base_lib|libservice_manager_cpp_types|libservice_manager_mojom_blink|libmojo_core_embedder|libblink_embedded_frame_sink_mojo_bindings_shared|libgesture_detection|liburl_ipc|libweb_feature_mojo_bindings_mojom|libscheduling_metrics|libresource_coordinator_cpp_features|libcc|libdiscardable_memory_client|libsessions|libblink_common|libipc|libvulkan_init|libblink_mojom_broadcastchannel_bindings_shared|libheadless_non_renderer|libcbor|libmojo_core_embedder_internal|libmojo_public_system_cpp|libmojom_core_shared|libgfx|libusb_shared|libtracing_mojom|libuser_manager|libnet|libwebgpu|libplatform_window_handler_libs|libmojo_base_mojom_shared|libui_base|libprinting|libcontent_service_mojom_shared|libstartup_tracing|libdevice_vr_mojo_bindings_blink|libraster|libsandbox|libv8_libbase|libevents|libui_base_idle|libgles2_implementation|libkeyed_service_content|libprefs|libVkLayer_core_validation|libchrome_features|libdiscardable_memory_service|libcapture_lib|libperfetto|libicui18n|libdomain_reliability|libweb_dialogs|libcc_animation|libbase|libtracing_cpp|libGLESv2|libEGL|libVkLayer_thread_safety|libmedia_gpu|libparsers|libservice_manager_cpp|liblearning_common|libdevices|libvulkan_wrapper|libservice_manager_mojom_shared|libgfx_switches|libkeycodes_x11|libweb_feature_mojo_bindings_mojom_shared|liburl|libmpris|libppapi_proxy|libmojo_base_mojom|libprotobuf_lite|libui_base_features|libdevice_vr|libwm_public|libcolor_space|libseccomp_bpf|libinterfaces_shared|libui_base_x|libicuuc|libwebview|libdevice_event_log|libVkLayer_object_lifetimes|libvulkan_x11|libproxy_config|libnetwork_cpp|libextras|libVkICD_mock_icd|libv8_libplatform|libresource_coordinator_public_mojom|libwm|libviews|libsuid_sandbox_client|libEGL|libcapture_base|libnative_theme|libcrcrypto|libmojo_public_system|libservice_manager_mojom_constants_shared|libui_accessibility_ax_mojom_blink|libplatform|libui_data_pack|libgfx_ipc_buffer_types|libclearkeycdm|libmetrics_cpp|libmojo_base_shared_typemap_traits|libx11_events_platform|libcrash_key|libclient|libblink_controller|libfido|libfreetype_harfbuzz|libmojo_mojom_bindings_shared|libaccessibility|libstub_window|libui_base_ime|libpolicy_component|libweb_bluetooth_mojo_bindings_shared|libmojo_core_ports|libsandbox_services|libstorage_common|libviz_vulkan_context_provider|libcontent_common_mojo_bindings_shared|libgamepad_mojom_blink|libkeyed_service_core|libmedia_mojo_services|libmojo_ime_lib|libblink_modules|libgcm|libsql|libgeometry_skia|libVkLayer_unique_objects|libweb_feature_mojo_bindings_mojom_blink|libui_base_ime_linux|libdisplay_types|libdevice_vr_mojo_bindings_shared|libcc_base|libtracing_mojom_shared|libmedia_blink|libcc_mojo_embedder|libpdfium|libevents_ozone_layout|libgfx_ipc_color|libgtkui|libpolicy_proto|libcodec|libgpu|libcontent_service_cpp|libmojom_mhtml_load_result_shared|libdisplay_util|libcontent_service_mojom|libbase_i18n|libservice_manager_mojom_constants_blink|libcompositor|libmojo_base_mojom_blink|libui_message_center_cpp|libsnapshot|libdbus_thread_linux|libtab_count_metrics|libpublic|libui_accessibility_ax_mojom|liblearning_impl|librange|libbrowser_ui_views|libcontent|libvr_base|libppapi_host|libservice_manager_mojom_traits|libgamepad_mojom|libcertificate_matching|libgfx_ipc|libgl_init|libVkLayer_stateless_validation|libshared_with_blink|libshared_memory_support|libevents_base|libnet_with_v8|libmedia_webrtc|libsurface|libcontent_public_common_mojo_bindings_shared|libaura_extra|libdevice_base|libonc|libcdm_manager|libmojom_platform_shared|libui_accessibility_ax_mojom_shared|libhost|libblink_features|libdevice_features|libmirroring_service|libdbus|libgeometry|libchromium_sqlite3|libgamepad_mojom_shared|libauthenticator_test_mojo_bindings_shared|libboringssl|libembedder_switches|libgfx_ipc_skia|libzygote|libmedia_session_cpp|libv8|libnetwork_service|libx11_window|libui_base_clipboard|libanimation|libmessage_support|libui_devtools|libgamepad_shared_typemap_traits|libfingerprint|libviz_common|libppapi_shared|libstorage_browser|libbindings_base|libservice_manager_mojom|libblink_core|libgin|libresource_coordinator_public_mojom_shared|libuser_prefs|libui_base_ime_types|libipc_mojom|libmidi|libmojo_cpp_platform|libcc_debug|libui_base_clipboard_types|libmedia|libfontconfig %else -%global privlibs libEGL|libGLESv2|libVkICD_mock_icd|libVkLayer_core_validation|libVkLayer_object_lifetimes|libVkLayer_stateless_validation|libVkLayer_thread_safety|libVkLayer_unique_objects|libaccessibility|libandroid_mojo_bindings_shared|libanimation|libapdu|libaura|libaura_extra|libauthenticator_test_mojo_bindings_shared|libbase|libbase_i18n|libbindings|libbindings_base|libblink_common|libblink_controller|libblink_core|libblink_embedded_frame_sink_mojo_bindings_shared|libblink_features|libblink_modules|libblink_mojo_bindings_shared|libblink_mojom_broadcastchannel_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcbor|libcc|libcc_animation|libcc_base|libcc_debug|libcc_mojo_embedder|libcc_paint|libcdm_manager|libcertificate_matching|libchrome_features|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom|libcontent_service_mojom_shared|libcrash_key|libcrcrypto|libdbus|libdbus_thread_linux|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevice_vr|libdevice_vr_mojo_bindings|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevices|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libembedder|libembedder_switches|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libextras|libfido|libfingerprint|libfreetype_harfbuzz|libgamepad_mojom|libgamepad_mojom_blink|libgamepad_mojom_shared|libgamepad_shared_typemap_traits|libgcm|libgeometry|libgeometry_skia|libgesture_detection|libgfx|libgfx_ipc|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_switches|libgfx_x11|libgin|libgl_in_process_context|libgl_init|libgl_wrapper|libgles2|libgles2_implementation|libgles2_utils|libgpu|libgpu_ipc_service|libgtkui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc|libipc_mojom|libipc_mojom_shared|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|liblearning_common|liblearning_impl|libleveldatabase|liblive_tab_count_metrics|libmanager|libmedia_blink|libmedia_filters_jpeg_parser|libmedia_gpu|libmedia_mojo_services|libmedia_session_cpp|libmedia_webrtc|libmemory_instrumentation|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirclient.so.9|libmirroring_service|libmojo_base_lib|libmojo_base_mojom|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_shared_typemap_traits|libmojo_core_embedder|libmojo_core_embedder_internal|libmojo_core_ports|libmojo_cpp_platform|libmojo_ime_lib|libmojo_mojom_bindings|libmojo_mojom_bindings_shared|libmojo_public_system|libmojo_public_system_cpp|libmojom_core_shared|libmojom_mhtml_load_result_shared|libmojom_modules_shared|libmojom_platform_shared|libmpris|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp|libnetwork_cpp_base|libnetwork_service|libnetwork_session_configurator|libonc|libos_crypt|libperfetto|libplatform|libplatform_window_handler_libs|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp_base|libresource_coordinator_cpp_features|libresource_coordinator_public_mojom|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libsandbox|libsandbox_services|libscheduling_metrics|libseccomp_bpf|libservice|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom|libservice_manager_mojom_blink|libservice_manager_mojom_constants|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_shared|libservice_manager_mojom_traits|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libtracing_cpp|libtracing_mojom|libtracing_mojom_shared|libui_accessibility_ax_mojom|libui_accessibility_ax_mojom_blink|libui_accessibility_ax_mojom_shared|libui_base|libui_base_clipboard|libui_base_clipboard_types|libui_base_features|libui_base_idle|libui_base_ime|libui_base_ime_init|libui_base_ime_linux|libui_base_ime_types|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl|liburl_ipc|liburl_matcher|libusb_shared|libuser_manager|libuser_prefs|libv8|libv8_libbase|libv8_libplatform|libviews|libviz_common|libviz_resource_format_utils|libviz_vulkan_context_provider|libvr_base|libvr_common|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libweb_dialogs|libweb_feature_mojo_bindings_mojom|libweb_feature_mojo_bindings_mojom_blink|libweb_feature_mojo_bindings_mojom_shared|libwebdata_common|libwebgpu|libwebview|libwm|libwm_public|libwtf|libx11_events_platform|libx11_window|libzygote|libmedia|libffmpeg +%global privlibs libevents_devices_x11|libgfx_x11|libevents_x|libgl_wrapper|libmemory_instrumentation|libdevice_vr_mojo_bindings|libdiscardable_memory_common|libui_base_ime_init|libnetwork_cpp_base|libos_crypt|libmessage_center|libmanager|libdevice_gamepad|libembedder|libGLESv2|libtracing|libskia|libgl_in_process_context|libapdu|libbluetooth|libviz_resource_format_utils|libmojo_mojom_bindings|libblink_platform|libmojom_modules_shared|libwebdata_common|libshell_dialogs|libresource_coordinator_public_mojom_blink|libgles2_utils|libgpu_ipc_service|libcaptive_portal|libvr_common|libgles2|libdisplay|libgfx_ipc_geometry|libcc_paint|libandroid_mojo_bindings_shared|libipc_mojom_shared|libffmpeg|liburl_matcher|libbindings|libservice|libwtf|libcommon|libleveldatabase|libnetwork_session_configurator|libaura|libcloud_policy_proto_generated_compile|libservice_manager_mojom_constants|libui_touch_selection|libmojo_base_lib|libservice_manager_cpp_types|libservice_manager_mojom_blink|libmojo_core_embedder|libblink_embedded_frame_sink_mojo_bindings_shared|libgesture_detection|liburl_ipc|libweb_feature_mojo_bindings_mojom|libscheduling_metrics|libresource_coordinator_cpp_features|libcc|libdiscardable_memory_client|libsessions|libblink_common|libipc|libvulkan_init|libblink_mojom_broadcastchannel_bindings_shared|libheadless_non_renderer|libcbor|libmojo_core_embedder_internal|libmojo_public_system_cpp|libmojom_core_shared|libgfx|libusb_shared|libtracing_mojom|libuser_manager|libnet|libwebgpu|libplatform_window_handler_libs|libmojo_base_mojom_shared|libui_base|libprinting|libcontent_service_mojom_shared|libstartup_tracing|libdevice_vr_mojo_bindings_blink|libraster|libsandbox|libv8_libbase|libevents|libui_base_idle|libgles2_implementation|libkeyed_service_content|libprefs|libVkLayer_core_validation|libchrome_features|libdiscardable_memory_service|libcapture_lib|libperfetto|libicui18n|libdomain_reliability|libweb_dialogs|libcc_animation|libbase|libtracing_cpp|libGLESv2|libEGL|libVkLayer_thread_safety|libmedia_gpu|libparsers|libservice_manager_cpp|liblearning_common|libdevices|libvulkan_wrapper|libservice_manager_mojom_shared|libgfx_switches|libkeycodes_x11|libweb_feature_mojo_bindings_mojom_shared|liburl|libmpris|libppapi_proxy|libmojo_base_mojom|libprotobuf_lite|libui_base_features|libdevice_vr|libwm_public|libcolor_space|libseccomp_bpf|libinterfaces_shared|libui_base_x|libicuuc|libwebview|libdevice_event_log|libVkLayer_object_lifetimes|libvulkan_x11|libproxy_config|libnetwork_cpp|libextras|libVkICD_mock_icd|libv8_libplatform|libresource_coordinator_public_mojom|libwm|libviews|libsuid_sandbox_client|libEGL|libcapture_base|libnative_theme|libcrcrypto|libmojo_public_system|libservice_manager_mojom_constants_shared|libui_accessibility_ax_mojom_blink|libplatform|libui_data_pack|libgfx_ipc_buffer_types|libclearkeycdm|libmetrics_cpp|libmojo_base_shared_typemap_traits|libx11_events_platform|libcrash_key|libclient|libblink_controller|libfido|libfreetype_harfbuzz|libmojo_mojom_bindings_shared|libaccessibility|libstub_window|libui_base_ime|libpolicy_component|libweb_bluetooth_mojo_bindings_shared|libmojo_core_ports|libsandbox_services|libstorage_common|libviz_vulkan_context_provider|libcontent_common_mojo_bindings_shared|libgamepad_mojom_blink|libkeyed_service_core|libmedia_mojo_services|libmojo_ime_lib|libblink_modules|libgcm|libsql|libgeometry_skia|libVkLayer_unique_objects|libweb_feature_mojo_bindings_mojom_blink|libui_base_ime_linux|libdisplay_types|libdevice_vr_mojo_bindings_shared|libcc_base|libtracing_mojom_shared|libmedia_blink|libcc_mojo_embedder|libpdfium|libevents_ozone_layout|libgfx_ipc_color|libgtkui|libpolicy_proto|libcodec|libgpu|libcontent_service_cpp|libmojom_mhtml_load_result_shared|libdisplay_util|libcontent_service_mojom|libbase_i18n|libservice_manager_mojom_constants_blink|libcompositor|libmojo_base_mojom_blink|libui_message_center_cpp|libsnapshot|libdbus_thread_linux|libtab_count_metrics|libpublic|libui_accessibility_ax_mojom|liblearning_impl|librange|libbrowser_ui_views|libcontent|libvr_base|libppapi_host|libservice_manager_mojom_traits|libgamepad_mojom|libcertificate_matching|libgfx_ipc|libgl_init|libVkLayer_stateless_validation|libshared_with_blink|libshared_memory_support|libevents_base|libnet_with_v8|libmedia_webrtc|libsurface|libcontent_public_common_mojo_bindings_shared|libaura_extra|libdevice_base|libonc|libcdm_manager|libmojom_platform_shared|libui_accessibility_ax_mojom_shared|libhost|libblink_features|libdevice_features|libmirroring_service|libdbus|libgeometry|libchromium_sqlite3|libgamepad_mojom_shared|libauthenticator_test_mojo_bindings_shared|libboringssl|libembedder_switches|libgfx_ipc_skia|libzygote|libmedia_session_cpp|libv8|libnetwork_service|libx11_window|libui_base_clipboard|libanimation|libmessage_support|libui_devtools|libgamepad_shared_typemap_traits|libfingerprint|libviz_common|libppapi_shared|libstorage_browser|libbindings_base|libservice_manager_mojom|libblink_core|libgin|libresource_coordinator_public_mojom_shared|libuser_prefs|libui_base_ime_types|libipc_mojom|libmidi|libmojo_cpp_platform|libcc_debug|libui_base_clipboard_types|libmedia %endif %global __requires_exclude ^(%{privlibs})\\.so* @@ -1753,7 +1753,6 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chrome_*.pak %{chromium_path}/resources.pak %{chromium_path}/icudtl.dat -%{chromium_path}/views_mus_resources.pak %{chromium_path}/%{chromium_browser_channel} %{chromium_path}/%{chromium_browser_channel}.sh %{chromium_path}/MEIPreload/ From b32ea8ff86ec513e9b3676232ff837e0ccd393ec Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 12 Aug 2019 17:09:21 +0200 Subject: [PATCH 0333/1449] Cleanup the patches --- ...res_2d_i16_neon-Make-s2-a-uint64x1_t.patch | 54 -- chromium-46.0.2490.71-notest.patch | 11 - chromium-52.0.2743.116-unset-madv_free.patch | 15 - chromium-52.0.2743.82-arm-webrtc.patch | 51 -- chromium-52.0.2743.82-master-prefs-path.patch | 15 - chromium-55.0.2883.75-sandbox-pie.patch | 30 - chromium-56.0.2924.87-fpermissive.patch | 13 - chromium-56.0.2924.87-gcc5.patch | 354 ---------- chromium-59.0.3071.115-ucontext-fix.patch | 214 ------ chromium-59.0.3071.86-ffmpeg-stdatomic.patch | 17 - chromium-59.0.3071.86-nullfix.patch | 43 -- chromium-59.0.3071.86-system-clang.patch | 10 - chromium-60.0.3112.78-gn-system.patch | 221 ------ ...um-60.0.3112.78-last-commit-position.patch | 28 - chromium-60.0.3112.78-no-zlib-mangle.patch | 13 - chromium-60.0.3112.90-vulkan-force-c99.patch | 11 - ...m-61.0.3163.79-aarch64-glibc-2.26.90.patch | 12 - ...mium-61.0.3163.79-fix-ffmpeg-aarch64.patch | 12 - chromium-61.0.3163.79-setopaque.patch | 12 - ...62.0.3202.62-correct-cplusplus-check.patch | 20 - chromium-62.0.3202.62-dde535-gcc-fix.patch | 13 - chromium-62.0.3202.62-enable-mp3.patch | 484 ------------- ...7-no-nullptr-assignment-on-StructPtr.patch | 12 - chromium-62.0.3202.62-gcc-nc.patch | 11 - chromium-62.0.3202.62-gcc7.patch | 11 - chromium-62.0.3202.62-rvalue-fix.patch | 45 -- ...m-63.0.3289.84-aarch64-glibc-2.26.90.patch | 12 - chromium-63.0.3289.84-enable-mp3.patch | 485 ------------- ...mium-63.0.3289.84-fix-ffmpeg-aarch64.patch | 12 - ...mium-63.0.3289.84-fix-ft-hb-unbundle.patch | 36 - chromium-63.0.3289.84-gcc-round-fix.patch | 11 - chromium-63.0.3289.84-gcc5-r3.patch | 104 --- chromium-63.0.3289.84-nolibc++.patch | 15 - chromium-63.0.3289.84-setopaque.patch | 12 - chromium-64.0.3282.119-enable-mp3.patch | 54 -- ...mium-64.0.3282.119-gcc-constexpr-fix.patch | 70 -- chromium-64.0.3282.119-gcc-round-fix.patch | 12 - chromium-64.0.3282.119-gcc5-r3.patch | 75 -- chromium-64.0.3282.119-gcc5.patch | 57 -- chromium-64.0.3282.119-gcc7.patch | 11 - chromium-64.0.3282.119-memcpy-fix.patch | 11 - chromium-64.0.3282.167-gcc8-fabi11.patch | 15 - ...x-non-copyable-class-s-optional-move.patch | 41 -- ...-methods-String-renamed-to-GetString.patch | 108 --- ...eProvider-Settings-do-not-provide-co.patch | 22 - ...se-Optional-T-requires-the-full-decl.patch | 33 - ...std-move-to-base-Optional-instead-of.patch | 24 - ...-declare-ConfigurationPolicyProvider.patch | 18 - ...ional-copy-move-ctors-assign-operato.patch | 91 --- ...verting-constructors-from-Optional-U.patch | 116 ---- ...-Implement-value-forward-constructor.patch | 72 -- ...e-non-copy-non-move-assign-operators.patch | 144 ---- ...irmative-expression-in-base-Optional.patch | 265 ------- chromium-65.0.3325.146-gcc5-r3.patch | 74 -- chromium-65.0.3325.146-gcc7.patch | 11 - ...trivially_copy_constructable-failure.patch | 55 -- ...Remove-GC-checks-from-WTF-Optional-T.patch | 61 -- chromium-65.0.3325.146-wtf-vector-fix.patch | 54 -- chromium-65.0.3325.162-boolfix.patch | 36 - chromium-65.0.3325.162-epel7-stdc++.patch | 12 - ...-65.0.3325.162-skia-aarch64-buildfix.patch | 21 - ...se-Optional-T-requires-the-full-decl.patch | 33 - ...nitializer-list-for-NoDestructor-of-.patch | 12 - ....0.3359.117-gcc-copy-constructor-fix.patch | 49 -- ...6.0.3359.117-gcc-optional-move-fixes.patch | 45 -- ....117-gcc-vector-copy-constructor-fix.patch | 53 -- chromium-66.0.3359.117-gcc5-r3.patch | 38 - chromium-66.0.3359.117-nounrar.patch | 16 - chromium-66.0.3359.139-arm-init-fix.patch | 12 - chromium-66.0.3359.170-gcc8-alignof.patch | 18 - chromium-67.0.3396.62-boolfix.patch | 36 - ....0.3396.62-crashpad-aarch64-buildfix.patch | 13 - ....62-epel7-use-old-python-exec-syntax.patch | 12 - ...m-67.0.3396.62-skia-aarch64-buildfix.patch | 21 - chromium-67.0.3396.87-fedora-user-agent.patch | 12 - chromium-67.0.3396.99-py2-bootstrap.patch | 42 -- ...mium-68.0.3440.106-fedora-user-agent.patch | 12 - ...440.106-fix-build-networking_private.patch | 12 - chromium-68.0.3440.106-notest.patch | 11 - chromium-68.0.3440.84-cors-string.patch | 51 -- chromium-68.0.3440.84-libjpeg.patch | 62 -- chromium-68.0.3440.84-libwebp-shim.patch | 43 -- chromium-68.0.3440.84-move-unique-ptr.patch | 65 -- chromium-69.0.3497.81-gcc8-alignof.patch | 18 - chromium-69.0.3497.81-norar.patch | 79 --- chromium-69.0.3497.81-py2-bootstrap.patch | 33 - chromium-69.0.3497.81-widevine-r2.patch | 23 - ...70.0.3538.110-remove-sysroot-options.patch | 23 - chromium-70.0.3538.77-harfbuzz2-fix.patch | 80 --- chromium-71-gcc-0.patch | 57 -- chromium-71.0.3578.98-el7-fix-noexcept.patch | 48 -- chromium-71.0.3578.98-norar.patch | 79 --- ...-71.0.3578.98-remove-sysroot-options.patch | 23 - ...0.3578.98-vaapi-libva1-compatibility.patch | 14 - chromium-72.0.3626.121-fix-va-check.patch | 29 - chromium-72.0.3626.121-norar.patch | 79 --- chromium-73-gcc-0.patch | 108 --- chromium-73-gcc-1.patch | 99 --- chromium-73-gcc-2.patch | 51 -- chromium-73-gcc-3.patch | 69 -- chromium-73-gcc-4.patch | 59 -- chromium-73-gcc-5.patch | 65 -- chromium-73-gcc-6.patch | 88 --- ...73.0.3683.103-glibc-2.29-clone-vfork.patch | 29 - ...73.0.3683.75-aarch64-crashpad-limits.patch | 11 - chromium-73.0.3683.75-el7-fix-noexcept.patch | 54 -- chromium-73.0.3683.75-no-header-hygiene.patch | 17 - chromium-gcc5-r3.patch | 98 --- chromium-gcc8-r588316.patch | 98 --- chromium-gcc8-r588547.patch | 30 - chromium-gcc8-r589614.patch | 37 - chromium-gcc8-r591015.patch | 70 -- chromium-gn-bootstrap-r17.patch | 68 -- chromium-math.h-r0.patch | 29 - chromium-stdint.patch | 21 - chromium.spec | 417 +++++------ relax-libva-version.patch | 56 -- revert-gn-4960.patch | 655 ------------------ revert-gn-4980.patch | 134 ---- 119 files changed, 174 insertions(+), 7424 deletions(-) delete mode 100644 0001-vpx_sum_squares_2d_i16_neon-Make-s2-a-uint64x1_t.patch delete mode 100644 chromium-46.0.2490.71-notest.patch delete mode 100644 chromium-52.0.2743.116-unset-madv_free.patch delete mode 100644 chromium-52.0.2743.82-arm-webrtc.patch delete mode 100644 chromium-52.0.2743.82-master-prefs-path.patch delete mode 100644 chromium-55.0.2883.75-sandbox-pie.patch delete mode 100644 chromium-56.0.2924.87-fpermissive.patch delete mode 100644 chromium-56.0.2924.87-gcc5.patch delete mode 100644 chromium-59.0.3071.115-ucontext-fix.patch delete mode 100644 chromium-59.0.3071.86-ffmpeg-stdatomic.patch delete mode 100644 chromium-59.0.3071.86-nullfix.patch delete mode 100644 chromium-59.0.3071.86-system-clang.patch delete mode 100644 chromium-60.0.3112.78-gn-system.patch delete mode 100644 chromium-60.0.3112.78-last-commit-position.patch delete mode 100644 chromium-60.0.3112.78-no-zlib-mangle.patch delete mode 100644 chromium-60.0.3112.90-vulkan-force-c99.patch delete mode 100644 chromium-61.0.3163.79-aarch64-glibc-2.26.90.patch delete mode 100644 chromium-61.0.3163.79-fix-ffmpeg-aarch64.patch delete mode 100644 chromium-61.0.3163.79-setopaque.patch delete mode 100644 chromium-62.0.3202.62-correct-cplusplus-check.patch delete mode 100644 chromium-62.0.3202.62-dde535-gcc-fix.patch delete mode 100644 chromium-62.0.3202.62-enable-mp3.patch delete mode 100644 chromium-62.0.3202.62-epel7-no-nullptr-assignment-on-StructPtr.patch delete mode 100644 chromium-62.0.3202.62-gcc-nc.patch delete mode 100644 chromium-62.0.3202.62-gcc7.patch delete mode 100644 chromium-62.0.3202.62-rvalue-fix.patch delete mode 100644 chromium-63.0.3289.84-aarch64-glibc-2.26.90.patch delete mode 100644 chromium-63.0.3289.84-enable-mp3.patch delete mode 100644 chromium-63.0.3289.84-fix-ffmpeg-aarch64.patch delete mode 100644 chromium-63.0.3289.84-fix-ft-hb-unbundle.patch delete mode 100644 chromium-63.0.3289.84-gcc-round-fix.patch delete mode 100644 chromium-63.0.3289.84-gcc5-r3.patch delete mode 100644 chromium-63.0.3289.84-nolibc++.patch delete mode 100644 chromium-63.0.3289.84-setopaque.patch delete mode 100644 chromium-64.0.3282.119-enable-mp3.patch delete mode 100644 chromium-64.0.3282.119-gcc-constexpr-fix.patch delete mode 100644 chromium-64.0.3282.119-gcc-round-fix.patch delete mode 100644 chromium-64.0.3282.119-gcc5-r3.patch delete mode 100644 chromium-64.0.3282.119-gcc5.patch delete mode 100644 chromium-64.0.3282.119-gcc7.patch delete mode 100644 chromium-64.0.3282.119-memcpy-fix.patch delete mode 100644 chromium-64.0.3282.167-gcc8-fabi11.patch delete mode 100644 chromium-65.0.3325.146-Fix-non-copyable-class-s-optional-move.patch delete mode 100644 chromium-65.0.3325.146-GCC-IDB-methods-String-renamed-to-GetString.patch delete mode 100644 chromium-65.0.3325.146-GCC-PlaybackImageProvider-Settings-do-not-provide-co.patch delete mode 100644 chromium-65.0.3325.146-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch delete mode 100644 chromium-65.0.3325.146-GCC-explicitely-std-move-to-base-Optional-instead-of.patch delete mode 100644 chromium-65.0.3325.146-GCC-fully-declare-ConfigurationPolicyProvider.patch delete mode 100644 chromium-65.0.3325.146-Implement-conditional-copy-move-ctors-assign-operato.patch delete mode 100644 chromium-65.0.3325.146-Implement-converting-constructors-from-Optional-U.patch delete mode 100644 chromium-65.0.3325.146-Implement-value-forward-constructor.patch delete mode 100644 chromium-65.0.3325.146-Update-non-copy-non-move-assign-operators.patch delete mode 100644 chromium-65.0.3325.146-Use-affirmative-expression-in-base-Optional.patch delete mode 100644 chromium-65.0.3325.146-gcc5-r3.patch delete mode 100644 chromium-65.0.3325.146-gcc7.patch delete mode 100644 chromium-65.0.3325.146-workaround-gcc7-is_trivially_copy_constructable-failure.patch delete mode 100644 chromium-65.0.3325.146-wtf-oilpan-Remove-GC-checks-from-WTF-Optional-T.patch delete mode 100644 chromium-65.0.3325.146-wtf-vector-fix.patch delete mode 100644 chromium-65.0.3325.162-boolfix.patch delete mode 100644 chromium-65.0.3325.162-epel7-stdc++.patch delete mode 100644 chromium-65.0.3325.162-skia-aarch64-buildfix.patch delete mode 100644 chromium-66.0.3359.117-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch delete mode 100644 chromium-66.0.3359.117-GCC-do-not-use-initializer-list-for-NoDestructor-of-.patch delete mode 100644 chromium-66.0.3359.117-gcc-copy-constructor-fix.patch delete mode 100644 chromium-66.0.3359.117-gcc-optional-move-fixes.patch delete mode 100644 chromium-66.0.3359.117-gcc-vector-copy-constructor-fix.patch delete mode 100644 chromium-66.0.3359.117-gcc5-r3.patch delete mode 100644 chromium-66.0.3359.117-nounrar.patch delete mode 100644 chromium-66.0.3359.139-arm-init-fix.patch delete mode 100644 chromium-66.0.3359.170-gcc8-alignof.patch delete mode 100644 chromium-67.0.3396.62-boolfix.patch delete mode 100644 chromium-67.0.3396.62-crashpad-aarch64-buildfix.patch delete mode 100644 chromium-67.0.3396.62-epel7-use-old-python-exec-syntax.patch delete mode 100644 chromium-67.0.3396.62-skia-aarch64-buildfix.patch delete mode 100644 chromium-67.0.3396.87-fedora-user-agent.patch delete mode 100644 chromium-67.0.3396.99-py2-bootstrap.patch delete mode 100644 chromium-68.0.3440.106-fedora-user-agent.patch delete mode 100644 chromium-68.0.3440.106-fix-build-networking_private.patch delete mode 100644 chromium-68.0.3440.106-notest.patch delete mode 100644 chromium-68.0.3440.84-cors-string.patch delete mode 100644 chromium-68.0.3440.84-libjpeg.patch delete mode 100644 chromium-68.0.3440.84-libwebp-shim.patch delete mode 100644 chromium-68.0.3440.84-move-unique-ptr.patch delete mode 100644 chromium-69.0.3497.81-gcc8-alignof.patch delete mode 100644 chromium-69.0.3497.81-norar.patch delete mode 100644 chromium-69.0.3497.81-py2-bootstrap.patch delete mode 100644 chromium-69.0.3497.81-widevine-r2.patch delete mode 100644 chromium-70.0.3538.110-remove-sysroot-options.patch delete mode 100644 chromium-70.0.3538.77-harfbuzz2-fix.patch delete mode 100644 chromium-71-gcc-0.patch delete mode 100644 chromium-71.0.3578.98-el7-fix-noexcept.patch delete mode 100644 chromium-71.0.3578.98-norar.patch delete mode 100644 chromium-71.0.3578.98-remove-sysroot-options.patch delete mode 100644 chromium-71.0.3578.98-vaapi-libva1-compatibility.patch delete mode 100644 chromium-72.0.3626.121-fix-va-check.patch delete mode 100644 chromium-72.0.3626.121-norar.patch delete mode 100644 chromium-73-gcc-0.patch delete mode 100644 chromium-73-gcc-1.patch delete mode 100644 chromium-73-gcc-2.patch delete mode 100644 chromium-73-gcc-3.patch delete mode 100644 chromium-73-gcc-4.patch delete mode 100644 chromium-73-gcc-5.patch delete mode 100644 chromium-73-gcc-6.patch delete mode 100644 chromium-73.0.3683.103-glibc-2.29-clone-vfork.patch delete mode 100644 chromium-73.0.3683.75-aarch64-crashpad-limits.patch delete mode 100644 chromium-73.0.3683.75-el7-fix-noexcept.patch delete mode 100644 chromium-73.0.3683.75-no-header-hygiene.patch delete mode 100644 chromium-gcc5-r3.patch delete mode 100644 chromium-gcc8-r588316.patch delete mode 100644 chromium-gcc8-r588547.patch delete mode 100644 chromium-gcc8-r589614.patch delete mode 100644 chromium-gcc8-r591015.patch delete mode 100644 chromium-gn-bootstrap-r17.patch delete mode 100644 chromium-math.h-r0.patch delete mode 100644 chromium-stdint.patch delete mode 100644 relax-libva-version.patch delete mode 100644 revert-gn-4960.patch delete mode 100644 revert-gn-4980.patch diff --git a/0001-vpx_sum_squares_2d_i16_neon-Make-s2-a-uint64x1_t.patch b/0001-vpx_sum_squares_2d_i16_neon-Make-s2-a-uint64x1_t.patch deleted file mode 100644 index f73ded3..0000000 --- a/0001-vpx_sum_squares_2d_i16_neon-Make-s2-a-uint64x1_t.patch +++ /dev/null @@ -1,54 +0,0 @@ -Upstream-Status: Submitted - -GCC aarch64 build fix [this is actually a libvpx patch, not a Chromium one] - -Sent to: https://chromium-review.googlesource.com/c/webm/libvpx/+/1136449 - -Signed-off-by: Raphael Kubo da Costa ---- -From c20bd394f18c47bf133b51d6a40399273c3f24e0 Mon Sep 17 00:00:00 2001 -From: Raphael Kubo da Costa -Date: Fri, 13 Jul 2018 14:29:09 +0200 -Subject: [PATCH] vpx_sum_squares_2d_i16_neon(): Make |s2| a uint64x1_t. - -This fixes the build with at least GCC 7.3, where it was previously failing -with: - -../../third_party/libvpx/source/libvpx/vpx_dsp/arm/sum_squares_neon.c: In function 'vpx_sum_squares_2d_i16_neon': -../../third_party/libvpx/source/libvpx/vpx_dsp/arm/sum_squares_neon.c:34:5: note: use -flax-vector-conversions to permit conversions between vectors with differing element types or numbers of subparts - s2 = vpaddl_u32(s1); - ^~ -../../third_party/libvpx/source/libvpx/vpx_dsp/arm/sum_squares_neon.c:34:8: error: incompatible types when assigning to type 'int64x1_t' from type 'uint64x1_t' - s2 = vpaddl_u32(s1); - ^ -../../third_party/libvpx/source/libvpx/vpx_dsp/arm/sum_squares_neon.c:81:8: error: incompatible types when assigning to type 'int64x1_t' from type 'uint64x1_t' - s2 = vadd_u64(vget_low_u64(s1), vget_high_u64(s1)); - ^ -../../third_party/libvpx/source/libvpx/vpx_dsp/arm/sum_squares_neon.c:84:24: error: incompatible type for argument 1 of 'vget_lane_u64' - return vget_lane_u64(s2, 0); - ^~ - -The generated assembly was verified to remain identical with both GCC and -LLVM. - -Change-Id: I2778428ee1fee0a674d0d4910347c2a717de21ac ---- - vpx_dsp/arm/sum_squares_neon.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/vpx_dsp/arm/sum_squares_neon.c b/vpx_dsp/arm/sum_squares_neon.c -index 8942ba83b..cfefad993 100644 ---- a/third_party/libvpx/source/libvpx/vpx_dsp/arm/sum_squares_neon.c -+++ b/third_party/libvpx/source/libvpx/vpx_dsp/arm/sum_squares_neon.c -@@ -14,7 +14,7 @@ - #include "./vpx_dsp_rtcd.h" - - uint64_t vpx_sum_squares_2d_i16_neon(const int16_t *src, int stride, int size) { -- int64x1_t s2; -+ uint64x1_t s2; - - if (size == 4) { - int16x4_t s[4]; --- -2.14.4 - diff --git a/chromium-46.0.2490.71-notest.patch b/chromium-46.0.2490.71-notest.patch deleted file mode 100644 index e4e3448..0000000 --- a/chromium-46.0.2490.71-notest.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-46.0.2490.71/chrome/test/data/webui_test_resources.grd.notest chromium-46.0.2490.71/chrome/test/data/webui_test_resources.grd ---- chromium-46.0.2490.71/chrome/test/data/webui_test_resources.grd.notest 2015-10-16 02:01:56.644149741 -0400 -+++ chromium-46.0.2490.71/chrome/test/data/webui_test_resources.grd 2015-10-16 02:02:36.217285227 -0400 -@@ -8,7 +8,6 @@ - - - -- - - - diff --git a/chromium-52.0.2743.116-unset-madv_free.patch b/chromium-52.0.2743.116-unset-madv_free.patch deleted file mode 100644 index 2867c79..0000000 --- a/chromium-52.0.2743.116-unset-madv_free.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -up chromium-52.0.2743.116/third_party/WebKit/Source/wtf/allocator/PageAllocator.cpp.madv_free chromium-52.0.2743.116/third_party/WebKit/Source/wtf/allocator/PageAllocator.cpp ---- chromium-52.0.2743.116/third_party/WebKit/Source/wtf/allocator/PageAllocator.cpp.madv_free 2016-08-15 13:07:29.279655676 -0400 -+++ chromium-52.0.2743.116/third_party/WebKit/Source/wtf/allocator/PageAllocator.cpp 2016-08-15 13:08:38.447317416 -0400 -@@ -41,6 +41,11 @@ - #include - #include - -+#if OS(LINUX) && defined(MADV_FREE) -+// Added in Linux 4.5, but it breaks the sandbox. -+#undef MADV_FREE -+#endif -+ - #ifndef MADV_FREE - #define MADV_FREE MADV_DONTNEED - #endif diff --git a/chromium-52.0.2743.82-arm-webrtc.patch b/chromium-52.0.2743.82-arm-webrtc.patch deleted file mode 100644 index f1a6629..0000000 --- a/chromium-52.0.2743.82-arm-webrtc.patch +++ /dev/null @@ -1,51 +0,0 @@ -diff -up chromium-52.0.2743.82/third_party/webrtc/system_wrappers/source/cpu_features.cc.armwebrtc chromium-52.0.2743.82/third_party/webrtc/system_wrappers/source/cpu_features.cc ---- chromium-52.0.2743.82/third_party/webrtc/system_wrappers/source/cpu_features.cc.armwebrtc 2016-08-03 09:30:53.922861020 +0200 -+++ chromium-52.0.2743.82/third_party/webrtc/system_wrappers/source/cpu_features.cc 2016-08-03 09:32:00.337498174 +0200 -@@ -18,6 +18,47 @@ - - #include "webrtc/typedefs.h" - -+#include -+#ifdef __arm__ -+#include -+#include -+#include -+#include -+#endif -+ -+#ifdef __arm__ -+uint64_t WebRtc_GetCPUFeaturesARM() { -+ static bool detected = false; -+ static uint64_t have_neon = 0; -+ -+ int fd; -+ Elf32_auxv_t auxv; -+ unsigned int hwcaps; -+ -+ if (!detected) { -+ int fd; -+ Elf32_auxv_t auxv; -+ unsigned int hwcaps; -+ -+ fd = open("/proc/self/auxv", O_RDONLY); -+ if (fd >= 0) { -+ while (read(fd, &auxv, sizeof(Elf32_auxv_t)) == sizeof(Elf32_auxv_t)) { -+ if (auxv.a_type == AT_HWCAP) { -+ have_neon = (auxv.a_un.a_val & HWCAP_NEON) ? kCPUFeatureNEON : 0; -+ break; -+ } -+ } -+ close (fd); -+ } else { -+ have_neon = 0; -+ } -+ detected = true; -+ } -+ -+ return 0 | have_neon; // others here as we need them -+} -+#endif -+ - // No CPU feature is available => straight C path. - int GetCPUInfoNoASM(CPUFeature feature) { - (void)feature; diff --git a/chromium-52.0.2743.82-master-prefs-path.patch b/chromium-52.0.2743.82-master-prefs-path.patch deleted file mode 100644 index 6ddd26f..0000000 --- a/chromium-52.0.2743.82-master-prefs-path.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -up chromium-52.0.2743.82/chrome/browser/first_run/first_run_internal_linux.cc.etc chromium-52.0.2743.82/chrome/browser/first_run/first_run_internal_linux.cc ---- chromium-52.0.2743.82/chrome/browser/first_run/first_run_internal_linux.cc.etc 2016-08-03 10:15:57.980692109 +0200 -+++ chromium-52.0.2743.82/chrome/browser/first_run/first_run_internal_linux.cc 2016-08-03 10:16:44.553325229 +0200 -@@ -19,9 +19,9 @@ bool IsOrganicFirstRun() { - - base::FilePath MasterPrefsPath() { - // The standard location of the master prefs is next to the chrome binary. -+ // ...but we patch it to use /etc/chromium - base::FilePath master_prefs; -- if (!PathService::Get(base::DIR_EXE, &master_prefs)) -- return base::FilePath(); -+ master_prefs = base::FilePath("/etc/chromium"); - return master_prefs.AppendASCII(installer::kDefaultMasterPrefs); - } - diff --git a/chromium-55.0.2883.75-sandbox-pie.patch b/chromium-55.0.2883.75-sandbox-pie.patch deleted file mode 100644 index 6aae0b0..0000000 --- a/chromium-55.0.2883.75-sandbox-pie.patch +++ /dev/null @@ -1,30 +0,0 @@ -diff -up chromium-55.0.2883.75/sandbox/linux/BUILD.gn.sandboxpie chromium-55.0.2883.75/sandbox/linux/BUILD.gn ---- chromium-55.0.2883.75/sandbox/linux/BUILD.gn.sandboxpie 2016-12-01 18:02:17.000000000 -0500 -+++ chromium-55.0.2883.75/sandbox/linux/BUILD.gn 2016-12-12 16:26:06.863426221 -0500 -@@ -279,11 +279,17 @@ if (is_linux) { - # For ULLONG_MAX - "-std=gnu99", - -+ "-fPIE", -+ - # These files have a suspicious comparison. - # TODO fix this and re-enable this warning. - "-Wno-sign-compare", - ] - -+ ldflags = [ -+ "-pie", -+ ] -+ - import("//build/config/compiler/compiler.gni") - import("//build/config/sanitizers/sanitizers.gni") - if (is_component_build || using_sanitizer) { -@@ -293,7 +299,7 @@ if (is_linux) { - # other flags that executable_config might have. - configs -= [ "//build/config:executable_config" ] - if (!use_gold) { -- ldflags = [ "-Wl,--disable-new-dtags" ] -+ ldflags += [ "-Wl,--disable-new-dtags" ] - } - } - diff --git a/chromium-56.0.2924.87-fpermissive.patch b/chromium-56.0.2924.87-fpermissive.patch deleted file mode 100644 index be68cf9..0000000 --- a/chromium-56.0.2924.87-fpermissive.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -up chromium-56.0.2924.87/third_party/WebKit/Source/BUILD.gn.permissive chromium-56.0.2924.87/third_party/WebKit/Source/BUILD.gn ---- chromium-56.0.2924.87/third_party/WebKit/Source/BUILD.gn.permissive 2017-02-13 12:32:23.419665971 -0500 -+++ chromium-56.0.2924.87/third_party/WebKit/Source/BUILD.gn 2017-02-13 12:33:16.146629190 -0500 -@@ -54,6 +54,9 @@ config("config") { - cflags = [] - defines = [] - -+ # error: there are no arguments to 'swapAnchor' that depend on a template parameter, so a declaration of 'swapAnchor' must be available [-fpermissive] -+ cflags += [ "-fpermissive" ] -+ - if (is_win) { - cflags += [ - "/wd4305", # Truncation from 'type1' to 'type2'. diff --git a/chromium-56.0.2924.87-gcc5.patch b/chromium-56.0.2924.87-gcc5.patch deleted file mode 100644 index 902f92b..0000000 --- a/chromium-56.0.2924.87-gcc5.patch +++ /dev/null @@ -1,354 +0,0 @@ -diff -up chromium-56.0.2924.87/third_party/cld_2/src/internal/cld_generated_cjk_uni_prop_80.cc.gcc5 chromium-56.0.2924.87/third_party/cld_2/src/internal/cld_generated_cjk_uni_prop_80.cc ---- chromium-56.0.2924.87/third_party/cld_2/src/internal/cld_generated_cjk_uni_prop_80.cc.gcc5 2017-02-01 21:03:47.000000000 -0500 -+++ chromium-56.0.2924.87/third_party/cld_2/src/internal/cld_generated_cjk_uni_prop_80.cc 2017-02-09 10:38:38.319790897 -0500 -@@ -165,8 +165,8 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - // state[16 + 2] 0x000000 Byte 2 of 3 (relative offsets) - X__,X__,X__,X__,X__,X__,X__,X__, X__,X__,X__,X__,X__,X__,X__,X__, - X__,X__,X__,X__,X__,X__,X__,X__, X__,X__,X__,X__,X__,X__,X__,X__, ---14,-14,-14,-14,-14,-14,-14,-14, -14,-14,-14,-14,-14,-14,-14,-14, ---14,-14,-14,-14,-14,-14,-14,-14, -14,-14,-14,-14,-14,-14,-14,-14, -+(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14, (uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14, -+(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14, (uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14, - - // state[17 + 2] 0x0031c0 Byte 3 of 3 (property) - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -@@ -259,10 +259,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 229,229,229, 3,208, 0,229, 5, 233, 0,229,229,229,208,229,229, - - // state[32 + 2] 0x002000 Byte 2 of 3 (relative offsets) ---30,-30,-30,-30,-30,-30,-30,-30, -30,-30,-30,-30,-30,-30,-30,-30, ---30,-30,-30,-30,-30,-30,-30,-30, -30,-30,-30,-30,-30,-30,-30,-30, ---30,-30,-30,-30,-30,-30,-30,-30, -30,-30,-30,-30,-30,-30,-30,-30, ---30,-30,-30,-30,-30,-30,-30,-30, -30,-30,-30,-30,-30,-30,-30,-30, -+(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, (uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, -+(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, (uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, -+(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, (uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, -+(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, (uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, - - // state[33 + 2] 0x003780 Byte 3 of 3 (property) - 229,208,229,229,208,229,229,229, 208,208,208,208,208, 4, 6,208, -@@ -355,10 +355,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 228,229,229,229,229,233,233, 6, 208,229, 3,229,233, 6, 6, 0, - - // state[48 + 2] 0x001000 Byte 2 of 3 (relative offsets) ---46,-46,-46,-46,-42,-41,-40,-39, -46,-46,-46,-46,-46,-46,-46,-46, ---46,-46,-46,-46,-46,-46,-46,-46, -46,-46,-46,-46,-46,-46,-46,-46, ---46,-46,-46,-46,-46,-46,-46,-46, -46,-46,-46,-46,-46,-46,-46,-46, ---46,-46,-46,-46,-46,-46,-46,-46, -46,-46,-46,-46,-46,-46,-46,-46, -+(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-42,(uint8)-41,(uint8)-40,(uint8)-39, (uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, -+(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, (uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, -+(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, (uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, -+(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, (uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, - - // state[49 + 2] 0x003b40 Byte 3 of 3 (property) - 6,227,208,233,208, 3, 3,208, 208,229, 0,229,233,219, 0, 6, -@@ -451,10 +451,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 229,208,208,208,217,208,229,229, 229,229,208,217,208,229,229,229, - - // state[64 + 2] 0x003000 Byte 2 of 3 (relative offsets) ---54,-53,-52,-51,-50,-58,-49,-47, -62,-62,-62,-62,-62,-62,-62,-62, ---46,-45,-44,-43,-42,-41,-40,-39, -38,-37,-36,-35,-34,-33,-31,-30, ---29,-28,-27,-26,-25,-24,-23,-22, -21,-20,-19,-18,-17,-15,-14,-13, ---12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, -+(uint8)-54,(uint8)-53,(uint8)-52,(uint8)-51,(uint8)-50,(uint8)-58,(uint8)-49,(uint8)-47, (uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62, -+(uint8)-46,(uint8)-45,(uint8)-44,(uint8)-43,(uint8)-42,(uint8)-41,(uint8)-40,(uint8)-39, (uint8)-38,(uint8)-37,(uint8)-36,(uint8)-35,(uint8)-34,(uint8)-33,(uint8)-31,(uint8)-30, -+(uint8)-29,(uint8)-28,(uint8)-27,(uint8)-26,(uint8)-25,(uint8)-24,(uint8)-23,(uint8)-22, (uint8)-21,(uint8)-20,(uint8)-19,(uint8)-18,(uint8)-17,(uint8)-15,(uint8)-14,(uint8)-13, -+(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, - - // state[65 + 2] 0x003f00 Byte 3 of 3 (property) - 217,217,208, 3,208,217,208,208, 6,229,208,228,229,229,208,229, -@@ -547,10 +547,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 229,208,229,229,208,229,233, 0, 208,208,229,208,227,229,229,229, - - // state[80 + 2] 0x004000 Byte 2 of 3 (relative offsets) ---11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, -+(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, - 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, -- 38, 39, 40, 41, 42, 43, 44,-78, 45, 46, 47, 48, 49, 50, 51, 52, -+ 38, 39, 40, 41, 42, 43, 44,(uint8)-78, 45, 46, 47, 48, 49, 50, 51, 52, - - // state[81 + 2] 0x0042c0 Byte 3 of 3 (property) - 229, 0,229,229,229, 3, 4, 4, 229,229,229,229,208,229, 0,208, -@@ -931,7 +931,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 0,142, 98, 28,117,206,212,212, 220, 15, 0,231,199,231,111, 28, - - // state[144 + 2] 0x005000 Byte 2 of 3 (relative offsets) ---11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, -+(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, - 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, - 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, -@@ -1315,7 +1315,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 16, 15,211,118, 0,231, 68,231, 0, 99,161, 0,115,221,144,140, - - // state[208 + 2] 0x006000 Byte 2 of 3 (relative offsets) ---10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, -+(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, - 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, - 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, -@@ -1699,7 +1699,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 119, 16, 51, 0, 0, 68,136, 72, 144,118, 87,201,191,136, 78,233, - - // state[272 + 2] 0x007000 Byte 2 of 3 (relative offsets) -- -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, -+ (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, - 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, - 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, -@@ -2083,7 +2083,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 212,212, 0,126,140,220,220, 0, 0, 0,127,118,106, 0,199, 0, - - // state[336 + 2] 0x008000 Byte 2 of 3 (relative offsets) -- -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, 8, -+ (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, - 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, -@@ -2467,7 +2467,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 0,122, 0,231,100,232, 0, 0, 117, 0,206,231, 0, 0,231, 0, - - // state[400 + 2] 0x009000 Byte 2 of 3 (relative offsets) -- -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, 8, 9, -+ (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, 9, - 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, - 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, -@@ -2851,10 +2851,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - - // state[464 + 2] 0x00a000 Byte 2 of 3 (relative offsets) -- -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -- -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -- -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -- -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -+ (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, -+ (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, -+ (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, -+ (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, - - // state[465 + 2] 0x000080 Byte 2 of 2 (property) - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -@@ -2947,10 +2947,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 208,208,208,208, 5, 6,208, 2, 0, 6, 6, 5,208,208,208, 6, - - // state[480 + 2] 0x00b000 Byte 2 of 3 (relative offsets) ---20,-20,-20,-20,-20,-20,-20,-20, -20,-20,-20,-20,-20,-20,-20,-20, ---20,-20,-20,-20,-20,-20,-20,-20, -20,-20,-20,-20,-20,-20,-20,-20, ---20,-20,-20,-20,-20,-20,-20,-20, -20,-20,-20,-20,-20,-20,-20,-20, ---20,-20,-20,-20,-20,-20,-20,-20, -20,-20,-20,-20,-20,-20,-20,-20, -+(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, (uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, -+(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, (uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, -+(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, (uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, -+(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, (uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, - - // state[481 + 2] 0x020100 Byte 4 of 4 (property) - 2, 6, 5, 6, 5,229, 5,208, 208,208,208,208,208,208,208,229, -@@ -3043,10 +3043,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 208,208, 5, 5, 5,208,208, 2, 229, 5, 5, 5, 5, 5, 6,208, - - // state[496 + 2] 0x00d000 Byte 2 of 3 (relative offsets) ---35,-35,-35,-35,-35,-35,-35,-35, -35,-35,-35,-35,-35,-35,-35,-35, ---35,-35,-35,-35,-35,-35,-35,-35, -35,-35,-35,-35,-35,-35,-34,-33, ---33,-33,-33,-33,-33,-33,-33,-33, -33,-33,-33,-33,-33,-33,-33,-33, ---33,-33,-33,-33,-33,-33,-33,-33, -33,-33,-33,-33,-33,-33,-33,-33, -+(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35, (uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35, -+(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35, (uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-34,(uint8)-33, -+(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33, (uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33, -+(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33, (uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33, - - // state[497 + 2] 0x0204c0 Byte 4 of 4 (property) - 2, 2, 5, 5, 5, 2,208, 2, 5, 5, 6,208,208, 5, 5, 5, -@@ -3139,10 +3139,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 208,208, 5, 5, 5, 5, 6, 6, 208,208, 2,208,208,208,208,208, - - // state[512 + 2] 0x00f000 Byte 2 of 3 (relative offsets) ---47,-47,-47,-47,-47,-47,-47,-47, -47,-47,-47,-47,-47,-47,-47,-47, ---47,-47,-47,-47,-47,-47,-47,-47, -47,-47,-47,-47,-47,-47,-47,-47, ---47,-47,-47,-47,-46,-45,-44,-43, -42,-41,-44,-40,-47,-47,-47,-47, ---47,-47,-47,-47,-47,-47,-47,-47, -47,-47,-47,-47,-47,-39,-38,-37, -+(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, (uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, -+(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, (uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, -+(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-46,(uint8)-45,(uint8)-44,(uint8)-43, (uint8)-42,(uint8)-41,(uint8)-44,(uint8)-40,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, -+(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, (uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-39,(uint8)-38,(uint8)-37, - - // state[513 + 2] 0x020880 Byte 4 of 4 (property) - 5, 5, 5, 6,208,208,208,208, 208,208, 5, 5, 6, 6,208,208, -@@ -3235,10 +3235,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 5, 6,208,218,208,208,208,218, 208, 6,227,229, 6, 6, 6,208, - - // state[528 + 2] 0x020000 Byte 3 of 4 (relative offsets) ---52,-51,-50,-49,-47,-46,-45,-44, -43,-42,-41,-40,-39,-38,-37,-36, ---35,-34,-33,-31,-30,-29,-28,-27, -26,-25,-24,-23,-22,-21,-20,-19, ---18,-17,-15,-14,-13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -- -1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, -+(uint8)-52,(uint8)-51,(uint8)-50,(uint8)-49,(uint8)-47,(uint8)-46,(uint8)-45,(uint8)-44, (uint8)-43,(uint8)-42,(uint8)-41,(uint8)-40,(uint8)-39,(uint8)-38,(uint8)-37,(uint8)-36, -+(uint8)-35,(uint8)-34,(uint8)-33,(uint8)-31,(uint8)-30,(uint8)-29,(uint8)-28,(uint8)-27, (uint8)-26,(uint8)-25,(uint8)-24,(uint8)-23,(uint8)-22,(uint8)-21,(uint8)-20,(uint8)-19, -+(uint8)-18,(uint8)-17,(uint8)-15,(uint8)-14,(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, -+ (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, - - // state[529 + 2] 0x020c40 Byte 4 of 4 (property) - 227, 5, 5, 5, 2, 2, 2, 2, 213, 2, 2, 2, 2, 2,208, 6, -@@ -3427,7 +3427,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 208,208,208,208,208,208,208,208, 208, 6, 6, 6, 6, 2, 5, 5, - - // state[560 + 2] 0x021000 Byte 3 of 4 (relative offsets) ---16,-15,-14,-13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, -+(uint8)-16,(uint8)-15,(uint8)-14,(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, - 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, -@@ -3811,7 +3811,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 5, 5, 5, 6, 6, 6, 5,208, 208,229,208,208, 5, 5, 5, 5, - - // state[624 + 2] 0x022000 Byte 3 of 4 (relative offsets) ---15,-14,-13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, -+(uint8)-15,(uint8)-14,(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, - 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, - 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, - 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, -@@ -4195,7 +4195,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 6, 6, 4, 5,208,208,208,208, 208,208,229, 6, 5, 6, 6, 6, - - // state[688 + 2] 0x023000 Byte 3 of 4 (relative offsets) ---14,-13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, -+(uint8)-14,(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, - 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, - 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, - 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -@@ -4579,7 +4579,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 5, 5, 5, 5, 5, 5, 5, 6, 208,208,208,208,208,208, 6, 6, - - // state[752 + 2] 0x024000 Byte 3 of 4 (relative offsets) ---13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, -+(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, - 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, - 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, - 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, -@@ -4963,7 +4963,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 229, 6, 2, 2, 2, 2, 2, 2, 2, 2, 2, 5, 2, 2, 6,229, - - // state[816 + 2] 0x025000 Byte 3 of 4 (relative offsets) ---12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, -+(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, - 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, - 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, - 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, -@@ -5347,7 +5347,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 6, 6, 6, 5, 5, 5, 5, 6, 6, 6, 3, 6,229,208,208,229, - - // state[880 + 2] 0x026000 Byte 3 of 4 (relative offsets) ---11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, -+(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, - 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, - 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, -@@ -5731,7 +5731,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 208, 6, 6,208,208,208,208,208, 6, 6, 6,216, 5, 5, 5, 5, - - // state[944 + 2] 0x027000 Byte 3 of 4 (relative offsets) ---10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, -+(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, - 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, - 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, -@@ -6115,7 +6115,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 5, 5, 5, 6,208,208, 6, 6, 208,229,208,208,208, 5, 5, 5, - - // state[1008 + 2] 0x028000 Byte 3 of 4 (relative offsets) -- -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, -+ (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, - 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, - 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, -@@ -6499,7 +6499,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 208,208, 5, 5, 6,208,208, 5, 208,208,208, 6,208, 6,208,208, - - // state[1072 + 2] 0x029000 Byte 3 of 4 (relative offsets) -- -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, 8, -+ (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, - 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, -@@ -6883,7 +6883,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 229,229,229,229,208,208,208,229, 208,208,208,229, 0,229,208,208, - - // state[1136 + 2] 0x02a000 Byte 3 of 4 (relative offsets) -- -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, 8, 9, -+ (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, 9, - 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 22, 22, 22, - 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, - 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, -@@ -7075,10 +7075,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, - - // state[1168 + 2] 0x02f000 Byte 3 of 4 (relative offsets) -- -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -- -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -- -8, -7, -6, -5, -4, -3, -2, -1, 1, -9, -9, -9, -9, -9, -9, -9, -- -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -+ (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, -+ (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, -+ (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, -+ (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, - - // state[1169 + 2] 0x02fa00 Byte 4 of 4 (property) - 217, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,217, 5, 5, -diff -up chromium-56.0.2924.87/third_party/webgl/src/specs/latest/2.0/webgl2.idl.gcc5 chromium-56.0.2924.87/third_party/webgl/src/specs/latest/2.0/webgl2.idl ---- chromium-56.0.2924.87/third_party/webgl/src/specs/latest/2.0/webgl2.idl.gcc5 2017-02-01 21:03:57.000000000 -0500 -+++ chromium-56.0.2924.87/third_party/webgl/src/specs/latest/2.0/webgl2.idl 2017-02-09 10:38:38.380789675 -0500 -@@ -265,7 +265,7 @@ interface WebGL2RenderingContextBase - 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 -up chromium-56.0.2924.87/third_party/WebKit/Source/core/dom/NodeFilter.h.gcc5 chromium-56.0.2924.87/third_party/WebKit/Source/core/dom/NodeFilter.h ---- chromium-56.0.2924.87/third_party/WebKit/Source/core/dom/NodeFilter.h.gcc5 2017-02-01 21:03:09.000000000 -0500 -+++ chromium-56.0.2924.87/third_party/WebKit/Source/core/dom/NodeFilter.h 2017-02-09 10:38:38.387789535 -0500 -@@ -49,7 +49,7 @@ class NodeFilter final : public GarbageC - * to the value of NodeType for the equivalent node type. - */ - enum { -- kShowAll = 0xFFFFFFFF, -+ kShowAll = 256 /* 0xFFFFFFFF */, - kShowElement = 0x00000001, - kShowAttribute = 0x00000002, - kShowText = 0x00000004, -diff -up chromium-56.0.2924.87/third_party/WebKit/Source/core/dom/NodeFilter.idl.gcc5 chromium-56.0.2924.87/third_party/WebKit/Source/core/dom/NodeFilter.idl ---- chromium-56.0.2924.87/third_party/WebKit/Source/core/dom/NodeFilter.idl.gcc5 2017-02-01 21:03:09.000000000 -0500 -+++ chromium-56.0.2924.87/third_party/WebKit/Source/core/dom/NodeFilter.idl 2017-02-09 10:38:38.394789395 -0500 -@@ -30,7 +30,7 @@ - const unsigned short FILTER_SKIP = 3; - - // Constants for whatToShow -- const unsigned long SHOW_ALL = 0xFFFFFFFF; -+ const unsigned long SHOW_ALL = 256; // 0xFFFFFFFF - const unsigned long SHOW_ELEMENT = 0x1; - const unsigned long SHOW_ATTRIBUTE = 0x2; // historical - const unsigned long SHOW_TEXT = 0x4; -diff -up chromium-56.0.2924.87/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl.gcc5 chromium-56.0.2924.87/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl ---- chromium-56.0.2924.87/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl.gcc5 2017-02-01 21:03:09.000000000 -0500 -+++ chromium-56.0.2924.87/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl 2017-02-09 11:07:32.828682863 -0500 -@@ -239,7 +239,7 @@ typedef unsigned long long GLuint64; - 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; -@@ -269,7 +269,7 @@ typedef unsigned long long GLuint64; - const GLenum TEXTURE_IMMUTABLE_FORMAT = 0x912F; - const GLenum MAX_ELEMENT_INDEX = 0x8D6B; - const GLenum TEXTURE_IMMUTABLE_LEVELS = 0x82DF; -- const GLint TIMEOUT_IGNORED = -1; -+ const GLint TIMEOUT_IGNORED = 256; - - /* WebGL-specific enums */ - const GLenum MAX_CLIENT_WAIT_TIMEOUT_WEBGL = 0x9247; diff --git a/chromium-59.0.3071.115-ucontext-fix.patch b/chromium-59.0.3071.115-ucontext-fix.patch deleted file mode 100644 index 96bfadb..0000000 --- a/chromium-59.0.3071.115-ucontext-fix.patch +++ /dev/null @@ -1,214 +0,0 @@ -diff -up chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc.ucontextfix chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc ---- chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc.ucontextfix 2017-07-12 15:23:33.019591380 -0400 -+++ chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc 2017-07-12 15:32:52.069197546 -0400 -@@ -36,19 +36,19 @@ namespace google_breakpad { - - // Minidump defines register structures which are different from the raw - // structures which we get from the kernel. These are platform specific --// functions to juggle the ucontext and user structures into minidump format. -+// functions to juggle the ucontext_t and user structures into minidump format. - - #if defined(__i386__) - --uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) { -+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) { - return uc->uc_mcontext.gregs[REG_ESP]; - } - --uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) { -+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) { - return uc->uc_mcontext.gregs[REG_EIP]; - } - --void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc, -+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc, - const struct _libc_fpstate* fp) { - const greg_t* regs = uc->uc_mcontext.gregs; - -@@ -88,15 +88,15 @@ void UContextReader::FillCPUContext(RawC - - #elif defined(__x86_64) - --uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) { -+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) { - return uc->uc_mcontext.gregs[REG_RSP]; - } - --uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) { -+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) { - return uc->uc_mcontext.gregs[REG_RIP]; - } - --void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc, -+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc, - const struct _libc_fpstate* fpregs) { - const greg_t* regs = uc->uc_mcontext.gregs; - -@@ -145,15 +145,15 @@ void UContextReader::FillCPUContext(RawC - - #elif defined(__ARM_EABI__) - --uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) { -+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) { - return uc->uc_mcontext.arm_sp; - } - --uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) { -+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) { - return uc->uc_mcontext.arm_pc; - } - --void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc) { -+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc) { - out->context_flags = MD_CONTEXT_ARM_FULL; - - out->iregs[0] = uc->uc_mcontext.arm_r0; -@@ -184,15 +184,15 @@ void UContextReader::FillCPUContext(RawC - - #elif defined(__aarch64__) - --uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) { -+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) { - return uc->uc_mcontext.sp; - } - --uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) { -+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) { - return uc->uc_mcontext.pc; - } - --void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc, -+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc, - const struct fpsimd_context* fpregs) { - out->context_flags = MD_CONTEXT_ARM64_FULL; - -@@ -210,15 +210,15 @@ void UContextReader::FillCPUContext(RawC - - #elif defined(__mips__) - --uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) { -+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) { - return uc->uc_mcontext.gregs[MD_CONTEXT_MIPS_REG_SP]; - } - --uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) { -+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) { - return uc->uc_mcontext.pc; - } - --void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc) { -+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc) { - #if _MIPS_SIM == _ABI64 - out->context_flags = MD_CONTEXT_MIPS64_FULL; - #elif _MIPS_SIM == _ABIO32 -diff -up chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h.ucontextfix chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h ---- chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h.ucontextfix 2017-07-12 15:33:08.486806743 -0400 -+++ chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h 2017-07-12 15:33:57.299644808 -0400 -@@ -39,23 +39,23 @@ - - namespace google_breakpad { - --// Wraps platform-dependent implementations of accessors to ucontext structs. -+// Wraps platform-dependent implementations of accessors to ucontext_t structs. - struct UContextReader { -- static uintptr_t GetStackPointer(const struct ucontext* uc); -+ static uintptr_t GetStackPointer(const ucontext_t* uc); - -- static uintptr_t GetInstructionPointer(const struct ucontext* uc); -+ static uintptr_t GetInstructionPointer(const ucontext_t* uc); - -- // Juggle a arch-specific ucontext into a minidump format -+ // Juggle a arch-specific ucontext_t into a minidump format - // out: the minidump structure - // info: the collection of register structures. - #if defined(__i386__) || defined(__x86_64) -- static void FillCPUContext(RawContextCPU *out, const ucontext *uc, -+ static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc, - const struct _libc_fpstate* fp); - #elif defined(__aarch64__) -- static void FillCPUContext(RawContextCPU *out, const ucontext *uc, -+ static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc, - const struct fpsimd_context* fpregs); - #else -- static void FillCPUContext(RawContextCPU *out, const ucontext *uc); -+ static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc); - #endif - }; - -diff -up chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.cc.ucontextfix chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.cc ---- chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.cc.ucontextfix 2017-07-12 15:34:09.094364048 -0400 -+++ chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.cc 2017-07-12 15:35:36.483283853 -0400 -@@ -439,9 +439,9 @@ bool ExceptionHandler::HandleSignal(int - // Fill in all the holes in the struct to make Valgrind happy. - memset(&g_crash_context_, 0, sizeof(g_crash_context_)); - memcpy(&g_crash_context_.siginfo, info, sizeof(siginfo_t)); -- memcpy(&g_crash_context_.context, uc, sizeof(struct ucontext)); -+ memcpy(&g_crash_context_.context, uc, sizeof(ucontext_t)); - #if defined(__aarch64__) -- struct ucontext* uc_ptr = (struct ucontext*)uc; -+ ucontext_t* uc_ptr = (ucontext_t*)uc; - struct fpsimd_context* fp_ptr = - (struct fpsimd_context*)&uc_ptr->uc_mcontext.__reserved; - if (fp_ptr->head.magic == FPSIMD_MAGIC) { -@@ -450,9 +450,9 @@ bool ExceptionHandler::HandleSignal(int - } - #elif !defined(__ARM_EABI__) && !defined(__mips__) - // FP state is not part of user ABI on ARM Linux. -- // In case of MIPS Linux FP state is already part of struct ucontext -+ // In case of MIPS Linux FP state is already part of ucontext_t - // and 'float_state' is not a member of CrashContext. -- struct ucontext* uc_ptr = (struct ucontext*)uc; -+ ucontext_t* uc_ptr = (ucontext_t*)uc; - if (uc_ptr->uc_mcontext.fpregs) { - memcpy(&g_crash_context_.float_state, uc_ptr->uc_mcontext.fpregs, - sizeof(g_crash_context_.float_state)); -@@ -476,7 +476,7 @@ bool ExceptionHandler::SimulateSignalDel - // ExceptionHandler::HandleSignal(). - siginfo.si_code = SI_USER; - siginfo.si_pid = getpid(); -- struct ucontext context; -+ ucontext_t context; - getcontext(&context); - return HandleSignal(sig, &siginfo, &context); - } -diff -up chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.h.ucontextfix chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.h ---- chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.h.ucontextfix 2017-07-12 15:35:48.559996380 -0400 -+++ chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.h 2017-07-12 15:36:32.615948562 -0400 -@@ -191,11 +191,11 @@ class ExceptionHandler { - struct CrashContext { - siginfo_t siginfo; - pid_t tid; // the crashing thread. -- struct ucontext context; -+ ucontext_t context; - #if !defined(__ARM_EABI__) && !defined(__mips__) - // #ifdef this out because FP state is not part of user ABI for Linux ARM. - // In case of MIPS Linux FP state is already part of struct -- // ucontext so 'float_state' is not required. -+ // ucontext_t so 'float_state' is not required. - fpstate_t float_state; - #endif - }; -diff -up chromium-59.0.3071.115/breakpad/src/client/linux/microdump_writer/microdump_writer.cc.ucontextfix chromium-59.0.3071.115/breakpad/src/client/linux/microdump_writer/microdump_writer.cc ---- chromium-59.0.3071.115/breakpad/src/client/linux/microdump_writer/microdump_writer.cc.ucontextfix 2017-07-12 15:37:26.232674196 -0400 -+++ chromium-59.0.3071.115/breakpad/src/client/linux/microdump_writer/microdump_writer.cc 2017-07-12 15:37:39.032369973 -0400 -@@ -579,7 +579,7 @@ class MicrodumpWriter { - - void* Alloc(unsigned bytes) { return dumper_->allocator()->Alloc(bytes); } - -- const struct ucontext* const ucontext_; -+ const ucontext_t* const ucontext_; - #if !defined(__ARM_EABI__) && !defined(__mips__) - const google_breakpad::fpstate_t* const float_state_; - #endif -diff -up chromium-59.0.3071.115/breakpad/src/client/linux/minidump_writer/minidump_writer.cc.ucontextfix chromium-59.0.3071.115/breakpad/src/client/linux/minidump_writer/minidump_writer.cc ---- chromium-59.0.3071.115/breakpad/src/client/linux/minidump_writer/minidump_writer.cc.ucontextfix 2017-07-12 15:37:54.041013246 -0400 -+++ chromium-59.0.3071.115/breakpad/src/client/linux/minidump_writer/minidump_writer.cc 2017-07-12 15:38:19.600405748 -0400 -@@ -1323,7 +1323,7 @@ class MinidumpWriter { - const int fd_; // File descriptor where the minidum should be written. - const char* path_; // Path to the file where the minidum should be written. - -- const struct ucontext* const ucontext_; // also from the signal handler -+ const ucontext_t* const ucontext_; // also from the signal handler - #if !defined(__ARM_EABI__) && !defined(__mips__) - const google_breakpad::fpstate_t* const float_state_; // ditto - #endif diff --git a/chromium-59.0.3071.86-ffmpeg-stdatomic.patch b/chromium-59.0.3071.86-ffmpeg-stdatomic.patch deleted file mode 100644 index a512513..0000000 --- a/chromium-59.0.3071.86-ffmpeg-stdatomic.patch +++ /dev/null @@ -1,17 +0,0 @@ -diff -up chromium-59.0.3071.86/third_party/ffmpeg/libavutil/cpu.c.ffmpeg-stdatomic chromium-59.0.3071.86/third_party/ffmpeg/libavutil/cpu.c ---- chromium-59.0.3071.86/third_party/ffmpeg/libavutil/cpu.c.ffmpeg-stdatomic 2017-06-07 17:15:24.993945430 -0400 -+++ chromium-59.0.3071.86/third_party/ffmpeg/libavutil/cpu.c 2017-06-07 17:18:41.625997601 -0400 -@@ -17,7 +17,13 @@ - */ - - #include -+// GCC 4.8 didn't have stdatomic, but was advertising it. -+// https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58016 -+#if !defined(__clang__) && defined(__GNUC__) && (__GNUC__ == 4 || (__GNUC__ == 4 && (__GNUC_MINOR__ == 8))) -+#include -+#else - #include -+#endif - - #include "cpu.h" - #include "cpu_internal.h" diff --git a/chromium-59.0.3071.86-nullfix.patch b/chromium-59.0.3071.86-nullfix.patch deleted file mode 100644 index 20e9d18..0000000 --- a/chromium-59.0.3071.86-nullfix.patch +++ /dev/null @@ -1,43 +0,0 @@ -diff -up chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn.nullfix chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn ---- chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn.nullfix 2017-06-05 15:03:01.000000000 -0400 -+++ chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn 2017-06-07 15:32:43.531911624 -0400 -@@ -31,6 +31,7 @@ gcc_toolchain("arm64") { - ld = cxx - readelf = "${toolprefix}readelf" - nm = "${toolprefix}nm" -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - toolchain_args = { - current_cpu = "arm64" -@@ -49,6 +50,7 @@ gcc_toolchain("arm") { - ld = cxx - readelf = "${toolprefix}readelf" - nm = "${toolprefix}nm" -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - toolchain_args = { - current_cpu = "arm" -@@ -91,6 +93,7 @@ gcc_toolchain("x86") { - nm = "nm" - ar = "ar" - ld = cxx -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - # Output linker map files for binary size analysis. - enable_linker_map = true -@@ -136,6 +139,7 @@ gcc_toolchain("x64") { - nm = "nm" - ar = "ar" - ld = cxx -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - # Output linker map files for binary size analysis. - enable_linker_map = true -@@ -161,6 +165,7 @@ gcc_toolchain("mipsel") { - ld = cxx - readelf = "mipsel-linux-gnu-readelf" - nm = "mipsel-linux-gnu-nm" -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - toolchain_args = { - cc_wrapper = "" diff --git a/chromium-59.0.3071.86-system-clang.patch b/chromium-59.0.3071.86-system-clang.patch deleted file mode 100644 index 458834b..0000000 --- a/chromium-59.0.3071.86-system-clang.patch +++ /dev/null @@ -1,10 +0,0 @@ -diff -up chromium-59.0.3071.86/build/config/clang/clang.gni.system-clang chromium-59.0.3071.86/build/config/clang/clang.gni ---- chromium-59.0.3071.86/build/config/clang/clang.gni.system-clang 2017-06-11 20:57:07.327949687 -0400 -+++ chromium-59.0.3071.86/build/config/clang/clang.gni 2017-06-11 20:57:24.085620826 -0400 -@@ -9,5 +9,5 @@ declare_args() { - # coding guidelines, etc. Only used when compiling with Clang. - clang_use_chrome_plugins = is_clang && !is_nacl && !use_xcode_clang - -- clang_base_path = "//third_party/llvm-build/Release+Asserts" -+ clang_base_path = "/usr" - } diff --git a/chromium-60.0.3112.78-gn-system.patch b/chromium-60.0.3112.78-gn-system.patch deleted file mode 100644 index 60489bb..0000000 --- a/chromium-60.0.3112.78-gn-system.patch +++ /dev/null @@ -1,221 +0,0 @@ -diff -up chromium-60.0.3112.78/build/linux/unbundle/libjpeg.gn.gnsystem chromium-60.0.3112.78/build/linux/unbundle/libjpeg.gn ---- chromium-60.0.3112.78/build/linux/unbundle/libjpeg.gn.gnsystem 2017-07-25 15:04:48.000000000 -0400 -+++ chromium-60.0.3112.78/build/linux/unbundle/libjpeg.gn 2017-07-31 10:38:25.879951641 -0400 -@@ -16,6 +16,10 @@ source_set("libjpeg") { - libs = [ "jpeg" ] - } - -+config("system_libjpeg") { -+ defines = [ "USE_SYSTEM_LIBJPEG=1" ] -+} -+ - source_set("simd") { - } - -diff -up chromium-60.0.3112.78/build/linux/unbundle/libusb.gn.gnsystem chromium-60.0.3112.78/build/linux/unbundle/libusb.gn ---- chromium-60.0.3112.78/build/linux/unbundle/libusb.gn.gnsystem 2017-07-31 10:38:25.880951622 -0400 -+++ chromium-60.0.3112.78/build/linux/unbundle/libusb.gn 2017-07-31 10:38:25.879951641 -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-60.0.3112.78/build/linux/unbundle/opus.gn.gnsystem chromium-60.0.3112.78/build/linux/unbundle/opus.gn ---- chromium-60.0.3112.78/build/linux/unbundle/opus.gn.gnsystem 2017-07-25 15:04:48.000000000 -0400 -+++ chromium-60.0.3112.78/build/linux/unbundle/opus.gn 2017-07-31 10:38:25.880951622 -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-60.0.3112.78/build/linux/unbundle/replace_gn_files.py.gnsystem chromium-60.0.3112.78/build/linux/unbundle/replace_gn_files.py ---- chromium-60.0.3112.78/build/linux/unbundle/replace_gn_files.py.gnsystem 2017-07-31 10:38:25.880951622 -0400 -+++ chromium-60.0.3112.78/build/linux/unbundle/replace_gn_files.py 2017-07-31 10:39:58.067159914 -0400 -@@ -26,6 +26,7 @@ REPLACEMENTS = { - 'libevent': 'base/third_party/libevent/BUILD.gn', - 'libjpeg': 'build/secondary/third_party/libjpeg_turbo/BUILD.gn', - '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-60.0.3112.78-last-commit-position.patch b/chromium-60.0.3112.78-last-commit-position.patch deleted file mode 100644 index 7c26d9f..0000000 --- a/chromium-60.0.3112.78-last-commit-position.patch +++ /dev/null @@ -1,28 +0,0 @@ -diff -up chromium-60.0.3112.78/tools/gn/BUILD.gn.lastcommit chromium-60.0.3112.78/tools/gn/BUILD.gn ---- chromium-60.0.3112.78/tools/gn/BUILD.gn.lastcommit 2017-07-31 10:42:38.568041044 -0400 -+++ chromium-60.0.3112.78/tools/gn/BUILD.gn 2017-07-31 10:47:50.760974587 -0400 -@@ -268,7 +268,6 @@ executable("gn") { - - deps = [ - ":gn_lib", -- ":last_commit_position", - "//base", - "//build/config:exe_and_shlib_deps", - "//build/win:default_exe_manifest", -diff -up chromium-60.0.3112.78/tools/gn/gn_main.cc.lastcommit chromium-60.0.3112.78/tools/gn/gn_main.cc ---- chromium-60.0.3112.78/tools/gn/gn_main.cc.lastcommit 2017-07-25 15:05:19.000000000 -0400 -+++ chromium-60.0.3112.78/tools/gn/gn_main.cc 2017-07-31 10:42:38.568041044 -0400 -@@ -12,13 +12,7 @@ - #include "tools/gn/standard_out.h" - #include "tools/gn/switches.h" - --// Only the GN-generated build makes this header for now. --// TODO(brettw) consider adding this if we need it in GYP. --#if defined(GN_BUILD) --#include "tools/gn/last_commit_position.h" --#else - #define LAST_COMMIT_POSITION "UNKNOWN" --#endif - - namespace { - diff --git a/chromium-60.0.3112.78-no-zlib-mangle.patch b/chromium-60.0.3112.78-no-zlib-mangle.patch deleted file mode 100644 index 4b90360..0000000 --- a/chromium-60.0.3112.78-no-zlib-mangle.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -up chromium-60.0.3112.78/third_party/zlib/zconf.h.nozmangle chromium-60.0.3112.78/third_party/zlib/zconf.h ---- chromium-60.0.3112.78/third_party/zlib/zconf.h.nozmangle 2017-08-04 10:45:17.509152089 -0400 -+++ chromium-60.0.3112.78/third_party/zlib/zconf.h 2017-08-04 10:45:30.451902380 -0400 -@@ -8,9 +8,6 @@ - #ifndef ZCONF_H - #define ZCONF_H - --/* This include does prefixing as below, but with an updated set of names */ --#include "names.h" -- - /* - * If you *really* need a unique prefix for all types and library functions, - * compile with -DZ_PREFIX. The "standard" zlib should be compiled without it. diff --git a/chromium-60.0.3112.90-vulkan-force-c99.patch b/chromium-60.0.3112.90-vulkan-force-c99.patch deleted file mode 100644 index 881aa91..0000000 --- a/chromium-60.0.3112.90-vulkan-force-c99.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-60.0.3112.90/third_party/angle/src/vulkan_support/BUILD.gn.c99 chromium-60.0.3112.90/third_party/angle/src/vulkan_support/BUILD.gn ---- chromium-60.0.3112.90/third_party/angle/src/vulkan_support/BUILD.gn.c99 2017-08-14 10:40:48.028799820 -0400 -+++ chromium-60.0.3112.90/third_party/angle/src/vulkan_support/BUILD.gn 2017-08-14 10:41:43.054734910 -0400 -@@ -180,6 +180,7 @@ config("vulkan_internal_config") { - cflags += [ "-Wno-ignored-attributes" ] - } - if (is_linux) { -+ cflags += [ "-std=c99" ] - defines += [ - "SYSCONFDIR=\"/etc\"", - "FALLBACK_CONFIG_DIRS=\"/etc/xdg\"", diff --git a/chromium-61.0.3163.79-aarch64-glibc-2.26.90.patch b/chromium-61.0.3163.79-aarch64-glibc-2.26.90.patch deleted file mode 100644 index 12e88d2..0000000 --- a/chromium-61.0.3163.79-aarch64-glibc-2.26.90.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-61.0.3163.79/breakpad/src/client/linux/handler/exception_handler.cc.aarch64glibc chromium-61.0.3163.79/breakpad/src/client/linux/handler/exception_handler.cc ---- chromium-61.0.3163.79/breakpad/src/client/linux/handler/exception_handler.cc.aarch64glibc 2017-09-12 10:12:25.375736650 -0400 -+++ chromium-61.0.3163.79/breakpad/src/client/linux/handler/exception_handler.cc 2017-09-12 10:14:42.339638321 -0400 -@@ -461,7 +461,7 @@ bool ExceptionHandler::HandleSignal(int - #if defined(__aarch64__) - ucontext_t* uc_ptr = (ucontext_t*)uc; - struct fpsimd_context* fp_ptr = -- (struct fpsimd_context*)&uc_ptr->uc_mcontext.__reserved; -+ (struct fpsimd_context*)&uc_ptr->uc_mcontext.__glibc_reserved1; - if (fp_ptr->head.magic == FPSIMD_MAGIC) { - memcpy(&g_crash_context_.float_state, fp_ptr, - sizeof(g_crash_context_.float_state)); diff --git a/chromium-61.0.3163.79-fix-ffmpeg-aarch64.patch b/chromium-61.0.3163.79-fix-ffmpeg-aarch64.patch deleted file mode 100644 index a8c7260..0000000 --- a/chromium-61.0.3163.79-fix-ffmpeg-aarch64.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-61.0.3163.79/third_party/ffmpeg/ffmpeg_generated.gni.aarch64 chromium-61.0.3163.79/third_party/ffmpeg/ffmpeg_generated.gni ---- chromium-61.0.3163.79/third_party/ffmpeg/ffmpeg_generated.gni.aarch64 2017-09-06 14:34:36.247232957 -0400 -+++ chromium-61.0.3163.79/third_party/ffmpeg/ffmpeg_generated.gni 2017-09-06 14:36:37.632892363 -0400 -@@ -537,7 +537,7 @@ if (use_linux_config && current_cpu == " - ] - } - --if ((is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS")) { -+if ((is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chromium")) { - ffmpeg_c_sources += [ - "libavcodec/aarch64/mpegaudiodsp_init.c", - ] diff --git a/chromium-61.0.3163.79-setopaque.patch b/chromium-61.0.3163.79-setopaque.patch deleted file mode 100644 index b797d10..0000000 --- a/chromium-61.0.3163.79-setopaque.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-61.0.3163.79/cc/blink/web_layer_impl.h.setopaque chromium-61.0.3163.79/cc/blink/web_layer_impl.h ---- chromium-61.0.3163.79/cc/blink/web_layer_impl.h.setopaque 2017-09-06 13:55:45.454175023 -0400 -+++ chromium-61.0.3163.79/cc/blink/web_layer_impl.h 2017-09-06 13:58:02.395533936 -0400 -@@ -71,7 +71,7 @@ class CC_BLINK_EXPORT WebLayerImpl : pub - bool IsRootForIsolatedGroup() override; - void SetShouldHitTest(bool should_hit_test) override; - bool ShouldHitTest() override; -- void SetOpaque(bool opaque) override; -+ CC_BLINK_EXPORT void SetOpaque(bool opaque) override; - bool Opaque() const override; - void SetPosition(const blink::WebFloatPoint& position) override; - blink::WebFloatPoint GetPosition() const override; diff --git a/chromium-62.0.3202.62-correct-cplusplus-check.patch b/chromium-62.0.3202.62-correct-cplusplus-check.patch deleted file mode 100644 index 39f8580..0000000 --- a/chromium-62.0.3202.62-correct-cplusplus-check.patch +++ /dev/null @@ -1,20 +0,0 @@ -diff -up chromium-62.0.3202.62/third_party/crc32c/src/include/crc32c/crc32c.h.fix-cplusplus-conditional chromium-62.0.3202.62/third_party/crc32c/src/include/crc32c/crc32c.h ---- chromium-62.0.3202.62/third_party/crc32c/src/include/crc32c/crc32c.h.fix-cplusplus-conditional 2017-10-17 15:12:35.000000000 -0400 -+++ chromium-62.0.3202.62/third_party/crc32c/src/include/crc32c/crc32c.h 2017-10-19 11:41:45.860279576 -0400 -@@ -38,6 +38,8 @@ inline uint32_t Crc32c(const std::string - // Visual Studio provides a header even in C++11 mode. When - // included, the header issues an #error. (C1189) - #if !defined(_MSC_VER) || __cplusplus >= 201703L -+// GCC issues an #error if __cplusplus <= 201402L -+#if defined(__GNUC__) && __cplusplus > 201402L - #include - - // Comptues the CRC32C of the bytes in the string_view. -@@ -46,6 +48,7 @@ inline uint32_t Crc32c(const std::string - string_view.size()); - } - -+#endif // defined(__GNUC__) && __cplusplus > 201402L - #endif // !defined(_MSC_VER) || __cplusplus >= 201703L - #endif // __has_include() - #endif // defined(__has_include) diff --git a/chromium-62.0.3202.62-dde535-gcc-fix.patch b/chromium-62.0.3202.62-dde535-gcc-fix.patch deleted file mode 100644 index 378403a..0000000 --- a/chromium-62.0.3202.62-dde535-gcc-fix.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -up chromium-62.0.3202.62/services/resource_coordinator/resource_coordinator_service.cc.dde535 chromium-62.0.3202.62/services/resource_coordinator/resource_coordinator_service.cc ---- chromium-62.0.3202.62/services/resource_coordinator/resource_coordinator_service.cc.dde535 2017-10-18 10:04:33.237966223 -0400 -+++ chromium-62.0.3202.62/services/resource_coordinator/resource_coordinator_service.cc 2017-10-18 10:05:00.442438694 -0400 -@@ -18,7 +18,8 @@ std::unique_ptr(); - -- return resource_coordinator_service; -+ return std::unique_ptr( -+ resource_coordinator_service.release()); - } - - ResourceCoordinatorService::ResourceCoordinatorService() diff --git a/chromium-62.0.3202.62-enable-mp3.patch b/chromium-62.0.3202.62-enable-mp3.patch deleted file mode 100644 index 3ed9dbf..0000000 --- a/chromium-62.0.3202.62-enable-mp3.patch +++ /dev/null @@ -1,484 +0,0 @@ -diff -up chromium-62.0.3202.62/components/neterror/resources/sounds/button-press.mp3 chromium-62.0.3202.62/components/neterror/resources/sounds/button-press -diff -up chromium-62.0.3202.62/components/neterror/resources/sounds/hit.mp3 chromium-62.0.3202.62/components/neterror/resources/sounds/hit -diff -up chromium-62.0.3202.62/components/neterror/resources/sounds/score-reached.mp3 chromium-62.0.3202.62/components/neterror/resources/sounds/score-reached -diff -up chromium-62.0.3202.62/media/base/mime_util_internal.cc.mp3 chromium-62.0.3202.62/media/base/mime_util_internal.cc ---- chromium-62.0.3202.62/media/base/mime_util_internal.cc.mp3 2017-10-17 15:10:44.000000000 -0400 -+++ chromium-62.0.3202.62/media/base/mime_util_internal.cc 2017-10-18 09:32:16.957562156 -0400 -@@ -266,15 +266,19 @@ void MimeUtil::AddSupportedMediaFormats( - CodecSet webm_codecs(webm_audio_codecs); - webm_codecs.insert(webm_video_codecs.begin(), webm_video_codecs.end()); - --#if BUILDFLAG(USE_PROPRIETARY_CODECS) - const CodecSet mp3_codecs{MP3}; -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - const CodecSet aac{MPEG2_AAC, MPEG4_AAC}; -+#else -+ const CodecSet aac{}; -+#endif -+ CodecSet mp4_audio_codecs(aac); -+ mp4_audio_codecs.emplace(MP3); - -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - CodecSet avc_and_aac(aac); - avc_and_aac.emplace(H264); - -- CodecSet mp4_audio_codecs(aac); -- mp4_audio_codecs.emplace(MP3); - mp4_audio_codecs.emplace(FLAC); - #if BUILDFLAG(ENABLE_AC3_EAC3_AUDIO_DEMUXING) - mp4_audio_codecs.emplace(AC3); -@@ -311,10 +315,10 @@ void MimeUtil::AddSupportedMediaFormats( - AddContainerWithCodecs("application/ogg", ogg_codecs, false); - AddContainerWithCodecs("audio/flac", implicit_codec, false); - --#if BUILDFLAG(USE_PROPRIETARY_CODECS) - AddContainerWithCodecs("audio/mpeg", mp3_codecs, true); // Allow "mp3". - AddContainerWithCodecs("audio/mp3", implicit_codec, true); - AddContainerWithCodecs("audio/x-mp3", implicit_codec, true); -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - AddContainerWithCodecs("audio/aac", implicit_codec, true); // AAC / ADTS. - AddContainerWithCodecs("audio/mp4", mp4_audio_codecs, true); - DCHECK(!mp4_video_codecs.empty()); -@@ -920,7 +924,6 @@ bool MimeUtil::IsCodecProprietary(Codec - case INVALID_CODEC: - case AC3: - case EAC3: -- case MP3: - case MPEG2_AAC: - case MPEG4_AAC: - case H264: -@@ -928,6 +931,7 @@ bool MimeUtil::IsCodecProprietary(Codec - case DOLBY_VISION: - return true; - -+ case MP3: - case PCM: - case VORBIS: - case OPUS: -diff -up chromium-62.0.3202.62/media/formats/BUILD.gn.mp3 chromium-62.0.3202.62/media/formats/BUILD.gn ---- chromium-62.0.3202.62/media/formats/BUILD.gn.mp3 2017-10-17 15:10:45.000000000 -0400 -+++ chromium-62.0.3202.62/media/formats/BUILD.gn 2017-10-18 09:25:18.353676481 -0400 -@@ -17,6 +17,14 @@ source_set("formats") { - "ac3/ac3_util.h", - "common/offset_byte_queue.cc", - "common/offset_byte_queue.h", -+ "mpeg/adts_constants.cc", -+ "mpeg/adts_constants.h", -+ "mpeg/adts_stream_parser.cc", -+ "mpeg/adts_stream_parser.h", -+ "mpeg/mpeg1_audio_stream_parser.cc", -+ "mpeg/mpeg1_audio_stream_parser.h", -+ "mpeg/mpeg_audio_stream_parser_base.cc", -+ "mpeg/mpeg_audio_stream_parser_base.h", - "webm/webm_audio_client.cc", - "webm/webm_audio_client.h", - "webm/webm_cluster_parser.cc", -@@ -78,14 +86,6 @@ source_set("formats") { - "mp4/sample_to_group_iterator.h", - "mp4/track_run_iterator.cc", - "mp4/track_run_iterator.h", -- "mpeg/adts_constants.cc", -- "mpeg/adts_constants.h", -- "mpeg/adts_stream_parser.cc", -- "mpeg/adts_stream_parser.h", -- "mpeg/mpeg1_audio_stream_parser.cc", -- "mpeg/mpeg1_audio_stream_parser.h", -- "mpeg/mpeg_audio_stream_parser_base.cc", -- "mpeg/mpeg_audio_stream_parser_base.h", - ] - } - -diff -up chromium-62.0.3202.62/third_party/catapult/third_party/gsutil/gslib/tests/test_data/test.mp3 chromium-62.0.3202.62/third_party/catapult/third_party/gsutil/gslib/tests/test_data/test -diff -up chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h.mp3 chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h ---- chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h.mp3 2017-10-18 09:05:31.000000000 -0400 -+++ chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h 2017-10-18 09:25:18.354676462 -0400 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/chrome/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-cross-compile --cross-prefix=/usr/bin/aarch64-linux-gnu- --target-os=linux --arch=aarch64 --enable-armv8 --extra-cflags='-march=armv8-a' --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/chrome/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-cross-compile --cross-prefix=/usr/bin/aarch64-linux-gnu- --target-os=linux --arch=aarch64 --enable-armv8 --extra-cflags='-march=armv8-a' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -542,7 +542,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -620,9 +620,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -968,7 +968,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1275,7 +1275,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2217,7 +2217,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h.mp3 chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h ---- chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h.mp3 2017-10-18 09:05:31.000000000 -0400 -+++ chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h 2017-10-18 09:25:18.355676443 -0400 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/jrummell/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --disable-neon --extra-cflags='-mfpu=vfpv3-d16' --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/jrummell/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --disable-neon --extra-cflags='-mfpu=vfpv3-d16' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -542,7 +542,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -620,9 +620,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -968,7 +968,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1275,7 +1275,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2217,7 +2217,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h.mp3 chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h ---- chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h.mp3 2017-10-18 09:05:31.000000000 -0400 -+++ chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h 2017-10-18 09:25:18.360676348 -0400 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/jrummell/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --enable-neon --extra-cflags='-mfpu=neon' --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/jrummell/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --enable-neon --extra-cflags='-mfpu=neon' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -542,7 +542,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -620,9 +620,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -968,7 +968,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1275,7 +1275,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2217,7 +2217,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h.mp3 chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h ---- chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h.mp3 2017-10-18 09:05:31.000000000 -0400 -+++ chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h 2017-10-18 09:25:18.360676348 -0400 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/chrome/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=i686 --extra-cflags='\"-m32\"' --extra-ldflags='\"-m32\"' --enable-yasm --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/chrome/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=i686 --extra-cflags='\"-m32\"' --extra-ldflags='\"-m32\"' --enable-yasm --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -542,7 +542,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -620,9 +620,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -968,7 +968,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1275,7 +1275,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2217,7 +2217,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h.mp3 chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h ---- chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h.mp3 2017-10-18 09:05:31.000000000 -0400 -+++ chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h 2017-10-18 09:25:18.361676329 -0400 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/chrome/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-lto --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/chrome/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-lto --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -542,7 +542,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -620,9 +620,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -968,7 +968,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1275,7 +1275,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2217,7 +2217,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-62.0.3202.62/third_party/ffmpeg/ffmpeg_generated.gni.mp3 chromium-62.0.3202.62/third_party/ffmpeg/ffmpeg_generated.gni ---- chromium-62.0.3202.62/third_party/ffmpeg/ffmpeg_generated.gni.mp3 2017-10-18 09:05:28.000000000 -0400 -+++ chromium-62.0.3202.62/third_party/ffmpeg/ffmpeg_generated.gni 2017-10-18 09:25:18.362676310 -0400 -@@ -182,17 +182,9 @@ if ((is_mac) || (is_win) || (use_linux_c - ] - } - --if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mips64el" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { -+if ((current_cpu == "x64") || (is_android && current_cpu == "arm" && arm_use_neon) || (is_android && current_cpu == "arm64") || (is_android && current_cpu == "mips64el") || (is_android && current_cpu == "mipsel") || (is_android && current_cpu == "x86") || (is_win) || (use_linux_config && current_cpu == "arm" && arm_use_neon) || (use_linux_config && current_cpu == "arm" && arm_use_neon) || (use_linux_config && current_cpu == "arm") || (use_linux_config && current_cpu == "arm") || (use_linux_config && current_cpu == "arm64") || (use_linux_config && current_cpu == "mipsel") || (use_linux_config && current_cpu == "x64") || (use_linux_config && current_cpu == "x86")) { - ffmpeg_c_sources += [ -- "libavcodec/aac_ac3_parser.c", -- "libavcodec/aac_parser.c", -- "libavcodec/aacadtsdec.c", -- "libavcodec/aacps_float.c", -- "libavcodec/aacpsdsp_float.c", -- "libavcodec/aacsbr.c", -- "libavcodec/aactab.c", - "libavcodec/ac3tab.c", -- "libavcodec/autorename_libavcodec_aacdec.c", - "libavcodec/autorename_libavcodec_mpegaudiodsp.c", - "libavcodec/autorename_libavcodec_sbrdsp.c", - "libavcodec/cbrt_data.c", -@@ -210,7 +202,6 @@ if ((current_cpu == "x64" && ffmpeg_bran - "libavcodec/mpegaudiodsp_float.c", - "libavcodec/sinewin.c", - "libavcodec/sinewin_fixed.c", -- "libavformat/aacdec.c", - "libavformat/apetag.c", - "libavformat/img2.c", - "libavformat/mov.c", -@@ -219,6 +210,20 @@ if ((current_cpu == "x64" && ffmpeg_bran - ] - } - -+if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mips64el" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { -+ ffmpeg_c_sources += [ -+ "libavcodec/aac_ac3_parser.c", -+ "libavcodec/aac_parser.c", -+ "libavcodec/aacadtsdec.c", -+ "libavcodec/aacps_float.c", -+ "libavcodec/aacpsdsp_float.c", -+ "libavcodec/aacsbr.c", -+ "libavcodec/aactab.c", -+ "libavcodec/autorename_libavcodec_aacdec.c", -+ "libavformat/aacdec.c", -+ ] -+} -+ - if ((is_android && current_cpu == "x64") || (is_android && current_cpu == "x86") || (is_mac) || (is_win) || (use_linux_config && current_cpu == "x64") || (use_linux_config && current_cpu == "x86")) { - ffmpeg_c_sources += [ - "libavcodec/x86/autorename_libavcodec_x86_vorbisdsp_init.c", -@@ -322,15 +327,19 @@ if ((is_mac) || (is_win) || (use_linux_c - if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { - ffmpeg_c_sources += [ - "libavcodec/x86/aacpsdsp_init.c", -+ ] -+ ffmpeg_yasm_sources += [ -+ "libavcodec/x86/aacpsdsp.asm", -+ ] -+} -+ -+if ((current_cpu == "x64") || (is_android && current_cpu == "x86") || (use_linux_config && current_cpu == "x64") || (use_linux_config && current_cpu == "x86") || (is_win)) { -+ ffmpeg_c_sources += [ - "libavcodec/x86/dct_init.c", - "libavcodec/x86/mpegaudiodsp.c", - "libavcodec/x86/sbrdsp_init.c", - ] --} -- --if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { - ffmpeg_yasm_sources += [ -- "libavcodec/x86/aacpsdsp.asm", - "libavcodec/x86/dct32.asm", - "libavcodec/x86/imdct36.asm", - "libavcodec/x86/sbrdsp.asm", -diff -up chromium-62.0.3202.62/third_party/ffmpeg/libavcodec/sbrdsp.c.mp3 chromium-62.0.3202.62/third_party/ffmpeg/libavcodec/sbrdsp.c ---- chromium-62.0.3202.62/third_party/ffmpeg/libavcodec/sbrdsp.c.mp3 2017-10-18 09:05:30.000000000 -0400 -+++ chromium-62.0.3202.62/third_party/ffmpeg/libavcodec/sbrdsp.c 2017-10-18 09:25:18.362676310 -0400 -@@ -23,6 +23,7 @@ - #define USE_FIXED 0 - - #include "aac.h" -+#include "aacsbrdata.h" - #include "config.h" - #include "libavutil/attributes.h" - #include "libavutil/intfloat.h" -diff -up chromium-62.0.3202.62/third_party/webrtc/examples/objc/AppRTCMobile/ios/resources/mozart.mp3 chromium-62.0.3202.62/third_party/webrtc/examples/objc/AppRTCMobile/ios/resources/mozart -diff -up chromium-62.0.3202.62/tools/android/audio_focus_grabber/java/res/raw/ping.mp3 chromium-62.0.3202.62/tools/android/audio_focus_grabber/java/res/raw/ping diff --git a/chromium-62.0.3202.62-epel7-no-nullptr-assignment-on-StructPtr.patch b/chromium-62.0.3202.62-epel7-no-nullptr-assignment-on-StructPtr.patch deleted file mode 100644 index 7af702a..0000000 --- a/chromium-62.0.3202.62-epel7-no-nullptr-assignment-on-StructPtr.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-62.0.3202.62/third_party/WebKit/Source/platform/blob/BlobData.cpp.nonullptr chromium-62.0.3202.62/third_party/WebKit/Source/platform/blob/BlobData.cpp ---- chromium-62.0.3202.62/third_party/WebKit/Source/platform/blob/BlobData.cpp.nonullptr 2017-10-18 10:10:14.216353575 -0400 -+++ chromium-62.0.3202.62/third_party/WebKit/Source/platform/blob/BlobData.cpp 2017-10-18 10:10:23.657170980 -0400 -@@ -295,7 +295,7 @@ BlobDataHandle::BlobDataHandle(std::uniq - - size_t current_memory_population = 0; - Vector elements; -- const DataElementPtr null_element = nullptr; -+ const DataElementPtr null_element; - BlobBytesProvider* last_bytes_provider = nullptr; - RefPtr file_runner = Platform::Current()->FileTaskRunner(); - diff --git a/chromium-62.0.3202.62-gcc-nc.patch b/chromium-62.0.3202.62-gcc-nc.patch deleted file mode 100644 index 0a74d25..0000000 --- a/chromium-62.0.3202.62-gcc-nc.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-62.0.3202.62/content/network/network_service_impl.cc.gcc-nc chromium-62.0.3202.62/content/network/network_service_impl.cc ---- chromium-62.0.3202.62/content/network/network_service_impl.cc.gcc-nc 2017-10-18 10:07:04.045041261 -0400 -+++ chromium-62.0.3202.62/content/network/network_service_impl.cc 2017-10-18 10:07:53.175088528 -0400 -@@ -90,6 +90,7 @@ NetworkServiceImpl::CreateNetworkContext - base::MakeUnique(this, std::move(request), - std::move(params), std::move(builder)); - *url_request_context = network_context->url_request_context(); -+ return std::unique_ptr(network_context.release()); - return network_context; - } - diff --git a/chromium-62.0.3202.62-gcc7.patch b/chromium-62.0.3202.62-gcc7.patch deleted file mode 100644 index 90d177d..0000000 --- a/chromium-62.0.3202.62-gcc7.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-62.0.3202.62/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 chromium-62.0.3202.62/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h ---- chromium-62.0.3202.62/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 2017-10-18 09:20:04.072765163 -0400 -+++ chromium-62.0.3202.62/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h 2017-10-18 09:21:40.156905187 -0400 -@@ -9,6 +9,7 @@ - #include "platform/graphics/WebGraphicsContext3DProviderWrapper.h" - #include "platform/wtf/ThreadSpecific.h" - -+#include - #include - - namespace blink { diff --git a/chromium-62.0.3202.62-rvalue-fix.patch b/chromium-62.0.3202.62-rvalue-fix.patch deleted file mode 100644 index 89197cd..0000000 --- a/chromium-62.0.3202.62-rvalue-fix.patch +++ /dev/null @@ -1,45 +0,0 @@ -diff -up chromium-62.0.3202.62/chrome/browser/ui/webui/settings/on_startup_handler.cc.another-rvalue-fix chromium-62.0.3202.62/chrome/browser/ui/webui/settings/on_startup_handler.cc ---- chromium-62.0.3202.62/chrome/browser/ui/webui/settings/on_startup_handler.cc.another-rvalue-fix 2017-10-18 10:15:58.855675480 -0400 -+++ chromium-62.0.3202.62/chrome/browser/ui/webui/settings/on_startup_handler.cc 2017-10-18 10:16:28.925093301 -0400 -@@ -77,7 +77,7 @@ std::unique_ptr OnStartupHa - !extensions::ExtensionSystem::Get(profile_) - ->management_policy() - ->MustRemainEnabled(ntp_extension, nullptr)); -- return dict; -+ return std::move(dict); - } - - void OnStartupHandler::HandleGetNtpExtension(const base::ListValue* args) { -diff -up chromium-62.0.3202.62/ui/views/animation/ink_drop_host_view.cc.another-rvalue-fix chromium-62.0.3202.62/ui/views/animation/ink_drop_host_view.cc ---- chromium-62.0.3202.62/ui/views/animation/ink_drop_host_view.cc.another-rvalue-fix 2017-10-18 10:15:16.408497853 -0400 -+++ chromium-62.0.3202.62/ui/views/animation/ink_drop_host_view.cc 2017-10-18 10:15:43.793967075 -0400 -@@ -305,7 +305,7 @@ std::unique_ptr InkDropHost - base::MakeUnique(this, size()); - ink_drop->SetAutoHighlightMode( - views::InkDropImpl::AutoHighlightMode::HIDE_ON_RIPPLE); -- return ink_drop; -+ return std:move(ink_drop); - } - - std::unique_ptr -@@ -314,7 +314,7 @@ InkDropHostView::CreateDefaultFloodFillI - InkDropHostView::CreateDefaultInkDropImpl(); - ink_drop->SetAutoHighlightMode( - views::InkDropImpl::AutoHighlightMode::SHOW_ON_RIPPLE); -- return ink_drop; -+ return std:move(ink_drop); - } - - } // namespace views -diff -up chromium-62.0.3202.62/ui/views/controls/button/checkbox.cc.another-rvalue-fix chromium-62.0.3202.62/ui/views/controls/button/checkbox.cc ---- chromium-62.0.3202.62/ui/views/controls/button/checkbox.cc.another-rvalue-fix 2017-10-18 10:14:18.054627919 -0400 -+++ chromium-62.0.3202.62/ui/views/controls/button/checkbox.cc 2017-10-18 10:14:42.265159378 -0400 -@@ -198,7 +198,7 @@ std::unique_ptr Checkbox::Creat - std::unique_ptr ink_drop = CreateDefaultInkDropImpl(); - ink_drop->SetShowHighlightOnHover(false); - ink_drop->SetAutoHighlightMode(InkDropImpl::AutoHighlightMode::NONE); -- return ink_drop; -+ return std::move(ink_drop); - } - - std::unique_ptr Checkbox::CreateInkDropRipple() const { diff --git a/chromium-63.0.3289.84-aarch64-glibc-2.26.90.patch b/chromium-63.0.3289.84-aarch64-glibc-2.26.90.patch deleted file mode 100644 index 469d680..0000000 --- a/chromium-63.0.3289.84-aarch64-glibc-2.26.90.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-63.0.3239.84/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc.aarch64glibc chromium-63.0.3239.84/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc ---- chromium-63.0.3239.84/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc.aarch64glibc 2017-12-12 09:56:24.469343868 -0500 -+++ chromium-63.0.3239.84/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc 2017-12-12 09:56:38.468071095 -0500 -@@ -461,7 +461,7 @@ bool ExceptionHandler::HandleSignal(int - #if defined(__aarch64__) - ucontext_t* uc_ptr = (ucontext_t*)uc; - struct fpsimd_context* fp_ptr = -- (struct fpsimd_context*)&uc_ptr->uc_mcontext.__reserved; -+ (struct fpsimd_context*)&uc_ptr->uc_mcontext.__glibc_reserved1; - if (fp_ptr->head.magic == FPSIMD_MAGIC) { - memcpy(&g_crash_context_.float_state, fp_ptr, - sizeof(g_crash_context_.float_state)); diff --git a/chromium-63.0.3289.84-enable-mp3.patch b/chromium-63.0.3289.84-enable-mp3.patch deleted file mode 100644 index 91a331a..0000000 --- a/chromium-63.0.3289.84-enable-mp3.patch +++ /dev/null @@ -1,485 +0,0 @@ -diff -up chromium-63.0.3239.84/components/neterror/resources/sounds/button-press.mp3 chromium-63.0.3239.84/components/neterror/resources/sounds/button-press -diff -up chromium-63.0.3239.84/components/neterror/resources/sounds/hit.mp3 chromium-63.0.3239.84/components/neterror/resources/sounds/hit -diff -up chromium-63.0.3239.84/components/neterror/resources/sounds/score-reached.mp3 chromium-63.0.3239.84/components/neterror/resources/sounds/score-reached -diff -up chromium-63.0.3239.84/media/base/mime_util_internal.cc.mp3 chromium-63.0.3239.84/media/base/mime_util_internal.cc ---- chromium-63.0.3239.84/media/base/mime_util_internal.cc.mp3 2017-12-06 15:05:29.000000000 -0500 -+++ chromium-63.0.3239.84/media/base/mime_util_internal.cc 2017-12-07 10:52:02.472510232 -0500 -@@ -266,15 +266,19 @@ void MimeUtil::AddSupportedMediaFormats( - CodecSet webm_codecs(webm_audio_codecs); - webm_codecs.insert(webm_video_codecs.begin(), webm_video_codecs.end()); - --#if BUILDFLAG(USE_PROPRIETARY_CODECS) - const CodecSet mp3_codecs{MP3}; -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - const CodecSet aac{MPEG2_AAC, MPEG4_AAC}; -+#else -+ const CodecSet aac{}; -+#endif -+ CodecSet mp4_audio_codecs(aac); -+ mp4_audio_codecs.emplace(MP3); - -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - CodecSet avc_and_aac(aac); - avc_and_aac.emplace(H264); - -- CodecSet mp4_audio_codecs(aac); -- mp4_audio_codecs.emplace(MP3); - mp4_audio_codecs.emplace(FLAC); - #if BUILDFLAG(ENABLE_AC3_EAC3_AUDIO_DEMUXING) - mp4_audio_codecs.emplace(AC3); -@@ -311,10 +315,10 @@ void MimeUtil::AddSupportedMediaFormats( - AddContainerWithCodecs("application/ogg", ogg_codecs, false); - AddContainerWithCodecs("audio/flac", implicit_codec, false); - --#if BUILDFLAG(USE_PROPRIETARY_CODECS) - AddContainerWithCodecs("audio/mpeg", mp3_codecs, true); // Allow "mp3". - AddContainerWithCodecs("audio/mp3", implicit_codec, true); - AddContainerWithCodecs("audio/x-mp3", implicit_codec, true); -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - AddContainerWithCodecs("audio/aac", implicit_codec, true); // AAC / ADTS. - AddContainerWithCodecs("audio/mp4", mp4_audio_codecs, true); - DCHECK(!mp4_video_codecs.empty()); -@@ -935,7 +939,6 @@ bool MimeUtil::IsCodecProprietary(Codec - case INVALID_CODEC: - case AC3: - case EAC3: -- case MP3: - case MPEG2_AAC: - case MPEG4_AAC: - case H264: -@@ -943,6 +946,7 @@ bool MimeUtil::IsCodecProprietary(Codec - case DOLBY_VISION: - return true; - -+ case MP3: - case PCM: - case VORBIS: - case OPUS: -diff -up chromium-63.0.3239.84/media/formats/BUILD.gn.mp3 chromium-63.0.3239.84/media/formats/BUILD.gn ---- chromium-63.0.3239.84/media/formats/BUILD.gn.mp3 2017-12-06 15:05:29.000000000 -0500 -+++ chromium-63.0.3239.84/media/formats/BUILD.gn 2017-12-07 10:52:02.473510212 -0500 -@@ -20,6 +20,14 @@ source_set("formats") { - "ac3/ac3_util.h", - "common/offset_byte_queue.cc", - "common/offset_byte_queue.h", -+ "mpeg/adts_constants.cc", -+ "mpeg/adts_constants.h", -+ "mpeg/adts_stream_parser.cc", -+ "mpeg/adts_stream_parser.h", -+ "mpeg/mpeg1_audio_stream_parser.cc", -+ "mpeg/mpeg1_audio_stream_parser.h", -+ "mpeg/mpeg_audio_stream_parser_base.cc", -+ "mpeg/mpeg_audio_stream_parser_base.h", - "webm/webm_audio_client.cc", - "webm/webm_audio_client.h", - "webm/webm_cluster_parser.cc", -@@ -81,14 +89,6 @@ source_set("formats") { - "mp4/sample_to_group_iterator.h", - "mp4/track_run_iterator.cc", - "mp4/track_run_iterator.h", -- "mpeg/adts_constants.cc", -- "mpeg/adts_constants.h", -- "mpeg/adts_stream_parser.cc", -- "mpeg/adts_stream_parser.h", -- "mpeg/mpeg1_audio_stream_parser.cc", -- "mpeg/mpeg1_audio_stream_parser.h", -- "mpeg/mpeg_audio_stream_parser_base.cc", -- "mpeg/mpeg_audio_stream_parser_base.h", - ] - } - -diff -up chromium-63.0.3239.84/third_party/catapult/third_party/gsutil/gslib/tests/test_data/test.mp3 chromium-63.0.3239.84/third_party/catapult/third_party/gsutil/gslib/tests/test_data/test -diff -up chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h.mp3 chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h ---- chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h.mp3 2017-12-07 09:51:37.000000000 -0500 -+++ chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h 2017-12-07 11:08:41.116117073 -0500 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/blink3/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-cross-compile --cross-prefix=/usr/bin/aarch64-linux-gnu- --target-os=linux --arch=aarch64 --enable-armv8 --extra-cflags='-march=armv8-a' --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/blink3/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-cross-compile --cross-prefix=/usr/bin/aarch64-linux-gnu- --target-os=linux --arch=aarch64 --enable-armv8 --extra-cflags='-march=armv8-a' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -547,7 +547,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -626,9 +626,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -979,7 +979,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1292,7 +1292,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2267,7 +2267,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h.mp3 chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h ---- chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h.mp3 2017-12-07 09:51:37.000000000 -0500 -+++ chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h 2017-12-07 11:09:23.602291820 -0500 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/chcunningham/chrome_root/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --disable-neon --extra-cflags='-mfpu=vfpv3-d16' --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/chcunningham/chrome_root/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --disable-neon --extra-cflags='-mfpu=vfpv3-d16' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -547,7 +547,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -626,9 +626,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -979,7 +979,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1292,7 +1292,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2267,7 +2267,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h.mp3 chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h ---- chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h.mp3 2017-12-07 09:51:37.000000000 -0500 -+++ chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h 2017-12-07 11:09:49.945779754 -0500 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/chcunningham/chrome_root/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --enable-neon --extra-cflags='-mfpu=neon' --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/chcunningham/chrome_root/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --enable-neon --extra-cflags='-mfpu=neon' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -547,7 +547,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -626,9 +626,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -979,7 +979,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1292,7 +1292,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2267,7 +2267,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h.mp3 chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h ---- chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h.mp3 2017-12-07 09:51:37.000000000 -0500 -+++ chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h 2017-12-07 11:10:25.513089579 -0500 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/blink3/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=i686 --extra-cflags='\"-m32\"' --extra-ldflags='\"-m32\"' --enable-yasm --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/blink3/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=i686 --extra-cflags='\"-m32\"' --extra-ldflags='\"-m32\"' --enable-yasm --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -547,7 +547,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -626,9 +626,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -979,7 +979,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1292,7 +1292,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2267,7 +2267,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h.mp3 chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h ---- chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h.mp3 2017-12-07 09:51:37.000000000 -0500 -+++ chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h 2017-12-07 11:10:50.721599547 -0500 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/blink3/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-lto --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/blink3/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-lto --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -547,7 +547,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -626,9 +626,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -979,7 +979,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1292,7 +1292,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2267,7 +2267,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-63.0.3239.84/third_party/ffmpeg/ffmpeg_generated.gni.mp3 chromium-63.0.3239.84/third_party/ffmpeg/ffmpeg_generated.gni ---- chromium-63.0.3239.84/third_party/ffmpeg/ffmpeg_generated.gni.mp3 2017-12-07 09:51:36.000000000 -0500 -+++ chromium-63.0.3239.84/third_party/ffmpeg/ffmpeg_generated.gni 2017-12-07 11:16:58.728447124 -0500 -@@ -183,17 +183,9 @@ if ((is_mac) || (is_win) || (use_linux_c - ] - } - --if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mips64el" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { -+if ((current_cpu == "x64") || (is_android && current_cpu == "arm" && arm_use_neon) || (is_android && current_cpu == "arm64") || (is_android && current_cpu == "mips64el") || (is_android && current_cpu == "mipsel") || (is_android && current_cpu == "x86") || (is_win) || (use_linux_config && current_cpu == "arm" && arm_use_neon) || (use_linux_config && current_cpu == "arm") || (use_linux_config && current_cpu == "arm64") || (use_linux_config && current_cpu == "mipsel") || (use_linux_config && current_cpu == "x64") || (use_linux_config && current_cpu == "x86")) { - ffmpeg_c_sources += [ -- "libavcodec/aac_ac3_parser.c", -- "libavcodec/aac_parser.c", -- "libavcodec/aacadtsdec.c", -- "libavcodec/aacps_float.c", -- "libavcodec/aacpsdsp_float.c", -- "libavcodec/aacsbr.c", -- "libavcodec/aactab.c", - "libavcodec/ac3tab.c", -- "libavcodec/autorename_libavcodec_aacdec.c", - "libavcodec/autorename_libavcodec_mdct15.c", - "libavcodec/autorename_libavcodec_mpegaudiodsp.c", - "libavcodec/autorename_libavcodec_sbrdsp.c", -@@ -211,7 +203,6 @@ if ((current_cpu == "x64" && ffmpeg_bran - "libavcodec/mpegaudiodsp_float.c", - "libavcodec/sinewin.c", - "libavcodec/sinewin_fixed.c", -- "libavformat/aacdec.c", - "libavformat/apetag.c", - "libavformat/img2.c", - "libavformat/mov.c", -@@ -220,6 +211,20 @@ if ((current_cpu == "x64" && ffmpeg_bran - ] - } - -+if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mips64el" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { -+ ffmpeg_c_sources += [ -+ "libavcodec/aac_ac3_parser.c", -+ "libavcodec/aac_parser.c", -+ "libavcodec/aacadtsdec.c", -+ "libavcodec/aacps_float.c", -+ "libavcodec/aacpsdsp_float.c", -+ "libavcodec/aacsbr.c", -+ "libavcodec/aactab.c", -+ "libavcodec/autorename_libavcodec_aacdec.c", -+ "libavformat/aacdec.c", -+ ] -+} -+ - if ((is_android && current_cpu == "x64") || (is_android && current_cpu == "x86") || (is_mac) || (is_win) || (use_linux_config && current_cpu == "x64") || (use_linux_config && current_cpu == "x86")) { - ffmpeg_c_sources += [ - "libavcodec/x86/autorename_libavcodec_x86_vorbisdsp_init.c", -@@ -323,16 +328,20 @@ if ((is_mac) || (is_win) || (use_linux_c - if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { - ffmpeg_c_sources += [ - "libavcodec/x86/aacpsdsp_init.c", -+ ] -+ ffmpeg_yasm_sources += [ -+ "libavcodec/x86/aacpsdsp.asm", -+ ] -+} -+ -+if ((current_cpu == "x64") || (is_android && current_cpu == "x86") || (use_linux_config && current_cpu == "x64") || (use_linux_config && current_cpu == "x86") || (is_win)) { -+ ffmpeg_c_sources += [ - "libavcodec/x86/dct_init.c", - "libavcodec/x86/mdct15_init.c", - "libavcodec/x86/mpegaudiodsp.c", - "libavcodec/x86/sbrdsp_init.c", - ] --} -- --if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { - ffmpeg_yasm_sources += [ -- "libavcodec/x86/aacpsdsp.asm", - "libavcodec/x86/dct32.asm", - "libavcodec/x86/imdct36.asm", - "libavcodec/x86/mdct15.asm", -diff -up chromium-63.0.3239.84/third_party/ffmpeg/libavcodec/sbrdsp.c.mp3 chromium-63.0.3239.84/third_party/ffmpeg/libavcodec/sbrdsp.c ---- chromium-63.0.3239.84/third_party/ffmpeg/libavcodec/sbrdsp.c.mp3 2017-12-07 09:51:37.000000000 -0500 -+++ chromium-63.0.3239.84/third_party/ffmpeg/libavcodec/sbrdsp.c 2017-12-07 10:52:02.484509992 -0500 -@@ -23,6 +23,7 @@ - #define USE_FIXED 0 - - #include "aac.h" -+#include "aacsbrdata.h" - #include "config.h" - #include "libavutil/attributes.h" - #include "libavutil/intfloat.h" -diff -up chromium-63.0.3239.84/third_party/webrtc/examples/objc/AppRTCMobile/ios/resources/mozart.mp3 chromium-63.0.3239.84/third_party/webrtc/examples/objc/AppRTCMobile/ios/resources/mozart -diff -up chromium-63.0.3239.84/tools/android/audio_focus_grabber/java/res/raw/ping.mp3 chromium-63.0.3239.84/tools/android/audio_focus_grabber/java/res/raw/ping diff --git a/chromium-63.0.3289.84-fix-ffmpeg-aarch64.patch b/chromium-63.0.3289.84-fix-ffmpeg-aarch64.patch deleted file mode 100644 index 8df206b..0000000 --- a/chromium-63.0.3289.84-fix-ffmpeg-aarch64.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-63.0.3239.84/third_party/ffmpeg/ffmpeg_generated.gni.aarch64 chromium-63.0.3239.84/third_party/ffmpeg/ffmpeg_generated.gni ---- chromium-63.0.3239.84/third_party/ffmpeg/ffmpeg_generated.gni.aarch64 2017-12-07 11:23:07.077290535 -0500 -+++ chromium-63.0.3239.84/third_party/ffmpeg/ffmpeg_generated.gni 2017-12-07 11:27:30.354175021 -0500 -@@ -541,7 +541,7 @@ if (use_linux_config && current_cpu == " - ] - } - --if ((is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS")) { -+if ((is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64")) { - ffmpeg_c_sources += [ - "libavcodec/aarch64/aacpsdsp_init_aarch64.c", - "libavcodec/aarch64/mpegaudiodsp_init.c", diff --git a/chromium-63.0.3289.84-fix-ft-hb-unbundle.patch b/chromium-63.0.3289.84-fix-ft-hb-unbundle.patch deleted file mode 100644 index 9ca87ad..0000000 --- a/chromium-63.0.3289.84-fix-ft-hb-unbundle.patch +++ /dev/null @@ -1,36 +0,0 @@ -diff -up chromium-63.0.3239.84/build/linux/unbundle/freetype.gn.fixunbundle chromium-63.0.3239.84/build/linux/unbundle/freetype.gn ---- chromium-63.0.3239.84/build/linux/unbundle/freetype.gn.fixunbundle 2017-12-07 12:07:48.652161826 -0500 -+++ chromium-63.0.3239.84/build/linux/unbundle/freetype.gn 2017-12-07 12:08:52.514919585 -0500 -@@ -117,6 +117,14 @@ source_set("freetype") { - public_configs = [ ":freetype_config" ] - } - -+source_set("freetype_source") { -+ visibility = [ "//third_party:freetype_harfbuzz" ] -+ deps = [ -+ ":freetype_shim", -+ ] -+ public_configs = [ ":freetype_config" ] -+} -+ - source_set("bootstrap_freetype_for_harfbuzz") { - deps = [ - ":freetype_shim", -diff -up chromium-63.0.3239.84/build/linux/unbundle/harfbuzz-ng.gn.fixunbundle chromium-63.0.3239.84/build/linux/unbundle/harfbuzz-ng.gn ---- chromium-63.0.3239.84/build/linux/unbundle/harfbuzz-ng.gn.fixunbundle 2017-12-07 12:09:57.057661738 -0500 -+++ chromium-63.0.3239.84/build/linux/unbundle/harfbuzz-ng.gn 2017-12-07 12:10:03.225541404 -0500 -@@ -24,6 +24,14 @@ group("harfbuzz-ng") { - ] - } - -+source_set("harfbuzz_source") { -+ visibility = [ "//third_party:freetype_harfbuzz" ] -+ deps = [ -+ ":harfbuzz_shim", -+ ] -+ public_configs = [ ":system_harfbuzz" ] -+} -+ - source_set("harfbuzz-ng-ft") { - deps = [ - ":harfbuzz_shim", diff --git a/chromium-63.0.3289.84-gcc-round-fix.patch b/chromium-63.0.3289.84-gcc-round-fix.patch deleted file mode 100644 index 86d0a7e..0000000 --- a/chromium-63.0.3289.84-gcc-round-fix.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-63.0.3239.84/third_party/webrtc/p2p/base/port.cc.gcc-round-fix chromium-63.0.3239.84/third_party/webrtc/p2p/base/port.cc ---- chromium-63.0.3239.84/third_party/webrtc/p2p/base/port.cc.gcc-round-fix 2017-12-07 16:20:01.521717091 -0500 -+++ chromium-63.0.3239.84/third_party/webrtc/p2p/base/port.cc 2017-12-07 16:20:13.025491739 -0500 -@@ -11,6 +11,7 @@ - #include "p2p/base/port.h" - - #include -+#include - #include - - #include "p2p/base/common.h" diff --git a/chromium-63.0.3289.84-gcc5-r3.patch b/chromium-63.0.3289.84-gcc5-r3.patch deleted file mode 100644 index 83c6911..0000000 --- a/chromium-63.0.3289.84-gcc5-r3.patch +++ /dev/null @@ -1,104 +0,0 @@ -diff -up chromium-63.0.3239.84/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 chromium-63.0.3239.84/gpu/ipc/common/mailbox_struct_traits.h ---- chromium-63.0.3239.84/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 2017-12-06 15:05:28.000000000 -0500 -+++ chromium-63.0.3239.84/gpu/ipc/common/mailbox_struct_traits.h 2017-12-07 11:32:15.416636125 -0500 -@@ -15,7 +15,7 @@ namespace mojo { - template <> - struct StructTraits { - static base::span name(const gpu::Mailbox& mailbox) { -- return mailbox.name; -+ return base::make_span(mailbox.name); - } - static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out); - }; -diff -up chromium-63.0.3239.84/services/viz/public/cpp/compositing/filter_operation_struct_traits.h.gcc5-r3 chromium-63.0.3239.84/services/viz/public/cpp/compositing/filter_operation_struct_traits.h ---- chromium-63.0.3239.84/services/viz/public/cpp/compositing/filter_operation_struct_traits.h.gcc5-r3 2017-12-06 15:05:31.000000000 -0500 -+++ chromium-63.0.3239.84/services/viz/public/cpp/compositing/filter_operation_struct_traits.h 2017-12-07 11:32:15.422636011 -0500 -@@ -134,7 +134,7 @@ struct StructTraits matrix(const cc::FilterOperation& operation) { - if (operation.type() != cc::FilterOperation::COLOR_MATRIX) - return base::span(); -- return operation.matrix(); -+ return base::make_span(operation.matrix()); - } - - static base::span shape( -diff -up chromium-63.0.3239.84/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 chromium-63.0.3239.84/services/viz/public/cpp/compositing/quads_struct_traits.h ---- chromium-63.0.3239.84/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 2017-12-07 11:32:15.429635877 -0500 -+++ chromium-63.0.3239.84/services/viz/public/cpp/compositing/quads_struct_traits.h 2017-12-07 11:34:00.081601880 -0500 -@@ -309,7 +309,7 @@ struct StructTraits vertex_opacity(const viz::DrawQuad& input) { - const viz::TextureDrawQuad* quad = - viz::TextureDrawQuad::MaterialCast(&input); -- return quad->vertex_opacity; -+ return base::make_span(quad->vertex_opacity); - } - - static bool y_flipped(const viz::DrawQuad& input) { -diff -up chromium-63.0.3239.84/third_party/WebKit/Source/platform/exported/WebCORS.cpp.gcc5-r3 chromium-63.0.3239.84/third_party/WebKit/Source/platform/exported/WebCORS.cpp ---- chromium-63.0.3239.84/third_party/WebKit/Source/platform/exported/WebCORS.cpp.gcc5-r3 2017-12-06 15:05:46.000000000 -0500 -+++ chromium-63.0.3239.84/third_party/WebKit/Source/platform/exported/WebCORS.cpp 2017-12-07 11:32:15.430635859 -0500 -@@ -480,7 +480,7 @@ WebString AccessControlErrorString( - } - default: - NOTREACHED(); -- return ""; -+ return WebString(); - } - } - -@@ -512,7 +512,7 @@ WebString PreflightErrorString(const Pre - } - default: - NOTREACHED(); -- return ""; -+ return WebString(); - } - } - -@@ -533,7 +533,7 @@ WebString RedirectErrorString(const Redi - } - default: - NOTREACHED(); -- return ""; -+ return WebString(); - } - } - -diff -up chromium-63.0.3239.84/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h.gcc5-r3 chromium-63.0.3239.84/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h ---- chromium-63.0.3239.84/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h.gcc5-r3 2017-12-06 15:05:46.000000000 -0500 -+++ chromium-63.0.3239.84/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h 2017-12-07 11:32:15.408636277 -0500 -@@ -63,7 +63,7 @@ class WTF_EXPORT ArrayBufferContents { - allocation_length_(0), - data_(data), - data_length_(0), -- kind_(AllocationKind::kNormal), -+ kind_(WTF::ArrayBufferContents::AllocationKind::kNormal), - deleter_(deleter) {} - DataHandle(void* allocation_base, - size_t allocation_length, -@@ -94,11 +94,11 @@ class WTF_EXPORT ArrayBufferContents { - reinterpret_cast(allocation_base_) + - allocation_length_); - switch (kind_) { -- case AllocationKind::kNormal: -+ case WTF::ArrayBufferContents::AllocationKind::kNormal: - DCHECK(deleter_); - deleter_(data_); - return; -- case AllocationKind::kReservation: -+ case WTF::ArrayBufferContents::AllocationKind::kReservation: - ReleaseReservedMemory(allocation_base_, allocation_length_); - return; - } -diff -up chromium-63.0.3239.84/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 chromium-63.0.3239.84/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc ---- chromium-63.0.3239.84/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 2017-12-07 11:32:15.409636258 -0500 -+++ chromium-63.0.3239.84/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2017-12-07 11:33:10.714561105 -0500 -@@ -10,7 +10,7 @@ - - #include "modules/audio_processing/aec3/aec_state.h" - --#include -+#include - #include - #include - diff --git a/chromium-63.0.3289.84-nolibc++.patch b/chromium-63.0.3289.84-nolibc++.patch deleted file mode 100644 index 0d999c8..0000000 --- a/chromium-63.0.3289.84-nolibc++.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -up chromium-63.0.3239.84/remoting/host/linux/BUILD.gn.nolibc++ chromium-63.0.3239.84/remoting/host/linux/BUILD.gn ---- chromium-63.0.3239.84/remoting/host/linux/BUILD.gn.nolibc++ 2017-12-07 11:55:43.173273434 -0500 -+++ chromium-63.0.3239.84/remoting/host/linux/BUILD.gn 2017-12-07 11:55:53.244077772 -0500 -@@ -62,11 +62,9 @@ if (enable_me2me_host) { - if (is_component_build) { - sources += [ - "$root_build_dir/libbase.so", -- "$root_build_dir/libc++.so", - ] - deps += [ - "//base:base", -- "//buildtools/third_party/libc++:libc++", - ] - } - } diff --git a/chromium-63.0.3289.84-setopaque.patch b/chromium-63.0.3289.84-setopaque.patch deleted file mode 100644 index 8fb585a..0000000 --- a/chromium-63.0.3289.84-setopaque.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-63.0.3239.84/cc/blink/web_layer_impl.h.setopaque chromium-63.0.3239.84/cc/blink/web_layer_impl.h ---- chromium-63.0.3239.84/cc/blink/web_layer_impl.h.setopaque 2017-12-07 10:47:48.262446682 -0500 -+++ chromium-63.0.3239.84/cc/blink/web_layer_impl.h 2017-12-07 10:48:47.437298948 -0500 -@@ -67,7 +67,7 @@ class CC_BLINK_EXPORT WebLayerImpl : pub - void SetIsRootForIsolatedGroup(bool root) override; - bool IsRootForIsolatedGroup() override; - void SetHitTestableWithoutDrawsContent(bool should_hit_test) override; -- void SetOpaque(bool opaque) override; -+ CC_BLINK_EXPORT void SetOpaque(bool opaque) override; - bool Opaque() const override; - void SetPosition(const blink::WebFloatPoint& position) override; - blink::WebFloatPoint GetPosition() const override; diff --git a/chromium-64.0.3282.119-enable-mp3.patch b/chromium-64.0.3282.119-enable-mp3.patch deleted file mode 100644 index 849b5ee..0000000 --- a/chromium-64.0.3282.119-enable-mp3.patch +++ /dev/null @@ -1,54 +0,0 @@ -diff -up chromium-64.0.3282.119/media/base/mime_util_internal.cc.mp3 chromium-64.0.3282.119/media/base/mime_util_internal.cc ---- chromium-64.0.3282.119/media/base/mime_util_internal.cc.mp3 2018-01-24 15:05:48.000000000 -0500 -+++ chromium-64.0.3282.119/media/base/mime_util_internal.cc 2018-01-25 11:18:12.354147726 -0500 -@@ -279,15 +279,19 @@ void MimeUtil::AddSupportedMediaFormats( - CodecSet webm_codecs(webm_audio_codecs); - webm_codecs.insert(webm_video_codecs.begin(), webm_video_codecs.end()); - --#if BUILDFLAG(USE_PROPRIETARY_CODECS) - const CodecSet mp3_codecs{MP3}; -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - const CodecSet aac{MPEG2_AAC, MPEG4_AAC}; -+#else -+ const CodecSet aac{}; -+#endif -+ CodecSet mp4_audio_codecs(aac); -+ mp4_audio_codecs.emplace(MP3); - -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - CodecSet avc_and_aac(aac); - avc_and_aac.emplace(H264); - -- CodecSet mp4_audio_codecs(aac); -- mp4_audio_codecs.emplace(MP3); - mp4_audio_codecs.emplace(FLAC); - #if BUILDFLAG(ENABLE_AC3_EAC3_AUDIO_DEMUXING) - mp4_audio_codecs.emplace(AC3); -@@ -329,10 +333,10 @@ void MimeUtil::AddSupportedMediaFormats( - AddContainerWithCodecs("application/ogg", ogg_codecs, false); - AddContainerWithCodecs("audio/flac", implicit_codec, false); - --#if BUILDFLAG(USE_PROPRIETARY_CODECS) - AddContainerWithCodecs("audio/mpeg", mp3_codecs, true); // Allow "mp3". - AddContainerWithCodecs("audio/mp3", implicit_codec, true); - AddContainerWithCodecs("audio/x-mp3", implicit_codec, true); -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - AddContainerWithCodecs("audio/aac", implicit_codec, true); // AAC / ADTS. - AddContainerWithCodecs("audio/mp4", mp4_audio_codecs, true); - DCHECK(!mp4_video_codecs.empty()); -@@ -970,7 +974,6 @@ bool MimeUtil::IsCodecProprietary(Codec - case INVALID_CODEC: - case AC3: - case EAC3: -- case MP3: - case MPEG2_AAC: - case MPEG4_AAC: - case H264: -@@ -978,6 +981,7 @@ bool MimeUtil::IsCodecProprietary(Codec - case DOLBY_VISION: - return true; - -+ case MP3: - case PCM: - case VORBIS: - case OPUS: diff --git a/chromium-64.0.3282.119-gcc-constexpr-fix.patch b/chromium-64.0.3282.119-gcc-constexpr-fix.patch deleted file mode 100644 index 57b63cd..0000000 --- a/chromium-64.0.3282.119-gcc-constexpr-fix.patch +++ /dev/null @@ -1,70 +0,0 @@ -diff -up chromium-64.0.3282.119/third_party/angle/src/compiler/translator/StaticType.h.gcc-constexpr chromium-64.0.3282.119/third_party/angle/src/compiler/translator/StaticType.h ---- chromium-64.0.3282.119/third_party/angle/src/compiler/translator/StaticType.h.gcc-constexpr 2018-01-25 15:50:16.971171007 -0500 -+++ chromium-64.0.3282.119/third_party/angle/src/compiler/translator/StaticType.h 2018-01-25 15:51:14.158053914 -0500 -@@ -160,7 +160,7 @@ template --const TType *GetForVecMatHelper(unsigned char primarySize) -+constexpr const TType *GetForVecMatHelper(unsigned char primarySize) - { - static_assert(basicType == EbtFloat || basicType == EbtInt || basicType == EbtUInt || - basicType == EbtBool, -@@ -186,7 +186,7 @@ const TType *GetForVecMatHelper(unsigned - template --const TType *GetForVecMat(unsigned char primarySize, unsigned char secondarySize = 1) -+constexpr const TType *GetForVecMat(unsigned char primarySize, unsigned char secondarySize = 1) - { - static_assert(basicType == EbtFloat || basicType == EbtInt || basicType == EbtUInt || - basicType == EbtBool, -@@ -208,7 +208,7 @@ const TType *GetForVecMat(unsigned char - } - - template --const TType *GetForVec(TQualifier qualifier, unsigned char size) -+constexpr const TType *GetForVec(TQualifier qualifier, unsigned char size) - { - switch (qualifier) - { -diff -up chromium-64.0.3282.119/third_party/angle/src/compiler/translator/SymbolTable.cpp.gcc-constexpr chromium-64.0.3282.119/third_party/angle/src/compiler/translator/SymbolTable.cpp ---- chromium-64.0.3282.119/third_party/angle/src/compiler/translator/SymbolTable.cpp.gcc-constexpr 2018-01-25 15:51:27.670790008 -0500 -+++ chromium-64.0.3282.119/third_party/angle/src/compiler/translator/SymbolTable.cpp 2018-01-25 15:52:04.117077652 -0500 -@@ -189,7 +189,7 @@ TSymbolTable::~TSymbolTable() - pop(); - } - --bool IsGenType(const TType *type) -+constexpr bool IsGenType(const TType *type) - { - if (type) - { -@@ -201,7 +201,7 @@ bool IsGenType(const TType *type) - return false; - } - --bool IsVecType(const TType *type) -+constexpr bool IsVecType(const TType *type) - { - if (type) - { -diff -up chromium-64.0.3282.119/third_party/angle/src/compiler/translator/Types.h.gcc-constexpr chromium-64.0.3282.119/third_party/angle/src/compiler/translator/Types.h ---- chromium-64.0.3282.119/third_party/angle/src/compiler/translator/Types.h.gcc-constexpr 2018-01-25 15:52:15.042864767 -0500 -+++ chromium-64.0.3282.119/third_party/angle/src/compiler/translator/Types.h 2018-01-25 15:52:56.763049389 -0500 -@@ -236,13 +236,13 @@ class TType - { - } - -- TBasicType getBasicType() const { return type; } -+ constexpr TBasicType getBasicType() const { return type; } - void setBasicType(TBasicType t); - - TPrecision getPrecision() const { return precision; } - void setPrecision(TPrecision p) { precision = p; } - -- TQualifier getQualifier() const { return qualifier; } -+ constexpr TQualifier getQualifier() const { return qualifier; } - void setQualifier(TQualifier q) { qualifier = q; } - - bool isInvariant() const { return invariant; } diff --git a/chromium-64.0.3282.119-gcc-round-fix.patch b/chromium-64.0.3282.119-gcc-round-fix.patch deleted file mode 100644 index 465808c..0000000 --- a/chromium-64.0.3282.119-gcc-round-fix.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-64.0.3282.119/third_party/webrtc/p2p/base/port.cc.gcc-round-fix chromium-64.0.3282.119/third_party/webrtc/p2p/base/port.cc ---- chromium-64.0.3282.119/third_party/webrtc/p2p/base/port.cc.gcc-round-fix 2018-01-25 12:03:14.696443814 -0500 -+++ chromium-64.0.3282.119/third_party/webrtc/p2p/base/port.cc 2018-01-25 12:20:26.446448618 -0500 -@@ -10,7 +10,7 @@ - - #include "p2p/base/port.h" - --#include -+#include - - #include - #include diff --git a/chromium-64.0.3282.119-gcc5-r3.patch b/chromium-64.0.3282.119-gcc5-r3.patch deleted file mode 100644 index 3679ecf..0000000 --- a/chromium-64.0.3282.119-gcc5-r3.patch +++ /dev/null @@ -1,75 +0,0 @@ -diff -up chromium-64.0.3282.119/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 chromium-64.0.3282.119/gpu/ipc/common/mailbox_struct_traits.h ---- chromium-64.0.3282.119/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 2018-01-24 15:05:47.000000000 -0500 -+++ chromium-64.0.3282.119/gpu/ipc/common/mailbox_struct_traits.h 2018-01-25 11:58:48.251623423 -0500 -@@ -15,7 +15,7 @@ namespace mojo { - template <> - struct StructTraits { - static base::span name(const gpu::Mailbox& mailbox) { -- return mailbox.name; -+ return base::make_span(mailbox.name); - } - static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out); - }; -diff -up chromium-64.0.3282.119/services/viz/public/cpp/compositing/filter_operation_struct_traits.h.gcc5-r3 chromium-64.0.3282.119/services/viz/public/cpp/compositing/filter_operation_struct_traits.h ---- chromium-64.0.3282.119/services/viz/public/cpp/compositing/filter_operation_struct_traits.h.gcc5-r3 2018-01-24 15:05:51.000000000 -0500 -+++ chromium-64.0.3282.119/services/viz/public/cpp/compositing/filter_operation_struct_traits.h 2018-01-25 11:58:48.252623400 -0500 -@@ -137,7 +137,7 @@ struct StructTraits matrix(const cc::FilterOperation& operation) { - if (operation.type() != cc::FilterOperation::COLOR_MATRIX) - return base::span(); -- return operation.matrix(); -+ return base::make_span(operation.matrix()); - } - - static base::span shape( -diff -up chromium-64.0.3282.119/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 chromium-64.0.3282.119/services/viz/public/cpp/compositing/quads_struct_traits.h ---- chromium-64.0.3282.119/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 2018-01-24 15:05:51.000000000 -0500 -+++ chromium-64.0.3282.119/services/viz/public/cpp/compositing/quads_struct_traits.h 2018-01-25 11:58:48.252623400 -0500 -@@ -308,7 +308,7 @@ struct StructTraits vertex_opacity(const viz::DrawQuad& input) { - const viz::TextureDrawQuad* quad = - viz::TextureDrawQuad::MaterialCast(&input); -- return quad->vertex_opacity; -+ return base::make_span(quad->vertex_opacity); - } - - static bool y_flipped(const viz::DrawQuad& input) { -diff -up chromium-64.0.3282.119/third_party/WebKit/Source/platform/exported/WebCORS.cpp.gcc5-r3 chromium-64.0.3282.119/third_party/WebKit/Source/platform/exported/WebCORS.cpp -diff -up chromium-64.0.3282.119/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h.gcc5-r3 chromium-64.0.3282.119/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h ---- chromium-64.0.3282.119/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h.gcc5-r3 2018-01-24 15:06:11.000000000 -0500 -+++ chromium-64.0.3282.119/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h 2018-01-25 11:58:48.253623376 -0500 -@@ -62,7 +62,7 @@ class WTF_EXPORT ArrayBufferContents { - allocation_length_(0), - data_(data), - data_length_(0), -- kind_(AllocationKind::kNormal), -+ kind_(WTF::ArrayBufferContents::AllocationKind::kNormal), - deleter_(deleter) {} - DataHandle(void* allocation_base, - size_t allocation_length, -@@ -93,11 +93,11 @@ class WTF_EXPORT ArrayBufferContents { - reinterpret_cast(allocation_base_) + - allocation_length_); - switch (kind_) { -- case AllocationKind::kNormal: -+ case WTF::ArrayBufferContents::AllocationKind::kNormal: - DCHECK(deleter_); - deleter_(data_); - return; -- case AllocationKind::kReservation: -+ case WTF::ArrayBufferContents::AllocationKind::kReservation: - ReleaseReservedMemory(allocation_base_, allocation_length_); - return; - } -diff -up chromium-64.0.3282.119/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 chromium-64.0.3282.119/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc ---- chromium-64.0.3282.119/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 2018-01-25 11:58:48.253623376 -0500 -+++ chromium-64.0.3282.119/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2018-01-25 12:01:28.769900550 -0500 -@@ -10,7 +10,7 @@ - - #include "modules/audio_processing/aec3/aec_state.h" - --#include -+#include - - #include - #include diff --git a/chromium-64.0.3282.119-gcc5.patch b/chromium-64.0.3282.119-gcc5.patch deleted file mode 100644 index 0fdc39f..0000000 --- a/chromium-64.0.3282.119-gcc5.patch +++ /dev/null @@ -1,57 +0,0 @@ -diff -up chromium-64.0.3282.119/third_party/webgl/src/specs/latest/2.0/webgl2.idl.gcc5 chromium-64.0.3282.119/third_party/webgl/src/specs/latest/2.0/webgl2.idl ---- chromium-64.0.3282.119/third_party/webgl/src/specs/latest/2.0/webgl2.idl.gcc5 2018-01-25 11:07:27.179175007 -0500 -+++ chromium-64.0.3282.119/third_party/webgl/src/specs/latest/2.0/webgl2.idl 2018-01-25 11:07:38.037925336 -0500 -@@ -263,7 +263,7 @@ interface WebGL2RenderingContextBase - 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 -up chromium-64.0.3282.119/third_party/WebKit/Source/core/dom/NodeFilter.h.gcc5 chromium-64.0.3282.119/third_party/WebKit/Source/core/dom/NodeFilter.h ---- chromium-64.0.3282.119/third_party/WebKit/Source/core/dom/NodeFilter.h.gcc5 2018-01-25 11:11:08.581962228 -0500 -+++ chromium-64.0.3282.119/third_party/WebKit/Source/core/dom/NodeFilter.h 2018-01-25 11:11:24.062593478 -0500 -@@ -49,7 +49,7 @@ class NodeFilter final { - * to the value of NodeType for the equivalent node type. - */ - enum { -- kShowAll = 0xFFFFFFFF, -+ kShowAll = 256 /* 0xFFFFFFFF */, - kShowElement = 0x00000001, - kShowAttribute = 0x00000002, - kShowText = 0x00000004, -diff -up chromium-64.0.3282.119/third_party/WebKit/Source/core/dom/NodeFilter.idl.gcc5 chromium-64.0.3282.119/third_party/WebKit/Source/core/dom/NodeFilter.idl ---- chromium-64.0.3282.119/third_party/WebKit/Source/core/dom/NodeFilter.idl.gcc5 2018-01-25 11:11:34.816335412 -0500 -+++ chromium-64.0.3282.119/third_party/WebKit/Source/core/dom/NodeFilter.idl 2018-01-25 11:12:23.380171262 -0500 -@@ -27,7 +27,7 @@ callback interface NodeFilter { - const unsigned short FILTER_SKIP = 3; - - // Constants for whatToShow -- const unsigned long SHOW_ALL = 0xFFFFFFFF; -+ const unsigned long SHOW_ALL = 256; // 0xFFFFFFFF - const unsigned long SHOW_ELEMENT = 0x1; - const unsigned long SHOW_ATTRIBUTE = 0x2; // historical - const unsigned long SHOW_TEXT = 0x4; -diff -up chromium-64.0.3282.119/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl.gcc5 chromium-64.0.3282.119/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl ---- chromium-64.0.3282.119/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl.gcc5 2018-01-25 11:12:57.367363214 -0500 -+++ chromium-64.0.3282.119/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl 2018-01-25 11:13:29.883590960 -0500 -@@ -241,7 +241,7 @@ typedef unsigned long long GLuint64; - 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; -@@ -271,7 +271,7 @@ typedef unsigned long long GLuint64; - const GLenum TEXTURE_IMMUTABLE_FORMAT = 0x912F; - const GLenum MAX_ELEMENT_INDEX = 0x8D6B; - const GLenum TEXTURE_IMMUTABLE_LEVELS = 0x82DF; -- const GLint TIMEOUT_IGNORED = -1; -+ const GLint TIMEOUT_IGNORED = 256; - - /* WebGL-specific enums */ - const GLenum MAX_CLIENT_WAIT_TIMEOUT_WEBGL = 0x9247; diff --git a/chromium-64.0.3282.119-gcc7.patch b/chromium-64.0.3282.119-gcc7.patch deleted file mode 100644 index 7fe383e..0000000 --- a/chromium-64.0.3282.119-gcc7.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-64.0.3282.119/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 chromium-64.0.3282.119/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h ---- chromium-64.0.3282.119/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 2018-01-25 11:15:00.291466617 -0500 -+++ chromium-64.0.3282.119/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h 2018-01-25 11:16:36.159320291 -0500 -@@ -10,6 +10,7 @@ - #include "platform/wtf/Functional.h" - #include "platform/wtf/ThreadSpecific.h" - -+#include - #include - - namespace blink { diff --git a/chromium-64.0.3282.119-memcpy-fix.patch b/chromium-64.0.3282.119-memcpy-fix.patch deleted file mode 100644 index 39c3c25..0000000 --- a/chromium-64.0.3282.119-memcpy-fix.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-64.0.3282.119/cc/paint/raw_memory_transfer_cache_entry.cc.memcpyfix chromium-64.0.3282.119/cc/paint/raw_memory_transfer_cache_entry.cc ---- chromium-64.0.3282.119/cc/paint/raw_memory_transfer_cache_entry.cc.memcpyfix 2018-01-26 15:04:44.708100850 -0500 -+++ chromium-64.0.3282.119/cc/paint/raw_memory_transfer_cache_entry.cc 2018-01-26 15:04:54.234915081 -0500 -@@ -3,6 +3,7 @@ - // found in the LICENSE file. - - #include "cc/paint/raw_memory_transfer_cache_entry.h" -+#include - - namespace cc { - diff --git a/chromium-64.0.3282.167-gcc8-fabi11.patch b/chromium-64.0.3282.167-gcc8-fabi11.patch deleted file mode 100644 index 5f0c527..0000000 --- a/chromium-64.0.3282.167-gcc8-fabi11.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -up chromium-64.0.3282.167/tools/gn/bootstrap/bootstrap.py.fabi11 chromium-64.0.3282.167/tools/gn/bootstrap/bootstrap.py ---- chromium-64.0.3282.167/tools/gn/bootstrap/bootstrap.py.fabi11 2018-02-19 11:39:15.807713662 -0500 -+++ chromium-64.0.3282.167/tools/gn/bootstrap/bootstrap.py 2018-02-19 11:39:47.038070341 -0500 -@@ -336,6 +336,11 @@ def write_gn_ninja(path, root_gen_dir, o - cflags = os.environ.get('CFLAGS', '').split() - cflags_cc = os.environ.get('CXXFLAGS', '').split() - ldflags = os.environ.get('LDFLAGS', '').split() -+ -+ # Work around GCC8 bug gcc#84286 -+ cflags.extend(['-fabi-version=11']) -+ cflags_cc.extend(['-fabi-version=11']) -+ - include_dirs = [root_gen_dir, SRC_ROOT] - libs = [] - diff --git a/chromium-65.0.3325.146-Fix-non-copyable-class-s-optional-move.patch b/chromium-65.0.3325.146-Fix-non-copyable-class-s-optional-move.patch deleted file mode 100644 index 6cf8ca8..0000000 --- a/chromium-65.0.3325.146-Fix-non-copyable-class-s-optional-move.patch +++ /dev/null @@ -1,41 +0,0 @@ -diff -up chromium-65.0.3325.146/base/optional.h.noncopyable chromium-65.0.3325.146/base/optional.h ---- chromium-65.0.3325.146/base/optional.h.noncopyable 2018-03-13 16:52:15.953729689 -0400 -+++ chromium-65.0.3325.146/base/optional.h 2018-03-13 16:53:55.365792522 -0400 -@@ -45,6 +45,15 @@ struct OptionalStorageBase { - - // When T is not trivially destructible we must call its - // destructor before deallocating its memory. -+ // Note that this hides the (implicitly declared) move constructor, which -+ // would be used for constexpr move constructor in OptionalStorage. -+ // It is needed iff T is trivially move constructible. However, the current -+ // is_trivially_{copy,move}_constructible implementation requires -+ // is_trivially_destructible (which looks a bug, cf: -+ // https://gcc.gnu.org/bugzilla/show_bug.cgi?id=51452 and -+ // http://cplusplus.github.io/LWG/lwg-active.html#2116), so it is not -+ // necessary for this case at the moment. Please see also the destructor -+ // comment in "is_trivially_destructible = true" specialization below. - ~OptionalStorageBase() { - if (!is_null_) - value_.~T(); -@@ -78,9 +87,18 @@ struct OptionalStorageBase(args)...) {} - - // When T is trivially destructible (i.e. its destructor does nothing) there -- // is no need to call it. Explicitly defaulting the destructor means it's not -- // user-provided. Those two together make this destructor trivial. -- ~OptionalStorageBase() = default; -+ // is no need to call it. Implicitly defined destructor is trivial, because -+ // both members (bool and union containing only variants which are trivially -+ // destructible) are trivially destructible. -+ // Explicitly-defaulted destructor is also trivial, but do not use it here, -+ // because it hides the implicit move constructor. It is needed to implement -+ // constexpr move constructor in OptionalStorage iff T is trivially move -+ // constructible. Note that, if T is trivially move constructible, the move -+ // constructor of OptionalStorageBase is also implicitly defined and it is -+ // trivially move constructor. If T is not trivially move constructible, -+ // "not declaring move constructor without destructor declaration" here means -+ // "delete move constructor", which works because any move constructor of -+ // OptionalStorage will not refer to it in that case. - - template - void Init(Args&&... args) { diff --git a/chromium-65.0.3325.146-GCC-IDB-methods-String-renamed-to-GetString.patch b/chromium-65.0.3325.146-GCC-IDB-methods-String-renamed-to-GetString.patch deleted file mode 100644 index dbdf68f..0000000 --- a/chromium-65.0.3325.146-GCC-IDB-methods-String-renamed-to-GetString.patch +++ /dev/null @@ -1,108 +0,0 @@ -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/bindings/modules/v8/V8BindingForModules.cpp.GetString chromium-65.0.3325.146/third_party/WebKit/Source/bindings/modules/v8/V8BindingForModules.cpp ---- chromium-65.0.3325.146/third_party/WebKit/Source/bindings/modules/v8/V8BindingForModules.cpp.GetString 2018-03-13 22:54:27.262671113 -0400 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/bindings/modules/v8/V8BindingForModules.cpp 2018-03-13 22:55:47.722113713 -0400 -@@ -68,7 +68,7 @@ v8::Local ToV8(const IDBKeyPa - case IDBKeyPath::kNullType: - return v8::Null(isolate); - case IDBKeyPath::kStringType: -- return V8String(isolate, value.String()); -+ return V8String(isolate, value.GetString()); - case IDBKeyPath::kArrayType: - return ToV8(value.Array(), creation_context, isolate); - } -@@ -97,7 +97,7 @@ v8::Local ToV8(const IDBKey* - case IDBKey::kNumberType: - return v8::Number::New(isolate, key->Number()); - case IDBKey::kStringType: -- return V8String(isolate, key->String()); -+ return V8String(isolate, key->GetString()); - case IDBKey::kBinaryType: - // https://w3c.github.io/IndexedDB/#convert-a-value-to-a-key - return ToV8(DOMArrayBuffer::Create(key->Binary()), creation_context, -@@ -379,7 +379,7 @@ static std::unique_ptr CreateIDB - } - - DCHECK_EQ(key_path.GetType(), IDBKeyPath::kStringType); -- return CreateIDBKeyFromValueAndKeyPath(isolate, value, key_path.String(), -+ return CreateIDBKeyFromValueAndKeyPath(isolate, value, key_path.GetString(), - exception_state); - } - -@@ -483,7 +483,7 @@ bool InjectV8KeyIntoV8Value(v8::Isolate* - DCHECK(isolate->InContext()); - - DCHECK_EQ(key_path.GetType(), IDBKeyPath::kStringType); -- Vector key_path_elements = ParseKeyPath(key_path.String()); -+ Vector key_path_elements = ParseKeyPath(key_path.GetString()); - - // The conbination of a key generator and an empty key path is forbidden by - // spec. -@@ -569,7 +569,7 @@ bool CanInjectIDBKeyIntoScriptValue(v8:: - const IDBKeyPath& key_path) { - IDB_TRACE("canInjectIDBKeyIntoScriptValue"); - DCHECK_EQ(key_path.GetType(), IDBKeyPath::kStringType); -- Vector key_path_elements = ParseKeyPath(key_path.String()); -+ Vector key_path_elements = ParseKeyPath(key_path.GetString()); - - if (!key_path_elements.size()) - return false; -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/modules/exported/WebIDBKey.cpp.GetString chromium-65.0.3325.146/third_party/WebKit/Source/modules/exported/WebIDBKey.cpp ---- chromium-65.0.3325.146/third_party/WebKit/Source/modules/exported/WebIDBKey.cpp.GetString 2018-03-13 22:56:04.041798217 -0400 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/modules/exported/WebIDBKey.cpp 2018-03-13 22:56:22.481440993 -0400 -@@ -56,7 +56,7 @@ WebData WebIDBKeyView::Binary() const { - } - - WebString WebIDBKeyView::String() const { -- return private_->String(); -+ return private_->GetString(); - } - - double WebIDBKeyView::Date() const { -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBDatabase.cpp.GetString chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBDatabase.cpp ---- chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBDatabase.cpp.GetString 2018-03-13 22:56:36.028178758 -0400 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBDatabase.cpp 2018-03-13 22:56:58.846736831 -0400 -@@ -297,7 +297,7 @@ IDBObjectStore* IDBDatabase::createObjec - } - - if (auto_increment && ((key_path.GetType() == IDBKeyPath::kStringType && -- key_path.String().IsEmpty()) || -+ key_path.GetString().IsEmpty()) || - key_path.GetType() == IDBKeyPath::kArrayType)) { - exception_state.ThrowDOMException( - kInvalidAccessError, -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBKey.h.GetString chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBKey.h ---- chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBKey.h.GetString 2018-03-13 22:57:13.229458842 -0400 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBKey.h 2018-03-13 22:57:38.633966776 -0400 -@@ -106,7 +106,7 @@ class MODULES_EXPORT IDBKey { - return binary_; - } - -- const String& String() const { -+ const String& GetString() const { - DCHECK_EQ(type_, kStringType); - return string_; - } -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBKeyPath.h.GetString chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBKeyPath.h ---- chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBKeyPath.h.GetString 2018-03-13 22:57:51.104725428 -0400 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBKeyPath.h 2018-03-13 22:58:09.459369906 -0400 -@@ -65,7 +65,7 @@ class MODULES_EXPORT IDBKeyPath { - return array_; - } - -- const String& String() const { -+ const String& GetString() const { - DCHECK_EQ(type_, kStringType); - return string_; - } -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/InspectorIndexedDBAgent.cpp.GetString chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/InspectorIndexedDBAgent.cpp ---- chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/InspectorIndexedDBAgent.cpp.GetString 2018-03-13 22:58:28.778995834 -0400 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/InspectorIndexedDBAgent.cpp 2018-03-13 22:58:45.044681364 -0400 -@@ -399,7 +399,7 @@ static std::unique_ptr KeyPathF - case IDBKeyPath::kStringType: - key_path = KeyPath::create() - .setType(KeyPath::TypeEnum::String) -- .setString(idb_key_path.String()) -+ .setString(idb_key_path.GetString()) - .build(); - break; - case IDBKeyPath::kArrayType: { diff --git a/chromium-65.0.3325.146-GCC-PlaybackImageProvider-Settings-do-not-provide-co.patch b/chromium-65.0.3325.146-GCC-PlaybackImageProvider-Settings-do-not-provide-co.patch deleted file mode 100644 index 8edc424..0000000 --- a/chromium-65.0.3325.146-GCC-PlaybackImageProvider-Settings-do-not-provide-co.patch +++ /dev/null @@ -1,22 +0,0 @@ -diff -up chromium-65.0.3325.146/cc/raster/playback_image_provider.cc.pipcc chromium-65.0.3325.146/cc/raster/playback_image_provider.cc ---- chromium-65.0.3325.146/cc/raster/playback_image_provider.cc.pipcc 2018-03-13 22:47:00.271322726 -0400 -+++ chromium-65.0.3325.146/cc/raster/playback_image_provider.cc 2018-03-13 22:47:53.127300060 -0400 -@@ -92,7 +92,6 @@ PlaybackImageProvider::GetDecodedDrawIma - } - - PlaybackImageProvider::Settings::Settings() = default; --PlaybackImageProvider::Settings::Settings(const Settings& other) = default; - PlaybackImageProvider::Settings::~Settings() = default; - - } // namespace cc -diff -up chromium-65.0.3325.146/cc/raster/playback_image_provider.h.pipcc chromium-65.0.3325.146/cc/raster/playback_image_provider.h ---- chromium-65.0.3325.146/cc/raster/playback_image_provider.h.pipcc 2018-03-13 22:48:00.673153629 -0400 -+++ chromium-65.0.3325.146/cc/raster/playback_image_provider.h 2018-03-13 22:48:12.726920597 -0400 -@@ -20,7 +20,6 @@ class CC_EXPORT PlaybackImageProvider : - public: - struct CC_EXPORT Settings { - Settings(); -- Settings(const Settings& other); - ~Settings(); - - // The set of image ids to skip during raster. diff --git a/chromium-65.0.3325.146-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch b/chromium-65.0.3325.146-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch deleted file mode 100644 index 62124be..0000000 --- a/chromium-65.0.3325.146-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch +++ /dev/null @@ -1,33 +0,0 @@ -diff -up chromium-65.0.3325.146/services/preferences/tracked/pref_hash_filter.h.fulldecl chromium-65.0.3325.146/services/preferences/tracked/pref_hash_filter.h ---- chromium-65.0.3325.146/services/preferences/tracked/pref_hash_filter.h.fulldecl 2018-03-13 16:38:38.870652491 -0400 -+++ chromium-65.0.3325.146/services/preferences/tracked/pref_hash_filter.h 2018-03-13 16:39:02.691186647 -0400 -@@ -21,9 +21,9 @@ - #include "services/preferences/public/interfaces/preferences.mojom.h" - #include "services/preferences/tracked/hash_store_contents.h" - #include "services/preferences/tracked/interceptable_pref_filter.h" -+#include "services/preferences/tracked/pref_hash_store.h" - #include "services/preferences/tracked/tracked_preference.h" - --class PrefHashStore; - class PrefService; - - namespace base { -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/modules/webdatabase/SQLTransactionBackend.h.fulldecl chromium-65.0.3325.146/third_party/WebKit/Source/modules/webdatabase/SQLTransactionBackend.h ---- chromium-65.0.3325.146/third_party/WebKit/Source/modules/webdatabase/SQLTransactionBackend.h.fulldecl 2018-03-13 16:39:13.787970233 -0400 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/modules/webdatabase/SQLTransactionBackend.h 2018-03-13 16:39:42.614407235 -0400 -@@ -30,6 +30,7 @@ - - #include - #include "modules/webdatabase/DatabaseBasicTypes.h" -+#include "modules/webdatabase/SQLError.h" - #include "modules/webdatabase/SQLStatement.h" - #include "modules/webdatabase/SQLStatementBackend.h" - #include "modules/webdatabase/SQLTransactionStateMachine.h" -@@ -41,7 +42,6 @@ - namespace blink { - - class Database; --class SQLErrorData; - class SQLiteTransaction; - class SQLTransaction; - class SQLTransactionBackend; diff --git a/chromium-65.0.3325.146-GCC-explicitely-std-move-to-base-Optional-instead-of.patch b/chromium-65.0.3325.146-GCC-explicitely-std-move-to-base-Optional-instead-of.patch deleted file mode 100644 index 9c6f315..0000000 --- a/chromium-65.0.3325.146-GCC-explicitely-std-move-to-base-Optional-instead-of.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff -up chromium-65.0.3325.146/content/browser/appcache/appcache_request_handler.cc.explicit-std-move chromium-65.0.3325.146/content/browser/appcache/appcache_request_handler.cc ---- chromium-65.0.3325.146/content/browser/appcache/appcache_request_handler.cc.explicit-std-move 2018-03-13 22:50:41.346043716 -0400 -+++ chromium-65.0.3325.146/content/browser/appcache/appcache_request_handler.cc 2018-03-13 22:51:21.428267583 -0400 -@@ -639,7 +639,7 @@ AppCacheRequestHandler::MaybeCreateSubre - - SubresourceLoaderParams params; - params.loader_factory_info = factory_ptr.PassInterface(); -- return params; -+ return base::Optional(std::move(params)); - } - - void AppCacheRequestHandler::MaybeCreateSubresourceLoader( -diff -up chromium-65.0.3325.146/content/browser/service_worker/service_worker_controllee_request_handler.cc.explicit-std-move chromium-65.0.3325.146/content/browser/service_worker/service_worker_controllee_request_handler.cc ---- chromium-65.0.3325.146/content/browser/service_worker/service_worker_controllee_request_handler.cc.explicit-std-move 2018-03-13 22:51:38.133943776 -0400 -+++ chromium-65.0.3325.146/content/browser/service_worker/service_worker_controllee_request_handler.cc 2018-03-13 22:51:57.658566347 -0400 -@@ -271,7 +271,7 @@ ServiceWorkerControlleeRequestHandler::M - controller_info->object_info = provider_host_->GetOrCreateServiceWorkerHandle( - provider_host_->controller()); - params.controller_service_worker_info = std::move(controller_info); -- return params; -+ return base::Optional(std::move(params)); - } - - void ServiceWorkerControlleeRequestHandler::PrepareForMainResource( diff --git a/chromium-65.0.3325.146-GCC-fully-declare-ConfigurationPolicyProvider.patch b/chromium-65.0.3325.146-GCC-fully-declare-ConfigurationPolicyProvider.patch deleted file mode 100644 index 809a321..0000000 --- a/chromium-65.0.3325.146-GCC-fully-declare-ConfigurationPolicyProvider.patch +++ /dev/null @@ -1,18 +0,0 @@ -diff -up chromium-65.0.3325.146/components/policy/core/browser/browser_policy_connector_base.h.fully-declare chromium-65.0.3325.146/components/policy/core/browser/browser_policy_connector_base.h ---- chromium-65.0.3325.146/components/policy/core/browser/browser_policy_connector_base.h.fully-declare 2018-03-13 23:02:13.989635567 -0400 -+++ chromium-65.0.3325.146/components/policy/core/browser/browser_policy_connector_base.h 2018-03-13 23:02:44.318048625 -0400 -@@ -12,13 +12,13 @@ - #include "base/macros.h" - #include "base/optional.h" - #include "components/policy/core/browser/configuration_policy_handler_list.h" -+#include "components/policy/core/common/configuration_policy_provider.h" - #include "components/policy/core/common/schema.h" - #include "components/policy/core/common/schema_registry.h" - #include "components/policy/policy_export.h" - - namespace policy { - --class ConfigurationPolicyProvider; - class PolicyService; - class PolicyServiceImpl; - diff --git a/chromium-65.0.3325.146-Implement-conditional-copy-move-ctors-assign-operato.patch b/chromium-65.0.3325.146-Implement-conditional-copy-move-ctors-assign-operato.patch deleted file mode 100644 index 9b4befe..0000000 --- a/chromium-65.0.3325.146-Implement-conditional-copy-move-ctors-assign-operato.patch +++ /dev/null @@ -1,91 +0,0 @@ -diff -up chromium-65.0.3325.146/base/optional.h.conditional chromium-65.0.3325.146/base/optional.h ---- chromium-65.0.3325.146/base/optional.h.conditional 2018-03-13 22:11:02.328058249 -0400 -+++ chromium-65.0.3325.146/base/optional.h 2018-03-13 22:12:43.622098296 -0400 -@@ -266,6 +266,58 @@ class OptionalBase { - OptionalStorage storage_; - }; - -+// The following {Copy,Move}{Constructible,Assignable} structs are helpers to -+// implement constructor/assign-operator overloading. Specifically, if T is -+// is not movable but copyable, Optional's move constructor should not -+// participate in overload resolution. This inheritance trick implements that. -+template -+struct CopyConstructible {}; -+ -+template <> -+struct CopyConstructible { -+ constexpr CopyConstructible() = default; -+ constexpr CopyConstructible(const CopyConstructible&) = delete; -+ constexpr CopyConstructible(CopyConstructible&&) = default; -+ CopyConstructible& operator=(const CopyConstructible&) = default; -+ CopyConstructible& operator=(CopyConstructible&&) = default; -+}; -+ -+template -+struct MoveConstructible {}; -+ -+template <> -+struct MoveConstructible { -+ constexpr MoveConstructible() = default; -+ constexpr MoveConstructible(const MoveConstructible&) = default; -+ constexpr MoveConstructible(MoveConstructible&&) = delete; -+ MoveConstructible& operator=(const MoveConstructible&) = default; -+ MoveConstructible& operator=(MoveConstructible&&) = default; -+}; -+ -+template -+struct CopyAssignable {}; -+ -+template <> -+struct CopyAssignable { -+ constexpr CopyAssignable() = default; -+ constexpr CopyAssignable(const CopyAssignable&) = default; -+ constexpr CopyAssignable(CopyAssignable&&) = default; -+ CopyAssignable& operator=(const CopyAssignable&) = delete; -+ CopyAssignable& operator=(CopyAssignable&&) = default; -+}; -+ -+template -+struct MoveAssignable {}; -+ -+template <> -+struct MoveAssignable { -+ constexpr MoveAssignable() = default; -+ constexpr MoveAssignable(const MoveAssignable&) = default; -+ constexpr MoveAssignable(MoveAssignable&&) = default; -+ MoveAssignable& operator=(const MoveAssignable&) = default; -+ MoveAssignable& operator=(MoveAssignable&&) = delete; -+}; -+ - } // namespace internal - - // base::Optional is a Chromium version of the C++17 optional class: -@@ -280,12 +332,18 @@ class OptionalBase { - // - No exceptions are thrown, because they are banned from Chromium. - // - All the non-members are in the 'base' namespace instead of 'std'. - template --class Optional : public internal::OptionalBase { -+class Optional -+ : public internal::OptionalBase, -+ public internal::CopyConstructible::value>, -+ public internal::MoveConstructible::value>, -+ public internal::CopyAssignable::value && -+ std::is_copy_assignable::value>, -+ public internal::MoveAssignable::value && -+ std::is_move_assignable::value> { - public: - using value_type = T; - - // Defer default/copy/move constructor implementation to OptionalBase. -- // TODO(hidehiko): Implement conditional enabling. - constexpr Optional() = default; - constexpr Optional(const Optional& other) = default; - constexpr Optional(Optional&& other) = default; -@@ -316,7 +374,6 @@ class Optional : public internal::Option - ~Optional() = default; - - // Defer copy-/move- assign operator implementation to OptionalBase. -- // TOOD(hidehiko): Implement conditional enabling. - Optional& operator=(const Optional& other) = default; - Optional& operator=(Optional&& other) = default; - diff --git a/chromium-65.0.3325.146-Implement-converting-constructors-from-Optional-U.patch b/chromium-65.0.3325.146-Implement-converting-constructors-from-Optional-U.patch deleted file mode 100644 index 3214104..0000000 --- a/chromium-65.0.3325.146-Implement-converting-constructors-from-Optional-U.patch +++ /dev/null @@ -1,116 +0,0 @@ -diff -up chromium-65.0.3325.146/base/optional.h.converting chromium-65.0.3325.146/base/optional.h ---- chromium-65.0.3325.146/base/optional.h.converting 2018-03-13 22:31:05.248797490 -0400 -+++ chromium-65.0.3325.146/base/optional.h 2018-03-13 22:33:10.826368771 -0400 -@@ -31,6 +31,10 @@ constexpr in_place_t in_place = {}; - // http://en.cppreference.com/w/cpp/utility/optional/nullopt - constexpr nullopt_t nullopt(0); - -+// Forward declaration, which is refered by following helpers. -+template -+class Optional; -+ - namespace internal { - - template ::value> -@@ -220,6 +224,19 @@ class OptionalBase { - constexpr explicit OptionalBase(in_place_t, Args&&... args) - : storage_(in_place, std::forward(args)...) {} - -+ // Implementation of converting constructors. -+ template -+ explicit OptionalBase(const OptionalBase& other) { -+ if (other.storage_.is_populated_) -+ storage_.Init(other.storage_.value_); -+ } -+ -+ template -+ explicit OptionalBase(OptionalBase&& other) { -+ if (other.storage_.is_populated_) -+ storage_.Init(std::move(other.storage_.value_)); -+ } -+ - ~OptionalBase() = default; - - OptionalBase& operator=(const OptionalBase& other) { -@@ -263,6 +280,11 @@ class OptionalBase { - storage_.is_populated_ = false; - } - -+ // For implementing conversion, allow access to other typed OptionalBase -+ // class. -+ template -+ friend class OptionalBase; -+ - OptionalStorage storage_; - }; - -@@ -318,6 +340,20 @@ struct MoveAssignable { - MoveAssignable& operator=(MoveAssignable&&) = delete; - }; - -+// Helper to conditionally enable converting constructors. -+template -+struct IsConvertibleFromOptional -+ : std::integral_constant< -+ bool, -+ std::is_constructible&>::value || -+ std::is_constructible&>::value || -+ std::is_constructible&&>::value || -+ std::is_constructible&&>::value || -+ std::is_convertible&, T>::value || -+ std::is_convertible&, T>::value || -+ std::is_convertible&&, T>::value || -+ std::is_convertible&&, T>::value> {}; -+ - } // namespace internal - - // base::Optional is a Chromium version of the C++17 optional class: -@@ -348,7 +384,47 @@ class Optional - constexpr Optional(const Optional& other) = default; - constexpr Optional(Optional&& other) = default; - -- constexpr Optional(nullopt_t) {} -+ constexpr Optional(nullopt_t) {} // NOLINT(runtime/explicit) -+ -+ // Converting copy constructor. "explicit" only if -+ // std::is_convertible::value is false. It is implemented by -+ // declaring two almost same constructors, but that condition in enable_if_t -+ // is different, so that either one is chosen, thanks to SFINAE. -+ template < -+ typename U, -+ std::enable_if_t::value && -+ !internal::IsConvertibleFromOptional::value && -+ std::is_convertible::value, -+ bool> = false> -+ Optional(const Optional& other) : internal::OptionalBase(other) {} -+ -+ template < -+ typename U, -+ std::enable_if_t::value && -+ !internal::IsConvertibleFromOptional::value && -+ !std::is_convertible::value, -+ bool> = false> -+ explicit Optional(const Optional& other) -+ : internal::OptionalBase(other) {} -+ -+ // Converting move constructor. Similar to converting copy constructor, -+ // declaring two (explicit and non-explicit) constructors. -+ template < -+ typename U, -+ std::enable_if_t::value && -+ !internal::IsConvertibleFromOptional::value && -+ std::is_convertible::value, -+ bool> = false> -+ Optional(Optional&& other) : internal::OptionalBase(std::move(other)) {} -+ -+ template < -+ typename U, -+ std::enable_if_t::value && -+ !internal::IsConvertibleFromOptional::value && -+ !std::is_convertible::value, -+ bool> = false> -+ explicit Optional(Optional&& other) -+ : internal::OptionalBase(std::move(other)) {} - - constexpr Optional(const T& value) - : internal::OptionalBase(in_place, value) {} diff --git a/chromium-65.0.3325.146-Implement-value-forward-constructor.patch b/chromium-65.0.3325.146-Implement-value-forward-constructor.patch deleted file mode 100644 index db727d8..0000000 --- a/chromium-65.0.3325.146-Implement-value-forward-constructor.patch +++ /dev/null @@ -1,72 +0,0 @@ -diff -up chromium-65.0.3325.146/base/optional.h.vforward chromium-65.0.3325.146/base/optional.h ---- chromium-65.0.3325.146/base/optional.h.vforward 2018-03-13 22:35:46.383359966 -0400 -+++ chromium-65.0.3325.146/base/optional.h 2018-03-13 22:37:48.724992995 -0400 -@@ -354,6 +354,10 @@ struct IsConvertibleFromOptional - std::is_convertible&&, T>::value || - std::is_convertible&&, T>::value> {}; - -+// Forward compatibility for C++20. -+template -+using RemoveCvRefT = std::remove_cv_t>; -+ - } // namespace internal - - // base::Optional is a Chromium version of the C++17 optional class: -@@ -367,6 +371,13 @@ struct IsConvertibleFromOptional - // - 'constexpr' might be missing in some places for reasons specified locally. - // - No exceptions are thrown, because they are banned from Chromium. - // - All the non-members are in the 'base' namespace instead of 'std'. -+// -+// Note that T cannot have a constructor T(Optional) etc. Optional checks -+// T's constructor (specifically via IsConvertibleFromOptional), and in the -+// check whether T can be constructible from Optional, which is recursive -+// so it does not work. As of Feb 2018, std::optional C++17 implementation in -+// both clang and gcc has same limitation. MSVC SFINAE looks to have different -+// behavior, but anyway it reports an error, too. - template - class Optional - : public internal::OptionalBase, -@@ -426,12 +437,6 @@ class Optional - explicit Optional(Optional&& other) - : internal::OptionalBase(std::move(other)) {} - -- constexpr Optional(const T& value) -- : internal::OptionalBase(in_place, value) {} -- -- constexpr Optional(T&& value) -- : internal::OptionalBase(in_place, std::move(value)) {} -- - template - constexpr explicit Optional(in_place_t, Args&&... args) - : internal::OptionalBase(in_place, std::forward(args)...) {} -@@ -447,6 +452,30 @@ class Optional - Args&&... args) - : internal::OptionalBase(in_place, il, std::forward(args)...) {} - -+ // Forward value constructor. Similar to converting constructors, -+ // conditionally explicit. -+ template < -+ typename U = value_type, -+ std::enable_if_t< -+ std::is_constructible::value && -+ !std::is_same, in_place_t>::value && -+ !std::is_same, Optional>::value && -+ std::is_convertible::value, -+ bool> = false> -+ constexpr Optional(U&& value) -+ : internal::OptionalBase(in_place, std::forward(value)) {} -+ -+ template < -+ typename U = value_type, -+ std::enable_if_t< -+ std::is_constructible::value && -+ !std::is_same, in_place_t>::value && -+ !std::is_same, Optional>::value && -+ !std::is_convertible::value, -+ bool> = false> -+ constexpr explicit Optional(U&& value) -+ : internal::OptionalBase(in_place, std::forward(value)) {} -+ - ~Optional() = default; - - // Defer copy-/move- assign operator implementation to OptionalBase. diff --git a/chromium-65.0.3325.146-Update-non-copy-non-move-assign-operators.patch b/chromium-65.0.3325.146-Update-non-copy-non-move-assign-operators.patch deleted file mode 100644 index f9c4503..0000000 --- a/chromium-65.0.3325.146-Update-non-copy-non-move-assign-operators.patch +++ /dev/null @@ -1,144 +0,0 @@ -diff -up chromium-65.0.3325.146/base/optional.h.ncnm chromium-65.0.3325.146/base/optional.h ---- chromium-65.0.3325.146/base/optional.h.ncnm 2018-03-13 22:40:11.743226276 -0400 -+++ chromium-65.0.3325.146/base/optional.h 2018-03-13 22:44:30.948211358 -0400 -@@ -240,37 +240,37 @@ class OptionalBase { - ~OptionalBase() = default; - - OptionalBase& operator=(const OptionalBase& other) { -- if (!other.storage_.is_populated_) { -- FreeIfNeeded(); -- return *this; -- } -- -- InitOrAssign(other.storage_.value_); -+ CopyAssign(other); - return *this; - } - - OptionalBase& operator=(OptionalBase&& other) { -- if (!other.storage_.is_populated_) { -- FreeIfNeeded(); -- return *this; -- } -- -- InitOrAssign(std::move(other.storage_.value_)); -+ MoveAssign(std::move(other)); - return *this; - } - -- void InitOrAssign(const T& value) { -- if (!storage_.is_populated_) -- storage_.Init(value); -+ template -+ void CopyAssign(const OptionalBase& other) { -+ if (other.storage_.is_populated_) -+ InitOrAssign(other.storage_.value_); - else -- storage_.value_ = value; -+ FreeIfNeeded(); - } - -- void InitOrAssign(T&& value) { -- if (!storage_.is_populated_) -- storage_.Init(std::move(value)); -+ template -+ void MoveAssign(OptionalBase&& other) { -+ if (other.storage_.is_populated_) -+ InitOrAssign(std::move(other.storage_.value_)); -+ else -+ FreeIfNeeded(); -+ } -+ -+ template -+ void InitOrAssign(U&& value) { -+ if (storage_.is_populated_) -+ storage_.value_ = std::forward(value); - else -- storage_.value_ = std::move(value); -+ storage_.Init(std::forward(value)); - } - - void FreeIfNeeded() { -@@ -340,7 +340,7 @@ struct MoveAssignable { - MoveAssignable& operator=(MoveAssignable&&) = delete; - }; - --// Helper to conditionally enable converting constructors. -+// Helper to conditionally enable converting constructors and assign operators. - template - struct IsConvertibleFromOptional - : std::integral_constant< -@@ -354,6 +354,16 @@ struct IsConvertibleFromOptional - std::is_convertible&&, T>::value || - std::is_convertible&&, T>::value> {}; - -+template -+struct IsAssignableFromOptional -+ : std::integral_constant< -+ bool, -+ IsConvertibleFromOptional::value || -+ std::is_assignable&>::value || -+ std::is_assignable&>::value || -+ std::is_assignable&&>::value || -+ std::is_assignable&&>::value> {}; -+ - // Forward compatibility for C++20. - template - using RemoveCvRefT = std::remove_cv_t>; -@@ -487,14 +497,42 @@ class Optional - return *this; - } - -- template -- typename std::enable_if, T>::value, -- Optional&>::type -+ // Perfect-forwarded assignment. -+ template -+ std::enable_if_t< -+ !std::is_same, Optional>::value && -+ std::is_constructible::value && -+ std::is_assignable::value && -+ (!std::is_scalar::value || -+ !std::is_same, T>::value), -+ Optional&> - operator=(U&& value) { - InitOrAssign(std::forward(value)); - return *this; - } - -+// Copy assign the state of other. -+ template -+ std::enable_if_t::value && -+ std::is_constructible::value && -+ std::is_assignable::value, -+ Optional&> -+ operator=(const Optional& other) { -+ CopyAssign(other); -+ return *this; -+ } -+ -+ // Move assign the state of other. -+ template -+ std::enable_if_t::value && -+ std::is_constructible::value && -+ std::is_assignable::value, -+ Optional&> -+ operator=(Optional&& other) { -+ MoveAssign(std::move(other)); -+ return *this; -+ } -+ - constexpr const T* operator->() const { - DCHECK(storage_.is_populated_); - return &value(); -@@ -606,8 +644,10 @@ class Optional - private: - // Accessing template base class's protected member needs explicit - // declaration to do so. -+ using internal::OptionalBase::CopyAssign; - using internal::OptionalBase::FreeIfNeeded; - using internal::OptionalBase::InitOrAssign; -+ using internal::OptionalBase::MoveAssign; - using internal::OptionalBase::storage_; - }; - diff --git a/chromium-65.0.3325.146-Use-affirmative-expression-in-base-Optional.patch b/chromium-65.0.3325.146-Use-affirmative-expression-in-base-Optional.patch deleted file mode 100644 index 8aaea85..0000000 --- a/chromium-65.0.3325.146-Use-affirmative-expression-in-base-Optional.patch +++ /dev/null @@ -1,265 +0,0 @@ -diff -up chromium-65.0.3325.146/base/optional.h.affirmative chromium-65.0.3325.146/base/optional.h ---- chromium-65.0.3325.146/base/optional.h.affirmative 2018-03-13 22:27:29.451969704 -0400 -+++ chromium-65.0.3325.146/base/optional.h 2018-03-13 22:27:57.031436045 -0400 -@@ -41,7 +41,7 @@ struct OptionalStorageBase { - - template - constexpr explicit OptionalStorageBase(in_place_t, Args&&... args) -- : is_null_(false), value_(std::forward(args)...) {} -+ : is_populated_(true), value_(std::forward(args)...) {} - - // When T is not trivially destructible we must call its - // destructor before deallocating its memory. -@@ -55,18 +55,18 @@ struct OptionalStorageBase { - // necessary for this case at the moment. Please see also the destructor - // comment in "is_trivially_destructible = true" specialization below. - ~OptionalStorageBase() { -- if (!is_null_) -+ if (is_populated_) - value_.~T(); - } - - template - void Init(Args&&... args) { -- DCHECK(is_null_); -+ DCHECK(!is_populated_); - ::new (&value_) T(std::forward(args)...); -- is_null_ = false; -+ is_populated_ = true; - } - -- bool is_null_ = true; -+ bool is_populated_ = false; - union { - // |empty_| exists so that the union will always be initialized, even when - // it doesn't contain a value. Union members must be initialized for the -@@ -84,7 +84,7 @@ struct OptionalStorageBase - constexpr explicit OptionalStorageBase(in_place_t, Args&&... args) -- : is_null_(false), value_(std::forward(args)...) {} -+ : is_populated_(true), value_(std::forward(args)...) {} - - // When T is trivially destructible (i.e. its destructor does nothing) there - // is no need to call it. Implicitly defined destructor is trivial, because -@@ -102,12 +102,12 @@ struct OptionalStorageBase - void Init(Args&&... args) { -- DCHECK(is_null_); -+ DCHECK(!is_populated_); - ::new (&value_) T(std::forward(args)...); -- is_null_ = false; -+ is_populated_ = true; - } - -- bool is_null_ = true; -+ bool is_populated_ = false; - union { - // |empty_| exists so that the union will always be initialized, even when - // it doesn't contain a value. Union members must be initialized for the -@@ -133,7 +133,7 @@ struct OptionalStorage : OptionalStorage - - // Accessing the members of template base class requires explicit - // declaration. -- using OptionalStorageBase::is_null_; -+ using OptionalStorageBase::is_populated_; - using OptionalStorageBase::value_; - using OptionalStorageBase::Init; - -@@ -145,12 +145,12 @@ struct OptionalStorage : OptionalStorage - OptionalStorage() = default; - - OptionalStorage(const OptionalStorage& other) { -- if (!other.is_null_) -+ if (other.is_populated_) - Init(other.value_); - } - - OptionalStorage(OptionalStorage&& other) { -- if (!other.is_null_) -+ if (other.is_populated_) - Init(std::move(other.value_)); - } - }; -@@ -160,7 +160,7 @@ struct OptionalStorage - : OptionalStorageBase { -- using OptionalStorageBase::is_null_; -+ using OptionalStorageBase::is_populated_; - using OptionalStorageBase::value_; - using OptionalStorageBase::Init; - using OptionalStorageBase::OptionalStorageBase; -@@ -169,7 +169,7 @@ struct OptionalStorage - : OptionalStorageBase { -- using OptionalStorageBase::is_null_; -+ using OptionalStorageBase::is_populated_; - using OptionalStorageBase::value_; - using OptionalStorageBase::Init; - using OptionalStorageBase::OptionalStorageBase; -@@ -188,7 +188,7 @@ struct OptionalStorage storage_; -@@ -334,12 +334,12 @@ class Optional : public internal::Option - } - - constexpr const T* operator->() const { -- DCHECK(!storage_.is_null_); -+ DCHECK(storage_.is_populated_); - return &value(); - } - - constexpr T* operator->() { -- DCHECK(!storage_.is_null_); -+ DCHECK(storage_.is_populated_); - return &value(); - } - -@@ -351,27 +351,27 @@ class Optional : public internal::Option - - constexpr T&& operator*() && { return std::move(value()); } - -- constexpr explicit operator bool() const { return !storage_.is_null_; } -+ constexpr explicit operator bool() const { return storage_.is_populated_; } - -- constexpr bool has_value() const { return !storage_.is_null_; } -+ constexpr bool has_value() const { return storage_.is_populated_; } - - constexpr T& value() & { -- DCHECK(!storage_.is_null_); -+ DCHECK(storage_.is_populated_); - return storage_.value_; - } - - constexpr const T& value() const & { -- DCHECK(!storage_.is_null_); -+ DCHECK(storage_.is_populated_); - return storage_.value_; - } - - constexpr T&& value() && { -- DCHECK(!storage_.is_null_); -+ DCHECK(storage_.is_populated_); - return std::move(storage_.value_); - } - - constexpr const T&& value() const && { -- DCHECK(!storage_.is_null_); -+ DCHECK(storage_.is_populated_); - return std::move(storage_.value_); - } - -@@ -382,8 +382,9 @@ class Optional : public internal::Option - // "T must be copy constructible"); - static_assert(std::is_convertible::value, - "U must be convertible to T"); -- return storage_.is_null_ ? static_cast(std::forward(default_value)) -- : value(); -+ return storage_.is_populated_ -+ ? value() -+ : static_cast(std::forward(default_value)); - } - - template -@@ -393,26 +394,27 @@ class Optional : public internal::Option - // "T must be move constructible"); - static_assert(std::is_convertible::value, - "U must be convertible to T"); -- return storage_.is_null_ ? static_cast(std::forward(default_value)) -- : std::move(value()); -+ return storage_.is_populated_ -+ ? std::move(value()) -+ : static_cast(std::forward(default_value)); - } - - void swap(Optional& other) { -- if (storage_.is_null_ && other.storage_.is_null_) -+ if (!storage_.is_populated_ && !other.storage_.is_populated_) - return; - -- if (storage_.is_null_ != other.storage_.is_null_) { -- if (storage_.is_null_) { -- storage_.Init(std::move(other.storage_.value_)); -- other.FreeIfNeeded(); -- } else { -+ if (storage_.is_populated_ != other.storage_.is_populated_) { -+ if (storage_.is_populated_) { - other.storage_.Init(std::move(storage_.value_)); - FreeIfNeeded(); -+ } else { -+ storage_.Init(std::move(other.storage_.value_)); -+ other.FreeIfNeeded(); - } - return; - } - -- DCHECK(!storage_.is_null_ && !other.storage_.is_null_); -+ DCHECK(storage_.is_populated_ && other.storage_.is_populated_); - using std::swap; - swap(**this, *other); - } diff --git a/chromium-65.0.3325.146-gcc5-r3.patch b/chromium-65.0.3325.146-gcc5-r3.patch deleted file mode 100644 index ab74a35..0000000 --- a/chromium-65.0.3325.146-gcc5-r3.patch +++ /dev/null @@ -1,74 +0,0 @@ -diff -up chromium-65.0.3325.146/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 chromium-65.0.3325.146/gpu/ipc/common/mailbox_struct_traits.h ---- chromium-65.0.3325.146/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 2018-03-06 18:04:32.000000000 -0500 -+++ chromium-65.0.3325.146/gpu/ipc/common/mailbox_struct_traits.h 2018-03-07 10:42:07.198179638 -0500 -@@ -15,7 +15,7 @@ namespace mojo { - template <> - struct StructTraits { - static base::span name(const gpu::Mailbox& mailbox) { -- return mailbox.name; -+ return base::make_span(mailbox.name); - } - static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out); - }; -diff -up chromium-65.0.3325.146/services/viz/public/cpp/compositing/filter_operation_struct_traits.h.gcc5-r3 chromium-65.0.3325.146/services/viz/public/cpp/compositing/filter_operation_struct_traits.h ---- chromium-65.0.3325.146/services/viz/public/cpp/compositing/filter_operation_struct_traits.h.gcc5-r3 2018-03-06 18:04:37.000000000 -0500 -+++ chromium-65.0.3325.146/services/viz/public/cpp/compositing/filter_operation_struct_traits.h 2018-03-07 10:42:07.198179638 -0500 -@@ -138,7 +138,7 @@ struct StructTraits matrix(const cc::FilterOperation& operation) { - if (operation.type() != cc::FilterOperation::COLOR_MATRIX) - return base::span(); -- return operation.matrix(); -+ return base::make_span(operation.matrix()); - } - - static base::span shape( -diff -up chromium-65.0.3325.146/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 chromium-65.0.3325.146/services/viz/public/cpp/compositing/quads_struct_traits.h ---- chromium-65.0.3325.146/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 2018-03-06 18:04:37.000000000 -0500 -+++ chromium-65.0.3325.146/services/viz/public/cpp/compositing/quads_struct_traits.h 2018-03-07 10:42:07.198179638 -0500 -@@ -308,7 +308,7 @@ struct StructTraits vertex_opacity(const viz::DrawQuad& input) { - const viz::TextureDrawQuad* quad = - viz::TextureDrawQuad::MaterialCast(&input); -- return quad->vertex_opacity; -+ return base::make_span(quad->vertex_opacity); - } - - static bool y_flipped(const viz::DrawQuad& input) { -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h.gcc5-r3 chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h ---- chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h.gcc5-r3 2018-03-06 18:05:06.000000000 -0500 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h 2018-03-07 10:48:53.996093882 -0500 -@@ -62,7 +62,7 @@ class WTF_EXPORT ArrayBufferContents { - allocation_length_(length), - data_(data), - data_length_(length), -- kind_(AllocationKind::kNormal), -+ kind_(WTF::ArrayBufferContents::AllocationKind::kNormal), - deleter_(deleter) {} - DataHandle(void* allocation_base, - size_t allocation_length, -@@ -93,11 +93,11 @@ class WTF_EXPORT ArrayBufferContents { - reinterpret_cast(allocation_base_) + - allocation_length_); - switch (kind_) { -- case AllocationKind::kNormal: -+ case WTF::ArrayBufferContents::AllocationKind::kNormal: - DCHECK(deleter_); - deleter_(data_); - return; -- case AllocationKind::kReservation: -+ case WTF::ArrayBufferContents::AllocationKind::kReservation: - ReleaseReservedMemory(allocation_base_, allocation_length_); - return; - } -diff -up chromium-65.0.3325.146/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 chromium-65.0.3325.146/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc ---- chromium-65.0.3325.146/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 2018-03-06 18:06:09.000000000 -0500 -+++ chromium-65.0.3325.146/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2018-03-07 10:42:07.199179616 -0500 -@@ -10,7 +10,7 @@ - - #include "modules/audio_processing/aec3/aec_state.h" - --#include -+#include - - #include - #include diff --git a/chromium-65.0.3325.146-gcc7.patch b/chromium-65.0.3325.146-gcc7.patch deleted file mode 100644 index 4f2b46c..0000000 --- a/chromium-65.0.3325.146-gcc7.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 chromium-65.0.3325.146/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h ---- chromium-65.0.3325.146/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 2018-03-07 10:34:48.783900894 -0500 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h 2018-03-07 10:35:44.885638503 -0500 -@@ -5,6 +5,7 @@ - #ifndef SharedGpuContext_h - #define SharedGpuContext_h - -+#include - #include - #include "base/callback.h" - #include "base/memory/weak_ptr.h" diff --git a/chromium-65.0.3325.146-workaround-gcc7-is_trivially_copy_constructable-failure.patch b/chromium-65.0.3325.146-workaround-gcc7-is_trivially_copy_constructable-failure.patch deleted file mode 100644 index 241dfb5..0000000 --- a/chromium-65.0.3325.146-workaround-gcc7-is_trivially_copy_constructable-failure.patch +++ /dev/null @@ -1,55 +0,0 @@ -diff -up chromium-65.0.3325.146/base/optional.h.784732 chromium-65.0.3325.146/base/optional.h ---- chromium-65.0.3325.146/base/optional.h.784732 2018-03-07 13:40:00.103579631 -0500 -+++ chromium-65.0.3325.146/base/optional.h 2018-03-07 13:41:08.950323996 -0500 -@@ -9,6 +9,7 @@ - #include - - #include "base/logging.h" -+#include "base/template_util.h" - - namespace base { - -@@ -106,7 +107,7 @@ struct OptionalStorageBase::value, -+ bool = is_trivially_copy_constructible::value, - bool = std::is_trivially_move_constructible::value> - struct OptionalStorage : OptionalStorageBase { - // This is no trivially {copy,move} constructible case. Other cases are -diff -up chromium-65.0.3325.146/base/template_util.h.784732 chromium-65.0.3325.146/base/template_util.h ---- chromium-65.0.3325.146/base/template_util.h.784732 2018-03-07 13:41:19.479131969 -0500 -+++ chromium-65.0.3325.146/base/template_util.h 2018-03-07 13:42:41.308639551 -0500 -@@ -10,6 +10,7 @@ - #include - #include - #include -+#include - - #include "build/build_config.h" - -@@ -127,6 +128,23 @@ template - using is_trivially_copyable = std::is_trivially_copyable; - #endif - -+#if defined(__GNUC__) && !defined(__clang__) && __GNUC__ <= 7 -+// Workaround for g++7 and earlier family. -+// Due to https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80654, without this -+// Optional> where T is non-copyable causes a compile error. -+// As we know it is not trivially copy constructible, explicitly declare so. -+template -+struct is_trivially_copy_constructible -+ : std::is_trivially_copy_constructible {}; -+ -+template -+struct is_trivially_copy_constructible> : std::false_type {}; -+#else -+// Otherwise use std::is_trivially_copy_constructible as is. -+template -+using is_trivially_copy_constructible = std::is_trivially_copy_constructible; -+#endif -+ - } // namespace base - - #undef CR_USE_FALLBACKS_FOR_GCC_WITH_LIBCXX diff --git a/chromium-65.0.3325.146-wtf-oilpan-Remove-GC-checks-from-WTF-Optional-T.patch b/chromium-65.0.3325.146-wtf-oilpan-Remove-GC-checks-from-WTF-Optional-T.patch deleted file mode 100644 index 8b5ff7f..0000000 --- a/chromium-65.0.3325.146-wtf-oilpan-Remove-GC-checks-from-WTF-Optional-T.patch +++ /dev/null @@ -1,61 +0,0 @@ -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/platform/heap/TraceTraits.h.oilpan chromium-65.0.3325.146/third_party/WebKit/Source/platform/heap/TraceTraits.h ---- chromium-65.0.3325.146/third_party/WebKit/Source/platform/heap/TraceTraits.h.oilpan 2018-03-13 16:45:40.613426445 -0400 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/platform/heap/TraceTraits.h 2018-03-13 16:45:49.946244905 -0400 -@@ -18,6 +18,7 @@ - #include "platform/wtf/HashTable.h" - #include "platform/wtf/LinkedHashSet.h" - #include "platform/wtf/ListHashSet.h" -+#include "platform/wtf/Optional.h" - #include "platform/wtf/TypeTraits.h" - - namespace blink { -@@ -325,6 +326,23 @@ class TraceTrait> { - } - }; - -+// While using Optional with garbage-collected types is generally disallowed -+// by the OptionalGarbageCollected check in blink_gc_plugin, garbage-collected -+// containers such as HeapVector are allowed and need to be traced. -+template -+class TraceTrait> { -+ STATIC_ONLY(TraceTrait); -+ -+ public: -+ template -+ static void Trace(VisitorDispatcher visitor, WTF::Optional* optional) { -+ if (*optional != WTF::nullopt) { -+ TraceIfEnabled::value>::Trace(visitor, -+ optional->value()); -+ } -+ } -+}; -+ - // If eager tracing leads to excessively deep |trace()| call chains (and - // the system stack usage that this brings), the marker implementation will - // switch to using an explicit mark stack. Recursive and deep object graphs -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/Optional.h.oilpan chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/Optional.h ---- chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/Optional.h.oilpan 2018-03-13 16:46:01.683015951 -0400 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/Optional.h 2018-03-13 16:46:51.632043375 -0400 -@@ -7,20 +7,15 @@ - - #include "base/optional.h" - #include "platform/wtf/TemplateUtil.h" --#include "platform/wtf/TypeTraits.h" - - namespace WTF { - - // WTF::Optional is base::Optional. See base/optional.h for documentation. - // - // A clang plugin enforces that garbage collected types are not allocated --// outside of the heap, similarly we enforce that one doesn't create garbage --// collected types nested inside an Optional. -+// outside of the heap. GC containers such as HeapVector are allowed though. - template --using Optional = -- typename std::enable_if::value || -- IsPersistentReferenceType::value, -- base::Optional>::type; -+using Optional = base::Optional; - - constexpr base::nullopt_t nullopt = base::nullopt; - constexpr base::in_place_t in_place = base::in_place; diff --git a/chromium-65.0.3325.146-wtf-vector-fix.patch b/chromium-65.0.3325.146-wtf-vector-fix.patch deleted file mode 100644 index e4bfeba..0000000 --- a/chromium-65.0.3325.146-wtf-vector-fix.patch +++ /dev/null @@ -1,54 +0,0 @@ -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/DEPS.jdp chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/DEPS ---- chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/DEPS.jdp 2018-03-07 13:54:42.653286576 -0500 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/DEPS 2018-03-07 13:55:00.973903591 -0500 -@@ -16,6 +16,7 @@ include_rules = [ - "+base/process/process_metrics.h", - "+base/rand_util.h", - "+base/strings", -+ "+base/template_util.h", - "+base/threading/thread_checker.h", - "+base/time/time.h", - "+base/tuple.h", -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/Optional.h.jdp chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/Optional.h ---- chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/Optional.h.jdp 2018-03-07 13:56:29.053062331 -0500 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/Optional.h 2018-03-07 13:56:36.595904651 -0500 -@@ -6,6 +6,7 @@ - #define Optional_h - - #include "base/optional.h" -+#include "platform/wtf/TemplateUtil.h" - #include "platform/wtf/TypeTraits.h" - - namespace WTF { -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/TemplateUtil.h.jdp chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/TemplateUtil.h ---- chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/TemplateUtil.h.jdp 2018-03-07 13:56:47.356679702 -0500 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/TemplateUtil.h 2018-03-07 13:57:41.769542223 -0500 -@@ -0,0 +1,28 @@ -+// Copyright 2018 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. -+ -+#ifndef TemplateUtil_h -+#define TemplateUtil_h -+ -+#include "base/template_util.h" -+#include "platform/wtf/Vector.h" -+ -+namespace base { -+ -+#if defined(__GNUC__) && !defined(__clang__) && __GNUC__ <= 7 -+// Workaround for g++7 and earlier family. -+// Due to https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80654, without this -+// Optional> where T is non-copyable causes a compile error. -+// As we know it is not trivially copy constructible, explicitly declare so. -+// -+// It completes the declaration in base/template_util.h that was provided -+// for std::vector -+template -+struct is_trivially_copy_constructible> : std::false_type {}; -+#endif -+ -+} // namespace base -+ -+#endif // TemplateUtil_h -+ diff --git a/chromium-65.0.3325.162-boolfix.patch b/chromium-65.0.3325.162-boolfix.patch deleted file mode 100644 index a27f3a8..0000000 --- a/chromium-65.0.3325.162-boolfix.patch +++ /dev/null @@ -1,36 +0,0 @@ -diff -up chromium-65.0.3325.162/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix chromium-65.0.3325.162/mojo/public/cpp/bindings/associated_interface_ptr_info.h ---- chromium-65.0.3325.162/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix 2018-03-15 13:07:54.999428755 -0400 -+++ chromium-65.0.3325.162/mojo/public/cpp/bindings/associated_interface_ptr_info.h 2018-03-15 13:08:21.270794252 -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-65.0.3325.162/mojo/public/cpp/bindings/associated_interface_request.h.boolfix chromium-65.0.3325.162/mojo/public/cpp/bindings/associated_interface_request.h ---- chromium-65.0.3325.162/mojo/public/cpp/bindings/associated_interface_request.h.boolfix 2018-03-15 13:07:09.680523296 -0400 -+++ chromium-65.0.3325.162/mojo/public/cpp/bindings/associated_interface_request.h 2018-03-15 13:07:44.429684037 -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-65.0.3325.162/mojo/public/cpp/bindings/interface_request.h.boolfix chromium-65.0.3325.162/mojo/public/cpp/bindings/interface_request.h ---- chromium-65.0.3325.162/mojo/public/cpp/bindings/interface_request.h.boolfix 2018-03-15 13:08:33.494499025 -0400 -+++ chromium-65.0.3325.162/mojo/public/cpp/bindings/interface_request.h 2018-03-15 13:10:39.218462546 -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_; } -+ explicit operator bool() const { return (bool) handle_; } - - // Removes the message pipe from the request and returns it. - ScopedMessagePipeHandle PassMessagePipe() { return std::move(handle_); } diff --git a/chromium-65.0.3325.162-epel7-stdc++.patch b/chromium-65.0.3325.162-epel7-stdc++.patch deleted file mode 100644 index ee2066b..0000000 --- a/chromium-65.0.3325.162-epel7-stdc++.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-65.0.3325.162/build/config/posix/BUILD.gn.epel7 chromium-65.0.3325.162/build/config/posix/BUILD.gn ---- chromium-65.0.3325.162/build/config/posix/BUILD.gn.epel7 2018-03-20 16:14:42.425926323 -0400 -+++ chromium-65.0.3325.162/build/config/posix/BUILD.gn 2018-03-20 16:15:10.150152245 -0400 -@@ -74,6 +74,8 @@ config("runtime_library") { - "rt", - ] - } -+ } else { -+ libs += [ "stdc++" ] - } - - if (!is_mac && !is_ios && sysroot != "") { diff --git a/chromium-65.0.3325.162-skia-aarch64-buildfix.patch b/chromium-65.0.3325.162-skia-aarch64-buildfix.patch deleted file mode 100644 index e48346c..0000000 --- a/chromium-65.0.3325.162-skia-aarch64-buildfix.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -up chromium-65.0.3325.162/third_party/skia/src/jumper/SkJumper_stages.cpp.aarch64fix chromium-65.0.3325.162/third_party/skia/src/jumper/SkJumper_stages.cpp ---- chromium-65.0.3325.162/third_party/skia/src/jumper/SkJumper_stages.cpp.aarch64fix 2018-03-15 15:27:35.201345844 -0400 -+++ chromium-65.0.3325.162/third_party/skia/src/jumper/SkJumper_stages.cpp 2018-03-15 15:31:30.471777400 -0400 -@@ -666,7 +666,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) -@@ -686,7 +686,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) diff --git a/chromium-66.0.3359.117-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch b/chromium-66.0.3359.117-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch deleted file mode 100644 index 36ade41..0000000 --- a/chromium-66.0.3359.117-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch +++ /dev/null @@ -1,33 +0,0 @@ -diff -up chromium-66.0.3359.117/services/preferences/tracked/pref_hash_filter.h.gcc-full-decl chromium-66.0.3359.117/services/preferences/tracked/pref_hash_filter.h ---- chromium-66.0.3359.117/services/preferences/tracked/pref_hash_filter.h.gcc-full-decl 2018-04-25 16:29:52.372692179 -0400 -+++ chromium-66.0.3359.117/services/preferences/tracked/pref_hash_filter.h 2018-04-25 16:31:15.698058409 -0400 -@@ -21,9 +21,9 @@ - #include "services/preferences/public/mojom/preferences.mojom.h" - #include "services/preferences/tracked/hash_store_contents.h" - #include "services/preferences/tracked/interceptable_pref_filter.h" -+#include "services/preferences/tracked/pref_hash_store.h" - #include "services/preferences/tracked/tracked_preference.h" - --class PrefHashStore; - class PrefService; - - namespace base { -diff -up chromium-66.0.3359.117/third_party/WebKit/Source/modules/webdatabase/SQLTransactionBackend.h.gcc-full-decl chromium-66.0.3359.117/third_party/WebKit/Source/modules/webdatabase/SQLTransactionBackend.h ---- chromium-66.0.3359.117/third_party/WebKit/Source/modules/webdatabase/SQLTransactionBackend.h.gcc-full-decl 2018-04-17 21:05:12.000000000 -0400 -+++ chromium-66.0.3359.117/third_party/WebKit/Source/modules/webdatabase/SQLTransactionBackend.h 2018-04-25 16:29:52.373692159 -0400 -@@ -30,6 +30,7 @@ - - #include - #include "modules/webdatabase/DatabaseBasicTypes.h" -+#include "modules/webdatabase/SQLError.h" - #include "modules/webdatabase/SQLStatement.h" - #include "modules/webdatabase/SQLStatementBackend.h" - #include "modules/webdatabase/SQLTransactionStateMachine.h" -@@ -41,7 +42,6 @@ - namespace blink { - - class Database; --class SQLErrorData; - class SQLiteTransaction; - class SQLTransaction; - class SQLTransactionBackend; diff --git a/chromium-66.0.3359.117-GCC-do-not-use-initializer-list-for-NoDestructor-of-.patch b/chromium-66.0.3359.117-GCC-do-not-use-initializer-list-for-NoDestructor-of-.patch deleted file mode 100644 index cb68934..0000000 --- a/chromium-66.0.3359.117-GCC-do-not-use-initializer-list-for-NoDestructor-of-.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-66.0.3359.117/chrome/browser/supervised_user/supervised_user_url_filter.cc.flatsetfix chromium-66.0.3359.117/chrome/browser/supervised_user/supervised_user_url_filter.cc ---- chromium-66.0.3359.117/chrome/browser/supervised_user/supervised_user_url_filter.cc.flatsetfix 2018-04-30 14:22:23.997461566 -0400 -+++ chromium-66.0.3359.117/chrome/browser/supervised_user/supervised_user_url_filter.cc 2018-04-30 14:22:51.867920383 -0400 -@@ -368,7 +368,7 @@ SupervisedUserURLFilter::GetFilteringBeh - - // Allow navigations to whitelisted origins (currently families.google.com). - static const base::NoDestructor> kWhitelistedOrigins( -- {GURL(kFamiliesUrl).GetOrigin()}); -+ base::flat_set({GURL(kFamiliesUrl).GetOrigin()})); - if (base::ContainsKey(*kWhitelistedOrigins, effective_url.GetOrigin())) - return ALLOW; - diff --git a/chromium-66.0.3359.117-gcc-copy-constructor-fix.patch b/chromium-66.0.3359.117-gcc-copy-constructor-fix.patch deleted file mode 100644 index 09c5b82..0000000 --- a/chromium-66.0.3359.117-gcc-copy-constructor-fix.patch +++ /dev/null @@ -1,49 +0,0 @@ -diff -up chromium-66.0.3359.117/cc/raster/playback_image_provider.cc.copycon chromium-66.0.3359.117/cc/raster/playback_image_provider.cc ---- chromium-66.0.3359.117/cc/raster/playback_image_provider.cc.copycon 2018-04-23 13:22:43.109126071 -0400 -+++ chromium-66.0.3359.117/cc/raster/playback_image_provider.cc 2018-04-23 13:23:55.761704938 -0400 -@@ -20,7 +20,7 @@ void UnrefImageFromCache(DrawImage draw_ - PlaybackImageProvider::PlaybackImageProvider( - ImageDecodeCache* cache, - const gfx::ColorSpace& target_color_space, -- base::Optional settings) -+ base::Optional&& settings) - : cache_(cache), - target_color_space_(target_color_space), - settings_(std::move(settings)) { -@@ -70,7 +70,10 @@ PlaybackImageProvider::GetDecodedDrawIma - } - - PlaybackImageProvider::Settings::Settings() = default; --PlaybackImageProvider::Settings::Settings(const Settings& other) = default; -+PlaybackImageProvider::Settings::Settings(PlaybackImageProvider::Settings&&) = -+ default; - PlaybackImageProvider::Settings::~Settings() = default; -+PlaybackImageProvider::Settings& PlaybackImageProvider::Settings::operator=( -+ PlaybackImageProvider::Settings&&) = default; - - } // namespace cc -diff -up chromium-66.0.3359.117/cc/raster/playback_image_provider.h.copycon chromium-66.0.3359.117/cc/raster/playback_image_provider.h ---- chromium-66.0.3359.117/cc/raster/playback_image_provider.h.copycon 2018-04-23 13:24:07.699471148 -0400 -+++ chromium-66.0.3359.117/cc/raster/playback_image_provider.h 2018-04-23 13:24:57.080506348 -0400 -@@ -20,8 +20,10 @@ class CC_EXPORT PlaybackImageProvider : - public: - struct CC_EXPORT Settings { - Settings(); -- Settings(const Settings& other); -+ Settings(const Settings&) = delete; -+ Settings(Settings&&); - ~Settings(); -+ Settings& operator=(Settings&&); - - // The set of image ids to skip during raster. - PaintImageIdFlatSet images_to_skip; -@@ -34,7 +36,7 @@ class CC_EXPORT PlaybackImageProvider : - // If no settings are provided, all images are skipped during rasterization. - PlaybackImageProvider(ImageDecodeCache* cache, - const gfx::ColorSpace& target_color_space, -- base::Optional settings); -+ base::Optional&& settings); - ~PlaybackImageProvider() override; - - PlaybackImageProvider(PlaybackImageProvider&& other); -diff -up chromium-66.0.3359.117/cc/raster/playback_image_provider_unittest.cc.copycon chromium-66.0.3359.117/cc/raster/playback_image_provider_unittest.cc diff --git a/chromium-66.0.3359.117-gcc-optional-move-fixes.patch b/chromium-66.0.3359.117-gcc-optional-move-fixes.patch deleted file mode 100644 index 80df7d0..0000000 --- a/chromium-66.0.3359.117-gcc-optional-move-fixes.patch +++ /dev/null @@ -1,45 +0,0 @@ -diff -up chromium-66.0.3359.117/content/browser/appcache/appcache_request_handler.cc.gccomove chromium-66.0.3359.117/content/browser/appcache/appcache_request_handler.cc ---- chromium-66.0.3359.117/content/browser/appcache/appcache_request_handler.cc.gccomove 2018-04-23 12:53:32.419477463 -0400 -+++ chromium-66.0.3359.117/content/browser/appcache/appcache_request_handler.cc 2018-04-23 12:54:02.497887258 -0400 -@@ -639,7 +639,7 @@ AppCacheRequestHandler::MaybeCreateSubre - - SubresourceLoaderParams params; - params.loader_factory_info = factory_ptr.PassInterface(); -- return params; -+ return base::Optional(std::move(params)); - } - - void AppCacheRequestHandler::MaybeCreateSubresourceLoader( -diff -up chromium-66.0.3359.117/content/browser/service_worker/service_worker_controllee_request_handler.cc.gccomove chromium-66.0.3359.117/content/browser/service_worker/service_worker_controllee_request_handler.cc ---- chromium-66.0.3359.117/content/browser/service_worker/service_worker_controllee_request_handler.cc.gccomove 2018-04-23 12:54:16.614610083 -0400 -+++ chromium-66.0.3359.117/content/browser/service_worker/service_worker_controllee_request_handler.cc 2018-04-23 12:54:38.401182827 -0400 -@@ -271,7 +271,7 @@ ServiceWorkerControlleeRequestHandler::M - controller_info->object_info = provider_host_->GetOrCreateServiceWorkerHandle( - provider_host_->controller()); - params.controller_service_worker_info = std::move(controller_info); -- return params; -+ return base::Optional(std::move(params)); - } - - void ServiceWorkerControlleeRequestHandler::PrepareForMainResource( -diff -up chromium-66.0.3359.117/device/fido/device_response_converter.cc.gccomove chromium-66.0.3359.117/device/fido/device_response_converter.cc ---- chromium-66.0.3359.117/device/fido/device_response_converter.cc.gccomove 2018-04-23 12:54:51.452926482 -0400 -+++ chromium-66.0.3359.117/device/fido/device_response_converter.cc 2018-04-23 12:55:24.248283058 -0400 -@@ -121,7 +121,7 @@ base::Optionalsecond.GetUnsigned()); - } - -- return response; -+ return base::Optional(std::move(response)); - } - - base::Optional ReadCTAPGetInfoResponse( -@@ -241,7 +241,7 @@ base::Optional(std::move(response)); - } - - } // namespace device diff --git a/chromium-66.0.3359.117-gcc-vector-copy-constructor-fix.patch b/chromium-66.0.3359.117-gcc-vector-copy-constructor-fix.patch deleted file mode 100644 index b86c200..0000000 --- a/chromium-66.0.3359.117-gcc-vector-copy-constructor-fix.patch +++ /dev/null @@ -1,53 +0,0 @@ -diff -up chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/DEPS.944404 chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/DEPS ---- chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/DEPS.944404 2018-04-23 14:18:43.702116916 -0400 -+++ chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/DEPS 2018-04-23 14:19:05.854680223 -0400 -@@ -16,6 +16,7 @@ include_rules = [ - "+base/process/process_metrics.h", - "+base/rand_util.h", - "+base/strings", -+ "+base/template_util.h", - "+base/threading/thread_checker.h", - "+base/time/time.h", - "+base/tuple.h", -diff -up chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/Optional.h.944404 chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/Optional.h ---- chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/Optional.h.944404 2018-04-23 14:20:05.718499685 -0400 -+++ chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/Optional.h 2018-04-23 14:20:18.165253615 -0400 -@@ -6,6 +6,7 @@ - #define Optional_h - - #include "base/optional.h" -+#include "platform/wtf/TemplateUtil.h" - - namespace WTF { - -diff -up chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/TemplateUtil.h.944404 chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/TemplateUtil.h ---- chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/TemplateUtil.h.944404 2018-04-23 14:20:31.660987877 -0400 -+++ chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/TemplateUtil.h 2018-04-23 14:21:40.276637297 -0400 -@@ -0,0 +1,27 @@ -+// Copyright 2018 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. -+ -+#ifndef TemplateUtil_h -+#define TemplateUtil_h -+ -+#include "base/template_util.h" -+#include "platform/wtf/Vector.h" -+ -+namespace base { -+ -+#if defined(__GNUC__) && !defined(__clang__) && __GNUC__ <= 7 -+// Workaround for g++7 and earlier family. -+// Due to https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80654, without this -+// Optional> where T is non-copyable causes a compile error. -+// As we know it is not trivially copy constructible, explicitly declare so. -+// -+// It completes the declaration in base/template_util.h that was provided -+// for std::vector -+template -+struct is_trivially_copy_constructible> : std::false_type {}; -+#endif -+ -+} // namespace base -+ -+#endif // TemplateUtil_h diff --git a/chromium-66.0.3359.117-gcc5-r3.patch b/chromium-66.0.3359.117-gcc5-r3.patch deleted file mode 100644 index 56abcf1..0000000 --- a/chromium-66.0.3359.117-gcc5-r3.patch +++ /dev/null @@ -1,38 +0,0 @@ -diff -up chromium-66.0.3359.117/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 chromium-66.0.3359.117/gpu/ipc/common/mailbox_struct_traits.h ---- chromium-66.0.3359.117/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 2018-04-17 21:04:33.000000000 -0400 -+++ chromium-66.0.3359.117/gpu/ipc/common/mailbox_struct_traits.h 2018-04-18 12:12:40.065663210 -0400 -@@ -15,7 +15,7 @@ namespace mojo { - template <> - struct StructTraits { - static base::span name(const gpu::Mailbox& mailbox) { -- return mailbox.name; -+ return base::make_span(mailbox.name); - } - static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out); - }; -diff -up chromium-66.0.3359.117/services/viz/public/cpp/compositing/filter_operation_struct_traits.h.gcc5-r3 chromium-66.0.3359.117/services/viz/public/cpp/compositing/filter_operation_struct_traits.h -diff -up chromium-66.0.3359.117/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 chromium-66.0.3359.117/services/viz/public/cpp/compositing/quads_struct_traits.h ---- chromium-66.0.3359.117/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 2018-04-17 21:04:43.000000000 -0400 -+++ chromium-66.0.3359.117/services/viz/public/cpp/compositing/quads_struct_traits.h 2018-04-18 12:12:40.067663160 -0400 -@@ -308,7 +308,7 @@ struct StructTraits vertex_opacity(const viz::DrawQuad& input) { - const viz::TextureDrawQuad* quad = - viz::TextureDrawQuad::MaterialCast(&input); -- return quad->vertex_opacity; -+ return base::make_span(quad->vertex_opacity); - } - - static bool y_flipped(const viz::DrawQuad& input) { -diff -up chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h.gcc5-r3 chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h -diff -up chromium-66.0.3359.117/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 chromium-66.0.3359.117/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc ---- chromium-66.0.3359.117/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 2018-04-17 21:06:20.000000000 -0400 -+++ chromium-66.0.3359.117/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2018-04-18 12:12:40.068663134 -0400 -@@ -10,7 +10,7 @@ - - #include "modules/audio_processing/aec3/aec_state.h" - --#include -+#include - - #include - #include diff --git a/chromium-66.0.3359.117-nounrar.patch b/chromium-66.0.3359.117-nounrar.patch deleted file mode 100644 index 67a517b..0000000 --- a/chromium-66.0.3359.117-nounrar.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff -up chromium-66.0.3359.117/chrome/services/file_util/public/cpp/BUILD.gn.nounrar chromium-66.0.3359.117/chrome/services/file_util/public/cpp/BUILD.gn ---- chromium-66.0.3359.117/chrome/services/file_util/public/cpp/BUILD.gn.nounrar 2018-04-25 12:17:13.858139109 -0400 -+++ chromium-66.0.3359.117/chrome/services/file_util/public/cpp/BUILD.gn 2018-04-25 12:19:53.639532053 -0400 -@@ -27,9 +27,9 @@ source_set("cpp") { - } - - #TODO(crbug/750327): This dependency is here temporarily. -- deps = [ -- "//third_party/unrar:unrar", -- ] -+ # deps = [ -+ # "//third_party/unrar:unrar", -+ # ] - - public_deps += [ "//chrome/common/safe_browsing" ] - } diff --git a/chromium-66.0.3359.139-arm-init-fix.patch b/chromium-66.0.3359.139-arm-init-fix.patch deleted file mode 100644 index 754af5b..0000000 --- a/chromium-66.0.3359.139-arm-init-fix.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-66.0.3359.139/skia/ext/convolver_neon.cc.arm-init-fix chromium-66.0.3359.139/skia/ext/convolver_neon.cc ---- chromium-66.0.3359.139/skia/ext/convolver_neon.cc.arm-init-fix 2018-05-05 10:07:03.624424987 -0400 -+++ chromium-66.0.3359.139/skia/ext/convolver_neon.cc 2018-05-05 10:07:45.417503001 -0400 -@@ -23,7 +23,7 @@ AccumRemainder(const unsigned char* pixe - remainder[2] += coeff * pixels_left[i * 4 + 2]; - remainder[3] += coeff * pixels_left[i * 4 + 3]; - } -- return {remainder[0], remainder[1], remainder[2], remainder[3]}; -+ return vld1q_s32(remainder); - } - - // Convolves horizontally along a single row. The row data is given in diff --git a/chromium-66.0.3359.170-gcc8-alignof.patch b/chromium-66.0.3359.170-gcc8-alignof.patch deleted file mode 100644 index 0c2b356..0000000 --- a/chromium-66.0.3359.170-gcc8-alignof.patch +++ /dev/null @@ -1,18 +0,0 @@ -diff -up chromium-66.0.3359.170/mojo/public/c/system/macros.h.gcc8-alignof chromium-66.0.3359.170/mojo/public/c/system/macros.h ---- chromium-66.0.3359.170/mojo/public/c/system/macros.h.gcc8-alignof 2018-05-15 14:58:46.448912634 -0400 -+++ chromium-66.0.3359.170/mojo/public/c/system/macros.h 2018-05-15 14:58:52.041784613 -0400 -@@ -18,7 +18,13 @@ - #endif - - // Like the C++11 |alignof| operator. --#if __cplusplus >= 201103L -+#if defined(__GNUC__) && __GNUC__ >= 8 -+// GCC 8 has changed the alignof operator to return the minimal alignment -+// required by the target ABI, instead of the preferred alignment. -+// This means that on 32-bit x86, it will return 4 instead of 8. -+// Use __alignof__ instead to avoid this. -+#define MOJO_ALIGNOF(type) __alignof__(type) -+#elif __cplusplus >= 201103L - #define MOJO_ALIGNOF(type) alignof(type) - #elif defined(__GNUC__) - #define MOJO_ALIGNOF(type) __alignof__(type) diff --git a/chromium-67.0.3396.62-boolfix.patch b/chromium-67.0.3396.62-boolfix.patch deleted file mode 100644 index d0ed189..0000000 --- a/chromium-67.0.3396.62-boolfix.patch +++ /dev/null @@ -1,36 +0,0 @@ -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-crashpad-aarch64-buildfix.patch b/chromium-67.0.3396.62-crashpad-aarch64-buildfix.patch deleted file mode 100644 index e19d726..0000000 --- a/chromium-67.0.3396.62-crashpad-aarch64-buildfix.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -up chromium-67.0.3396.62/third_party/crashpad/crashpad/util/misc/capture_context_linux.S.aarch64fix chromium-67.0.3396.62/third_party/crashpad/crashpad/util/misc/capture_context_linux.S ---- chromium-67.0.3396.62/third_party/crashpad/crashpad/util/misc/capture_context_linux.S.aarch64fix 2018-06-04 14:58:04.730083967 -0400 -+++ chromium-67.0.3396.62/third_party/crashpad/crashpad/util/misc/capture_context_linux.S 2018-06-04 14:58:24.896572816 -0400 -@@ -288,7 +288,7 @@ CAPTURECONTEXT_SYMBOL2: - #elif defined(__aarch64__) - - // Zero out fault_address, which is unused. -- str x31, [x0, #0xb0] // context->uc_mcontext.fault_address -+ str xzr, [x0, #0xb0] // context->uc_mcontext.fault_address - - // Save general purpose registers in context->uc_mcontext.regs[i]. - // The original x0 can't be recovered. -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 diff --git a/chromium-67.0.3396.62-epel7-use-old-python-exec-syntax.patch b/chromium-67.0.3396.62-epel7-use-old-python-exec-syntax.patch deleted file mode 100644 index 1aa5600..0000000 --- a/chromium-67.0.3396.62-epel7-use-old-python-exec-syntax.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-67.0.3396.62/tools/gn/bootstrap/bootstrap.py.oldexec chromium-67.0.3396.62/tools/gn/bootstrap/bootstrap.py ---- chromium-67.0.3396.62/tools/gn/bootstrap/bootstrap.py.oldexec 2018-06-06 10:13:40.862084284 -0400 -+++ chromium-67.0.3396.62/tools/gn/bootstrap/bootstrap.py 2018-06-06 10:14:08.809490819 -0400 -@@ -112,7 +112,7 @@ def windows_prepare_toolchain(tempdir): - - _globals = {"__builtins__":None} - _locals = {} -- exec(response, _globals, _locals) -+ exec response in _globals, _locals - - return _locals - diff --git a/chromium-67.0.3396.62-skia-aarch64-buildfix.patch b/chromium-67.0.3396.62-skia-aarch64-buildfix.patch deleted file mode 100644 index 6b37b08..0000000 --- a/chromium-67.0.3396.62-skia-aarch64-buildfix.patch +++ /dev/null @@ -1,21 +0,0 @@ -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) diff --git a/chromium-67.0.3396.87-fedora-user-agent.patch b/chromium-67.0.3396.87-fedora-user-agent.patch deleted file mode 100644 index 8df304d..0000000 --- a/chromium-67.0.3396.87-fedora-user-agent.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-67.0.3396.87/content/common/user_agent.cc.fedora-user-agent chromium-67.0.3396.87/content/common/user_agent.cc ---- chromium-67.0.3396.87/content/common/user_agent.cc.fedora-user-agent 2018-06-25 16:01:48.092188102 -0400 -+++ chromium-67.0.3396.87/content/common/user_agent.cc 2018-06-25 16:02:42.634878954 -0400 -@@ -141,7 +141,7 @@ std::string getUserAgentPlatform() { - #elif defined(OS_MACOSX) - "Macintosh; "; - #elif defined(USE_X11) || defined(USE_OZONE) -- "X11; "; // strange, but that's what Firefox uses -+ "X11; Fedora; "; // strange, but that's what Firefox uses - #elif defined(OS_ANDROID) - "Linux; "; - #else diff --git a/chromium-67.0.3396.99-py2-bootstrap.patch b/chromium-67.0.3396.99-py2-bootstrap.patch deleted file mode 100644 index b59c84b..0000000 --- a/chromium-67.0.3396.99-py2-bootstrap.patch +++ /dev/null @@ -1,42 +0,0 @@ -diff -up chromium-67.0.3396.99/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py.py2 chromium-67.0.3396.99/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py ---- chromium-67.0.3396.99/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py.py2 2018-07-25 14:14:02.004886479 -0400 -+++ chromium-67.0.3396.99/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py 2018-07-25 14:15:30.167896461 -0400 -@@ -58,7 +58,7 @@ def _MinifyJS(input_js): - - with tempfile.NamedTemporaryFile() as _: - args = [ -- 'python', -+ 'python2', - rjsmin_path - ] - p = subprocess.Popen(args, -@@ -177,7 +177,7 @@ def _MinifyCSS(css_text): - os.path.join(py_vulcanize_path, 'third_party', 'rcssmin', 'rcssmin.py')) - - with tempfile.NamedTemporaryFile() as _: -- rcssmin_args = ['python', rcssmin_path] -+ rcssmin_args = ['python2', rcssmin_path] - p = subprocess.Popen(rcssmin_args, - stdin=subprocess.PIPE, - stdout=subprocess.PIPE, -diff -up chromium-67.0.3396.99/tools/gn/bootstrap/bootstrap.py.py2 chromium-67.0.3396.99/tools/gn/bootstrap/bootstrap.py ---- chromium-67.0.3396.99/tools/gn/bootstrap/bootstrap.py.py2 2018-07-24 16:58:53.372022183 -0400 -+++ chromium-67.0.3396.99/tools/gn/bootstrap/bootstrap.py 2018-07-24 17:00:03.200279816 -0400 -@@ -983,7 +983,7 @@ def build_gn_with_gn(temp_gn, build_dir, - gn_gen_args = options.gn_gen_args or '' - if not options.debug: - gn_gen_args += ' is_debug=false' -- cmd = [temp_gn, 'gen', build_dir, '--args=%s' % gn_gen_args, -+ cmd = [temp_gn, 'gen', '--script-executable=/usr/bin/python2', build_dir, '--args=%s' % gn_gen_args, - "--root="+SRC_ROOT - ] - check_call(cmd) -@@ -997,7 +997,7 @@ def build_gn_with_gn(temp_gn, build_dir, - # build.ninja currently refers back to gn from the temporary directory. - # Regenerate the build files using the gn we just built so that the reference - # gets updated to "./gn". -- cmd = [os.path.join(build_dir, 'gn'), 'gen', build_dir, -+ cmd = [os.path.join(build_dir, 'gn'), 'gen', '--script-executable=/usr/bin/python2', build_dir, - '--args=%s' % gn_gen_args] - check_call(cmd) - diff --git a/chromium-68.0.3440.106-fedora-user-agent.patch b/chromium-68.0.3440.106-fedora-user-agent.patch deleted file mode 100644 index 6c4cb82..0000000 --- a/chromium-68.0.3440.106-fedora-user-agent.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-68.0.3440.106/content/common/user_agent.cc.fedora-user-agent chromium-68.0.3440.106/content/common/user_agent.cc ---- chromium-68.0.3440.106/content/common/user_agent.cc.fedora-user-agent 2018-08-09 03:27:45.965769824 -0400 -+++ chromium-68.0.3440.106/content/common/user_agent.cc 2018-08-09 03:28:34.001586650 -0400 -@@ -135,7 +135,7 @@ std::string getUserAgentPlatform() { - #elif defined(OS_MACOSX) - "Macintosh; "; - #elif defined(USE_X11) || defined(USE_OZONE) -- "X11; "; // strange, but that's what Firefox uses -+ "X11; Fedora; "; // strange, but that's what Firefox uses - #elif defined(OS_ANDROID) - "Linux; "; - #elif defined(OS_POSIX) || defined(OS_FUCHSIA) diff --git a/chromium-68.0.3440.106-fix-build-networking_private.patch b/chromium-68.0.3440.106-fix-build-networking_private.patch deleted file mode 100644 index 787d3db..0000000 --- a/chromium-68.0.3440.106-fix-build-networking_private.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-68.0.3440.106/extensions/browser/api/networking_private/BUILD.gn.fixb chromium-68.0.3440.106/extensions/browser/api/networking_private/BUILD.gn ---- chromium-68.0.3440.106/extensions/browser/api/networking_private/BUILD.gn.fixb 2018-08-09 03:56:36.091622243 -0400 -+++ chromium-68.0.3440.106/extensions/browser/api/networking_private/BUILD.gn 2018-08-09 03:57:03.047001659 -0400 -@@ -61,7 +61,7 @@ source_set("networking_private") { - ] - deps += [ "//chromeos" ] - } else { -- not_needed(default_sources) -+ not_needed([ "default_sources" ]) - sources = [ - "networking_private_stubs.cc", - ] diff --git a/chromium-68.0.3440.106-notest.patch b/chromium-68.0.3440.106-notest.patch deleted file mode 100644 index c20a40e..0000000 --- a/chromium-68.0.3440.106-notest.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-68.0.3440.106/chrome/test/data/webui_test_resources.grd.notest chromium-68.0.3440.106/chrome/test/data/webui_test_resources.grd ---- chromium-68.0.3440.106/chrome/test/data/webui_test_resources.grd.notest 2018-08-09 03:08:33.953029806 -0400 -+++ chromium-68.0.3440.106/chrome/test/data/webui_test_resources.grd 2018-08-09 03:09:40.264567818 -0400 -@@ -8,7 +8,6 @@ - - - -- - - - diff --git a/chromium-68.0.3440.84-cors-string.patch b/chromium-68.0.3440.84-cors-string.patch deleted file mode 100644 index b724cd4..0000000 --- a/chromium-68.0.3440.84-cors-string.patch +++ /dev/null @@ -1,51 +0,0 @@ -From 01d891fa0790950549c7bedb34edf869827a372e Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Thu, 31 May 2018 17:03:37 +0000 -Subject: [PATCH] CORS legacy: add missing string include -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -The cors_legacy.h file includes declarations using std::string, but -it is not declared due to missing #include . - -Also drop unneeded declarations in .cpp file. - -Change-Id: I00df799f84a6c3530c2f12f1e52d24c7d9bd6bfd -Reviewed-on: https://chromium-review.googlesource.com/1080707 -Reviewed-by: Tom Sepez -Commit-Queue: José Dapena Paz -Cr-Commit-Position: refs/heads/master@{#563282} ---- - services/network/public/cpp/cors/cors_legacy.cc | 2 -- - services/network/public/cpp/cors/cors_legacy.h | 1 + - 2 files changed, 1 insertion(+), 2 deletions(-) - -diff --git a/services/network/public/cpp/cors/cors_legacy.cc b/services/network/public/cpp/cors/cors_legacy.cc -index 8f32ac3be64e..f01af63619b5 100644 ---- a/services/network/public/cpp/cors/cors_legacy.cc -+++ b/services/network/public/cpp/cors/cors_legacy.cc -@@ -5,8 +5,6 @@ - #include "services/network/public/cpp/cors/cors_legacy.h" - - #include --#include --#include - - #include "url/gurl.h" - #include "url/url_util.h" -diff --git a/services/network/public/cpp/cors/cors_legacy.h b/services/network/public/cpp/cors/cors_legacy.h -index d2cdf026ca3a..dc9295a92c47 100644 ---- a/services/network/public/cpp/cors/cors_legacy.h -+++ b/services/network/public/cpp/cors/cors_legacy.h -@@ -5,6 +5,7 @@ - #ifndef SERVICES_NETWORK_PUBLIC_CPP_CORS_CORS_LEGACY_H_ - #define SERVICES_NETWORK_PUBLIC_CPP_CORS_CORS_LEGACY_H_ - -+#include - #include - - #include "base/component_export.h" --- -2.17.1 - diff --git a/chromium-68.0.3440.84-libjpeg.patch b/chromium-68.0.3440.84-libjpeg.patch deleted file mode 100644 index 5354281..0000000 --- a/chromium-68.0.3440.84-libjpeg.patch +++ /dev/null @@ -1,62 +0,0 @@ -From c6b0194f7a4d9f494b2d51f46d2c332e2e5f4050 Mon Sep 17 00:00:00 2001 -From: Daniel Bratell -Date: Mon, 28 May 2018 13:13:01 +0000 -Subject: [PATCH] Use the same libjpeg in all of blink/platform - -The normal libjpeg renames some symbols with macros so if its -headers are included together with libjpeg-turbo's headers -in the same translation unit, there will be an inconsistent -renaming of libjpeg symbols. This happened in some extreme -jumbo configuration and resulted in confising linker errors. - -This patch changes an include so that jpeglib.h becomes included -the same way everywhere. - -Change-Id: I7f122d0919d58371bb40dc0097a766b857b9815e -Reviewed-on: https://chromium-review.googlesource.com/1073423 -Reviewed-by: Kentaro Hara -Commit-Queue: Daniel Bratell -Cr-Commit-Position: refs/heads/master@{#562243} ---- - .../renderer/platform/image-encoders/image_encoder.cc | 11 +++++++++++ - .../renderer/platform/image-encoders/image_encoder.h | 2 -- - 2 files changed, 11 insertions(+), 2 deletions(-) - -diff --git a/third_party/blink/renderer/platform/image-encoders/image_encoder.cc b/third_party/blink/renderer/platform/image-encoders/image_encoder.cc -index 0c7f14c7c0e4..4c450f5d6783 100644 ---- a/third_party/blink/renderer/platform/image-encoders/image_encoder.cc -+++ b/third_party/blink/renderer/platform/image-encoders/image_encoder.cc -@@ -4,6 +4,17 @@ - - #include "third_party/blink/renderer/platform/image-encoders/image_encoder.h" - -+#include "build/build_config.h" -+ -+#if defined(OS_WIN) -+#include // Included before jpeglib.h because of INT32 clash -+#endif // OS_WIN -+#include // Needed by jpeglib.h -+ -+#include "jpeglib.h" // for JPEG_MAX_DIMENSION -+ -+#include "third_party/libwebp/src/webp/encode.h" // for WEBP_MAX_DIMENSION -+ - namespace blink { - - bool ImageEncoder::Encode(Vector* dst, -diff --git a/third_party/blink/renderer/platform/image-encoders/image_encoder.h b/third_party/blink/renderer/platform/image-encoders/image_encoder.h -index 0d1460f34827..40306097d507 100644 ---- a/third_party/blink/renderer/platform/image-encoders/image_encoder.h -+++ b/third_party/blink/renderer/platform/image-encoders/image_encoder.h -@@ -7,8 +7,6 @@ - - #include "third_party/blink/renderer/platform/platform_export.h" - #include "third_party/blink/renderer/platform/wtf/vector.h" --#include "third_party/libjpeg/jpeglib.h" // for JPEG_MAX_DIMENSION --#include "third_party/libwebp/src/webp/encode.h" // for WEBP_MAX_DIMENSION - #include "third_party/skia/include/core/SkStream.h" - #include "third_party/skia/include/encode/SkJpegEncoder.h" - #include "third_party/skia/include/encode/SkPngEncoder.h" --- -2.17.1 - diff --git a/chromium-68.0.3440.84-libwebp-shim.patch b/chromium-68.0.3440.84-libwebp-shim.patch deleted file mode 100644 index cb387a4..0000000 --- a/chromium-68.0.3440.84-libwebp-shim.patch +++ /dev/null @@ -1,43 +0,0 @@ -diff --git a/build/linux/unbundle/libwebp.gn b/build/linux/unbundle/libwebp.gn -index ab92adecf400..12574d87be58 100644 ---- a/build/linux/unbundle/libwebp.gn -+++ b/build/linux/unbundle/libwebp.gn -@@ -2,12 +2,34 @@ - # 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_libwebp") { -+ packages = [ -+ "libwebp", -+ "libwebpdemux", -+ "libwebpmux", -+ ] -+} -+ -+shim_headers("libwebp_shim") { -+ root_path = "src" -+ headers = [ -+ "webp/decode.h", -+ "webp/demux.h", -+ "webp/encode.h", -+ "webp/mux.h", -+ "webp/mux_types.h", -+ "webp/types.h", -+ ] -+} -+ - source_set("libwebp_webp") { -- libs = [ -- "webp", -- "webpdemux", -- "webpmux", -+ deps = [ -+ ":libwebp_shim", - ] -+ public_configs = [ ":system_libwebp" ] - } - - group("libwebp") { diff --git a/chromium-68.0.3440.84-move-unique-ptr.patch b/chromium-68.0.3440.84-move-unique-ptr.patch deleted file mode 100644 index 2942a8f..0000000 --- a/chromium-68.0.3440.84-move-unique-ptr.patch +++ /dev/null @@ -1,65 +0,0 @@ -From 56cb5f7da1025f6db869e840ed34d3b98b9ab899 Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Tue, 29 May 2018 16:04:14 +0000 -Subject: [PATCH] GCC: do not std::move unique ptr of forward declared UrlIndex -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -GCC fails to resolve the size of UrlIndex, needed -for moving a std::unique_ptr of UrlIndex. This is because -moved is done on a forward-declared UrlIndex. - -To avoid the problem, move the call to std::move to the .cc -file so the full declaration is available. - -Build error: -../../buildtools/third_party/libc++/trunk/include/memory: In instantiation of ‘void std::__1::default_delete<_Tp>::operator()(_Tp*) const [with _Tp = bookmarks::UrlIndex]’: -../../buildtools/third_party/libc++/trunk/include/memory:2634:22: required from ‘void std::__1::unique_ptr<_Tp, _Dp>::reset(std::__1::unique_ptr<_Tp, _Dp>::pointer) [with _Tp = bookmarks::UrlIndex; _Dp = std::__1::default_delete; std::__1::unique_ptr<_Tp, _Dp>::pointer = bookmarks::UrlIndex*]’ -../../buildtools/third_party/libc++/trunk/include/memory:2588:24: required from ‘std::__1::unique_ptr<_Tp, _Dp>::~unique_ptr() [with _Tp = bookmarks::UrlIndex; _Dp = std::__1::default_delete]’ -../../components/bookmarks/browser/bookmark_storage.h:107:76: required from here -../../buildtools/third_party/libc++/trunk/include/memory:2317:25: error: invalid application of ‘sizeof’ to incomplete type ‘bookmarks::UrlIndex’ - static_assert(sizeof(_Tp) > 0, - -Bug: 819294 -Change-Id: I793a807c28e797aaa2e31d9c8b7e09fb6ca6b9e7 -Reviewed-on: https://chromium-review.googlesource.com/1071648 -Commit-Queue: Scott Violet -Reviewed-by: Scott Violet -Cr-Commit-Position: refs/heads/master@{#562446} ---- - components/bookmarks/browser/bookmark_storage.cc | 4 ++++ - components/bookmarks/browser/bookmark_storage.h | 2 +- - 2 files changed, 5 insertions(+), 1 deletion(-) - -diff --git a/components/bookmarks/browser/bookmark_storage.cc b/components/bookmarks/browser/bookmark_storage.cc -index 1633ba1df2a4..3ae0c62292e7 100644 ---- a/components/bookmarks/browser/bookmark_storage.cc -+++ b/components/bookmarks/browser/bookmark_storage.cc -@@ -158,6 +158,10 @@ void BookmarkLoadDetails::CreateUrlIndex() { - url_index_ = std::make_unique(std::move(root_node_)); - } - -+std::unique_ptr BookmarkLoadDetails::owned_url_index() { -+ return std::move(url_index_); -+} -+ - BookmarkPermanentNode* BookmarkLoadDetails::CreatePermanentNode( - BookmarkClient* client, - BookmarkNode::Type type) { -diff --git a/components/bookmarks/browser/bookmark_storage.h b/components/bookmarks/browser/bookmark_storage.h -index 08df5bb65d83..0a1b1a1b65b9 100644 ---- a/components/bookmarks/browser/bookmark_storage.h -+++ b/components/bookmarks/browser/bookmark_storage.h -@@ -104,7 +104,7 @@ class BookmarkLoadDetails { - bool ids_reassigned() const { return ids_reassigned_; } - - void CreateUrlIndex(); -- std::unique_ptr owned_url_index() { return std::move(url_index_); } -+ std::unique_ptr owned_url_index(); - - private: - // Creates one of the possible permanent nodes (bookmark bar node, other node --- -2.17.1 - diff --git a/chromium-69.0.3497.81-gcc8-alignof.patch b/chromium-69.0.3497.81-gcc8-alignof.patch deleted file mode 100644 index 234b391..0000000 --- a/chromium-69.0.3497.81-gcc8-alignof.patch +++ /dev/null @@ -1,18 +0,0 @@ -diff -up chromium-69.0.3497.81/mojo/public/c/system/macros.h.gcc8-alignof chromium-69.0.3497.81/mojo/public/c/system/macros.h ---- chromium-69.0.3497.81/mojo/public/c/system/macros.h.gcc8-alignof 2018-09-06 10:11:54.336432699 -0400 -+++ chromium-69.0.3497.81/mojo/public/c/system/macros.h 2018-09-06 10:13:56.555727572 -0400 -@@ -27,7 +27,13 @@ - (sizeof(void*) == 4 ? 32 : 0) - - // Like the C++11 |alignof| operator. --#if __cplusplus >= 201103L -+#if defined(__GNUC__) && __GNUC__ >= 8 -+// GCC 8 has changed the alignof operator to return the minimal alignment -+// required by the target ABI, instead of the preferred alignment. -+// This means that on 32-bit x86, it will return 4 instead of 8. -+// Use __alignof__ instead to avoid this. -+#define MOJO_ALIGNOF(type) __alignof__(type) -+#elif __cplusplus >= 201103L - #define MOJO_ALIGNOF(type) alignof(type) - #elif defined(__GNUC__) - #define MOJO_ALIGNOF(type) __alignof__(type) diff --git a/chromium-69.0.3497.81-norar.patch b/chromium-69.0.3497.81-norar.patch deleted file mode 100644 index 9545b60..0000000 --- a/chromium-69.0.3497.81-norar.patch +++ /dev/null @@ -1,79 +0,0 @@ -diff -up chromium-69.0.3497.81/chrome/common/safe_browsing/BUILD.gn.nounrar chromium-69.0.3497.81/chrome/common/safe_browsing/BUILD.gn ---- chromium-69.0.3497.81/chrome/common/safe_browsing/BUILD.gn.nounrar 2018-09-06 13:29:47.114511569 -0400 -+++ chromium-69.0.3497.81/chrome/common/safe_browsing/BUILD.gn 2018-09-06 13:29:47.120511452 -0400 -@@ -55,40 +55,6 @@ if (safe_browsing_mode == 1) { - "//components/safe_browsing:csd_proto", - ] - } -- -- source_set("rar_analyzer") { -- sources = [ -- "rar_analyzer.cc", -- "rar_analyzer.h", -- ] -- -- deps = [ -- ":archive_analyzer_results", -- ":download_protection_util", -- ":file_type_policies", -- "//base", -- "//base:i18n", -- "//third_party/unrar:unrar", -- ] -- -- defines = [ -- "_FILE_OFFSET_BITS=64", -- "LARGEFILE_SOURCE", -- "RAR_SMP", -- "SILENT", -- -- # The following is set to disable certain macro definitions in the unrar -- # source code. -- "CHROMIUM_UNRAR", -- -- # Disables exceptions in unrar, replaces them with process termination. -- "UNRAR_NO_EXCEPTIONS", -- ] -- -- public_deps = [ -- "//components/safe_browsing:csd_proto", -- ] -- } - } - - source_set("safe_browsing") { -@@ -121,7 +87,6 @@ source_set("safe_browsing") { - deps += [ - ":archive_analyzer_results", - ":download_protection_util", -- ":rar_analyzer", - "//components/safe_browsing:features", - ] - -diff -up chromium-69.0.3497.81/chrome/common/safe_browsing/DEPS.nounrar chromium-69.0.3497.81/chrome/common/safe_browsing/DEPS ---- chromium-69.0.3497.81/chrome/common/safe_browsing/DEPS.nounrar 2018-09-06 13:29:47.119511472 -0400 -+++ chromium-69.0.3497.81/chrome/common/safe_browsing/DEPS 2018-09-06 13:29:47.116511530 -0400 -@@ -1,6 +1,5 @@ - include_rules = [ - "+components/safe_browsing", - "+third_party/protobuf", -- "+third_party/unrar", - "+third_party/zlib", - ] -diff -up chromium-69.0.3497.81/chrome/services/file_util/safe_archive_analyzer.cc.nounrar chromium-69.0.3497.81/chrome/services/file_util/safe_archive_analyzer.cc ---- chromium-69.0.3497.81/chrome/services/file_util/safe_archive_analyzer.cc.nounrar 2018-09-07 10:10:42.286041744 -0400 -+++ chromium-69.0.3497.81/chrome/services/file_util/safe_archive_analyzer.cc 2018-09-07 10:11:14.934308285 -0400 -@@ -47,9 +47,13 @@ void SafeArchiveAnalyzer::AnalyzeDmgFile - - void SafeArchiveAnalyzer::AnalyzeRarFile(base::File rar_file, - AnalyzeRarFileCallback callback) { -+#if 0 - DCHECK(rar_file.IsValid()); - - safe_browsing::ArchiveAnalyzerResults results; - safe_browsing::rar_analyzer::AnalyzeRarFile(std::move(rar_file), &results); - std::move(callback).Run(results); -+#else -+ NOTREACHED(); -+#endif - } diff --git a/chromium-69.0.3497.81-py2-bootstrap.patch b/chromium-69.0.3497.81-py2-bootstrap.patch deleted file mode 100644 index 8a5db71..0000000 --- a/chromium-69.0.3497.81-py2-bootstrap.patch +++ /dev/null @@ -1,33 +0,0 @@ -diff -up chromium-69.0.3497.81/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py.py2 chromium-69.0.3497.81/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py ---- chromium-69.0.3497.81/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py.py2 2018-09-06 10:45:17.919774145 -0400 -+++ chromium-69.0.3497.81/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py 2018-09-06 10:45:17.914774254 -0400 -@@ -58,7 +58,7 @@ def _MinifyJS(input_js): - - with tempfile.NamedTemporaryFile() as _: - args = [ -- 'python', -+ 'python2', - rjsmin_path - ] - p = subprocess.Popen(args, -@@ -177,7 +177,7 @@ def _MinifyCSS(css_text): - os.path.join(py_vulcanize_path, 'third_party', 'rcssmin', 'rcssmin.py')) - - with tempfile.NamedTemporaryFile() as _: -- rcssmin_args = ['python', rcssmin_path] -+ rcssmin_args = ['python2', rcssmin_path] - p = subprocess.Popen(rcssmin_args, - stdin=subprocess.PIPE, - stdout=subprocess.PIPE, -diff -up chromium-69.0.3497.81/tools/gn/bootstrap/bootstrap.py.py2 chromium-69.0.3497.81/tools/gn/bootstrap/bootstrap.py ---- chromium-69.0.3497.81/tools/gn/bootstrap/bootstrap.py.py2 2018-09-06 10:44:42.225550561 -0400 -+++ chromium-69.0.3497.81/tools/gn/bootstrap/bootstrap.py 2018-09-06 13:06:24.251636231 -0400 -@@ -87,7 +87,7 @@ def main(argv): - if not options.debug: - gn_gen_args += ' is_debug=false' - subprocess.check_call([ -- gn_path, 'gen', out_dir, -+ gn_path, 'gen', out_dir, ' --script-executable=/usr/bin/python2', - '--args=%s' % gn_gen_args, "--root=" + SRC_ROOT - ]) - diff --git a/chromium-69.0.3497.81-widevine-r2.patch b/chromium-69.0.3497.81-widevine-r2.patch deleted file mode 100644 index a66a0fb..0000000 --- a/chromium-69.0.3497.81-widevine-r2.patch +++ /dev/null @@ -1,23 +0,0 @@ -diff -up chromium-69.0.3497.81/third_party/widevine/cdm/BUILD.gn.wvhack chromium-69.0.3497.81/third_party/widevine/cdm/BUILD.gn ---- chromium-69.0.3497.81/third_party/widevine/cdm/BUILD.gn.wvhack 2018-09-06 13:28:22.655272555 -0400 -+++ chromium-69.0.3497.81/third_party/widevine/cdm/BUILD.gn 2018-09-06 13:28:22.655272555 -0400 -@@ -11,7 +11,7 @@ import("//third_party/widevine/cdm/widev - # Internal Cast builds set enable_widevine=true to bring in Widevine support. - # TODO(xhwang): Support component updated CDM on other platforms and remove this - # assert. --assert(!enable_widevine || is_win || is_mac || is_chromecast, -+assert(!enable_widevine || is_win || is_mac || is_chromecast || is_linux, - "Component updated CDM only supported on Windows and Mac for now.") - - widevine_arch = current_cpu -diff -up chromium-69.0.3497.81/third_party/widevine/cdm/stub/widevine_cdm_version.h.wvhack chromium-69.0.3497.81/third_party/widevine/cdm/stub/widevine_cdm_version.h ---- chromium-69.0.3497.81/third_party/widevine/cdm/stub/widevine_cdm_version.h.wvhack 2018-09-06 13:28:22.654272577 -0400 -+++ chromium-69.0.3497.81/third_party/widevine/cdm/stub/widevine_cdm_version.h 2018-09-06 13:28:22.654272577 -0400 -@@ -10,6 +10,7 @@ - - #include "third_party/widevine/cdm/widevine_cdm_common.h" - -+#define WIDEVINE_CDM_VERSION_STRING "unknown" - #define WIDEVINE_CDM_AVAILABLE - - #endif // WIDEVINE_CDM_VERSION_H_ diff --git a/chromium-70.0.3538.110-remove-sysroot-options.patch b/chromium-70.0.3538.110-remove-sysroot-options.patch deleted file mode 100644 index 9eb99d1..0000000 --- a/chromium-70.0.3538.110-remove-sysroot-options.patch +++ /dev/null @@ -1,23 +0,0 @@ -diff -up chromium-70.0.3538.110/tools/gn/bootstrap/bootstrap.py.sysrootfix chromium-70.0.3538.110/tools/gn/bootstrap/bootstrap.py ---- chromium-70.0.3538.110/tools/gn/bootstrap/bootstrap.py.sysrootfix 2018-11-26 13:40:19.324713204 -0500 -+++ chromium-70.0.3538.110/tools/gn/bootstrap/bootstrap.py 2018-11-26 13:40:43.199180888 -0500 -@@ -46,10 +46,6 @@ def main(argv): - '--build-path', - help='The directory in which to build gn, ' - 'relative to the src directory. (eg. out/Release)') -- parser.add_option( -- '--with-sysroot', -- action='store_true', -- help='Download and build with the Debian sysroot.') - parser.add_option('-v', '--verbose', help='ignored') - options, args = parser.parse_args(argv) - if args: -@@ -71,8 +67,6 @@ def main(argv): - '--no-last-commit-position', - '--out-path=' + gn_build_dir, - ] -- if not options.with_sysroot: -- cmd.append('--no-sysroot') - if options.debug: - cmd.append('--debug') - subprocess.check_call(cmd) diff --git a/chromium-70.0.3538.77-harfbuzz2-fix.patch b/chromium-70.0.3538.77-harfbuzz2-fix.patch deleted file mode 100644 index 2d5602d..0000000 --- a/chromium-70.0.3538.77-harfbuzz2-fix.patch +++ /dev/null @@ -1,80 +0,0 @@ -From 7ae38170a117e909bb28e1470842b68de3501197 Mon Sep 17 00:00:00 2001 -From: Mike Gilbert -Date: Sun, 21 Oct 2018 10:06:53 -0400 -Subject: [PATCH] blink: add 'const' modifier for harfbuzz hb_codepoint_t - pointers - -This resolves a build failure against harfbuzz 2.0. - -Based on a patch by Alexandre Fierreira. - -Bug: https://bugs.gentoo.org/669034 ---- - .../renderer/platform/fonts/shaping/harfbuzz_face.cc | 2 +- - .../renderer/platform/fonts/skia/skia_text_metrics.cc | 9 +++++++-- - .../renderer/platform/fonts/skia/skia_text_metrics.h | 2 +- - 3 files changed, 9 insertions(+), 4 deletions(-) - -diff --git a/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face.cc b/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face.cc -index 8e7d91ca371f..e279a5876cb3 100644 ---- a/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face.cc -+++ b/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face.cc -@@ -139,7 +139,7 @@ static hb_position_t HarfBuzzGetGlyphHorizontalAdvance(hb_font_t* hb_font, - static void HarfBuzzGetGlyphHorizontalAdvances(hb_font_t* font, - void* font_data, - unsigned count, -- hb_codepoint_t* first_glyph, -+ const hb_codepoint_t* first_glyph, - unsigned int glyph_stride, - hb_position_t* first_advance, - unsigned int advance_stride, -diff --git a/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.cc b/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.cc -index 77ec6209fab9..9f9070921448 100644 ---- a/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.cc -+++ b/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.cc -@@ -18,6 +18,11 @@ T* advance_by_byte_size(T* p, unsigned byte_size) { - return reinterpret_cast(reinterpret_cast(p) + byte_size); - } - -+template -+T* advance_by_byte_size_const(T* p, unsigned byte_size) { -+ return reinterpret_cast(reinterpret_cast(p) + byte_size); -+} -+ - } // namespace - - SkiaTextMetrics::SkiaTextMetrics(const SkPaint* paint) : paint_(paint) { -@@ -39,7 +44,7 @@ void SkiaTextMetrics::GetGlyphWidthForHarfBuzz(hb_codepoint_t codepoint, - } - - void SkiaTextMetrics::GetGlyphWidthForHarfBuzz(unsigned count, -- hb_codepoint_t* glyphs, -+ const hb_codepoint_t* glyphs, - unsigned glyph_stride, - hb_position_t* advances, - unsigned advance_stride) { -@@ -48,7 +53,7 @@ void SkiaTextMetrics::GetGlyphWidthForHarfBuzz(unsigned count, - // array that copy them to a regular array. - Vector glyph_array(count); - for (unsigned i = 0; i < count; -- i++, glyphs = advance_by_byte_size(glyphs, glyph_stride)) { -+ i++, glyphs = advance_by_byte_size_const(glyphs, glyph_stride)) { - glyph_array[i] = *glyphs; - } - Vector sk_width_array(count); -diff --git a/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.h b/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.h -index 787d8af0375a..3bc4407c641b 100644 ---- a/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.h -+++ b/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.h -@@ -19,7 +19,7 @@ class SkiaTextMetrics final { - - void GetGlyphWidthForHarfBuzz(hb_codepoint_t, hb_position_t* width); - void GetGlyphWidthForHarfBuzz(unsigned count, -- hb_codepoint_t* first_glyph, -+ const hb_codepoint_t* first_glyph, - unsigned glyph_stride, - hb_position_t* first_advance, - unsigned advance_stride); --- -2.19.1 - diff --git a/chromium-71-gcc-0.patch b/chromium-71-gcc-0.patch deleted file mode 100644 index 711b827..0000000 --- a/chromium-71-gcc-0.patch +++ /dev/null @@ -1,57 +0,0 @@ -From 65be571f6ac2f7942b4df9e50b24da517f829eec Mon Sep 17 00:00:00 2001 -From: Raphael Kubo da Costa -Date: Mon, 15 Oct 2018 20:26:10 +0000 -Subject: [PATCH] google_util: Explicitly use std::initializer_list with - base::NoDestructor -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Follow-up to ac53c5c53 ("Remove CR_DEFINE_STATIC_LOCAL from /components"). -Due to https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84849, having -base::NoDestructor> and passing an initializer list of Us does not -work if this is not done explicitly, as GCC incorrectly fails to determine -which constructor overload to use: - - ../../components/google/core/common/google_util.cc: In function ‘bool google_util::{anonymous}::IsCanonicalHostGoogleHostname(base::StringPiece, google_util::SubdomainPermission)’: - ../../components/google/core/common/google_util.cc:120:24: error: call of overloaded ‘NoDestructor()’ is ambiguous - {GOOGLE_TLD_LIST}); - -See also: https://chromium-review.googlesource.com/c/chromium/src/+/1170905 - -Bug: 819294 -Change-Id: Ie1490b6646d7998d636c485769caabf56c1cf44c -Reviewed-on: https://chromium-review.googlesource.com/c/1275854 -Reviewed-by: Peter Kasting -Commit-Queue: Raphael Kubo da Costa (CET) -Cr-Commit-Position: refs/heads/master@{#599733} ---- - components/google/core/common/google_util.cc | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - -diff --git a/components/google/core/common/google_util.cc b/components/google/core/common/google_util.cc -index a44c84393820..7733848a0443 100644 ---- a/components/google/core/common/google_util.cc -+++ b/components/google/core/common/google_util.cc -@@ -117,7 +117,7 @@ bool IsCanonicalHostGoogleHostname(base::StringPiece canonical_host, - StripTrailingDot(&tld); - - static base::NoDestructor> google_tlds( -- {GOOGLE_TLD_LIST}); -+ std::initializer_list({GOOGLE_TLD_LIST})); - return base::ContainsKey(*google_tlds, tld.as_string()); - } - -@@ -132,7 +132,8 @@ bool IsGoogleSearchSubdomainUrl(const GURL& url) { - StripTrailingDot(&host); - - static base::NoDestructor> google_subdomains( -- {"ipv4.google.com", "ipv6.google.com"}); -+ std::initializer_list( -+ {"ipv4.google.com", "ipv6.google.com"})); - - return base::ContainsKey(*google_subdomains, host.as_string()); - } --- -2.19.1 - diff --git a/chromium-71.0.3578.98-el7-fix-noexcept.patch b/chromium-71.0.3578.98-el7-fix-noexcept.patch deleted file mode 100644 index 234f0a9..0000000 --- a/chromium-71.0.3578.98-el7-fix-noexcept.patch +++ /dev/null @@ -1,48 +0,0 @@ -diff -up chromium-71.0.3578.98/chrome/common/media_router/media_sink.cc.fix-noexcept chromium-71.0.3578.98/chrome/common/media_router/media_sink.cc ---- chromium-71.0.3578.98/chrome/common/media_router/media_sink.cc.fix-noexcept 2019-01-02 14:44:40.449801789 -0500 -+++ chromium-71.0.3578.98/chrome/common/media_router/media_sink.cc 2019-01-02 14:44:54.167481936 -0500 -@@ -24,7 +24,7 @@ MediaSink::MediaSink() = default; - MediaSink::~MediaSink() = default; - - MediaSink& MediaSink::operator=(const MediaSink& other) = default; --MediaSink& MediaSink::operator=(MediaSink&& other) noexcept = default; -+MediaSink& MediaSink::operator=(MediaSink&& other) = default; - - bool MediaSink::Equals(const MediaSink& other) const { - return sink_id_ == other.sink_id_; -diff -up chromium-71.0.3578.98/components/policy/core/common/policy_map.cc.fix-noexcept chromium-71.0.3578.98/components/policy/core/common/policy_map.cc ---- chromium-71.0.3578.98/components/policy/core/common/policy_map.cc.fix-noexcept 2019-01-02 12:06:10.867313533 -0500 -+++ chromium-71.0.3578.98/components/policy/core/common/policy_map.cc 2019-01-02 12:06:27.544980078 -0500 -@@ -18,7 +18,7 @@ PolicyMap::Entry::Entry() = default; - PolicyMap::Entry::~Entry() = default; - - PolicyMap::Entry::Entry(Entry&&) noexcept = default; --PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) noexcept = default; -+PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) = default; - - PolicyMap::Entry PolicyMap::Entry::DeepCopy() const { - Entry copy; -diff -up chromium-71.0.3578.98/components/signin/core/browser/account_info.cc.fix-noexcept chromium-71.0.3578.98/components/signin/core/browser/account_info.cc ---- chromium-71.0.3578.98/components/signin/core/browser/account_info.cc.fix-noexcept 2019-01-02 10:57:29.194710662 -0500 -+++ chromium-71.0.3578.98/components/signin/core/browser/account_info.cc 2019-01-02 10:58:57.829965474 -0500 -@@ -32,7 +32,7 @@ AccountInfo::AccountInfo(AccountInfo&& o - - AccountInfo& AccountInfo::operator=(const AccountInfo& other) = default; - --AccountInfo& AccountInfo::operator=(AccountInfo&& other) noexcept = default; -+AccountInfo& AccountInfo::operator=(AccountInfo&& other) = default; - - bool AccountInfo::IsEmpty() const { - return account_id.empty() && email.empty() && gaia.empty() && -diff -up chromium-71.0.3578.98/gpu/config/gpu_info.cc.fix-noexcept chromium-71.0.3578.98/gpu/config/gpu_info.cc ---- chromium-71.0.3578.98/gpu/config/gpu_info.cc.fix-noexcept 2018-12-20 09:50:03.320449807 -0500 -+++ chromium-71.0.3578.98/gpu/config/gpu_info.cc 2018-12-20 09:50:25.768849091 -0500 -@@ -116,7 +116,7 @@ GPUInfo::GPUDevice& GPUInfo::GPUDevice:: - const GPUInfo::GPUDevice& other) = default; - - GPUInfo::GPUDevice& GPUInfo::GPUDevice::operator=( -- GPUInfo::GPUDevice&& other) noexcept = default; -+ GPUInfo::GPUDevice&& other) = default; - - GPUInfo::GPUInfo() - : optimus(false), diff --git a/chromium-71.0.3578.98-norar.patch b/chromium-71.0.3578.98-norar.patch deleted file mode 100644 index 1259088..0000000 --- a/chromium-71.0.3578.98-norar.patch +++ /dev/null @@ -1,79 +0,0 @@ -diff -up chromium-71.0.3578.98/chrome/common/safe_browsing/BUILD.gn.nounrar chromium-71.0.3578.98/chrome/common/safe_browsing/BUILD.gn ---- chromium-71.0.3578.98/chrome/common/safe_browsing/BUILD.gn.nounrar 2018-12-12 16:56:04.000000000 -0500 -+++ chromium-71.0.3578.98/chrome/common/safe_browsing/BUILD.gn 2018-12-14 11:44:52.172805635 -0500 -@@ -56,40 +56,6 @@ if (safe_browsing_mode == 1) { - ] - } - -- source_set("rar_analyzer") { -- sources = [ -- "rar_analyzer.cc", -- "rar_analyzer.h", -- ] -- -- deps = [ -- ":archive_analyzer_results", -- ":download_protection_util", -- ":file_type_policies", -- "//base", -- "//base:i18n", -- "//third_party/unrar:unrar", -- ] -- -- defines = [ -- "_FILE_OFFSET_BITS=64", -- "LARGEFILE_SOURCE", -- "RAR_SMP", -- "SILENT", -- -- # The following is set to disable certain macro definitions in the unrar -- # source code. -- "CHROMIUM_UNRAR", -- -- # Disables exceptions in unrar, replaces them with process termination. -- "UNRAR_NO_EXCEPTIONS", -- ] -- -- public_deps = [ -- "//components/safe_browsing:csd_proto", -- ] -- } -- - source_set("disk_image_type_sniffer_mac") { - sources = [ - "disk_image_type_sniffer_mac.cc", -@@ -136,7 +102,6 @@ source_set("safe_browsing") { - deps += [ - ":archive_analyzer_results", - ":download_protection_util", -- ":rar_analyzer", - "//components/safe_browsing:features", - ] - -diff -up chromium-71.0.3578.98/chrome/common/safe_browsing/DEPS.nounrar chromium-71.0.3578.98/chrome/common/safe_browsing/DEPS ---- chromium-71.0.3578.98/chrome/common/safe_browsing/DEPS.nounrar 2018-12-12 16:56:04.000000000 -0500 -+++ chromium-71.0.3578.98/chrome/common/safe_browsing/DEPS 2018-12-14 11:23:58.628142952 -0500 -@@ -1,6 +1,5 @@ - include_rules = [ - "+components/safe_browsing", - "+third_party/protobuf", -- "+third_party/unrar", - "+third_party/zlib", - ] -diff -up chromium-71.0.3578.98/chrome/services/file_util/safe_archive_analyzer.cc.nounrar chromium-71.0.3578.98/chrome/services/file_util/safe_archive_analyzer.cc ---- chromium-71.0.3578.98/chrome/services/file_util/safe_archive_analyzer.cc.nounrar 2018-12-12 16:56:04.000000000 -0500 -+++ chromium-71.0.3578.98/chrome/services/file_util/safe_archive_analyzer.cc 2018-12-14 11:23:58.628142952 -0500 -@@ -47,9 +47,13 @@ void SafeArchiveAnalyzer::AnalyzeDmgFile - - void SafeArchiveAnalyzer::AnalyzeRarFile(base::File rar_file, - AnalyzeRarFileCallback callback) { -+#if 0 - DCHECK(rar_file.IsValid()); - - safe_browsing::ArchiveAnalyzerResults results; - safe_browsing::rar_analyzer::AnalyzeRarFile(std::move(rar_file), &results); - std::move(callback).Run(results); -+#else -+ NOTREACHED(); -+#endif - } diff --git a/chromium-71.0.3578.98-remove-sysroot-options.patch b/chromium-71.0.3578.98-remove-sysroot-options.patch deleted file mode 100644 index a9af73b..0000000 --- a/chromium-71.0.3578.98-remove-sysroot-options.patch +++ /dev/null @@ -1,23 +0,0 @@ -diff -up chromium-71.0.3578.98/tools/gn/bootstrap/bootstrap.py.sysrootfix chromium-71.0.3578.98/tools/gn/bootstrap/bootstrap.py ---- chromium-71.0.3578.98/tools/gn/bootstrap/bootstrap.py.sysrootfix 2018-12-14 12:52:04.144860836 -0500 -+++ chromium-71.0.3578.98/tools/gn/bootstrap/bootstrap.py 2018-12-14 12:57:54.791539599 -0500 -@@ -46,10 +46,6 @@ def main(argv): - '--build-path', - help='The directory in which to build gn, ' - 'relative to the src directory. (eg. out/Release)') -- parser.add_option( -- '--with-sysroot', -- action='store_true', -- help='Download and build with the Debian sysroot.') - parser.add_option('-v', '--verbose', help='ignored') - parser.add_option( - '--skip-generate-buildfiles', -@@ -76,8 +72,6 @@ def main(argv): - '--no-last-commit-position', - '--out-path=' + gn_build_dir, - ] -- if not options.with_sysroot: -- cmd.append('--no-sysroot') - if options.debug: - cmd.append('--debug') - subprocess.check_call(cmd) diff --git a/chromium-71.0.3578.98-vaapi-libva1-compatibility.patch b/chromium-71.0.3578.98-vaapi-libva1-compatibility.patch deleted file mode 100644 index 5b51e3d..0000000 --- a/chromium-71.0.3578.98-vaapi-libva1-compatibility.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -up chromium-71.0.3578.98/media/gpu/vaapi/vaapi_jpeg_decode_accelerator.cc.va1compat chromium-71.0.3578.98/media/gpu/vaapi/vaapi_jpeg_decode_accelerator.cc ---- chromium-71.0.3578.98/media/gpu/vaapi/vaapi_jpeg_decode_accelerator.cc.va1compat 2018-12-17 15:07:48.158717055 -0500 -+++ chromium-71.0.3578.98/media/gpu/vaapi/vaapi_jpeg_decode_accelerator.cc 2018-12-17 15:09:49.780316983 -0500 -@@ -38,6 +38,10 @@ enum VAJDADecoderFailure { - VAJDA_DECODER_FAILURES_MAX, - }; - -+#ifndef VA_FOURCC_I420 -+#define VA_FOURCC_I420 VA_FOURCC('I', '4', '2', '0') -+#endif -+ - static void ReportToUMA(VAJDADecoderFailure failure) { - UMA_HISTOGRAM_ENUMERATION("Media.VAJDA.DecoderFailure", failure, - VAJDA_DECODER_FAILURES_MAX + 1); diff --git a/chromium-72.0.3626.121-fix-va-check.patch b/chromium-72.0.3626.121-fix-va-check.patch deleted file mode 100644 index aa0eb71..0000000 --- a/chromium-72.0.3626.121-fix-va-check.patch +++ /dev/null @@ -1,29 +0,0 @@ -diff -up chromium-72.0.3626.121/media/gpu/vaapi/vaapi_wrapper.cc.fixvacheck chromium-72.0.3626.121/media/gpu/vaapi/vaapi_wrapper.cc ---- chromium-72.0.3626.121/media/gpu/vaapi/vaapi_wrapper.cc.fixvacheck 2019-03-10 14:54:38.744305074 -0400 -+++ chromium-72.0.3626.121/media/gpu/vaapi/vaapi_wrapper.cc 2019-03-10 14:55:34.383221574 -0400 -@@ -334,15 +334,16 @@ bool VADisplayState::InitializeOnce() { - << va_vendor_string_; - - // The VAAPI version is determined from what is loaded on the system by -- // calling vaInitialize(). We want a runtime evaluation of libva version, -- // of what is loaded on the system, with, what browser is compiled with. -- // Also since the libva is now ABI-compatible, relax the version check -- // which helps in upgrading the libva, without breaking any existing -- // functionality. -- if (!VA_CHECK_VERSION(major_version, minor_version, 0)) { -- LOG(ERROR) << "This build of Chromium requires VA-API version " -- << VA_MAJOR_VERSION << "." << VA_MINOR_VERSION -- << ", system version: " << major_version << "." << minor_version; -+ // calling vaInitialize(). Since the libva is now ABI-compatible, relax the -+ // version check which helps in upgrading the libva, without breaking any -+ // existing functionality. Make sure the system version is not older than -+ // the version with which the chromium is built since libva is only -+ // guaranteed to be backward (and not forward) compatible. -+ if (VA_MAJOR_VERSION > major_version || -+ (VA_MAJOR_VERSION == major_version && VA_MINOR_VERSION > minor_version)) { -+ LOG(ERROR) << "The system version " << major_version << "." << minor_version -+ << " should be greater than or equal to " -+ << VA_MAJOR_VERSION << "." << VA_MINOR_VERSION; - return false; - } - return true; diff --git a/chromium-72.0.3626.121-norar.patch b/chromium-72.0.3626.121-norar.patch deleted file mode 100644 index d5d2632..0000000 --- a/chromium-72.0.3626.121-norar.patch +++ /dev/null @@ -1,79 +0,0 @@ -diff -up chromium-72.0.3626.121/chrome/common/safe_browsing/BUILD.gn.nounrar chromium-72.0.3626.121/chrome/common/safe_browsing/BUILD.gn ---- chromium-72.0.3626.121/chrome/common/safe_browsing/BUILD.gn.nounrar 2019-03-10 14:15:47.187705953 -0400 -+++ chromium-72.0.3626.121/chrome/common/safe_browsing/BUILD.gn 2019-03-10 14:16:47.154138649 -0400 -@@ -56,40 +56,6 @@ if (safe_browsing_mode == 1) { - ] - } - -- source_set("rar_analyzer") { -- sources = [ -- "rar_analyzer.cc", -- "rar_analyzer.h", -- ] -- -- deps = [ -- ":archive_analyzer_results", -- ":download_type_util", -- ":file_type_policies", -- "//base", -- "//base:i18n", -- "//third_party/unrar:unrar", -- ] -- -- defines = [ -- "_FILE_OFFSET_BITS=64", -- "LARGEFILE_SOURCE", -- "RAR_SMP", -- "SILENT", -- -- # The following is set to disable certain macro definitions in the unrar -- # source code. -- "CHROMIUM_UNRAR", -- -- # Disables exceptions in unrar, replaces them with process termination. -- "UNRAR_NO_EXCEPTIONS", -- ] -- -- public_deps = [ -- "//components/safe_browsing:csd_proto", -- ] -- } -- - source_set("disk_image_type_sniffer_mac") { - sources = [ - "disk_image_type_sniffer_mac.cc", -@@ -150,7 +116,6 @@ source_set("safe_browsing") { - deps += [ - ":archive_analyzer_results", - ":download_type_util", -- ":rar_analyzer", - "//components/safe_browsing:features", - ] - -diff -up chromium-72.0.3626.121/chrome/common/safe_browsing/DEPS.nounrar chromium-72.0.3626.121/chrome/common/safe_browsing/DEPS ---- chromium-72.0.3626.121/chrome/common/safe_browsing/DEPS.nounrar 2019-03-01 23:10:03.000000000 -0500 -+++ chromium-72.0.3626.121/chrome/common/safe_browsing/DEPS 2019-03-10 14:14:55.430058716 -0400 -@@ -1,6 +1,5 @@ - include_rules = [ - "+components/safe_browsing", - "+third_party/protobuf", -- "+third_party/unrar", - "+third_party/zlib", - ] -diff -up chromium-72.0.3626.121/chrome/services/file_util/safe_archive_analyzer.cc.nounrar chromium-72.0.3626.121/chrome/services/file_util/safe_archive_analyzer.cc ---- chromium-72.0.3626.121/chrome/services/file_util/safe_archive_analyzer.cc.nounrar 2019-03-01 23:10:04.000000000 -0500 -+++ chromium-72.0.3626.121/chrome/services/file_util/safe_archive_analyzer.cc 2019-03-10 14:14:55.433058638 -0400 -@@ -47,9 +47,13 @@ void SafeArchiveAnalyzer::AnalyzeDmgFile - - void SafeArchiveAnalyzer::AnalyzeRarFile(base::File rar_file, - AnalyzeRarFileCallback callback) { -+#if 0 - DCHECK(rar_file.IsValid()); - - safe_browsing::ArchiveAnalyzerResults results; - safe_browsing::rar_analyzer::AnalyzeRarFile(std::move(rar_file), &results); - std::move(callback).Run(results); -+#else -+ NOTREACHED(); -+#endif - } diff --git a/chromium-73-gcc-0.patch b/chromium-73-gcc-0.patch deleted file mode 100644 index 5a50700..0000000 --- a/chromium-73-gcc-0.patch +++ /dev/null @@ -1,108 +0,0 @@ -From 2c3b57cafbbb38c13a519c9d2fda8b65691d9564 Mon Sep 17 00:00:00 2001 -From: Raphael Kubo da Costa -Date: Thu, 7 Feb 2019 22:55:37 +0000 -Subject: [PATCH] allocator shim: Swap ALIGN_LINKAGE and SHIM_ALWAYS_EXPORT's - positions -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -This fixes the GCC build. GCC seems to be stricter with the position of the -linkage specification, so just swap the terms to prevent an error that looks -like: - -In file included from ../../base/allocator/allocator_shim.cc:333: -../../base/allocator/allocator_shim_override_cpp_symbols.h:39:30: error: expected unqualified-id before string constant - #define ALIGN_LINKAGE extern "C" - ^~~ -../../base/allocator/allocator_shim_override_cpp_symbols.h:99:20: note: in expansion of macro ‘ALIGN_LINKAGE’ - SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void* ALIGN_NEW(std::size_t size, - ^~~~~~~~~~~~~ - -Bug: 819294 -Change-Id: I0aa16ea88cead42e83796a1c86afad8b447ddc50 -Reviewed-on: https://chromium-review.googlesource.com/c/1458256 -Auto-Submit: Raphael Kubo da Costa -Reviewed-by: Thomas Anderson -Reviewed-by: Primiano Tucci -Commit-Queue: Raphael Kubo da Costa -Cr-Commit-Position: refs/heads/master@{#630084} ---- - .../allocator_shim_override_cpp_symbols.h | 20 +++++++++---------- - 1 file changed, 10 insertions(+), 10 deletions(-) - -diff --git a/base/allocator/allocator_shim_override_cpp_symbols.h b/base/allocator/allocator_shim_override_cpp_symbols.h -index 1228f5e33d28..01d25b7f6437 100644 ---- a/base/allocator/allocator_shim_override_cpp_symbols.h -+++ b/base/allocator/allocator_shim_override_cpp_symbols.h -@@ -96,57 +96,57 @@ SHIM_ALWAYS_EXPORT void operator delete[](void* p, size_t) __THROW { - ShimCppDelete(p); - } - --SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void* ALIGN_NEW(std::size_t size, -+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void* ALIGN_NEW(std::size_t size, - ALIGN_VAL_T alignment) { - return ShimCppAlignedNew(size, static_cast(alignment)); - } - --SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void* ALIGN_NEW_NOTHROW( -+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void* ALIGN_NEW_NOTHROW( - std::size_t size, - ALIGN_VAL_T alignment, - const std::nothrow_t&) __THROW { - return ShimCppAlignedNew(size, static_cast(alignment)); - } - --SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void ALIGN_DEL(void* p, ALIGN_VAL_T) __THROW { -+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void ALIGN_DEL(void* p, ALIGN_VAL_T) __THROW { - ShimCppDelete(p); - } - --SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void ALIGN_DEL_SIZED(void* p, -+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void ALIGN_DEL_SIZED(void* p, - std::size_t size, - ALIGN_VAL_T) __THROW { - ShimCppDelete(p); - } - --SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void -+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void - ALIGN_DEL_NOTHROW(void* p, ALIGN_VAL_T, const std::nothrow_t&) __THROW { - ShimCppDelete(p); - } - --SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void* ALIGN_NEW_ARR(std::size_t size, -+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void* ALIGN_NEW_ARR(std::size_t size, - ALIGN_VAL_T alignment) { - return ShimCppAlignedNew(size, static_cast(alignment)); - } - --SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void* ALIGN_NEW_ARR_NOTHROW( -+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void* ALIGN_NEW_ARR_NOTHROW( - std::size_t size, - ALIGN_VAL_T alignment, - const std::nothrow_t&) __THROW { - return ShimCppAlignedNew(size, static_cast(alignment)); - } - --SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void ALIGN_DEL_ARR(void* p, -+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void ALIGN_DEL_ARR(void* p, - ALIGN_VAL_T) __THROW { - ShimCppDelete(p); - } - --SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void ALIGN_DEL_ARR_SIZED(void* p, -+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void ALIGN_DEL_ARR_SIZED(void* p, - std::size_t size, - ALIGN_VAL_T) __THROW { - ShimCppDelete(p); - } - --SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void -+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void - ALIGN_DEL_ARR_NOTHROW(void* p, ALIGN_VAL_T, const std::nothrow_t&) __THROW { - ShimCppDelete(p); - } --- -2.20.1 - diff --git a/chromium-73-gcc-1.patch b/chromium-73-gcc-1.patch deleted file mode 100644 index c3f8e42..0000000 --- a/chromium-73-gcc-1.patch +++ /dev/null @@ -1,99 +0,0 @@ -From 130a5ae24a02daba8729ba2216bcaf3dbfacea69 Mon Sep 17 00:00:00 2001 -From: Raphael Kubo da Costa -Date: Fri, 8 Feb 2019 16:58:38 +0000 -Subject: [PATCH] media::learning: Make LabelledExample's move assignment - operator noexcept -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -The GCC build is currently broken with an error like this: - - ../../media/learning/common/labelled_example.cc:20:1: error: function ‘media::learning::LabelledExample::LabelledExample(media::learning::LabelledExample&&)’ defaulted on its redeclaration with an exception-specification that differs from the implicit exception-specification ‘’ - LabelledExample::LabelledExample(LabelledExample&& rhs) noexcept = default; - ^~~~~~~~~~~~~~~ - -With GCC, having that noexcept marker requires all members to be marked with -noexcept themselves, and TargetValue was missing some assignment operators -and noexcept markers. - -clang is fine because we pass -fno-exceptions and it disables the same error -there, while GCC continues to raise it (bug 843143 and its corresponding CL -have a longer discussion on this issue). - -Bug: 819294 -Change-Id: Ide30932fc466ccb52d6883a82777e703dae48798 -Reviewed-on: https://chromium-review.googlesource.com/c/1458210 -Commit-Queue: Frank Liberato -Reviewed-by: Frank Liberato -Auto-Submit: Raphael Kubo da Costa -Cr-Commit-Position: refs/heads/master@{#630355} ---- - media/learning/common/labelled_example.cc | 3 ++- - media/learning/common/labelled_example.h | 2 +- - media/learning/common/value.cc | 6 ++++++ - media/learning/common/value.h | 4 ++++ - 4 files changed, 13 insertions(+), 2 deletions(-) - -diff --git a/media/learning/common/labelled_example.cc b/media/learning/common/labelled_example.cc -index 76d08509298e..43e834f9f3cf 100644 ---- a/media/learning/common/labelled_example.cc -+++ b/media/learning/common/labelled_example.cc -@@ -59,7 +59,8 @@ bool LabelledExample::operator<(const LabelledExample& rhs) const { - LabelledExample& LabelledExample::operator=(const LabelledExample& rhs) = - default; - --LabelledExample& LabelledExample::operator=(LabelledExample&& rhs) = default; -+LabelledExample& LabelledExample::operator=(LabelledExample&& rhs) noexcept = -+ default; - - TrainingData::TrainingData() = default; - -diff --git a/media/learning/common/labelled_example.h b/media/learning/common/labelled_example.h -index 4f43c54e7a76..365abc3c0ebf 100644 ---- a/media/learning/common/labelled_example.h -+++ b/media/learning/common/labelled_example.h -@@ -40,7 +40,7 @@ struct COMPONENT_EXPORT(LEARNING_COMMON) LabelledExample { - bool operator<(const LabelledExample& rhs) const; - - LabelledExample& operator=(const LabelledExample& rhs); -- LabelledExample& operator=(LabelledExample&& rhs); -+ LabelledExample& operator=(LabelledExample&& rhs) noexcept; - - // Observed feature values. - // Note that to interpret these values, you probably need to have the -diff --git a/media/learning/common/value.cc b/media/learning/common/value.cc -index 9c9395c25d4e..12ea399d24c3 100644 ---- a/media/learning/common/value.cc -+++ b/media/learning/common/value.cc -@@ -23,6 +23,12 @@ Value::Value(const std::string& x) : value_(base::PersistentHash(x)) {} - - Value::Value(const Value& other) : value_(other.value_) {} - -+Value::Value(Value&& rhs) noexcept = default; -+ -+Value& Value::operator=(const Value& rhs) = default; -+ -+Value& Value::operator=(Value&& rhs) noexcept = default; -+ - bool Value::operator==(const Value& rhs) const { - return value_ == rhs.value_; - } -diff --git a/media/learning/common/value.h b/media/learning/common/value.h -index 0e64da961f34..62f4953f691c 100644 ---- a/media/learning/common/value.h -+++ b/media/learning/common/value.h -@@ -38,6 +38,10 @@ class COMPONENT_EXPORT(LEARNING_COMMON) Value { - explicit Value(const std::string& x); - - Value(const Value& other); -+ Value(Value&&) noexcept; -+ -+ Value& operator=(const Value&); -+ Value& operator=(Value&&) noexcept; - - bool operator==(const Value& rhs) const; - bool operator!=(const Value& rhs) const; --- -2.20.1 - diff --git a/chromium-73-gcc-2.patch b/chromium-73-gcc-2.patch deleted file mode 100644 index 9d1f05a..0000000 --- a/chromium-73-gcc-2.patch +++ /dev/null @@ -1,51 +0,0 @@ -From a5ba6f9bb7665040045dc0f8087407096630ad7b Mon Sep 17 00:00:00 2001 -From: Raphael Kubo da Costa -Date: Fri, 8 Feb 2019 02:57:28 +0000 -Subject: [PATCH] color_utils: Use std::sqrt() instead of std::sqrtf() -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -This fixes the build with libstdc++: - - ../../ui/gfx/color_utils.cc: In function ‘SkColor color_utils::SetDarkestColorForTesting(SkColor)’: - ../../ui/gfx/color_utils.cc:434:12: error: ‘sqrtf’ is not a member of ‘std’ - std::sqrtf((dark_luminance + 0.05f) * (kWhiteLuminance + 0.05f)) - 0.05f; - ^~~~~ - ../../ui/gfx/color_utils.cc:434:12: note: suggested alternative: ‘sqrt’ - std::sqrtf((dark_luminance + 0.05f) * (kWhiteLuminance + 0.05f)) - 0.05f; - ^~~~~ - sqrt - -sqrtf() is not formally part of C++14 as far as I can see even though libc++ -has it in . Additionally, we're only dealing with floats in all parts -of the expression above, so using the float sqrt() overload should be -harmless anyway. - -Bug: 819294 -Change-Id: If6c7bf31819df97a761e6963def6d6506154c34d -Reviewed-on: https://chromium-review.googlesource.com/c/1458193 -Auto-Submit: Raphael Kubo da Costa -Reviewed-by: Peter Kasting -Commit-Queue: Raphael Kubo da Costa -Cr-Commit-Position: refs/heads/master@{#630140} ---- - ui/gfx/color_utils.cc | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/ui/gfx/color_utils.cc b/ui/gfx/color_utils.cc -index c868cd54bac3..92ba1407d594 100644 ---- a/ui/gfx/color_utils.cc -+++ b/ui/gfx/color_utils.cc -@@ -431,7 +431,7 @@ SkColor SetDarkestColorForTesting(SkColor color) { - // GetContrastRatio(kWhiteLuminance, g_luminance_midpoint). The formula below - // can be verified by plugging it into how GetContrastRatio() operates. - g_luminance_midpoint = -- std::sqrtf((dark_luminance + 0.05f) * (kWhiteLuminance + 0.05f)) - 0.05f; -+ std::sqrt((dark_luminance + 0.05f) * (kWhiteLuminance + 0.05f)) - 0.05f; - - return previous_darkest_color; - } --- -2.20.1 - diff --git a/chromium-73-gcc-3.patch b/chromium-73-gcc-3.patch deleted file mode 100644 index 9cc6cf2..0000000 --- a/chromium-73-gcc-3.patch +++ /dev/null @@ -1,69 +0,0 @@ -From c33e832cc145c696d2157796c7640e659740dafa Mon Sep 17 00:00:00 2001 -From: Raphael Kubo da Costa -Date: Fri, 8 Feb 2019 08:44:00 +0000 -Subject: [PATCH] quic_flags_impl: Fix GCC build after #618558 -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Due to https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84849, having -base::NoDestructor> and passing an initializer list of Us does not -work if this is not done explicitly, as GCC incorrectly fails to determine -which constructor overload to use: - - ../../net/third_party/quic/platform/impl/quic_flags_impl.cc: In member function ‘bool quic::TypedQuicFlagHelper::SetFlag(const string&) const [with T = bool; std::__cxx11::string = std::__cxx11::basic_string]’: - ../../net/third_party/quic/platform/impl/quic_flags_impl.cc:156:41: error: call of overloaded ‘NoDestructor()’ is ambiguous - {"", "1", "t", "true", "y", "yes"}); - ^ - In file included from ../../net/third_party/quic/platform/impl/quic_flags_impl.h:16, - from ../../net/third_party/quic/platform/impl/quic_flags_impl.cc:5: - ../../base/no_destructor.h:62:3: note: candidate: ‘base::NoDestructor::NoDestructor(const base::NoDestructor&) [with T = std::set >]’ - NoDestructor(const NoDestructor&) = delete; - ^~~~~~~~~~~~ - ../../base/no_destructor.h:60:12: note: candidate: ‘base::NoDestructor::NoDestructor(T&&) [with T = std::set >]’ - explicit NoDestructor(T&& x) { new (storage_) T(std::move(x)); } - ^~~~~~~~~~~~ - ../../base/no_destructor.h:59:12: note: candidate: ‘base::NoDestructor::NoDestructor(const T&) [with T = std::set >]’ - explicit NoDestructor(const T& x) { new (storage_) T(x); } - ^~~~~~~~~~~~ - -Explicitly use an std::initializer_list to make the build work everywhere. - -Bug: 819294 -Change-Id: I775be20e3766a88a656b58c94c40869cb1bee2a8 -Reviewed-on: https://chromium-review.googlesource.com/c/1458214 -Auto-Submit: Raphael Kubo da Costa -Reviewed-by: Ryan Hamilton -Commit-Queue: Raphael Kubo da Costa -Cr-Commit-Position: refs/heads/master@{#630249} ---- - net/third_party/quic/platform/impl/quic_flags_impl.cc | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - -diff --git a/net/third_party/quic/platform/impl/quic_flags_impl.cc b/net/third_party/quic/platform/impl/quic_flags_impl.cc -index 5e6962d1e770..3fa45fc6892d 100644 ---- a/net/third_party/quic/platform/impl/quic_flags_impl.cc -+++ b/net/third_party/quic/platform/impl/quic_flags_impl.cc -@@ -5,6 +5,7 @@ - #include "net/third_party/quic/platform/impl/quic_flags_impl.h" - - #include -+#include - #include - #include - -@@ -153,9 +154,9 @@ std::string QuicFlagRegistry::GetHelp() const { - template <> - bool TypedQuicFlagHelper::SetFlag(const std::string& s) const { - static const base::NoDestructor> kTrueValues( -- {"", "1", "t", "true", "y", "yes"}); -+ std::initializer_list({"", "1", "t", "true", "y", "yes"})); - static const base::NoDestructor> kFalseValues( -- {"0", "f", "false", "n", "no"}); -+ std::initializer_list({"0", "f", "false", "n", "no"})); - if (kTrueValues->find(base::ToLowerASCII(s)) != kTrueValues->end()) { - *flag_ = true; - return true; --- -2.20.1 - diff --git a/chromium-73-gcc-4.patch b/chromium-73-gcc-4.patch deleted file mode 100644 index df7d630..0000000 --- a/chromium-73-gcc-4.patch +++ /dev/null @@ -1,59 +0,0 @@ -From bdd76190e54e6a0e11343dd19e4bf1d06956fa48 Mon Sep 17 00:00:00 2001 -From: Raphael Kubo da Costa -Date: Wed, 13 Feb 2019 01:02:27 +0000 -Subject: [PATCH] BaseRenderingContext2D: Use base::CheckMul and simplify code - in putImageData() -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Follow-up to commit e0b3253a56 ("Fix image conversion truncation issues"). -The current code does not build with GCC due to -https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89287: - - ../../third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc: In member function ‘void blink::BaseRenderingContext2D::putImageData(blink::ImageData*, int, int, int, int, int, int, blink::ExceptionState&)’: - ../../third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc:1777:44: error: default type conversion can't deduce template argument for ‘template::value, void>::type* > constexpr base::internal::StrictNumeric::operator Dst() const [with Dst = Dst; typename std::enable_if::value>::type* = ; T = long unsigned int]’ - new uint8_t[data_length.ValueOrDie()]); - ^ - -Work around it by using the more idiomatic base::CheckMul() with -AssignIfValid, so that we can have |data_length| be a size_t again and not -leave it to the compiler to figure out the type we want when creating the -|converted_pixels| array. - -Bug: 819294 -Change-Id: Id124cc4f3d749b45def4708e21e4badafd708578 -Reviewed-on: https://chromium-review.googlesource.com/c/1467201 -Auto-Submit: Raphael Kubo da Costa -Commit-Queue: Kentaro Hara -Reviewed-by: Kentaro Hara -Cr-Commit-Position: refs/heads/master@{#631472} ---- - .../canvas/canvas2d/base_rendering_context_2d.cc | 10 +++++----- - 1 file changed, 5 insertions(+), 5 deletions(-) - -diff --git a/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc b/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc -index d9fa696c9a9d..34a8a202bfd3 100644 ---- a/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc -+++ b/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc -@@ -1769,12 +1769,12 @@ void BaseRenderingContext2D::putImageData(ImageData* data, - CanvasColorParams(ColorParams().ColorSpace(), PixelFormat(), kNonOpaque); - if (data_color_params.NeedsColorConversion(context_color_params) || - PixelFormat() == kF16CanvasPixelFormat) { -- base::CheckedNumeric data_length = data->Size().Area(); -- data_length *= context_color_params.BytesPerPixel(); -- if (!data_length.IsValid()) -+ size_t data_length; -+ if (!base::CheckMul(data->Size().Area(), -+ context_color_params.BytesPerPixel()) -+ .AssignIfValid(&data_length)) - return; -- std::unique_ptr converted_pixels( -- new uint8_t[data_length.ValueOrDie()]); -+ std::unique_ptr converted_pixels(new uint8_t[data_length]); - if (data->ImageDataInCanvasColorSettings( - ColorParams().ColorSpace(), PixelFormat(), converted_pixels.get(), - kRGBAColorType)) { --- -2.20.1 - diff --git a/chromium-73-gcc-5.patch b/chromium-73-gcc-5.patch deleted file mode 100644 index 033861e..0000000 --- a/chromium-73-gcc-5.patch +++ /dev/null @@ -1,65 +0,0 @@ -From 78b0f0dfa9e6f3c37b71102c01def92f1ab8c330 Mon Sep 17 00:00:00 2001 -From: Raphael Kubo da Costa -Date: Wed, 13 Feb 2019 23:28:46 +0000 -Subject: [PATCH] CastActivityManager: Do not make DoLaunchSessionParams' move - constructor noexcept -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -This fixes the GCC build: - - ../../chrome/browser/media/router/providers/cast/cast_activity_manager.cc:806:1: error: function ‘media_router::CastActivityManager::DoLaunchSessionParams::DoLaunchSessionParams(media_router::CastActivityManager::DoLaunchSessionParams&&)’ defaulted on its redeclaration with an exception-specification that differs from the implicit exception-specification ‘’ - CastActivityManager::DoLaunchSessionParams::DoLaunchSessionParams( - ^~~~~~~~~~~~~~~~~~~ - -With GCC, having that noexcept marker requires all members to be marked with -noexcept themselves, and MediaRoute, CastMediaSource and url::Origin need -the right annotations. Just making DoLaunchSessionParams not noexcept is the -least intrusive solution for now. - -clang is fine because we pass -fno-exceptions and it disables the same error -there, while GCC continues to raise it (bug 843143 and its corresponding CL -have a longer discussion on this issue). - -Bug: 819294 -Change-Id: Ia3a5fb60b5e74e68bd35cfa50e2fcc728b64e5eb -Reviewed-on: https://chromium-review.googlesource.com/c/1469942 -Commit-Queue: mark a. foltz -Auto-Submit: Raphael Kubo da Costa -Reviewed-by: mark a. foltz -Cr-Commit-Position: refs/heads/master@{#631962} ---- - .../media/router/providers/cast/cast_activity_manager.cc | 2 +- - .../browser/media/router/providers/cast/cast_activity_manager.h | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/chrome/browser/media/router/providers/cast/cast_activity_manager.cc b/chrome/browser/media/router/providers/cast/cast_activity_manager.cc -index b7ee9695f69a..8569e0cd30a3 100644 ---- a/chrome/browser/media/router/providers/cast/cast_activity_manager.cc -+++ b/chrome/browser/media/router/providers/cast/cast_activity_manager.cc -@@ -804,7 +804,7 @@ CastActivityManager::DoLaunchSessionParams::DoLaunchSessionParams( - callback(std::move(callback)) {} - - CastActivityManager::DoLaunchSessionParams::DoLaunchSessionParams( -- DoLaunchSessionParams&& other) noexcept = default; -+ DoLaunchSessionParams&& other) = default; - - CastActivityManager::DoLaunchSessionParams::~DoLaunchSessionParams() = default; - -diff --git a/chrome/browser/media/router/providers/cast/cast_activity_manager.h b/chrome/browser/media/router/providers/cast/cast_activity_manager.h -index 325bffc725ee..08fe0ccca603 100644 ---- a/chrome/browser/media/router/providers/cast/cast_activity_manager.h -+++ b/chrome/browser/media/router/providers/cast/cast_activity_manager.h -@@ -295,7 +295,7 @@ class CastActivityManager : public cast_channel::CastMessageHandler::Observer, - const url::Origin& origin, - int tab_id, - mojom::MediaRouteProvider::CreateRouteCallback callback); -- DoLaunchSessionParams(DoLaunchSessionParams&& other) noexcept; -+ DoLaunchSessionParams(DoLaunchSessionParams&& other); - ~DoLaunchSessionParams(); - DoLaunchSessionParams& operator=(DoLaunchSessionParams&&) = delete; - --- -2.20.1 - diff --git a/chromium-73-gcc-6.patch b/chromium-73-gcc-6.patch deleted file mode 100644 index 752f83c..0000000 --- a/chromium-73-gcc-6.patch +++ /dev/null @@ -1,88 +0,0 @@ -From cf4c534f04c223f8a9d65407852e2a531a6d7fb6 Mon Sep 17 00:00:00 2001 -From: Raphael Kubo da Costa -Date: Thu, 14 Feb 2019 22:22:21 +0000 -Subject: [PATCH] chrome/browser: Replace some forward declarations with actual - includes -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -This fixes the GCC build which was failing like this: - - ../../base/scoped_observer.h: In instantiation of ‘void ScopedObserver::RemoveAll() [with Source = TabStripModel; Observer = TabStripModelObserver]’: - ../../base/scoped_observer.h:26:5: required from ‘ScopedObserver::~ScopedObserver() [with Source = TabStripModel; Observer = TabStripModelObserver]’ - ../../chrome/browser/ui/views/extensions/extension_popup.h:115:70: required from here - ../../base/scoped_observer.h:45:20: error: invalid use of incomplete type ‘class TabStripModel’ - sources_[i]->RemoveObserver(observer_); - ~~~~~~~~~~~~~^~~~~~~~~~~~~~ - -This is caused by https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89311 ("Brace -initialization needlessly invokes destructor"), i.e. having something like - - ScopedObserver observer_{this}; - -in a header declaration requires T and U to be fully declared because -ScopedObserver's destructor references them. In a few cases, T was only -forward-declared. - -Bug: 819294 -Change-Id: Ie5b9dc2745e27d4532c5539e3845a8c9147a0595 -Reviewed-on: https://chromium-review.googlesource.com/c/1472576 -Auto-Submit: Raphael Kubo da Costa -Commit-Queue: Alan Cutter -Reviewed-by: Finnur Thorarinsson -Reviewed-by: Alan Cutter -Cr-Commit-Position: refs/heads/master@{#632385} ---- - chrome/browser/ui/views/extensions/extension_popup.cc | 1 - - chrome/browser/ui/views/extensions/extension_popup.h | 1 + - chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.cc | 1 - - chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.h | 2 +- - .../web_applications/extensions/bookmark_app_tab_helper.cc | 1 - - .../web_applications/extensions/bookmark_app_tab_helper.h | 2 +- - 6 files changed, 3 insertions(+), 5 deletions(-) - -diff --git a/chrome/browser/ui/views/extensions/extension_popup.cc b/chrome/browser/ui/views/extensions/extension_popup.cc -index 3f0985d383dd..57d16aba9e9f 100644 ---- a/chrome/browser/ui/views/extensions/extension_popup.cc -+++ b/chrome/browser/ui/views/extensions/extension_popup.cc -@@ -8,7 +8,6 @@ - #include "chrome/browser/devtools/devtools_window.h" - #include "chrome/browser/extensions/extension_view_host.h" - #include "chrome/browser/ui/browser.h" --#include "chrome/browser/ui/tabs/tab_strip_model.h" - #include "content/public/browser/devtools_agent_host.h" - #include "content/public/browser/notification_details.h" - #include "content/public/browser/notification_source.h" -diff --git a/chrome/browser/ui/views/extensions/extension_popup.h b/chrome/browser/ui/views/extensions/extension_popup.h -index 3661b5bda950..9018efa0fea5 100644 ---- a/chrome/browser/ui/views/extensions/extension_popup.h -+++ b/chrome/browser/ui/views/extensions/extension_popup.h -@@ -9,6 +9,7 @@ - #include "base/compiler_specific.h" - #include "base/macros.h" - #include "base/scoped_observer.h" -+#include "chrome/browser/ui/tabs/tab_strip_model.h" - #include "chrome/browser/ui/tabs/tab_strip_model_observer.h" - #include "chrome/browser/ui/views/extensions/extension_view_views.h" - #include "content/public/browser/devtools_agent_host_observer.h" -diff --git a/chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.h b/chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.h -index 2a3ea8e4f91f..ac44a4f05dec 100644 ---- a/chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.h -+++ b/chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.h -@@ -8,6 +8,7 @@ - #include "base/macros.h" - #include "base/memory/weak_ptr.h" - #include "base/scoped_observer.h" -+#include "chrome/browser/ui/toolbar/toolbar_actions_bar.h" - #include "chrome/browser/ui/toolbar/toolbar_actions_bar_observer.h" - #include "chrome/browser/ui/views/toolbar/app_menu_observer.h" - #include "ui/views/controls/scroll_view.h" -@@ -15,7 +16,6 @@ class AppMenu; - class AppMenu; - class Browser; - class BrowserActionsContainer; --class ToolbarActionsBar; - - namespace views { - class MenuItemView; diff --git a/chromium-73.0.3683.103-glibc-2.29-clone-vfork.patch b/chromium-73.0.3683.103-glibc-2.29-clone-vfork.patch deleted file mode 100644 index 8ff952b..0000000 --- a/chromium-73.0.3683.103-glibc-2.29-clone-vfork.patch +++ /dev/null @@ -1,29 +0,0 @@ -diff -up chromium-73.0.3683.103/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc.glibc229 chromium-73.0.3683.103/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc ---- chromium-73.0.3683.103/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc.glibc229 2019-04-16 11:49:35.353081246 -0400 -+++ chromium-73.0.3683.103/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc 2019-04-16 11:51:22.105794620 -0400 -@@ -134,7 +134,8 @@ namespace sandbox { - #if !defined(OS_NACL_NONSFI) - // Allow Glibc's and Android pthread creation flags, crash on any other - // thread creation attempts and EPERM attempts to use neither --// CLONE_VM, nor CLONE_THREAD, which includes all fork() implementations. -+// CLONE_VM nor CLONE_THREAD (all fork implementations), unless CLONE_VFORK is -+// present (as in posix_spawn). - ResultExpr RestrictCloneToThreadsAndEPERMFork() { - const Arg flags(0); - -@@ -153,8 +154,14 @@ ResultExpr RestrictCloneToThreadsAndEPER - AnyOf(flags == kAndroidCloneMask, flags == kObsoleteAndroidCloneMask, - flags == kGlibcPthreadFlags); - -+ const uint64_t kImportantSpawnFlags = CLONE_VFORK | CLONE_VM; -+ -+ const BoolExpr isForkOrSpawn = -+ AnyOf((flags & (CLONE_VM | CLONE_THREAD)) == 0, -+ (flags & kImportantSpawnFlags) == kImportantSpawnFlags); -+ - return If(IsAndroid() ? android_test : glibc_test, Allow()) -- .ElseIf((flags & (CLONE_VM | CLONE_THREAD)) == 0, Error(EPERM)) -+ .ElseIf(isForkOrSpawn, Error(EPERM)) - .Else(CrashSIGSYSClone()); - } - diff --git a/chromium-73.0.3683.75-aarch64-crashpad-limits.patch b/chromium-73.0.3683.75-aarch64-crashpad-limits.patch deleted file mode 100644 index 4eb9529..0000000 --- a/chromium-73.0.3683.75-aarch64-crashpad-limits.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-73.0.3683.75/third_party/crashpad/crashpad/snapshot/linux/cpu_context_linux.cc.aarch64-limits chromium-73.0.3683.75/third_party/crashpad/crashpad/snapshot/linux/cpu_context_linux.cc ---- chromium-73.0.3683.75/third_party/crashpad/crashpad/snapshot/linux/cpu_context_linux.cc.aarch64-limits 2019-03-15 12:08:21.208676651 -0400 -+++ chromium-73.0.3683.75/third_party/crashpad/crashpad/snapshot/linux/cpu_context_linux.cc 2019-03-15 12:08:40.934251685 -0400 -@@ -16,6 +16,7 @@ - - #include - #include -+#include - - #include "base/logging.h" - diff --git a/chromium-73.0.3683.75-el7-fix-noexcept.patch b/chromium-73.0.3683.75-el7-fix-noexcept.patch deleted file mode 100644 index 3fc69ba..0000000 --- a/chromium-73.0.3683.75-el7-fix-noexcept.patch +++ /dev/null @@ -1,54 +0,0 @@ -diff -up chromium-73.0.3683.75/chrome/common/media_router/media_sink.cc.el7-noexcept chromium-73.0.3683.75/chrome/common/media_router/media_sink.cc ---- chromium-73.0.3683.75/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-03-11 18:00:54.000000000 -0400 -+++ chromium-73.0.3683.75/chrome/common/media_router/media_sink.cc 2019-03-20 09:45:29.400426336 -0400 -@@ -19,12 +19,12 @@ MediaSink::MediaSink(const MediaSink::Id - provider_id_(provider_id) {} - - MediaSink::MediaSink(const MediaSink& other) = default; --MediaSink::MediaSink(MediaSink&& other) noexcept = default; -+MediaSink::MediaSink(MediaSink&& other) = default; - MediaSink::MediaSink() = default; - MediaSink::~MediaSink() = default; - - MediaSink& MediaSink::operator=(const MediaSink& other) = default; --MediaSink& MediaSink::operator=(MediaSink&& other) noexcept = default; -+MediaSink& MediaSink::operator=(MediaSink&& other) = default; - - bool MediaSink::IsMaybeCloudSink() const { - switch (icon_type_) { -diff -up chromium-73.0.3683.75/components/policy/core/common/policy_map.cc.el7-noexcept chromium-73.0.3683.75/components/policy/core/common/policy_map.cc ---- chromium-73.0.3683.75/components/policy/core/common/policy_map.cc.el7-noexcept 2019-03-11 18:00:56.000000000 -0400 -+++ chromium-73.0.3683.75/components/policy/core/common/policy_map.cc 2019-03-19 11:11:38.310689134 -0400 -@@ -25,7 +25,7 @@ PolicyMap::Entry::Entry() = default; - PolicyMap::Entry::~Entry() = default; - - PolicyMap::Entry::Entry(Entry&&) noexcept = default; --PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) noexcept = default; -+PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) = default; - - PolicyMap::Entry PolicyMap::Entry::DeepCopy() const { - Entry copy; -diff -up chromium-73.0.3683.75/components/signin/core/browser/account_info.cc.el7-noexcept chromium-73.0.3683.75/components/signin/core/browser/account_info.cc ---- chromium-73.0.3683.75/components/signin/core/browser/account_info.cc.el7-noexcept 2019-03-11 18:00:57.000000000 -0400 -+++ chromium-73.0.3683.75/components/signin/core/browser/account_info.cc 2019-03-19 11:11:38.311689112 -0400 -@@ -50,7 +50,7 @@ AccountInfo::AccountInfo(AccountInfo&& o - - AccountInfo& AccountInfo::operator=(const AccountInfo& other) = default; - --AccountInfo& AccountInfo::operator=(AccountInfo&& other) noexcept = default; -+AccountInfo& AccountInfo::operator=(AccountInfo&& other) = default; - - bool AccountInfo::IsEmpty() const { - return account_id.empty() && email.empty() && gaia.empty() && -diff -up chromium-73.0.3683.75/gpu/config/gpu_info.cc.el7-noexcept chromium-73.0.3683.75/gpu/config/gpu_info.cc ---- chromium-73.0.3683.75/gpu/config/gpu_info.cc.el7-noexcept 2019-03-19 11:12:36.992435015 -0400 -+++ chromium-73.0.3683.75/gpu/config/gpu_info.cc 2019-03-19 11:12:37.061433540 -0400 -@@ -118,7 +118,7 @@ GPUInfo::GPUDevice& GPUInfo::GPUDevice:: - const GPUInfo::GPUDevice& other) = default; - - GPUInfo::GPUDevice& GPUInfo::GPUDevice::operator=( -- GPUInfo::GPUDevice&& other) noexcept = default; -+ GPUInfo::GPUDevice&& other) = default; - - GPUInfo::GPUInfo() - : optimus(false), diff --git a/chromium-73.0.3683.75-no-header-hygiene.patch b/chromium-73.0.3683.75-no-header-hygiene.patch deleted file mode 100644 index a8d2a19..0000000 --- a/chromium-73.0.3683.75-no-header-hygiene.patch +++ /dev/null @@ -1,17 +0,0 @@ -diff -up chromium-73.0.3683.75/third_party/swiftshader/third_party/llvm-7.0/BUILD.gn.nohh chromium-73.0.3683.75/third_party/swiftshader/third_party/llvm-7.0/BUILD.gn ---- chromium-73.0.3683.75/third_party/swiftshader/third_party/llvm-7.0/BUILD.gn.nohh 2019-03-15 09:02:26.167929864 -0400 -+++ chromium-73.0.3683.75/third_party/swiftshader/third_party/llvm-7.0/BUILD.gn 2019-03-15 09:03:30.334433446 -0400 -@@ -74,9 +74,12 @@ config("swiftshader_llvm_private_config" - "-Wno-unused-private-field", - "-Wno-unused-result", - "-Wno-unused-variable", -- "-Wno-error=header-hygiene", - ] - -+ if (is_clang) { -+ cflags += [ "-Wno-error=header-hygiene" ] -+ } -+ - defines = [ - "__STDC_CONSTANT_MACROS", - "__STDC_LIMIT_MACROS", diff --git a/chromium-gcc5-r3.patch b/chromium-gcc5-r3.patch deleted file mode 100644 index 7605df6..0000000 --- a/chromium-gcc5-r3.patch +++ /dev/null @@ -1,98 +0,0 @@ ---- a/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h -+++ b/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h -@@ -63,7 +63,7 @@ class WTF_EXPORT ArrayBufferContents { - allocation_length_(0), - data_(data), - data_length_(0), -- kind_(AllocationKind::kNormal), -+ kind_(WTF::ArrayBufferContents::AllocationKind::kNormal), - deleter_(deleter) {} - DataHandle(void* allocation_base, - size_t allocation_length, -@@ -94,11 +94,11 @@ class WTF_EXPORT ArrayBufferContents { - reinterpret_cast(allocation_base_) + - allocation_length_); - switch (kind_) { -- case AllocationKind::kNormal: -+ case WTF::ArrayBufferContents::AllocationKind::kNormal: - DCHECK(deleter_); - deleter_(data_); - return; -- case AllocationKind::kReservation: -+ case WTF::ArrayBufferContents::AllocationKind::kReservation: - ReleaseReservedMemory(allocation_base_, allocation_length_); - return; - } ---- a/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.orig 2017-08-15 12:45:59.433532111 +0000 -+++ b/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2017-08-15 17:52:59.691328825 +0000 -@@ -10,7 +10,7 @@ - - #include "webrtc/modules/audio_processing/aec3/aec_state.h" - --#include -+#include - #include - #include - ---- a/gpu/ipc/common/mailbox_struct_traits.h -+++ b/gpu/ipc/common/mailbox_struct_traits.h -@@ -15,7 +15,7 @@ namespace mojo { - template <> - struct StructTraits { - static base::span name(const gpu::Mailbox& mailbox) { -- return mailbox.name; -+ return base::make_span(mailbox.name); - } - static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out); - }; ---- a/services/viz/public/cpp/compositing/filter_operation_struct_traits.h -+++ b/services/viz/public/cpp/compositing/filter_operation_struct_traits.h -@@ -134,7 +134,7 @@ struct StructTraits { - static base::span matrix(const cc::FilterOperation& operation) { - if (operation.type() != cc::FilterOperation::COLOR_MATRIX) - return base::span(); -- return operation.matrix(); -+ return base::make_span(operation.matrix()); - } - - static base::span shape( ---- a/services/viz/public/cpp/compositing/quads_struct_traits.h -+++ b/services/viz/public/cpp/compositing/quads_struct_traits.h -@@ -284,7 +284,7 @@ - - static base::span vertex_opacity(const cc::DrawQuad& input) { - const cc::TextureDrawQuad* quad = cc::TextureDrawQuad::MaterialCast(&input); -- return quad->vertex_opacity; -+ return base::make_span(quad->vertex_opacity); - } - - static bool y_flipped(const cc::DrawQuad& input) { ---- a/third_party/WebKit/Source/platform/exported/WebCORS.cpp -+++ b/third_party/WebKit/Source/platform/exported/WebCORS.cpp -@@ -480,7 +480,7 @@ WebString AccessControlErrorString( - } - default: - NOTREACHED(); -- return ""; -+ return WebString(); - } - } - -@@ -512,7 +512,7 @@ WebString PreflightErrorString(const PreflightStatus status, - } - default: - NOTREACHED(); -- return ""; -+ return WebString(); - } - } - -@@ -533,7 +533,7 @@ WebString RedirectErrorString(const RedirectStatus status, - } - default: - NOTREACHED(); -- return ""; -+ return WebString(); - } - } - diff --git a/chromium-gcc8-r588316.patch b/chromium-gcc8-r588316.patch deleted file mode 100644 index d980805..0000000 --- a/chromium-gcc8-r588316.patch +++ /dev/null @@ -1,98 +0,0 @@ -From 87902b3202f81d689dd314c17006ffc907fe12a1 Mon Sep 17 00:00:00 2001 -From: Wang Qing -Date: Mon, 3 Sep 2018 02:41:08 +0000 -Subject: [PATCH] Fix build error for blink. -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -This CLs fixed the error of constexpr function call to non-constexpr function. - -Bug: 878202 -Change-Id: I6ad217a687e62a9a384980d852743a56479de3a9 -Reviewed-on: https://chromium-review.googlesource.com/1192467 -Commit-Queue: 汪 清 -Reviewed-by: Eric Willigers -Cr-Commit-Position: refs/heads/master@{#588316} ---- - .../core/animation/animation_time_delta.cc | 22 ++++++++++++++ - .../core/animation/animation_time_delta.h | 30 +++++++------------ - 2 files changed, 32 insertions(+), 20 deletions(-) - -diff --git a/third_party/blink/renderer/core/animation/animation_time_delta.cc b/third_party/blink/renderer/core/animation/animation_time_delta.cc -index 1b25469c7f2f..2e30a18890da 100644 ---- a/third_party/blink/renderer/core/animation/animation_time_delta.cc -+++ b/third_party/blink/renderer/core/animation/animation_time_delta.cc -@@ -7,6 +7,28 @@ - namespace blink { - - #if !defined(BLINK_ANIMATION_USE_TIME_DELTA) -+// Comparison operators on AnimationTimeDelta. -+bool CORE_EXPORT operator==(const AnimationTimeDelta& lhs, -+ const AnimationTimeDelta& rhs) { -+ return lhs.InSecondsF() == rhs.InSecondsF(); -+} -+bool CORE_EXPORT operator!=(const AnimationTimeDelta& lhs, -+ const AnimationTimeDelta& rhs) { -+ return lhs.InSecondsF() != rhs.InSecondsF(); -+} -+bool CORE_EXPORT operator>(const AnimationTimeDelta& lhs, -+ const AnimationTimeDelta& rhs) { -+ return lhs.InSecondsF() > rhs.InSecondsF(); -+} -+bool CORE_EXPORT operator>=(const AnimationTimeDelta& lhs, -+ const AnimationTimeDelta& rhs) { -+ return lhs.InSecondsF() >= rhs.InSecondsF(); -+} -+bool CORE_EXPORT operator<=(const AnimationTimeDelta& lhs, -+ const AnimationTimeDelta& rhs) { -+ return lhs.InSecondsF() <= rhs.InSecondsF(); -+} -+ - std::ostream& operator<<(std::ostream& os, AnimationTimeDelta time) { - return os << time.InSecondsF() << " s"; - } -diff --git a/third_party/blink/renderer/core/animation/animation_time_delta.h b/third_party/blink/renderer/core/animation/animation_time_delta.h -index 1903c1150d3e..95d218466d90 100644 ---- a/third_party/blink/renderer/core/animation/animation_time_delta.h -+++ b/third_party/blink/renderer/core/animation/animation_time_delta.h -@@ -90,26 +90,16 @@ AnimationTimeDelta operator*(T a, AnimationTimeDelta td) { - } - - // Comparison operators on AnimationTimeDelta. --constexpr bool CORE_EXPORT operator==(const AnimationTimeDelta& lhs, -- const AnimationTimeDelta& rhs) { -- return lhs.InSecondsF() == rhs.InSecondsF(); --} --constexpr bool CORE_EXPORT operator!=(const AnimationTimeDelta& lhs, -- const AnimationTimeDelta& rhs) { -- return lhs.InSecondsF() != rhs.InSecondsF(); --} --constexpr bool CORE_EXPORT operator>(const AnimationTimeDelta& lhs, -- const AnimationTimeDelta& rhs) { -- return lhs.InSecondsF() > rhs.InSecondsF(); --} --constexpr bool CORE_EXPORT operator>=(const AnimationTimeDelta& lhs, -- const AnimationTimeDelta& rhs) { -- return lhs.InSecondsF() >= rhs.InSecondsF(); --} --constexpr bool CORE_EXPORT operator<=(const AnimationTimeDelta& lhs, -- const AnimationTimeDelta& rhs) { -- return lhs.InSecondsF() <= rhs.InSecondsF(); --} -+bool CORE_EXPORT operator==(const AnimationTimeDelta& lhs, -+ const AnimationTimeDelta& rhs); -+bool CORE_EXPORT operator!=(const AnimationTimeDelta& lhs, -+ const AnimationTimeDelta& rhs); -+bool CORE_EXPORT operator>(const AnimationTimeDelta& lhs, -+ const AnimationTimeDelta& rhs); -+bool CORE_EXPORT operator>=(const AnimationTimeDelta& lhs, -+ const AnimationTimeDelta& rhs); -+bool CORE_EXPORT operator<=(const AnimationTimeDelta& lhs, -+ const AnimationTimeDelta& rhs); - - // Defined to allow DCHECK_EQ/etc to work with the class. - CORE_EXPORT std::ostream& operator<<(std::ostream& os, AnimationTimeDelta time); --- -2.17.2 - diff --git a/chromium-gcc8-r588547.patch b/chromium-gcc8-r588547.patch deleted file mode 100644 index 5f12f7f..0000000 --- a/chromium-gcc8-r588547.patch +++ /dev/null @@ -1,30 +0,0 @@ -From e3ad3deb6a6e79284f3748fa7410311d87df91c5 Mon Sep 17 00:00:00 2001 -From: Henrique Nakashima -Date: Tue, 4 Sep 2018 16:49:51 +0000 -Subject: [PATCH] IWYU: stdint.h in pdfium_mem_buffer_file_write.h for uint8_t - -Bug: 879900 -Change-Id: I9c15d1c280a23c53d31f2d72c9d0d1db79eab886 -Reviewed-on: https://chromium-review.googlesource.com/1204410 -Reviewed-by: Lei Zhang -Commit-Queue: Henrique Nakashima -Cr-Commit-Position: refs/heads/master@{#588547} ---- - pdf/pdfium/pdfium_mem_buffer_file_write.h | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/pdf/pdfium/pdfium_mem_buffer_file_write.h b/pdf/pdfium/pdfium_mem_buffer_file_write.h -index 03c54bb63800..82e82d23684d 100644 ---- a/pdf/pdfium/pdfium_mem_buffer_file_write.h -+++ b/pdf/pdfium/pdfium_mem_buffer_file_write.h -@@ -6,6 +6,7 @@ - #define PDF_PDFIUM_PDFIUM_MEM_BUFFER_FILE_WRITE_H_ - - #include -+#include - - #include - --- -2.17.2 - diff --git a/chromium-gcc8-r589614.patch b/chromium-gcc8-r589614.patch deleted file mode 100644 index 0c187fd..0000000 --- a/chromium-gcc8-r589614.patch +++ /dev/null @@ -1,37 +0,0 @@ -From cbdb8bd6567c8143dc8c1e5e86a21a8ea064eea4 Mon Sep 17 00:00:00 2001 -From: Maksim Sisov -Date: Fri, 7 Sep 2018 18:57:42 +0000 -Subject: [PATCH] OmniboxTextView: fix gcc error for structure initialization - -It looks like there is bug in GCC 6, which cannot go through -structure initialization normally. - -Thus, instead of a default initialization of one of the members, -explicitly initialize it to a default value. - -Change-Id: Ia55cc6658e6b6b2f8a80c2582dd28f001c9e648c -Reviewed-on: https://chromium-review.googlesource.com/1213181 -Reviewed-by: Scott Violet -Commit-Queue: Maksim Sisov -Cr-Commit-Position: refs/heads/master@{#589614} ---- - chrome/browser/ui/views/omnibox/omnibox_text_view.cc | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/chrome/browser/ui/views/omnibox/omnibox_text_view.cc b/chrome/browser/ui/views/omnibox/omnibox_text_view.cc -index f0a8083dc930..9021284f166d 100644 ---- a/chrome/browser/ui/views/omnibox/omnibox_text_view.cc -+++ b/chrome/browser/ui/views/omnibox/omnibox_text_view.cc -@@ -175,7 +175,8 @@ void ApplyTextStyleForType(SuggestionAnswer::TextStyle text_style, - style = {part_color, .baseline = gfx::SUPERIOR}; - break; - case SuggestionAnswer::TextStyle::BOLD: -- style = {part_color, .weight = gfx::Font::Weight::BOLD}; -+ style = {part_color, .baseline = gfx::NORMAL_BASELINE, -+ .weight = gfx::Font::Weight::BOLD}; - break; - case SuggestionAnswer::TextStyle::NORMAL: - case SuggestionAnswer::TextStyle::NORMAL_DIM: --- -2.17.2 - diff --git a/chromium-gcc8-r591015.patch b/chromium-gcc8-r591015.patch deleted file mode 100644 index 65c09e8..0000000 --- a/chromium-gcc8-r591015.patch +++ /dev/null @@ -1,70 +0,0 @@ -From e98f8ef8b2f236ecbb01df8c39e6ee1c8fbe8d7d Mon Sep 17 00:00:00 2001 -From: Maksim Sisov -Date: Thu, 13 Sep 2018 15:17:29 +0000 -Subject: [PATCH] ScrollPaintPropertyNode: Rename SnapContainerData() to - GetSnapContainerData() - -GCC is stricter than clang when it comes to class members' names and how -they can change the meaning of a previously existing symbol with the same -name. - -Here is a short error message: - -error: changes meaning of 'SnapContainerData' from 'using SnapContainerData = -class cc::SnapContainerData' [-fpermissive] using SnapContainerData = -cc::SnapContainerData; - -Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_slimming_paint_v2;master.tryserver.blink:linux_trusty_blink_rel -Change-Id: I0de5460f17b13484253e1ff0538b111c9a3b0d13 -Reviewed-on: https://chromium-review.googlesource.com/1213180 -Commit-Queue: Maksim Sisov -Reviewed-by: Philip Rogers -Cr-Commit-Position: refs/heads/master@{#591015} ---- - .../blink/renderer/core/paint/paint_property_tree_update_tests.cc | 2 +- - .../renderer/platform/graphics/compositing/property_tree_manager.cc | 2 +- - .../blink/renderer/platform/graphics/paint/scroll_paint_property_node.h | 2 +- - 3 files changed, 3 insertions(+), 3 deletions(-) - -diff --git a/third_party/blink/renderer/core/paint/paint_property_tree_update_tests.cc b/third_party/blink/renderer/core/paint/paint_property_tree_update_tests.cc -index 0d999d45076f..1fe1815a5659 100644 ---- a/third_party/blink/renderer/core/paint/paint_property_tree_update_tests.cc -+++ b/third_party/blink/renderer/core/paint/paint_property_tree_update_tests.cc -@@ -1310,7 +1310,7 @@ TEST_P(PaintPropertyTreeUpdateTest, EnsureSnapContainerData) { - GetDocument().View()->Resize(300, 300); - GetDocument().View()->UpdateAllLifecyclePhases(); - -- auto doc_snap_container_data = DocScroll()->SnapContainerData(); -+ auto doc_snap_container_data = DocScroll()->GetSnapContainerData(); - ASSERT_TRUE(doc_snap_container_data); - EXPECT_EQ(doc_snap_container_data->scroll_snap_type().axis, SnapAxis::kBoth); - EXPECT_EQ(doc_snap_container_data->scroll_snap_type().strictness, -diff --git a/third_party/blink/renderer/platform/graphics/compositing/property_tree_manager.cc b/third_party/blink/renderer/platform/graphics/compositing/property_tree_manager.cc -index 745b8c8b387e..5f87eeea9435 100644 ---- a/third_party/blink/renderer/platform/graphics/compositing/property_tree_manager.cc -+++ b/third_party/blink/renderer/platform/graphics/compositing/property_tree_manager.cc -@@ -333,7 +333,7 @@ void PropertyTreeManager::CreateCompositorScrollNode( - scroll_node->OverscrollBehaviorX()), - static_cast( - scroll_node->OverscrollBehaviorY())); -- compositor_node.snap_container_data = scroll_node->SnapContainerData(); -+ compositor_node.snap_container_data = scroll_node->GetSnapContainerData(); - - auto compositor_element_id = scroll_node->GetCompositorElementId(); - if (compositor_element_id) { -diff --git a/third_party/blink/renderer/platform/graphics/paint/scroll_paint_property_node.h b/third_party/blink/renderer/platform/graphics/paint/scroll_paint_property_node.h -index e1479269ccc3..5bd7f65f10ba 100644 ---- a/third_party/blink/renderer/platform/graphics/paint/scroll_paint_property_node.h -+++ b/third_party/blink/renderer/platform/graphics/paint/scroll_paint_property_node.h -@@ -99,7 +99,7 @@ class PLATFORM_EXPORT ScrollPaintPropertyNode - return state_.overscroll_behavior.y; - } - -- base::Optional SnapContainerData() const { -+ base::Optional GetSnapContainerData() const { - return state_.snap_container_data; - } - --- -2.14.3 - diff --git a/chromium-gn-bootstrap-r17.patch b/chromium-gn-bootstrap-r17.patch deleted file mode 100644 index 6cfd08d..0000000 --- a/chromium-gn-bootstrap-r17.patch +++ /dev/null @@ -1,68 +0,0 @@ ---- a/tools/gn/bootstrap/bootstrap.py -+++ b/tools/gn/bootstrap/bootstrap.py -@@ -179,6 +179,7 @@ def build_gn_with_ninja_manually(tempdir, options): - - write_buildflag_header_manually(root_gen_dir, 'base/debug/debugging_flags.h', - { -+ 'ENABLE_LOCATION_SOURCE': 'false', - 'ENABLE_PROFILING': 'false', - 'CAN_UNWIND_WITH_FRAME_POINTERS': 'false' - }) -@@ -204,7 +205,7 @@ def build_gn_with_ninja_manually(tempdir, options): - - write_gn_ninja(os.path.join(tempdir, 'build.ninja'), - root_gen_dir, options) -- cmd = ['ninja', '-C', tempdir] -+ cmd = ['ninja', '-C', tempdir, '-w', 'dupbuild=err'] - if options.verbose: - cmd.append('-v') - -@@ -458,6 +459,7 @@ def write_gn_ninja(path, root_gen_dir, options): - 'base/metrics/bucket_ranges.cc', - 'base/metrics/field_trial.cc', - 'base/metrics/field_trial_param_associator.cc', -+ 'base/metrics/field_trial_params.cc', - 'base/metrics/histogram.cc', - 'base/metrics/histogram_base.cc', - 'base/metrics/histogram_functions.cc', -@@ -507,6 +509,7 @@ def write_gn_ninja(path, root_gen_dir, options): - 'base/task_scheduler/scheduler_lock_impl.cc', - 'base/task_scheduler/scheduler_single_thread_task_runner_manager.cc', - 'base/task_scheduler/scheduler_worker.cc', -+ 'base/task_scheduler/scheduler_worker_pool.cc', - 'base/task_scheduler/scheduler_worker_pool_impl.cc', - 'base/task_scheduler/scheduler_worker_pool_params.cc', - 'base/task_scheduler/scheduler_worker_stack.cc', -@@ -523,6 +526,7 @@ def write_gn_ninja(path, root_gen_dir, options): - 'base/third_party/icu/icu_utf.cc', - 'base/third_party/nspr/prtime.cc', - 'base/threading/post_task_and_reply_impl.cc', -+ 'base/threading/scoped_blocking_call.cc', - 'base/threading/sequence_local_storage_map.cc', - 'base/threading/sequenced_task_runner_handle.cc', - 'base/threading/sequenced_worker_pool.cc', -@@ -579,7 +583,6 @@ def write_gn_ninja(path, root_gen_dir, options): - 'base/unguessable_token.cc', - 'base/value_iterators.cc', - 'base/values.cc', -- 'base/value_iterators.cc', - 'base/vlog.cc', - ]) - -@@ -652,7 +655,6 @@ def write_gn_ninja(path, root_gen_dir, options): - static_libraries['base']['sources'].extend([ - 'base/memory/shared_memory_handle_posix.cc', - 'base/memory/shared_memory_posix.cc', -- 'base/memory/shared_memory_tracker.cc', - 'base/nix/xdg_util.cc', - 'base/process/internal_linux.cc', - 'base/process/memory_linux.cc', -@@ -827,7 +829,7 @@ def build_gn_with_gn(temp_gn, build_dir, options): - cmd = [temp_gn, 'gen', build_dir, '--args=%s' % gn_gen_args] - check_call(cmd) - -- cmd = ['ninja', '-C', build_dir] -+ cmd = ['ninja', '-C', build_dir, '-w', 'dupbuild=err'] - if options.verbose: - cmd.append('-v') - cmd.append('gn') diff --git a/chromium-math.h-r0.patch b/chromium-math.h-r0.patch deleted file mode 100644 index 6c7c747..0000000 --- a/chromium-math.h-r0.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 9f63f94a11abc34d40ede8b8712fa15b5844a8c0 Mon Sep 17 00:00:00 2001 -From: Tom Anderson -Date: Sat, 27 Jan 2018 20:03:37 +0000 -Subject: [PATCH] Fix build with glibc 2.27 - -BUG=806340 -TBR=hamelphi@chromium.org - -Change-Id: Ib4e5091212d874d9ad88f3e9a1fdfee3ed7e0d5e -Reviewed-on: https://chromium-review.googlesource.com/890059 -Reviewed-by: Thomas Anderson -Reviewed-by: Philippe Hamel -Commit-Queue: Thomas Anderson -Cr-Commit-Position: refs/heads/master@{#532249} ---- - -diff --git a/components/assist_ranker/ranker_example_util.cc b/components/assist_ranker/ranker_example_util.cc -index 54d4dbd..ceedd8f 100644 ---- a/components/assist_ranker/ranker_example_util.cc -+++ b/components/assist_ranker/ranker_example_util.cc -@@ -2,6 +2,8 @@ - // Use of this source code is governed by a BSD-style license that can be - // found in the LICENSE file. - -+#include -+ - #include "components/assist_ranker/ranker_example_util.h" - #include "base/bit_cast.h" - #include "base/format_macros.h" diff --git a/chromium-stdint.patch b/chromium-stdint.patch deleted file mode 100644 index 8774439..0000000 --- a/chromium-stdint.patch +++ /dev/null @@ -1,21 +0,0 @@ -From 0235c2b657d936f3cdb09053776e5929fc84704b Mon Sep 17 00:00:00 2001 -From: Tomas Popela -Date: Wed, 31 Jan 2018 18:57:07 +0000 -Subject: [PATCH] Add missing stdint include - -diff --git a/chrome/browser/vr/sample_queue.cc b/chrome/browser/vr/sample_queue.cc -index c2ca777ce90c..53cb3aab1576 100644 ---- a/chrome/browser/vr/sample_queue.cc -+++ b/chrome/browser/vr/sample_queue.cc -@@ -2,6 +2,8 @@ - // Use of this source code is governed by a BSD-style license that can be - // found in the LICENSE file. - -+#include -+ - #include "chrome/browser/vr/sample_queue.h" - - namespace vr { --- -2.16.2 - diff --git a/chromium.spec b/chromium.spec index a741cda..0f9d7f8 100644 --- a/chromium.spec +++ b/chromium.spec @@ -174,175 +174,130 @@ License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and Open Patch0: chromium-67.0.3396.62-gcc5.patch Patch1: chromium-45.0.2454.101-linux-path-max.patch Patch2: chromium-55.0.2883.75-addrfix.patch -Patch4: chromium-72.0.3626.121-notest.patch +Patch3: chromium-72.0.3626.121-notest.patch +# Use libusb_interrupt_event_handler from current libusbx (1.0.21-0.1.git448584a) +Patch4: chromium-48.0.2564.116-libusb_interrupt_event_handler.patch +# Ignore deprecations in cups 2.2 +# https://bugs.chromium.org/p/chromium/issues/detail?id=622493 +Patch5: chromium-55.0.2883.75-cups22.patch +# Use PIE in the Linux sandbox (from openSUSE via Russian Fedora) +Patch6: chromium-70.0.3538.67-sandbox-pie.patch +# Use /etc/chromium for master_prefs +Patch7: chromium-68.0.3440.106-master-prefs-path.patch +# Use gn system files +Patch8: chromium-67.0.3396.62-gn-system.patch +# Fix issue where timespec is not defined when sys/stat.h is included. +Patch9: chromium-53.0.2785.92-boringssl-time-fix.patch +# I wouldn't have to do this if there was a standard way to append extra compiler flags +Patch10: chromium-63.0.3289.84-nullfix.patch +# Add explicit includedir for jpeglib.h +Patch11: chromium-54.0.2840.59-jpeg-include-dir.patch +# On i686, pass --no-keep-memory --reduce-memory-overheads to ld. +Patch12: chromium-59.0.3071.86-i686-ld-memory-tricks.patch +# Revert https://chromium.googlesource.com/chromium/src/+/b794998819088f76b4cf44c8db6940240c563cf4%5E%21/#F0 +# https://bugs.chromium.org/p/chromium/issues/detail?id=712737 +# https://bugzilla.redhat.com/show_bug.cgi?id=1446851 +Patch13: chromium-58.0.3029.96-revert-b794998819088f76b4cf44c8db6940240c563cf4.patch +# Correctly compile the stdatomic.h in ffmpeg with gcc 4.8 +Patch14: chromium-64.0.3282.119-ffmpeg-stdatomic.patch +# Nacl can't die soon enough +Patch15: chromium-66.0.3359.117-system-clang.patch +# Do not prefix libpng functions +Patch16: chromium-60.0.3112.78-no-libpng-prefix.patch +# Do not mangle libjpeg +Patch17: chromium-60.0.3112.78-jpeg-nomangle.patch +# Do not mangle zlib +Patch18: chromium-75.0.3770.80-no-zlib-mangle.patch +# Fix libavutil include pathing to find arch specific timer.h +# For some reason, this only fails on aarch64. No idea why. +Patch19: chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch +# from gentoo +Patch20: chromium-61.0.3163.79-gcc-no-opt-safe-math.patch +# From gentoo +Patch21: chromium-72.0.3626.121-gcc5-r3.patch +# To use round with gcc, you need to #include +Patch22: chromium-65.0.3325.146-gcc-round-fix.patch +# Include proper headers to invoke memcpy() +Patch23: chromium-65.0.3325.146-memcpy-fix.patch +# ../../mojo/public/cpp/bindings/associated_interface_ptr_info.h:48:43: error: cannot convert 'const mojo::ScopedInterfaceEndpointHandle' to 'bool' in return +Patch24: chromium-68.0.3440.106-boolfix.patch +# From Debian +Patch25: chromium-71.0.3578.98-skia-aarch64-buildfix.patch +# Missing files in tarball +Patch26: chromium-66.0.3359.117-missing-files.patch +# Do not use unrar code, it is non-free +Patch27: chromium-73.0.3683.75-norar.patch +# Upstream GCC fixes +Patch28: chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch +# Add "Fedora" to the user agent string +Patch29: chromium-72.0.3626.121-fedora-user-agent.patch +# Try to fix version.py for Rawhide +Patch30: chromium-71.0.3578.98-py2-bootstrap.patch +# Fix default on redeclaration error +# https://chromium.googlesource.com/chromium/src/+/122692ccee62223f266a988c575ae687e3f4c056%5E%21/#F0 +Patch31: chromium-68.0.3440.106-fix-default-on-redeclaration.patch +# Use Gentoo's Widevine hack +# https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-widevine-r3.patch +Patch32: chromium-71.0.3578.98-widevine-r3.patch +# Do not require sysroot +# Forget about trying to make libc++ +# BUILD SANELY PLEASE +Patch33: chromium-69.0.3497.81-build-sanely-please.patch +# Disable fontconfig cache magic that breaks remoting +Patch34: chromium-70.0.3538.67-disable-fontconfig-cache-magic.patch +# Fix aarch64 build against latest linux kernel headers +Patch35: chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch +# drop rsp clobber, which breaks gcc9 (thanks to Jeff Law) +Patch36: chromium-71.0.3578.98-gcc9-drop-rsp-clobber.patch +# Try to load widevine from other places +Patch37: chromium-widevine-other-locations.patch +# Disable -fno-delete-null-pointer-checks +Patch38: chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch +# Add #include to get pipewire code to build +Patch39: chromium-73.0.3683.75-pipewire-cstring-fix.patch +# gcc does not have __assume +Patch40: chromium-75.0.3770.80-gcc-no-assume.patch +# Linux 5.2 defines SIOCGSTAMP in a slightly different way, so we need to teach chromium where to find it +Patch41: chromium-75.0.3770.80-SIOCGSTAMP.patch +# https://chromium.googlesource.com/chromium/src/+/aeed4d1f15ce84a17ea0bc219e258dc4982b2368%5E%21/#F0 +Patch42: chromium-75.0.3770.80-aeed4d-gcc-dcheck_ne-fix.patch +# Revert https://chromium.googlesource.com/chromium/src/+/daff6b66faae53a0cefb88987c9ff4843629b728%5E%21/#F0 +# It might make clang happy but it breaks gcc. F*** clang. +Patch43: chromium-75.0.3770.80-revert-daff6b.patch +# Avoid pure virtual crash destroying RenderProcessUserData +# https://chromium.googlesource.com/chromium/src/+/cdf306db81efaaaa954487585d5a5a16205a5ebd%5E%21/ +Patch44: chromium-75.0.3770.80-pure-virtual-crash-fix.patch +# rename function to avoid conflict with rawhide glibc "gettid()" +Patch45: chromium-75.0.3770.80-grpc-gettid-fix.patch +# fix v8 compile with gcc +# https://chromium.googlesource.com/v8/v8/+/3b8c624bda58d05aea80dd9626cd550537d6ac3f%5E%21/#F1 +Patch46: chromium-75.0.3770.100-fix-v8-gcc.patch +# https://chromium.googlesource.com/chromium/src/+/00281713519dbd84b90d2996a009bf3a7e294435%5E%21/#F0 +Patch47: chromium-75.0.3770.100-git00281713.patch + +# Apply these changes to work around EPEL7 compiler issues +Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch +# Use lstdc++ on EPEL7 only +Patch101: chromium-75.0.3770.100-epel7-stdc++.patch +# el7 only patch +Patch102: chromium-75.0.3770.100-el7-fix-noexcept.patch + # In file included from ../linux/directory.c:21: # In file included from ../../../../native_client/src/nonsfi/linux/abi_conversion.h:20: # ../../../../native_client/src/nonsfi/linux/linux_syscall_structs.h:44:13: error: GNU-style inline assembly is disabled # __asm__ __volatile__("mov %%gs, %0" : "=r"(gs)); # ^ # 1 error generated. -Patch6: chromium-47.0.2526.80-pnacl-fgnu-inline-asm.patch +Patch200: chromium-47.0.2526.80-pnacl-fgnu-inline-asm.patch # Ignore broken nacl open fd counter -Patch7: chromium-47.0.2526.80-nacl-ignore-broken-fd-counter.patch -# Use libusb_interrupt_event_handler from current libusbx (1.0.21-0.1.git448584a) -Patch9: chromium-48.0.2564.116-libusb_interrupt_event_handler.patch -# Ignore deprecations in cups 2.2 -# https://bugs.chromium.org/p/chromium/issues/detail?id=622493 -Patch12: chromium-55.0.2883.75-cups22.patch -# Use PIE in the Linux sandbox (from openSUSE via Russian Fedora) -Patch15: chromium-70.0.3538.67-sandbox-pie.patch -# Use /etc/chromium for master_prefs -Patch18: chromium-68.0.3440.106-master-prefs-path.patch -# Disable MADV_FREE (if set by glibc) -# https://bugzilla.redhat.com/show_bug.cgi?id=1361157 -Patch19: chromium-52.0.2743.116-unset-madv_free.patch -# Use gn system files -Patch20: chromium-67.0.3396.62-gn-system.patch -# Fix last commit position issue -# https://groups.google.com/a/chromium.org/forum/#!topic/gn-dev/7nlJv486bD4 -# Patch21: chromium-60.0.3112.78-last-commit-position.patch -# Fix issue where timespec is not defined when sys/stat.h is included. -Patch22: chromium-53.0.2785.92-boringssl-time-fix.patch -# I wouldn't have to do this if there was a standard way to append extra compiler flags -Patch24: chromium-63.0.3289.84-nullfix.patch -# Add explicit includedir for jpeglib.h -Patch25: chromium-54.0.2840.59-jpeg-include-dir.patch -# On i686, pass --no-keep-memory --reduce-memory-overheads to ld. -Patch26: chromium-59.0.3071.86-i686-ld-memory-tricks.patch -# obj/content/renderer/renderer/child_frame_compositing_helper.o: In function `content::ChildFrameCompositingHelper::OnSetSurface(cc::SurfaceId const&, gfx::Size const&, float, cc::SurfaceSequence const&)': -# /builddir/build/BUILD/chromium-54.0.2840.90/out/Release/../../content/renderer/child_frame_compositing_helper.cc:214: undefined reference to `cc_blink::WebLayerImpl::setOpaque(bool)' -# Patch27: chromium-63.0.3289.84-setopaque.patch -# Use -fpermissive to build WebKit -# Patch31: chromium-56.0.2924.87-fpermissive.patch -# Fix issue with compilation on gcc7 -# Thanks to Ben Noordhuis -# Patch33: chromium-65.0.3325.146-gcc7.patch -# Revert https://chromium.googlesource.com/chromium/src/+/b794998819088f76b4cf44c8db6940240c563cf4%5E%21/#F0 -# https://bugs.chromium.org/p/chromium/issues/detail?id=712737 -# https://bugzilla.redhat.com/show_bug.cgi?id=1446851 -Patch36: chromium-58.0.3029.96-revert-b794998819088f76b4cf44c8db6940240c563cf4.patch -# Correctly compile the stdatomic.h in ffmpeg with gcc 4.8 -Patch37: chromium-64.0.3282.119-ffmpeg-stdatomic.patch -# Nacl can't die soon enough -Patch39: chromium-66.0.3359.117-system-clang.patch -# Do not prefix libpng functions -Patch42: chromium-60.0.3112.78-no-libpng-prefix.patch -# Do not mangle libjpeg -Patch43: chromium-60.0.3112.78-jpeg-nomangle.patch -# Do not mangle zlib -Patch45: chromium-75.0.3770.80-no-zlib-mangle.patch -# Apply these changes to work around EPEL7 compiler issues -Patch46: chromium-62.0.3202.62-kmaxskip-constexpr.patch -Patch47: chromium-60.0.3112.90-vulkan-force-c99.patch -# Fix libavutil include pathing to find arch specific timer.h -# For some reason, this only fails on aarch64. No idea why. -Patch50: chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch -# from gentoo -Patch53: chromium-61.0.3163.79-gcc-no-opt-safe-math.patch -# Only needed when glibc 2.26.90 or later is used -Patch57: chromium-63.0.3289.84-aarch64-glibc-2.26.90.patch -# From gentoo -Patch62: chromium-72.0.3626.121-gcc5-r3.patch -# Do not try to use libc++ in the remoting stack -# Patch63: chromium-63.0.3289.84-nolibc++.patch -# To use round with gcc, you need to #include -Patch65: chromium-65.0.3325.146-gcc-round-fix.patch -# Include proper headers to invoke memcpy() -Patch67: chromium-65.0.3325.146-memcpy-fix.patch -# ../../mojo/public/cpp/bindings/associated_interface_ptr_info.h:48:43: error: cannot convert 'const mojo::ScopedInterfaceEndpointHandle' to 'bool' in return -Patch85: chromium-68.0.3440.106-boolfix.patch -# From Debian -Patch86: chromium-71.0.3578.98-skia-aarch64-buildfix.patch -# Use lstdc++ on EPEL7 only -Patch87: chromium-75.0.3770.100-epel7-stdc++.patch -# Missing files in tarball -Patch88: chromium-66.0.3359.117-missing-files.patch -# https://chromium.googlesource.com/chromium/src/+/ba4141e451f4e0b1b19410b1b503bd32e150df06%5E%21/#F0 -# Patch89: chromium-66.0.3359.117-gcc-optional-move-fixes.patch -# https://chromium.googlesource.com/chromium/src/+/4f2b52281ce1649ea8347489443965ad33262ecc%5E%21 -# Patch90: chromium-66.0.3359.117-gcc-copy-constructor-fix.patch -# https://bugs.chromium.org/p/chromium/issues/detail?id=816952 -# Patch91: chromium-66.0.3359.117-gcc-vector-copy-constructor-fix.patch -# Do not use unrar code, it is non-free -Patch92: chromium-73.0.3683.75-norar.patch -# Upstream GCC fixes -Patch93: chromium-66.0.3359.117-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch -Patch94: chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch -# Patch95: chromium-65.0.3325.146-GCC-IDB-methods-String-renamed-to-GetString.patch -# https://github.com/archlinuxarm/PKGBUILDs/blob/master/extra/chromium/0006-GCC-do-not-use-initializer-list-for-NoDestructor-of-.patch -# Patch96: chromium-66.0.3359.117-GCC-do-not-use-initializer-list-for-NoDestructor-of-.patch -# https://chromium.googlesource.com/chromium/src/+/b84682f31dc99b9c90f5a04947075815697c68d9%5E%21/#F0 -# Patch97: chromium-66.0.3359.139-arm-init-fix.patch -# GCC8 has changed the alignof operator to return the minimal alignment required by the target ABI -# instead of the preferred alignment. This means int64_t is now 4 on i686 (instead of 8). -# Use __alignof__ to get the value we expect (and chromium checks for). -# Patch98: chromium-69.0.3497.81-gcc8-alignof.patch -# RHEL 7 has a bug in its python2.7 which does not propely handle exec with a tuple -# https://bugs.python.org/issue21591 -Patch100: chromium-67.0.3396.62-epel7-use-old-python-exec-syntax.patch -# Add "Fedora" to the user agent string -Patch101: chromium-72.0.3626.121-fedora-user-agent.patch -# Try to fix version.py for Rawhide -Patch103: chromium-71.0.3578.98-py2-bootstrap.patch -# Fix default on redeclaration error -# https://chromium.googlesource.com/chromium/src/+/122692ccee62223f266a988c575ae687e3f4c056%5E%21/#F0 -Patch110: chromium-68.0.3440.106-fix-default-on-redeclaration.patch -# Use Gentoo's Widevine hack -# https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-widevine-r3.patch -Patch111: chromium-71.0.3578.98-widevine-r3.patch -# Do not require sysroot -# Forget about trying to make libc++ -# BUILD SANELY PLEASE -Patch112: chromium-69.0.3497.81-build-sanely-please.patch -# Still moar GCC cleanups from upstream -# Patch113: chromium-gcc8-r588316.patch -# Patch114: chromium-gcc8-r588547.patch -# Patch115: chromium-gcc8-r589614.patch -# Patch116: chromium-gcc8-r591015.patch -# Disable fontconfig cache magic that breaks remoting -Patch117: chromium-70.0.3538.67-disable-fontconfig-cache-magic.patch -# Fix aarch64 build against latest linux kernel headers -Patch119: chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch +Patch201: chromium-47.0.2526.80-nacl-ignore-broken-fd-counter.patch + # Enable VAAPI support on Linux # NOTE: This patch will never land upstream -Patch121: enable-vaapi.patch -Patch122: chromium-75.0.3770.80-vaapi-i686-fpermissive.patch +Patch202: enable-vaapi.patch +Patch203: chromium-75.0.3770.80-vaapi-i686-fpermissive.patch # Fix compatibility with VA-API library (libva) version 1 -Patch124: chromium-75.0.3770.80-vaapi-libva1-compatibility.patch -# drop rsp clobber, which breaks gcc9 (thanks to Jeff Law) -Patch126: chromium-71.0.3578.98-gcc9-drop-rsp-clobber.patch -# Thanks Ubuntu -# Disable these two patches when v75 lands -Patch130: revert-gn-4980.patch -Patch131: revert-gn-4960.patch -# Try to load widevine from other places -Patch132: chromium-widevine-other-locations.patch -# Disable -fno-delete-null-pointer-checks -Patch135: chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch -# Add #include to get pipewire code to build -Patch136: chromium-73.0.3683.75-pipewire-cstring-fix.patch -# el7 only patch -Patch139: chromium-75.0.3770.100-el7-fix-noexcept.patch -# gcc does not have __assume -Patch140: chromium-75.0.3770.80-gcc-no-assume.patch -# Linux 5.2 defines SIOCGSTAMP in a slightly different way, so we need to teach chromium where to find it -Patch141: chromium-75.0.3770.80-SIOCGSTAMP.patch -# https://chromium.googlesource.com/chromium/src/+/aeed4d1f15ce84a17ea0bc219e258dc4982b2368%5E%21/#F0 -Patch142: chromium-75.0.3770.80-aeed4d-gcc-dcheck_ne-fix.patch -# Revert https://chromium.googlesource.com/chromium/src/+/daff6b66faae53a0cefb88987c9ff4843629b728%5E%21/#F0 -# It might make clang happy but it breaks gcc. F*** clang. -Patch143: chromium-75.0.3770.80-revert-daff6b.patch -# Avoid pure virtual crash destroying RenderProcessUserData -# https://chromium.googlesource.com/chromium/src/+/cdf306db81efaaaa954487585d5a5a16205a5ebd%5E%21/ -Patch144: chromium-75.0.3770.80-pure-virtual-crash-fix.patch -# rename function to avoid conflict with rawhide glibc "gettid()" -Patch145: chromium-75.0.3770.80-grpc-gettid-fix.patch -# fix v8 compile with gcc -# https://chromium.googlesource.com/v8/v8/+/3b8c624bda58d05aea80dd9626cd550537d6ac3f%5E%21/#F1 -Patch146: chromium-75.0.3770.100-fix-v8-gcc.patch -# https://chromium.googlesource.com/chromium/src/+/00281713519dbd84b90d2996a009bf3a7e294435%5E%21/#F0 -Patch147: chromium-75.0.3770.100-git00281713.patch - +Patch204: chromium-75.0.3770.80-vaapi-libva1-compatibility.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ @@ -837,97 +792,73 @@ udev. %patch0 -p1 -b .gcc5 %patch1 -p1 -b .pathmax %patch2 -p1 -b .addrfix -%patch4 -p1 -b .notest -# %%patch6 -p1 -b .gnu-inline -%patch7 -p1 -b .ignore-fd-count -%patch9 -p1 -b .modern-libusbx -%patch12 -p1 -b .cups22 -%patch15 -p1 -b .sandboxpie -%patch18 -p1 -b .etc -# %%patch19 -p1 -b .madv_free -%patch20 -p1 -b .gnsystem -# %%patch21 -p1 -b .lastcommit -%patch22 -p1 -b .timefix -%patch24 -p1 -b .nullfix -%patch25 -p1 -b .jpegfix -%patch26 -p1 -b .ldmemory -# %%patch27 -p1 -b .setopaque -# %%patch31 -p1 -b .permissive -# %%patch33 -p1 -b .gcc7 -%patch36 -p1 -b .revert -%patch37 -p1 -b .ffmpeg-stdatomic -%patch39 -p1 -b .system-clang -%patch42 -p1 -b .noprefix -%patch43 -p1 -b .nomangle -%patch45 -p1 -b .nozmangle +%patch3 -p1 -b .notest +%patch4 -p1 -b .modern-libusbx +%patch5 -p1 -b .cups22 +%patch6 -p1 -b .sandboxpie +%patch7 -p1 -b .etc +%patch8 -p1 -b .gnsystem +%patch9 -p1 -b .timefix +%patch10 -p1 -b .nullfix +%patch11 -p1 -b .jpegfix +%patch12 -p1 -b .ldmemory +%patch13 -p1 -b .revert +%patch14 -p1 -b .ffmpeg-stdatomic +%patch15 -p1 -b .system-clang +%patch16 -p1 -b .noprefix +%patch17 -p1 -b .nomangle +%patch18 -p1 -b .nozmangle +%patch19 -p1 -b .pathfix +%patch20 -p1 -b .nogccoptmath +%patch21 -p1 -b .gcc5-r3 +%patch22 -p1 -b .gcc-round-fix +%patch23 -p1 -b .memcpyfix +%patch24 -p1 -b .boolfix +%patch25 -p1 -b .aarch64fix +%patch26 -p1 -b .missing-files +%patch27 -p1 -b .nounrar +%patch28 -p1 -b .gcc-cpolicyprovider +%patch29 -p1 -b .fedora-user-agent +%patch30 -p1 -b .py2 +%patch31 -p1 -b .fix-default-redeclaration +%patch32 -p1 -b .wvhack +%patch33 -p1 -b .sanebuild +%patch34 -p1 -b .nofc +%patch35 -p1 -b .aarch64-new-stat +%patch36 -p1 -b .gcc9 +%patch37 -p1 -b .widevine-other-locations +%patch38 -p1 -b .disable-ndnpc +%patch39 -p1 -b .cstring-fix +%patch40 -p1 -b .gcc-assume +%patch41 -p1 -b .SIOCGSTAMP +%patch42 -p1 -b .gcc-dcheck_ne-fix +%patch43 -p1 -b .revert-daff6b +%patch44 -p1 -b .pure-virtual-fix +%patch45 -p1 -b .gettid-fix +%patch46 -p1 -b .fix-v8-gcc +%patch47 -p1 -b .git00281713 + +# EPEL specific patches %if 0%{?rhel} == 7 -%patch46 -p1 -b .kmaxskip -# %%patch47 -p1 -b .c99 +%patch100 -p1 -b .kmaxskip +%patch101 -p1 -b .epel7 +%patch102 -p1 -b .el7-noexcept %endif -%patch50 -p1 -b .pathfix -%patch53 -p1 -b .nogccoptmath -# %%if 0%%{?fedora} >= 28 -# %%patch57 -p1 -b .aarch64glibc -# %%endif -%patch62 -p1 -b .gcc5-r3 -# %%patch63 -p1 -b .nolibc++ -%patch65 -p1 -b .gcc-round-fix -%patch67 -p1 -b .memcpyfix -%patch85 -p1 -b .boolfix -%patch86 -p1 -b .aarch64fix -%if 0%{?rhel} == 7 -%patch87 -p1 -b .epel7 + +# Feature specific patches +%if ! 0%{?killnacl} +%patch200 -p1 -b .gnu-inline +%patch201 -p1 -b .ignore-fd-count %endif -%patch88 -p1 -b .missing -# %%patch89 -p1 -b .gccomove -# %%patch90 -p1 -b .copycon -# %%patch91 -p1 -b .944404 -%patch92 -p1 -b .nounrar -# %%patch93 -p1 -b .gcc-full-decl -%patch94 -p1 -b .gcc-cpolicyprovider -# %%patch95 -p1 -b .gcc-getstring -# %%patch96 -p1 -b .flatsetfix -# %%patch97 -p1 -b .arm-init-fix -# %%patch98 -p1 -b .gcc8-alignof -%if 0%{?rhel} == 7 -# %%patch100 -p1 -b .oldexec -%endif -%patch101 -p1 -b .fedora-user-agent -%patch103 -p1 -b .py2 -# %%patch108 -p1 -b .move-unique-ptr -%patch110 -p1 -b .fix-default-redeclaration -%patch111 -p1 -b .wvhack -%patch112 -p1 -b .sanebuild -# %%patch113 -p1 -b .r588316 -# %%patch114 -p1 -b .r588547 -# %%patch115 -p1 -b .r589614 -# %%patch116 -p1 -b .r591015 -%patch117 -p1 -b .nofc -%patch119 -p1 -b .aarch64-new-stat + %if %{use_vaapi} -%patch121 -p1 -b .vaapi -%endif +%patch202 -p1 -b .vaapi %ifarch i686 -%patch122 -p1 -b .i686permissive +%patch203 -p1 -b .i686permissive +%patch204 -p1 -b .va1compat %endif -%patch124 -p1 -b .va1compat -%patch126 -p1 -b .gcc9 -# %%patch130 -p1 -b .revert-gn-4980 -# %%patch131 -p1 -b .revert-gn-4960 -%patch132 -p1 -b .widevine-other-locations -%patch135 -p1 -b .disable-ndnpc -%patch136 -p1 -b .cstring-fix -%if 0%{?rhel} == 7 -%patch139 -p1 -b .el7-noexcept %endif -%patch140 -p1 -b .gcc-assume -%patch141 -p1 -b .SIOCGSTAMP -%patch142 -p1 -b .gcc-dcheck_ne-fix -%patch143 -p1 -b .revert-daff6b -%patch144 -p1 -b .pure-virtual-fix -%patch145 -p1 -b .gettid-fix -%patch146 -p1 -b .fix-v8-gcc -%patch147 -p1 -b .git00281713 + # Change shebang in all relevant files in this directory and all subdirectories # See `man find` for how the `-exec command {} +` syntax works diff --git a/relax-libva-version.patch b/relax-libva-version.patch deleted file mode 100644 index e297fd6..0000000 --- a/relax-libva-version.patch +++ /dev/null @@ -1,56 +0,0 @@ -From 6f1309ef8fe10965e4d0018b4f1b80ac6deccdaa Mon Sep 17 00:00:00 2001 -From: Azhar Shaikh -Date: Fri, 30 Nov 2018 23:11:57 +0000 -Subject: [PATCH] media/gpu/vaapi: Relax the version check for VA-API - -Since the newer versions of VA-API are ABI compatible, relax the -version checks for VA-API, by using VA_CHECK_VERSION(). -This will help in updating the libva to the latest releases, -while still supporting the old versions, till the new version of -libva is merged and picked by the builds. Thus ensuring that -hardware accleration is not broken while updating the libva. - -Bug: 905814 -TEST=libva-2.3.0 and libva-2.1.0 are able to do hardware acceleration. - -Suggested-by: Alexandre Courbot -Signed-off-by: Azhar Shaikh -Change-Id: I510549f72290d20676927eeeeb89a87199c062af -Reviewed-on: https://chromium-review.googlesource.com/c/1352519 -Reviewed-by: Alexandre Courbot -Reviewed-by: Hirokazu Honda -Commit-Queue: Miguel Casas -Cr-Commit-Position: refs/heads/master@{#612832} ---- - -diff --git a/AUTHORS b/AUTHORS -index 567fe15..ff42fc5 100644 ---- a/AUTHORS -+++ b/AUTHORS -@@ -103,6 +103,7 @@ - Attila Dusnoki - Avinaash Doreswamy - Ayush Khandelwal -+Azhar Shaikh - Balazs Kelemen - Baul Eun - Behara Mani Shyam Patro -diff --git a/media/gpu/vaapi/vaapi_wrapper.cc b/media/gpu/vaapi/vaapi_wrapper.cc -index b415642..053384d 100644 ---- a/media/gpu/vaapi/vaapi_wrapper.cc -+++ b/media/gpu/vaapi/vaapi_wrapper.cc -@@ -333,7 +333,13 @@ - DVLOG(1) << "VAAPI version: " << major_version << "." << minor_version << " " - << va_vendor_string_; - -- if (major_version != VA_MAJOR_VERSION || minor_version != VA_MINOR_VERSION) { -+ // The VAAPI version is determined from what is loaded on the system by -+ // calling vaInitialize(). We want a runtime evaluation of libva version, -+ // of what is loaded on the system, with, what browser is compiled with. -+ // Also since the libva is now ABI-compatible, relax the version check -+ // which helps in upgrading the libva, without breaking any existing -+ // functionality. -+ if (!VA_CHECK_VERSION(major_version, minor_version, 0)) { - LOG(ERROR) << "This build of Chromium requires VA-API version " - << VA_MAJOR_VERSION << "." << VA_MINOR_VERSION - << ", system version: " << major_version << "." << minor_version; diff --git a/revert-gn-4960.patch b/revert-gn-4960.patch deleted file mode 100644 index bb51ada..0000000 --- a/revert-gn-4960.patch +++ /dev/null @@ -1,655 +0,0 @@ -Description: revert https://gn.googlesource.com/gn/+/0d038c2e0a32a528713d3dfaf1f1e0cdfe87fd46, which breaks the chromium build - ---- a/tools/gn/build/gen.py -+++ b/tools/gn/build/gen.py -@@ -522,6 +522,7 @@ def WriteGNNinja(path, platform, host, o - 'tools/gn/setup.cc', - 'tools/gn/source_dir.cc', - 'tools/gn/source_file.cc', -+ 'tools/gn/source_file_type.cc', - 'tools/gn/standard_out.cc', - 'tools/gn/string_utils.cc', - 'tools/gn/substitution_list.cc', ---- a/tools/gn/tools/gn/c_tool.h -+++ b/tools/gn/tools/gn/c_tool.h -@@ -12,6 +12,7 @@ - #include "tools/gn/label.h" - #include "tools/gn/label_ptr.h" - #include "tools/gn/scope.h" -+#include "tools/gn/source_file_type.h" - #include "tools/gn/substitution_list.h" - #include "tools/gn/substitution_pattern.h" - #include "tools/gn/tool.h" ---- a/tools/gn/tools/gn/compile_commands_writer.cc -+++ b/tools/gn/tools/gn/compile_commands_writer.cc -@@ -122,7 +122,7 @@ void WriteCommand(const Target* target, - const CompileFlags& flags, - std::vector& tool_outputs, - PathOutput& path_output, -- SourceFile::Type source_type, -+ SourceFileType source_type, - const char* tool_name, - EscapeOptions opts, - std::string* compile_commands) { -@@ -144,16 +144,16 @@ void WriteCommand(const Target* target, - } else if (range.type == &CSubstitutionCFlags) { - command_out << flags.cflags; - } else if (range.type == &CSubstitutionCFlagsC) { -- if (source_type == SourceFile::SOURCE_C) -+ if (source_type == SOURCE_C) - command_out << flags.cflags_c; - } else if (range.type == &CSubstitutionCFlagsCc) { -- if (source_type == SourceFile::SOURCE_CPP) -+ if (source_type == SOURCE_CPP) - command_out << flags.cflags_cc; - } else if (range.type == &CSubstitutionCFlagsObjC) { -- if (source_type == SourceFile::SOURCE_M) -+ if (source_type == SOURCE_M) - command_out << flags.cflags_objc; - } else if (range.type == &CSubstitutionCFlagsObjCc) { -- if (source_type == SourceFile::SOURCE_MM) -+ if (source_type == SOURCE_MM) - command_out << flags.cflags_objcc; - } else if (range.type == &SubstitutionLabel || - range.type == &SubstitutionLabelName || -@@ -222,11 +222,9 @@ void CompileCommandsWriter::RenderJSON(c - for (const auto& source : target->sources()) { - // If this source is not a C/C++/ObjC/ObjC++ source (not header) file, - // continue as it does not belong in the compilation database. -- SourceFile::Type source_type = source.type(); -- if (source_type != SourceFile::SOURCE_CPP && -- source_type != SourceFile::SOURCE_C && -- source_type != SourceFile::SOURCE_M && -- source_type != SourceFile::SOURCE_MM) -+ SourceFileType source_type = GetSourceFileType(source); -+ if (source_type != SOURCE_CPP && source_type != SOURCE_C && -+ source_type != SOURCE_M && source_type != SOURCE_MM) - continue; - - const char* tool_name = Tool::kToolNone; -@@ -324,4 +322,4 @@ void CompileCommandsWriter::VisitDeps(co - VisitDeps(pair.ptr, visited); - } - } --} -+} -\ No newline at end of file ---- a/tools/gn/tools/gn/general_tool.h -+++ b/tools/gn/tools/gn/general_tool.h -@@ -11,6 +11,7 @@ - #include "base/macros.h" - #include "tools/gn/label.h" - #include "tools/gn/label_ptr.h" -+#include "tools/gn/source_file_type.h" - #include "tools/gn/substitution_list.h" - #include "tools/gn/substitution_pattern.h" - #include "tools/gn/tool.h" ---- a/tools/gn/tools/gn/header_checker.cc -+++ b/tools/gn/tools/gn/header_checker.cc -@@ -18,6 +18,7 @@ - #include "tools/gn/err.h" - #include "tools/gn/filesystem_utils.h" - #include "tools/gn/scheduler.h" -+#include "tools/gn/source_file_type.h" - #include "tools/gn/target.h" - #include "tools/gn/trace.h" - #include "util/worker_pool.h" -@@ -151,10 +152,9 @@ void HeaderChecker::RunCheckOverFiles(co - - for (const auto& file : files) { - // Only check C-like source files (RC files also have includes). -- SourceFile::Type type = file.first.type(); -- if (type != SourceFile::SOURCE_CPP && type != SourceFile::SOURCE_H && -- type != SourceFile::SOURCE_C && type != SourceFile::SOURCE_M && -- type != SourceFile::SOURCE_MM && type != SourceFile::SOURCE_RC) -+ SourceFileType type = GetSourceFileType(file.first); -+ if (type != SOURCE_CPP && type != SOURCE_H && type != SOURCE_C && -+ type != SOURCE_M && type != SOURCE_MM && type != SOURCE_RC) - continue; - - if (!check_generated_) { ---- a/tools/gn/tools/gn/ninja_binary_target_writer.cc -+++ b/tools/gn/tools/gn/ninja_binary_target_writer.cc -@@ -23,23 +23,22 @@ - #include "tools/gn/ninja_utils.h" - #include "tools/gn/scheduler.h" - #include "tools/gn/settings.h" -+#include "tools/gn/source_file_type.h" - #include "tools/gn/string_utils.h" - #include "tools/gn/substitution_writer.h" - #include "tools/gn/target.h" - - bool NinjaBinaryTargetWriter::SourceFileTypeSet::CSourceUsed() { -- return Get(SourceFile::SOURCE_CPP) || Get(SourceFile::SOURCE_H) || -- Get(SourceFile::SOURCE_C) || Get(SourceFile::SOURCE_M) || -- Get(SourceFile::SOURCE_MM) || Get(SourceFile::SOURCE_RC) || -- Get(SourceFile::SOURCE_S); -+ return Get(SOURCE_CPP) || Get(SOURCE_H) || Get(SOURCE_C) || Get(SOURCE_M) || -+ Get(SOURCE_MM) || Get(SOURCE_RC) || Get(SOURCE_S); - } - - bool NinjaBinaryTargetWriter::SourceFileTypeSet::RustSourceUsed() { -- return Get(SourceFile::SOURCE_RS); -+ return Get(SOURCE_RS); - } - - bool NinjaBinaryTargetWriter::SourceFileTypeSet::GoSourceUsed() { -- return Get(SourceFile::SOURCE_GO); -+ return Get(SOURCE_GO); - } - - NinjaBinaryTargetWriter::NinjaBinaryTargetWriter(const Target* target, -@@ -50,6 +49,10 @@ NinjaBinaryTargetWriter::NinjaBinaryTarg - NinjaBinaryTargetWriter::~NinjaBinaryTargetWriter() = default; - - void NinjaBinaryTargetWriter::Run() { -+ SourceFileTypeSet used_types; -+ for (const auto& source : target_->sources()) -+ used_types.Set(GetSourceFileType(source)); -+ - NinjaCBinaryTargetWriter writer(target_, out_); - writer.Run(); - } ---- a/tools/gn/tools/gn/ninja_binary_target_writer.h -+++ b/tools/gn/tools/gn/ninja_binary_target_writer.h -@@ -23,12 +23,11 @@ class NinjaBinaryTargetWriter : public N - class SourceFileTypeSet { - public: - SourceFileTypeSet() { -- memset(flags_, 0, -- sizeof(bool) * static_cast(SourceFile::SOURCE_NUMTYPES)); -+ memset(flags_, 0, sizeof(bool) * static_cast(SOURCE_NUMTYPES)); - } - -- void Set(SourceFile::Type type) { flags_[static_cast(type)] = true; } -- bool Get(SourceFile::Type type) const { -+ void Set(SourceFileType type) { flags_[static_cast(type)] = true; } -+ bool Get(SourceFileType type) const { - return flags_[static_cast(type)]; - } - -@@ -37,7 +36,7 @@ class NinjaBinaryTargetWriter : public N - bool GoSourceUsed(); - - private: -- bool flags_[static_cast(SourceFile::SOURCE_NUMTYPES)]; -+ bool flags_[static_cast(SOURCE_NUMTYPES)]; - }; - - NinjaBinaryTargetWriter(const Target* target, std::ostream& out); ---- a/tools/gn/tools/gn/ninja_c_binary_target_writer.cc -+++ b/tools/gn/tools/gn/ninja_c_binary_target_writer.cc -@@ -24,6 +24,7 @@ - #include "tools/gn/ninja_utils.h" - #include "tools/gn/scheduler.h" - #include "tools/gn/settings.h" -+#include "tools/gn/source_file_type.h" - #include "tools/gn/string_utils.h" - #include "tools/gn/substitution_writer.h" - #include "tools/gn/target.h" -@@ -66,27 +67,27 @@ void AddSourceSetObjectFiles(const Targe - if (source_set->GetOutputFilesForSource(source, &tool_name, &tool_outputs)) - obj_files->push_back(tool_outputs[0]); - -- used_types.Set(source.type()); -+ used_types.Set(GetSourceFileType(source)); - } - - // Add MSVC precompiled header object files. GCC .gch files are not object - // files so they are omitted. - if (source_set->config_values().has_precompiled_headers()) { -- if (used_types.Get(SourceFile::SOURCE_C)) { -+ if (used_types.Get(SOURCE_C)) { - const CTool* tool = source_set->toolchain()->GetToolAsC(CTool::kCToolCc); - if (tool && tool->precompiled_header_type() == CTool::PCH_MSVC) { - GetPCHOutputFiles(source_set, CTool::kCToolCc, &tool_outputs); - obj_files->Append(tool_outputs.begin(), tool_outputs.end()); - } - } -- if (used_types.Get(SourceFile::SOURCE_CPP)) { -+ if (used_types.Get(SOURCE_CPP)) { - const CTool* tool = source_set->toolchain()->GetToolAsC(CTool::kCToolCxx); - if (tool && tool->precompiled_header_type() == CTool::PCH_MSVC) { - GetPCHOutputFiles(source_set, CTool::kCToolCxx, &tool_outputs); - obj_files->Append(tool_outputs.begin(), tool_outputs.end()); - } - } -- if (used_types.Get(SourceFile::SOURCE_M)) { -+ if (used_types.Get(SOURCE_M)) { - const CTool* tool = - source_set->toolchain()->GetToolAsC(CTool::kCToolObjC); - if (tool && tool->precompiled_header_type() == CTool::PCH_MSVC) { -@@ -94,7 +95,7 @@ void AddSourceSetObjectFiles(const Targe - obj_files->Append(tool_outputs.begin(), tool_outputs.end()); - } - } -- if (used_types.Get(SourceFile::SOURCE_MM)) { -+ if (used_types.Get(SOURCE_MM)) { - const CTool* tool = - source_set->toolchain()->GetToolAsC(CTool::kCToolObjCxx); - if (tool && tool->precompiled_header_type() == CTool::PCH_MSVC) { -@@ -118,7 +119,7 @@ void NinjaCBinaryTargetWriter::Run() { - // Figure out what source types are needed. - SourceFileTypeSet used_types; - for (const auto& source : target_->sources()) -- used_types.Set(source.type()); -+ used_types.Set(GetSourceFileType(source)); - - WriteCompilerVars(used_types); - -@@ -234,34 +235,31 @@ void NinjaCBinaryTargetWriter::WriteComp - target_->config_values().has_precompiled_headers(); - - EscapeOptions opts = GetFlagOptions(); -- if (used_types.Get(SourceFile::SOURCE_S) || -- used_types.Get(SourceFile::SOURCE_ASM)) { -+ if (used_types.Get(SOURCE_S) || used_types.Get(SOURCE_ASM)) { - WriteOneFlag(target_, &CSubstitutionAsmFlags, false, Tool::kToolNone, - &ConfigValues::asmflags, opts, path_output_, out_); - } -- if (used_types.Get(SourceFile::SOURCE_C) || -- used_types.Get(SourceFile::SOURCE_CPP) || -- used_types.Get(SourceFile::SOURCE_M) || -- used_types.Get(SourceFile::SOURCE_MM)) { -+ if (used_types.Get(SOURCE_C) || used_types.Get(SOURCE_CPP) || -+ used_types.Get(SOURCE_M) || used_types.Get(SOURCE_MM)) { - WriteOneFlag(target_, &CSubstitutionCFlags, false, Tool::kToolNone, - &ConfigValues::cflags, opts, path_output_, out_); - } -- if (used_types.Get(SourceFile::SOURCE_C)) { -+ if (used_types.Get(SOURCE_C)) { - WriteOneFlag(target_, &CSubstitutionCFlagsC, has_precompiled_headers, - CTool::kCToolCc, &ConfigValues::cflags_c, opts, path_output_, - out_); - } -- if (used_types.Get(SourceFile::SOURCE_CPP)) { -+ if (used_types.Get(SOURCE_CPP)) { - WriteOneFlag(target_, &CSubstitutionCFlagsCc, has_precompiled_headers, - CTool::kCToolCxx, &ConfigValues::cflags_cc, opts, path_output_, - out_); - } -- if (used_types.Get(SourceFile::SOURCE_M)) { -+ if (used_types.Get(SOURCE_M)) { - WriteOneFlag(target_, &CSubstitutionCFlagsObjC, has_precompiled_headers, - CTool::kCToolObjC, &ConfigValues::cflags_objc, opts, - path_output_, out_); - } -- if (used_types.Get(SourceFile::SOURCE_MM)) { -+ if (used_types.Get(SOURCE_MM)) { - WriteOneFlag(target_, &CSubstitutionCFlagsObjCc, has_precompiled_headers, - CTool::kCToolObjCxx, &ConfigValues::cflags_objcc, opts, - path_output_, out_); -@@ -321,14 +319,14 @@ void NinjaCBinaryTargetWriter::WritePCHC - - const CTool* tool_c = target_->toolchain()->GetToolAsC(CTool::kCToolCc); - if (tool_c && tool_c->precompiled_header_type() != CTool::PCH_NONE && -- used_types.Get(SourceFile::SOURCE_C)) { -+ used_types.Get(SOURCE_C)) { - WritePCHCommand(&CSubstitutionCFlagsC, CTool::kCToolCc, - tool_c->precompiled_header_type(), input_dep, - order_only_deps, object_files, other_files); - } - const CTool* tool_cxx = target_->toolchain()->GetToolAsC(CTool::kCToolCxx); - if (tool_cxx && tool_cxx->precompiled_header_type() != CTool::PCH_NONE && -- used_types.Get(SourceFile::SOURCE_CPP)) { -+ used_types.Get(SOURCE_CPP)) { - WritePCHCommand(&CSubstitutionCFlagsCc, CTool::kCToolCxx, - tool_cxx->precompiled_header_type(), input_dep, - order_only_deps, object_files, other_files); -@@ -336,7 +334,7 @@ void NinjaCBinaryTargetWriter::WritePCHC - - const CTool* tool_objc = target_->toolchain()->GetToolAsC(CTool::kCToolObjC); - if (tool_objc && tool_objc->precompiled_header_type() == CTool::PCH_GCC && -- used_types.Get(SourceFile::SOURCE_M)) { -+ used_types.Get(SOURCE_M)) { - WritePCHCommand(&CSubstitutionCFlagsObjC, CTool::kCToolObjC, - tool_objc->precompiled_header_type(), input_dep, - order_only_deps, object_files, other_files); -@@ -345,7 +343,7 @@ void NinjaCBinaryTargetWriter::WritePCHC - const CTool* tool_objcxx = - target_->toolchain()->GetToolAsC(CTool::kCToolObjCxx); - if (tool_objcxx && tool_objcxx->precompiled_header_type() == CTool::PCH_GCC && -- used_types.Get(SourceFile::SOURCE_MM)) { -+ used_types.Get(SOURCE_MM)) { - WritePCHCommand(&CSubstitutionCFlagsObjCc, CTool::kCToolObjCxx, - tool_objcxx->precompiled_header_type(), input_dep, - order_only_deps, object_files, other_files); -@@ -478,7 +476,7 @@ void NinjaCBinaryTargetWriter::WriteSour - deps.resize(0); - const char* tool_name = Tool::kToolNone; - if (!target_->GetOutputFilesForSource(source, &tool_name, &tool_outputs)) { -- if (source.type() == SourceFile::SOURCE_DEF) -+ if (GetSourceFileType(source) == SOURCE_DEF) - other_files->push_back(source); - continue; // No output for this source. - } -@@ -599,7 +597,7 @@ void NinjaCBinaryTargetWriter::WriteLink - const SourceFile* optional_def_file = nullptr; - if (!other_files.empty()) { - for (const SourceFile& src_file : other_files) { -- if (src_file.type() == SourceFile::SOURCE_DEF) { -+ if (GetSourceFileType(src_file) == SOURCE_DEF) { - optional_def_file = &src_file; - implicit_deps.push_back( - OutputFile(settings_->build_settings(), src_file)); ---- a/tools/gn/tools/gn/source_file.cc -+++ b/tools/gn/tools/gn/source_file.cc -@@ -21,48 +21,18 @@ void AssertValueSourceFileString(const s - DCHECK(!EndsWithSlash(s)) << s; - } - --SourceFile::Type GetSourceFileType(const std::string& file) { -- base::StringPiece extension = FindExtension(&file); -- if (extension == "cc" || extension == "cpp" || extension == "cxx") -- return SourceFile::SOURCE_CPP; -- if (extension == "h" || extension == "hpp" || extension == "hxx" || -- extension == "hh" || extension == "inc") -- return SourceFile::SOURCE_H; -- if (extension == "c") -- return SourceFile::SOURCE_C; -- if (extension == "m") -- return SourceFile::SOURCE_M; -- if (extension == "mm") -- return SourceFile::SOURCE_MM; -- if (extension == "rc") -- return SourceFile::SOURCE_RC; -- if (extension == "S" || extension == "s" || extension == "asm") -- return SourceFile::SOURCE_S; -- if (extension == "o" || extension == "obj") -- return SourceFile::SOURCE_O; -- if (extension == "def") -- return SourceFile::SOURCE_DEF; -- if (extension == "rs") -- return SourceFile::SOURCE_RS; -- if (extension == "go") -- return SourceFile::SOURCE_GO; -- -- return SourceFile::SOURCE_UNKNOWN; --} -- - } // namespace - --SourceFile::SourceFile() : type_(SOURCE_UNKNOWN) {} -+SourceFile::SourceFile() = default; - - SourceFile::SourceFile(const base::StringPiece& p) -- : value_(p.data(), p.size()), type_(GetSourceFileType(value_)) { -+ : value_(p.data(), p.size()) { - DCHECK(!value_.empty()); - AssertValueSourceFileString(value_); - NormalizePath(&value_); - } - --SourceFile::SourceFile(SwapIn, std::string* value) -- : type_(GetSourceFileType(*value)) { -+SourceFile::SourceFile(SwapIn, std::string* value) { - value_.swap(*value); - DCHECK(!value_.empty()); - AssertValueSourceFileString(value_); ---- a/tools/gn/tools/gn/source_file.h -+++ b/tools/gn/tools/gn/source_file.h -@@ -20,28 +20,6 @@ class SourceDir; - // ends in one. - class SourceFile { - public: -- // This should be sequential integers starting from 0 so they can be used as -- // array indices. -- enum Type { -- SOURCE_UNKNOWN = 0, -- SOURCE_ASM, -- SOURCE_C, -- SOURCE_CPP, -- SOURCE_H, -- SOURCE_M, -- SOURCE_MM, -- SOURCE_S, -- SOURCE_RC, -- SOURCE_O, // Object files can be inputs, too. Also counts .obj. -- SOURCE_DEF, -- -- SOURCE_RS, -- SOURCE_GO, -- -- // Must be last. -- SOURCE_NUMTYPES, -- }; -- - enum SwapIn { SWAP_IN }; - - SourceFile(); -@@ -58,7 +36,6 @@ class SourceFile { - - bool is_null() const { return value_.empty(); } - const std::string& value() const { return value_; } -- Type type() const { return type_; } - - // Returns everything after the last slash. - std::string GetName() const; -@@ -103,7 +80,6 @@ class SourceFile { - friend class SourceDir; - - std::string value_; -- Type type_; - - // Copy & assign supported. - }; ---- /dev/null -+++ b/tools/gn/tools/gn/source_file_type.cc -@@ -0,0 +1,37 @@ -+// Copyright 2014 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. -+ -+#include "tools/gn/source_file_type.h" -+ -+#include "tools/gn/filesystem_utils.h" -+#include "tools/gn/source_file.h" -+ -+SourceFileType GetSourceFileType(const SourceFile& file) { -+ base::StringPiece extension = FindExtension(&file.value()); -+ if (extension == "cc" || extension == "cpp" || extension == "cxx") -+ return SOURCE_CPP; -+ if (extension == "h" || extension == "hpp" || extension == "hxx" || -+ extension == "hh") -+ return SOURCE_H; -+ if (extension == "c") -+ return SOURCE_C; -+ if (extension == "m") -+ return SOURCE_M; -+ if (extension == "mm") -+ return SOURCE_MM; -+ if (extension == "rc") -+ return SOURCE_RC; -+ if (extension == "S" || extension == "s" || extension == "asm") -+ return SOURCE_S; -+ if (extension == "o" || extension == "obj") -+ return SOURCE_O; -+ if (extension == "def") -+ return SOURCE_DEF; -+ if (extension == "rs") -+ return SOURCE_RS; -+ if (extension == "go") -+ return SOURCE_GO; -+ -+ return SOURCE_UNKNOWN; -+} ---- /dev/null -+++ b/tools/gn/tools/gn/source_file_type.h -@@ -0,0 +1,34 @@ -+// Copyright 2014 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. -+ -+#ifndef TOOLS_GN_SOURCE_FILE_TYPE_H_ -+#define TOOLS_GN_SOURCE_FILE_TYPE_H_ -+ -+class SourceFile; -+ -+// This should be sequential integers starting from 0 so they can be used as -+// array indices. -+enum SourceFileType { -+ SOURCE_UNKNOWN = 0, -+ SOURCE_ASM, -+ SOURCE_C, -+ SOURCE_CPP, -+ SOURCE_H, -+ SOURCE_M, -+ SOURCE_MM, -+ SOURCE_S, -+ SOURCE_RC, -+ SOURCE_O, // Object files can be inputs, too. Also counts .obj. -+ SOURCE_DEF, -+ -+ SOURCE_RS, -+ SOURCE_GO, -+ -+ // Must be last. -+ SOURCE_NUMTYPES, -+}; -+ -+SourceFileType GetSourceFileType(const SourceFile& file); -+ -+#endif // TOOLS_GN_SOURCE_FILE_TYPE_H_ ---- a/tools/gn/tools/gn/target.cc -+++ b/tools/gn/tools/gn/target.cc -@@ -16,6 +16,7 @@ - #include "tools/gn/filesystem_utils.h" - #include "tools/gn/functions.h" - #include "tools/gn/scheduler.h" -+#include "tools/gn/source_file_type.h" - #include "tools/gn/substitution_writer.h" - #include "tools/gn/tool.h" - #include "tools/gn/toolchain.h" -@@ -486,10 +487,10 @@ bool Target::GetOutputFilesForSource(con - outputs->clear(); - *computed_tool_type = Tool::kToolNone; - -- SourceFile::Type file_type = source.type(); -- if (file_type == SourceFile::SOURCE_UNKNOWN) -+ SourceFileType file_type = GetSourceFileType(source); -+ if (file_type == SOURCE_UNKNOWN) - return false; -- if (file_type == SourceFile::SOURCE_O) { -+ if (file_type == SOURCE_O) { - // Object files just get passed to the output and not compiled. - outputs->push_back(OutputFile(settings()->build_settings(), source)); - return true; ---- a/tools/gn/tools/gn/tool.cc -+++ b/tools/gn/tools/gn/tool.cc -@@ -261,27 +261,27 @@ std::unique_ptr Tool::CreateTool(c - } - - // static --const char* Tool::GetToolTypeForSourceType(SourceFile::Type type) { -+const char* Tool::GetToolTypeForSourceType(SourceFileType type) { - switch (type) { -- case SourceFile::SOURCE_C: -+ case SOURCE_C: - return CTool::kCToolCc; -- case SourceFile::SOURCE_CPP: -+ case SOURCE_CPP: - return CTool::kCToolCxx; -- case SourceFile::SOURCE_M: -+ case SOURCE_M: - return CTool::kCToolObjC; -- case SourceFile::SOURCE_MM: -+ case SOURCE_MM: - return CTool::kCToolObjCxx; -- case SourceFile::SOURCE_ASM: -- case SourceFile::SOURCE_S: -+ case SOURCE_ASM: -+ case SOURCE_S: - return CTool::kCToolAsm; -- case SourceFile::SOURCE_RC: -+ case SOURCE_RC: - return CTool::kCToolRc; -- case SourceFile::SOURCE_UNKNOWN: -- case SourceFile::SOURCE_H: -- case SourceFile::SOURCE_O: -- case SourceFile::SOURCE_DEF: -- case SourceFile::SOURCE_GO: -- case SourceFile::SOURCE_RS: -+ case SOURCE_UNKNOWN: -+ case SOURCE_H: -+ case SOURCE_O: -+ case SOURCE_DEF: -+ case SOURCE_GO: -+ case SOURCE_RS: - return kToolNone; - default: - NOTREACHED(); ---- a/tools/gn/tools/gn/tool.h -+++ b/tools/gn/tools/gn/tool.h -@@ -12,7 +12,7 @@ - #include "tools/gn/label.h" - #include "tools/gn/label_ptr.h" - #include "tools/gn/scope.h" --#include "tools/gn/source_file.h" -+#include "tools/gn/source_file_type.h" - #include "tools/gn/substitution_list.h" - #include "tools/gn/substitution_pattern.h" - -@@ -171,7 +171,7 @@ class Tool { - Toolchain* toolchain, - Err* err); - -- static const char* GetToolTypeForSourceType(SourceFile::Type type); -+ static const char* GetToolTypeForSourceType(SourceFileType type); - static const char* GetToolTypeForTargetFinalOutput(const Target* target); - - protected: ---- a/tools/gn/tools/gn/toolchain.cc -+++ b/tools/gn/tools/gn/toolchain.cc -@@ -88,16 +88,16 @@ void Toolchain::ToolchainSetupComplete() - setup_complete_ = true; - } - --const Tool* Toolchain::GetToolForSourceType(SourceFile::Type type) const { -+const Tool* Toolchain::GetToolForSourceType(SourceFileType type) const { - return GetTool(Tool::GetToolTypeForSourceType(type)); - } - --const CTool* Toolchain::GetToolForSourceTypeAsC(SourceFile::Type type) const { -+const CTool* Toolchain::GetToolForSourceTypeAsC(SourceFileType type) const { - return GetToolAsC(Tool::GetToolTypeForSourceType(type)); - } - - const GeneralTool* Toolchain::GetToolForSourceTypeAsGeneral( -- SourceFile::Type type) const { -+ SourceFileType type) const { - return GetToolAsGeneral(Tool::GetToolTypeForSourceType(type)); - } - ---- a/tools/gn/tools/gn/toolchain.h -+++ b/tools/gn/tools/gn/toolchain.h -@@ -12,6 +12,7 @@ - #include "tools/gn/item.h" - #include "tools/gn/label_ptr.h" - #include "tools/gn/scope.h" -+#include "tools/gn/source_file_type.h" - #include "tools/gn/substitution_type.h" - #include "tools/gn/tool.h" - #include "tools/gn/value.h" -@@ -87,9 +88,9 @@ class Toolchain : public Item { - } - - // Returns the tool for compiling the given source file type. -- const Tool* GetToolForSourceType(SourceFile::Type type) const; -- const CTool* GetToolForSourceTypeAsC(SourceFile::Type type) const; -- const GeneralTool* GetToolForSourceTypeAsGeneral(SourceFile::Type type) const; -+ const Tool* GetToolForSourceType(SourceFileType type) const; -+ const CTool* GetToolForSourceTypeAsC(SourceFileType type) const; -+ const GeneralTool* GetToolForSourceTypeAsGeneral(SourceFileType type) const; - - // Returns the tool that produces the final output for the given target type. - // This isn't necessarily the tool you would expect. For copy target, this ---- a/tools/gn/tools/gn/visual_studio_writer.cc -+++ b/tools/gn/tools/gn/visual_studio_writer.cc -@@ -24,6 +24,7 @@ - #include "tools/gn/label_pattern.h" - #include "tools/gn/parse_tree.h" - #include "tools/gn/path_output.h" -+#include "tools/gn/source_file_type.h" - #include "tools/gn/standard_out.h" - #include "tools/gn/target.h" - #include "tools/gn/variables.h" diff --git a/revert-gn-4980.patch b/revert-gn-4980.patch deleted file mode 100644 index fe550e9..0000000 --- a/revert-gn-4980.patch +++ /dev/null @@ -1,134 +0,0 @@ -Description: revert https://gn.googlesource.com/gn/+/8730b0feb6b991fa47368566501ab9ccfb453c92, which breaks the chromium build - ---- a/tools/gn/tools/gn/binary_target_generator.cc -+++ b/tools/gn/tools/gn/binary_target_generator.cc -@@ -68,38 +68,6 @@ void BinaryTargetGenerator::DoRun() { - return; - } - --bool BinaryTargetGenerator::FillSources() { -- bool ret = TargetGenerator::FillSources(); -- for (std::size_t i = 0; i < target_->sources().size(); ++i) { -- const auto& source = target_->sources()[i]; -- switch (source.type()) { -- case SourceFile::SOURCE_CPP: -- case SourceFile::SOURCE_H: -- case SourceFile::SOURCE_C: -- case SourceFile::SOURCE_M: -- case SourceFile::SOURCE_MM: -- case SourceFile::SOURCE_S: -- case SourceFile::SOURCE_ASM: -- case SourceFile::SOURCE_O: -- // These are allowed. -- break; -- case SourceFile::SOURCE_RC: -- case SourceFile::SOURCE_DEF: -- case SourceFile::SOURCE_RS: -- case SourceFile::SOURCE_GO: -- case SourceFile::SOURCE_UNKNOWN: -- case SourceFile::SOURCE_NUMTYPES: -- *err_ = -- Err(scope_->GetValue(variables::kSources, true)->list_value()[i], -- std::string("Only source, header, and object files belong in " -- "the sources of a ") + -- Target::GetStringForOutputType(target_->output_type()) + -- ". " + source.value() + " is not one of the valid types."); -- } -- } -- return ret; --} -- - bool BinaryTargetGenerator::FillCompleteStaticLib() { - if (target_->output_type() == Target::STATIC_LIBRARY) { - const Value* value = scope_->GetValue(variables::kCompleteStaticLib, true); ---- a/tools/gn/tools/gn/binary_target_generator.h -+++ b/tools/gn/tools/gn/binary_target_generator.h -@@ -22,7 +22,6 @@ class BinaryTargetGenerator : public Tar - - protected: - void DoRun() override; -- bool FillSources() override; - - private: - bool FillCompleteStaticLib(); ---- a/tools/gn/tools/gn/source_dir.cc -+++ b/tools/gn/tools/gn/source_dir.cc -@@ -98,10 +98,10 @@ SourceFile SourceDir::ResolveRelativeFil - return ret; - - const std::string& input_string = p.string_value(); -- if (!ValidateResolveInput(true, p, input_string, err)) -+ if (!ValidateResolveInput(true, p, input_string, err)) { - return ret; -- -- ret.SetValue(ResolveRelative(input_string, value_, true, source_root)); -+ } -+ ret.value_ = ResolveRelative(input_string, value_, true, source_root); - return ret; - } - ---- a/tools/gn/tools/gn/source_file.cc -+++ b/tools/gn/tools/gn/source_file.cc -@@ -55,19 +55,18 @@ SourceFile::Type GetSourceFileType(const - SourceFile::SourceFile() : type_(SOURCE_UNKNOWN) {} - - SourceFile::SourceFile(const base::StringPiece& p) -- : value_(p.data(), p.size()) { -+ : value_(p.data(), p.size()), type_(GetSourceFileType(value_)) { - DCHECK(!value_.empty()); - AssertValueSourceFileString(value_); - NormalizePath(&value_); -- type_ = GetSourceFileType(value_); - } - --SourceFile::SourceFile(SwapIn, std::string* value) { -+SourceFile::SourceFile(SwapIn, std::string* value) -+ : type_(GetSourceFileType(*value)) { - value_.swap(*value); - DCHECK(!value_.empty()); - AssertValueSourceFileString(value_); - NormalizePath(&value_); -- type_ = GetSourceFileType(value_); - } - - SourceFile::~SourceFile() = default; -@@ -93,8 +92,3 @@ SourceDir SourceFile::GetDir() const { - base::FilePath SourceFile::Resolve(const base::FilePath& source_root) const { - return ResolvePath(value_, true, source_root); - } -- --void SourceFile::SetValue(const std::string& value) { -- value_ = value; -- type_ = GetSourceFileType(value_); --} ---- a/tools/gn/tools/gn/source_file.h -+++ b/tools/gn/tools/gn/source_file.h -@@ -97,16 +97,11 @@ class SourceFile { - return value_ < other.value_; - } - -- void swap(SourceFile& other) { -- value_.swap(other.value_); -- std::swap(type_, other.type_); -- } -+ void swap(SourceFile& other) { value_.swap(other.value_); } - - private: - friend class SourceDir; - -- void SetValue(const std::string& value); -- - std::string value_; - Type type_; - ---- a/tools/gn/tools/gn/target_generator.h -+++ b/tools/gn/tools/gn/target_generator.h -@@ -47,7 +47,7 @@ class TargetGenerator { - - const BuildSettings* GetBuildSettings() const; - -- virtual bool FillSources(); -+ bool FillSources(); - bool FillPublic(); - bool FillConfigs(); - bool FillOutputs(bool allow_substitutions); From 83f2dc294a42d11a4d7c38e5137a018a670f1cad Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 13 Aug 2019 07:05:33 +0200 Subject: [PATCH 0334/1449] Update to 76.0.3809.100 --- .gitignore | 1 + ...4.116-libusb_interrupt_event_handler.patch | 15 - chromium-55.0.2883.75-cups22.patch | 29 -- chromium-66.0.3359.117-missing-files.patch | 272 ------------------ ...um-73.0.3683.75-pipewire-cstring-fix.patch | 11 - ...9.100-libusb_interrupt_event_handler.patch | 15 + chromium.spec | 32 +-- sources | 2 +- 8 files changed, 24 insertions(+), 353 deletions(-) delete mode 100644 chromium-48.0.2564.116-libusb_interrupt_event_handler.patch delete mode 100644 chromium-55.0.2883.75-cups22.patch delete mode 100644 chromium-66.0.3359.117-missing-files.patch delete mode 100644 chromium-73.0.3683.75-pipewire-cstring-fix.patch create mode 100644 chromium-76.0.3809.100-libusb_interrupt_event_handler.patch diff --git a/.gitignore b/.gitignore index 61d44ef..2bfdc54 100644 --- a/.gitignore +++ b/.gitignore @@ -81,3 +81,4 @@ /chromium-75.0.3770.80-clean.tar.xz /chromium-75.0.3770.90-clean.tar.xz /chromium-75.0.3770.100-clean.tar.xz +/chromium-76.0.3809.100-clean.tar.xz diff --git a/chromium-48.0.2564.116-libusb_interrupt_event_handler.patch b/chromium-48.0.2564.116-libusb_interrupt_event_handler.patch deleted file mode 100644 index d0b2484..0000000 --- a/chromium-48.0.2564.116-libusb_interrupt_event_handler.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -up chromium-48.0.2564.116/device/usb/usb_context.cc.modern-libusbx chromium-48.0.2564.116/device/usb/usb_context.cc ---- chromium-48.0.2564.116/device/usb/usb_context.cc.modern-libusbx 2016-02-24 10:21:10.534996028 -0500 -+++ chromium-48.0.2564.116/device/usb/usb_context.cc 2016-02-24 10:22:28.270499864 -0500 -@@ -57,7 +57,11 @@ void UsbContext::UsbEventHandler::Run() - - void UsbContext::UsbEventHandler::Stop() { - base::subtle::Release_Store(&running_, 0); -+#ifdef LIBUSB_API_VERSION >= 0x01000105 -+ libusb_interrupt_event_handler(context_); -+#else - libusb_interrupt_handle_event(context_); -+#endif - } - - UsbContext::UsbContext(PlatformUsbContext context) : context_(context) { diff --git a/chromium-55.0.2883.75-cups22.patch b/chromium-55.0.2883.75-cups22.patch deleted file mode 100644 index d1a2bf8..0000000 --- a/chromium-55.0.2883.75-cups22.patch +++ /dev/null @@ -1,29 +0,0 @@ -diff -up chromium-52.0.2743.82/printing/backend/print_backend_cups.cc.cups22 chromium-52.0.2743.82/printing/backend/print_backend_cups.cc ---- chromium-52.0.2743.82/printing/backend/print_backend_cups.cc.cups22 2016-07-22 09:20:15.794340886 -0400 -+++ chromium-52.0.2743.82/printing/backend/print_backend_cups.cc 2016-07-22 09:20:26.338261197 -0400 -@@ -16,6 +16,7 @@ - #include "base/synchronization/lock.h" - #include "base/values.h" - #include "printing/backend/cups_helper.h" -+#include - #include "printing/backend/print_backend_consts.h" - #include "url/gurl.h" - -diff -up chromium-52.0.2743.82/printing/BUILD.gn.cups22 chromium-52.0.2743.82/printing/BUILD.gn ---- chromium-52.0.2743.82/printing/BUILD.gn.cups22 2016-07-21 11:27:05.597507544 -0400 -+++ chromium-52.0.2743.82/printing/BUILD.gn 2016-07-21 14:36:45.574137758 -0400 -@@ -147,12 +147,13 @@ component("printing") { - ], - "trim string") - -- if (cups_version == "1.6" || cups_version == "1.7") { -+ if (cups_version == "1.6" || cups_version == "1.7" || cups_version == "2.2") { - cflags += [ - # CUPS 1.6 deprecated the PPD APIs, but we will stay with this - # API for now as supported Linux and Mac OS'es are still using - # older versions of CUPS. More info: crbug.com/226176 - "-Wno-deprecated-declarations", -+ "-D_PPD_DEPRECATED=", - # CUPS 1.7 deprecates httpConnectEncrypt(), see the mac section - # below. - ] diff --git a/chromium-66.0.3359.117-missing-files.patch b/chromium-66.0.3359.117-missing-files.patch deleted file mode 100644 index 746d56e..0000000 --- a/chromium-66.0.3359.117-missing-files.patch +++ /dev/null @@ -1,272 +0,0 @@ -diff -up chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/__init__.py.missing chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/__init__.py ---- chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/__init__.py.missing 2018-04-19 09:51:46.165723235 -0400 -+++ chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/__init__.py 2018-04-19 09:51:46.171723115 -0400 -@@ -0,0 +1,3 @@ -+# 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-66.0.3359.117/third_party/blink/tools/blinkpy/common/name_style_converter.py.missing chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/name_style_converter.py ---- chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/name_style_converter.py.missing 2018-04-19 09:51:46.171723115 -0400 -+++ chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/name_style_converter.py 2018-04-19 09:51:46.172723095 -0400 -@@ -0,0 +1,110 @@ -+# 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. -+# pylint: disable=import-error,print-statement,relative-import -+import re -+SPECIAL_TOKENS = [ -+ # This list should be sorted by length. -+ 'CString', -+ 'Float32', -+ 'Float64', -+ 'Base64', -+ 'IFrame', -+ 'Latin1', -+ 'PlugIn', -+ 'SQLite', -+ 'Uint16', -+ 'Uint32', -+ 'WebGL2', -+ 'ASCII', -+ 'CType', -+ 'DList', -+ 'Int16', -+ 'Int32', -+ 'MPath', -+ 'OList', -+ 'TSpan', -+ 'UList', -+ 'UTF16', -+ 'Uint8', -+ 'WebGL', -+ 'XPath', -+ 'ETC1', -+ 'HTML', -+ 'Int8', -+ 'S3TC', -+ 'SPv2', -+ 'UTF8', -+ 'API', -+ 'CSS', -+ 'DOM', -+ 'EXT', -+ 'RTC', -+ 'SVG', -+ '2D', -+ 'AX', -+ 'V0', -+ 'V8', -+] -+MATCHING_EXPRESSION = '((?:[A-Z][a-z]+)|[0-9]D?$)' -+class SmartTokenizer(object): -+ """Detects special cases that are not easily discernible without additional -+ knowledge, such as recognizing that in SVGSVGElement, the first two SVGs -+ are separate tokens, but WebGL is one token.""" -+ def __init__(self, name): -+ self.remaining = name -+ def tokenize(self): -+ name = self.remaining -+ tokens = [] -+ while len(name) > 0: -+ matched_token = None -+ for token in SPECIAL_TOKENS: -+ if name.startswith(token): -+ matched_token = token -+ break -+ if not matched_token: -+ match = re.search(MATCHING_EXPRESSION, name) -+ if not match: -+ matched_token = name -+ elif match.start(0) != 0: -+ matched_token = name[:match.start(0)] -+ else: -+ matched_token = match.group(0) -+ tokens.append(name[:len(matched_token)]) -+ name = name[len(matched_token):] -+ return tokens -+class NameStyleConverter(object): -+ """Converts names from camelCase to various other styles. -+ """ -+ def __init__(self, name): -+ self.tokens = self.tokenize(name) -+ def tokenize(self, name): -+ tokenizer = SmartTokenizer(name) -+ return tokenizer.tokenize() -+ def to_snake_case(self): -+ """Snake case is the file and variable name style per Google C++ Style -+ Guide: -+ https://google.github.io/styleguide/cppguide.html#Variable_Names -+ Also known as the hacker case. -+ https://en.wikipedia.org/wiki/Snake_case -+ """ -+ return '_'.join([token.lower() for token in self.tokens]) -+ def to_upper_camel_case(self): -+ """Upper-camel case is the class and function name style per -+ Google C++ Style Guide: -+ https://google.github.io/styleguide/cppguide.html#Function_Names -+ Also known as the PascalCase. -+ https://en.wikipedia.org/wiki/Camel_case. -+ """ -+ return ''.join([token[0].upper() + token[1:] for token in self.tokens]) -+ def to_macro_case(self): -+ """Macro case is the macro name style per Google C++ Style Guide: -+ https://google.github.io/styleguide/cppguide.html#Macro_Names -+ """ -+ return '_'.join([token.upper() for token in self.tokens]) -+ def to_all_cases(self): -+ return { -+ 'snake_case': self.to_snake_case(), -+ 'upper_camel_case': self.to_upper_camel_case(), -+ 'macro_case': self.to_macro_case(), -+ } -diff -up chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/name_style_converter_test.py.missing chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/name_style_converter_test.py ---- chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/name_style_converter_test.py.missing 2018-04-19 09:51:46.172723095 -0400 -+++ chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/name_style_converter_test.py 2018-04-19 09:51:46.173723075 -0400 -@@ -0,0 +1,140 @@ -+# 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. -+# pylint: disable=import-error,print-statement,relative-import,protected-access -+"""Unit tests for name_style_converter.py.""" -+import unittest -+from name_style_converter import NameStyleConverter -+from name_style_converter import SmartTokenizer -+class SmartTokenizerTest(unittest.TestCase): -+ def test_simple_cases(self): -+ tokenizer = SmartTokenizer('foo') -+ self.assertEqual(tokenizer.tokenize(), ['foo']) -+ tokenizer = SmartTokenizer('fooBar') -+ self.assertEqual(tokenizer.tokenize(), ['foo', 'Bar']) -+ tokenizer = SmartTokenizer('fooBarBaz') -+ self.assertEqual(tokenizer.tokenize(), ['foo', 'Bar', 'Baz']) -+ tokenizer = SmartTokenizer('Baz') -+ self.assertEqual(tokenizer.tokenize(), ['Baz']) -+ tokenizer = SmartTokenizer('') -+ self.assertEqual(tokenizer.tokenize(), []) -+ tokenizer = SmartTokenizer('FOO') -+ self.assertEqual(tokenizer.tokenize(), ['FOO']) -+ tokenizer = SmartTokenizer('foo2') -+ self.assertEqual(tokenizer.tokenize(), ['foo', '2']) -+ def test_tricky_cases(self): -+ tokenizer = SmartTokenizer('XMLHttpRequest') -+ self.assertEqual(tokenizer.tokenize(), ['XML', 'Http', 'Request']) -+ tokenizer = SmartTokenizer('HTMLElement') -+ self.assertEqual(tokenizer.tokenize(), ['HTML', 'Element']) -+ tokenizer = SmartTokenizer('WebGLRenderingContext') -+ self.assertEqual(tokenizer.tokenize(), -+ ['WebGL', 'Rendering', 'Context']) -+ tokenizer = SmartTokenizer('CanvasRenderingContext2D') -+ self.assertEqual(tokenizer.tokenize(), -+ ['Canvas', 'Rendering', 'Context', '2D']) -+ tokenizer = SmartTokenizer('CanvasRenderingContext2DAPITest') -+ self.assertEqual(tokenizer.tokenize(), -+ ['Canvas', 'Rendering', 'Context', '2D', 'API', 'Test']) -+ tokenizer = SmartTokenizer('SVGSVGElement') -+ self.assertEqual(tokenizer.tokenize(), ['SVG', 'SVG', 'Element']) -+ tokenizer = SmartTokenizer('CanvasRenderingContext2D') -+ self.assertEqual(tokenizer.tokenize(), ['Canvas', 'Rendering', 'Context', '2D']) -+ tokenizer = SmartTokenizer('CSSURLImageValue') -+ self.assertEqual(tokenizer.tokenize(), ['CSS', 'URL', 'Image', 'Value']) -+ tokenizer = SmartTokenizer('CSSPropertyAPID') -+ self.assertEqual(tokenizer.tokenize(), ['CSS', 'Property', 'API', 'D']) -+ tokenizer = SmartTokenizer('AXARIAGridCell') -+ self.assertEqual(tokenizer.tokenize(), ['AX', 'ARIA', 'Grid', 'Cell']) -+ tokenizer = SmartTokenizer('CDATASection') -+ self.assertEqual(tokenizer.tokenize(), ['CDATA', 'Section']) -+ tokenizer = SmartTokenizer('ASCIICType') -+ self.assertEqual(tokenizer.tokenize(), ['ASCII', 'CType']) -+ tokenizer = SmartTokenizer('CString') -+ self.assertEqual(tokenizer.tokenize(), ['CString']) -+ tokenizer = SmartTokenizer('HTMLDListElement') -+ self.assertEqual(tokenizer.tokenize(), ['HTML', 'DList', 'Element']) -+ tokenizer = SmartTokenizer('HTMLOListElement') -+ self.assertEqual(tokenizer.tokenize(), ['HTML', 'OList', 'Element']) -+ tokenizer = SmartTokenizer('HTMLIFrameElement') -+ self.assertEqual(tokenizer.tokenize(), ['HTML', 'IFrame', 'Element']) -+ tokenizer = SmartTokenizer('HTMLPlugInElement') -+ self.assertEqual(tokenizer.tokenize(), ['HTML', 'PlugIn', 'Element']) -+ # No special handling for OptGroup, FieldSet, and TextArea. -+ tokenizer = SmartTokenizer('HTMLOptGroupElement') -+ self.assertEqual(tokenizer.tokenize(), ['HTML', 'Opt', 'Group', 'Element']) -+ tokenizer = SmartTokenizer('HTMLFieldSetElement') -+ self.assertEqual(tokenizer.tokenize(), ['HTML', 'Field', 'Set', 'Element']) -+ tokenizer = SmartTokenizer('HTMLTextAreaElement') -+ self.assertEqual(tokenizer.tokenize(), ['HTML', 'Text', 'Area', 'Element']) -+ tokenizer = SmartTokenizer('Path2D') -+ self.assertEqual(tokenizer.tokenize(), ['Path', '2D']) -+ tokenizer = SmartTokenizer('Point2D') -+ self.assertEqual(tokenizer.tokenize(), ['Point', '2D']) -+ tokenizer = SmartTokenizer('CanvasRenderingContext2DState') -+ self.assertEqual(tokenizer.tokenize(), ['Canvas', 'Rendering', 'Context', '2D', 'State']) -+ tokenizer = SmartTokenizer('RTCDTMFSender') -+ self.assertEqual(tokenizer.tokenize(), ['RTC', 'DTMF', 'Sender']) -+ tokenizer = SmartTokenizer('WebGLCompressedTextureS3TCsRGB') -+ self.assertEqual(tokenizer.tokenize(), ['WebGL', 'Compressed', 'Texture', 'S3TC', 'sRGB']) -+ tokenizer = SmartTokenizer('WebGL2CompressedTextureETC1') -+ self.assertEqual(tokenizer.tokenize(), ['WebGL2', 'Compressed', 'Texture', 'ETC1']) -+ tokenizer = SmartTokenizer('EXTsRGB') -+ self.assertEqual(tokenizer.tokenize(), ['EXT', 'sRGB']) -+ tokenizer = SmartTokenizer('SVGFEBlendElement') -+ self.assertEqual(tokenizer.tokenize(), ['SVG', 'FE', 'Blend', 'Element']) -+ tokenizer = SmartTokenizer('SVGMPathElement') -+ self.assertEqual(tokenizer.tokenize(), ['SVG', 'MPath', 'Element']) -+ tokenizer = SmartTokenizer('SVGTSpanElement') -+ self.assertEqual(tokenizer.tokenize(), ['SVG', 'TSpan', 'Element']) -+ tokenizer = SmartTokenizer('SVGURIReference') -+ self.assertEqual(tokenizer.tokenize(), ['SVG', 'URI', 'Reference']) -+ tokenizer = SmartTokenizer('UTF16TextIterator') -+ self.assertEqual(tokenizer.tokenize(), ['UTF16', 'Text', 'Iterator']) -+ tokenizer = SmartTokenizer('UTF8Decoder') -+ self.assertEqual(tokenizer.tokenize(), ['UTF8', 'Decoder']) -+ tokenizer = SmartTokenizer('Uint8Array') -+ self.assertEqual(tokenizer.tokenize(), ['Uint8', 'Array']) -+ tokenizer = SmartTokenizer('DOMWindowBase64') -+ self.assertEqual(tokenizer.tokenize(), ['DOM', 'Window', 'Base64']) -+ tokenizer = SmartTokenizer('TextCodecLatin1') -+ self.assertEqual(tokenizer.tokenize(), ['Text', 'Codec', 'Latin1']) -+ tokenizer = SmartTokenizer('V8BindingForCore') -+ self.assertEqual(tokenizer.tokenize(), ['V8', 'Binding', 'For', 'Core']) -+ tokenizer = SmartTokenizer('V8DOMRect') -+ self.assertEqual(tokenizer.tokenize(), ['V8', 'DOM', 'Rect']) -+ tokenizer = SmartTokenizer('V0InsertionPoint') -+ self.assertEqual(tokenizer.tokenize(), ['V0', 'Insertion', 'Point']) -+ tokenizer = SmartTokenizer('ShadowDOMV0Test') -+ self.assertEqual(tokenizer.tokenize(), ['Shadow', 'DOM', 'V0', 'Test']) -+ tokenizer = SmartTokenizer('ElementShadowV0') -+ self.assertEqual(tokenizer.tokenize(), ['Element', 'Shadow', 'V0']) -+ tokenizer = SmartTokenizer('StubChromeClientForSPv2') -+ self.assertEqual(tokenizer.tokenize(), ['Stub', 'Chrome', 'Client', 'For', 'SPv2']) -+ tokenizer = SmartTokenizer('SQLiteAuthorizer') -+ self.assertEqual(tokenizer.tokenize(), ['SQLite', 'Authorizer']) -+ tokenizer = SmartTokenizer('XPathEvaluator') -+ self.assertEqual(tokenizer.tokenize(), ['XPath', 'Evaluator']) -+ tokenizer = SmartTokenizer('IsXHTMLDocument') -+ self.assertEqual(tokenizer.tokenize(), ['Is', 'XHTML', 'Document']) -+ tokenizer = SmartTokenizer('Animation.idl') -+ self.assertEqual(tokenizer.tokenize(), ['Animation', '.idl']) -+class NameStyleConverterTest(unittest.TestCase): -+ def test_snake_case(self): -+ converter = NameStyleConverter('HTMLElement') -+ self.assertEqual(converter.to_snake_case(), 'html_element') -+ def test_upper_camel_case(self): -+ converter = NameStyleConverter('someSuperThing') -+ self.assertEqual(converter.to_upper_camel_case(), 'SomeSuperThing') -+ converter = NameStyleConverter('SVGElement') -+ self.assertEqual(converter.to_upper_camel_case(), 'SVGElement') -+ def test_macro_case(self): -+ converter = NameStyleConverter('WebGLBaz2D') -+ self.assertEqual(converter.to_macro_case(), 'WEBGL_BAZ_2D') -+ def test_all_cases(self): -+ converter = NameStyleConverter('SVGScriptElement') -+ self.assertEqual(converter.to_all_cases(), { -+ 'snake_case': 'svg_script_element', -+ 'upper_camel_case': 'SVGScriptElement', -+ 'macro_case': 'SVG_SCRIPT_ELEMENT', -+ }) -diff -up chromium-66.0.3359.117/third_party/blink/tools/blinkpy/__init__.py.missing chromium-66.0.3359.117/third_party/blink/tools/blinkpy/__init__.py ---- chromium-66.0.3359.117/third_party/blink/tools/blinkpy/__init__.py.missing 2018-04-19 11:34:40.621293007 -0400 -+++ chromium-66.0.3359.117/third_party/blink/tools/blinkpy/__init__.py 2018-04-19 11:34:34.440413163 -0400 -@@ -0,0 +1,3 @@ -+# 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 --git a/chromium-73.0.3683.75-pipewire-cstring-fix.patch b/chromium-73.0.3683.75-pipewire-cstring-fix.patch deleted file mode 100644 index ce8b70b..0000000 --- a/chromium-73.0.3683.75-pipewire-cstring-fix.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-73.0.3683.75/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc.cstringfix chromium-73.0.3683.75/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc ---- chromium-73.0.3683.75/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc.cstringfix 2019-03-13 13:04:25.290842447 -0400 -+++ chromium-73.0.3683.75/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc 2019-03-13 13:05:13.234897441 -0400 -@@ -18,6 +18,7 @@ - #include - #include - -+#include - #include - #include - diff --git a/chromium-76.0.3809.100-libusb_interrupt_event_handler.patch b/chromium-76.0.3809.100-libusb_interrupt_event_handler.patch new file mode 100644 index 0000000..690f0f9 --- /dev/null +++ b/chromium-76.0.3809.100-libusb_interrupt_event_handler.patch @@ -0,0 +1,15 @@ +diff -up chromium-76.0.3809.100/services/device/usb/usb_context.cc.modern-libusbx chromium-76.0.3809.100/services/device/usb/usb_context.cc +--- chromium-76.0.3809.100/services/device/usb/usb_context.cc.modern-libusbx 2019-08-12 15:40:49.034170484 +0200 ++++ chromium-76.0.3809.100/services/device/usb/usb_context.cc 2019-08-12 15:41:23.775558867 +0200 +@@ -58,7 +58,11 @@ void UsbContext::UsbEventHandler::Run() + + void UsbContext::UsbEventHandler::Stop() { + base::subtle::Release_Store(&running_, 0); ++#ifdef LIBUSB_API_VERSION >= 0x01000105 ++ libusb_interrupt_event_handler(context_); ++#else + libusb_interrupt_handle_event(context_); ++#endif + } + + UsbContext::UsbContext(PlatformUsbContext context) : context_(context) { diff --git a/chromium.spec b/chromium.spec index 0f9d7f8..88d3818 100644 --- a/chromium.spec +++ b/chromium.spec @@ -157,15 +157,15 @@ BuildRequires: libicu-devel >= 5.4 %global chromoting_client_id %nil %endif -%global majorversion 75 +%global majorversion 76 %if %{freeworld} Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3770.100 -Release: 3%{?dist} +Version: %{majorversion}.0.3809.100 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -176,10 +176,7 @@ Patch1: chromium-45.0.2454.101-linux-path-max.patch Patch2: chromium-55.0.2883.75-addrfix.patch Patch3: chromium-72.0.3626.121-notest.patch # Use libusb_interrupt_event_handler from current libusbx (1.0.21-0.1.git448584a) -Patch4: chromium-48.0.2564.116-libusb_interrupt_event_handler.patch -# Ignore deprecations in cups 2.2 -# https://bugs.chromium.org/p/chromium/issues/detail?id=622493 -Patch5: chromium-55.0.2883.75-cups22.patch +Patch4: chromium-76.0.3809.100-libusb_interrupt_event_handler.patch # Use PIE in the Linux sandbox (from openSUSE via Russian Fedora) Patch6: chromium-70.0.3538.67-sandbox-pie.patch # Use /etc/chromium for master_prefs @@ -223,8 +220,6 @@ Patch23: chromium-65.0.3325.146-memcpy-fix.patch Patch24: chromium-68.0.3440.106-boolfix.patch # From Debian Patch25: chromium-71.0.3578.98-skia-aarch64-buildfix.patch -# Missing files in tarball -Patch26: chromium-66.0.3359.117-missing-files.patch # Do not use unrar code, it is non-free Patch27: chromium-73.0.3683.75-norar.patch # Upstream GCC fixes @@ -253,14 +248,8 @@ Patch36: chromium-71.0.3578.98-gcc9-drop-rsp-clobber.patch Patch37: chromium-widevine-other-locations.patch # Disable -fno-delete-null-pointer-checks Patch38: chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch -# Add #include to get pipewire code to build -Patch39: chromium-73.0.3683.75-pipewire-cstring-fix.patch -# gcc does not have __assume -Patch40: chromium-75.0.3770.80-gcc-no-assume.patch # Linux 5.2 defines SIOCGSTAMP in a slightly different way, so we need to teach chromium where to find it Patch41: chromium-75.0.3770.80-SIOCGSTAMP.patch -# https://chromium.googlesource.com/chromium/src/+/aeed4d1f15ce84a17ea0bc219e258dc4982b2368%5E%21/#F0 -Patch42: chromium-75.0.3770.80-aeed4d-gcc-dcheck_ne-fix.patch # Revert https://chromium.googlesource.com/chromium/src/+/daff6b66faae53a0cefb88987c9ff4843629b728%5E%21/#F0 # It might make clang happy but it breaks gcc. F*** clang. Patch43: chromium-75.0.3770.80-revert-daff6b.patch @@ -272,8 +261,6 @@ Patch45: chromium-75.0.3770.80-grpc-gettid-fix.patch # fix v8 compile with gcc # https://chromium.googlesource.com/v8/v8/+/3b8c624bda58d05aea80dd9626cd550537d6ac3f%5E%21/#F1 Patch46: chromium-75.0.3770.100-fix-v8-gcc.patch -# https://chromium.googlesource.com/chromium/src/+/00281713519dbd84b90d2996a009bf3a7e294435%5E%21/#F0 -Patch47: chromium-75.0.3770.100-git00281713.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -794,7 +781,6 @@ udev. %patch2 -p1 -b .addrfix %patch3 -p1 -b .notest %patch4 -p1 -b .modern-libusbx -%patch5 -p1 -b .cups22 %patch6 -p1 -b .sandboxpie %patch7 -p1 -b .etc %patch8 -p1 -b .gnsystem @@ -815,7 +801,6 @@ udev. %patch23 -p1 -b .memcpyfix %patch24 -p1 -b .boolfix %patch25 -p1 -b .aarch64fix -%patch26 -p1 -b .missing-files %patch27 -p1 -b .nounrar %patch28 -p1 -b .gcc-cpolicyprovider %patch29 -p1 -b .fedora-user-agent @@ -828,15 +813,11 @@ udev. %patch36 -p1 -b .gcc9 %patch37 -p1 -b .widevine-other-locations %patch38 -p1 -b .disable-ndnpc -%patch39 -p1 -b .cstring-fix -%patch40 -p1 -b .gcc-assume %patch41 -p1 -b .SIOCGSTAMP -%patch42 -p1 -b .gcc-dcheck_ne-fix %patch43 -p1 -b .revert-daff6b %patch44 -p1 -b .pure-virtual-fix %patch45 -p1 -b .gettid-fix %patch46 -p1 -b .fix-v8-gcc -%patch47 -p1 -b .git00281713 # EPEL specific patches %if 0%{?rhel} == 7 @@ -1217,7 +1198,6 @@ build/linux/unbundle/remove_bundled_libraries.py \ %if %{freeworld} 'third_party/openh264' \ %endif - 'third_party/openmax_dl' \ 'third_party/opus' \ 'third_party/ots' \ 'third_party/pdfium' \ @@ -1260,7 +1240,6 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/sqlite' \ 'third_party/swiftshader' \ 'third_party/swiftshader/third_party/subzero' \ - 'third_party/swiftshader/third_party/LLVM' \ 'third_party/swiftshader/third_party/llvm-subzero' \ 'third_party/swiftshader/third_party/llvm-7.0' \ 'third_party/tcmalloc' \ @@ -1857,6 +1836,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Tue Aug 13 2019 Tomas Popela - 76.0.3809.100-1 +- Update to 76.0.3809.100 + * Tue Jul 2 2019 Tom Callaway - 75.0.3770.100-3 - apply upstream fix to resolve issue where it is dangerous to post a task with a RenderProcessHost pointer because the RenderProcessHost diff --git a/sources b/sources index 5ba7f4f..778c103 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-75.0.3770.100-clean.tar.xz) = ee2fad215cf39edc572b4ecd040f1130e857e19a34e64fffb14a995ca325adc0b01d6e8bfae4f91c2fecd13ed018049e64fe2c2cc755502b8e3291698698512e +SHA512 (chromium-76.0.3809.100-clean.tar.xz) = ad250b8cd0a01297fdff85c12a4dca85477cf027a68c0a9f7a3bc93b825772d17ddd062a89020ae954def781f19fe44beedb33ec8a86f3c12af290edb43d6ee9 From a44f11deb4e03471eabd35c11058e682a182e1e0 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 13 Aug 2019 15:39:15 +0200 Subject: [PATCH 0335/1449] Add more fixes --- chromium-76.0.3809.100-gcc-cc-no-except.patch | 105 ++++++++++++++++ chromium-76.0.3809.100-gcc-net-fetcher.patch | 63 ++++++++++ chromium-76.0.3809.100-gcc-vulkan.patch | 115 ++++++++++++++++++ chromium.spec | 14 +++ get_free_ffmpeg_source_files.py | 8 +- sources | 2 +- 6 files changed, 302 insertions(+), 5 deletions(-) create mode 100644 chromium-76.0.3809.100-gcc-cc-no-except.patch create mode 100644 chromium-76.0.3809.100-gcc-net-fetcher.patch create mode 100644 chromium-76.0.3809.100-gcc-vulkan.patch diff --git a/chromium-76.0.3809.100-gcc-cc-no-except.patch b/chromium-76.0.3809.100-gcc-cc-no-except.patch new file mode 100644 index 0000000..e4d754a --- /dev/null +++ b/chromium-76.0.3809.100-gcc-cc-no-except.patch @@ -0,0 +1,105 @@ +From 84c91abab33966f928497c24db4a39f436d2dca8 Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Fri, 07 Jun 2019 09:50:11 +0000 +Subject: [PATCH] Make SharedMemoryMapping move constructor noexcept + +As LayerTreeHostImpl::UIResourceData move constructor is declared +noexcept with default implementation, the move constructor of its +members should also be noexcept. GCC will fail to build otherwise +for mismatching noexcept declaration. + +We also set the move assignment operator. + +Bug: 819294 +Change-Id: Icd663da83b882e15f7d16780c9241972e09bc492 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645297 +Commit-Queue: José Dapena Paz +Reviewed-by: Daniel Cheng +Cr-Commit-Position: refs/heads/master@{#667064} +--- + +diff --git a/base/memory/shared_memory_mapping.cc b/base/memory/shared_memory_mapping.cc +index 2be2570..8426fa8 100644 +--- a/base/memory/shared_memory_mapping.cc ++++ b/base/memory/shared_memory_mapping.cc +@@ -33,7 +33,7 @@ + + SharedMemoryMapping::SharedMemoryMapping() = default; + +-SharedMemoryMapping::SharedMemoryMapping(SharedMemoryMapping&& mapping) ++SharedMemoryMapping::SharedMemoryMapping(SharedMemoryMapping&& mapping) noexcept + : memory_(mapping.memory_), + size_(mapping.size_), + mapped_size_(mapping.mapped_size_), +@@ -42,7 +42,7 @@ + } + + SharedMemoryMapping& SharedMemoryMapping::operator=( +- SharedMemoryMapping&& mapping) { ++ SharedMemoryMapping&& mapping) noexcept { + Unmap(); + memory_ = mapping.memory_; + size_ = mapping.size_; +@@ -90,9 +90,9 @@ + + ReadOnlySharedMemoryMapping::ReadOnlySharedMemoryMapping() = default; + ReadOnlySharedMemoryMapping::ReadOnlySharedMemoryMapping( +- ReadOnlySharedMemoryMapping&&) = default; ++ ReadOnlySharedMemoryMapping&&) noexcept = default; + ReadOnlySharedMemoryMapping& ReadOnlySharedMemoryMapping::operator=( +- ReadOnlySharedMemoryMapping&&) = default; ++ ReadOnlySharedMemoryMapping&&) noexcept = default; + ReadOnlySharedMemoryMapping::ReadOnlySharedMemoryMapping( + void* address, + size_t size, +@@ -102,9 +102,9 @@ + + WritableSharedMemoryMapping::WritableSharedMemoryMapping() = default; + WritableSharedMemoryMapping::WritableSharedMemoryMapping( +- WritableSharedMemoryMapping&&) = default; ++ WritableSharedMemoryMapping&&) noexcept = default; + WritableSharedMemoryMapping& WritableSharedMemoryMapping::operator=( +- WritableSharedMemoryMapping&&) = default; ++ WritableSharedMemoryMapping&&) noexcept = default; + WritableSharedMemoryMapping::WritableSharedMemoryMapping( + void* address, + size_t size, +diff --git a/base/memory/shared_memory_mapping.h b/base/memory/shared_memory_mapping.h +index d9569af..2b8858e 100644 +--- a/base/memory/shared_memory_mapping.h ++++ b/base/memory/shared_memory_mapping.h +@@ -32,8 +32,8 @@ + SharedMemoryMapping(); + + // Move operations are allowed. +- SharedMemoryMapping(SharedMemoryMapping&& mapping); +- SharedMemoryMapping& operator=(SharedMemoryMapping&& mapping); ++ SharedMemoryMapping(SharedMemoryMapping&& mapping) noexcept; ++ SharedMemoryMapping& operator=(SharedMemoryMapping&& mapping) noexcept; + + // Unmaps the region if the mapping is valid. + virtual ~SharedMemoryMapping(); +@@ -93,8 +93,9 @@ + ReadOnlySharedMemoryMapping(); + + // Move operations are allowed. +- ReadOnlySharedMemoryMapping(ReadOnlySharedMemoryMapping&&); +- ReadOnlySharedMemoryMapping& operator=(ReadOnlySharedMemoryMapping&&); ++ ReadOnlySharedMemoryMapping(ReadOnlySharedMemoryMapping&&) noexcept; ++ ReadOnlySharedMemoryMapping& operator=( ++ ReadOnlySharedMemoryMapping&&) noexcept; + + // Returns the base address of the mapping. This is read-only memory. This is + // page-aligned. This is nullptr for invalid instances. +@@ -171,8 +172,9 @@ + WritableSharedMemoryMapping(); + + // Move operations are allowed. +- WritableSharedMemoryMapping(WritableSharedMemoryMapping&&); +- WritableSharedMemoryMapping& operator=(WritableSharedMemoryMapping&&); ++ WritableSharedMemoryMapping(WritableSharedMemoryMapping&&) noexcept; ++ WritableSharedMemoryMapping& operator=( ++ WritableSharedMemoryMapping&&) noexcept; + + // Returns the base address of the mapping. This is writable memory. This is + // page-aligned. This is nullptr for invalid instances. diff --git a/chromium-76.0.3809.100-gcc-net-fetcher.patch b/chromium-76.0.3809.100-gcc-net-fetcher.patch new file mode 100644 index 0000000..bc0ed98 --- /dev/null +++ b/chromium-76.0.3809.100-gcc-net-fetcher.patch @@ -0,0 +1,63 @@ +From 502e6e42633d2571c8236c8649b031fe9915eb5b Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Tue, 11 Jun 2019 16:56:27 +0000 +Subject: [PATCH] GCC: CertNetFetcherImpl declares Job as a friend but it is in the anonymous namespace + +GCC does not allow friendship declaration to anonymous namespace as done with Job +object in the CertNetFetcherImpl. This fix removes the friend declaration, and just +makes RemoveJob method public, that was the only reason to make Job a friend. + +Error was: +./../net/cert_net/cert_net_fetcher_impl.cc: In member function ‘void net::{anonymous}::Job::DetachRequest(net::CertNetFetcherImpl::RequestCore*)’: +../../net/cert_net/cert_net_fetcher_impl.cc:458:42: error: ‘std::unique_ptr net::CertNetFetcherImpl::AsyncCertNetFetcherImpl::RemoveJob(net::{anonymous}::Job*)’ is private within this context + delete_this = parent_->RemoveJob(this); + ^ +../../net/cert_net/cert_net_fetcher_impl.cc:151:24: note: declared private here + std::unique_ptr RemoveJob(Job* job); + ^~~~~~~~~ +../../net/cert_net/cert_net_fetcher_impl.cc: In member function ‘void net::{anonymous}::Job::OnJobCompleted(net::Error)’: +../../net/cert_net/cert_net_fetcher_impl.cc:610:61: error: ‘std::unique_ptr net::CertNetFetcherImpl::AsyncCertNetFetcherImpl::RemoveJob(net::{anonymous}::Job*)’ is private within this context + std::unique_ptr delete_this = parent_->RemoveJob(this); + ^ +../../net/cert_net/cert_net_fetcher_impl.cc:151:24: note: declared private here + std::unique_ptr RemoveJob(Job* job); + ^~~~~~~~~ + +Bug: 819294 +Change-Id: I3609f4558e570741395366de6a4cd40577d91450 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1651783 +Commit-Queue: Eric Roman +Reviewed-by: Eric Roman +Cr-Commit-Position: refs/heads/master@{#668015} +--- + +diff --git a/net/cert_net/cert_net_fetcher_impl.cc b/net/cert_net/cert_net_fetcher_impl.cc +index 11a1166..349c656 100644 +--- a/net/cert_net/cert_net_fetcher_impl.cc ++++ b/net/cert_net/cert_net_fetcher_impl.cc +@@ -135,21 +135,19 @@ + void Fetch(std::unique_ptr request_params, + scoped_refptr request); + ++ // Removes |job| from the in progress jobs and transfers ownership to the ++ // caller. ++ std::unique_ptr RemoveJob(Job* job); ++ + // Cancels outstanding jobs, which stops network requests and signals the + // corresponding RequestCores that the requests have completed. + void Shutdown(); + + private: +- friend class Job; +- + // Finds a job with a matching RequestPararms or returns nullptr if there was + // no match. + Job* FindJob(const RequestParams& params); + +- // Removes |job| from the in progress jobs and transfers ownership to the +- // caller. +- std::unique_ptr RemoveJob(Job* job); +- + // The in-progress jobs. This set does not contain the job which is actively + // invoking callbacks (OnJobCompleted). + JobSet jobs_; diff --git a/chromium-76.0.3809.100-gcc-vulkan.patch b/chromium-76.0.3809.100-gcc-vulkan.patch new file mode 100644 index 0000000..cf93bce --- /dev/null +++ b/chromium-76.0.3809.100-gcc-vulkan.patch @@ -0,0 +1,115 @@ +From fdb3bb1f8c41d044a5b0cb80257a26dd3c8f83a3 Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Tue, 11 Jun 2019 17:39:38 +0000 +Subject: [PATCH] GCC: do not use old C notation to assign struct with property names. + +The notation for initialization of structs referring to its properties +is invalid in C++. This is not accepted in GCC. It was making build +fail in VulkanCommandBuffer. + +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc: In member function 'void gpu::VulkanCommandBuffer::TransitionImageLayout(VkImage, VkImageLayout, VkImageLayout)': +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:214:7: error: expected primary-expression before '.' token + .subresourceRange.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT, + ^ +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:215:7: error: expected primary-expression before '.' token + .subresourceRange.baseMipLevel = 0, + ^ +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:216:7: error: expected primary-expression before '.' token + .subresourceRange.levelCount = 1, + ^ +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:217:7: error: expected primary-expression before '.' token + .subresourceRange.baseArrayLayer = 0, + ^ +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:218:7: error: expected primary-expression before '.' token + .subresourceRange.layerCount = 1, + ^ +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc: In member function 'void gpu::VulkanCommandBuffer::CopyBufferToImage(VkBuffer, VkImage, uint32_t, uint32_t, uint32_t, uint32_t)': +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:235:7: error: expected primary-expression before '.' token + .imageSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT, + ^ +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:236:7: error: expected primary-expression before '.' token + .imageSubresource.mipLevel = 0, + ^ +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:237:7: error: expected primary-expression before '.' token + .imageSubresource.baseArrayLayer = 0, + ^ +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:238:7: error: expected primary-expression before '.' token + .imageSubresource.layerCount = 1, + ^ +Bug: 819294 + +Change-Id: I999abece0c727e77964789183642ba62009c2c22 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1651802 +Commit-Queue: José Dapena Paz +Reviewed-by: Antoine Labour +Cr-Commit-Position: refs/heads/master@{#668033} +--- + +diff --git a/gpu/vulkan/vulkan_command_buffer.cc b/gpu/vulkan/vulkan_command_buffer.cc +index ba776e4..4f14c85 100644 +--- a/gpu/vulkan/vulkan_command_buffer.cc ++++ b/gpu/vulkan/vulkan_command_buffer.cc +@@ -207,21 +207,20 @@ + void VulkanCommandBuffer::TransitionImageLayout(VkImage image, + VkImageLayout old_layout, + VkImageLayout new_layout) { +- VkImageMemoryBarrier barrier = { +- .sType = VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER, +- .srcAccessMask = GetAccessMask(old_layout), +- .dstAccessMask = GetAccessMask(new_layout), +- .oldLayout = old_layout, +- .newLayout = new_layout, +- .srcQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED, +- .dstQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED, +- .image = image, +- .subresourceRange.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT, +- .subresourceRange.baseMipLevel = 0, +- .subresourceRange.levelCount = 1, +- .subresourceRange.baseArrayLayer = 0, +- .subresourceRange.layerCount = 1, +- }; ++ VkImageMemoryBarrier barrier = {}; ++ barrier.sType = VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER; ++ barrier.srcAccessMask = GetAccessMask(old_layout); ++ barrier.dstAccessMask = GetAccessMask(new_layout); ++ barrier.oldLayout = old_layout; ++ barrier.newLayout = new_layout; ++ barrier.srcQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED; ++ barrier.dstQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED; ++ barrier.image = image; ++ barrier.subresourceRange.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT; ++ barrier.subresourceRange.baseMipLevel = 0; ++ barrier.subresourceRange.levelCount = 1; ++ barrier.subresourceRange.baseArrayLayer = 0; ++ barrier.subresourceRange.layerCount = 1; + vkCmdPipelineBarrier(command_buffer_, GetPipelineStageFlags(old_layout), + GetPipelineStageFlags(new_layout), 0, 0, nullptr, 0, + nullptr, 1, &barrier); +@@ -233,17 +232,16 @@ + uint32_t buffer_height, + uint32_t width, + uint32_t height) { +- VkBufferImageCopy region = { +- .bufferOffset = 0, +- .bufferRowLength = buffer_width, +- .bufferImageHeight = buffer_height, +- .imageSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT, +- .imageSubresource.mipLevel = 0, +- .imageSubresource.baseArrayLayer = 0, +- .imageSubresource.layerCount = 1, +- .imageOffset = {0, 0, 0}, +- .imageExtent = {width, height, 1}, +- }; ++ VkBufferImageCopy region = {}; ++ region.bufferOffset = 0; ++ region.bufferRowLength = buffer_width; ++ region.bufferImageHeight = buffer_height; ++ region.imageSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT; ++ region.imageSubresource.mipLevel = 0; ++ region.imageSubresource.baseArrayLayer = 0; ++ region.imageSubresource.layerCount = 1; ++ region.imageOffset = {0, 0, 0}; ++ region.imageExtent = {width, height, 1}; + vkCmdCopyBufferToImage(command_buffer_, buffer, image, + VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, 1, ®ion); + } diff --git a/chromium.spec b/chromium.spec index 88d3818..00c07ea 100644 --- a/chromium.spec +++ b/chromium.spec @@ -261,6 +261,13 @@ Patch45: chromium-75.0.3770.80-grpc-gettid-fix.patch # fix v8 compile with gcc # https://chromium.googlesource.com/v8/v8/+/3b8c624bda58d05aea80dd9626cd550537d6ac3f%5E%21/#F1 Patch46: chromium-75.0.3770.100-fix-v8-gcc.patch +# Fix Vulkan compilation with gcc +# https://chromium.googlesource.com/chromium/src/+/fdb3bb1f8c41d044a5b0cb80257a26dd3c8f83a3 +Patch47: chromium-76.0.3809.100-gcc-vulkan.patch +# https://chromium-review.googlesource.com/c/chromium/src/+/1645297 +Patch48: chromium-76.0.3809.100-gcc-cc-no-except.patch +# https://chromium.googlesource.com/chromium/src.git/+/502e6e42633d2571c8236c8649b031fe9915eb5b +Patch49: chromium-76.0.3809.100-gcc-net-fetcher.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -818,6 +825,9 @@ udev. %patch44 -p1 -b .pure-virtual-fix %patch45 -p1 -b .gettid-fix %patch46 -p1 -b .fix-v8-gcc +%patch47 -p1 -b .gcc-vulkan +%patch48 -p1 -b .gcc-cc-no-except +%patch49 -p1 -b .gcc-net-fetcher # EPEL specific patches %if 0%{?rhel} == 7 @@ -1064,6 +1074,7 @@ ln -s %{_bindir}/node third_party/node/linux/node-linux-x64/bin/node # Remove most of the bundled libraries. Libraries specified below (taken from # Gentoo's Chromium ebuild) are the libraries that needs to be preserved. build/linux/unbundle/remove_bundled_libraries.py \ + 'base/third_party/cityhash' \ 'base/third_party/dmg_fp' \ 'base/third_party/dynamic_annotations' \ 'base/third_party/icu' \ @@ -1104,6 +1115,8 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/blink' \ 'third_party/boringssl' \ 'third_party/boringssl/src/third_party/fiat' \ + 'third_party/boringssl/src/third_party/sike' \ + 'third_party/boringssl/linux-x86_64/crypto/third_party/sike/' \ 'third_party/breakpad' \ 'third_party/breakpad/breakpad/src/third_party/curl' \ 'third_party/brotli' \ @@ -1229,6 +1242,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/sinonjs' \ 'third_party/skia' \ 'third_party/skia/include/third_party/vulkan' \ + 'third_party/skia/include/third_party/skcms' \ 'third_party/skia/third_party/gif' \ 'third_party/skia/third_party/skcms' \ 'third_party/skia/third_party/vulkan' \ diff --git a/get_free_ffmpeg_source_files.py b/get_free_ffmpeg_source_files.py index 76c73ae..f2225ea 100755 --- a/get_free_ffmpeg_source_files.py +++ b/get_free_ffmpeg_source_files.py @@ -41,9 +41,9 @@ def parse_sources(input_sources, output_sources, arch_not_arm): append_sources (block[1], output_sources) -def parse_ffmpeg_gyni_file(gyni_path, arch_not_arm): +def parse_ffmpeg_gni_file(gni_path, arch_not_arm): - with open(gyni_path, "r") as input_file: + with open(gni_path, "r") as input_file: content = input_file.read().replace('\n', '') output_sources = [] @@ -62,7 +62,7 @@ def parse_ffmpeg_gyni_file(gyni_path, arch_not_arm): limitations = ['ffmpeg_branding == "Chrome"', 'ffmpeg_branding == "ChromeOS"'] if ('use_linux_config' in condition) and not any(limitation in condition for limitation in limitations): if (arch_not_arm): - if ('x64' in condition) or ('x86' in condition): + if ('x64' in condition) or ('x86' in condition) or ('use_linux_config' in condition): parse_sources (block[1], output_sources, arch_not_arm) inserted = True else: @@ -79,4 +79,4 @@ def parse_ffmpeg_gyni_file(gyni_path, arch_not_arm): if __name__ == "__main__": path = "%s/third_party/ffmpeg/ffmpeg_generated.gni" % sys.argv[1] - parse_ffmpeg_gyni_file (path, False if sys.argv[2] == "0" else True) + parse_ffmpeg_gni_file (path, False if sys.argv[2] == "0" else True) diff --git a/sources b/sources index 778c103..4e53fd1 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-76.0.3809.100-clean.tar.xz) = ad250b8cd0a01297fdff85c12a4dca85477cf027a68c0a9f7a3bc93b825772d17ddd062a89020ae954def781f19fe44beedb33ec8a86f3c12af290edb43d6ee9 +SHA512 (chromium-76.0.3809.100-clean.tar.xz) = f9fecad99618dffbfa3331b77dd82244447382761ca864380ea145d58f4bd90bb1c0fd3d433aca7d71f63e24c4120bff15c3a4dd9b86e94096cdf31c02b80cd5 From 8e2b9c82f9a63754c927dd73d65564b46cb0bb23 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 14 Aug 2019 14:38:51 +0200 Subject: [PATCH 0336/1449] Backport more build fixes from upstream --- ....3809.100-gcc-ambigous-instantiation.patch | 39 +++ ...0.3809.100-gcc-feature-policy-parser.patch | 76 ++++++ ...0.3809.100-gcc-hasfraction-constexpr.patch | 32 +++ ...100-gcc-move-explicit-initialization.patch | 97 ++++++++ ...ium-76.0.3809.100-quiche-compile-fix.patch | 225 ++++++++++++++++++ ...m-76.0.3809.100-throttling-dead-beef.patch | 30 +++ ...ium-76.0.3809.100-weak-ptr-no-except.patch | 66 +++++ chromium.spec | 21 ++ 8 files changed, 586 insertions(+) create mode 100644 chromium-76.0.3809.100-gcc-ambigous-instantiation.patch create mode 100644 chromium-76.0.3809.100-gcc-feature-policy-parser.patch create mode 100644 chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch create mode 100644 chromium-76.0.3809.100-gcc-move-explicit-initialization.patch create mode 100644 chromium-76.0.3809.100-quiche-compile-fix.patch create mode 100644 chromium-76.0.3809.100-throttling-dead-beef.patch create mode 100644 chromium-76.0.3809.100-weak-ptr-no-except.patch diff --git a/chromium-76.0.3809.100-gcc-ambigous-instantiation.patch b/chromium-76.0.3809.100-gcc-ambigous-instantiation.patch new file mode 100644 index 0000000..587abf3 --- /dev/null +++ b/chromium-76.0.3809.100-gcc-ambigous-instantiation.patch @@ -0,0 +1,39 @@ +From 52b5ceac95b67491b1c71f0ef9a32b778bbbaa2e Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Wed, 05 Jun 2019 19:46:55 +0000 +Subject: [PATCH] GCC: avoid ambiguous NoDestructor creation in GetNeverSniffedMimeTypes. + +Use brace-list notation to wrap the already existing brace-list for +initializing the flat-set. This resolves an ambiguous instantiation +in GCC. + +Bug: 819294 +Change-Id: I89ddf12522d62a5140a8c2c41dc98e30ec7a0e78 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645774 +Reviewed-by: Matt Menke +Commit-Queue: José Dapena Paz +Cr-Commit-Position: refs/heads/master@{#666401} +--- + +diff --git a/services/network/cross_origin_read_blocking.cc b/services/network/cross_origin_read_blocking.cc +index 30999c0..60a03f6 100644 +--- a/services/network/cross_origin_read_blocking.cc ++++ b/services/network/cross_origin_read_blocking.cc +@@ -211,7 +211,7 @@ + // confirmation sniffing because images, scripts, etc. are frequently + // mislabelled by http servers as HTML/JSON/XML). + base::flat_set& GetNeverSniffedMimeTypes() { +- static base::NoDestructor> s_types({ ++ static base::NoDestructor> s_types{{ + // The list below has been populated based on most commonly used content + // types according to HTTP Archive - see: + // https://github.com/whatwg/fetch/issues/860#issuecomment-457330454 +@@ -224,7 +224,7 @@ + "application/x-www-form-urlencoded", + "application/zip", + "text/event-stream", +- }); ++ }}; + + // All items need to be lower-case, to support case-insensitive comparisons + // later. diff --git a/chromium-76.0.3809.100-gcc-feature-policy-parser.patch b/chromium-76.0.3809.100-gcc-feature-policy-parser.patch new file mode 100644 index 0000000..0dbffd5 --- /dev/null +++ b/chromium-76.0.3809.100-gcc-feature-policy-parser.patch @@ -0,0 +1,76 @@ +From 0aca7b8dea0f52ba7bd58dfce4ac236ee60670a8 Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Tue, 04 Jun 2019 19:44:58 +0200 +Subject: [PATCH] GCC: FeaturePolicyParser ParseValueForFuzzer is not in anonymous namespace + +Compilation fails because we are declaring ParseValueForFuzzer as friend method, +but we are declaring it is in anonymous namespace. Moving to global namespace +still fails (in this case in Clang). + +So final solution is making it a public static method of FeaturePolicyParser. + +Bug: 819294 +Change-Id: Iea307cb6faef675b748d6eb5da2175dcbb17fdc7 +--- + +diff --git a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc +index 3b7f4a9..eaee409 100644 +--- a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc ++++ b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc +@@ -317,6 +317,13 @@ + return value; + } + ++void FeaturePolicyParser::ParseValueForFuzzer( ++ blink::mojom::PolicyValueType feature_type, ++ const WTF::String& value_string) { ++ bool ok; ++ ParseValueForType(feature_type, value_string, &ok); ++} ++ + bool IsFeatureDeclared(mojom::FeaturePolicyFeature feature, + const ParsedFeaturePolicy& policy) { + return std::any_of(policy.begin(), policy.end(), +diff --git a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h +index fd25d90..36af405 100644 +--- a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h ++++ b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h +@@ -16,9 +16,6 @@ + #include "third_party/blink/renderer/platform/wtf/text/wtf_string.h" + #include "third_party/blink/renderer/platform/wtf/vector.h" + +-// Forward declare for friendship. +-void ParseValueForFuzzer(blink::mojom::PolicyValueType, const WTF::String&); +- + namespace blink { + + class Document; +@@ -79,8 +76,9 @@ + const FeatureNameMap& feature_names, + ExecutionContext* execution_context = nullptr); + ++ static void ParseValueForFuzzer(mojom::PolicyValueType, const String&); ++ + private: +- friend void ::ParseValueForFuzzer(mojom::PolicyValueType, const String&); + static PolicyValue GetFallbackValueForFeature( + mojom::FeaturePolicyFeature feature); + static PolicyValue ParseValueForType(mojom::PolicyValueType feature_type, +diff --git a/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc b/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc +index 7f8e6aa..53350e43 100644 +--- a/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc ++++ b/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc +@@ -23,9 +23,9 @@ + extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) { + static blink::BlinkFuzzerTestSupport test_support = + blink::BlinkFuzzerTestSupport(); +- ParseValueForFuzzer(blink::mojom::PolicyValueType::kBool, +- WTF::String(data, size)); +- ParseValueForFuzzer(blink::mojom::PolicyValueType::kDecDouble, +- WTF::String(data, size)); ++ blink::FeaturePolicyParser::ParseValueForFuzzer( ++ blink::mojom::PolicyValueType::kBool, WTF::String(data, size)); ++ blink::FeaturePolicyParser::ParseValueForFuzzer( ++ blink::mojom::PolicyValueType::kDecDouble, WTF::String(data, size)); + return 0; + } diff --git a/chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch b/chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch new file mode 100644 index 0000000..26bba05 --- /dev/null +++ b/chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch @@ -0,0 +1,32 @@ +From cf6d6b40d711fce93a24a2cf517fa3becdbae8bb Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Wed, 05 Jun 2019 17:18:40 +0000 +Subject: [PATCH] Make blink::LayoutUnit::HasFraction constexpr + +Other HasFraction methods as in PhysicalUnit are declared already +constexpr and using it. It breaks GCC build. + +Bug: 819294. +Change-Id: I0c4bd9bd206d45cf31f7fa815ce8533718a425cb +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645222 +Reviewed-by: vmpstr +Reviewed-by: Xianzhu Wang +Commit-Queue: José Dapena Paz +Cr-Commit-Position: refs/heads/master@{#666336} +--- + +diff --git a/third_party/blink/renderer/platform/geometry/layout_unit.h b/third_party/blink/renderer/platform/geometry/layout_unit.h +index f073986..b6dbc76 100644 +--- a/third_party/blink/renderer/platform/geometry/layout_unit.h ++++ b/third_party/blink/renderer/platform/geometry/layout_unit.h +@@ -202,7 +202,9 @@ + return value_ > 0 ? LayoutUnit() : *this; + } + +- bool HasFraction() const { return RawValue() % kFixedPointDenominator; } ++ constexpr bool HasFraction() const { ++ return RawValue() % kFixedPointDenominator; ++ } + + LayoutUnit Fraction() const { + // Compute fraction using the mod operator to preserve the sign of the value diff --git a/chromium-76.0.3809.100-gcc-move-explicit-initialization.patch b/chromium-76.0.3809.100-gcc-move-explicit-initialization.patch new file mode 100644 index 0000000..1d4b90f --- /dev/null +++ b/chromium-76.0.3809.100-gcc-move-explicit-initialization.patch @@ -0,0 +1,97 @@ +From dcb55fb8f18abe5f43d260aa67b14b2dc996f992 Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Tue, 11 Jun 2019 08:00:13 +0000 +Subject: [PATCH] GCC: move explicit specialization out of RunInfo + +Explicit specialization in non-namespace scope is not allowed in C++, and GCC breaks +build because of that. Move the template specializations out of RunInfo declaration +in shape_result_inline_headeres.h to fix the GCC build issue. + +Bug: 819294 +Change-Id: Id083852bcf8e9efbdc911fdad28fd8767d2905d0 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1651728 +Reviewed-by: Kinuko Yasuda +Commit-Queue: José Dapena Paz +Cr-Commit-Position: refs/heads/master@{#667901} +--- + +diff --git a/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h b/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h +index 76ee6091..c14d3a0 100644 +--- a/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h ++++ b/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h +@@ -251,37 +251,6 @@ + template + struct iterator final {}; + +- // For non-zero glyph offset array +- template <> +- struct iterator final { +- // The constructor for ShapeResult +- explicit iterator(const GlyphOffsetArray& array) +- : pointer(array.storage_.get()) { +- DCHECK(pointer); +- } +- +- // The constructor for ShapeResultView +- explicit iterator(const GlyphDataRange& range) : pointer(range.offsets) { +- DCHECK(pointer); +- } +- +- GlyphOffset operator*() const { return *pointer; } +- void operator++() { ++pointer; } +- +- const GlyphOffset* pointer; +- }; +- +- // For zero glyph offset array +- template <> +- struct iterator final { +- explicit iterator(const GlyphOffsetArray& array) { +- DCHECK(!array.HasStorage()); +- } +- explicit iterator(const GlyphDataRange& range) { DCHECK(!range.offsets); } +- GlyphOffset operator*() const { return GlyphOffset(); } +- void operator++() {} +- }; +- + template + iterator GetIterator() const { + return iterator(*this); +@@ -495,6 +464,37 @@ + float width_; + }; + ++// For non-zero glyph offset array ++template <> ++struct ShapeResult::RunInfo::GlyphOffsetArray::iterator final { ++ // The constructor for ShapeResult ++ explicit iterator(const GlyphOffsetArray& array) ++ : pointer(array.storage_.get()) { ++ DCHECK(pointer); ++ } ++ ++ // The constructor for ShapeResultView ++ explicit iterator(const GlyphDataRange& range) : pointer(range.offsets) { ++ DCHECK(pointer); ++ } ++ ++ GlyphOffset operator*() const { return *pointer; } ++ void operator++() { ++pointer; } ++ ++ const GlyphOffset* pointer; ++}; ++ ++// For zero glyph offset array ++template <> ++struct ShapeResult::RunInfo::GlyphOffsetArray::iterator final { ++ explicit iterator(const GlyphOffsetArray& array) { ++ DCHECK(!array.HasStorage()); ++ } ++ explicit iterator(const GlyphDataRange& range) { DCHECK(!range.offsets); } ++ GlyphOffset operator*() const { return GlyphOffset(); } ++ void operator++() {} ++}; ++ + // Find the range of HarfBuzzRunGlyphData for the specified character index + // range. This function uses binary search twice, hence O(2 log n). + inline ShapeResult::RunInfo::GlyphDataRange diff --git a/chromium-76.0.3809.100-quiche-compile-fix.patch b/chromium-76.0.3809.100-quiche-compile-fix.patch new file mode 100644 index 0000000..98789d9 --- /dev/null +++ b/chromium-76.0.3809.100-quiche-compile-fix.patch @@ -0,0 +1,225 @@ +diff -up chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc.quiche-compile-fix chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc +--- chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc.quiche-compile-fix 2019-08-14 09:58:07.721193200 +0200 ++++ chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc 2019-08-14 09:59:33.131041525 +0200 +@@ -62,37 +62,37 @@ const size_t kStatelessResetTokenLength + std::string TransportParameterIdToString( + TransportParameters::TransportParameterId param_id) { + switch (param_id) { +- case kOriginalConnectionId: ++ case TransportParameters::kOriginalConnectionId: + return "original_connection_id"; +- case kIdleTimeout: ++ case TransportParameters::kIdleTimeout: + return "idle_timeout"; +- case kStatelessResetToken: ++ case TransportParameters::kStatelessResetToken: + return "stateless_reset_token"; +- case kMaxPacketSize: ++ case TransportParameters::kMaxPacketSize: + return "max_packet_size"; +- case kInitialMaxData: ++ case TransportParameters::kInitialMaxData: + return "initial_max_data"; +- case kInitialMaxStreamDataBidiLocal: ++ case TransportParameters::kInitialMaxStreamDataBidiLocal: + return "initial_max_stream_data_bidi_local"; +- case kInitialMaxStreamDataBidiRemote: ++ case TransportParameters::kInitialMaxStreamDataBidiRemote: + return "initial_max_stream_data_bidi_remote"; +- case kInitialMaxStreamDataUni: ++ case TransportParameters::kInitialMaxStreamDataUni: + return "initial_max_stream_data_uni"; +- case kInitialMaxStreamsBidi: ++ case TransportParameters::kInitialMaxStreamsBidi: + return "initial_max_streams_bidi"; +- case kInitialMaxStreamsUni: ++ case TransportParameters::kInitialMaxStreamsUni: + return "initial_max_streams_uni"; +- case kAckDelayExponent: ++ case TransportParameters::kAckDelayExponent: + return "ack_delay_exponent"; +- case kMaxAckDelay: ++ case TransportParameters::kMaxAckDelay: + return "max_ack_delay"; +- case kDisableMigration: ++ case TransportParameters::kDisableMigration: + return "disable_migration"; +- case kPreferredAddress: ++ case TransportParameters::kPreferredAddress: + return "preferred_address"; +- case kGoogleQuicParam: ++ case TransportParameters::kGoogleQuicParam: + return "google"; +- case kGoogleQuicVersion: ++ case TransportParameters::kGoogleQuicVersion: + return "google-version"; + } + return "Unknown(" + QuicTextUtils::Uint64ToString(param_id) + ")"; +@@ -390,7 +390,7 @@ bool SerializeTransportParameters(const + CBB original_connection_id_param; + if (!in.original_connection_id.IsEmpty()) { + DCHECK_EQ(Perspective::IS_SERVER, in.perspective); +- if (!CBB_add_u16(¶ms, kOriginalConnectionId) || ++ if (!CBB_add_u16(¶ms, TransportParameters::kOriginalConnectionId) || + !CBB_add_u16_length_prefixed(¶ms, &original_connection_id_param) || + !CBB_add_bytes( + &original_connection_id_param, +@@ -412,7 +412,7 @@ bool SerializeTransportParameters(const + if (!in.stateless_reset_token.empty()) { + DCHECK_EQ(kStatelessResetTokenLength, in.stateless_reset_token.size()); + DCHECK_EQ(Perspective::IS_SERVER, in.perspective); +- if (!CBB_add_u16(¶ms, kStatelessResetToken) || ++ if (!CBB_add_u16(¶ms, TransportParameters::kStatelessResetToken) || + !CBB_add_u16_length_prefixed(¶ms, &stateless_reset_token_param) || + !CBB_add_bytes(&stateless_reset_token_param, + in.stateless_reset_token.data(), +@@ -438,7 +438,7 @@ bool SerializeTransportParameters(const + + // disable_migration + if (in.disable_migration) { +- if (!CBB_add_u16(¶ms, kDisableMigration) || ++ if (!CBB_add_u16(¶ms, TransportParameters::kDisableMigration) || + !CBB_add_u16(¶ms, 0u)) { // 0 is the length of this parameter. + QUIC_BUG << "Failed to write disable_migration for " << in; + return false; +@@ -458,7 +458,7 @@ bool SerializeTransportParameters(const + QUIC_BUG << "Bad lengths " << *in.preferred_address; + return false; + } +- if (!CBB_add_u16(¶ms, kPreferredAddress) || ++ if (!CBB_add_u16(¶ms, TransportParameters::kPreferredAddress) || + !CBB_add_u16_length_prefixed(¶ms, &preferred_address_params) || + !CBB_add_bytes( + &preferred_address_params, +@@ -491,7 +491,7 @@ bool SerializeTransportParameters(const + if (in.google_quic_params) { + const QuicData& serialized_google_quic_params = + in.google_quic_params->GetSerialized(); +- if (!CBB_add_u16(¶ms, kGoogleQuicParam) || ++ if (!CBB_add_u16(¶ms, TransportParameters::kGoogleQuicParam) || + !CBB_add_u16_length_prefixed(¶ms, &google_quic_params) || + !CBB_add_bytes(&google_quic_params, + reinterpret_cast( +@@ -505,7 +505,7 @@ bool SerializeTransportParameters(const + + // Google-specific version extension. + CBB google_version_params; +- if (!CBB_add_u16(¶ms, kGoogleQuicVersion) || ++ if (!CBB_add_u16(¶ms, TransportParameters::kGoogleQuicVersion) || + !CBB_add_u16_length_prefixed(¶ms, &google_version_params) || + !CBB_add_u32(&google_version_params, in.version)) { + QUIC_BUG << "Failed to write Google version extension for " << in; +@@ -565,7 +565,7 @@ bool ParseTransportParameters(const uint + } + bool parse_success = true; + switch (param_id) { +- case kOriginalConnectionId: ++ case TransportParameters::kOriginalConnectionId: + if (!out->original_connection_id.IsEmpty()) { + QUIC_DLOG(ERROR) << "Received a second original connection ID"; + return false; +@@ -581,10 +581,10 @@ bool ParseTransportParameters(const uint + CBS_len(&value)); + } + break; +- case kIdleTimeout: ++ case TransportParameters::kIdleTimeout: + parse_success = out->idle_timeout_milliseconds.ReadFromCbs(&value); + break; +- case kStatelessResetToken: ++ case TransportParameters::kStatelessResetToken: + if (!out->stateless_reset_token.empty()) { + QUIC_DLOG(ERROR) << "Received a second stateless reset token"; + return false; +@@ -597,36 +597,36 @@ bool ParseTransportParameters(const uint + out->stateless_reset_token.assign(CBS_data(&value), + CBS_data(&value) + CBS_len(&value)); + break; +- case kMaxPacketSize: ++ case TransportParameters::kMaxPacketSize: + parse_success = out->max_packet_size.ReadFromCbs(&value); + break; +- case kInitialMaxData: ++ case TransportParameters::kInitialMaxData: + parse_success = out->initial_max_data.ReadFromCbs(&value); + break; +- case kInitialMaxStreamDataBidiLocal: ++ case TransportParameters::kInitialMaxStreamDataBidiLocal: + parse_success = + out->initial_max_stream_data_bidi_local.ReadFromCbs(&value); + break; +- case kInitialMaxStreamDataBidiRemote: ++ case TransportParameters::kInitialMaxStreamDataBidiRemote: + parse_success = + out->initial_max_stream_data_bidi_remote.ReadFromCbs(&value); + break; +- case kInitialMaxStreamDataUni: ++ case TransportParameters::kInitialMaxStreamDataUni: + parse_success = out->initial_max_stream_data_uni.ReadFromCbs(&value); + break; +- case kInitialMaxStreamsBidi: ++ case TransportParameters::kInitialMaxStreamsBidi: + parse_success = out->initial_max_streams_bidi.ReadFromCbs(&value); + break; +- case kInitialMaxStreamsUni: ++ case TransportParameters::kInitialMaxStreamsUni: + parse_success = out->initial_max_streams_uni.ReadFromCbs(&value); + break; +- case kAckDelayExponent: ++ case TransportParameters::kAckDelayExponent: + parse_success = out->ack_delay_exponent.ReadFromCbs(&value); + break; +- case kMaxAckDelay: ++ case TransportParameters::kMaxAckDelay: + parse_success = out->max_ack_delay.ReadFromCbs(&value); + break; +- case kDisableMigration: ++ case TransportParameters::kDisableMigration: + if (out->disable_migration) { + QUIC_DLOG(ERROR) << "Received a second disable migration"; + return false; +@@ -638,7 +638,7 @@ bool ParseTransportParameters(const uint + } + out->disable_migration = true; + break; +- case kPreferredAddress: { ++ case TransportParameters::kPreferredAddress: { + uint16_t ipv4_port, ipv6_port; + in_addr ipv4_address; + in6_addr ipv6_address; +@@ -692,7 +692,7 @@ bool ParseTransportParameters(const uint + QuicMakeUnique( + preferred_address); + } break; +- case kGoogleQuicParam: { ++ case TransportParameters::kGoogleQuicParam: { + if (out->google_quic_params) { + QUIC_DLOG(ERROR) << "Received a second Google parameter"; + return false; +@@ -701,7 +701,7 @@ bool ParseTransportParameters(const uint + reinterpret_cast(CBS_data(&value)), CBS_len(&value)); + out->google_quic_params = CryptoFramer::ParseMessage(serialized_params); + } break; +- case kGoogleQuicVersion: { ++ case TransportParameters::kGoogleQuicVersion: { + if (!CBS_get_u32(&value, &out->version)) { + QUIC_DLOG(ERROR) << "Failed to parse Google version extension"; + return false; +diff -up chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc.quiche-compile-fix chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc +--- chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc.quiche-compile-fix 2019-08-14 09:59:19.139902052 +0200 ++++ chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc 2019-08-14 09:59:33.132041535 +0200 +@@ -2,10 +2,12 @@ + // Use of this source code is governed by a BSD-style license that can be + // found in the LICENSE file. + +-#include +- + #include "net/third_party/quiche/src/quic/core/quic_socket_address_coder.h" + ++#include ++#include ++#include ++ + namespace quic { + + namespace { diff --git a/chromium-76.0.3809.100-throttling-dead-beef.patch b/chromium-76.0.3809.100-throttling-dead-beef.patch new file mode 100644 index 0000000..5e392e6 --- /dev/null +++ b/chromium-76.0.3809.100-throttling-dead-beef.patch @@ -0,0 +1,30 @@ +From 53bb5a463ee956c70230eaa5450022185d0ddc3c Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Thu, 06 Jun 2019 07:54:05 +0000 +Subject: [PATCH] ThrottlingController::Liveness needs to be uint32_t + +We are setting kAlive and kDead values assigning values that +are bigger than the maximum signed int32. It is better to use +uint32_t in this case. + +Bug: 819294 +Change-Id: If72b48291a66a3a9db24b4c8e2d11d31936a66ee +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645772 +Reviewed-by: Kinuko Yasuda +Commit-Queue: José Dapena Paz +Cr-Commit-Position: refs/heads/master@{#666619} +--- + +diff --git a/services/network/throttling/throttling_controller.h b/services/network/throttling/throttling_controller.h +index 43751c4..3c6f87b 100644 +--- a/services/network/throttling/throttling_controller.h ++++ b/services/network/throttling/throttling_controller.h +@@ -38,7 +38,7 @@ + + // TODO(https://crbug.com/960874): Debugging code to try and shed some light + // on why the owned maps are invalid. +- enum class Liveness : int32_t { ++ enum class Liveness : uint32_t { + kAlive = 0xCA11AB13, + kDead = 0xDEADBEEF, + }; diff --git a/chromium-76.0.3809.100-weak-ptr-no-except.patch b/chromium-76.0.3809.100-weak-ptr-no-except.patch new file mode 100644 index 0000000..a392971 --- /dev/null +++ b/chromium-76.0.3809.100-weak-ptr-no-except.patch @@ -0,0 +1,66 @@ +From 0370838723e786b51e7ec8ab55014811ec3e3aa3 Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Thu, 18 Jul 2019 14:26:11 +0200 +Subject: [PATCH] Make base::WeakPtr move constructor/operator noexcept to fix GCC build regression + +A GCC build regression has happened on DisjointRangeLockManager, as its move +operator and constructor were declared noexcept. This was failing because the +default implementation depended on base::WeakPtr, that did not provide +noexcept declaration for them. + +So make base::WeakPtr noexcept. + +Bug: 819294 +Change-Id: I936784b881c7c1afea136ceedbe9341e76464f95 +--- + +diff --git a/base/memory/weak_ptr.cc b/base/memory/weak_ptr.cc +index 64fd499..0efcc44 100644 +--- a/base/memory/weak_ptr.cc ++++ b/base/memory/weak_ptr.cc +@@ -46,7 +46,7 @@ + + WeakReference::~WeakReference() = default; + +-WeakReference::WeakReference(WeakReference&& other) = default; ++WeakReference::WeakReference(WeakReference&& other) noexcept = default; + + WeakReference::WeakReference(const WeakReference& other) = default; + +diff --git a/base/memory/weak_ptr.h b/base/memory/weak_ptr.h +index 72b5f1f..ccd22fd13 100644 +--- a/base/memory/weak_ptr.h ++++ b/base/memory/weak_ptr.h +@@ -116,9 +116,9 @@ + explicit WeakReference(const scoped_refptr& flag); + ~WeakReference(); + +- WeakReference(WeakReference&& other); ++ WeakReference(WeakReference&& other) noexcept; + WeakReference(const WeakReference& other); +- WeakReference& operator=(WeakReference&& other) = default; ++ WeakReference& operator=(WeakReference&& other) noexcept = default; + WeakReference& operator=(const WeakReference& other) = default; + + bool IsValid() const; +@@ -153,9 +153,9 @@ + ~WeakPtrBase(); + + WeakPtrBase(const WeakPtrBase& other) = default; +- WeakPtrBase(WeakPtrBase&& other) = default; ++ WeakPtrBase(WeakPtrBase&& other) noexcept = default; + WeakPtrBase& operator=(const WeakPtrBase& other) = default; +- WeakPtrBase& operator=(WeakPtrBase&& other) = default; ++ WeakPtrBase& operator=(WeakPtrBase&& other) noexcept = default; + + void reset() { + ref_ = internal::WeakReference(); +@@ -236,7 +236,7 @@ + ptr_ = reinterpret_cast(t); + } + template +- WeakPtr(WeakPtr&& other) : WeakPtrBase(std::move(other)) { ++ WeakPtr(WeakPtr&& other) noexcept : WeakPtrBase(std::move(other)) { + // Need to cast from U* to T* to do pointer adjustment in case of multiple + // inheritance. This also enforces the "U is a T" rule. + T* t = reinterpret_cast(other.ptr_); diff --git a/chromium.spec b/chromium.spec index 00c07ea..bac2263 100644 --- a/chromium.spec +++ b/chromium.spec @@ -268,6 +268,20 @@ Patch47: chromium-76.0.3809.100-gcc-vulkan.patch Patch48: chromium-76.0.3809.100-gcc-cc-no-except.patch # https://chromium.googlesource.com/chromium/src.git/+/502e6e42633d2571c8236c8649b031fe9915eb5b Patch49: chromium-76.0.3809.100-gcc-net-fetcher.patch +# https://quiche.googlesource.com/quiche.git/+/9424add9d73432a794b7944790253213cce6dcb8 +Patch50: chromium-76.0.3809.100-quiche-compile-fix.patch +# https://chromium.googlesource.com/chromium/src/+/53bb5a463ee956c70230eaa5450022185d0ddc3c +Patch51: chromium-76.0.3809.100-throttling-dead-beef.patch +# https://chromium.googlesource.com/chromium/src/+/52b5ceac95b67491b1c71f0ef9a32b778bbbaa2e +Patch52: chromium-76.0.3809.100-gcc-ambigous-instantiation.patch +# https://chromium.googlesource.com/chromium/src.git/+/715cb38eac889625de0c429d2672562188b4107e +Patch53: chromium-76.0.3809.100-weak-ptr-no-except.patch +# https://chromium.googlesource.com/chromium/src.git/+/c6afbd59c997c2b64f11abdd1eaef71ae8ea2ddc +Patch54: chromium-76.0.3809.100-gcc-feature-policy-parser.patch +# https://chromium.googlesource.com/chromium/src.git/+/cf6d6b40d711fce93a24a2cf517fa3becdbae8bb +Patch55: chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch +# https://chromium.googlesource.com/chromium/src.git/+/dcb55fb8f18abe5f43d260aa67b14b2dc996f992 +Patch56: chromium-76.0.3809.100-gcc-move-explicit-initialization.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -828,6 +842,13 @@ udev. %patch47 -p1 -b .gcc-vulkan %patch48 -p1 -b .gcc-cc-no-except %patch49 -p1 -b .gcc-net-fetcher +%patch50 -p1 -b .quiche-compile-fix +%patch51 -p1 -b .throttling-dead-beef +%patch52 -p1 -b .gcc-ambigous-instantiation +%patch53 -p1 -b .weak-ptr-no-except +%patch54 -p1 -b .gcc-feature-policy-parser +%patch55 -p1 -b .gcc-hasfraction-constexpr +%patch56 -p1 -b .gcc-move-explicit-initialization # EPEL specific patches %if 0%{?rhel} == 7 From 4f64c0f273cb6f601efc1b9b2869460db1b052cb Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 14 Aug 2019 15:38:35 +0200 Subject: [PATCH 0337/1449] third_party/openscreen need to be preserved --- chromium.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/chromium.spec b/chromium.spec index bac2263..511cef0 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1232,6 +1232,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ %if %{freeworld} 'third_party/openh264' \ %endif + 'third_party/openscreen' \ 'third_party/opus' \ 'third_party/ots' \ 'third_party/pdfium' \ From e0d11a7855c311fd1fa4eb849f3eb63281fdc1ba Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 14 Aug 2019 15:41:23 +0200 Subject: [PATCH 0338/1449] third_party/boringssl/linux-x86_64/crypto/third_party/sike needs to be preserved --- chromium.spec | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 511cef0..337c708 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1137,7 +1137,8 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/boringssl' \ 'third_party/boringssl/src/third_party/fiat' \ 'third_party/boringssl/src/third_party/sike' \ - 'third_party/boringssl/linux-x86_64/crypto/third_party/sike/' \ + 'third_party/boringssl/linux-x86_64/crypto/third_party/sike' \ + 'third_party/boringssl/linux-aarch64/crypto/third_party/sike' \ 'third_party/breakpad' \ 'third_party/breakpad/breakpad/src/third_party/curl' \ 'third_party/brotli' \ From a67d161f16e22a2192cdeefeadb1e7936d2982ce Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 14 Aug 2019 09:52:16 -0400 Subject: [PATCH 0339/1449] loosen dependency on chromium-libs in freeworld build --- chromium.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 337c708..98d92e0 100644 --- a/chromium.spec +++ b/chromium.spec @@ -730,7 +730,7 @@ Shared libraries used by chromium (and chrome-remote-desktop). Summary: Chromium media libraries built with all possible codecs Provides: chromium-libs-media = %{version}-%{release} Provides: chromium-libs-media%{_isa} = %{version}-%{release} -Requires: chromium-libs%{_isa} = %{version}-%{release} +Requires: chromium-libs%{_isa} = %{version} Requires(post): %{_sbindir}/update-alternatives Requires(preun): %{_sbindir}/update-alternatives From e95a7043a9ce73cb54aa380a672d26cc21818477 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 14 Aug 2019 16:52:41 +0200 Subject: [PATCH 0340/1449] Pulseaudio changed the API in 12.99 and we need to adapt the signatures --- chromium-76.0.3809.100-pulse-api-change.patch | 42 +++++++++++++++++++ chromium.spec | 13 +++++- 2 files changed, 54 insertions(+), 1 deletion(-) create mode 100644 chromium-76.0.3809.100-pulse-api-change.patch diff --git a/chromium-76.0.3809.100-pulse-api-change.patch b/chromium-76.0.3809.100-pulse-api-change.patch new file mode 100644 index 0000000..37d3dfa --- /dev/null +++ b/chromium-76.0.3809.100-pulse-api-change.patch @@ -0,0 +1,42 @@ +diff -up chromium-76.0.3809.100/media/audio/pulse/pulse.sigs.pulse_api_change chromium-76.0.3809.100/media/audio/pulse/pulse.sigs +--- chromium-76.0.3809.100/media/audio/pulse/pulse.sigs.pulse_api_change 2019-08-14 16:27:55.057702172 +0200 ++++ chromium-76.0.3809.100/media/audio/pulse/pulse.sigs 2019-08-14 16:37:21.603479886 +0200 +@@ -24,7 +24,7 @@ pa_operation* pa_context_get_source_info + pa_operation* pa_context_get_source_info_by_name(pa_context* c, const char* name, pa_source_info_cb_t cb, void *userdata); + pa_operation* pa_context_get_source_info_list(pa_context* c, pa_source_info_cb_t cb, void* userdata); + pa_operation* pa_context_get_sink_info_list(pa_context* c, pa_sink_info_cb_t cb, void* userdata); +-pa_context_state_t pa_context_get_state(pa_context* c); ++pa_context_state_t pa_context_get_state(const pa_context* c); + pa_context* pa_context_new(pa_mainloop_api* mainloop, const char* name); + pa_operation* pa_context_set_source_volume_by_index(pa_context* c, uint32_t idx, const pa_cvolume* volume, pa_context_success_cb_t cb, void* userdata); + void pa_context_set_state_callback(pa_context* c, pa_context_notify_cb_t cb, void* userdata); +@@ -38,23 +38,23 @@ pa_operation* pa_stream_cork(pa_stream* + int pa_stream_disconnect(pa_stream* s); + int pa_stream_drop(pa_stream *p); + pa_operation* pa_stream_flush(pa_stream* s, pa_stream_success_cb_t cb, void* userdata); +-uint32_t pa_stream_get_device_index(pa_stream* s); ++uint32_t pa_stream_get_device_index(const pa_stream* s); + int pa_stream_get_latency(pa_stream* s, pa_usec_t* r_usec, int* negative); +-pa_stream_state_t pa_stream_get_state(pa_stream* p); ++pa_stream_state_t pa_stream_get_state(const pa_stream* p); + pa_stream* pa_stream_new(pa_context* c, const char* name, const pa_sample_spec* ss, const pa_channel_map * map); + pa_stream* pa_stream_new_with_proplist(pa_context* c, const char* name, const pa_sample_spec* ss, const pa_channel_map* map, pa_proplist* p); + pa_proplist* pa_proplist_new(void); +-int pa_proplist_contains(pa_proplist* p, const char* key); ++int pa_proplist_contains(const pa_proplist* p, const char* key); + void pa_proplist_free(pa_proplist* p); +-const char* pa_proplist_gets(pa_proplist* p, const char* key); ++const char* pa_proplist_gets(const pa_proplist* p, const char* key); + int pa_proplist_sets(pa_proplist* p, const char* key, const char* value); +-size_t pa_stream_readable_size(pa_stream *p); ++size_t pa_stream_readable_size(const pa_stream *p); + int pa_stream_peek(pa_stream* p, const void** data, size_t* nbytes); + void pa_stream_set_read_callback(pa_stream* p, pa_stream_request_cb_t cb, void* userdata); + void pa_stream_set_state_callback(pa_stream* s, pa_stream_notify_cb_t cb, void* userdata); + int pa_stream_write(pa_stream* p, const void* data, size_t nbytes, pa_free_cb_t free_cb, int64_t offset, pa_seek_mode_t seek); + void pa_stream_set_write_callback(pa_stream *p, pa_stream_request_cb_t cb, void *userdata); + void pa_stream_unref(pa_stream* s); +-int pa_context_errno(pa_context *c); ++int pa_context_errno(const pa_context *c); + const char* pa_strerror(int error); + pa_cvolume* pa_cvolume_set(pa_cvolume* a, unsigned channels, pa_volume_t v); diff --git a/chromium.spec b/chromium.spec index 98d92e0..efce624 100644 --- a/chromium.spec +++ b/chromium.spec @@ -141,6 +141,13 @@ BuildRequires: libicu-devel >= 5.4 %global bundleharfbuzz 0 %endif +# Pulseaudio changed the API a little in 12.99.1 +%if 0%{?fedora} > 30 +%global pulseaudioapichange 1 +%else +%global pulseaudioapichange 0 +%endif + ### Google API keys (see http://www.chromium.org/developers/how-tos/api-keys) ### Note: These are for Fedora use ONLY. ### For your own distribution, please get your own set of keys. @@ -306,6 +313,8 @@ Patch202: enable-vaapi.patch Patch203: chromium-75.0.3770.80-vaapi-i686-fpermissive.patch # Fix compatibility with VA-API library (libva) version 1 Patch204: chromium-75.0.3770.80-vaapi-libva1-compatibility.patch +# Pulseaudio changed the API a little in 12.99.1 +Patch205: chromium-76.0.3809.100-pulse-api-change.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ @@ -491,7 +500,6 @@ BuildRequires: pkgconfig(gtk+-3.0) %else BuildRequires: pkgconfig(gtk+-2.0) %endif -BuildRequires: pulseaudio-libs-devel BuildRequires: python2-devel %if 0%{?fedora} > 27 BuildRequires: python2-beautifulsoup4 @@ -871,6 +879,9 @@ udev. %endif %endif +%if 0%{?pulseaudioapichange} +%patch205 -p1 -b .pulseaudioapichange +%endif # Change shebang in all relevant files in this directory and all subdirectories # See `man find` for how the `-exec command {} +` syntax works From c84fdddcb15e83ab4116a7137c437323bd4f822e Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 14 Aug 2019 23:17:42 +0200 Subject: [PATCH 0341/1449] Add missing ffmpeg file on aarch64 --- clean_ffmpeg.sh | 1 + sources | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index 2f27435..e190296 100755 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -216,6 +216,7 @@ manual_files=" libavcodec/aarch64/fft_neon.S \ libavcodec/x86/videodsp_init.c \ libavcodec/x86/vorbisdsp_init.c \ libavcodec/autorename_libavcodec_mdct15.c \ + libavcodec/aarch64/autorename_libavcodec_aarch64_fft_neon.S \ libavcodec/bit_depth_template.c \ libavcodec/fft_template.c \ libavcodec/flacdec.c \ diff --git a/sources b/sources index 4e53fd1..d6d53e4 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-76.0.3809.100-clean.tar.xz) = f9fecad99618dffbfa3331b77dd82244447382761ca864380ea145d58f4bd90bb1c0fd3d433aca7d71f63e24c4120bff15c3a4dd9b86e94096cdf31c02b80cd5 +SHA512 (chromium-76.0.3809.100-clean.tar.xz) = ca39cf3df4716293d40ea78d8b6c7beb134340c42051dc5ae243f127729cc13fb60e9d168ccac29d55b4ef47aba598e3211caa8f3a8ed5689748873a36fce753 From 6548a82813c753103c059bbd64aa83851b9f2f0b Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 14 Aug 2019 23:22:37 +0200 Subject: [PATCH 0342/1449] Update the Pulseaudio's pa_operation_get_state() signature Missed it while updating the Pulseaudio signatures. --- chromium-76.0.3809.100-pulse-api-change.patch | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/chromium-76.0.3809.100-pulse-api-change.patch b/chromium-76.0.3809.100-pulse-api-change.patch index 37d3dfa..d4e2b46 100644 --- a/chromium-76.0.3809.100-pulse-api-change.patch +++ b/chromium-76.0.3809.100-pulse-api-change.patch @@ -1,7 +1,7 @@ -diff -up chromium-76.0.3809.100/media/audio/pulse/pulse.sigs.pulse_api_change chromium-76.0.3809.100/media/audio/pulse/pulse.sigs ---- chromium-76.0.3809.100/media/audio/pulse/pulse.sigs.pulse_api_change 2019-08-14 16:27:55.057702172 +0200 -+++ chromium-76.0.3809.100/media/audio/pulse/pulse.sigs 2019-08-14 16:37:21.603479886 +0200 -@@ -24,7 +24,7 @@ pa_operation* pa_context_get_source_info +diff -up chromium-76.0.3809.100/media/audio/pulse/pulse.sigs.pulse-api-change chromium-76.0.3809.100/media/audio/pulse/pulse.sigs +--- chromium-76.0.3809.100/media/audio/pulse/pulse.sigs.pulse-api-change 2019-08-14 23:18:59.624627870 +0200 ++++ chromium-76.0.3809.100/media/audio/pulse/pulse.sigs 2019-08-14 23:19:41.258104998 +0200 +@@ -24,11 +24,11 @@ pa_operation* pa_context_get_source_info pa_operation* pa_context_get_source_info_by_name(pa_context* c, const char* name, pa_source_info_cb_t cb, void *userdata); pa_operation* pa_context_get_source_info_list(pa_context* c, pa_source_info_cb_t cb, void* userdata); pa_operation* pa_context_get_sink_info_list(pa_context* c, pa_sink_info_cb_t cb, void* userdata); @@ -10,6 +10,11 @@ diff -up chromium-76.0.3809.100/media/audio/pulse/pulse.sigs.pulse_api_change ch pa_context* pa_context_new(pa_mainloop_api* mainloop, const char* name); pa_operation* pa_context_set_source_volume_by_index(pa_context* c, uint32_t idx, const pa_cvolume* volume, pa_context_success_cb_t cb, void* userdata); void pa_context_set_state_callback(pa_context* c, pa_context_notify_cb_t cb, void* userdata); +-pa_operation_state_t pa_operation_get_state(pa_operation* o); ++pa_operation_state_t pa_operation_get_state(const pa_operation* o); + void pa_context_unref(pa_context* c); + void pa_operation_unref(pa_operation* o); + int pa_stream_begin_write(pa_stream* p, void** data, size_t* nbytes); @@ -38,23 +38,23 @@ pa_operation* pa_stream_cork(pa_stream* int pa_stream_disconnect(pa_stream* s); int pa_stream_drop(pa_stream *p); From fd12ce20b254a75130a2c56ef8453150ef6e3e53 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Thu, 15 Aug 2019 07:03:49 +0200 Subject: [PATCH 0343/1449] Backport another upstream build fix --- ....0.3809.100-gcc-initialization-order.patch | 33 +++++++++++++++++++ chromium.spec | 3 ++ 2 files changed, 36 insertions(+) create mode 100644 chromium-76.0.3809.100-gcc-initialization-order.patch diff --git a/chromium-76.0.3809.100-gcc-initialization-order.patch b/chromium-76.0.3809.100-gcc-initialization-order.patch new file mode 100644 index 0000000..3bf394f --- /dev/null +++ b/chromium-76.0.3809.100-gcc-initialization-order.patch @@ -0,0 +1,33 @@ +From 7dc76c8d9f4cfbce7cf11424120aa6f6094916dc Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Wed, 05 Jun 2019 21:09:01 +0000 +Subject: [PATCH] GCC: XSetWindowAttributes struct initialization should keep order of declaration + +XSetWindowAttributes initialization of attributes in GLSurfaceGLX is not in the +same order of the declaration. GCC fails because of that. + +Bug: 819294 +Change-Id: I8a97da980d5961a35a47ae4d0d8d558b85291f1f +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1646253 +Reviewed-by: Zhenyao Mo +Commit-Queue: José Dapena Paz +Cr-Commit-Position: refs/heads/master@{#666436} +--- + +diff --git a/ui/gl/gl_surface_glx.cc b/ui/gl/gl_surface_glx.cc +index f649dd4..0aa6892 100644 +--- a/ui/gl/gl_surface_glx.cc ++++ b/ui/gl/gl_surface_glx.cc +@@ -583,10 +583,10 @@ + + XSetWindowAttributes swa = { + .background_pixmap = 0, +- .bit_gravity = NorthWestGravity, +- .colormap = g_colormap, + .background_pixel = 0, // ARGB(0,0,0,0) for compositing WM + .border_pixel = 0, ++ .bit_gravity = NorthWestGravity, ++ .colormap = g_colormap, + }; + auto value_mask = CWBackPixmap | CWBitGravity | CWColormap | CWBorderPixel; + if (ui::IsCompositingManagerPresent() && diff --git a/chromium.spec b/chromium.spec index efce624..7da707a 100644 --- a/chromium.spec +++ b/chromium.spec @@ -289,6 +289,8 @@ Patch54: chromium-76.0.3809.100-gcc-feature-policy-parser.patch Patch55: chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch # https://chromium.googlesource.com/chromium/src.git/+/dcb55fb8f18abe5f43d260aa67b14b2dc996f992 Patch56: chromium-76.0.3809.100-gcc-move-explicit-initialization.patch +# https://chromium.googlesource.com/chromium/src.git/+/7dc76c8d9f4cfbce7cf11424120aa6f6094916dc +Patch57: chromium-76.0.3809.100-gcc-initialization-order.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -857,6 +859,7 @@ udev. %patch54 -p1 -b .gcc-feature-policy-parser %patch55 -p1 -b .gcc-hasfraction-constexpr %patch56 -p1 -b .gcc-move-explicit-initialization +%patch57 -p1 -b .gcc-initialization-order # EPEL specific patches %if 0%{?rhel} == 7 From b93cafeb92d195e0a8dd4b7f40760527bc9b2d3e Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Thu, 15 Aug 2019 07:10:04 +0200 Subject: [PATCH 0344/1449] Upload the new cleaned tarball with aarch64 sources Previously I forgot to pass the --ffmpegarm while generating the tarball. --- clean_ffmpeg.sh | 1 - sources | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index e190296..2f27435 100755 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -216,7 +216,6 @@ manual_files=" libavcodec/aarch64/fft_neon.S \ libavcodec/x86/videodsp_init.c \ libavcodec/x86/vorbisdsp_init.c \ libavcodec/autorename_libavcodec_mdct15.c \ - libavcodec/aarch64/autorename_libavcodec_aarch64_fft_neon.S \ libavcodec/bit_depth_template.c \ libavcodec/fft_template.c \ libavcodec/flacdec.c \ diff --git a/sources b/sources index d6d53e4..b7a420d 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-76.0.3809.100-clean.tar.xz) = ca39cf3df4716293d40ea78d8b6c7beb134340c42051dc5ae243f127729cc13fb60e9d168ccac29d55b4ef47aba598e3211caa8f3a8ed5689748873a36fce753 +SHA512 (chromium-76.0.3809.100-clean.tar.xz) = 418ade473185717595b47fbf49ad58bd9bf7cece43f9e200108a2f4df1391bc6a09673e7c30a9958205e13650ed220ad289fe3d79d140612ec5c0bb7891fc8c8 From 73516eb866ec7916d876e276c45b0ee739244e2f Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Thu, 15 Aug 2019 21:14:35 +0200 Subject: [PATCH 0345/1449] Backport and create more of the GCC fixes --- ...09.100-gcc-accountinfo-move-noexcept.patch | 53 +++++++++++++++++++ ...0.3809.100-gcc-history-move-noexcept.patch | 42 +++++++++++++++ ...0.3809.100-gcc-no-alignas-and-export.patch | 14 +++++ ...0.3809.100-gcc-themeservice-includes.patch | 36 +++++++++++++ chromium.spec | 14 +++++ 5 files changed, 159 insertions(+) create mode 100644 chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch create mode 100644 chromium-76.0.3809.100-gcc-history-move-noexcept.patch create mode 100644 chromium-76.0.3809.100-gcc-no-alignas-and-export.patch create mode 100644 chromium-76.0.3809.100-gcc-themeservice-includes.patch diff --git a/chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch b/chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch new file mode 100644 index 0000000..5f45a8f --- /dev/null +++ b/chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch @@ -0,0 +1,53 @@ +From 719df31ffd4d52b473509cf77acd9c02ec112acb Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Tue, 04 Jun 2019 18:38:12 +0200 +Subject: [PATCH] GCC: fix noexcept from move constructor and assign operators of AccountInfo + +AccountInfo declares them as noexcept and uses default implementation, +so all its members (including AccountId) should be noexcept. But AccountId +is not noexcept. To fix it we just need to make CoreAccountId move +operator/assign operator noexcept. + +Bug: 819294 +Change-Id: Ice38654ab7cf3b9eaa6f54aa36e1fec329264f98 +--- + +diff --git a/google_apis/gaia/core_account_id.cc b/google_apis/gaia/core_account_id.cc +index d808082..12eefe3 100644 +--- a/google_apis/gaia/core_account_id.cc ++++ b/google_apis/gaia/core_account_id.cc +@@ -6,8 +6,16 @@ + + CoreAccountId::CoreAccountId() = default; + ++CoreAccountId::CoreAccountId(const CoreAccountId&) = default; ++ ++CoreAccountId::CoreAccountId(CoreAccountId&&) noexcept = default; ++ + CoreAccountId::~CoreAccountId() = default; + ++CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; ++ ++CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) noexcept = default; ++ + CoreAccountId::CoreAccountId(const char* id) : id(id) {} + + CoreAccountId::CoreAccountId(std::string&& id) : id(std::move(id)) {} +diff --git a/google_apis/gaia/core_account_id.h b/google_apis/gaia/core_account_id.h +index 5ea602a..c2d1911 100644 +--- a/google_apis/gaia/core_account_id.h ++++ b/google_apis/gaia/core_account_id.h +@@ -14,8 +14,13 @@ + // for design and tracking). + struct CoreAccountId { + CoreAccountId(); ++ CoreAccountId(const CoreAccountId&); ++ CoreAccountId(CoreAccountId&&) noexcept; + ~CoreAccountId(); + ++ CoreAccountId& operator=(const CoreAccountId&); ++ CoreAccountId& operator=(CoreAccountId&&) noexcept; ++ + // Those implicit constructor and conversion operator allow to + // progressively migrate the code to use this struct. Removing + // them is tracked by https://crbug.com/959161 diff --git a/chromium-76.0.3809.100-gcc-history-move-noexcept.patch b/chromium-76.0.3809.100-gcc-history-move-noexcept.patch new file mode 100644 index 0000000..2876de4 --- /dev/null +++ b/chromium-76.0.3809.100-gcc-history-move-noexcept.patch @@ -0,0 +1,42 @@ +From abe74a7f0c53a43a9706a42d71b7ff4a5da53380 Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Tue, 11 Jun 2019 10:27:19 +0200 +Subject: [PATCH] GCC: add noexcept move assignment in history::URLRow + +In GCC, build is failing because history::QueryURLResult declares its move +assignment operator as noexcept using default implementation. That requires +its members to provide a move assignment operator that is noexcept too. + +But URLRow was missing noexcept declaration in move assignment operator (even +though it was providing noexcept to its move constructor). + +Bug: 819294 +Change-Id: I726e3cf7a4a50c9206a5d0fba8a561d363483d4f +--- + +diff --git a/components/history/core/browser/url_row.cc b/components/history/core/browser/url_row.cc +index 44c22fd..aec0101 100644 +--- a/components/history/core/browser/url_row.cc ++++ b/components/history/core/browser/url_row.cc +@@ -26,7 +26,7 @@ + } + + URLRow& URLRow::operator=(const URLRow& other) = default; +-URLRow& URLRow::operator=(URLRow&& other) = default; ++URLRow& URLRow::operator=(URLRow&& other) noexcept = default; + + void URLRow::Swap(URLRow* other) { + std::swap(id_, other->id_); +diff --git a/components/history/core/browser/url_row.h b/components/history/core/browser/url_row.h +index 8f6f9cf..31a1ef8 100644 +--- a/components/history/core/browser/url_row.h ++++ b/components/history/core/browser/url_row.h +@@ -35,7 +35,7 @@ + + virtual ~URLRow(); + URLRow& operator=(const URLRow& other); +- URLRow& operator=(URLRow&& other); ++ URLRow& operator=(URLRow&& other) noexcept; + + URLID id() const { return id_; } + diff --git a/chromium-76.0.3809.100-gcc-no-alignas-and-export.patch b/chromium-76.0.3809.100-gcc-no-alignas-and-export.patch new file mode 100644 index 0000000..cc91d1e --- /dev/null +++ b/chromium-76.0.3809.100-gcc-no-alignas-and-export.patch @@ -0,0 +1,14 @@ +diff -up chromium-76.0.3809.100/third_party/blink/renderer/core/css/css_property_value_set.h.gcc-no-alignas chromium-76.0.3809.100/third_party/blink/renderer/core/css/css_property_value_set.h +--- chromium-76.0.3809.100/third_party/blink/renderer/core/css/css_property_value_set.h.gcc-no-alignas 2019-08-09 16:48:13.000000000 +0200 ++++ chromium-76.0.3809.100/third_party/blink/renderer/core/css/css_property_value_set.h 2019-08-15 21:04:30.231532746 +0200 +@@ -176,8 +176,8 @@ class CSSLazyPropertyParser + DISALLOW_COPY_AND_ASSIGN(CSSLazyPropertyParser); + }; + +-class CORE_EXPORT alignas(Member) alignas( +- CSSPropertyValueMetadata) ImmutableCSSPropertyValueSet ++class CORE_EXPORT ALIGNAS(alignof(Member)) ++ ALIGNAS(alignof(CSSPropertyValueMetadata)) ImmutableCSSPropertyValueSet + : public CSSPropertyValueSet { + public: + ImmutableCSSPropertyValueSet(const CSSPropertyValue*, diff --git a/chromium-76.0.3809.100-gcc-themeservice-includes.patch b/chromium-76.0.3809.100-gcc-themeservice-includes.patch new file mode 100644 index 0000000..ad40bb9 --- /dev/null +++ b/chromium-76.0.3809.100-gcc-themeservice-includes.patch @@ -0,0 +1,36 @@ +From d08ea83acc2f5ff395c1fe54f52687e92fe51c3b Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Tue, 04 Jun 2019 22:01:03 +0200 +Subject: [PATCH] IWYU: ThemeService requires NativeTheme + +As ThemeService referes to NativeTheme through a ScopedObserver, +the full declaration is required. + +Bug: 819294 +Change-Id: I9d5bd2e87cfaa76e87f9b5509daea24848906a63 +--- + +diff --git a/chrome/browser/themes/theme_service.cc b/chrome/browser/themes/theme_service.cc +index d65388e2..23dc86d 100644 +--- a/chrome/browser/themes/theme_service.cc ++++ b/chrome/browser/themes/theme_service.cc +@@ -54,7 +54,6 @@ + #include "ui/gfx/color_palette.h" + #include "ui/gfx/image/image_skia.h" + #include "ui/native_theme/common_theme.h" +-#include "ui/native_theme/native_theme.h" + + #if BUILDFLAG(ENABLE_EXTENSIONS) + #include "base/scoped_observer.h" +diff --git a/chrome/browser/themes/theme_service.h b/chrome/browser/themes/theme_service.h +index 6c79c72..f93dc0d 100644 +--- a/chrome/browser/themes/theme_service.h ++++ b/chrome/browser/themes/theme_service.h +@@ -25,6 +25,7 @@ + #include "extensions/buildflags/buildflags.h" + #include "extensions/common/extension_id.h" + #include "ui/base/theme_provider.h" ++#include "ui/native_theme/native_theme.h" + #include "ui/native_theme/native_theme_observer.h" + + class BrowserThemePack; diff --git a/chromium.spec b/chromium.spec index 7da707a..e068d83 100644 --- a/chromium.spec +++ b/chromium.spec @@ -291,6 +291,16 @@ Patch55: chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch Patch56: chromium-76.0.3809.100-gcc-move-explicit-initialization.patch # https://chromium.googlesource.com/chromium/src.git/+/7dc76c8d9f4cfbce7cf11424120aa6f6094916dc Patch57: chromium-76.0.3809.100-gcc-initialization-order.patch +# https://chromium.googlesource.com/chromium/src.git/+/138904af5d6a4158ef4247fda816a8035e621e59 +Patch58: chromium-76.0.3809.100-gcc-history-move-noexcept.patch +# https://chromium.googlesource.com/chromium/src.git/+/bdc24128b75008743d819e298557a53205706e7c +Patch59: chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch +# https://chromium.googlesource.com/chromium/src.git/+/5d7f227fa844e79568df64e495e7ef958c12d7b2 +Patch60: chromium-76.0.3809.100-gcc-themeservice-includes.patch +# TBD - need to submit it +# In GCC one can't use alignas() for exported classes (as described in +# https://cs.chromium.org/chromium/src/base/compiler_specific.h?rcl=a5bcc05a48f6cc6299edfaf0179278aa03653ee4&l=103) +Patch61: chromium-76.0.3809.100-gcc-no-alignas-and-export.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -860,6 +870,10 @@ udev. %patch55 -p1 -b .gcc-hasfraction-constexpr %patch56 -p1 -b .gcc-move-explicit-initialization %patch57 -p1 -b .gcc-initialization-order +%patch58 -p1 -b .gcc-history-move-noexcept +%patch59 -p1 -b .gcc-accountinfo-move-noexcept +%patch60 -p1 -b .gcc-themeservice-includes +%patch61 -p1 -b .gcc-no-alignas-and-export # EPEL specific patches %if 0%{?rhel} == 7 From 1ad065436b19d4abed6692b84f1a51aed2ce2c9f Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 16 Aug 2019 13:58:53 +0200 Subject: [PATCH 0346/1449] //third_party dependency missing for remoting --- chromium.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/chromium.spec b/chromium.spec index e068d83..e264a9d 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1207,6 +1207,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/google_input_tools' \ 'third_party/google_input_tools/third_party/closure_library' \ 'third_party/google_input_tools/third_party/closure_library/third_party/closure' \ + 'third_party/google_trust_services' \ 'third_party/googletest' \ 'third_party/glslang' \ 'third_party/grpc' \ From 766aab49a12a06a966125c33fd9d0cd979194ed7 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 20 Aug 2019 21:36:06 +0200 Subject: [PATCH 0347/1449] Fix the build of remoting_all target --- ...76.0.3809.100-gcc-remoting-constexpr.patch | 27 +++++++++++++++++++ ...6.0.3809.100-vtable-symbol-undefined.patch | 11 ++++++++ chromium.spec | 11 +++++--- 3 files changed, 46 insertions(+), 3 deletions(-) create mode 100644 chromium-76.0.3809.100-gcc-remoting-constexpr.patch create mode 100644 chromium-76.0.3809.100-vtable-symbol-undefined.patch diff --git a/chromium-76.0.3809.100-gcc-remoting-constexpr.patch b/chromium-76.0.3809.100-gcc-remoting-constexpr.patch new file mode 100644 index 0000000..c59702f --- /dev/null +++ b/chromium-76.0.3809.100-gcc-remoting-constexpr.patch @@ -0,0 +1,27 @@ +diff -up chromium-76.0.3809.100/remoting/signaling/message_tracker.cc.gcc-constexpr chromium-76.0.3809.100/remoting/signaling/message_tracker.cc +--- chromium-76.0.3809.100/remoting/signaling/message_tracker.cc.gcc-constexpr 2019-08-09 16:48:08.000000000 +0200 ++++ chromium-76.0.3809.100/remoting/signaling/message_tracker.cc 2019-08-20 21:29:14.545465656 +0200 +@@ -9,8 +9,7 @@ + namespace remoting { + + // static +-const base::TimeDelta MessageTracker::kCleanupInterval = +- base::TimeDelta::FromMinutes(2); ++constexpr base::TimeDelta MessageTracker::kCleanupInterval; + + MessageTracker::MessageTracker() = default; + +diff -up chromium-76.0.3809.100/remoting/signaling/message_tracker.h.gcc-constexpr chromium-76.0.3809.100/remoting/signaling/message_tracker.h +--- chromium-76.0.3809.100/remoting/signaling/message_tracker.h.gcc-constexpr 2019-08-20 21:27:53.539653248 +0200 ++++ chromium-76.0.3809.100/remoting/signaling/message_tracker.h 2019-08-20 21:28:23.371952434 +0200 +@@ -36,7 +36,8 @@ class MessageTracker final { + + // All IDs older than now - kCleanupInterval will be eventually removed, but + // they are not guaranteed to be immediately removed after the interval. +- static constexpr base::TimeDelta kCleanupInterval; ++ static constexpr base::TimeDelta kCleanupInterval = ++ base::TimeDelta::FromMinutes(2); + + void RemoveExpiredIds(); + +diff -up chromium-76.0.3809.100/remoting/signaling/message_tracker_unittest.cc.gcc-constexpr chromium-76.0.3809.100/remoting/signaling/message_tracker_unittest.cc diff --git a/chromium-76.0.3809.100-vtable-symbol-undefined.patch b/chromium-76.0.3809.100-vtable-symbol-undefined.patch new file mode 100644 index 0000000..64532df --- /dev/null +++ b/chromium-76.0.3809.100-vtable-symbol-undefined.patch @@ -0,0 +1,11 @@ +diff -up chromium-76.0.3809.100/net/quic/platform/impl/quic_default_proof_providers_impl.cc.vtable-symbol-undefined chromium-76.0.3809.100/net/quic/platform/impl/quic_default_proof_providers_impl.cc +--- chromium-76.0.3809.100/net/quic/platform/impl/quic_default_proof_providers_impl.cc.vtable-symbol-undefined 2019-08-20 21:21:24.901899270 +0200 ++++ chromium-76.0.3809.100/net/quic/platform/impl/quic_default_proof_providers_impl.cc 2019-08-20 21:19:30.361746211 +0200 +@@ -18,6 +18,7 @@ + #include "net/quic/crypto/proof_verifier_chromium.h" + #include "net/third_party/quiche/src/quic/platform/api/quic_flags.h" + #include "net/third_party/quiche/src/quic/platform/api/quic_ptr_util.h" ++#include "net/quic/platform/impl/quic_flags_impl.cc" + + DEFINE_QUIC_COMMAND_LINE_FLAG(std::string, + certificate_file, diff --git a/chromium.spec b/chromium.spec index e264a9d..1d3141c 100644 --- a/chromium.spec +++ b/chromium.spec @@ -297,10 +297,13 @@ Patch58: chromium-76.0.3809.100-gcc-history-move-noexcept.patch Patch59: chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch # https://chromium.googlesource.com/chromium/src.git/+/5d7f227fa844e79568df64e495e7ef958c12d7b2 Patch60: chromium-76.0.3809.100-gcc-themeservice-includes.patch -# TBD - need to submit it -# In GCC one can't use alignas() for exported classes (as described in -# https://cs.chromium.org/chromium/src/base/compiler_specific.h?rcl=a5bcc05a48f6cc6299edfaf0179278aa03653ee4&l=103) +# In GCC one can't use alignas() for exported classes +# https://chromium.googlesource.com/chromium/src.git/+/8148fd96ae04a1150a9c6012634dcd2a7335f87a Patch61: chromium-76.0.3809.100-gcc-no-alignas-and-export.patch +# Needs to be submitted.. +Patch62: chromium-76.0.3809.100-gcc-remoting-constexpr.patch +# Needs to be submitted.. (ugly hack, needs to be added properly to GN files) +Patch63: chromium-76.0.3809.100-vtable-symbol-undefined.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -874,6 +877,8 @@ udev. %patch59 -p1 -b .gcc-accountinfo-move-noexcept %patch60 -p1 -b .gcc-themeservice-includes %patch61 -p1 -b .gcc-no-alignas-and-export +%patch62 -p1 -b .gcc-remoting-constexpr +%patch63 -p1 -b .vtable-symbol-undefined # EPEL specific patches %if 0%{?rhel} == 7 From 6799d9e0eab28883f324e5034786b92d68b91854 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 20 Aug 2019 22:07:44 +0200 Subject: [PATCH 0348/1449] Fix the previously uploaded patch --- chromium-76.0.3809.100-gcc-remoting-constexpr.patch | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/chromium-76.0.3809.100-gcc-remoting-constexpr.patch b/chromium-76.0.3809.100-gcc-remoting-constexpr.patch index c59702f..aec3107 100644 --- a/chromium-76.0.3809.100-gcc-remoting-constexpr.patch +++ b/chromium-76.0.3809.100-gcc-remoting-constexpr.patch @@ -12,13 +12,13 @@ diff -up chromium-76.0.3809.100/remoting/signaling/message_tracker.cc.gcc-conste MessageTracker::MessageTracker() = default; diff -up chromium-76.0.3809.100/remoting/signaling/message_tracker.h.gcc-constexpr chromium-76.0.3809.100/remoting/signaling/message_tracker.h ---- chromium-76.0.3809.100/remoting/signaling/message_tracker.h.gcc-constexpr 2019-08-20 21:27:53.539653248 +0200 +--- chromium-76.0.3809.100/remoting/signaling/message_tracker.h.gcc-constexpr 2019-08-20 22:02:25.625970954 +0200 +++ chromium-76.0.3809.100/remoting/signaling/message_tracker.h 2019-08-20 21:28:23.371952434 +0200 @@ -36,7 +36,8 @@ class MessageTracker final { // All IDs older than now - kCleanupInterval will be eventually removed, but // they are not guaranteed to be immediately removed after the interval. -- static constexpr base::TimeDelta kCleanupInterval; +- static const base::TimeDelta kCleanupInterval; + static constexpr base::TimeDelta kCleanupInterval = + base::TimeDelta::FromMinutes(2); From 2b21300e3f50fcb426d0f1f1ba0c688e8f87362f Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 21 Aug 2019 13:51:11 +0200 Subject: [PATCH 0349/1449] Update the list of private libraries and remove a pak file that was removed --- chromium.spec | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/chromium.spec b/chromium.spec index 1d3141c..59883f4 100644 --- a/chromium.spec +++ b/chromium.spec @@ -54,9 +54,9 @@ %global __provides_exclude_from %{chromium_path}/.*\\.so|%{chromium_path}/lib/.*\\.so|%{chromium_path}/lib/.*\\.so.* %if 0%{?rhel} == 7 -%global privlibs libEGL|libGLESv2|libVkICD_mock_icd|libVkLayer_core_validation|libVkLayer_object_lifetimes|libVkLayer_stateless_validation|libVkLayer_thread_safety|libVkLayer_unique_objects|libaccessibility|libandroid_mojo_bindings_shared|libanimation|libapdu|libaura|libaura_extra|libauthenticator_test_mojo_bindings_shared|libbase|libbase_i18n|libbindings|libbindings_base|libblink_common|libblink_controller|libblink_core|libblink_embedded_frame_sink_mojo_bindings_shared|libblink_features|libblink_modules|libblink_mojo_bindings_shared|libblink_mojom_broadcastchannel_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcbor|libcc|libcc_animation|libcc_base|libcc_debug|libcc_mojo_embedder|libcc_paint|libcdm_manager|libcertificate_matching|libchrome_features|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom|libcontent_service_mojom_shared|libcrash_key|libcrcrypto|libdbus|libdbus_thread_linux|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevice_vr|libdevice_vr_mojo_bindings|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevices|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libembedder|libembedder_switches|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libextras|libfido|libfingerprint|libfreetype_harfbuzz|libgamepad_mojom|libgamepad_mojom_blink|libgamepad_mojom_shared|libgamepad_shared_typemap_traits|libgcm|libgeometry|libgeometry_skia|libgesture_detection|libgfx|libgfx_ipc|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_switches|libgfx_x11|libgin|libgl_in_process_context|libgl_init|libgl_wrapper|libgles2|libgles2_implementation|libgles2_utils|libgpu|libgpu_ipc_service|libgtkui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc|libipc_mojom|libipc_mojom_shared|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|liblearning_common|liblearning_impl|libleveldatabase|liblive_tab_count_metrics|libmanager|libmedia_blink|libmedia_filters_jpeg_parser|libmedia_gpu|libmedia_mojo_services|libmedia_session_cpp|libmedia_webrtc|libmemory_instrumentation|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirclient.so.9|libmirroring_service|libmojo_base_lib|libmojo_base_mojom|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_shared_typemap_traits|libmojo_core_embedder|libmojo_core_embedder_internal|libmojo_core_ports|libmojo_cpp_platform|libmojo_ime_lib|libmojo_mojom_bindings|libmojo_mojom_bindings_shared|libmojo_public_system|libmojo_public_system_cpp|libmojom_core_shared|libmojom_mhtml_load_result_shared|libmojom_modules_shared|libmojom_platform_shared|libmpris|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp|libnetwork_cpp_base|libnetwork_service|libnetwork_session_configurator|libonc|libos_crypt|libperfetto|libplatform|libplatform_window_handler_libs|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp_base|libresource_coordinator_cpp_features|libresource_coordinator_public_mojom|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libsandbox|libsandbox_services|libscheduling_metrics|libseccomp_bpf|libservice|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom|libservice_manager_mojom_blink|libservice_manager_mojom_constants|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_shared|libservice_manager_mojom_traits|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libtracing_cpp|libtracing_mojom|libtracing_mojom_shared|libui_accessibility_ax_mojom|libui_accessibility_ax_mojom_blink|libui_accessibility_ax_mojom_shared|libui_base|libui_base_clipboard|libui_base_clipboard_types|libui_base_features|libui_base_idle|libui_base_ime|libui_base_ime_init|libui_base_ime_linux|libui_base_ime_types|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl|liburl_ipc|liburl_matcher|libusb_shared|libuser_manager|libuser_prefs|libv8|libv8_libbase|libv8_libplatform|libviews|libviz_common|libviz_resource_format_utils|libviz_vulkan_context_provider|libvr_base|libvr_common|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libweb_dialogs|libweb_feature_mojo_bindings_mojom|libweb_feature_mojo_bindings_mojom_blink|libweb_feature_mojo_bindings_mojom_shared|libwebdata_common|libwebgpu|libwebview|libwm|libwm_public|libwtf|libx11_events_platform|libx11_window|libzygote|libmedia|libffmpeg|libfontconfig +%global privlibs libevents_devices_x11|libgfx_x11|libevents_x|libgl_wrapper|libmemory_instrumentation|libdevice_vr_mojo_bindings|libdiscardable_memory_common|libui_base_ime_init|libnetwork_cpp_base|libos_crypt|libmessage_center|libmanager|libdevice_gamepad|libembedder|libGLESv2|libtracing|libskia|libgl_in_process_context|libapdu|libbluetooth|libviz_resource_format_utils|libmojo_mojom_bindings|libblink_platform|libmojom_modules_shared|libwebdata_common|libshell_dialogs|libresource_coordinator_public_mojom_blink|libgles2_utils|libgpu_ipc_service|libcaptive_portal|libvr_common|libgles2|libdisplay|libgfx_ipc_geometry|libcc_paint|libandroid_mojo_bindings_shared|libipc_mojom_shared|libffmpeg|liburl_matcher|libbindings|libservice|libwtf|libcommon|libleveldatabase|libnetwork_session_configurator|libaura|libcloud_policy_proto_generated_compile|libservice_manager_mojom_constants|libui_touch_selection|libmojo_base_lib|libservice_manager_cpp_types|libservice_manager_mojom_blink|libmojo_core_embedder|libblink_embedded_frame_sink_mojo_bindings_shared|libgesture_detection|liburl_ipc|libweb_feature_mojo_bindings_mojom|libscheduling_metrics|libresource_coordinator_cpp_features|libcc|libdiscardable_memory_client|libsessions|libblink_common|libipc|libvulkan_init|libblink_mojom_broadcastchannel_bindings_shared|libheadless_non_renderer|libcbor|libmojo_core_embedder_internal|libmojo_public_system_cpp|libmojom_core_shared|libgfx|libusb_shared|libtracing_mojom|libuser_manager|libnet|libwebgpu|libplatform_window_handler_libs|libmojo_base_mojom_shared|libui_base|libprinting|libcontent_service_mojom_shared|libstartup_tracing|libdevice_vr_mojo_bindings_blink|libraster|libsandbox|libv8_libbase|libevents|libui_base_idle|libgles2_implementation|libkeyed_service_content|libprefs|libVkLayer_core_validation|libchrome_features|libdiscardable_memory_service|libcapture_lib|libperfetto|libicui18n|libdomain_reliability|libweb_dialogs|libcc_animation|libbase|libtracing_cpp|libGLESv2|libEGL|libVkLayer_thread_safety|libmedia_gpu|libparsers|libservice_manager_cpp|liblearning_common|libdevices|libvulkan_wrapper|libservice_manager_mojom_shared|libgfx_switches|libkeycodes_x11|libweb_feature_mojo_bindings_mojom_shared|liburl|libmpris|libppapi_proxy|libmojo_base_mojom|libprotobuf_lite|libui_base_features|libdevice_vr|libwm_public|libcolor_space|libseccomp_bpf|libinterfaces_shared|libui_base_x|libicuuc|libwebview|libdevice_event_log|libVkLayer_object_lifetimes|libvulkan_x11|libproxy_config|libnetwork_cpp|libextras|libVkICD_mock_icd|libv8_libplatform|libresource_coordinator_public_mojom|libwm|libviews|libsuid_sandbox_client|libEGL|libcapture_base|libnative_theme|libcrcrypto|libmojo_public_system|libservice_manager_mojom_constants_shared|libui_accessibility_ax_mojom_blink|libplatform|libui_data_pack|libgfx_ipc_buffer_types|libclearkeycdm|libmetrics_cpp|libmojo_base_shared_typemap_traits|libx11_events_platform|libcrash_key|libclient|libblink_controller|libfido|libfreetype_harfbuzz|libmojo_mojom_bindings_shared|libaccessibility|libstub_window|libui_base_ime|libpolicy_component|libweb_bluetooth_mojo_bindings_shared|libmojo_core_ports|libsandbox_services|libstorage_common|libviz_vulkan_context_provider|libcontent_common_mojo_bindings_shared|libgamepad_mojom_blink|libkeyed_service_core|libmedia_mojo_services|libmojo_ime_lib|libblink_modules|libgcm|libsql|libgeometry_skia|libVkLayer_unique_objects|libweb_feature_mojo_bindings_mojom_blink|libui_base_ime_linux|libdisplay_types|libdevice_vr_mojo_bindings_shared|libcc_base|libtracing_mojom_shared|libmedia_blink|libcc_mojo_embedder|libpdfium|libevents_ozone_layout|libgfx_ipc_color|libgtkui|libpolicy_proto|libcodec|libgpu|libcontent_service_cpp|libmojom_mhtml_load_result_shared|libdisplay_util|libcontent_service_mojom|libbase_i18n|libservice_manager_mojom_constants_blink|libcompositor|libmojo_base_mojom_blink|libui_message_center_cpp|libsnapshot|libdbus_thread_linux|libtab_count_metrics|libpublic|libui_accessibility_ax_mojom|liblearning_impl|librange|libbrowser_ui_views|libcontent|libvr_base|libppapi_host|libservice_manager_mojom_traits|libgamepad_mojom|libcertificate_matching|libgfx_ipc|libgl_init|libVkLayer_stateless_validation|libshared_with_blink|libshared_memory_support|libevents_base|libnet_with_v8|libmedia_webrtc|libsurface|libcontent_public_common_mojo_bindings_shared|libaura_extra|libdevice_base|libonc|libcdm_manager|libmojom_platform_shared|libui_accessibility_ax_mojom_shared|libhost|libblink_features|libdevice_features|libmirroring_service|libdbus|libgeometry|libchromium_sqlite3|libgamepad_mojom_shared|libauthenticator_test_mojo_bindings_shared|libboringssl|libembedder_switches|libgfx_ipc_skia|libzygote|libmedia_session_cpp|libv8|libnetwork_service|libx11_window|libui_base_clipboard|libanimation|libmessage_support|libui_devtools|libgamepad_shared_typemap_traits|libfingerprint|libviz_common|libppapi_shared|libstorage_browser|libbindings_base|libservice_manager_mojom|libblink_core|libgin|libresource_coordinator_public_mojom_shared|libuser_prefs|libui_base_ime_types|libipc_mojom|libmidi|libmojo_cpp_platform|libcc_debug|libui_base_clipboard_types|libmedia|libfontconfig %else -%global privlibs libEGL|libGLESv2|libVkICD_mock_icd|libVkLayer_core_validation|libVkLayer_object_lifetimes|libVkLayer_stateless_validation|libVkLayer_thread_safety|libVkLayer_unique_objects|libaccessibility|libandroid_mojo_bindings_shared|libanimation|libapdu|libaura|libaura_extra|libauthenticator_test_mojo_bindings_shared|libbase|libbase_i18n|libbindings|libbindings_base|libblink_common|libblink_controller|libblink_core|libblink_embedded_frame_sink_mojo_bindings_shared|libblink_features|libblink_modules|libblink_mojo_bindings_shared|libblink_mojom_broadcastchannel_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcbor|libcc|libcc_animation|libcc_base|libcc_debug|libcc_mojo_embedder|libcc_paint|libcdm_manager|libcertificate_matching|libchrome_features|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom|libcontent_service_mojom_shared|libcrash_key|libcrcrypto|libdbus|libdbus_thread_linux|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevice_vr|libdevice_vr_mojo_bindings|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevices|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libembedder|libembedder_switches|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libextras|libfido|libfingerprint|libfreetype_harfbuzz|libgamepad_mojom|libgamepad_mojom_blink|libgamepad_mojom_shared|libgamepad_shared_typemap_traits|libgcm|libgeometry|libgeometry_skia|libgesture_detection|libgfx|libgfx_ipc|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_switches|libgfx_x11|libgin|libgl_in_process_context|libgl_init|libgl_wrapper|libgles2|libgles2_implementation|libgles2_utils|libgpu|libgpu_ipc_service|libgtkui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc|libipc_mojom|libipc_mojom_shared|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|liblearning_common|liblearning_impl|libleveldatabase|liblive_tab_count_metrics|libmanager|libmedia_blink|libmedia_filters_jpeg_parser|libmedia_gpu|libmedia_mojo_services|libmedia_session_cpp|libmedia_webrtc|libmemory_instrumentation|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirclient.so.9|libmirroring_service|libmojo_base_lib|libmojo_base_mojom|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_shared_typemap_traits|libmojo_core_embedder|libmojo_core_embedder_internal|libmojo_core_ports|libmojo_cpp_platform|libmojo_ime_lib|libmojo_mojom_bindings|libmojo_mojom_bindings_shared|libmojo_public_system|libmojo_public_system_cpp|libmojom_core_shared|libmojom_mhtml_load_result_shared|libmojom_modules_shared|libmojom_platform_shared|libmpris|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp|libnetwork_cpp_base|libnetwork_service|libnetwork_session_configurator|libonc|libos_crypt|libperfetto|libplatform|libplatform_window_handler_libs|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp_base|libresource_coordinator_cpp_features|libresource_coordinator_public_mojom|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libsandbox|libsandbox_services|libscheduling_metrics|libseccomp_bpf|libservice|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom|libservice_manager_mojom_blink|libservice_manager_mojom_constants|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_shared|libservice_manager_mojom_traits|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libtracing_cpp|libtracing_mojom|libtracing_mojom_shared|libui_accessibility_ax_mojom|libui_accessibility_ax_mojom_blink|libui_accessibility_ax_mojom_shared|libui_base|libui_base_clipboard|libui_base_clipboard_types|libui_base_features|libui_base_idle|libui_base_ime|libui_base_ime_init|libui_base_ime_linux|libui_base_ime_types|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl|liburl_ipc|liburl_matcher|libusb_shared|libuser_manager|libuser_prefs|libv8|libv8_libbase|libv8_libplatform|libviews|libviz_common|libviz_resource_format_utils|libviz_vulkan_context_provider|libvr_base|libvr_common|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libweb_dialogs|libweb_feature_mojo_bindings_mojom|libweb_feature_mojo_bindings_mojom_blink|libweb_feature_mojo_bindings_mojom_shared|libwebdata_common|libwebgpu|libwebview|libwm|libwm_public|libwtf|libx11_events_platform|libx11_window|libzygote|libmedia|libffmpeg +%global privlibs libevents_devices_x11|libgfx_x11|libevents_x|libgl_wrapper|libmemory_instrumentation|libdevice_vr_mojo_bindings|libdiscardable_memory_common|libui_base_ime_init|libnetwork_cpp_base|libos_crypt|libmessage_center|libmanager|libdevice_gamepad|libembedder|libGLESv2|libtracing|libskia|libgl_in_process_context|libapdu|libbluetooth|libviz_resource_format_utils|libmojo_mojom_bindings|libblink_platform|libmojom_modules_shared|libwebdata_common|libshell_dialogs|libresource_coordinator_public_mojom_blink|libgles2_utils|libgpu_ipc_service|libcaptive_portal|libvr_common|libgles2|libdisplay|libgfx_ipc_geometry|libcc_paint|libandroid_mojo_bindings_shared|libipc_mojom_shared|libffmpeg|liburl_matcher|libbindings|libservice|libwtf|libcommon|libleveldatabase|libnetwork_session_configurator|libaura|libcloud_policy_proto_generated_compile|libservice_manager_mojom_constants|libui_touch_selection|libmojo_base_lib|libservice_manager_cpp_types|libservice_manager_mojom_blink|libmojo_core_embedder|libblink_embedded_frame_sink_mojo_bindings_shared|libgesture_detection|liburl_ipc|libweb_feature_mojo_bindings_mojom|libscheduling_metrics|libresource_coordinator_cpp_features|libcc|libdiscardable_memory_client|libsessions|libblink_common|libipc|libvulkan_init|libblink_mojom_broadcastchannel_bindings_shared|libheadless_non_renderer|libcbor|libmojo_core_embedder_internal|libmojo_public_system_cpp|libmojom_core_shared|libgfx|libusb_shared|libtracing_mojom|libuser_manager|libnet|libwebgpu|libplatform_window_handler_libs|libmojo_base_mojom_shared|libui_base|libprinting|libcontent_service_mojom_shared|libstartup_tracing|libdevice_vr_mojo_bindings_blink|libraster|libsandbox|libv8_libbase|libevents|libui_base_idle|libgles2_implementation|libkeyed_service_content|libprefs|libVkLayer_core_validation|libchrome_features|libdiscardable_memory_service|libcapture_lib|libperfetto|libicui18n|libdomain_reliability|libweb_dialogs|libcc_animation|libbase|libtracing_cpp|libGLESv2|libEGL|libVkLayer_thread_safety|libmedia_gpu|libparsers|libservice_manager_cpp|liblearning_common|libdevices|libvulkan_wrapper|libservice_manager_mojom_shared|libgfx_switches|libkeycodes_x11|libweb_feature_mojo_bindings_mojom_shared|liburl|libmpris|libppapi_proxy|libmojo_base_mojom|libprotobuf_lite|libui_base_features|libdevice_vr|libwm_public|libcolor_space|libseccomp_bpf|libinterfaces_shared|libui_base_x|libicuuc|libwebview|libdevice_event_log|libVkLayer_object_lifetimes|libvulkan_x11|libproxy_config|libnetwork_cpp|libextras|libVkICD_mock_icd|libv8_libplatform|libresource_coordinator_public_mojom|libwm|libviews|libsuid_sandbox_client|libEGL|libcapture_base|libnative_theme|libcrcrypto|libmojo_public_system|libservice_manager_mojom_constants_shared|libui_accessibility_ax_mojom_blink|libplatform|libui_data_pack|libgfx_ipc_buffer_types|libclearkeycdm|libmetrics_cpp|libmojo_base_shared_typemap_traits|libx11_events_platform|libcrash_key|libclient|libblink_controller|libfido|libfreetype_harfbuzz|libmojo_mojom_bindings_shared|libaccessibility|libstub_window|libui_base_ime|libpolicy_component|libweb_bluetooth_mojo_bindings_shared|libmojo_core_ports|libsandbox_services|libstorage_common|libviz_vulkan_context_provider|libcontent_common_mojo_bindings_shared|libgamepad_mojom_blink|libkeyed_service_core|libmedia_mojo_services|libmojo_ime_lib|libblink_modules|libgcm|libsql|libgeometry_skia|libVkLayer_unique_objects|libweb_feature_mojo_bindings_mojom_blink|libui_base_ime_linux|libdisplay_types|libdevice_vr_mojo_bindings_shared|libcc_base|libtracing_mojom_shared|libmedia_blink|libcc_mojo_embedder|libpdfium|libevents_ozone_layout|libgfx_ipc_color|libgtkui|libpolicy_proto|libcodec|libgpu|libcontent_service_cpp|libmojom_mhtml_load_result_shared|libdisplay_util|libcontent_service_mojom|libbase_i18n|libservice_manager_mojom_constants_blink|libcompositor|libmojo_base_mojom_blink|libui_message_center_cpp|libsnapshot|libdbus_thread_linux|libtab_count_metrics|libpublic|libui_accessibility_ax_mojom|liblearning_impl|librange|libbrowser_ui_views|libcontent|libvr_base|libppapi_host|libservice_manager_mojom_traits|libgamepad_mojom|libcertificate_matching|libgfx_ipc|libgl_init|libVkLayer_stateless_validation|libshared_with_blink|libshared_memory_support|libevents_base|libnet_with_v8|libmedia_webrtc|libsurface|libcontent_public_common_mojo_bindings_shared|libaura_extra|libdevice_base|libonc|libcdm_manager|libmojom_platform_shared|libui_accessibility_ax_mojom_shared|libhost|libblink_features|libdevice_features|libmirroring_service|libdbus|libgeometry|libchromium_sqlite3|libgamepad_mojom_shared|libauthenticator_test_mojo_bindings_shared|libboringssl|libembedder_switches|libgfx_ipc_skia|libzygote|libmedia_session_cpp|libv8|libnetwork_service|libx11_window|libui_base_clipboard|libanimation|libmessage_support|libui_devtools|libgamepad_shared_typemap_traits|libfingerprint|libviz_common|libppapi_shared|libstorage_browser|libbindings_base|libservice_manager_mojom|libblink_core|libgin|libresource_coordinator_public_mojom_shared|libuser_prefs|libui_base_ime_types|libipc_mojom|libmidi|libmojo_cpp_platform|libcc_debug|libui_base_clipboard_types|libmedia %endif %global __requires_exclude ^(%{privlibs})\\.so* @@ -1753,7 +1753,6 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chrome_*.pak %{chromium_path}/resources.pak %{chromium_path}/icudtl.dat -%{chromium_path}/views_mus_resources.pak %{chromium_path}/%{chromium_browser_channel} %{chromium_path}/%{chromium_browser_channel}.sh %{chromium_path}/MEIPreload/ From 2de703ec6f3bb40644cee172fcfe6352707aa79e Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 24 Jul 2019 20:14:22 +0000 Subject: [PATCH 0350/1449] - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- chromium.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index a741cda..de018ef 100644 --- a/chromium.spec +++ b/chromium.spec @@ -165,7 +165,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3770.100 -Release: 3%{?dist} +Release: 4%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1926,6 +1926,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Wed Jul 24 2019 Fedora Release Engineering - 75.0.3770.100-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + * Tue Jul 2 2019 Tom Callaway - 75.0.3770.100-3 - apply upstream fix to resolve issue where it is dangerous to post a task with a RenderProcessHost pointer because the RenderProcessHost From 9ac69a56eb4308d81c40a035fd7ad4d6ad4dcc00 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 12 Aug 2019 17:09:21 +0200 Subject: [PATCH 0351/1449] Cleanup the patches --- ...res_2d_i16_neon-Make-s2-a-uint64x1_t.patch | 54 -- chromium-46.0.2490.71-notest.patch | 11 - chromium-52.0.2743.116-unset-madv_free.patch | 15 - chromium-52.0.2743.82-arm-webrtc.patch | 51 -- chromium-52.0.2743.82-master-prefs-path.patch | 15 - chromium-55.0.2883.75-sandbox-pie.patch | 30 - chromium-56.0.2924.87-fpermissive.patch | 13 - chromium-56.0.2924.87-gcc5.patch | 354 ---------- chromium-59.0.3071.115-ucontext-fix.patch | 214 ------ chromium-59.0.3071.86-ffmpeg-stdatomic.patch | 17 - chromium-59.0.3071.86-nullfix.patch | 43 -- chromium-59.0.3071.86-system-clang.patch | 10 - chromium-60.0.3112.78-gn-system.patch | 221 ------ ...um-60.0.3112.78-last-commit-position.patch | 28 - chromium-60.0.3112.78-no-zlib-mangle.patch | 13 - chromium-60.0.3112.90-vulkan-force-c99.patch | 11 - ...m-61.0.3163.79-aarch64-glibc-2.26.90.patch | 12 - ...mium-61.0.3163.79-fix-ffmpeg-aarch64.patch | 12 - chromium-61.0.3163.79-setopaque.patch | 12 - ...62.0.3202.62-correct-cplusplus-check.patch | 20 - chromium-62.0.3202.62-dde535-gcc-fix.patch | 13 - chromium-62.0.3202.62-enable-mp3.patch | 484 ------------- ...7-no-nullptr-assignment-on-StructPtr.patch | 12 - chromium-62.0.3202.62-gcc-nc.patch | 11 - chromium-62.0.3202.62-gcc7.patch | 11 - chromium-62.0.3202.62-rvalue-fix.patch | 45 -- ...m-63.0.3289.84-aarch64-glibc-2.26.90.patch | 12 - chromium-63.0.3289.84-enable-mp3.patch | 485 ------------- ...mium-63.0.3289.84-fix-ffmpeg-aarch64.patch | 12 - ...mium-63.0.3289.84-fix-ft-hb-unbundle.patch | 36 - chromium-63.0.3289.84-gcc-round-fix.patch | 11 - chromium-63.0.3289.84-gcc5-r3.patch | 104 --- chromium-63.0.3289.84-nolibc++.patch | 15 - chromium-63.0.3289.84-setopaque.patch | 12 - chromium-64.0.3282.119-enable-mp3.patch | 54 -- ...mium-64.0.3282.119-gcc-constexpr-fix.patch | 70 -- chromium-64.0.3282.119-gcc-round-fix.patch | 12 - chromium-64.0.3282.119-gcc5-r3.patch | 75 -- chromium-64.0.3282.119-gcc5.patch | 57 -- chromium-64.0.3282.119-gcc7.patch | 11 - chromium-64.0.3282.119-memcpy-fix.patch | 11 - chromium-64.0.3282.167-gcc8-fabi11.patch | 15 - ...x-non-copyable-class-s-optional-move.patch | 41 -- ...-methods-String-renamed-to-GetString.patch | 108 --- ...eProvider-Settings-do-not-provide-co.patch | 22 - ...se-Optional-T-requires-the-full-decl.patch | 33 - ...std-move-to-base-Optional-instead-of.patch | 24 - ...-declare-ConfigurationPolicyProvider.patch | 18 - ...ional-copy-move-ctors-assign-operato.patch | 91 --- ...verting-constructors-from-Optional-U.patch | 116 ---- ...-Implement-value-forward-constructor.patch | 72 -- ...e-non-copy-non-move-assign-operators.patch | 144 ---- ...irmative-expression-in-base-Optional.patch | 265 ------- chromium-65.0.3325.146-gcc5-r3.patch | 74 -- chromium-65.0.3325.146-gcc7.patch | 11 - ...trivially_copy_constructable-failure.patch | 55 -- ...Remove-GC-checks-from-WTF-Optional-T.patch | 61 -- chromium-65.0.3325.146-wtf-vector-fix.patch | 54 -- chromium-65.0.3325.162-boolfix.patch | 36 - chromium-65.0.3325.162-epel7-stdc++.patch | 12 - ...-65.0.3325.162-skia-aarch64-buildfix.patch | 21 - ...se-Optional-T-requires-the-full-decl.patch | 33 - ...nitializer-list-for-NoDestructor-of-.patch | 12 - ....0.3359.117-gcc-copy-constructor-fix.patch | 49 -- ...6.0.3359.117-gcc-optional-move-fixes.patch | 45 -- ....117-gcc-vector-copy-constructor-fix.patch | 53 -- chromium-66.0.3359.117-gcc5-r3.patch | 38 - chromium-66.0.3359.117-nounrar.patch | 16 - chromium-66.0.3359.139-arm-init-fix.patch | 12 - chromium-66.0.3359.170-gcc8-alignof.patch | 18 - chromium-67.0.3396.62-boolfix.patch | 36 - ....0.3396.62-crashpad-aarch64-buildfix.patch | 13 - ....62-epel7-use-old-python-exec-syntax.patch | 12 - ...m-67.0.3396.62-skia-aarch64-buildfix.patch | 21 - chromium-67.0.3396.87-fedora-user-agent.patch | 12 - chromium-67.0.3396.99-py2-bootstrap.patch | 42 -- ...mium-68.0.3440.106-fedora-user-agent.patch | 12 - ...440.106-fix-build-networking_private.patch | 12 - chromium-68.0.3440.106-notest.patch | 11 - chromium-68.0.3440.84-cors-string.patch | 51 -- chromium-68.0.3440.84-libjpeg.patch | 62 -- chromium-68.0.3440.84-libwebp-shim.patch | 43 -- chromium-68.0.3440.84-move-unique-ptr.patch | 65 -- chromium-69.0.3497.81-gcc8-alignof.patch | 18 - chromium-69.0.3497.81-norar.patch | 79 --- chromium-69.0.3497.81-py2-bootstrap.patch | 33 - chromium-69.0.3497.81-widevine-r2.patch | 23 - ...70.0.3538.110-remove-sysroot-options.patch | 23 - chromium-70.0.3538.77-harfbuzz2-fix.patch | 80 --- chromium-71-gcc-0.patch | 57 -- chromium-71.0.3578.98-el7-fix-noexcept.patch | 48 -- chromium-71.0.3578.98-norar.patch | 79 --- ...-71.0.3578.98-remove-sysroot-options.patch | 23 - ...0.3578.98-vaapi-libva1-compatibility.patch | 14 - chromium-72.0.3626.121-fix-va-check.patch | 29 - chromium-72.0.3626.121-norar.patch | 79 --- chromium-73-gcc-0.patch | 108 --- chromium-73-gcc-1.patch | 99 --- chromium-73-gcc-2.patch | 51 -- chromium-73-gcc-3.patch | 69 -- chromium-73-gcc-4.patch | 59 -- chromium-73-gcc-5.patch | 65 -- chromium-73-gcc-6.patch | 88 --- ...73.0.3683.103-glibc-2.29-clone-vfork.patch | 29 - ...73.0.3683.75-aarch64-crashpad-limits.patch | 11 - chromium-73.0.3683.75-el7-fix-noexcept.patch | 54 -- chromium-73.0.3683.75-no-header-hygiene.patch | 17 - chromium-gcc5-r3.patch | 98 --- chromium-gcc8-r588316.patch | 98 --- chromium-gcc8-r588547.patch | 30 - chromium-gcc8-r589614.patch | 37 - chromium-gcc8-r591015.patch | 70 -- chromium-gn-bootstrap-r17.patch | 68 -- chromium-math.h-r0.patch | 29 - chromium-stdint.patch | 21 - chromium.spec | 417 +++++------ relax-libva-version.patch | 56 -- revert-gn-4960.patch | 655 ------------------ revert-gn-4980.patch | 134 ---- 119 files changed, 174 insertions(+), 7424 deletions(-) delete mode 100644 0001-vpx_sum_squares_2d_i16_neon-Make-s2-a-uint64x1_t.patch delete mode 100644 chromium-46.0.2490.71-notest.patch delete mode 100644 chromium-52.0.2743.116-unset-madv_free.patch delete mode 100644 chromium-52.0.2743.82-arm-webrtc.patch delete mode 100644 chromium-52.0.2743.82-master-prefs-path.patch delete mode 100644 chromium-55.0.2883.75-sandbox-pie.patch delete mode 100644 chromium-56.0.2924.87-fpermissive.patch delete mode 100644 chromium-56.0.2924.87-gcc5.patch delete mode 100644 chromium-59.0.3071.115-ucontext-fix.patch delete mode 100644 chromium-59.0.3071.86-ffmpeg-stdatomic.patch delete mode 100644 chromium-59.0.3071.86-nullfix.patch delete mode 100644 chromium-59.0.3071.86-system-clang.patch delete mode 100644 chromium-60.0.3112.78-gn-system.patch delete mode 100644 chromium-60.0.3112.78-last-commit-position.patch delete mode 100644 chromium-60.0.3112.78-no-zlib-mangle.patch delete mode 100644 chromium-60.0.3112.90-vulkan-force-c99.patch delete mode 100644 chromium-61.0.3163.79-aarch64-glibc-2.26.90.patch delete mode 100644 chromium-61.0.3163.79-fix-ffmpeg-aarch64.patch delete mode 100644 chromium-61.0.3163.79-setopaque.patch delete mode 100644 chromium-62.0.3202.62-correct-cplusplus-check.patch delete mode 100644 chromium-62.0.3202.62-dde535-gcc-fix.patch delete mode 100644 chromium-62.0.3202.62-enable-mp3.patch delete mode 100644 chromium-62.0.3202.62-epel7-no-nullptr-assignment-on-StructPtr.patch delete mode 100644 chromium-62.0.3202.62-gcc-nc.patch delete mode 100644 chromium-62.0.3202.62-gcc7.patch delete mode 100644 chromium-62.0.3202.62-rvalue-fix.patch delete mode 100644 chromium-63.0.3289.84-aarch64-glibc-2.26.90.patch delete mode 100644 chromium-63.0.3289.84-enable-mp3.patch delete mode 100644 chromium-63.0.3289.84-fix-ffmpeg-aarch64.patch delete mode 100644 chromium-63.0.3289.84-fix-ft-hb-unbundle.patch delete mode 100644 chromium-63.0.3289.84-gcc-round-fix.patch delete mode 100644 chromium-63.0.3289.84-gcc5-r3.patch delete mode 100644 chromium-63.0.3289.84-nolibc++.patch delete mode 100644 chromium-63.0.3289.84-setopaque.patch delete mode 100644 chromium-64.0.3282.119-enable-mp3.patch delete mode 100644 chromium-64.0.3282.119-gcc-constexpr-fix.patch delete mode 100644 chromium-64.0.3282.119-gcc-round-fix.patch delete mode 100644 chromium-64.0.3282.119-gcc5-r3.patch delete mode 100644 chromium-64.0.3282.119-gcc5.patch delete mode 100644 chromium-64.0.3282.119-gcc7.patch delete mode 100644 chromium-64.0.3282.119-memcpy-fix.patch delete mode 100644 chromium-64.0.3282.167-gcc8-fabi11.patch delete mode 100644 chromium-65.0.3325.146-Fix-non-copyable-class-s-optional-move.patch delete mode 100644 chromium-65.0.3325.146-GCC-IDB-methods-String-renamed-to-GetString.patch delete mode 100644 chromium-65.0.3325.146-GCC-PlaybackImageProvider-Settings-do-not-provide-co.patch delete mode 100644 chromium-65.0.3325.146-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch delete mode 100644 chromium-65.0.3325.146-GCC-explicitely-std-move-to-base-Optional-instead-of.patch delete mode 100644 chromium-65.0.3325.146-GCC-fully-declare-ConfigurationPolicyProvider.patch delete mode 100644 chromium-65.0.3325.146-Implement-conditional-copy-move-ctors-assign-operato.patch delete mode 100644 chromium-65.0.3325.146-Implement-converting-constructors-from-Optional-U.patch delete mode 100644 chromium-65.0.3325.146-Implement-value-forward-constructor.patch delete mode 100644 chromium-65.0.3325.146-Update-non-copy-non-move-assign-operators.patch delete mode 100644 chromium-65.0.3325.146-Use-affirmative-expression-in-base-Optional.patch delete mode 100644 chromium-65.0.3325.146-gcc5-r3.patch delete mode 100644 chromium-65.0.3325.146-gcc7.patch delete mode 100644 chromium-65.0.3325.146-workaround-gcc7-is_trivially_copy_constructable-failure.patch delete mode 100644 chromium-65.0.3325.146-wtf-oilpan-Remove-GC-checks-from-WTF-Optional-T.patch delete mode 100644 chromium-65.0.3325.146-wtf-vector-fix.patch delete mode 100644 chromium-65.0.3325.162-boolfix.patch delete mode 100644 chromium-65.0.3325.162-epel7-stdc++.patch delete mode 100644 chromium-65.0.3325.162-skia-aarch64-buildfix.patch delete mode 100644 chromium-66.0.3359.117-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch delete mode 100644 chromium-66.0.3359.117-GCC-do-not-use-initializer-list-for-NoDestructor-of-.patch delete mode 100644 chromium-66.0.3359.117-gcc-copy-constructor-fix.patch delete mode 100644 chromium-66.0.3359.117-gcc-optional-move-fixes.patch delete mode 100644 chromium-66.0.3359.117-gcc-vector-copy-constructor-fix.patch delete mode 100644 chromium-66.0.3359.117-gcc5-r3.patch delete mode 100644 chromium-66.0.3359.117-nounrar.patch delete mode 100644 chromium-66.0.3359.139-arm-init-fix.patch delete mode 100644 chromium-66.0.3359.170-gcc8-alignof.patch delete mode 100644 chromium-67.0.3396.62-boolfix.patch delete mode 100644 chromium-67.0.3396.62-crashpad-aarch64-buildfix.patch delete mode 100644 chromium-67.0.3396.62-epel7-use-old-python-exec-syntax.patch delete mode 100644 chromium-67.0.3396.62-skia-aarch64-buildfix.patch delete mode 100644 chromium-67.0.3396.87-fedora-user-agent.patch delete mode 100644 chromium-67.0.3396.99-py2-bootstrap.patch delete mode 100644 chromium-68.0.3440.106-fedora-user-agent.patch delete mode 100644 chromium-68.0.3440.106-fix-build-networking_private.patch delete mode 100644 chromium-68.0.3440.106-notest.patch delete mode 100644 chromium-68.0.3440.84-cors-string.patch delete mode 100644 chromium-68.0.3440.84-libjpeg.patch delete mode 100644 chromium-68.0.3440.84-libwebp-shim.patch delete mode 100644 chromium-68.0.3440.84-move-unique-ptr.patch delete mode 100644 chromium-69.0.3497.81-gcc8-alignof.patch delete mode 100644 chromium-69.0.3497.81-norar.patch delete mode 100644 chromium-69.0.3497.81-py2-bootstrap.patch delete mode 100644 chromium-69.0.3497.81-widevine-r2.patch delete mode 100644 chromium-70.0.3538.110-remove-sysroot-options.patch delete mode 100644 chromium-70.0.3538.77-harfbuzz2-fix.patch delete mode 100644 chromium-71-gcc-0.patch delete mode 100644 chromium-71.0.3578.98-el7-fix-noexcept.patch delete mode 100644 chromium-71.0.3578.98-norar.patch delete mode 100644 chromium-71.0.3578.98-remove-sysroot-options.patch delete mode 100644 chromium-71.0.3578.98-vaapi-libva1-compatibility.patch delete mode 100644 chromium-72.0.3626.121-fix-va-check.patch delete mode 100644 chromium-72.0.3626.121-norar.patch delete mode 100644 chromium-73-gcc-0.patch delete mode 100644 chromium-73-gcc-1.patch delete mode 100644 chromium-73-gcc-2.patch delete mode 100644 chromium-73-gcc-3.patch delete mode 100644 chromium-73-gcc-4.patch delete mode 100644 chromium-73-gcc-5.patch delete mode 100644 chromium-73-gcc-6.patch delete mode 100644 chromium-73.0.3683.103-glibc-2.29-clone-vfork.patch delete mode 100644 chromium-73.0.3683.75-aarch64-crashpad-limits.patch delete mode 100644 chromium-73.0.3683.75-el7-fix-noexcept.patch delete mode 100644 chromium-73.0.3683.75-no-header-hygiene.patch delete mode 100644 chromium-gcc5-r3.patch delete mode 100644 chromium-gcc8-r588316.patch delete mode 100644 chromium-gcc8-r588547.patch delete mode 100644 chromium-gcc8-r589614.patch delete mode 100644 chromium-gcc8-r591015.patch delete mode 100644 chromium-gn-bootstrap-r17.patch delete mode 100644 chromium-math.h-r0.patch delete mode 100644 chromium-stdint.patch delete mode 100644 relax-libva-version.patch delete mode 100644 revert-gn-4960.patch delete mode 100644 revert-gn-4980.patch diff --git a/0001-vpx_sum_squares_2d_i16_neon-Make-s2-a-uint64x1_t.patch b/0001-vpx_sum_squares_2d_i16_neon-Make-s2-a-uint64x1_t.patch deleted file mode 100644 index f73ded3..0000000 --- a/0001-vpx_sum_squares_2d_i16_neon-Make-s2-a-uint64x1_t.patch +++ /dev/null @@ -1,54 +0,0 @@ -Upstream-Status: Submitted - -GCC aarch64 build fix [this is actually a libvpx patch, not a Chromium one] - -Sent to: https://chromium-review.googlesource.com/c/webm/libvpx/+/1136449 - -Signed-off-by: Raphael Kubo da Costa ---- -From c20bd394f18c47bf133b51d6a40399273c3f24e0 Mon Sep 17 00:00:00 2001 -From: Raphael Kubo da Costa -Date: Fri, 13 Jul 2018 14:29:09 +0200 -Subject: [PATCH] vpx_sum_squares_2d_i16_neon(): Make |s2| a uint64x1_t. - -This fixes the build with at least GCC 7.3, where it was previously failing -with: - -../../third_party/libvpx/source/libvpx/vpx_dsp/arm/sum_squares_neon.c: In function 'vpx_sum_squares_2d_i16_neon': -../../third_party/libvpx/source/libvpx/vpx_dsp/arm/sum_squares_neon.c:34:5: note: use -flax-vector-conversions to permit conversions between vectors with differing element types or numbers of subparts - s2 = vpaddl_u32(s1); - ^~ -../../third_party/libvpx/source/libvpx/vpx_dsp/arm/sum_squares_neon.c:34:8: error: incompatible types when assigning to type 'int64x1_t' from type 'uint64x1_t' - s2 = vpaddl_u32(s1); - ^ -../../third_party/libvpx/source/libvpx/vpx_dsp/arm/sum_squares_neon.c:81:8: error: incompatible types when assigning to type 'int64x1_t' from type 'uint64x1_t' - s2 = vadd_u64(vget_low_u64(s1), vget_high_u64(s1)); - ^ -../../third_party/libvpx/source/libvpx/vpx_dsp/arm/sum_squares_neon.c:84:24: error: incompatible type for argument 1 of 'vget_lane_u64' - return vget_lane_u64(s2, 0); - ^~ - -The generated assembly was verified to remain identical with both GCC and -LLVM. - -Change-Id: I2778428ee1fee0a674d0d4910347c2a717de21ac ---- - vpx_dsp/arm/sum_squares_neon.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/vpx_dsp/arm/sum_squares_neon.c b/vpx_dsp/arm/sum_squares_neon.c -index 8942ba83b..cfefad993 100644 ---- a/third_party/libvpx/source/libvpx/vpx_dsp/arm/sum_squares_neon.c -+++ b/third_party/libvpx/source/libvpx/vpx_dsp/arm/sum_squares_neon.c -@@ -14,7 +14,7 @@ - #include "./vpx_dsp_rtcd.h" - - uint64_t vpx_sum_squares_2d_i16_neon(const int16_t *src, int stride, int size) { -- int64x1_t s2; -+ uint64x1_t s2; - - if (size == 4) { - int16x4_t s[4]; --- -2.14.4 - diff --git a/chromium-46.0.2490.71-notest.patch b/chromium-46.0.2490.71-notest.patch deleted file mode 100644 index e4e3448..0000000 --- a/chromium-46.0.2490.71-notest.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-46.0.2490.71/chrome/test/data/webui_test_resources.grd.notest chromium-46.0.2490.71/chrome/test/data/webui_test_resources.grd ---- chromium-46.0.2490.71/chrome/test/data/webui_test_resources.grd.notest 2015-10-16 02:01:56.644149741 -0400 -+++ chromium-46.0.2490.71/chrome/test/data/webui_test_resources.grd 2015-10-16 02:02:36.217285227 -0400 -@@ -8,7 +8,6 @@ - - - -- - - - diff --git a/chromium-52.0.2743.116-unset-madv_free.patch b/chromium-52.0.2743.116-unset-madv_free.patch deleted file mode 100644 index 2867c79..0000000 --- a/chromium-52.0.2743.116-unset-madv_free.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -up chromium-52.0.2743.116/third_party/WebKit/Source/wtf/allocator/PageAllocator.cpp.madv_free chromium-52.0.2743.116/third_party/WebKit/Source/wtf/allocator/PageAllocator.cpp ---- chromium-52.0.2743.116/third_party/WebKit/Source/wtf/allocator/PageAllocator.cpp.madv_free 2016-08-15 13:07:29.279655676 -0400 -+++ chromium-52.0.2743.116/third_party/WebKit/Source/wtf/allocator/PageAllocator.cpp 2016-08-15 13:08:38.447317416 -0400 -@@ -41,6 +41,11 @@ - #include - #include - -+#if OS(LINUX) && defined(MADV_FREE) -+// Added in Linux 4.5, but it breaks the sandbox. -+#undef MADV_FREE -+#endif -+ - #ifndef MADV_FREE - #define MADV_FREE MADV_DONTNEED - #endif diff --git a/chromium-52.0.2743.82-arm-webrtc.patch b/chromium-52.0.2743.82-arm-webrtc.patch deleted file mode 100644 index f1a6629..0000000 --- a/chromium-52.0.2743.82-arm-webrtc.patch +++ /dev/null @@ -1,51 +0,0 @@ -diff -up chromium-52.0.2743.82/third_party/webrtc/system_wrappers/source/cpu_features.cc.armwebrtc chromium-52.0.2743.82/third_party/webrtc/system_wrappers/source/cpu_features.cc ---- chromium-52.0.2743.82/third_party/webrtc/system_wrappers/source/cpu_features.cc.armwebrtc 2016-08-03 09:30:53.922861020 +0200 -+++ chromium-52.0.2743.82/third_party/webrtc/system_wrappers/source/cpu_features.cc 2016-08-03 09:32:00.337498174 +0200 -@@ -18,6 +18,47 @@ - - #include "webrtc/typedefs.h" - -+#include -+#ifdef __arm__ -+#include -+#include -+#include -+#include -+#endif -+ -+#ifdef __arm__ -+uint64_t WebRtc_GetCPUFeaturesARM() { -+ static bool detected = false; -+ static uint64_t have_neon = 0; -+ -+ int fd; -+ Elf32_auxv_t auxv; -+ unsigned int hwcaps; -+ -+ if (!detected) { -+ int fd; -+ Elf32_auxv_t auxv; -+ unsigned int hwcaps; -+ -+ fd = open("/proc/self/auxv", O_RDONLY); -+ if (fd >= 0) { -+ while (read(fd, &auxv, sizeof(Elf32_auxv_t)) == sizeof(Elf32_auxv_t)) { -+ if (auxv.a_type == AT_HWCAP) { -+ have_neon = (auxv.a_un.a_val & HWCAP_NEON) ? kCPUFeatureNEON : 0; -+ break; -+ } -+ } -+ close (fd); -+ } else { -+ have_neon = 0; -+ } -+ detected = true; -+ } -+ -+ return 0 | have_neon; // others here as we need them -+} -+#endif -+ - // No CPU feature is available => straight C path. - int GetCPUInfoNoASM(CPUFeature feature) { - (void)feature; diff --git a/chromium-52.0.2743.82-master-prefs-path.patch b/chromium-52.0.2743.82-master-prefs-path.patch deleted file mode 100644 index 6ddd26f..0000000 --- a/chromium-52.0.2743.82-master-prefs-path.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -up chromium-52.0.2743.82/chrome/browser/first_run/first_run_internal_linux.cc.etc chromium-52.0.2743.82/chrome/browser/first_run/first_run_internal_linux.cc ---- chromium-52.0.2743.82/chrome/browser/first_run/first_run_internal_linux.cc.etc 2016-08-03 10:15:57.980692109 +0200 -+++ chromium-52.0.2743.82/chrome/browser/first_run/first_run_internal_linux.cc 2016-08-03 10:16:44.553325229 +0200 -@@ -19,9 +19,9 @@ bool IsOrganicFirstRun() { - - base::FilePath MasterPrefsPath() { - // The standard location of the master prefs is next to the chrome binary. -+ // ...but we patch it to use /etc/chromium - base::FilePath master_prefs; -- if (!PathService::Get(base::DIR_EXE, &master_prefs)) -- return base::FilePath(); -+ master_prefs = base::FilePath("/etc/chromium"); - return master_prefs.AppendASCII(installer::kDefaultMasterPrefs); - } - diff --git a/chromium-55.0.2883.75-sandbox-pie.patch b/chromium-55.0.2883.75-sandbox-pie.patch deleted file mode 100644 index 6aae0b0..0000000 --- a/chromium-55.0.2883.75-sandbox-pie.patch +++ /dev/null @@ -1,30 +0,0 @@ -diff -up chromium-55.0.2883.75/sandbox/linux/BUILD.gn.sandboxpie chromium-55.0.2883.75/sandbox/linux/BUILD.gn ---- chromium-55.0.2883.75/sandbox/linux/BUILD.gn.sandboxpie 2016-12-01 18:02:17.000000000 -0500 -+++ chromium-55.0.2883.75/sandbox/linux/BUILD.gn 2016-12-12 16:26:06.863426221 -0500 -@@ -279,11 +279,17 @@ if (is_linux) { - # For ULLONG_MAX - "-std=gnu99", - -+ "-fPIE", -+ - # These files have a suspicious comparison. - # TODO fix this and re-enable this warning. - "-Wno-sign-compare", - ] - -+ ldflags = [ -+ "-pie", -+ ] -+ - import("//build/config/compiler/compiler.gni") - import("//build/config/sanitizers/sanitizers.gni") - if (is_component_build || using_sanitizer) { -@@ -293,7 +299,7 @@ if (is_linux) { - # other flags that executable_config might have. - configs -= [ "//build/config:executable_config" ] - if (!use_gold) { -- ldflags = [ "-Wl,--disable-new-dtags" ] -+ ldflags += [ "-Wl,--disable-new-dtags" ] - } - } - diff --git a/chromium-56.0.2924.87-fpermissive.patch b/chromium-56.0.2924.87-fpermissive.patch deleted file mode 100644 index be68cf9..0000000 --- a/chromium-56.0.2924.87-fpermissive.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -up chromium-56.0.2924.87/third_party/WebKit/Source/BUILD.gn.permissive chromium-56.0.2924.87/third_party/WebKit/Source/BUILD.gn ---- chromium-56.0.2924.87/third_party/WebKit/Source/BUILD.gn.permissive 2017-02-13 12:32:23.419665971 -0500 -+++ chromium-56.0.2924.87/third_party/WebKit/Source/BUILD.gn 2017-02-13 12:33:16.146629190 -0500 -@@ -54,6 +54,9 @@ config("config") { - cflags = [] - defines = [] - -+ # error: there are no arguments to 'swapAnchor' that depend on a template parameter, so a declaration of 'swapAnchor' must be available [-fpermissive] -+ cflags += [ "-fpermissive" ] -+ - if (is_win) { - cflags += [ - "/wd4305", # Truncation from 'type1' to 'type2'. diff --git a/chromium-56.0.2924.87-gcc5.patch b/chromium-56.0.2924.87-gcc5.patch deleted file mode 100644 index 902f92b..0000000 --- a/chromium-56.0.2924.87-gcc5.patch +++ /dev/null @@ -1,354 +0,0 @@ -diff -up chromium-56.0.2924.87/third_party/cld_2/src/internal/cld_generated_cjk_uni_prop_80.cc.gcc5 chromium-56.0.2924.87/third_party/cld_2/src/internal/cld_generated_cjk_uni_prop_80.cc ---- chromium-56.0.2924.87/third_party/cld_2/src/internal/cld_generated_cjk_uni_prop_80.cc.gcc5 2017-02-01 21:03:47.000000000 -0500 -+++ chromium-56.0.2924.87/third_party/cld_2/src/internal/cld_generated_cjk_uni_prop_80.cc 2017-02-09 10:38:38.319790897 -0500 -@@ -165,8 +165,8 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - // state[16 + 2] 0x000000 Byte 2 of 3 (relative offsets) - X__,X__,X__,X__,X__,X__,X__,X__, X__,X__,X__,X__,X__,X__,X__,X__, - X__,X__,X__,X__,X__,X__,X__,X__, X__,X__,X__,X__,X__,X__,X__,X__, ---14,-14,-14,-14,-14,-14,-14,-14, -14,-14,-14,-14,-14,-14,-14,-14, ---14,-14,-14,-14,-14,-14,-14,-14, -14,-14,-14,-14,-14,-14,-14,-14, -+(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14, (uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14, -+(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14, (uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14, - - // state[17 + 2] 0x0031c0 Byte 3 of 3 (property) - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -@@ -259,10 +259,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 229,229,229, 3,208, 0,229, 5, 233, 0,229,229,229,208,229,229, - - // state[32 + 2] 0x002000 Byte 2 of 3 (relative offsets) ---30,-30,-30,-30,-30,-30,-30,-30, -30,-30,-30,-30,-30,-30,-30,-30, ---30,-30,-30,-30,-30,-30,-30,-30, -30,-30,-30,-30,-30,-30,-30,-30, ---30,-30,-30,-30,-30,-30,-30,-30, -30,-30,-30,-30,-30,-30,-30,-30, ---30,-30,-30,-30,-30,-30,-30,-30, -30,-30,-30,-30,-30,-30,-30,-30, -+(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, (uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, -+(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, (uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, -+(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, (uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, -+(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, (uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, - - // state[33 + 2] 0x003780 Byte 3 of 3 (property) - 229,208,229,229,208,229,229,229, 208,208,208,208,208, 4, 6,208, -@@ -355,10 +355,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 228,229,229,229,229,233,233, 6, 208,229, 3,229,233, 6, 6, 0, - - // state[48 + 2] 0x001000 Byte 2 of 3 (relative offsets) ---46,-46,-46,-46,-42,-41,-40,-39, -46,-46,-46,-46,-46,-46,-46,-46, ---46,-46,-46,-46,-46,-46,-46,-46, -46,-46,-46,-46,-46,-46,-46,-46, ---46,-46,-46,-46,-46,-46,-46,-46, -46,-46,-46,-46,-46,-46,-46,-46, ---46,-46,-46,-46,-46,-46,-46,-46, -46,-46,-46,-46,-46,-46,-46,-46, -+(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-42,(uint8)-41,(uint8)-40,(uint8)-39, (uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, -+(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, (uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, -+(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, (uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, -+(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, (uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, - - // state[49 + 2] 0x003b40 Byte 3 of 3 (property) - 6,227,208,233,208, 3, 3,208, 208,229, 0,229,233,219, 0, 6, -@@ -451,10 +451,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 229,208,208,208,217,208,229,229, 229,229,208,217,208,229,229,229, - - // state[64 + 2] 0x003000 Byte 2 of 3 (relative offsets) ---54,-53,-52,-51,-50,-58,-49,-47, -62,-62,-62,-62,-62,-62,-62,-62, ---46,-45,-44,-43,-42,-41,-40,-39, -38,-37,-36,-35,-34,-33,-31,-30, ---29,-28,-27,-26,-25,-24,-23,-22, -21,-20,-19,-18,-17,-15,-14,-13, ---12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, -+(uint8)-54,(uint8)-53,(uint8)-52,(uint8)-51,(uint8)-50,(uint8)-58,(uint8)-49,(uint8)-47, (uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62, -+(uint8)-46,(uint8)-45,(uint8)-44,(uint8)-43,(uint8)-42,(uint8)-41,(uint8)-40,(uint8)-39, (uint8)-38,(uint8)-37,(uint8)-36,(uint8)-35,(uint8)-34,(uint8)-33,(uint8)-31,(uint8)-30, -+(uint8)-29,(uint8)-28,(uint8)-27,(uint8)-26,(uint8)-25,(uint8)-24,(uint8)-23,(uint8)-22, (uint8)-21,(uint8)-20,(uint8)-19,(uint8)-18,(uint8)-17,(uint8)-15,(uint8)-14,(uint8)-13, -+(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, - - // state[65 + 2] 0x003f00 Byte 3 of 3 (property) - 217,217,208, 3,208,217,208,208, 6,229,208,228,229,229,208,229, -@@ -547,10 +547,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 229,208,229,229,208,229,233, 0, 208,208,229,208,227,229,229,229, - - // state[80 + 2] 0x004000 Byte 2 of 3 (relative offsets) ---11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, -+(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, - 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, -- 38, 39, 40, 41, 42, 43, 44,-78, 45, 46, 47, 48, 49, 50, 51, 52, -+ 38, 39, 40, 41, 42, 43, 44,(uint8)-78, 45, 46, 47, 48, 49, 50, 51, 52, - - // state[81 + 2] 0x0042c0 Byte 3 of 3 (property) - 229, 0,229,229,229, 3, 4, 4, 229,229,229,229,208,229, 0,208, -@@ -931,7 +931,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 0,142, 98, 28,117,206,212,212, 220, 15, 0,231,199,231,111, 28, - - // state[144 + 2] 0x005000 Byte 2 of 3 (relative offsets) ---11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, -+(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, - 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, - 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, -@@ -1315,7 +1315,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 16, 15,211,118, 0,231, 68,231, 0, 99,161, 0,115,221,144,140, - - // state[208 + 2] 0x006000 Byte 2 of 3 (relative offsets) ---10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, -+(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, - 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, - 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, -@@ -1699,7 +1699,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 119, 16, 51, 0, 0, 68,136, 72, 144,118, 87,201,191,136, 78,233, - - // state[272 + 2] 0x007000 Byte 2 of 3 (relative offsets) -- -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, -+ (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, - 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, - 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, -@@ -2083,7 +2083,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 212,212, 0,126,140,220,220, 0, 0, 0,127,118,106, 0,199, 0, - - // state[336 + 2] 0x008000 Byte 2 of 3 (relative offsets) -- -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, 8, -+ (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, - 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, -@@ -2467,7 +2467,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 0,122, 0,231,100,232, 0, 0, 117, 0,206,231, 0, 0,231, 0, - - // state[400 + 2] 0x009000 Byte 2 of 3 (relative offsets) -- -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, 8, 9, -+ (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, 9, - 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, - 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, -@@ -2851,10 +2851,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - - // state[464 + 2] 0x00a000 Byte 2 of 3 (relative offsets) -- -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -- -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -- -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -- -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -+ (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, -+ (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, -+ (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, -+ (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, - - // state[465 + 2] 0x000080 Byte 2 of 2 (property) - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -@@ -2947,10 +2947,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 208,208,208,208, 5, 6,208, 2, 0, 6, 6, 5,208,208,208, 6, - - // state[480 + 2] 0x00b000 Byte 2 of 3 (relative offsets) ---20,-20,-20,-20,-20,-20,-20,-20, -20,-20,-20,-20,-20,-20,-20,-20, ---20,-20,-20,-20,-20,-20,-20,-20, -20,-20,-20,-20,-20,-20,-20,-20, ---20,-20,-20,-20,-20,-20,-20,-20, -20,-20,-20,-20,-20,-20,-20,-20, ---20,-20,-20,-20,-20,-20,-20,-20, -20,-20,-20,-20,-20,-20,-20,-20, -+(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, (uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, -+(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, (uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, -+(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, (uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, -+(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, (uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, - - // state[481 + 2] 0x020100 Byte 4 of 4 (property) - 2, 6, 5, 6, 5,229, 5,208, 208,208,208,208,208,208,208,229, -@@ -3043,10 +3043,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 208,208, 5, 5, 5,208,208, 2, 229, 5, 5, 5, 5, 5, 6,208, - - // state[496 + 2] 0x00d000 Byte 2 of 3 (relative offsets) ---35,-35,-35,-35,-35,-35,-35,-35, -35,-35,-35,-35,-35,-35,-35,-35, ---35,-35,-35,-35,-35,-35,-35,-35, -35,-35,-35,-35,-35,-35,-34,-33, ---33,-33,-33,-33,-33,-33,-33,-33, -33,-33,-33,-33,-33,-33,-33,-33, ---33,-33,-33,-33,-33,-33,-33,-33, -33,-33,-33,-33,-33,-33,-33,-33, -+(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35, (uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35, -+(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35, (uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-34,(uint8)-33, -+(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33, (uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33, -+(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33, (uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33, - - // state[497 + 2] 0x0204c0 Byte 4 of 4 (property) - 2, 2, 5, 5, 5, 2,208, 2, 5, 5, 6,208,208, 5, 5, 5, -@@ -3139,10 +3139,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 208,208, 5, 5, 5, 5, 6, 6, 208,208, 2,208,208,208,208,208, - - // state[512 + 2] 0x00f000 Byte 2 of 3 (relative offsets) ---47,-47,-47,-47,-47,-47,-47,-47, -47,-47,-47,-47,-47,-47,-47,-47, ---47,-47,-47,-47,-47,-47,-47,-47, -47,-47,-47,-47,-47,-47,-47,-47, ---47,-47,-47,-47,-46,-45,-44,-43, -42,-41,-44,-40,-47,-47,-47,-47, ---47,-47,-47,-47,-47,-47,-47,-47, -47,-47,-47,-47,-47,-39,-38,-37, -+(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, (uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, -+(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, (uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, -+(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-46,(uint8)-45,(uint8)-44,(uint8)-43, (uint8)-42,(uint8)-41,(uint8)-44,(uint8)-40,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, -+(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, (uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-39,(uint8)-38,(uint8)-37, - - // state[513 + 2] 0x020880 Byte 4 of 4 (property) - 5, 5, 5, 6,208,208,208,208, 208,208, 5, 5, 6, 6,208,208, -@@ -3235,10 +3235,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 5, 6,208,218,208,208,208,218, 208, 6,227,229, 6, 6, 6,208, - - // state[528 + 2] 0x020000 Byte 3 of 4 (relative offsets) ---52,-51,-50,-49,-47,-46,-45,-44, -43,-42,-41,-40,-39,-38,-37,-36, ---35,-34,-33,-31,-30,-29,-28,-27, -26,-25,-24,-23,-22,-21,-20,-19, ---18,-17,-15,-14,-13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -- -1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, -+(uint8)-52,(uint8)-51,(uint8)-50,(uint8)-49,(uint8)-47,(uint8)-46,(uint8)-45,(uint8)-44, (uint8)-43,(uint8)-42,(uint8)-41,(uint8)-40,(uint8)-39,(uint8)-38,(uint8)-37,(uint8)-36, -+(uint8)-35,(uint8)-34,(uint8)-33,(uint8)-31,(uint8)-30,(uint8)-29,(uint8)-28,(uint8)-27, (uint8)-26,(uint8)-25,(uint8)-24,(uint8)-23,(uint8)-22,(uint8)-21,(uint8)-20,(uint8)-19, -+(uint8)-18,(uint8)-17,(uint8)-15,(uint8)-14,(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, -+ (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, - - // state[529 + 2] 0x020c40 Byte 4 of 4 (property) - 227, 5, 5, 5, 2, 2, 2, 2, 213, 2, 2, 2, 2, 2,208, 6, -@@ -3427,7 +3427,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 208,208,208,208,208,208,208,208, 208, 6, 6, 6, 6, 2, 5, 5, - - // state[560 + 2] 0x021000 Byte 3 of 4 (relative offsets) ---16,-15,-14,-13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, -+(uint8)-16,(uint8)-15,(uint8)-14,(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, - 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, -@@ -3811,7 +3811,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 5, 5, 5, 6, 6, 6, 5,208, 208,229,208,208, 5, 5, 5, 5, - - // state[624 + 2] 0x022000 Byte 3 of 4 (relative offsets) ---15,-14,-13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, -+(uint8)-15,(uint8)-14,(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, - 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, - 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, - 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, -@@ -4195,7 +4195,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 6, 6, 4, 5,208,208,208,208, 208,208,229, 6, 5, 6, 6, 6, - - // state[688 + 2] 0x023000 Byte 3 of 4 (relative offsets) ---14,-13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, -+(uint8)-14,(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, - 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, - 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, - 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -@@ -4579,7 +4579,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 5, 5, 5, 5, 5, 5, 5, 6, 208,208,208,208,208,208, 6, 6, - - // state[752 + 2] 0x024000 Byte 3 of 4 (relative offsets) ---13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, -+(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, - 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, - 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, - 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, -@@ -4963,7 +4963,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 229, 6, 2, 2, 2, 2, 2, 2, 2, 2, 2, 5, 2, 2, 6,229, - - // state[816 + 2] 0x025000 Byte 3 of 4 (relative offsets) ---12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, -+(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, - 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, - 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, - 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, -@@ -5347,7 +5347,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 6, 6, 6, 5, 5, 5, 5, 6, 6, 6, 3, 6,229,208,208,229, - - // state[880 + 2] 0x026000 Byte 3 of 4 (relative offsets) ---11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, -+(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, - 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, - 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, -@@ -5731,7 +5731,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 208, 6, 6,208,208,208,208,208, 6, 6, 6,216, 5, 5, 5, 5, - - // state[944 + 2] 0x027000 Byte 3 of 4 (relative offsets) ---10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, -+(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, - 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, - 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, -@@ -6115,7 +6115,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 5, 5, 5, 6,208,208, 6, 6, 208,229,208,208,208, 5, 5, 5, - - // state[1008 + 2] 0x028000 Byte 3 of 4 (relative offsets) -- -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, -+ (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, - 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, - 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, -@@ -6499,7 +6499,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 208,208, 5, 5, 6,208,208, 5, 208,208,208, 6,208, 6,208,208, - - // state[1072 + 2] 0x029000 Byte 3 of 4 (relative offsets) -- -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, 8, -+ (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, - 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, -@@ -6883,7 +6883,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 229,229,229,229,208,208,208,229, 208,208,208,229, 0,229,208,208, - - // state[1136 + 2] 0x02a000 Byte 3 of 4 (relative offsets) -- -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, 8, 9, -+ (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, 9, - 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 22, 22, 22, - 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, - 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, -@@ -7075,10 +7075,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, - - // state[1168 + 2] 0x02f000 Byte 3 of 4 (relative offsets) -- -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -- -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -- -8, -7, -6, -5, -4, -3, -2, -1, 1, -9, -9, -9, -9, -9, -9, -9, -- -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -+ (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, -+ (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, -+ (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, -+ (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, - - // state[1169 + 2] 0x02fa00 Byte 4 of 4 (property) - 217, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,217, 5, 5, -diff -up chromium-56.0.2924.87/third_party/webgl/src/specs/latest/2.0/webgl2.idl.gcc5 chromium-56.0.2924.87/third_party/webgl/src/specs/latest/2.0/webgl2.idl ---- chromium-56.0.2924.87/third_party/webgl/src/specs/latest/2.0/webgl2.idl.gcc5 2017-02-01 21:03:57.000000000 -0500 -+++ chromium-56.0.2924.87/third_party/webgl/src/specs/latest/2.0/webgl2.idl 2017-02-09 10:38:38.380789675 -0500 -@@ -265,7 +265,7 @@ interface WebGL2RenderingContextBase - 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 -up chromium-56.0.2924.87/third_party/WebKit/Source/core/dom/NodeFilter.h.gcc5 chromium-56.0.2924.87/third_party/WebKit/Source/core/dom/NodeFilter.h ---- chromium-56.0.2924.87/third_party/WebKit/Source/core/dom/NodeFilter.h.gcc5 2017-02-01 21:03:09.000000000 -0500 -+++ chromium-56.0.2924.87/third_party/WebKit/Source/core/dom/NodeFilter.h 2017-02-09 10:38:38.387789535 -0500 -@@ -49,7 +49,7 @@ class NodeFilter final : public GarbageC - * to the value of NodeType for the equivalent node type. - */ - enum { -- kShowAll = 0xFFFFFFFF, -+ kShowAll = 256 /* 0xFFFFFFFF */, - kShowElement = 0x00000001, - kShowAttribute = 0x00000002, - kShowText = 0x00000004, -diff -up chromium-56.0.2924.87/third_party/WebKit/Source/core/dom/NodeFilter.idl.gcc5 chromium-56.0.2924.87/third_party/WebKit/Source/core/dom/NodeFilter.idl ---- chromium-56.0.2924.87/third_party/WebKit/Source/core/dom/NodeFilter.idl.gcc5 2017-02-01 21:03:09.000000000 -0500 -+++ chromium-56.0.2924.87/third_party/WebKit/Source/core/dom/NodeFilter.idl 2017-02-09 10:38:38.394789395 -0500 -@@ -30,7 +30,7 @@ - const unsigned short FILTER_SKIP = 3; - - // Constants for whatToShow -- const unsigned long SHOW_ALL = 0xFFFFFFFF; -+ const unsigned long SHOW_ALL = 256; // 0xFFFFFFFF - const unsigned long SHOW_ELEMENT = 0x1; - const unsigned long SHOW_ATTRIBUTE = 0x2; // historical - const unsigned long SHOW_TEXT = 0x4; -diff -up chromium-56.0.2924.87/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl.gcc5 chromium-56.0.2924.87/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl ---- chromium-56.0.2924.87/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl.gcc5 2017-02-01 21:03:09.000000000 -0500 -+++ chromium-56.0.2924.87/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl 2017-02-09 11:07:32.828682863 -0500 -@@ -239,7 +239,7 @@ typedef unsigned long long GLuint64; - 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; -@@ -269,7 +269,7 @@ typedef unsigned long long GLuint64; - const GLenum TEXTURE_IMMUTABLE_FORMAT = 0x912F; - const GLenum MAX_ELEMENT_INDEX = 0x8D6B; - const GLenum TEXTURE_IMMUTABLE_LEVELS = 0x82DF; -- const GLint TIMEOUT_IGNORED = -1; -+ const GLint TIMEOUT_IGNORED = 256; - - /* WebGL-specific enums */ - const GLenum MAX_CLIENT_WAIT_TIMEOUT_WEBGL = 0x9247; diff --git a/chromium-59.0.3071.115-ucontext-fix.patch b/chromium-59.0.3071.115-ucontext-fix.patch deleted file mode 100644 index 96bfadb..0000000 --- a/chromium-59.0.3071.115-ucontext-fix.patch +++ /dev/null @@ -1,214 +0,0 @@ -diff -up chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc.ucontextfix chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc ---- chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc.ucontextfix 2017-07-12 15:23:33.019591380 -0400 -+++ chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc 2017-07-12 15:32:52.069197546 -0400 -@@ -36,19 +36,19 @@ namespace google_breakpad { - - // Minidump defines register structures which are different from the raw - // structures which we get from the kernel. These are platform specific --// functions to juggle the ucontext and user structures into minidump format. -+// functions to juggle the ucontext_t and user structures into minidump format. - - #if defined(__i386__) - --uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) { -+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) { - return uc->uc_mcontext.gregs[REG_ESP]; - } - --uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) { -+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) { - return uc->uc_mcontext.gregs[REG_EIP]; - } - --void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc, -+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc, - const struct _libc_fpstate* fp) { - const greg_t* regs = uc->uc_mcontext.gregs; - -@@ -88,15 +88,15 @@ void UContextReader::FillCPUContext(RawC - - #elif defined(__x86_64) - --uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) { -+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) { - return uc->uc_mcontext.gregs[REG_RSP]; - } - --uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) { -+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) { - return uc->uc_mcontext.gregs[REG_RIP]; - } - --void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc, -+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc, - const struct _libc_fpstate* fpregs) { - const greg_t* regs = uc->uc_mcontext.gregs; - -@@ -145,15 +145,15 @@ void UContextReader::FillCPUContext(RawC - - #elif defined(__ARM_EABI__) - --uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) { -+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) { - return uc->uc_mcontext.arm_sp; - } - --uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) { -+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) { - return uc->uc_mcontext.arm_pc; - } - --void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc) { -+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc) { - out->context_flags = MD_CONTEXT_ARM_FULL; - - out->iregs[0] = uc->uc_mcontext.arm_r0; -@@ -184,15 +184,15 @@ void UContextReader::FillCPUContext(RawC - - #elif defined(__aarch64__) - --uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) { -+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) { - return uc->uc_mcontext.sp; - } - --uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) { -+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) { - return uc->uc_mcontext.pc; - } - --void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc, -+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc, - const struct fpsimd_context* fpregs) { - out->context_flags = MD_CONTEXT_ARM64_FULL; - -@@ -210,15 +210,15 @@ void UContextReader::FillCPUContext(RawC - - #elif defined(__mips__) - --uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) { -+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) { - return uc->uc_mcontext.gregs[MD_CONTEXT_MIPS_REG_SP]; - } - --uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) { -+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) { - return uc->uc_mcontext.pc; - } - --void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc) { -+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc) { - #if _MIPS_SIM == _ABI64 - out->context_flags = MD_CONTEXT_MIPS64_FULL; - #elif _MIPS_SIM == _ABIO32 -diff -up chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h.ucontextfix chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h ---- chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h.ucontextfix 2017-07-12 15:33:08.486806743 -0400 -+++ chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h 2017-07-12 15:33:57.299644808 -0400 -@@ -39,23 +39,23 @@ - - namespace google_breakpad { - --// Wraps platform-dependent implementations of accessors to ucontext structs. -+// Wraps platform-dependent implementations of accessors to ucontext_t structs. - struct UContextReader { -- static uintptr_t GetStackPointer(const struct ucontext* uc); -+ static uintptr_t GetStackPointer(const ucontext_t* uc); - -- static uintptr_t GetInstructionPointer(const struct ucontext* uc); -+ static uintptr_t GetInstructionPointer(const ucontext_t* uc); - -- // Juggle a arch-specific ucontext into a minidump format -+ // Juggle a arch-specific ucontext_t into a minidump format - // out: the minidump structure - // info: the collection of register structures. - #if defined(__i386__) || defined(__x86_64) -- static void FillCPUContext(RawContextCPU *out, const ucontext *uc, -+ static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc, - const struct _libc_fpstate* fp); - #elif defined(__aarch64__) -- static void FillCPUContext(RawContextCPU *out, const ucontext *uc, -+ static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc, - const struct fpsimd_context* fpregs); - #else -- static void FillCPUContext(RawContextCPU *out, const ucontext *uc); -+ static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc); - #endif - }; - -diff -up chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.cc.ucontextfix chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.cc ---- chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.cc.ucontextfix 2017-07-12 15:34:09.094364048 -0400 -+++ chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.cc 2017-07-12 15:35:36.483283853 -0400 -@@ -439,9 +439,9 @@ bool ExceptionHandler::HandleSignal(int - // Fill in all the holes in the struct to make Valgrind happy. - memset(&g_crash_context_, 0, sizeof(g_crash_context_)); - memcpy(&g_crash_context_.siginfo, info, sizeof(siginfo_t)); -- memcpy(&g_crash_context_.context, uc, sizeof(struct ucontext)); -+ memcpy(&g_crash_context_.context, uc, sizeof(ucontext_t)); - #if defined(__aarch64__) -- struct ucontext* uc_ptr = (struct ucontext*)uc; -+ ucontext_t* uc_ptr = (ucontext_t*)uc; - struct fpsimd_context* fp_ptr = - (struct fpsimd_context*)&uc_ptr->uc_mcontext.__reserved; - if (fp_ptr->head.magic == FPSIMD_MAGIC) { -@@ -450,9 +450,9 @@ bool ExceptionHandler::HandleSignal(int - } - #elif !defined(__ARM_EABI__) && !defined(__mips__) - // FP state is not part of user ABI on ARM Linux. -- // In case of MIPS Linux FP state is already part of struct ucontext -+ // In case of MIPS Linux FP state is already part of ucontext_t - // and 'float_state' is not a member of CrashContext. -- struct ucontext* uc_ptr = (struct ucontext*)uc; -+ ucontext_t* uc_ptr = (ucontext_t*)uc; - if (uc_ptr->uc_mcontext.fpregs) { - memcpy(&g_crash_context_.float_state, uc_ptr->uc_mcontext.fpregs, - sizeof(g_crash_context_.float_state)); -@@ -476,7 +476,7 @@ bool ExceptionHandler::SimulateSignalDel - // ExceptionHandler::HandleSignal(). - siginfo.si_code = SI_USER; - siginfo.si_pid = getpid(); -- struct ucontext context; -+ ucontext_t context; - getcontext(&context); - return HandleSignal(sig, &siginfo, &context); - } -diff -up chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.h.ucontextfix chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.h ---- chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.h.ucontextfix 2017-07-12 15:35:48.559996380 -0400 -+++ chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.h 2017-07-12 15:36:32.615948562 -0400 -@@ -191,11 +191,11 @@ class ExceptionHandler { - struct CrashContext { - siginfo_t siginfo; - pid_t tid; // the crashing thread. -- struct ucontext context; -+ ucontext_t context; - #if !defined(__ARM_EABI__) && !defined(__mips__) - // #ifdef this out because FP state is not part of user ABI for Linux ARM. - // In case of MIPS Linux FP state is already part of struct -- // ucontext so 'float_state' is not required. -+ // ucontext_t so 'float_state' is not required. - fpstate_t float_state; - #endif - }; -diff -up chromium-59.0.3071.115/breakpad/src/client/linux/microdump_writer/microdump_writer.cc.ucontextfix chromium-59.0.3071.115/breakpad/src/client/linux/microdump_writer/microdump_writer.cc ---- chromium-59.0.3071.115/breakpad/src/client/linux/microdump_writer/microdump_writer.cc.ucontextfix 2017-07-12 15:37:26.232674196 -0400 -+++ chromium-59.0.3071.115/breakpad/src/client/linux/microdump_writer/microdump_writer.cc 2017-07-12 15:37:39.032369973 -0400 -@@ -579,7 +579,7 @@ class MicrodumpWriter { - - void* Alloc(unsigned bytes) { return dumper_->allocator()->Alloc(bytes); } - -- const struct ucontext* const ucontext_; -+ const ucontext_t* const ucontext_; - #if !defined(__ARM_EABI__) && !defined(__mips__) - const google_breakpad::fpstate_t* const float_state_; - #endif -diff -up chromium-59.0.3071.115/breakpad/src/client/linux/minidump_writer/minidump_writer.cc.ucontextfix chromium-59.0.3071.115/breakpad/src/client/linux/minidump_writer/minidump_writer.cc ---- chromium-59.0.3071.115/breakpad/src/client/linux/minidump_writer/minidump_writer.cc.ucontextfix 2017-07-12 15:37:54.041013246 -0400 -+++ chromium-59.0.3071.115/breakpad/src/client/linux/minidump_writer/minidump_writer.cc 2017-07-12 15:38:19.600405748 -0400 -@@ -1323,7 +1323,7 @@ class MinidumpWriter { - const int fd_; // File descriptor where the minidum should be written. - const char* path_; // Path to the file where the minidum should be written. - -- const struct ucontext* const ucontext_; // also from the signal handler -+ const ucontext_t* const ucontext_; // also from the signal handler - #if !defined(__ARM_EABI__) && !defined(__mips__) - const google_breakpad::fpstate_t* const float_state_; // ditto - #endif diff --git a/chromium-59.0.3071.86-ffmpeg-stdatomic.patch b/chromium-59.0.3071.86-ffmpeg-stdatomic.patch deleted file mode 100644 index a512513..0000000 --- a/chromium-59.0.3071.86-ffmpeg-stdatomic.patch +++ /dev/null @@ -1,17 +0,0 @@ -diff -up chromium-59.0.3071.86/third_party/ffmpeg/libavutil/cpu.c.ffmpeg-stdatomic chromium-59.0.3071.86/third_party/ffmpeg/libavutil/cpu.c ---- chromium-59.0.3071.86/third_party/ffmpeg/libavutil/cpu.c.ffmpeg-stdatomic 2017-06-07 17:15:24.993945430 -0400 -+++ chromium-59.0.3071.86/third_party/ffmpeg/libavutil/cpu.c 2017-06-07 17:18:41.625997601 -0400 -@@ -17,7 +17,13 @@ - */ - - #include -+// GCC 4.8 didn't have stdatomic, but was advertising it. -+// https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58016 -+#if !defined(__clang__) && defined(__GNUC__) && (__GNUC__ == 4 || (__GNUC__ == 4 && (__GNUC_MINOR__ == 8))) -+#include -+#else - #include -+#endif - - #include "cpu.h" - #include "cpu_internal.h" diff --git a/chromium-59.0.3071.86-nullfix.patch b/chromium-59.0.3071.86-nullfix.patch deleted file mode 100644 index 20e9d18..0000000 --- a/chromium-59.0.3071.86-nullfix.patch +++ /dev/null @@ -1,43 +0,0 @@ -diff -up chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn.nullfix chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn ---- chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn.nullfix 2017-06-05 15:03:01.000000000 -0400 -+++ chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn 2017-06-07 15:32:43.531911624 -0400 -@@ -31,6 +31,7 @@ gcc_toolchain("arm64") { - ld = cxx - readelf = "${toolprefix}readelf" - nm = "${toolprefix}nm" -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - toolchain_args = { - current_cpu = "arm64" -@@ -49,6 +50,7 @@ gcc_toolchain("arm") { - ld = cxx - readelf = "${toolprefix}readelf" - nm = "${toolprefix}nm" -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - toolchain_args = { - current_cpu = "arm" -@@ -91,6 +93,7 @@ gcc_toolchain("x86") { - nm = "nm" - ar = "ar" - ld = cxx -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - # Output linker map files for binary size analysis. - enable_linker_map = true -@@ -136,6 +139,7 @@ gcc_toolchain("x64") { - nm = "nm" - ar = "ar" - ld = cxx -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - # Output linker map files for binary size analysis. - enable_linker_map = true -@@ -161,6 +165,7 @@ gcc_toolchain("mipsel") { - ld = cxx - readelf = "mipsel-linux-gnu-readelf" - nm = "mipsel-linux-gnu-nm" -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - toolchain_args = { - cc_wrapper = "" diff --git a/chromium-59.0.3071.86-system-clang.patch b/chromium-59.0.3071.86-system-clang.patch deleted file mode 100644 index 458834b..0000000 --- a/chromium-59.0.3071.86-system-clang.patch +++ /dev/null @@ -1,10 +0,0 @@ -diff -up chromium-59.0.3071.86/build/config/clang/clang.gni.system-clang chromium-59.0.3071.86/build/config/clang/clang.gni ---- chromium-59.0.3071.86/build/config/clang/clang.gni.system-clang 2017-06-11 20:57:07.327949687 -0400 -+++ chromium-59.0.3071.86/build/config/clang/clang.gni 2017-06-11 20:57:24.085620826 -0400 -@@ -9,5 +9,5 @@ declare_args() { - # coding guidelines, etc. Only used when compiling with Clang. - clang_use_chrome_plugins = is_clang && !is_nacl && !use_xcode_clang - -- clang_base_path = "//third_party/llvm-build/Release+Asserts" -+ clang_base_path = "/usr" - } diff --git a/chromium-60.0.3112.78-gn-system.patch b/chromium-60.0.3112.78-gn-system.patch deleted file mode 100644 index 60489bb..0000000 --- a/chromium-60.0.3112.78-gn-system.patch +++ /dev/null @@ -1,221 +0,0 @@ -diff -up chromium-60.0.3112.78/build/linux/unbundle/libjpeg.gn.gnsystem chromium-60.0.3112.78/build/linux/unbundle/libjpeg.gn ---- chromium-60.0.3112.78/build/linux/unbundle/libjpeg.gn.gnsystem 2017-07-25 15:04:48.000000000 -0400 -+++ chromium-60.0.3112.78/build/linux/unbundle/libjpeg.gn 2017-07-31 10:38:25.879951641 -0400 -@@ -16,6 +16,10 @@ source_set("libjpeg") { - libs = [ "jpeg" ] - } - -+config("system_libjpeg") { -+ defines = [ "USE_SYSTEM_LIBJPEG=1" ] -+} -+ - source_set("simd") { - } - -diff -up chromium-60.0.3112.78/build/linux/unbundle/libusb.gn.gnsystem chromium-60.0.3112.78/build/linux/unbundle/libusb.gn ---- chromium-60.0.3112.78/build/linux/unbundle/libusb.gn.gnsystem 2017-07-31 10:38:25.880951622 -0400 -+++ chromium-60.0.3112.78/build/linux/unbundle/libusb.gn 2017-07-31 10:38:25.879951641 -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-60.0.3112.78/build/linux/unbundle/opus.gn.gnsystem chromium-60.0.3112.78/build/linux/unbundle/opus.gn ---- chromium-60.0.3112.78/build/linux/unbundle/opus.gn.gnsystem 2017-07-25 15:04:48.000000000 -0400 -+++ chromium-60.0.3112.78/build/linux/unbundle/opus.gn 2017-07-31 10:38:25.880951622 -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-60.0.3112.78/build/linux/unbundle/replace_gn_files.py.gnsystem chromium-60.0.3112.78/build/linux/unbundle/replace_gn_files.py ---- chromium-60.0.3112.78/build/linux/unbundle/replace_gn_files.py.gnsystem 2017-07-31 10:38:25.880951622 -0400 -+++ chromium-60.0.3112.78/build/linux/unbundle/replace_gn_files.py 2017-07-31 10:39:58.067159914 -0400 -@@ -26,6 +26,7 @@ REPLACEMENTS = { - 'libevent': 'base/third_party/libevent/BUILD.gn', - 'libjpeg': 'build/secondary/third_party/libjpeg_turbo/BUILD.gn', - '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-60.0.3112.78-last-commit-position.patch b/chromium-60.0.3112.78-last-commit-position.patch deleted file mode 100644 index 7c26d9f..0000000 --- a/chromium-60.0.3112.78-last-commit-position.patch +++ /dev/null @@ -1,28 +0,0 @@ -diff -up chromium-60.0.3112.78/tools/gn/BUILD.gn.lastcommit chromium-60.0.3112.78/tools/gn/BUILD.gn ---- chromium-60.0.3112.78/tools/gn/BUILD.gn.lastcommit 2017-07-31 10:42:38.568041044 -0400 -+++ chromium-60.0.3112.78/tools/gn/BUILD.gn 2017-07-31 10:47:50.760974587 -0400 -@@ -268,7 +268,6 @@ executable("gn") { - - deps = [ - ":gn_lib", -- ":last_commit_position", - "//base", - "//build/config:exe_and_shlib_deps", - "//build/win:default_exe_manifest", -diff -up chromium-60.0.3112.78/tools/gn/gn_main.cc.lastcommit chromium-60.0.3112.78/tools/gn/gn_main.cc ---- chromium-60.0.3112.78/tools/gn/gn_main.cc.lastcommit 2017-07-25 15:05:19.000000000 -0400 -+++ chromium-60.0.3112.78/tools/gn/gn_main.cc 2017-07-31 10:42:38.568041044 -0400 -@@ -12,13 +12,7 @@ - #include "tools/gn/standard_out.h" - #include "tools/gn/switches.h" - --// Only the GN-generated build makes this header for now. --// TODO(brettw) consider adding this if we need it in GYP. --#if defined(GN_BUILD) --#include "tools/gn/last_commit_position.h" --#else - #define LAST_COMMIT_POSITION "UNKNOWN" --#endif - - namespace { - diff --git a/chromium-60.0.3112.78-no-zlib-mangle.patch b/chromium-60.0.3112.78-no-zlib-mangle.patch deleted file mode 100644 index 4b90360..0000000 --- a/chromium-60.0.3112.78-no-zlib-mangle.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -up chromium-60.0.3112.78/third_party/zlib/zconf.h.nozmangle chromium-60.0.3112.78/third_party/zlib/zconf.h ---- chromium-60.0.3112.78/third_party/zlib/zconf.h.nozmangle 2017-08-04 10:45:17.509152089 -0400 -+++ chromium-60.0.3112.78/third_party/zlib/zconf.h 2017-08-04 10:45:30.451902380 -0400 -@@ -8,9 +8,6 @@ - #ifndef ZCONF_H - #define ZCONF_H - --/* This include does prefixing as below, but with an updated set of names */ --#include "names.h" -- - /* - * If you *really* need a unique prefix for all types and library functions, - * compile with -DZ_PREFIX. The "standard" zlib should be compiled without it. diff --git a/chromium-60.0.3112.90-vulkan-force-c99.patch b/chromium-60.0.3112.90-vulkan-force-c99.patch deleted file mode 100644 index 881aa91..0000000 --- a/chromium-60.0.3112.90-vulkan-force-c99.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-60.0.3112.90/third_party/angle/src/vulkan_support/BUILD.gn.c99 chromium-60.0.3112.90/third_party/angle/src/vulkan_support/BUILD.gn ---- chromium-60.0.3112.90/third_party/angle/src/vulkan_support/BUILD.gn.c99 2017-08-14 10:40:48.028799820 -0400 -+++ chromium-60.0.3112.90/third_party/angle/src/vulkan_support/BUILD.gn 2017-08-14 10:41:43.054734910 -0400 -@@ -180,6 +180,7 @@ config("vulkan_internal_config") { - cflags += [ "-Wno-ignored-attributes" ] - } - if (is_linux) { -+ cflags += [ "-std=c99" ] - defines += [ - "SYSCONFDIR=\"/etc\"", - "FALLBACK_CONFIG_DIRS=\"/etc/xdg\"", diff --git a/chromium-61.0.3163.79-aarch64-glibc-2.26.90.patch b/chromium-61.0.3163.79-aarch64-glibc-2.26.90.patch deleted file mode 100644 index 12e88d2..0000000 --- a/chromium-61.0.3163.79-aarch64-glibc-2.26.90.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-61.0.3163.79/breakpad/src/client/linux/handler/exception_handler.cc.aarch64glibc chromium-61.0.3163.79/breakpad/src/client/linux/handler/exception_handler.cc ---- chromium-61.0.3163.79/breakpad/src/client/linux/handler/exception_handler.cc.aarch64glibc 2017-09-12 10:12:25.375736650 -0400 -+++ chromium-61.0.3163.79/breakpad/src/client/linux/handler/exception_handler.cc 2017-09-12 10:14:42.339638321 -0400 -@@ -461,7 +461,7 @@ bool ExceptionHandler::HandleSignal(int - #if defined(__aarch64__) - ucontext_t* uc_ptr = (ucontext_t*)uc; - struct fpsimd_context* fp_ptr = -- (struct fpsimd_context*)&uc_ptr->uc_mcontext.__reserved; -+ (struct fpsimd_context*)&uc_ptr->uc_mcontext.__glibc_reserved1; - if (fp_ptr->head.magic == FPSIMD_MAGIC) { - memcpy(&g_crash_context_.float_state, fp_ptr, - sizeof(g_crash_context_.float_state)); diff --git a/chromium-61.0.3163.79-fix-ffmpeg-aarch64.patch b/chromium-61.0.3163.79-fix-ffmpeg-aarch64.patch deleted file mode 100644 index a8c7260..0000000 --- a/chromium-61.0.3163.79-fix-ffmpeg-aarch64.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-61.0.3163.79/third_party/ffmpeg/ffmpeg_generated.gni.aarch64 chromium-61.0.3163.79/third_party/ffmpeg/ffmpeg_generated.gni ---- chromium-61.0.3163.79/third_party/ffmpeg/ffmpeg_generated.gni.aarch64 2017-09-06 14:34:36.247232957 -0400 -+++ chromium-61.0.3163.79/third_party/ffmpeg/ffmpeg_generated.gni 2017-09-06 14:36:37.632892363 -0400 -@@ -537,7 +537,7 @@ if (use_linux_config && current_cpu == " - ] - } - --if ((is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS")) { -+if ((is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chromium")) { - ffmpeg_c_sources += [ - "libavcodec/aarch64/mpegaudiodsp_init.c", - ] diff --git a/chromium-61.0.3163.79-setopaque.patch b/chromium-61.0.3163.79-setopaque.patch deleted file mode 100644 index b797d10..0000000 --- a/chromium-61.0.3163.79-setopaque.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-61.0.3163.79/cc/blink/web_layer_impl.h.setopaque chromium-61.0.3163.79/cc/blink/web_layer_impl.h ---- chromium-61.0.3163.79/cc/blink/web_layer_impl.h.setopaque 2017-09-06 13:55:45.454175023 -0400 -+++ chromium-61.0.3163.79/cc/blink/web_layer_impl.h 2017-09-06 13:58:02.395533936 -0400 -@@ -71,7 +71,7 @@ class CC_BLINK_EXPORT WebLayerImpl : pub - bool IsRootForIsolatedGroup() override; - void SetShouldHitTest(bool should_hit_test) override; - bool ShouldHitTest() override; -- void SetOpaque(bool opaque) override; -+ CC_BLINK_EXPORT void SetOpaque(bool opaque) override; - bool Opaque() const override; - void SetPosition(const blink::WebFloatPoint& position) override; - blink::WebFloatPoint GetPosition() const override; diff --git a/chromium-62.0.3202.62-correct-cplusplus-check.patch b/chromium-62.0.3202.62-correct-cplusplus-check.patch deleted file mode 100644 index 39f8580..0000000 --- a/chromium-62.0.3202.62-correct-cplusplus-check.patch +++ /dev/null @@ -1,20 +0,0 @@ -diff -up chromium-62.0.3202.62/third_party/crc32c/src/include/crc32c/crc32c.h.fix-cplusplus-conditional chromium-62.0.3202.62/third_party/crc32c/src/include/crc32c/crc32c.h ---- chromium-62.0.3202.62/third_party/crc32c/src/include/crc32c/crc32c.h.fix-cplusplus-conditional 2017-10-17 15:12:35.000000000 -0400 -+++ chromium-62.0.3202.62/third_party/crc32c/src/include/crc32c/crc32c.h 2017-10-19 11:41:45.860279576 -0400 -@@ -38,6 +38,8 @@ inline uint32_t Crc32c(const std::string - // Visual Studio provides a header even in C++11 mode. When - // included, the header issues an #error. (C1189) - #if !defined(_MSC_VER) || __cplusplus >= 201703L -+// GCC issues an #error if __cplusplus <= 201402L -+#if defined(__GNUC__) && __cplusplus > 201402L - #include - - // Comptues the CRC32C of the bytes in the string_view. -@@ -46,6 +48,7 @@ inline uint32_t Crc32c(const std::string - string_view.size()); - } - -+#endif // defined(__GNUC__) && __cplusplus > 201402L - #endif // !defined(_MSC_VER) || __cplusplus >= 201703L - #endif // __has_include() - #endif // defined(__has_include) diff --git a/chromium-62.0.3202.62-dde535-gcc-fix.patch b/chromium-62.0.3202.62-dde535-gcc-fix.patch deleted file mode 100644 index 378403a..0000000 --- a/chromium-62.0.3202.62-dde535-gcc-fix.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -up chromium-62.0.3202.62/services/resource_coordinator/resource_coordinator_service.cc.dde535 chromium-62.0.3202.62/services/resource_coordinator/resource_coordinator_service.cc ---- chromium-62.0.3202.62/services/resource_coordinator/resource_coordinator_service.cc.dde535 2017-10-18 10:04:33.237966223 -0400 -+++ chromium-62.0.3202.62/services/resource_coordinator/resource_coordinator_service.cc 2017-10-18 10:05:00.442438694 -0400 -@@ -18,7 +18,8 @@ std::unique_ptr(); - -- return resource_coordinator_service; -+ return std::unique_ptr( -+ resource_coordinator_service.release()); - } - - ResourceCoordinatorService::ResourceCoordinatorService() diff --git a/chromium-62.0.3202.62-enable-mp3.patch b/chromium-62.0.3202.62-enable-mp3.patch deleted file mode 100644 index 3ed9dbf..0000000 --- a/chromium-62.0.3202.62-enable-mp3.patch +++ /dev/null @@ -1,484 +0,0 @@ -diff -up chromium-62.0.3202.62/components/neterror/resources/sounds/button-press.mp3 chromium-62.0.3202.62/components/neterror/resources/sounds/button-press -diff -up chromium-62.0.3202.62/components/neterror/resources/sounds/hit.mp3 chromium-62.0.3202.62/components/neterror/resources/sounds/hit -diff -up chromium-62.0.3202.62/components/neterror/resources/sounds/score-reached.mp3 chromium-62.0.3202.62/components/neterror/resources/sounds/score-reached -diff -up chromium-62.0.3202.62/media/base/mime_util_internal.cc.mp3 chromium-62.0.3202.62/media/base/mime_util_internal.cc ---- chromium-62.0.3202.62/media/base/mime_util_internal.cc.mp3 2017-10-17 15:10:44.000000000 -0400 -+++ chromium-62.0.3202.62/media/base/mime_util_internal.cc 2017-10-18 09:32:16.957562156 -0400 -@@ -266,15 +266,19 @@ void MimeUtil::AddSupportedMediaFormats( - CodecSet webm_codecs(webm_audio_codecs); - webm_codecs.insert(webm_video_codecs.begin(), webm_video_codecs.end()); - --#if BUILDFLAG(USE_PROPRIETARY_CODECS) - const CodecSet mp3_codecs{MP3}; -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - const CodecSet aac{MPEG2_AAC, MPEG4_AAC}; -+#else -+ const CodecSet aac{}; -+#endif -+ CodecSet mp4_audio_codecs(aac); -+ mp4_audio_codecs.emplace(MP3); - -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - CodecSet avc_and_aac(aac); - avc_and_aac.emplace(H264); - -- CodecSet mp4_audio_codecs(aac); -- mp4_audio_codecs.emplace(MP3); - mp4_audio_codecs.emplace(FLAC); - #if BUILDFLAG(ENABLE_AC3_EAC3_AUDIO_DEMUXING) - mp4_audio_codecs.emplace(AC3); -@@ -311,10 +315,10 @@ void MimeUtil::AddSupportedMediaFormats( - AddContainerWithCodecs("application/ogg", ogg_codecs, false); - AddContainerWithCodecs("audio/flac", implicit_codec, false); - --#if BUILDFLAG(USE_PROPRIETARY_CODECS) - AddContainerWithCodecs("audio/mpeg", mp3_codecs, true); // Allow "mp3". - AddContainerWithCodecs("audio/mp3", implicit_codec, true); - AddContainerWithCodecs("audio/x-mp3", implicit_codec, true); -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - AddContainerWithCodecs("audio/aac", implicit_codec, true); // AAC / ADTS. - AddContainerWithCodecs("audio/mp4", mp4_audio_codecs, true); - DCHECK(!mp4_video_codecs.empty()); -@@ -920,7 +924,6 @@ bool MimeUtil::IsCodecProprietary(Codec - case INVALID_CODEC: - case AC3: - case EAC3: -- case MP3: - case MPEG2_AAC: - case MPEG4_AAC: - case H264: -@@ -928,6 +931,7 @@ bool MimeUtil::IsCodecProprietary(Codec - case DOLBY_VISION: - return true; - -+ case MP3: - case PCM: - case VORBIS: - case OPUS: -diff -up chromium-62.0.3202.62/media/formats/BUILD.gn.mp3 chromium-62.0.3202.62/media/formats/BUILD.gn ---- chromium-62.0.3202.62/media/formats/BUILD.gn.mp3 2017-10-17 15:10:45.000000000 -0400 -+++ chromium-62.0.3202.62/media/formats/BUILD.gn 2017-10-18 09:25:18.353676481 -0400 -@@ -17,6 +17,14 @@ source_set("formats") { - "ac3/ac3_util.h", - "common/offset_byte_queue.cc", - "common/offset_byte_queue.h", -+ "mpeg/adts_constants.cc", -+ "mpeg/adts_constants.h", -+ "mpeg/adts_stream_parser.cc", -+ "mpeg/adts_stream_parser.h", -+ "mpeg/mpeg1_audio_stream_parser.cc", -+ "mpeg/mpeg1_audio_stream_parser.h", -+ "mpeg/mpeg_audio_stream_parser_base.cc", -+ "mpeg/mpeg_audio_stream_parser_base.h", - "webm/webm_audio_client.cc", - "webm/webm_audio_client.h", - "webm/webm_cluster_parser.cc", -@@ -78,14 +86,6 @@ source_set("formats") { - "mp4/sample_to_group_iterator.h", - "mp4/track_run_iterator.cc", - "mp4/track_run_iterator.h", -- "mpeg/adts_constants.cc", -- "mpeg/adts_constants.h", -- "mpeg/adts_stream_parser.cc", -- "mpeg/adts_stream_parser.h", -- "mpeg/mpeg1_audio_stream_parser.cc", -- "mpeg/mpeg1_audio_stream_parser.h", -- "mpeg/mpeg_audio_stream_parser_base.cc", -- "mpeg/mpeg_audio_stream_parser_base.h", - ] - } - -diff -up chromium-62.0.3202.62/third_party/catapult/third_party/gsutil/gslib/tests/test_data/test.mp3 chromium-62.0.3202.62/third_party/catapult/third_party/gsutil/gslib/tests/test_data/test -diff -up chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h.mp3 chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h ---- chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h.mp3 2017-10-18 09:05:31.000000000 -0400 -+++ chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h 2017-10-18 09:25:18.354676462 -0400 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/chrome/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-cross-compile --cross-prefix=/usr/bin/aarch64-linux-gnu- --target-os=linux --arch=aarch64 --enable-armv8 --extra-cflags='-march=armv8-a' --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/chrome/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-cross-compile --cross-prefix=/usr/bin/aarch64-linux-gnu- --target-os=linux --arch=aarch64 --enable-armv8 --extra-cflags='-march=armv8-a' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -542,7 +542,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -620,9 +620,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -968,7 +968,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1275,7 +1275,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2217,7 +2217,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h.mp3 chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h ---- chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h.mp3 2017-10-18 09:05:31.000000000 -0400 -+++ chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h 2017-10-18 09:25:18.355676443 -0400 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/jrummell/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --disable-neon --extra-cflags='-mfpu=vfpv3-d16' --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/jrummell/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --disable-neon --extra-cflags='-mfpu=vfpv3-d16' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -542,7 +542,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -620,9 +620,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -968,7 +968,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1275,7 +1275,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2217,7 +2217,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h.mp3 chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h ---- chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h.mp3 2017-10-18 09:05:31.000000000 -0400 -+++ chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h 2017-10-18 09:25:18.360676348 -0400 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/jrummell/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --enable-neon --extra-cflags='-mfpu=neon' --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/jrummell/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --enable-neon --extra-cflags='-mfpu=neon' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -542,7 +542,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -620,9 +620,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -968,7 +968,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1275,7 +1275,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2217,7 +2217,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h.mp3 chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h ---- chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h.mp3 2017-10-18 09:05:31.000000000 -0400 -+++ chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h 2017-10-18 09:25:18.360676348 -0400 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/chrome/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=i686 --extra-cflags='\"-m32\"' --extra-ldflags='\"-m32\"' --enable-yasm --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/chrome/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=i686 --extra-cflags='\"-m32\"' --extra-ldflags='\"-m32\"' --enable-yasm --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -542,7 +542,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -620,9 +620,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -968,7 +968,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1275,7 +1275,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2217,7 +2217,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h.mp3 chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h ---- chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h.mp3 2017-10-18 09:05:31.000000000 -0400 -+++ chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h 2017-10-18 09:25:18.361676329 -0400 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/chrome/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-lto --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/chrome/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-lto --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -542,7 +542,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -620,9 +620,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -968,7 +968,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1275,7 +1275,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2217,7 +2217,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-62.0.3202.62/third_party/ffmpeg/ffmpeg_generated.gni.mp3 chromium-62.0.3202.62/third_party/ffmpeg/ffmpeg_generated.gni ---- chromium-62.0.3202.62/third_party/ffmpeg/ffmpeg_generated.gni.mp3 2017-10-18 09:05:28.000000000 -0400 -+++ chromium-62.0.3202.62/third_party/ffmpeg/ffmpeg_generated.gni 2017-10-18 09:25:18.362676310 -0400 -@@ -182,17 +182,9 @@ if ((is_mac) || (is_win) || (use_linux_c - ] - } - --if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mips64el" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { -+if ((current_cpu == "x64") || (is_android && current_cpu == "arm" && arm_use_neon) || (is_android && current_cpu == "arm64") || (is_android && current_cpu == "mips64el") || (is_android && current_cpu == "mipsel") || (is_android && current_cpu == "x86") || (is_win) || (use_linux_config && current_cpu == "arm" && arm_use_neon) || (use_linux_config && current_cpu == "arm" && arm_use_neon) || (use_linux_config && current_cpu == "arm") || (use_linux_config && current_cpu == "arm") || (use_linux_config && current_cpu == "arm64") || (use_linux_config && current_cpu == "mipsel") || (use_linux_config && current_cpu == "x64") || (use_linux_config && current_cpu == "x86")) { - ffmpeg_c_sources += [ -- "libavcodec/aac_ac3_parser.c", -- "libavcodec/aac_parser.c", -- "libavcodec/aacadtsdec.c", -- "libavcodec/aacps_float.c", -- "libavcodec/aacpsdsp_float.c", -- "libavcodec/aacsbr.c", -- "libavcodec/aactab.c", - "libavcodec/ac3tab.c", -- "libavcodec/autorename_libavcodec_aacdec.c", - "libavcodec/autorename_libavcodec_mpegaudiodsp.c", - "libavcodec/autorename_libavcodec_sbrdsp.c", - "libavcodec/cbrt_data.c", -@@ -210,7 +202,6 @@ if ((current_cpu == "x64" && ffmpeg_bran - "libavcodec/mpegaudiodsp_float.c", - "libavcodec/sinewin.c", - "libavcodec/sinewin_fixed.c", -- "libavformat/aacdec.c", - "libavformat/apetag.c", - "libavformat/img2.c", - "libavformat/mov.c", -@@ -219,6 +210,20 @@ if ((current_cpu == "x64" && ffmpeg_bran - ] - } - -+if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mips64el" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { -+ ffmpeg_c_sources += [ -+ "libavcodec/aac_ac3_parser.c", -+ "libavcodec/aac_parser.c", -+ "libavcodec/aacadtsdec.c", -+ "libavcodec/aacps_float.c", -+ "libavcodec/aacpsdsp_float.c", -+ "libavcodec/aacsbr.c", -+ "libavcodec/aactab.c", -+ "libavcodec/autorename_libavcodec_aacdec.c", -+ "libavformat/aacdec.c", -+ ] -+} -+ - if ((is_android && current_cpu == "x64") || (is_android && current_cpu == "x86") || (is_mac) || (is_win) || (use_linux_config && current_cpu == "x64") || (use_linux_config && current_cpu == "x86")) { - ffmpeg_c_sources += [ - "libavcodec/x86/autorename_libavcodec_x86_vorbisdsp_init.c", -@@ -322,15 +327,19 @@ if ((is_mac) || (is_win) || (use_linux_c - if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { - ffmpeg_c_sources += [ - "libavcodec/x86/aacpsdsp_init.c", -+ ] -+ ffmpeg_yasm_sources += [ -+ "libavcodec/x86/aacpsdsp.asm", -+ ] -+} -+ -+if ((current_cpu == "x64") || (is_android && current_cpu == "x86") || (use_linux_config && current_cpu == "x64") || (use_linux_config && current_cpu == "x86") || (is_win)) { -+ ffmpeg_c_sources += [ - "libavcodec/x86/dct_init.c", - "libavcodec/x86/mpegaudiodsp.c", - "libavcodec/x86/sbrdsp_init.c", - ] --} -- --if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { - ffmpeg_yasm_sources += [ -- "libavcodec/x86/aacpsdsp.asm", - "libavcodec/x86/dct32.asm", - "libavcodec/x86/imdct36.asm", - "libavcodec/x86/sbrdsp.asm", -diff -up chromium-62.0.3202.62/third_party/ffmpeg/libavcodec/sbrdsp.c.mp3 chromium-62.0.3202.62/third_party/ffmpeg/libavcodec/sbrdsp.c ---- chromium-62.0.3202.62/third_party/ffmpeg/libavcodec/sbrdsp.c.mp3 2017-10-18 09:05:30.000000000 -0400 -+++ chromium-62.0.3202.62/third_party/ffmpeg/libavcodec/sbrdsp.c 2017-10-18 09:25:18.362676310 -0400 -@@ -23,6 +23,7 @@ - #define USE_FIXED 0 - - #include "aac.h" -+#include "aacsbrdata.h" - #include "config.h" - #include "libavutil/attributes.h" - #include "libavutil/intfloat.h" -diff -up chromium-62.0.3202.62/third_party/webrtc/examples/objc/AppRTCMobile/ios/resources/mozart.mp3 chromium-62.0.3202.62/third_party/webrtc/examples/objc/AppRTCMobile/ios/resources/mozart -diff -up chromium-62.0.3202.62/tools/android/audio_focus_grabber/java/res/raw/ping.mp3 chromium-62.0.3202.62/tools/android/audio_focus_grabber/java/res/raw/ping diff --git a/chromium-62.0.3202.62-epel7-no-nullptr-assignment-on-StructPtr.patch b/chromium-62.0.3202.62-epel7-no-nullptr-assignment-on-StructPtr.patch deleted file mode 100644 index 7af702a..0000000 --- a/chromium-62.0.3202.62-epel7-no-nullptr-assignment-on-StructPtr.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-62.0.3202.62/third_party/WebKit/Source/platform/blob/BlobData.cpp.nonullptr chromium-62.0.3202.62/third_party/WebKit/Source/platform/blob/BlobData.cpp ---- chromium-62.0.3202.62/third_party/WebKit/Source/platform/blob/BlobData.cpp.nonullptr 2017-10-18 10:10:14.216353575 -0400 -+++ chromium-62.0.3202.62/third_party/WebKit/Source/platform/blob/BlobData.cpp 2017-10-18 10:10:23.657170980 -0400 -@@ -295,7 +295,7 @@ BlobDataHandle::BlobDataHandle(std::uniq - - size_t current_memory_population = 0; - Vector elements; -- const DataElementPtr null_element = nullptr; -+ const DataElementPtr null_element; - BlobBytesProvider* last_bytes_provider = nullptr; - RefPtr file_runner = Platform::Current()->FileTaskRunner(); - diff --git a/chromium-62.0.3202.62-gcc-nc.patch b/chromium-62.0.3202.62-gcc-nc.patch deleted file mode 100644 index 0a74d25..0000000 --- a/chromium-62.0.3202.62-gcc-nc.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-62.0.3202.62/content/network/network_service_impl.cc.gcc-nc chromium-62.0.3202.62/content/network/network_service_impl.cc ---- chromium-62.0.3202.62/content/network/network_service_impl.cc.gcc-nc 2017-10-18 10:07:04.045041261 -0400 -+++ chromium-62.0.3202.62/content/network/network_service_impl.cc 2017-10-18 10:07:53.175088528 -0400 -@@ -90,6 +90,7 @@ NetworkServiceImpl::CreateNetworkContext - base::MakeUnique(this, std::move(request), - std::move(params), std::move(builder)); - *url_request_context = network_context->url_request_context(); -+ return std::unique_ptr(network_context.release()); - return network_context; - } - diff --git a/chromium-62.0.3202.62-gcc7.patch b/chromium-62.0.3202.62-gcc7.patch deleted file mode 100644 index 90d177d..0000000 --- a/chromium-62.0.3202.62-gcc7.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-62.0.3202.62/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 chromium-62.0.3202.62/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h ---- chromium-62.0.3202.62/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 2017-10-18 09:20:04.072765163 -0400 -+++ chromium-62.0.3202.62/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h 2017-10-18 09:21:40.156905187 -0400 -@@ -9,6 +9,7 @@ - #include "platform/graphics/WebGraphicsContext3DProviderWrapper.h" - #include "platform/wtf/ThreadSpecific.h" - -+#include - #include - - namespace blink { diff --git a/chromium-62.0.3202.62-rvalue-fix.patch b/chromium-62.0.3202.62-rvalue-fix.patch deleted file mode 100644 index 89197cd..0000000 --- a/chromium-62.0.3202.62-rvalue-fix.patch +++ /dev/null @@ -1,45 +0,0 @@ -diff -up chromium-62.0.3202.62/chrome/browser/ui/webui/settings/on_startup_handler.cc.another-rvalue-fix chromium-62.0.3202.62/chrome/browser/ui/webui/settings/on_startup_handler.cc ---- chromium-62.0.3202.62/chrome/browser/ui/webui/settings/on_startup_handler.cc.another-rvalue-fix 2017-10-18 10:15:58.855675480 -0400 -+++ chromium-62.0.3202.62/chrome/browser/ui/webui/settings/on_startup_handler.cc 2017-10-18 10:16:28.925093301 -0400 -@@ -77,7 +77,7 @@ std::unique_ptr OnStartupHa - !extensions::ExtensionSystem::Get(profile_) - ->management_policy() - ->MustRemainEnabled(ntp_extension, nullptr)); -- return dict; -+ return std::move(dict); - } - - void OnStartupHandler::HandleGetNtpExtension(const base::ListValue* args) { -diff -up chromium-62.0.3202.62/ui/views/animation/ink_drop_host_view.cc.another-rvalue-fix chromium-62.0.3202.62/ui/views/animation/ink_drop_host_view.cc ---- chromium-62.0.3202.62/ui/views/animation/ink_drop_host_view.cc.another-rvalue-fix 2017-10-18 10:15:16.408497853 -0400 -+++ chromium-62.0.3202.62/ui/views/animation/ink_drop_host_view.cc 2017-10-18 10:15:43.793967075 -0400 -@@ -305,7 +305,7 @@ std::unique_ptr InkDropHost - base::MakeUnique(this, size()); - ink_drop->SetAutoHighlightMode( - views::InkDropImpl::AutoHighlightMode::HIDE_ON_RIPPLE); -- return ink_drop; -+ return std:move(ink_drop); - } - - std::unique_ptr -@@ -314,7 +314,7 @@ InkDropHostView::CreateDefaultFloodFillI - InkDropHostView::CreateDefaultInkDropImpl(); - ink_drop->SetAutoHighlightMode( - views::InkDropImpl::AutoHighlightMode::SHOW_ON_RIPPLE); -- return ink_drop; -+ return std:move(ink_drop); - } - - } // namespace views -diff -up chromium-62.0.3202.62/ui/views/controls/button/checkbox.cc.another-rvalue-fix chromium-62.0.3202.62/ui/views/controls/button/checkbox.cc ---- chromium-62.0.3202.62/ui/views/controls/button/checkbox.cc.another-rvalue-fix 2017-10-18 10:14:18.054627919 -0400 -+++ chromium-62.0.3202.62/ui/views/controls/button/checkbox.cc 2017-10-18 10:14:42.265159378 -0400 -@@ -198,7 +198,7 @@ std::unique_ptr Checkbox::Creat - std::unique_ptr ink_drop = CreateDefaultInkDropImpl(); - ink_drop->SetShowHighlightOnHover(false); - ink_drop->SetAutoHighlightMode(InkDropImpl::AutoHighlightMode::NONE); -- return ink_drop; -+ return std::move(ink_drop); - } - - std::unique_ptr Checkbox::CreateInkDropRipple() const { diff --git a/chromium-63.0.3289.84-aarch64-glibc-2.26.90.patch b/chromium-63.0.3289.84-aarch64-glibc-2.26.90.patch deleted file mode 100644 index 469d680..0000000 --- a/chromium-63.0.3289.84-aarch64-glibc-2.26.90.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-63.0.3239.84/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc.aarch64glibc chromium-63.0.3239.84/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc ---- chromium-63.0.3239.84/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc.aarch64glibc 2017-12-12 09:56:24.469343868 -0500 -+++ chromium-63.0.3239.84/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc 2017-12-12 09:56:38.468071095 -0500 -@@ -461,7 +461,7 @@ bool ExceptionHandler::HandleSignal(int - #if defined(__aarch64__) - ucontext_t* uc_ptr = (ucontext_t*)uc; - struct fpsimd_context* fp_ptr = -- (struct fpsimd_context*)&uc_ptr->uc_mcontext.__reserved; -+ (struct fpsimd_context*)&uc_ptr->uc_mcontext.__glibc_reserved1; - if (fp_ptr->head.magic == FPSIMD_MAGIC) { - memcpy(&g_crash_context_.float_state, fp_ptr, - sizeof(g_crash_context_.float_state)); diff --git a/chromium-63.0.3289.84-enable-mp3.patch b/chromium-63.0.3289.84-enable-mp3.patch deleted file mode 100644 index 91a331a..0000000 --- a/chromium-63.0.3289.84-enable-mp3.patch +++ /dev/null @@ -1,485 +0,0 @@ -diff -up chromium-63.0.3239.84/components/neterror/resources/sounds/button-press.mp3 chromium-63.0.3239.84/components/neterror/resources/sounds/button-press -diff -up chromium-63.0.3239.84/components/neterror/resources/sounds/hit.mp3 chromium-63.0.3239.84/components/neterror/resources/sounds/hit -diff -up chromium-63.0.3239.84/components/neterror/resources/sounds/score-reached.mp3 chromium-63.0.3239.84/components/neterror/resources/sounds/score-reached -diff -up chromium-63.0.3239.84/media/base/mime_util_internal.cc.mp3 chromium-63.0.3239.84/media/base/mime_util_internal.cc ---- chromium-63.0.3239.84/media/base/mime_util_internal.cc.mp3 2017-12-06 15:05:29.000000000 -0500 -+++ chromium-63.0.3239.84/media/base/mime_util_internal.cc 2017-12-07 10:52:02.472510232 -0500 -@@ -266,15 +266,19 @@ void MimeUtil::AddSupportedMediaFormats( - CodecSet webm_codecs(webm_audio_codecs); - webm_codecs.insert(webm_video_codecs.begin(), webm_video_codecs.end()); - --#if BUILDFLAG(USE_PROPRIETARY_CODECS) - const CodecSet mp3_codecs{MP3}; -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - const CodecSet aac{MPEG2_AAC, MPEG4_AAC}; -+#else -+ const CodecSet aac{}; -+#endif -+ CodecSet mp4_audio_codecs(aac); -+ mp4_audio_codecs.emplace(MP3); - -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - CodecSet avc_and_aac(aac); - avc_and_aac.emplace(H264); - -- CodecSet mp4_audio_codecs(aac); -- mp4_audio_codecs.emplace(MP3); - mp4_audio_codecs.emplace(FLAC); - #if BUILDFLAG(ENABLE_AC3_EAC3_AUDIO_DEMUXING) - mp4_audio_codecs.emplace(AC3); -@@ -311,10 +315,10 @@ void MimeUtil::AddSupportedMediaFormats( - AddContainerWithCodecs("application/ogg", ogg_codecs, false); - AddContainerWithCodecs("audio/flac", implicit_codec, false); - --#if BUILDFLAG(USE_PROPRIETARY_CODECS) - AddContainerWithCodecs("audio/mpeg", mp3_codecs, true); // Allow "mp3". - AddContainerWithCodecs("audio/mp3", implicit_codec, true); - AddContainerWithCodecs("audio/x-mp3", implicit_codec, true); -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - AddContainerWithCodecs("audio/aac", implicit_codec, true); // AAC / ADTS. - AddContainerWithCodecs("audio/mp4", mp4_audio_codecs, true); - DCHECK(!mp4_video_codecs.empty()); -@@ -935,7 +939,6 @@ bool MimeUtil::IsCodecProprietary(Codec - case INVALID_CODEC: - case AC3: - case EAC3: -- case MP3: - case MPEG2_AAC: - case MPEG4_AAC: - case H264: -@@ -943,6 +946,7 @@ bool MimeUtil::IsCodecProprietary(Codec - case DOLBY_VISION: - return true; - -+ case MP3: - case PCM: - case VORBIS: - case OPUS: -diff -up chromium-63.0.3239.84/media/formats/BUILD.gn.mp3 chromium-63.0.3239.84/media/formats/BUILD.gn ---- chromium-63.0.3239.84/media/formats/BUILD.gn.mp3 2017-12-06 15:05:29.000000000 -0500 -+++ chromium-63.0.3239.84/media/formats/BUILD.gn 2017-12-07 10:52:02.473510212 -0500 -@@ -20,6 +20,14 @@ source_set("formats") { - "ac3/ac3_util.h", - "common/offset_byte_queue.cc", - "common/offset_byte_queue.h", -+ "mpeg/adts_constants.cc", -+ "mpeg/adts_constants.h", -+ "mpeg/adts_stream_parser.cc", -+ "mpeg/adts_stream_parser.h", -+ "mpeg/mpeg1_audio_stream_parser.cc", -+ "mpeg/mpeg1_audio_stream_parser.h", -+ "mpeg/mpeg_audio_stream_parser_base.cc", -+ "mpeg/mpeg_audio_stream_parser_base.h", - "webm/webm_audio_client.cc", - "webm/webm_audio_client.h", - "webm/webm_cluster_parser.cc", -@@ -81,14 +89,6 @@ source_set("formats") { - "mp4/sample_to_group_iterator.h", - "mp4/track_run_iterator.cc", - "mp4/track_run_iterator.h", -- "mpeg/adts_constants.cc", -- "mpeg/adts_constants.h", -- "mpeg/adts_stream_parser.cc", -- "mpeg/adts_stream_parser.h", -- "mpeg/mpeg1_audio_stream_parser.cc", -- "mpeg/mpeg1_audio_stream_parser.h", -- "mpeg/mpeg_audio_stream_parser_base.cc", -- "mpeg/mpeg_audio_stream_parser_base.h", - ] - } - -diff -up chromium-63.0.3239.84/third_party/catapult/third_party/gsutil/gslib/tests/test_data/test.mp3 chromium-63.0.3239.84/third_party/catapult/third_party/gsutil/gslib/tests/test_data/test -diff -up chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h.mp3 chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h ---- chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h.mp3 2017-12-07 09:51:37.000000000 -0500 -+++ chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h 2017-12-07 11:08:41.116117073 -0500 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/blink3/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-cross-compile --cross-prefix=/usr/bin/aarch64-linux-gnu- --target-os=linux --arch=aarch64 --enable-armv8 --extra-cflags='-march=armv8-a' --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/blink3/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-cross-compile --cross-prefix=/usr/bin/aarch64-linux-gnu- --target-os=linux --arch=aarch64 --enable-armv8 --extra-cflags='-march=armv8-a' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -547,7 +547,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -626,9 +626,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -979,7 +979,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1292,7 +1292,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2267,7 +2267,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h.mp3 chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h ---- chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h.mp3 2017-12-07 09:51:37.000000000 -0500 -+++ chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h 2017-12-07 11:09:23.602291820 -0500 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/chcunningham/chrome_root/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --disable-neon --extra-cflags='-mfpu=vfpv3-d16' --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/chcunningham/chrome_root/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --disable-neon --extra-cflags='-mfpu=vfpv3-d16' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -547,7 +547,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -626,9 +626,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -979,7 +979,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1292,7 +1292,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2267,7 +2267,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h.mp3 chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h ---- chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h.mp3 2017-12-07 09:51:37.000000000 -0500 -+++ chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h 2017-12-07 11:09:49.945779754 -0500 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/chcunningham/chrome_root/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --enable-neon --extra-cflags='-mfpu=neon' --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/chcunningham/chrome_root/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --enable-neon --extra-cflags='-mfpu=neon' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -547,7 +547,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -626,9 +626,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -979,7 +979,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1292,7 +1292,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2267,7 +2267,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h.mp3 chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h ---- chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h.mp3 2017-12-07 09:51:37.000000000 -0500 -+++ chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h 2017-12-07 11:10:25.513089579 -0500 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/blink3/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=i686 --extra-cflags='\"-m32\"' --extra-ldflags='\"-m32\"' --enable-yasm --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/blink3/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=i686 --extra-cflags='\"-m32\"' --extra-ldflags='\"-m32\"' --enable-yasm --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -547,7 +547,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -626,9 +626,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -979,7 +979,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1292,7 +1292,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2267,7 +2267,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h.mp3 chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h ---- chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h.mp3 2017-12-07 09:51:37.000000000 -0500 -+++ chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h 2017-12-07 11:10:50.721599547 -0500 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/blink3/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-lto --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/blink3/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-lto --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -547,7 +547,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -626,9 +626,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -979,7 +979,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1292,7 +1292,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2267,7 +2267,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-63.0.3239.84/third_party/ffmpeg/ffmpeg_generated.gni.mp3 chromium-63.0.3239.84/third_party/ffmpeg/ffmpeg_generated.gni ---- chromium-63.0.3239.84/third_party/ffmpeg/ffmpeg_generated.gni.mp3 2017-12-07 09:51:36.000000000 -0500 -+++ chromium-63.0.3239.84/third_party/ffmpeg/ffmpeg_generated.gni 2017-12-07 11:16:58.728447124 -0500 -@@ -183,17 +183,9 @@ if ((is_mac) || (is_win) || (use_linux_c - ] - } - --if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mips64el" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { -+if ((current_cpu == "x64") || (is_android && current_cpu == "arm" && arm_use_neon) || (is_android && current_cpu == "arm64") || (is_android && current_cpu == "mips64el") || (is_android && current_cpu == "mipsel") || (is_android && current_cpu == "x86") || (is_win) || (use_linux_config && current_cpu == "arm" && arm_use_neon) || (use_linux_config && current_cpu == "arm") || (use_linux_config && current_cpu == "arm64") || (use_linux_config && current_cpu == "mipsel") || (use_linux_config && current_cpu == "x64") || (use_linux_config && current_cpu == "x86")) { - ffmpeg_c_sources += [ -- "libavcodec/aac_ac3_parser.c", -- "libavcodec/aac_parser.c", -- "libavcodec/aacadtsdec.c", -- "libavcodec/aacps_float.c", -- "libavcodec/aacpsdsp_float.c", -- "libavcodec/aacsbr.c", -- "libavcodec/aactab.c", - "libavcodec/ac3tab.c", -- "libavcodec/autorename_libavcodec_aacdec.c", - "libavcodec/autorename_libavcodec_mdct15.c", - "libavcodec/autorename_libavcodec_mpegaudiodsp.c", - "libavcodec/autorename_libavcodec_sbrdsp.c", -@@ -211,7 +203,6 @@ if ((current_cpu == "x64" && ffmpeg_bran - "libavcodec/mpegaudiodsp_float.c", - "libavcodec/sinewin.c", - "libavcodec/sinewin_fixed.c", -- "libavformat/aacdec.c", - "libavformat/apetag.c", - "libavformat/img2.c", - "libavformat/mov.c", -@@ -220,6 +211,20 @@ if ((current_cpu == "x64" && ffmpeg_bran - ] - } - -+if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mips64el" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { -+ ffmpeg_c_sources += [ -+ "libavcodec/aac_ac3_parser.c", -+ "libavcodec/aac_parser.c", -+ "libavcodec/aacadtsdec.c", -+ "libavcodec/aacps_float.c", -+ "libavcodec/aacpsdsp_float.c", -+ "libavcodec/aacsbr.c", -+ "libavcodec/aactab.c", -+ "libavcodec/autorename_libavcodec_aacdec.c", -+ "libavformat/aacdec.c", -+ ] -+} -+ - if ((is_android && current_cpu == "x64") || (is_android && current_cpu == "x86") || (is_mac) || (is_win) || (use_linux_config && current_cpu == "x64") || (use_linux_config && current_cpu == "x86")) { - ffmpeg_c_sources += [ - "libavcodec/x86/autorename_libavcodec_x86_vorbisdsp_init.c", -@@ -323,16 +328,20 @@ if ((is_mac) || (is_win) || (use_linux_c - if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { - ffmpeg_c_sources += [ - "libavcodec/x86/aacpsdsp_init.c", -+ ] -+ ffmpeg_yasm_sources += [ -+ "libavcodec/x86/aacpsdsp.asm", -+ ] -+} -+ -+if ((current_cpu == "x64") || (is_android && current_cpu == "x86") || (use_linux_config && current_cpu == "x64") || (use_linux_config && current_cpu == "x86") || (is_win)) { -+ ffmpeg_c_sources += [ - "libavcodec/x86/dct_init.c", - "libavcodec/x86/mdct15_init.c", - "libavcodec/x86/mpegaudiodsp.c", - "libavcodec/x86/sbrdsp_init.c", - ] --} -- --if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { - ffmpeg_yasm_sources += [ -- "libavcodec/x86/aacpsdsp.asm", - "libavcodec/x86/dct32.asm", - "libavcodec/x86/imdct36.asm", - "libavcodec/x86/mdct15.asm", -diff -up chromium-63.0.3239.84/third_party/ffmpeg/libavcodec/sbrdsp.c.mp3 chromium-63.0.3239.84/third_party/ffmpeg/libavcodec/sbrdsp.c ---- chromium-63.0.3239.84/third_party/ffmpeg/libavcodec/sbrdsp.c.mp3 2017-12-07 09:51:37.000000000 -0500 -+++ chromium-63.0.3239.84/third_party/ffmpeg/libavcodec/sbrdsp.c 2017-12-07 10:52:02.484509992 -0500 -@@ -23,6 +23,7 @@ - #define USE_FIXED 0 - - #include "aac.h" -+#include "aacsbrdata.h" - #include "config.h" - #include "libavutil/attributes.h" - #include "libavutil/intfloat.h" -diff -up chromium-63.0.3239.84/third_party/webrtc/examples/objc/AppRTCMobile/ios/resources/mozart.mp3 chromium-63.0.3239.84/third_party/webrtc/examples/objc/AppRTCMobile/ios/resources/mozart -diff -up chromium-63.0.3239.84/tools/android/audio_focus_grabber/java/res/raw/ping.mp3 chromium-63.0.3239.84/tools/android/audio_focus_grabber/java/res/raw/ping diff --git a/chromium-63.0.3289.84-fix-ffmpeg-aarch64.patch b/chromium-63.0.3289.84-fix-ffmpeg-aarch64.patch deleted file mode 100644 index 8df206b..0000000 --- a/chromium-63.0.3289.84-fix-ffmpeg-aarch64.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-63.0.3239.84/third_party/ffmpeg/ffmpeg_generated.gni.aarch64 chromium-63.0.3239.84/third_party/ffmpeg/ffmpeg_generated.gni ---- chromium-63.0.3239.84/third_party/ffmpeg/ffmpeg_generated.gni.aarch64 2017-12-07 11:23:07.077290535 -0500 -+++ chromium-63.0.3239.84/third_party/ffmpeg/ffmpeg_generated.gni 2017-12-07 11:27:30.354175021 -0500 -@@ -541,7 +541,7 @@ if (use_linux_config && current_cpu == " - ] - } - --if ((is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS")) { -+if ((is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64")) { - ffmpeg_c_sources += [ - "libavcodec/aarch64/aacpsdsp_init_aarch64.c", - "libavcodec/aarch64/mpegaudiodsp_init.c", diff --git a/chromium-63.0.3289.84-fix-ft-hb-unbundle.patch b/chromium-63.0.3289.84-fix-ft-hb-unbundle.patch deleted file mode 100644 index 9ca87ad..0000000 --- a/chromium-63.0.3289.84-fix-ft-hb-unbundle.patch +++ /dev/null @@ -1,36 +0,0 @@ -diff -up chromium-63.0.3239.84/build/linux/unbundle/freetype.gn.fixunbundle chromium-63.0.3239.84/build/linux/unbundle/freetype.gn ---- chromium-63.0.3239.84/build/linux/unbundle/freetype.gn.fixunbundle 2017-12-07 12:07:48.652161826 -0500 -+++ chromium-63.0.3239.84/build/linux/unbundle/freetype.gn 2017-12-07 12:08:52.514919585 -0500 -@@ -117,6 +117,14 @@ source_set("freetype") { - public_configs = [ ":freetype_config" ] - } - -+source_set("freetype_source") { -+ visibility = [ "//third_party:freetype_harfbuzz" ] -+ deps = [ -+ ":freetype_shim", -+ ] -+ public_configs = [ ":freetype_config" ] -+} -+ - source_set("bootstrap_freetype_for_harfbuzz") { - deps = [ - ":freetype_shim", -diff -up chromium-63.0.3239.84/build/linux/unbundle/harfbuzz-ng.gn.fixunbundle chromium-63.0.3239.84/build/linux/unbundle/harfbuzz-ng.gn ---- chromium-63.0.3239.84/build/linux/unbundle/harfbuzz-ng.gn.fixunbundle 2017-12-07 12:09:57.057661738 -0500 -+++ chromium-63.0.3239.84/build/linux/unbundle/harfbuzz-ng.gn 2017-12-07 12:10:03.225541404 -0500 -@@ -24,6 +24,14 @@ group("harfbuzz-ng") { - ] - } - -+source_set("harfbuzz_source") { -+ visibility = [ "//third_party:freetype_harfbuzz" ] -+ deps = [ -+ ":harfbuzz_shim", -+ ] -+ public_configs = [ ":system_harfbuzz" ] -+} -+ - source_set("harfbuzz-ng-ft") { - deps = [ - ":harfbuzz_shim", diff --git a/chromium-63.0.3289.84-gcc-round-fix.patch b/chromium-63.0.3289.84-gcc-round-fix.patch deleted file mode 100644 index 86d0a7e..0000000 --- a/chromium-63.0.3289.84-gcc-round-fix.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-63.0.3239.84/third_party/webrtc/p2p/base/port.cc.gcc-round-fix chromium-63.0.3239.84/third_party/webrtc/p2p/base/port.cc ---- chromium-63.0.3239.84/third_party/webrtc/p2p/base/port.cc.gcc-round-fix 2017-12-07 16:20:01.521717091 -0500 -+++ chromium-63.0.3239.84/third_party/webrtc/p2p/base/port.cc 2017-12-07 16:20:13.025491739 -0500 -@@ -11,6 +11,7 @@ - #include "p2p/base/port.h" - - #include -+#include - #include - - #include "p2p/base/common.h" diff --git a/chromium-63.0.3289.84-gcc5-r3.patch b/chromium-63.0.3289.84-gcc5-r3.patch deleted file mode 100644 index 83c6911..0000000 --- a/chromium-63.0.3289.84-gcc5-r3.patch +++ /dev/null @@ -1,104 +0,0 @@ -diff -up chromium-63.0.3239.84/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 chromium-63.0.3239.84/gpu/ipc/common/mailbox_struct_traits.h ---- chromium-63.0.3239.84/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 2017-12-06 15:05:28.000000000 -0500 -+++ chromium-63.0.3239.84/gpu/ipc/common/mailbox_struct_traits.h 2017-12-07 11:32:15.416636125 -0500 -@@ -15,7 +15,7 @@ namespace mojo { - template <> - struct StructTraits { - static base::span name(const gpu::Mailbox& mailbox) { -- return mailbox.name; -+ return base::make_span(mailbox.name); - } - static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out); - }; -diff -up chromium-63.0.3239.84/services/viz/public/cpp/compositing/filter_operation_struct_traits.h.gcc5-r3 chromium-63.0.3239.84/services/viz/public/cpp/compositing/filter_operation_struct_traits.h ---- chromium-63.0.3239.84/services/viz/public/cpp/compositing/filter_operation_struct_traits.h.gcc5-r3 2017-12-06 15:05:31.000000000 -0500 -+++ chromium-63.0.3239.84/services/viz/public/cpp/compositing/filter_operation_struct_traits.h 2017-12-07 11:32:15.422636011 -0500 -@@ -134,7 +134,7 @@ struct StructTraits matrix(const cc::FilterOperation& operation) { - if (operation.type() != cc::FilterOperation::COLOR_MATRIX) - return base::span(); -- return operation.matrix(); -+ return base::make_span(operation.matrix()); - } - - static base::span shape( -diff -up chromium-63.0.3239.84/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 chromium-63.0.3239.84/services/viz/public/cpp/compositing/quads_struct_traits.h ---- chromium-63.0.3239.84/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 2017-12-07 11:32:15.429635877 -0500 -+++ chromium-63.0.3239.84/services/viz/public/cpp/compositing/quads_struct_traits.h 2017-12-07 11:34:00.081601880 -0500 -@@ -309,7 +309,7 @@ struct StructTraits vertex_opacity(const viz::DrawQuad& input) { - const viz::TextureDrawQuad* quad = - viz::TextureDrawQuad::MaterialCast(&input); -- return quad->vertex_opacity; -+ return base::make_span(quad->vertex_opacity); - } - - static bool y_flipped(const viz::DrawQuad& input) { -diff -up chromium-63.0.3239.84/third_party/WebKit/Source/platform/exported/WebCORS.cpp.gcc5-r3 chromium-63.0.3239.84/third_party/WebKit/Source/platform/exported/WebCORS.cpp ---- chromium-63.0.3239.84/third_party/WebKit/Source/platform/exported/WebCORS.cpp.gcc5-r3 2017-12-06 15:05:46.000000000 -0500 -+++ chromium-63.0.3239.84/third_party/WebKit/Source/platform/exported/WebCORS.cpp 2017-12-07 11:32:15.430635859 -0500 -@@ -480,7 +480,7 @@ WebString AccessControlErrorString( - } - default: - NOTREACHED(); -- return ""; -+ return WebString(); - } - } - -@@ -512,7 +512,7 @@ WebString PreflightErrorString(const Pre - } - default: - NOTREACHED(); -- return ""; -+ return WebString(); - } - } - -@@ -533,7 +533,7 @@ WebString RedirectErrorString(const Redi - } - default: - NOTREACHED(); -- return ""; -+ return WebString(); - } - } - -diff -up chromium-63.0.3239.84/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h.gcc5-r3 chromium-63.0.3239.84/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h ---- chromium-63.0.3239.84/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h.gcc5-r3 2017-12-06 15:05:46.000000000 -0500 -+++ chromium-63.0.3239.84/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h 2017-12-07 11:32:15.408636277 -0500 -@@ -63,7 +63,7 @@ class WTF_EXPORT ArrayBufferContents { - allocation_length_(0), - data_(data), - data_length_(0), -- kind_(AllocationKind::kNormal), -+ kind_(WTF::ArrayBufferContents::AllocationKind::kNormal), - deleter_(deleter) {} - DataHandle(void* allocation_base, - size_t allocation_length, -@@ -94,11 +94,11 @@ class WTF_EXPORT ArrayBufferContents { - reinterpret_cast(allocation_base_) + - allocation_length_); - switch (kind_) { -- case AllocationKind::kNormal: -+ case WTF::ArrayBufferContents::AllocationKind::kNormal: - DCHECK(deleter_); - deleter_(data_); - return; -- case AllocationKind::kReservation: -+ case WTF::ArrayBufferContents::AllocationKind::kReservation: - ReleaseReservedMemory(allocation_base_, allocation_length_); - return; - } -diff -up chromium-63.0.3239.84/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 chromium-63.0.3239.84/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc ---- chromium-63.0.3239.84/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 2017-12-07 11:32:15.409636258 -0500 -+++ chromium-63.0.3239.84/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2017-12-07 11:33:10.714561105 -0500 -@@ -10,7 +10,7 @@ - - #include "modules/audio_processing/aec3/aec_state.h" - --#include -+#include - #include - #include - diff --git a/chromium-63.0.3289.84-nolibc++.patch b/chromium-63.0.3289.84-nolibc++.patch deleted file mode 100644 index 0d999c8..0000000 --- a/chromium-63.0.3289.84-nolibc++.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -up chromium-63.0.3239.84/remoting/host/linux/BUILD.gn.nolibc++ chromium-63.0.3239.84/remoting/host/linux/BUILD.gn ---- chromium-63.0.3239.84/remoting/host/linux/BUILD.gn.nolibc++ 2017-12-07 11:55:43.173273434 -0500 -+++ chromium-63.0.3239.84/remoting/host/linux/BUILD.gn 2017-12-07 11:55:53.244077772 -0500 -@@ -62,11 +62,9 @@ if (enable_me2me_host) { - if (is_component_build) { - sources += [ - "$root_build_dir/libbase.so", -- "$root_build_dir/libc++.so", - ] - deps += [ - "//base:base", -- "//buildtools/third_party/libc++:libc++", - ] - } - } diff --git a/chromium-63.0.3289.84-setopaque.patch b/chromium-63.0.3289.84-setopaque.patch deleted file mode 100644 index 8fb585a..0000000 --- a/chromium-63.0.3289.84-setopaque.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-63.0.3239.84/cc/blink/web_layer_impl.h.setopaque chromium-63.0.3239.84/cc/blink/web_layer_impl.h ---- chromium-63.0.3239.84/cc/blink/web_layer_impl.h.setopaque 2017-12-07 10:47:48.262446682 -0500 -+++ chromium-63.0.3239.84/cc/blink/web_layer_impl.h 2017-12-07 10:48:47.437298948 -0500 -@@ -67,7 +67,7 @@ class CC_BLINK_EXPORT WebLayerImpl : pub - void SetIsRootForIsolatedGroup(bool root) override; - bool IsRootForIsolatedGroup() override; - void SetHitTestableWithoutDrawsContent(bool should_hit_test) override; -- void SetOpaque(bool opaque) override; -+ CC_BLINK_EXPORT void SetOpaque(bool opaque) override; - bool Opaque() const override; - void SetPosition(const blink::WebFloatPoint& position) override; - blink::WebFloatPoint GetPosition() const override; diff --git a/chromium-64.0.3282.119-enable-mp3.patch b/chromium-64.0.3282.119-enable-mp3.patch deleted file mode 100644 index 849b5ee..0000000 --- a/chromium-64.0.3282.119-enable-mp3.patch +++ /dev/null @@ -1,54 +0,0 @@ -diff -up chromium-64.0.3282.119/media/base/mime_util_internal.cc.mp3 chromium-64.0.3282.119/media/base/mime_util_internal.cc ---- chromium-64.0.3282.119/media/base/mime_util_internal.cc.mp3 2018-01-24 15:05:48.000000000 -0500 -+++ chromium-64.0.3282.119/media/base/mime_util_internal.cc 2018-01-25 11:18:12.354147726 -0500 -@@ -279,15 +279,19 @@ void MimeUtil::AddSupportedMediaFormats( - CodecSet webm_codecs(webm_audio_codecs); - webm_codecs.insert(webm_video_codecs.begin(), webm_video_codecs.end()); - --#if BUILDFLAG(USE_PROPRIETARY_CODECS) - const CodecSet mp3_codecs{MP3}; -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - const CodecSet aac{MPEG2_AAC, MPEG4_AAC}; -+#else -+ const CodecSet aac{}; -+#endif -+ CodecSet mp4_audio_codecs(aac); -+ mp4_audio_codecs.emplace(MP3); - -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - CodecSet avc_and_aac(aac); - avc_and_aac.emplace(H264); - -- CodecSet mp4_audio_codecs(aac); -- mp4_audio_codecs.emplace(MP3); - mp4_audio_codecs.emplace(FLAC); - #if BUILDFLAG(ENABLE_AC3_EAC3_AUDIO_DEMUXING) - mp4_audio_codecs.emplace(AC3); -@@ -329,10 +333,10 @@ void MimeUtil::AddSupportedMediaFormats( - AddContainerWithCodecs("application/ogg", ogg_codecs, false); - AddContainerWithCodecs("audio/flac", implicit_codec, false); - --#if BUILDFLAG(USE_PROPRIETARY_CODECS) - AddContainerWithCodecs("audio/mpeg", mp3_codecs, true); // Allow "mp3". - AddContainerWithCodecs("audio/mp3", implicit_codec, true); - AddContainerWithCodecs("audio/x-mp3", implicit_codec, true); -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - AddContainerWithCodecs("audio/aac", implicit_codec, true); // AAC / ADTS. - AddContainerWithCodecs("audio/mp4", mp4_audio_codecs, true); - DCHECK(!mp4_video_codecs.empty()); -@@ -970,7 +974,6 @@ bool MimeUtil::IsCodecProprietary(Codec - case INVALID_CODEC: - case AC3: - case EAC3: -- case MP3: - case MPEG2_AAC: - case MPEG4_AAC: - case H264: -@@ -978,6 +981,7 @@ bool MimeUtil::IsCodecProprietary(Codec - case DOLBY_VISION: - return true; - -+ case MP3: - case PCM: - case VORBIS: - case OPUS: diff --git a/chromium-64.0.3282.119-gcc-constexpr-fix.patch b/chromium-64.0.3282.119-gcc-constexpr-fix.patch deleted file mode 100644 index 57b63cd..0000000 --- a/chromium-64.0.3282.119-gcc-constexpr-fix.patch +++ /dev/null @@ -1,70 +0,0 @@ -diff -up chromium-64.0.3282.119/third_party/angle/src/compiler/translator/StaticType.h.gcc-constexpr chromium-64.0.3282.119/third_party/angle/src/compiler/translator/StaticType.h ---- chromium-64.0.3282.119/third_party/angle/src/compiler/translator/StaticType.h.gcc-constexpr 2018-01-25 15:50:16.971171007 -0500 -+++ chromium-64.0.3282.119/third_party/angle/src/compiler/translator/StaticType.h 2018-01-25 15:51:14.158053914 -0500 -@@ -160,7 +160,7 @@ template --const TType *GetForVecMatHelper(unsigned char primarySize) -+constexpr const TType *GetForVecMatHelper(unsigned char primarySize) - { - static_assert(basicType == EbtFloat || basicType == EbtInt || basicType == EbtUInt || - basicType == EbtBool, -@@ -186,7 +186,7 @@ const TType *GetForVecMatHelper(unsigned - template --const TType *GetForVecMat(unsigned char primarySize, unsigned char secondarySize = 1) -+constexpr const TType *GetForVecMat(unsigned char primarySize, unsigned char secondarySize = 1) - { - static_assert(basicType == EbtFloat || basicType == EbtInt || basicType == EbtUInt || - basicType == EbtBool, -@@ -208,7 +208,7 @@ const TType *GetForVecMat(unsigned char - } - - template --const TType *GetForVec(TQualifier qualifier, unsigned char size) -+constexpr const TType *GetForVec(TQualifier qualifier, unsigned char size) - { - switch (qualifier) - { -diff -up chromium-64.0.3282.119/third_party/angle/src/compiler/translator/SymbolTable.cpp.gcc-constexpr chromium-64.0.3282.119/third_party/angle/src/compiler/translator/SymbolTable.cpp ---- chromium-64.0.3282.119/third_party/angle/src/compiler/translator/SymbolTable.cpp.gcc-constexpr 2018-01-25 15:51:27.670790008 -0500 -+++ chromium-64.0.3282.119/third_party/angle/src/compiler/translator/SymbolTable.cpp 2018-01-25 15:52:04.117077652 -0500 -@@ -189,7 +189,7 @@ TSymbolTable::~TSymbolTable() - pop(); - } - --bool IsGenType(const TType *type) -+constexpr bool IsGenType(const TType *type) - { - if (type) - { -@@ -201,7 +201,7 @@ bool IsGenType(const TType *type) - return false; - } - --bool IsVecType(const TType *type) -+constexpr bool IsVecType(const TType *type) - { - if (type) - { -diff -up chromium-64.0.3282.119/third_party/angle/src/compiler/translator/Types.h.gcc-constexpr chromium-64.0.3282.119/third_party/angle/src/compiler/translator/Types.h ---- chromium-64.0.3282.119/third_party/angle/src/compiler/translator/Types.h.gcc-constexpr 2018-01-25 15:52:15.042864767 -0500 -+++ chromium-64.0.3282.119/third_party/angle/src/compiler/translator/Types.h 2018-01-25 15:52:56.763049389 -0500 -@@ -236,13 +236,13 @@ class TType - { - } - -- TBasicType getBasicType() const { return type; } -+ constexpr TBasicType getBasicType() const { return type; } - void setBasicType(TBasicType t); - - TPrecision getPrecision() const { return precision; } - void setPrecision(TPrecision p) { precision = p; } - -- TQualifier getQualifier() const { return qualifier; } -+ constexpr TQualifier getQualifier() const { return qualifier; } - void setQualifier(TQualifier q) { qualifier = q; } - - bool isInvariant() const { return invariant; } diff --git a/chromium-64.0.3282.119-gcc-round-fix.patch b/chromium-64.0.3282.119-gcc-round-fix.patch deleted file mode 100644 index 465808c..0000000 --- a/chromium-64.0.3282.119-gcc-round-fix.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-64.0.3282.119/third_party/webrtc/p2p/base/port.cc.gcc-round-fix chromium-64.0.3282.119/third_party/webrtc/p2p/base/port.cc ---- chromium-64.0.3282.119/third_party/webrtc/p2p/base/port.cc.gcc-round-fix 2018-01-25 12:03:14.696443814 -0500 -+++ chromium-64.0.3282.119/third_party/webrtc/p2p/base/port.cc 2018-01-25 12:20:26.446448618 -0500 -@@ -10,7 +10,7 @@ - - #include "p2p/base/port.h" - --#include -+#include - - #include - #include diff --git a/chromium-64.0.3282.119-gcc5-r3.patch b/chromium-64.0.3282.119-gcc5-r3.patch deleted file mode 100644 index 3679ecf..0000000 --- a/chromium-64.0.3282.119-gcc5-r3.patch +++ /dev/null @@ -1,75 +0,0 @@ -diff -up chromium-64.0.3282.119/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 chromium-64.0.3282.119/gpu/ipc/common/mailbox_struct_traits.h ---- chromium-64.0.3282.119/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 2018-01-24 15:05:47.000000000 -0500 -+++ chromium-64.0.3282.119/gpu/ipc/common/mailbox_struct_traits.h 2018-01-25 11:58:48.251623423 -0500 -@@ -15,7 +15,7 @@ namespace mojo { - template <> - struct StructTraits { - static base::span name(const gpu::Mailbox& mailbox) { -- return mailbox.name; -+ return base::make_span(mailbox.name); - } - static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out); - }; -diff -up chromium-64.0.3282.119/services/viz/public/cpp/compositing/filter_operation_struct_traits.h.gcc5-r3 chromium-64.0.3282.119/services/viz/public/cpp/compositing/filter_operation_struct_traits.h ---- chromium-64.0.3282.119/services/viz/public/cpp/compositing/filter_operation_struct_traits.h.gcc5-r3 2018-01-24 15:05:51.000000000 -0500 -+++ chromium-64.0.3282.119/services/viz/public/cpp/compositing/filter_operation_struct_traits.h 2018-01-25 11:58:48.252623400 -0500 -@@ -137,7 +137,7 @@ struct StructTraits matrix(const cc::FilterOperation& operation) { - if (operation.type() != cc::FilterOperation::COLOR_MATRIX) - return base::span(); -- return operation.matrix(); -+ return base::make_span(operation.matrix()); - } - - static base::span shape( -diff -up chromium-64.0.3282.119/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 chromium-64.0.3282.119/services/viz/public/cpp/compositing/quads_struct_traits.h ---- chromium-64.0.3282.119/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 2018-01-24 15:05:51.000000000 -0500 -+++ chromium-64.0.3282.119/services/viz/public/cpp/compositing/quads_struct_traits.h 2018-01-25 11:58:48.252623400 -0500 -@@ -308,7 +308,7 @@ struct StructTraits vertex_opacity(const viz::DrawQuad& input) { - const viz::TextureDrawQuad* quad = - viz::TextureDrawQuad::MaterialCast(&input); -- return quad->vertex_opacity; -+ return base::make_span(quad->vertex_opacity); - } - - static bool y_flipped(const viz::DrawQuad& input) { -diff -up chromium-64.0.3282.119/third_party/WebKit/Source/platform/exported/WebCORS.cpp.gcc5-r3 chromium-64.0.3282.119/third_party/WebKit/Source/platform/exported/WebCORS.cpp -diff -up chromium-64.0.3282.119/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h.gcc5-r3 chromium-64.0.3282.119/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h ---- chromium-64.0.3282.119/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h.gcc5-r3 2018-01-24 15:06:11.000000000 -0500 -+++ chromium-64.0.3282.119/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h 2018-01-25 11:58:48.253623376 -0500 -@@ -62,7 +62,7 @@ class WTF_EXPORT ArrayBufferContents { - allocation_length_(0), - data_(data), - data_length_(0), -- kind_(AllocationKind::kNormal), -+ kind_(WTF::ArrayBufferContents::AllocationKind::kNormal), - deleter_(deleter) {} - DataHandle(void* allocation_base, - size_t allocation_length, -@@ -93,11 +93,11 @@ class WTF_EXPORT ArrayBufferContents { - reinterpret_cast(allocation_base_) + - allocation_length_); - switch (kind_) { -- case AllocationKind::kNormal: -+ case WTF::ArrayBufferContents::AllocationKind::kNormal: - DCHECK(deleter_); - deleter_(data_); - return; -- case AllocationKind::kReservation: -+ case WTF::ArrayBufferContents::AllocationKind::kReservation: - ReleaseReservedMemory(allocation_base_, allocation_length_); - return; - } -diff -up chromium-64.0.3282.119/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 chromium-64.0.3282.119/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc ---- chromium-64.0.3282.119/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 2018-01-25 11:58:48.253623376 -0500 -+++ chromium-64.0.3282.119/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2018-01-25 12:01:28.769900550 -0500 -@@ -10,7 +10,7 @@ - - #include "modules/audio_processing/aec3/aec_state.h" - --#include -+#include - - #include - #include diff --git a/chromium-64.0.3282.119-gcc5.patch b/chromium-64.0.3282.119-gcc5.patch deleted file mode 100644 index 0fdc39f..0000000 --- a/chromium-64.0.3282.119-gcc5.patch +++ /dev/null @@ -1,57 +0,0 @@ -diff -up chromium-64.0.3282.119/third_party/webgl/src/specs/latest/2.0/webgl2.idl.gcc5 chromium-64.0.3282.119/third_party/webgl/src/specs/latest/2.0/webgl2.idl ---- chromium-64.0.3282.119/third_party/webgl/src/specs/latest/2.0/webgl2.idl.gcc5 2018-01-25 11:07:27.179175007 -0500 -+++ chromium-64.0.3282.119/third_party/webgl/src/specs/latest/2.0/webgl2.idl 2018-01-25 11:07:38.037925336 -0500 -@@ -263,7 +263,7 @@ interface WebGL2RenderingContextBase - 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 -up chromium-64.0.3282.119/third_party/WebKit/Source/core/dom/NodeFilter.h.gcc5 chromium-64.0.3282.119/third_party/WebKit/Source/core/dom/NodeFilter.h ---- chromium-64.0.3282.119/third_party/WebKit/Source/core/dom/NodeFilter.h.gcc5 2018-01-25 11:11:08.581962228 -0500 -+++ chromium-64.0.3282.119/third_party/WebKit/Source/core/dom/NodeFilter.h 2018-01-25 11:11:24.062593478 -0500 -@@ -49,7 +49,7 @@ class NodeFilter final { - * to the value of NodeType for the equivalent node type. - */ - enum { -- kShowAll = 0xFFFFFFFF, -+ kShowAll = 256 /* 0xFFFFFFFF */, - kShowElement = 0x00000001, - kShowAttribute = 0x00000002, - kShowText = 0x00000004, -diff -up chromium-64.0.3282.119/third_party/WebKit/Source/core/dom/NodeFilter.idl.gcc5 chromium-64.0.3282.119/third_party/WebKit/Source/core/dom/NodeFilter.idl ---- chromium-64.0.3282.119/third_party/WebKit/Source/core/dom/NodeFilter.idl.gcc5 2018-01-25 11:11:34.816335412 -0500 -+++ chromium-64.0.3282.119/third_party/WebKit/Source/core/dom/NodeFilter.idl 2018-01-25 11:12:23.380171262 -0500 -@@ -27,7 +27,7 @@ callback interface NodeFilter { - const unsigned short FILTER_SKIP = 3; - - // Constants for whatToShow -- const unsigned long SHOW_ALL = 0xFFFFFFFF; -+ const unsigned long SHOW_ALL = 256; // 0xFFFFFFFF - const unsigned long SHOW_ELEMENT = 0x1; - const unsigned long SHOW_ATTRIBUTE = 0x2; // historical - const unsigned long SHOW_TEXT = 0x4; -diff -up chromium-64.0.3282.119/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl.gcc5 chromium-64.0.3282.119/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl ---- chromium-64.0.3282.119/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl.gcc5 2018-01-25 11:12:57.367363214 -0500 -+++ chromium-64.0.3282.119/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl 2018-01-25 11:13:29.883590960 -0500 -@@ -241,7 +241,7 @@ typedef unsigned long long GLuint64; - 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; -@@ -271,7 +271,7 @@ typedef unsigned long long GLuint64; - const GLenum TEXTURE_IMMUTABLE_FORMAT = 0x912F; - const GLenum MAX_ELEMENT_INDEX = 0x8D6B; - const GLenum TEXTURE_IMMUTABLE_LEVELS = 0x82DF; -- const GLint TIMEOUT_IGNORED = -1; -+ const GLint TIMEOUT_IGNORED = 256; - - /* WebGL-specific enums */ - const GLenum MAX_CLIENT_WAIT_TIMEOUT_WEBGL = 0x9247; diff --git a/chromium-64.0.3282.119-gcc7.patch b/chromium-64.0.3282.119-gcc7.patch deleted file mode 100644 index 7fe383e..0000000 --- a/chromium-64.0.3282.119-gcc7.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-64.0.3282.119/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 chromium-64.0.3282.119/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h ---- chromium-64.0.3282.119/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 2018-01-25 11:15:00.291466617 -0500 -+++ chromium-64.0.3282.119/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h 2018-01-25 11:16:36.159320291 -0500 -@@ -10,6 +10,7 @@ - #include "platform/wtf/Functional.h" - #include "platform/wtf/ThreadSpecific.h" - -+#include - #include - - namespace blink { diff --git a/chromium-64.0.3282.119-memcpy-fix.patch b/chromium-64.0.3282.119-memcpy-fix.patch deleted file mode 100644 index 39c3c25..0000000 --- a/chromium-64.0.3282.119-memcpy-fix.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-64.0.3282.119/cc/paint/raw_memory_transfer_cache_entry.cc.memcpyfix chromium-64.0.3282.119/cc/paint/raw_memory_transfer_cache_entry.cc ---- chromium-64.0.3282.119/cc/paint/raw_memory_transfer_cache_entry.cc.memcpyfix 2018-01-26 15:04:44.708100850 -0500 -+++ chromium-64.0.3282.119/cc/paint/raw_memory_transfer_cache_entry.cc 2018-01-26 15:04:54.234915081 -0500 -@@ -3,6 +3,7 @@ - // found in the LICENSE file. - - #include "cc/paint/raw_memory_transfer_cache_entry.h" -+#include - - namespace cc { - diff --git a/chromium-64.0.3282.167-gcc8-fabi11.patch b/chromium-64.0.3282.167-gcc8-fabi11.patch deleted file mode 100644 index 5f0c527..0000000 --- a/chromium-64.0.3282.167-gcc8-fabi11.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -up chromium-64.0.3282.167/tools/gn/bootstrap/bootstrap.py.fabi11 chromium-64.0.3282.167/tools/gn/bootstrap/bootstrap.py ---- chromium-64.0.3282.167/tools/gn/bootstrap/bootstrap.py.fabi11 2018-02-19 11:39:15.807713662 -0500 -+++ chromium-64.0.3282.167/tools/gn/bootstrap/bootstrap.py 2018-02-19 11:39:47.038070341 -0500 -@@ -336,6 +336,11 @@ def write_gn_ninja(path, root_gen_dir, o - cflags = os.environ.get('CFLAGS', '').split() - cflags_cc = os.environ.get('CXXFLAGS', '').split() - ldflags = os.environ.get('LDFLAGS', '').split() -+ -+ # Work around GCC8 bug gcc#84286 -+ cflags.extend(['-fabi-version=11']) -+ cflags_cc.extend(['-fabi-version=11']) -+ - include_dirs = [root_gen_dir, SRC_ROOT] - libs = [] - diff --git a/chromium-65.0.3325.146-Fix-non-copyable-class-s-optional-move.patch b/chromium-65.0.3325.146-Fix-non-copyable-class-s-optional-move.patch deleted file mode 100644 index 6cf8ca8..0000000 --- a/chromium-65.0.3325.146-Fix-non-copyable-class-s-optional-move.patch +++ /dev/null @@ -1,41 +0,0 @@ -diff -up chromium-65.0.3325.146/base/optional.h.noncopyable chromium-65.0.3325.146/base/optional.h ---- chromium-65.0.3325.146/base/optional.h.noncopyable 2018-03-13 16:52:15.953729689 -0400 -+++ chromium-65.0.3325.146/base/optional.h 2018-03-13 16:53:55.365792522 -0400 -@@ -45,6 +45,15 @@ struct OptionalStorageBase { - - // When T is not trivially destructible we must call its - // destructor before deallocating its memory. -+ // Note that this hides the (implicitly declared) move constructor, which -+ // would be used for constexpr move constructor in OptionalStorage. -+ // It is needed iff T is trivially move constructible. However, the current -+ // is_trivially_{copy,move}_constructible implementation requires -+ // is_trivially_destructible (which looks a bug, cf: -+ // https://gcc.gnu.org/bugzilla/show_bug.cgi?id=51452 and -+ // http://cplusplus.github.io/LWG/lwg-active.html#2116), so it is not -+ // necessary for this case at the moment. Please see also the destructor -+ // comment in "is_trivially_destructible = true" specialization below. - ~OptionalStorageBase() { - if (!is_null_) - value_.~T(); -@@ -78,9 +87,18 @@ struct OptionalStorageBase(args)...) {} - - // When T is trivially destructible (i.e. its destructor does nothing) there -- // is no need to call it. Explicitly defaulting the destructor means it's not -- // user-provided. Those two together make this destructor trivial. -- ~OptionalStorageBase() = default; -+ // is no need to call it. Implicitly defined destructor is trivial, because -+ // both members (bool and union containing only variants which are trivially -+ // destructible) are trivially destructible. -+ // Explicitly-defaulted destructor is also trivial, but do not use it here, -+ // because it hides the implicit move constructor. It is needed to implement -+ // constexpr move constructor in OptionalStorage iff T is trivially move -+ // constructible. Note that, if T is trivially move constructible, the move -+ // constructor of OptionalStorageBase is also implicitly defined and it is -+ // trivially move constructor. If T is not trivially move constructible, -+ // "not declaring move constructor without destructor declaration" here means -+ // "delete move constructor", which works because any move constructor of -+ // OptionalStorage will not refer to it in that case. - - template - void Init(Args&&... args) { diff --git a/chromium-65.0.3325.146-GCC-IDB-methods-String-renamed-to-GetString.patch b/chromium-65.0.3325.146-GCC-IDB-methods-String-renamed-to-GetString.patch deleted file mode 100644 index dbdf68f..0000000 --- a/chromium-65.0.3325.146-GCC-IDB-methods-String-renamed-to-GetString.patch +++ /dev/null @@ -1,108 +0,0 @@ -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/bindings/modules/v8/V8BindingForModules.cpp.GetString chromium-65.0.3325.146/third_party/WebKit/Source/bindings/modules/v8/V8BindingForModules.cpp ---- chromium-65.0.3325.146/third_party/WebKit/Source/bindings/modules/v8/V8BindingForModules.cpp.GetString 2018-03-13 22:54:27.262671113 -0400 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/bindings/modules/v8/V8BindingForModules.cpp 2018-03-13 22:55:47.722113713 -0400 -@@ -68,7 +68,7 @@ v8::Local ToV8(const IDBKeyPa - case IDBKeyPath::kNullType: - return v8::Null(isolate); - case IDBKeyPath::kStringType: -- return V8String(isolate, value.String()); -+ return V8String(isolate, value.GetString()); - case IDBKeyPath::kArrayType: - return ToV8(value.Array(), creation_context, isolate); - } -@@ -97,7 +97,7 @@ v8::Local ToV8(const IDBKey* - case IDBKey::kNumberType: - return v8::Number::New(isolate, key->Number()); - case IDBKey::kStringType: -- return V8String(isolate, key->String()); -+ return V8String(isolate, key->GetString()); - case IDBKey::kBinaryType: - // https://w3c.github.io/IndexedDB/#convert-a-value-to-a-key - return ToV8(DOMArrayBuffer::Create(key->Binary()), creation_context, -@@ -379,7 +379,7 @@ static std::unique_ptr CreateIDB - } - - DCHECK_EQ(key_path.GetType(), IDBKeyPath::kStringType); -- return CreateIDBKeyFromValueAndKeyPath(isolate, value, key_path.String(), -+ return CreateIDBKeyFromValueAndKeyPath(isolate, value, key_path.GetString(), - exception_state); - } - -@@ -483,7 +483,7 @@ bool InjectV8KeyIntoV8Value(v8::Isolate* - DCHECK(isolate->InContext()); - - DCHECK_EQ(key_path.GetType(), IDBKeyPath::kStringType); -- Vector key_path_elements = ParseKeyPath(key_path.String()); -+ Vector key_path_elements = ParseKeyPath(key_path.GetString()); - - // The conbination of a key generator and an empty key path is forbidden by - // spec. -@@ -569,7 +569,7 @@ bool CanInjectIDBKeyIntoScriptValue(v8:: - const IDBKeyPath& key_path) { - IDB_TRACE("canInjectIDBKeyIntoScriptValue"); - DCHECK_EQ(key_path.GetType(), IDBKeyPath::kStringType); -- Vector key_path_elements = ParseKeyPath(key_path.String()); -+ Vector key_path_elements = ParseKeyPath(key_path.GetString()); - - if (!key_path_elements.size()) - return false; -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/modules/exported/WebIDBKey.cpp.GetString chromium-65.0.3325.146/third_party/WebKit/Source/modules/exported/WebIDBKey.cpp ---- chromium-65.0.3325.146/third_party/WebKit/Source/modules/exported/WebIDBKey.cpp.GetString 2018-03-13 22:56:04.041798217 -0400 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/modules/exported/WebIDBKey.cpp 2018-03-13 22:56:22.481440993 -0400 -@@ -56,7 +56,7 @@ WebData WebIDBKeyView::Binary() const { - } - - WebString WebIDBKeyView::String() const { -- return private_->String(); -+ return private_->GetString(); - } - - double WebIDBKeyView::Date() const { -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBDatabase.cpp.GetString chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBDatabase.cpp ---- chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBDatabase.cpp.GetString 2018-03-13 22:56:36.028178758 -0400 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBDatabase.cpp 2018-03-13 22:56:58.846736831 -0400 -@@ -297,7 +297,7 @@ IDBObjectStore* IDBDatabase::createObjec - } - - if (auto_increment && ((key_path.GetType() == IDBKeyPath::kStringType && -- key_path.String().IsEmpty()) || -+ key_path.GetString().IsEmpty()) || - key_path.GetType() == IDBKeyPath::kArrayType)) { - exception_state.ThrowDOMException( - kInvalidAccessError, -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBKey.h.GetString chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBKey.h ---- chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBKey.h.GetString 2018-03-13 22:57:13.229458842 -0400 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBKey.h 2018-03-13 22:57:38.633966776 -0400 -@@ -106,7 +106,7 @@ class MODULES_EXPORT IDBKey { - return binary_; - } - -- const String& String() const { -+ const String& GetString() const { - DCHECK_EQ(type_, kStringType); - return string_; - } -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBKeyPath.h.GetString chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBKeyPath.h ---- chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBKeyPath.h.GetString 2018-03-13 22:57:51.104725428 -0400 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBKeyPath.h 2018-03-13 22:58:09.459369906 -0400 -@@ -65,7 +65,7 @@ class MODULES_EXPORT IDBKeyPath { - return array_; - } - -- const String& String() const { -+ const String& GetString() const { - DCHECK_EQ(type_, kStringType); - return string_; - } -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/InspectorIndexedDBAgent.cpp.GetString chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/InspectorIndexedDBAgent.cpp ---- chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/InspectorIndexedDBAgent.cpp.GetString 2018-03-13 22:58:28.778995834 -0400 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/InspectorIndexedDBAgent.cpp 2018-03-13 22:58:45.044681364 -0400 -@@ -399,7 +399,7 @@ static std::unique_ptr KeyPathF - case IDBKeyPath::kStringType: - key_path = KeyPath::create() - .setType(KeyPath::TypeEnum::String) -- .setString(idb_key_path.String()) -+ .setString(idb_key_path.GetString()) - .build(); - break; - case IDBKeyPath::kArrayType: { diff --git a/chromium-65.0.3325.146-GCC-PlaybackImageProvider-Settings-do-not-provide-co.patch b/chromium-65.0.3325.146-GCC-PlaybackImageProvider-Settings-do-not-provide-co.patch deleted file mode 100644 index 8edc424..0000000 --- a/chromium-65.0.3325.146-GCC-PlaybackImageProvider-Settings-do-not-provide-co.patch +++ /dev/null @@ -1,22 +0,0 @@ -diff -up chromium-65.0.3325.146/cc/raster/playback_image_provider.cc.pipcc chromium-65.0.3325.146/cc/raster/playback_image_provider.cc ---- chromium-65.0.3325.146/cc/raster/playback_image_provider.cc.pipcc 2018-03-13 22:47:00.271322726 -0400 -+++ chromium-65.0.3325.146/cc/raster/playback_image_provider.cc 2018-03-13 22:47:53.127300060 -0400 -@@ -92,7 +92,6 @@ PlaybackImageProvider::GetDecodedDrawIma - } - - PlaybackImageProvider::Settings::Settings() = default; --PlaybackImageProvider::Settings::Settings(const Settings& other) = default; - PlaybackImageProvider::Settings::~Settings() = default; - - } // namespace cc -diff -up chromium-65.0.3325.146/cc/raster/playback_image_provider.h.pipcc chromium-65.0.3325.146/cc/raster/playback_image_provider.h ---- chromium-65.0.3325.146/cc/raster/playback_image_provider.h.pipcc 2018-03-13 22:48:00.673153629 -0400 -+++ chromium-65.0.3325.146/cc/raster/playback_image_provider.h 2018-03-13 22:48:12.726920597 -0400 -@@ -20,7 +20,6 @@ class CC_EXPORT PlaybackImageProvider : - public: - struct CC_EXPORT Settings { - Settings(); -- Settings(const Settings& other); - ~Settings(); - - // The set of image ids to skip during raster. diff --git a/chromium-65.0.3325.146-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch b/chromium-65.0.3325.146-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch deleted file mode 100644 index 62124be..0000000 --- a/chromium-65.0.3325.146-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch +++ /dev/null @@ -1,33 +0,0 @@ -diff -up chromium-65.0.3325.146/services/preferences/tracked/pref_hash_filter.h.fulldecl chromium-65.0.3325.146/services/preferences/tracked/pref_hash_filter.h ---- chromium-65.0.3325.146/services/preferences/tracked/pref_hash_filter.h.fulldecl 2018-03-13 16:38:38.870652491 -0400 -+++ chromium-65.0.3325.146/services/preferences/tracked/pref_hash_filter.h 2018-03-13 16:39:02.691186647 -0400 -@@ -21,9 +21,9 @@ - #include "services/preferences/public/interfaces/preferences.mojom.h" - #include "services/preferences/tracked/hash_store_contents.h" - #include "services/preferences/tracked/interceptable_pref_filter.h" -+#include "services/preferences/tracked/pref_hash_store.h" - #include "services/preferences/tracked/tracked_preference.h" - --class PrefHashStore; - class PrefService; - - namespace base { -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/modules/webdatabase/SQLTransactionBackend.h.fulldecl chromium-65.0.3325.146/third_party/WebKit/Source/modules/webdatabase/SQLTransactionBackend.h ---- chromium-65.0.3325.146/third_party/WebKit/Source/modules/webdatabase/SQLTransactionBackend.h.fulldecl 2018-03-13 16:39:13.787970233 -0400 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/modules/webdatabase/SQLTransactionBackend.h 2018-03-13 16:39:42.614407235 -0400 -@@ -30,6 +30,7 @@ - - #include - #include "modules/webdatabase/DatabaseBasicTypes.h" -+#include "modules/webdatabase/SQLError.h" - #include "modules/webdatabase/SQLStatement.h" - #include "modules/webdatabase/SQLStatementBackend.h" - #include "modules/webdatabase/SQLTransactionStateMachine.h" -@@ -41,7 +42,6 @@ - namespace blink { - - class Database; --class SQLErrorData; - class SQLiteTransaction; - class SQLTransaction; - class SQLTransactionBackend; diff --git a/chromium-65.0.3325.146-GCC-explicitely-std-move-to-base-Optional-instead-of.patch b/chromium-65.0.3325.146-GCC-explicitely-std-move-to-base-Optional-instead-of.patch deleted file mode 100644 index 9c6f315..0000000 --- a/chromium-65.0.3325.146-GCC-explicitely-std-move-to-base-Optional-instead-of.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff -up chromium-65.0.3325.146/content/browser/appcache/appcache_request_handler.cc.explicit-std-move chromium-65.0.3325.146/content/browser/appcache/appcache_request_handler.cc ---- chromium-65.0.3325.146/content/browser/appcache/appcache_request_handler.cc.explicit-std-move 2018-03-13 22:50:41.346043716 -0400 -+++ chromium-65.0.3325.146/content/browser/appcache/appcache_request_handler.cc 2018-03-13 22:51:21.428267583 -0400 -@@ -639,7 +639,7 @@ AppCacheRequestHandler::MaybeCreateSubre - - SubresourceLoaderParams params; - params.loader_factory_info = factory_ptr.PassInterface(); -- return params; -+ return base::Optional(std::move(params)); - } - - void AppCacheRequestHandler::MaybeCreateSubresourceLoader( -diff -up chromium-65.0.3325.146/content/browser/service_worker/service_worker_controllee_request_handler.cc.explicit-std-move chromium-65.0.3325.146/content/browser/service_worker/service_worker_controllee_request_handler.cc ---- chromium-65.0.3325.146/content/browser/service_worker/service_worker_controllee_request_handler.cc.explicit-std-move 2018-03-13 22:51:38.133943776 -0400 -+++ chromium-65.0.3325.146/content/browser/service_worker/service_worker_controllee_request_handler.cc 2018-03-13 22:51:57.658566347 -0400 -@@ -271,7 +271,7 @@ ServiceWorkerControlleeRequestHandler::M - controller_info->object_info = provider_host_->GetOrCreateServiceWorkerHandle( - provider_host_->controller()); - params.controller_service_worker_info = std::move(controller_info); -- return params; -+ return base::Optional(std::move(params)); - } - - void ServiceWorkerControlleeRequestHandler::PrepareForMainResource( diff --git a/chromium-65.0.3325.146-GCC-fully-declare-ConfigurationPolicyProvider.patch b/chromium-65.0.3325.146-GCC-fully-declare-ConfigurationPolicyProvider.patch deleted file mode 100644 index 809a321..0000000 --- a/chromium-65.0.3325.146-GCC-fully-declare-ConfigurationPolicyProvider.patch +++ /dev/null @@ -1,18 +0,0 @@ -diff -up chromium-65.0.3325.146/components/policy/core/browser/browser_policy_connector_base.h.fully-declare chromium-65.0.3325.146/components/policy/core/browser/browser_policy_connector_base.h ---- chromium-65.0.3325.146/components/policy/core/browser/browser_policy_connector_base.h.fully-declare 2018-03-13 23:02:13.989635567 -0400 -+++ chromium-65.0.3325.146/components/policy/core/browser/browser_policy_connector_base.h 2018-03-13 23:02:44.318048625 -0400 -@@ -12,13 +12,13 @@ - #include "base/macros.h" - #include "base/optional.h" - #include "components/policy/core/browser/configuration_policy_handler_list.h" -+#include "components/policy/core/common/configuration_policy_provider.h" - #include "components/policy/core/common/schema.h" - #include "components/policy/core/common/schema_registry.h" - #include "components/policy/policy_export.h" - - namespace policy { - --class ConfigurationPolicyProvider; - class PolicyService; - class PolicyServiceImpl; - diff --git a/chromium-65.0.3325.146-Implement-conditional-copy-move-ctors-assign-operato.patch b/chromium-65.0.3325.146-Implement-conditional-copy-move-ctors-assign-operato.patch deleted file mode 100644 index 9b4befe..0000000 --- a/chromium-65.0.3325.146-Implement-conditional-copy-move-ctors-assign-operato.patch +++ /dev/null @@ -1,91 +0,0 @@ -diff -up chromium-65.0.3325.146/base/optional.h.conditional chromium-65.0.3325.146/base/optional.h ---- chromium-65.0.3325.146/base/optional.h.conditional 2018-03-13 22:11:02.328058249 -0400 -+++ chromium-65.0.3325.146/base/optional.h 2018-03-13 22:12:43.622098296 -0400 -@@ -266,6 +266,58 @@ class OptionalBase { - OptionalStorage storage_; - }; - -+// The following {Copy,Move}{Constructible,Assignable} structs are helpers to -+// implement constructor/assign-operator overloading. Specifically, if T is -+// is not movable but copyable, Optional's move constructor should not -+// participate in overload resolution. This inheritance trick implements that. -+template -+struct CopyConstructible {}; -+ -+template <> -+struct CopyConstructible { -+ constexpr CopyConstructible() = default; -+ constexpr CopyConstructible(const CopyConstructible&) = delete; -+ constexpr CopyConstructible(CopyConstructible&&) = default; -+ CopyConstructible& operator=(const CopyConstructible&) = default; -+ CopyConstructible& operator=(CopyConstructible&&) = default; -+}; -+ -+template -+struct MoveConstructible {}; -+ -+template <> -+struct MoveConstructible { -+ constexpr MoveConstructible() = default; -+ constexpr MoveConstructible(const MoveConstructible&) = default; -+ constexpr MoveConstructible(MoveConstructible&&) = delete; -+ MoveConstructible& operator=(const MoveConstructible&) = default; -+ MoveConstructible& operator=(MoveConstructible&&) = default; -+}; -+ -+template -+struct CopyAssignable {}; -+ -+template <> -+struct CopyAssignable { -+ constexpr CopyAssignable() = default; -+ constexpr CopyAssignable(const CopyAssignable&) = default; -+ constexpr CopyAssignable(CopyAssignable&&) = default; -+ CopyAssignable& operator=(const CopyAssignable&) = delete; -+ CopyAssignable& operator=(CopyAssignable&&) = default; -+}; -+ -+template -+struct MoveAssignable {}; -+ -+template <> -+struct MoveAssignable { -+ constexpr MoveAssignable() = default; -+ constexpr MoveAssignable(const MoveAssignable&) = default; -+ constexpr MoveAssignable(MoveAssignable&&) = default; -+ MoveAssignable& operator=(const MoveAssignable&) = default; -+ MoveAssignable& operator=(MoveAssignable&&) = delete; -+}; -+ - } // namespace internal - - // base::Optional is a Chromium version of the C++17 optional class: -@@ -280,12 +332,18 @@ class OptionalBase { - // - No exceptions are thrown, because they are banned from Chromium. - // - All the non-members are in the 'base' namespace instead of 'std'. - template --class Optional : public internal::OptionalBase { -+class Optional -+ : public internal::OptionalBase, -+ public internal::CopyConstructible::value>, -+ public internal::MoveConstructible::value>, -+ public internal::CopyAssignable::value && -+ std::is_copy_assignable::value>, -+ public internal::MoveAssignable::value && -+ std::is_move_assignable::value> { - public: - using value_type = T; - - // Defer default/copy/move constructor implementation to OptionalBase. -- // TODO(hidehiko): Implement conditional enabling. - constexpr Optional() = default; - constexpr Optional(const Optional& other) = default; - constexpr Optional(Optional&& other) = default; -@@ -316,7 +374,6 @@ class Optional : public internal::Option - ~Optional() = default; - - // Defer copy-/move- assign operator implementation to OptionalBase. -- // TOOD(hidehiko): Implement conditional enabling. - Optional& operator=(const Optional& other) = default; - Optional& operator=(Optional&& other) = default; - diff --git a/chromium-65.0.3325.146-Implement-converting-constructors-from-Optional-U.patch b/chromium-65.0.3325.146-Implement-converting-constructors-from-Optional-U.patch deleted file mode 100644 index 3214104..0000000 --- a/chromium-65.0.3325.146-Implement-converting-constructors-from-Optional-U.patch +++ /dev/null @@ -1,116 +0,0 @@ -diff -up chromium-65.0.3325.146/base/optional.h.converting chromium-65.0.3325.146/base/optional.h ---- chromium-65.0.3325.146/base/optional.h.converting 2018-03-13 22:31:05.248797490 -0400 -+++ chromium-65.0.3325.146/base/optional.h 2018-03-13 22:33:10.826368771 -0400 -@@ -31,6 +31,10 @@ constexpr in_place_t in_place = {}; - // http://en.cppreference.com/w/cpp/utility/optional/nullopt - constexpr nullopt_t nullopt(0); - -+// Forward declaration, which is refered by following helpers. -+template -+class Optional; -+ - namespace internal { - - template ::value> -@@ -220,6 +224,19 @@ class OptionalBase { - constexpr explicit OptionalBase(in_place_t, Args&&... args) - : storage_(in_place, std::forward(args)...) {} - -+ // Implementation of converting constructors. -+ template -+ explicit OptionalBase(const OptionalBase& other) { -+ if (other.storage_.is_populated_) -+ storage_.Init(other.storage_.value_); -+ } -+ -+ template -+ explicit OptionalBase(OptionalBase&& other) { -+ if (other.storage_.is_populated_) -+ storage_.Init(std::move(other.storage_.value_)); -+ } -+ - ~OptionalBase() = default; - - OptionalBase& operator=(const OptionalBase& other) { -@@ -263,6 +280,11 @@ class OptionalBase { - storage_.is_populated_ = false; - } - -+ // For implementing conversion, allow access to other typed OptionalBase -+ // class. -+ template -+ friend class OptionalBase; -+ - OptionalStorage storage_; - }; - -@@ -318,6 +340,20 @@ struct MoveAssignable { - MoveAssignable& operator=(MoveAssignable&&) = delete; - }; - -+// Helper to conditionally enable converting constructors. -+template -+struct IsConvertibleFromOptional -+ : std::integral_constant< -+ bool, -+ std::is_constructible&>::value || -+ std::is_constructible&>::value || -+ std::is_constructible&&>::value || -+ std::is_constructible&&>::value || -+ std::is_convertible&, T>::value || -+ std::is_convertible&, T>::value || -+ std::is_convertible&&, T>::value || -+ std::is_convertible&&, T>::value> {}; -+ - } // namespace internal - - // base::Optional is a Chromium version of the C++17 optional class: -@@ -348,7 +384,47 @@ class Optional - constexpr Optional(const Optional& other) = default; - constexpr Optional(Optional&& other) = default; - -- constexpr Optional(nullopt_t) {} -+ constexpr Optional(nullopt_t) {} // NOLINT(runtime/explicit) -+ -+ // Converting copy constructor. "explicit" only if -+ // std::is_convertible::value is false. It is implemented by -+ // declaring two almost same constructors, but that condition in enable_if_t -+ // is different, so that either one is chosen, thanks to SFINAE. -+ template < -+ typename U, -+ std::enable_if_t::value && -+ !internal::IsConvertibleFromOptional::value && -+ std::is_convertible::value, -+ bool> = false> -+ Optional(const Optional& other) : internal::OptionalBase(other) {} -+ -+ template < -+ typename U, -+ std::enable_if_t::value && -+ !internal::IsConvertibleFromOptional::value && -+ !std::is_convertible::value, -+ bool> = false> -+ explicit Optional(const Optional& other) -+ : internal::OptionalBase(other) {} -+ -+ // Converting move constructor. Similar to converting copy constructor, -+ // declaring two (explicit and non-explicit) constructors. -+ template < -+ typename U, -+ std::enable_if_t::value && -+ !internal::IsConvertibleFromOptional::value && -+ std::is_convertible::value, -+ bool> = false> -+ Optional(Optional&& other) : internal::OptionalBase(std::move(other)) {} -+ -+ template < -+ typename U, -+ std::enable_if_t::value && -+ !internal::IsConvertibleFromOptional::value && -+ !std::is_convertible::value, -+ bool> = false> -+ explicit Optional(Optional&& other) -+ : internal::OptionalBase(std::move(other)) {} - - constexpr Optional(const T& value) - : internal::OptionalBase(in_place, value) {} diff --git a/chromium-65.0.3325.146-Implement-value-forward-constructor.patch b/chromium-65.0.3325.146-Implement-value-forward-constructor.patch deleted file mode 100644 index db727d8..0000000 --- a/chromium-65.0.3325.146-Implement-value-forward-constructor.patch +++ /dev/null @@ -1,72 +0,0 @@ -diff -up chromium-65.0.3325.146/base/optional.h.vforward chromium-65.0.3325.146/base/optional.h ---- chromium-65.0.3325.146/base/optional.h.vforward 2018-03-13 22:35:46.383359966 -0400 -+++ chromium-65.0.3325.146/base/optional.h 2018-03-13 22:37:48.724992995 -0400 -@@ -354,6 +354,10 @@ struct IsConvertibleFromOptional - std::is_convertible&&, T>::value || - std::is_convertible&&, T>::value> {}; - -+// Forward compatibility for C++20. -+template -+using RemoveCvRefT = std::remove_cv_t>; -+ - } // namespace internal - - // base::Optional is a Chromium version of the C++17 optional class: -@@ -367,6 +371,13 @@ struct IsConvertibleFromOptional - // - 'constexpr' might be missing in some places for reasons specified locally. - // - No exceptions are thrown, because they are banned from Chromium. - // - All the non-members are in the 'base' namespace instead of 'std'. -+// -+// Note that T cannot have a constructor T(Optional) etc. Optional checks -+// T's constructor (specifically via IsConvertibleFromOptional), and in the -+// check whether T can be constructible from Optional, which is recursive -+// so it does not work. As of Feb 2018, std::optional C++17 implementation in -+// both clang and gcc has same limitation. MSVC SFINAE looks to have different -+// behavior, but anyway it reports an error, too. - template - class Optional - : public internal::OptionalBase, -@@ -426,12 +437,6 @@ class Optional - explicit Optional(Optional&& other) - : internal::OptionalBase(std::move(other)) {} - -- constexpr Optional(const T& value) -- : internal::OptionalBase(in_place, value) {} -- -- constexpr Optional(T&& value) -- : internal::OptionalBase(in_place, std::move(value)) {} -- - template - constexpr explicit Optional(in_place_t, Args&&... args) - : internal::OptionalBase(in_place, std::forward(args)...) {} -@@ -447,6 +452,30 @@ class Optional - Args&&... args) - : internal::OptionalBase(in_place, il, std::forward(args)...) {} - -+ // Forward value constructor. Similar to converting constructors, -+ // conditionally explicit. -+ template < -+ typename U = value_type, -+ std::enable_if_t< -+ std::is_constructible::value && -+ !std::is_same, in_place_t>::value && -+ !std::is_same, Optional>::value && -+ std::is_convertible::value, -+ bool> = false> -+ constexpr Optional(U&& value) -+ : internal::OptionalBase(in_place, std::forward(value)) {} -+ -+ template < -+ typename U = value_type, -+ std::enable_if_t< -+ std::is_constructible::value && -+ !std::is_same, in_place_t>::value && -+ !std::is_same, Optional>::value && -+ !std::is_convertible::value, -+ bool> = false> -+ constexpr explicit Optional(U&& value) -+ : internal::OptionalBase(in_place, std::forward(value)) {} -+ - ~Optional() = default; - - // Defer copy-/move- assign operator implementation to OptionalBase. diff --git a/chromium-65.0.3325.146-Update-non-copy-non-move-assign-operators.patch b/chromium-65.0.3325.146-Update-non-copy-non-move-assign-operators.patch deleted file mode 100644 index f9c4503..0000000 --- a/chromium-65.0.3325.146-Update-non-copy-non-move-assign-operators.patch +++ /dev/null @@ -1,144 +0,0 @@ -diff -up chromium-65.0.3325.146/base/optional.h.ncnm chromium-65.0.3325.146/base/optional.h ---- chromium-65.0.3325.146/base/optional.h.ncnm 2018-03-13 22:40:11.743226276 -0400 -+++ chromium-65.0.3325.146/base/optional.h 2018-03-13 22:44:30.948211358 -0400 -@@ -240,37 +240,37 @@ class OptionalBase { - ~OptionalBase() = default; - - OptionalBase& operator=(const OptionalBase& other) { -- if (!other.storage_.is_populated_) { -- FreeIfNeeded(); -- return *this; -- } -- -- InitOrAssign(other.storage_.value_); -+ CopyAssign(other); - return *this; - } - - OptionalBase& operator=(OptionalBase&& other) { -- if (!other.storage_.is_populated_) { -- FreeIfNeeded(); -- return *this; -- } -- -- InitOrAssign(std::move(other.storage_.value_)); -+ MoveAssign(std::move(other)); - return *this; - } - -- void InitOrAssign(const T& value) { -- if (!storage_.is_populated_) -- storage_.Init(value); -+ template -+ void CopyAssign(const OptionalBase& other) { -+ if (other.storage_.is_populated_) -+ InitOrAssign(other.storage_.value_); - else -- storage_.value_ = value; -+ FreeIfNeeded(); - } - -- void InitOrAssign(T&& value) { -- if (!storage_.is_populated_) -- storage_.Init(std::move(value)); -+ template -+ void MoveAssign(OptionalBase&& other) { -+ if (other.storage_.is_populated_) -+ InitOrAssign(std::move(other.storage_.value_)); -+ else -+ FreeIfNeeded(); -+ } -+ -+ template -+ void InitOrAssign(U&& value) { -+ if (storage_.is_populated_) -+ storage_.value_ = std::forward(value); - else -- storage_.value_ = std::move(value); -+ storage_.Init(std::forward(value)); - } - - void FreeIfNeeded() { -@@ -340,7 +340,7 @@ struct MoveAssignable { - MoveAssignable& operator=(MoveAssignable&&) = delete; - }; - --// Helper to conditionally enable converting constructors. -+// Helper to conditionally enable converting constructors and assign operators. - template - struct IsConvertibleFromOptional - : std::integral_constant< -@@ -354,6 +354,16 @@ struct IsConvertibleFromOptional - std::is_convertible&&, T>::value || - std::is_convertible&&, T>::value> {}; - -+template -+struct IsAssignableFromOptional -+ : std::integral_constant< -+ bool, -+ IsConvertibleFromOptional::value || -+ std::is_assignable&>::value || -+ std::is_assignable&>::value || -+ std::is_assignable&&>::value || -+ std::is_assignable&&>::value> {}; -+ - // Forward compatibility for C++20. - template - using RemoveCvRefT = std::remove_cv_t>; -@@ -487,14 +497,42 @@ class Optional - return *this; - } - -- template -- typename std::enable_if, T>::value, -- Optional&>::type -+ // Perfect-forwarded assignment. -+ template -+ std::enable_if_t< -+ !std::is_same, Optional>::value && -+ std::is_constructible::value && -+ std::is_assignable::value && -+ (!std::is_scalar::value || -+ !std::is_same, T>::value), -+ Optional&> - operator=(U&& value) { - InitOrAssign(std::forward(value)); - return *this; - } - -+// Copy assign the state of other. -+ template -+ std::enable_if_t::value && -+ std::is_constructible::value && -+ std::is_assignable::value, -+ Optional&> -+ operator=(const Optional& other) { -+ CopyAssign(other); -+ return *this; -+ } -+ -+ // Move assign the state of other. -+ template -+ std::enable_if_t::value && -+ std::is_constructible::value && -+ std::is_assignable::value, -+ Optional&> -+ operator=(Optional&& other) { -+ MoveAssign(std::move(other)); -+ return *this; -+ } -+ - constexpr const T* operator->() const { - DCHECK(storage_.is_populated_); - return &value(); -@@ -606,8 +644,10 @@ class Optional - private: - // Accessing template base class's protected member needs explicit - // declaration to do so. -+ using internal::OptionalBase::CopyAssign; - using internal::OptionalBase::FreeIfNeeded; - using internal::OptionalBase::InitOrAssign; -+ using internal::OptionalBase::MoveAssign; - using internal::OptionalBase::storage_; - }; - diff --git a/chromium-65.0.3325.146-Use-affirmative-expression-in-base-Optional.patch b/chromium-65.0.3325.146-Use-affirmative-expression-in-base-Optional.patch deleted file mode 100644 index 8aaea85..0000000 --- a/chromium-65.0.3325.146-Use-affirmative-expression-in-base-Optional.patch +++ /dev/null @@ -1,265 +0,0 @@ -diff -up chromium-65.0.3325.146/base/optional.h.affirmative chromium-65.0.3325.146/base/optional.h ---- chromium-65.0.3325.146/base/optional.h.affirmative 2018-03-13 22:27:29.451969704 -0400 -+++ chromium-65.0.3325.146/base/optional.h 2018-03-13 22:27:57.031436045 -0400 -@@ -41,7 +41,7 @@ struct OptionalStorageBase { - - template - constexpr explicit OptionalStorageBase(in_place_t, Args&&... args) -- : is_null_(false), value_(std::forward(args)...) {} -+ : is_populated_(true), value_(std::forward(args)...) {} - - // When T is not trivially destructible we must call its - // destructor before deallocating its memory. -@@ -55,18 +55,18 @@ struct OptionalStorageBase { - // necessary for this case at the moment. Please see also the destructor - // comment in "is_trivially_destructible = true" specialization below. - ~OptionalStorageBase() { -- if (!is_null_) -+ if (is_populated_) - value_.~T(); - } - - template - void Init(Args&&... args) { -- DCHECK(is_null_); -+ DCHECK(!is_populated_); - ::new (&value_) T(std::forward(args)...); -- is_null_ = false; -+ is_populated_ = true; - } - -- bool is_null_ = true; -+ bool is_populated_ = false; - union { - // |empty_| exists so that the union will always be initialized, even when - // it doesn't contain a value. Union members must be initialized for the -@@ -84,7 +84,7 @@ struct OptionalStorageBase - constexpr explicit OptionalStorageBase(in_place_t, Args&&... args) -- : is_null_(false), value_(std::forward(args)...) {} -+ : is_populated_(true), value_(std::forward(args)...) {} - - // When T is trivially destructible (i.e. its destructor does nothing) there - // is no need to call it. Implicitly defined destructor is trivial, because -@@ -102,12 +102,12 @@ struct OptionalStorageBase - void Init(Args&&... args) { -- DCHECK(is_null_); -+ DCHECK(!is_populated_); - ::new (&value_) T(std::forward(args)...); -- is_null_ = false; -+ is_populated_ = true; - } - -- bool is_null_ = true; -+ bool is_populated_ = false; - union { - // |empty_| exists so that the union will always be initialized, even when - // it doesn't contain a value. Union members must be initialized for the -@@ -133,7 +133,7 @@ struct OptionalStorage : OptionalStorage - - // Accessing the members of template base class requires explicit - // declaration. -- using OptionalStorageBase::is_null_; -+ using OptionalStorageBase::is_populated_; - using OptionalStorageBase::value_; - using OptionalStorageBase::Init; - -@@ -145,12 +145,12 @@ struct OptionalStorage : OptionalStorage - OptionalStorage() = default; - - OptionalStorage(const OptionalStorage& other) { -- if (!other.is_null_) -+ if (other.is_populated_) - Init(other.value_); - } - - OptionalStorage(OptionalStorage&& other) { -- if (!other.is_null_) -+ if (other.is_populated_) - Init(std::move(other.value_)); - } - }; -@@ -160,7 +160,7 @@ struct OptionalStorage - : OptionalStorageBase { -- using OptionalStorageBase::is_null_; -+ using OptionalStorageBase::is_populated_; - using OptionalStorageBase::value_; - using OptionalStorageBase::Init; - using OptionalStorageBase::OptionalStorageBase; -@@ -169,7 +169,7 @@ struct OptionalStorage - : OptionalStorageBase { -- using OptionalStorageBase::is_null_; -+ using OptionalStorageBase::is_populated_; - using OptionalStorageBase::value_; - using OptionalStorageBase::Init; - using OptionalStorageBase::OptionalStorageBase; -@@ -188,7 +188,7 @@ struct OptionalStorage storage_; -@@ -334,12 +334,12 @@ class Optional : public internal::Option - } - - constexpr const T* operator->() const { -- DCHECK(!storage_.is_null_); -+ DCHECK(storage_.is_populated_); - return &value(); - } - - constexpr T* operator->() { -- DCHECK(!storage_.is_null_); -+ DCHECK(storage_.is_populated_); - return &value(); - } - -@@ -351,27 +351,27 @@ class Optional : public internal::Option - - constexpr T&& operator*() && { return std::move(value()); } - -- constexpr explicit operator bool() const { return !storage_.is_null_; } -+ constexpr explicit operator bool() const { return storage_.is_populated_; } - -- constexpr bool has_value() const { return !storage_.is_null_; } -+ constexpr bool has_value() const { return storage_.is_populated_; } - - constexpr T& value() & { -- DCHECK(!storage_.is_null_); -+ DCHECK(storage_.is_populated_); - return storage_.value_; - } - - constexpr const T& value() const & { -- DCHECK(!storage_.is_null_); -+ DCHECK(storage_.is_populated_); - return storage_.value_; - } - - constexpr T&& value() && { -- DCHECK(!storage_.is_null_); -+ DCHECK(storage_.is_populated_); - return std::move(storage_.value_); - } - - constexpr const T&& value() const && { -- DCHECK(!storage_.is_null_); -+ DCHECK(storage_.is_populated_); - return std::move(storage_.value_); - } - -@@ -382,8 +382,9 @@ class Optional : public internal::Option - // "T must be copy constructible"); - static_assert(std::is_convertible::value, - "U must be convertible to T"); -- return storage_.is_null_ ? static_cast(std::forward(default_value)) -- : value(); -+ return storage_.is_populated_ -+ ? value() -+ : static_cast(std::forward(default_value)); - } - - template -@@ -393,26 +394,27 @@ class Optional : public internal::Option - // "T must be move constructible"); - static_assert(std::is_convertible::value, - "U must be convertible to T"); -- return storage_.is_null_ ? static_cast(std::forward(default_value)) -- : std::move(value()); -+ return storage_.is_populated_ -+ ? std::move(value()) -+ : static_cast(std::forward(default_value)); - } - - void swap(Optional& other) { -- if (storage_.is_null_ && other.storage_.is_null_) -+ if (!storage_.is_populated_ && !other.storage_.is_populated_) - return; - -- if (storage_.is_null_ != other.storage_.is_null_) { -- if (storage_.is_null_) { -- storage_.Init(std::move(other.storage_.value_)); -- other.FreeIfNeeded(); -- } else { -+ if (storage_.is_populated_ != other.storage_.is_populated_) { -+ if (storage_.is_populated_) { - other.storage_.Init(std::move(storage_.value_)); - FreeIfNeeded(); -+ } else { -+ storage_.Init(std::move(other.storage_.value_)); -+ other.FreeIfNeeded(); - } - return; - } - -- DCHECK(!storage_.is_null_ && !other.storage_.is_null_); -+ DCHECK(storage_.is_populated_ && other.storage_.is_populated_); - using std::swap; - swap(**this, *other); - } diff --git a/chromium-65.0.3325.146-gcc5-r3.patch b/chromium-65.0.3325.146-gcc5-r3.patch deleted file mode 100644 index ab74a35..0000000 --- a/chromium-65.0.3325.146-gcc5-r3.patch +++ /dev/null @@ -1,74 +0,0 @@ -diff -up chromium-65.0.3325.146/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 chromium-65.0.3325.146/gpu/ipc/common/mailbox_struct_traits.h ---- chromium-65.0.3325.146/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 2018-03-06 18:04:32.000000000 -0500 -+++ chromium-65.0.3325.146/gpu/ipc/common/mailbox_struct_traits.h 2018-03-07 10:42:07.198179638 -0500 -@@ -15,7 +15,7 @@ namespace mojo { - template <> - struct StructTraits { - static base::span name(const gpu::Mailbox& mailbox) { -- return mailbox.name; -+ return base::make_span(mailbox.name); - } - static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out); - }; -diff -up chromium-65.0.3325.146/services/viz/public/cpp/compositing/filter_operation_struct_traits.h.gcc5-r3 chromium-65.0.3325.146/services/viz/public/cpp/compositing/filter_operation_struct_traits.h ---- chromium-65.0.3325.146/services/viz/public/cpp/compositing/filter_operation_struct_traits.h.gcc5-r3 2018-03-06 18:04:37.000000000 -0500 -+++ chromium-65.0.3325.146/services/viz/public/cpp/compositing/filter_operation_struct_traits.h 2018-03-07 10:42:07.198179638 -0500 -@@ -138,7 +138,7 @@ struct StructTraits matrix(const cc::FilterOperation& operation) { - if (operation.type() != cc::FilterOperation::COLOR_MATRIX) - return base::span(); -- return operation.matrix(); -+ return base::make_span(operation.matrix()); - } - - static base::span shape( -diff -up chromium-65.0.3325.146/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 chromium-65.0.3325.146/services/viz/public/cpp/compositing/quads_struct_traits.h ---- chromium-65.0.3325.146/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 2018-03-06 18:04:37.000000000 -0500 -+++ chromium-65.0.3325.146/services/viz/public/cpp/compositing/quads_struct_traits.h 2018-03-07 10:42:07.198179638 -0500 -@@ -308,7 +308,7 @@ struct StructTraits vertex_opacity(const viz::DrawQuad& input) { - const viz::TextureDrawQuad* quad = - viz::TextureDrawQuad::MaterialCast(&input); -- return quad->vertex_opacity; -+ return base::make_span(quad->vertex_opacity); - } - - static bool y_flipped(const viz::DrawQuad& input) { -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h.gcc5-r3 chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h ---- chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h.gcc5-r3 2018-03-06 18:05:06.000000000 -0500 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h 2018-03-07 10:48:53.996093882 -0500 -@@ -62,7 +62,7 @@ class WTF_EXPORT ArrayBufferContents { - allocation_length_(length), - data_(data), - data_length_(length), -- kind_(AllocationKind::kNormal), -+ kind_(WTF::ArrayBufferContents::AllocationKind::kNormal), - deleter_(deleter) {} - DataHandle(void* allocation_base, - size_t allocation_length, -@@ -93,11 +93,11 @@ class WTF_EXPORT ArrayBufferContents { - reinterpret_cast(allocation_base_) + - allocation_length_); - switch (kind_) { -- case AllocationKind::kNormal: -+ case WTF::ArrayBufferContents::AllocationKind::kNormal: - DCHECK(deleter_); - deleter_(data_); - return; -- case AllocationKind::kReservation: -+ case WTF::ArrayBufferContents::AllocationKind::kReservation: - ReleaseReservedMemory(allocation_base_, allocation_length_); - return; - } -diff -up chromium-65.0.3325.146/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 chromium-65.0.3325.146/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc ---- chromium-65.0.3325.146/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 2018-03-06 18:06:09.000000000 -0500 -+++ chromium-65.0.3325.146/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2018-03-07 10:42:07.199179616 -0500 -@@ -10,7 +10,7 @@ - - #include "modules/audio_processing/aec3/aec_state.h" - --#include -+#include - - #include - #include diff --git a/chromium-65.0.3325.146-gcc7.patch b/chromium-65.0.3325.146-gcc7.patch deleted file mode 100644 index 4f2b46c..0000000 --- a/chromium-65.0.3325.146-gcc7.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 chromium-65.0.3325.146/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h ---- chromium-65.0.3325.146/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 2018-03-07 10:34:48.783900894 -0500 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h 2018-03-07 10:35:44.885638503 -0500 -@@ -5,6 +5,7 @@ - #ifndef SharedGpuContext_h - #define SharedGpuContext_h - -+#include - #include - #include "base/callback.h" - #include "base/memory/weak_ptr.h" diff --git a/chromium-65.0.3325.146-workaround-gcc7-is_trivially_copy_constructable-failure.patch b/chromium-65.0.3325.146-workaround-gcc7-is_trivially_copy_constructable-failure.patch deleted file mode 100644 index 241dfb5..0000000 --- a/chromium-65.0.3325.146-workaround-gcc7-is_trivially_copy_constructable-failure.patch +++ /dev/null @@ -1,55 +0,0 @@ -diff -up chromium-65.0.3325.146/base/optional.h.784732 chromium-65.0.3325.146/base/optional.h ---- chromium-65.0.3325.146/base/optional.h.784732 2018-03-07 13:40:00.103579631 -0500 -+++ chromium-65.0.3325.146/base/optional.h 2018-03-07 13:41:08.950323996 -0500 -@@ -9,6 +9,7 @@ - #include - - #include "base/logging.h" -+#include "base/template_util.h" - - namespace base { - -@@ -106,7 +107,7 @@ struct OptionalStorageBase::value, -+ bool = is_trivially_copy_constructible::value, - bool = std::is_trivially_move_constructible::value> - struct OptionalStorage : OptionalStorageBase { - // This is no trivially {copy,move} constructible case. Other cases are -diff -up chromium-65.0.3325.146/base/template_util.h.784732 chromium-65.0.3325.146/base/template_util.h ---- chromium-65.0.3325.146/base/template_util.h.784732 2018-03-07 13:41:19.479131969 -0500 -+++ chromium-65.0.3325.146/base/template_util.h 2018-03-07 13:42:41.308639551 -0500 -@@ -10,6 +10,7 @@ - #include - #include - #include -+#include - - #include "build/build_config.h" - -@@ -127,6 +128,23 @@ template - using is_trivially_copyable = std::is_trivially_copyable; - #endif - -+#if defined(__GNUC__) && !defined(__clang__) && __GNUC__ <= 7 -+// Workaround for g++7 and earlier family. -+// Due to https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80654, without this -+// Optional> where T is non-copyable causes a compile error. -+// As we know it is not trivially copy constructible, explicitly declare so. -+template -+struct is_trivially_copy_constructible -+ : std::is_trivially_copy_constructible {}; -+ -+template -+struct is_trivially_copy_constructible> : std::false_type {}; -+#else -+// Otherwise use std::is_trivially_copy_constructible as is. -+template -+using is_trivially_copy_constructible = std::is_trivially_copy_constructible; -+#endif -+ - } // namespace base - - #undef CR_USE_FALLBACKS_FOR_GCC_WITH_LIBCXX diff --git a/chromium-65.0.3325.146-wtf-oilpan-Remove-GC-checks-from-WTF-Optional-T.patch b/chromium-65.0.3325.146-wtf-oilpan-Remove-GC-checks-from-WTF-Optional-T.patch deleted file mode 100644 index 8b5ff7f..0000000 --- a/chromium-65.0.3325.146-wtf-oilpan-Remove-GC-checks-from-WTF-Optional-T.patch +++ /dev/null @@ -1,61 +0,0 @@ -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/platform/heap/TraceTraits.h.oilpan chromium-65.0.3325.146/third_party/WebKit/Source/platform/heap/TraceTraits.h ---- chromium-65.0.3325.146/third_party/WebKit/Source/platform/heap/TraceTraits.h.oilpan 2018-03-13 16:45:40.613426445 -0400 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/platform/heap/TraceTraits.h 2018-03-13 16:45:49.946244905 -0400 -@@ -18,6 +18,7 @@ - #include "platform/wtf/HashTable.h" - #include "platform/wtf/LinkedHashSet.h" - #include "platform/wtf/ListHashSet.h" -+#include "platform/wtf/Optional.h" - #include "platform/wtf/TypeTraits.h" - - namespace blink { -@@ -325,6 +326,23 @@ class TraceTrait> { - } - }; - -+// While using Optional with garbage-collected types is generally disallowed -+// by the OptionalGarbageCollected check in blink_gc_plugin, garbage-collected -+// containers such as HeapVector are allowed and need to be traced. -+template -+class TraceTrait> { -+ STATIC_ONLY(TraceTrait); -+ -+ public: -+ template -+ static void Trace(VisitorDispatcher visitor, WTF::Optional* optional) { -+ if (*optional != WTF::nullopt) { -+ TraceIfEnabled::value>::Trace(visitor, -+ optional->value()); -+ } -+ } -+}; -+ - // If eager tracing leads to excessively deep |trace()| call chains (and - // the system stack usage that this brings), the marker implementation will - // switch to using an explicit mark stack. Recursive and deep object graphs -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/Optional.h.oilpan chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/Optional.h ---- chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/Optional.h.oilpan 2018-03-13 16:46:01.683015951 -0400 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/Optional.h 2018-03-13 16:46:51.632043375 -0400 -@@ -7,20 +7,15 @@ - - #include "base/optional.h" - #include "platform/wtf/TemplateUtil.h" --#include "platform/wtf/TypeTraits.h" - - namespace WTF { - - // WTF::Optional is base::Optional. See base/optional.h for documentation. - // - // A clang plugin enforces that garbage collected types are not allocated --// outside of the heap, similarly we enforce that one doesn't create garbage --// collected types nested inside an Optional. -+// outside of the heap. GC containers such as HeapVector are allowed though. - template --using Optional = -- typename std::enable_if::value || -- IsPersistentReferenceType::value, -- base::Optional>::type; -+using Optional = base::Optional; - - constexpr base::nullopt_t nullopt = base::nullopt; - constexpr base::in_place_t in_place = base::in_place; diff --git a/chromium-65.0.3325.146-wtf-vector-fix.patch b/chromium-65.0.3325.146-wtf-vector-fix.patch deleted file mode 100644 index e4bfeba..0000000 --- a/chromium-65.0.3325.146-wtf-vector-fix.patch +++ /dev/null @@ -1,54 +0,0 @@ -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/DEPS.jdp chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/DEPS ---- chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/DEPS.jdp 2018-03-07 13:54:42.653286576 -0500 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/DEPS 2018-03-07 13:55:00.973903591 -0500 -@@ -16,6 +16,7 @@ include_rules = [ - "+base/process/process_metrics.h", - "+base/rand_util.h", - "+base/strings", -+ "+base/template_util.h", - "+base/threading/thread_checker.h", - "+base/time/time.h", - "+base/tuple.h", -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/Optional.h.jdp chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/Optional.h ---- chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/Optional.h.jdp 2018-03-07 13:56:29.053062331 -0500 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/Optional.h 2018-03-07 13:56:36.595904651 -0500 -@@ -6,6 +6,7 @@ - #define Optional_h - - #include "base/optional.h" -+#include "platform/wtf/TemplateUtil.h" - #include "platform/wtf/TypeTraits.h" - - namespace WTF { -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/TemplateUtil.h.jdp chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/TemplateUtil.h ---- chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/TemplateUtil.h.jdp 2018-03-07 13:56:47.356679702 -0500 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/TemplateUtil.h 2018-03-07 13:57:41.769542223 -0500 -@@ -0,0 +1,28 @@ -+// Copyright 2018 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. -+ -+#ifndef TemplateUtil_h -+#define TemplateUtil_h -+ -+#include "base/template_util.h" -+#include "platform/wtf/Vector.h" -+ -+namespace base { -+ -+#if defined(__GNUC__) && !defined(__clang__) && __GNUC__ <= 7 -+// Workaround for g++7 and earlier family. -+// Due to https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80654, without this -+// Optional> where T is non-copyable causes a compile error. -+// As we know it is not trivially copy constructible, explicitly declare so. -+// -+// It completes the declaration in base/template_util.h that was provided -+// for std::vector -+template -+struct is_trivially_copy_constructible> : std::false_type {}; -+#endif -+ -+} // namespace base -+ -+#endif // TemplateUtil_h -+ diff --git a/chromium-65.0.3325.162-boolfix.patch b/chromium-65.0.3325.162-boolfix.patch deleted file mode 100644 index a27f3a8..0000000 --- a/chromium-65.0.3325.162-boolfix.patch +++ /dev/null @@ -1,36 +0,0 @@ -diff -up chromium-65.0.3325.162/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix chromium-65.0.3325.162/mojo/public/cpp/bindings/associated_interface_ptr_info.h ---- chromium-65.0.3325.162/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix 2018-03-15 13:07:54.999428755 -0400 -+++ chromium-65.0.3325.162/mojo/public/cpp/bindings/associated_interface_ptr_info.h 2018-03-15 13:08:21.270794252 -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-65.0.3325.162/mojo/public/cpp/bindings/associated_interface_request.h.boolfix chromium-65.0.3325.162/mojo/public/cpp/bindings/associated_interface_request.h ---- chromium-65.0.3325.162/mojo/public/cpp/bindings/associated_interface_request.h.boolfix 2018-03-15 13:07:09.680523296 -0400 -+++ chromium-65.0.3325.162/mojo/public/cpp/bindings/associated_interface_request.h 2018-03-15 13:07:44.429684037 -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-65.0.3325.162/mojo/public/cpp/bindings/interface_request.h.boolfix chromium-65.0.3325.162/mojo/public/cpp/bindings/interface_request.h ---- chromium-65.0.3325.162/mojo/public/cpp/bindings/interface_request.h.boolfix 2018-03-15 13:08:33.494499025 -0400 -+++ chromium-65.0.3325.162/mojo/public/cpp/bindings/interface_request.h 2018-03-15 13:10:39.218462546 -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_; } -+ explicit operator bool() const { return (bool) handle_; } - - // Removes the message pipe from the request and returns it. - ScopedMessagePipeHandle PassMessagePipe() { return std::move(handle_); } diff --git a/chromium-65.0.3325.162-epel7-stdc++.patch b/chromium-65.0.3325.162-epel7-stdc++.patch deleted file mode 100644 index ee2066b..0000000 --- a/chromium-65.0.3325.162-epel7-stdc++.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-65.0.3325.162/build/config/posix/BUILD.gn.epel7 chromium-65.0.3325.162/build/config/posix/BUILD.gn ---- chromium-65.0.3325.162/build/config/posix/BUILD.gn.epel7 2018-03-20 16:14:42.425926323 -0400 -+++ chromium-65.0.3325.162/build/config/posix/BUILD.gn 2018-03-20 16:15:10.150152245 -0400 -@@ -74,6 +74,8 @@ config("runtime_library") { - "rt", - ] - } -+ } else { -+ libs += [ "stdc++" ] - } - - if (!is_mac && !is_ios && sysroot != "") { diff --git a/chromium-65.0.3325.162-skia-aarch64-buildfix.patch b/chromium-65.0.3325.162-skia-aarch64-buildfix.patch deleted file mode 100644 index e48346c..0000000 --- a/chromium-65.0.3325.162-skia-aarch64-buildfix.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -up chromium-65.0.3325.162/third_party/skia/src/jumper/SkJumper_stages.cpp.aarch64fix chromium-65.0.3325.162/third_party/skia/src/jumper/SkJumper_stages.cpp ---- chromium-65.0.3325.162/third_party/skia/src/jumper/SkJumper_stages.cpp.aarch64fix 2018-03-15 15:27:35.201345844 -0400 -+++ chromium-65.0.3325.162/third_party/skia/src/jumper/SkJumper_stages.cpp 2018-03-15 15:31:30.471777400 -0400 -@@ -666,7 +666,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) -@@ -686,7 +686,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) diff --git a/chromium-66.0.3359.117-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch b/chromium-66.0.3359.117-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch deleted file mode 100644 index 36ade41..0000000 --- a/chromium-66.0.3359.117-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch +++ /dev/null @@ -1,33 +0,0 @@ -diff -up chromium-66.0.3359.117/services/preferences/tracked/pref_hash_filter.h.gcc-full-decl chromium-66.0.3359.117/services/preferences/tracked/pref_hash_filter.h ---- chromium-66.0.3359.117/services/preferences/tracked/pref_hash_filter.h.gcc-full-decl 2018-04-25 16:29:52.372692179 -0400 -+++ chromium-66.0.3359.117/services/preferences/tracked/pref_hash_filter.h 2018-04-25 16:31:15.698058409 -0400 -@@ -21,9 +21,9 @@ - #include "services/preferences/public/mojom/preferences.mojom.h" - #include "services/preferences/tracked/hash_store_contents.h" - #include "services/preferences/tracked/interceptable_pref_filter.h" -+#include "services/preferences/tracked/pref_hash_store.h" - #include "services/preferences/tracked/tracked_preference.h" - --class PrefHashStore; - class PrefService; - - namespace base { -diff -up chromium-66.0.3359.117/third_party/WebKit/Source/modules/webdatabase/SQLTransactionBackend.h.gcc-full-decl chromium-66.0.3359.117/third_party/WebKit/Source/modules/webdatabase/SQLTransactionBackend.h ---- chromium-66.0.3359.117/third_party/WebKit/Source/modules/webdatabase/SQLTransactionBackend.h.gcc-full-decl 2018-04-17 21:05:12.000000000 -0400 -+++ chromium-66.0.3359.117/third_party/WebKit/Source/modules/webdatabase/SQLTransactionBackend.h 2018-04-25 16:29:52.373692159 -0400 -@@ -30,6 +30,7 @@ - - #include - #include "modules/webdatabase/DatabaseBasicTypes.h" -+#include "modules/webdatabase/SQLError.h" - #include "modules/webdatabase/SQLStatement.h" - #include "modules/webdatabase/SQLStatementBackend.h" - #include "modules/webdatabase/SQLTransactionStateMachine.h" -@@ -41,7 +42,6 @@ - namespace blink { - - class Database; --class SQLErrorData; - class SQLiteTransaction; - class SQLTransaction; - class SQLTransactionBackend; diff --git a/chromium-66.0.3359.117-GCC-do-not-use-initializer-list-for-NoDestructor-of-.patch b/chromium-66.0.3359.117-GCC-do-not-use-initializer-list-for-NoDestructor-of-.patch deleted file mode 100644 index cb68934..0000000 --- a/chromium-66.0.3359.117-GCC-do-not-use-initializer-list-for-NoDestructor-of-.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-66.0.3359.117/chrome/browser/supervised_user/supervised_user_url_filter.cc.flatsetfix chromium-66.0.3359.117/chrome/browser/supervised_user/supervised_user_url_filter.cc ---- chromium-66.0.3359.117/chrome/browser/supervised_user/supervised_user_url_filter.cc.flatsetfix 2018-04-30 14:22:23.997461566 -0400 -+++ chromium-66.0.3359.117/chrome/browser/supervised_user/supervised_user_url_filter.cc 2018-04-30 14:22:51.867920383 -0400 -@@ -368,7 +368,7 @@ SupervisedUserURLFilter::GetFilteringBeh - - // Allow navigations to whitelisted origins (currently families.google.com). - static const base::NoDestructor> kWhitelistedOrigins( -- {GURL(kFamiliesUrl).GetOrigin()}); -+ base::flat_set({GURL(kFamiliesUrl).GetOrigin()})); - if (base::ContainsKey(*kWhitelistedOrigins, effective_url.GetOrigin())) - return ALLOW; - diff --git a/chromium-66.0.3359.117-gcc-copy-constructor-fix.patch b/chromium-66.0.3359.117-gcc-copy-constructor-fix.patch deleted file mode 100644 index 09c5b82..0000000 --- a/chromium-66.0.3359.117-gcc-copy-constructor-fix.patch +++ /dev/null @@ -1,49 +0,0 @@ -diff -up chromium-66.0.3359.117/cc/raster/playback_image_provider.cc.copycon chromium-66.0.3359.117/cc/raster/playback_image_provider.cc ---- chromium-66.0.3359.117/cc/raster/playback_image_provider.cc.copycon 2018-04-23 13:22:43.109126071 -0400 -+++ chromium-66.0.3359.117/cc/raster/playback_image_provider.cc 2018-04-23 13:23:55.761704938 -0400 -@@ -20,7 +20,7 @@ void UnrefImageFromCache(DrawImage draw_ - PlaybackImageProvider::PlaybackImageProvider( - ImageDecodeCache* cache, - const gfx::ColorSpace& target_color_space, -- base::Optional settings) -+ base::Optional&& settings) - : cache_(cache), - target_color_space_(target_color_space), - settings_(std::move(settings)) { -@@ -70,7 +70,10 @@ PlaybackImageProvider::GetDecodedDrawIma - } - - PlaybackImageProvider::Settings::Settings() = default; --PlaybackImageProvider::Settings::Settings(const Settings& other) = default; -+PlaybackImageProvider::Settings::Settings(PlaybackImageProvider::Settings&&) = -+ default; - PlaybackImageProvider::Settings::~Settings() = default; -+PlaybackImageProvider::Settings& PlaybackImageProvider::Settings::operator=( -+ PlaybackImageProvider::Settings&&) = default; - - } // namespace cc -diff -up chromium-66.0.3359.117/cc/raster/playback_image_provider.h.copycon chromium-66.0.3359.117/cc/raster/playback_image_provider.h ---- chromium-66.0.3359.117/cc/raster/playback_image_provider.h.copycon 2018-04-23 13:24:07.699471148 -0400 -+++ chromium-66.0.3359.117/cc/raster/playback_image_provider.h 2018-04-23 13:24:57.080506348 -0400 -@@ -20,8 +20,10 @@ class CC_EXPORT PlaybackImageProvider : - public: - struct CC_EXPORT Settings { - Settings(); -- Settings(const Settings& other); -+ Settings(const Settings&) = delete; -+ Settings(Settings&&); - ~Settings(); -+ Settings& operator=(Settings&&); - - // The set of image ids to skip during raster. - PaintImageIdFlatSet images_to_skip; -@@ -34,7 +36,7 @@ class CC_EXPORT PlaybackImageProvider : - // If no settings are provided, all images are skipped during rasterization. - PlaybackImageProvider(ImageDecodeCache* cache, - const gfx::ColorSpace& target_color_space, -- base::Optional settings); -+ base::Optional&& settings); - ~PlaybackImageProvider() override; - - PlaybackImageProvider(PlaybackImageProvider&& other); -diff -up chromium-66.0.3359.117/cc/raster/playback_image_provider_unittest.cc.copycon chromium-66.0.3359.117/cc/raster/playback_image_provider_unittest.cc diff --git a/chromium-66.0.3359.117-gcc-optional-move-fixes.patch b/chromium-66.0.3359.117-gcc-optional-move-fixes.patch deleted file mode 100644 index 80df7d0..0000000 --- a/chromium-66.0.3359.117-gcc-optional-move-fixes.patch +++ /dev/null @@ -1,45 +0,0 @@ -diff -up chromium-66.0.3359.117/content/browser/appcache/appcache_request_handler.cc.gccomove chromium-66.0.3359.117/content/browser/appcache/appcache_request_handler.cc ---- chromium-66.0.3359.117/content/browser/appcache/appcache_request_handler.cc.gccomove 2018-04-23 12:53:32.419477463 -0400 -+++ chromium-66.0.3359.117/content/browser/appcache/appcache_request_handler.cc 2018-04-23 12:54:02.497887258 -0400 -@@ -639,7 +639,7 @@ AppCacheRequestHandler::MaybeCreateSubre - - SubresourceLoaderParams params; - params.loader_factory_info = factory_ptr.PassInterface(); -- return params; -+ return base::Optional(std::move(params)); - } - - void AppCacheRequestHandler::MaybeCreateSubresourceLoader( -diff -up chromium-66.0.3359.117/content/browser/service_worker/service_worker_controllee_request_handler.cc.gccomove chromium-66.0.3359.117/content/browser/service_worker/service_worker_controllee_request_handler.cc ---- chromium-66.0.3359.117/content/browser/service_worker/service_worker_controllee_request_handler.cc.gccomove 2018-04-23 12:54:16.614610083 -0400 -+++ chromium-66.0.3359.117/content/browser/service_worker/service_worker_controllee_request_handler.cc 2018-04-23 12:54:38.401182827 -0400 -@@ -271,7 +271,7 @@ ServiceWorkerControlleeRequestHandler::M - controller_info->object_info = provider_host_->GetOrCreateServiceWorkerHandle( - provider_host_->controller()); - params.controller_service_worker_info = std::move(controller_info); -- return params; -+ return base::Optional(std::move(params)); - } - - void ServiceWorkerControlleeRequestHandler::PrepareForMainResource( -diff -up chromium-66.0.3359.117/device/fido/device_response_converter.cc.gccomove chromium-66.0.3359.117/device/fido/device_response_converter.cc ---- chromium-66.0.3359.117/device/fido/device_response_converter.cc.gccomove 2018-04-23 12:54:51.452926482 -0400 -+++ chromium-66.0.3359.117/device/fido/device_response_converter.cc 2018-04-23 12:55:24.248283058 -0400 -@@ -121,7 +121,7 @@ base::Optionalsecond.GetUnsigned()); - } - -- return response; -+ return base::Optional(std::move(response)); - } - - base::Optional ReadCTAPGetInfoResponse( -@@ -241,7 +241,7 @@ base::Optional(std::move(response)); - } - - } // namespace device diff --git a/chromium-66.0.3359.117-gcc-vector-copy-constructor-fix.patch b/chromium-66.0.3359.117-gcc-vector-copy-constructor-fix.patch deleted file mode 100644 index b86c200..0000000 --- a/chromium-66.0.3359.117-gcc-vector-copy-constructor-fix.patch +++ /dev/null @@ -1,53 +0,0 @@ -diff -up chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/DEPS.944404 chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/DEPS ---- chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/DEPS.944404 2018-04-23 14:18:43.702116916 -0400 -+++ chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/DEPS 2018-04-23 14:19:05.854680223 -0400 -@@ -16,6 +16,7 @@ include_rules = [ - "+base/process/process_metrics.h", - "+base/rand_util.h", - "+base/strings", -+ "+base/template_util.h", - "+base/threading/thread_checker.h", - "+base/time/time.h", - "+base/tuple.h", -diff -up chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/Optional.h.944404 chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/Optional.h ---- chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/Optional.h.944404 2018-04-23 14:20:05.718499685 -0400 -+++ chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/Optional.h 2018-04-23 14:20:18.165253615 -0400 -@@ -6,6 +6,7 @@ - #define Optional_h - - #include "base/optional.h" -+#include "platform/wtf/TemplateUtil.h" - - namespace WTF { - -diff -up chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/TemplateUtil.h.944404 chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/TemplateUtil.h ---- chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/TemplateUtil.h.944404 2018-04-23 14:20:31.660987877 -0400 -+++ chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/TemplateUtil.h 2018-04-23 14:21:40.276637297 -0400 -@@ -0,0 +1,27 @@ -+// Copyright 2018 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. -+ -+#ifndef TemplateUtil_h -+#define TemplateUtil_h -+ -+#include "base/template_util.h" -+#include "platform/wtf/Vector.h" -+ -+namespace base { -+ -+#if defined(__GNUC__) && !defined(__clang__) && __GNUC__ <= 7 -+// Workaround for g++7 and earlier family. -+// Due to https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80654, without this -+// Optional> where T is non-copyable causes a compile error. -+// As we know it is not trivially copy constructible, explicitly declare so. -+// -+// It completes the declaration in base/template_util.h that was provided -+// for std::vector -+template -+struct is_trivially_copy_constructible> : std::false_type {}; -+#endif -+ -+} // namespace base -+ -+#endif // TemplateUtil_h diff --git a/chromium-66.0.3359.117-gcc5-r3.patch b/chromium-66.0.3359.117-gcc5-r3.patch deleted file mode 100644 index 56abcf1..0000000 --- a/chromium-66.0.3359.117-gcc5-r3.patch +++ /dev/null @@ -1,38 +0,0 @@ -diff -up chromium-66.0.3359.117/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 chromium-66.0.3359.117/gpu/ipc/common/mailbox_struct_traits.h ---- chromium-66.0.3359.117/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 2018-04-17 21:04:33.000000000 -0400 -+++ chromium-66.0.3359.117/gpu/ipc/common/mailbox_struct_traits.h 2018-04-18 12:12:40.065663210 -0400 -@@ -15,7 +15,7 @@ namespace mojo { - template <> - struct StructTraits { - static base::span name(const gpu::Mailbox& mailbox) { -- return mailbox.name; -+ return base::make_span(mailbox.name); - } - static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out); - }; -diff -up chromium-66.0.3359.117/services/viz/public/cpp/compositing/filter_operation_struct_traits.h.gcc5-r3 chromium-66.0.3359.117/services/viz/public/cpp/compositing/filter_operation_struct_traits.h -diff -up chromium-66.0.3359.117/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 chromium-66.0.3359.117/services/viz/public/cpp/compositing/quads_struct_traits.h ---- chromium-66.0.3359.117/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 2018-04-17 21:04:43.000000000 -0400 -+++ chromium-66.0.3359.117/services/viz/public/cpp/compositing/quads_struct_traits.h 2018-04-18 12:12:40.067663160 -0400 -@@ -308,7 +308,7 @@ struct StructTraits vertex_opacity(const viz::DrawQuad& input) { - const viz::TextureDrawQuad* quad = - viz::TextureDrawQuad::MaterialCast(&input); -- return quad->vertex_opacity; -+ return base::make_span(quad->vertex_opacity); - } - - static bool y_flipped(const viz::DrawQuad& input) { -diff -up chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h.gcc5-r3 chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h -diff -up chromium-66.0.3359.117/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 chromium-66.0.3359.117/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc ---- chromium-66.0.3359.117/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 2018-04-17 21:06:20.000000000 -0400 -+++ chromium-66.0.3359.117/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2018-04-18 12:12:40.068663134 -0400 -@@ -10,7 +10,7 @@ - - #include "modules/audio_processing/aec3/aec_state.h" - --#include -+#include - - #include - #include diff --git a/chromium-66.0.3359.117-nounrar.patch b/chromium-66.0.3359.117-nounrar.patch deleted file mode 100644 index 67a517b..0000000 --- a/chromium-66.0.3359.117-nounrar.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff -up chromium-66.0.3359.117/chrome/services/file_util/public/cpp/BUILD.gn.nounrar chromium-66.0.3359.117/chrome/services/file_util/public/cpp/BUILD.gn ---- chromium-66.0.3359.117/chrome/services/file_util/public/cpp/BUILD.gn.nounrar 2018-04-25 12:17:13.858139109 -0400 -+++ chromium-66.0.3359.117/chrome/services/file_util/public/cpp/BUILD.gn 2018-04-25 12:19:53.639532053 -0400 -@@ -27,9 +27,9 @@ source_set("cpp") { - } - - #TODO(crbug/750327): This dependency is here temporarily. -- deps = [ -- "//third_party/unrar:unrar", -- ] -+ # deps = [ -+ # "//third_party/unrar:unrar", -+ # ] - - public_deps += [ "//chrome/common/safe_browsing" ] - } diff --git a/chromium-66.0.3359.139-arm-init-fix.patch b/chromium-66.0.3359.139-arm-init-fix.patch deleted file mode 100644 index 754af5b..0000000 --- a/chromium-66.0.3359.139-arm-init-fix.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-66.0.3359.139/skia/ext/convolver_neon.cc.arm-init-fix chromium-66.0.3359.139/skia/ext/convolver_neon.cc ---- chromium-66.0.3359.139/skia/ext/convolver_neon.cc.arm-init-fix 2018-05-05 10:07:03.624424987 -0400 -+++ chromium-66.0.3359.139/skia/ext/convolver_neon.cc 2018-05-05 10:07:45.417503001 -0400 -@@ -23,7 +23,7 @@ AccumRemainder(const unsigned char* pixe - remainder[2] += coeff * pixels_left[i * 4 + 2]; - remainder[3] += coeff * pixels_left[i * 4 + 3]; - } -- return {remainder[0], remainder[1], remainder[2], remainder[3]}; -+ return vld1q_s32(remainder); - } - - // Convolves horizontally along a single row. The row data is given in diff --git a/chromium-66.0.3359.170-gcc8-alignof.patch b/chromium-66.0.3359.170-gcc8-alignof.patch deleted file mode 100644 index 0c2b356..0000000 --- a/chromium-66.0.3359.170-gcc8-alignof.patch +++ /dev/null @@ -1,18 +0,0 @@ -diff -up chromium-66.0.3359.170/mojo/public/c/system/macros.h.gcc8-alignof chromium-66.0.3359.170/mojo/public/c/system/macros.h ---- chromium-66.0.3359.170/mojo/public/c/system/macros.h.gcc8-alignof 2018-05-15 14:58:46.448912634 -0400 -+++ chromium-66.0.3359.170/mojo/public/c/system/macros.h 2018-05-15 14:58:52.041784613 -0400 -@@ -18,7 +18,13 @@ - #endif - - // Like the C++11 |alignof| operator. --#if __cplusplus >= 201103L -+#if defined(__GNUC__) && __GNUC__ >= 8 -+// GCC 8 has changed the alignof operator to return the minimal alignment -+// required by the target ABI, instead of the preferred alignment. -+// This means that on 32-bit x86, it will return 4 instead of 8. -+// Use __alignof__ instead to avoid this. -+#define MOJO_ALIGNOF(type) __alignof__(type) -+#elif __cplusplus >= 201103L - #define MOJO_ALIGNOF(type) alignof(type) - #elif defined(__GNUC__) - #define MOJO_ALIGNOF(type) __alignof__(type) diff --git a/chromium-67.0.3396.62-boolfix.patch b/chromium-67.0.3396.62-boolfix.patch deleted file mode 100644 index d0ed189..0000000 --- a/chromium-67.0.3396.62-boolfix.patch +++ /dev/null @@ -1,36 +0,0 @@ -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-crashpad-aarch64-buildfix.patch b/chromium-67.0.3396.62-crashpad-aarch64-buildfix.patch deleted file mode 100644 index e19d726..0000000 --- a/chromium-67.0.3396.62-crashpad-aarch64-buildfix.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -up chromium-67.0.3396.62/third_party/crashpad/crashpad/util/misc/capture_context_linux.S.aarch64fix chromium-67.0.3396.62/third_party/crashpad/crashpad/util/misc/capture_context_linux.S ---- chromium-67.0.3396.62/third_party/crashpad/crashpad/util/misc/capture_context_linux.S.aarch64fix 2018-06-04 14:58:04.730083967 -0400 -+++ chromium-67.0.3396.62/third_party/crashpad/crashpad/util/misc/capture_context_linux.S 2018-06-04 14:58:24.896572816 -0400 -@@ -288,7 +288,7 @@ CAPTURECONTEXT_SYMBOL2: - #elif defined(__aarch64__) - - // Zero out fault_address, which is unused. -- str x31, [x0, #0xb0] // context->uc_mcontext.fault_address -+ str xzr, [x0, #0xb0] // context->uc_mcontext.fault_address - - // Save general purpose registers in context->uc_mcontext.regs[i]. - // The original x0 can't be recovered. -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 diff --git a/chromium-67.0.3396.62-epel7-use-old-python-exec-syntax.patch b/chromium-67.0.3396.62-epel7-use-old-python-exec-syntax.patch deleted file mode 100644 index 1aa5600..0000000 --- a/chromium-67.0.3396.62-epel7-use-old-python-exec-syntax.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-67.0.3396.62/tools/gn/bootstrap/bootstrap.py.oldexec chromium-67.0.3396.62/tools/gn/bootstrap/bootstrap.py ---- chromium-67.0.3396.62/tools/gn/bootstrap/bootstrap.py.oldexec 2018-06-06 10:13:40.862084284 -0400 -+++ chromium-67.0.3396.62/tools/gn/bootstrap/bootstrap.py 2018-06-06 10:14:08.809490819 -0400 -@@ -112,7 +112,7 @@ def windows_prepare_toolchain(tempdir): - - _globals = {"__builtins__":None} - _locals = {} -- exec(response, _globals, _locals) -+ exec response in _globals, _locals - - return _locals - diff --git a/chromium-67.0.3396.62-skia-aarch64-buildfix.patch b/chromium-67.0.3396.62-skia-aarch64-buildfix.patch deleted file mode 100644 index 6b37b08..0000000 --- a/chromium-67.0.3396.62-skia-aarch64-buildfix.patch +++ /dev/null @@ -1,21 +0,0 @@ -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) diff --git a/chromium-67.0.3396.87-fedora-user-agent.patch b/chromium-67.0.3396.87-fedora-user-agent.patch deleted file mode 100644 index 8df304d..0000000 --- a/chromium-67.0.3396.87-fedora-user-agent.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-67.0.3396.87/content/common/user_agent.cc.fedora-user-agent chromium-67.0.3396.87/content/common/user_agent.cc ---- chromium-67.0.3396.87/content/common/user_agent.cc.fedora-user-agent 2018-06-25 16:01:48.092188102 -0400 -+++ chromium-67.0.3396.87/content/common/user_agent.cc 2018-06-25 16:02:42.634878954 -0400 -@@ -141,7 +141,7 @@ std::string getUserAgentPlatform() { - #elif defined(OS_MACOSX) - "Macintosh; "; - #elif defined(USE_X11) || defined(USE_OZONE) -- "X11; "; // strange, but that's what Firefox uses -+ "X11; Fedora; "; // strange, but that's what Firefox uses - #elif defined(OS_ANDROID) - "Linux; "; - #else diff --git a/chromium-67.0.3396.99-py2-bootstrap.patch b/chromium-67.0.3396.99-py2-bootstrap.patch deleted file mode 100644 index b59c84b..0000000 --- a/chromium-67.0.3396.99-py2-bootstrap.patch +++ /dev/null @@ -1,42 +0,0 @@ -diff -up chromium-67.0.3396.99/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py.py2 chromium-67.0.3396.99/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py ---- chromium-67.0.3396.99/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py.py2 2018-07-25 14:14:02.004886479 -0400 -+++ chromium-67.0.3396.99/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py 2018-07-25 14:15:30.167896461 -0400 -@@ -58,7 +58,7 @@ def _MinifyJS(input_js): - - with tempfile.NamedTemporaryFile() as _: - args = [ -- 'python', -+ 'python2', - rjsmin_path - ] - p = subprocess.Popen(args, -@@ -177,7 +177,7 @@ def _MinifyCSS(css_text): - os.path.join(py_vulcanize_path, 'third_party', 'rcssmin', 'rcssmin.py')) - - with tempfile.NamedTemporaryFile() as _: -- rcssmin_args = ['python', rcssmin_path] -+ rcssmin_args = ['python2', rcssmin_path] - p = subprocess.Popen(rcssmin_args, - stdin=subprocess.PIPE, - stdout=subprocess.PIPE, -diff -up chromium-67.0.3396.99/tools/gn/bootstrap/bootstrap.py.py2 chromium-67.0.3396.99/tools/gn/bootstrap/bootstrap.py ---- chromium-67.0.3396.99/tools/gn/bootstrap/bootstrap.py.py2 2018-07-24 16:58:53.372022183 -0400 -+++ chromium-67.0.3396.99/tools/gn/bootstrap/bootstrap.py 2018-07-24 17:00:03.200279816 -0400 -@@ -983,7 +983,7 @@ def build_gn_with_gn(temp_gn, build_dir, - gn_gen_args = options.gn_gen_args or '' - if not options.debug: - gn_gen_args += ' is_debug=false' -- cmd = [temp_gn, 'gen', build_dir, '--args=%s' % gn_gen_args, -+ cmd = [temp_gn, 'gen', '--script-executable=/usr/bin/python2', build_dir, '--args=%s' % gn_gen_args, - "--root="+SRC_ROOT - ] - check_call(cmd) -@@ -997,7 +997,7 @@ def build_gn_with_gn(temp_gn, build_dir, - # build.ninja currently refers back to gn from the temporary directory. - # Regenerate the build files using the gn we just built so that the reference - # gets updated to "./gn". -- cmd = [os.path.join(build_dir, 'gn'), 'gen', build_dir, -+ cmd = [os.path.join(build_dir, 'gn'), 'gen', '--script-executable=/usr/bin/python2', build_dir, - '--args=%s' % gn_gen_args] - check_call(cmd) - diff --git a/chromium-68.0.3440.106-fedora-user-agent.patch b/chromium-68.0.3440.106-fedora-user-agent.patch deleted file mode 100644 index 6c4cb82..0000000 --- a/chromium-68.0.3440.106-fedora-user-agent.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-68.0.3440.106/content/common/user_agent.cc.fedora-user-agent chromium-68.0.3440.106/content/common/user_agent.cc ---- chromium-68.0.3440.106/content/common/user_agent.cc.fedora-user-agent 2018-08-09 03:27:45.965769824 -0400 -+++ chromium-68.0.3440.106/content/common/user_agent.cc 2018-08-09 03:28:34.001586650 -0400 -@@ -135,7 +135,7 @@ std::string getUserAgentPlatform() { - #elif defined(OS_MACOSX) - "Macintosh; "; - #elif defined(USE_X11) || defined(USE_OZONE) -- "X11; "; // strange, but that's what Firefox uses -+ "X11; Fedora; "; // strange, but that's what Firefox uses - #elif defined(OS_ANDROID) - "Linux; "; - #elif defined(OS_POSIX) || defined(OS_FUCHSIA) diff --git a/chromium-68.0.3440.106-fix-build-networking_private.patch b/chromium-68.0.3440.106-fix-build-networking_private.patch deleted file mode 100644 index 787d3db..0000000 --- a/chromium-68.0.3440.106-fix-build-networking_private.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-68.0.3440.106/extensions/browser/api/networking_private/BUILD.gn.fixb chromium-68.0.3440.106/extensions/browser/api/networking_private/BUILD.gn ---- chromium-68.0.3440.106/extensions/browser/api/networking_private/BUILD.gn.fixb 2018-08-09 03:56:36.091622243 -0400 -+++ chromium-68.0.3440.106/extensions/browser/api/networking_private/BUILD.gn 2018-08-09 03:57:03.047001659 -0400 -@@ -61,7 +61,7 @@ source_set("networking_private") { - ] - deps += [ "//chromeos" ] - } else { -- not_needed(default_sources) -+ not_needed([ "default_sources" ]) - sources = [ - "networking_private_stubs.cc", - ] diff --git a/chromium-68.0.3440.106-notest.patch b/chromium-68.0.3440.106-notest.patch deleted file mode 100644 index c20a40e..0000000 --- a/chromium-68.0.3440.106-notest.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-68.0.3440.106/chrome/test/data/webui_test_resources.grd.notest chromium-68.0.3440.106/chrome/test/data/webui_test_resources.grd ---- chromium-68.0.3440.106/chrome/test/data/webui_test_resources.grd.notest 2018-08-09 03:08:33.953029806 -0400 -+++ chromium-68.0.3440.106/chrome/test/data/webui_test_resources.grd 2018-08-09 03:09:40.264567818 -0400 -@@ -8,7 +8,6 @@ - - - -- - - - diff --git a/chromium-68.0.3440.84-cors-string.patch b/chromium-68.0.3440.84-cors-string.patch deleted file mode 100644 index b724cd4..0000000 --- a/chromium-68.0.3440.84-cors-string.patch +++ /dev/null @@ -1,51 +0,0 @@ -From 01d891fa0790950549c7bedb34edf869827a372e Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Thu, 31 May 2018 17:03:37 +0000 -Subject: [PATCH] CORS legacy: add missing string include -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -The cors_legacy.h file includes declarations using std::string, but -it is not declared due to missing #include . - -Also drop unneeded declarations in .cpp file. - -Change-Id: I00df799f84a6c3530c2f12f1e52d24c7d9bd6bfd -Reviewed-on: https://chromium-review.googlesource.com/1080707 -Reviewed-by: Tom Sepez -Commit-Queue: José Dapena Paz -Cr-Commit-Position: refs/heads/master@{#563282} ---- - services/network/public/cpp/cors/cors_legacy.cc | 2 -- - services/network/public/cpp/cors/cors_legacy.h | 1 + - 2 files changed, 1 insertion(+), 2 deletions(-) - -diff --git a/services/network/public/cpp/cors/cors_legacy.cc b/services/network/public/cpp/cors/cors_legacy.cc -index 8f32ac3be64e..f01af63619b5 100644 ---- a/services/network/public/cpp/cors/cors_legacy.cc -+++ b/services/network/public/cpp/cors/cors_legacy.cc -@@ -5,8 +5,6 @@ - #include "services/network/public/cpp/cors/cors_legacy.h" - - #include --#include --#include - - #include "url/gurl.h" - #include "url/url_util.h" -diff --git a/services/network/public/cpp/cors/cors_legacy.h b/services/network/public/cpp/cors/cors_legacy.h -index d2cdf026ca3a..dc9295a92c47 100644 ---- a/services/network/public/cpp/cors/cors_legacy.h -+++ b/services/network/public/cpp/cors/cors_legacy.h -@@ -5,6 +5,7 @@ - #ifndef SERVICES_NETWORK_PUBLIC_CPP_CORS_CORS_LEGACY_H_ - #define SERVICES_NETWORK_PUBLIC_CPP_CORS_CORS_LEGACY_H_ - -+#include - #include - - #include "base/component_export.h" --- -2.17.1 - diff --git a/chromium-68.0.3440.84-libjpeg.patch b/chromium-68.0.3440.84-libjpeg.patch deleted file mode 100644 index 5354281..0000000 --- a/chromium-68.0.3440.84-libjpeg.patch +++ /dev/null @@ -1,62 +0,0 @@ -From c6b0194f7a4d9f494b2d51f46d2c332e2e5f4050 Mon Sep 17 00:00:00 2001 -From: Daniel Bratell -Date: Mon, 28 May 2018 13:13:01 +0000 -Subject: [PATCH] Use the same libjpeg in all of blink/platform - -The normal libjpeg renames some symbols with macros so if its -headers are included together with libjpeg-turbo's headers -in the same translation unit, there will be an inconsistent -renaming of libjpeg symbols. This happened in some extreme -jumbo configuration and resulted in confising linker errors. - -This patch changes an include so that jpeglib.h becomes included -the same way everywhere. - -Change-Id: I7f122d0919d58371bb40dc0097a766b857b9815e -Reviewed-on: https://chromium-review.googlesource.com/1073423 -Reviewed-by: Kentaro Hara -Commit-Queue: Daniel Bratell -Cr-Commit-Position: refs/heads/master@{#562243} ---- - .../renderer/platform/image-encoders/image_encoder.cc | 11 +++++++++++ - .../renderer/platform/image-encoders/image_encoder.h | 2 -- - 2 files changed, 11 insertions(+), 2 deletions(-) - -diff --git a/third_party/blink/renderer/platform/image-encoders/image_encoder.cc b/third_party/blink/renderer/platform/image-encoders/image_encoder.cc -index 0c7f14c7c0e4..4c450f5d6783 100644 ---- a/third_party/blink/renderer/platform/image-encoders/image_encoder.cc -+++ b/third_party/blink/renderer/platform/image-encoders/image_encoder.cc -@@ -4,6 +4,17 @@ - - #include "third_party/blink/renderer/platform/image-encoders/image_encoder.h" - -+#include "build/build_config.h" -+ -+#if defined(OS_WIN) -+#include // Included before jpeglib.h because of INT32 clash -+#endif // OS_WIN -+#include // Needed by jpeglib.h -+ -+#include "jpeglib.h" // for JPEG_MAX_DIMENSION -+ -+#include "third_party/libwebp/src/webp/encode.h" // for WEBP_MAX_DIMENSION -+ - namespace blink { - - bool ImageEncoder::Encode(Vector* dst, -diff --git a/third_party/blink/renderer/platform/image-encoders/image_encoder.h b/third_party/blink/renderer/platform/image-encoders/image_encoder.h -index 0d1460f34827..40306097d507 100644 ---- a/third_party/blink/renderer/platform/image-encoders/image_encoder.h -+++ b/third_party/blink/renderer/platform/image-encoders/image_encoder.h -@@ -7,8 +7,6 @@ - - #include "third_party/blink/renderer/platform/platform_export.h" - #include "third_party/blink/renderer/platform/wtf/vector.h" --#include "third_party/libjpeg/jpeglib.h" // for JPEG_MAX_DIMENSION --#include "third_party/libwebp/src/webp/encode.h" // for WEBP_MAX_DIMENSION - #include "third_party/skia/include/core/SkStream.h" - #include "third_party/skia/include/encode/SkJpegEncoder.h" - #include "third_party/skia/include/encode/SkPngEncoder.h" --- -2.17.1 - diff --git a/chromium-68.0.3440.84-libwebp-shim.patch b/chromium-68.0.3440.84-libwebp-shim.patch deleted file mode 100644 index cb387a4..0000000 --- a/chromium-68.0.3440.84-libwebp-shim.patch +++ /dev/null @@ -1,43 +0,0 @@ -diff --git a/build/linux/unbundle/libwebp.gn b/build/linux/unbundle/libwebp.gn -index ab92adecf400..12574d87be58 100644 ---- a/build/linux/unbundle/libwebp.gn -+++ b/build/linux/unbundle/libwebp.gn -@@ -2,12 +2,34 @@ - # 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_libwebp") { -+ packages = [ -+ "libwebp", -+ "libwebpdemux", -+ "libwebpmux", -+ ] -+} -+ -+shim_headers("libwebp_shim") { -+ root_path = "src" -+ headers = [ -+ "webp/decode.h", -+ "webp/demux.h", -+ "webp/encode.h", -+ "webp/mux.h", -+ "webp/mux_types.h", -+ "webp/types.h", -+ ] -+} -+ - source_set("libwebp_webp") { -- libs = [ -- "webp", -- "webpdemux", -- "webpmux", -+ deps = [ -+ ":libwebp_shim", - ] -+ public_configs = [ ":system_libwebp" ] - } - - group("libwebp") { diff --git a/chromium-68.0.3440.84-move-unique-ptr.patch b/chromium-68.0.3440.84-move-unique-ptr.patch deleted file mode 100644 index 2942a8f..0000000 --- a/chromium-68.0.3440.84-move-unique-ptr.patch +++ /dev/null @@ -1,65 +0,0 @@ -From 56cb5f7da1025f6db869e840ed34d3b98b9ab899 Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Tue, 29 May 2018 16:04:14 +0000 -Subject: [PATCH] GCC: do not std::move unique ptr of forward declared UrlIndex -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -GCC fails to resolve the size of UrlIndex, needed -for moving a std::unique_ptr of UrlIndex. This is because -moved is done on a forward-declared UrlIndex. - -To avoid the problem, move the call to std::move to the .cc -file so the full declaration is available. - -Build error: -../../buildtools/third_party/libc++/trunk/include/memory: In instantiation of ‘void std::__1::default_delete<_Tp>::operator()(_Tp*) const [with _Tp = bookmarks::UrlIndex]’: -../../buildtools/third_party/libc++/trunk/include/memory:2634:22: required from ‘void std::__1::unique_ptr<_Tp, _Dp>::reset(std::__1::unique_ptr<_Tp, _Dp>::pointer) [with _Tp = bookmarks::UrlIndex; _Dp = std::__1::default_delete; std::__1::unique_ptr<_Tp, _Dp>::pointer = bookmarks::UrlIndex*]’ -../../buildtools/third_party/libc++/trunk/include/memory:2588:24: required from ‘std::__1::unique_ptr<_Tp, _Dp>::~unique_ptr() [with _Tp = bookmarks::UrlIndex; _Dp = std::__1::default_delete]’ -../../components/bookmarks/browser/bookmark_storage.h:107:76: required from here -../../buildtools/third_party/libc++/trunk/include/memory:2317:25: error: invalid application of ‘sizeof’ to incomplete type ‘bookmarks::UrlIndex’ - static_assert(sizeof(_Tp) > 0, - -Bug: 819294 -Change-Id: I793a807c28e797aaa2e31d9c8b7e09fb6ca6b9e7 -Reviewed-on: https://chromium-review.googlesource.com/1071648 -Commit-Queue: Scott Violet -Reviewed-by: Scott Violet -Cr-Commit-Position: refs/heads/master@{#562446} ---- - components/bookmarks/browser/bookmark_storage.cc | 4 ++++ - components/bookmarks/browser/bookmark_storage.h | 2 +- - 2 files changed, 5 insertions(+), 1 deletion(-) - -diff --git a/components/bookmarks/browser/bookmark_storage.cc b/components/bookmarks/browser/bookmark_storage.cc -index 1633ba1df2a4..3ae0c62292e7 100644 ---- a/components/bookmarks/browser/bookmark_storage.cc -+++ b/components/bookmarks/browser/bookmark_storage.cc -@@ -158,6 +158,10 @@ void BookmarkLoadDetails::CreateUrlIndex() { - url_index_ = std::make_unique(std::move(root_node_)); - } - -+std::unique_ptr BookmarkLoadDetails::owned_url_index() { -+ return std::move(url_index_); -+} -+ - BookmarkPermanentNode* BookmarkLoadDetails::CreatePermanentNode( - BookmarkClient* client, - BookmarkNode::Type type) { -diff --git a/components/bookmarks/browser/bookmark_storage.h b/components/bookmarks/browser/bookmark_storage.h -index 08df5bb65d83..0a1b1a1b65b9 100644 ---- a/components/bookmarks/browser/bookmark_storage.h -+++ b/components/bookmarks/browser/bookmark_storage.h -@@ -104,7 +104,7 @@ class BookmarkLoadDetails { - bool ids_reassigned() const { return ids_reassigned_; } - - void CreateUrlIndex(); -- std::unique_ptr owned_url_index() { return std::move(url_index_); } -+ std::unique_ptr owned_url_index(); - - private: - // Creates one of the possible permanent nodes (bookmark bar node, other node --- -2.17.1 - diff --git a/chromium-69.0.3497.81-gcc8-alignof.patch b/chromium-69.0.3497.81-gcc8-alignof.patch deleted file mode 100644 index 234b391..0000000 --- a/chromium-69.0.3497.81-gcc8-alignof.patch +++ /dev/null @@ -1,18 +0,0 @@ -diff -up chromium-69.0.3497.81/mojo/public/c/system/macros.h.gcc8-alignof chromium-69.0.3497.81/mojo/public/c/system/macros.h ---- chromium-69.0.3497.81/mojo/public/c/system/macros.h.gcc8-alignof 2018-09-06 10:11:54.336432699 -0400 -+++ chromium-69.0.3497.81/mojo/public/c/system/macros.h 2018-09-06 10:13:56.555727572 -0400 -@@ -27,7 +27,13 @@ - (sizeof(void*) == 4 ? 32 : 0) - - // Like the C++11 |alignof| operator. --#if __cplusplus >= 201103L -+#if defined(__GNUC__) && __GNUC__ >= 8 -+// GCC 8 has changed the alignof operator to return the minimal alignment -+// required by the target ABI, instead of the preferred alignment. -+// This means that on 32-bit x86, it will return 4 instead of 8. -+// Use __alignof__ instead to avoid this. -+#define MOJO_ALIGNOF(type) __alignof__(type) -+#elif __cplusplus >= 201103L - #define MOJO_ALIGNOF(type) alignof(type) - #elif defined(__GNUC__) - #define MOJO_ALIGNOF(type) __alignof__(type) diff --git a/chromium-69.0.3497.81-norar.patch b/chromium-69.0.3497.81-norar.patch deleted file mode 100644 index 9545b60..0000000 --- a/chromium-69.0.3497.81-norar.patch +++ /dev/null @@ -1,79 +0,0 @@ -diff -up chromium-69.0.3497.81/chrome/common/safe_browsing/BUILD.gn.nounrar chromium-69.0.3497.81/chrome/common/safe_browsing/BUILD.gn ---- chromium-69.0.3497.81/chrome/common/safe_browsing/BUILD.gn.nounrar 2018-09-06 13:29:47.114511569 -0400 -+++ chromium-69.0.3497.81/chrome/common/safe_browsing/BUILD.gn 2018-09-06 13:29:47.120511452 -0400 -@@ -55,40 +55,6 @@ if (safe_browsing_mode == 1) { - "//components/safe_browsing:csd_proto", - ] - } -- -- source_set("rar_analyzer") { -- sources = [ -- "rar_analyzer.cc", -- "rar_analyzer.h", -- ] -- -- deps = [ -- ":archive_analyzer_results", -- ":download_protection_util", -- ":file_type_policies", -- "//base", -- "//base:i18n", -- "//third_party/unrar:unrar", -- ] -- -- defines = [ -- "_FILE_OFFSET_BITS=64", -- "LARGEFILE_SOURCE", -- "RAR_SMP", -- "SILENT", -- -- # The following is set to disable certain macro definitions in the unrar -- # source code. -- "CHROMIUM_UNRAR", -- -- # Disables exceptions in unrar, replaces them with process termination. -- "UNRAR_NO_EXCEPTIONS", -- ] -- -- public_deps = [ -- "//components/safe_browsing:csd_proto", -- ] -- } - } - - source_set("safe_browsing") { -@@ -121,7 +87,6 @@ source_set("safe_browsing") { - deps += [ - ":archive_analyzer_results", - ":download_protection_util", -- ":rar_analyzer", - "//components/safe_browsing:features", - ] - -diff -up chromium-69.0.3497.81/chrome/common/safe_browsing/DEPS.nounrar chromium-69.0.3497.81/chrome/common/safe_browsing/DEPS ---- chromium-69.0.3497.81/chrome/common/safe_browsing/DEPS.nounrar 2018-09-06 13:29:47.119511472 -0400 -+++ chromium-69.0.3497.81/chrome/common/safe_browsing/DEPS 2018-09-06 13:29:47.116511530 -0400 -@@ -1,6 +1,5 @@ - include_rules = [ - "+components/safe_browsing", - "+third_party/protobuf", -- "+third_party/unrar", - "+third_party/zlib", - ] -diff -up chromium-69.0.3497.81/chrome/services/file_util/safe_archive_analyzer.cc.nounrar chromium-69.0.3497.81/chrome/services/file_util/safe_archive_analyzer.cc ---- chromium-69.0.3497.81/chrome/services/file_util/safe_archive_analyzer.cc.nounrar 2018-09-07 10:10:42.286041744 -0400 -+++ chromium-69.0.3497.81/chrome/services/file_util/safe_archive_analyzer.cc 2018-09-07 10:11:14.934308285 -0400 -@@ -47,9 +47,13 @@ void SafeArchiveAnalyzer::AnalyzeDmgFile - - void SafeArchiveAnalyzer::AnalyzeRarFile(base::File rar_file, - AnalyzeRarFileCallback callback) { -+#if 0 - DCHECK(rar_file.IsValid()); - - safe_browsing::ArchiveAnalyzerResults results; - safe_browsing::rar_analyzer::AnalyzeRarFile(std::move(rar_file), &results); - std::move(callback).Run(results); -+#else -+ NOTREACHED(); -+#endif - } diff --git a/chromium-69.0.3497.81-py2-bootstrap.patch b/chromium-69.0.3497.81-py2-bootstrap.patch deleted file mode 100644 index 8a5db71..0000000 --- a/chromium-69.0.3497.81-py2-bootstrap.patch +++ /dev/null @@ -1,33 +0,0 @@ -diff -up chromium-69.0.3497.81/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py.py2 chromium-69.0.3497.81/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py ---- chromium-69.0.3497.81/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py.py2 2018-09-06 10:45:17.919774145 -0400 -+++ chromium-69.0.3497.81/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py 2018-09-06 10:45:17.914774254 -0400 -@@ -58,7 +58,7 @@ def _MinifyJS(input_js): - - with tempfile.NamedTemporaryFile() as _: - args = [ -- 'python', -+ 'python2', - rjsmin_path - ] - p = subprocess.Popen(args, -@@ -177,7 +177,7 @@ def _MinifyCSS(css_text): - os.path.join(py_vulcanize_path, 'third_party', 'rcssmin', 'rcssmin.py')) - - with tempfile.NamedTemporaryFile() as _: -- rcssmin_args = ['python', rcssmin_path] -+ rcssmin_args = ['python2', rcssmin_path] - p = subprocess.Popen(rcssmin_args, - stdin=subprocess.PIPE, - stdout=subprocess.PIPE, -diff -up chromium-69.0.3497.81/tools/gn/bootstrap/bootstrap.py.py2 chromium-69.0.3497.81/tools/gn/bootstrap/bootstrap.py ---- chromium-69.0.3497.81/tools/gn/bootstrap/bootstrap.py.py2 2018-09-06 10:44:42.225550561 -0400 -+++ chromium-69.0.3497.81/tools/gn/bootstrap/bootstrap.py 2018-09-06 13:06:24.251636231 -0400 -@@ -87,7 +87,7 @@ def main(argv): - if not options.debug: - gn_gen_args += ' is_debug=false' - subprocess.check_call([ -- gn_path, 'gen', out_dir, -+ gn_path, 'gen', out_dir, ' --script-executable=/usr/bin/python2', - '--args=%s' % gn_gen_args, "--root=" + SRC_ROOT - ]) - diff --git a/chromium-69.0.3497.81-widevine-r2.patch b/chromium-69.0.3497.81-widevine-r2.patch deleted file mode 100644 index a66a0fb..0000000 --- a/chromium-69.0.3497.81-widevine-r2.patch +++ /dev/null @@ -1,23 +0,0 @@ -diff -up chromium-69.0.3497.81/third_party/widevine/cdm/BUILD.gn.wvhack chromium-69.0.3497.81/third_party/widevine/cdm/BUILD.gn ---- chromium-69.0.3497.81/third_party/widevine/cdm/BUILD.gn.wvhack 2018-09-06 13:28:22.655272555 -0400 -+++ chromium-69.0.3497.81/third_party/widevine/cdm/BUILD.gn 2018-09-06 13:28:22.655272555 -0400 -@@ -11,7 +11,7 @@ import("//third_party/widevine/cdm/widev - # Internal Cast builds set enable_widevine=true to bring in Widevine support. - # TODO(xhwang): Support component updated CDM on other platforms and remove this - # assert. --assert(!enable_widevine || is_win || is_mac || is_chromecast, -+assert(!enable_widevine || is_win || is_mac || is_chromecast || is_linux, - "Component updated CDM only supported on Windows and Mac for now.") - - widevine_arch = current_cpu -diff -up chromium-69.0.3497.81/third_party/widevine/cdm/stub/widevine_cdm_version.h.wvhack chromium-69.0.3497.81/third_party/widevine/cdm/stub/widevine_cdm_version.h ---- chromium-69.0.3497.81/third_party/widevine/cdm/stub/widevine_cdm_version.h.wvhack 2018-09-06 13:28:22.654272577 -0400 -+++ chromium-69.0.3497.81/third_party/widevine/cdm/stub/widevine_cdm_version.h 2018-09-06 13:28:22.654272577 -0400 -@@ -10,6 +10,7 @@ - - #include "third_party/widevine/cdm/widevine_cdm_common.h" - -+#define WIDEVINE_CDM_VERSION_STRING "unknown" - #define WIDEVINE_CDM_AVAILABLE - - #endif // WIDEVINE_CDM_VERSION_H_ diff --git a/chromium-70.0.3538.110-remove-sysroot-options.patch b/chromium-70.0.3538.110-remove-sysroot-options.patch deleted file mode 100644 index 9eb99d1..0000000 --- a/chromium-70.0.3538.110-remove-sysroot-options.patch +++ /dev/null @@ -1,23 +0,0 @@ -diff -up chromium-70.0.3538.110/tools/gn/bootstrap/bootstrap.py.sysrootfix chromium-70.0.3538.110/tools/gn/bootstrap/bootstrap.py ---- chromium-70.0.3538.110/tools/gn/bootstrap/bootstrap.py.sysrootfix 2018-11-26 13:40:19.324713204 -0500 -+++ chromium-70.0.3538.110/tools/gn/bootstrap/bootstrap.py 2018-11-26 13:40:43.199180888 -0500 -@@ -46,10 +46,6 @@ def main(argv): - '--build-path', - help='The directory in which to build gn, ' - 'relative to the src directory. (eg. out/Release)') -- parser.add_option( -- '--with-sysroot', -- action='store_true', -- help='Download and build with the Debian sysroot.') - parser.add_option('-v', '--verbose', help='ignored') - options, args = parser.parse_args(argv) - if args: -@@ -71,8 +67,6 @@ def main(argv): - '--no-last-commit-position', - '--out-path=' + gn_build_dir, - ] -- if not options.with_sysroot: -- cmd.append('--no-sysroot') - if options.debug: - cmd.append('--debug') - subprocess.check_call(cmd) diff --git a/chromium-70.0.3538.77-harfbuzz2-fix.patch b/chromium-70.0.3538.77-harfbuzz2-fix.patch deleted file mode 100644 index 2d5602d..0000000 --- a/chromium-70.0.3538.77-harfbuzz2-fix.patch +++ /dev/null @@ -1,80 +0,0 @@ -From 7ae38170a117e909bb28e1470842b68de3501197 Mon Sep 17 00:00:00 2001 -From: Mike Gilbert -Date: Sun, 21 Oct 2018 10:06:53 -0400 -Subject: [PATCH] blink: add 'const' modifier for harfbuzz hb_codepoint_t - pointers - -This resolves a build failure against harfbuzz 2.0. - -Based on a patch by Alexandre Fierreira. - -Bug: https://bugs.gentoo.org/669034 ---- - .../renderer/platform/fonts/shaping/harfbuzz_face.cc | 2 +- - .../renderer/platform/fonts/skia/skia_text_metrics.cc | 9 +++++++-- - .../renderer/platform/fonts/skia/skia_text_metrics.h | 2 +- - 3 files changed, 9 insertions(+), 4 deletions(-) - -diff --git a/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face.cc b/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face.cc -index 8e7d91ca371f..e279a5876cb3 100644 ---- a/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face.cc -+++ b/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face.cc -@@ -139,7 +139,7 @@ static hb_position_t HarfBuzzGetGlyphHorizontalAdvance(hb_font_t* hb_font, - static void HarfBuzzGetGlyphHorizontalAdvances(hb_font_t* font, - void* font_data, - unsigned count, -- hb_codepoint_t* first_glyph, -+ const hb_codepoint_t* first_glyph, - unsigned int glyph_stride, - hb_position_t* first_advance, - unsigned int advance_stride, -diff --git a/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.cc b/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.cc -index 77ec6209fab9..9f9070921448 100644 ---- a/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.cc -+++ b/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.cc -@@ -18,6 +18,11 @@ T* advance_by_byte_size(T* p, unsigned byte_size) { - return reinterpret_cast(reinterpret_cast(p) + byte_size); - } - -+template -+T* advance_by_byte_size_const(T* p, unsigned byte_size) { -+ return reinterpret_cast(reinterpret_cast(p) + byte_size); -+} -+ - } // namespace - - SkiaTextMetrics::SkiaTextMetrics(const SkPaint* paint) : paint_(paint) { -@@ -39,7 +44,7 @@ void SkiaTextMetrics::GetGlyphWidthForHarfBuzz(hb_codepoint_t codepoint, - } - - void SkiaTextMetrics::GetGlyphWidthForHarfBuzz(unsigned count, -- hb_codepoint_t* glyphs, -+ const hb_codepoint_t* glyphs, - unsigned glyph_stride, - hb_position_t* advances, - unsigned advance_stride) { -@@ -48,7 +53,7 @@ void SkiaTextMetrics::GetGlyphWidthForHarfBuzz(unsigned count, - // array that copy them to a regular array. - Vector glyph_array(count); - for (unsigned i = 0; i < count; -- i++, glyphs = advance_by_byte_size(glyphs, glyph_stride)) { -+ i++, glyphs = advance_by_byte_size_const(glyphs, glyph_stride)) { - glyph_array[i] = *glyphs; - } - Vector sk_width_array(count); -diff --git a/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.h b/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.h -index 787d8af0375a..3bc4407c641b 100644 ---- a/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.h -+++ b/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.h -@@ -19,7 +19,7 @@ class SkiaTextMetrics final { - - void GetGlyphWidthForHarfBuzz(hb_codepoint_t, hb_position_t* width); - void GetGlyphWidthForHarfBuzz(unsigned count, -- hb_codepoint_t* first_glyph, -+ const hb_codepoint_t* first_glyph, - unsigned glyph_stride, - hb_position_t* first_advance, - unsigned advance_stride); --- -2.19.1 - diff --git a/chromium-71-gcc-0.patch b/chromium-71-gcc-0.patch deleted file mode 100644 index 711b827..0000000 --- a/chromium-71-gcc-0.patch +++ /dev/null @@ -1,57 +0,0 @@ -From 65be571f6ac2f7942b4df9e50b24da517f829eec Mon Sep 17 00:00:00 2001 -From: Raphael Kubo da Costa -Date: Mon, 15 Oct 2018 20:26:10 +0000 -Subject: [PATCH] google_util: Explicitly use std::initializer_list with - base::NoDestructor -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Follow-up to ac53c5c53 ("Remove CR_DEFINE_STATIC_LOCAL from /components"). -Due to https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84849, having -base::NoDestructor> and passing an initializer list of Us does not -work if this is not done explicitly, as GCC incorrectly fails to determine -which constructor overload to use: - - ../../components/google/core/common/google_util.cc: In function ‘bool google_util::{anonymous}::IsCanonicalHostGoogleHostname(base::StringPiece, google_util::SubdomainPermission)’: - ../../components/google/core/common/google_util.cc:120:24: error: call of overloaded ‘NoDestructor()’ is ambiguous - {GOOGLE_TLD_LIST}); - -See also: https://chromium-review.googlesource.com/c/chromium/src/+/1170905 - -Bug: 819294 -Change-Id: Ie1490b6646d7998d636c485769caabf56c1cf44c -Reviewed-on: https://chromium-review.googlesource.com/c/1275854 -Reviewed-by: Peter Kasting -Commit-Queue: Raphael Kubo da Costa (CET) -Cr-Commit-Position: refs/heads/master@{#599733} ---- - components/google/core/common/google_util.cc | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - -diff --git a/components/google/core/common/google_util.cc b/components/google/core/common/google_util.cc -index a44c84393820..7733848a0443 100644 ---- a/components/google/core/common/google_util.cc -+++ b/components/google/core/common/google_util.cc -@@ -117,7 +117,7 @@ bool IsCanonicalHostGoogleHostname(base::StringPiece canonical_host, - StripTrailingDot(&tld); - - static base::NoDestructor> google_tlds( -- {GOOGLE_TLD_LIST}); -+ std::initializer_list({GOOGLE_TLD_LIST})); - return base::ContainsKey(*google_tlds, tld.as_string()); - } - -@@ -132,7 +132,8 @@ bool IsGoogleSearchSubdomainUrl(const GURL& url) { - StripTrailingDot(&host); - - static base::NoDestructor> google_subdomains( -- {"ipv4.google.com", "ipv6.google.com"}); -+ std::initializer_list( -+ {"ipv4.google.com", "ipv6.google.com"})); - - return base::ContainsKey(*google_subdomains, host.as_string()); - } --- -2.19.1 - diff --git a/chromium-71.0.3578.98-el7-fix-noexcept.patch b/chromium-71.0.3578.98-el7-fix-noexcept.patch deleted file mode 100644 index 234f0a9..0000000 --- a/chromium-71.0.3578.98-el7-fix-noexcept.patch +++ /dev/null @@ -1,48 +0,0 @@ -diff -up chromium-71.0.3578.98/chrome/common/media_router/media_sink.cc.fix-noexcept chromium-71.0.3578.98/chrome/common/media_router/media_sink.cc ---- chromium-71.0.3578.98/chrome/common/media_router/media_sink.cc.fix-noexcept 2019-01-02 14:44:40.449801789 -0500 -+++ chromium-71.0.3578.98/chrome/common/media_router/media_sink.cc 2019-01-02 14:44:54.167481936 -0500 -@@ -24,7 +24,7 @@ MediaSink::MediaSink() = default; - MediaSink::~MediaSink() = default; - - MediaSink& MediaSink::operator=(const MediaSink& other) = default; --MediaSink& MediaSink::operator=(MediaSink&& other) noexcept = default; -+MediaSink& MediaSink::operator=(MediaSink&& other) = default; - - bool MediaSink::Equals(const MediaSink& other) const { - return sink_id_ == other.sink_id_; -diff -up chromium-71.0.3578.98/components/policy/core/common/policy_map.cc.fix-noexcept chromium-71.0.3578.98/components/policy/core/common/policy_map.cc ---- chromium-71.0.3578.98/components/policy/core/common/policy_map.cc.fix-noexcept 2019-01-02 12:06:10.867313533 -0500 -+++ chromium-71.0.3578.98/components/policy/core/common/policy_map.cc 2019-01-02 12:06:27.544980078 -0500 -@@ -18,7 +18,7 @@ PolicyMap::Entry::Entry() = default; - PolicyMap::Entry::~Entry() = default; - - PolicyMap::Entry::Entry(Entry&&) noexcept = default; --PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) noexcept = default; -+PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) = default; - - PolicyMap::Entry PolicyMap::Entry::DeepCopy() const { - Entry copy; -diff -up chromium-71.0.3578.98/components/signin/core/browser/account_info.cc.fix-noexcept chromium-71.0.3578.98/components/signin/core/browser/account_info.cc ---- chromium-71.0.3578.98/components/signin/core/browser/account_info.cc.fix-noexcept 2019-01-02 10:57:29.194710662 -0500 -+++ chromium-71.0.3578.98/components/signin/core/browser/account_info.cc 2019-01-02 10:58:57.829965474 -0500 -@@ -32,7 +32,7 @@ AccountInfo::AccountInfo(AccountInfo&& o - - AccountInfo& AccountInfo::operator=(const AccountInfo& other) = default; - --AccountInfo& AccountInfo::operator=(AccountInfo&& other) noexcept = default; -+AccountInfo& AccountInfo::operator=(AccountInfo&& other) = default; - - bool AccountInfo::IsEmpty() const { - return account_id.empty() && email.empty() && gaia.empty() && -diff -up chromium-71.0.3578.98/gpu/config/gpu_info.cc.fix-noexcept chromium-71.0.3578.98/gpu/config/gpu_info.cc ---- chromium-71.0.3578.98/gpu/config/gpu_info.cc.fix-noexcept 2018-12-20 09:50:03.320449807 -0500 -+++ chromium-71.0.3578.98/gpu/config/gpu_info.cc 2018-12-20 09:50:25.768849091 -0500 -@@ -116,7 +116,7 @@ GPUInfo::GPUDevice& GPUInfo::GPUDevice:: - const GPUInfo::GPUDevice& other) = default; - - GPUInfo::GPUDevice& GPUInfo::GPUDevice::operator=( -- GPUInfo::GPUDevice&& other) noexcept = default; -+ GPUInfo::GPUDevice&& other) = default; - - GPUInfo::GPUInfo() - : optimus(false), diff --git a/chromium-71.0.3578.98-norar.patch b/chromium-71.0.3578.98-norar.patch deleted file mode 100644 index 1259088..0000000 --- a/chromium-71.0.3578.98-norar.patch +++ /dev/null @@ -1,79 +0,0 @@ -diff -up chromium-71.0.3578.98/chrome/common/safe_browsing/BUILD.gn.nounrar chromium-71.0.3578.98/chrome/common/safe_browsing/BUILD.gn ---- chromium-71.0.3578.98/chrome/common/safe_browsing/BUILD.gn.nounrar 2018-12-12 16:56:04.000000000 -0500 -+++ chromium-71.0.3578.98/chrome/common/safe_browsing/BUILD.gn 2018-12-14 11:44:52.172805635 -0500 -@@ -56,40 +56,6 @@ if (safe_browsing_mode == 1) { - ] - } - -- source_set("rar_analyzer") { -- sources = [ -- "rar_analyzer.cc", -- "rar_analyzer.h", -- ] -- -- deps = [ -- ":archive_analyzer_results", -- ":download_protection_util", -- ":file_type_policies", -- "//base", -- "//base:i18n", -- "//third_party/unrar:unrar", -- ] -- -- defines = [ -- "_FILE_OFFSET_BITS=64", -- "LARGEFILE_SOURCE", -- "RAR_SMP", -- "SILENT", -- -- # The following is set to disable certain macro definitions in the unrar -- # source code. -- "CHROMIUM_UNRAR", -- -- # Disables exceptions in unrar, replaces them with process termination. -- "UNRAR_NO_EXCEPTIONS", -- ] -- -- public_deps = [ -- "//components/safe_browsing:csd_proto", -- ] -- } -- - source_set("disk_image_type_sniffer_mac") { - sources = [ - "disk_image_type_sniffer_mac.cc", -@@ -136,7 +102,6 @@ source_set("safe_browsing") { - deps += [ - ":archive_analyzer_results", - ":download_protection_util", -- ":rar_analyzer", - "//components/safe_browsing:features", - ] - -diff -up chromium-71.0.3578.98/chrome/common/safe_browsing/DEPS.nounrar chromium-71.0.3578.98/chrome/common/safe_browsing/DEPS ---- chromium-71.0.3578.98/chrome/common/safe_browsing/DEPS.nounrar 2018-12-12 16:56:04.000000000 -0500 -+++ chromium-71.0.3578.98/chrome/common/safe_browsing/DEPS 2018-12-14 11:23:58.628142952 -0500 -@@ -1,6 +1,5 @@ - include_rules = [ - "+components/safe_browsing", - "+third_party/protobuf", -- "+third_party/unrar", - "+third_party/zlib", - ] -diff -up chromium-71.0.3578.98/chrome/services/file_util/safe_archive_analyzer.cc.nounrar chromium-71.0.3578.98/chrome/services/file_util/safe_archive_analyzer.cc ---- chromium-71.0.3578.98/chrome/services/file_util/safe_archive_analyzer.cc.nounrar 2018-12-12 16:56:04.000000000 -0500 -+++ chromium-71.0.3578.98/chrome/services/file_util/safe_archive_analyzer.cc 2018-12-14 11:23:58.628142952 -0500 -@@ -47,9 +47,13 @@ void SafeArchiveAnalyzer::AnalyzeDmgFile - - void SafeArchiveAnalyzer::AnalyzeRarFile(base::File rar_file, - AnalyzeRarFileCallback callback) { -+#if 0 - DCHECK(rar_file.IsValid()); - - safe_browsing::ArchiveAnalyzerResults results; - safe_browsing::rar_analyzer::AnalyzeRarFile(std::move(rar_file), &results); - std::move(callback).Run(results); -+#else -+ NOTREACHED(); -+#endif - } diff --git a/chromium-71.0.3578.98-remove-sysroot-options.patch b/chromium-71.0.3578.98-remove-sysroot-options.patch deleted file mode 100644 index a9af73b..0000000 --- a/chromium-71.0.3578.98-remove-sysroot-options.patch +++ /dev/null @@ -1,23 +0,0 @@ -diff -up chromium-71.0.3578.98/tools/gn/bootstrap/bootstrap.py.sysrootfix chromium-71.0.3578.98/tools/gn/bootstrap/bootstrap.py ---- chromium-71.0.3578.98/tools/gn/bootstrap/bootstrap.py.sysrootfix 2018-12-14 12:52:04.144860836 -0500 -+++ chromium-71.0.3578.98/tools/gn/bootstrap/bootstrap.py 2018-12-14 12:57:54.791539599 -0500 -@@ -46,10 +46,6 @@ def main(argv): - '--build-path', - help='The directory in which to build gn, ' - 'relative to the src directory. (eg. out/Release)') -- parser.add_option( -- '--with-sysroot', -- action='store_true', -- help='Download and build with the Debian sysroot.') - parser.add_option('-v', '--verbose', help='ignored') - parser.add_option( - '--skip-generate-buildfiles', -@@ -76,8 +72,6 @@ def main(argv): - '--no-last-commit-position', - '--out-path=' + gn_build_dir, - ] -- if not options.with_sysroot: -- cmd.append('--no-sysroot') - if options.debug: - cmd.append('--debug') - subprocess.check_call(cmd) diff --git a/chromium-71.0.3578.98-vaapi-libva1-compatibility.patch b/chromium-71.0.3578.98-vaapi-libva1-compatibility.patch deleted file mode 100644 index 5b51e3d..0000000 --- a/chromium-71.0.3578.98-vaapi-libva1-compatibility.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -up chromium-71.0.3578.98/media/gpu/vaapi/vaapi_jpeg_decode_accelerator.cc.va1compat chromium-71.0.3578.98/media/gpu/vaapi/vaapi_jpeg_decode_accelerator.cc ---- chromium-71.0.3578.98/media/gpu/vaapi/vaapi_jpeg_decode_accelerator.cc.va1compat 2018-12-17 15:07:48.158717055 -0500 -+++ chromium-71.0.3578.98/media/gpu/vaapi/vaapi_jpeg_decode_accelerator.cc 2018-12-17 15:09:49.780316983 -0500 -@@ -38,6 +38,10 @@ enum VAJDADecoderFailure { - VAJDA_DECODER_FAILURES_MAX, - }; - -+#ifndef VA_FOURCC_I420 -+#define VA_FOURCC_I420 VA_FOURCC('I', '4', '2', '0') -+#endif -+ - static void ReportToUMA(VAJDADecoderFailure failure) { - UMA_HISTOGRAM_ENUMERATION("Media.VAJDA.DecoderFailure", failure, - VAJDA_DECODER_FAILURES_MAX + 1); diff --git a/chromium-72.0.3626.121-fix-va-check.patch b/chromium-72.0.3626.121-fix-va-check.patch deleted file mode 100644 index aa0eb71..0000000 --- a/chromium-72.0.3626.121-fix-va-check.patch +++ /dev/null @@ -1,29 +0,0 @@ -diff -up chromium-72.0.3626.121/media/gpu/vaapi/vaapi_wrapper.cc.fixvacheck chromium-72.0.3626.121/media/gpu/vaapi/vaapi_wrapper.cc ---- chromium-72.0.3626.121/media/gpu/vaapi/vaapi_wrapper.cc.fixvacheck 2019-03-10 14:54:38.744305074 -0400 -+++ chromium-72.0.3626.121/media/gpu/vaapi/vaapi_wrapper.cc 2019-03-10 14:55:34.383221574 -0400 -@@ -334,15 +334,16 @@ bool VADisplayState::InitializeOnce() { - << va_vendor_string_; - - // The VAAPI version is determined from what is loaded on the system by -- // calling vaInitialize(). We want a runtime evaluation of libva version, -- // of what is loaded on the system, with, what browser is compiled with. -- // Also since the libva is now ABI-compatible, relax the version check -- // which helps in upgrading the libva, without breaking any existing -- // functionality. -- if (!VA_CHECK_VERSION(major_version, minor_version, 0)) { -- LOG(ERROR) << "This build of Chromium requires VA-API version " -- << VA_MAJOR_VERSION << "." << VA_MINOR_VERSION -- << ", system version: " << major_version << "." << minor_version; -+ // calling vaInitialize(). Since the libva is now ABI-compatible, relax the -+ // version check which helps in upgrading the libva, without breaking any -+ // existing functionality. Make sure the system version is not older than -+ // the version with which the chromium is built since libva is only -+ // guaranteed to be backward (and not forward) compatible. -+ if (VA_MAJOR_VERSION > major_version || -+ (VA_MAJOR_VERSION == major_version && VA_MINOR_VERSION > minor_version)) { -+ LOG(ERROR) << "The system version " << major_version << "." << minor_version -+ << " should be greater than or equal to " -+ << VA_MAJOR_VERSION << "." << VA_MINOR_VERSION; - return false; - } - return true; diff --git a/chromium-72.0.3626.121-norar.patch b/chromium-72.0.3626.121-norar.patch deleted file mode 100644 index d5d2632..0000000 --- a/chromium-72.0.3626.121-norar.patch +++ /dev/null @@ -1,79 +0,0 @@ -diff -up chromium-72.0.3626.121/chrome/common/safe_browsing/BUILD.gn.nounrar chromium-72.0.3626.121/chrome/common/safe_browsing/BUILD.gn ---- chromium-72.0.3626.121/chrome/common/safe_browsing/BUILD.gn.nounrar 2019-03-10 14:15:47.187705953 -0400 -+++ chromium-72.0.3626.121/chrome/common/safe_browsing/BUILD.gn 2019-03-10 14:16:47.154138649 -0400 -@@ -56,40 +56,6 @@ if (safe_browsing_mode == 1) { - ] - } - -- source_set("rar_analyzer") { -- sources = [ -- "rar_analyzer.cc", -- "rar_analyzer.h", -- ] -- -- deps = [ -- ":archive_analyzer_results", -- ":download_type_util", -- ":file_type_policies", -- "//base", -- "//base:i18n", -- "//third_party/unrar:unrar", -- ] -- -- defines = [ -- "_FILE_OFFSET_BITS=64", -- "LARGEFILE_SOURCE", -- "RAR_SMP", -- "SILENT", -- -- # The following is set to disable certain macro definitions in the unrar -- # source code. -- "CHROMIUM_UNRAR", -- -- # Disables exceptions in unrar, replaces them with process termination. -- "UNRAR_NO_EXCEPTIONS", -- ] -- -- public_deps = [ -- "//components/safe_browsing:csd_proto", -- ] -- } -- - source_set("disk_image_type_sniffer_mac") { - sources = [ - "disk_image_type_sniffer_mac.cc", -@@ -150,7 +116,6 @@ source_set("safe_browsing") { - deps += [ - ":archive_analyzer_results", - ":download_type_util", -- ":rar_analyzer", - "//components/safe_browsing:features", - ] - -diff -up chromium-72.0.3626.121/chrome/common/safe_browsing/DEPS.nounrar chromium-72.0.3626.121/chrome/common/safe_browsing/DEPS ---- chromium-72.0.3626.121/chrome/common/safe_browsing/DEPS.nounrar 2019-03-01 23:10:03.000000000 -0500 -+++ chromium-72.0.3626.121/chrome/common/safe_browsing/DEPS 2019-03-10 14:14:55.430058716 -0400 -@@ -1,6 +1,5 @@ - include_rules = [ - "+components/safe_browsing", - "+third_party/protobuf", -- "+third_party/unrar", - "+third_party/zlib", - ] -diff -up chromium-72.0.3626.121/chrome/services/file_util/safe_archive_analyzer.cc.nounrar chromium-72.0.3626.121/chrome/services/file_util/safe_archive_analyzer.cc ---- chromium-72.0.3626.121/chrome/services/file_util/safe_archive_analyzer.cc.nounrar 2019-03-01 23:10:04.000000000 -0500 -+++ chromium-72.0.3626.121/chrome/services/file_util/safe_archive_analyzer.cc 2019-03-10 14:14:55.433058638 -0400 -@@ -47,9 +47,13 @@ void SafeArchiveAnalyzer::AnalyzeDmgFile - - void SafeArchiveAnalyzer::AnalyzeRarFile(base::File rar_file, - AnalyzeRarFileCallback callback) { -+#if 0 - DCHECK(rar_file.IsValid()); - - safe_browsing::ArchiveAnalyzerResults results; - safe_browsing::rar_analyzer::AnalyzeRarFile(std::move(rar_file), &results); - std::move(callback).Run(results); -+#else -+ NOTREACHED(); -+#endif - } diff --git a/chromium-73-gcc-0.patch b/chromium-73-gcc-0.patch deleted file mode 100644 index 5a50700..0000000 --- a/chromium-73-gcc-0.patch +++ /dev/null @@ -1,108 +0,0 @@ -From 2c3b57cafbbb38c13a519c9d2fda8b65691d9564 Mon Sep 17 00:00:00 2001 -From: Raphael Kubo da Costa -Date: Thu, 7 Feb 2019 22:55:37 +0000 -Subject: [PATCH] allocator shim: Swap ALIGN_LINKAGE and SHIM_ALWAYS_EXPORT's - positions -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -This fixes the GCC build. GCC seems to be stricter with the position of the -linkage specification, so just swap the terms to prevent an error that looks -like: - -In file included from ../../base/allocator/allocator_shim.cc:333: -../../base/allocator/allocator_shim_override_cpp_symbols.h:39:30: error: expected unqualified-id before string constant - #define ALIGN_LINKAGE extern "C" - ^~~ -../../base/allocator/allocator_shim_override_cpp_symbols.h:99:20: note: in expansion of macro ‘ALIGN_LINKAGE’ - SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void* ALIGN_NEW(std::size_t size, - ^~~~~~~~~~~~~ - -Bug: 819294 -Change-Id: I0aa16ea88cead42e83796a1c86afad8b447ddc50 -Reviewed-on: https://chromium-review.googlesource.com/c/1458256 -Auto-Submit: Raphael Kubo da Costa -Reviewed-by: Thomas Anderson -Reviewed-by: Primiano Tucci -Commit-Queue: Raphael Kubo da Costa -Cr-Commit-Position: refs/heads/master@{#630084} ---- - .../allocator_shim_override_cpp_symbols.h | 20 +++++++++---------- - 1 file changed, 10 insertions(+), 10 deletions(-) - -diff --git a/base/allocator/allocator_shim_override_cpp_symbols.h b/base/allocator/allocator_shim_override_cpp_symbols.h -index 1228f5e33d28..01d25b7f6437 100644 ---- a/base/allocator/allocator_shim_override_cpp_symbols.h -+++ b/base/allocator/allocator_shim_override_cpp_symbols.h -@@ -96,57 +96,57 @@ SHIM_ALWAYS_EXPORT void operator delete[](void* p, size_t) __THROW { - ShimCppDelete(p); - } - --SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void* ALIGN_NEW(std::size_t size, -+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void* ALIGN_NEW(std::size_t size, - ALIGN_VAL_T alignment) { - return ShimCppAlignedNew(size, static_cast(alignment)); - } - --SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void* ALIGN_NEW_NOTHROW( -+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void* ALIGN_NEW_NOTHROW( - std::size_t size, - ALIGN_VAL_T alignment, - const std::nothrow_t&) __THROW { - return ShimCppAlignedNew(size, static_cast(alignment)); - } - --SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void ALIGN_DEL(void* p, ALIGN_VAL_T) __THROW { -+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void ALIGN_DEL(void* p, ALIGN_VAL_T) __THROW { - ShimCppDelete(p); - } - --SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void ALIGN_DEL_SIZED(void* p, -+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void ALIGN_DEL_SIZED(void* p, - std::size_t size, - ALIGN_VAL_T) __THROW { - ShimCppDelete(p); - } - --SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void -+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void - ALIGN_DEL_NOTHROW(void* p, ALIGN_VAL_T, const std::nothrow_t&) __THROW { - ShimCppDelete(p); - } - --SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void* ALIGN_NEW_ARR(std::size_t size, -+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void* ALIGN_NEW_ARR(std::size_t size, - ALIGN_VAL_T alignment) { - return ShimCppAlignedNew(size, static_cast(alignment)); - } - --SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void* ALIGN_NEW_ARR_NOTHROW( -+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void* ALIGN_NEW_ARR_NOTHROW( - std::size_t size, - ALIGN_VAL_T alignment, - const std::nothrow_t&) __THROW { - return ShimCppAlignedNew(size, static_cast(alignment)); - } - --SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void ALIGN_DEL_ARR(void* p, -+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void ALIGN_DEL_ARR(void* p, - ALIGN_VAL_T) __THROW { - ShimCppDelete(p); - } - --SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void ALIGN_DEL_ARR_SIZED(void* p, -+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void ALIGN_DEL_ARR_SIZED(void* p, - std::size_t size, - ALIGN_VAL_T) __THROW { - ShimCppDelete(p); - } - --SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void -+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void - ALIGN_DEL_ARR_NOTHROW(void* p, ALIGN_VAL_T, const std::nothrow_t&) __THROW { - ShimCppDelete(p); - } --- -2.20.1 - diff --git a/chromium-73-gcc-1.patch b/chromium-73-gcc-1.patch deleted file mode 100644 index c3f8e42..0000000 --- a/chromium-73-gcc-1.patch +++ /dev/null @@ -1,99 +0,0 @@ -From 130a5ae24a02daba8729ba2216bcaf3dbfacea69 Mon Sep 17 00:00:00 2001 -From: Raphael Kubo da Costa -Date: Fri, 8 Feb 2019 16:58:38 +0000 -Subject: [PATCH] media::learning: Make LabelledExample's move assignment - operator noexcept -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -The GCC build is currently broken with an error like this: - - ../../media/learning/common/labelled_example.cc:20:1: error: function ‘media::learning::LabelledExample::LabelledExample(media::learning::LabelledExample&&)’ defaulted on its redeclaration with an exception-specification that differs from the implicit exception-specification ‘’ - LabelledExample::LabelledExample(LabelledExample&& rhs) noexcept = default; - ^~~~~~~~~~~~~~~ - -With GCC, having that noexcept marker requires all members to be marked with -noexcept themselves, and TargetValue was missing some assignment operators -and noexcept markers. - -clang is fine because we pass -fno-exceptions and it disables the same error -there, while GCC continues to raise it (bug 843143 and its corresponding CL -have a longer discussion on this issue). - -Bug: 819294 -Change-Id: Ide30932fc466ccb52d6883a82777e703dae48798 -Reviewed-on: https://chromium-review.googlesource.com/c/1458210 -Commit-Queue: Frank Liberato -Reviewed-by: Frank Liberato -Auto-Submit: Raphael Kubo da Costa -Cr-Commit-Position: refs/heads/master@{#630355} ---- - media/learning/common/labelled_example.cc | 3 ++- - media/learning/common/labelled_example.h | 2 +- - media/learning/common/value.cc | 6 ++++++ - media/learning/common/value.h | 4 ++++ - 4 files changed, 13 insertions(+), 2 deletions(-) - -diff --git a/media/learning/common/labelled_example.cc b/media/learning/common/labelled_example.cc -index 76d08509298e..43e834f9f3cf 100644 ---- a/media/learning/common/labelled_example.cc -+++ b/media/learning/common/labelled_example.cc -@@ -59,7 +59,8 @@ bool LabelledExample::operator<(const LabelledExample& rhs) const { - LabelledExample& LabelledExample::operator=(const LabelledExample& rhs) = - default; - --LabelledExample& LabelledExample::operator=(LabelledExample&& rhs) = default; -+LabelledExample& LabelledExample::operator=(LabelledExample&& rhs) noexcept = -+ default; - - TrainingData::TrainingData() = default; - -diff --git a/media/learning/common/labelled_example.h b/media/learning/common/labelled_example.h -index 4f43c54e7a76..365abc3c0ebf 100644 ---- a/media/learning/common/labelled_example.h -+++ b/media/learning/common/labelled_example.h -@@ -40,7 +40,7 @@ struct COMPONENT_EXPORT(LEARNING_COMMON) LabelledExample { - bool operator<(const LabelledExample& rhs) const; - - LabelledExample& operator=(const LabelledExample& rhs); -- LabelledExample& operator=(LabelledExample&& rhs); -+ LabelledExample& operator=(LabelledExample&& rhs) noexcept; - - // Observed feature values. - // Note that to interpret these values, you probably need to have the -diff --git a/media/learning/common/value.cc b/media/learning/common/value.cc -index 9c9395c25d4e..12ea399d24c3 100644 ---- a/media/learning/common/value.cc -+++ b/media/learning/common/value.cc -@@ -23,6 +23,12 @@ Value::Value(const std::string& x) : value_(base::PersistentHash(x)) {} - - Value::Value(const Value& other) : value_(other.value_) {} - -+Value::Value(Value&& rhs) noexcept = default; -+ -+Value& Value::operator=(const Value& rhs) = default; -+ -+Value& Value::operator=(Value&& rhs) noexcept = default; -+ - bool Value::operator==(const Value& rhs) const { - return value_ == rhs.value_; - } -diff --git a/media/learning/common/value.h b/media/learning/common/value.h -index 0e64da961f34..62f4953f691c 100644 ---- a/media/learning/common/value.h -+++ b/media/learning/common/value.h -@@ -38,6 +38,10 @@ class COMPONENT_EXPORT(LEARNING_COMMON) Value { - explicit Value(const std::string& x); - - Value(const Value& other); -+ Value(Value&&) noexcept; -+ -+ Value& operator=(const Value&); -+ Value& operator=(Value&&) noexcept; - - bool operator==(const Value& rhs) const; - bool operator!=(const Value& rhs) const; --- -2.20.1 - diff --git a/chromium-73-gcc-2.patch b/chromium-73-gcc-2.patch deleted file mode 100644 index 9d1f05a..0000000 --- a/chromium-73-gcc-2.patch +++ /dev/null @@ -1,51 +0,0 @@ -From a5ba6f9bb7665040045dc0f8087407096630ad7b Mon Sep 17 00:00:00 2001 -From: Raphael Kubo da Costa -Date: Fri, 8 Feb 2019 02:57:28 +0000 -Subject: [PATCH] color_utils: Use std::sqrt() instead of std::sqrtf() -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -This fixes the build with libstdc++: - - ../../ui/gfx/color_utils.cc: In function ‘SkColor color_utils::SetDarkestColorForTesting(SkColor)’: - ../../ui/gfx/color_utils.cc:434:12: error: ‘sqrtf’ is not a member of ‘std’ - std::sqrtf((dark_luminance + 0.05f) * (kWhiteLuminance + 0.05f)) - 0.05f; - ^~~~~ - ../../ui/gfx/color_utils.cc:434:12: note: suggested alternative: ‘sqrt’ - std::sqrtf((dark_luminance + 0.05f) * (kWhiteLuminance + 0.05f)) - 0.05f; - ^~~~~ - sqrt - -sqrtf() is not formally part of C++14 as far as I can see even though libc++ -has it in . Additionally, we're only dealing with floats in all parts -of the expression above, so using the float sqrt() overload should be -harmless anyway. - -Bug: 819294 -Change-Id: If6c7bf31819df97a761e6963def6d6506154c34d -Reviewed-on: https://chromium-review.googlesource.com/c/1458193 -Auto-Submit: Raphael Kubo da Costa -Reviewed-by: Peter Kasting -Commit-Queue: Raphael Kubo da Costa -Cr-Commit-Position: refs/heads/master@{#630140} ---- - ui/gfx/color_utils.cc | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/ui/gfx/color_utils.cc b/ui/gfx/color_utils.cc -index c868cd54bac3..92ba1407d594 100644 ---- a/ui/gfx/color_utils.cc -+++ b/ui/gfx/color_utils.cc -@@ -431,7 +431,7 @@ SkColor SetDarkestColorForTesting(SkColor color) { - // GetContrastRatio(kWhiteLuminance, g_luminance_midpoint). The formula below - // can be verified by plugging it into how GetContrastRatio() operates. - g_luminance_midpoint = -- std::sqrtf((dark_luminance + 0.05f) * (kWhiteLuminance + 0.05f)) - 0.05f; -+ std::sqrt((dark_luminance + 0.05f) * (kWhiteLuminance + 0.05f)) - 0.05f; - - return previous_darkest_color; - } --- -2.20.1 - diff --git a/chromium-73-gcc-3.patch b/chromium-73-gcc-3.patch deleted file mode 100644 index 9cc6cf2..0000000 --- a/chromium-73-gcc-3.patch +++ /dev/null @@ -1,69 +0,0 @@ -From c33e832cc145c696d2157796c7640e659740dafa Mon Sep 17 00:00:00 2001 -From: Raphael Kubo da Costa -Date: Fri, 8 Feb 2019 08:44:00 +0000 -Subject: [PATCH] quic_flags_impl: Fix GCC build after #618558 -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Due to https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84849, having -base::NoDestructor> and passing an initializer list of Us does not -work if this is not done explicitly, as GCC incorrectly fails to determine -which constructor overload to use: - - ../../net/third_party/quic/platform/impl/quic_flags_impl.cc: In member function ‘bool quic::TypedQuicFlagHelper::SetFlag(const string&) const [with T = bool; std::__cxx11::string = std::__cxx11::basic_string]’: - ../../net/third_party/quic/platform/impl/quic_flags_impl.cc:156:41: error: call of overloaded ‘NoDestructor()’ is ambiguous - {"", "1", "t", "true", "y", "yes"}); - ^ - In file included from ../../net/third_party/quic/platform/impl/quic_flags_impl.h:16, - from ../../net/third_party/quic/platform/impl/quic_flags_impl.cc:5: - ../../base/no_destructor.h:62:3: note: candidate: ‘base::NoDestructor::NoDestructor(const base::NoDestructor&) [with T = std::set >]’ - NoDestructor(const NoDestructor&) = delete; - ^~~~~~~~~~~~ - ../../base/no_destructor.h:60:12: note: candidate: ‘base::NoDestructor::NoDestructor(T&&) [with T = std::set >]’ - explicit NoDestructor(T&& x) { new (storage_) T(std::move(x)); } - ^~~~~~~~~~~~ - ../../base/no_destructor.h:59:12: note: candidate: ‘base::NoDestructor::NoDestructor(const T&) [with T = std::set >]’ - explicit NoDestructor(const T& x) { new (storage_) T(x); } - ^~~~~~~~~~~~ - -Explicitly use an std::initializer_list to make the build work everywhere. - -Bug: 819294 -Change-Id: I775be20e3766a88a656b58c94c40869cb1bee2a8 -Reviewed-on: https://chromium-review.googlesource.com/c/1458214 -Auto-Submit: Raphael Kubo da Costa -Reviewed-by: Ryan Hamilton -Commit-Queue: Raphael Kubo da Costa -Cr-Commit-Position: refs/heads/master@{#630249} ---- - net/third_party/quic/platform/impl/quic_flags_impl.cc | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - -diff --git a/net/third_party/quic/platform/impl/quic_flags_impl.cc b/net/third_party/quic/platform/impl/quic_flags_impl.cc -index 5e6962d1e770..3fa45fc6892d 100644 ---- a/net/third_party/quic/platform/impl/quic_flags_impl.cc -+++ b/net/third_party/quic/platform/impl/quic_flags_impl.cc -@@ -5,6 +5,7 @@ - #include "net/third_party/quic/platform/impl/quic_flags_impl.h" - - #include -+#include - #include - #include - -@@ -153,9 +154,9 @@ std::string QuicFlagRegistry::GetHelp() const { - template <> - bool TypedQuicFlagHelper::SetFlag(const std::string& s) const { - static const base::NoDestructor> kTrueValues( -- {"", "1", "t", "true", "y", "yes"}); -+ std::initializer_list({"", "1", "t", "true", "y", "yes"})); - static const base::NoDestructor> kFalseValues( -- {"0", "f", "false", "n", "no"}); -+ std::initializer_list({"0", "f", "false", "n", "no"})); - if (kTrueValues->find(base::ToLowerASCII(s)) != kTrueValues->end()) { - *flag_ = true; - return true; --- -2.20.1 - diff --git a/chromium-73-gcc-4.patch b/chromium-73-gcc-4.patch deleted file mode 100644 index df7d630..0000000 --- a/chromium-73-gcc-4.patch +++ /dev/null @@ -1,59 +0,0 @@ -From bdd76190e54e6a0e11343dd19e4bf1d06956fa48 Mon Sep 17 00:00:00 2001 -From: Raphael Kubo da Costa -Date: Wed, 13 Feb 2019 01:02:27 +0000 -Subject: [PATCH] BaseRenderingContext2D: Use base::CheckMul and simplify code - in putImageData() -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Follow-up to commit e0b3253a56 ("Fix image conversion truncation issues"). -The current code does not build with GCC due to -https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89287: - - ../../third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc: In member function ‘void blink::BaseRenderingContext2D::putImageData(blink::ImageData*, int, int, int, int, int, int, blink::ExceptionState&)’: - ../../third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc:1777:44: error: default type conversion can't deduce template argument for ‘template::value, void>::type* > constexpr base::internal::StrictNumeric::operator Dst() const [with Dst = Dst; typename std::enable_if::value>::type* = ; T = long unsigned int]’ - new uint8_t[data_length.ValueOrDie()]); - ^ - -Work around it by using the more idiomatic base::CheckMul() with -AssignIfValid, so that we can have |data_length| be a size_t again and not -leave it to the compiler to figure out the type we want when creating the -|converted_pixels| array. - -Bug: 819294 -Change-Id: Id124cc4f3d749b45def4708e21e4badafd708578 -Reviewed-on: https://chromium-review.googlesource.com/c/1467201 -Auto-Submit: Raphael Kubo da Costa -Commit-Queue: Kentaro Hara -Reviewed-by: Kentaro Hara -Cr-Commit-Position: refs/heads/master@{#631472} ---- - .../canvas/canvas2d/base_rendering_context_2d.cc | 10 +++++----- - 1 file changed, 5 insertions(+), 5 deletions(-) - -diff --git a/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc b/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc -index d9fa696c9a9d..34a8a202bfd3 100644 ---- a/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc -+++ b/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc -@@ -1769,12 +1769,12 @@ void BaseRenderingContext2D::putImageData(ImageData* data, - CanvasColorParams(ColorParams().ColorSpace(), PixelFormat(), kNonOpaque); - if (data_color_params.NeedsColorConversion(context_color_params) || - PixelFormat() == kF16CanvasPixelFormat) { -- base::CheckedNumeric data_length = data->Size().Area(); -- data_length *= context_color_params.BytesPerPixel(); -- if (!data_length.IsValid()) -+ size_t data_length; -+ if (!base::CheckMul(data->Size().Area(), -+ context_color_params.BytesPerPixel()) -+ .AssignIfValid(&data_length)) - return; -- std::unique_ptr converted_pixels( -- new uint8_t[data_length.ValueOrDie()]); -+ std::unique_ptr converted_pixels(new uint8_t[data_length]); - if (data->ImageDataInCanvasColorSettings( - ColorParams().ColorSpace(), PixelFormat(), converted_pixels.get(), - kRGBAColorType)) { --- -2.20.1 - diff --git a/chromium-73-gcc-5.patch b/chromium-73-gcc-5.patch deleted file mode 100644 index 033861e..0000000 --- a/chromium-73-gcc-5.patch +++ /dev/null @@ -1,65 +0,0 @@ -From 78b0f0dfa9e6f3c37b71102c01def92f1ab8c330 Mon Sep 17 00:00:00 2001 -From: Raphael Kubo da Costa -Date: Wed, 13 Feb 2019 23:28:46 +0000 -Subject: [PATCH] CastActivityManager: Do not make DoLaunchSessionParams' move - constructor noexcept -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -This fixes the GCC build: - - ../../chrome/browser/media/router/providers/cast/cast_activity_manager.cc:806:1: error: function ‘media_router::CastActivityManager::DoLaunchSessionParams::DoLaunchSessionParams(media_router::CastActivityManager::DoLaunchSessionParams&&)’ defaulted on its redeclaration with an exception-specification that differs from the implicit exception-specification ‘’ - CastActivityManager::DoLaunchSessionParams::DoLaunchSessionParams( - ^~~~~~~~~~~~~~~~~~~ - -With GCC, having that noexcept marker requires all members to be marked with -noexcept themselves, and MediaRoute, CastMediaSource and url::Origin need -the right annotations. Just making DoLaunchSessionParams not noexcept is the -least intrusive solution for now. - -clang is fine because we pass -fno-exceptions and it disables the same error -there, while GCC continues to raise it (bug 843143 and its corresponding CL -have a longer discussion on this issue). - -Bug: 819294 -Change-Id: Ia3a5fb60b5e74e68bd35cfa50e2fcc728b64e5eb -Reviewed-on: https://chromium-review.googlesource.com/c/1469942 -Commit-Queue: mark a. foltz -Auto-Submit: Raphael Kubo da Costa -Reviewed-by: mark a. foltz -Cr-Commit-Position: refs/heads/master@{#631962} ---- - .../media/router/providers/cast/cast_activity_manager.cc | 2 +- - .../browser/media/router/providers/cast/cast_activity_manager.h | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/chrome/browser/media/router/providers/cast/cast_activity_manager.cc b/chrome/browser/media/router/providers/cast/cast_activity_manager.cc -index b7ee9695f69a..8569e0cd30a3 100644 ---- a/chrome/browser/media/router/providers/cast/cast_activity_manager.cc -+++ b/chrome/browser/media/router/providers/cast/cast_activity_manager.cc -@@ -804,7 +804,7 @@ CastActivityManager::DoLaunchSessionParams::DoLaunchSessionParams( - callback(std::move(callback)) {} - - CastActivityManager::DoLaunchSessionParams::DoLaunchSessionParams( -- DoLaunchSessionParams&& other) noexcept = default; -+ DoLaunchSessionParams&& other) = default; - - CastActivityManager::DoLaunchSessionParams::~DoLaunchSessionParams() = default; - -diff --git a/chrome/browser/media/router/providers/cast/cast_activity_manager.h b/chrome/browser/media/router/providers/cast/cast_activity_manager.h -index 325bffc725ee..08fe0ccca603 100644 ---- a/chrome/browser/media/router/providers/cast/cast_activity_manager.h -+++ b/chrome/browser/media/router/providers/cast/cast_activity_manager.h -@@ -295,7 +295,7 @@ class CastActivityManager : public cast_channel::CastMessageHandler::Observer, - const url::Origin& origin, - int tab_id, - mojom::MediaRouteProvider::CreateRouteCallback callback); -- DoLaunchSessionParams(DoLaunchSessionParams&& other) noexcept; -+ DoLaunchSessionParams(DoLaunchSessionParams&& other); - ~DoLaunchSessionParams(); - DoLaunchSessionParams& operator=(DoLaunchSessionParams&&) = delete; - --- -2.20.1 - diff --git a/chromium-73-gcc-6.patch b/chromium-73-gcc-6.patch deleted file mode 100644 index 752f83c..0000000 --- a/chromium-73-gcc-6.patch +++ /dev/null @@ -1,88 +0,0 @@ -From cf4c534f04c223f8a9d65407852e2a531a6d7fb6 Mon Sep 17 00:00:00 2001 -From: Raphael Kubo da Costa -Date: Thu, 14 Feb 2019 22:22:21 +0000 -Subject: [PATCH] chrome/browser: Replace some forward declarations with actual - includes -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -This fixes the GCC build which was failing like this: - - ../../base/scoped_observer.h: In instantiation of ‘void ScopedObserver::RemoveAll() [with Source = TabStripModel; Observer = TabStripModelObserver]’: - ../../base/scoped_observer.h:26:5: required from ‘ScopedObserver::~ScopedObserver() [with Source = TabStripModel; Observer = TabStripModelObserver]’ - ../../chrome/browser/ui/views/extensions/extension_popup.h:115:70: required from here - ../../base/scoped_observer.h:45:20: error: invalid use of incomplete type ‘class TabStripModel’ - sources_[i]->RemoveObserver(observer_); - ~~~~~~~~~~~~~^~~~~~~~~~~~~~ - -This is caused by https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89311 ("Brace -initialization needlessly invokes destructor"), i.e. having something like - - ScopedObserver observer_{this}; - -in a header declaration requires T and U to be fully declared because -ScopedObserver's destructor references them. In a few cases, T was only -forward-declared. - -Bug: 819294 -Change-Id: Ie5b9dc2745e27d4532c5539e3845a8c9147a0595 -Reviewed-on: https://chromium-review.googlesource.com/c/1472576 -Auto-Submit: Raphael Kubo da Costa -Commit-Queue: Alan Cutter -Reviewed-by: Finnur Thorarinsson -Reviewed-by: Alan Cutter -Cr-Commit-Position: refs/heads/master@{#632385} ---- - chrome/browser/ui/views/extensions/extension_popup.cc | 1 - - chrome/browser/ui/views/extensions/extension_popup.h | 1 + - chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.cc | 1 - - chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.h | 2 +- - .../web_applications/extensions/bookmark_app_tab_helper.cc | 1 - - .../web_applications/extensions/bookmark_app_tab_helper.h | 2 +- - 6 files changed, 3 insertions(+), 5 deletions(-) - -diff --git a/chrome/browser/ui/views/extensions/extension_popup.cc b/chrome/browser/ui/views/extensions/extension_popup.cc -index 3f0985d383dd..57d16aba9e9f 100644 ---- a/chrome/browser/ui/views/extensions/extension_popup.cc -+++ b/chrome/browser/ui/views/extensions/extension_popup.cc -@@ -8,7 +8,6 @@ - #include "chrome/browser/devtools/devtools_window.h" - #include "chrome/browser/extensions/extension_view_host.h" - #include "chrome/browser/ui/browser.h" --#include "chrome/browser/ui/tabs/tab_strip_model.h" - #include "content/public/browser/devtools_agent_host.h" - #include "content/public/browser/notification_details.h" - #include "content/public/browser/notification_source.h" -diff --git a/chrome/browser/ui/views/extensions/extension_popup.h b/chrome/browser/ui/views/extensions/extension_popup.h -index 3661b5bda950..9018efa0fea5 100644 ---- a/chrome/browser/ui/views/extensions/extension_popup.h -+++ b/chrome/browser/ui/views/extensions/extension_popup.h -@@ -9,6 +9,7 @@ - #include "base/compiler_specific.h" - #include "base/macros.h" - #include "base/scoped_observer.h" -+#include "chrome/browser/ui/tabs/tab_strip_model.h" - #include "chrome/browser/ui/tabs/tab_strip_model_observer.h" - #include "chrome/browser/ui/views/extensions/extension_view_views.h" - #include "content/public/browser/devtools_agent_host_observer.h" -diff --git a/chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.h b/chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.h -index 2a3ea8e4f91f..ac44a4f05dec 100644 ---- a/chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.h -+++ b/chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.h -@@ -8,6 +8,7 @@ - #include "base/macros.h" - #include "base/memory/weak_ptr.h" - #include "base/scoped_observer.h" -+#include "chrome/browser/ui/toolbar/toolbar_actions_bar.h" - #include "chrome/browser/ui/toolbar/toolbar_actions_bar_observer.h" - #include "chrome/browser/ui/views/toolbar/app_menu_observer.h" - #include "ui/views/controls/scroll_view.h" -@@ -15,7 +16,6 @@ class AppMenu; - class AppMenu; - class Browser; - class BrowserActionsContainer; --class ToolbarActionsBar; - - namespace views { - class MenuItemView; diff --git a/chromium-73.0.3683.103-glibc-2.29-clone-vfork.patch b/chromium-73.0.3683.103-glibc-2.29-clone-vfork.patch deleted file mode 100644 index 8ff952b..0000000 --- a/chromium-73.0.3683.103-glibc-2.29-clone-vfork.patch +++ /dev/null @@ -1,29 +0,0 @@ -diff -up chromium-73.0.3683.103/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc.glibc229 chromium-73.0.3683.103/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc ---- chromium-73.0.3683.103/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc.glibc229 2019-04-16 11:49:35.353081246 -0400 -+++ chromium-73.0.3683.103/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc 2019-04-16 11:51:22.105794620 -0400 -@@ -134,7 +134,8 @@ namespace sandbox { - #if !defined(OS_NACL_NONSFI) - // Allow Glibc's and Android pthread creation flags, crash on any other - // thread creation attempts and EPERM attempts to use neither --// CLONE_VM, nor CLONE_THREAD, which includes all fork() implementations. -+// CLONE_VM nor CLONE_THREAD (all fork implementations), unless CLONE_VFORK is -+// present (as in posix_spawn). - ResultExpr RestrictCloneToThreadsAndEPERMFork() { - const Arg flags(0); - -@@ -153,8 +154,14 @@ ResultExpr RestrictCloneToThreadsAndEPER - AnyOf(flags == kAndroidCloneMask, flags == kObsoleteAndroidCloneMask, - flags == kGlibcPthreadFlags); - -+ const uint64_t kImportantSpawnFlags = CLONE_VFORK | CLONE_VM; -+ -+ const BoolExpr isForkOrSpawn = -+ AnyOf((flags & (CLONE_VM | CLONE_THREAD)) == 0, -+ (flags & kImportantSpawnFlags) == kImportantSpawnFlags); -+ - return If(IsAndroid() ? android_test : glibc_test, Allow()) -- .ElseIf((flags & (CLONE_VM | CLONE_THREAD)) == 0, Error(EPERM)) -+ .ElseIf(isForkOrSpawn, Error(EPERM)) - .Else(CrashSIGSYSClone()); - } - diff --git a/chromium-73.0.3683.75-aarch64-crashpad-limits.patch b/chromium-73.0.3683.75-aarch64-crashpad-limits.patch deleted file mode 100644 index 4eb9529..0000000 --- a/chromium-73.0.3683.75-aarch64-crashpad-limits.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-73.0.3683.75/third_party/crashpad/crashpad/snapshot/linux/cpu_context_linux.cc.aarch64-limits chromium-73.0.3683.75/third_party/crashpad/crashpad/snapshot/linux/cpu_context_linux.cc ---- chromium-73.0.3683.75/third_party/crashpad/crashpad/snapshot/linux/cpu_context_linux.cc.aarch64-limits 2019-03-15 12:08:21.208676651 -0400 -+++ chromium-73.0.3683.75/third_party/crashpad/crashpad/snapshot/linux/cpu_context_linux.cc 2019-03-15 12:08:40.934251685 -0400 -@@ -16,6 +16,7 @@ - - #include - #include -+#include - - #include "base/logging.h" - diff --git a/chromium-73.0.3683.75-el7-fix-noexcept.patch b/chromium-73.0.3683.75-el7-fix-noexcept.patch deleted file mode 100644 index 3fc69ba..0000000 --- a/chromium-73.0.3683.75-el7-fix-noexcept.patch +++ /dev/null @@ -1,54 +0,0 @@ -diff -up chromium-73.0.3683.75/chrome/common/media_router/media_sink.cc.el7-noexcept chromium-73.0.3683.75/chrome/common/media_router/media_sink.cc ---- chromium-73.0.3683.75/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-03-11 18:00:54.000000000 -0400 -+++ chromium-73.0.3683.75/chrome/common/media_router/media_sink.cc 2019-03-20 09:45:29.400426336 -0400 -@@ -19,12 +19,12 @@ MediaSink::MediaSink(const MediaSink::Id - provider_id_(provider_id) {} - - MediaSink::MediaSink(const MediaSink& other) = default; --MediaSink::MediaSink(MediaSink&& other) noexcept = default; -+MediaSink::MediaSink(MediaSink&& other) = default; - MediaSink::MediaSink() = default; - MediaSink::~MediaSink() = default; - - MediaSink& MediaSink::operator=(const MediaSink& other) = default; --MediaSink& MediaSink::operator=(MediaSink&& other) noexcept = default; -+MediaSink& MediaSink::operator=(MediaSink&& other) = default; - - bool MediaSink::IsMaybeCloudSink() const { - switch (icon_type_) { -diff -up chromium-73.0.3683.75/components/policy/core/common/policy_map.cc.el7-noexcept chromium-73.0.3683.75/components/policy/core/common/policy_map.cc ---- chromium-73.0.3683.75/components/policy/core/common/policy_map.cc.el7-noexcept 2019-03-11 18:00:56.000000000 -0400 -+++ chromium-73.0.3683.75/components/policy/core/common/policy_map.cc 2019-03-19 11:11:38.310689134 -0400 -@@ -25,7 +25,7 @@ PolicyMap::Entry::Entry() = default; - PolicyMap::Entry::~Entry() = default; - - PolicyMap::Entry::Entry(Entry&&) noexcept = default; --PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) noexcept = default; -+PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) = default; - - PolicyMap::Entry PolicyMap::Entry::DeepCopy() const { - Entry copy; -diff -up chromium-73.0.3683.75/components/signin/core/browser/account_info.cc.el7-noexcept chromium-73.0.3683.75/components/signin/core/browser/account_info.cc ---- chromium-73.0.3683.75/components/signin/core/browser/account_info.cc.el7-noexcept 2019-03-11 18:00:57.000000000 -0400 -+++ chromium-73.0.3683.75/components/signin/core/browser/account_info.cc 2019-03-19 11:11:38.311689112 -0400 -@@ -50,7 +50,7 @@ AccountInfo::AccountInfo(AccountInfo&& o - - AccountInfo& AccountInfo::operator=(const AccountInfo& other) = default; - --AccountInfo& AccountInfo::operator=(AccountInfo&& other) noexcept = default; -+AccountInfo& AccountInfo::operator=(AccountInfo&& other) = default; - - bool AccountInfo::IsEmpty() const { - return account_id.empty() && email.empty() && gaia.empty() && -diff -up chromium-73.0.3683.75/gpu/config/gpu_info.cc.el7-noexcept chromium-73.0.3683.75/gpu/config/gpu_info.cc ---- chromium-73.0.3683.75/gpu/config/gpu_info.cc.el7-noexcept 2019-03-19 11:12:36.992435015 -0400 -+++ chromium-73.0.3683.75/gpu/config/gpu_info.cc 2019-03-19 11:12:37.061433540 -0400 -@@ -118,7 +118,7 @@ GPUInfo::GPUDevice& GPUInfo::GPUDevice:: - const GPUInfo::GPUDevice& other) = default; - - GPUInfo::GPUDevice& GPUInfo::GPUDevice::operator=( -- GPUInfo::GPUDevice&& other) noexcept = default; -+ GPUInfo::GPUDevice&& other) = default; - - GPUInfo::GPUInfo() - : optimus(false), diff --git a/chromium-73.0.3683.75-no-header-hygiene.patch b/chromium-73.0.3683.75-no-header-hygiene.patch deleted file mode 100644 index a8d2a19..0000000 --- a/chromium-73.0.3683.75-no-header-hygiene.patch +++ /dev/null @@ -1,17 +0,0 @@ -diff -up chromium-73.0.3683.75/third_party/swiftshader/third_party/llvm-7.0/BUILD.gn.nohh chromium-73.0.3683.75/third_party/swiftshader/third_party/llvm-7.0/BUILD.gn ---- chromium-73.0.3683.75/third_party/swiftshader/third_party/llvm-7.0/BUILD.gn.nohh 2019-03-15 09:02:26.167929864 -0400 -+++ chromium-73.0.3683.75/third_party/swiftshader/third_party/llvm-7.0/BUILD.gn 2019-03-15 09:03:30.334433446 -0400 -@@ -74,9 +74,12 @@ config("swiftshader_llvm_private_config" - "-Wno-unused-private-field", - "-Wno-unused-result", - "-Wno-unused-variable", -- "-Wno-error=header-hygiene", - ] - -+ if (is_clang) { -+ cflags += [ "-Wno-error=header-hygiene" ] -+ } -+ - defines = [ - "__STDC_CONSTANT_MACROS", - "__STDC_LIMIT_MACROS", diff --git a/chromium-gcc5-r3.patch b/chromium-gcc5-r3.patch deleted file mode 100644 index 7605df6..0000000 --- a/chromium-gcc5-r3.patch +++ /dev/null @@ -1,98 +0,0 @@ ---- a/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h -+++ b/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h -@@ -63,7 +63,7 @@ class WTF_EXPORT ArrayBufferContents { - allocation_length_(0), - data_(data), - data_length_(0), -- kind_(AllocationKind::kNormal), -+ kind_(WTF::ArrayBufferContents::AllocationKind::kNormal), - deleter_(deleter) {} - DataHandle(void* allocation_base, - size_t allocation_length, -@@ -94,11 +94,11 @@ class WTF_EXPORT ArrayBufferContents { - reinterpret_cast(allocation_base_) + - allocation_length_); - switch (kind_) { -- case AllocationKind::kNormal: -+ case WTF::ArrayBufferContents::AllocationKind::kNormal: - DCHECK(deleter_); - deleter_(data_); - return; -- case AllocationKind::kReservation: -+ case WTF::ArrayBufferContents::AllocationKind::kReservation: - ReleaseReservedMemory(allocation_base_, allocation_length_); - return; - } ---- a/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.orig 2017-08-15 12:45:59.433532111 +0000 -+++ b/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2017-08-15 17:52:59.691328825 +0000 -@@ -10,7 +10,7 @@ - - #include "webrtc/modules/audio_processing/aec3/aec_state.h" - --#include -+#include - #include - #include - ---- a/gpu/ipc/common/mailbox_struct_traits.h -+++ b/gpu/ipc/common/mailbox_struct_traits.h -@@ -15,7 +15,7 @@ namespace mojo { - template <> - struct StructTraits { - static base::span name(const gpu::Mailbox& mailbox) { -- return mailbox.name; -+ return base::make_span(mailbox.name); - } - static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out); - }; ---- a/services/viz/public/cpp/compositing/filter_operation_struct_traits.h -+++ b/services/viz/public/cpp/compositing/filter_operation_struct_traits.h -@@ -134,7 +134,7 @@ struct StructTraits { - static base::span matrix(const cc::FilterOperation& operation) { - if (operation.type() != cc::FilterOperation::COLOR_MATRIX) - return base::span(); -- return operation.matrix(); -+ return base::make_span(operation.matrix()); - } - - static base::span shape( ---- a/services/viz/public/cpp/compositing/quads_struct_traits.h -+++ b/services/viz/public/cpp/compositing/quads_struct_traits.h -@@ -284,7 +284,7 @@ - - static base::span vertex_opacity(const cc::DrawQuad& input) { - const cc::TextureDrawQuad* quad = cc::TextureDrawQuad::MaterialCast(&input); -- return quad->vertex_opacity; -+ return base::make_span(quad->vertex_opacity); - } - - static bool y_flipped(const cc::DrawQuad& input) { ---- a/third_party/WebKit/Source/platform/exported/WebCORS.cpp -+++ b/third_party/WebKit/Source/platform/exported/WebCORS.cpp -@@ -480,7 +480,7 @@ WebString AccessControlErrorString( - } - default: - NOTREACHED(); -- return ""; -+ return WebString(); - } - } - -@@ -512,7 +512,7 @@ WebString PreflightErrorString(const PreflightStatus status, - } - default: - NOTREACHED(); -- return ""; -+ return WebString(); - } - } - -@@ -533,7 +533,7 @@ WebString RedirectErrorString(const RedirectStatus status, - } - default: - NOTREACHED(); -- return ""; -+ return WebString(); - } - } - diff --git a/chromium-gcc8-r588316.patch b/chromium-gcc8-r588316.patch deleted file mode 100644 index d980805..0000000 --- a/chromium-gcc8-r588316.patch +++ /dev/null @@ -1,98 +0,0 @@ -From 87902b3202f81d689dd314c17006ffc907fe12a1 Mon Sep 17 00:00:00 2001 -From: Wang Qing -Date: Mon, 3 Sep 2018 02:41:08 +0000 -Subject: [PATCH] Fix build error for blink. -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -This CLs fixed the error of constexpr function call to non-constexpr function. - -Bug: 878202 -Change-Id: I6ad217a687e62a9a384980d852743a56479de3a9 -Reviewed-on: https://chromium-review.googlesource.com/1192467 -Commit-Queue: 汪 清 -Reviewed-by: Eric Willigers -Cr-Commit-Position: refs/heads/master@{#588316} ---- - .../core/animation/animation_time_delta.cc | 22 ++++++++++++++ - .../core/animation/animation_time_delta.h | 30 +++++++------------ - 2 files changed, 32 insertions(+), 20 deletions(-) - -diff --git a/third_party/blink/renderer/core/animation/animation_time_delta.cc b/third_party/blink/renderer/core/animation/animation_time_delta.cc -index 1b25469c7f2f..2e30a18890da 100644 ---- a/third_party/blink/renderer/core/animation/animation_time_delta.cc -+++ b/third_party/blink/renderer/core/animation/animation_time_delta.cc -@@ -7,6 +7,28 @@ - namespace blink { - - #if !defined(BLINK_ANIMATION_USE_TIME_DELTA) -+// Comparison operators on AnimationTimeDelta. -+bool CORE_EXPORT operator==(const AnimationTimeDelta& lhs, -+ const AnimationTimeDelta& rhs) { -+ return lhs.InSecondsF() == rhs.InSecondsF(); -+} -+bool CORE_EXPORT operator!=(const AnimationTimeDelta& lhs, -+ const AnimationTimeDelta& rhs) { -+ return lhs.InSecondsF() != rhs.InSecondsF(); -+} -+bool CORE_EXPORT operator>(const AnimationTimeDelta& lhs, -+ const AnimationTimeDelta& rhs) { -+ return lhs.InSecondsF() > rhs.InSecondsF(); -+} -+bool CORE_EXPORT operator>=(const AnimationTimeDelta& lhs, -+ const AnimationTimeDelta& rhs) { -+ return lhs.InSecondsF() >= rhs.InSecondsF(); -+} -+bool CORE_EXPORT operator<=(const AnimationTimeDelta& lhs, -+ const AnimationTimeDelta& rhs) { -+ return lhs.InSecondsF() <= rhs.InSecondsF(); -+} -+ - std::ostream& operator<<(std::ostream& os, AnimationTimeDelta time) { - return os << time.InSecondsF() << " s"; - } -diff --git a/third_party/blink/renderer/core/animation/animation_time_delta.h b/third_party/blink/renderer/core/animation/animation_time_delta.h -index 1903c1150d3e..95d218466d90 100644 ---- a/third_party/blink/renderer/core/animation/animation_time_delta.h -+++ b/third_party/blink/renderer/core/animation/animation_time_delta.h -@@ -90,26 +90,16 @@ AnimationTimeDelta operator*(T a, AnimationTimeDelta td) { - } - - // Comparison operators on AnimationTimeDelta. --constexpr bool CORE_EXPORT operator==(const AnimationTimeDelta& lhs, -- const AnimationTimeDelta& rhs) { -- return lhs.InSecondsF() == rhs.InSecondsF(); --} --constexpr bool CORE_EXPORT operator!=(const AnimationTimeDelta& lhs, -- const AnimationTimeDelta& rhs) { -- return lhs.InSecondsF() != rhs.InSecondsF(); --} --constexpr bool CORE_EXPORT operator>(const AnimationTimeDelta& lhs, -- const AnimationTimeDelta& rhs) { -- return lhs.InSecondsF() > rhs.InSecondsF(); --} --constexpr bool CORE_EXPORT operator>=(const AnimationTimeDelta& lhs, -- const AnimationTimeDelta& rhs) { -- return lhs.InSecondsF() >= rhs.InSecondsF(); --} --constexpr bool CORE_EXPORT operator<=(const AnimationTimeDelta& lhs, -- const AnimationTimeDelta& rhs) { -- return lhs.InSecondsF() <= rhs.InSecondsF(); --} -+bool CORE_EXPORT operator==(const AnimationTimeDelta& lhs, -+ const AnimationTimeDelta& rhs); -+bool CORE_EXPORT operator!=(const AnimationTimeDelta& lhs, -+ const AnimationTimeDelta& rhs); -+bool CORE_EXPORT operator>(const AnimationTimeDelta& lhs, -+ const AnimationTimeDelta& rhs); -+bool CORE_EXPORT operator>=(const AnimationTimeDelta& lhs, -+ const AnimationTimeDelta& rhs); -+bool CORE_EXPORT operator<=(const AnimationTimeDelta& lhs, -+ const AnimationTimeDelta& rhs); - - // Defined to allow DCHECK_EQ/etc to work with the class. - CORE_EXPORT std::ostream& operator<<(std::ostream& os, AnimationTimeDelta time); --- -2.17.2 - diff --git a/chromium-gcc8-r588547.patch b/chromium-gcc8-r588547.patch deleted file mode 100644 index 5f12f7f..0000000 --- a/chromium-gcc8-r588547.patch +++ /dev/null @@ -1,30 +0,0 @@ -From e3ad3deb6a6e79284f3748fa7410311d87df91c5 Mon Sep 17 00:00:00 2001 -From: Henrique Nakashima -Date: Tue, 4 Sep 2018 16:49:51 +0000 -Subject: [PATCH] IWYU: stdint.h in pdfium_mem_buffer_file_write.h for uint8_t - -Bug: 879900 -Change-Id: I9c15d1c280a23c53d31f2d72c9d0d1db79eab886 -Reviewed-on: https://chromium-review.googlesource.com/1204410 -Reviewed-by: Lei Zhang -Commit-Queue: Henrique Nakashima -Cr-Commit-Position: refs/heads/master@{#588547} ---- - pdf/pdfium/pdfium_mem_buffer_file_write.h | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/pdf/pdfium/pdfium_mem_buffer_file_write.h b/pdf/pdfium/pdfium_mem_buffer_file_write.h -index 03c54bb63800..82e82d23684d 100644 ---- a/pdf/pdfium/pdfium_mem_buffer_file_write.h -+++ b/pdf/pdfium/pdfium_mem_buffer_file_write.h -@@ -6,6 +6,7 @@ - #define PDF_PDFIUM_PDFIUM_MEM_BUFFER_FILE_WRITE_H_ - - #include -+#include - - #include - --- -2.17.2 - diff --git a/chromium-gcc8-r589614.patch b/chromium-gcc8-r589614.patch deleted file mode 100644 index 0c187fd..0000000 --- a/chromium-gcc8-r589614.patch +++ /dev/null @@ -1,37 +0,0 @@ -From cbdb8bd6567c8143dc8c1e5e86a21a8ea064eea4 Mon Sep 17 00:00:00 2001 -From: Maksim Sisov -Date: Fri, 7 Sep 2018 18:57:42 +0000 -Subject: [PATCH] OmniboxTextView: fix gcc error for structure initialization - -It looks like there is bug in GCC 6, which cannot go through -structure initialization normally. - -Thus, instead of a default initialization of one of the members, -explicitly initialize it to a default value. - -Change-Id: Ia55cc6658e6b6b2f8a80c2582dd28f001c9e648c -Reviewed-on: https://chromium-review.googlesource.com/1213181 -Reviewed-by: Scott Violet -Commit-Queue: Maksim Sisov -Cr-Commit-Position: refs/heads/master@{#589614} ---- - chrome/browser/ui/views/omnibox/omnibox_text_view.cc | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/chrome/browser/ui/views/omnibox/omnibox_text_view.cc b/chrome/browser/ui/views/omnibox/omnibox_text_view.cc -index f0a8083dc930..9021284f166d 100644 ---- a/chrome/browser/ui/views/omnibox/omnibox_text_view.cc -+++ b/chrome/browser/ui/views/omnibox/omnibox_text_view.cc -@@ -175,7 +175,8 @@ void ApplyTextStyleForType(SuggestionAnswer::TextStyle text_style, - style = {part_color, .baseline = gfx::SUPERIOR}; - break; - case SuggestionAnswer::TextStyle::BOLD: -- style = {part_color, .weight = gfx::Font::Weight::BOLD}; -+ style = {part_color, .baseline = gfx::NORMAL_BASELINE, -+ .weight = gfx::Font::Weight::BOLD}; - break; - case SuggestionAnswer::TextStyle::NORMAL: - case SuggestionAnswer::TextStyle::NORMAL_DIM: --- -2.17.2 - diff --git a/chromium-gcc8-r591015.patch b/chromium-gcc8-r591015.patch deleted file mode 100644 index 65c09e8..0000000 --- a/chromium-gcc8-r591015.patch +++ /dev/null @@ -1,70 +0,0 @@ -From e98f8ef8b2f236ecbb01df8c39e6ee1c8fbe8d7d Mon Sep 17 00:00:00 2001 -From: Maksim Sisov -Date: Thu, 13 Sep 2018 15:17:29 +0000 -Subject: [PATCH] ScrollPaintPropertyNode: Rename SnapContainerData() to - GetSnapContainerData() - -GCC is stricter than clang when it comes to class members' names and how -they can change the meaning of a previously existing symbol with the same -name. - -Here is a short error message: - -error: changes meaning of 'SnapContainerData' from 'using SnapContainerData = -class cc::SnapContainerData' [-fpermissive] using SnapContainerData = -cc::SnapContainerData; - -Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_slimming_paint_v2;master.tryserver.blink:linux_trusty_blink_rel -Change-Id: I0de5460f17b13484253e1ff0538b111c9a3b0d13 -Reviewed-on: https://chromium-review.googlesource.com/1213180 -Commit-Queue: Maksim Sisov -Reviewed-by: Philip Rogers -Cr-Commit-Position: refs/heads/master@{#591015} ---- - .../blink/renderer/core/paint/paint_property_tree_update_tests.cc | 2 +- - .../renderer/platform/graphics/compositing/property_tree_manager.cc | 2 +- - .../blink/renderer/platform/graphics/paint/scroll_paint_property_node.h | 2 +- - 3 files changed, 3 insertions(+), 3 deletions(-) - -diff --git a/third_party/blink/renderer/core/paint/paint_property_tree_update_tests.cc b/third_party/blink/renderer/core/paint/paint_property_tree_update_tests.cc -index 0d999d45076f..1fe1815a5659 100644 ---- a/third_party/blink/renderer/core/paint/paint_property_tree_update_tests.cc -+++ b/third_party/blink/renderer/core/paint/paint_property_tree_update_tests.cc -@@ -1310,7 +1310,7 @@ TEST_P(PaintPropertyTreeUpdateTest, EnsureSnapContainerData) { - GetDocument().View()->Resize(300, 300); - GetDocument().View()->UpdateAllLifecyclePhases(); - -- auto doc_snap_container_data = DocScroll()->SnapContainerData(); -+ auto doc_snap_container_data = DocScroll()->GetSnapContainerData(); - ASSERT_TRUE(doc_snap_container_data); - EXPECT_EQ(doc_snap_container_data->scroll_snap_type().axis, SnapAxis::kBoth); - EXPECT_EQ(doc_snap_container_data->scroll_snap_type().strictness, -diff --git a/third_party/blink/renderer/platform/graphics/compositing/property_tree_manager.cc b/third_party/blink/renderer/platform/graphics/compositing/property_tree_manager.cc -index 745b8c8b387e..5f87eeea9435 100644 ---- a/third_party/blink/renderer/platform/graphics/compositing/property_tree_manager.cc -+++ b/third_party/blink/renderer/platform/graphics/compositing/property_tree_manager.cc -@@ -333,7 +333,7 @@ void PropertyTreeManager::CreateCompositorScrollNode( - scroll_node->OverscrollBehaviorX()), - static_cast( - scroll_node->OverscrollBehaviorY())); -- compositor_node.snap_container_data = scroll_node->SnapContainerData(); -+ compositor_node.snap_container_data = scroll_node->GetSnapContainerData(); - - auto compositor_element_id = scroll_node->GetCompositorElementId(); - if (compositor_element_id) { -diff --git a/third_party/blink/renderer/platform/graphics/paint/scroll_paint_property_node.h b/third_party/blink/renderer/platform/graphics/paint/scroll_paint_property_node.h -index e1479269ccc3..5bd7f65f10ba 100644 ---- a/third_party/blink/renderer/platform/graphics/paint/scroll_paint_property_node.h -+++ b/third_party/blink/renderer/platform/graphics/paint/scroll_paint_property_node.h -@@ -99,7 +99,7 @@ class PLATFORM_EXPORT ScrollPaintPropertyNode - return state_.overscroll_behavior.y; - } - -- base::Optional SnapContainerData() const { -+ base::Optional GetSnapContainerData() const { - return state_.snap_container_data; - } - --- -2.14.3 - diff --git a/chromium-gn-bootstrap-r17.patch b/chromium-gn-bootstrap-r17.patch deleted file mode 100644 index 6cfd08d..0000000 --- a/chromium-gn-bootstrap-r17.patch +++ /dev/null @@ -1,68 +0,0 @@ ---- a/tools/gn/bootstrap/bootstrap.py -+++ b/tools/gn/bootstrap/bootstrap.py -@@ -179,6 +179,7 @@ def build_gn_with_ninja_manually(tempdir, options): - - write_buildflag_header_manually(root_gen_dir, 'base/debug/debugging_flags.h', - { -+ 'ENABLE_LOCATION_SOURCE': 'false', - 'ENABLE_PROFILING': 'false', - 'CAN_UNWIND_WITH_FRAME_POINTERS': 'false' - }) -@@ -204,7 +205,7 @@ def build_gn_with_ninja_manually(tempdir, options): - - write_gn_ninja(os.path.join(tempdir, 'build.ninja'), - root_gen_dir, options) -- cmd = ['ninja', '-C', tempdir] -+ cmd = ['ninja', '-C', tempdir, '-w', 'dupbuild=err'] - if options.verbose: - cmd.append('-v') - -@@ -458,6 +459,7 @@ def write_gn_ninja(path, root_gen_dir, options): - 'base/metrics/bucket_ranges.cc', - 'base/metrics/field_trial.cc', - 'base/metrics/field_trial_param_associator.cc', -+ 'base/metrics/field_trial_params.cc', - 'base/metrics/histogram.cc', - 'base/metrics/histogram_base.cc', - 'base/metrics/histogram_functions.cc', -@@ -507,6 +509,7 @@ def write_gn_ninja(path, root_gen_dir, options): - 'base/task_scheduler/scheduler_lock_impl.cc', - 'base/task_scheduler/scheduler_single_thread_task_runner_manager.cc', - 'base/task_scheduler/scheduler_worker.cc', -+ 'base/task_scheduler/scheduler_worker_pool.cc', - 'base/task_scheduler/scheduler_worker_pool_impl.cc', - 'base/task_scheduler/scheduler_worker_pool_params.cc', - 'base/task_scheduler/scheduler_worker_stack.cc', -@@ -523,6 +526,7 @@ def write_gn_ninja(path, root_gen_dir, options): - 'base/third_party/icu/icu_utf.cc', - 'base/third_party/nspr/prtime.cc', - 'base/threading/post_task_and_reply_impl.cc', -+ 'base/threading/scoped_blocking_call.cc', - 'base/threading/sequence_local_storage_map.cc', - 'base/threading/sequenced_task_runner_handle.cc', - 'base/threading/sequenced_worker_pool.cc', -@@ -579,7 +583,6 @@ def write_gn_ninja(path, root_gen_dir, options): - 'base/unguessable_token.cc', - 'base/value_iterators.cc', - 'base/values.cc', -- 'base/value_iterators.cc', - 'base/vlog.cc', - ]) - -@@ -652,7 +655,6 @@ def write_gn_ninja(path, root_gen_dir, options): - static_libraries['base']['sources'].extend([ - 'base/memory/shared_memory_handle_posix.cc', - 'base/memory/shared_memory_posix.cc', -- 'base/memory/shared_memory_tracker.cc', - 'base/nix/xdg_util.cc', - 'base/process/internal_linux.cc', - 'base/process/memory_linux.cc', -@@ -827,7 +829,7 @@ def build_gn_with_gn(temp_gn, build_dir, options): - cmd = [temp_gn, 'gen', build_dir, '--args=%s' % gn_gen_args] - check_call(cmd) - -- cmd = ['ninja', '-C', build_dir] -+ cmd = ['ninja', '-C', build_dir, '-w', 'dupbuild=err'] - if options.verbose: - cmd.append('-v') - cmd.append('gn') diff --git a/chromium-math.h-r0.patch b/chromium-math.h-r0.patch deleted file mode 100644 index 6c7c747..0000000 --- a/chromium-math.h-r0.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 9f63f94a11abc34d40ede8b8712fa15b5844a8c0 Mon Sep 17 00:00:00 2001 -From: Tom Anderson -Date: Sat, 27 Jan 2018 20:03:37 +0000 -Subject: [PATCH] Fix build with glibc 2.27 - -BUG=806340 -TBR=hamelphi@chromium.org - -Change-Id: Ib4e5091212d874d9ad88f3e9a1fdfee3ed7e0d5e -Reviewed-on: https://chromium-review.googlesource.com/890059 -Reviewed-by: Thomas Anderson -Reviewed-by: Philippe Hamel -Commit-Queue: Thomas Anderson -Cr-Commit-Position: refs/heads/master@{#532249} ---- - -diff --git a/components/assist_ranker/ranker_example_util.cc b/components/assist_ranker/ranker_example_util.cc -index 54d4dbd..ceedd8f 100644 ---- a/components/assist_ranker/ranker_example_util.cc -+++ b/components/assist_ranker/ranker_example_util.cc -@@ -2,6 +2,8 @@ - // Use of this source code is governed by a BSD-style license that can be - // found in the LICENSE file. - -+#include -+ - #include "components/assist_ranker/ranker_example_util.h" - #include "base/bit_cast.h" - #include "base/format_macros.h" diff --git a/chromium-stdint.patch b/chromium-stdint.patch deleted file mode 100644 index 8774439..0000000 --- a/chromium-stdint.patch +++ /dev/null @@ -1,21 +0,0 @@ -From 0235c2b657d936f3cdb09053776e5929fc84704b Mon Sep 17 00:00:00 2001 -From: Tomas Popela -Date: Wed, 31 Jan 2018 18:57:07 +0000 -Subject: [PATCH] Add missing stdint include - -diff --git a/chrome/browser/vr/sample_queue.cc b/chrome/browser/vr/sample_queue.cc -index c2ca777ce90c..53cb3aab1576 100644 ---- a/chrome/browser/vr/sample_queue.cc -+++ b/chrome/browser/vr/sample_queue.cc -@@ -2,6 +2,8 @@ - // Use of this source code is governed by a BSD-style license that can be - // found in the LICENSE file. - -+#include -+ - #include "chrome/browser/vr/sample_queue.h" - - namespace vr { --- -2.16.2 - diff --git a/chromium.spec b/chromium.spec index de018ef..d734490 100644 --- a/chromium.spec +++ b/chromium.spec @@ -174,175 +174,130 @@ License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and Open Patch0: chromium-67.0.3396.62-gcc5.patch Patch1: chromium-45.0.2454.101-linux-path-max.patch Patch2: chromium-55.0.2883.75-addrfix.patch -Patch4: chromium-72.0.3626.121-notest.patch +Patch3: chromium-72.0.3626.121-notest.patch +# Use libusb_interrupt_event_handler from current libusbx (1.0.21-0.1.git448584a) +Patch4: chromium-48.0.2564.116-libusb_interrupt_event_handler.patch +# Ignore deprecations in cups 2.2 +# https://bugs.chromium.org/p/chromium/issues/detail?id=622493 +Patch5: chromium-55.0.2883.75-cups22.patch +# Use PIE in the Linux sandbox (from openSUSE via Russian Fedora) +Patch6: chromium-70.0.3538.67-sandbox-pie.patch +# Use /etc/chromium for master_prefs +Patch7: chromium-68.0.3440.106-master-prefs-path.patch +# Use gn system files +Patch8: chromium-67.0.3396.62-gn-system.patch +# Fix issue where timespec is not defined when sys/stat.h is included. +Patch9: chromium-53.0.2785.92-boringssl-time-fix.patch +# I wouldn't have to do this if there was a standard way to append extra compiler flags +Patch10: chromium-63.0.3289.84-nullfix.patch +# Add explicit includedir for jpeglib.h +Patch11: chromium-54.0.2840.59-jpeg-include-dir.patch +# On i686, pass --no-keep-memory --reduce-memory-overheads to ld. +Patch12: chromium-59.0.3071.86-i686-ld-memory-tricks.patch +# Revert https://chromium.googlesource.com/chromium/src/+/b794998819088f76b4cf44c8db6940240c563cf4%5E%21/#F0 +# https://bugs.chromium.org/p/chromium/issues/detail?id=712737 +# https://bugzilla.redhat.com/show_bug.cgi?id=1446851 +Patch13: chromium-58.0.3029.96-revert-b794998819088f76b4cf44c8db6940240c563cf4.patch +# Correctly compile the stdatomic.h in ffmpeg with gcc 4.8 +Patch14: chromium-64.0.3282.119-ffmpeg-stdatomic.patch +# Nacl can't die soon enough +Patch15: chromium-66.0.3359.117-system-clang.patch +# Do not prefix libpng functions +Patch16: chromium-60.0.3112.78-no-libpng-prefix.patch +# Do not mangle libjpeg +Patch17: chromium-60.0.3112.78-jpeg-nomangle.patch +# Do not mangle zlib +Patch18: chromium-75.0.3770.80-no-zlib-mangle.patch +# Fix libavutil include pathing to find arch specific timer.h +# For some reason, this only fails on aarch64. No idea why. +Patch19: chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch +# from gentoo +Patch20: chromium-61.0.3163.79-gcc-no-opt-safe-math.patch +# From gentoo +Patch21: chromium-72.0.3626.121-gcc5-r3.patch +# To use round with gcc, you need to #include +Patch22: chromium-65.0.3325.146-gcc-round-fix.patch +# Include proper headers to invoke memcpy() +Patch23: chromium-65.0.3325.146-memcpy-fix.patch +# ../../mojo/public/cpp/bindings/associated_interface_ptr_info.h:48:43: error: cannot convert 'const mojo::ScopedInterfaceEndpointHandle' to 'bool' in return +Patch24: chromium-68.0.3440.106-boolfix.patch +# From Debian +Patch25: chromium-71.0.3578.98-skia-aarch64-buildfix.patch +# Missing files in tarball +Patch26: chromium-66.0.3359.117-missing-files.patch +# Do not use unrar code, it is non-free +Patch27: chromium-73.0.3683.75-norar.patch +# Upstream GCC fixes +Patch28: chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch +# Add "Fedora" to the user agent string +Patch29: chromium-72.0.3626.121-fedora-user-agent.patch +# Try to fix version.py for Rawhide +Patch30: chromium-71.0.3578.98-py2-bootstrap.patch +# Fix default on redeclaration error +# https://chromium.googlesource.com/chromium/src/+/122692ccee62223f266a988c575ae687e3f4c056%5E%21/#F0 +Patch31: chromium-68.0.3440.106-fix-default-on-redeclaration.patch +# Use Gentoo's Widevine hack +# https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-widevine-r3.patch +Patch32: chromium-71.0.3578.98-widevine-r3.patch +# Do not require sysroot +# Forget about trying to make libc++ +# BUILD SANELY PLEASE +Patch33: chromium-69.0.3497.81-build-sanely-please.patch +# Disable fontconfig cache magic that breaks remoting +Patch34: chromium-70.0.3538.67-disable-fontconfig-cache-magic.patch +# Fix aarch64 build against latest linux kernel headers +Patch35: chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch +# drop rsp clobber, which breaks gcc9 (thanks to Jeff Law) +Patch36: chromium-71.0.3578.98-gcc9-drop-rsp-clobber.patch +# Try to load widevine from other places +Patch37: chromium-widevine-other-locations.patch +# Disable -fno-delete-null-pointer-checks +Patch38: chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch +# Add #include to get pipewire code to build +Patch39: chromium-73.0.3683.75-pipewire-cstring-fix.patch +# gcc does not have __assume +Patch40: chromium-75.0.3770.80-gcc-no-assume.patch +# Linux 5.2 defines SIOCGSTAMP in a slightly different way, so we need to teach chromium where to find it +Patch41: chromium-75.0.3770.80-SIOCGSTAMP.patch +# https://chromium.googlesource.com/chromium/src/+/aeed4d1f15ce84a17ea0bc219e258dc4982b2368%5E%21/#F0 +Patch42: chromium-75.0.3770.80-aeed4d-gcc-dcheck_ne-fix.patch +# Revert https://chromium.googlesource.com/chromium/src/+/daff6b66faae53a0cefb88987c9ff4843629b728%5E%21/#F0 +# It might make clang happy but it breaks gcc. F*** clang. +Patch43: chromium-75.0.3770.80-revert-daff6b.patch +# Avoid pure virtual crash destroying RenderProcessUserData +# https://chromium.googlesource.com/chromium/src/+/cdf306db81efaaaa954487585d5a5a16205a5ebd%5E%21/ +Patch44: chromium-75.0.3770.80-pure-virtual-crash-fix.patch +# rename function to avoid conflict with rawhide glibc "gettid()" +Patch45: chromium-75.0.3770.80-grpc-gettid-fix.patch +# fix v8 compile with gcc +# https://chromium.googlesource.com/v8/v8/+/3b8c624bda58d05aea80dd9626cd550537d6ac3f%5E%21/#F1 +Patch46: chromium-75.0.3770.100-fix-v8-gcc.patch +# https://chromium.googlesource.com/chromium/src/+/00281713519dbd84b90d2996a009bf3a7e294435%5E%21/#F0 +Patch47: chromium-75.0.3770.100-git00281713.patch + +# Apply these changes to work around EPEL7 compiler issues +Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch +# Use lstdc++ on EPEL7 only +Patch101: chromium-75.0.3770.100-epel7-stdc++.patch +# el7 only patch +Patch102: chromium-75.0.3770.100-el7-fix-noexcept.patch + # In file included from ../linux/directory.c:21: # In file included from ../../../../native_client/src/nonsfi/linux/abi_conversion.h:20: # ../../../../native_client/src/nonsfi/linux/linux_syscall_structs.h:44:13: error: GNU-style inline assembly is disabled # __asm__ __volatile__("mov %%gs, %0" : "=r"(gs)); # ^ # 1 error generated. -Patch6: chromium-47.0.2526.80-pnacl-fgnu-inline-asm.patch +Patch200: chromium-47.0.2526.80-pnacl-fgnu-inline-asm.patch # Ignore broken nacl open fd counter -Patch7: chromium-47.0.2526.80-nacl-ignore-broken-fd-counter.patch -# Use libusb_interrupt_event_handler from current libusbx (1.0.21-0.1.git448584a) -Patch9: chromium-48.0.2564.116-libusb_interrupt_event_handler.patch -# Ignore deprecations in cups 2.2 -# https://bugs.chromium.org/p/chromium/issues/detail?id=622493 -Patch12: chromium-55.0.2883.75-cups22.patch -# Use PIE in the Linux sandbox (from openSUSE via Russian Fedora) -Patch15: chromium-70.0.3538.67-sandbox-pie.patch -# Use /etc/chromium for master_prefs -Patch18: chromium-68.0.3440.106-master-prefs-path.patch -# Disable MADV_FREE (if set by glibc) -# https://bugzilla.redhat.com/show_bug.cgi?id=1361157 -Patch19: chromium-52.0.2743.116-unset-madv_free.patch -# Use gn system files -Patch20: chromium-67.0.3396.62-gn-system.patch -# Fix last commit position issue -# https://groups.google.com/a/chromium.org/forum/#!topic/gn-dev/7nlJv486bD4 -# Patch21: chromium-60.0.3112.78-last-commit-position.patch -# Fix issue where timespec is not defined when sys/stat.h is included. -Patch22: chromium-53.0.2785.92-boringssl-time-fix.patch -# I wouldn't have to do this if there was a standard way to append extra compiler flags -Patch24: chromium-63.0.3289.84-nullfix.patch -# Add explicit includedir for jpeglib.h -Patch25: chromium-54.0.2840.59-jpeg-include-dir.patch -# On i686, pass --no-keep-memory --reduce-memory-overheads to ld. -Patch26: chromium-59.0.3071.86-i686-ld-memory-tricks.patch -# obj/content/renderer/renderer/child_frame_compositing_helper.o: In function `content::ChildFrameCompositingHelper::OnSetSurface(cc::SurfaceId const&, gfx::Size const&, float, cc::SurfaceSequence const&)': -# /builddir/build/BUILD/chromium-54.0.2840.90/out/Release/../../content/renderer/child_frame_compositing_helper.cc:214: undefined reference to `cc_blink::WebLayerImpl::setOpaque(bool)' -# Patch27: chromium-63.0.3289.84-setopaque.patch -# Use -fpermissive to build WebKit -# Patch31: chromium-56.0.2924.87-fpermissive.patch -# Fix issue with compilation on gcc7 -# Thanks to Ben Noordhuis -# Patch33: chromium-65.0.3325.146-gcc7.patch -# Revert https://chromium.googlesource.com/chromium/src/+/b794998819088f76b4cf44c8db6940240c563cf4%5E%21/#F0 -# https://bugs.chromium.org/p/chromium/issues/detail?id=712737 -# https://bugzilla.redhat.com/show_bug.cgi?id=1446851 -Patch36: chromium-58.0.3029.96-revert-b794998819088f76b4cf44c8db6940240c563cf4.patch -# Correctly compile the stdatomic.h in ffmpeg with gcc 4.8 -Patch37: chromium-64.0.3282.119-ffmpeg-stdatomic.patch -# Nacl can't die soon enough -Patch39: chromium-66.0.3359.117-system-clang.patch -# Do not prefix libpng functions -Patch42: chromium-60.0.3112.78-no-libpng-prefix.patch -# Do not mangle libjpeg -Patch43: chromium-60.0.3112.78-jpeg-nomangle.patch -# Do not mangle zlib -Patch45: chromium-75.0.3770.80-no-zlib-mangle.patch -# Apply these changes to work around EPEL7 compiler issues -Patch46: chromium-62.0.3202.62-kmaxskip-constexpr.patch -Patch47: chromium-60.0.3112.90-vulkan-force-c99.patch -# Fix libavutil include pathing to find arch specific timer.h -# For some reason, this only fails on aarch64. No idea why. -Patch50: chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch -# from gentoo -Patch53: chromium-61.0.3163.79-gcc-no-opt-safe-math.patch -# Only needed when glibc 2.26.90 or later is used -Patch57: chromium-63.0.3289.84-aarch64-glibc-2.26.90.patch -# From gentoo -Patch62: chromium-72.0.3626.121-gcc5-r3.patch -# Do not try to use libc++ in the remoting stack -# Patch63: chromium-63.0.3289.84-nolibc++.patch -# To use round with gcc, you need to #include -Patch65: chromium-65.0.3325.146-gcc-round-fix.patch -# Include proper headers to invoke memcpy() -Patch67: chromium-65.0.3325.146-memcpy-fix.patch -# ../../mojo/public/cpp/bindings/associated_interface_ptr_info.h:48:43: error: cannot convert 'const mojo::ScopedInterfaceEndpointHandle' to 'bool' in return -Patch85: chromium-68.0.3440.106-boolfix.patch -# From Debian -Patch86: chromium-71.0.3578.98-skia-aarch64-buildfix.patch -# Use lstdc++ on EPEL7 only -Patch87: chromium-75.0.3770.100-epel7-stdc++.patch -# Missing files in tarball -Patch88: chromium-66.0.3359.117-missing-files.patch -# https://chromium.googlesource.com/chromium/src/+/ba4141e451f4e0b1b19410b1b503bd32e150df06%5E%21/#F0 -# Patch89: chromium-66.0.3359.117-gcc-optional-move-fixes.patch -# https://chromium.googlesource.com/chromium/src/+/4f2b52281ce1649ea8347489443965ad33262ecc%5E%21 -# Patch90: chromium-66.0.3359.117-gcc-copy-constructor-fix.patch -# https://bugs.chromium.org/p/chromium/issues/detail?id=816952 -# Patch91: chromium-66.0.3359.117-gcc-vector-copy-constructor-fix.patch -# Do not use unrar code, it is non-free -Patch92: chromium-73.0.3683.75-norar.patch -# Upstream GCC fixes -Patch93: chromium-66.0.3359.117-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch -Patch94: chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch -# Patch95: chromium-65.0.3325.146-GCC-IDB-methods-String-renamed-to-GetString.patch -# https://github.com/archlinuxarm/PKGBUILDs/blob/master/extra/chromium/0006-GCC-do-not-use-initializer-list-for-NoDestructor-of-.patch -# Patch96: chromium-66.0.3359.117-GCC-do-not-use-initializer-list-for-NoDestructor-of-.patch -# https://chromium.googlesource.com/chromium/src/+/b84682f31dc99b9c90f5a04947075815697c68d9%5E%21/#F0 -# Patch97: chromium-66.0.3359.139-arm-init-fix.patch -# GCC8 has changed the alignof operator to return the minimal alignment required by the target ABI -# instead of the preferred alignment. This means int64_t is now 4 on i686 (instead of 8). -# Use __alignof__ to get the value we expect (and chromium checks for). -# Patch98: chromium-69.0.3497.81-gcc8-alignof.patch -# RHEL 7 has a bug in its python2.7 which does not propely handle exec with a tuple -# https://bugs.python.org/issue21591 -Patch100: chromium-67.0.3396.62-epel7-use-old-python-exec-syntax.patch -# Add "Fedora" to the user agent string -Patch101: chromium-72.0.3626.121-fedora-user-agent.patch -# Try to fix version.py for Rawhide -Patch103: chromium-71.0.3578.98-py2-bootstrap.patch -# Fix default on redeclaration error -# https://chromium.googlesource.com/chromium/src/+/122692ccee62223f266a988c575ae687e3f4c056%5E%21/#F0 -Patch110: chromium-68.0.3440.106-fix-default-on-redeclaration.patch -# Use Gentoo's Widevine hack -# https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-widevine-r3.patch -Patch111: chromium-71.0.3578.98-widevine-r3.patch -# Do not require sysroot -# Forget about trying to make libc++ -# BUILD SANELY PLEASE -Patch112: chromium-69.0.3497.81-build-sanely-please.patch -# Still moar GCC cleanups from upstream -# Patch113: chromium-gcc8-r588316.patch -# Patch114: chromium-gcc8-r588547.patch -# Patch115: chromium-gcc8-r589614.patch -# Patch116: chromium-gcc8-r591015.patch -# Disable fontconfig cache magic that breaks remoting -Patch117: chromium-70.0.3538.67-disable-fontconfig-cache-magic.patch -# Fix aarch64 build against latest linux kernel headers -Patch119: chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch +Patch201: chromium-47.0.2526.80-nacl-ignore-broken-fd-counter.patch + # Enable VAAPI support on Linux # NOTE: This patch will never land upstream -Patch121: enable-vaapi.patch -Patch122: chromium-75.0.3770.80-vaapi-i686-fpermissive.patch +Patch202: enable-vaapi.patch +Patch203: chromium-75.0.3770.80-vaapi-i686-fpermissive.patch # Fix compatibility with VA-API library (libva) version 1 -Patch124: chromium-75.0.3770.80-vaapi-libva1-compatibility.patch -# drop rsp clobber, which breaks gcc9 (thanks to Jeff Law) -Patch126: chromium-71.0.3578.98-gcc9-drop-rsp-clobber.patch -# Thanks Ubuntu -# Disable these two patches when v75 lands -Patch130: revert-gn-4980.patch -Patch131: revert-gn-4960.patch -# Try to load widevine from other places -Patch132: chromium-widevine-other-locations.patch -# Disable -fno-delete-null-pointer-checks -Patch135: chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch -# Add #include to get pipewire code to build -Patch136: chromium-73.0.3683.75-pipewire-cstring-fix.patch -# el7 only patch -Patch139: chromium-75.0.3770.100-el7-fix-noexcept.patch -# gcc does not have __assume -Patch140: chromium-75.0.3770.80-gcc-no-assume.patch -# Linux 5.2 defines SIOCGSTAMP in a slightly different way, so we need to teach chromium where to find it -Patch141: chromium-75.0.3770.80-SIOCGSTAMP.patch -# https://chromium.googlesource.com/chromium/src/+/aeed4d1f15ce84a17ea0bc219e258dc4982b2368%5E%21/#F0 -Patch142: chromium-75.0.3770.80-aeed4d-gcc-dcheck_ne-fix.patch -# Revert https://chromium.googlesource.com/chromium/src/+/daff6b66faae53a0cefb88987c9ff4843629b728%5E%21/#F0 -# It might make clang happy but it breaks gcc. F*** clang. -Patch143: chromium-75.0.3770.80-revert-daff6b.patch -# Avoid pure virtual crash destroying RenderProcessUserData -# https://chromium.googlesource.com/chromium/src/+/cdf306db81efaaaa954487585d5a5a16205a5ebd%5E%21/ -Patch144: chromium-75.0.3770.80-pure-virtual-crash-fix.patch -# rename function to avoid conflict with rawhide glibc "gettid()" -Patch145: chromium-75.0.3770.80-grpc-gettid-fix.patch -# fix v8 compile with gcc -# https://chromium.googlesource.com/v8/v8/+/3b8c624bda58d05aea80dd9626cd550537d6ac3f%5E%21/#F1 -Patch146: chromium-75.0.3770.100-fix-v8-gcc.patch -# https://chromium.googlesource.com/chromium/src/+/00281713519dbd84b90d2996a009bf3a7e294435%5E%21/#F0 -Patch147: chromium-75.0.3770.100-git00281713.patch - +Patch204: chromium-75.0.3770.80-vaapi-libva1-compatibility.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ @@ -837,97 +792,73 @@ udev. %patch0 -p1 -b .gcc5 %patch1 -p1 -b .pathmax %patch2 -p1 -b .addrfix -%patch4 -p1 -b .notest -# %%patch6 -p1 -b .gnu-inline -%patch7 -p1 -b .ignore-fd-count -%patch9 -p1 -b .modern-libusbx -%patch12 -p1 -b .cups22 -%patch15 -p1 -b .sandboxpie -%patch18 -p1 -b .etc -# %%patch19 -p1 -b .madv_free -%patch20 -p1 -b .gnsystem -# %%patch21 -p1 -b .lastcommit -%patch22 -p1 -b .timefix -%patch24 -p1 -b .nullfix -%patch25 -p1 -b .jpegfix -%patch26 -p1 -b .ldmemory -# %%patch27 -p1 -b .setopaque -# %%patch31 -p1 -b .permissive -# %%patch33 -p1 -b .gcc7 -%patch36 -p1 -b .revert -%patch37 -p1 -b .ffmpeg-stdatomic -%patch39 -p1 -b .system-clang -%patch42 -p1 -b .noprefix -%patch43 -p1 -b .nomangle -%patch45 -p1 -b .nozmangle +%patch3 -p1 -b .notest +%patch4 -p1 -b .modern-libusbx +%patch5 -p1 -b .cups22 +%patch6 -p1 -b .sandboxpie +%patch7 -p1 -b .etc +%patch8 -p1 -b .gnsystem +%patch9 -p1 -b .timefix +%patch10 -p1 -b .nullfix +%patch11 -p1 -b .jpegfix +%patch12 -p1 -b .ldmemory +%patch13 -p1 -b .revert +%patch14 -p1 -b .ffmpeg-stdatomic +%patch15 -p1 -b .system-clang +%patch16 -p1 -b .noprefix +%patch17 -p1 -b .nomangle +%patch18 -p1 -b .nozmangle +%patch19 -p1 -b .pathfix +%patch20 -p1 -b .nogccoptmath +%patch21 -p1 -b .gcc5-r3 +%patch22 -p1 -b .gcc-round-fix +%patch23 -p1 -b .memcpyfix +%patch24 -p1 -b .boolfix +%patch25 -p1 -b .aarch64fix +%patch26 -p1 -b .missing-files +%patch27 -p1 -b .nounrar +%patch28 -p1 -b .gcc-cpolicyprovider +%patch29 -p1 -b .fedora-user-agent +%patch30 -p1 -b .py2 +%patch31 -p1 -b .fix-default-redeclaration +%patch32 -p1 -b .wvhack +%patch33 -p1 -b .sanebuild +%patch34 -p1 -b .nofc +%patch35 -p1 -b .aarch64-new-stat +%patch36 -p1 -b .gcc9 +%patch37 -p1 -b .widevine-other-locations +%patch38 -p1 -b .disable-ndnpc +%patch39 -p1 -b .cstring-fix +%patch40 -p1 -b .gcc-assume +%patch41 -p1 -b .SIOCGSTAMP +%patch42 -p1 -b .gcc-dcheck_ne-fix +%patch43 -p1 -b .revert-daff6b +%patch44 -p1 -b .pure-virtual-fix +%patch45 -p1 -b .gettid-fix +%patch46 -p1 -b .fix-v8-gcc +%patch47 -p1 -b .git00281713 + +# EPEL specific patches %if 0%{?rhel} == 7 -%patch46 -p1 -b .kmaxskip -# %%patch47 -p1 -b .c99 +%patch100 -p1 -b .kmaxskip +%patch101 -p1 -b .epel7 +%patch102 -p1 -b .el7-noexcept %endif -%patch50 -p1 -b .pathfix -%patch53 -p1 -b .nogccoptmath -# %%if 0%%{?fedora} >= 28 -# %%patch57 -p1 -b .aarch64glibc -# %%endif -%patch62 -p1 -b .gcc5-r3 -# %%patch63 -p1 -b .nolibc++ -%patch65 -p1 -b .gcc-round-fix -%patch67 -p1 -b .memcpyfix -%patch85 -p1 -b .boolfix -%patch86 -p1 -b .aarch64fix -%if 0%{?rhel} == 7 -%patch87 -p1 -b .epel7 + +# Feature specific patches +%if ! 0%{?killnacl} +%patch200 -p1 -b .gnu-inline +%patch201 -p1 -b .ignore-fd-count %endif -%patch88 -p1 -b .missing -# %%patch89 -p1 -b .gccomove -# %%patch90 -p1 -b .copycon -# %%patch91 -p1 -b .944404 -%patch92 -p1 -b .nounrar -# %%patch93 -p1 -b .gcc-full-decl -%patch94 -p1 -b .gcc-cpolicyprovider -# %%patch95 -p1 -b .gcc-getstring -# %%patch96 -p1 -b .flatsetfix -# %%patch97 -p1 -b .arm-init-fix -# %%patch98 -p1 -b .gcc8-alignof -%if 0%{?rhel} == 7 -# %%patch100 -p1 -b .oldexec -%endif -%patch101 -p1 -b .fedora-user-agent -%patch103 -p1 -b .py2 -# %%patch108 -p1 -b .move-unique-ptr -%patch110 -p1 -b .fix-default-redeclaration -%patch111 -p1 -b .wvhack -%patch112 -p1 -b .sanebuild -# %%patch113 -p1 -b .r588316 -# %%patch114 -p1 -b .r588547 -# %%patch115 -p1 -b .r589614 -# %%patch116 -p1 -b .r591015 -%patch117 -p1 -b .nofc -%patch119 -p1 -b .aarch64-new-stat + %if %{use_vaapi} -%patch121 -p1 -b .vaapi -%endif +%patch202 -p1 -b .vaapi %ifarch i686 -%patch122 -p1 -b .i686permissive +%patch203 -p1 -b .i686permissive +%patch204 -p1 -b .va1compat %endif -%patch124 -p1 -b .va1compat -%patch126 -p1 -b .gcc9 -# %%patch130 -p1 -b .revert-gn-4980 -# %%patch131 -p1 -b .revert-gn-4960 -%patch132 -p1 -b .widevine-other-locations -%patch135 -p1 -b .disable-ndnpc -%patch136 -p1 -b .cstring-fix -%if 0%{?rhel} == 7 -%patch139 -p1 -b .el7-noexcept %endif -%patch140 -p1 -b .gcc-assume -%patch141 -p1 -b .SIOCGSTAMP -%patch142 -p1 -b .gcc-dcheck_ne-fix -%patch143 -p1 -b .revert-daff6b -%patch144 -p1 -b .pure-virtual-fix -%patch145 -p1 -b .gettid-fix -%patch146 -p1 -b .fix-v8-gcc -%patch147 -p1 -b .git00281713 + # Change shebang in all relevant files in this directory and all subdirectories # See `man find` for how the `-exec command {} +` syntax works diff --git a/relax-libva-version.patch b/relax-libva-version.patch deleted file mode 100644 index e297fd6..0000000 --- a/relax-libva-version.patch +++ /dev/null @@ -1,56 +0,0 @@ -From 6f1309ef8fe10965e4d0018b4f1b80ac6deccdaa Mon Sep 17 00:00:00 2001 -From: Azhar Shaikh -Date: Fri, 30 Nov 2018 23:11:57 +0000 -Subject: [PATCH] media/gpu/vaapi: Relax the version check for VA-API - -Since the newer versions of VA-API are ABI compatible, relax the -version checks for VA-API, by using VA_CHECK_VERSION(). -This will help in updating the libva to the latest releases, -while still supporting the old versions, till the new version of -libva is merged and picked by the builds. Thus ensuring that -hardware accleration is not broken while updating the libva. - -Bug: 905814 -TEST=libva-2.3.0 and libva-2.1.0 are able to do hardware acceleration. - -Suggested-by: Alexandre Courbot -Signed-off-by: Azhar Shaikh -Change-Id: I510549f72290d20676927eeeeb89a87199c062af -Reviewed-on: https://chromium-review.googlesource.com/c/1352519 -Reviewed-by: Alexandre Courbot -Reviewed-by: Hirokazu Honda -Commit-Queue: Miguel Casas -Cr-Commit-Position: refs/heads/master@{#612832} ---- - -diff --git a/AUTHORS b/AUTHORS -index 567fe15..ff42fc5 100644 ---- a/AUTHORS -+++ b/AUTHORS -@@ -103,6 +103,7 @@ - Attila Dusnoki - Avinaash Doreswamy - Ayush Khandelwal -+Azhar Shaikh - Balazs Kelemen - Baul Eun - Behara Mani Shyam Patro -diff --git a/media/gpu/vaapi/vaapi_wrapper.cc b/media/gpu/vaapi/vaapi_wrapper.cc -index b415642..053384d 100644 ---- a/media/gpu/vaapi/vaapi_wrapper.cc -+++ b/media/gpu/vaapi/vaapi_wrapper.cc -@@ -333,7 +333,13 @@ - DVLOG(1) << "VAAPI version: " << major_version << "." << minor_version << " " - << va_vendor_string_; - -- if (major_version != VA_MAJOR_VERSION || minor_version != VA_MINOR_VERSION) { -+ // The VAAPI version is determined from what is loaded on the system by -+ // calling vaInitialize(). We want a runtime evaluation of libva version, -+ // of what is loaded on the system, with, what browser is compiled with. -+ // Also since the libva is now ABI-compatible, relax the version check -+ // which helps in upgrading the libva, without breaking any existing -+ // functionality. -+ if (!VA_CHECK_VERSION(major_version, minor_version, 0)) { - LOG(ERROR) << "This build of Chromium requires VA-API version " - << VA_MAJOR_VERSION << "." << VA_MINOR_VERSION - << ", system version: " << major_version << "." << minor_version; diff --git a/revert-gn-4960.patch b/revert-gn-4960.patch deleted file mode 100644 index bb51ada..0000000 --- a/revert-gn-4960.patch +++ /dev/null @@ -1,655 +0,0 @@ -Description: revert https://gn.googlesource.com/gn/+/0d038c2e0a32a528713d3dfaf1f1e0cdfe87fd46, which breaks the chromium build - ---- a/tools/gn/build/gen.py -+++ b/tools/gn/build/gen.py -@@ -522,6 +522,7 @@ def WriteGNNinja(path, platform, host, o - 'tools/gn/setup.cc', - 'tools/gn/source_dir.cc', - 'tools/gn/source_file.cc', -+ 'tools/gn/source_file_type.cc', - 'tools/gn/standard_out.cc', - 'tools/gn/string_utils.cc', - 'tools/gn/substitution_list.cc', ---- a/tools/gn/tools/gn/c_tool.h -+++ b/tools/gn/tools/gn/c_tool.h -@@ -12,6 +12,7 @@ - #include "tools/gn/label.h" - #include "tools/gn/label_ptr.h" - #include "tools/gn/scope.h" -+#include "tools/gn/source_file_type.h" - #include "tools/gn/substitution_list.h" - #include "tools/gn/substitution_pattern.h" - #include "tools/gn/tool.h" ---- a/tools/gn/tools/gn/compile_commands_writer.cc -+++ b/tools/gn/tools/gn/compile_commands_writer.cc -@@ -122,7 +122,7 @@ void WriteCommand(const Target* target, - const CompileFlags& flags, - std::vector& tool_outputs, - PathOutput& path_output, -- SourceFile::Type source_type, -+ SourceFileType source_type, - const char* tool_name, - EscapeOptions opts, - std::string* compile_commands) { -@@ -144,16 +144,16 @@ void WriteCommand(const Target* target, - } else if (range.type == &CSubstitutionCFlags) { - command_out << flags.cflags; - } else if (range.type == &CSubstitutionCFlagsC) { -- if (source_type == SourceFile::SOURCE_C) -+ if (source_type == SOURCE_C) - command_out << flags.cflags_c; - } else if (range.type == &CSubstitutionCFlagsCc) { -- if (source_type == SourceFile::SOURCE_CPP) -+ if (source_type == SOURCE_CPP) - command_out << flags.cflags_cc; - } else if (range.type == &CSubstitutionCFlagsObjC) { -- if (source_type == SourceFile::SOURCE_M) -+ if (source_type == SOURCE_M) - command_out << flags.cflags_objc; - } else if (range.type == &CSubstitutionCFlagsObjCc) { -- if (source_type == SourceFile::SOURCE_MM) -+ if (source_type == SOURCE_MM) - command_out << flags.cflags_objcc; - } else if (range.type == &SubstitutionLabel || - range.type == &SubstitutionLabelName || -@@ -222,11 +222,9 @@ void CompileCommandsWriter::RenderJSON(c - for (const auto& source : target->sources()) { - // If this source is not a C/C++/ObjC/ObjC++ source (not header) file, - // continue as it does not belong in the compilation database. -- SourceFile::Type source_type = source.type(); -- if (source_type != SourceFile::SOURCE_CPP && -- source_type != SourceFile::SOURCE_C && -- source_type != SourceFile::SOURCE_M && -- source_type != SourceFile::SOURCE_MM) -+ SourceFileType source_type = GetSourceFileType(source); -+ if (source_type != SOURCE_CPP && source_type != SOURCE_C && -+ source_type != SOURCE_M && source_type != SOURCE_MM) - continue; - - const char* tool_name = Tool::kToolNone; -@@ -324,4 +322,4 @@ void CompileCommandsWriter::VisitDeps(co - VisitDeps(pair.ptr, visited); - } - } --} -+} -\ No newline at end of file ---- a/tools/gn/tools/gn/general_tool.h -+++ b/tools/gn/tools/gn/general_tool.h -@@ -11,6 +11,7 @@ - #include "base/macros.h" - #include "tools/gn/label.h" - #include "tools/gn/label_ptr.h" -+#include "tools/gn/source_file_type.h" - #include "tools/gn/substitution_list.h" - #include "tools/gn/substitution_pattern.h" - #include "tools/gn/tool.h" ---- a/tools/gn/tools/gn/header_checker.cc -+++ b/tools/gn/tools/gn/header_checker.cc -@@ -18,6 +18,7 @@ - #include "tools/gn/err.h" - #include "tools/gn/filesystem_utils.h" - #include "tools/gn/scheduler.h" -+#include "tools/gn/source_file_type.h" - #include "tools/gn/target.h" - #include "tools/gn/trace.h" - #include "util/worker_pool.h" -@@ -151,10 +152,9 @@ void HeaderChecker::RunCheckOverFiles(co - - for (const auto& file : files) { - // Only check C-like source files (RC files also have includes). -- SourceFile::Type type = file.first.type(); -- if (type != SourceFile::SOURCE_CPP && type != SourceFile::SOURCE_H && -- type != SourceFile::SOURCE_C && type != SourceFile::SOURCE_M && -- type != SourceFile::SOURCE_MM && type != SourceFile::SOURCE_RC) -+ SourceFileType type = GetSourceFileType(file.first); -+ if (type != SOURCE_CPP && type != SOURCE_H && type != SOURCE_C && -+ type != SOURCE_M && type != SOURCE_MM && type != SOURCE_RC) - continue; - - if (!check_generated_) { ---- a/tools/gn/tools/gn/ninja_binary_target_writer.cc -+++ b/tools/gn/tools/gn/ninja_binary_target_writer.cc -@@ -23,23 +23,22 @@ - #include "tools/gn/ninja_utils.h" - #include "tools/gn/scheduler.h" - #include "tools/gn/settings.h" -+#include "tools/gn/source_file_type.h" - #include "tools/gn/string_utils.h" - #include "tools/gn/substitution_writer.h" - #include "tools/gn/target.h" - - bool NinjaBinaryTargetWriter::SourceFileTypeSet::CSourceUsed() { -- return Get(SourceFile::SOURCE_CPP) || Get(SourceFile::SOURCE_H) || -- Get(SourceFile::SOURCE_C) || Get(SourceFile::SOURCE_M) || -- Get(SourceFile::SOURCE_MM) || Get(SourceFile::SOURCE_RC) || -- Get(SourceFile::SOURCE_S); -+ return Get(SOURCE_CPP) || Get(SOURCE_H) || Get(SOURCE_C) || Get(SOURCE_M) || -+ Get(SOURCE_MM) || Get(SOURCE_RC) || Get(SOURCE_S); - } - - bool NinjaBinaryTargetWriter::SourceFileTypeSet::RustSourceUsed() { -- return Get(SourceFile::SOURCE_RS); -+ return Get(SOURCE_RS); - } - - bool NinjaBinaryTargetWriter::SourceFileTypeSet::GoSourceUsed() { -- return Get(SourceFile::SOURCE_GO); -+ return Get(SOURCE_GO); - } - - NinjaBinaryTargetWriter::NinjaBinaryTargetWriter(const Target* target, -@@ -50,6 +49,10 @@ NinjaBinaryTargetWriter::NinjaBinaryTarg - NinjaBinaryTargetWriter::~NinjaBinaryTargetWriter() = default; - - void NinjaBinaryTargetWriter::Run() { -+ SourceFileTypeSet used_types; -+ for (const auto& source : target_->sources()) -+ used_types.Set(GetSourceFileType(source)); -+ - NinjaCBinaryTargetWriter writer(target_, out_); - writer.Run(); - } ---- a/tools/gn/tools/gn/ninja_binary_target_writer.h -+++ b/tools/gn/tools/gn/ninja_binary_target_writer.h -@@ -23,12 +23,11 @@ class NinjaBinaryTargetWriter : public N - class SourceFileTypeSet { - public: - SourceFileTypeSet() { -- memset(flags_, 0, -- sizeof(bool) * static_cast(SourceFile::SOURCE_NUMTYPES)); -+ memset(flags_, 0, sizeof(bool) * static_cast(SOURCE_NUMTYPES)); - } - -- void Set(SourceFile::Type type) { flags_[static_cast(type)] = true; } -- bool Get(SourceFile::Type type) const { -+ void Set(SourceFileType type) { flags_[static_cast(type)] = true; } -+ bool Get(SourceFileType type) const { - return flags_[static_cast(type)]; - } - -@@ -37,7 +36,7 @@ class NinjaBinaryTargetWriter : public N - bool GoSourceUsed(); - - private: -- bool flags_[static_cast(SourceFile::SOURCE_NUMTYPES)]; -+ bool flags_[static_cast(SOURCE_NUMTYPES)]; - }; - - NinjaBinaryTargetWriter(const Target* target, std::ostream& out); ---- a/tools/gn/tools/gn/ninja_c_binary_target_writer.cc -+++ b/tools/gn/tools/gn/ninja_c_binary_target_writer.cc -@@ -24,6 +24,7 @@ - #include "tools/gn/ninja_utils.h" - #include "tools/gn/scheduler.h" - #include "tools/gn/settings.h" -+#include "tools/gn/source_file_type.h" - #include "tools/gn/string_utils.h" - #include "tools/gn/substitution_writer.h" - #include "tools/gn/target.h" -@@ -66,27 +67,27 @@ void AddSourceSetObjectFiles(const Targe - if (source_set->GetOutputFilesForSource(source, &tool_name, &tool_outputs)) - obj_files->push_back(tool_outputs[0]); - -- used_types.Set(source.type()); -+ used_types.Set(GetSourceFileType(source)); - } - - // Add MSVC precompiled header object files. GCC .gch files are not object - // files so they are omitted. - if (source_set->config_values().has_precompiled_headers()) { -- if (used_types.Get(SourceFile::SOURCE_C)) { -+ if (used_types.Get(SOURCE_C)) { - const CTool* tool = source_set->toolchain()->GetToolAsC(CTool::kCToolCc); - if (tool && tool->precompiled_header_type() == CTool::PCH_MSVC) { - GetPCHOutputFiles(source_set, CTool::kCToolCc, &tool_outputs); - obj_files->Append(tool_outputs.begin(), tool_outputs.end()); - } - } -- if (used_types.Get(SourceFile::SOURCE_CPP)) { -+ if (used_types.Get(SOURCE_CPP)) { - const CTool* tool = source_set->toolchain()->GetToolAsC(CTool::kCToolCxx); - if (tool && tool->precompiled_header_type() == CTool::PCH_MSVC) { - GetPCHOutputFiles(source_set, CTool::kCToolCxx, &tool_outputs); - obj_files->Append(tool_outputs.begin(), tool_outputs.end()); - } - } -- if (used_types.Get(SourceFile::SOURCE_M)) { -+ if (used_types.Get(SOURCE_M)) { - const CTool* tool = - source_set->toolchain()->GetToolAsC(CTool::kCToolObjC); - if (tool && tool->precompiled_header_type() == CTool::PCH_MSVC) { -@@ -94,7 +95,7 @@ void AddSourceSetObjectFiles(const Targe - obj_files->Append(tool_outputs.begin(), tool_outputs.end()); - } - } -- if (used_types.Get(SourceFile::SOURCE_MM)) { -+ if (used_types.Get(SOURCE_MM)) { - const CTool* tool = - source_set->toolchain()->GetToolAsC(CTool::kCToolObjCxx); - if (tool && tool->precompiled_header_type() == CTool::PCH_MSVC) { -@@ -118,7 +119,7 @@ void NinjaCBinaryTargetWriter::Run() { - // Figure out what source types are needed. - SourceFileTypeSet used_types; - for (const auto& source : target_->sources()) -- used_types.Set(source.type()); -+ used_types.Set(GetSourceFileType(source)); - - WriteCompilerVars(used_types); - -@@ -234,34 +235,31 @@ void NinjaCBinaryTargetWriter::WriteComp - target_->config_values().has_precompiled_headers(); - - EscapeOptions opts = GetFlagOptions(); -- if (used_types.Get(SourceFile::SOURCE_S) || -- used_types.Get(SourceFile::SOURCE_ASM)) { -+ if (used_types.Get(SOURCE_S) || used_types.Get(SOURCE_ASM)) { - WriteOneFlag(target_, &CSubstitutionAsmFlags, false, Tool::kToolNone, - &ConfigValues::asmflags, opts, path_output_, out_); - } -- if (used_types.Get(SourceFile::SOURCE_C) || -- used_types.Get(SourceFile::SOURCE_CPP) || -- used_types.Get(SourceFile::SOURCE_M) || -- used_types.Get(SourceFile::SOURCE_MM)) { -+ if (used_types.Get(SOURCE_C) || used_types.Get(SOURCE_CPP) || -+ used_types.Get(SOURCE_M) || used_types.Get(SOURCE_MM)) { - WriteOneFlag(target_, &CSubstitutionCFlags, false, Tool::kToolNone, - &ConfigValues::cflags, opts, path_output_, out_); - } -- if (used_types.Get(SourceFile::SOURCE_C)) { -+ if (used_types.Get(SOURCE_C)) { - WriteOneFlag(target_, &CSubstitutionCFlagsC, has_precompiled_headers, - CTool::kCToolCc, &ConfigValues::cflags_c, opts, path_output_, - out_); - } -- if (used_types.Get(SourceFile::SOURCE_CPP)) { -+ if (used_types.Get(SOURCE_CPP)) { - WriteOneFlag(target_, &CSubstitutionCFlagsCc, has_precompiled_headers, - CTool::kCToolCxx, &ConfigValues::cflags_cc, opts, path_output_, - out_); - } -- if (used_types.Get(SourceFile::SOURCE_M)) { -+ if (used_types.Get(SOURCE_M)) { - WriteOneFlag(target_, &CSubstitutionCFlagsObjC, has_precompiled_headers, - CTool::kCToolObjC, &ConfigValues::cflags_objc, opts, - path_output_, out_); - } -- if (used_types.Get(SourceFile::SOURCE_MM)) { -+ if (used_types.Get(SOURCE_MM)) { - WriteOneFlag(target_, &CSubstitutionCFlagsObjCc, has_precompiled_headers, - CTool::kCToolObjCxx, &ConfigValues::cflags_objcc, opts, - path_output_, out_); -@@ -321,14 +319,14 @@ void NinjaCBinaryTargetWriter::WritePCHC - - const CTool* tool_c = target_->toolchain()->GetToolAsC(CTool::kCToolCc); - if (tool_c && tool_c->precompiled_header_type() != CTool::PCH_NONE && -- used_types.Get(SourceFile::SOURCE_C)) { -+ used_types.Get(SOURCE_C)) { - WritePCHCommand(&CSubstitutionCFlagsC, CTool::kCToolCc, - tool_c->precompiled_header_type(), input_dep, - order_only_deps, object_files, other_files); - } - const CTool* tool_cxx = target_->toolchain()->GetToolAsC(CTool::kCToolCxx); - if (tool_cxx && tool_cxx->precompiled_header_type() != CTool::PCH_NONE && -- used_types.Get(SourceFile::SOURCE_CPP)) { -+ used_types.Get(SOURCE_CPP)) { - WritePCHCommand(&CSubstitutionCFlagsCc, CTool::kCToolCxx, - tool_cxx->precompiled_header_type(), input_dep, - order_only_deps, object_files, other_files); -@@ -336,7 +334,7 @@ void NinjaCBinaryTargetWriter::WritePCHC - - const CTool* tool_objc = target_->toolchain()->GetToolAsC(CTool::kCToolObjC); - if (tool_objc && tool_objc->precompiled_header_type() == CTool::PCH_GCC && -- used_types.Get(SourceFile::SOURCE_M)) { -+ used_types.Get(SOURCE_M)) { - WritePCHCommand(&CSubstitutionCFlagsObjC, CTool::kCToolObjC, - tool_objc->precompiled_header_type(), input_dep, - order_only_deps, object_files, other_files); -@@ -345,7 +343,7 @@ void NinjaCBinaryTargetWriter::WritePCHC - const CTool* tool_objcxx = - target_->toolchain()->GetToolAsC(CTool::kCToolObjCxx); - if (tool_objcxx && tool_objcxx->precompiled_header_type() == CTool::PCH_GCC && -- used_types.Get(SourceFile::SOURCE_MM)) { -+ used_types.Get(SOURCE_MM)) { - WritePCHCommand(&CSubstitutionCFlagsObjCc, CTool::kCToolObjCxx, - tool_objcxx->precompiled_header_type(), input_dep, - order_only_deps, object_files, other_files); -@@ -478,7 +476,7 @@ void NinjaCBinaryTargetWriter::WriteSour - deps.resize(0); - const char* tool_name = Tool::kToolNone; - if (!target_->GetOutputFilesForSource(source, &tool_name, &tool_outputs)) { -- if (source.type() == SourceFile::SOURCE_DEF) -+ if (GetSourceFileType(source) == SOURCE_DEF) - other_files->push_back(source); - continue; // No output for this source. - } -@@ -599,7 +597,7 @@ void NinjaCBinaryTargetWriter::WriteLink - const SourceFile* optional_def_file = nullptr; - if (!other_files.empty()) { - for (const SourceFile& src_file : other_files) { -- if (src_file.type() == SourceFile::SOURCE_DEF) { -+ if (GetSourceFileType(src_file) == SOURCE_DEF) { - optional_def_file = &src_file; - implicit_deps.push_back( - OutputFile(settings_->build_settings(), src_file)); ---- a/tools/gn/tools/gn/source_file.cc -+++ b/tools/gn/tools/gn/source_file.cc -@@ -21,48 +21,18 @@ void AssertValueSourceFileString(const s - DCHECK(!EndsWithSlash(s)) << s; - } - --SourceFile::Type GetSourceFileType(const std::string& file) { -- base::StringPiece extension = FindExtension(&file); -- if (extension == "cc" || extension == "cpp" || extension == "cxx") -- return SourceFile::SOURCE_CPP; -- if (extension == "h" || extension == "hpp" || extension == "hxx" || -- extension == "hh" || extension == "inc") -- return SourceFile::SOURCE_H; -- if (extension == "c") -- return SourceFile::SOURCE_C; -- if (extension == "m") -- return SourceFile::SOURCE_M; -- if (extension == "mm") -- return SourceFile::SOURCE_MM; -- if (extension == "rc") -- return SourceFile::SOURCE_RC; -- if (extension == "S" || extension == "s" || extension == "asm") -- return SourceFile::SOURCE_S; -- if (extension == "o" || extension == "obj") -- return SourceFile::SOURCE_O; -- if (extension == "def") -- return SourceFile::SOURCE_DEF; -- if (extension == "rs") -- return SourceFile::SOURCE_RS; -- if (extension == "go") -- return SourceFile::SOURCE_GO; -- -- return SourceFile::SOURCE_UNKNOWN; --} -- - } // namespace - --SourceFile::SourceFile() : type_(SOURCE_UNKNOWN) {} -+SourceFile::SourceFile() = default; - - SourceFile::SourceFile(const base::StringPiece& p) -- : value_(p.data(), p.size()), type_(GetSourceFileType(value_)) { -+ : value_(p.data(), p.size()) { - DCHECK(!value_.empty()); - AssertValueSourceFileString(value_); - NormalizePath(&value_); - } - --SourceFile::SourceFile(SwapIn, std::string* value) -- : type_(GetSourceFileType(*value)) { -+SourceFile::SourceFile(SwapIn, std::string* value) { - value_.swap(*value); - DCHECK(!value_.empty()); - AssertValueSourceFileString(value_); ---- a/tools/gn/tools/gn/source_file.h -+++ b/tools/gn/tools/gn/source_file.h -@@ -20,28 +20,6 @@ class SourceDir; - // ends in one. - class SourceFile { - public: -- // This should be sequential integers starting from 0 so they can be used as -- // array indices. -- enum Type { -- SOURCE_UNKNOWN = 0, -- SOURCE_ASM, -- SOURCE_C, -- SOURCE_CPP, -- SOURCE_H, -- SOURCE_M, -- SOURCE_MM, -- SOURCE_S, -- SOURCE_RC, -- SOURCE_O, // Object files can be inputs, too. Also counts .obj. -- SOURCE_DEF, -- -- SOURCE_RS, -- SOURCE_GO, -- -- // Must be last. -- SOURCE_NUMTYPES, -- }; -- - enum SwapIn { SWAP_IN }; - - SourceFile(); -@@ -58,7 +36,6 @@ class SourceFile { - - bool is_null() const { return value_.empty(); } - const std::string& value() const { return value_; } -- Type type() const { return type_; } - - // Returns everything after the last slash. - std::string GetName() const; -@@ -103,7 +80,6 @@ class SourceFile { - friend class SourceDir; - - std::string value_; -- Type type_; - - // Copy & assign supported. - }; ---- /dev/null -+++ b/tools/gn/tools/gn/source_file_type.cc -@@ -0,0 +1,37 @@ -+// Copyright 2014 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. -+ -+#include "tools/gn/source_file_type.h" -+ -+#include "tools/gn/filesystem_utils.h" -+#include "tools/gn/source_file.h" -+ -+SourceFileType GetSourceFileType(const SourceFile& file) { -+ base::StringPiece extension = FindExtension(&file.value()); -+ if (extension == "cc" || extension == "cpp" || extension == "cxx") -+ return SOURCE_CPP; -+ if (extension == "h" || extension == "hpp" || extension == "hxx" || -+ extension == "hh") -+ return SOURCE_H; -+ if (extension == "c") -+ return SOURCE_C; -+ if (extension == "m") -+ return SOURCE_M; -+ if (extension == "mm") -+ return SOURCE_MM; -+ if (extension == "rc") -+ return SOURCE_RC; -+ if (extension == "S" || extension == "s" || extension == "asm") -+ return SOURCE_S; -+ if (extension == "o" || extension == "obj") -+ return SOURCE_O; -+ if (extension == "def") -+ return SOURCE_DEF; -+ if (extension == "rs") -+ return SOURCE_RS; -+ if (extension == "go") -+ return SOURCE_GO; -+ -+ return SOURCE_UNKNOWN; -+} ---- /dev/null -+++ b/tools/gn/tools/gn/source_file_type.h -@@ -0,0 +1,34 @@ -+// Copyright 2014 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. -+ -+#ifndef TOOLS_GN_SOURCE_FILE_TYPE_H_ -+#define TOOLS_GN_SOURCE_FILE_TYPE_H_ -+ -+class SourceFile; -+ -+// This should be sequential integers starting from 0 so they can be used as -+// array indices. -+enum SourceFileType { -+ SOURCE_UNKNOWN = 0, -+ SOURCE_ASM, -+ SOURCE_C, -+ SOURCE_CPP, -+ SOURCE_H, -+ SOURCE_M, -+ SOURCE_MM, -+ SOURCE_S, -+ SOURCE_RC, -+ SOURCE_O, // Object files can be inputs, too. Also counts .obj. -+ SOURCE_DEF, -+ -+ SOURCE_RS, -+ SOURCE_GO, -+ -+ // Must be last. -+ SOURCE_NUMTYPES, -+}; -+ -+SourceFileType GetSourceFileType(const SourceFile& file); -+ -+#endif // TOOLS_GN_SOURCE_FILE_TYPE_H_ ---- a/tools/gn/tools/gn/target.cc -+++ b/tools/gn/tools/gn/target.cc -@@ -16,6 +16,7 @@ - #include "tools/gn/filesystem_utils.h" - #include "tools/gn/functions.h" - #include "tools/gn/scheduler.h" -+#include "tools/gn/source_file_type.h" - #include "tools/gn/substitution_writer.h" - #include "tools/gn/tool.h" - #include "tools/gn/toolchain.h" -@@ -486,10 +487,10 @@ bool Target::GetOutputFilesForSource(con - outputs->clear(); - *computed_tool_type = Tool::kToolNone; - -- SourceFile::Type file_type = source.type(); -- if (file_type == SourceFile::SOURCE_UNKNOWN) -+ SourceFileType file_type = GetSourceFileType(source); -+ if (file_type == SOURCE_UNKNOWN) - return false; -- if (file_type == SourceFile::SOURCE_O) { -+ if (file_type == SOURCE_O) { - // Object files just get passed to the output and not compiled. - outputs->push_back(OutputFile(settings()->build_settings(), source)); - return true; ---- a/tools/gn/tools/gn/tool.cc -+++ b/tools/gn/tools/gn/tool.cc -@@ -261,27 +261,27 @@ std::unique_ptr Tool::CreateTool(c - } - - // static --const char* Tool::GetToolTypeForSourceType(SourceFile::Type type) { -+const char* Tool::GetToolTypeForSourceType(SourceFileType type) { - switch (type) { -- case SourceFile::SOURCE_C: -+ case SOURCE_C: - return CTool::kCToolCc; -- case SourceFile::SOURCE_CPP: -+ case SOURCE_CPP: - return CTool::kCToolCxx; -- case SourceFile::SOURCE_M: -+ case SOURCE_M: - return CTool::kCToolObjC; -- case SourceFile::SOURCE_MM: -+ case SOURCE_MM: - return CTool::kCToolObjCxx; -- case SourceFile::SOURCE_ASM: -- case SourceFile::SOURCE_S: -+ case SOURCE_ASM: -+ case SOURCE_S: - return CTool::kCToolAsm; -- case SourceFile::SOURCE_RC: -+ case SOURCE_RC: - return CTool::kCToolRc; -- case SourceFile::SOURCE_UNKNOWN: -- case SourceFile::SOURCE_H: -- case SourceFile::SOURCE_O: -- case SourceFile::SOURCE_DEF: -- case SourceFile::SOURCE_GO: -- case SourceFile::SOURCE_RS: -+ case SOURCE_UNKNOWN: -+ case SOURCE_H: -+ case SOURCE_O: -+ case SOURCE_DEF: -+ case SOURCE_GO: -+ case SOURCE_RS: - return kToolNone; - default: - NOTREACHED(); ---- a/tools/gn/tools/gn/tool.h -+++ b/tools/gn/tools/gn/tool.h -@@ -12,7 +12,7 @@ - #include "tools/gn/label.h" - #include "tools/gn/label_ptr.h" - #include "tools/gn/scope.h" --#include "tools/gn/source_file.h" -+#include "tools/gn/source_file_type.h" - #include "tools/gn/substitution_list.h" - #include "tools/gn/substitution_pattern.h" - -@@ -171,7 +171,7 @@ class Tool { - Toolchain* toolchain, - Err* err); - -- static const char* GetToolTypeForSourceType(SourceFile::Type type); -+ static const char* GetToolTypeForSourceType(SourceFileType type); - static const char* GetToolTypeForTargetFinalOutput(const Target* target); - - protected: ---- a/tools/gn/tools/gn/toolchain.cc -+++ b/tools/gn/tools/gn/toolchain.cc -@@ -88,16 +88,16 @@ void Toolchain::ToolchainSetupComplete() - setup_complete_ = true; - } - --const Tool* Toolchain::GetToolForSourceType(SourceFile::Type type) const { -+const Tool* Toolchain::GetToolForSourceType(SourceFileType type) const { - return GetTool(Tool::GetToolTypeForSourceType(type)); - } - --const CTool* Toolchain::GetToolForSourceTypeAsC(SourceFile::Type type) const { -+const CTool* Toolchain::GetToolForSourceTypeAsC(SourceFileType type) const { - return GetToolAsC(Tool::GetToolTypeForSourceType(type)); - } - - const GeneralTool* Toolchain::GetToolForSourceTypeAsGeneral( -- SourceFile::Type type) const { -+ SourceFileType type) const { - return GetToolAsGeneral(Tool::GetToolTypeForSourceType(type)); - } - ---- a/tools/gn/tools/gn/toolchain.h -+++ b/tools/gn/tools/gn/toolchain.h -@@ -12,6 +12,7 @@ - #include "tools/gn/item.h" - #include "tools/gn/label_ptr.h" - #include "tools/gn/scope.h" -+#include "tools/gn/source_file_type.h" - #include "tools/gn/substitution_type.h" - #include "tools/gn/tool.h" - #include "tools/gn/value.h" -@@ -87,9 +88,9 @@ class Toolchain : public Item { - } - - // Returns the tool for compiling the given source file type. -- const Tool* GetToolForSourceType(SourceFile::Type type) const; -- const CTool* GetToolForSourceTypeAsC(SourceFile::Type type) const; -- const GeneralTool* GetToolForSourceTypeAsGeneral(SourceFile::Type type) const; -+ const Tool* GetToolForSourceType(SourceFileType type) const; -+ const CTool* GetToolForSourceTypeAsC(SourceFileType type) const; -+ const GeneralTool* GetToolForSourceTypeAsGeneral(SourceFileType type) const; - - // Returns the tool that produces the final output for the given target type. - // This isn't necessarily the tool you would expect. For copy target, this ---- a/tools/gn/tools/gn/visual_studio_writer.cc -+++ b/tools/gn/tools/gn/visual_studio_writer.cc -@@ -24,6 +24,7 @@ - #include "tools/gn/label_pattern.h" - #include "tools/gn/parse_tree.h" - #include "tools/gn/path_output.h" -+#include "tools/gn/source_file_type.h" - #include "tools/gn/standard_out.h" - #include "tools/gn/target.h" - #include "tools/gn/variables.h" diff --git a/revert-gn-4980.patch b/revert-gn-4980.patch deleted file mode 100644 index fe550e9..0000000 --- a/revert-gn-4980.patch +++ /dev/null @@ -1,134 +0,0 @@ -Description: revert https://gn.googlesource.com/gn/+/8730b0feb6b991fa47368566501ab9ccfb453c92, which breaks the chromium build - ---- a/tools/gn/tools/gn/binary_target_generator.cc -+++ b/tools/gn/tools/gn/binary_target_generator.cc -@@ -68,38 +68,6 @@ void BinaryTargetGenerator::DoRun() { - return; - } - --bool BinaryTargetGenerator::FillSources() { -- bool ret = TargetGenerator::FillSources(); -- for (std::size_t i = 0; i < target_->sources().size(); ++i) { -- const auto& source = target_->sources()[i]; -- switch (source.type()) { -- case SourceFile::SOURCE_CPP: -- case SourceFile::SOURCE_H: -- case SourceFile::SOURCE_C: -- case SourceFile::SOURCE_M: -- case SourceFile::SOURCE_MM: -- case SourceFile::SOURCE_S: -- case SourceFile::SOURCE_ASM: -- case SourceFile::SOURCE_O: -- // These are allowed. -- break; -- case SourceFile::SOURCE_RC: -- case SourceFile::SOURCE_DEF: -- case SourceFile::SOURCE_RS: -- case SourceFile::SOURCE_GO: -- case SourceFile::SOURCE_UNKNOWN: -- case SourceFile::SOURCE_NUMTYPES: -- *err_ = -- Err(scope_->GetValue(variables::kSources, true)->list_value()[i], -- std::string("Only source, header, and object files belong in " -- "the sources of a ") + -- Target::GetStringForOutputType(target_->output_type()) + -- ". " + source.value() + " is not one of the valid types."); -- } -- } -- return ret; --} -- - bool BinaryTargetGenerator::FillCompleteStaticLib() { - if (target_->output_type() == Target::STATIC_LIBRARY) { - const Value* value = scope_->GetValue(variables::kCompleteStaticLib, true); ---- a/tools/gn/tools/gn/binary_target_generator.h -+++ b/tools/gn/tools/gn/binary_target_generator.h -@@ -22,7 +22,6 @@ class BinaryTargetGenerator : public Tar - - protected: - void DoRun() override; -- bool FillSources() override; - - private: - bool FillCompleteStaticLib(); ---- a/tools/gn/tools/gn/source_dir.cc -+++ b/tools/gn/tools/gn/source_dir.cc -@@ -98,10 +98,10 @@ SourceFile SourceDir::ResolveRelativeFil - return ret; - - const std::string& input_string = p.string_value(); -- if (!ValidateResolveInput(true, p, input_string, err)) -+ if (!ValidateResolveInput(true, p, input_string, err)) { - return ret; -- -- ret.SetValue(ResolveRelative(input_string, value_, true, source_root)); -+ } -+ ret.value_ = ResolveRelative(input_string, value_, true, source_root); - return ret; - } - ---- a/tools/gn/tools/gn/source_file.cc -+++ b/tools/gn/tools/gn/source_file.cc -@@ -55,19 +55,18 @@ SourceFile::Type GetSourceFileType(const - SourceFile::SourceFile() : type_(SOURCE_UNKNOWN) {} - - SourceFile::SourceFile(const base::StringPiece& p) -- : value_(p.data(), p.size()) { -+ : value_(p.data(), p.size()), type_(GetSourceFileType(value_)) { - DCHECK(!value_.empty()); - AssertValueSourceFileString(value_); - NormalizePath(&value_); -- type_ = GetSourceFileType(value_); - } - --SourceFile::SourceFile(SwapIn, std::string* value) { -+SourceFile::SourceFile(SwapIn, std::string* value) -+ : type_(GetSourceFileType(*value)) { - value_.swap(*value); - DCHECK(!value_.empty()); - AssertValueSourceFileString(value_); - NormalizePath(&value_); -- type_ = GetSourceFileType(value_); - } - - SourceFile::~SourceFile() = default; -@@ -93,8 +92,3 @@ SourceDir SourceFile::GetDir() const { - base::FilePath SourceFile::Resolve(const base::FilePath& source_root) const { - return ResolvePath(value_, true, source_root); - } -- --void SourceFile::SetValue(const std::string& value) { -- value_ = value; -- type_ = GetSourceFileType(value_); --} ---- a/tools/gn/tools/gn/source_file.h -+++ b/tools/gn/tools/gn/source_file.h -@@ -97,16 +97,11 @@ class SourceFile { - return value_ < other.value_; - } - -- void swap(SourceFile& other) { -- value_.swap(other.value_); -- std::swap(type_, other.type_); -- } -+ void swap(SourceFile& other) { value_.swap(other.value_); } - - private: - friend class SourceDir; - -- void SetValue(const std::string& value); -- - std::string value_; - Type type_; - ---- a/tools/gn/tools/gn/target_generator.h -+++ b/tools/gn/tools/gn/target_generator.h -@@ -47,7 +47,7 @@ class TargetGenerator { - - const BuildSettings* GetBuildSettings() const; - -- virtual bool FillSources(); -+ bool FillSources(); - bool FillPublic(); - bool FillConfigs(); - bool FillOutputs(bool allow_substitutions); From 6cad81f350bbe46f7a987a57d41cb9998e4aec5d Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 13 Aug 2019 07:05:33 +0200 Subject: [PATCH 0352/1449] Update to 76.0.3809.100 --- .gitignore | 1 + ...4.116-libusb_interrupt_event_handler.patch | 15 - chromium-55.0.2883.75-cups22.patch | 29 -- chromium-66.0.3359.117-missing-files.patch | 272 ------------------ ...um-73.0.3683.75-pipewire-cstring-fix.patch | 11 - ...9.100-libusb_interrupt_event_handler.patch | 15 + chromium.spec | 32 +-- sources | 2 +- 8 files changed, 24 insertions(+), 353 deletions(-) delete mode 100644 chromium-48.0.2564.116-libusb_interrupt_event_handler.patch delete mode 100644 chromium-55.0.2883.75-cups22.patch delete mode 100644 chromium-66.0.3359.117-missing-files.patch delete mode 100644 chromium-73.0.3683.75-pipewire-cstring-fix.patch create mode 100644 chromium-76.0.3809.100-libusb_interrupt_event_handler.patch diff --git a/.gitignore b/.gitignore index 61d44ef..2bfdc54 100644 --- a/.gitignore +++ b/.gitignore @@ -81,3 +81,4 @@ /chromium-75.0.3770.80-clean.tar.xz /chromium-75.0.3770.90-clean.tar.xz /chromium-75.0.3770.100-clean.tar.xz +/chromium-76.0.3809.100-clean.tar.xz diff --git a/chromium-48.0.2564.116-libusb_interrupt_event_handler.patch b/chromium-48.0.2564.116-libusb_interrupt_event_handler.patch deleted file mode 100644 index d0b2484..0000000 --- a/chromium-48.0.2564.116-libusb_interrupt_event_handler.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -up chromium-48.0.2564.116/device/usb/usb_context.cc.modern-libusbx chromium-48.0.2564.116/device/usb/usb_context.cc ---- chromium-48.0.2564.116/device/usb/usb_context.cc.modern-libusbx 2016-02-24 10:21:10.534996028 -0500 -+++ chromium-48.0.2564.116/device/usb/usb_context.cc 2016-02-24 10:22:28.270499864 -0500 -@@ -57,7 +57,11 @@ void UsbContext::UsbEventHandler::Run() - - void UsbContext::UsbEventHandler::Stop() { - base::subtle::Release_Store(&running_, 0); -+#ifdef LIBUSB_API_VERSION >= 0x01000105 -+ libusb_interrupt_event_handler(context_); -+#else - libusb_interrupt_handle_event(context_); -+#endif - } - - UsbContext::UsbContext(PlatformUsbContext context) : context_(context) { diff --git a/chromium-55.0.2883.75-cups22.patch b/chromium-55.0.2883.75-cups22.patch deleted file mode 100644 index d1a2bf8..0000000 --- a/chromium-55.0.2883.75-cups22.patch +++ /dev/null @@ -1,29 +0,0 @@ -diff -up chromium-52.0.2743.82/printing/backend/print_backend_cups.cc.cups22 chromium-52.0.2743.82/printing/backend/print_backend_cups.cc ---- chromium-52.0.2743.82/printing/backend/print_backend_cups.cc.cups22 2016-07-22 09:20:15.794340886 -0400 -+++ chromium-52.0.2743.82/printing/backend/print_backend_cups.cc 2016-07-22 09:20:26.338261197 -0400 -@@ -16,6 +16,7 @@ - #include "base/synchronization/lock.h" - #include "base/values.h" - #include "printing/backend/cups_helper.h" -+#include - #include "printing/backend/print_backend_consts.h" - #include "url/gurl.h" - -diff -up chromium-52.0.2743.82/printing/BUILD.gn.cups22 chromium-52.0.2743.82/printing/BUILD.gn ---- chromium-52.0.2743.82/printing/BUILD.gn.cups22 2016-07-21 11:27:05.597507544 -0400 -+++ chromium-52.0.2743.82/printing/BUILD.gn 2016-07-21 14:36:45.574137758 -0400 -@@ -147,12 +147,13 @@ component("printing") { - ], - "trim string") - -- if (cups_version == "1.6" || cups_version == "1.7") { -+ if (cups_version == "1.6" || cups_version == "1.7" || cups_version == "2.2") { - cflags += [ - # CUPS 1.6 deprecated the PPD APIs, but we will stay with this - # API for now as supported Linux and Mac OS'es are still using - # older versions of CUPS. More info: crbug.com/226176 - "-Wno-deprecated-declarations", -+ "-D_PPD_DEPRECATED=", - # CUPS 1.7 deprecates httpConnectEncrypt(), see the mac section - # below. - ] diff --git a/chromium-66.0.3359.117-missing-files.patch b/chromium-66.0.3359.117-missing-files.patch deleted file mode 100644 index 746d56e..0000000 --- a/chromium-66.0.3359.117-missing-files.patch +++ /dev/null @@ -1,272 +0,0 @@ -diff -up chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/__init__.py.missing chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/__init__.py ---- chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/__init__.py.missing 2018-04-19 09:51:46.165723235 -0400 -+++ chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/__init__.py 2018-04-19 09:51:46.171723115 -0400 -@@ -0,0 +1,3 @@ -+# 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-66.0.3359.117/third_party/blink/tools/blinkpy/common/name_style_converter.py.missing chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/name_style_converter.py ---- chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/name_style_converter.py.missing 2018-04-19 09:51:46.171723115 -0400 -+++ chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/name_style_converter.py 2018-04-19 09:51:46.172723095 -0400 -@@ -0,0 +1,110 @@ -+# 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. -+# pylint: disable=import-error,print-statement,relative-import -+import re -+SPECIAL_TOKENS = [ -+ # This list should be sorted by length. -+ 'CString', -+ 'Float32', -+ 'Float64', -+ 'Base64', -+ 'IFrame', -+ 'Latin1', -+ 'PlugIn', -+ 'SQLite', -+ 'Uint16', -+ 'Uint32', -+ 'WebGL2', -+ 'ASCII', -+ 'CType', -+ 'DList', -+ 'Int16', -+ 'Int32', -+ 'MPath', -+ 'OList', -+ 'TSpan', -+ 'UList', -+ 'UTF16', -+ 'Uint8', -+ 'WebGL', -+ 'XPath', -+ 'ETC1', -+ 'HTML', -+ 'Int8', -+ 'S3TC', -+ 'SPv2', -+ 'UTF8', -+ 'API', -+ 'CSS', -+ 'DOM', -+ 'EXT', -+ 'RTC', -+ 'SVG', -+ '2D', -+ 'AX', -+ 'V0', -+ 'V8', -+] -+MATCHING_EXPRESSION = '((?:[A-Z][a-z]+)|[0-9]D?$)' -+class SmartTokenizer(object): -+ """Detects special cases that are not easily discernible without additional -+ knowledge, such as recognizing that in SVGSVGElement, the first two SVGs -+ are separate tokens, but WebGL is one token.""" -+ def __init__(self, name): -+ self.remaining = name -+ def tokenize(self): -+ name = self.remaining -+ tokens = [] -+ while len(name) > 0: -+ matched_token = None -+ for token in SPECIAL_TOKENS: -+ if name.startswith(token): -+ matched_token = token -+ break -+ if not matched_token: -+ match = re.search(MATCHING_EXPRESSION, name) -+ if not match: -+ matched_token = name -+ elif match.start(0) != 0: -+ matched_token = name[:match.start(0)] -+ else: -+ matched_token = match.group(0) -+ tokens.append(name[:len(matched_token)]) -+ name = name[len(matched_token):] -+ return tokens -+class NameStyleConverter(object): -+ """Converts names from camelCase to various other styles. -+ """ -+ def __init__(self, name): -+ self.tokens = self.tokenize(name) -+ def tokenize(self, name): -+ tokenizer = SmartTokenizer(name) -+ return tokenizer.tokenize() -+ def to_snake_case(self): -+ """Snake case is the file and variable name style per Google C++ Style -+ Guide: -+ https://google.github.io/styleguide/cppguide.html#Variable_Names -+ Also known as the hacker case. -+ https://en.wikipedia.org/wiki/Snake_case -+ """ -+ return '_'.join([token.lower() for token in self.tokens]) -+ def to_upper_camel_case(self): -+ """Upper-camel case is the class and function name style per -+ Google C++ Style Guide: -+ https://google.github.io/styleguide/cppguide.html#Function_Names -+ Also known as the PascalCase. -+ https://en.wikipedia.org/wiki/Camel_case. -+ """ -+ return ''.join([token[0].upper() + token[1:] for token in self.tokens]) -+ def to_macro_case(self): -+ """Macro case is the macro name style per Google C++ Style Guide: -+ https://google.github.io/styleguide/cppguide.html#Macro_Names -+ """ -+ return '_'.join([token.upper() for token in self.tokens]) -+ def to_all_cases(self): -+ return { -+ 'snake_case': self.to_snake_case(), -+ 'upper_camel_case': self.to_upper_camel_case(), -+ 'macro_case': self.to_macro_case(), -+ } -diff -up chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/name_style_converter_test.py.missing chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/name_style_converter_test.py ---- chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/name_style_converter_test.py.missing 2018-04-19 09:51:46.172723095 -0400 -+++ chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/name_style_converter_test.py 2018-04-19 09:51:46.173723075 -0400 -@@ -0,0 +1,140 @@ -+# 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. -+# pylint: disable=import-error,print-statement,relative-import,protected-access -+"""Unit tests for name_style_converter.py.""" -+import unittest -+from name_style_converter import NameStyleConverter -+from name_style_converter import SmartTokenizer -+class SmartTokenizerTest(unittest.TestCase): -+ def test_simple_cases(self): -+ tokenizer = SmartTokenizer('foo') -+ self.assertEqual(tokenizer.tokenize(), ['foo']) -+ tokenizer = SmartTokenizer('fooBar') -+ self.assertEqual(tokenizer.tokenize(), ['foo', 'Bar']) -+ tokenizer = SmartTokenizer('fooBarBaz') -+ self.assertEqual(tokenizer.tokenize(), ['foo', 'Bar', 'Baz']) -+ tokenizer = SmartTokenizer('Baz') -+ self.assertEqual(tokenizer.tokenize(), ['Baz']) -+ tokenizer = SmartTokenizer('') -+ self.assertEqual(tokenizer.tokenize(), []) -+ tokenizer = SmartTokenizer('FOO') -+ self.assertEqual(tokenizer.tokenize(), ['FOO']) -+ tokenizer = SmartTokenizer('foo2') -+ self.assertEqual(tokenizer.tokenize(), ['foo', '2']) -+ def test_tricky_cases(self): -+ tokenizer = SmartTokenizer('XMLHttpRequest') -+ self.assertEqual(tokenizer.tokenize(), ['XML', 'Http', 'Request']) -+ tokenizer = SmartTokenizer('HTMLElement') -+ self.assertEqual(tokenizer.tokenize(), ['HTML', 'Element']) -+ tokenizer = SmartTokenizer('WebGLRenderingContext') -+ self.assertEqual(tokenizer.tokenize(), -+ ['WebGL', 'Rendering', 'Context']) -+ tokenizer = SmartTokenizer('CanvasRenderingContext2D') -+ self.assertEqual(tokenizer.tokenize(), -+ ['Canvas', 'Rendering', 'Context', '2D']) -+ tokenizer = SmartTokenizer('CanvasRenderingContext2DAPITest') -+ self.assertEqual(tokenizer.tokenize(), -+ ['Canvas', 'Rendering', 'Context', '2D', 'API', 'Test']) -+ tokenizer = SmartTokenizer('SVGSVGElement') -+ self.assertEqual(tokenizer.tokenize(), ['SVG', 'SVG', 'Element']) -+ tokenizer = SmartTokenizer('CanvasRenderingContext2D') -+ self.assertEqual(tokenizer.tokenize(), ['Canvas', 'Rendering', 'Context', '2D']) -+ tokenizer = SmartTokenizer('CSSURLImageValue') -+ self.assertEqual(tokenizer.tokenize(), ['CSS', 'URL', 'Image', 'Value']) -+ tokenizer = SmartTokenizer('CSSPropertyAPID') -+ self.assertEqual(tokenizer.tokenize(), ['CSS', 'Property', 'API', 'D']) -+ tokenizer = SmartTokenizer('AXARIAGridCell') -+ self.assertEqual(tokenizer.tokenize(), ['AX', 'ARIA', 'Grid', 'Cell']) -+ tokenizer = SmartTokenizer('CDATASection') -+ self.assertEqual(tokenizer.tokenize(), ['CDATA', 'Section']) -+ tokenizer = SmartTokenizer('ASCIICType') -+ self.assertEqual(tokenizer.tokenize(), ['ASCII', 'CType']) -+ tokenizer = SmartTokenizer('CString') -+ self.assertEqual(tokenizer.tokenize(), ['CString']) -+ tokenizer = SmartTokenizer('HTMLDListElement') -+ self.assertEqual(tokenizer.tokenize(), ['HTML', 'DList', 'Element']) -+ tokenizer = SmartTokenizer('HTMLOListElement') -+ self.assertEqual(tokenizer.tokenize(), ['HTML', 'OList', 'Element']) -+ tokenizer = SmartTokenizer('HTMLIFrameElement') -+ self.assertEqual(tokenizer.tokenize(), ['HTML', 'IFrame', 'Element']) -+ tokenizer = SmartTokenizer('HTMLPlugInElement') -+ self.assertEqual(tokenizer.tokenize(), ['HTML', 'PlugIn', 'Element']) -+ # No special handling for OptGroup, FieldSet, and TextArea. -+ tokenizer = SmartTokenizer('HTMLOptGroupElement') -+ self.assertEqual(tokenizer.tokenize(), ['HTML', 'Opt', 'Group', 'Element']) -+ tokenizer = SmartTokenizer('HTMLFieldSetElement') -+ self.assertEqual(tokenizer.tokenize(), ['HTML', 'Field', 'Set', 'Element']) -+ tokenizer = SmartTokenizer('HTMLTextAreaElement') -+ self.assertEqual(tokenizer.tokenize(), ['HTML', 'Text', 'Area', 'Element']) -+ tokenizer = SmartTokenizer('Path2D') -+ self.assertEqual(tokenizer.tokenize(), ['Path', '2D']) -+ tokenizer = SmartTokenizer('Point2D') -+ self.assertEqual(tokenizer.tokenize(), ['Point', '2D']) -+ tokenizer = SmartTokenizer('CanvasRenderingContext2DState') -+ self.assertEqual(tokenizer.tokenize(), ['Canvas', 'Rendering', 'Context', '2D', 'State']) -+ tokenizer = SmartTokenizer('RTCDTMFSender') -+ self.assertEqual(tokenizer.tokenize(), ['RTC', 'DTMF', 'Sender']) -+ tokenizer = SmartTokenizer('WebGLCompressedTextureS3TCsRGB') -+ self.assertEqual(tokenizer.tokenize(), ['WebGL', 'Compressed', 'Texture', 'S3TC', 'sRGB']) -+ tokenizer = SmartTokenizer('WebGL2CompressedTextureETC1') -+ self.assertEqual(tokenizer.tokenize(), ['WebGL2', 'Compressed', 'Texture', 'ETC1']) -+ tokenizer = SmartTokenizer('EXTsRGB') -+ self.assertEqual(tokenizer.tokenize(), ['EXT', 'sRGB']) -+ tokenizer = SmartTokenizer('SVGFEBlendElement') -+ self.assertEqual(tokenizer.tokenize(), ['SVG', 'FE', 'Blend', 'Element']) -+ tokenizer = SmartTokenizer('SVGMPathElement') -+ self.assertEqual(tokenizer.tokenize(), ['SVG', 'MPath', 'Element']) -+ tokenizer = SmartTokenizer('SVGTSpanElement') -+ self.assertEqual(tokenizer.tokenize(), ['SVG', 'TSpan', 'Element']) -+ tokenizer = SmartTokenizer('SVGURIReference') -+ self.assertEqual(tokenizer.tokenize(), ['SVG', 'URI', 'Reference']) -+ tokenizer = SmartTokenizer('UTF16TextIterator') -+ self.assertEqual(tokenizer.tokenize(), ['UTF16', 'Text', 'Iterator']) -+ tokenizer = SmartTokenizer('UTF8Decoder') -+ self.assertEqual(tokenizer.tokenize(), ['UTF8', 'Decoder']) -+ tokenizer = SmartTokenizer('Uint8Array') -+ self.assertEqual(tokenizer.tokenize(), ['Uint8', 'Array']) -+ tokenizer = SmartTokenizer('DOMWindowBase64') -+ self.assertEqual(tokenizer.tokenize(), ['DOM', 'Window', 'Base64']) -+ tokenizer = SmartTokenizer('TextCodecLatin1') -+ self.assertEqual(tokenizer.tokenize(), ['Text', 'Codec', 'Latin1']) -+ tokenizer = SmartTokenizer('V8BindingForCore') -+ self.assertEqual(tokenizer.tokenize(), ['V8', 'Binding', 'For', 'Core']) -+ tokenizer = SmartTokenizer('V8DOMRect') -+ self.assertEqual(tokenizer.tokenize(), ['V8', 'DOM', 'Rect']) -+ tokenizer = SmartTokenizer('V0InsertionPoint') -+ self.assertEqual(tokenizer.tokenize(), ['V0', 'Insertion', 'Point']) -+ tokenizer = SmartTokenizer('ShadowDOMV0Test') -+ self.assertEqual(tokenizer.tokenize(), ['Shadow', 'DOM', 'V0', 'Test']) -+ tokenizer = SmartTokenizer('ElementShadowV0') -+ self.assertEqual(tokenizer.tokenize(), ['Element', 'Shadow', 'V0']) -+ tokenizer = SmartTokenizer('StubChromeClientForSPv2') -+ self.assertEqual(tokenizer.tokenize(), ['Stub', 'Chrome', 'Client', 'For', 'SPv2']) -+ tokenizer = SmartTokenizer('SQLiteAuthorizer') -+ self.assertEqual(tokenizer.tokenize(), ['SQLite', 'Authorizer']) -+ tokenizer = SmartTokenizer('XPathEvaluator') -+ self.assertEqual(tokenizer.tokenize(), ['XPath', 'Evaluator']) -+ tokenizer = SmartTokenizer('IsXHTMLDocument') -+ self.assertEqual(tokenizer.tokenize(), ['Is', 'XHTML', 'Document']) -+ tokenizer = SmartTokenizer('Animation.idl') -+ self.assertEqual(tokenizer.tokenize(), ['Animation', '.idl']) -+class NameStyleConverterTest(unittest.TestCase): -+ def test_snake_case(self): -+ converter = NameStyleConverter('HTMLElement') -+ self.assertEqual(converter.to_snake_case(), 'html_element') -+ def test_upper_camel_case(self): -+ converter = NameStyleConverter('someSuperThing') -+ self.assertEqual(converter.to_upper_camel_case(), 'SomeSuperThing') -+ converter = NameStyleConverter('SVGElement') -+ self.assertEqual(converter.to_upper_camel_case(), 'SVGElement') -+ def test_macro_case(self): -+ converter = NameStyleConverter('WebGLBaz2D') -+ self.assertEqual(converter.to_macro_case(), 'WEBGL_BAZ_2D') -+ def test_all_cases(self): -+ converter = NameStyleConverter('SVGScriptElement') -+ self.assertEqual(converter.to_all_cases(), { -+ 'snake_case': 'svg_script_element', -+ 'upper_camel_case': 'SVGScriptElement', -+ 'macro_case': 'SVG_SCRIPT_ELEMENT', -+ }) -diff -up chromium-66.0.3359.117/third_party/blink/tools/blinkpy/__init__.py.missing chromium-66.0.3359.117/third_party/blink/tools/blinkpy/__init__.py ---- chromium-66.0.3359.117/third_party/blink/tools/blinkpy/__init__.py.missing 2018-04-19 11:34:40.621293007 -0400 -+++ chromium-66.0.3359.117/third_party/blink/tools/blinkpy/__init__.py 2018-04-19 11:34:34.440413163 -0400 -@@ -0,0 +1,3 @@ -+# 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 --git a/chromium-73.0.3683.75-pipewire-cstring-fix.patch b/chromium-73.0.3683.75-pipewire-cstring-fix.patch deleted file mode 100644 index ce8b70b..0000000 --- a/chromium-73.0.3683.75-pipewire-cstring-fix.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-73.0.3683.75/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc.cstringfix chromium-73.0.3683.75/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc ---- chromium-73.0.3683.75/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc.cstringfix 2019-03-13 13:04:25.290842447 -0400 -+++ chromium-73.0.3683.75/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc 2019-03-13 13:05:13.234897441 -0400 -@@ -18,6 +18,7 @@ - #include - #include - -+#include - #include - #include - diff --git a/chromium-76.0.3809.100-libusb_interrupt_event_handler.patch b/chromium-76.0.3809.100-libusb_interrupt_event_handler.patch new file mode 100644 index 0000000..690f0f9 --- /dev/null +++ b/chromium-76.0.3809.100-libusb_interrupt_event_handler.patch @@ -0,0 +1,15 @@ +diff -up chromium-76.0.3809.100/services/device/usb/usb_context.cc.modern-libusbx chromium-76.0.3809.100/services/device/usb/usb_context.cc +--- chromium-76.0.3809.100/services/device/usb/usb_context.cc.modern-libusbx 2019-08-12 15:40:49.034170484 +0200 ++++ chromium-76.0.3809.100/services/device/usb/usb_context.cc 2019-08-12 15:41:23.775558867 +0200 +@@ -58,7 +58,11 @@ void UsbContext::UsbEventHandler::Run() + + void UsbContext::UsbEventHandler::Stop() { + base::subtle::Release_Store(&running_, 0); ++#ifdef LIBUSB_API_VERSION >= 0x01000105 ++ libusb_interrupt_event_handler(context_); ++#else + libusb_interrupt_handle_event(context_); ++#endif + } + + UsbContext::UsbContext(PlatformUsbContext context) : context_(context) { diff --git a/chromium.spec b/chromium.spec index d734490..1d3a256 100644 --- a/chromium.spec +++ b/chromium.spec @@ -157,15 +157,15 @@ BuildRequires: libicu-devel >= 5.4 %global chromoting_client_id %nil %endif -%global majorversion 75 +%global majorversion 76 %if %{freeworld} Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3770.100 -Release: 4%{?dist} +Version: %{majorversion}.0.3809.100 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -176,10 +176,7 @@ Patch1: chromium-45.0.2454.101-linux-path-max.patch Patch2: chromium-55.0.2883.75-addrfix.patch Patch3: chromium-72.0.3626.121-notest.patch # Use libusb_interrupt_event_handler from current libusbx (1.0.21-0.1.git448584a) -Patch4: chromium-48.0.2564.116-libusb_interrupt_event_handler.patch -# Ignore deprecations in cups 2.2 -# https://bugs.chromium.org/p/chromium/issues/detail?id=622493 -Patch5: chromium-55.0.2883.75-cups22.patch +Patch4: chromium-76.0.3809.100-libusb_interrupt_event_handler.patch # Use PIE in the Linux sandbox (from openSUSE via Russian Fedora) Patch6: chromium-70.0.3538.67-sandbox-pie.patch # Use /etc/chromium for master_prefs @@ -223,8 +220,6 @@ Patch23: chromium-65.0.3325.146-memcpy-fix.patch Patch24: chromium-68.0.3440.106-boolfix.patch # From Debian Patch25: chromium-71.0.3578.98-skia-aarch64-buildfix.patch -# Missing files in tarball -Patch26: chromium-66.0.3359.117-missing-files.patch # Do not use unrar code, it is non-free Patch27: chromium-73.0.3683.75-norar.patch # Upstream GCC fixes @@ -253,14 +248,8 @@ Patch36: chromium-71.0.3578.98-gcc9-drop-rsp-clobber.patch Patch37: chromium-widevine-other-locations.patch # Disable -fno-delete-null-pointer-checks Patch38: chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch -# Add #include to get pipewire code to build -Patch39: chromium-73.0.3683.75-pipewire-cstring-fix.patch -# gcc does not have __assume -Patch40: chromium-75.0.3770.80-gcc-no-assume.patch # Linux 5.2 defines SIOCGSTAMP in a slightly different way, so we need to teach chromium where to find it Patch41: chromium-75.0.3770.80-SIOCGSTAMP.patch -# https://chromium.googlesource.com/chromium/src/+/aeed4d1f15ce84a17ea0bc219e258dc4982b2368%5E%21/#F0 -Patch42: chromium-75.0.3770.80-aeed4d-gcc-dcheck_ne-fix.patch # Revert https://chromium.googlesource.com/chromium/src/+/daff6b66faae53a0cefb88987c9ff4843629b728%5E%21/#F0 # It might make clang happy but it breaks gcc. F*** clang. Patch43: chromium-75.0.3770.80-revert-daff6b.patch @@ -272,8 +261,6 @@ Patch45: chromium-75.0.3770.80-grpc-gettid-fix.patch # fix v8 compile with gcc # https://chromium.googlesource.com/v8/v8/+/3b8c624bda58d05aea80dd9626cd550537d6ac3f%5E%21/#F1 Patch46: chromium-75.0.3770.100-fix-v8-gcc.patch -# https://chromium.googlesource.com/chromium/src/+/00281713519dbd84b90d2996a009bf3a7e294435%5E%21/#F0 -Patch47: chromium-75.0.3770.100-git00281713.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -794,7 +781,6 @@ udev. %patch2 -p1 -b .addrfix %patch3 -p1 -b .notest %patch4 -p1 -b .modern-libusbx -%patch5 -p1 -b .cups22 %patch6 -p1 -b .sandboxpie %patch7 -p1 -b .etc %patch8 -p1 -b .gnsystem @@ -815,7 +801,6 @@ udev. %patch23 -p1 -b .memcpyfix %patch24 -p1 -b .boolfix %patch25 -p1 -b .aarch64fix -%patch26 -p1 -b .missing-files %patch27 -p1 -b .nounrar %patch28 -p1 -b .gcc-cpolicyprovider %patch29 -p1 -b .fedora-user-agent @@ -828,15 +813,11 @@ udev. %patch36 -p1 -b .gcc9 %patch37 -p1 -b .widevine-other-locations %patch38 -p1 -b .disable-ndnpc -%patch39 -p1 -b .cstring-fix -%patch40 -p1 -b .gcc-assume %patch41 -p1 -b .SIOCGSTAMP -%patch42 -p1 -b .gcc-dcheck_ne-fix %patch43 -p1 -b .revert-daff6b %patch44 -p1 -b .pure-virtual-fix %patch45 -p1 -b .gettid-fix %patch46 -p1 -b .fix-v8-gcc -%patch47 -p1 -b .git00281713 # EPEL specific patches %if 0%{?rhel} == 7 @@ -1217,7 +1198,6 @@ build/linux/unbundle/remove_bundled_libraries.py \ %if %{freeworld} 'third_party/openh264' \ %endif - 'third_party/openmax_dl' \ 'third_party/opus' \ 'third_party/ots' \ 'third_party/pdfium' \ @@ -1260,7 +1240,6 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/sqlite' \ 'third_party/swiftshader' \ 'third_party/swiftshader/third_party/subzero' \ - 'third_party/swiftshader/third_party/LLVM' \ 'third_party/swiftshader/third_party/llvm-subzero' \ 'third_party/swiftshader/third_party/llvm-7.0' \ 'third_party/tcmalloc' \ @@ -1857,6 +1836,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Tue Aug 13 2019 Tomas Popela - 76.0.3809.100-1 +- Update to 76.0.3809.100 + * Wed Jul 24 2019 Fedora Release Engineering - 75.0.3770.100-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild diff --git a/sources b/sources index 5ba7f4f..778c103 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-75.0.3770.100-clean.tar.xz) = ee2fad215cf39edc572b4ecd040f1130e857e19a34e64fffb14a995ca325adc0b01d6e8bfae4f91c2fecd13ed018049e64fe2c2cc755502b8e3291698698512e +SHA512 (chromium-76.0.3809.100-clean.tar.xz) = ad250b8cd0a01297fdff85c12a4dca85477cf027a68c0a9f7a3bc93b825772d17ddd062a89020ae954def781f19fe44beedb33ec8a86f3c12af290edb43d6ee9 From 55af817284f149e234b81d44e35ccd5524462493 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 13 Aug 2019 15:39:15 +0200 Subject: [PATCH 0353/1449] Add more fixes --- chromium-76.0.3809.100-gcc-cc-no-except.patch | 105 ++++++++++++++++ chromium-76.0.3809.100-gcc-net-fetcher.patch | 63 ++++++++++ chromium-76.0.3809.100-gcc-vulkan.patch | 115 ++++++++++++++++++ chromium.spec | 14 +++ get_free_ffmpeg_source_files.py | 8 +- sources | 2 +- 6 files changed, 302 insertions(+), 5 deletions(-) create mode 100644 chromium-76.0.3809.100-gcc-cc-no-except.patch create mode 100644 chromium-76.0.3809.100-gcc-net-fetcher.patch create mode 100644 chromium-76.0.3809.100-gcc-vulkan.patch diff --git a/chromium-76.0.3809.100-gcc-cc-no-except.patch b/chromium-76.0.3809.100-gcc-cc-no-except.patch new file mode 100644 index 0000000..e4d754a --- /dev/null +++ b/chromium-76.0.3809.100-gcc-cc-no-except.patch @@ -0,0 +1,105 @@ +From 84c91abab33966f928497c24db4a39f436d2dca8 Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Fri, 07 Jun 2019 09:50:11 +0000 +Subject: [PATCH] Make SharedMemoryMapping move constructor noexcept + +As LayerTreeHostImpl::UIResourceData move constructor is declared +noexcept with default implementation, the move constructor of its +members should also be noexcept. GCC will fail to build otherwise +for mismatching noexcept declaration. + +We also set the move assignment operator. + +Bug: 819294 +Change-Id: Icd663da83b882e15f7d16780c9241972e09bc492 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645297 +Commit-Queue: José Dapena Paz +Reviewed-by: Daniel Cheng +Cr-Commit-Position: refs/heads/master@{#667064} +--- + +diff --git a/base/memory/shared_memory_mapping.cc b/base/memory/shared_memory_mapping.cc +index 2be2570..8426fa8 100644 +--- a/base/memory/shared_memory_mapping.cc ++++ b/base/memory/shared_memory_mapping.cc +@@ -33,7 +33,7 @@ + + SharedMemoryMapping::SharedMemoryMapping() = default; + +-SharedMemoryMapping::SharedMemoryMapping(SharedMemoryMapping&& mapping) ++SharedMemoryMapping::SharedMemoryMapping(SharedMemoryMapping&& mapping) noexcept + : memory_(mapping.memory_), + size_(mapping.size_), + mapped_size_(mapping.mapped_size_), +@@ -42,7 +42,7 @@ + } + + SharedMemoryMapping& SharedMemoryMapping::operator=( +- SharedMemoryMapping&& mapping) { ++ SharedMemoryMapping&& mapping) noexcept { + Unmap(); + memory_ = mapping.memory_; + size_ = mapping.size_; +@@ -90,9 +90,9 @@ + + ReadOnlySharedMemoryMapping::ReadOnlySharedMemoryMapping() = default; + ReadOnlySharedMemoryMapping::ReadOnlySharedMemoryMapping( +- ReadOnlySharedMemoryMapping&&) = default; ++ ReadOnlySharedMemoryMapping&&) noexcept = default; + ReadOnlySharedMemoryMapping& ReadOnlySharedMemoryMapping::operator=( +- ReadOnlySharedMemoryMapping&&) = default; ++ ReadOnlySharedMemoryMapping&&) noexcept = default; + ReadOnlySharedMemoryMapping::ReadOnlySharedMemoryMapping( + void* address, + size_t size, +@@ -102,9 +102,9 @@ + + WritableSharedMemoryMapping::WritableSharedMemoryMapping() = default; + WritableSharedMemoryMapping::WritableSharedMemoryMapping( +- WritableSharedMemoryMapping&&) = default; ++ WritableSharedMemoryMapping&&) noexcept = default; + WritableSharedMemoryMapping& WritableSharedMemoryMapping::operator=( +- WritableSharedMemoryMapping&&) = default; ++ WritableSharedMemoryMapping&&) noexcept = default; + WritableSharedMemoryMapping::WritableSharedMemoryMapping( + void* address, + size_t size, +diff --git a/base/memory/shared_memory_mapping.h b/base/memory/shared_memory_mapping.h +index d9569af..2b8858e 100644 +--- a/base/memory/shared_memory_mapping.h ++++ b/base/memory/shared_memory_mapping.h +@@ -32,8 +32,8 @@ + SharedMemoryMapping(); + + // Move operations are allowed. +- SharedMemoryMapping(SharedMemoryMapping&& mapping); +- SharedMemoryMapping& operator=(SharedMemoryMapping&& mapping); ++ SharedMemoryMapping(SharedMemoryMapping&& mapping) noexcept; ++ SharedMemoryMapping& operator=(SharedMemoryMapping&& mapping) noexcept; + + // Unmaps the region if the mapping is valid. + virtual ~SharedMemoryMapping(); +@@ -93,8 +93,9 @@ + ReadOnlySharedMemoryMapping(); + + // Move operations are allowed. +- ReadOnlySharedMemoryMapping(ReadOnlySharedMemoryMapping&&); +- ReadOnlySharedMemoryMapping& operator=(ReadOnlySharedMemoryMapping&&); ++ ReadOnlySharedMemoryMapping(ReadOnlySharedMemoryMapping&&) noexcept; ++ ReadOnlySharedMemoryMapping& operator=( ++ ReadOnlySharedMemoryMapping&&) noexcept; + + // Returns the base address of the mapping. This is read-only memory. This is + // page-aligned. This is nullptr for invalid instances. +@@ -171,8 +172,9 @@ + WritableSharedMemoryMapping(); + + // Move operations are allowed. +- WritableSharedMemoryMapping(WritableSharedMemoryMapping&&); +- WritableSharedMemoryMapping& operator=(WritableSharedMemoryMapping&&); ++ WritableSharedMemoryMapping(WritableSharedMemoryMapping&&) noexcept; ++ WritableSharedMemoryMapping& operator=( ++ WritableSharedMemoryMapping&&) noexcept; + + // Returns the base address of the mapping. This is writable memory. This is + // page-aligned. This is nullptr for invalid instances. diff --git a/chromium-76.0.3809.100-gcc-net-fetcher.patch b/chromium-76.0.3809.100-gcc-net-fetcher.patch new file mode 100644 index 0000000..bc0ed98 --- /dev/null +++ b/chromium-76.0.3809.100-gcc-net-fetcher.patch @@ -0,0 +1,63 @@ +From 502e6e42633d2571c8236c8649b031fe9915eb5b Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Tue, 11 Jun 2019 16:56:27 +0000 +Subject: [PATCH] GCC: CertNetFetcherImpl declares Job as a friend but it is in the anonymous namespace + +GCC does not allow friendship declaration to anonymous namespace as done with Job +object in the CertNetFetcherImpl. This fix removes the friend declaration, and just +makes RemoveJob method public, that was the only reason to make Job a friend. + +Error was: +./../net/cert_net/cert_net_fetcher_impl.cc: In member function ‘void net::{anonymous}::Job::DetachRequest(net::CertNetFetcherImpl::RequestCore*)’: +../../net/cert_net/cert_net_fetcher_impl.cc:458:42: error: ‘std::unique_ptr net::CertNetFetcherImpl::AsyncCertNetFetcherImpl::RemoveJob(net::{anonymous}::Job*)’ is private within this context + delete_this = parent_->RemoveJob(this); + ^ +../../net/cert_net/cert_net_fetcher_impl.cc:151:24: note: declared private here + std::unique_ptr RemoveJob(Job* job); + ^~~~~~~~~ +../../net/cert_net/cert_net_fetcher_impl.cc: In member function ‘void net::{anonymous}::Job::OnJobCompleted(net::Error)’: +../../net/cert_net/cert_net_fetcher_impl.cc:610:61: error: ‘std::unique_ptr net::CertNetFetcherImpl::AsyncCertNetFetcherImpl::RemoveJob(net::{anonymous}::Job*)’ is private within this context + std::unique_ptr delete_this = parent_->RemoveJob(this); + ^ +../../net/cert_net/cert_net_fetcher_impl.cc:151:24: note: declared private here + std::unique_ptr RemoveJob(Job* job); + ^~~~~~~~~ + +Bug: 819294 +Change-Id: I3609f4558e570741395366de6a4cd40577d91450 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1651783 +Commit-Queue: Eric Roman +Reviewed-by: Eric Roman +Cr-Commit-Position: refs/heads/master@{#668015} +--- + +diff --git a/net/cert_net/cert_net_fetcher_impl.cc b/net/cert_net/cert_net_fetcher_impl.cc +index 11a1166..349c656 100644 +--- a/net/cert_net/cert_net_fetcher_impl.cc ++++ b/net/cert_net/cert_net_fetcher_impl.cc +@@ -135,21 +135,19 @@ + void Fetch(std::unique_ptr request_params, + scoped_refptr request); + ++ // Removes |job| from the in progress jobs and transfers ownership to the ++ // caller. ++ std::unique_ptr RemoveJob(Job* job); ++ + // Cancels outstanding jobs, which stops network requests and signals the + // corresponding RequestCores that the requests have completed. + void Shutdown(); + + private: +- friend class Job; +- + // Finds a job with a matching RequestPararms or returns nullptr if there was + // no match. + Job* FindJob(const RequestParams& params); + +- // Removes |job| from the in progress jobs and transfers ownership to the +- // caller. +- std::unique_ptr RemoveJob(Job* job); +- + // The in-progress jobs. This set does not contain the job which is actively + // invoking callbacks (OnJobCompleted). + JobSet jobs_; diff --git a/chromium-76.0.3809.100-gcc-vulkan.patch b/chromium-76.0.3809.100-gcc-vulkan.patch new file mode 100644 index 0000000..cf93bce --- /dev/null +++ b/chromium-76.0.3809.100-gcc-vulkan.patch @@ -0,0 +1,115 @@ +From fdb3bb1f8c41d044a5b0cb80257a26dd3c8f83a3 Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Tue, 11 Jun 2019 17:39:38 +0000 +Subject: [PATCH] GCC: do not use old C notation to assign struct with property names. + +The notation for initialization of structs referring to its properties +is invalid in C++. This is not accepted in GCC. It was making build +fail in VulkanCommandBuffer. + +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc: In member function 'void gpu::VulkanCommandBuffer::TransitionImageLayout(VkImage, VkImageLayout, VkImageLayout)': +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:214:7: error: expected primary-expression before '.' token + .subresourceRange.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT, + ^ +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:215:7: error: expected primary-expression before '.' token + .subresourceRange.baseMipLevel = 0, + ^ +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:216:7: error: expected primary-expression before '.' token + .subresourceRange.levelCount = 1, + ^ +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:217:7: error: expected primary-expression before '.' token + .subresourceRange.baseArrayLayer = 0, + ^ +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:218:7: error: expected primary-expression before '.' token + .subresourceRange.layerCount = 1, + ^ +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc: In member function 'void gpu::VulkanCommandBuffer::CopyBufferToImage(VkBuffer, VkImage, uint32_t, uint32_t, uint32_t, uint32_t)': +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:235:7: error: expected primary-expression before '.' token + .imageSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT, + ^ +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:236:7: error: expected primary-expression before '.' token + .imageSubresource.mipLevel = 0, + ^ +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:237:7: error: expected primary-expression before '.' token + .imageSubresource.baseArrayLayer = 0, + ^ +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:238:7: error: expected primary-expression before '.' token + .imageSubresource.layerCount = 1, + ^ +Bug: 819294 + +Change-Id: I999abece0c727e77964789183642ba62009c2c22 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1651802 +Commit-Queue: José Dapena Paz +Reviewed-by: Antoine Labour +Cr-Commit-Position: refs/heads/master@{#668033} +--- + +diff --git a/gpu/vulkan/vulkan_command_buffer.cc b/gpu/vulkan/vulkan_command_buffer.cc +index ba776e4..4f14c85 100644 +--- a/gpu/vulkan/vulkan_command_buffer.cc ++++ b/gpu/vulkan/vulkan_command_buffer.cc +@@ -207,21 +207,20 @@ + void VulkanCommandBuffer::TransitionImageLayout(VkImage image, + VkImageLayout old_layout, + VkImageLayout new_layout) { +- VkImageMemoryBarrier barrier = { +- .sType = VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER, +- .srcAccessMask = GetAccessMask(old_layout), +- .dstAccessMask = GetAccessMask(new_layout), +- .oldLayout = old_layout, +- .newLayout = new_layout, +- .srcQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED, +- .dstQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED, +- .image = image, +- .subresourceRange.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT, +- .subresourceRange.baseMipLevel = 0, +- .subresourceRange.levelCount = 1, +- .subresourceRange.baseArrayLayer = 0, +- .subresourceRange.layerCount = 1, +- }; ++ VkImageMemoryBarrier barrier = {}; ++ barrier.sType = VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER; ++ barrier.srcAccessMask = GetAccessMask(old_layout); ++ barrier.dstAccessMask = GetAccessMask(new_layout); ++ barrier.oldLayout = old_layout; ++ barrier.newLayout = new_layout; ++ barrier.srcQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED; ++ barrier.dstQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED; ++ barrier.image = image; ++ barrier.subresourceRange.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT; ++ barrier.subresourceRange.baseMipLevel = 0; ++ barrier.subresourceRange.levelCount = 1; ++ barrier.subresourceRange.baseArrayLayer = 0; ++ barrier.subresourceRange.layerCount = 1; + vkCmdPipelineBarrier(command_buffer_, GetPipelineStageFlags(old_layout), + GetPipelineStageFlags(new_layout), 0, 0, nullptr, 0, + nullptr, 1, &barrier); +@@ -233,17 +232,16 @@ + uint32_t buffer_height, + uint32_t width, + uint32_t height) { +- VkBufferImageCopy region = { +- .bufferOffset = 0, +- .bufferRowLength = buffer_width, +- .bufferImageHeight = buffer_height, +- .imageSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT, +- .imageSubresource.mipLevel = 0, +- .imageSubresource.baseArrayLayer = 0, +- .imageSubresource.layerCount = 1, +- .imageOffset = {0, 0, 0}, +- .imageExtent = {width, height, 1}, +- }; ++ VkBufferImageCopy region = {}; ++ region.bufferOffset = 0; ++ region.bufferRowLength = buffer_width; ++ region.bufferImageHeight = buffer_height; ++ region.imageSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT; ++ region.imageSubresource.mipLevel = 0; ++ region.imageSubresource.baseArrayLayer = 0; ++ region.imageSubresource.layerCount = 1; ++ region.imageOffset = {0, 0, 0}; ++ region.imageExtent = {width, height, 1}; + vkCmdCopyBufferToImage(command_buffer_, buffer, image, + VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, 1, ®ion); + } diff --git a/chromium.spec b/chromium.spec index 1d3a256..602b236 100644 --- a/chromium.spec +++ b/chromium.spec @@ -261,6 +261,13 @@ Patch45: chromium-75.0.3770.80-grpc-gettid-fix.patch # fix v8 compile with gcc # https://chromium.googlesource.com/v8/v8/+/3b8c624bda58d05aea80dd9626cd550537d6ac3f%5E%21/#F1 Patch46: chromium-75.0.3770.100-fix-v8-gcc.patch +# Fix Vulkan compilation with gcc +# https://chromium.googlesource.com/chromium/src/+/fdb3bb1f8c41d044a5b0cb80257a26dd3c8f83a3 +Patch47: chromium-76.0.3809.100-gcc-vulkan.patch +# https://chromium-review.googlesource.com/c/chromium/src/+/1645297 +Patch48: chromium-76.0.3809.100-gcc-cc-no-except.patch +# https://chromium.googlesource.com/chromium/src.git/+/502e6e42633d2571c8236c8649b031fe9915eb5b +Patch49: chromium-76.0.3809.100-gcc-net-fetcher.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -818,6 +825,9 @@ udev. %patch44 -p1 -b .pure-virtual-fix %patch45 -p1 -b .gettid-fix %patch46 -p1 -b .fix-v8-gcc +%patch47 -p1 -b .gcc-vulkan +%patch48 -p1 -b .gcc-cc-no-except +%patch49 -p1 -b .gcc-net-fetcher # EPEL specific patches %if 0%{?rhel} == 7 @@ -1064,6 +1074,7 @@ ln -s %{_bindir}/node third_party/node/linux/node-linux-x64/bin/node # Remove most of the bundled libraries. Libraries specified below (taken from # Gentoo's Chromium ebuild) are the libraries that needs to be preserved. build/linux/unbundle/remove_bundled_libraries.py \ + 'base/third_party/cityhash' \ 'base/third_party/dmg_fp' \ 'base/third_party/dynamic_annotations' \ 'base/third_party/icu' \ @@ -1104,6 +1115,8 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/blink' \ 'third_party/boringssl' \ 'third_party/boringssl/src/third_party/fiat' \ + 'third_party/boringssl/src/third_party/sike' \ + 'third_party/boringssl/linux-x86_64/crypto/third_party/sike/' \ 'third_party/breakpad' \ 'third_party/breakpad/breakpad/src/third_party/curl' \ 'third_party/brotli' \ @@ -1229,6 +1242,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/sinonjs' \ 'third_party/skia' \ 'third_party/skia/include/third_party/vulkan' \ + 'third_party/skia/include/third_party/skcms' \ 'third_party/skia/third_party/gif' \ 'third_party/skia/third_party/skcms' \ 'third_party/skia/third_party/vulkan' \ diff --git a/get_free_ffmpeg_source_files.py b/get_free_ffmpeg_source_files.py index 76c73ae..f2225ea 100755 --- a/get_free_ffmpeg_source_files.py +++ b/get_free_ffmpeg_source_files.py @@ -41,9 +41,9 @@ def parse_sources(input_sources, output_sources, arch_not_arm): append_sources (block[1], output_sources) -def parse_ffmpeg_gyni_file(gyni_path, arch_not_arm): +def parse_ffmpeg_gni_file(gni_path, arch_not_arm): - with open(gyni_path, "r") as input_file: + with open(gni_path, "r") as input_file: content = input_file.read().replace('\n', '') output_sources = [] @@ -62,7 +62,7 @@ def parse_ffmpeg_gyni_file(gyni_path, arch_not_arm): limitations = ['ffmpeg_branding == "Chrome"', 'ffmpeg_branding == "ChromeOS"'] if ('use_linux_config' in condition) and not any(limitation in condition for limitation in limitations): if (arch_not_arm): - if ('x64' in condition) or ('x86' in condition): + if ('x64' in condition) or ('x86' in condition) or ('use_linux_config' in condition): parse_sources (block[1], output_sources, arch_not_arm) inserted = True else: @@ -79,4 +79,4 @@ def parse_ffmpeg_gyni_file(gyni_path, arch_not_arm): if __name__ == "__main__": path = "%s/third_party/ffmpeg/ffmpeg_generated.gni" % sys.argv[1] - parse_ffmpeg_gyni_file (path, False if sys.argv[2] == "0" else True) + parse_ffmpeg_gni_file (path, False if sys.argv[2] == "0" else True) diff --git a/sources b/sources index 778c103..4e53fd1 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-76.0.3809.100-clean.tar.xz) = ad250b8cd0a01297fdff85c12a4dca85477cf027a68c0a9f7a3bc93b825772d17ddd062a89020ae954def781f19fe44beedb33ec8a86f3c12af290edb43d6ee9 +SHA512 (chromium-76.0.3809.100-clean.tar.xz) = f9fecad99618dffbfa3331b77dd82244447382761ca864380ea145d58f4bd90bb1c0fd3d433aca7d71f63e24c4120bff15c3a4dd9b86e94096cdf31c02b80cd5 From 1a67b56d44deb64d939d0a00e018ff038d58a703 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 14 Aug 2019 14:38:51 +0200 Subject: [PATCH 0354/1449] Backport more build fixes from upstream --- ....3809.100-gcc-ambigous-instantiation.patch | 39 +++ ...0.3809.100-gcc-feature-policy-parser.patch | 76 ++++++ ...0.3809.100-gcc-hasfraction-constexpr.patch | 32 +++ ...100-gcc-move-explicit-initialization.patch | 97 ++++++++ ...ium-76.0.3809.100-quiche-compile-fix.patch | 225 ++++++++++++++++++ ...m-76.0.3809.100-throttling-dead-beef.patch | 30 +++ ...ium-76.0.3809.100-weak-ptr-no-except.patch | 66 +++++ chromium.spec | 21 ++ 8 files changed, 586 insertions(+) create mode 100644 chromium-76.0.3809.100-gcc-ambigous-instantiation.patch create mode 100644 chromium-76.0.3809.100-gcc-feature-policy-parser.patch create mode 100644 chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch create mode 100644 chromium-76.0.3809.100-gcc-move-explicit-initialization.patch create mode 100644 chromium-76.0.3809.100-quiche-compile-fix.patch create mode 100644 chromium-76.0.3809.100-throttling-dead-beef.patch create mode 100644 chromium-76.0.3809.100-weak-ptr-no-except.patch diff --git a/chromium-76.0.3809.100-gcc-ambigous-instantiation.patch b/chromium-76.0.3809.100-gcc-ambigous-instantiation.patch new file mode 100644 index 0000000..587abf3 --- /dev/null +++ b/chromium-76.0.3809.100-gcc-ambigous-instantiation.patch @@ -0,0 +1,39 @@ +From 52b5ceac95b67491b1c71f0ef9a32b778bbbaa2e Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Wed, 05 Jun 2019 19:46:55 +0000 +Subject: [PATCH] GCC: avoid ambiguous NoDestructor creation in GetNeverSniffedMimeTypes. + +Use brace-list notation to wrap the already existing brace-list for +initializing the flat-set. This resolves an ambiguous instantiation +in GCC. + +Bug: 819294 +Change-Id: I89ddf12522d62a5140a8c2c41dc98e30ec7a0e78 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645774 +Reviewed-by: Matt Menke +Commit-Queue: José Dapena Paz +Cr-Commit-Position: refs/heads/master@{#666401} +--- + +diff --git a/services/network/cross_origin_read_blocking.cc b/services/network/cross_origin_read_blocking.cc +index 30999c0..60a03f6 100644 +--- a/services/network/cross_origin_read_blocking.cc ++++ b/services/network/cross_origin_read_blocking.cc +@@ -211,7 +211,7 @@ + // confirmation sniffing because images, scripts, etc. are frequently + // mislabelled by http servers as HTML/JSON/XML). + base::flat_set& GetNeverSniffedMimeTypes() { +- static base::NoDestructor> s_types({ ++ static base::NoDestructor> s_types{{ + // The list below has been populated based on most commonly used content + // types according to HTTP Archive - see: + // https://github.com/whatwg/fetch/issues/860#issuecomment-457330454 +@@ -224,7 +224,7 @@ + "application/x-www-form-urlencoded", + "application/zip", + "text/event-stream", +- }); ++ }}; + + // All items need to be lower-case, to support case-insensitive comparisons + // later. diff --git a/chromium-76.0.3809.100-gcc-feature-policy-parser.patch b/chromium-76.0.3809.100-gcc-feature-policy-parser.patch new file mode 100644 index 0000000..0dbffd5 --- /dev/null +++ b/chromium-76.0.3809.100-gcc-feature-policy-parser.patch @@ -0,0 +1,76 @@ +From 0aca7b8dea0f52ba7bd58dfce4ac236ee60670a8 Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Tue, 04 Jun 2019 19:44:58 +0200 +Subject: [PATCH] GCC: FeaturePolicyParser ParseValueForFuzzer is not in anonymous namespace + +Compilation fails because we are declaring ParseValueForFuzzer as friend method, +but we are declaring it is in anonymous namespace. Moving to global namespace +still fails (in this case in Clang). + +So final solution is making it a public static method of FeaturePolicyParser. + +Bug: 819294 +Change-Id: Iea307cb6faef675b748d6eb5da2175dcbb17fdc7 +--- + +diff --git a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc +index 3b7f4a9..eaee409 100644 +--- a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc ++++ b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc +@@ -317,6 +317,13 @@ + return value; + } + ++void FeaturePolicyParser::ParseValueForFuzzer( ++ blink::mojom::PolicyValueType feature_type, ++ const WTF::String& value_string) { ++ bool ok; ++ ParseValueForType(feature_type, value_string, &ok); ++} ++ + bool IsFeatureDeclared(mojom::FeaturePolicyFeature feature, + const ParsedFeaturePolicy& policy) { + return std::any_of(policy.begin(), policy.end(), +diff --git a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h +index fd25d90..36af405 100644 +--- a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h ++++ b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h +@@ -16,9 +16,6 @@ + #include "third_party/blink/renderer/platform/wtf/text/wtf_string.h" + #include "third_party/blink/renderer/platform/wtf/vector.h" + +-// Forward declare for friendship. +-void ParseValueForFuzzer(blink::mojom::PolicyValueType, const WTF::String&); +- + namespace blink { + + class Document; +@@ -79,8 +76,9 @@ + const FeatureNameMap& feature_names, + ExecutionContext* execution_context = nullptr); + ++ static void ParseValueForFuzzer(mojom::PolicyValueType, const String&); ++ + private: +- friend void ::ParseValueForFuzzer(mojom::PolicyValueType, const String&); + static PolicyValue GetFallbackValueForFeature( + mojom::FeaturePolicyFeature feature); + static PolicyValue ParseValueForType(mojom::PolicyValueType feature_type, +diff --git a/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc b/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc +index 7f8e6aa..53350e43 100644 +--- a/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc ++++ b/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc +@@ -23,9 +23,9 @@ + extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) { + static blink::BlinkFuzzerTestSupport test_support = + blink::BlinkFuzzerTestSupport(); +- ParseValueForFuzzer(blink::mojom::PolicyValueType::kBool, +- WTF::String(data, size)); +- ParseValueForFuzzer(blink::mojom::PolicyValueType::kDecDouble, +- WTF::String(data, size)); ++ blink::FeaturePolicyParser::ParseValueForFuzzer( ++ blink::mojom::PolicyValueType::kBool, WTF::String(data, size)); ++ blink::FeaturePolicyParser::ParseValueForFuzzer( ++ blink::mojom::PolicyValueType::kDecDouble, WTF::String(data, size)); + return 0; + } diff --git a/chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch b/chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch new file mode 100644 index 0000000..26bba05 --- /dev/null +++ b/chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch @@ -0,0 +1,32 @@ +From cf6d6b40d711fce93a24a2cf517fa3becdbae8bb Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Wed, 05 Jun 2019 17:18:40 +0000 +Subject: [PATCH] Make blink::LayoutUnit::HasFraction constexpr + +Other HasFraction methods as in PhysicalUnit are declared already +constexpr and using it. It breaks GCC build. + +Bug: 819294. +Change-Id: I0c4bd9bd206d45cf31f7fa815ce8533718a425cb +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645222 +Reviewed-by: vmpstr +Reviewed-by: Xianzhu Wang +Commit-Queue: José Dapena Paz +Cr-Commit-Position: refs/heads/master@{#666336} +--- + +diff --git a/third_party/blink/renderer/platform/geometry/layout_unit.h b/third_party/blink/renderer/platform/geometry/layout_unit.h +index f073986..b6dbc76 100644 +--- a/third_party/blink/renderer/platform/geometry/layout_unit.h ++++ b/third_party/blink/renderer/platform/geometry/layout_unit.h +@@ -202,7 +202,9 @@ + return value_ > 0 ? LayoutUnit() : *this; + } + +- bool HasFraction() const { return RawValue() % kFixedPointDenominator; } ++ constexpr bool HasFraction() const { ++ return RawValue() % kFixedPointDenominator; ++ } + + LayoutUnit Fraction() const { + // Compute fraction using the mod operator to preserve the sign of the value diff --git a/chromium-76.0.3809.100-gcc-move-explicit-initialization.patch b/chromium-76.0.3809.100-gcc-move-explicit-initialization.patch new file mode 100644 index 0000000..1d4b90f --- /dev/null +++ b/chromium-76.0.3809.100-gcc-move-explicit-initialization.patch @@ -0,0 +1,97 @@ +From dcb55fb8f18abe5f43d260aa67b14b2dc996f992 Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Tue, 11 Jun 2019 08:00:13 +0000 +Subject: [PATCH] GCC: move explicit specialization out of RunInfo + +Explicit specialization in non-namespace scope is not allowed in C++, and GCC breaks +build because of that. Move the template specializations out of RunInfo declaration +in shape_result_inline_headeres.h to fix the GCC build issue. + +Bug: 819294 +Change-Id: Id083852bcf8e9efbdc911fdad28fd8767d2905d0 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1651728 +Reviewed-by: Kinuko Yasuda +Commit-Queue: José Dapena Paz +Cr-Commit-Position: refs/heads/master@{#667901} +--- + +diff --git a/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h b/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h +index 76ee6091..c14d3a0 100644 +--- a/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h ++++ b/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h +@@ -251,37 +251,6 @@ + template + struct iterator final {}; + +- // For non-zero glyph offset array +- template <> +- struct iterator final { +- // The constructor for ShapeResult +- explicit iterator(const GlyphOffsetArray& array) +- : pointer(array.storage_.get()) { +- DCHECK(pointer); +- } +- +- // The constructor for ShapeResultView +- explicit iterator(const GlyphDataRange& range) : pointer(range.offsets) { +- DCHECK(pointer); +- } +- +- GlyphOffset operator*() const { return *pointer; } +- void operator++() { ++pointer; } +- +- const GlyphOffset* pointer; +- }; +- +- // For zero glyph offset array +- template <> +- struct iterator final { +- explicit iterator(const GlyphOffsetArray& array) { +- DCHECK(!array.HasStorage()); +- } +- explicit iterator(const GlyphDataRange& range) { DCHECK(!range.offsets); } +- GlyphOffset operator*() const { return GlyphOffset(); } +- void operator++() {} +- }; +- + template + iterator GetIterator() const { + return iterator(*this); +@@ -495,6 +464,37 @@ + float width_; + }; + ++// For non-zero glyph offset array ++template <> ++struct ShapeResult::RunInfo::GlyphOffsetArray::iterator final { ++ // The constructor for ShapeResult ++ explicit iterator(const GlyphOffsetArray& array) ++ : pointer(array.storage_.get()) { ++ DCHECK(pointer); ++ } ++ ++ // The constructor for ShapeResultView ++ explicit iterator(const GlyphDataRange& range) : pointer(range.offsets) { ++ DCHECK(pointer); ++ } ++ ++ GlyphOffset operator*() const { return *pointer; } ++ void operator++() { ++pointer; } ++ ++ const GlyphOffset* pointer; ++}; ++ ++// For zero glyph offset array ++template <> ++struct ShapeResult::RunInfo::GlyphOffsetArray::iterator final { ++ explicit iterator(const GlyphOffsetArray& array) { ++ DCHECK(!array.HasStorage()); ++ } ++ explicit iterator(const GlyphDataRange& range) { DCHECK(!range.offsets); } ++ GlyphOffset operator*() const { return GlyphOffset(); } ++ void operator++() {} ++}; ++ + // Find the range of HarfBuzzRunGlyphData for the specified character index + // range. This function uses binary search twice, hence O(2 log n). + inline ShapeResult::RunInfo::GlyphDataRange diff --git a/chromium-76.0.3809.100-quiche-compile-fix.patch b/chromium-76.0.3809.100-quiche-compile-fix.patch new file mode 100644 index 0000000..98789d9 --- /dev/null +++ b/chromium-76.0.3809.100-quiche-compile-fix.patch @@ -0,0 +1,225 @@ +diff -up chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc.quiche-compile-fix chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc +--- chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc.quiche-compile-fix 2019-08-14 09:58:07.721193200 +0200 ++++ chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc 2019-08-14 09:59:33.131041525 +0200 +@@ -62,37 +62,37 @@ const size_t kStatelessResetTokenLength + std::string TransportParameterIdToString( + TransportParameters::TransportParameterId param_id) { + switch (param_id) { +- case kOriginalConnectionId: ++ case TransportParameters::kOriginalConnectionId: + return "original_connection_id"; +- case kIdleTimeout: ++ case TransportParameters::kIdleTimeout: + return "idle_timeout"; +- case kStatelessResetToken: ++ case TransportParameters::kStatelessResetToken: + return "stateless_reset_token"; +- case kMaxPacketSize: ++ case TransportParameters::kMaxPacketSize: + return "max_packet_size"; +- case kInitialMaxData: ++ case TransportParameters::kInitialMaxData: + return "initial_max_data"; +- case kInitialMaxStreamDataBidiLocal: ++ case TransportParameters::kInitialMaxStreamDataBidiLocal: + return "initial_max_stream_data_bidi_local"; +- case kInitialMaxStreamDataBidiRemote: ++ case TransportParameters::kInitialMaxStreamDataBidiRemote: + return "initial_max_stream_data_bidi_remote"; +- case kInitialMaxStreamDataUni: ++ case TransportParameters::kInitialMaxStreamDataUni: + return "initial_max_stream_data_uni"; +- case kInitialMaxStreamsBidi: ++ case TransportParameters::kInitialMaxStreamsBidi: + return "initial_max_streams_bidi"; +- case kInitialMaxStreamsUni: ++ case TransportParameters::kInitialMaxStreamsUni: + return "initial_max_streams_uni"; +- case kAckDelayExponent: ++ case TransportParameters::kAckDelayExponent: + return "ack_delay_exponent"; +- case kMaxAckDelay: ++ case TransportParameters::kMaxAckDelay: + return "max_ack_delay"; +- case kDisableMigration: ++ case TransportParameters::kDisableMigration: + return "disable_migration"; +- case kPreferredAddress: ++ case TransportParameters::kPreferredAddress: + return "preferred_address"; +- case kGoogleQuicParam: ++ case TransportParameters::kGoogleQuicParam: + return "google"; +- case kGoogleQuicVersion: ++ case TransportParameters::kGoogleQuicVersion: + return "google-version"; + } + return "Unknown(" + QuicTextUtils::Uint64ToString(param_id) + ")"; +@@ -390,7 +390,7 @@ bool SerializeTransportParameters(const + CBB original_connection_id_param; + if (!in.original_connection_id.IsEmpty()) { + DCHECK_EQ(Perspective::IS_SERVER, in.perspective); +- if (!CBB_add_u16(¶ms, kOriginalConnectionId) || ++ if (!CBB_add_u16(¶ms, TransportParameters::kOriginalConnectionId) || + !CBB_add_u16_length_prefixed(¶ms, &original_connection_id_param) || + !CBB_add_bytes( + &original_connection_id_param, +@@ -412,7 +412,7 @@ bool SerializeTransportParameters(const + if (!in.stateless_reset_token.empty()) { + DCHECK_EQ(kStatelessResetTokenLength, in.stateless_reset_token.size()); + DCHECK_EQ(Perspective::IS_SERVER, in.perspective); +- if (!CBB_add_u16(¶ms, kStatelessResetToken) || ++ if (!CBB_add_u16(¶ms, TransportParameters::kStatelessResetToken) || + !CBB_add_u16_length_prefixed(¶ms, &stateless_reset_token_param) || + !CBB_add_bytes(&stateless_reset_token_param, + in.stateless_reset_token.data(), +@@ -438,7 +438,7 @@ bool SerializeTransportParameters(const + + // disable_migration + if (in.disable_migration) { +- if (!CBB_add_u16(¶ms, kDisableMigration) || ++ if (!CBB_add_u16(¶ms, TransportParameters::kDisableMigration) || + !CBB_add_u16(¶ms, 0u)) { // 0 is the length of this parameter. + QUIC_BUG << "Failed to write disable_migration for " << in; + return false; +@@ -458,7 +458,7 @@ bool SerializeTransportParameters(const + QUIC_BUG << "Bad lengths " << *in.preferred_address; + return false; + } +- if (!CBB_add_u16(¶ms, kPreferredAddress) || ++ if (!CBB_add_u16(¶ms, TransportParameters::kPreferredAddress) || + !CBB_add_u16_length_prefixed(¶ms, &preferred_address_params) || + !CBB_add_bytes( + &preferred_address_params, +@@ -491,7 +491,7 @@ bool SerializeTransportParameters(const + if (in.google_quic_params) { + const QuicData& serialized_google_quic_params = + in.google_quic_params->GetSerialized(); +- if (!CBB_add_u16(¶ms, kGoogleQuicParam) || ++ if (!CBB_add_u16(¶ms, TransportParameters::kGoogleQuicParam) || + !CBB_add_u16_length_prefixed(¶ms, &google_quic_params) || + !CBB_add_bytes(&google_quic_params, + reinterpret_cast( +@@ -505,7 +505,7 @@ bool SerializeTransportParameters(const + + // Google-specific version extension. + CBB google_version_params; +- if (!CBB_add_u16(¶ms, kGoogleQuicVersion) || ++ if (!CBB_add_u16(¶ms, TransportParameters::kGoogleQuicVersion) || + !CBB_add_u16_length_prefixed(¶ms, &google_version_params) || + !CBB_add_u32(&google_version_params, in.version)) { + QUIC_BUG << "Failed to write Google version extension for " << in; +@@ -565,7 +565,7 @@ bool ParseTransportParameters(const uint + } + bool parse_success = true; + switch (param_id) { +- case kOriginalConnectionId: ++ case TransportParameters::kOriginalConnectionId: + if (!out->original_connection_id.IsEmpty()) { + QUIC_DLOG(ERROR) << "Received a second original connection ID"; + return false; +@@ -581,10 +581,10 @@ bool ParseTransportParameters(const uint + CBS_len(&value)); + } + break; +- case kIdleTimeout: ++ case TransportParameters::kIdleTimeout: + parse_success = out->idle_timeout_milliseconds.ReadFromCbs(&value); + break; +- case kStatelessResetToken: ++ case TransportParameters::kStatelessResetToken: + if (!out->stateless_reset_token.empty()) { + QUIC_DLOG(ERROR) << "Received a second stateless reset token"; + return false; +@@ -597,36 +597,36 @@ bool ParseTransportParameters(const uint + out->stateless_reset_token.assign(CBS_data(&value), + CBS_data(&value) + CBS_len(&value)); + break; +- case kMaxPacketSize: ++ case TransportParameters::kMaxPacketSize: + parse_success = out->max_packet_size.ReadFromCbs(&value); + break; +- case kInitialMaxData: ++ case TransportParameters::kInitialMaxData: + parse_success = out->initial_max_data.ReadFromCbs(&value); + break; +- case kInitialMaxStreamDataBidiLocal: ++ case TransportParameters::kInitialMaxStreamDataBidiLocal: + parse_success = + out->initial_max_stream_data_bidi_local.ReadFromCbs(&value); + break; +- case kInitialMaxStreamDataBidiRemote: ++ case TransportParameters::kInitialMaxStreamDataBidiRemote: + parse_success = + out->initial_max_stream_data_bidi_remote.ReadFromCbs(&value); + break; +- case kInitialMaxStreamDataUni: ++ case TransportParameters::kInitialMaxStreamDataUni: + parse_success = out->initial_max_stream_data_uni.ReadFromCbs(&value); + break; +- case kInitialMaxStreamsBidi: ++ case TransportParameters::kInitialMaxStreamsBidi: + parse_success = out->initial_max_streams_bidi.ReadFromCbs(&value); + break; +- case kInitialMaxStreamsUni: ++ case TransportParameters::kInitialMaxStreamsUni: + parse_success = out->initial_max_streams_uni.ReadFromCbs(&value); + break; +- case kAckDelayExponent: ++ case TransportParameters::kAckDelayExponent: + parse_success = out->ack_delay_exponent.ReadFromCbs(&value); + break; +- case kMaxAckDelay: ++ case TransportParameters::kMaxAckDelay: + parse_success = out->max_ack_delay.ReadFromCbs(&value); + break; +- case kDisableMigration: ++ case TransportParameters::kDisableMigration: + if (out->disable_migration) { + QUIC_DLOG(ERROR) << "Received a second disable migration"; + return false; +@@ -638,7 +638,7 @@ bool ParseTransportParameters(const uint + } + out->disable_migration = true; + break; +- case kPreferredAddress: { ++ case TransportParameters::kPreferredAddress: { + uint16_t ipv4_port, ipv6_port; + in_addr ipv4_address; + in6_addr ipv6_address; +@@ -692,7 +692,7 @@ bool ParseTransportParameters(const uint + QuicMakeUnique( + preferred_address); + } break; +- case kGoogleQuicParam: { ++ case TransportParameters::kGoogleQuicParam: { + if (out->google_quic_params) { + QUIC_DLOG(ERROR) << "Received a second Google parameter"; + return false; +@@ -701,7 +701,7 @@ bool ParseTransportParameters(const uint + reinterpret_cast(CBS_data(&value)), CBS_len(&value)); + out->google_quic_params = CryptoFramer::ParseMessage(serialized_params); + } break; +- case kGoogleQuicVersion: { ++ case TransportParameters::kGoogleQuicVersion: { + if (!CBS_get_u32(&value, &out->version)) { + QUIC_DLOG(ERROR) << "Failed to parse Google version extension"; + return false; +diff -up chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc.quiche-compile-fix chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc +--- chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc.quiche-compile-fix 2019-08-14 09:59:19.139902052 +0200 ++++ chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc 2019-08-14 09:59:33.132041535 +0200 +@@ -2,10 +2,12 @@ + // Use of this source code is governed by a BSD-style license that can be + // found in the LICENSE file. + +-#include +- + #include "net/third_party/quiche/src/quic/core/quic_socket_address_coder.h" + ++#include ++#include ++#include ++ + namespace quic { + + namespace { diff --git a/chromium-76.0.3809.100-throttling-dead-beef.patch b/chromium-76.0.3809.100-throttling-dead-beef.patch new file mode 100644 index 0000000..5e392e6 --- /dev/null +++ b/chromium-76.0.3809.100-throttling-dead-beef.patch @@ -0,0 +1,30 @@ +From 53bb5a463ee956c70230eaa5450022185d0ddc3c Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Thu, 06 Jun 2019 07:54:05 +0000 +Subject: [PATCH] ThrottlingController::Liveness needs to be uint32_t + +We are setting kAlive and kDead values assigning values that +are bigger than the maximum signed int32. It is better to use +uint32_t in this case. + +Bug: 819294 +Change-Id: If72b48291a66a3a9db24b4c8e2d11d31936a66ee +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645772 +Reviewed-by: Kinuko Yasuda +Commit-Queue: José Dapena Paz +Cr-Commit-Position: refs/heads/master@{#666619} +--- + +diff --git a/services/network/throttling/throttling_controller.h b/services/network/throttling/throttling_controller.h +index 43751c4..3c6f87b 100644 +--- a/services/network/throttling/throttling_controller.h ++++ b/services/network/throttling/throttling_controller.h +@@ -38,7 +38,7 @@ + + // TODO(https://crbug.com/960874): Debugging code to try and shed some light + // on why the owned maps are invalid. +- enum class Liveness : int32_t { ++ enum class Liveness : uint32_t { + kAlive = 0xCA11AB13, + kDead = 0xDEADBEEF, + }; diff --git a/chromium-76.0.3809.100-weak-ptr-no-except.patch b/chromium-76.0.3809.100-weak-ptr-no-except.patch new file mode 100644 index 0000000..a392971 --- /dev/null +++ b/chromium-76.0.3809.100-weak-ptr-no-except.patch @@ -0,0 +1,66 @@ +From 0370838723e786b51e7ec8ab55014811ec3e3aa3 Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Thu, 18 Jul 2019 14:26:11 +0200 +Subject: [PATCH] Make base::WeakPtr move constructor/operator noexcept to fix GCC build regression + +A GCC build regression has happened on DisjointRangeLockManager, as its move +operator and constructor were declared noexcept. This was failing because the +default implementation depended on base::WeakPtr, that did not provide +noexcept declaration for them. + +So make base::WeakPtr noexcept. + +Bug: 819294 +Change-Id: I936784b881c7c1afea136ceedbe9341e76464f95 +--- + +diff --git a/base/memory/weak_ptr.cc b/base/memory/weak_ptr.cc +index 64fd499..0efcc44 100644 +--- a/base/memory/weak_ptr.cc ++++ b/base/memory/weak_ptr.cc +@@ -46,7 +46,7 @@ + + WeakReference::~WeakReference() = default; + +-WeakReference::WeakReference(WeakReference&& other) = default; ++WeakReference::WeakReference(WeakReference&& other) noexcept = default; + + WeakReference::WeakReference(const WeakReference& other) = default; + +diff --git a/base/memory/weak_ptr.h b/base/memory/weak_ptr.h +index 72b5f1f..ccd22fd13 100644 +--- a/base/memory/weak_ptr.h ++++ b/base/memory/weak_ptr.h +@@ -116,9 +116,9 @@ + explicit WeakReference(const scoped_refptr& flag); + ~WeakReference(); + +- WeakReference(WeakReference&& other); ++ WeakReference(WeakReference&& other) noexcept; + WeakReference(const WeakReference& other); +- WeakReference& operator=(WeakReference&& other) = default; ++ WeakReference& operator=(WeakReference&& other) noexcept = default; + WeakReference& operator=(const WeakReference& other) = default; + + bool IsValid() const; +@@ -153,9 +153,9 @@ + ~WeakPtrBase(); + + WeakPtrBase(const WeakPtrBase& other) = default; +- WeakPtrBase(WeakPtrBase&& other) = default; ++ WeakPtrBase(WeakPtrBase&& other) noexcept = default; + WeakPtrBase& operator=(const WeakPtrBase& other) = default; +- WeakPtrBase& operator=(WeakPtrBase&& other) = default; ++ WeakPtrBase& operator=(WeakPtrBase&& other) noexcept = default; + + void reset() { + ref_ = internal::WeakReference(); +@@ -236,7 +236,7 @@ + ptr_ = reinterpret_cast(t); + } + template +- WeakPtr(WeakPtr&& other) : WeakPtrBase(std::move(other)) { ++ WeakPtr(WeakPtr&& other) noexcept : WeakPtrBase(std::move(other)) { + // Need to cast from U* to T* to do pointer adjustment in case of multiple + // inheritance. This also enforces the "U is a T" rule. + T* t = reinterpret_cast(other.ptr_); diff --git a/chromium.spec b/chromium.spec index 602b236..383bfa9 100644 --- a/chromium.spec +++ b/chromium.spec @@ -268,6 +268,20 @@ Patch47: chromium-76.0.3809.100-gcc-vulkan.patch Patch48: chromium-76.0.3809.100-gcc-cc-no-except.patch # https://chromium.googlesource.com/chromium/src.git/+/502e6e42633d2571c8236c8649b031fe9915eb5b Patch49: chromium-76.0.3809.100-gcc-net-fetcher.patch +# https://quiche.googlesource.com/quiche.git/+/9424add9d73432a794b7944790253213cce6dcb8 +Patch50: chromium-76.0.3809.100-quiche-compile-fix.patch +# https://chromium.googlesource.com/chromium/src/+/53bb5a463ee956c70230eaa5450022185d0ddc3c +Patch51: chromium-76.0.3809.100-throttling-dead-beef.patch +# https://chromium.googlesource.com/chromium/src/+/52b5ceac95b67491b1c71f0ef9a32b778bbbaa2e +Patch52: chromium-76.0.3809.100-gcc-ambigous-instantiation.patch +# https://chromium.googlesource.com/chromium/src.git/+/715cb38eac889625de0c429d2672562188b4107e +Patch53: chromium-76.0.3809.100-weak-ptr-no-except.patch +# https://chromium.googlesource.com/chromium/src.git/+/c6afbd59c997c2b64f11abdd1eaef71ae8ea2ddc +Patch54: chromium-76.0.3809.100-gcc-feature-policy-parser.patch +# https://chromium.googlesource.com/chromium/src.git/+/cf6d6b40d711fce93a24a2cf517fa3becdbae8bb +Patch55: chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch +# https://chromium.googlesource.com/chromium/src.git/+/dcb55fb8f18abe5f43d260aa67b14b2dc996f992 +Patch56: chromium-76.0.3809.100-gcc-move-explicit-initialization.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -828,6 +842,13 @@ udev. %patch47 -p1 -b .gcc-vulkan %patch48 -p1 -b .gcc-cc-no-except %patch49 -p1 -b .gcc-net-fetcher +%patch50 -p1 -b .quiche-compile-fix +%patch51 -p1 -b .throttling-dead-beef +%patch52 -p1 -b .gcc-ambigous-instantiation +%patch53 -p1 -b .weak-ptr-no-except +%patch54 -p1 -b .gcc-feature-policy-parser +%patch55 -p1 -b .gcc-hasfraction-constexpr +%patch56 -p1 -b .gcc-move-explicit-initialization # EPEL specific patches %if 0%{?rhel} == 7 From fe364063662ff690dddac23adfbefaa89814446b Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 14 Aug 2019 15:38:35 +0200 Subject: [PATCH 0355/1449] third_party/openscreen need to be preserved --- chromium.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/chromium.spec b/chromium.spec index 383bfa9..f23664a 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1232,6 +1232,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ %if %{freeworld} 'third_party/openh264' \ %endif + 'third_party/openscreen' \ 'third_party/opus' \ 'third_party/ots' \ 'third_party/pdfium' \ From c9aa7a867c3a970130d8fe4c48f6a93c07c0394b Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 14 Aug 2019 15:41:23 +0200 Subject: [PATCH 0356/1449] third_party/boringssl/linux-x86_64/crypto/third_party/sike needs to be preserved --- chromium.spec | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index f23664a..0d575b1 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1137,7 +1137,8 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/boringssl' \ 'third_party/boringssl/src/third_party/fiat' \ 'third_party/boringssl/src/third_party/sike' \ - 'third_party/boringssl/linux-x86_64/crypto/third_party/sike/' \ + 'third_party/boringssl/linux-x86_64/crypto/third_party/sike' \ + 'third_party/boringssl/linux-aarch64/crypto/third_party/sike' \ 'third_party/breakpad' \ 'third_party/breakpad/breakpad/src/third_party/curl' \ 'third_party/brotli' \ From f687cc7a6b92595598b044e4ee85e758be0dbabd Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 14 Aug 2019 09:52:16 -0400 Subject: [PATCH 0357/1449] loosen dependency on chromium-libs in freeworld build --- chromium.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 0d575b1..bf6bdcb 100644 --- a/chromium.spec +++ b/chromium.spec @@ -730,7 +730,7 @@ Shared libraries used by chromium (and chrome-remote-desktop). Summary: Chromium media libraries built with all possible codecs Provides: chromium-libs-media = %{version}-%{release} Provides: chromium-libs-media%{_isa} = %{version}-%{release} -Requires: chromium-libs%{_isa} = %{version}-%{release} +Requires: chromium-libs%{_isa} = %{version} Requires(post): %{_sbindir}/update-alternatives Requires(preun): %{_sbindir}/update-alternatives From e116fd0fc7270d308792bc56e849c5b237539c6c Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 14 Aug 2019 16:52:41 +0200 Subject: [PATCH 0358/1449] Pulseaudio changed the API in 12.99 and we need to adapt the signatures --- chromium-76.0.3809.100-pulse-api-change.patch | 42 +++++++++++++++++++ chromium.spec | 13 +++++- 2 files changed, 54 insertions(+), 1 deletion(-) create mode 100644 chromium-76.0.3809.100-pulse-api-change.patch diff --git a/chromium-76.0.3809.100-pulse-api-change.patch b/chromium-76.0.3809.100-pulse-api-change.patch new file mode 100644 index 0000000..37d3dfa --- /dev/null +++ b/chromium-76.0.3809.100-pulse-api-change.patch @@ -0,0 +1,42 @@ +diff -up chromium-76.0.3809.100/media/audio/pulse/pulse.sigs.pulse_api_change chromium-76.0.3809.100/media/audio/pulse/pulse.sigs +--- chromium-76.0.3809.100/media/audio/pulse/pulse.sigs.pulse_api_change 2019-08-14 16:27:55.057702172 +0200 ++++ chromium-76.0.3809.100/media/audio/pulse/pulse.sigs 2019-08-14 16:37:21.603479886 +0200 +@@ -24,7 +24,7 @@ pa_operation* pa_context_get_source_info + pa_operation* pa_context_get_source_info_by_name(pa_context* c, const char* name, pa_source_info_cb_t cb, void *userdata); + pa_operation* pa_context_get_source_info_list(pa_context* c, pa_source_info_cb_t cb, void* userdata); + pa_operation* pa_context_get_sink_info_list(pa_context* c, pa_sink_info_cb_t cb, void* userdata); +-pa_context_state_t pa_context_get_state(pa_context* c); ++pa_context_state_t pa_context_get_state(const pa_context* c); + pa_context* pa_context_new(pa_mainloop_api* mainloop, const char* name); + pa_operation* pa_context_set_source_volume_by_index(pa_context* c, uint32_t idx, const pa_cvolume* volume, pa_context_success_cb_t cb, void* userdata); + void pa_context_set_state_callback(pa_context* c, pa_context_notify_cb_t cb, void* userdata); +@@ -38,23 +38,23 @@ pa_operation* pa_stream_cork(pa_stream* + int pa_stream_disconnect(pa_stream* s); + int pa_stream_drop(pa_stream *p); + pa_operation* pa_stream_flush(pa_stream* s, pa_stream_success_cb_t cb, void* userdata); +-uint32_t pa_stream_get_device_index(pa_stream* s); ++uint32_t pa_stream_get_device_index(const pa_stream* s); + int pa_stream_get_latency(pa_stream* s, pa_usec_t* r_usec, int* negative); +-pa_stream_state_t pa_stream_get_state(pa_stream* p); ++pa_stream_state_t pa_stream_get_state(const pa_stream* p); + pa_stream* pa_stream_new(pa_context* c, const char* name, const pa_sample_spec* ss, const pa_channel_map * map); + pa_stream* pa_stream_new_with_proplist(pa_context* c, const char* name, const pa_sample_spec* ss, const pa_channel_map* map, pa_proplist* p); + pa_proplist* pa_proplist_new(void); +-int pa_proplist_contains(pa_proplist* p, const char* key); ++int pa_proplist_contains(const pa_proplist* p, const char* key); + void pa_proplist_free(pa_proplist* p); +-const char* pa_proplist_gets(pa_proplist* p, const char* key); ++const char* pa_proplist_gets(const pa_proplist* p, const char* key); + int pa_proplist_sets(pa_proplist* p, const char* key, const char* value); +-size_t pa_stream_readable_size(pa_stream *p); ++size_t pa_stream_readable_size(const pa_stream *p); + int pa_stream_peek(pa_stream* p, const void** data, size_t* nbytes); + void pa_stream_set_read_callback(pa_stream* p, pa_stream_request_cb_t cb, void* userdata); + void pa_stream_set_state_callback(pa_stream* s, pa_stream_notify_cb_t cb, void* userdata); + int pa_stream_write(pa_stream* p, const void* data, size_t nbytes, pa_free_cb_t free_cb, int64_t offset, pa_seek_mode_t seek); + void pa_stream_set_write_callback(pa_stream *p, pa_stream_request_cb_t cb, void *userdata); + void pa_stream_unref(pa_stream* s); +-int pa_context_errno(pa_context *c); ++int pa_context_errno(const pa_context *c); + const char* pa_strerror(int error); + pa_cvolume* pa_cvolume_set(pa_cvolume* a, unsigned channels, pa_volume_t v); diff --git a/chromium.spec b/chromium.spec index bf6bdcb..f91b60b 100644 --- a/chromium.spec +++ b/chromium.spec @@ -141,6 +141,13 @@ BuildRequires: libicu-devel >= 5.4 %global bundleharfbuzz 0 %endif +# Pulseaudio changed the API a little in 12.99.1 +%if 0%{?fedora} > 30 +%global pulseaudioapichange 1 +%else +%global pulseaudioapichange 0 +%endif + ### Google API keys (see http://www.chromium.org/developers/how-tos/api-keys) ### Note: These are for Fedora use ONLY. ### For your own distribution, please get your own set of keys. @@ -306,6 +313,8 @@ Patch202: enable-vaapi.patch Patch203: chromium-75.0.3770.80-vaapi-i686-fpermissive.patch # Fix compatibility with VA-API library (libva) version 1 Patch204: chromium-75.0.3770.80-vaapi-libva1-compatibility.patch +# Pulseaudio changed the API a little in 12.99.1 +Patch205: chromium-76.0.3809.100-pulse-api-change.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ @@ -491,7 +500,6 @@ BuildRequires: pkgconfig(gtk+-3.0) %else BuildRequires: pkgconfig(gtk+-2.0) %endif -BuildRequires: pulseaudio-libs-devel BuildRequires: python2-devel %if 0%{?fedora} > 27 BuildRequires: python2-beautifulsoup4 @@ -871,6 +879,9 @@ udev. %endif %endif +%if 0%{?pulseaudioapichange} +%patch205 -p1 -b .pulseaudioapichange +%endif # Change shebang in all relevant files in this directory and all subdirectories # See `man find` for how the `-exec command {} +` syntax works From 259b8d60635c8d2a70a78e156a68c5c74eac42b7 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 14 Aug 2019 23:17:42 +0200 Subject: [PATCH 0359/1449] Add missing ffmpeg file on aarch64 --- clean_ffmpeg.sh | 1 + sources | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index 2f27435..e190296 100755 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -216,6 +216,7 @@ manual_files=" libavcodec/aarch64/fft_neon.S \ libavcodec/x86/videodsp_init.c \ libavcodec/x86/vorbisdsp_init.c \ libavcodec/autorename_libavcodec_mdct15.c \ + libavcodec/aarch64/autorename_libavcodec_aarch64_fft_neon.S \ libavcodec/bit_depth_template.c \ libavcodec/fft_template.c \ libavcodec/flacdec.c \ diff --git a/sources b/sources index 4e53fd1..d6d53e4 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-76.0.3809.100-clean.tar.xz) = f9fecad99618dffbfa3331b77dd82244447382761ca864380ea145d58f4bd90bb1c0fd3d433aca7d71f63e24c4120bff15c3a4dd9b86e94096cdf31c02b80cd5 +SHA512 (chromium-76.0.3809.100-clean.tar.xz) = ca39cf3df4716293d40ea78d8b6c7beb134340c42051dc5ae243f127729cc13fb60e9d168ccac29d55b4ef47aba598e3211caa8f3a8ed5689748873a36fce753 From e38a4336b16cf4894f1b16e933f89b43929ab2fa Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 14 Aug 2019 23:22:37 +0200 Subject: [PATCH 0360/1449] Update the Pulseaudio's pa_operation_get_state() signature Missed it while updating the Pulseaudio signatures. --- chromium-76.0.3809.100-pulse-api-change.patch | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/chromium-76.0.3809.100-pulse-api-change.patch b/chromium-76.0.3809.100-pulse-api-change.patch index 37d3dfa..d4e2b46 100644 --- a/chromium-76.0.3809.100-pulse-api-change.patch +++ b/chromium-76.0.3809.100-pulse-api-change.patch @@ -1,7 +1,7 @@ -diff -up chromium-76.0.3809.100/media/audio/pulse/pulse.sigs.pulse_api_change chromium-76.0.3809.100/media/audio/pulse/pulse.sigs ---- chromium-76.0.3809.100/media/audio/pulse/pulse.sigs.pulse_api_change 2019-08-14 16:27:55.057702172 +0200 -+++ chromium-76.0.3809.100/media/audio/pulse/pulse.sigs 2019-08-14 16:37:21.603479886 +0200 -@@ -24,7 +24,7 @@ pa_operation* pa_context_get_source_info +diff -up chromium-76.0.3809.100/media/audio/pulse/pulse.sigs.pulse-api-change chromium-76.0.3809.100/media/audio/pulse/pulse.sigs +--- chromium-76.0.3809.100/media/audio/pulse/pulse.sigs.pulse-api-change 2019-08-14 23:18:59.624627870 +0200 ++++ chromium-76.0.3809.100/media/audio/pulse/pulse.sigs 2019-08-14 23:19:41.258104998 +0200 +@@ -24,11 +24,11 @@ pa_operation* pa_context_get_source_info pa_operation* pa_context_get_source_info_by_name(pa_context* c, const char* name, pa_source_info_cb_t cb, void *userdata); pa_operation* pa_context_get_source_info_list(pa_context* c, pa_source_info_cb_t cb, void* userdata); pa_operation* pa_context_get_sink_info_list(pa_context* c, pa_sink_info_cb_t cb, void* userdata); @@ -10,6 +10,11 @@ diff -up chromium-76.0.3809.100/media/audio/pulse/pulse.sigs.pulse_api_change ch pa_context* pa_context_new(pa_mainloop_api* mainloop, const char* name); pa_operation* pa_context_set_source_volume_by_index(pa_context* c, uint32_t idx, const pa_cvolume* volume, pa_context_success_cb_t cb, void* userdata); void pa_context_set_state_callback(pa_context* c, pa_context_notify_cb_t cb, void* userdata); +-pa_operation_state_t pa_operation_get_state(pa_operation* o); ++pa_operation_state_t pa_operation_get_state(const pa_operation* o); + void pa_context_unref(pa_context* c); + void pa_operation_unref(pa_operation* o); + int pa_stream_begin_write(pa_stream* p, void** data, size_t* nbytes); @@ -38,23 +38,23 @@ pa_operation* pa_stream_cork(pa_stream* int pa_stream_disconnect(pa_stream* s); int pa_stream_drop(pa_stream *p); From 27f92858f587dcdf5e5db52227568fcdbd3c064c Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Thu, 15 Aug 2019 07:03:49 +0200 Subject: [PATCH 0361/1449] Backport another upstream build fix --- ....0.3809.100-gcc-initialization-order.patch | 33 +++++++++++++++++++ chromium.spec | 3 ++ 2 files changed, 36 insertions(+) create mode 100644 chromium-76.0.3809.100-gcc-initialization-order.patch diff --git a/chromium-76.0.3809.100-gcc-initialization-order.patch b/chromium-76.0.3809.100-gcc-initialization-order.patch new file mode 100644 index 0000000..3bf394f --- /dev/null +++ b/chromium-76.0.3809.100-gcc-initialization-order.patch @@ -0,0 +1,33 @@ +From 7dc76c8d9f4cfbce7cf11424120aa6f6094916dc Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Wed, 05 Jun 2019 21:09:01 +0000 +Subject: [PATCH] GCC: XSetWindowAttributes struct initialization should keep order of declaration + +XSetWindowAttributes initialization of attributes in GLSurfaceGLX is not in the +same order of the declaration. GCC fails because of that. + +Bug: 819294 +Change-Id: I8a97da980d5961a35a47ae4d0d8d558b85291f1f +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1646253 +Reviewed-by: Zhenyao Mo +Commit-Queue: José Dapena Paz +Cr-Commit-Position: refs/heads/master@{#666436} +--- + +diff --git a/ui/gl/gl_surface_glx.cc b/ui/gl/gl_surface_glx.cc +index f649dd4..0aa6892 100644 +--- a/ui/gl/gl_surface_glx.cc ++++ b/ui/gl/gl_surface_glx.cc +@@ -583,10 +583,10 @@ + + XSetWindowAttributes swa = { + .background_pixmap = 0, +- .bit_gravity = NorthWestGravity, +- .colormap = g_colormap, + .background_pixel = 0, // ARGB(0,0,0,0) for compositing WM + .border_pixel = 0, ++ .bit_gravity = NorthWestGravity, ++ .colormap = g_colormap, + }; + auto value_mask = CWBackPixmap | CWBitGravity | CWColormap | CWBorderPixel; + if (ui::IsCompositingManagerPresent() && diff --git a/chromium.spec b/chromium.spec index f91b60b..64e3243 100644 --- a/chromium.spec +++ b/chromium.spec @@ -289,6 +289,8 @@ Patch54: chromium-76.0.3809.100-gcc-feature-policy-parser.patch Patch55: chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch # https://chromium.googlesource.com/chromium/src.git/+/dcb55fb8f18abe5f43d260aa67b14b2dc996f992 Patch56: chromium-76.0.3809.100-gcc-move-explicit-initialization.patch +# https://chromium.googlesource.com/chromium/src.git/+/7dc76c8d9f4cfbce7cf11424120aa6f6094916dc +Patch57: chromium-76.0.3809.100-gcc-initialization-order.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -857,6 +859,7 @@ udev. %patch54 -p1 -b .gcc-feature-policy-parser %patch55 -p1 -b .gcc-hasfraction-constexpr %patch56 -p1 -b .gcc-move-explicit-initialization +%patch57 -p1 -b .gcc-initialization-order # EPEL specific patches %if 0%{?rhel} == 7 From 1bc7f18b155f4de674dcf1548a08e7957f3ec557 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Thu, 15 Aug 2019 07:10:04 +0200 Subject: [PATCH 0362/1449] Upload the new cleaned tarball with aarch64 sources Previously I forgot to pass the --ffmpegarm while generating the tarball. --- clean_ffmpeg.sh | 1 - sources | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index e190296..2f27435 100755 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -216,7 +216,6 @@ manual_files=" libavcodec/aarch64/fft_neon.S \ libavcodec/x86/videodsp_init.c \ libavcodec/x86/vorbisdsp_init.c \ libavcodec/autorename_libavcodec_mdct15.c \ - libavcodec/aarch64/autorename_libavcodec_aarch64_fft_neon.S \ libavcodec/bit_depth_template.c \ libavcodec/fft_template.c \ libavcodec/flacdec.c \ diff --git a/sources b/sources index d6d53e4..b7a420d 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-76.0.3809.100-clean.tar.xz) = ca39cf3df4716293d40ea78d8b6c7beb134340c42051dc5ae243f127729cc13fb60e9d168ccac29d55b4ef47aba598e3211caa8f3a8ed5689748873a36fce753 +SHA512 (chromium-76.0.3809.100-clean.tar.xz) = 418ade473185717595b47fbf49ad58bd9bf7cece43f9e200108a2f4df1391bc6a09673e7c30a9958205e13650ed220ad289fe3d79d140612ec5c0bb7891fc8c8 From 889d5867f1c13e38a1e521a80639cecfb212da22 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Thu, 15 Aug 2019 21:14:35 +0200 Subject: [PATCH 0363/1449] Backport and create more of the GCC fixes --- ...09.100-gcc-accountinfo-move-noexcept.patch | 53 +++++++++++++++++++ ...0.3809.100-gcc-history-move-noexcept.patch | 42 +++++++++++++++ ...0.3809.100-gcc-no-alignas-and-export.patch | 14 +++++ ...0.3809.100-gcc-themeservice-includes.patch | 36 +++++++++++++ chromium.spec | 14 +++++ 5 files changed, 159 insertions(+) create mode 100644 chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch create mode 100644 chromium-76.0.3809.100-gcc-history-move-noexcept.patch create mode 100644 chromium-76.0.3809.100-gcc-no-alignas-and-export.patch create mode 100644 chromium-76.0.3809.100-gcc-themeservice-includes.patch diff --git a/chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch b/chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch new file mode 100644 index 0000000..5f45a8f --- /dev/null +++ b/chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch @@ -0,0 +1,53 @@ +From 719df31ffd4d52b473509cf77acd9c02ec112acb Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Tue, 04 Jun 2019 18:38:12 +0200 +Subject: [PATCH] GCC: fix noexcept from move constructor and assign operators of AccountInfo + +AccountInfo declares them as noexcept and uses default implementation, +so all its members (including AccountId) should be noexcept. But AccountId +is not noexcept. To fix it we just need to make CoreAccountId move +operator/assign operator noexcept. + +Bug: 819294 +Change-Id: Ice38654ab7cf3b9eaa6f54aa36e1fec329264f98 +--- + +diff --git a/google_apis/gaia/core_account_id.cc b/google_apis/gaia/core_account_id.cc +index d808082..12eefe3 100644 +--- a/google_apis/gaia/core_account_id.cc ++++ b/google_apis/gaia/core_account_id.cc +@@ -6,8 +6,16 @@ + + CoreAccountId::CoreAccountId() = default; + ++CoreAccountId::CoreAccountId(const CoreAccountId&) = default; ++ ++CoreAccountId::CoreAccountId(CoreAccountId&&) noexcept = default; ++ + CoreAccountId::~CoreAccountId() = default; + ++CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; ++ ++CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) noexcept = default; ++ + CoreAccountId::CoreAccountId(const char* id) : id(id) {} + + CoreAccountId::CoreAccountId(std::string&& id) : id(std::move(id)) {} +diff --git a/google_apis/gaia/core_account_id.h b/google_apis/gaia/core_account_id.h +index 5ea602a..c2d1911 100644 +--- a/google_apis/gaia/core_account_id.h ++++ b/google_apis/gaia/core_account_id.h +@@ -14,8 +14,13 @@ + // for design and tracking). + struct CoreAccountId { + CoreAccountId(); ++ CoreAccountId(const CoreAccountId&); ++ CoreAccountId(CoreAccountId&&) noexcept; + ~CoreAccountId(); + ++ CoreAccountId& operator=(const CoreAccountId&); ++ CoreAccountId& operator=(CoreAccountId&&) noexcept; ++ + // Those implicit constructor and conversion operator allow to + // progressively migrate the code to use this struct. Removing + // them is tracked by https://crbug.com/959161 diff --git a/chromium-76.0.3809.100-gcc-history-move-noexcept.patch b/chromium-76.0.3809.100-gcc-history-move-noexcept.patch new file mode 100644 index 0000000..2876de4 --- /dev/null +++ b/chromium-76.0.3809.100-gcc-history-move-noexcept.patch @@ -0,0 +1,42 @@ +From abe74a7f0c53a43a9706a42d71b7ff4a5da53380 Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Tue, 11 Jun 2019 10:27:19 +0200 +Subject: [PATCH] GCC: add noexcept move assignment in history::URLRow + +In GCC, build is failing because history::QueryURLResult declares its move +assignment operator as noexcept using default implementation. That requires +its members to provide a move assignment operator that is noexcept too. + +But URLRow was missing noexcept declaration in move assignment operator (even +though it was providing noexcept to its move constructor). + +Bug: 819294 +Change-Id: I726e3cf7a4a50c9206a5d0fba8a561d363483d4f +--- + +diff --git a/components/history/core/browser/url_row.cc b/components/history/core/browser/url_row.cc +index 44c22fd..aec0101 100644 +--- a/components/history/core/browser/url_row.cc ++++ b/components/history/core/browser/url_row.cc +@@ -26,7 +26,7 @@ + } + + URLRow& URLRow::operator=(const URLRow& other) = default; +-URLRow& URLRow::operator=(URLRow&& other) = default; ++URLRow& URLRow::operator=(URLRow&& other) noexcept = default; + + void URLRow::Swap(URLRow* other) { + std::swap(id_, other->id_); +diff --git a/components/history/core/browser/url_row.h b/components/history/core/browser/url_row.h +index 8f6f9cf..31a1ef8 100644 +--- a/components/history/core/browser/url_row.h ++++ b/components/history/core/browser/url_row.h +@@ -35,7 +35,7 @@ + + virtual ~URLRow(); + URLRow& operator=(const URLRow& other); +- URLRow& operator=(URLRow&& other); ++ URLRow& operator=(URLRow&& other) noexcept; + + URLID id() const { return id_; } + diff --git a/chromium-76.0.3809.100-gcc-no-alignas-and-export.patch b/chromium-76.0.3809.100-gcc-no-alignas-and-export.patch new file mode 100644 index 0000000..cc91d1e --- /dev/null +++ b/chromium-76.0.3809.100-gcc-no-alignas-and-export.patch @@ -0,0 +1,14 @@ +diff -up chromium-76.0.3809.100/third_party/blink/renderer/core/css/css_property_value_set.h.gcc-no-alignas chromium-76.0.3809.100/third_party/blink/renderer/core/css/css_property_value_set.h +--- chromium-76.0.3809.100/third_party/blink/renderer/core/css/css_property_value_set.h.gcc-no-alignas 2019-08-09 16:48:13.000000000 +0200 ++++ chromium-76.0.3809.100/third_party/blink/renderer/core/css/css_property_value_set.h 2019-08-15 21:04:30.231532746 +0200 +@@ -176,8 +176,8 @@ class CSSLazyPropertyParser + DISALLOW_COPY_AND_ASSIGN(CSSLazyPropertyParser); + }; + +-class CORE_EXPORT alignas(Member) alignas( +- CSSPropertyValueMetadata) ImmutableCSSPropertyValueSet ++class CORE_EXPORT ALIGNAS(alignof(Member)) ++ ALIGNAS(alignof(CSSPropertyValueMetadata)) ImmutableCSSPropertyValueSet + : public CSSPropertyValueSet { + public: + ImmutableCSSPropertyValueSet(const CSSPropertyValue*, diff --git a/chromium-76.0.3809.100-gcc-themeservice-includes.patch b/chromium-76.0.3809.100-gcc-themeservice-includes.patch new file mode 100644 index 0000000..ad40bb9 --- /dev/null +++ b/chromium-76.0.3809.100-gcc-themeservice-includes.patch @@ -0,0 +1,36 @@ +From d08ea83acc2f5ff395c1fe54f52687e92fe51c3b Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Tue, 04 Jun 2019 22:01:03 +0200 +Subject: [PATCH] IWYU: ThemeService requires NativeTheme + +As ThemeService referes to NativeTheme through a ScopedObserver, +the full declaration is required. + +Bug: 819294 +Change-Id: I9d5bd2e87cfaa76e87f9b5509daea24848906a63 +--- + +diff --git a/chrome/browser/themes/theme_service.cc b/chrome/browser/themes/theme_service.cc +index d65388e2..23dc86d 100644 +--- a/chrome/browser/themes/theme_service.cc ++++ b/chrome/browser/themes/theme_service.cc +@@ -54,7 +54,6 @@ + #include "ui/gfx/color_palette.h" + #include "ui/gfx/image/image_skia.h" + #include "ui/native_theme/common_theme.h" +-#include "ui/native_theme/native_theme.h" + + #if BUILDFLAG(ENABLE_EXTENSIONS) + #include "base/scoped_observer.h" +diff --git a/chrome/browser/themes/theme_service.h b/chrome/browser/themes/theme_service.h +index 6c79c72..f93dc0d 100644 +--- a/chrome/browser/themes/theme_service.h ++++ b/chrome/browser/themes/theme_service.h +@@ -25,6 +25,7 @@ + #include "extensions/buildflags/buildflags.h" + #include "extensions/common/extension_id.h" + #include "ui/base/theme_provider.h" ++#include "ui/native_theme/native_theme.h" + #include "ui/native_theme/native_theme_observer.h" + + class BrowserThemePack; diff --git a/chromium.spec b/chromium.spec index 64e3243..de9e05b 100644 --- a/chromium.spec +++ b/chromium.spec @@ -291,6 +291,16 @@ Patch55: chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch Patch56: chromium-76.0.3809.100-gcc-move-explicit-initialization.patch # https://chromium.googlesource.com/chromium/src.git/+/7dc76c8d9f4cfbce7cf11424120aa6f6094916dc Patch57: chromium-76.0.3809.100-gcc-initialization-order.patch +# https://chromium.googlesource.com/chromium/src.git/+/138904af5d6a4158ef4247fda816a8035e621e59 +Patch58: chromium-76.0.3809.100-gcc-history-move-noexcept.patch +# https://chromium.googlesource.com/chromium/src.git/+/bdc24128b75008743d819e298557a53205706e7c +Patch59: chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch +# https://chromium.googlesource.com/chromium/src.git/+/5d7f227fa844e79568df64e495e7ef958c12d7b2 +Patch60: chromium-76.0.3809.100-gcc-themeservice-includes.patch +# TBD - need to submit it +# In GCC one can't use alignas() for exported classes (as described in +# https://cs.chromium.org/chromium/src/base/compiler_specific.h?rcl=a5bcc05a48f6cc6299edfaf0179278aa03653ee4&l=103) +Patch61: chromium-76.0.3809.100-gcc-no-alignas-and-export.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -860,6 +870,10 @@ udev. %patch55 -p1 -b .gcc-hasfraction-constexpr %patch56 -p1 -b .gcc-move-explicit-initialization %patch57 -p1 -b .gcc-initialization-order +%patch58 -p1 -b .gcc-history-move-noexcept +%patch59 -p1 -b .gcc-accountinfo-move-noexcept +%patch60 -p1 -b .gcc-themeservice-includes +%patch61 -p1 -b .gcc-no-alignas-and-export # EPEL specific patches %if 0%{?rhel} == 7 From b7cedf6c8b4face5dc2fbbc12dac2e79f595f51e Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 16 Aug 2019 13:58:53 +0200 Subject: [PATCH 0364/1449] //third_party dependency missing for remoting --- chromium.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/chromium.spec b/chromium.spec index de9e05b..f003849 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1207,6 +1207,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/google_input_tools' \ 'third_party/google_input_tools/third_party/closure_library' \ 'third_party/google_input_tools/third_party/closure_library/third_party/closure' \ + 'third_party/google_trust_services' \ 'third_party/googletest' \ 'third_party/glslang' \ 'third_party/grpc' \ From f9c9c7947364cd595b70d26ddb65216d73140a98 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 20 Aug 2019 21:36:06 +0200 Subject: [PATCH 0365/1449] Fix the build of remoting_all target --- ...76.0.3809.100-gcc-remoting-constexpr.patch | 27 +++++++++++++++++++ ...6.0.3809.100-vtable-symbol-undefined.patch | 11 ++++++++ chromium.spec | 11 +++++--- 3 files changed, 46 insertions(+), 3 deletions(-) create mode 100644 chromium-76.0.3809.100-gcc-remoting-constexpr.patch create mode 100644 chromium-76.0.3809.100-vtable-symbol-undefined.patch diff --git a/chromium-76.0.3809.100-gcc-remoting-constexpr.patch b/chromium-76.0.3809.100-gcc-remoting-constexpr.patch new file mode 100644 index 0000000..c59702f --- /dev/null +++ b/chromium-76.0.3809.100-gcc-remoting-constexpr.patch @@ -0,0 +1,27 @@ +diff -up chromium-76.0.3809.100/remoting/signaling/message_tracker.cc.gcc-constexpr chromium-76.0.3809.100/remoting/signaling/message_tracker.cc +--- chromium-76.0.3809.100/remoting/signaling/message_tracker.cc.gcc-constexpr 2019-08-09 16:48:08.000000000 +0200 ++++ chromium-76.0.3809.100/remoting/signaling/message_tracker.cc 2019-08-20 21:29:14.545465656 +0200 +@@ -9,8 +9,7 @@ + namespace remoting { + + // static +-const base::TimeDelta MessageTracker::kCleanupInterval = +- base::TimeDelta::FromMinutes(2); ++constexpr base::TimeDelta MessageTracker::kCleanupInterval; + + MessageTracker::MessageTracker() = default; + +diff -up chromium-76.0.3809.100/remoting/signaling/message_tracker.h.gcc-constexpr chromium-76.0.3809.100/remoting/signaling/message_tracker.h +--- chromium-76.0.3809.100/remoting/signaling/message_tracker.h.gcc-constexpr 2019-08-20 21:27:53.539653248 +0200 ++++ chromium-76.0.3809.100/remoting/signaling/message_tracker.h 2019-08-20 21:28:23.371952434 +0200 +@@ -36,7 +36,8 @@ class MessageTracker final { + + // All IDs older than now - kCleanupInterval will be eventually removed, but + // they are not guaranteed to be immediately removed after the interval. +- static constexpr base::TimeDelta kCleanupInterval; ++ static constexpr base::TimeDelta kCleanupInterval = ++ base::TimeDelta::FromMinutes(2); + + void RemoveExpiredIds(); + +diff -up chromium-76.0.3809.100/remoting/signaling/message_tracker_unittest.cc.gcc-constexpr chromium-76.0.3809.100/remoting/signaling/message_tracker_unittest.cc diff --git a/chromium-76.0.3809.100-vtable-symbol-undefined.patch b/chromium-76.0.3809.100-vtable-symbol-undefined.patch new file mode 100644 index 0000000..64532df --- /dev/null +++ b/chromium-76.0.3809.100-vtable-symbol-undefined.patch @@ -0,0 +1,11 @@ +diff -up chromium-76.0.3809.100/net/quic/platform/impl/quic_default_proof_providers_impl.cc.vtable-symbol-undefined chromium-76.0.3809.100/net/quic/platform/impl/quic_default_proof_providers_impl.cc +--- chromium-76.0.3809.100/net/quic/platform/impl/quic_default_proof_providers_impl.cc.vtable-symbol-undefined 2019-08-20 21:21:24.901899270 +0200 ++++ chromium-76.0.3809.100/net/quic/platform/impl/quic_default_proof_providers_impl.cc 2019-08-20 21:19:30.361746211 +0200 +@@ -18,6 +18,7 @@ + #include "net/quic/crypto/proof_verifier_chromium.h" + #include "net/third_party/quiche/src/quic/platform/api/quic_flags.h" + #include "net/third_party/quiche/src/quic/platform/api/quic_ptr_util.h" ++#include "net/quic/platform/impl/quic_flags_impl.cc" + + DEFINE_QUIC_COMMAND_LINE_FLAG(std::string, + certificate_file, diff --git a/chromium.spec b/chromium.spec index f003849..e06bcdd 100644 --- a/chromium.spec +++ b/chromium.spec @@ -297,10 +297,13 @@ Patch58: chromium-76.0.3809.100-gcc-history-move-noexcept.patch Patch59: chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch # https://chromium.googlesource.com/chromium/src.git/+/5d7f227fa844e79568df64e495e7ef958c12d7b2 Patch60: chromium-76.0.3809.100-gcc-themeservice-includes.patch -# TBD - need to submit it -# In GCC one can't use alignas() for exported classes (as described in -# https://cs.chromium.org/chromium/src/base/compiler_specific.h?rcl=a5bcc05a48f6cc6299edfaf0179278aa03653ee4&l=103) +# In GCC one can't use alignas() for exported classes +# https://chromium.googlesource.com/chromium/src.git/+/8148fd96ae04a1150a9c6012634dcd2a7335f87a Patch61: chromium-76.0.3809.100-gcc-no-alignas-and-export.patch +# Needs to be submitted.. +Patch62: chromium-76.0.3809.100-gcc-remoting-constexpr.patch +# Needs to be submitted.. (ugly hack, needs to be added properly to GN files) +Patch63: chromium-76.0.3809.100-vtable-symbol-undefined.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -874,6 +877,8 @@ udev. %patch59 -p1 -b .gcc-accountinfo-move-noexcept %patch60 -p1 -b .gcc-themeservice-includes %patch61 -p1 -b .gcc-no-alignas-and-export +%patch62 -p1 -b .gcc-remoting-constexpr +%patch63 -p1 -b .vtable-symbol-undefined # EPEL specific patches %if 0%{?rhel} == 7 From 6b2762ec894618ec9928d55d9a9853ee1e942966 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 20 Aug 2019 22:07:44 +0200 Subject: [PATCH 0366/1449] Fix the previously uploaded patch --- chromium-76.0.3809.100-gcc-remoting-constexpr.patch | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/chromium-76.0.3809.100-gcc-remoting-constexpr.patch b/chromium-76.0.3809.100-gcc-remoting-constexpr.patch index c59702f..aec3107 100644 --- a/chromium-76.0.3809.100-gcc-remoting-constexpr.patch +++ b/chromium-76.0.3809.100-gcc-remoting-constexpr.patch @@ -12,13 +12,13 @@ diff -up chromium-76.0.3809.100/remoting/signaling/message_tracker.cc.gcc-conste MessageTracker::MessageTracker() = default; diff -up chromium-76.0.3809.100/remoting/signaling/message_tracker.h.gcc-constexpr chromium-76.0.3809.100/remoting/signaling/message_tracker.h ---- chromium-76.0.3809.100/remoting/signaling/message_tracker.h.gcc-constexpr 2019-08-20 21:27:53.539653248 +0200 +--- chromium-76.0.3809.100/remoting/signaling/message_tracker.h.gcc-constexpr 2019-08-20 22:02:25.625970954 +0200 +++ chromium-76.0.3809.100/remoting/signaling/message_tracker.h 2019-08-20 21:28:23.371952434 +0200 @@ -36,7 +36,8 @@ class MessageTracker final { // All IDs older than now - kCleanupInterval will be eventually removed, but // they are not guaranteed to be immediately removed after the interval. -- static constexpr base::TimeDelta kCleanupInterval; +- static const base::TimeDelta kCleanupInterval; + static constexpr base::TimeDelta kCleanupInterval = + base::TimeDelta::FromMinutes(2); From 50c0a963fb2e55e8364c9416842595bd21bd9f01 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 21 Aug 2019 13:51:11 +0200 Subject: [PATCH 0367/1449] Update the list of private libraries and remove a pak file that was removed --- chromium.spec | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/chromium.spec b/chromium.spec index e06bcdd..8a246b7 100644 --- a/chromium.spec +++ b/chromium.spec @@ -54,9 +54,9 @@ %global __provides_exclude_from %{chromium_path}/.*\\.so|%{chromium_path}/lib/.*\\.so|%{chromium_path}/lib/.*\\.so.* %if 0%{?rhel} == 7 -%global privlibs libEGL|libGLESv2|libVkICD_mock_icd|libVkLayer_core_validation|libVkLayer_object_lifetimes|libVkLayer_stateless_validation|libVkLayer_thread_safety|libVkLayer_unique_objects|libaccessibility|libandroid_mojo_bindings_shared|libanimation|libapdu|libaura|libaura_extra|libauthenticator_test_mojo_bindings_shared|libbase|libbase_i18n|libbindings|libbindings_base|libblink_common|libblink_controller|libblink_core|libblink_embedded_frame_sink_mojo_bindings_shared|libblink_features|libblink_modules|libblink_mojo_bindings_shared|libblink_mojom_broadcastchannel_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcbor|libcc|libcc_animation|libcc_base|libcc_debug|libcc_mojo_embedder|libcc_paint|libcdm_manager|libcertificate_matching|libchrome_features|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom|libcontent_service_mojom_shared|libcrash_key|libcrcrypto|libdbus|libdbus_thread_linux|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevice_vr|libdevice_vr_mojo_bindings|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevices|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libembedder|libembedder_switches|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libextras|libfido|libfingerprint|libfreetype_harfbuzz|libgamepad_mojom|libgamepad_mojom_blink|libgamepad_mojom_shared|libgamepad_shared_typemap_traits|libgcm|libgeometry|libgeometry_skia|libgesture_detection|libgfx|libgfx_ipc|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_switches|libgfx_x11|libgin|libgl_in_process_context|libgl_init|libgl_wrapper|libgles2|libgles2_implementation|libgles2_utils|libgpu|libgpu_ipc_service|libgtkui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc|libipc_mojom|libipc_mojom_shared|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|liblearning_common|liblearning_impl|libleveldatabase|liblive_tab_count_metrics|libmanager|libmedia_blink|libmedia_filters_jpeg_parser|libmedia_gpu|libmedia_mojo_services|libmedia_session_cpp|libmedia_webrtc|libmemory_instrumentation|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirclient.so.9|libmirroring_service|libmojo_base_lib|libmojo_base_mojom|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_shared_typemap_traits|libmojo_core_embedder|libmojo_core_embedder_internal|libmojo_core_ports|libmojo_cpp_platform|libmojo_ime_lib|libmojo_mojom_bindings|libmojo_mojom_bindings_shared|libmojo_public_system|libmojo_public_system_cpp|libmojom_core_shared|libmojom_mhtml_load_result_shared|libmojom_modules_shared|libmojom_platform_shared|libmpris|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp|libnetwork_cpp_base|libnetwork_service|libnetwork_session_configurator|libonc|libos_crypt|libperfetto|libplatform|libplatform_window_handler_libs|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp_base|libresource_coordinator_cpp_features|libresource_coordinator_public_mojom|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libsandbox|libsandbox_services|libscheduling_metrics|libseccomp_bpf|libservice|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom|libservice_manager_mojom_blink|libservice_manager_mojom_constants|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_shared|libservice_manager_mojom_traits|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libtracing_cpp|libtracing_mojom|libtracing_mojom_shared|libui_accessibility_ax_mojom|libui_accessibility_ax_mojom_blink|libui_accessibility_ax_mojom_shared|libui_base|libui_base_clipboard|libui_base_clipboard_types|libui_base_features|libui_base_idle|libui_base_ime|libui_base_ime_init|libui_base_ime_linux|libui_base_ime_types|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl|liburl_ipc|liburl_matcher|libusb_shared|libuser_manager|libuser_prefs|libv8|libv8_libbase|libv8_libplatform|libviews|libviz_common|libviz_resource_format_utils|libviz_vulkan_context_provider|libvr_base|libvr_common|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libweb_dialogs|libweb_feature_mojo_bindings_mojom|libweb_feature_mojo_bindings_mojom_blink|libweb_feature_mojo_bindings_mojom_shared|libwebdata_common|libwebgpu|libwebview|libwm|libwm_public|libwtf|libx11_events_platform|libx11_window|libzygote|libmedia|libffmpeg|libfontconfig +%global privlibs libevents_devices_x11|libgfx_x11|libevents_x|libgl_wrapper|libmemory_instrumentation|libdevice_vr_mojo_bindings|libdiscardable_memory_common|libui_base_ime_init|libnetwork_cpp_base|libos_crypt|libmessage_center|libmanager|libdevice_gamepad|libembedder|libGLESv2|libtracing|libskia|libgl_in_process_context|libapdu|libbluetooth|libviz_resource_format_utils|libmojo_mojom_bindings|libblink_platform|libmojom_modules_shared|libwebdata_common|libshell_dialogs|libresource_coordinator_public_mojom_blink|libgles2_utils|libgpu_ipc_service|libcaptive_portal|libvr_common|libgles2|libdisplay|libgfx_ipc_geometry|libcc_paint|libandroid_mojo_bindings_shared|libipc_mojom_shared|libffmpeg|liburl_matcher|libbindings|libservice|libwtf|libcommon|libleveldatabase|libnetwork_session_configurator|libaura|libcloud_policy_proto_generated_compile|libservice_manager_mojom_constants|libui_touch_selection|libmojo_base_lib|libservice_manager_cpp_types|libservice_manager_mojom_blink|libmojo_core_embedder|libblink_embedded_frame_sink_mojo_bindings_shared|libgesture_detection|liburl_ipc|libweb_feature_mojo_bindings_mojom|libscheduling_metrics|libresource_coordinator_cpp_features|libcc|libdiscardable_memory_client|libsessions|libblink_common|libipc|libvulkan_init|libblink_mojom_broadcastchannel_bindings_shared|libheadless_non_renderer|libcbor|libmojo_core_embedder_internal|libmojo_public_system_cpp|libmojom_core_shared|libgfx|libusb_shared|libtracing_mojom|libuser_manager|libnet|libwebgpu|libplatform_window_handler_libs|libmojo_base_mojom_shared|libui_base|libprinting|libcontent_service_mojom_shared|libstartup_tracing|libdevice_vr_mojo_bindings_blink|libraster|libsandbox|libv8_libbase|libevents|libui_base_idle|libgles2_implementation|libkeyed_service_content|libprefs|libVkLayer_core_validation|libchrome_features|libdiscardable_memory_service|libcapture_lib|libperfetto|libicui18n|libdomain_reliability|libweb_dialogs|libcc_animation|libbase|libtracing_cpp|libGLESv2|libEGL|libVkLayer_thread_safety|libmedia_gpu|libparsers|libservice_manager_cpp|liblearning_common|libdevices|libvulkan_wrapper|libservice_manager_mojom_shared|libgfx_switches|libkeycodes_x11|libweb_feature_mojo_bindings_mojom_shared|liburl|libmpris|libppapi_proxy|libmojo_base_mojom|libprotobuf_lite|libui_base_features|libdevice_vr|libwm_public|libcolor_space|libseccomp_bpf|libinterfaces_shared|libui_base_x|libicuuc|libwebview|libdevice_event_log|libVkLayer_object_lifetimes|libvulkan_x11|libproxy_config|libnetwork_cpp|libextras|libVkICD_mock_icd|libv8_libplatform|libresource_coordinator_public_mojom|libwm|libviews|libsuid_sandbox_client|libEGL|libcapture_base|libnative_theme|libcrcrypto|libmojo_public_system|libservice_manager_mojom_constants_shared|libui_accessibility_ax_mojom_blink|libplatform|libui_data_pack|libgfx_ipc_buffer_types|libclearkeycdm|libmetrics_cpp|libmojo_base_shared_typemap_traits|libx11_events_platform|libcrash_key|libclient|libblink_controller|libfido|libfreetype_harfbuzz|libmojo_mojom_bindings_shared|libaccessibility|libstub_window|libui_base_ime|libpolicy_component|libweb_bluetooth_mojo_bindings_shared|libmojo_core_ports|libsandbox_services|libstorage_common|libviz_vulkan_context_provider|libcontent_common_mojo_bindings_shared|libgamepad_mojom_blink|libkeyed_service_core|libmedia_mojo_services|libmojo_ime_lib|libblink_modules|libgcm|libsql|libgeometry_skia|libVkLayer_unique_objects|libweb_feature_mojo_bindings_mojom_blink|libui_base_ime_linux|libdisplay_types|libdevice_vr_mojo_bindings_shared|libcc_base|libtracing_mojom_shared|libmedia_blink|libcc_mojo_embedder|libpdfium|libevents_ozone_layout|libgfx_ipc_color|libgtkui|libpolicy_proto|libcodec|libgpu|libcontent_service_cpp|libmojom_mhtml_load_result_shared|libdisplay_util|libcontent_service_mojom|libbase_i18n|libservice_manager_mojom_constants_blink|libcompositor|libmojo_base_mojom_blink|libui_message_center_cpp|libsnapshot|libdbus_thread_linux|libtab_count_metrics|libpublic|libui_accessibility_ax_mojom|liblearning_impl|librange|libbrowser_ui_views|libcontent|libvr_base|libppapi_host|libservice_manager_mojom_traits|libgamepad_mojom|libcertificate_matching|libgfx_ipc|libgl_init|libVkLayer_stateless_validation|libshared_with_blink|libshared_memory_support|libevents_base|libnet_with_v8|libmedia_webrtc|libsurface|libcontent_public_common_mojo_bindings_shared|libaura_extra|libdevice_base|libonc|libcdm_manager|libmojom_platform_shared|libui_accessibility_ax_mojom_shared|libhost|libblink_features|libdevice_features|libmirroring_service|libdbus|libgeometry|libchromium_sqlite3|libgamepad_mojom_shared|libauthenticator_test_mojo_bindings_shared|libboringssl|libembedder_switches|libgfx_ipc_skia|libzygote|libmedia_session_cpp|libv8|libnetwork_service|libx11_window|libui_base_clipboard|libanimation|libmessage_support|libui_devtools|libgamepad_shared_typemap_traits|libfingerprint|libviz_common|libppapi_shared|libstorage_browser|libbindings_base|libservice_manager_mojom|libblink_core|libgin|libresource_coordinator_public_mojom_shared|libuser_prefs|libui_base_ime_types|libipc_mojom|libmidi|libmojo_cpp_platform|libcc_debug|libui_base_clipboard_types|libmedia|libfontconfig %else -%global privlibs libEGL|libGLESv2|libVkICD_mock_icd|libVkLayer_core_validation|libVkLayer_object_lifetimes|libVkLayer_stateless_validation|libVkLayer_thread_safety|libVkLayer_unique_objects|libaccessibility|libandroid_mojo_bindings_shared|libanimation|libapdu|libaura|libaura_extra|libauthenticator_test_mojo_bindings_shared|libbase|libbase_i18n|libbindings|libbindings_base|libblink_common|libblink_controller|libblink_core|libblink_embedded_frame_sink_mojo_bindings_shared|libblink_features|libblink_modules|libblink_mojo_bindings_shared|libblink_mojom_broadcastchannel_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcbor|libcc|libcc_animation|libcc_base|libcc_debug|libcc_mojo_embedder|libcc_paint|libcdm_manager|libcertificate_matching|libchrome_features|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom|libcontent_service_mojom_shared|libcrash_key|libcrcrypto|libdbus|libdbus_thread_linux|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevice_vr|libdevice_vr_mojo_bindings|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevices|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libembedder|libembedder_switches|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libextras|libfido|libfingerprint|libfreetype_harfbuzz|libgamepad_mojom|libgamepad_mojom_blink|libgamepad_mojom_shared|libgamepad_shared_typemap_traits|libgcm|libgeometry|libgeometry_skia|libgesture_detection|libgfx|libgfx_ipc|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_switches|libgfx_x11|libgin|libgl_in_process_context|libgl_init|libgl_wrapper|libgles2|libgles2_implementation|libgles2_utils|libgpu|libgpu_ipc_service|libgtkui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc|libipc_mojom|libipc_mojom_shared|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|liblearning_common|liblearning_impl|libleveldatabase|liblive_tab_count_metrics|libmanager|libmedia_blink|libmedia_filters_jpeg_parser|libmedia_gpu|libmedia_mojo_services|libmedia_session_cpp|libmedia_webrtc|libmemory_instrumentation|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirclient.so.9|libmirroring_service|libmojo_base_lib|libmojo_base_mojom|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_shared_typemap_traits|libmojo_core_embedder|libmojo_core_embedder_internal|libmojo_core_ports|libmojo_cpp_platform|libmojo_ime_lib|libmojo_mojom_bindings|libmojo_mojom_bindings_shared|libmojo_public_system|libmojo_public_system_cpp|libmojom_core_shared|libmojom_mhtml_load_result_shared|libmojom_modules_shared|libmojom_platform_shared|libmpris|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp|libnetwork_cpp_base|libnetwork_service|libnetwork_session_configurator|libonc|libos_crypt|libperfetto|libplatform|libplatform_window_handler_libs|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp_base|libresource_coordinator_cpp_features|libresource_coordinator_public_mojom|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libsandbox|libsandbox_services|libscheduling_metrics|libseccomp_bpf|libservice|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom|libservice_manager_mojom_blink|libservice_manager_mojom_constants|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_shared|libservice_manager_mojom_traits|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libtracing_cpp|libtracing_mojom|libtracing_mojom_shared|libui_accessibility_ax_mojom|libui_accessibility_ax_mojom_blink|libui_accessibility_ax_mojom_shared|libui_base|libui_base_clipboard|libui_base_clipboard_types|libui_base_features|libui_base_idle|libui_base_ime|libui_base_ime_init|libui_base_ime_linux|libui_base_ime_types|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl|liburl_ipc|liburl_matcher|libusb_shared|libuser_manager|libuser_prefs|libv8|libv8_libbase|libv8_libplatform|libviews|libviz_common|libviz_resource_format_utils|libviz_vulkan_context_provider|libvr_base|libvr_common|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libweb_dialogs|libweb_feature_mojo_bindings_mojom|libweb_feature_mojo_bindings_mojom_blink|libweb_feature_mojo_bindings_mojom_shared|libwebdata_common|libwebgpu|libwebview|libwm|libwm_public|libwtf|libx11_events_platform|libx11_window|libzygote|libmedia|libffmpeg +%global privlibs libevents_devices_x11|libgfx_x11|libevents_x|libgl_wrapper|libmemory_instrumentation|libdevice_vr_mojo_bindings|libdiscardable_memory_common|libui_base_ime_init|libnetwork_cpp_base|libos_crypt|libmessage_center|libmanager|libdevice_gamepad|libembedder|libGLESv2|libtracing|libskia|libgl_in_process_context|libapdu|libbluetooth|libviz_resource_format_utils|libmojo_mojom_bindings|libblink_platform|libmojom_modules_shared|libwebdata_common|libshell_dialogs|libresource_coordinator_public_mojom_blink|libgles2_utils|libgpu_ipc_service|libcaptive_portal|libvr_common|libgles2|libdisplay|libgfx_ipc_geometry|libcc_paint|libandroid_mojo_bindings_shared|libipc_mojom_shared|libffmpeg|liburl_matcher|libbindings|libservice|libwtf|libcommon|libleveldatabase|libnetwork_session_configurator|libaura|libcloud_policy_proto_generated_compile|libservice_manager_mojom_constants|libui_touch_selection|libmojo_base_lib|libservice_manager_cpp_types|libservice_manager_mojom_blink|libmojo_core_embedder|libblink_embedded_frame_sink_mojo_bindings_shared|libgesture_detection|liburl_ipc|libweb_feature_mojo_bindings_mojom|libscheduling_metrics|libresource_coordinator_cpp_features|libcc|libdiscardable_memory_client|libsessions|libblink_common|libipc|libvulkan_init|libblink_mojom_broadcastchannel_bindings_shared|libheadless_non_renderer|libcbor|libmojo_core_embedder_internal|libmojo_public_system_cpp|libmojom_core_shared|libgfx|libusb_shared|libtracing_mojom|libuser_manager|libnet|libwebgpu|libplatform_window_handler_libs|libmojo_base_mojom_shared|libui_base|libprinting|libcontent_service_mojom_shared|libstartup_tracing|libdevice_vr_mojo_bindings_blink|libraster|libsandbox|libv8_libbase|libevents|libui_base_idle|libgles2_implementation|libkeyed_service_content|libprefs|libVkLayer_core_validation|libchrome_features|libdiscardable_memory_service|libcapture_lib|libperfetto|libicui18n|libdomain_reliability|libweb_dialogs|libcc_animation|libbase|libtracing_cpp|libGLESv2|libEGL|libVkLayer_thread_safety|libmedia_gpu|libparsers|libservice_manager_cpp|liblearning_common|libdevices|libvulkan_wrapper|libservice_manager_mojom_shared|libgfx_switches|libkeycodes_x11|libweb_feature_mojo_bindings_mojom_shared|liburl|libmpris|libppapi_proxy|libmojo_base_mojom|libprotobuf_lite|libui_base_features|libdevice_vr|libwm_public|libcolor_space|libseccomp_bpf|libinterfaces_shared|libui_base_x|libicuuc|libwebview|libdevice_event_log|libVkLayer_object_lifetimes|libvulkan_x11|libproxy_config|libnetwork_cpp|libextras|libVkICD_mock_icd|libv8_libplatform|libresource_coordinator_public_mojom|libwm|libviews|libsuid_sandbox_client|libEGL|libcapture_base|libnative_theme|libcrcrypto|libmojo_public_system|libservice_manager_mojom_constants_shared|libui_accessibility_ax_mojom_blink|libplatform|libui_data_pack|libgfx_ipc_buffer_types|libclearkeycdm|libmetrics_cpp|libmojo_base_shared_typemap_traits|libx11_events_platform|libcrash_key|libclient|libblink_controller|libfido|libfreetype_harfbuzz|libmojo_mojom_bindings_shared|libaccessibility|libstub_window|libui_base_ime|libpolicy_component|libweb_bluetooth_mojo_bindings_shared|libmojo_core_ports|libsandbox_services|libstorage_common|libviz_vulkan_context_provider|libcontent_common_mojo_bindings_shared|libgamepad_mojom_blink|libkeyed_service_core|libmedia_mojo_services|libmojo_ime_lib|libblink_modules|libgcm|libsql|libgeometry_skia|libVkLayer_unique_objects|libweb_feature_mojo_bindings_mojom_blink|libui_base_ime_linux|libdisplay_types|libdevice_vr_mojo_bindings_shared|libcc_base|libtracing_mojom_shared|libmedia_blink|libcc_mojo_embedder|libpdfium|libevents_ozone_layout|libgfx_ipc_color|libgtkui|libpolicy_proto|libcodec|libgpu|libcontent_service_cpp|libmojom_mhtml_load_result_shared|libdisplay_util|libcontent_service_mojom|libbase_i18n|libservice_manager_mojom_constants_blink|libcompositor|libmojo_base_mojom_blink|libui_message_center_cpp|libsnapshot|libdbus_thread_linux|libtab_count_metrics|libpublic|libui_accessibility_ax_mojom|liblearning_impl|librange|libbrowser_ui_views|libcontent|libvr_base|libppapi_host|libservice_manager_mojom_traits|libgamepad_mojom|libcertificate_matching|libgfx_ipc|libgl_init|libVkLayer_stateless_validation|libshared_with_blink|libshared_memory_support|libevents_base|libnet_with_v8|libmedia_webrtc|libsurface|libcontent_public_common_mojo_bindings_shared|libaura_extra|libdevice_base|libonc|libcdm_manager|libmojom_platform_shared|libui_accessibility_ax_mojom_shared|libhost|libblink_features|libdevice_features|libmirroring_service|libdbus|libgeometry|libchromium_sqlite3|libgamepad_mojom_shared|libauthenticator_test_mojo_bindings_shared|libboringssl|libembedder_switches|libgfx_ipc_skia|libzygote|libmedia_session_cpp|libv8|libnetwork_service|libx11_window|libui_base_clipboard|libanimation|libmessage_support|libui_devtools|libgamepad_shared_typemap_traits|libfingerprint|libviz_common|libppapi_shared|libstorage_browser|libbindings_base|libservice_manager_mojom|libblink_core|libgin|libresource_coordinator_public_mojom_shared|libuser_prefs|libui_base_ime_types|libipc_mojom|libmidi|libmojo_cpp_platform|libcc_debug|libui_base_clipboard_types|libmedia %endif %global __requires_exclude ^(%{privlibs})\\.so* @@ -1753,7 +1753,6 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chrome_*.pak %{chromium_path}/resources.pak %{chromium_path}/icudtl.dat -%{chromium_path}/views_mus_resources.pak %{chromium_path}/%{chromium_browser_channel} %{chromium_path}/%{chromium_browser_channel}.sh %{chromium_path}/MEIPreload/ From 4101a6472615ffa5f8a5b79988fe108db060b796 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 24 Jul 2019 20:14:22 +0000 Subject: [PATCH 0368/1449] - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- chromium.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index a741cda..de018ef 100644 --- a/chromium.spec +++ b/chromium.spec @@ -165,7 +165,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3770.100 -Release: 3%{?dist} +Release: 4%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1926,6 +1926,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Wed Jul 24 2019 Fedora Release Engineering - 75.0.3770.100-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + * Tue Jul 2 2019 Tom Callaway - 75.0.3770.100-3 - apply upstream fix to resolve issue where it is dangerous to post a task with a RenderProcessHost pointer because the RenderProcessHost From eea8d1dc28689a5bc3900eb2dd542f96ed277d7a Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 12 Aug 2019 17:09:21 +0200 Subject: [PATCH 0369/1449] Cleanup the patches --- ...res_2d_i16_neon-Make-s2-a-uint64x1_t.patch | 54 -- chromium-46.0.2490.71-notest.patch | 11 - chromium-52.0.2743.116-unset-madv_free.patch | 15 - chromium-52.0.2743.82-arm-webrtc.patch | 51 -- chromium-52.0.2743.82-master-prefs-path.patch | 15 - chromium-55.0.2883.75-sandbox-pie.patch | 30 - chromium-56.0.2924.87-fpermissive.patch | 13 - chromium-56.0.2924.87-gcc5.patch | 354 ---------- chromium-59.0.3071.115-ucontext-fix.patch | 214 ------ chromium-59.0.3071.86-ffmpeg-stdatomic.patch | 17 - chromium-59.0.3071.86-nullfix.patch | 43 -- chromium-59.0.3071.86-system-clang.patch | 10 - chromium-60.0.3112.78-gn-system.patch | 221 ------ ...um-60.0.3112.78-last-commit-position.patch | 28 - chromium-60.0.3112.78-no-zlib-mangle.patch | 13 - chromium-60.0.3112.90-vulkan-force-c99.patch | 11 - ...m-61.0.3163.79-aarch64-glibc-2.26.90.patch | 12 - ...mium-61.0.3163.79-fix-ffmpeg-aarch64.patch | 12 - chromium-61.0.3163.79-setopaque.patch | 12 - ...62.0.3202.62-correct-cplusplus-check.patch | 20 - chromium-62.0.3202.62-dde535-gcc-fix.patch | 13 - chromium-62.0.3202.62-enable-mp3.patch | 484 ------------- ...7-no-nullptr-assignment-on-StructPtr.patch | 12 - chromium-62.0.3202.62-gcc-nc.patch | 11 - chromium-62.0.3202.62-gcc7.patch | 11 - chromium-62.0.3202.62-rvalue-fix.patch | 45 -- ...m-63.0.3289.84-aarch64-glibc-2.26.90.patch | 12 - chromium-63.0.3289.84-enable-mp3.patch | 485 ------------- ...mium-63.0.3289.84-fix-ffmpeg-aarch64.patch | 12 - ...mium-63.0.3289.84-fix-ft-hb-unbundle.patch | 36 - chromium-63.0.3289.84-gcc-round-fix.patch | 11 - chromium-63.0.3289.84-gcc5-r3.patch | 104 --- chromium-63.0.3289.84-nolibc++.patch | 15 - chromium-63.0.3289.84-setopaque.patch | 12 - chromium-64.0.3282.119-enable-mp3.patch | 54 -- ...mium-64.0.3282.119-gcc-constexpr-fix.patch | 70 -- chromium-64.0.3282.119-gcc-round-fix.patch | 12 - chromium-64.0.3282.119-gcc5-r3.patch | 75 -- chromium-64.0.3282.119-gcc5.patch | 57 -- chromium-64.0.3282.119-gcc7.patch | 11 - chromium-64.0.3282.119-memcpy-fix.patch | 11 - chromium-64.0.3282.167-gcc8-fabi11.patch | 15 - ...x-non-copyable-class-s-optional-move.patch | 41 -- ...-methods-String-renamed-to-GetString.patch | 108 --- ...eProvider-Settings-do-not-provide-co.patch | 22 - ...se-Optional-T-requires-the-full-decl.patch | 33 - ...std-move-to-base-Optional-instead-of.patch | 24 - ...-declare-ConfigurationPolicyProvider.patch | 18 - ...ional-copy-move-ctors-assign-operato.patch | 91 --- ...verting-constructors-from-Optional-U.patch | 116 ---- ...-Implement-value-forward-constructor.patch | 72 -- ...e-non-copy-non-move-assign-operators.patch | 144 ---- ...irmative-expression-in-base-Optional.patch | 265 ------- chromium-65.0.3325.146-gcc5-r3.patch | 74 -- chromium-65.0.3325.146-gcc7.patch | 11 - ...trivially_copy_constructable-failure.patch | 55 -- ...Remove-GC-checks-from-WTF-Optional-T.patch | 61 -- chromium-65.0.3325.146-wtf-vector-fix.patch | 54 -- chromium-65.0.3325.162-boolfix.patch | 36 - chromium-65.0.3325.162-epel7-stdc++.patch | 12 - ...-65.0.3325.162-skia-aarch64-buildfix.patch | 21 - ...se-Optional-T-requires-the-full-decl.patch | 33 - ...nitializer-list-for-NoDestructor-of-.patch | 12 - ....0.3359.117-gcc-copy-constructor-fix.patch | 49 -- ...6.0.3359.117-gcc-optional-move-fixes.patch | 45 -- ....117-gcc-vector-copy-constructor-fix.patch | 53 -- chromium-66.0.3359.117-gcc5-r3.patch | 38 - chromium-66.0.3359.117-nounrar.patch | 16 - chromium-66.0.3359.139-arm-init-fix.patch | 12 - chromium-66.0.3359.170-gcc8-alignof.patch | 18 - chromium-67.0.3396.62-boolfix.patch | 36 - ....0.3396.62-crashpad-aarch64-buildfix.patch | 13 - ....62-epel7-use-old-python-exec-syntax.patch | 12 - ...m-67.0.3396.62-skia-aarch64-buildfix.patch | 21 - chromium-67.0.3396.87-fedora-user-agent.patch | 12 - chromium-67.0.3396.99-py2-bootstrap.patch | 42 -- ...mium-68.0.3440.106-fedora-user-agent.patch | 12 - ...440.106-fix-build-networking_private.patch | 12 - chromium-68.0.3440.106-notest.patch | 11 - chromium-68.0.3440.84-cors-string.patch | 51 -- chromium-68.0.3440.84-libjpeg.patch | 62 -- chromium-68.0.3440.84-libwebp-shim.patch | 43 -- chromium-68.0.3440.84-move-unique-ptr.patch | 65 -- chromium-69.0.3497.81-gcc8-alignof.patch | 18 - chromium-69.0.3497.81-norar.patch | 79 --- chromium-69.0.3497.81-py2-bootstrap.patch | 33 - chromium-69.0.3497.81-widevine-r2.patch | 23 - ...70.0.3538.110-remove-sysroot-options.patch | 23 - chromium-70.0.3538.77-harfbuzz2-fix.patch | 80 --- chromium-71-gcc-0.patch | 57 -- chromium-71.0.3578.98-el7-fix-noexcept.patch | 48 -- chromium-71.0.3578.98-norar.patch | 79 --- ...-71.0.3578.98-remove-sysroot-options.patch | 23 - ...0.3578.98-vaapi-libva1-compatibility.patch | 14 - chromium-72.0.3626.121-fix-va-check.patch | 29 - chromium-72.0.3626.121-norar.patch | 79 --- chromium-73-gcc-0.patch | 108 --- chromium-73-gcc-1.patch | 99 --- chromium-73-gcc-2.patch | 51 -- chromium-73-gcc-3.patch | 69 -- chromium-73-gcc-4.patch | 59 -- chromium-73-gcc-5.patch | 65 -- chromium-73-gcc-6.patch | 88 --- ...73.0.3683.103-glibc-2.29-clone-vfork.patch | 29 - ...73.0.3683.75-aarch64-crashpad-limits.patch | 11 - chromium-73.0.3683.75-el7-fix-noexcept.patch | 54 -- chromium-73.0.3683.75-no-header-hygiene.patch | 17 - chromium-gcc5-r3.patch | 98 --- chromium-gcc8-r588316.patch | 98 --- chromium-gcc8-r588547.patch | 30 - chromium-gcc8-r589614.patch | 37 - chromium-gcc8-r591015.patch | 70 -- chromium-gn-bootstrap-r17.patch | 68 -- chromium-math.h-r0.patch | 29 - chromium-stdint.patch | 21 - chromium.spec | 417 +++++------ relax-libva-version.patch | 56 -- revert-gn-4960.patch | 655 ------------------ revert-gn-4980.patch | 134 ---- 119 files changed, 174 insertions(+), 7424 deletions(-) delete mode 100644 0001-vpx_sum_squares_2d_i16_neon-Make-s2-a-uint64x1_t.patch delete mode 100644 chromium-46.0.2490.71-notest.patch delete mode 100644 chromium-52.0.2743.116-unset-madv_free.patch delete mode 100644 chromium-52.0.2743.82-arm-webrtc.patch delete mode 100644 chromium-52.0.2743.82-master-prefs-path.patch delete mode 100644 chromium-55.0.2883.75-sandbox-pie.patch delete mode 100644 chromium-56.0.2924.87-fpermissive.patch delete mode 100644 chromium-56.0.2924.87-gcc5.patch delete mode 100644 chromium-59.0.3071.115-ucontext-fix.patch delete mode 100644 chromium-59.0.3071.86-ffmpeg-stdatomic.patch delete mode 100644 chromium-59.0.3071.86-nullfix.patch delete mode 100644 chromium-59.0.3071.86-system-clang.patch delete mode 100644 chromium-60.0.3112.78-gn-system.patch delete mode 100644 chromium-60.0.3112.78-last-commit-position.patch delete mode 100644 chromium-60.0.3112.78-no-zlib-mangle.patch delete mode 100644 chromium-60.0.3112.90-vulkan-force-c99.patch delete mode 100644 chromium-61.0.3163.79-aarch64-glibc-2.26.90.patch delete mode 100644 chromium-61.0.3163.79-fix-ffmpeg-aarch64.patch delete mode 100644 chromium-61.0.3163.79-setopaque.patch delete mode 100644 chromium-62.0.3202.62-correct-cplusplus-check.patch delete mode 100644 chromium-62.0.3202.62-dde535-gcc-fix.patch delete mode 100644 chromium-62.0.3202.62-enable-mp3.patch delete mode 100644 chromium-62.0.3202.62-epel7-no-nullptr-assignment-on-StructPtr.patch delete mode 100644 chromium-62.0.3202.62-gcc-nc.patch delete mode 100644 chromium-62.0.3202.62-gcc7.patch delete mode 100644 chromium-62.0.3202.62-rvalue-fix.patch delete mode 100644 chromium-63.0.3289.84-aarch64-glibc-2.26.90.patch delete mode 100644 chromium-63.0.3289.84-enable-mp3.patch delete mode 100644 chromium-63.0.3289.84-fix-ffmpeg-aarch64.patch delete mode 100644 chromium-63.0.3289.84-fix-ft-hb-unbundle.patch delete mode 100644 chromium-63.0.3289.84-gcc-round-fix.patch delete mode 100644 chromium-63.0.3289.84-gcc5-r3.patch delete mode 100644 chromium-63.0.3289.84-nolibc++.patch delete mode 100644 chromium-63.0.3289.84-setopaque.patch delete mode 100644 chromium-64.0.3282.119-enable-mp3.patch delete mode 100644 chromium-64.0.3282.119-gcc-constexpr-fix.patch delete mode 100644 chromium-64.0.3282.119-gcc-round-fix.patch delete mode 100644 chromium-64.0.3282.119-gcc5-r3.patch delete mode 100644 chromium-64.0.3282.119-gcc5.patch delete mode 100644 chromium-64.0.3282.119-gcc7.patch delete mode 100644 chromium-64.0.3282.119-memcpy-fix.patch delete mode 100644 chromium-64.0.3282.167-gcc8-fabi11.patch delete mode 100644 chromium-65.0.3325.146-Fix-non-copyable-class-s-optional-move.patch delete mode 100644 chromium-65.0.3325.146-GCC-IDB-methods-String-renamed-to-GetString.patch delete mode 100644 chromium-65.0.3325.146-GCC-PlaybackImageProvider-Settings-do-not-provide-co.patch delete mode 100644 chromium-65.0.3325.146-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch delete mode 100644 chromium-65.0.3325.146-GCC-explicitely-std-move-to-base-Optional-instead-of.patch delete mode 100644 chromium-65.0.3325.146-GCC-fully-declare-ConfigurationPolicyProvider.patch delete mode 100644 chromium-65.0.3325.146-Implement-conditional-copy-move-ctors-assign-operato.patch delete mode 100644 chromium-65.0.3325.146-Implement-converting-constructors-from-Optional-U.patch delete mode 100644 chromium-65.0.3325.146-Implement-value-forward-constructor.patch delete mode 100644 chromium-65.0.3325.146-Update-non-copy-non-move-assign-operators.patch delete mode 100644 chromium-65.0.3325.146-Use-affirmative-expression-in-base-Optional.patch delete mode 100644 chromium-65.0.3325.146-gcc5-r3.patch delete mode 100644 chromium-65.0.3325.146-gcc7.patch delete mode 100644 chromium-65.0.3325.146-workaround-gcc7-is_trivially_copy_constructable-failure.patch delete mode 100644 chromium-65.0.3325.146-wtf-oilpan-Remove-GC-checks-from-WTF-Optional-T.patch delete mode 100644 chromium-65.0.3325.146-wtf-vector-fix.patch delete mode 100644 chromium-65.0.3325.162-boolfix.patch delete mode 100644 chromium-65.0.3325.162-epel7-stdc++.patch delete mode 100644 chromium-65.0.3325.162-skia-aarch64-buildfix.patch delete mode 100644 chromium-66.0.3359.117-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch delete mode 100644 chromium-66.0.3359.117-GCC-do-not-use-initializer-list-for-NoDestructor-of-.patch delete mode 100644 chromium-66.0.3359.117-gcc-copy-constructor-fix.patch delete mode 100644 chromium-66.0.3359.117-gcc-optional-move-fixes.patch delete mode 100644 chromium-66.0.3359.117-gcc-vector-copy-constructor-fix.patch delete mode 100644 chromium-66.0.3359.117-gcc5-r3.patch delete mode 100644 chromium-66.0.3359.117-nounrar.patch delete mode 100644 chromium-66.0.3359.139-arm-init-fix.patch delete mode 100644 chromium-66.0.3359.170-gcc8-alignof.patch delete mode 100644 chromium-67.0.3396.62-boolfix.patch delete mode 100644 chromium-67.0.3396.62-crashpad-aarch64-buildfix.patch delete mode 100644 chromium-67.0.3396.62-epel7-use-old-python-exec-syntax.patch delete mode 100644 chromium-67.0.3396.62-skia-aarch64-buildfix.patch delete mode 100644 chromium-67.0.3396.87-fedora-user-agent.patch delete mode 100644 chromium-67.0.3396.99-py2-bootstrap.patch delete mode 100644 chromium-68.0.3440.106-fedora-user-agent.patch delete mode 100644 chromium-68.0.3440.106-fix-build-networking_private.patch delete mode 100644 chromium-68.0.3440.106-notest.patch delete mode 100644 chromium-68.0.3440.84-cors-string.patch delete mode 100644 chromium-68.0.3440.84-libjpeg.patch delete mode 100644 chromium-68.0.3440.84-libwebp-shim.patch delete mode 100644 chromium-68.0.3440.84-move-unique-ptr.patch delete mode 100644 chromium-69.0.3497.81-gcc8-alignof.patch delete mode 100644 chromium-69.0.3497.81-norar.patch delete mode 100644 chromium-69.0.3497.81-py2-bootstrap.patch delete mode 100644 chromium-69.0.3497.81-widevine-r2.patch delete mode 100644 chromium-70.0.3538.110-remove-sysroot-options.patch delete mode 100644 chromium-70.0.3538.77-harfbuzz2-fix.patch delete mode 100644 chromium-71-gcc-0.patch delete mode 100644 chromium-71.0.3578.98-el7-fix-noexcept.patch delete mode 100644 chromium-71.0.3578.98-norar.patch delete mode 100644 chromium-71.0.3578.98-remove-sysroot-options.patch delete mode 100644 chromium-71.0.3578.98-vaapi-libva1-compatibility.patch delete mode 100644 chromium-72.0.3626.121-fix-va-check.patch delete mode 100644 chromium-72.0.3626.121-norar.patch delete mode 100644 chromium-73-gcc-0.patch delete mode 100644 chromium-73-gcc-1.patch delete mode 100644 chromium-73-gcc-2.patch delete mode 100644 chromium-73-gcc-3.patch delete mode 100644 chromium-73-gcc-4.patch delete mode 100644 chromium-73-gcc-5.patch delete mode 100644 chromium-73-gcc-6.patch delete mode 100644 chromium-73.0.3683.103-glibc-2.29-clone-vfork.patch delete mode 100644 chromium-73.0.3683.75-aarch64-crashpad-limits.patch delete mode 100644 chromium-73.0.3683.75-el7-fix-noexcept.patch delete mode 100644 chromium-73.0.3683.75-no-header-hygiene.patch delete mode 100644 chromium-gcc5-r3.patch delete mode 100644 chromium-gcc8-r588316.patch delete mode 100644 chromium-gcc8-r588547.patch delete mode 100644 chromium-gcc8-r589614.patch delete mode 100644 chromium-gcc8-r591015.patch delete mode 100644 chromium-gn-bootstrap-r17.patch delete mode 100644 chromium-math.h-r0.patch delete mode 100644 chromium-stdint.patch delete mode 100644 relax-libva-version.patch delete mode 100644 revert-gn-4960.patch delete mode 100644 revert-gn-4980.patch diff --git a/0001-vpx_sum_squares_2d_i16_neon-Make-s2-a-uint64x1_t.patch b/0001-vpx_sum_squares_2d_i16_neon-Make-s2-a-uint64x1_t.patch deleted file mode 100644 index f73ded3..0000000 --- a/0001-vpx_sum_squares_2d_i16_neon-Make-s2-a-uint64x1_t.patch +++ /dev/null @@ -1,54 +0,0 @@ -Upstream-Status: Submitted - -GCC aarch64 build fix [this is actually a libvpx patch, not a Chromium one] - -Sent to: https://chromium-review.googlesource.com/c/webm/libvpx/+/1136449 - -Signed-off-by: Raphael Kubo da Costa ---- -From c20bd394f18c47bf133b51d6a40399273c3f24e0 Mon Sep 17 00:00:00 2001 -From: Raphael Kubo da Costa -Date: Fri, 13 Jul 2018 14:29:09 +0200 -Subject: [PATCH] vpx_sum_squares_2d_i16_neon(): Make |s2| a uint64x1_t. - -This fixes the build with at least GCC 7.3, where it was previously failing -with: - -../../third_party/libvpx/source/libvpx/vpx_dsp/arm/sum_squares_neon.c: In function 'vpx_sum_squares_2d_i16_neon': -../../third_party/libvpx/source/libvpx/vpx_dsp/arm/sum_squares_neon.c:34:5: note: use -flax-vector-conversions to permit conversions between vectors with differing element types or numbers of subparts - s2 = vpaddl_u32(s1); - ^~ -../../third_party/libvpx/source/libvpx/vpx_dsp/arm/sum_squares_neon.c:34:8: error: incompatible types when assigning to type 'int64x1_t' from type 'uint64x1_t' - s2 = vpaddl_u32(s1); - ^ -../../third_party/libvpx/source/libvpx/vpx_dsp/arm/sum_squares_neon.c:81:8: error: incompatible types when assigning to type 'int64x1_t' from type 'uint64x1_t' - s2 = vadd_u64(vget_low_u64(s1), vget_high_u64(s1)); - ^ -../../third_party/libvpx/source/libvpx/vpx_dsp/arm/sum_squares_neon.c:84:24: error: incompatible type for argument 1 of 'vget_lane_u64' - return vget_lane_u64(s2, 0); - ^~ - -The generated assembly was verified to remain identical with both GCC and -LLVM. - -Change-Id: I2778428ee1fee0a674d0d4910347c2a717de21ac ---- - vpx_dsp/arm/sum_squares_neon.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/vpx_dsp/arm/sum_squares_neon.c b/vpx_dsp/arm/sum_squares_neon.c -index 8942ba83b..cfefad993 100644 ---- a/third_party/libvpx/source/libvpx/vpx_dsp/arm/sum_squares_neon.c -+++ b/third_party/libvpx/source/libvpx/vpx_dsp/arm/sum_squares_neon.c -@@ -14,7 +14,7 @@ - #include "./vpx_dsp_rtcd.h" - - uint64_t vpx_sum_squares_2d_i16_neon(const int16_t *src, int stride, int size) { -- int64x1_t s2; -+ uint64x1_t s2; - - if (size == 4) { - int16x4_t s[4]; --- -2.14.4 - diff --git a/chromium-46.0.2490.71-notest.patch b/chromium-46.0.2490.71-notest.patch deleted file mode 100644 index e4e3448..0000000 --- a/chromium-46.0.2490.71-notest.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-46.0.2490.71/chrome/test/data/webui_test_resources.grd.notest chromium-46.0.2490.71/chrome/test/data/webui_test_resources.grd ---- chromium-46.0.2490.71/chrome/test/data/webui_test_resources.grd.notest 2015-10-16 02:01:56.644149741 -0400 -+++ chromium-46.0.2490.71/chrome/test/data/webui_test_resources.grd 2015-10-16 02:02:36.217285227 -0400 -@@ -8,7 +8,6 @@ - - - -- - - - diff --git a/chromium-52.0.2743.116-unset-madv_free.patch b/chromium-52.0.2743.116-unset-madv_free.patch deleted file mode 100644 index 2867c79..0000000 --- a/chromium-52.0.2743.116-unset-madv_free.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -up chromium-52.0.2743.116/third_party/WebKit/Source/wtf/allocator/PageAllocator.cpp.madv_free chromium-52.0.2743.116/third_party/WebKit/Source/wtf/allocator/PageAllocator.cpp ---- chromium-52.0.2743.116/third_party/WebKit/Source/wtf/allocator/PageAllocator.cpp.madv_free 2016-08-15 13:07:29.279655676 -0400 -+++ chromium-52.0.2743.116/third_party/WebKit/Source/wtf/allocator/PageAllocator.cpp 2016-08-15 13:08:38.447317416 -0400 -@@ -41,6 +41,11 @@ - #include - #include - -+#if OS(LINUX) && defined(MADV_FREE) -+// Added in Linux 4.5, but it breaks the sandbox. -+#undef MADV_FREE -+#endif -+ - #ifndef MADV_FREE - #define MADV_FREE MADV_DONTNEED - #endif diff --git a/chromium-52.0.2743.82-arm-webrtc.patch b/chromium-52.0.2743.82-arm-webrtc.patch deleted file mode 100644 index f1a6629..0000000 --- a/chromium-52.0.2743.82-arm-webrtc.patch +++ /dev/null @@ -1,51 +0,0 @@ -diff -up chromium-52.0.2743.82/third_party/webrtc/system_wrappers/source/cpu_features.cc.armwebrtc chromium-52.0.2743.82/third_party/webrtc/system_wrappers/source/cpu_features.cc ---- chromium-52.0.2743.82/third_party/webrtc/system_wrappers/source/cpu_features.cc.armwebrtc 2016-08-03 09:30:53.922861020 +0200 -+++ chromium-52.0.2743.82/third_party/webrtc/system_wrappers/source/cpu_features.cc 2016-08-03 09:32:00.337498174 +0200 -@@ -18,6 +18,47 @@ - - #include "webrtc/typedefs.h" - -+#include -+#ifdef __arm__ -+#include -+#include -+#include -+#include -+#endif -+ -+#ifdef __arm__ -+uint64_t WebRtc_GetCPUFeaturesARM() { -+ static bool detected = false; -+ static uint64_t have_neon = 0; -+ -+ int fd; -+ Elf32_auxv_t auxv; -+ unsigned int hwcaps; -+ -+ if (!detected) { -+ int fd; -+ Elf32_auxv_t auxv; -+ unsigned int hwcaps; -+ -+ fd = open("/proc/self/auxv", O_RDONLY); -+ if (fd >= 0) { -+ while (read(fd, &auxv, sizeof(Elf32_auxv_t)) == sizeof(Elf32_auxv_t)) { -+ if (auxv.a_type == AT_HWCAP) { -+ have_neon = (auxv.a_un.a_val & HWCAP_NEON) ? kCPUFeatureNEON : 0; -+ break; -+ } -+ } -+ close (fd); -+ } else { -+ have_neon = 0; -+ } -+ detected = true; -+ } -+ -+ return 0 | have_neon; // others here as we need them -+} -+#endif -+ - // No CPU feature is available => straight C path. - int GetCPUInfoNoASM(CPUFeature feature) { - (void)feature; diff --git a/chromium-52.0.2743.82-master-prefs-path.patch b/chromium-52.0.2743.82-master-prefs-path.patch deleted file mode 100644 index 6ddd26f..0000000 --- a/chromium-52.0.2743.82-master-prefs-path.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -up chromium-52.0.2743.82/chrome/browser/first_run/first_run_internal_linux.cc.etc chromium-52.0.2743.82/chrome/browser/first_run/first_run_internal_linux.cc ---- chromium-52.0.2743.82/chrome/browser/first_run/first_run_internal_linux.cc.etc 2016-08-03 10:15:57.980692109 +0200 -+++ chromium-52.0.2743.82/chrome/browser/first_run/first_run_internal_linux.cc 2016-08-03 10:16:44.553325229 +0200 -@@ -19,9 +19,9 @@ bool IsOrganicFirstRun() { - - base::FilePath MasterPrefsPath() { - // The standard location of the master prefs is next to the chrome binary. -+ // ...but we patch it to use /etc/chromium - base::FilePath master_prefs; -- if (!PathService::Get(base::DIR_EXE, &master_prefs)) -- return base::FilePath(); -+ master_prefs = base::FilePath("/etc/chromium"); - return master_prefs.AppendASCII(installer::kDefaultMasterPrefs); - } - diff --git a/chromium-55.0.2883.75-sandbox-pie.patch b/chromium-55.0.2883.75-sandbox-pie.patch deleted file mode 100644 index 6aae0b0..0000000 --- a/chromium-55.0.2883.75-sandbox-pie.patch +++ /dev/null @@ -1,30 +0,0 @@ -diff -up chromium-55.0.2883.75/sandbox/linux/BUILD.gn.sandboxpie chromium-55.0.2883.75/sandbox/linux/BUILD.gn ---- chromium-55.0.2883.75/sandbox/linux/BUILD.gn.sandboxpie 2016-12-01 18:02:17.000000000 -0500 -+++ chromium-55.0.2883.75/sandbox/linux/BUILD.gn 2016-12-12 16:26:06.863426221 -0500 -@@ -279,11 +279,17 @@ if (is_linux) { - # For ULLONG_MAX - "-std=gnu99", - -+ "-fPIE", -+ - # These files have a suspicious comparison. - # TODO fix this and re-enable this warning. - "-Wno-sign-compare", - ] - -+ ldflags = [ -+ "-pie", -+ ] -+ - import("//build/config/compiler/compiler.gni") - import("//build/config/sanitizers/sanitizers.gni") - if (is_component_build || using_sanitizer) { -@@ -293,7 +299,7 @@ if (is_linux) { - # other flags that executable_config might have. - configs -= [ "//build/config:executable_config" ] - if (!use_gold) { -- ldflags = [ "-Wl,--disable-new-dtags" ] -+ ldflags += [ "-Wl,--disable-new-dtags" ] - } - } - diff --git a/chromium-56.0.2924.87-fpermissive.patch b/chromium-56.0.2924.87-fpermissive.patch deleted file mode 100644 index be68cf9..0000000 --- a/chromium-56.0.2924.87-fpermissive.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -up chromium-56.0.2924.87/third_party/WebKit/Source/BUILD.gn.permissive chromium-56.0.2924.87/third_party/WebKit/Source/BUILD.gn ---- chromium-56.0.2924.87/third_party/WebKit/Source/BUILD.gn.permissive 2017-02-13 12:32:23.419665971 -0500 -+++ chromium-56.0.2924.87/third_party/WebKit/Source/BUILD.gn 2017-02-13 12:33:16.146629190 -0500 -@@ -54,6 +54,9 @@ config("config") { - cflags = [] - defines = [] - -+ # error: there are no arguments to 'swapAnchor' that depend on a template parameter, so a declaration of 'swapAnchor' must be available [-fpermissive] -+ cflags += [ "-fpermissive" ] -+ - if (is_win) { - cflags += [ - "/wd4305", # Truncation from 'type1' to 'type2'. diff --git a/chromium-56.0.2924.87-gcc5.patch b/chromium-56.0.2924.87-gcc5.patch deleted file mode 100644 index 902f92b..0000000 --- a/chromium-56.0.2924.87-gcc5.patch +++ /dev/null @@ -1,354 +0,0 @@ -diff -up chromium-56.0.2924.87/third_party/cld_2/src/internal/cld_generated_cjk_uni_prop_80.cc.gcc5 chromium-56.0.2924.87/third_party/cld_2/src/internal/cld_generated_cjk_uni_prop_80.cc ---- chromium-56.0.2924.87/third_party/cld_2/src/internal/cld_generated_cjk_uni_prop_80.cc.gcc5 2017-02-01 21:03:47.000000000 -0500 -+++ chromium-56.0.2924.87/third_party/cld_2/src/internal/cld_generated_cjk_uni_prop_80.cc 2017-02-09 10:38:38.319790897 -0500 -@@ -165,8 +165,8 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - // state[16 + 2] 0x000000 Byte 2 of 3 (relative offsets) - X__,X__,X__,X__,X__,X__,X__,X__, X__,X__,X__,X__,X__,X__,X__,X__, - X__,X__,X__,X__,X__,X__,X__,X__, X__,X__,X__,X__,X__,X__,X__,X__, ---14,-14,-14,-14,-14,-14,-14,-14, -14,-14,-14,-14,-14,-14,-14,-14, ---14,-14,-14,-14,-14,-14,-14,-14, -14,-14,-14,-14,-14,-14,-14,-14, -+(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14, (uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14, -+(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14, (uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14,(uint8)-14, - - // state[17 + 2] 0x0031c0 Byte 3 of 3 (property) - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -@@ -259,10 +259,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 229,229,229, 3,208, 0,229, 5, 233, 0,229,229,229,208,229,229, - - // state[32 + 2] 0x002000 Byte 2 of 3 (relative offsets) ---30,-30,-30,-30,-30,-30,-30,-30, -30,-30,-30,-30,-30,-30,-30,-30, ---30,-30,-30,-30,-30,-30,-30,-30, -30,-30,-30,-30,-30,-30,-30,-30, ---30,-30,-30,-30,-30,-30,-30,-30, -30,-30,-30,-30,-30,-30,-30,-30, ---30,-30,-30,-30,-30,-30,-30,-30, -30,-30,-30,-30,-30,-30,-30,-30, -+(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, (uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, -+(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, (uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, -+(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, (uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, -+(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, (uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30,(uint8)-30, - - // state[33 + 2] 0x003780 Byte 3 of 3 (property) - 229,208,229,229,208,229,229,229, 208,208,208,208,208, 4, 6,208, -@@ -355,10 +355,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 228,229,229,229,229,233,233, 6, 208,229, 3,229,233, 6, 6, 0, - - // state[48 + 2] 0x001000 Byte 2 of 3 (relative offsets) ---46,-46,-46,-46,-42,-41,-40,-39, -46,-46,-46,-46,-46,-46,-46,-46, ---46,-46,-46,-46,-46,-46,-46,-46, -46,-46,-46,-46,-46,-46,-46,-46, ---46,-46,-46,-46,-46,-46,-46,-46, -46,-46,-46,-46,-46,-46,-46,-46, ---46,-46,-46,-46,-46,-46,-46,-46, -46,-46,-46,-46,-46,-46,-46,-46, -+(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-42,(uint8)-41,(uint8)-40,(uint8)-39, (uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, -+(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, (uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, -+(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, (uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, -+(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, (uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46,(uint8)-46, - - // state[49 + 2] 0x003b40 Byte 3 of 3 (property) - 6,227,208,233,208, 3, 3,208, 208,229, 0,229,233,219, 0, 6, -@@ -451,10 +451,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 229,208,208,208,217,208,229,229, 229,229,208,217,208,229,229,229, - - // state[64 + 2] 0x003000 Byte 2 of 3 (relative offsets) ---54,-53,-52,-51,-50,-58,-49,-47, -62,-62,-62,-62,-62,-62,-62,-62, ---46,-45,-44,-43,-42,-41,-40,-39, -38,-37,-36,-35,-34,-33,-31,-30, ---29,-28,-27,-26,-25,-24,-23,-22, -21,-20,-19,-18,-17,-15,-14,-13, ---12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, -+(uint8)-54,(uint8)-53,(uint8)-52,(uint8)-51,(uint8)-50,(uint8)-58,(uint8)-49,(uint8)-47, (uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62,(uint8)-62, -+(uint8)-46,(uint8)-45,(uint8)-44,(uint8)-43,(uint8)-42,(uint8)-41,(uint8)-40,(uint8)-39, (uint8)-38,(uint8)-37,(uint8)-36,(uint8)-35,(uint8)-34,(uint8)-33,(uint8)-31,(uint8)-30, -+(uint8)-29,(uint8)-28,(uint8)-27,(uint8)-26,(uint8)-25,(uint8)-24,(uint8)-23,(uint8)-22, (uint8)-21,(uint8)-20,(uint8)-19,(uint8)-18,(uint8)-17,(uint8)-15,(uint8)-14,(uint8)-13, -+(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, - - // state[65 + 2] 0x003f00 Byte 3 of 3 (property) - 217,217,208, 3,208,217,208,208, 6,229,208,228,229,229,208,229, -@@ -547,10 +547,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 229,208,229,229,208,229,233, 0, 208,208,229,208,227,229,229,229, - - // state[80 + 2] 0x004000 Byte 2 of 3 (relative offsets) ---11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, -+(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, - 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, -- 38, 39, 40, 41, 42, 43, 44,-78, 45, 46, 47, 48, 49, 50, 51, 52, -+ 38, 39, 40, 41, 42, 43, 44,(uint8)-78, 45, 46, 47, 48, 49, 50, 51, 52, - - // state[81 + 2] 0x0042c0 Byte 3 of 3 (property) - 229, 0,229,229,229, 3, 4, 4, 229,229,229,229,208,229, 0,208, -@@ -931,7 +931,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 0,142, 98, 28,117,206,212,212, 220, 15, 0,231,199,231,111, 28, - - // state[144 + 2] 0x005000 Byte 2 of 3 (relative offsets) ---11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, -+(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, - 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, - 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, -@@ -1315,7 +1315,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 16, 15,211,118, 0,231, 68,231, 0, 99,161, 0,115,221,144,140, - - // state[208 + 2] 0x006000 Byte 2 of 3 (relative offsets) ---10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, -+(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, - 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, - 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, -@@ -1699,7 +1699,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 119, 16, 51, 0, 0, 68,136, 72, 144,118, 87,201,191,136, 78,233, - - // state[272 + 2] 0x007000 Byte 2 of 3 (relative offsets) -- -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, -+ (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, - 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, - 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, -@@ -2083,7 +2083,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 212,212, 0,126,140,220,220, 0, 0, 0,127,118,106, 0,199, 0, - - // state[336 + 2] 0x008000 Byte 2 of 3 (relative offsets) -- -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, 8, -+ (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, - 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, -@@ -2467,7 +2467,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 0,122, 0,231,100,232, 0, 0, 117, 0,206,231, 0, 0,231, 0, - - // state[400 + 2] 0x009000 Byte 2 of 3 (relative offsets) -- -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, 8, 9, -+ (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, 9, - 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, - 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, -@@ -2851,10 +2851,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - - // state[464 + 2] 0x00a000 Byte 2 of 3 (relative offsets) -- -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -- -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -- -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -- -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -+ (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, -+ (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, -+ (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, (uint8)-6, -+ (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, (uint8)-5, - - // state[465 + 2] 0x000080 Byte 2 of 2 (property) - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -@@ -2947,10 +2947,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 208,208,208,208, 5, 6,208, 2, 0, 6, 6, 5,208,208,208, 6, - - // state[480 + 2] 0x00b000 Byte 2 of 3 (relative offsets) ---20,-20,-20,-20,-20,-20,-20,-20, -20,-20,-20,-20,-20,-20,-20,-20, ---20,-20,-20,-20,-20,-20,-20,-20, -20,-20,-20,-20,-20,-20,-20,-20, ---20,-20,-20,-20,-20,-20,-20,-20, -20,-20,-20,-20,-20,-20,-20,-20, ---20,-20,-20,-20,-20,-20,-20,-20, -20,-20,-20,-20,-20,-20,-20,-20, -+(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, (uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, -+(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, (uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, -+(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, (uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, -+(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, (uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20,(uint8)-20, - - // state[481 + 2] 0x020100 Byte 4 of 4 (property) - 2, 6, 5, 6, 5,229, 5,208, 208,208,208,208,208,208,208,229, -@@ -3043,10 +3043,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 208,208, 5, 5, 5,208,208, 2, 229, 5, 5, 5, 5, 5, 6,208, - - // state[496 + 2] 0x00d000 Byte 2 of 3 (relative offsets) ---35,-35,-35,-35,-35,-35,-35,-35, -35,-35,-35,-35,-35,-35,-35,-35, ---35,-35,-35,-35,-35,-35,-35,-35, -35,-35,-35,-35,-35,-35,-34,-33, ---33,-33,-33,-33,-33,-33,-33,-33, -33,-33,-33,-33,-33,-33,-33,-33, ---33,-33,-33,-33,-33,-33,-33,-33, -33,-33,-33,-33,-33,-33,-33,-33, -+(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35, (uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35, -+(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35, (uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-35,(uint8)-34,(uint8)-33, -+(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33, (uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33, -+(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33, (uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33,(uint8)-33, - - // state[497 + 2] 0x0204c0 Byte 4 of 4 (property) - 2, 2, 5, 5, 5, 2,208, 2, 5, 5, 6,208,208, 5, 5, 5, -@@ -3139,10 +3139,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 208,208, 5, 5, 5, 5, 6, 6, 208,208, 2,208,208,208,208,208, - - // state[512 + 2] 0x00f000 Byte 2 of 3 (relative offsets) ---47,-47,-47,-47,-47,-47,-47,-47, -47,-47,-47,-47,-47,-47,-47,-47, ---47,-47,-47,-47,-47,-47,-47,-47, -47,-47,-47,-47,-47,-47,-47,-47, ---47,-47,-47,-47,-46,-45,-44,-43, -42,-41,-44,-40,-47,-47,-47,-47, ---47,-47,-47,-47,-47,-47,-47,-47, -47,-47,-47,-47,-47,-39,-38,-37, -+(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, (uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, -+(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, (uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, -+(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-46,(uint8)-45,(uint8)-44,(uint8)-43, (uint8)-42,(uint8)-41,(uint8)-44,(uint8)-40,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, -+(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47, (uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-47,(uint8)-39,(uint8)-38,(uint8)-37, - - // state[513 + 2] 0x020880 Byte 4 of 4 (property) - 5, 5, 5, 6,208,208,208,208, 208,208, 5, 5, 6, 6,208,208, -@@ -3235,10 +3235,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 5, 6,208,218,208,208,208,218, 208, 6,227,229, 6, 6, 6,208, - - // state[528 + 2] 0x020000 Byte 3 of 4 (relative offsets) ---52,-51,-50,-49,-47,-46,-45,-44, -43,-42,-41,-40,-39,-38,-37,-36, ---35,-34,-33,-31,-30,-29,-28,-27, -26,-25,-24,-23,-22,-21,-20,-19, ---18,-17,-15,-14,-13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -- -1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, -+(uint8)-52,(uint8)-51,(uint8)-50,(uint8)-49,(uint8)-47,(uint8)-46,(uint8)-45,(uint8)-44, (uint8)-43,(uint8)-42,(uint8)-41,(uint8)-40,(uint8)-39,(uint8)-38,(uint8)-37,(uint8)-36, -+(uint8)-35,(uint8)-34,(uint8)-33,(uint8)-31,(uint8)-30,(uint8)-29,(uint8)-28,(uint8)-27, (uint8)-26,(uint8)-25,(uint8)-24,(uint8)-23,(uint8)-22,(uint8)-21,(uint8)-20,(uint8)-19, -+(uint8)-18,(uint8)-17,(uint8)-15,(uint8)-14,(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, -+ (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, - - // state[529 + 2] 0x020c40 Byte 4 of 4 (property) - 227, 5, 5, 5, 2, 2, 2, 2, 213, 2, 2, 2, 2, 2,208, 6, -@@ -3427,7 +3427,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 208,208,208,208,208,208,208,208, 208, 6, 6, 6, 6, 2, 5, 5, - - // state[560 + 2] 0x021000 Byte 3 of 4 (relative offsets) ---16,-15,-14,-13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, -+(uint8)-16,(uint8)-15,(uint8)-14,(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, - 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, -@@ -3811,7 +3811,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 5, 5, 5, 6, 6, 6, 5,208, 208,229,208,208, 5, 5, 5, 5, - - // state[624 + 2] 0x022000 Byte 3 of 4 (relative offsets) ---15,-14,-13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, -+(uint8)-15,(uint8)-14,(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, - 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, - 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, - 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, -@@ -4195,7 +4195,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 6, 6, 4, 5,208,208,208,208, 208,208,229, 6, 5, 6, 6, 6, - - // state[688 + 2] 0x023000 Byte 3 of 4 (relative offsets) ---14,-13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, -+(uint8)-14,(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, - 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, - 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, - 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -@@ -4579,7 +4579,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 5, 5, 5, 5, 5, 5, 5, 6, 208,208,208,208,208,208, 6, 6, - - // state[752 + 2] 0x024000 Byte 3 of 4 (relative offsets) ---13,-12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, -+(uint8)-13,(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, - 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, - 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, - 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, -@@ -4963,7 +4963,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 229, 6, 2, 2, 2, 2, 2, 2, 2, 2, 2, 5, 2, 2, 6,229, - - // state[816 + 2] 0x025000 Byte 3 of 4 (relative offsets) ---12,-11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, -+(uint8)-12,(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, - 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, - 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, - 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, -@@ -5347,7 +5347,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 6, 6, 6, 5, 5, 5, 5, 6, 6, 6, 3, 6,229,208,208,229, - - // state[880 + 2] 0x026000 Byte 3 of 4 (relative offsets) ---11,-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, -+(uint8)-11,(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, - 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, - 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, -@@ -5731,7 +5731,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 208, 6, 6,208,208,208,208,208, 6, 6, 6,216, 5, 5, 5, 5, - - // state[944 + 2] 0x027000 Byte 3 of 4 (relative offsets) ---10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, -+(uint8)-10, (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, - 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, - 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, -@@ -6115,7 +6115,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 5, 5, 5, 6,208,208, 6, 6, 208,229,208,208,208, 5, 5, 5, - - // state[1008 + 2] 0x028000 Byte 3 of 4 (relative offsets) -- -9, -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, -+ (uint8)-9, (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, - 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, - 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, -@@ -6499,7 +6499,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 208,208, 5, 5, 6,208,208, 5, 208,208,208, 6,208, 6,208,208, - - // state[1072 + 2] 0x029000 Byte 3 of 4 (relative offsets) -- -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, 8, -+ (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, - 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, -@@ -6883,7 +6883,7 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 229,229,229,229,208,208,208,229, 208,208,208,229, 0,229,208,208, - - // state[1136 + 2] 0x02a000 Byte 3 of 4 (relative offsets) -- -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, 8, 9, -+ (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, 2, 3, 4, 5, 6, 7, 8, 9, - 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 22, 22, 22, - 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, - 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, -@@ -7075,10 +7075,10 @@ X__,X__,X__,X__,X__,X__,X__,X__, X__,X__ - 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, - - // state[1168 + 2] 0x02f000 Byte 3 of 4 (relative offsets) -- -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -- -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -- -8, -7, -6, -5, -4, -3, -2, -1, 1, -9, -9, -9, -9, -9, -9, -9, -- -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, -+ (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, -+ (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, -+ (uint8)-8, (uint8)-7, (uint8)-6, (uint8)-5, (uint8)-4, (uint8)-3, (uint8)-2, (uint8)-1, 1, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, -+ (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, (uint8)-9, - - // state[1169 + 2] 0x02fa00 Byte 4 of 4 (property) - 217, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,217, 5, 5, -diff -up chromium-56.0.2924.87/third_party/webgl/src/specs/latest/2.0/webgl2.idl.gcc5 chromium-56.0.2924.87/third_party/webgl/src/specs/latest/2.0/webgl2.idl ---- chromium-56.0.2924.87/third_party/webgl/src/specs/latest/2.0/webgl2.idl.gcc5 2017-02-01 21:03:57.000000000 -0500 -+++ chromium-56.0.2924.87/third_party/webgl/src/specs/latest/2.0/webgl2.idl 2017-02-09 10:38:38.380789675 -0500 -@@ -265,7 +265,7 @@ interface WebGL2RenderingContextBase - 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 -up chromium-56.0.2924.87/third_party/WebKit/Source/core/dom/NodeFilter.h.gcc5 chromium-56.0.2924.87/third_party/WebKit/Source/core/dom/NodeFilter.h ---- chromium-56.0.2924.87/third_party/WebKit/Source/core/dom/NodeFilter.h.gcc5 2017-02-01 21:03:09.000000000 -0500 -+++ chromium-56.0.2924.87/third_party/WebKit/Source/core/dom/NodeFilter.h 2017-02-09 10:38:38.387789535 -0500 -@@ -49,7 +49,7 @@ class NodeFilter final : public GarbageC - * to the value of NodeType for the equivalent node type. - */ - enum { -- kShowAll = 0xFFFFFFFF, -+ kShowAll = 256 /* 0xFFFFFFFF */, - kShowElement = 0x00000001, - kShowAttribute = 0x00000002, - kShowText = 0x00000004, -diff -up chromium-56.0.2924.87/third_party/WebKit/Source/core/dom/NodeFilter.idl.gcc5 chromium-56.0.2924.87/third_party/WebKit/Source/core/dom/NodeFilter.idl ---- chromium-56.0.2924.87/third_party/WebKit/Source/core/dom/NodeFilter.idl.gcc5 2017-02-01 21:03:09.000000000 -0500 -+++ chromium-56.0.2924.87/third_party/WebKit/Source/core/dom/NodeFilter.idl 2017-02-09 10:38:38.394789395 -0500 -@@ -30,7 +30,7 @@ - const unsigned short FILTER_SKIP = 3; - - // Constants for whatToShow -- const unsigned long SHOW_ALL = 0xFFFFFFFF; -+ const unsigned long SHOW_ALL = 256; // 0xFFFFFFFF - const unsigned long SHOW_ELEMENT = 0x1; - const unsigned long SHOW_ATTRIBUTE = 0x2; // historical - const unsigned long SHOW_TEXT = 0x4; -diff -up chromium-56.0.2924.87/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl.gcc5 chromium-56.0.2924.87/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl ---- chromium-56.0.2924.87/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl.gcc5 2017-02-01 21:03:09.000000000 -0500 -+++ chromium-56.0.2924.87/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl 2017-02-09 11:07:32.828682863 -0500 -@@ -239,7 +239,7 @@ typedef unsigned long long GLuint64; - 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; -@@ -269,7 +269,7 @@ typedef unsigned long long GLuint64; - const GLenum TEXTURE_IMMUTABLE_FORMAT = 0x912F; - const GLenum MAX_ELEMENT_INDEX = 0x8D6B; - const GLenum TEXTURE_IMMUTABLE_LEVELS = 0x82DF; -- const GLint TIMEOUT_IGNORED = -1; -+ const GLint TIMEOUT_IGNORED = 256; - - /* WebGL-specific enums */ - const GLenum MAX_CLIENT_WAIT_TIMEOUT_WEBGL = 0x9247; diff --git a/chromium-59.0.3071.115-ucontext-fix.patch b/chromium-59.0.3071.115-ucontext-fix.patch deleted file mode 100644 index 96bfadb..0000000 --- a/chromium-59.0.3071.115-ucontext-fix.patch +++ /dev/null @@ -1,214 +0,0 @@ -diff -up chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc.ucontextfix chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc ---- chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc.ucontextfix 2017-07-12 15:23:33.019591380 -0400 -+++ chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc 2017-07-12 15:32:52.069197546 -0400 -@@ -36,19 +36,19 @@ namespace google_breakpad { - - // Minidump defines register structures which are different from the raw - // structures which we get from the kernel. These are platform specific --// functions to juggle the ucontext and user structures into minidump format. -+// functions to juggle the ucontext_t and user structures into minidump format. - - #if defined(__i386__) - --uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) { -+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) { - return uc->uc_mcontext.gregs[REG_ESP]; - } - --uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) { -+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) { - return uc->uc_mcontext.gregs[REG_EIP]; - } - --void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc, -+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc, - const struct _libc_fpstate* fp) { - const greg_t* regs = uc->uc_mcontext.gregs; - -@@ -88,15 +88,15 @@ void UContextReader::FillCPUContext(RawC - - #elif defined(__x86_64) - --uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) { -+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) { - return uc->uc_mcontext.gregs[REG_RSP]; - } - --uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) { -+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) { - return uc->uc_mcontext.gregs[REG_RIP]; - } - --void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc, -+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc, - const struct _libc_fpstate* fpregs) { - const greg_t* regs = uc->uc_mcontext.gregs; - -@@ -145,15 +145,15 @@ void UContextReader::FillCPUContext(RawC - - #elif defined(__ARM_EABI__) - --uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) { -+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) { - return uc->uc_mcontext.arm_sp; - } - --uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) { -+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) { - return uc->uc_mcontext.arm_pc; - } - --void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc) { -+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc) { - out->context_flags = MD_CONTEXT_ARM_FULL; - - out->iregs[0] = uc->uc_mcontext.arm_r0; -@@ -184,15 +184,15 @@ void UContextReader::FillCPUContext(RawC - - #elif defined(__aarch64__) - --uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) { -+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) { - return uc->uc_mcontext.sp; - } - --uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) { -+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) { - return uc->uc_mcontext.pc; - } - --void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc, -+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc, - const struct fpsimd_context* fpregs) { - out->context_flags = MD_CONTEXT_ARM64_FULL; - -@@ -210,15 +210,15 @@ void UContextReader::FillCPUContext(RawC - - #elif defined(__mips__) - --uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) { -+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) { - return uc->uc_mcontext.gregs[MD_CONTEXT_MIPS_REG_SP]; - } - --uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) { -+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) { - return uc->uc_mcontext.pc; - } - --void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc) { -+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc) { - #if _MIPS_SIM == _ABI64 - out->context_flags = MD_CONTEXT_MIPS64_FULL; - #elif _MIPS_SIM == _ABIO32 -diff -up chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h.ucontextfix chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h ---- chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h.ucontextfix 2017-07-12 15:33:08.486806743 -0400 -+++ chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h 2017-07-12 15:33:57.299644808 -0400 -@@ -39,23 +39,23 @@ - - namespace google_breakpad { - --// Wraps platform-dependent implementations of accessors to ucontext structs. -+// Wraps platform-dependent implementations of accessors to ucontext_t structs. - struct UContextReader { -- static uintptr_t GetStackPointer(const struct ucontext* uc); -+ static uintptr_t GetStackPointer(const ucontext_t* uc); - -- static uintptr_t GetInstructionPointer(const struct ucontext* uc); -+ static uintptr_t GetInstructionPointer(const ucontext_t* uc); - -- // Juggle a arch-specific ucontext into a minidump format -+ // Juggle a arch-specific ucontext_t into a minidump format - // out: the minidump structure - // info: the collection of register structures. - #if defined(__i386__) || defined(__x86_64) -- static void FillCPUContext(RawContextCPU *out, const ucontext *uc, -+ static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc, - const struct _libc_fpstate* fp); - #elif defined(__aarch64__) -- static void FillCPUContext(RawContextCPU *out, const ucontext *uc, -+ static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc, - const struct fpsimd_context* fpregs); - #else -- static void FillCPUContext(RawContextCPU *out, const ucontext *uc); -+ static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc); - #endif - }; - -diff -up chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.cc.ucontextfix chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.cc ---- chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.cc.ucontextfix 2017-07-12 15:34:09.094364048 -0400 -+++ chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.cc 2017-07-12 15:35:36.483283853 -0400 -@@ -439,9 +439,9 @@ bool ExceptionHandler::HandleSignal(int - // Fill in all the holes in the struct to make Valgrind happy. - memset(&g_crash_context_, 0, sizeof(g_crash_context_)); - memcpy(&g_crash_context_.siginfo, info, sizeof(siginfo_t)); -- memcpy(&g_crash_context_.context, uc, sizeof(struct ucontext)); -+ memcpy(&g_crash_context_.context, uc, sizeof(ucontext_t)); - #if defined(__aarch64__) -- struct ucontext* uc_ptr = (struct ucontext*)uc; -+ ucontext_t* uc_ptr = (ucontext_t*)uc; - struct fpsimd_context* fp_ptr = - (struct fpsimd_context*)&uc_ptr->uc_mcontext.__reserved; - if (fp_ptr->head.magic == FPSIMD_MAGIC) { -@@ -450,9 +450,9 @@ bool ExceptionHandler::HandleSignal(int - } - #elif !defined(__ARM_EABI__) && !defined(__mips__) - // FP state is not part of user ABI on ARM Linux. -- // In case of MIPS Linux FP state is already part of struct ucontext -+ // In case of MIPS Linux FP state is already part of ucontext_t - // and 'float_state' is not a member of CrashContext. -- struct ucontext* uc_ptr = (struct ucontext*)uc; -+ ucontext_t* uc_ptr = (ucontext_t*)uc; - if (uc_ptr->uc_mcontext.fpregs) { - memcpy(&g_crash_context_.float_state, uc_ptr->uc_mcontext.fpregs, - sizeof(g_crash_context_.float_state)); -@@ -476,7 +476,7 @@ bool ExceptionHandler::SimulateSignalDel - // ExceptionHandler::HandleSignal(). - siginfo.si_code = SI_USER; - siginfo.si_pid = getpid(); -- struct ucontext context; -+ ucontext_t context; - getcontext(&context); - return HandleSignal(sig, &siginfo, &context); - } -diff -up chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.h.ucontextfix chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.h ---- chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.h.ucontextfix 2017-07-12 15:35:48.559996380 -0400 -+++ chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.h 2017-07-12 15:36:32.615948562 -0400 -@@ -191,11 +191,11 @@ class ExceptionHandler { - struct CrashContext { - siginfo_t siginfo; - pid_t tid; // the crashing thread. -- struct ucontext context; -+ ucontext_t context; - #if !defined(__ARM_EABI__) && !defined(__mips__) - // #ifdef this out because FP state is not part of user ABI for Linux ARM. - // In case of MIPS Linux FP state is already part of struct -- // ucontext so 'float_state' is not required. -+ // ucontext_t so 'float_state' is not required. - fpstate_t float_state; - #endif - }; -diff -up chromium-59.0.3071.115/breakpad/src/client/linux/microdump_writer/microdump_writer.cc.ucontextfix chromium-59.0.3071.115/breakpad/src/client/linux/microdump_writer/microdump_writer.cc ---- chromium-59.0.3071.115/breakpad/src/client/linux/microdump_writer/microdump_writer.cc.ucontextfix 2017-07-12 15:37:26.232674196 -0400 -+++ chromium-59.0.3071.115/breakpad/src/client/linux/microdump_writer/microdump_writer.cc 2017-07-12 15:37:39.032369973 -0400 -@@ -579,7 +579,7 @@ class MicrodumpWriter { - - void* Alloc(unsigned bytes) { return dumper_->allocator()->Alloc(bytes); } - -- const struct ucontext* const ucontext_; -+ const ucontext_t* const ucontext_; - #if !defined(__ARM_EABI__) && !defined(__mips__) - const google_breakpad::fpstate_t* const float_state_; - #endif -diff -up chromium-59.0.3071.115/breakpad/src/client/linux/minidump_writer/minidump_writer.cc.ucontextfix chromium-59.0.3071.115/breakpad/src/client/linux/minidump_writer/minidump_writer.cc ---- chromium-59.0.3071.115/breakpad/src/client/linux/minidump_writer/minidump_writer.cc.ucontextfix 2017-07-12 15:37:54.041013246 -0400 -+++ chromium-59.0.3071.115/breakpad/src/client/linux/minidump_writer/minidump_writer.cc 2017-07-12 15:38:19.600405748 -0400 -@@ -1323,7 +1323,7 @@ class MinidumpWriter { - const int fd_; // File descriptor where the minidum should be written. - const char* path_; // Path to the file where the minidum should be written. - -- const struct ucontext* const ucontext_; // also from the signal handler -+ const ucontext_t* const ucontext_; // also from the signal handler - #if !defined(__ARM_EABI__) && !defined(__mips__) - const google_breakpad::fpstate_t* const float_state_; // ditto - #endif diff --git a/chromium-59.0.3071.86-ffmpeg-stdatomic.patch b/chromium-59.0.3071.86-ffmpeg-stdatomic.patch deleted file mode 100644 index a512513..0000000 --- a/chromium-59.0.3071.86-ffmpeg-stdatomic.patch +++ /dev/null @@ -1,17 +0,0 @@ -diff -up chromium-59.0.3071.86/third_party/ffmpeg/libavutil/cpu.c.ffmpeg-stdatomic chromium-59.0.3071.86/third_party/ffmpeg/libavutil/cpu.c ---- chromium-59.0.3071.86/third_party/ffmpeg/libavutil/cpu.c.ffmpeg-stdatomic 2017-06-07 17:15:24.993945430 -0400 -+++ chromium-59.0.3071.86/third_party/ffmpeg/libavutil/cpu.c 2017-06-07 17:18:41.625997601 -0400 -@@ -17,7 +17,13 @@ - */ - - #include -+// GCC 4.8 didn't have stdatomic, but was advertising it. -+// https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58016 -+#if !defined(__clang__) && defined(__GNUC__) && (__GNUC__ == 4 || (__GNUC__ == 4 && (__GNUC_MINOR__ == 8))) -+#include -+#else - #include -+#endif - - #include "cpu.h" - #include "cpu_internal.h" diff --git a/chromium-59.0.3071.86-nullfix.patch b/chromium-59.0.3071.86-nullfix.patch deleted file mode 100644 index 20e9d18..0000000 --- a/chromium-59.0.3071.86-nullfix.patch +++ /dev/null @@ -1,43 +0,0 @@ -diff -up chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn.nullfix chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn ---- chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn.nullfix 2017-06-05 15:03:01.000000000 -0400 -+++ chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn 2017-06-07 15:32:43.531911624 -0400 -@@ -31,6 +31,7 @@ gcc_toolchain("arm64") { - ld = cxx - readelf = "${toolprefix}readelf" - nm = "${toolprefix}nm" -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - toolchain_args = { - current_cpu = "arm64" -@@ -49,6 +50,7 @@ gcc_toolchain("arm") { - ld = cxx - readelf = "${toolprefix}readelf" - nm = "${toolprefix}nm" -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - toolchain_args = { - current_cpu = "arm" -@@ -91,6 +93,7 @@ gcc_toolchain("x86") { - nm = "nm" - ar = "ar" - ld = cxx -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - # Output linker map files for binary size analysis. - enable_linker_map = true -@@ -136,6 +139,7 @@ gcc_toolchain("x64") { - nm = "nm" - ar = "ar" - ld = cxx -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - # Output linker map files for binary size analysis. - enable_linker_map = true -@@ -161,6 +165,7 @@ gcc_toolchain("mipsel") { - ld = cxx - readelf = "mipsel-linux-gnu-readelf" - nm = "mipsel-linux-gnu-nm" -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - toolchain_args = { - cc_wrapper = "" diff --git a/chromium-59.0.3071.86-system-clang.patch b/chromium-59.0.3071.86-system-clang.patch deleted file mode 100644 index 458834b..0000000 --- a/chromium-59.0.3071.86-system-clang.patch +++ /dev/null @@ -1,10 +0,0 @@ -diff -up chromium-59.0.3071.86/build/config/clang/clang.gni.system-clang chromium-59.0.3071.86/build/config/clang/clang.gni ---- chromium-59.0.3071.86/build/config/clang/clang.gni.system-clang 2017-06-11 20:57:07.327949687 -0400 -+++ chromium-59.0.3071.86/build/config/clang/clang.gni 2017-06-11 20:57:24.085620826 -0400 -@@ -9,5 +9,5 @@ declare_args() { - # coding guidelines, etc. Only used when compiling with Clang. - clang_use_chrome_plugins = is_clang && !is_nacl && !use_xcode_clang - -- clang_base_path = "//third_party/llvm-build/Release+Asserts" -+ clang_base_path = "/usr" - } diff --git a/chromium-60.0.3112.78-gn-system.patch b/chromium-60.0.3112.78-gn-system.patch deleted file mode 100644 index 60489bb..0000000 --- a/chromium-60.0.3112.78-gn-system.patch +++ /dev/null @@ -1,221 +0,0 @@ -diff -up chromium-60.0.3112.78/build/linux/unbundle/libjpeg.gn.gnsystem chromium-60.0.3112.78/build/linux/unbundle/libjpeg.gn ---- chromium-60.0.3112.78/build/linux/unbundle/libjpeg.gn.gnsystem 2017-07-25 15:04:48.000000000 -0400 -+++ chromium-60.0.3112.78/build/linux/unbundle/libjpeg.gn 2017-07-31 10:38:25.879951641 -0400 -@@ -16,6 +16,10 @@ source_set("libjpeg") { - libs = [ "jpeg" ] - } - -+config("system_libjpeg") { -+ defines = [ "USE_SYSTEM_LIBJPEG=1" ] -+} -+ - source_set("simd") { - } - -diff -up chromium-60.0.3112.78/build/linux/unbundle/libusb.gn.gnsystem chromium-60.0.3112.78/build/linux/unbundle/libusb.gn ---- chromium-60.0.3112.78/build/linux/unbundle/libusb.gn.gnsystem 2017-07-31 10:38:25.880951622 -0400 -+++ chromium-60.0.3112.78/build/linux/unbundle/libusb.gn 2017-07-31 10:38:25.879951641 -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-60.0.3112.78/build/linux/unbundle/opus.gn.gnsystem chromium-60.0.3112.78/build/linux/unbundle/opus.gn ---- chromium-60.0.3112.78/build/linux/unbundle/opus.gn.gnsystem 2017-07-25 15:04:48.000000000 -0400 -+++ chromium-60.0.3112.78/build/linux/unbundle/opus.gn 2017-07-31 10:38:25.880951622 -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-60.0.3112.78/build/linux/unbundle/replace_gn_files.py.gnsystem chromium-60.0.3112.78/build/linux/unbundle/replace_gn_files.py ---- chromium-60.0.3112.78/build/linux/unbundle/replace_gn_files.py.gnsystem 2017-07-31 10:38:25.880951622 -0400 -+++ chromium-60.0.3112.78/build/linux/unbundle/replace_gn_files.py 2017-07-31 10:39:58.067159914 -0400 -@@ -26,6 +26,7 @@ REPLACEMENTS = { - 'libevent': 'base/third_party/libevent/BUILD.gn', - 'libjpeg': 'build/secondary/third_party/libjpeg_turbo/BUILD.gn', - '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-60.0.3112.78-last-commit-position.patch b/chromium-60.0.3112.78-last-commit-position.patch deleted file mode 100644 index 7c26d9f..0000000 --- a/chromium-60.0.3112.78-last-commit-position.patch +++ /dev/null @@ -1,28 +0,0 @@ -diff -up chromium-60.0.3112.78/tools/gn/BUILD.gn.lastcommit chromium-60.0.3112.78/tools/gn/BUILD.gn ---- chromium-60.0.3112.78/tools/gn/BUILD.gn.lastcommit 2017-07-31 10:42:38.568041044 -0400 -+++ chromium-60.0.3112.78/tools/gn/BUILD.gn 2017-07-31 10:47:50.760974587 -0400 -@@ -268,7 +268,6 @@ executable("gn") { - - deps = [ - ":gn_lib", -- ":last_commit_position", - "//base", - "//build/config:exe_and_shlib_deps", - "//build/win:default_exe_manifest", -diff -up chromium-60.0.3112.78/tools/gn/gn_main.cc.lastcommit chromium-60.0.3112.78/tools/gn/gn_main.cc ---- chromium-60.0.3112.78/tools/gn/gn_main.cc.lastcommit 2017-07-25 15:05:19.000000000 -0400 -+++ chromium-60.0.3112.78/tools/gn/gn_main.cc 2017-07-31 10:42:38.568041044 -0400 -@@ -12,13 +12,7 @@ - #include "tools/gn/standard_out.h" - #include "tools/gn/switches.h" - --// Only the GN-generated build makes this header for now. --// TODO(brettw) consider adding this if we need it in GYP. --#if defined(GN_BUILD) --#include "tools/gn/last_commit_position.h" --#else - #define LAST_COMMIT_POSITION "UNKNOWN" --#endif - - namespace { - diff --git a/chromium-60.0.3112.78-no-zlib-mangle.patch b/chromium-60.0.3112.78-no-zlib-mangle.patch deleted file mode 100644 index 4b90360..0000000 --- a/chromium-60.0.3112.78-no-zlib-mangle.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -up chromium-60.0.3112.78/third_party/zlib/zconf.h.nozmangle chromium-60.0.3112.78/third_party/zlib/zconf.h ---- chromium-60.0.3112.78/third_party/zlib/zconf.h.nozmangle 2017-08-04 10:45:17.509152089 -0400 -+++ chromium-60.0.3112.78/third_party/zlib/zconf.h 2017-08-04 10:45:30.451902380 -0400 -@@ -8,9 +8,6 @@ - #ifndef ZCONF_H - #define ZCONF_H - --/* This include does prefixing as below, but with an updated set of names */ --#include "names.h" -- - /* - * If you *really* need a unique prefix for all types and library functions, - * compile with -DZ_PREFIX. The "standard" zlib should be compiled without it. diff --git a/chromium-60.0.3112.90-vulkan-force-c99.patch b/chromium-60.0.3112.90-vulkan-force-c99.patch deleted file mode 100644 index 881aa91..0000000 --- a/chromium-60.0.3112.90-vulkan-force-c99.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-60.0.3112.90/third_party/angle/src/vulkan_support/BUILD.gn.c99 chromium-60.0.3112.90/third_party/angle/src/vulkan_support/BUILD.gn ---- chromium-60.0.3112.90/third_party/angle/src/vulkan_support/BUILD.gn.c99 2017-08-14 10:40:48.028799820 -0400 -+++ chromium-60.0.3112.90/third_party/angle/src/vulkan_support/BUILD.gn 2017-08-14 10:41:43.054734910 -0400 -@@ -180,6 +180,7 @@ config("vulkan_internal_config") { - cflags += [ "-Wno-ignored-attributes" ] - } - if (is_linux) { -+ cflags += [ "-std=c99" ] - defines += [ - "SYSCONFDIR=\"/etc\"", - "FALLBACK_CONFIG_DIRS=\"/etc/xdg\"", diff --git a/chromium-61.0.3163.79-aarch64-glibc-2.26.90.patch b/chromium-61.0.3163.79-aarch64-glibc-2.26.90.patch deleted file mode 100644 index 12e88d2..0000000 --- a/chromium-61.0.3163.79-aarch64-glibc-2.26.90.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-61.0.3163.79/breakpad/src/client/linux/handler/exception_handler.cc.aarch64glibc chromium-61.0.3163.79/breakpad/src/client/linux/handler/exception_handler.cc ---- chromium-61.0.3163.79/breakpad/src/client/linux/handler/exception_handler.cc.aarch64glibc 2017-09-12 10:12:25.375736650 -0400 -+++ chromium-61.0.3163.79/breakpad/src/client/linux/handler/exception_handler.cc 2017-09-12 10:14:42.339638321 -0400 -@@ -461,7 +461,7 @@ bool ExceptionHandler::HandleSignal(int - #if defined(__aarch64__) - ucontext_t* uc_ptr = (ucontext_t*)uc; - struct fpsimd_context* fp_ptr = -- (struct fpsimd_context*)&uc_ptr->uc_mcontext.__reserved; -+ (struct fpsimd_context*)&uc_ptr->uc_mcontext.__glibc_reserved1; - if (fp_ptr->head.magic == FPSIMD_MAGIC) { - memcpy(&g_crash_context_.float_state, fp_ptr, - sizeof(g_crash_context_.float_state)); diff --git a/chromium-61.0.3163.79-fix-ffmpeg-aarch64.patch b/chromium-61.0.3163.79-fix-ffmpeg-aarch64.patch deleted file mode 100644 index a8c7260..0000000 --- a/chromium-61.0.3163.79-fix-ffmpeg-aarch64.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-61.0.3163.79/third_party/ffmpeg/ffmpeg_generated.gni.aarch64 chromium-61.0.3163.79/third_party/ffmpeg/ffmpeg_generated.gni ---- chromium-61.0.3163.79/third_party/ffmpeg/ffmpeg_generated.gni.aarch64 2017-09-06 14:34:36.247232957 -0400 -+++ chromium-61.0.3163.79/third_party/ffmpeg/ffmpeg_generated.gni 2017-09-06 14:36:37.632892363 -0400 -@@ -537,7 +537,7 @@ if (use_linux_config && current_cpu == " - ] - } - --if ((is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS")) { -+if ((is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chromium")) { - ffmpeg_c_sources += [ - "libavcodec/aarch64/mpegaudiodsp_init.c", - ] diff --git a/chromium-61.0.3163.79-setopaque.patch b/chromium-61.0.3163.79-setopaque.patch deleted file mode 100644 index b797d10..0000000 --- a/chromium-61.0.3163.79-setopaque.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-61.0.3163.79/cc/blink/web_layer_impl.h.setopaque chromium-61.0.3163.79/cc/blink/web_layer_impl.h ---- chromium-61.0.3163.79/cc/blink/web_layer_impl.h.setopaque 2017-09-06 13:55:45.454175023 -0400 -+++ chromium-61.0.3163.79/cc/blink/web_layer_impl.h 2017-09-06 13:58:02.395533936 -0400 -@@ -71,7 +71,7 @@ class CC_BLINK_EXPORT WebLayerImpl : pub - bool IsRootForIsolatedGroup() override; - void SetShouldHitTest(bool should_hit_test) override; - bool ShouldHitTest() override; -- void SetOpaque(bool opaque) override; -+ CC_BLINK_EXPORT void SetOpaque(bool opaque) override; - bool Opaque() const override; - void SetPosition(const blink::WebFloatPoint& position) override; - blink::WebFloatPoint GetPosition() const override; diff --git a/chromium-62.0.3202.62-correct-cplusplus-check.patch b/chromium-62.0.3202.62-correct-cplusplus-check.patch deleted file mode 100644 index 39f8580..0000000 --- a/chromium-62.0.3202.62-correct-cplusplus-check.patch +++ /dev/null @@ -1,20 +0,0 @@ -diff -up chromium-62.0.3202.62/third_party/crc32c/src/include/crc32c/crc32c.h.fix-cplusplus-conditional chromium-62.0.3202.62/third_party/crc32c/src/include/crc32c/crc32c.h ---- chromium-62.0.3202.62/third_party/crc32c/src/include/crc32c/crc32c.h.fix-cplusplus-conditional 2017-10-17 15:12:35.000000000 -0400 -+++ chromium-62.0.3202.62/third_party/crc32c/src/include/crc32c/crc32c.h 2017-10-19 11:41:45.860279576 -0400 -@@ -38,6 +38,8 @@ inline uint32_t Crc32c(const std::string - // Visual Studio provides a header even in C++11 mode. When - // included, the header issues an #error. (C1189) - #if !defined(_MSC_VER) || __cplusplus >= 201703L -+// GCC issues an #error if __cplusplus <= 201402L -+#if defined(__GNUC__) && __cplusplus > 201402L - #include - - // Comptues the CRC32C of the bytes in the string_view. -@@ -46,6 +48,7 @@ inline uint32_t Crc32c(const std::string - string_view.size()); - } - -+#endif // defined(__GNUC__) && __cplusplus > 201402L - #endif // !defined(_MSC_VER) || __cplusplus >= 201703L - #endif // __has_include() - #endif // defined(__has_include) diff --git a/chromium-62.0.3202.62-dde535-gcc-fix.patch b/chromium-62.0.3202.62-dde535-gcc-fix.patch deleted file mode 100644 index 378403a..0000000 --- a/chromium-62.0.3202.62-dde535-gcc-fix.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -up chromium-62.0.3202.62/services/resource_coordinator/resource_coordinator_service.cc.dde535 chromium-62.0.3202.62/services/resource_coordinator/resource_coordinator_service.cc ---- chromium-62.0.3202.62/services/resource_coordinator/resource_coordinator_service.cc.dde535 2017-10-18 10:04:33.237966223 -0400 -+++ chromium-62.0.3202.62/services/resource_coordinator/resource_coordinator_service.cc 2017-10-18 10:05:00.442438694 -0400 -@@ -18,7 +18,8 @@ std::unique_ptr(); - -- return resource_coordinator_service; -+ return std::unique_ptr( -+ resource_coordinator_service.release()); - } - - ResourceCoordinatorService::ResourceCoordinatorService() diff --git a/chromium-62.0.3202.62-enable-mp3.patch b/chromium-62.0.3202.62-enable-mp3.patch deleted file mode 100644 index 3ed9dbf..0000000 --- a/chromium-62.0.3202.62-enable-mp3.patch +++ /dev/null @@ -1,484 +0,0 @@ -diff -up chromium-62.0.3202.62/components/neterror/resources/sounds/button-press.mp3 chromium-62.0.3202.62/components/neterror/resources/sounds/button-press -diff -up chromium-62.0.3202.62/components/neterror/resources/sounds/hit.mp3 chromium-62.0.3202.62/components/neterror/resources/sounds/hit -diff -up chromium-62.0.3202.62/components/neterror/resources/sounds/score-reached.mp3 chromium-62.0.3202.62/components/neterror/resources/sounds/score-reached -diff -up chromium-62.0.3202.62/media/base/mime_util_internal.cc.mp3 chromium-62.0.3202.62/media/base/mime_util_internal.cc ---- chromium-62.0.3202.62/media/base/mime_util_internal.cc.mp3 2017-10-17 15:10:44.000000000 -0400 -+++ chromium-62.0.3202.62/media/base/mime_util_internal.cc 2017-10-18 09:32:16.957562156 -0400 -@@ -266,15 +266,19 @@ void MimeUtil::AddSupportedMediaFormats( - CodecSet webm_codecs(webm_audio_codecs); - webm_codecs.insert(webm_video_codecs.begin(), webm_video_codecs.end()); - --#if BUILDFLAG(USE_PROPRIETARY_CODECS) - const CodecSet mp3_codecs{MP3}; -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - const CodecSet aac{MPEG2_AAC, MPEG4_AAC}; -+#else -+ const CodecSet aac{}; -+#endif -+ CodecSet mp4_audio_codecs(aac); -+ mp4_audio_codecs.emplace(MP3); - -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - CodecSet avc_and_aac(aac); - avc_and_aac.emplace(H264); - -- CodecSet mp4_audio_codecs(aac); -- mp4_audio_codecs.emplace(MP3); - mp4_audio_codecs.emplace(FLAC); - #if BUILDFLAG(ENABLE_AC3_EAC3_AUDIO_DEMUXING) - mp4_audio_codecs.emplace(AC3); -@@ -311,10 +315,10 @@ void MimeUtil::AddSupportedMediaFormats( - AddContainerWithCodecs("application/ogg", ogg_codecs, false); - AddContainerWithCodecs("audio/flac", implicit_codec, false); - --#if BUILDFLAG(USE_PROPRIETARY_CODECS) - AddContainerWithCodecs("audio/mpeg", mp3_codecs, true); // Allow "mp3". - AddContainerWithCodecs("audio/mp3", implicit_codec, true); - AddContainerWithCodecs("audio/x-mp3", implicit_codec, true); -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - AddContainerWithCodecs("audio/aac", implicit_codec, true); // AAC / ADTS. - AddContainerWithCodecs("audio/mp4", mp4_audio_codecs, true); - DCHECK(!mp4_video_codecs.empty()); -@@ -920,7 +924,6 @@ bool MimeUtil::IsCodecProprietary(Codec - case INVALID_CODEC: - case AC3: - case EAC3: -- case MP3: - case MPEG2_AAC: - case MPEG4_AAC: - case H264: -@@ -928,6 +931,7 @@ bool MimeUtil::IsCodecProprietary(Codec - case DOLBY_VISION: - return true; - -+ case MP3: - case PCM: - case VORBIS: - case OPUS: -diff -up chromium-62.0.3202.62/media/formats/BUILD.gn.mp3 chromium-62.0.3202.62/media/formats/BUILD.gn ---- chromium-62.0.3202.62/media/formats/BUILD.gn.mp3 2017-10-17 15:10:45.000000000 -0400 -+++ chromium-62.0.3202.62/media/formats/BUILD.gn 2017-10-18 09:25:18.353676481 -0400 -@@ -17,6 +17,14 @@ source_set("formats") { - "ac3/ac3_util.h", - "common/offset_byte_queue.cc", - "common/offset_byte_queue.h", -+ "mpeg/adts_constants.cc", -+ "mpeg/adts_constants.h", -+ "mpeg/adts_stream_parser.cc", -+ "mpeg/adts_stream_parser.h", -+ "mpeg/mpeg1_audio_stream_parser.cc", -+ "mpeg/mpeg1_audio_stream_parser.h", -+ "mpeg/mpeg_audio_stream_parser_base.cc", -+ "mpeg/mpeg_audio_stream_parser_base.h", - "webm/webm_audio_client.cc", - "webm/webm_audio_client.h", - "webm/webm_cluster_parser.cc", -@@ -78,14 +86,6 @@ source_set("formats") { - "mp4/sample_to_group_iterator.h", - "mp4/track_run_iterator.cc", - "mp4/track_run_iterator.h", -- "mpeg/adts_constants.cc", -- "mpeg/adts_constants.h", -- "mpeg/adts_stream_parser.cc", -- "mpeg/adts_stream_parser.h", -- "mpeg/mpeg1_audio_stream_parser.cc", -- "mpeg/mpeg1_audio_stream_parser.h", -- "mpeg/mpeg_audio_stream_parser_base.cc", -- "mpeg/mpeg_audio_stream_parser_base.h", - ] - } - -diff -up chromium-62.0.3202.62/third_party/catapult/third_party/gsutil/gslib/tests/test_data/test.mp3 chromium-62.0.3202.62/third_party/catapult/third_party/gsutil/gslib/tests/test_data/test -diff -up chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h.mp3 chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h ---- chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h.mp3 2017-10-18 09:05:31.000000000 -0400 -+++ chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h 2017-10-18 09:25:18.354676462 -0400 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/chrome/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-cross-compile --cross-prefix=/usr/bin/aarch64-linux-gnu- --target-os=linux --arch=aarch64 --enable-armv8 --extra-cflags='-march=armv8-a' --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/chrome/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-cross-compile --cross-prefix=/usr/bin/aarch64-linux-gnu- --target-os=linux --arch=aarch64 --enable-armv8 --extra-cflags='-march=armv8-a' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -542,7 +542,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -620,9 +620,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -968,7 +968,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1275,7 +1275,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2217,7 +2217,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h.mp3 chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h ---- chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h.mp3 2017-10-18 09:05:31.000000000 -0400 -+++ chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h 2017-10-18 09:25:18.355676443 -0400 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/jrummell/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --disable-neon --extra-cflags='-mfpu=vfpv3-d16' --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/jrummell/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --disable-neon --extra-cflags='-mfpu=vfpv3-d16' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -542,7 +542,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -620,9 +620,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -968,7 +968,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1275,7 +1275,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2217,7 +2217,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h.mp3 chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h ---- chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h.mp3 2017-10-18 09:05:31.000000000 -0400 -+++ chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h 2017-10-18 09:25:18.360676348 -0400 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/jrummell/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --enable-neon --extra-cflags='-mfpu=neon' --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/jrummell/chrome_root/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --enable-neon --extra-cflags='-mfpu=neon' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -542,7 +542,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -620,9 +620,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -968,7 +968,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1275,7 +1275,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2217,7 +2217,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h.mp3 chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h ---- chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h.mp3 2017-10-18 09:05:31.000000000 -0400 -+++ chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h 2017-10-18 09:25:18.360676348 -0400 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/chrome/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=i686 --extra-cflags='\"-m32\"' --extra-ldflags='\"-m32\"' --enable-yasm --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/chrome/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=i686 --extra-cflags='\"-m32\"' --extra-ldflags='\"-m32\"' --enable-yasm --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -542,7 +542,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -620,9 +620,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -968,7 +968,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1275,7 +1275,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2217,7 +2217,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h.mp3 chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h ---- chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h.mp3 2017-10-18 09:05:31.000000000 -0400 -+++ chromium-62.0.3202.62/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h 2017-10-18 09:25:18.361676329 -0400 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/chrome/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-lto --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/chrome/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-lto --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -542,7 +542,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -620,9 +620,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -968,7 +968,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1275,7 +1275,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2217,7 +2217,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-62.0.3202.62/third_party/ffmpeg/ffmpeg_generated.gni.mp3 chromium-62.0.3202.62/third_party/ffmpeg/ffmpeg_generated.gni ---- chromium-62.0.3202.62/third_party/ffmpeg/ffmpeg_generated.gni.mp3 2017-10-18 09:05:28.000000000 -0400 -+++ chromium-62.0.3202.62/third_party/ffmpeg/ffmpeg_generated.gni 2017-10-18 09:25:18.362676310 -0400 -@@ -182,17 +182,9 @@ if ((is_mac) || (is_win) || (use_linux_c - ] - } - --if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mips64el" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { -+if ((current_cpu == "x64") || (is_android && current_cpu == "arm" && arm_use_neon) || (is_android && current_cpu == "arm64") || (is_android && current_cpu == "mips64el") || (is_android && current_cpu == "mipsel") || (is_android && current_cpu == "x86") || (is_win) || (use_linux_config && current_cpu == "arm" && arm_use_neon) || (use_linux_config && current_cpu == "arm" && arm_use_neon) || (use_linux_config && current_cpu == "arm") || (use_linux_config && current_cpu == "arm") || (use_linux_config && current_cpu == "arm64") || (use_linux_config && current_cpu == "mipsel") || (use_linux_config && current_cpu == "x64") || (use_linux_config && current_cpu == "x86")) { - ffmpeg_c_sources += [ -- "libavcodec/aac_ac3_parser.c", -- "libavcodec/aac_parser.c", -- "libavcodec/aacadtsdec.c", -- "libavcodec/aacps_float.c", -- "libavcodec/aacpsdsp_float.c", -- "libavcodec/aacsbr.c", -- "libavcodec/aactab.c", - "libavcodec/ac3tab.c", -- "libavcodec/autorename_libavcodec_aacdec.c", - "libavcodec/autorename_libavcodec_mpegaudiodsp.c", - "libavcodec/autorename_libavcodec_sbrdsp.c", - "libavcodec/cbrt_data.c", -@@ -210,7 +202,6 @@ if ((current_cpu == "x64" && ffmpeg_bran - "libavcodec/mpegaudiodsp_float.c", - "libavcodec/sinewin.c", - "libavcodec/sinewin_fixed.c", -- "libavformat/aacdec.c", - "libavformat/apetag.c", - "libavformat/img2.c", - "libavformat/mov.c", -@@ -219,6 +210,20 @@ if ((current_cpu == "x64" && ffmpeg_bran - ] - } - -+if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mips64el" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { -+ ffmpeg_c_sources += [ -+ "libavcodec/aac_ac3_parser.c", -+ "libavcodec/aac_parser.c", -+ "libavcodec/aacadtsdec.c", -+ "libavcodec/aacps_float.c", -+ "libavcodec/aacpsdsp_float.c", -+ "libavcodec/aacsbr.c", -+ "libavcodec/aactab.c", -+ "libavcodec/autorename_libavcodec_aacdec.c", -+ "libavformat/aacdec.c", -+ ] -+} -+ - if ((is_android && current_cpu == "x64") || (is_android && current_cpu == "x86") || (is_mac) || (is_win) || (use_linux_config && current_cpu == "x64") || (use_linux_config && current_cpu == "x86")) { - ffmpeg_c_sources += [ - "libavcodec/x86/autorename_libavcodec_x86_vorbisdsp_init.c", -@@ -322,15 +327,19 @@ if ((is_mac) || (is_win) || (use_linux_c - if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { - ffmpeg_c_sources += [ - "libavcodec/x86/aacpsdsp_init.c", -+ ] -+ ffmpeg_yasm_sources += [ -+ "libavcodec/x86/aacpsdsp.asm", -+ ] -+} -+ -+if ((current_cpu == "x64") || (is_android && current_cpu == "x86") || (use_linux_config && current_cpu == "x64") || (use_linux_config && current_cpu == "x86") || (is_win)) { -+ ffmpeg_c_sources += [ - "libavcodec/x86/dct_init.c", - "libavcodec/x86/mpegaudiodsp.c", - "libavcodec/x86/sbrdsp_init.c", - ] --} -- --if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { - ffmpeg_yasm_sources += [ -- "libavcodec/x86/aacpsdsp.asm", - "libavcodec/x86/dct32.asm", - "libavcodec/x86/imdct36.asm", - "libavcodec/x86/sbrdsp.asm", -diff -up chromium-62.0.3202.62/third_party/ffmpeg/libavcodec/sbrdsp.c.mp3 chromium-62.0.3202.62/third_party/ffmpeg/libavcodec/sbrdsp.c ---- chromium-62.0.3202.62/third_party/ffmpeg/libavcodec/sbrdsp.c.mp3 2017-10-18 09:05:30.000000000 -0400 -+++ chromium-62.0.3202.62/third_party/ffmpeg/libavcodec/sbrdsp.c 2017-10-18 09:25:18.362676310 -0400 -@@ -23,6 +23,7 @@ - #define USE_FIXED 0 - - #include "aac.h" -+#include "aacsbrdata.h" - #include "config.h" - #include "libavutil/attributes.h" - #include "libavutil/intfloat.h" -diff -up chromium-62.0.3202.62/third_party/webrtc/examples/objc/AppRTCMobile/ios/resources/mozart.mp3 chromium-62.0.3202.62/third_party/webrtc/examples/objc/AppRTCMobile/ios/resources/mozart -diff -up chromium-62.0.3202.62/tools/android/audio_focus_grabber/java/res/raw/ping.mp3 chromium-62.0.3202.62/tools/android/audio_focus_grabber/java/res/raw/ping diff --git a/chromium-62.0.3202.62-epel7-no-nullptr-assignment-on-StructPtr.patch b/chromium-62.0.3202.62-epel7-no-nullptr-assignment-on-StructPtr.patch deleted file mode 100644 index 7af702a..0000000 --- a/chromium-62.0.3202.62-epel7-no-nullptr-assignment-on-StructPtr.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-62.0.3202.62/third_party/WebKit/Source/platform/blob/BlobData.cpp.nonullptr chromium-62.0.3202.62/third_party/WebKit/Source/platform/blob/BlobData.cpp ---- chromium-62.0.3202.62/third_party/WebKit/Source/platform/blob/BlobData.cpp.nonullptr 2017-10-18 10:10:14.216353575 -0400 -+++ chromium-62.0.3202.62/third_party/WebKit/Source/platform/blob/BlobData.cpp 2017-10-18 10:10:23.657170980 -0400 -@@ -295,7 +295,7 @@ BlobDataHandle::BlobDataHandle(std::uniq - - size_t current_memory_population = 0; - Vector elements; -- const DataElementPtr null_element = nullptr; -+ const DataElementPtr null_element; - BlobBytesProvider* last_bytes_provider = nullptr; - RefPtr file_runner = Platform::Current()->FileTaskRunner(); - diff --git a/chromium-62.0.3202.62-gcc-nc.patch b/chromium-62.0.3202.62-gcc-nc.patch deleted file mode 100644 index 0a74d25..0000000 --- a/chromium-62.0.3202.62-gcc-nc.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-62.0.3202.62/content/network/network_service_impl.cc.gcc-nc chromium-62.0.3202.62/content/network/network_service_impl.cc ---- chromium-62.0.3202.62/content/network/network_service_impl.cc.gcc-nc 2017-10-18 10:07:04.045041261 -0400 -+++ chromium-62.0.3202.62/content/network/network_service_impl.cc 2017-10-18 10:07:53.175088528 -0400 -@@ -90,6 +90,7 @@ NetworkServiceImpl::CreateNetworkContext - base::MakeUnique(this, std::move(request), - std::move(params), std::move(builder)); - *url_request_context = network_context->url_request_context(); -+ return std::unique_ptr(network_context.release()); - return network_context; - } - diff --git a/chromium-62.0.3202.62-gcc7.patch b/chromium-62.0.3202.62-gcc7.patch deleted file mode 100644 index 90d177d..0000000 --- a/chromium-62.0.3202.62-gcc7.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-62.0.3202.62/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 chromium-62.0.3202.62/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h ---- chromium-62.0.3202.62/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 2017-10-18 09:20:04.072765163 -0400 -+++ chromium-62.0.3202.62/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h 2017-10-18 09:21:40.156905187 -0400 -@@ -9,6 +9,7 @@ - #include "platform/graphics/WebGraphicsContext3DProviderWrapper.h" - #include "platform/wtf/ThreadSpecific.h" - -+#include - #include - - namespace blink { diff --git a/chromium-62.0.3202.62-rvalue-fix.patch b/chromium-62.0.3202.62-rvalue-fix.patch deleted file mode 100644 index 89197cd..0000000 --- a/chromium-62.0.3202.62-rvalue-fix.patch +++ /dev/null @@ -1,45 +0,0 @@ -diff -up chromium-62.0.3202.62/chrome/browser/ui/webui/settings/on_startup_handler.cc.another-rvalue-fix chromium-62.0.3202.62/chrome/browser/ui/webui/settings/on_startup_handler.cc ---- chromium-62.0.3202.62/chrome/browser/ui/webui/settings/on_startup_handler.cc.another-rvalue-fix 2017-10-18 10:15:58.855675480 -0400 -+++ chromium-62.0.3202.62/chrome/browser/ui/webui/settings/on_startup_handler.cc 2017-10-18 10:16:28.925093301 -0400 -@@ -77,7 +77,7 @@ std::unique_ptr OnStartupHa - !extensions::ExtensionSystem::Get(profile_) - ->management_policy() - ->MustRemainEnabled(ntp_extension, nullptr)); -- return dict; -+ return std::move(dict); - } - - void OnStartupHandler::HandleGetNtpExtension(const base::ListValue* args) { -diff -up chromium-62.0.3202.62/ui/views/animation/ink_drop_host_view.cc.another-rvalue-fix chromium-62.0.3202.62/ui/views/animation/ink_drop_host_view.cc ---- chromium-62.0.3202.62/ui/views/animation/ink_drop_host_view.cc.another-rvalue-fix 2017-10-18 10:15:16.408497853 -0400 -+++ chromium-62.0.3202.62/ui/views/animation/ink_drop_host_view.cc 2017-10-18 10:15:43.793967075 -0400 -@@ -305,7 +305,7 @@ std::unique_ptr InkDropHost - base::MakeUnique(this, size()); - ink_drop->SetAutoHighlightMode( - views::InkDropImpl::AutoHighlightMode::HIDE_ON_RIPPLE); -- return ink_drop; -+ return std:move(ink_drop); - } - - std::unique_ptr -@@ -314,7 +314,7 @@ InkDropHostView::CreateDefaultFloodFillI - InkDropHostView::CreateDefaultInkDropImpl(); - ink_drop->SetAutoHighlightMode( - views::InkDropImpl::AutoHighlightMode::SHOW_ON_RIPPLE); -- return ink_drop; -+ return std:move(ink_drop); - } - - } // namespace views -diff -up chromium-62.0.3202.62/ui/views/controls/button/checkbox.cc.another-rvalue-fix chromium-62.0.3202.62/ui/views/controls/button/checkbox.cc ---- chromium-62.0.3202.62/ui/views/controls/button/checkbox.cc.another-rvalue-fix 2017-10-18 10:14:18.054627919 -0400 -+++ chromium-62.0.3202.62/ui/views/controls/button/checkbox.cc 2017-10-18 10:14:42.265159378 -0400 -@@ -198,7 +198,7 @@ std::unique_ptr Checkbox::Creat - std::unique_ptr ink_drop = CreateDefaultInkDropImpl(); - ink_drop->SetShowHighlightOnHover(false); - ink_drop->SetAutoHighlightMode(InkDropImpl::AutoHighlightMode::NONE); -- return ink_drop; -+ return std::move(ink_drop); - } - - std::unique_ptr Checkbox::CreateInkDropRipple() const { diff --git a/chromium-63.0.3289.84-aarch64-glibc-2.26.90.patch b/chromium-63.0.3289.84-aarch64-glibc-2.26.90.patch deleted file mode 100644 index 469d680..0000000 --- a/chromium-63.0.3289.84-aarch64-glibc-2.26.90.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-63.0.3239.84/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc.aarch64glibc chromium-63.0.3239.84/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc ---- chromium-63.0.3239.84/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc.aarch64glibc 2017-12-12 09:56:24.469343868 -0500 -+++ chromium-63.0.3239.84/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc 2017-12-12 09:56:38.468071095 -0500 -@@ -461,7 +461,7 @@ bool ExceptionHandler::HandleSignal(int - #if defined(__aarch64__) - ucontext_t* uc_ptr = (ucontext_t*)uc; - struct fpsimd_context* fp_ptr = -- (struct fpsimd_context*)&uc_ptr->uc_mcontext.__reserved; -+ (struct fpsimd_context*)&uc_ptr->uc_mcontext.__glibc_reserved1; - if (fp_ptr->head.magic == FPSIMD_MAGIC) { - memcpy(&g_crash_context_.float_state, fp_ptr, - sizeof(g_crash_context_.float_state)); diff --git a/chromium-63.0.3289.84-enable-mp3.patch b/chromium-63.0.3289.84-enable-mp3.patch deleted file mode 100644 index 91a331a..0000000 --- a/chromium-63.0.3289.84-enable-mp3.patch +++ /dev/null @@ -1,485 +0,0 @@ -diff -up chromium-63.0.3239.84/components/neterror/resources/sounds/button-press.mp3 chromium-63.0.3239.84/components/neterror/resources/sounds/button-press -diff -up chromium-63.0.3239.84/components/neterror/resources/sounds/hit.mp3 chromium-63.0.3239.84/components/neterror/resources/sounds/hit -diff -up chromium-63.0.3239.84/components/neterror/resources/sounds/score-reached.mp3 chromium-63.0.3239.84/components/neterror/resources/sounds/score-reached -diff -up chromium-63.0.3239.84/media/base/mime_util_internal.cc.mp3 chromium-63.0.3239.84/media/base/mime_util_internal.cc ---- chromium-63.0.3239.84/media/base/mime_util_internal.cc.mp3 2017-12-06 15:05:29.000000000 -0500 -+++ chromium-63.0.3239.84/media/base/mime_util_internal.cc 2017-12-07 10:52:02.472510232 -0500 -@@ -266,15 +266,19 @@ void MimeUtil::AddSupportedMediaFormats( - CodecSet webm_codecs(webm_audio_codecs); - webm_codecs.insert(webm_video_codecs.begin(), webm_video_codecs.end()); - --#if BUILDFLAG(USE_PROPRIETARY_CODECS) - const CodecSet mp3_codecs{MP3}; -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - const CodecSet aac{MPEG2_AAC, MPEG4_AAC}; -+#else -+ const CodecSet aac{}; -+#endif -+ CodecSet mp4_audio_codecs(aac); -+ mp4_audio_codecs.emplace(MP3); - -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - CodecSet avc_and_aac(aac); - avc_and_aac.emplace(H264); - -- CodecSet mp4_audio_codecs(aac); -- mp4_audio_codecs.emplace(MP3); - mp4_audio_codecs.emplace(FLAC); - #if BUILDFLAG(ENABLE_AC3_EAC3_AUDIO_DEMUXING) - mp4_audio_codecs.emplace(AC3); -@@ -311,10 +315,10 @@ void MimeUtil::AddSupportedMediaFormats( - AddContainerWithCodecs("application/ogg", ogg_codecs, false); - AddContainerWithCodecs("audio/flac", implicit_codec, false); - --#if BUILDFLAG(USE_PROPRIETARY_CODECS) - AddContainerWithCodecs("audio/mpeg", mp3_codecs, true); // Allow "mp3". - AddContainerWithCodecs("audio/mp3", implicit_codec, true); - AddContainerWithCodecs("audio/x-mp3", implicit_codec, true); -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - AddContainerWithCodecs("audio/aac", implicit_codec, true); // AAC / ADTS. - AddContainerWithCodecs("audio/mp4", mp4_audio_codecs, true); - DCHECK(!mp4_video_codecs.empty()); -@@ -935,7 +939,6 @@ bool MimeUtil::IsCodecProprietary(Codec - case INVALID_CODEC: - case AC3: - case EAC3: -- case MP3: - case MPEG2_AAC: - case MPEG4_AAC: - case H264: -@@ -943,6 +946,7 @@ bool MimeUtil::IsCodecProprietary(Codec - case DOLBY_VISION: - return true; - -+ case MP3: - case PCM: - case VORBIS: - case OPUS: -diff -up chromium-63.0.3239.84/media/formats/BUILD.gn.mp3 chromium-63.0.3239.84/media/formats/BUILD.gn ---- chromium-63.0.3239.84/media/formats/BUILD.gn.mp3 2017-12-06 15:05:29.000000000 -0500 -+++ chromium-63.0.3239.84/media/formats/BUILD.gn 2017-12-07 10:52:02.473510212 -0500 -@@ -20,6 +20,14 @@ source_set("formats") { - "ac3/ac3_util.h", - "common/offset_byte_queue.cc", - "common/offset_byte_queue.h", -+ "mpeg/adts_constants.cc", -+ "mpeg/adts_constants.h", -+ "mpeg/adts_stream_parser.cc", -+ "mpeg/adts_stream_parser.h", -+ "mpeg/mpeg1_audio_stream_parser.cc", -+ "mpeg/mpeg1_audio_stream_parser.h", -+ "mpeg/mpeg_audio_stream_parser_base.cc", -+ "mpeg/mpeg_audio_stream_parser_base.h", - "webm/webm_audio_client.cc", - "webm/webm_audio_client.h", - "webm/webm_cluster_parser.cc", -@@ -81,14 +89,6 @@ source_set("formats") { - "mp4/sample_to_group_iterator.h", - "mp4/track_run_iterator.cc", - "mp4/track_run_iterator.h", -- "mpeg/adts_constants.cc", -- "mpeg/adts_constants.h", -- "mpeg/adts_stream_parser.cc", -- "mpeg/adts_stream_parser.h", -- "mpeg/mpeg1_audio_stream_parser.cc", -- "mpeg/mpeg1_audio_stream_parser.h", -- "mpeg/mpeg_audio_stream_parser_base.cc", -- "mpeg/mpeg_audio_stream_parser_base.h", - ] - } - -diff -up chromium-63.0.3239.84/third_party/catapult/third_party/gsutil/gslib/tests/test_data/test.mp3 chromium-63.0.3239.84/third_party/catapult/third_party/gsutil/gslib/tests/test_data/test -diff -up chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h.mp3 chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h ---- chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h.mp3 2017-12-07 09:51:37.000000000 -0500 -+++ chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm64/config.h 2017-12-07 11:08:41.116117073 -0500 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/blink3/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-cross-compile --cross-prefix=/usr/bin/aarch64-linux-gnu- --target-os=linux --arch=aarch64 --enable-armv8 --extra-cflags='-march=armv8-a' --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/blink3/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-cross-compile --cross-prefix=/usr/bin/aarch64-linux-gnu- --target-os=linux --arch=aarch64 --enable-armv8 --extra-cflags='-march=armv8-a' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -547,7 +547,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -626,9 +626,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -979,7 +979,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1292,7 +1292,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2267,7 +2267,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h.mp3 chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h ---- chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h.mp3 2017-12-07 09:51:37.000000000 -0500 -+++ chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm/config.h 2017-12-07 11:09:23.602291820 -0500 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/chcunningham/chrome_root/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --disable-neon --extra-cflags='-mfpu=vfpv3-d16' --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/chcunningham/chrome_root/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --disable-neon --extra-cflags='-mfpu=vfpv3-d16' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -547,7 +547,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -626,9 +626,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -979,7 +979,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1292,7 +1292,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2267,7 +2267,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h.mp3 chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h ---- chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h.mp3 2017-12-07 09:51:37.000000000 -0500 -+++ chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/arm-neon/config.h 2017-12-07 11:09:49.945779754 -0500 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/chcunningham/chrome_root/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --enable-neon --extra-cflags='-mfpu=neon' --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/home/chcunningham/chrome_root/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=arm --enable-armv6 --enable-armv6t2 --enable-vfp --enable-thumb --extra-cflags='-march=armv7-a' --enable-cross-compile --target-os=linux --cross-prefix=armv7a-cros-linux-gnueabi- --extra-cflags='-mtune=cortex-a8' --extra-cflags='-mfloat-abi=hard' --enable-neon --extra-cflags='-mfpu=neon' --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -547,7 +547,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -626,9 +626,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -979,7 +979,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1292,7 +1292,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2267,7 +2267,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h.mp3 chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h ---- chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h.mp3 2017-12-07 09:51:37.000000000 -0500 -+++ chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/ia32/config.h 2017-12-07 11:10:25.513089579 -0500 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/blink3/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=i686 --extra-cflags='\"-m32\"' --extra-ldflags='\"-m32\"' --enable-yasm --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/blink3/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --arch=i686 --extra-cflags='\"-m32\"' --extra-ldflags='\"-m32\"' --enable-yasm --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -547,7 +547,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -626,9 +626,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -979,7 +979,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1292,7 +1292,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2267,7 +2267,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h.mp3 chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h ---- chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h.mp3 2017-12-07 09:51:37.000000000 -0500 -+++ chromium-63.0.3239.84/third_party/ffmpeg/chromium/config/Chromium/linux/x64/config.h 2017-12-07 11:10:50.721599547 -0500 -@@ -1,7 +1,7 @@ - /* Automatically generated by configure - do not modify! */ - #ifndef FFMPEG_CONFIG_H - #define FFMPEG_CONFIG_H --#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/blink3/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-lto --enable-pic" -+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/ssd/blink3/src/third_party/opus/src/include --disable-linux-perf --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --enable-lto --enable-pic --enable-decoder='mp3' --enable-demuxer='mp3' --enable-parser='mpegaudio'" - #define FFMPEG_LICENSE "LGPL version 2.1 or later" - #define CONFIG_THIS_YEAR 2017 - #define FFMPEG_DATADIR "/usr/local/share/ffmpeg" -@@ -547,7 +547,7 @@ - #define CONFIG_FFPROBE 0 - #define CONFIG_FFSERVER 0 - #define CONFIG_FFMPEG 0 --#define CONFIG_DCT 0 -+#define CONFIG_DCT 1 - #define CONFIG_DWT 0 - #define CONFIG_ERROR_RESILIENCE 0 - #define CONFIG_FAAN 1 -@@ -626,9 +626,9 @@ - #define CONFIG_LZF 0 - #define CONFIG_ME_CMP 0 - #define CONFIG_MPEG_ER 0 --#define CONFIG_MPEGAUDIO 0 --#define CONFIG_MPEGAUDIODSP 0 --#define CONFIG_MPEGAUDIOHEADER 0 -+#define CONFIG_MPEGAUDIO 1 -+#define CONFIG_MPEGAUDIODSP 1 -+#define CONFIG_MPEGAUDIOHEADER 1 - #define CONFIG_MPEGVIDEO 0 - #define CONFIG_MPEGVIDEOENC 0 - #define CONFIG_MSS34DSP 0 -@@ -979,7 +979,7 @@ - #define CONFIG_MP1FLOAT_DECODER 0 - #define CONFIG_MP2_DECODER 0 - #define CONFIG_MP2FLOAT_DECODER 0 --#define CONFIG_MP3_DECODER 0 -+#define CONFIG_MP3_DECODER 1 - #define CONFIG_MP3FLOAT_DECODER 0 - #define CONFIG_MP3ADU_DECODER 0 - #define CONFIG_MP3ADUFLOAT_DECODER 0 -@@ -1292,7 +1292,7 @@ - #define CONFIG_MM_DEMUXER 0 - #define CONFIG_MMF_DEMUXER 0 - #define CONFIG_MOV_DEMUXER 0 --#define CONFIG_MP3_DEMUXER 0 -+#define CONFIG_MP3_DEMUXER 1 - #define CONFIG_MPC_DEMUXER 0 - #define CONFIG_MPC8_DEMUXER 0 - #define CONFIG_MPEGPS_DEMUXER 0 -@@ -2267,7 +2267,7 @@ - #define CONFIG_MJPEG_PARSER 0 - #define CONFIG_MLP_PARSER 0 - #define CONFIG_MPEG4VIDEO_PARSER 0 --#define CONFIG_MPEGAUDIO_PARSER 0 -+#define CONFIG_MPEGAUDIO_PARSER 1 - #define CONFIG_MPEGVIDEO_PARSER 0 - #define CONFIG_OPUS_PARSER 1 - #define CONFIG_PNG_PARSER 0 -diff -up chromium-63.0.3239.84/third_party/ffmpeg/ffmpeg_generated.gni.mp3 chromium-63.0.3239.84/third_party/ffmpeg/ffmpeg_generated.gni ---- chromium-63.0.3239.84/third_party/ffmpeg/ffmpeg_generated.gni.mp3 2017-12-07 09:51:36.000000000 -0500 -+++ chromium-63.0.3239.84/third_party/ffmpeg/ffmpeg_generated.gni 2017-12-07 11:16:58.728447124 -0500 -@@ -183,17 +183,9 @@ if ((is_mac) || (is_win) || (use_linux_c - ] - } - --if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mips64el" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { -+if ((current_cpu == "x64") || (is_android && current_cpu == "arm" && arm_use_neon) || (is_android && current_cpu == "arm64") || (is_android && current_cpu == "mips64el") || (is_android && current_cpu == "mipsel") || (is_android && current_cpu == "x86") || (is_win) || (use_linux_config && current_cpu == "arm" && arm_use_neon) || (use_linux_config && current_cpu == "arm") || (use_linux_config && current_cpu == "arm64") || (use_linux_config && current_cpu == "mipsel") || (use_linux_config && current_cpu == "x64") || (use_linux_config && current_cpu == "x86")) { - ffmpeg_c_sources += [ -- "libavcodec/aac_ac3_parser.c", -- "libavcodec/aac_parser.c", -- "libavcodec/aacadtsdec.c", -- "libavcodec/aacps_float.c", -- "libavcodec/aacpsdsp_float.c", -- "libavcodec/aacsbr.c", -- "libavcodec/aactab.c", - "libavcodec/ac3tab.c", -- "libavcodec/autorename_libavcodec_aacdec.c", - "libavcodec/autorename_libavcodec_mdct15.c", - "libavcodec/autorename_libavcodec_mpegaudiodsp.c", - "libavcodec/autorename_libavcodec_sbrdsp.c", -@@ -211,7 +203,6 @@ if ((current_cpu == "x64" && ffmpeg_bran - "libavcodec/mpegaudiodsp_float.c", - "libavcodec/sinewin.c", - "libavcodec/sinewin_fixed.c", -- "libavformat/aacdec.c", - "libavformat/apetag.c", - "libavformat/img2.c", - "libavformat/mov.c", -@@ -220,6 +211,20 @@ if ((current_cpu == "x64" && ffmpeg_bran - ] - } - -+if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mips64el" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && arm_use_neon && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "mipsel" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { -+ ffmpeg_c_sources += [ -+ "libavcodec/aac_ac3_parser.c", -+ "libavcodec/aac_parser.c", -+ "libavcodec/aacadtsdec.c", -+ "libavcodec/aacps_float.c", -+ "libavcodec/aacpsdsp_float.c", -+ "libavcodec/aacsbr.c", -+ "libavcodec/aactab.c", -+ "libavcodec/autorename_libavcodec_aacdec.c", -+ "libavformat/aacdec.c", -+ ] -+} -+ - if ((is_android && current_cpu == "x64") || (is_android && current_cpu == "x86") || (is_mac) || (is_win) || (use_linux_config && current_cpu == "x64") || (use_linux_config && current_cpu == "x86")) { - ffmpeg_c_sources += [ - "libavcodec/x86/autorename_libavcodec_x86_vorbisdsp_init.c", -@@ -323,16 +328,20 @@ if ((is_mac) || (is_win) || (use_linux_c - if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { - ffmpeg_c_sources += [ - "libavcodec/x86/aacpsdsp_init.c", -+ ] -+ ffmpeg_yasm_sources += [ -+ "libavcodec/x86/aacpsdsp.asm", -+ ] -+} -+ -+if ((current_cpu == "x64") || (is_android && current_cpu == "x86") || (use_linux_config && current_cpu == "x64") || (use_linux_config && current_cpu == "x86") || (is_win)) { -+ ffmpeg_c_sources += [ - "libavcodec/x86/dct_init.c", - "libavcodec/x86/mdct15_init.c", - "libavcodec/x86/mpegaudiodsp.c", - "libavcodec/x86/sbrdsp_init.c", - ] --} -- --if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) { - ffmpeg_yasm_sources += [ -- "libavcodec/x86/aacpsdsp.asm", - "libavcodec/x86/dct32.asm", - "libavcodec/x86/imdct36.asm", - "libavcodec/x86/mdct15.asm", -diff -up chromium-63.0.3239.84/third_party/ffmpeg/libavcodec/sbrdsp.c.mp3 chromium-63.0.3239.84/third_party/ffmpeg/libavcodec/sbrdsp.c ---- chromium-63.0.3239.84/third_party/ffmpeg/libavcodec/sbrdsp.c.mp3 2017-12-07 09:51:37.000000000 -0500 -+++ chromium-63.0.3239.84/third_party/ffmpeg/libavcodec/sbrdsp.c 2017-12-07 10:52:02.484509992 -0500 -@@ -23,6 +23,7 @@ - #define USE_FIXED 0 - - #include "aac.h" -+#include "aacsbrdata.h" - #include "config.h" - #include "libavutil/attributes.h" - #include "libavutil/intfloat.h" -diff -up chromium-63.0.3239.84/third_party/webrtc/examples/objc/AppRTCMobile/ios/resources/mozart.mp3 chromium-63.0.3239.84/third_party/webrtc/examples/objc/AppRTCMobile/ios/resources/mozart -diff -up chromium-63.0.3239.84/tools/android/audio_focus_grabber/java/res/raw/ping.mp3 chromium-63.0.3239.84/tools/android/audio_focus_grabber/java/res/raw/ping diff --git a/chromium-63.0.3289.84-fix-ffmpeg-aarch64.patch b/chromium-63.0.3289.84-fix-ffmpeg-aarch64.patch deleted file mode 100644 index 8df206b..0000000 --- a/chromium-63.0.3289.84-fix-ffmpeg-aarch64.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-63.0.3239.84/third_party/ffmpeg/ffmpeg_generated.gni.aarch64 chromium-63.0.3239.84/third_party/ffmpeg/ffmpeg_generated.gni ---- chromium-63.0.3239.84/third_party/ffmpeg/ffmpeg_generated.gni.aarch64 2017-12-07 11:23:07.077290535 -0500 -+++ chromium-63.0.3239.84/third_party/ffmpeg/ffmpeg_generated.gni 2017-12-07 11:27:30.354175021 -0500 -@@ -541,7 +541,7 @@ if (use_linux_config && current_cpu == " - ] - } - --if ((is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64" && ffmpeg_branding == "ChromeOS")) { -+if ((is_android && current_cpu == "arm64" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "arm64")) { - ffmpeg_c_sources += [ - "libavcodec/aarch64/aacpsdsp_init_aarch64.c", - "libavcodec/aarch64/mpegaudiodsp_init.c", diff --git a/chromium-63.0.3289.84-fix-ft-hb-unbundle.patch b/chromium-63.0.3289.84-fix-ft-hb-unbundle.patch deleted file mode 100644 index 9ca87ad..0000000 --- a/chromium-63.0.3289.84-fix-ft-hb-unbundle.patch +++ /dev/null @@ -1,36 +0,0 @@ -diff -up chromium-63.0.3239.84/build/linux/unbundle/freetype.gn.fixunbundle chromium-63.0.3239.84/build/linux/unbundle/freetype.gn ---- chromium-63.0.3239.84/build/linux/unbundle/freetype.gn.fixunbundle 2017-12-07 12:07:48.652161826 -0500 -+++ chromium-63.0.3239.84/build/linux/unbundle/freetype.gn 2017-12-07 12:08:52.514919585 -0500 -@@ -117,6 +117,14 @@ source_set("freetype") { - public_configs = [ ":freetype_config" ] - } - -+source_set("freetype_source") { -+ visibility = [ "//third_party:freetype_harfbuzz" ] -+ deps = [ -+ ":freetype_shim", -+ ] -+ public_configs = [ ":freetype_config" ] -+} -+ - source_set("bootstrap_freetype_for_harfbuzz") { - deps = [ - ":freetype_shim", -diff -up chromium-63.0.3239.84/build/linux/unbundle/harfbuzz-ng.gn.fixunbundle chromium-63.0.3239.84/build/linux/unbundle/harfbuzz-ng.gn ---- chromium-63.0.3239.84/build/linux/unbundle/harfbuzz-ng.gn.fixunbundle 2017-12-07 12:09:57.057661738 -0500 -+++ chromium-63.0.3239.84/build/linux/unbundle/harfbuzz-ng.gn 2017-12-07 12:10:03.225541404 -0500 -@@ -24,6 +24,14 @@ group("harfbuzz-ng") { - ] - } - -+source_set("harfbuzz_source") { -+ visibility = [ "//third_party:freetype_harfbuzz" ] -+ deps = [ -+ ":harfbuzz_shim", -+ ] -+ public_configs = [ ":system_harfbuzz" ] -+} -+ - source_set("harfbuzz-ng-ft") { - deps = [ - ":harfbuzz_shim", diff --git a/chromium-63.0.3289.84-gcc-round-fix.patch b/chromium-63.0.3289.84-gcc-round-fix.patch deleted file mode 100644 index 86d0a7e..0000000 --- a/chromium-63.0.3289.84-gcc-round-fix.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-63.0.3239.84/third_party/webrtc/p2p/base/port.cc.gcc-round-fix chromium-63.0.3239.84/third_party/webrtc/p2p/base/port.cc ---- chromium-63.0.3239.84/third_party/webrtc/p2p/base/port.cc.gcc-round-fix 2017-12-07 16:20:01.521717091 -0500 -+++ chromium-63.0.3239.84/third_party/webrtc/p2p/base/port.cc 2017-12-07 16:20:13.025491739 -0500 -@@ -11,6 +11,7 @@ - #include "p2p/base/port.h" - - #include -+#include - #include - - #include "p2p/base/common.h" diff --git a/chromium-63.0.3289.84-gcc5-r3.patch b/chromium-63.0.3289.84-gcc5-r3.patch deleted file mode 100644 index 83c6911..0000000 --- a/chromium-63.0.3289.84-gcc5-r3.patch +++ /dev/null @@ -1,104 +0,0 @@ -diff -up chromium-63.0.3239.84/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 chromium-63.0.3239.84/gpu/ipc/common/mailbox_struct_traits.h ---- chromium-63.0.3239.84/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 2017-12-06 15:05:28.000000000 -0500 -+++ chromium-63.0.3239.84/gpu/ipc/common/mailbox_struct_traits.h 2017-12-07 11:32:15.416636125 -0500 -@@ -15,7 +15,7 @@ namespace mojo { - template <> - struct StructTraits { - static base::span name(const gpu::Mailbox& mailbox) { -- return mailbox.name; -+ return base::make_span(mailbox.name); - } - static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out); - }; -diff -up chromium-63.0.3239.84/services/viz/public/cpp/compositing/filter_operation_struct_traits.h.gcc5-r3 chromium-63.0.3239.84/services/viz/public/cpp/compositing/filter_operation_struct_traits.h ---- chromium-63.0.3239.84/services/viz/public/cpp/compositing/filter_operation_struct_traits.h.gcc5-r3 2017-12-06 15:05:31.000000000 -0500 -+++ chromium-63.0.3239.84/services/viz/public/cpp/compositing/filter_operation_struct_traits.h 2017-12-07 11:32:15.422636011 -0500 -@@ -134,7 +134,7 @@ struct StructTraits matrix(const cc::FilterOperation& operation) { - if (operation.type() != cc::FilterOperation::COLOR_MATRIX) - return base::span(); -- return operation.matrix(); -+ return base::make_span(operation.matrix()); - } - - static base::span shape( -diff -up chromium-63.0.3239.84/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 chromium-63.0.3239.84/services/viz/public/cpp/compositing/quads_struct_traits.h ---- chromium-63.0.3239.84/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 2017-12-07 11:32:15.429635877 -0500 -+++ chromium-63.0.3239.84/services/viz/public/cpp/compositing/quads_struct_traits.h 2017-12-07 11:34:00.081601880 -0500 -@@ -309,7 +309,7 @@ struct StructTraits vertex_opacity(const viz::DrawQuad& input) { - const viz::TextureDrawQuad* quad = - viz::TextureDrawQuad::MaterialCast(&input); -- return quad->vertex_opacity; -+ return base::make_span(quad->vertex_opacity); - } - - static bool y_flipped(const viz::DrawQuad& input) { -diff -up chromium-63.0.3239.84/third_party/WebKit/Source/platform/exported/WebCORS.cpp.gcc5-r3 chromium-63.0.3239.84/third_party/WebKit/Source/platform/exported/WebCORS.cpp ---- chromium-63.0.3239.84/third_party/WebKit/Source/platform/exported/WebCORS.cpp.gcc5-r3 2017-12-06 15:05:46.000000000 -0500 -+++ chromium-63.0.3239.84/third_party/WebKit/Source/platform/exported/WebCORS.cpp 2017-12-07 11:32:15.430635859 -0500 -@@ -480,7 +480,7 @@ WebString AccessControlErrorString( - } - default: - NOTREACHED(); -- return ""; -+ return WebString(); - } - } - -@@ -512,7 +512,7 @@ WebString PreflightErrorString(const Pre - } - default: - NOTREACHED(); -- return ""; -+ return WebString(); - } - } - -@@ -533,7 +533,7 @@ WebString RedirectErrorString(const Redi - } - default: - NOTREACHED(); -- return ""; -+ return WebString(); - } - } - -diff -up chromium-63.0.3239.84/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h.gcc5-r3 chromium-63.0.3239.84/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h ---- chromium-63.0.3239.84/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h.gcc5-r3 2017-12-06 15:05:46.000000000 -0500 -+++ chromium-63.0.3239.84/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h 2017-12-07 11:32:15.408636277 -0500 -@@ -63,7 +63,7 @@ class WTF_EXPORT ArrayBufferContents { - allocation_length_(0), - data_(data), - data_length_(0), -- kind_(AllocationKind::kNormal), -+ kind_(WTF::ArrayBufferContents::AllocationKind::kNormal), - deleter_(deleter) {} - DataHandle(void* allocation_base, - size_t allocation_length, -@@ -94,11 +94,11 @@ class WTF_EXPORT ArrayBufferContents { - reinterpret_cast(allocation_base_) + - allocation_length_); - switch (kind_) { -- case AllocationKind::kNormal: -+ case WTF::ArrayBufferContents::AllocationKind::kNormal: - DCHECK(deleter_); - deleter_(data_); - return; -- case AllocationKind::kReservation: -+ case WTF::ArrayBufferContents::AllocationKind::kReservation: - ReleaseReservedMemory(allocation_base_, allocation_length_); - return; - } -diff -up chromium-63.0.3239.84/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 chromium-63.0.3239.84/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc ---- chromium-63.0.3239.84/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 2017-12-07 11:32:15.409636258 -0500 -+++ chromium-63.0.3239.84/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2017-12-07 11:33:10.714561105 -0500 -@@ -10,7 +10,7 @@ - - #include "modules/audio_processing/aec3/aec_state.h" - --#include -+#include - #include - #include - diff --git a/chromium-63.0.3289.84-nolibc++.patch b/chromium-63.0.3289.84-nolibc++.patch deleted file mode 100644 index 0d999c8..0000000 --- a/chromium-63.0.3289.84-nolibc++.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -up chromium-63.0.3239.84/remoting/host/linux/BUILD.gn.nolibc++ chromium-63.0.3239.84/remoting/host/linux/BUILD.gn ---- chromium-63.0.3239.84/remoting/host/linux/BUILD.gn.nolibc++ 2017-12-07 11:55:43.173273434 -0500 -+++ chromium-63.0.3239.84/remoting/host/linux/BUILD.gn 2017-12-07 11:55:53.244077772 -0500 -@@ -62,11 +62,9 @@ if (enable_me2me_host) { - if (is_component_build) { - sources += [ - "$root_build_dir/libbase.so", -- "$root_build_dir/libc++.so", - ] - deps += [ - "//base:base", -- "//buildtools/third_party/libc++:libc++", - ] - } - } diff --git a/chromium-63.0.3289.84-setopaque.patch b/chromium-63.0.3289.84-setopaque.patch deleted file mode 100644 index 8fb585a..0000000 --- a/chromium-63.0.3289.84-setopaque.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-63.0.3239.84/cc/blink/web_layer_impl.h.setopaque chromium-63.0.3239.84/cc/blink/web_layer_impl.h ---- chromium-63.0.3239.84/cc/blink/web_layer_impl.h.setopaque 2017-12-07 10:47:48.262446682 -0500 -+++ chromium-63.0.3239.84/cc/blink/web_layer_impl.h 2017-12-07 10:48:47.437298948 -0500 -@@ -67,7 +67,7 @@ class CC_BLINK_EXPORT WebLayerImpl : pub - void SetIsRootForIsolatedGroup(bool root) override; - bool IsRootForIsolatedGroup() override; - void SetHitTestableWithoutDrawsContent(bool should_hit_test) override; -- void SetOpaque(bool opaque) override; -+ CC_BLINK_EXPORT void SetOpaque(bool opaque) override; - bool Opaque() const override; - void SetPosition(const blink::WebFloatPoint& position) override; - blink::WebFloatPoint GetPosition() const override; diff --git a/chromium-64.0.3282.119-enable-mp3.patch b/chromium-64.0.3282.119-enable-mp3.patch deleted file mode 100644 index 849b5ee..0000000 --- a/chromium-64.0.3282.119-enable-mp3.patch +++ /dev/null @@ -1,54 +0,0 @@ -diff -up chromium-64.0.3282.119/media/base/mime_util_internal.cc.mp3 chromium-64.0.3282.119/media/base/mime_util_internal.cc ---- chromium-64.0.3282.119/media/base/mime_util_internal.cc.mp3 2018-01-24 15:05:48.000000000 -0500 -+++ chromium-64.0.3282.119/media/base/mime_util_internal.cc 2018-01-25 11:18:12.354147726 -0500 -@@ -279,15 +279,19 @@ void MimeUtil::AddSupportedMediaFormats( - CodecSet webm_codecs(webm_audio_codecs); - webm_codecs.insert(webm_video_codecs.begin(), webm_video_codecs.end()); - --#if BUILDFLAG(USE_PROPRIETARY_CODECS) - const CodecSet mp3_codecs{MP3}; -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - const CodecSet aac{MPEG2_AAC, MPEG4_AAC}; -+#else -+ const CodecSet aac{}; -+#endif -+ CodecSet mp4_audio_codecs(aac); -+ mp4_audio_codecs.emplace(MP3); - -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - CodecSet avc_and_aac(aac); - avc_and_aac.emplace(H264); - -- CodecSet mp4_audio_codecs(aac); -- mp4_audio_codecs.emplace(MP3); - mp4_audio_codecs.emplace(FLAC); - #if BUILDFLAG(ENABLE_AC3_EAC3_AUDIO_DEMUXING) - mp4_audio_codecs.emplace(AC3); -@@ -329,10 +333,10 @@ void MimeUtil::AddSupportedMediaFormats( - AddContainerWithCodecs("application/ogg", ogg_codecs, false); - AddContainerWithCodecs("audio/flac", implicit_codec, false); - --#if BUILDFLAG(USE_PROPRIETARY_CODECS) - AddContainerWithCodecs("audio/mpeg", mp3_codecs, true); // Allow "mp3". - AddContainerWithCodecs("audio/mp3", implicit_codec, true); - AddContainerWithCodecs("audio/x-mp3", implicit_codec, true); -+#if BUILDFLAG(USE_PROPRIETARY_CODECS) - AddContainerWithCodecs("audio/aac", implicit_codec, true); // AAC / ADTS. - AddContainerWithCodecs("audio/mp4", mp4_audio_codecs, true); - DCHECK(!mp4_video_codecs.empty()); -@@ -970,7 +974,6 @@ bool MimeUtil::IsCodecProprietary(Codec - case INVALID_CODEC: - case AC3: - case EAC3: -- case MP3: - case MPEG2_AAC: - case MPEG4_AAC: - case H264: -@@ -978,6 +981,7 @@ bool MimeUtil::IsCodecProprietary(Codec - case DOLBY_VISION: - return true; - -+ case MP3: - case PCM: - case VORBIS: - case OPUS: diff --git a/chromium-64.0.3282.119-gcc-constexpr-fix.patch b/chromium-64.0.3282.119-gcc-constexpr-fix.patch deleted file mode 100644 index 57b63cd..0000000 --- a/chromium-64.0.3282.119-gcc-constexpr-fix.patch +++ /dev/null @@ -1,70 +0,0 @@ -diff -up chromium-64.0.3282.119/third_party/angle/src/compiler/translator/StaticType.h.gcc-constexpr chromium-64.0.3282.119/third_party/angle/src/compiler/translator/StaticType.h ---- chromium-64.0.3282.119/third_party/angle/src/compiler/translator/StaticType.h.gcc-constexpr 2018-01-25 15:50:16.971171007 -0500 -+++ chromium-64.0.3282.119/third_party/angle/src/compiler/translator/StaticType.h 2018-01-25 15:51:14.158053914 -0500 -@@ -160,7 +160,7 @@ template --const TType *GetForVecMatHelper(unsigned char primarySize) -+constexpr const TType *GetForVecMatHelper(unsigned char primarySize) - { - static_assert(basicType == EbtFloat || basicType == EbtInt || basicType == EbtUInt || - basicType == EbtBool, -@@ -186,7 +186,7 @@ const TType *GetForVecMatHelper(unsigned - template --const TType *GetForVecMat(unsigned char primarySize, unsigned char secondarySize = 1) -+constexpr const TType *GetForVecMat(unsigned char primarySize, unsigned char secondarySize = 1) - { - static_assert(basicType == EbtFloat || basicType == EbtInt || basicType == EbtUInt || - basicType == EbtBool, -@@ -208,7 +208,7 @@ const TType *GetForVecMat(unsigned char - } - - template --const TType *GetForVec(TQualifier qualifier, unsigned char size) -+constexpr const TType *GetForVec(TQualifier qualifier, unsigned char size) - { - switch (qualifier) - { -diff -up chromium-64.0.3282.119/third_party/angle/src/compiler/translator/SymbolTable.cpp.gcc-constexpr chromium-64.0.3282.119/third_party/angle/src/compiler/translator/SymbolTable.cpp ---- chromium-64.0.3282.119/third_party/angle/src/compiler/translator/SymbolTable.cpp.gcc-constexpr 2018-01-25 15:51:27.670790008 -0500 -+++ chromium-64.0.3282.119/third_party/angle/src/compiler/translator/SymbolTable.cpp 2018-01-25 15:52:04.117077652 -0500 -@@ -189,7 +189,7 @@ TSymbolTable::~TSymbolTable() - pop(); - } - --bool IsGenType(const TType *type) -+constexpr bool IsGenType(const TType *type) - { - if (type) - { -@@ -201,7 +201,7 @@ bool IsGenType(const TType *type) - return false; - } - --bool IsVecType(const TType *type) -+constexpr bool IsVecType(const TType *type) - { - if (type) - { -diff -up chromium-64.0.3282.119/third_party/angle/src/compiler/translator/Types.h.gcc-constexpr chromium-64.0.3282.119/third_party/angle/src/compiler/translator/Types.h ---- chromium-64.0.3282.119/third_party/angle/src/compiler/translator/Types.h.gcc-constexpr 2018-01-25 15:52:15.042864767 -0500 -+++ chromium-64.0.3282.119/third_party/angle/src/compiler/translator/Types.h 2018-01-25 15:52:56.763049389 -0500 -@@ -236,13 +236,13 @@ class TType - { - } - -- TBasicType getBasicType() const { return type; } -+ constexpr TBasicType getBasicType() const { return type; } - void setBasicType(TBasicType t); - - TPrecision getPrecision() const { return precision; } - void setPrecision(TPrecision p) { precision = p; } - -- TQualifier getQualifier() const { return qualifier; } -+ constexpr TQualifier getQualifier() const { return qualifier; } - void setQualifier(TQualifier q) { qualifier = q; } - - bool isInvariant() const { return invariant; } diff --git a/chromium-64.0.3282.119-gcc-round-fix.patch b/chromium-64.0.3282.119-gcc-round-fix.patch deleted file mode 100644 index 465808c..0000000 --- a/chromium-64.0.3282.119-gcc-round-fix.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-64.0.3282.119/third_party/webrtc/p2p/base/port.cc.gcc-round-fix chromium-64.0.3282.119/third_party/webrtc/p2p/base/port.cc ---- chromium-64.0.3282.119/third_party/webrtc/p2p/base/port.cc.gcc-round-fix 2018-01-25 12:03:14.696443814 -0500 -+++ chromium-64.0.3282.119/third_party/webrtc/p2p/base/port.cc 2018-01-25 12:20:26.446448618 -0500 -@@ -10,7 +10,7 @@ - - #include "p2p/base/port.h" - --#include -+#include - - #include - #include diff --git a/chromium-64.0.3282.119-gcc5-r3.patch b/chromium-64.0.3282.119-gcc5-r3.patch deleted file mode 100644 index 3679ecf..0000000 --- a/chromium-64.0.3282.119-gcc5-r3.patch +++ /dev/null @@ -1,75 +0,0 @@ -diff -up chromium-64.0.3282.119/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 chromium-64.0.3282.119/gpu/ipc/common/mailbox_struct_traits.h ---- chromium-64.0.3282.119/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 2018-01-24 15:05:47.000000000 -0500 -+++ chromium-64.0.3282.119/gpu/ipc/common/mailbox_struct_traits.h 2018-01-25 11:58:48.251623423 -0500 -@@ -15,7 +15,7 @@ namespace mojo { - template <> - struct StructTraits { - static base::span name(const gpu::Mailbox& mailbox) { -- return mailbox.name; -+ return base::make_span(mailbox.name); - } - static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out); - }; -diff -up chromium-64.0.3282.119/services/viz/public/cpp/compositing/filter_operation_struct_traits.h.gcc5-r3 chromium-64.0.3282.119/services/viz/public/cpp/compositing/filter_operation_struct_traits.h ---- chromium-64.0.3282.119/services/viz/public/cpp/compositing/filter_operation_struct_traits.h.gcc5-r3 2018-01-24 15:05:51.000000000 -0500 -+++ chromium-64.0.3282.119/services/viz/public/cpp/compositing/filter_operation_struct_traits.h 2018-01-25 11:58:48.252623400 -0500 -@@ -137,7 +137,7 @@ struct StructTraits matrix(const cc::FilterOperation& operation) { - if (operation.type() != cc::FilterOperation::COLOR_MATRIX) - return base::span(); -- return operation.matrix(); -+ return base::make_span(operation.matrix()); - } - - static base::span shape( -diff -up chromium-64.0.3282.119/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 chromium-64.0.3282.119/services/viz/public/cpp/compositing/quads_struct_traits.h ---- chromium-64.0.3282.119/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 2018-01-24 15:05:51.000000000 -0500 -+++ chromium-64.0.3282.119/services/viz/public/cpp/compositing/quads_struct_traits.h 2018-01-25 11:58:48.252623400 -0500 -@@ -308,7 +308,7 @@ struct StructTraits vertex_opacity(const viz::DrawQuad& input) { - const viz::TextureDrawQuad* quad = - viz::TextureDrawQuad::MaterialCast(&input); -- return quad->vertex_opacity; -+ return base::make_span(quad->vertex_opacity); - } - - static bool y_flipped(const viz::DrawQuad& input) { -diff -up chromium-64.0.3282.119/third_party/WebKit/Source/platform/exported/WebCORS.cpp.gcc5-r3 chromium-64.0.3282.119/third_party/WebKit/Source/platform/exported/WebCORS.cpp -diff -up chromium-64.0.3282.119/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h.gcc5-r3 chromium-64.0.3282.119/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h ---- chromium-64.0.3282.119/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h.gcc5-r3 2018-01-24 15:06:11.000000000 -0500 -+++ chromium-64.0.3282.119/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h 2018-01-25 11:58:48.253623376 -0500 -@@ -62,7 +62,7 @@ class WTF_EXPORT ArrayBufferContents { - allocation_length_(0), - data_(data), - data_length_(0), -- kind_(AllocationKind::kNormal), -+ kind_(WTF::ArrayBufferContents::AllocationKind::kNormal), - deleter_(deleter) {} - DataHandle(void* allocation_base, - size_t allocation_length, -@@ -93,11 +93,11 @@ class WTF_EXPORT ArrayBufferContents { - reinterpret_cast(allocation_base_) + - allocation_length_); - switch (kind_) { -- case AllocationKind::kNormal: -+ case WTF::ArrayBufferContents::AllocationKind::kNormal: - DCHECK(deleter_); - deleter_(data_); - return; -- case AllocationKind::kReservation: -+ case WTF::ArrayBufferContents::AllocationKind::kReservation: - ReleaseReservedMemory(allocation_base_, allocation_length_); - return; - } -diff -up chromium-64.0.3282.119/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 chromium-64.0.3282.119/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc ---- chromium-64.0.3282.119/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 2018-01-25 11:58:48.253623376 -0500 -+++ chromium-64.0.3282.119/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2018-01-25 12:01:28.769900550 -0500 -@@ -10,7 +10,7 @@ - - #include "modules/audio_processing/aec3/aec_state.h" - --#include -+#include - - #include - #include diff --git a/chromium-64.0.3282.119-gcc5.patch b/chromium-64.0.3282.119-gcc5.patch deleted file mode 100644 index 0fdc39f..0000000 --- a/chromium-64.0.3282.119-gcc5.patch +++ /dev/null @@ -1,57 +0,0 @@ -diff -up chromium-64.0.3282.119/third_party/webgl/src/specs/latest/2.0/webgl2.idl.gcc5 chromium-64.0.3282.119/third_party/webgl/src/specs/latest/2.0/webgl2.idl ---- chromium-64.0.3282.119/third_party/webgl/src/specs/latest/2.0/webgl2.idl.gcc5 2018-01-25 11:07:27.179175007 -0500 -+++ chromium-64.0.3282.119/third_party/webgl/src/specs/latest/2.0/webgl2.idl 2018-01-25 11:07:38.037925336 -0500 -@@ -263,7 +263,7 @@ interface WebGL2RenderingContextBase - 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 -up chromium-64.0.3282.119/third_party/WebKit/Source/core/dom/NodeFilter.h.gcc5 chromium-64.0.3282.119/third_party/WebKit/Source/core/dom/NodeFilter.h ---- chromium-64.0.3282.119/third_party/WebKit/Source/core/dom/NodeFilter.h.gcc5 2018-01-25 11:11:08.581962228 -0500 -+++ chromium-64.0.3282.119/third_party/WebKit/Source/core/dom/NodeFilter.h 2018-01-25 11:11:24.062593478 -0500 -@@ -49,7 +49,7 @@ class NodeFilter final { - * to the value of NodeType for the equivalent node type. - */ - enum { -- kShowAll = 0xFFFFFFFF, -+ kShowAll = 256 /* 0xFFFFFFFF */, - kShowElement = 0x00000001, - kShowAttribute = 0x00000002, - kShowText = 0x00000004, -diff -up chromium-64.0.3282.119/third_party/WebKit/Source/core/dom/NodeFilter.idl.gcc5 chromium-64.0.3282.119/third_party/WebKit/Source/core/dom/NodeFilter.idl ---- chromium-64.0.3282.119/third_party/WebKit/Source/core/dom/NodeFilter.idl.gcc5 2018-01-25 11:11:34.816335412 -0500 -+++ chromium-64.0.3282.119/third_party/WebKit/Source/core/dom/NodeFilter.idl 2018-01-25 11:12:23.380171262 -0500 -@@ -27,7 +27,7 @@ callback interface NodeFilter { - const unsigned short FILTER_SKIP = 3; - - // Constants for whatToShow -- const unsigned long SHOW_ALL = 0xFFFFFFFF; -+ const unsigned long SHOW_ALL = 256; // 0xFFFFFFFF - const unsigned long SHOW_ELEMENT = 0x1; - const unsigned long SHOW_ATTRIBUTE = 0x2; // historical - const unsigned long SHOW_TEXT = 0x4; -diff -up chromium-64.0.3282.119/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl.gcc5 chromium-64.0.3282.119/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl ---- chromium-64.0.3282.119/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl.gcc5 2018-01-25 11:12:57.367363214 -0500 -+++ chromium-64.0.3282.119/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.idl 2018-01-25 11:13:29.883590960 -0500 -@@ -241,7 +241,7 @@ typedef unsigned long long GLuint64; - 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; -@@ -271,7 +271,7 @@ typedef unsigned long long GLuint64; - const GLenum TEXTURE_IMMUTABLE_FORMAT = 0x912F; - const GLenum MAX_ELEMENT_INDEX = 0x8D6B; - const GLenum TEXTURE_IMMUTABLE_LEVELS = 0x82DF; -- const GLint TIMEOUT_IGNORED = -1; -+ const GLint TIMEOUT_IGNORED = 256; - - /* WebGL-specific enums */ - const GLenum MAX_CLIENT_WAIT_TIMEOUT_WEBGL = 0x9247; diff --git a/chromium-64.0.3282.119-gcc7.patch b/chromium-64.0.3282.119-gcc7.patch deleted file mode 100644 index 7fe383e..0000000 --- a/chromium-64.0.3282.119-gcc7.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-64.0.3282.119/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 chromium-64.0.3282.119/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h ---- chromium-64.0.3282.119/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 2018-01-25 11:15:00.291466617 -0500 -+++ chromium-64.0.3282.119/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h 2018-01-25 11:16:36.159320291 -0500 -@@ -10,6 +10,7 @@ - #include "platform/wtf/Functional.h" - #include "platform/wtf/ThreadSpecific.h" - -+#include - #include - - namespace blink { diff --git a/chromium-64.0.3282.119-memcpy-fix.patch b/chromium-64.0.3282.119-memcpy-fix.patch deleted file mode 100644 index 39c3c25..0000000 --- a/chromium-64.0.3282.119-memcpy-fix.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-64.0.3282.119/cc/paint/raw_memory_transfer_cache_entry.cc.memcpyfix chromium-64.0.3282.119/cc/paint/raw_memory_transfer_cache_entry.cc ---- chromium-64.0.3282.119/cc/paint/raw_memory_transfer_cache_entry.cc.memcpyfix 2018-01-26 15:04:44.708100850 -0500 -+++ chromium-64.0.3282.119/cc/paint/raw_memory_transfer_cache_entry.cc 2018-01-26 15:04:54.234915081 -0500 -@@ -3,6 +3,7 @@ - // found in the LICENSE file. - - #include "cc/paint/raw_memory_transfer_cache_entry.h" -+#include - - namespace cc { - diff --git a/chromium-64.0.3282.167-gcc8-fabi11.patch b/chromium-64.0.3282.167-gcc8-fabi11.patch deleted file mode 100644 index 5f0c527..0000000 --- a/chromium-64.0.3282.167-gcc8-fabi11.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -up chromium-64.0.3282.167/tools/gn/bootstrap/bootstrap.py.fabi11 chromium-64.0.3282.167/tools/gn/bootstrap/bootstrap.py ---- chromium-64.0.3282.167/tools/gn/bootstrap/bootstrap.py.fabi11 2018-02-19 11:39:15.807713662 -0500 -+++ chromium-64.0.3282.167/tools/gn/bootstrap/bootstrap.py 2018-02-19 11:39:47.038070341 -0500 -@@ -336,6 +336,11 @@ def write_gn_ninja(path, root_gen_dir, o - cflags = os.environ.get('CFLAGS', '').split() - cflags_cc = os.environ.get('CXXFLAGS', '').split() - ldflags = os.environ.get('LDFLAGS', '').split() -+ -+ # Work around GCC8 bug gcc#84286 -+ cflags.extend(['-fabi-version=11']) -+ cflags_cc.extend(['-fabi-version=11']) -+ - include_dirs = [root_gen_dir, SRC_ROOT] - libs = [] - diff --git a/chromium-65.0.3325.146-Fix-non-copyable-class-s-optional-move.patch b/chromium-65.0.3325.146-Fix-non-copyable-class-s-optional-move.patch deleted file mode 100644 index 6cf8ca8..0000000 --- a/chromium-65.0.3325.146-Fix-non-copyable-class-s-optional-move.patch +++ /dev/null @@ -1,41 +0,0 @@ -diff -up chromium-65.0.3325.146/base/optional.h.noncopyable chromium-65.0.3325.146/base/optional.h ---- chromium-65.0.3325.146/base/optional.h.noncopyable 2018-03-13 16:52:15.953729689 -0400 -+++ chromium-65.0.3325.146/base/optional.h 2018-03-13 16:53:55.365792522 -0400 -@@ -45,6 +45,15 @@ struct OptionalStorageBase { - - // When T is not trivially destructible we must call its - // destructor before deallocating its memory. -+ // Note that this hides the (implicitly declared) move constructor, which -+ // would be used for constexpr move constructor in OptionalStorage. -+ // It is needed iff T is trivially move constructible. However, the current -+ // is_trivially_{copy,move}_constructible implementation requires -+ // is_trivially_destructible (which looks a bug, cf: -+ // https://gcc.gnu.org/bugzilla/show_bug.cgi?id=51452 and -+ // http://cplusplus.github.io/LWG/lwg-active.html#2116), so it is not -+ // necessary for this case at the moment. Please see also the destructor -+ // comment in "is_trivially_destructible = true" specialization below. - ~OptionalStorageBase() { - if (!is_null_) - value_.~T(); -@@ -78,9 +87,18 @@ struct OptionalStorageBase(args)...) {} - - // When T is trivially destructible (i.e. its destructor does nothing) there -- // is no need to call it. Explicitly defaulting the destructor means it's not -- // user-provided. Those two together make this destructor trivial. -- ~OptionalStorageBase() = default; -+ // is no need to call it. Implicitly defined destructor is trivial, because -+ // both members (bool and union containing only variants which are trivially -+ // destructible) are trivially destructible. -+ // Explicitly-defaulted destructor is also trivial, but do not use it here, -+ // because it hides the implicit move constructor. It is needed to implement -+ // constexpr move constructor in OptionalStorage iff T is trivially move -+ // constructible. Note that, if T is trivially move constructible, the move -+ // constructor of OptionalStorageBase is also implicitly defined and it is -+ // trivially move constructor. If T is not trivially move constructible, -+ // "not declaring move constructor without destructor declaration" here means -+ // "delete move constructor", which works because any move constructor of -+ // OptionalStorage will not refer to it in that case. - - template - void Init(Args&&... args) { diff --git a/chromium-65.0.3325.146-GCC-IDB-methods-String-renamed-to-GetString.patch b/chromium-65.0.3325.146-GCC-IDB-methods-String-renamed-to-GetString.patch deleted file mode 100644 index dbdf68f..0000000 --- a/chromium-65.0.3325.146-GCC-IDB-methods-String-renamed-to-GetString.patch +++ /dev/null @@ -1,108 +0,0 @@ -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/bindings/modules/v8/V8BindingForModules.cpp.GetString chromium-65.0.3325.146/third_party/WebKit/Source/bindings/modules/v8/V8BindingForModules.cpp ---- chromium-65.0.3325.146/third_party/WebKit/Source/bindings/modules/v8/V8BindingForModules.cpp.GetString 2018-03-13 22:54:27.262671113 -0400 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/bindings/modules/v8/V8BindingForModules.cpp 2018-03-13 22:55:47.722113713 -0400 -@@ -68,7 +68,7 @@ v8::Local ToV8(const IDBKeyPa - case IDBKeyPath::kNullType: - return v8::Null(isolate); - case IDBKeyPath::kStringType: -- return V8String(isolate, value.String()); -+ return V8String(isolate, value.GetString()); - case IDBKeyPath::kArrayType: - return ToV8(value.Array(), creation_context, isolate); - } -@@ -97,7 +97,7 @@ v8::Local ToV8(const IDBKey* - case IDBKey::kNumberType: - return v8::Number::New(isolate, key->Number()); - case IDBKey::kStringType: -- return V8String(isolate, key->String()); -+ return V8String(isolate, key->GetString()); - case IDBKey::kBinaryType: - // https://w3c.github.io/IndexedDB/#convert-a-value-to-a-key - return ToV8(DOMArrayBuffer::Create(key->Binary()), creation_context, -@@ -379,7 +379,7 @@ static std::unique_ptr CreateIDB - } - - DCHECK_EQ(key_path.GetType(), IDBKeyPath::kStringType); -- return CreateIDBKeyFromValueAndKeyPath(isolate, value, key_path.String(), -+ return CreateIDBKeyFromValueAndKeyPath(isolate, value, key_path.GetString(), - exception_state); - } - -@@ -483,7 +483,7 @@ bool InjectV8KeyIntoV8Value(v8::Isolate* - DCHECK(isolate->InContext()); - - DCHECK_EQ(key_path.GetType(), IDBKeyPath::kStringType); -- Vector key_path_elements = ParseKeyPath(key_path.String()); -+ Vector key_path_elements = ParseKeyPath(key_path.GetString()); - - // The conbination of a key generator and an empty key path is forbidden by - // spec. -@@ -569,7 +569,7 @@ bool CanInjectIDBKeyIntoScriptValue(v8:: - const IDBKeyPath& key_path) { - IDB_TRACE("canInjectIDBKeyIntoScriptValue"); - DCHECK_EQ(key_path.GetType(), IDBKeyPath::kStringType); -- Vector key_path_elements = ParseKeyPath(key_path.String()); -+ Vector key_path_elements = ParseKeyPath(key_path.GetString()); - - if (!key_path_elements.size()) - return false; -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/modules/exported/WebIDBKey.cpp.GetString chromium-65.0.3325.146/third_party/WebKit/Source/modules/exported/WebIDBKey.cpp ---- chromium-65.0.3325.146/third_party/WebKit/Source/modules/exported/WebIDBKey.cpp.GetString 2018-03-13 22:56:04.041798217 -0400 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/modules/exported/WebIDBKey.cpp 2018-03-13 22:56:22.481440993 -0400 -@@ -56,7 +56,7 @@ WebData WebIDBKeyView::Binary() const { - } - - WebString WebIDBKeyView::String() const { -- return private_->String(); -+ return private_->GetString(); - } - - double WebIDBKeyView::Date() const { -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBDatabase.cpp.GetString chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBDatabase.cpp ---- chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBDatabase.cpp.GetString 2018-03-13 22:56:36.028178758 -0400 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBDatabase.cpp 2018-03-13 22:56:58.846736831 -0400 -@@ -297,7 +297,7 @@ IDBObjectStore* IDBDatabase::createObjec - } - - if (auto_increment && ((key_path.GetType() == IDBKeyPath::kStringType && -- key_path.String().IsEmpty()) || -+ key_path.GetString().IsEmpty()) || - key_path.GetType() == IDBKeyPath::kArrayType)) { - exception_state.ThrowDOMException( - kInvalidAccessError, -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBKey.h.GetString chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBKey.h ---- chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBKey.h.GetString 2018-03-13 22:57:13.229458842 -0400 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBKey.h 2018-03-13 22:57:38.633966776 -0400 -@@ -106,7 +106,7 @@ class MODULES_EXPORT IDBKey { - return binary_; - } - -- const String& String() const { -+ const String& GetString() const { - DCHECK_EQ(type_, kStringType); - return string_; - } -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBKeyPath.h.GetString chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBKeyPath.h ---- chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBKeyPath.h.GetString 2018-03-13 22:57:51.104725428 -0400 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/IDBKeyPath.h 2018-03-13 22:58:09.459369906 -0400 -@@ -65,7 +65,7 @@ class MODULES_EXPORT IDBKeyPath { - return array_; - } - -- const String& String() const { -+ const String& GetString() const { - DCHECK_EQ(type_, kStringType); - return string_; - } -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/InspectorIndexedDBAgent.cpp.GetString chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/InspectorIndexedDBAgent.cpp ---- chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/InspectorIndexedDBAgent.cpp.GetString 2018-03-13 22:58:28.778995834 -0400 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/modules/indexeddb/InspectorIndexedDBAgent.cpp 2018-03-13 22:58:45.044681364 -0400 -@@ -399,7 +399,7 @@ static std::unique_ptr KeyPathF - case IDBKeyPath::kStringType: - key_path = KeyPath::create() - .setType(KeyPath::TypeEnum::String) -- .setString(idb_key_path.String()) -+ .setString(idb_key_path.GetString()) - .build(); - break; - case IDBKeyPath::kArrayType: { diff --git a/chromium-65.0.3325.146-GCC-PlaybackImageProvider-Settings-do-not-provide-co.patch b/chromium-65.0.3325.146-GCC-PlaybackImageProvider-Settings-do-not-provide-co.patch deleted file mode 100644 index 8edc424..0000000 --- a/chromium-65.0.3325.146-GCC-PlaybackImageProvider-Settings-do-not-provide-co.patch +++ /dev/null @@ -1,22 +0,0 @@ -diff -up chromium-65.0.3325.146/cc/raster/playback_image_provider.cc.pipcc chromium-65.0.3325.146/cc/raster/playback_image_provider.cc ---- chromium-65.0.3325.146/cc/raster/playback_image_provider.cc.pipcc 2018-03-13 22:47:00.271322726 -0400 -+++ chromium-65.0.3325.146/cc/raster/playback_image_provider.cc 2018-03-13 22:47:53.127300060 -0400 -@@ -92,7 +92,6 @@ PlaybackImageProvider::GetDecodedDrawIma - } - - PlaybackImageProvider::Settings::Settings() = default; --PlaybackImageProvider::Settings::Settings(const Settings& other) = default; - PlaybackImageProvider::Settings::~Settings() = default; - - } // namespace cc -diff -up chromium-65.0.3325.146/cc/raster/playback_image_provider.h.pipcc chromium-65.0.3325.146/cc/raster/playback_image_provider.h ---- chromium-65.0.3325.146/cc/raster/playback_image_provider.h.pipcc 2018-03-13 22:48:00.673153629 -0400 -+++ chromium-65.0.3325.146/cc/raster/playback_image_provider.h 2018-03-13 22:48:12.726920597 -0400 -@@ -20,7 +20,6 @@ class CC_EXPORT PlaybackImageProvider : - public: - struct CC_EXPORT Settings { - Settings(); -- Settings(const Settings& other); - ~Settings(); - - // The set of image ids to skip during raster. diff --git a/chromium-65.0.3325.146-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch b/chromium-65.0.3325.146-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch deleted file mode 100644 index 62124be..0000000 --- a/chromium-65.0.3325.146-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch +++ /dev/null @@ -1,33 +0,0 @@ -diff -up chromium-65.0.3325.146/services/preferences/tracked/pref_hash_filter.h.fulldecl chromium-65.0.3325.146/services/preferences/tracked/pref_hash_filter.h ---- chromium-65.0.3325.146/services/preferences/tracked/pref_hash_filter.h.fulldecl 2018-03-13 16:38:38.870652491 -0400 -+++ chromium-65.0.3325.146/services/preferences/tracked/pref_hash_filter.h 2018-03-13 16:39:02.691186647 -0400 -@@ -21,9 +21,9 @@ - #include "services/preferences/public/interfaces/preferences.mojom.h" - #include "services/preferences/tracked/hash_store_contents.h" - #include "services/preferences/tracked/interceptable_pref_filter.h" -+#include "services/preferences/tracked/pref_hash_store.h" - #include "services/preferences/tracked/tracked_preference.h" - --class PrefHashStore; - class PrefService; - - namespace base { -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/modules/webdatabase/SQLTransactionBackend.h.fulldecl chromium-65.0.3325.146/third_party/WebKit/Source/modules/webdatabase/SQLTransactionBackend.h ---- chromium-65.0.3325.146/third_party/WebKit/Source/modules/webdatabase/SQLTransactionBackend.h.fulldecl 2018-03-13 16:39:13.787970233 -0400 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/modules/webdatabase/SQLTransactionBackend.h 2018-03-13 16:39:42.614407235 -0400 -@@ -30,6 +30,7 @@ - - #include - #include "modules/webdatabase/DatabaseBasicTypes.h" -+#include "modules/webdatabase/SQLError.h" - #include "modules/webdatabase/SQLStatement.h" - #include "modules/webdatabase/SQLStatementBackend.h" - #include "modules/webdatabase/SQLTransactionStateMachine.h" -@@ -41,7 +42,6 @@ - namespace blink { - - class Database; --class SQLErrorData; - class SQLiteTransaction; - class SQLTransaction; - class SQLTransactionBackend; diff --git a/chromium-65.0.3325.146-GCC-explicitely-std-move-to-base-Optional-instead-of.patch b/chromium-65.0.3325.146-GCC-explicitely-std-move-to-base-Optional-instead-of.patch deleted file mode 100644 index 9c6f315..0000000 --- a/chromium-65.0.3325.146-GCC-explicitely-std-move-to-base-Optional-instead-of.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff -up chromium-65.0.3325.146/content/browser/appcache/appcache_request_handler.cc.explicit-std-move chromium-65.0.3325.146/content/browser/appcache/appcache_request_handler.cc ---- chromium-65.0.3325.146/content/browser/appcache/appcache_request_handler.cc.explicit-std-move 2018-03-13 22:50:41.346043716 -0400 -+++ chromium-65.0.3325.146/content/browser/appcache/appcache_request_handler.cc 2018-03-13 22:51:21.428267583 -0400 -@@ -639,7 +639,7 @@ AppCacheRequestHandler::MaybeCreateSubre - - SubresourceLoaderParams params; - params.loader_factory_info = factory_ptr.PassInterface(); -- return params; -+ return base::Optional(std::move(params)); - } - - void AppCacheRequestHandler::MaybeCreateSubresourceLoader( -diff -up chromium-65.0.3325.146/content/browser/service_worker/service_worker_controllee_request_handler.cc.explicit-std-move chromium-65.0.3325.146/content/browser/service_worker/service_worker_controllee_request_handler.cc ---- chromium-65.0.3325.146/content/browser/service_worker/service_worker_controllee_request_handler.cc.explicit-std-move 2018-03-13 22:51:38.133943776 -0400 -+++ chromium-65.0.3325.146/content/browser/service_worker/service_worker_controllee_request_handler.cc 2018-03-13 22:51:57.658566347 -0400 -@@ -271,7 +271,7 @@ ServiceWorkerControlleeRequestHandler::M - controller_info->object_info = provider_host_->GetOrCreateServiceWorkerHandle( - provider_host_->controller()); - params.controller_service_worker_info = std::move(controller_info); -- return params; -+ return base::Optional(std::move(params)); - } - - void ServiceWorkerControlleeRequestHandler::PrepareForMainResource( diff --git a/chromium-65.0.3325.146-GCC-fully-declare-ConfigurationPolicyProvider.patch b/chromium-65.0.3325.146-GCC-fully-declare-ConfigurationPolicyProvider.patch deleted file mode 100644 index 809a321..0000000 --- a/chromium-65.0.3325.146-GCC-fully-declare-ConfigurationPolicyProvider.patch +++ /dev/null @@ -1,18 +0,0 @@ -diff -up chromium-65.0.3325.146/components/policy/core/browser/browser_policy_connector_base.h.fully-declare chromium-65.0.3325.146/components/policy/core/browser/browser_policy_connector_base.h ---- chromium-65.0.3325.146/components/policy/core/browser/browser_policy_connector_base.h.fully-declare 2018-03-13 23:02:13.989635567 -0400 -+++ chromium-65.0.3325.146/components/policy/core/browser/browser_policy_connector_base.h 2018-03-13 23:02:44.318048625 -0400 -@@ -12,13 +12,13 @@ - #include "base/macros.h" - #include "base/optional.h" - #include "components/policy/core/browser/configuration_policy_handler_list.h" -+#include "components/policy/core/common/configuration_policy_provider.h" - #include "components/policy/core/common/schema.h" - #include "components/policy/core/common/schema_registry.h" - #include "components/policy/policy_export.h" - - namespace policy { - --class ConfigurationPolicyProvider; - class PolicyService; - class PolicyServiceImpl; - diff --git a/chromium-65.0.3325.146-Implement-conditional-copy-move-ctors-assign-operato.patch b/chromium-65.0.3325.146-Implement-conditional-copy-move-ctors-assign-operato.patch deleted file mode 100644 index 9b4befe..0000000 --- a/chromium-65.0.3325.146-Implement-conditional-copy-move-ctors-assign-operato.patch +++ /dev/null @@ -1,91 +0,0 @@ -diff -up chromium-65.0.3325.146/base/optional.h.conditional chromium-65.0.3325.146/base/optional.h ---- chromium-65.0.3325.146/base/optional.h.conditional 2018-03-13 22:11:02.328058249 -0400 -+++ chromium-65.0.3325.146/base/optional.h 2018-03-13 22:12:43.622098296 -0400 -@@ -266,6 +266,58 @@ class OptionalBase { - OptionalStorage storage_; - }; - -+// The following {Copy,Move}{Constructible,Assignable} structs are helpers to -+// implement constructor/assign-operator overloading. Specifically, if T is -+// is not movable but copyable, Optional's move constructor should not -+// participate in overload resolution. This inheritance trick implements that. -+template -+struct CopyConstructible {}; -+ -+template <> -+struct CopyConstructible { -+ constexpr CopyConstructible() = default; -+ constexpr CopyConstructible(const CopyConstructible&) = delete; -+ constexpr CopyConstructible(CopyConstructible&&) = default; -+ CopyConstructible& operator=(const CopyConstructible&) = default; -+ CopyConstructible& operator=(CopyConstructible&&) = default; -+}; -+ -+template -+struct MoveConstructible {}; -+ -+template <> -+struct MoveConstructible { -+ constexpr MoveConstructible() = default; -+ constexpr MoveConstructible(const MoveConstructible&) = default; -+ constexpr MoveConstructible(MoveConstructible&&) = delete; -+ MoveConstructible& operator=(const MoveConstructible&) = default; -+ MoveConstructible& operator=(MoveConstructible&&) = default; -+}; -+ -+template -+struct CopyAssignable {}; -+ -+template <> -+struct CopyAssignable { -+ constexpr CopyAssignable() = default; -+ constexpr CopyAssignable(const CopyAssignable&) = default; -+ constexpr CopyAssignable(CopyAssignable&&) = default; -+ CopyAssignable& operator=(const CopyAssignable&) = delete; -+ CopyAssignable& operator=(CopyAssignable&&) = default; -+}; -+ -+template -+struct MoveAssignable {}; -+ -+template <> -+struct MoveAssignable { -+ constexpr MoveAssignable() = default; -+ constexpr MoveAssignable(const MoveAssignable&) = default; -+ constexpr MoveAssignable(MoveAssignable&&) = default; -+ MoveAssignable& operator=(const MoveAssignable&) = default; -+ MoveAssignable& operator=(MoveAssignable&&) = delete; -+}; -+ - } // namespace internal - - // base::Optional is a Chromium version of the C++17 optional class: -@@ -280,12 +332,18 @@ class OptionalBase { - // - No exceptions are thrown, because they are banned from Chromium. - // - All the non-members are in the 'base' namespace instead of 'std'. - template --class Optional : public internal::OptionalBase { -+class Optional -+ : public internal::OptionalBase, -+ public internal::CopyConstructible::value>, -+ public internal::MoveConstructible::value>, -+ public internal::CopyAssignable::value && -+ std::is_copy_assignable::value>, -+ public internal::MoveAssignable::value && -+ std::is_move_assignable::value> { - public: - using value_type = T; - - // Defer default/copy/move constructor implementation to OptionalBase. -- // TODO(hidehiko): Implement conditional enabling. - constexpr Optional() = default; - constexpr Optional(const Optional& other) = default; - constexpr Optional(Optional&& other) = default; -@@ -316,7 +374,6 @@ class Optional : public internal::Option - ~Optional() = default; - - // Defer copy-/move- assign operator implementation to OptionalBase. -- // TOOD(hidehiko): Implement conditional enabling. - Optional& operator=(const Optional& other) = default; - Optional& operator=(Optional&& other) = default; - diff --git a/chromium-65.0.3325.146-Implement-converting-constructors-from-Optional-U.patch b/chromium-65.0.3325.146-Implement-converting-constructors-from-Optional-U.patch deleted file mode 100644 index 3214104..0000000 --- a/chromium-65.0.3325.146-Implement-converting-constructors-from-Optional-U.patch +++ /dev/null @@ -1,116 +0,0 @@ -diff -up chromium-65.0.3325.146/base/optional.h.converting chromium-65.0.3325.146/base/optional.h ---- chromium-65.0.3325.146/base/optional.h.converting 2018-03-13 22:31:05.248797490 -0400 -+++ chromium-65.0.3325.146/base/optional.h 2018-03-13 22:33:10.826368771 -0400 -@@ -31,6 +31,10 @@ constexpr in_place_t in_place = {}; - // http://en.cppreference.com/w/cpp/utility/optional/nullopt - constexpr nullopt_t nullopt(0); - -+// Forward declaration, which is refered by following helpers. -+template -+class Optional; -+ - namespace internal { - - template ::value> -@@ -220,6 +224,19 @@ class OptionalBase { - constexpr explicit OptionalBase(in_place_t, Args&&... args) - : storage_(in_place, std::forward(args)...) {} - -+ // Implementation of converting constructors. -+ template -+ explicit OptionalBase(const OptionalBase& other) { -+ if (other.storage_.is_populated_) -+ storage_.Init(other.storage_.value_); -+ } -+ -+ template -+ explicit OptionalBase(OptionalBase&& other) { -+ if (other.storage_.is_populated_) -+ storage_.Init(std::move(other.storage_.value_)); -+ } -+ - ~OptionalBase() = default; - - OptionalBase& operator=(const OptionalBase& other) { -@@ -263,6 +280,11 @@ class OptionalBase { - storage_.is_populated_ = false; - } - -+ // For implementing conversion, allow access to other typed OptionalBase -+ // class. -+ template -+ friend class OptionalBase; -+ - OptionalStorage storage_; - }; - -@@ -318,6 +340,20 @@ struct MoveAssignable { - MoveAssignable& operator=(MoveAssignable&&) = delete; - }; - -+// Helper to conditionally enable converting constructors. -+template -+struct IsConvertibleFromOptional -+ : std::integral_constant< -+ bool, -+ std::is_constructible&>::value || -+ std::is_constructible&>::value || -+ std::is_constructible&&>::value || -+ std::is_constructible&&>::value || -+ std::is_convertible&, T>::value || -+ std::is_convertible&, T>::value || -+ std::is_convertible&&, T>::value || -+ std::is_convertible&&, T>::value> {}; -+ - } // namespace internal - - // base::Optional is a Chromium version of the C++17 optional class: -@@ -348,7 +384,47 @@ class Optional - constexpr Optional(const Optional& other) = default; - constexpr Optional(Optional&& other) = default; - -- constexpr Optional(nullopt_t) {} -+ constexpr Optional(nullopt_t) {} // NOLINT(runtime/explicit) -+ -+ // Converting copy constructor. "explicit" only if -+ // std::is_convertible::value is false. It is implemented by -+ // declaring two almost same constructors, but that condition in enable_if_t -+ // is different, so that either one is chosen, thanks to SFINAE. -+ template < -+ typename U, -+ std::enable_if_t::value && -+ !internal::IsConvertibleFromOptional::value && -+ std::is_convertible::value, -+ bool> = false> -+ Optional(const Optional& other) : internal::OptionalBase(other) {} -+ -+ template < -+ typename U, -+ std::enable_if_t::value && -+ !internal::IsConvertibleFromOptional::value && -+ !std::is_convertible::value, -+ bool> = false> -+ explicit Optional(const Optional& other) -+ : internal::OptionalBase(other) {} -+ -+ // Converting move constructor. Similar to converting copy constructor, -+ // declaring two (explicit and non-explicit) constructors. -+ template < -+ typename U, -+ std::enable_if_t::value && -+ !internal::IsConvertibleFromOptional::value && -+ std::is_convertible::value, -+ bool> = false> -+ Optional(Optional&& other) : internal::OptionalBase(std::move(other)) {} -+ -+ template < -+ typename U, -+ std::enable_if_t::value && -+ !internal::IsConvertibleFromOptional::value && -+ !std::is_convertible::value, -+ bool> = false> -+ explicit Optional(Optional&& other) -+ : internal::OptionalBase(std::move(other)) {} - - constexpr Optional(const T& value) - : internal::OptionalBase(in_place, value) {} diff --git a/chromium-65.0.3325.146-Implement-value-forward-constructor.patch b/chromium-65.0.3325.146-Implement-value-forward-constructor.patch deleted file mode 100644 index db727d8..0000000 --- a/chromium-65.0.3325.146-Implement-value-forward-constructor.patch +++ /dev/null @@ -1,72 +0,0 @@ -diff -up chromium-65.0.3325.146/base/optional.h.vforward chromium-65.0.3325.146/base/optional.h ---- chromium-65.0.3325.146/base/optional.h.vforward 2018-03-13 22:35:46.383359966 -0400 -+++ chromium-65.0.3325.146/base/optional.h 2018-03-13 22:37:48.724992995 -0400 -@@ -354,6 +354,10 @@ struct IsConvertibleFromOptional - std::is_convertible&&, T>::value || - std::is_convertible&&, T>::value> {}; - -+// Forward compatibility for C++20. -+template -+using RemoveCvRefT = std::remove_cv_t>; -+ - } // namespace internal - - // base::Optional is a Chromium version of the C++17 optional class: -@@ -367,6 +371,13 @@ struct IsConvertibleFromOptional - // - 'constexpr' might be missing in some places for reasons specified locally. - // - No exceptions are thrown, because they are banned from Chromium. - // - All the non-members are in the 'base' namespace instead of 'std'. -+// -+// Note that T cannot have a constructor T(Optional) etc. Optional checks -+// T's constructor (specifically via IsConvertibleFromOptional), and in the -+// check whether T can be constructible from Optional, which is recursive -+// so it does not work. As of Feb 2018, std::optional C++17 implementation in -+// both clang and gcc has same limitation. MSVC SFINAE looks to have different -+// behavior, but anyway it reports an error, too. - template - class Optional - : public internal::OptionalBase, -@@ -426,12 +437,6 @@ class Optional - explicit Optional(Optional&& other) - : internal::OptionalBase(std::move(other)) {} - -- constexpr Optional(const T& value) -- : internal::OptionalBase(in_place, value) {} -- -- constexpr Optional(T&& value) -- : internal::OptionalBase(in_place, std::move(value)) {} -- - template - constexpr explicit Optional(in_place_t, Args&&... args) - : internal::OptionalBase(in_place, std::forward(args)...) {} -@@ -447,6 +452,30 @@ class Optional - Args&&... args) - : internal::OptionalBase(in_place, il, std::forward(args)...) {} - -+ // Forward value constructor. Similar to converting constructors, -+ // conditionally explicit. -+ template < -+ typename U = value_type, -+ std::enable_if_t< -+ std::is_constructible::value && -+ !std::is_same, in_place_t>::value && -+ !std::is_same, Optional>::value && -+ std::is_convertible::value, -+ bool> = false> -+ constexpr Optional(U&& value) -+ : internal::OptionalBase(in_place, std::forward(value)) {} -+ -+ template < -+ typename U = value_type, -+ std::enable_if_t< -+ std::is_constructible::value && -+ !std::is_same, in_place_t>::value && -+ !std::is_same, Optional>::value && -+ !std::is_convertible::value, -+ bool> = false> -+ constexpr explicit Optional(U&& value) -+ : internal::OptionalBase(in_place, std::forward(value)) {} -+ - ~Optional() = default; - - // Defer copy-/move- assign operator implementation to OptionalBase. diff --git a/chromium-65.0.3325.146-Update-non-copy-non-move-assign-operators.patch b/chromium-65.0.3325.146-Update-non-copy-non-move-assign-operators.patch deleted file mode 100644 index f9c4503..0000000 --- a/chromium-65.0.3325.146-Update-non-copy-non-move-assign-operators.patch +++ /dev/null @@ -1,144 +0,0 @@ -diff -up chromium-65.0.3325.146/base/optional.h.ncnm chromium-65.0.3325.146/base/optional.h ---- chromium-65.0.3325.146/base/optional.h.ncnm 2018-03-13 22:40:11.743226276 -0400 -+++ chromium-65.0.3325.146/base/optional.h 2018-03-13 22:44:30.948211358 -0400 -@@ -240,37 +240,37 @@ class OptionalBase { - ~OptionalBase() = default; - - OptionalBase& operator=(const OptionalBase& other) { -- if (!other.storage_.is_populated_) { -- FreeIfNeeded(); -- return *this; -- } -- -- InitOrAssign(other.storage_.value_); -+ CopyAssign(other); - return *this; - } - - OptionalBase& operator=(OptionalBase&& other) { -- if (!other.storage_.is_populated_) { -- FreeIfNeeded(); -- return *this; -- } -- -- InitOrAssign(std::move(other.storage_.value_)); -+ MoveAssign(std::move(other)); - return *this; - } - -- void InitOrAssign(const T& value) { -- if (!storage_.is_populated_) -- storage_.Init(value); -+ template -+ void CopyAssign(const OptionalBase& other) { -+ if (other.storage_.is_populated_) -+ InitOrAssign(other.storage_.value_); - else -- storage_.value_ = value; -+ FreeIfNeeded(); - } - -- void InitOrAssign(T&& value) { -- if (!storage_.is_populated_) -- storage_.Init(std::move(value)); -+ template -+ void MoveAssign(OptionalBase&& other) { -+ if (other.storage_.is_populated_) -+ InitOrAssign(std::move(other.storage_.value_)); -+ else -+ FreeIfNeeded(); -+ } -+ -+ template -+ void InitOrAssign(U&& value) { -+ if (storage_.is_populated_) -+ storage_.value_ = std::forward(value); - else -- storage_.value_ = std::move(value); -+ storage_.Init(std::forward(value)); - } - - void FreeIfNeeded() { -@@ -340,7 +340,7 @@ struct MoveAssignable { - MoveAssignable& operator=(MoveAssignable&&) = delete; - }; - --// Helper to conditionally enable converting constructors. -+// Helper to conditionally enable converting constructors and assign operators. - template - struct IsConvertibleFromOptional - : std::integral_constant< -@@ -354,6 +354,16 @@ struct IsConvertibleFromOptional - std::is_convertible&&, T>::value || - std::is_convertible&&, T>::value> {}; - -+template -+struct IsAssignableFromOptional -+ : std::integral_constant< -+ bool, -+ IsConvertibleFromOptional::value || -+ std::is_assignable&>::value || -+ std::is_assignable&>::value || -+ std::is_assignable&&>::value || -+ std::is_assignable&&>::value> {}; -+ - // Forward compatibility for C++20. - template - using RemoveCvRefT = std::remove_cv_t>; -@@ -487,14 +497,42 @@ class Optional - return *this; - } - -- template -- typename std::enable_if, T>::value, -- Optional&>::type -+ // Perfect-forwarded assignment. -+ template -+ std::enable_if_t< -+ !std::is_same, Optional>::value && -+ std::is_constructible::value && -+ std::is_assignable::value && -+ (!std::is_scalar::value || -+ !std::is_same, T>::value), -+ Optional&> - operator=(U&& value) { - InitOrAssign(std::forward(value)); - return *this; - } - -+// Copy assign the state of other. -+ template -+ std::enable_if_t::value && -+ std::is_constructible::value && -+ std::is_assignable::value, -+ Optional&> -+ operator=(const Optional& other) { -+ CopyAssign(other); -+ return *this; -+ } -+ -+ // Move assign the state of other. -+ template -+ std::enable_if_t::value && -+ std::is_constructible::value && -+ std::is_assignable::value, -+ Optional&> -+ operator=(Optional&& other) { -+ MoveAssign(std::move(other)); -+ return *this; -+ } -+ - constexpr const T* operator->() const { - DCHECK(storage_.is_populated_); - return &value(); -@@ -606,8 +644,10 @@ class Optional - private: - // Accessing template base class's protected member needs explicit - // declaration to do so. -+ using internal::OptionalBase::CopyAssign; - using internal::OptionalBase::FreeIfNeeded; - using internal::OptionalBase::InitOrAssign; -+ using internal::OptionalBase::MoveAssign; - using internal::OptionalBase::storage_; - }; - diff --git a/chromium-65.0.3325.146-Use-affirmative-expression-in-base-Optional.patch b/chromium-65.0.3325.146-Use-affirmative-expression-in-base-Optional.patch deleted file mode 100644 index 8aaea85..0000000 --- a/chromium-65.0.3325.146-Use-affirmative-expression-in-base-Optional.patch +++ /dev/null @@ -1,265 +0,0 @@ -diff -up chromium-65.0.3325.146/base/optional.h.affirmative chromium-65.0.3325.146/base/optional.h ---- chromium-65.0.3325.146/base/optional.h.affirmative 2018-03-13 22:27:29.451969704 -0400 -+++ chromium-65.0.3325.146/base/optional.h 2018-03-13 22:27:57.031436045 -0400 -@@ -41,7 +41,7 @@ struct OptionalStorageBase { - - template - constexpr explicit OptionalStorageBase(in_place_t, Args&&... args) -- : is_null_(false), value_(std::forward(args)...) {} -+ : is_populated_(true), value_(std::forward(args)...) {} - - // When T is not trivially destructible we must call its - // destructor before deallocating its memory. -@@ -55,18 +55,18 @@ struct OptionalStorageBase { - // necessary for this case at the moment. Please see also the destructor - // comment in "is_trivially_destructible = true" specialization below. - ~OptionalStorageBase() { -- if (!is_null_) -+ if (is_populated_) - value_.~T(); - } - - template - void Init(Args&&... args) { -- DCHECK(is_null_); -+ DCHECK(!is_populated_); - ::new (&value_) T(std::forward(args)...); -- is_null_ = false; -+ is_populated_ = true; - } - -- bool is_null_ = true; -+ bool is_populated_ = false; - union { - // |empty_| exists so that the union will always be initialized, even when - // it doesn't contain a value. Union members must be initialized for the -@@ -84,7 +84,7 @@ struct OptionalStorageBase - constexpr explicit OptionalStorageBase(in_place_t, Args&&... args) -- : is_null_(false), value_(std::forward(args)...) {} -+ : is_populated_(true), value_(std::forward(args)...) {} - - // When T is trivially destructible (i.e. its destructor does nothing) there - // is no need to call it. Implicitly defined destructor is trivial, because -@@ -102,12 +102,12 @@ struct OptionalStorageBase - void Init(Args&&... args) { -- DCHECK(is_null_); -+ DCHECK(!is_populated_); - ::new (&value_) T(std::forward(args)...); -- is_null_ = false; -+ is_populated_ = true; - } - -- bool is_null_ = true; -+ bool is_populated_ = false; - union { - // |empty_| exists so that the union will always be initialized, even when - // it doesn't contain a value. Union members must be initialized for the -@@ -133,7 +133,7 @@ struct OptionalStorage : OptionalStorage - - // Accessing the members of template base class requires explicit - // declaration. -- using OptionalStorageBase::is_null_; -+ using OptionalStorageBase::is_populated_; - using OptionalStorageBase::value_; - using OptionalStorageBase::Init; - -@@ -145,12 +145,12 @@ struct OptionalStorage : OptionalStorage - OptionalStorage() = default; - - OptionalStorage(const OptionalStorage& other) { -- if (!other.is_null_) -+ if (other.is_populated_) - Init(other.value_); - } - - OptionalStorage(OptionalStorage&& other) { -- if (!other.is_null_) -+ if (other.is_populated_) - Init(std::move(other.value_)); - } - }; -@@ -160,7 +160,7 @@ struct OptionalStorage - : OptionalStorageBase { -- using OptionalStorageBase::is_null_; -+ using OptionalStorageBase::is_populated_; - using OptionalStorageBase::value_; - using OptionalStorageBase::Init; - using OptionalStorageBase::OptionalStorageBase; -@@ -169,7 +169,7 @@ struct OptionalStorage - : OptionalStorageBase { -- using OptionalStorageBase::is_null_; -+ using OptionalStorageBase::is_populated_; - using OptionalStorageBase::value_; - using OptionalStorageBase::Init; - using OptionalStorageBase::OptionalStorageBase; -@@ -188,7 +188,7 @@ struct OptionalStorage storage_; -@@ -334,12 +334,12 @@ class Optional : public internal::Option - } - - constexpr const T* operator->() const { -- DCHECK(!storage_.is_null_); -+ DCHECK(storage_.is_populated_); - return &value(); - } - - constexpr T* operator->() { -- DCHECK(!storage_.is_null_); -+ DCHECK(storage_.is_populated_); - return &value(); - } - -@@ -351,27 +351,27 @@ class Optional : public internal::Option - - constexpr T&& operator*() && { return std::move(value()); } - -- constexpr explicit operator bool() const { return !storage_.is_null_; } -+ constexpr explicit operator bool() const { return storage_.is_populated_; } - -- constexpr bool has_value() const { return !storage_.is_null_; } -+ constexpr bool has_value() const { return storage_.is_populated_; } - - constexpr T& value() & { -- DCHECK(!storage_.is_null_); -+ DCHECK(storage_.is_populated_); - return storage_.value_; - } - - constexpr const T& value() const & { -- DCHECK(!storage_.is_null_); -+ DCHECK(storage_.is_populated_); - return storage_.value_; - } - - constexpr T&& value() && { -- DCHECK(!storage_.is_null_); -+ DCHECK(storage_.is_populated_); - return std::move(storage_.value_); - } - - constexpr const T&& value() const && { -- DCHECK(!storage_.is_null_); -+ DCHECK(storage_.is_populated_); - return std::move(storage_.value_); - } - -@@ -382,8 +382,9 @@ class Optional : public internal::Option - // "T must be copy constructible"); - static_assert(std::is_convertible::value, - "U must be convertible to T"); -- return storage_.is_null_ ? static_cast(std::forward(default_value)) -- : value(); -+ return storage_.is_populated_ -+ ? value() -+ : static_cast(std::forward(default_value)); - } - - template -@@ -393,26 +394,27 @@ class Optional : public internal::Option - // "T must be move constructible"); - static_assert(std::is_convertible::value, - "U must be convertible to T"); -- return storage_.is_null_ ? static_cast(std::forward(default_value)) -- : std::move(value()); -+ return storage_.is_populated_ -+ ? std::move(value()) -+ : static_cast(std::forward(default_value)); - } - - void swap(Optional& other) { -- if (storage_.is_null_ && other.storage_.is_null_) -+ if (!storage_.is_populated_ && !other.storage_.is_populated_) - return; - -- if (storage_.is_null_ != other.storage_.is_null_) { -- if (storage_.is_null_) { -- storage_.Init(std::move(other.storage_.value_)); -- other.FreeIfNeeded(); -- } else { -+ if (storage_.is_populated_ != other.storage_.is_populated_) { -+ if (storage_.is_populated_) { - other.storage_.Init(std::move(storage_.value_)); - FreeIfNeeded(); -+ } else { -+ storage_.Init(std::move(other.storage_.value_)); -+ other.FreeIfNeeded(); - } - return; - } - -- DCHECK(!storage_.is_null_ && !other.storage_.is_null_); -+ DCHECK(storage_.is_populated_ && other.storage_.is_populated_); - using std::swap; - swap(**this, *other); - } diff --git a/chromium-65.0.3325.146-gcc5-r3.patch b/chromium-65.0.3325.146-gcc5-r3.patch deleted file mode 100644 index ab74a35..0000000 --- a/chromium-65.0.3325.146-gcc5-r3.patch +++ /dev/null @@ -1,74 +0,0 @@ -diff -up chromium-65.0.3325.146/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 chromium-65.0.3325.146/gpu/ipc/common/mailbox_struct_traits.h ---- chromium-65.0.3325.146/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 2018-03-06 18:04:32.000000000 -0500 -+++ chromium-65.0.3325.146/gpu/ipc/common/mailbox_struct_traits.h 2018-03-07 10:42:07.198179638 -0500 -@@ -15,7 +15,7 @@ namespace mojo { - template <> - struct StructTraits { - static base::span name(const gpu::Mailbox& mailbox) { -- return mailbox.name; -+ return base::make_span(mailbox.name); - } - static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out); - }; -diff -up chromium-65.0.3325.146/services/viz/public/cpp/compositing/filter_operation_struct_traits.h.gcc5-r3 chromium-65.0.3325.146/services/viz/public/cpp/compositing/filter_operation_struct_traits.h ---- chromium-65.0.3325.146/services/viz/public/cpp/compositing/filter_operation_struct_traits.h.gcc5-r3 2018-03-06 18:04:37.000000000 -0500 -+++ chromium-65.0.3325.146/services/viz/public/cpp/compositing/filter_operation_struct_traits.h 2018-03-07 10:42:07.198179638 -0500 -@@ -138,7 +138,7 @@ struct StructTraits matrix(const cc::FilterOperation& operation) { - if (operation.type() != cc::FilterOperation::COLOR_MATRIX) - return base::span(); -- return operation.matrix(); -+ return base::make_span(operation.matrix()); - } - - static base::span shape( -diff -up chromium-65.0.3325.146/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 chromium-65.0.3325.146/services/viz/public/cpp/compositing/quads_struct_traits.h ---- chromium-65.0.3325.146/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 2018-03-06 18:04:37.000000000 -0500 -+++ chromium-65.0.3325.146/services/viz/public/cpp/compositing/quads_struct_traits.h 2018-03-07 10:42:07.198179638 -0500 -@@ -308,7 +308,7 @@ struct StructTraits vertex_opacity(const viz::DrawQuad& input) { - const viz::TextureDrawQuad* quad = - viz::TextureDrawQuad::MaterialCast(&input); -- return quad->vertex_opacity; -+ return base::make_span(quad->vertex_opacity); - } - - static bool y_flipped(const viz::DrawQuad& input) { -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h.gcc5-r3 chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h ---- chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h.gcc5-r3 2018-03-06 18:05:06.000000000 -0500 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h 2018-03-07 10:48:53.996093882 -0500 -@@ -62,7 +62,7 @@ class WTF_EXPORT ArrayBufferContents { - allocation_length_(length), - data_(data), - data_length_(length), -- kind_(AllocationKind::kNormal), -+ kind_(WTF::ArrayBufferContents::AllocationKind::kNormal), - deleter_(deleter) {} - DataHandle(void* allocation_base, - size_t allocation_length, -@@ -93,11 +93,11 @@ class WTF_EXPORT ArrayBufferContents { - reinterpret_cast(allocation_base_) + - allocation_length_); - switch (kind_) { -- case AllocationKind::kNormal: -+ case WTF::ArrayBufferContents::AllocationKind::kNormal: - DCHECK(deleter_); - deleter_(data_); - return; -- case AllocationKind::kReservation: -+ case WTF::ArrayBufferContents::AllocationKind::kReservation: - ReleaseReservedMemory(allocation_base_, allocation_length_); - return; - } -diff -up chromium-65.0.3325.146/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 chromium-65.0.3325.146/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc ---- chromium-65.0.3325.146/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 2018-03-06 18:06:09.000000000 -0500 -+++ chromium-65.0.3325.146/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2018-03-07 10:42:07.199179616 -0500 -@@ -10,7 +10,7 @@ - - #include "modules/audio_processing/aec3/aec_state.h" - --#include -+#include - - #include - #include diff --git a/chromium-65.0.3325.146-gcc7.patch b/chromium-65.0.3325.146-gcc7.patch deleted file mode 100644 index 4f2b46c..0000000 --- a/chromium-65.0.3325.146-gcc7.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 chromium-65.0.3325.146/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h ---- chromium-65.0.3325.146/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 2018-03-07 10:34:48.783900894 -0500 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h 2018-03-07 10:35:44.885638503 -0500 -@@ -5,6 +5,7 @@ - #ifndef SharedGpuContext_h - #define SharedGpuContext_h - -+#include - #include - #include "base/callback.h" - #include "base/memory/weak_ptr.h" diff --git a/chromium-65.0.3325.146-workaround-gcc7-is_trivially_copy_constructable-failure.patch b/chromium-65.0.3325.146-workaround-gcc7-is_trivially_copy_constructable-failure.patch deleted file mode 100644 index 241dfb5..0000000 --- a/chromium-65.0.3325.146-workaround-gcc7-is_trivially_copy_constructable-failure.patch +++ /dev/null @@ -1,55 +0,0 @@ -diff -up chromium-65.0.3325.146/base/optional.h.784732 chromium-65.0.3325.146/base/optional.h ---- chromium-65.0.3325.146/base/optional.h.784732 2018-03-07 13:40:00.103579631 -0500 -+++ chromium-65.0.3325.146/base/optional.h 2018-03-07 13:41:08.950323996 -0500 -@@ -9,6 +9,7 @@ - #include - - #include "base/logging.h" -+#include "base/template_util.h" - - namespace base { - -@@ -106,7 +107,7 @@ struct OptionalStorageBase::value, -+ bool = is_trivially_copy_constructible::value, - bool = std::is_trivially_move_constructible::value> - struct OptionalStorage : OptionalStorageBase { - // This is no trivially {copy,move} constructible case. Other cases are -diff -up chromium-65.0.3325.146/base/template_util.h.784732 chromium-65.0.3325.146/base/template_util.h ---- chromium-65.0.3325.146/base/template_util.h.784732 2018-03-07 13:41:19.479131969 -0500 -+++ chromium-65.0.3325.146/base/template_util.h 2018-03-07 13:42:41.308639551 -0500 -@@ -10,6 +10,7 @@ - #include - #include - #include -+#include - - #include "build/build_config.h" - -@@ -127,6 +128,23 @@ template - using is_trivially_copyable = std::is_trivially_copyable; - #endif - -+#if defined(__GNUC__) && !defined(__clang__) && __GNUC__ <= 7 -+// Workaround for g++7 and earlier family. -+// Due to https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80654, without this -+// Optional> where T is non-copyable causes a compile error. -+// As we know it is not trivially copy constructible, explicitly declare so. -+template -+struct is_trivially_copy_constructible -+ : std::is_trivially_copy_constructible {}; -+ -+template -+struct is_trivially_copy_constructible> : std::false_type {}; -+#else -+// Otherwise use std::is_trivially_copy_constructible as is. -+template -+using is_trivially_copy_constructible = std::is_trivially_copy_constructible; -+#endif -+ - } // namespace base - - #undef CR_USE_FALLBACKS_FOR_GCC_WITH_LIBCXX diff --git a/chromium-65.0.3325.146-wtf-oilpan-Remove-GC-checks-from-WTF-Optional-T.patch b/chromium-65.0.3325.146-wtf-oilpan-Remove-GC-checks-from-WTF-Optional-T.patch deleted file mode 100644 index 8b5ff7f..0000000 --- a/chromium-65.0.3325.146-wtf-oilpan-Remove-GC-checks-from-WTF-Optional-T.patch +++ /dev/null @@ -1,61 +0,0 @@ -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/platform/heap/TraceTraits.h.oilpan chromium-65.0.3325.146/third_party/WebKit/Source/platform/heap/TraceTraits.h ---- chromium-65.0.3325.146/third_party/WebKit/Source/platform/heap/TraceTraits.h.oilpan 2018-03-13 16:45:40.613426445 -0400 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/platform/heap/TraceTraits.h 2018-03-13 16:45:49.946244905 -0400 -@@ -18,6 +18,7 @@ - #include "platform/wtf/HashTable.h" - #include "platform/wtf/LinkedHashSet.h" - #include "platform/wtf/ListHashSet.h" -+#include "platform/wtf/Optional.h" - #include "platform/wtf/TypeTraits.h" - - namespace blink { -@@ -325,6 +326,23 @@ class TraceTrait> { - } - }; - -+// While using Optional with garbage-collected types is generally disallowed -+// by the OptionalGarbageCollected check in blink_gc_plugin, garbage-collected -+// containers such as HeapVector are allowed and need to be traced. -+template -+class TraceTrait> { -+ STATIC_ONLY(TraceTrait); -+ -+ public: -+ template -+ static void Trace(VisitorDispatcher visitor, WTF::Optional* optional) { -+ if (*optional != WTF::nullopt) { -+ TraceIfEnabled::value>::Trace(visitor, -+ optional->value()); -+ } -+ } -+}; -+ - // If eager tracing leads to excessively deep |trace()| call chains (and - // the system stack usage that this brings), the marker implementation will - // switch to using an explicit mark stack. Recursive and deep object graphs -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/Optional.h.oilpan chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/Optional.h ---- chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/Optional.h.oilpan 2018-03-13 16:46:01.683015951 -0400 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/Optional.h 2018-03-13 16:46:51.632043375 -0400 -@@ -7,20 +7,15 @@ - - #include "base/optional.h" - #include "platform/wtf/TemplateUtil.h" --#include "platform/wtf/TypeTraits.h" - - namespace WTF { - - // WTF::Optional is base::Optional. See base/optional.h for documentation. - // - // A clang plugin enforces that garbage collected types are not allocated --// outside of the heap, similarly we enforce that one doesn't create garbage --// collected types nested inside an Optional. -+// outside of the heap. GC containers such as HeapVector are allowed though. - template --using Optional = -- typename std::enable_if::value || -- IsPersistentReferenceType::value, -- base::Optional>::type; -+using Optional = base::Optional; - - constexpr base::nullopt_t nullopt = base::nullopt; - constexpr base::in_place_t in_place = base::in_place; diff --git a/chromium-65.0.3325.146-wtf-vector-fix.patch b/chromium-65.0.3325.146-wtf-vector-fix.patch deleted file mode 100644 index e4bfeba..0000000 --- a/chromium-65.0.3325.146-wtf-vector-fix.patch +++ /dev/null @@ -1,54 +0,0 @@ -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/DEPS.jdp chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/DEPS ---- chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/DEPS.jdp 2018-03-07 13:54:42.653286576 -0500 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/DEPS 2018-03-07 13:55:00.973903591 -0500 -@@ -16,6 +16,7 @@ include_rules = [ - "+base/process/process_metrics.h", - "+base/rand_util.h", - "+base/strings", -+ "+base/template_util.h", - "+base/threading/thread_checker.h", - "+base/time/time.h", - "+base/tuple.h", -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/Optional.h.jdp chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/Optional.h ---- chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/Optional.h.jdp 2018-03-07 13:56:29.053062331 -0500 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/Optional.h 2018-03-07 13:56:36.595904651 -0500 -@@ -6,6 +6,7 @@ - #define Optional_h - - #include "base/optional.h" -+#include "platform/wtf/TemplateUtil.h" - #include "platform/wtf/TypeTraits.h" - - namespace WTF { -diff -up chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/TemplateUtil.h.jdp chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/TemplateUtil.h ---- chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/TemplateUtil.h.jdp 2018-03-07 13:56:47.356679702 -0500 -+++ chromium-65.0.3325.146/third_party/WebKit/Source/platform/wtf/TemplateUtil.h 2018-03-07 13:57:41.769542223 -0500 -@@ -0,0 +1,28 @@ -+// Copyright 2018 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. -+ -+#ifndef TemplateUtil_h -+#define TemplateUtil_h -+ -+#include "base/template_util.h" -+#include "platform/wtf/Vector.h" -+ -+namespace base { -+ -+#if defined(__GNUC__) && !defined(__clang__) && __GNUC__ <= 7 -+// Workaround for g++7 and earlier family. -+// Due to https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80654, without this -+// Optional> where T is non-copyable causes a compile error. -+// As we know it is not trivially copy constructible, explicitly declare so. -+// -+// It completes the declaration in base/template_util.h that was provided -+// for std::vector -+template -+struct is_trivially_copy_constructible> : std::false_type {}; -+#endif -+ -+} // namespace base -+ -+#endif // TemplateUtil_h -+ diff --git a/chromium-65.0.3325.162-boolfix.patch b/chromium-65.0.3325.162-boolfix.patch deleted file mode 100644 index a27f3a8..0000000 --- a/chromium-65.0.3325.162-boolfix.patch +++ /dev/null @@ -1,36 +0,0 @@ -diff -up chromium-65.0.3325.162/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix chromium-65.0.3325.162/mojo/public/cpp/bindings/associated_interface_ptr_info.h ---- chromium-65.0.3325.162/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix 2018-03-15 13:07:54.999428755 -0400 -+++ chromium-65.0.3325.162/mojo/public/cpp/bindings/associated_interface_ptr_info.h 2018-03-15 13:08:21.270794252 -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-65.0.3325.162/mojo/public/cpp/bindings/associated_interface_request.h.boolfix chromium-65.0.3325.162/mojo/public/cpp/bindings/associated_interface_request.h ---- chromium-65.0.3325.162/mojo/public/cpp/bindings/associated_interface_request.h.boolfix 2018-03-15 13:07:09.680523296 -0400 -+++ chromium-65.0.3325.162/mojo/public/cpp/bindings/associated_interface_request.h 2018-03-15 13:07:44.429684037 -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-65.0.3325.162/mojo/public/cpp/bindings/interface_request.h.boolfix chromium-65.0.3325.162/mojo/public/cpp/bindings/interface_request.h ---- chromium-65.0.3325.162/mojo/public/cpp/bindings/interface_request.h.boolfix 2018-03-15 13:08:33.494499025 -0400 -+++ chromium-65.0.3325.162/mojo/public/cpp/bindings/interface_request.h 2018-03-15 13:10:39.218462546 -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_; } -+ explicit operator bool() const { return (bool) handle_; } - - // Removes the message pipe from the request and returns it. - ScopedMessagePipeHandle PassMessagePipe() { return std::move(handle_); } diff --git a/chromium-65.0.3325.162-epel7-stdc++.patch b/chromium-65.0.3325.162-epel7-stdc++.patch deleted file mode 100644 index ee2066b..0000000 --- a/chromium-65.0.3325.162-epel7-stdc++.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-65.0.3325.162/build/config/posix/BUILD.gn.epel7 chromium-65.0.3325.162/build/config/posix/BUILD.gn ---- chromium-65.0.3325.162/build/config/posix/BUILD.gn.epel7 2018-03-20 16:14:42.425926323 -0400 -+++ chromium-65.0.3325.162/build/config/posix/BUILD.gn 2018-03-20 16:15:10.150152245 -0400 -@@ -74,6 +74,8 @@ config("runtime_library") { - "rt", - ] - } -+ } else { -+ libs += [ "stdc++" ] - } - - if (!is_mac && !is_ios && sysroot != "") { diff --git a/chromium-65.0.3325.162-skia-aarch64-buildfix.patch b/chromium-65.0.3325.162-skia-aarch64-buildfix.patch deleted file mode 100644 index e48346c..0000000 --- a/chromium-65.0.3325.162-skia-aarch64-buildfix.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -up chromium-65.0.3325.162/third_party/skia/src/jumper/SkJumper_stages.cpp.aarch64fix chromium-65.0.3325.162/third_party/skia/src/jumper/SkJumper_stages.cpp ---- chromium-65.0.3325.162/third_party/skia/src/jumper/SkJumper_stages.cpp.aarch64fix 2018-03-15 15:27:35.201345844 -0400 -+++ chromium-65.0.3325.162/third_party/skia/src/jumper/SkJumper_stages.cpp 2018-03-15 15:31:30.471777400 -0400 -@@ -666,7 +666,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) -@@ -686,7 +686,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) diff --git a/chromium-66.0.3359.117-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch b/chromium-66.0.3359.117-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch deleted file mode 100644 index 36ade41..0000000 --- a/chromium-66.0.3359.117-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch +++ /dev/null @@ -1,33 +0,0 @@ -diff -up chromium-66.0.3359.117/services/preferences/tracked/pref_hash_filter.h.gcc-full-decl chromium-66.0.3359.117/services/preferences/tracked/pref_hash_filter.h ---- chromium-66.0.3359.117/services/preferences/tracked/pref_hash_filter.h.gcc-full-decl 2018-04-25 16:29:52.372692179 -0400 -+++ chromium-66.0.3359.117/services/preferences/tracked/pref_hash_filter.h 2018-04-25 16:31:15.698058409 -0400 -@@ -21,9 +21,9 @@ - #include "services/preferences/public/mojom/preferences.mojom.h" - #include "services/preferences/tracked/hash_store_contents.h" - #include "services/preferences/tracked/interceptable_pref_filter.h" -+#include "services/preferences/tracked/pref_hash_store.h" - #include "services/preferences/tracked/tracked_preference.h" - --class PrefHashStore; - class PrefService; - - namespace base { -diff -up chromium-66.0.3359.117/third_party/WebKit/Source/modules/webdatabase/SQLTransactionBackend.h.gcc-full-decl chromium-66.0.3359.117/third_party/WebKit/Source/modules/webdatabase/SQLTransactionBackend.h ---- chromium-66.0.3359.117/third_party/WebKit/Source/modules/webdatabase/SQLTransactionBackend.h.gcc-full-decl 2018-04-17 21:05:12.000000000 -0400 -+++ chromium-66.0.3359.117/third_party/WebKit/Source/modules/webdatabase/SQLTransactionBackend.h 2018-04-25 16:29:52.373692159 -0400 -@@ -30,6 +30,7 @@ - - #include - #include "modules/webdatabase/DatabaseBasicTypes.h" -+#include "modules/webdatabase/SQLError.h" - #include "modules/webdatabase/SQLStatement.h" - #include "modules/webdatabase/SQLStatementBackend.h" - #include "modules/webdatabase/SQLTransactionStateMachine.h" -@@ -41,7 +42,6 @@ - namespace blink { - - class Database; --class SQLErrorData; - class SQLiteTransaction; - class SQLTransaction; - class SQLTransactionBackend; diff --git a/chromium-66.0.3359.117-GCC-do-not-use-initializer-list-for-NoDestructor-of-.patch b/chromium-66.0.3359.117-GCC-do-not-use-initializer-list-for-NoDestructor-of-.patch deleted file mode 100644 index cb68934..0000000 --- a/chromium-66.0.3359.117-GCC-do-not-use-initializer-list-for-NoDestructor-of-.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-66.0.3359.117/chrome/browser/supervised_user/supervised_user_url_filter.cc.flatsetfix chromium-66.0.3359.117/chrome/browser/supervised_user/supervised_user_url_filter.cc ---- chromium-66.0.3359.117/chrome/browser/supervised_user/supervised_user_url_filter.cc.flatsetfix 2018-04-30 14:22:23.997461566 -0400 -+++ chromium-66.0.3359.117/chrome/browser/supervised_user/supervised_user_url_filter.cc 2018-04-30 14:22:51.867920383 -0400 -@@ -368,7 +368,7 @@ SupervisedUserURLFilter::GetFilteringBeh - - // Allow navigations to whitelisted origins (currently families.google.com). - static const base::NoDestructor> kWhitelistedOrigins( -- {GURL(kFamiliesUrl).GetOrigin()}); -+ base::flat_set({GURL(kFamiliesUrl).GetOrigin()})); - if (base::ContainsKey(*kWhitelistedOrigins, effective_url.GetOrigin())) - return ALLOW; - diff --git a/chromium-66.0.3359.117-gcc-copy-constructor-fix.patch b/chromium-66.0.3359.117-gcc-copy-constructor-fix.patch deleted file mode 100644 index 09c5b82..0000000 --- a/chromium-66.0.3359.117-gcc-copy-constructor-fix.patch +++ /dev/null @@ -1,49 +0,0 @@ -diff -up chromium-66.0.3359.117/cc/raster/playback_image_provider.cc.copycon chromium-66.0.3359.117/cc/raster/playback_image_provider.cc ---- chromium-66.0.3359.117/cc/raster/playback_image_provider.cc.copycon 2018-04-23 13:22:43.109126071 -0400 -+++ chromium-66.0.3359.117/cc/raster/playback_image_provider.cc 2018-04-23 13:23:55.761704938 -0400 -@@ -20,7 +20,7 @@ void UnrefImageFromCache(DrawImage draw_ - PlaybackImageProvider::PlaybackImageProvider( - ImageDecodeCache* cache, - const gfx::ColorSpace& target_color_space, -- base::Optional settings) -+ base::Optional&& settings) - : cache_(cache), - target_color_space_(target_color_space), - settings_(std::move(settings)) { -@@ -70,7 +70,10 @@ PlaybackImageProvider::GetDecodedDrawIma - } - - PlaybackImageProvider::Settings::Settings() = default; --PlaybackImageProvider::Settings::Settings(const Settings& other) = default; -+PlaybackImageProvider::Settings::Settings(PlaybackImageProvider::Settings&&) = -+ default; - PlaybackImageProvider::Settings::~Settings() = default; -+PlaybackImageProvider::Settings& PlaybackImageProvider::Settings::operator=( -+ PlaybackImageProvider::Settings&&) = default; - - } // namespace cc -diff -up chromium-66.0.3359.117/cc/raster/playback_image_provider.h.copycon chromium-66.0.3359.117/cc/raster/playback_image_provider.h ---- chromium-66.0.3359.117/cc/raster/playback_image_provider.h.copycon 2018-04-23 13:24:07.699471148 -0400 -+++ chromium-66.0.3359.117/cc/raster/playback_image_provider.h 2018-04-23 13:24:57.080506348 -0400 -@@ -20,8 +20,10 @@ class CC_EXPORT PlaybackImageProvider : - public: - struct CC_EXPORT Settings { - Settings(); -- Settings(const Settings& other); -+ Settings(const Settings&) = delete; -+ Settings(Settings&&); - ~Settings(); -+ Settings& operator=(Settings&&); - - // The set of image ids to skip during raster. - PaintImageIdFlatSet images_to_skip; -@@ -34,7 +36,7 @@ class CC_EXPORT PlaybackImageProvider : - // If no settings are provided, all images are skipped during rasterization. - PlaybackImageProvider(ImageDecodeCache* cache, - const gfx::ColorSpace& target_color_space, -- base::Optional settings); -+ base::Optional&& settings); - ~PlaybackImageProvider() override; - - PlaybackImageProvider(PlaybackImageProvider&& other); -diff -up chromium-66.0.3359.117/cc/raster/playback_image_provider_unittest.cc.copycon chromium-66.0.3359.117/cc/raster/playback_image_provider_unittest.cc diff --git a/chromium-66.0.3359.117-gcc-optional-move-fixes.patch b/chromium-66.0.3359.117-gcc-optional-move-fixes.patch deleted file mode 100644 index 80df7d0..0000000 --- a/chromium-66.0.3359.117-gcc-optional-move-fixes.patch +++ /dev/null @@ -1,45 +0,0 @@ -diff -up chromium-66.0.3359.117/content/browser/appcache/appcache_request_handler.cc.gccomove chromium-66.0.3359.117/content/browser/appcache/appcache_request_handler.cc ---- chromium-66.0.3359.117/content/browser/appcache/appcache_request_handler.cc.gccomove 2018-04-23 12:53:32.419477463 -0400 -+++ chromium-66.0.3359.117/content/browser/appcache/appcache_request_handler.cc 2018-04-23 12:54:02.497887258 -0400 -@@ -639,7 +639,7 @@ AppCacheRequestHandler::MaybeCreateSubre - - SubresourceLoaderParams params; - params.loader_factory_info = factory_ptr.PassInterface(); -- return params; -+ return base::Optional(std::move(params)); - } - - void AppCacheRequestHandler::MaybeCreateSubresourceLoader( -diff -up chromium-66.0.3359.117/content/browser/service_worker/service_worker_controllee_request_handler.cc.gccomove chromium-66.0.3359.117/content/browser/service_worker/service_worker_controllee_request_handler.cc ---- chromium-66.0.3359.117/content/browser/service_worker/service_worker_controllee_request_handler.cc.gccomove 2018-04-23 12:54:16.614610083 -0400 -+++ chromium-66.0.3359.117/content/browser/service_worker/service_worker_controllee_request_handler.cc 2018-04-23 12:54:38.401182827 -0400 -@@ -271,7 +271,7 @@ ServiceWorkerControlleeRequestHandler::M - controller_info->object_info = provider_host_->GetOrCreateServiceWorkerHandle( - provider_host_->controller()); - params.controller_service_worker_info = std::move(controller_info); -- return params; -+ return base::Optional(std::move(params)); - } - - void ServiceWorkerControlleeRequestHandler::PrepareForMainResource( -diff -up chromium-66.0.3359.117/device/fido/device_response_converter.cc.gccomove chromium-66.0.3359.117/device/fido/device_response_converter.cc ---- chromium-66.0.3359.117/device/fido/device_response_converter.cc.gccomove 2018-04-23 12:54:51.452926482 -0400 -+++ chromium-66.0.3359.117/device/fido/device_response_converter.cc 2018-04-23 12:55:24.248283058 -0400 -@@ -121,7 +121,7 @@ base::Optionalsecond.GetUnsigned()); - } - -- return response; -+ return base::Optional(std::move(response)); - } - - base::Optional ReadCTAPGetInfoResponse( -@@ -241,7 +241,7 @@ base::Optional(std::move(response)); - } - - } // namespace device diff --git a/chromium-66.0.3359.117-gcc-vector-copy-constructor-fix.patch b/chromium-66.0.3359.117-gcc-vector-copy-constructor-fix.patch deleted file mode 100644 index b86c200..0000000 --- a/chromium-66.0.3359.117-gcc-vector-copy-constructor-fix.patch +++ /dev/null @@ -1,53 +0,0 @@ -diff -up chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/DEPS.944404 chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/DEPS ---- chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/DEPS.944404 2018-04-23 14:18:43.702116916 -0400 -+++ chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/DEPS 2018-04-23 14:19:05.854680223 -0400 -@@ -16,6 +16,7 @@ include_rules = [ - "+base/process/process_metrics.h", - "+base/rand_util.h", - "+base/strings", -+ "+base/template_util.h", - "+base/threading/thread_checker.h", - "+base/time/time.h", - "+base/tuple.h", -diff -up chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/Optional.h.944404 chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/Optional.h ---- chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/Optional.h.944404 2018-04-23 14:20:05.718499685 -0400 -+++ chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/Optional.h 2018-04-23 14:20:18.165253615 -0400 -@@ -6,6 +6,7 @@ - #define Optional_h - - #include "base/optional.h" -+#include "platform/wtf/TemplateUtil.h" - - namespace WTF { - -diff -up chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/TemplateUtil.h.944404 chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/TemplateUtil.h ---- chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/TemplateUtil.h.944404 2018-04-23 14:20:31.660987877 -0400 -+++ chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/TemplateUtil.h 2018-04-23 14:21:40.276637297 -0400 -@@ -0,0 +1,27 @@ -+// Copyright 2018 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. -+ -+#ifndef TemplateUtil_h -+#define TemplateUtil_h -+ -+#include "base/template_util.h" -+#include "platform/wtf/Vector.h" -+ -+namespace base { -+ -+#if defined(__GNUC__) && !defined(__clang__) && __GNUC__ <= 7 -+// Workaround for g++7 and earlier family. -+// Due to https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80654, without this -+// Optional> where T is non-copyable causes a compile error. -+// As we know it is not trivially copy constructible, explicitly declare so. -+// -+// It completes the declaration in base/template_util.h that was provided -+// for std::vector -+template -+struct is_trivially_copy_constructible> : std::false_type {}; -+#endif -+ -+} // namespace base -+ -+#endif // TemplateUtil_h diff --git a/chromium-66.0.3359.117-gcc5-r3.patch b/chromium-66.0.3359.117-gcc5-r3.patch deleted file mode 100644 index 56abcf1..0000000 --- a/chromium-66.0.3359.117-gcc5-r3.patch +++ /dev/null @@ -1,38 +0,0 @@ -diff -up chromium-66.0.3359.117/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 chromium-66.0.3359.117/gpu/ipc/common/mailbox_struct_traits.h ---- chromium-66.0.3359.117/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 2018-04-17 21:04:33.000000000 -0400 -+++ chromium-66.0.3359.117/gpu/ipc/common/mailbox_struct_traits.h 2018-04-18 12:12:40.065663210 -0400 -@@ -15,7 +15,7 @@ namespace mojo { - template <> - struct StructTraits { - static base::span name(const gpu::Mailbox& mailbox) { -- return mailbox.name; -+ return base::make_span(mailbox.name); - } - static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out); - }; -diff -up chromium-66.0.3359.117/services/viz/public/cpp/compositing/filter_operation_struct_traits.h.gcc5-r3 chromium-66.0.3359.117/services/viz/public/cpp/compositing/filter_operation_struct_traits.h -diff -up chromium-66.0.3359.117/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 chromium-66.0.3359.117/services/viz/public/cpp/compositing/quads_struct_traits.h ---- chromium-66.0.3359.117/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 2018-04-17 21:04:43.000000000 -0400 -+++ chromium-66.0.3359.117/services/viz/public/cpp/compositing/quads_struct_traits.h 2018-04-18 12:12:40.067663160 -0400 -@@ -308,7 +308,7 @@ struct StructTraits vertex_opacity(const viz::DrawQuad& input) { - const viz::TextureDrawQuad* quad = - viz::TextureDrawQuad::MaterialCast(&input); -- return quad->vertex_opacity; -+ return base::make_span(quad->vertex_opacity); - } - - static bool y_flipped(const viz::DrawQuad& input) { -diff -up chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h.gcc5-r3 chromium-66.0.3359.117/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h -diff -up chromium-66.0.3359.117/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 chromium-66.0.3359.117/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc ---- chromium-66.0.3359.117/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 2018-04-17 21:06:20.000000000 -0400 -+++ chromium-66.0.3359.117/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2018-04-18 12:12:40.068663134 -0400 -@@ -10,7 +10,7 @@ - - #include "modules/audio_processing/aec3/aec_state.h" - --#include -+#include - - #include - #include diff --git a/chromium-66.0.3359.117-nounrar.patch b/chromium-66.0.3359.117-nounrar.patch deleted file mode 100644 index 67a517b..0000000 --- a/chromium-66.0.3359.117-nounrar.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff -up chromium-66.0.3359.117/chrome/services/file_util/public/cpp/BUILD.gn.nounrar chromium-66.0.3359.117/chrome/services/file_util/public/cpp/BUILD.gn ---- chromium-66.0.3359.117/chrome/services/file_util/public/cpp/BUILD.gn.nounrar 2018-04-25 12:17:13.858139109 -0400 -+++ chromium-66.0.3359.117/chrome/services/file_util/public/cpp/BUILD.gn 2018-04-25 12:19:53.639532053 -0400 -@@ -27,9 +27,9 @@ source_set("cpp") { - } - - #TODO(crbug/750327): This dependency is here temporarily. -- deps = [ -- "//third_party/unrar:unrar", -- ] -+ # deps = [ -+ # "//third_party/unrar:unrar", -+ # ] - - public_deps += [ "//chrome/common/safe_browsing" ] - } diff --git a/chromium-66.0.3359.139-arm-init-fix.patch b/chromium-66.0.3359.139-arm-init-fix.patch deleted file mode 100644 index 754af5b..0000000 --- a/chromium-66.0.3359.139-arm-init-fix.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-66.0.3359.139/skia/ext/convolver_neon.cc.arm-init-fix chromium-66.0.3359.139/skia/ext/convolver_neon.cc ---- chromium-66.0.3359.139/skia/ext/convolver_neon.cc.arm-init-fix 2018-05-05 10:07:03.624424987 -0400 -+++ chromium-66.0.3359.139/skia/ext/convolver_neon.cc 2018-05-05 10:07:45.417503001 -0400 -@@ -23,7 +23,7 @@ AccumRemainder(const unsigned char* pixe - remainder[2] += coeff * pixels_left[i * 4 + 2]; - remainder[3] += coeff * pixels_left[i * 4 + 3]; - } -- return {remainder[0], remainder[1], remainder[2], remainder[3]}; -+ return vld1q_s32(remainder); - } - - // Convolves horizontally along a single row. The row data is given in diff --git a/chromium-66.0.3359.170-gcc8-alignof.patch b/chromium-66.0.3359.170-gcc8-alignof.patch deleted file mode 100644 index 0c2b356..0000000 --- a/chromium-66.0.3359.170-gcc8-alignof.patch +++ /dev/null @@ -1,18 +0,0 @@ -diff -up chromium-66.0.3359.170/mojo/public/c/system/macros.h.gcc8-alignof chromium-66.0.3359.170/mojo/public/c/system/macros.h ---- chromium-66.0.3359.170/mojo/public/c/system/macros.h.gcc8-alignof 2018-05-15 14:58:46.448912634 -0400 -+++ chromium-66.0.3359.170/mojo/public/c/system/macros.h 2018-05-15 14:58:52.041784613 -0400 -@@ -18,7 +18,13 @@ - #endif - - // Like the C++11 |alignof| operator. --#if __cplusplus >= 201103L -+#if defined(__GNUC__) && __GNUC__ >= 8 -+// GCC 8 has changed the alignof operator to return the minimal alignment -+// required by the target ABI, instead of the preferred alignment. -+// This means that on 32-bit x86, it will return 4 instead of 8. -+// Use __alignof__ instead to avoid this. -+#define MOJO_ALIGNOF(type) __alignof__(type) -+#elif __cplusplus >= 201103L - #define MOJO_ALIGNOF(type) alignof(type) - #elif defined(__GNUC__) - #define MOJO_ALIGNOF(type) __alignof__(type) diff --git a/chromium-67.0.3396.62-boolfix.patch b/chromium-67.0.3396.62-boolfix.patch deleted file mode 100644 index d0ed189..0000000 --- a/chromium-67.0.3396.62-boolfix.patch +++ /dev/null @@ -1,36 +0,0 @@ -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-crashpad-aarch64-buildfix.patch b/chromium-67.0.3396.62-crashpad-aarch64-buildfix.patch deleted file mode 100644 index e19d726..0000000 --- a/chromium-67.0.3396.62-crashpad-aarch64-buildfix.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -up chromium-67.0.3396.62/third_party/crashpad/crashpad/util/misc/capture_context_linux.S.aarch64fix chromium-67.0.3396.62/third_party/crashpad/crashpad/util/misc/capture_context_linux.S ---- chromium-67.0.3396.62/third_party/crashpad/crashpad/util/misc/capture_context_linux.S.aarch64fix 2018-06-04 14:58:04.730083967 -0400 -+++ chromium-67.0.3396.62/third_party/crashpad/crashpad/util/misc/capture_context_linux.S 2018-06-04 14:58:24.896572816 -0400 -@@ -288,7 +288,7 @@ CAPTURECONTEXT_SYMBOL2: - #elif defined(__aarch64__) - - // Zero out fault_address, which is unused. -- str x31, [x0, #0xb0] // context->uc_mcontext.fault_address -+ str xzr, [x0, #0xb0] // context->uc_mcontext.fault_address - - // Save general purpose registers in context->uc_mcontext.regs[i]. - // The original x0 can't be recovered. -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 diff --git a/chromium-67.0.3396.62-epel7-use-old-python-exec-syntax.patch b/chromium-67.0.3396.62-epel7-use-old-python-exec-syntax.patch deleted file mode 100644 index 1aa5600..0000000 --- a/chromium-67.0.3396.62-epel7-use-old-python-exec-syntax.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-67.0.3396.62/tools/gn/bootstrap/bootstrap.py.oldexec chromium-67.0.3396.62/tools/gn/bootstrap/bootstrap.py ---- chromium-67.0.3396.62/tools/gn/bootstrap/bootstrap.py.oldexec 2018-06-06 10:13:40.862084284 -0400 -+++ chromium-67.0.3396.62/tools/gn/bootstrap/bootstrap.py 2018-06-06 10:14:08.809490819 -0400 -@@ -112,7 +112,7 @@ def windows_prepare_toolchain(tempdir): - - _globals = {"__builtins__":None} - _locals = {} -- exec(response, _globals, _locals) -+ exec response in _globals, _locals - - return _locals - diff --git a/chromium-67.0.3396.62-skia-aarch64-buildfix.patch b/chromium-67.0.3396.62-skia-aarch64-buildfix.patch deleted file mode 100644 index 6b37b08..0000000 --- a/chromium-67.0.3396.62-skia-aarch64-buildfix.patch +++ /dev/null @@ -1,21 +0,0 @@ -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) diff --git a/chromium-67.0.3396.87-fedora-user-agent.patch b/chromium-67.0.3396.87-fedora-user-agent.patch deleted file mode 100644 index 8df304d..0000000 --- a/chromium-67.0.3396.87-fedora-user-agent.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-67.0.3396.87/content/common/user_agent.cc.fedora-user-agent chromium-67.0.3396.87/content/common/user_agent.cc ---- chromium-67.0.3396.87/content/common/user_agent.cc.fedora-user-agent 2018-06-25 16:01:48.092188102 -0400 -+++ chromium-67.0.3396.87/content/common/user_agent.cc 2018-06-25 16:02:42.634878954 -0400 -@@ -141,7 +141,7 @@ std::string getUserAgentPlatform() { - #elif defined(OS_MACOSX) - "Macintosh; "; - #elif defined(USE_X11) || defined(USE_OZONE) -- "X11; "; // strange, but that's what Firefox uses -+ "X11; Fedora; "; // strange, but that's what Firefox uses - #elif defined(OS_ANDROID) - "Linux; "; - #else diff --git a/chromium-67.0.3396.99-py2-bootstrap.patch b/chromium-67.0.3396.99-py2-bootstrap.patch deleted file mode 100644 index b59c84b..0000000 --- a/chromium-67.0.3396.99-py2-bootstrap.patch +++ /dev/null @@ -1,42 +0,0 @@ -diff -up chromium-67.0.3396.99/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py.py2 chromium-67.0.3396.99/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py ---- chromium-67.0.3396.99/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py.py2 2018-07-25 14:14:02.004886479 -0400 -+++ chromium-67.0.3396.99/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py 2018-07-25 14:15:30.167896461 -0400 -@@ -58,7 +58,7 @@ def _MinifyJS(input_js): - - with tempfile.NamedTemporaryFile() as _: - args = [ -- 'python', -+ 'python2', - rjsmin_path - ] - p = subprocess.Popen(args, -@@ -177,7 +177,7 @@ def _MinifyCSS(css_text): - os.path.join(py_vulcanize_path, 'third_party', 'rcssmin', 'rcssmin.py')) - - with tempfile.NamedTemporaryFile() as _: -- rcssmin_args = ['python', rcssmin_path] -+ rcssmin_args = ['python2', rcssmin_path] - p = subprocess.Popen(rcssmin_args, - stdin=subprocess.PIPE, - stdout=subprocess.PIPE, -diff -up chromium-67.0.3396.99/tools/gn/bootstrap/bootstrap.py.py2 chromium-67.0.3396.99/tools/gn/bootstrap/bootstrap.py ---- chromium-67.0.3396.99/tools/gn/bootstrap/bootstrap.py.py2 2018-07-24 16:58:53.372022183 -0400 -+++ chromium-67.0.3396.99/tools/gn/bootstrap/bootstrap.py 2018-07-24 17:00:03.200279816 -0400 -@@ -983,7 +983,7 @@ def build_gn_with_gn(temp_gn, build_dir, - gn_gen_args = options.gn_gen_args or '' - if not options.debug: - gn_gen_args += ' is_debug=false' -- cmd = [temp_gn, 'gen', build_dir, '--args=%s' % gn_gen_args, -+ cmd = [temp_gn, 'gen', '--script-executable=/usr/bin/python2', build_dir, '--args=%s' % gn_gen_args, - "--root="+SRC_ROOT - ] - check_call(cmd) -@@ -997,7 +997,7 @@ def build_gn_with_gn(temp_gn, build_dir, - # build.ninja currently refers back to gn from the temporary directory. - # Regenerate the build files using the gn we just built so that the reference - # gets updated to "./gn". -- cmd = [os.path.join(build_dir, 'gn'), 'gen', build_dir, -+ cmd = [os.path.join(build_dir, 'gn'), 'gen', '--script-executable=/usr/bin/python2', build_dir, - '--args=%s' % gn_gen_args] - check_call(cmd) - diff --git a/chromium-68.0.3440.106-fedora-user-agent.patch b/chromium-68.0.3440.106-fedora-user-agent.patch deleted file mode 100644 index 6c4cb82..0000000 --- a/chromium-68.0.3440.106-fedora-user-agent.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-68.0.3440.106/content/common/user_agent.cc.fedora-user-agent chromium-68.0.3440.106/content/common/user_agent.cc ---- chromium-68.0.3440.106/content/common/user_agent.cc.fedora-user-agent 2018-08-09 03:27:45.965769824 -0400 -+++ chromium-68.0.3440.106/content/common/user_agent.cc 2018-08-09 03:28:34.001586650 -0400 -@@ -135,7 +135,7 @@ std::string getUserAgentPlatform() { - #elif defined(OS_MACOSX) - "Macintosh; "; - #elif defined(USE_X11) || defined(USE_OZONE) -- "X11; "; // strange, but that's what Firefox uses -+ "X11; Fedora; "; // strange, but that's what Firefox uses - #elif defined(OS_ANDROID) - "Linux; "; - #elif defined(OS_POSIX) || defined(OS_FUCHSIA) diff --git a/chromium-68.0.3440.106-fix-build-networking_private.patch b/chromium-68.0.3440.106-fix-build-networking_private.patch deleted file mode 100644 index 787d3db..0000000 --- a/chromium-68.0.3440.106-fix-build-networking_private.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-68.0.3440.106/extensions/browser/api/networking_private/BUILD.gn.fixb chromium-68.0.3440.106/extensions/browser/api/networking_private/BUILD.gn ---- chromium-68.0.3440.106/extensions/browser/api/networking_private/BUILD.gn.fixb 2018-08-09 03:56:36.091622243 -0400 -+++ chromium-68.0.3440.106/extensions/browser/api/networking_private/BUILD.gn 2018-08-09 03:57:03.047001659 -0400 -@@ -61,7 +61,7 @@ source_set("networking_private") { - ] - deps += [ "//chromeos" ] - } else { -- not_needed(default_sources) -+ not_needed([ "default_sources" ]) - sources = [ - "networking_private_stubs.cc", - ] diff --git a/chromium-68.0.3440.106-notest.patch b/chromium-68.0.3440.106-notest.patch deleted file mode 100644 index c20a40e..0000000 --- a/chromium-68.0.3440.106-notest.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-68.0.3440.106/chrome/test/data/webui_test_resources.grd.notest chromium-68.0.3440.106/chrome/test/data/webui_test_resources.grd ---- chromium-68.0.3440.106/chrome/test/data/webui_test_resources.grd.notest 2018-08-09 03:08:33.953029806 -0400 -+++ chromium-68.0.3440.106/chrome/test/data/webui_test_resources.grd 2018-08-09 03:09:40.264567818 -0400 -@@ -8,7 +8,6 @@ - - - -- - - - diff --git a/chromium-68.0.3440.84-cors-string.patch b/chromium-68.0.3440.84-cors-string.patch deleted file mode 100644 index b724cd4..0000000 --- a/chromium-68.0.3440.84-cors-string.patch +++ /dev/null @@ -1,51 +0,0 @@ -From 01d891fa0790950549c7bedb34edf869827a372e Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Thu, 31 May 2018 17:03:37 +0000 -Subject: [PATCH] CORS legacy: add missing string include -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -The cors_legacy.h file includes declarations using std::string, but -it is not declared due to missing #include . - -Also drop unneeded declarations in .cpp file. - -Change-Id: I00df799f84a6c3530c2f12f1e52d24c7d9bd6bfd -Reviewed-on: https://chromium-review.googlesource.com/1080707 -Reviewed-by: Tom Sepez -Commit-Queue: José Dapena Paz -Cr-Commit-Position: refs/heads/master@{#563282} ---- - services/network/public/cpp/cors/cors_legacy.cc | 2 -- - services/network/public/cpp/cors/cors_legacy.h | 1 + - 2 files changed, 1 insertion(+), 2 deletions(-) - -diff --git a/services/network/public/cpp/cors/cors_legacy.cc b/services/network/public/cpp/cors/cors_legacy.cc -index 8f32ac3be64e..f01af63619b5 100644 ---- a/services/network/public/cpp/cors/cors_legacy.cc -+++ b/services/network/public/cpp/cors/cors_legacy.cc -@@ -5,8 +5,6 @@ - #include "services/network/public/cpp/cors/cors_legacy.h" - - #include --#include --#include - - #include "url/gurl.h" - #include "url/url_util.h" -diff --git a/services/network/public/cpp/cors/cors_legacy.h b/services/network/public/cpp/cors/cors_legacy.h -index d2cdf026ca3a..dc9295a92c47 100644 ---- a/services/network/public/cpp/cors/cors_legacy.h -+++ b/services/network/public/cpp/cors/cors_legacy.h -@@ -5,6 +5,7 @@ - #ifndef SERVICES_NETWORK_PUBLIC_CPP_CORS_CORS_LEGACY_H_ - #define SERVICES_NETWORK_PUBLIC_CPP_CORS_CORS_LEGACY_H_ - -+#include - #include - - #include "base/component_export.h" --- -2.17.1 - diff --git a/chromium-68.0.3440.84-libjpeg.patch b/chromium-68.0.3440.84-libjpeg.patch deleted file mode 100644 index 5354281..0000000 --- a/chromium-68.0.3440.84-libjpeg.patch +++ /dev/null @@ -1,62 +0,0 @@ -From c6b0194f7a4d9f494b2d51f46d2c332e2e5f4050 Mon Sep 17 00:00:00 2001 -From: Daniel Bratell -Date: Mon, 28 May 2018 13:13:01 +0000 -Subject: [PATCH] Use the same libjpeg in all of blink/platform - -The normal libjpeg renames some symbols with macros so if its -headers are included together with libjpeg-turbo's headers -in the same translation unit, there will be an inconsistent -renaming of libjpeg symbols. This happened in some extreme -jumbo configuration and resulted in confising linker errors. - -This patch changes an include so that jpeglib.h becomes included -the same way everywhere. - -Change-Id: I7f122d0919d58371bb40dc0097a766b857b9815e -Reviewed-on: https://chromium-review.googlesource.com/1073423 -Reviewed-by: Kentaro Hara -Commit-Queue: Daniel Bratell -Cr-Commit-Position: refs/heads/master@{#562243} ---- - .../renderer/platform/image-encoders/image_encoder.cc | 11 +++++++++++ - .../renderer/platform/image-encoders/image_encoder.h | 2 -- - 2 files changed, 11 insertions(+), 2 deletions(-) - -diff --git a/third_party/blink/renderer/platform/image-encoders/image_encoder.cc b/third_party/blink/renderer/platform/image-encoders/image_encoder.cc -index 0c7f14c7c0e4..4c450f5d6783 100644 ---- a/third_party/blink/renderer/platform/image-encoders/image_encoder.cc -+++ b/third_party/blink/renderer/platform/image-encoders/image_encoder.cc -@@ -4,6 +4,17 @@ - - #include "third_party/blink/renderer/platform/image-encoders/image_encoder.h" - -+#include "build/build_config.h" -+ -+#if defined(OS_WIN) -+#include // Included before jpeglib.h because of INT32 clash -+#endif // OS_WIN -+#include // Needed by jpeglib.h -+ -+#include "jpeglib.h" // for JPEG_MAX_DIMENSION -+ -+#include "third_party/libwebp/src/webp/encode.h" // for WEBP_MAX_DIMENSION -+ - namespace blink { - - bool ImageEncoder::Encode(Vector* dst, -diff --git a/third_party/blink/renderer/platform/image-encoders/image_encoder.h b/third_party/blink/renderer/platform/image-encoders/image_encoder.h -index 0d1460f34827..40306097d507 100644 ---- a/third_party/blink/renderer/platform/image-encoders/image_encoder.h -+++ b/third_party/blink/renderer/platform/image-encoders/image_encoder.h -@@ -7,8 +7,6 @@ - - #include "third_party/blink/renderer/platform/platform_export.h" - #include "third_party/blink/renderer/platform/wtf/vector.h" --#include "third_party/libjpeg/jpeglib.h" // for JPEG_MAX_DIMENSION --#include "third_party/libwebp/src/webp/encode.h" // for WEBP_MAX_DIMENSION - #include "third_party/skia/include/core/SkStream.h" - #include "third_party/skia/include/encode/SkJpegEncoder.h" - #include "third_party/skia/include/encode/SkPngEncoder.h" --- -2.17.1 - diff --git a/chromium-68.0.3440.84-libwebp-shim.patch b/chromium-68.0.3440.84-libwebp-shim.patch deleted file mode 100644 index cb387a4..0000000 --- a/chromium-68.0.3440.84-libwebp-shim.patch +++ /dev/null @@ -1,43 +0,0 @@ -diff --git a/build/linux/unbundle/libwebp.gn b/build/linux/unbundle/libwebp.gn -index ab92adecf400..12574d87be58 100644 ---- a/build/linux/unbundle/libwebp.gn -+++ b/build/linux/unbundle/libwebp.gn -@@ -2,12 +2,34 @@ - # 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_libwebp") { -+ packages = [ -+ "libwebp", -+ "libwebpdemux", -+ "libwebpmux", -+ ] -+} -+ -+shim_headers("libwebp_shim") { -+ root_path = "src" -+ headers = [ -+ "webp/decode.h", -+ "webp/demux.h", -+ "webp/encode.h", -+ "webp/mux.h", -+ "webp/mux_types.h", -+ "webp/types.h", -+ ] -+} -+ - source_set("libwebp_webp") { -- libs = [ -- "webp", -- "webpdemux", -- "webpmux", -+ deps = [ -+ ":libwebp_shim", - ] -+ public_configs = [ ":system_libwebp" ] - } - - group("libwebp") { diff --git a/chromium-68.0.3440.84-move-unique-ptr.patch b/chromium-68.0.3440.84-move-unique-ptr.patch deleted file mode 100644 index 2942a8f..0000000 --- a/chromium-68.0.3440.84-move-unique-ptr.patch +++ /dev/null @@ -1,65 +0,0 @@ -From 56cb5f7da1025f6db869e840ed34d3b98b9ab899 Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Tue, 29 May 2018 16:04:14 +0000 -Subject: [PATCH] GCC: do not std::move unique ptr of forward declared UrlIndex -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -GCC fails to resolve the size of UrlIndex, needed -for moving a std::unique_ptr of UrlIndex. This is because -moved is done on a forward-declared UrlIndex. - -To avoid the problem, move the call to std::move to the .cc -file so the full declaration is available. - -Build error: -../../buildtools/third_party/libc++/trunk/include/memory: In instantiation of ‘void std::__1::default_delete<_Tp>::operator()(_Tp*) const [with _Tp = bookmarks::UrlIndex]’: -../../buildtools/third_party/libc++/trunk/include/memory:2634:22: required from ‘void std::__1::unique_ptr<_Tp, _Dp>::reset(std::__1::unique_ptr<_Tp, _Dp>::pointer) [with _Tp = bookmarks::UrlIndex; _Dp = std::__1::default_delete; std::__1::unique_ptr<_Tp, _Dp>::pointer = bookmarks::UrlIndex*]’ -../../buildtools/third_party/libc++/trunk/include/memory:2588:24: required from ‘std::__1::unique_ptr<_Tp, _Dp>::~unique_ptr() [with _Tp = bookmarks::UrlIndex; _Dp = std::__1::default_delete]’ -../../components/bookmarks/browser/bookmark_storage.h:107:76: required from here -../../buildtools/third_party/libc++/trunk/include/memory:2317:25: error: invalid application of ‘sizeof’ to incomplete type ‘bookmarks::UrlIndex’ - static_assert(sizeof(_Tp) > 0, - -Bug: 819294 -Change-Id: I793a807c28e797aaa2e31d9c8b7e09fb6ca6b9e7 -Reviewed-on: https://chromium-review.googlesource.com/1071648 -Commit-Queue: Scott Violet -Reviewed-by: Scott Violet -Cr-Commit-Position: refs/heads/master@{#562446} ---- - components/bookmarks/browser/bookmark_storage.cc | 4 ++++ - components/bookmarks/browser/bookmark_storage.h | 2 +- - 2 files changed, 5 insertions(+), 1 deletion(-) - -diff --git a/components/bookmarks/browser/bookmark_storage.cc b/components/bookmarks/browser/bookmark_storage.cc -index 1633ba1df2a4..3ae0c62292e7 100644 ---- a/components/bookmarks/browser/bookmark_storage.cc -+++ b/components/bookmarks/browser/bookmark_storage.cc -@@ -158,6 +158,10 @@ void BookmarkLoadDetails::CreateUrlIndex() { - url_index_ = std::make_unique(std::move(root_node_)); - } - -+std::unique_ptr BookmarkLoadDetails::owned_url_index() { -+ return std::move(url_index_); -+} -+ - BookmarkPermanentNode* BookmarkLoadDetails::CreatePermanentNode( - BookmarkClient* client, - BookmarkNode::Type type) { -diff --git a/components/bookmarks/browser/bookmark_storage.h b/components/bookmarks/browser/bookmark_storage.h -index 08df5bb65d83..0a1b1a1b65b9 100644 ---- a/components/bookmarks/browser/bookmark_storage.h -+++ b/components/bookmarks/browser/bookmark_storage.h -@@ -104,7 +104,7 @@ class BookmarkLoadDetails { - bool ids_reassigned() const { return ids_reassigned_; } - - void CreateUrlIndex(); -- std::unique_ptr owned_url_index() { return std::move(url_index_); } -+ std::unique_ptr owned_url_index(); - - private: - // Creates one of the possible permanent nodes (bookmark bar node, other node --- -2.17.1 - diff --git a/chromium-69.0.3497.81-gcc8-alignof.patch b/chromium-69.0.3497.81-gcc8-alignof.patch deleted file mode 100644 index 234b391..0000000 --- a/chromium-69.0.3497.81-gcc8-alignof.patch +++ /dev/null @@ -1,18 +0,0 @@ -diff -up chromium-69.0.3497.81/mojo/public/c/system/macros.h.gcc8-alignof chromium-69.0.3497.81/mojo/public/c/system/macros.h ---- chromium-69.0.3497.81/mojo/public/c/system/macros.h.gcc8-alignof 2018-09-06 10:11:54.336432699 -0400 -+++ chromium-69.0.3497.81/mojo/public/c/system/macros.h 2018-09-06 10:13:56.555727572 -0400 -@@ -27,7 +27,13 @@ - (sizeof(void*) == 4 ? 32 : 0) - - // Like the C++11 |alignof| operator. --#if __cplusplus >= 201103L -+#if defined(__GNUC__) && __GNUC__ >= 8 -+// GCC 8 has changed the alignof operator to return the minimal alignment -+// required by the target ABI, instead of the preferred alignment. -+// This means that on 32-bit x86, it will return 4 instead of 8. -+// Use __alignof__ instead to avoid this. -+#define MOJO_ALIGNOF(type) __alignof__(type) -+#elif __cplusplus >= 201103L - #define MOJO_ALIGNOF(type) alignof(type) - #elif defined(__GNUC__) - #define MOJO_ALIGNOF(type) __alignof__(type) diff --git a/chromium-69.0.3497.81-norar.patch b/chromium-69.0.3497.81-norar.patch deleted file mode 100644 index 9545b60..0000000 --- a/chromium-69.0.3497.81-norar.patch +++ /dev/null @@ -1,79 +0,0 @@ -diff -up chromium-69.0.3497.81/chrome/common/safe_browsing/BUILD.gn.nounrar chromium-69.0.3497.81/chrome/common/safe_browsing/BUILD.gn ---- chromium-69.0.3497.81/chrome/common/safe_browsing/BUILD.gn.nounrar 2018-09-06 13:29:47.114511569 -0400 -+++ chromium-69.0.3497.81/chrome/common/safe_browsing/BUILD.gn 2018-09-06 13:29:47.120511452 -0400 -@@ -55,40 +55,6 @@ if (safe_browsing_mode == 1) { - "//components/safe_browsing:csd_proto", - ] - } -- -- source_set("rar_analyzer") { -- sources = [ -- "rar_analyzer.cc", -- "rar_analyzer.h", -- ] -- -- deps = [ -- ":archive_analyzer_results", -- ":download_protection_util", -- ":file_type_policies", -- "//base", -- "//base:i18n", -- "//third_party/unrar:unrar", -- ] -- -- defines = [ -- "_FILE_OFFSET_BITS=64", -- "LARGEFILE_SOURCE", -- "RAR_SMP", -- "SILENT", -- -- # The following is set to disable certain macro definitions in the unrar -- # source code. -- "CHROMIUM_UNRAR", -- -- # Disables exceptions in unrar, replaces them with process termination. -- "UNRAR_NO_EXCEPTIONS", -- ] -- -- public_deps = [ -- "//components/safe_browsing:csd_proto", -- ] -- } - } - - source_set("safe_browsing") { -@@ -121,7 +87,6 @@ source_set("safe_browsing") { - deps += [ - ":archive_analyzer_results", - ":download_protection_util", -- ":rar_analyzer", - "//components/safe_browsing:features", - ] - -diff -up chromium-69.0.3497.81/chrome/common/safe_browsing/DEPS.nounrar chromium-69.0.3497.81/chrome/common/safe_browsing/DEPS ---- chromium-69.0.3497.81/chrome/common/safe_browsing/DEPS.nounrar 2018-09-06 13:29:47.119511472 -0400 -+++ chromium-69.0.3497.81/chrome/common/safe_browsing/DEPS 2018-09-06 13:29:47.116511530 -0400 -@@ -1,6 +1,5 @@ - include_rules = [ - "+components/safe_browsing", - "+third_party/protobuf", -- "+third_party/unrar", - "+third_party/zlib", - ] -diff -up chromium-69.0.3497.81/chrome/services/file_util/safe_archive_analyzer.cc.nounrar chromium-69.0.3497.81/chrome/services/file_util/safe_archive_analyzer.cc ---- chromium-69.0.3497.81/chrome/services/file_util/safe_archive_analyzer.cc.nounrar 2018-09-07 10:10:42.286041744 -0400 -+++ chromium-69.0.3497.81/chrome/services/file_util/safe_archive_analyzer.cc 2018-09-07 10:11:14.934308285 -0400 -@@ -47,9 +47,13 @@ void SafeArchiveAnalyzer::AnalyzeDmgFile - - void SafeArchiveAnalyzer::AnalyzeRarFile(base::File rar_file, - AnalyzeRarFileCallback callback) { -+#if 0 - DCHECK(rar_file.IsValid()); - - safe_browsing::ArchiveAnalyzerResults results; - safe_browsing::rar_analyzer::AnalyzeRarFile(std::move(rar_file), &results); - std::move(callback).Run(results); -+#else -+ NOTREACHED(); -+#endif - } diff --git a/chromium-69.0.3497.81-py2-bootstrap.patch b/chromium-69.0.3497.81-py2-bootstrap.patch deleted file mode 100644 index 8a5db71..0000000 --- a/chromium-69.0.3497.81-py2-bootstrap.patch +++ /dev/null @@ -1,33 +0,0 @@ -diff -up chromium-69.0.3497.81/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py.py2 chromium-69.0.3497.81/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py ---- chromium-69.0.3497.81/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py.py2 2018-09-06 10:45:17.919774145 -0400 -+++ chromium-69.0.3497.81/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py 2018-09-06 10:45:17.914774254 -0400 -@@ -58,7 +58,7 @@ def _MinifyJS(input_js): - - with tempfile.NamedTemporaryFile() as _: - args = [ -- 'python', -+ 'python2', - rjsmin_path - ] - p = subprocess.Popen(args, -@@ -177,7 +177,7 @@ def _MinifyCSS(css_text): - os.path.join(py_vulcanize_path, 'third_party', 'rcssmin', 'rcssmin.py')) - - with tempfile.NamedTemporaryFile() as _: -- rcssmin_args = ['python', rcssmin_path] -+ rcssmin_args = ['python2', rcssmin_path] - p = subprocess.Popen(rcssmin_args, - stdin=subprocess.PIPE, - stdout=subprocess.PIPE, -diff -up chromium-69.0.3497.81/tools/gn/bootstrap/bootstrap.py.py2 chromium-69.0.3497.81/tools/gn/bootstrap/bootstrap.py ---- chromium-69.0.3497.81/tools/gn/bootstrap/bootstrap.py.py2 2018-09-06 10:44:42.225550561 -0400 -+++ chromium-69.0.3497.81/tools/gn/bootstrap/bootstrap.py 2018-09-06 13:06:24.251636231 -0400 -@@ -87,7 +87,7 @@ def main(argv): - if not options.debug: - gn_gen_args += ' is_debug=false' - subprocess.check_call([ -- gn_path, 'gen', out_dir, -+ gn_path, 'gen', out_dir, ' --script-executable=/usr/bin/python2', - '--args=%s' % gn_gen_args, "--root=" + SRC_ROOT - ]) - diff --git a/chromium-69.0.3497.81-widevine-r2.patch b/chromium-69.0.3497.81-widevine-r2.patch deleted file mode 100644 index a66a0fb..0000000 --- a/chromium-69.0.3497.81-widevine-r2.patch +++ /dev/null @@ -1,23 +0,0 @@ -diff -up chromium-69.0.3497.81/third_party/widevine/cdm/BUILD.gn.wvhack chromium-69.0.3497.81/third_party/widevine/cdm/BUILD.gn ---- chromium-69.0.3497.81/third_party/widevine/cdm/BUILD.gn.wvhack 2018-09-06 13:28:22.655272555 -0400 -+++ chromium-69.0.3497.81/third_party/widevine/cdm/BUILD.gn 2018-09-06 13:28:22.655272555 -0400 -@@ -11,7 +11,7 @@ import("//third_party/widevine/cdm/widev - # Internal Cast builds set enable_widevine=true to bring in Widevine support. - # TODO(xhwang): Support component updated CDM on other platforms and remove this - # assert. --assert(!enable_widevine || is_win || is_mac || is_chromecast, -+assert(!enable_widevine || is_win || is_mac || is_chromecast || is_linux, - "Component updated CDM only supported on Windows and Mac for now.") - - widevine_arch = current_cpu -diff -up chromium-69.0.3497.81/third_party/widevine/cdm/stub/widevine_cdm_version.h.wvhack chromium-69.0.3497.81/third_party/widevine/cdm/stub/widevine_cdm_version.h ---- chromium-69.0.3497.81/third_party/widevine/cdm/stub/widevine_cdm_version.h.wvhack 2018-09-06 13:28:22.654272577 -0400 -+++ chromium-69.0.3497.81/third_party/widevine/cdm/stub/widevine_cdm_version.h 2018-09-06 13:28:22.654272577 -0400 -@@ -10,6 +10,7 @@ - - #include "third_party/widevine/cdm/widevine_cdm_common.h" - -+#define WIDEVINE_CDM_VERSION_STRING "unknown" - #define WIDEVINE_CDM_AVAILABLE - - #endif // WIDEVINE_CDM_VERSION_H_ diff --git a/chromium-70.0.3538.110-remove-sysroot-options.patch b/chromium-70.0.3538.110-remove-sysroot-options.patch deleted file mode 100644 index 9eb99d1..0000000 --- a/chromium-70.0.3538.110-remove-sysroot-options.patch +++ /dev/null @@ -1,23 +0,0 @@ -diff -up chromium-70.0.3538.110/tools/gn/bootstrap/bootstrap.py.sysrootfix chromium-70.0.3538.110/tools/gn/bootstrap/bootstrap.py ---- chromium-70.0.3538.110/tools/gn/bootstrap/bootstrap.py.sysrootfix 2018-11-26 13:40:19.324713204 -0500 -+++ chromium-70.0.3538.110/tools/gn/bootstrap/bootstrap.py 2018-11-26 13:40:43.199180888 -0500 -@@ -46,10 +46,6 @@ def main(argv): - '--build-path', - help='The directory in which to build gn, ' - 'relative to the src directory. (eg. out/Release)') -- parser.add_option( -- '--with-sysroot', -- action='store_true', -- help='Download and build with the Debian sysroot.') - parser.add_option('-v', '--verbose', help='ignored') - options, args = parser.parse_args(argv) - if args: -@@ -71,8 +67,6 @@ def main(argv): - '--no-last-commit-position', - '--out-path=' + gn_build_dir, - ] -- if not options.with_sysroot: -- cmd.append('--no-sysroot') - if options.debug: - cmd.append('--debug') - subprocess.check_call(cmd) diff --git a/chromium-70.0.3538.77-harfbuzz2-fix.patch b/chromium-70.0.3538.77-harfbuzz2-fix.patch deleted file mode 100644 index 2d5602d..0000000 --- a/chromium-70.0.3538.77-harfbuzz2-fix.patch +++ /dev/null @@ -1,80 +0,0 @@ -From 7ae38170a117e909bb28e1470842b68de3501197 Mon Sep 17 00:00:00 2001 -From: Mike Gilbert -Date: Sun, 21 Oct 2018 10:06:53 -0400 -Subject: [PATCH] blink: add 'const' modifier for harfbuzz hb_codepoint_t - pointers - -This resolves a build failure against harfbuzz 2.0. - -Based on a patch by Alexandre Fierreira. - -Bug: https://bugs.gentoo.org/669034 ---- - .../renderer/platform/fonts/shaping/harfbuzz_face.cc | 2 +- - .../renderer/platform/fonts/skia/skia_text_metrics.cc | 9 +++++++-- - .../renderer/platform/fonts/skia/skia_text_metrics.h | 2 +- - 3 files changed, 9 insertions(+), 4 deletions(-) - -diff --git a/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face.cc b/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face.cc -index 8e7d91ca371f..e279a5876cb3 100644 ---- a/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face.cc -+++ b/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face.cc -@@ -139,7 +139,7 @@ static hb_position_t HarfBuzzGetGlyphHorizontalAdvance(hb_font_t* hb_font, - static void HarfBuzzGetGlyphHorizontalAdvances(hb_font_t* font, - void* font_data, - unsigned count, -- hb_codepoint_t* first_glyph, -+ const hb_codepoint_t* first_glyph, - unsigned int glyph_stride, - hb_position_t* first_advance, - unsigned int advance_stride, -diff --git a/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.cc b/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.cc -index 77ec6209fab9..9f9070921448 100644 ---- a/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.cc -+++ b/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.cc -@@ -18,6 +18,11 @@ T* advance_by_byte_size(T* p, unsigned byte_size) { - return reinterpret_cast(reinterpret_cast(p) + byte_size); - } - -+template -+T* advance_by_byte_size_const(T* p, unsigned byte_size) { -+ return reinterpret_cast(reinterpret_cast(p) + byte_size); -+} -+ - } // namespace - - SkiaTextMetrics::SkiaTextMetrics(const SkPaint* paint) : paint_(paint) { -@@ -39,7 +44,7 @@ void SkiaTextMetrics::GetGlyphWidthForHarfBuzz(hb_codepoint_t codepoint, - } - - void SkiaTextMetrics::GetGlyphWidthForHarfBuzz(unsigned count, -- hb_codepoint_t* glyphs, -+ const hb_codepoint_t* glyphs, - unsigned glyph_stride, - hb_position_t* advances, - unsigned advance_stride) { -@@ -48,7 +53,7 @@ void SkiaTextMetrics::GetGlyphWidthForHarfBuzz(unsigned count, - // array that copy them to a regular array. - Vector glyph_array(count); - for (unsigned i = 0; i < count; -- i++, glyphs = advance_by_byte_size(glyphs, glyph_stride)) { -+ i++, glyphs = advance_by_byte_size_const(glyphs, glyph_stride)) { - glyph_array[i] = *glyphs; - } - Vector sk_width_array(count); -diff --git a/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.h b/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.h -index 787d8af0375a..3bc4407c641b 100644 ---- a/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.h -+++ b/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.h -@@ -19,7 +19,7 @@ class SkiaTextMetrics final { - - void GetGlyphWidthForHarfBuzz(hb_codepoint_t, hb_position_t* width); - void GetGlyphWidthForHarfBuzz(unsigned count, -- hb_codepoint_t* first_glyph, -+ const hb_codepoint_t* first_glyph, - unsigned glyph_stride, - hb_position_t* first_advance, - unsigned advance_stride); --- -2.19.1 - diff --git a/chromium-71-gcc-0.patch b/chromium-71-gcc-0.patch deleted file mode 100644 index 711b827..0000000 --- a/chromium-71-gcc-0.patch +++ /dev/null @@ -1,57 +0,0 @@ -From 65be571f6ac2f7942b4df9e50b24da517f829eec Mon Sep 17 00:00:00 2001 -From: Raphael Kubo da Costa -Date: Mon, 15 Oct 2018 20:26:10 +0000 -Subject: [PATCH] google_util: Explicitly use std::initializer_list with - base::NoDestructor -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Follow-up to ac53c5c53 ("Remove CR_DEFINE_STATIC_LOCAL from /components"). -Due to https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84849, having -base::NoDestructor> and passing an initializer list of Us does not -work if this is not done explicitly, as GCC incorrectly fails to determine -which constructor overload to use: - - ../../components/google/core/common/google_util.cc: In function ‘bool google_util::{anonymous}::IsCanonicalHostGoogleHostname(base::StringPiece, google_util::SubdomainPermission)’: - ../../components/google/core/common/google_util.cc:120:24: error: call of overloaded ‘NoDestructor()’ is ambiguous - {GOOGLE_TLD_LIST}); - -See also: https://chromium-review.googlesource.com/c/chromium/src/+/1170905 - -Bug: 819294 -Change-Id: Ie1490b6646d7998d636c485769caabf56c1cf44c -Reviewed-on: https://chromium-review.googlesource.com/c/1275854 -Reviewed-by: Peter Kasting -Commit-Queue: Raphael Kubo da Costa (CET) -Cr-Commit-Position: refs/heads/master@{#599733} ---- - components/google/core/common/google_util.cc | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - -diff --git a/components/google/core/common/google_util.cc b/components/google/core/common/google_util.cc -index a44c84393820..7733848a0443 100644 ---- a/components/google/core/common/google_util.cc -+++ b/components/google/core/common/google_util.cc -@@ -117,7 +117,7 @@ bool IsCanonicalHostGoogleHostname(base::StringPiece canonical_host, - StripTrailingDot(&tld); - - static base::NoDestructor> google_tlds( -- {GOOGLE_TLD_LIST}); -+ std::initializer_list({GOOGLE_TLD_LIST})); - return base::ContainsKey(*google_tlds, tld.as_string()); - } - -@@ -132,7 +132,8 @@ bool IsGoogleSearchSubdomainUrl(const GURL& url) { - StripTrailingDot(&host); - - static base::NoDestructor> google_subdomains( -- {"ipv4.google.com", "ipv6.google.com"}); -+ std::initializer_list( -+ {"ipv4.google.com", "ipv6.google.com"})); - - return base::ContainsKey(*google_subdomains, host.as_string()); - } --- -2.19.1 - diff --git a/chromium-71.0.3578.98-el7-fix-noexcept.patch b/chromium-71.0.3578.98-el7-fix-noexcept.patch deleted file mode 100644 index 234f0a9..0000000 --- a/chromium-71.0.3578.98-el7-fix-noexcept.patch +++ /dev/null @@ -1,48 +0,0 @@ -diff -up chromium-71.0.3578.98/chrome/common/media_router/media_sink.cc.fix-noexcept chromium-71.0.3578.98/chrome/common/media_router/media_sink.cc ---- chromium-71.0.3578.98/chrome/common/media_router/media_sink.cc.fix-noexcept 2019-01-02 14:44:40.449801789 -0500 -+++ chromium-71.0.3578.98/chrome/common/media_router/media_sink.cc 2019-01-02 14:44:54.167481936 -0500 -@@ -24,7 +24,7 @@ MediaSink::MediaSink() = default; - MediaSink::~MediaSink() = default; - - MediaSink& MediaSink::operator=(const MediaSink& other) = default; --MediaSink& MediaSink::operator=(MediaSink&& other) noexcept = default; -+MediaSink& MediaSink::operator=(MediaSink&& other) = default; - - bool MediaSink::Equals(const MediaSink& other) const { - return sink_id_ == other.sink_id_; -diff -up chromium-71.0.3578.98/components/policy/core/common/policy_map.cc.fix-noexcept chromium-71.0.3578.98/components/policy/core/common/policy_map.cc ---- chromium-71.0.3578.98/components/policy/core/common/policy_map.cc.fix-noexcept 2019-01-02 12:06:10.867313533 -0500 -+++ chromium-71.0.3578.98/components/policy/core/common/policy_map.cc 2019-01-02 12:06:27.544980078 -0500 -@@ -18,7 +18,7 @@ PolicyMap::Entry::Entry() = default; - PolicyMap::Entry::~Entry() = default; - - PolicyMap::Entry::Entry(Entry&&) noexcept = default; --PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) noexcept = default; -+PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) = default; - - PolicyMap::Entry PolicyMap::Entry::DeepCopy() const { - Entry copy; -diff -up chromium-71.0.3578.98/components/signin/core/browser/account_info.cc.fix-noexcept chromium-71.0.3578.98/components/signin/core/browser/account_info.cc ---- chromium-71.0.3578.98/components/signin/core/browser/account_info.cc.fix-noexcept 2019-01-02 10:57:29.194710662 -0500 -+++ chromium-71.0.3578.98/components/signin/core/browser/account_info.cc 2019-01-02 10:58:57.829965474 -0500 -@@ -32,7 +32,7 @@ AccountInfo::AccountInfo(AccountInfo&& o - - AccountInfo& AccountInfo::operator=(const AccountInfo& other) = default; - --AccountInfo& AccountInfo::operator=(AccountInfo&& other) noexcept = default; -+AccountInfo& AccountInfo::operator=(AccountInfo&& other) = default; - - bool AccountInfo::IsEmpty() const { - return account_id.empty() && email.empty() && gaia.empty() && -diff -up chromium-71.0.3578.98/gpu/config/gpu_info.cc.fix-noexcept chromium-71.0.3578.98/gpu/config/gpu_info.cc ---- chromium-71.0.3578.98/gpu/config/gpu_info.cc.fix-noexcept 2018-12-20 09:50:03.320449807 -0500 -+++ chromium-71.0.3578.98/gpu/config/gpu_info.cc 2018-12-20 09:50:25.768849091 -0500 -@@ -116,7 +116,7 @@ GPUInfo::GPUDevice& GPUInfo::GPUDevice:: - const GPUInfo::GPUDevice& other) = default; - - GPUInfo::GPUDevice& GPUInfo::GPUDevice::operator=( -- GPUInfo::GPUDevice&& other) noexcept = default; -+ GPUInfo::GPUDevice&& other) = default; - - GPUInfo::GPUInfo() - : optimus(false), diff --git a/chromium-71.0.3578.98-norar.patch b/chromium-71.0.3578.98-norar.patch deleted file mode 100644 index 1259088..0000000 --- a/chromium-71.0.3578.98-norar.patch +++ /dev/null @@ -1,79 +0,0 @@ -diff -up chromium-71.0.3578.98/chrome/common/safe_browsing/BUILD.gn.nounrar chromium-71.0.3578.98/chrome/common/safe_browsing/BUILD.gn ---- chromium-71.0.3578.98/chrome/common/safe_browsing/BUILD.gn.nounrar 2018-12-12 16:56:04.000000000 -0500 -+++ chromium-71.0.3578.98/chrome/common/safe_browsing/BUILD.gn 2018-12-14 11:44:52.172805635 -0500 -@@ -56,40 +56,6 @@ if (safe_browsing_mode == 1) { - ] - } - -- source_set("rar_analyzer") { -- sources = [ -- "rar_analyzer.cc", -- "rar_analyzer.h", -- ] -- -- deps = [ -- ":archive_analyzer_results", -- ":download_protection_util", -- ":file_type_policies", -- "//base", -- "//base:i18n", -- "//third_party/unrar:unrar", -- ] -- -- defines = [ -- "_FILE_OFFSET_BITS=64", -- "LARGEFILE_SOURCE", -- "RAR_SMP", -- "SILENT", -- -- # The following is set to disable certain macro definitions in the unrar -- # source code. -- "CHROMIUM_UNRAR", -- -- # Disables exceptions in unrar, replaces them with process termination. -- "UNRAR_NO_EXCEPTIONS", -- ] -- -- public_deps = [ -- "//components/safe_browsing:csd_proto", -- ] -- } -- - source_set("disk_image_type_sniffer_mac") { - sources = [ - "disk_image_type_sniffer_mac.cc", -@@ -136,7 +102,6 @@ source_set("safe_browsing") { - deps += [ - ":archive_analyzer_results", - ":download_protection_util", -- ":rar_analyzer", - "//components/safe_browsing:features", - ] - -diff -up chromium-71.0.3578.98/chrome/common/safe_browsing/DEPS.nounrar chromium-71.0.3578.98/chrome/common/safe_browsing/DEPS ---- chromium-71.0.3578.98/chrome/common/safe_browsing/DEPS.nounrar 2018-12-12 16:56:04.000000000 -0500 -+++ chromium-71.0.3578.98/chrome/common/safe_browsing/DEPS 2018-12-14 11:23:58.628142952 -0500 -@@ -1,6 +1,5 @@ - include_rules = [ - "+components/safe_browsing", - "+third_party/protobuf", -- "+third_party/unrar", - "+third_party/zlib", - ] -diff -up chromium-71.0.3578.98/chrome/services/file_util/safe_archive_analyzer.cc.nounrar chromium-71.0.3578.98/chrome/services/file_util/safe_archive_analyzer.cc ---- chromium-71.0.3578.98/chrome/services/file_util/safe_archive_analyzer.cc.nounrar 2018-12-12 16:56:04.000000000 -0500 -+++ chromium-71.0.3578.98/chrome/services/file_util/safe_archive_analyzer.cc 2018-12-14 11:23:58.628142952 -0500 -@@ -47,9 +47,13 @@ void SafeArchiveAnalyzer::AnalyzeDmgFile - - void SafeArchiveAnalyzer::AnalyzeRarFile(base::File rar_file, - AnalyzeRarFileCallback callback) { -+#if 0 - DCHECK(rar_file.IsValid()); - - safe_browsing::ArchiveAnalyzerResults results; - safe_browsing::rar_analyzer::AnalyzeRarFile(std::move(rar_file), &results); - std::move(callback).Run(results); -+#else -+ NOTREACHED(); -+#endif - } diff --git a/chromium-71.0.3578.98-remove-sysroot-options.patch b/chromium-71.0.3578.98-remove-sysroot-options.patch deleted file mode 100644 index a9af73b..0000000 --- a/chromium-71.0.3578.98-remove-sysroot-options.patch +++ /dev/null @@ -1,23 +0,0 @@ -diff -up chromium-71.0.3578.98/tools/gn/bootstrap/bootstrap.py.sysrootfix chromium-71.0.3578.98/tools/gn/bootstrap/bootstrap.py ---- chromium-71.0.3578.98/tools/gn/bootstrap/bootstrap.py.sysrootfix 2018-12-14 12:52:04.144860836 -0500 -+++ chromium-71.0.3578.98/tools/gn/bootstrap/bootstrap.py 2018-12-14 12:57:54.791539599 -0500 -@@ -46,10 +46,6 @@ def main(argv): - '--build-path', - help='The directory in which to build gn, ' - 'relative to the src directory. (eg. out/Release)') -- parser.add_option( -- '--with-sysroot', -- action='store_true', -- help='Download and build with the Debian sysroot.') - parser.add_option('-v', '--verbose', help='ignored') - parser.add_option( - '--skip-generate-buildfiles', -@@ -76,8 +72,6 @@ def main(argv): - '--no-last-commit-position', - '--out-path=' + gn_build_dir, - ] -- if not options.with_sysroot: -- cmd.append('--no-sysroot') - if options.debug: - cmd.append('--debug') - subprocess.check_call(cmd) diff --git a/chromium-71.0.3578.98-vaapi-libva1-compatibility.patch b/chromium-71.0.3578.98-vaapi-libva1-compatibility.patch deleted file mode 100644 index 5b51e3d..0000000 --- a/chromium-71.0.3578.98-vaapi-libva1-compatibility.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -up chromium-71.0.3578.98/media/gpu/vaapi/vaapi_jpeg_decode_accelerator.cc.va1compat chromium-71.0.3578.98/media/gpu/vaapi/vaapi_jpeg_decode_accelerator.cc ---- chromium-71.0.3578.98/media/gpu/vaapi/vaapi_jpeg_decode_accelerator.cc.va1compat 2018-12-17 15:07:48.158717055 -0500 -+++ chromium-71.0.3578.98/media/gpu/vaapi/vaapi_jpeg_decode_accelerator.cc 2018-12-17 15:09:49.780316983 -0500 -@@ -38,6 +38,10 @@ enum VAJDADecoderFailure { - VAJDA_DECODER_FAILURES_MAX, - }; - -+#ifndef VA_FOURCC_I420 -+#define VA_FOURCC_I420 VA_FOURCC('I', '4', '2', '0') -+#endif -+ - static void ReportToUMA(VAJDADecoderFailure failure) { - UMA_HISTOGRAM_ENUMERATION("Media.VAJDA.DecoderFailure", failure, - VAJDA_DECODER_FAILURES_MAX + 1); diff --git a/chromium-72.0.3626.121-fix-va-check.patch b/chromium-72.0.3626.121-fix-va-check.patch deleted file mode 100644 index aa0eb71..0000000 --- a/chromium-72.0.3626.121-fix-va-check.patch +++ /dev/null @@ -1,29 +0,0 @@ -diff -up chromium-72.0.3626.121/media/gpu/vaapi/vaapi_wrapper.cc.fixvacheck chromium-72.0.3626.121/media/gpu/vaapi/vaapi_wrapper.cc ---- chromium-72.0.3626.121/media/gpu/vaapi/vaapi_wrapper.cc.fixvacheck 2019-03-10 14:54:38.744305074 -0400 -+++ chromium-72.0.3626.121/media/gpu/vaapi/vaapi_wrapper.cc 2019-03-10 14:55:34.383221574 -0400 -@@ -334,15 +334,16 @@ bool VADisplayState::InitializeOnce() { - << va_vendor_string_; - - // The VAAPI version is determined from what is loaded on the system by -- // calling vaInitialize(). We want a runtime evaluation of libva version, -- // of what is loaded on the system, with, what browser is compiled with. -- // Also since the libva is now ABI-compatible, relax the version check -- // which helps in upgrading the libva, without breaking any existing -- // functionality. -- if (!VA_CHECK_VERSION(major_version, minor_version, 0)) { -- LOG(ERROR) << "This build of Chromium requires VA-API version " -- << VA_MAJOR_VERSION << "." << VA_MINOR_VERSION -- << ", system version: " << major_version << "." << minor_version; -+ // calling vaInitialize(). Since the libva is now ABI-compatible, relax the -+ // version check which helps in upgrading the libva, without breaking any -+ // existing functionality. Make sure the system version is not older than -+ // the version with which the chromium is built since libva is only -+ // guaranteed to be backward (and not forward) compatible. -+ if (VA_MAJOR_VERSION > major_version || -+ (VA_MAJOR_VERSION == major_version && VA_MINOR_VERSION > minor_version)) { -+ LOG(ERROR) << "The system version " << major_version << "." << minor_version -+ << " should be greater than or equal to " -+ << VA_MAJOR_VERSION << "." << VA_MINOR_VERSION; - return false; - } - return true; diff --git a/chromium-72.0.3626.121-norar.patch b/chromium-72.0.3626.121-norar.patch deleted file mode 100644 index d5d2632..0000000 --- a/chromium-72.0.3626.121-norar.patch +++ /dev/null @@ -1,79 +0,0 @@ -diff -up chromium-72.0.3626.121/chrome/common/safe_browsing/BUILD.gn.nounrar chromium-72.0.3626.121/chrome/common/safe_browsing/BUILD.gn ---- chromium-72.0.3626.121/chrome/common/safe_browsing/BUILD.gn.nounrar 2019-03-10 14:15:47.187705953 -0400 -+++ chromium-72.0.3626.121/chrome/common/safe_browsing/BUILD.gn 2019-03-10 14:16:47.154138649 -0400 -@@ -56,40 +56,6 @@ if (safe_browsing_mode == 1) { - ] - } - -- source_set("rar_analyzer") { -- sources = [ -- "rar_analyzer.cc", -- "rar_analyzer.h", -- ] -- -- deps = [ -- ":archive_analyzer_results", -- ":download_type_util", -- ":file_type_policies", -- "//base", -- "//base:i18n", -- "//third_party/unrar:unrar", -- ] -- -- defines = [ -- "_FILE_OFFSET_BITS=64", -- "LARGEFILE_SOURCE", -- "RAR_SMP", -- "SILENT", -- -- # The following is set to disable certain macro definitions in the unrar -- # source code. -- "CHROMIUM_UNRAR", -- -- # Disables exceptions in unrar, replaces them with process termination. -- "UNRAR_NO_EXCEPTIONS", -- ] -- -- public_deps = [ -- "//components/safe_browsing:csd_proto", -- ] -- } -- - source_set("disk_image_type_sniffer_mac") { - sources = [ - "disk_image_type_sniffer_mac.cc", -@@ -150,7 +116,6 @@ source_set("safe_browsing") { - deps += [ - ":archive_analyzer_results", - ":download_type_util", -- ":rar_analyzer", - "//components/safe_browsing:features", - ] - -diff -up chromium-72.0.3626.121/chrome/common/safe_browsing/DEPS.nounrar chromium-72.0.3626.121/chrome/common/safe_browsing/DEPS ---- chromium-72.0.3626.121/chrome/common/safe_browsing/DEPS.nounrar 2019-03-01 23:10:03.000000000 -0500 -+++ chromium-72.0.3626.121/chrome/common/safe_browsing/DEPS 2019-03-10 14:14:55.430058716 -0400 -@@ -1,6 +1,5 @@ - include_rules = [ - "+components/safe_browsing", - "+third_party/protobuf", -- "+third_party/unrar", - "+third_party/zlib", - ] -diff -up chromium-72.0.3626.121/chrome/services/file_util/safe_archive_analyzer.cc.nounrar chromium-72.0.3626.121/chrome/services/file_util/safe_archive_analyzer.cc ---- chromium-72.0.3626.121/chrome/services/file_util/safe_archive_analyzer.cc.nounrar 2019-03-01 23:10:04.000000000 -0500 -+++ chromium-72.0.3626.121/chrome/services/file_util/safe_archive_analyzer.cc 2019-03-10 14:14:55.433058638 -0400 -@@ -47,9 +47,13 @@ void SafeArchiveAnalyzer::AnalyzeDmgFile - - void SafeArchiveAnalyzer::AnalyzeRarFile(base::File rar_file, - AnalyzeRarFileCallback callback) { -+#if 0 - DCHECK(rar_file.IsValid()); - - safe_browsing::ArchiveAnalyzerResults results; - safe_browsing::rar_analyzer::AnalyzeRarFile(std::move(rar_file), &results); - std::move(callback).Run(results); -+#else -+ NOTREACHED(); -+#endif - } diff --git a/chromium-73-gcc-0.patch b/chromium-73-gcc-0.patch deleted file mode 100644 index 5a50700..0000000 --- a/chromium-73-gcc-0.patch +++ /dev/null @@ -1,108 +0,0 @@ -From 2c3b57cafbbb38c13a519c9d2fda8b65691d9564 Mon Sep 17 00:00:00 2001 -From: Raphael Kubo da Costa -Date: Thu, 7 Feb 2019 22:55:37 +0000 -Subject: [PATCH] allocator shim: Swap ALIGN_LINKAGE and SHIM_ALWAYS_EXPORT's - positions -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -This fixes the GCC build. GCC seems to be stricter with the position of the -linkage specification, so just swap the terms to prevent an error that looks -like: - -In file included from ../../base/allocator/allocator_shim.cc:333: -../../base/allocator/allocator_shim_override_cpp_symbols.h:39:30: error: expected unqualified-id before string constant - #define ALIGN_LINKAGE extern "C" - ^~~ -../../base/allocator/allocator_shim_override_cpp_symbols.h:99:20: note: in expansion of macro ‘ALIGN_LINKAGE’ - SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void* ALIGN_NEW(std::size_t size, - ^~~~~~~~~~~~~ - -Bug: 819294 -Change-Id: I0aa16ea88cead42e83796a1c86afad8b447ddc50 -Reviewed-on: https://chromium-review.googlesource.com/c/1458256 -Auto-Submit: Raphael Kubo da Costa -Reviewed-by: Thomas Anderson -Reviewed-by: Primiano Tucci -Commit-Queue: Raphael Kubo da Costa -Cr-Commit-Position: refs/heads/master@{#630084} ---- - .../allocator_shim_override_cpp_symbols.h | 20 +++++++++---------- - 1 file changed, 10 insertions(+), 10 deletions(-) - -diff --git a/base/allocator/allocator_shim_override_cpp_symbols.h b/base/allocator/allocator_shim_override_cpp_symbols.h -index 1228f5e33d28..01d25b7f6437 100644 ---- a/base/allocator/allocator_shim_override_cpp_symbols.h -+++ b/base/allocator/allocator_shim_override_cpp_symbols.h -@@ -96,57 +96,57 @@ SHIM_ALWAYS_EXPORT void operator delete[](void* p, size_t) __THROW { - ShimCppDelete(p); - } - --SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void* ALIGN_NEW(std::size_t size, -+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void* ALIGN_NEW(std::size_t size, - ALIGN_VAL_T alignment) { - return ShimCppAlignedNew(size, static_cast(alignment)); - } - --SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void* ALIGN_NEW_NOTHROW( -+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void* ALIGN_NEW_NOTHROW( - std::size_t size, - ALIGN_VAL_T alignment, - const std::nothrow_t&) __THROW { - return ShimCppAlignedNew(size, static_cast(alignment)); - } - --SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void ALIGN_DEL(void* p, ALIGN_VAL_T) __THROW { -+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void ALIGN_DEL(void* p, ALIGN_VAL_T) __THROW { - ShimCppDelete(p); - } - --SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void ALIGN_DEL_SIZED(void* p, -+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void ALIGN_DEL_SIZED(void* p, - std::size_t size, - ALIGN_VAL_T) __THROW { - ShimCppDelete(p); - } - --SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void -+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void - ALIGN_DEL_NOTHROW(void* p, ALIGN_VAL_T, const std::nothrow_t&) __THROW { - ShimCppDelete(p); - } - --SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void* ALIGN_NEW_ARR(std::size_t size, -+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void* ALIGN_NEW_ARR(std::size_t size, - ALIGN_VAL_T alignment) { - return ShimCppAlignedNew(size, static_cast(alignment)); - } - --SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void* ALIGN_NEW_ARR_NOTHROW( -+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void* ALIGN_NEW_ARR_NOTHROW( - std::size_t size, - ALIGN_VAL_T alignment, - const std::nothrow_t&) __THROW { - return ShimCppAlignedNew(size, static_cast(alignment)); - } - --SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void ALIGN_DEL_ARR(void* p, -+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void ALIGN_DEL_ARR(void* p, - ALIGN_VAL_T) __THROW { - ShimCppDelete(p); - } - --SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void ALIGN_DEL_ARR_SIZED(void* p, -+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void ALIGN_DEL_ARR_SIZED(void* p, - std::size_t size, - ALIGN_VAL_T) __THROW { - ShimCppDelete(p); - } - --SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void -+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void - ALIGN_DEL_ARR_NOTHROW(void* p, ALIGN_VAL_T, const std::nothrow_t&) __THROW { - ShimCppDelete(p); - } --- -2.20.1 - diff --git a/chromium-73-gcc-1.patch b/chromium-73-gcc-1.patch deleted file mode 100644 index c3f8e42..0000000 --- a/chromium-73-gcc-1.patch +++ /dev/null @@ -1,99 +0,0 @@ -From 130a5ae24a02daba8729ba2216bcaf3dbfacea69 Mon Sep 17 00:00:00 2001 -From: Raphael Kubo da Costa -Date: Fri, 8 Feb 2019 16:58:38 +0000 -Subject: [PATCH] media::learning: Make LabelledExample's move assignment - operator noexcept -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -The GCC build is currently broken with an error like this: - - ../../media/learning/common/labelled_example.cc:20:1: error: function ‘media::learning::LabelledExample::LabelledExample(media::learning::LabelledExample&&)’ defaulted on its redeclaration with an exception-specification that differs from the implicit exception-specification ‘’ - LabelledExample::LabelledExample(LabelledExample&& rhs) noexcept = default; - ^~~~~~~~~~~~~~~ - -With GCC, having that noexcept marker requires all members to be marked with -noexcept themselves, and TargetValue was missing some assignment operators -and noexcept markers. - -clang is fine because we pass -fno-exceptions and it disables the same error -there, while GCC continues to raise it (bug 843143 and its corresponding CL -have a longer discussion on this issue). - -Bug: 819294 -Change-Id: Ide30932fc466ccb52d6883a82777e703dae48798 -Reviewed-on: https://chromium-review.googlesource.com/c/1458210 -Commit-Queue: Frank Liberato -Reviewed-by: Frank Liberato -Auto-Submit: Raphael Kubo da Costa -Cr-Commit-Position: refs/heads/master@{#630355} ---- - media/learning/common/labelled_example.cc | 3 ++- - media/learning/common/labelled_example.h | 2 +- - media/learning/common/value.cc | 6 ++++++ - media/learning/common/value.h | 4 ++++ - 4 files changed, 13 insertions(+), 2 deletions(-) - -diff --git a/media/learning/common/labelled_example.cc b/media/learning/common/labelled_example.cc -index 76d08509298e..43e834f9f3cf 100644 ---- a/media/learning/common/labelled_example.cc -+++ b/media/learning/common/labelled_example.cc -@@ -59,7 +59,8 @@ bool LabelledExample::operator<(const LabelledExample& rhs) const { - LabelledExample& LabelledExample::operator=(const LabelledExample& rhs) = - default; - --LabelledExample& LabelledExample::operator=(LabelledExample&& rhs) = default; -+LabelledExample& LabelledExample::operator=(LabelledExample&& rhs) noexcept = -+ default; - - TrainingData::TrainingData() = default; - -diff --git a/media/learning/common/labelled_example.h b/media/learning/common/labelled_example.h -index 4f43c54e7a76..365abc3c0ebf 100644 ---- a/media/learning/common/labelled_example.h -+++ b/media/learning/common/labelled_example.h -@@ -40,7 +40,7 @@ struct COMPONENT_EXPORT(LEARNING_COMMON) LabelledExample { - bool operator<(const LabelledExample& rhs) const; - - LabelledExample& operator=(const LabelledExample& rhs); -- LabelledExample& operator=(LabelledExample&& rhs); -+ LabelledExample& operator=(LabelledExample&& rhs) noexcept; - - // Observed feature values. - // Note that to interpret these values, you probably need to have the -diff --git a/media/learning/common/value.cc b/media/learning/common/value.cc -index 9c9395c25d4e..12ea399d24c3 100644 ---- a/media/learning/common/value.cc -+++ b/media/learning/common/value.cc -@@ -23,6 +23,12 @@ Value::Value(const std::string& x) : value_(base::PersistentHash(x)) {} - - Value::Value(const Value& other) : value_(other.value_) {} - -+Value::Value(Value&& rhs) noexcept = default; -+ -+Value& Value::operator=(const Value& rhs) = default; -+ -+Value& Value::operator=(Value&& rhs) noexcept = default; -+ - bool Value::operator==(const Value& rhs) const { - return value_ == rhs.value_; - } -diff --git a/media/learning/common/value.h b/media/learning/common/value.h -index 0e64da961f34..62f4953f691c 100644 ---- a/media/learning/common/value.h -+++ b/media/learning/common/value.h -@@ -38,6 +38,10 @@ class COMPONENT_EXPORT(LEARNING_COMMON) Value { - explicit Value(const std::string& x); - - Value(const Value& other); -+ Value(Value&&) noexcept; -+ -+ Value& operator=(const Value&); -+ Value& operator=(Value&&) noexcept; - - bool operator==(const Value& rhs) const; - bool operator!=(const Value& rhs) const; --- -2.20.1 - diff --git a/chromium-73-gcc-2.patch b/chromium-73-gcc-2.patch deleted file mode 100644 index 9d1f05a..0000000 --- a/chromium-73-gcc-2.patch +++ /dev/null @@ -1,51 +0,0 @@ -From a5ba6f9bb7665040045dc0f8087407096630ad7b Mon Sep 17 00:00:00 2001 -From: Raphael Kubo da Costa -Date: Fri, 8 Feb 2019 02:57:28 +0000 -Subject: [PATCH] color_utils: Use std::sqrt() instead of std::sqrtf() -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -This fixes the build with libstdc++: - - ../../ui/gfx/color_utils.cc: In function ‘SkColor color_utils::SetDarkestColorForTesting(SkColor)’: - ../../ui/gfx/color_utils.cc:434:12: error: ‘sqrtf’ is not a member of ‘std’ - std::sqrtf((dark_luminance + 0.05f) * (kWhiteLuminance + 0.05f)) - 0.05f; - ^~~~~ - ../../ui/gfx/color_utils.cc:434:12: note: suggested alternative: ‘sqrt’ - std::sqrtf((dark_luminance + 0.05f) * (kWhiteLuminance + 0.05f)) - 0.05f; - ^~~~~ - sqrt - -sqrtf() is not formally part of C++14 as far as I can see even though libc++ -has it in . Additionally, we're only dealing with floats in all parts -of the expression above, so using the float sqrt() overload should be -harmless anyway. - -Bug: 819294 -Change-Id: If6c7bf31819df97a761e6963def6d6506154c34d -Reviewed-on: https://chromium-review.googlesource.com/c/1458193 -Auto-Submit: Raphael Kubo da Costa -Reviewed-by: Peter Kasting -Commit-Queue: Raphael Kubo da Costa -Cr-Commit-Position: refs/heads/master@{#630140} ---- - ui/gfx/color_utils.cc | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/ui/gfx/color_utils.cc b/ui/gfx/color_utils.cc -index c868cd54bac3..92ba1407d594 100644 ---- a/ui/gfx/color_utils.cc -+++ b/ui/gfx/color_utils.cc -@@ -431,7 +431,7 @@ SkColor SetDarkestColorForTesting(SkColor color) { - // GetContrastRatio(kWhiteLuminance, g_luminance_midpoint). The formula below - // can be verified by plugging it into how GetContrastRatio() operates. - g_luminance_midpoint = -- std::sqrtf((dark_luminance + 0.05f) * (kWhiteLuminance + 0.05f)) - 0.05f; -+ std::sqrt((dark_luminance + 0.05f) * (kWhiteLuminance + 0.05f)) - 0.05f; - - return previous_darkest_color; - } --- -2.20.1 - diff --git a/chromium-73-gcc-3.patch b/chromium-73-gcc-3.patch deleted file mode 100644 index 9cc6cf2..0000000 --- a/chromium-73-gcc-3.patch +++ /dev/null @@ -1,69 +0,0 @@ -From c33e832cc145c696d2157796c7640e659740dafa Mon Sep 17 00:00:00 2001 -From: Raphael Kubo da Costa -Date: Fri, 8 Feb 2019 08:44:00 +0000 -Subject: [PATCH] quic_flags_impl: Fix GCC build after #618558 -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Due to https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84849, having -base::NoDestructor> and passing an initializer list of Us does not -work if this is not done explicitly, as GCC incorrectly fails to determine -which constructor overload to use: - - ../../net/third_party/quic/platform/impl/quic_flags_impl.cc: In member function ‘bool quic::TypedQuicFlagHelper::SetFlag(const string&) const [with T = bool; std::__cxx11::string = std::__cxx11::basic_string]’: - ../../net/third_party/quic/platform/impl/quic_flags_impl.cc:156:41: error: call of overloaded ‘NoDestructor()’ is ambiguous - {"", "1", "t", "true", "y", "yes"}); - ^ - In file included from ../../net/third_party/quic/platform/impl/quic_flags_impl.h:16, - from ../../net/third_party/quic/platform/impl/quic_flags_impl.cc:5: - ../../base/no_destructor.h:62:3: note: candidate: ‘base::NoDestructor::NoDestructor(const base::NoDestructor&) [with T = std::set >]’ - NoDestructor(const NoDestructor&) = delete; - ^~~~~~~~~~~~ - ../../base/no_destructor.h:60:12: note: candidate: ‘base::NoDestructor::NoDestructor(T&&) [with T = std::set >]’ - explicit NoDestructor(T&& x) { new (storage_) T(std::move(x)); } - ^~~~~~~~~~~~ - ../../base/no_destructor.h:59:12: note: candidate: ‘base::NoDestructor::NoDestructor(const T&) [with T = std::set >]’ - explicit NoDestructor(const T& x) { new (storage_) T(x); } - ^~~~~~~~~~~~ - -Explicitly use an std::initializer_list to make the build work everywhere. - -Bug: 819294 -Change-Id: I775be20e3766a88a656b58c94c40869cb1bee2a8 -Reviewed-on: https://chromium-review.googlesource.com/c/1458214 -Auto-Submit: Raphael Kubo da Costa -Reviewed-by: Ryan Hamilton -Commit-Queue: Raphael Kubo da Costa -Cr-Commit-Position: refs/heads/master@{#630249} ---- - net/third_party/quic/platform/impl/quic_flags_impl.cc | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - -diff --git a/net/third_party/quic/platform/impl/quic_flags_impl.cc b/net/third_party/quic/platform/impl/quic_flags_impl.cc -index 5e6962d1e770..3fa45fc6892d 100644 ---- a/net/third_party/quic/platform/impl/quic_flags_impl.cc -+++ b/net/third_party/quic/platform/impl/quic_flags_impl.cc -@@ -5,6 +5,7 @@ - #include "net/third_party/quic/platform/impl/quic_flags_impl.h" - - #include -+#include - #include - #include - -@@ -153,9 +154,9 @@ std::string QuicFlagRegistry::GetHelp() const { - template <> - bool TypedQuicFlagHelper::SetFlag(const std::string& s) const { - static const base::NoDestructor> kTrueValues( -- {"", "1", "t", "true", "y", "yes"}); -+ std::initializer_list({"", "1", "t", "true", "y", "yes"})); - static const base::NoDestructor> kFalseValues( -- {"0", "f", "false", "n", "no"}); -+ std::initializer_list({"0", "f", "false", "n", "no"})); - if (kTrueValues->find(base::ToLowerASCII(s)) != kTrueValues->end()) { - *flag_ = true; - return true; --- -2.20.1 - diff --git a/chromium-73-gcc-4.patch b/chromium-73-gcc-4.patch deleted file mode 100644 index df7d630..0000000 --- a/chromium-73-gcc-4.patch +++ /dev/null @@ -1,59 +0,0 @@ -From bdd76190e54e6a0e11343dd19e4bf1d06956fa48 Mon Sep 17 00:00:00 2001 -From: Raphael Kubo da Costa -Date: Wed, 13 Feb 2019 01:02:27 +0000 -Subject: [PATCH] BaseRenderingContext2D: Use base::CheckMul and simplify code - in putImageData() -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Follow-up to commit e0b3253a56 ("Fix image conversion truncation issues"). -The current code does not build with GCC due to -https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89287: - - ../../third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc: In member function ‘void blink::BaseRenderingContext2D::putImageData(blink::ImageData*, int, int, int, int, int, int, blink::ExceptionState&)’: - ../../third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc:1777:44: error: default type conversion can't deduce template argument for ‘template::value, void>::type* > constexpr base::internal::StrictNumeric::operator Dst() const [with Dst = Dst; typename std::enable_if::value>::type* = ; T = long unsigned int]’ - new uint8_t[data_length.ValueOrDie()]); - ^ - -Work around it by using the more idiomatic base::CheckMul() with -AssignIfValid, so that we can have |data_length| be a size_t again and not -leave it to the compiler to figure out the type we want when creating the -|converted_pixels| array. - -Bug: 819294 -Change-Id: Id124cc4f3d749b45def4708e21e4badafd708578 -Reviewed-on: https://chromium-review.googlesource.com/c/1467201 -Auto-Submit: Raphael Kubo da Costa -Commit-Queue: Kentaro Hara -Reviewed-by: Kentaro Hara -Cr-Commit-Position: refs/heads/master@{#631472} ---- - .../canvas/canvas2d/base_rendering_context_2d.cc | 10 +++++----- - 1 file changed, 5 insertions(+), 5 deletions(-) - -diff --git a/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc b/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc -index d9fa696c9a9d..34a8a202bfd3 100644 ---- a/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc -+++ b/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc -@@ -1769,12 +1769,12 @@ void BaseRenderingContext2D::putImageData(ImageData* data, - CanvasColorParams(ColorParams().ColorSpace(), PixelFormat(), kNonOpaque); - if (data_color_params.NeedsColorConversion(context_color_params) || - PixelFormat() == kF16CanvasPixelFormat) { -- base::CheckedNumeric data_length = data->Size().Area(); -- data_length *= context_color_params.BytesPerPixel(); -- if (!data_length.IsValid()) -+ size_t data_length; -+ if (!base::CheckMul(data->Size().Area(), -+ context_color_params.BytesPerPixel()) -+ .AssignIfValid(&data_length)) - return; -- std::unique_ptr converted_pixels( -- new uint8_t[data_length.ValueOrDie()]); -+ std::unique_ptr converted_pixels(new uint8_t[data_length]); - if (data->ImageDataInCanvasColorSettings( - ColorParams().ColorSpace(), PixelFormat(), converted_pixels.get(), - kRGBAColorType)) { --- -2.20.1 - diff --git a/chromium-73-gcc-5.patch b/chromium-73-gcc-5.patch deleted file mode 100644 index 033861e..0000000 --- a/chromium-73-gcc-5.patch +++ /dev/null @@ -1,65 +0,0 @@ -From 78b0f0dfa9e6f3c37b71102c01def92f1ab8c330 Mon Sep 17 00:00:00 2001 -From: Raphael Kubo da Costa -Date: Wed, 13 Feb 2019 23:28:46 +0000 -Subject: [PATCH] CastActivityManager: Do not make DoLaunchSessionParams' move - constructor noexcept -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -This fixes the GCC build: - - ../../chrome/browser/media/router/providers/cast/cast_activity_manager.cc:806:1: error: function ‘media_router::CastActivityManager::DoLaunchSessionParams::DoLaunchSessionParams(media_router::CastActivityManager::DoLaunchSessionParams&&)’ defaulted on its redeclaration with an exception-specification that differs from the implicit exception-specification ‘’ - CastActivityManager::DoLaunchSessionParams::DoLaunchSessionParams( - ^~~~~~~~~~~~~~~~~~~ - -With GCC, having that noexcept marker requires all members to be marked with -noexcept themselves, and MediaRoute, CastMediaSource and url::Origin need -the right annotations. Just making DoLaunchSessionParams not noexcept is the -least intrusive solution for now. - -clang is fine because we pass -fno-exceptions and it disables the same error -there, while GCC continues to raise it (bug 843143 and its corresponding CL -have a longer discussion on this issue). - -Bug: 819294 -Change-Id: Ia3a5fb60b5e74e68bd35cfa50e2fcc728b64e5eb -Reviewed-on: https://chromium-review.googlesource.com/c/1469942 -Commit-Queue: mark a. foltz -Auto-Submit: Raphael Kubo da Costa -Reviewed-by: mark a. foltz -Cr-Commit-Position: refs/heads/master@{#631962} ---- - .../media/router/providers/cast/cast_activity_manager.cc | 2 +- - .../browser/media/router/providers/cast/cast_activity_manager.h | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/chrome/browser/media/router/providers/cast/cast_activity_manager.cc b/chrome/browser/media/router/providers/cast/cast_activity_manager.cc -index b7ee9695f69a..8569e0cd30a3 100644 ---- a/chrome/browser/media/router/providers/cast/cast_activity_manager.cc -+++ b/chrome/browser/media/router/providers/cast/cast_activity_manager.cc -@@ -804,7 +804,7 @@ CastActivityManager::DoLaunchSessionParams::DoLaunchSessionParams( - callback(std::move(callback)) {} - - CastActivityManager::DoLaunchSessionParams::DoLaunchSessionParams( -- DoLaunchSessionParams&& other) noexcept = default; -+ DoLaunchSessionParams&& other) = default; - - CastActivityManager::DoLaunchSessionParams::~DoLaunchSessionParams() = default; - -diff --git a/chrome/browser/media/router/providers/cast/cast_activity_manager.h b/chrome/browser/media/router/providers/cast/cast_activity_manager.h -index 325bffc725ee..08fe0ccca603 100644 ---- a/chrome/browser/media/router/providers/cast/cast_activity_manager.h -+++ b/chrome/browser/media/router/providers/cast/cast_activity_manager.h -@@ -295,7 +295,7 @@ class CastActivityManager : public cast_channel::CastMessageHandler::Observer, - const url::Origin& origin, - int tab_id, - mojom::MediaRouteProvider::CreateRouteCallback callback); -- DoLaunchSessionParams(DoLaunchSessionParams&& other) noexcept; -+ DoLaunchSessionParams(DoLaunchSessionParams&& other); - ~DoLaunchSessionParams(); - DoLaunchSessionParams& operator=(DoLaunchSessionParams&&) = delete; - --- -2.20.1 - diff --git a/chromium-73-gcc-6.patch b/chromium-73-gcc-6.patch deleted file mode 100644 index 752f83c..0000000 --- a/chromium-73-gcc-6.patch +++ /dev/null @@ -1,88 +0,0 @@ -From cf4c534f04c223f8a9d65407852e2a531a6d7fb6 Mon Sep 17 00:00:00 2001 -From: Raphael Kubo da Costa -Date: Thu, 14 Feb 2019 22:22:21 +0000 -Subject: [PATCH] chrome/browser: Replace some forward declarations with actual - includes -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -This fixes the GCC build which was failing like this: - - ../../base/scoped_observer.h: In instantiation of ‘void ScopedObserver::RemoveAll() [with Source = TabStripModel; Observer = TabStripModelObserver]’: - ../../base/scoped_observer.h:26:5: required from ‘ScopedObserver::~ScopedObserver() [with Source = TabStripModel; Observer = TabStripModelObserver]’ - ../../chrome/browser/ui/views/extensions/extension_popup.h:115:70: required from here - ../../base/scoped_observer.h:45:20: error: invalid use of incomplete type ‘class TabStripModel’ - sources_[i]->RemoveObserver(observer_); - ~~~~~~~~~~~~~^~~~~~~~~~~~~~ - -This is caused by https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89311 ("Brace -initialization needlessly invokes destructor"), i.e. having something like - - ScopedObserver observer_{this}; - -in a header declaration requires T and U to be fully declared because -ScopedObserver's destructor references them. In a few cases, T was only -forward-declared. - -Bug: 819294 -Change-Id: Ie5b9dc2745e27d4532c5539e3845a8c9147a0595 -Reviewed-on: https://chromium-review.googlesource.com/c/1472576 -Auto-Submit: Raphael Kubo da Costa -Commit-Queue: Alan Cutter -Reviewed-by: Finnur Thorarinsson -Reviewed-by: Alan Cutter -Cr-Commit-Position: refs/heads/master@{#632385} ---- - chrome/browser/ui/views/extensions/extension_popup.cc | 1 - - chrome/browser/ui/views/extensions/extension_popup.h | 1 + - chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.cc | 1 - - chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.h | 2 +- - .../web_applications/extensions/bookmark_app_tab_helper.cc | 1 - - .../web_applications/extensions/bookmark_app_tab_helper.h | 2 +- - 6 files changed, 3 insertions(+), 5 deletions(-) - -diff --git a/chrome/browser/ui/views/extensions/extension_popup.cc b/chrome/browser/ui/views/extensions/extension_popup.cc -index 3f0985d383dd..57d16aba9e9f 100644 ---- a/chrome/browser/ui/views/extensions/extension_popup.cc -+++ b/chrome/browser/ui/views/extensions/extension_popup.cc -@@ -8,7 +8,6 @@ - #include "chrome/browser/devtools/devtools_window.h" - #include "chrome/browser/extensions/extension_view_host.h" - #include "chrome/browser/ui/browser.h" --#include "chrome/browser/ui/tabs/tab_strip_model.h" - #include "content/public/browser/devtools_agent_host.h" - #include "content/public/browser/notification_details.h" - #include "content/public/browser/notification_source.h" -diff --git a/chrome/browser/ui/views/extensions/extension_popup.h b/chrome/browser/ui/views/extensions/extension_popup.h -index 3661b5bda950..9018efa0fea5 100644 ---- a/chrome/browser/ui/views/extensions/extension_popup.h -+++ b/chrome/browser/ui/views/extensions/extension_popup.h -@@ -9,6 +9,7 @@ - #include "base/compiler_specific.h" - #include "base/macros.h" - #include "base/scoped_observer.h" -+#include "chrome/browser/ui/tabs/tab_strip_model.h" - #include "chrome/browser/ui/tabs/tab_strip_model_observer.h" - #include "chrome/browser/ui/views/extensions/extension_view_views.h" - #include "content/public/browser/devtools_agent_host_observer.h" -diff --git a/chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.h b/chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.h -index 2a3ea8e4f91f..ac44a4f05dec 100644 ---- a/chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.h -+++ b/chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.h -@@ -8,6 +8,7 @@ - #include "base/macros.h" - #include "base/memory/weak_ptr.h" - #include "base/scoped_observer.h" -+#include "chrome/browser/ui/toolbar/toolbar_actions_bar.h" - #include "chrome/browser/ui/toolbar/toolbar_actions_bar_observer.h" - #include "chrome/browser/ui/views/toolbar/app_menu_observer.h" - #include "ui/views/controls/scroll_view.h" -@@ -15,7 +16,6 @@ class AppMenu; - class AppMenu; - class Browser; - class BrowserActionsContainer; --class ToolbarActionsBar; - - namespace views { - class MenuItemView; diff --git a/chromium-73.0.3683.103-glibc-2.29-clone-vfork.patch b/chromium-73.0.3683.103-glibc-2.29-clone-vfork.patch deleted file mode 100644 index 8ff952b..0000000 --- a/chromium-73.0.3683.103-glibc-2.29-clone-vfork.patch +++ /dev/null @@ -1,29 +0,0 @@ -diff -up chromium-73.0.3683.103/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc.glibc229 chromium-73.0.3683.103/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc ---- chromium-73.0.3683.103/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc.glibc229 2019-04-16 11:49:35.353081246 -0400 -+++ chromium-73.0.3683.103/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc 2019-04-16 11:51:22.105794620 -0400 -@@ -134,7 +134,8 @@ namespace sandbox { - #if !defined(OS_NACL_NONSFI) - // Allow Glibc's and Android pthread creation flags, crash on any other - // thread creation attempts and EPERM attempts to use neither --// CLONE_VM, nor CLONE_THREAD, which includes all fork() implementations. -+// CLONE_VM nor CLONE_THREAD (all fork implementations), unless CLONE_VFORK is -+// present (as in posix_spawn). - ResultExpr RestrictCloneToThreadsAndEPERMFork() { - const Arg flags(0); - -@@ -153,8 +154,14 @@ ResultExpr RestrictCloneToThreadsAndEPER - AnyOf(flags == kAndroidCloneMask, flags == kObsoleteAndroidCloneMask, - flags == kGlibcPthreadFlags); - -+ const uint64_t kImportantSpawnFlags = CLONE_VFORK | CLONE_VM; -+ -+ const BoolExpr isForkOrSpawn = -+ AnyOf((flags & (CLONE_VM | CLONE_THREAD)) == 0, -+ (flags & kImportantSpawnFlags) == kImportantSpawnFlags); -+ - return If(IsAndroid() ? android_test : glibc_test, Allow()) -- .ElseIf((flags & (CLONE_VM | CLONE_THREAD)) == 0, Error(EPERM)) -+ .ElseIf(isForkOrSpawn, Error(EPERM)) - .Else(CrashSIGSYSClone()); - } - diff --git a/chromium-73.0.3683.75-aarch64-crashpad-limits.patch b/chromium-73.0.3683.75-aarch64-crashpad-limits.patch deleted file mode 100644 index 4eb9529..0000000 --- a/chromium-73.0.3683.75-aarch64-crashpad-limits.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-73.0.3683.75/third_party/crashpad/crashpad/snapshot/linux/cpu_context_linux.cc.aarch64-limits chromium-73.0.3683.75/third_party/crashpad/crashpad/snapshot/linux/cpu_context_linux.cc ---- chromium-73.0.3683.75/third_party/crashpad/crashpad/snapshot/linux/cpu_context_linux.cc.aarch64-limits 2019-03-15 12:08:21.208676651 -0400 -+++ chromium-73.0.3683.75/third_party/crashpad/crashpad/snapshot/linux/cpu_context_linux.cc 2019-03-15 12:08:40.934251685 -0400 -@@ -16,6 +16,7 @@ - - #include - #include -+#include - - #include "base/logging.h" - diff --git a/chromium-73.0.3683.75-el7-fix-noexcept.patch b/chromium-73.0.3683.75-el7-fix-noexcept.patch deleted file mode 100644 index 3fc69ba..0000000 --- a/chromium-73.0.3683.75-el7-fix-noexcept.patch +++ /dev/null @@ -1,54 +0,0 @@ -diff -up chromium-73.0.3683.75/chrome/common/media_router/media_sink.cc.el7-noexcept chromium-73.0.3683.75/chrome/common/media_router/media_sink.cc ---- chromium-73.0.3683.75/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-03-11 18:00:54.000000000 -0400 -+++ chromium-73.0.3683.75/chrome/common/media_router/media_sink.cc 2019-03-20 09:45:29.400426336 -0400 -@@ -19,12 +19,12 @@ MediaSink::MediaSink(const MediaSink::Id - provider_id_(provider_id) {} - - MediaSink::MediaSink(const MediaSink& other) = default; --MediaSink::MediaSink(MediaSink&& other) noexcept = default; -+MediaSink::MediaSink(MediaSink&& other) = default; - MediaSink::MediaSink() = default; - MediaSink::~MediaSink() = default; - - MediaSink& MediaSink::operator=(const MediaSink& other) = default; --MediaSink& MediaSink::operator=(MediaSink&& other) noexcept = default; -+MediaSink& MediaSink::operator=(MediaSink&& other) = default; - - bool MediaSink::IsMaybeCloudSink() const { - switch (icon_type_) { -diff -up chromium-73.0.3683.75/components/policy/core/common/policy_map.cc.el7-noexcept chromium-73.0.3683.75/components/policy/core/common/policy_map.cc ---- chromium-73.0.3683.75/components/policy/core/common/policy_map.cc.el7-noexcept 2019-03-11 18:00:56.000000000 -0400 -+++ chromium-73.0.3683.75/components/policy/core/common/policy_map.cc 2019-03-19 11:11:38.310689134 -0400 -@@ -25,7 +25,7 @@ PolicyMap::Entry::Entry() = default; - PolicyMap::Entry::~Entry() = default; - - PolicyMap::Entry::Entry(Entry&&) noexcept = default; --PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) noexcept = default; -+PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) = default; - - PolicyMap::Entry PolicyMap::Entry::DeepCopy() const { - Entry copy; -diff -up chromium-73.0.3683.75/components/signin/core/browser/account_info.cc.el7-noexcept chromium-73.0.3683.75/components/signin/core/browser/account_info.cc ---- chromium-73.0.3683.75/components/signin/core/browser/account_info.cc.el7-noexcept 2019-03-11 18:00:57.000000000 -0400 -+++ chromium-73.0.3683.75/components/signin/core/browser/account_info.cc 2019-03-19 11:11:38.311689112 -0400 -@@ -50,7 +50,7 @@ AccountInfo::AccountInfo(AccountInfo&& o - - AccountInfo& AccountInfo::operator=(const AccountInfo& other) = default; - --AccountInfo& AccountInfo::operator=(AccountInfo&& other) noexcept = default; -+AccountInfo& AccountInfo::operator=(AccountInfo&& other) = default; - - bool AccountInfo::IsEmpty() const { - return account_id.empty() && email.empty() && gaia.empty() && -diff -up chromium-73.0.3683.75/gpu/config/gpu_info.cc.el7-noexcept chromium-73.0.3683.75/gpu/config/gpu_info.cc ---- chromium-73.0.3683.75/gpu/config/gpu_info.cc.el7-noexcept 2019-03-19 11:12:36.992435015 -0400 -+++ chromium-73.0.3683.75/gpu/config/gpu_info.cc 2019-03-19 11:12:37.061433540 -0400 -@@ -118,7 +118,7 @@ GPUInfo::GPUDevice& GPUInfo::GPUDevice:: - const GPUInfo::GPUDevice& other) = default; - - GPUInfo::GPUDevice& GPUInfo::GPUDevice::operator=( -- GPUInfo::GPUDevice&& other) noexcept = default; -+ GPUInfo::GPUDevice&& other) = default; - - GPUInfo::GPUInfo() - : optimus(false), diff --git a/chromium-73.0.3683.75-no-header-hygiene.patch b/chromium-73.0.3683.75-no-header-hygiene.patch deleted file mode 100644 index a8d2a19..0000000 --- a/chromium-73.0.3683.75-no-header-hygiene.patch +++ /dev/null @@ -1,17 +0,0 @@ -diff -up chromium-73.0.3683.75/third_party/swiftshader/third_party/llvm-7.0/BUILD.gn.nohh chromium-73.0.3683.75/third_party/swiftshader/third_party/llvm-7.0/BUILD.gn ---- chromium-73.0.3683.75/third_party/swiftshader/third_party/llvm-7.0/BUILD.gn.nohh 2019-03-15 09:02:26.167929864 -0400 -+++ chromium-73.0.3683.75/third_party/swiftshader/third_party/llvm-7.0/BUILD.gn 2019-03-15 09:03:30.334433446 -0400 -@@ -74,9 +74,12 @@ config("swiftshader_llvm_private_config" - "-Wno-unused-private-field", - "-Wno-unused-result", - "-Wno-unused-variable", -- "-Wno-error=header-hygiene", - ] - -+ if (is_clang) { -+ cflags += [ "-Wno-error=header-hygiene" ] -+ } -+ - defines = [ - "__STDC_CONSTANT_MACROS", - "__STDC_LIMIT_MACROS", diff --git a/chromium-gcc5-r3.patch b/chromium-gcc5-r3.patch deleted file mode 100644 index 7605df6..0000000 --- a/chromium-gcc5-r3.patch +++ /dev/null @@ -1,98 +0,0 @@ ---- a/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h -+++ b/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h -@@ -63,7 +63,7 @@ class WTF_EXPORT ArrayBufferContents { - allocation_length_(0), - data_(data), - data_length_(0), -- kind_(AllocationKind::kNormal), -+ kind_(WTF::ArrayBufferContents::AllocationKind::kNormal), - deleter_(deleter) {} - DataHandle(void* allocation_base, - size_t allocation_length, -@@ -94,11 +94,11 @@ class WTF_EXPORT ArrayBufferContents { - reinterpret_cast(allocation_base_) + - allocation_length_); - switch (kind_) { -- case AllocationKind::kNormal: -+ case WTF::ArrayBufferContents::AllocationKind::kNormal: - DCHECK(deleter_); - deleter_(data_); - return; -- case AllocationKind::kReservation: -+ case WTF::ArrayBufferContents::AllocationKind::kReservation: - ReleaseReservedMemory(allocation_base_, allocation_length_); - return; - } ---- a/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.orig 2017-08-15 12:45:59.433532111 +0000 -+++ b/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2017-08-15 17:52:59.691328825 +0000 -@@ -10,7 +10,7 @@ - - #include "webrtc/modules/audio_processing/aec3/aec_state.h" - --#include -+#include - #include - #include - ---- a/gpu/ipc/common/mailbox_struct_traits.h -+++ b/gpu/ipc/common/mailbox_struct_traits.h -@@ -15,7 +15,7 @@ namespace mojo { - template <> - struct StructTraits { - static base::span name(const gpu::Mailbox& mailbox) { -- return mailbox.name; -+ return base::make_span(mailbox.name); - } - static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out); - }; ---- a/services/viz/public/cpp/compositing/filter_operation_struct_traits.h -+++ b/services/viz/public/cpp/compositing/filter_operation_struct_traits.h -@@ -134,7 +134,7 @@ struct StructTraits { - static base::span matrix(const cc::FilterOperation& operation) { - if (operation.type() != cc::FilterOperation::COLOR_MATRIX) - return base::span(); -- return operation.matrix(); -+ return base::make_span(operation.matrix()); - } - - static base::span shape( ---- a/services/viz/public/cpp/compositing/quads_struct_traits.h -+++ b/services/viz/public/cpp/compositing/quads_struct_traits.h -@@ -284,7 +284,7 @@ - - static base::span vertex_opacity(const cc::DrawQuad& input) { - const cc::TextureDrawQuad* quad = cc::TextureDrawQuad::MaterialCast(&input); -- return quad->vertex_opacity; -+ return base::make_span(quad->vertex_opacity); - } - - static bool y_flipped(const cc::DrawQuad& input) { ---- a/third_party/WebKit/Source/platform/exported/WebCORS.cpp -+++ b/third_party/WebKit/Source/platform/exported/WebCORS.cpp -@@ -480,7 +480,7 @@ WebString AccessControlErrorString( - } - default: - NOTREACHED(); -- return ""; -+ return WebString(); - } - } - -@@ -512,7 +512,7 @@ WebString PreflightErrorString(const PreflightStatus status, - } - default: - NOTREACHED(); -- return ""; -+ return WebString(); - } - } - -@@ -533,7 +533,7 @@ WebString RedirectErrorString(const RedirectStatus status, - } - default: - NOTREACHED(); -- return ""; -+ return WebString(); - } - } - diff --git a/chromium-gcc8-r588316.patch b/chromium-gcc8-r588316.patch deleted file mode 100644 index d980805..0000000 --- a/chromium-gcc8-r588316.patch +++ /dev/null @@ -1,98 +0,0 @@ -From 87902b3202f81d689dd314c17006ffc907fe12a1 Mon Sep 17 00:00:00 2001 -From: Wang Qing -Date: Mon, 3 Sep 2018 02:41:08 +0000 -Subject: [PATCH] Fix build error for blink. -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -This CLs fixed the error of constexpr function call to non-constexpr function. - -Bug: 878202 -Change-Id: I6ad217a687e62a9a384980d852743a56479de3a9 -Reviewed-on: https://chromium-review.googlesource.com/1192467 -Commit-Queue: 汪 清 -Reviewed-by: Eric Willigers -Cr-Commit-Position: refs/heads/master@{#588316} ---- - .../core/animation/animation_time_delta.cc | 22 ++++++++++++++ - .../core/animation/animation_time_delta.h | 30 +++++++------------ - 2 files changed, 32 insertions(+), 20 deletions(-) - -diff --git a/third_party/blink/renderer/core/animation/animation_time_delta.cc b/third_party/blink/renderer/core/animation/animation_time_delta.cc -index 1b25469c7f2f..2e30a18890da 100644 ---- a/third_party/blink/renderer/core/animation/animation_time_delta.cc -+++ b/third_party/blink/renderer/core/animation/animation_time_delta.cc -@@ -7,6 +7,28 @@ - namespace blink { - - #if !defined(BLINK_ANIMATION_USE_TIME_DELTA) -+// Comparison operators on AnimationTimeDelta. -+bool CORE_EXPORT operator==(const AnimationTimeDelta& lhs, -+ const AnimationTimeDelta& rhs) { -+ return lhs.InSecondsF() == rhs.InSecondsF(); -+} -+bool CORE_EXPORT operator!=(const AnimationTimeDelta& lhs, -+ const AnimationTimeDelta& rhs) { -+ return lhs.InSecondsF() != rhs.InSecondsF(); -+} -+bool CORE_EXPORT operator>(const AnimationTimeDelta& lhs, -+ const AnimationTimeDelta& rhs) { -+ return lhs.InSecondsF() > rhs.InSecondsF(); -+} -+bool CORE_EXPORT operator>=(const AnimationTimeDelta& lhs, -+ const AnimationTimeDelta& rhs) { -+ return lhs.InSecondsF() >= rhs.InSecondsF(); -+} -+bool CORE_EXPORT operator<=(const AnimationTimeDelta& lhs, -+ const AnimationTimeDelta& rhs) { -+ return lhs.InSecondsF() <= rhs.InSecondsF(); -+} -+ - std::ostream& operator<<(std::ostream& os, AnimationTimeDelta time) { - return os << time.InSecondsF() << " s"; - } -diff --git a/third_party/blink/renderer/core/animation/animation_time_delta.h b/third_party/blink/renderer/core/animation/animation_time_delta.h -index 1903c1150d3e..95d218466d90 100644 ---- a/third_party/blink/renderer/core/animation/animation_time_delta.h -+++ b/third_party/blink/renderer/core/animation/animation_time_delta.h -@@ -90,26 +90,16 @@ AnimationTimeDelta operator*(T a, AnimationTimeDelta td) { - } - - // Comparison operators on AnimationTimeDelta. --constexpr bool CORE_EXPORT operator==(const AnimationTimeDelta& lhs, -- const AnimationTimeDelta& rhs) { -- return lhs.InSecondsF() == rhs.InSecondsF(); --} --constexpr bool CORE_EXPORT operator!=(const AnimationTimeDelta& lhs, -- const AnimationTimeDelta& rhs) { -- return lhs.InSecondsF() != rhs.InSecondsF(); --} --constexpr bool CORE_EXPORT operator>(const AnimationTimeDelta& lhs, -- const AnimationTimeDelta& rhs) { -- return lhs.InSecondsF() > rhs.InSecondsF(); --} --constexpr bool CORE_EXPORT operator>=(const AnimationTimeDelta& lhs, -- const AnimationTimeDelta& rhs) { -- return lhs.InSecondsF() >= rhs.InSecondsF(); --} --constexpr bool CORE_EXPORT operator<=(const AnimationTimeDelta& lhs, -- const AnimationTimeDelta& rhs) { -- return lhs.InSecondsF() <= rhs.InSecondsF(); --} -+bool CORE_EXPORT operator==(const AnimationTimeDelta& lhs, -+ const AnimationTimeDelta& rhs); -+bool CORE_EXPORT operator!=(const AnimationTimeDelta& lhs, -+ const AnimationTimeDelta& rhs); -+bool CORE_EXPORT operator>(const AnimationTimeDelta& lhs, -+ const AnimationTimeDelta& rhs); -+bool CORE_EXPORT operator>=(const AnimationTimeDelta& lhs, -+ const AnimationTimeDelta& rhs); -+bool CORE_EXPORT operator<=(const AnimationTimeDelta& lhs, -+ const AnimationTimeDelta& rhs); - - // Defined to allow DCHECK_EQ/etc to work with the class. - CORE_EXPORT std::ostream& operator<<(std::ostream& os, AnimationTimeDelta time); --- -2.17.2 - diff --git a/chromium-gcc8-r588547.patch b/chromium-gcc8-r588547.patch deleted file mode 100644 index 5f12f7f..0000000 --- a/chromium-gcc8-r588547.patch +++ /dev/null @@ -1,30 +0,0 @@ -From e3ad3deb6a6e79284f3748fa7410311d87df91c5 Mon Sep 17 00:00:00 2001 -From: Henrique Nakashima -Date: Tue, 4 Sep 2018 16:49:51 +0000 -Subject: [PATCH] IWYU: stdint.h in pdfium_mem_buffer_file_write.h for uint8_t - -Bug: 879900 -Change-Id: I9c15d1c280a23c53d31f2d72c9d0d1db79eab886 -Reviewed-on: https://chromium-review.googlesource.com/1204410 -Reviewed-by: Lei Zhang -Commit-Queue: Henrique Nakashima -Cr-Commit-Position: refs/heads/master@{#588547} ---- - pdf/pdfium/pdfium_mem_buffer_file_write.h | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/pdf/pdfium/pdfium_mem_buffer_file_write.h b/pdf/pdfium/pdfium_mem_buffer_file_write.h -index 03c54bb63800..82e82d23684d 100644 ---- a/pdf/pdfium/pdfium_mem_buffer_file_write.h -+++ b/pdf/pdfium/pdfium_mem_buffer_file_write.h -@@ -6,6 +6,7 @@ - #define PDF_PDFIUM_PDFIUM_MEM_BUFFER_FILE_WRITE_H_ - - #include -+#include - - #include - --- -2.17.2 - diff --git a/chromium-gcc8-r589614.patch b/chromium-gcc8-r589614.patch deleted file mode 100644 index 0c187fd..0000000 --- a/chromium-gcc8-r589614.patch +++ /dev/null @@ -1,37 +0,0 @@ -From cbdb8bd6567c8143dc8c1e5e86a21a8ea064eea4 Mon Sep 17 00:00:00 2001 -From: Maksim Sisov -Date: Fri, 7 Sep 2018 18:57:42 +0000 -Subject: [PATCH] OmniboxTextView: fix gcc error for structure initialization - -It looks like there is bug in GCC 6, which cannot go through -structure initialization normally. - -Thus, instead of a default initialization of one of the members, -explicitly initialize it to a default value. - -Change-Id: Ia55cc6658e6b6b2f8a80c2582dd28f001c9e648c -Reviewed-on: https://chromium-review.googlesource.com/1213181 -Reviewed-by: Scott Violet -Commit-Queue: Maksim Sisov -Cr-Commit-Position: refs/heads/master@{#589614} ---- - chrome/browser/ui/views/omnibox/omnibox_text_view.cc | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/chrome/browser/ui/views/omnibox/omnibox_text_view.cc b/chrome/browser/ui/views/omnibox/omnibox_text_view.cc -index f0a8083dc930..9021284f166d 100644 ---- a/chrome/browser/ui/views/omnibox/omnibox_text_view.cc -+++ b/chrome/browser/ui/views/omnibox/omnibox_text_view.cc -@@ -175,7 +175,8 @@ void ApplyTextStyleForType(SuggestionAnswer::TextStyle text_style, - style = {part_color, .baseline = gfx::SUPERIOR}; - break; - case SuggestionAnswer::TextStyle::BOLD: -- style = {part_color, .weight = gfx::Font::Weight::BOLD}; -+ style = {part_color, .baseline = gfx::NORMAL_BASELINE, -+ .weight = gfx::Font::Weight::BOLD}; - break; - case SuggestionAnswer::TextStyle::NORMAL: - case SuggestionAnswer::TextStyle::NORMAL_DIM: --- -2.17.2 - diff --git a/chromium-gcc8-r591015.patch b/chromium-gcc8-r591015.patch deleted file mode 100644 index 65c09e8..0000000 --- a/chromium-gcc8-r591015.patch +++ /dev/null @@ -1,70 +0,0 @@ -From e98f8ef8b2f236ecbb01df8c39e6ee1c8fbe8d7d Mon Sep 17 00:00:00 2001 -From: Maksim Sisov -Date: Thu, 13 Sep 2018 15:17:29 +0000 -Subject: [PATCH] ScrollPaintPropertyNode: Rename SnapContainerData() to - GetSnapContainerData() - -GCC is stricter than clang when it comes to class members' names and how -they can change the meaning of a previously existing symbol with the same -name. - -Here is a short error message: - -error: changes meaning of 'SnapContainerData' from 'using SnapContainerData = -class cc::SnapContainerData' [-fpermissive] using SnapContainerData = -cc::SnapContainerData; - -Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_slimming_paint_v2;master.tryserver.blink:linux_trusty_blink_rel -Change-Id: I0de5460f17b13484253e1ff0538b111c9a3b0d13 -Reviewed-on: https://chromium-review.googlesource.com/1213180 -Commit-Queue: Maksim Sisov -Reviewed-by: Philip Rogers -Cr-Commit-Position: refs/heads/master@{#591015} ---- - .../blink/renderer/core/paint/paint_property_tree_update_tests.cc | 2 +- - .../renderer/platform/graphics/compositing/property_tree_manager.cc | 2 +- - .../blink/renderer/platform/graphics/paint/scroll_paint_property_node.h | 2 +- - 3 files changed, 3 insertions(+), 3 deletions(-) - -diff --git a/third_party/blink/renderer/core/paint/paint_property_tree_update_tests.cc b/third_party/blink/renderer/core/paint/paint_property_tree_update_tests.cc -index 0d999d45076f..1fe1815a5659 100644 ---- a/third_party/blink/renderer/core/paint/paint_property_tree_update_tests.cc -+++ b/third_party/blink/renderer/core/paint/paint_property_tree_update_tests.cc -@@ -1310,7 +1310,7 @@ TEST_P(PaintPropertyTreeUpdateTest, EnsureSnapContainerData) { - GetDocument().View()->Resize(300, 300); - GetDocument().View()->UpdateAllLifecyclePhases(); - -- auto doc_snap_container_data = DocScroll()->SnapContainerData(); -+ auto doc_snap_container_data = DocScroll()->GetSnapContainerData(); - ASSERT_TRUE(doc_snap_container_data); - EXPECT_EQ(doc_snap_container_data->scroll_snap_type().axis, SnapAxis::kBoth); - EXPECT_EQ(doc_snap_container_data->scroll_snap_type().strictness, -diff --git a/third_party/blink/renderer/platform/graphics/compositing/property_tree_manager.cc b/third_party/blink/renderer/platform/graphics/compositing/property_tree_manager.cc -index 745b8c8b387e..5f87eeea9435 100644 ---- a/third_party/blink/renderer/platform/graphics/compositing/property_tree_manager.cc -+++ b/third_party/blink/renderer/platform/graphics/compositing/property_tree_manager.cc -@@ -333,7 +333,7 @@ void PropertyTreeManager::CreateCompositorScrollNode( - scroll_node->OverscrollBehaviorX()), - static_cast( - scroll_node->OverscrollBehaviorY())); -- compositor_node.snap_container_data = scroll_node->SnapContainerData(); -+ compositor_node.snap_container_data = scroll_node->GetSnapContainerData(); - - auto compositor_element_id = scroll_node->GetCompositorElementId(); - if (compositor_element_id) { -diff --git a/third_party/blink/renderer/platform/graphics/paint/scroll_paint_property_node.h b/third_party/blink/renderer/platform/graphics/paint/scroll_paint_property_node.h -index e1479269ccc3..5bd7f65f10ba 100644 ---- a/third_party/blink/renderer/platform/graphics/paint/scroll_paint_property_node.h -+++ b/third_party/blink/renderer/platform/graphics/paint/scroll_paint_property_node.h -@@ -99,7 +99,7 @@ class PLATFORM_EXPORT ScrollPaintPropertyNode - return state_.overscroll_behavior.y; - } - -- base::Optional SnapContainerData() const { -+ base::Optional GetSnapContainerData() const { - return state_.snap_container_data; - } - --- -2.14.3 - diff --git a/chromium-gn-bootstrap-r17.patch b/chromium-gn-bootstrap-r17.patch deleted file mode 100644 index 6cfd08d..0000000 --- a/chromium-gn-bootstrap-r17.patch +++ /dev/null @@ -1,68 +0,0 @@ ---- a/tools/gn/bootstrap/bootstrap.py -+++ b/tools/gn/bootstrap/bootstrap.py -@@ -179,6 +179,7 @@ def build_gn_with_ninja_manually(tempdir, options): - - write_buildflag_header_manually(root_gen_dir, 'base/debug/debugging_flags.h', - { -+ 'ENABLE_LOCATION_SOURCE': 'false', - 'ENABLE_PROFILING': 'false', - 'CAN_UNWIND_WITH_FRAME_POINTERS': 'false' - }) -@@ -204,7 +205,7 @@ def build_gn_with_ninja_manually(tempdir, options): - - write_gn_ninja(os.path.join(tempdir, 'build.ninja'), - root_gen_dir, options) -- cmd = ['ninja', '-C', tempdir] -+ cmd = ['ninja', '-C', tempdir, '-w', 'dupbuild=err'] - if options.verbose: - cmd.append('-v') - -@@ -458,6 +459,7 @@ def write_gn_ninja(path, root_gen_dir, options): - 'base/metrics/bucket_ranges.cc', - 'base/metrics/field_trial.cc', - 'base/metrics/field_trial_param_associator.cc', -+ 'base/metrics/field_trial_params.cc', - 'base/metrics/histogram.cc', - 'base/metrics/histogram_base.cc', - 'base/metrics/histogram_functions.cc', -@@ -507,6 +509,7 @@ def write_gn_ninja(path, root_gen_dir, options): - 'base/task_scheduler/scheduler_lock_impl.cc', - 'base/task_scheduler/scheduler_single_thread_task_runner_manager.cc', - 'base/task_scheduler/scheduler_worker.cc', -+ 'base/task_scheduler/scheduler_worker_pool.cc', - 'base/task_scheduler/scheduler_worker_pool_impl.cc', - 'base/task_scheduler/scheduler_worker_pool_params.cc', - 'base/task_scheduler/scheduler_worker_stack.cc', -@@ -523,6 +526,7 @@ def write_gn_ninja(path, root_gen_dir, options): - 'base/third_party/icu/icu_utf.cc', - 'base/third_party/nspr/prtime.cc', - 'base/threading/post_task_and_reply_impl.cc', -+ 'base/threading/scoped_blocking_call.cc', - 'base/threading/sequence_local_storage_map.cc', - 'base/threading/sequenced_task_runner_handle.cc', - 'base/threading/sequenced_worker_pool.cc', -@@ -579,7 +583,6 @@ def write_gn_ninja(path, root_gen_dir, options): - 'base/unguessable_token.cc', - 'base/value_iterators.cc', - 'base/values.cc', -- 'base/value_iterators.cc', - 'base/vlog.cc', - ]) - -@@ -652,7 +655,6 @@ def write_gn_ninja(path, root_gen_dir, options): - static_libraries['base']['sources'].extend([ - 'base/memory/shared_memory_handle_posix.cc', - 'base/memory/shared_memory_posix.cc', -- 'base/memory/shared_memory_tracker.cc', - 'base/nix/xdg_util.cc', - 'base/process/internal_linux.cc', - 'base/process/memory_linux.cc', -@@ -827,7 +829,7 @@ def build_gn_with_gn(temp_gn, build_dir, options): - cmd = [temp_gn, 'gen', build_dir, '--args=%s' % gn_gen_args] - check_call(cmd) - -- cmd = ['ninja', '-C', build_dir] -+ cmd = ['ninja', '-C', build_dir, '-w', 'dupbuild=err'] - if options.verbose: - cmd.append('-v') - cmd.append('gn') diff --git a/chromium-math.h-r0.patch b/chromium-math.h-r0.patch deleted file mode 100644 index 6c7c747..0000000 --- a/chromium-math.h-r0.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 9f63f94a11abc34d40ede8b8712fa15b5844a8c0 Mon Sep 17 00:00:00 2001 -From: Tom Anderson -Date: Sat, 27 Jan 2018 20:03:37 +0000 -Subject: [PATCH] Fix build with glibc 2.27 - -BUG=806340 -TBR=hamelphi@chromium.org - -Change-Id: Ib4e5091212d874d9ad88f3e9a1fdfee3ed7e0d5e -Reviewed-on: https://chromium-review.googlesource.com/890059 -Reviewed-by: Thomas Anderson -Reviewed-by: Philippe Hamel -Commit-Queue: Thomas Anderson -Cr-Commit-Position: refs/heads/master@{#532249} ---- - -diff --git a/components/assist_ranker/ranker_example_util.cc b/components/assist_ranker/ranker_example_util.cc -index 54d4dbd..ceedd8f 100644 ---- a/components/assist_ranker/ranker_example_util.cc -+++ b/components/assist_ranker/ranker_example_util.cc -@@ -2,6 +2,8 @@ - // Use of this source code is governed by a BSD-style license that can be - // found in the LICENSE file. - -+#include -+ - #include "components/assist_ranker/ranker_example_util.h" - #include "base/bit_cast.h" - #include "base/format_macros.h" diff --git a/chromium-stdint.patch b/chromium-stdint.patch deleted file mode 100644 index 8774439..0000000 --- a/chromium-stdint.patch +++ /dev/null @@ -1,21 +0,0 @@ -From 0235c2b657d936f3cdb09053776e5929fc84704b Mon Sep 17 00:00:00 2001 -From: Tomas Popela -Date: Wed, 31 Jan 2018 18:57:07 +0000 -Subject: [PATCH] Add missing stdint include - -diff --git a/chrome/browser/vr/sample_queue.cc b/chrome/browser/vr/sample_queue.cc -index c2ca777ce90c..53cb3aab1576 100644 ---- a/chrome/browser/vr/sample_queue.cc -+++ b/chrome/browser/vr/sample_queue.cc -@@ -2,6 +2,8 @@ - // Use of this source code is governed by a BSD-style license that can be - // found in the LICENSE file. - -+#include -+ - #include "chrome/browser/vr/sample_queue.h" - - namespace vr { --- -2.16.2 - diff --git a/chromium.spec b/chromium.spec index de018ef..d734490 100644 --- a/chromium.spec +++ b/chromium.spec @@ -174,175 +174,130 @@ License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and Open Patch0: chromium-67.0.3396.62-gcc5.patch Patch1: chromium-45.0.2454.101-linux-path-max.patch Patch2: chromium-55.0.2883.75-addrfix.patch -Patch4: chromium-72.0.3626.121-notest.patch +Patch3: chromium-72.0.3626.121-notest.patch +# Use libusb_interrupt_event_handler from current libusbx (1.0.21-0.1.git448584a) +Patch4: chromium-48.0.2564.116-libusb_interrupt_event_handler.patch +# Ignore deprecations in cups 2.2 +# https://bugs.chromium.org/p/chromium/issues/detail?id=622493 +Patch5: chromium-55.0.2883.75-cups22.patch +# Use PIE in the Linux sandbox (from openSUSE via Russian Fedora) +Patch6: chromium-70.0.3538.67-sandbox-pie.patch +# Use /etc/chromium for master_prefs +Patch7: chromium-68.0.3440.106-master-prefs-path.patch +# Use gn system files +Patch8: chromium-67.0.3396.62-gn-system.patch +# Fix issue where timespec is not defined when sys/stat.h is included. +Patch9: chromium-53.0.2785.92-boringssl-time-fix.patch +# I wouldn't have to do this if there was a standard way to append extra compiler flags +Patch10: chromium-63.0.3289.84-nullfix.patch +# Add explicit includedir for jpeglib.h +Patch11: chromium-54.0.2840.59-jpeg-include-dir.patch +# On i686, pass --no-keep-memory --reduce-memory-overheads to ld. +Patch12: chromium-59.0.3071.86-i686-ld-memory-tricks.patch +# Revert https://chromium.googlesource.com/chromium/src/+/b794998819088f76b4cf44c8db6940240c563cf4%5E%21/#F0 +# https://bugs.chromium.org/p/chromium/issues/detail?id=712737 +# https://bugzilla.redhat.com/show_bug.cgi?id=1446851 +Patch13: chromium-58.0.3029.96-revert-b794998819088f76b4cf44c8db6940240c563cf4.patch +# Correctly compile the stdatomic.h in ffmpeg with gcc 4.8 +Patch14: chromium-64.0.3282.119-ffmpeg-stdatomic.patch +# Nacl can't die soon enough +Patch15: chromium-66.0.3359.117-system-clang.patch +# Do not prefix libpng functions +Patch16: chromium-60.0.3112.78-no-libpng-prefix.patch +# Do not mangle libjpeg +Patch17: chromium-60.0.3112.78-jpeg-nomangle.patch +# Do not mangle zlib +Patch18: chromium-75.0.3770.80-no-zlib-mangle.patch +# Fix libavutil include pathing to find arch specific timer.h +# For some reason, this only fails on aarch64. No idea why. +Patch19: chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch +# from gentoo +Patch20: chromium-61.0.3163.79-gcc-no-opt-safe-math.patch +# From gentoo +Patch21: chromium-72.0.3626.121-gcc5-r3.patch +# To use round with gcc, you need to #include +Patch22: chromium-65.0.3325.146-gcc-round-fix.patch +# Include proper headers to invoke memcpy() +Patch23: chromium-65.0.3325.146-memcpy-fix.patch +# ../../mojo/public/cpp/bindings/associated_interface_ptr_info.h:48:43: error: cannot convert 'const mojo::ScopedInterfaceEndpointHandle' to 'bool' in return +Patch24: chromium-68.0.3440.106-boolfix.patch +# From Debian +Patch25: chromium-71.0.3578.98-skia-aarch64-buildfix.patch +# Missing files in tarball +Patch26: chromium-66.0.3359.117-missing-files.patch +# Do not use unrar code, it is non-free +Patch27: chromium-73.0.3683.75-norar.patch +# Upstream GCC fixes +Patch28: chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch +# Add "Fedora" to the user agent string +Patch29: chromium-72.0.3626.121-fedora-user-agent.patch +# Try to fix version.py for Rawhide +Patch30: chromium-71.0.3578.98-py2-bootstrap.patch +# Fix default on redeclaration error +# https://chromium.googlesource.com/chromium/src/+/122692ccee62223f266a988c575ae687e3f4c056%5E%21/#F0 +Patch31: chromium-68.0.3440.106-fix-default-on-redeclaration.patch +# Use Gentoo's Widevine hack +# https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-widevine-r3.patch +Patch32: chromium-71.0.3578.98-widevine-r3.patch +# Do not require sysroot +# Forget about trying to make libc++ +# BUILD SANELY PLEASE +Patch33: chromium-69.0.3497.81-build-sanely-please.patch +# Disable fontconfig cache magic that breaks remoting +Patch34: chromium-70.0.3538.67-disable-fontconfig-cache-magic.patch +# Fix aarch64 build against latest linux kernel headers +Patch35: chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch +# drop rsp clobber, which breaks gcc9 (thanks to Jeff Law) +Patch36: chromium-71.0.3578.98-gcc9-drop-rsp-clobber.patch +# Try to load widevine from other places +Patch37: chromium-widevine-other-locations.patch +# Disable -fno-delete-null-pointer-checks +Patch38: chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch +# Add #include to get pipewire code to build +Patch39: chromium-73.0.3683.75-pipewire-cstring-fix.patch +# gcc does not have __assume +Patch40: chromium-75.0.3770.80-gcc-no-assume.patch +# Linux 5.2 defines SIOCGSTAMP in a slightly different way, so we need to teach chromium where to find it +Patch41: chromium-75.0.3770.80-SIOCGSTAMP.patch +# https://chromium.googlesource.com/chromium/src/+/aeed4d1f15ce84a17ea0bc219e258dc4982b2368%5E%21/#F0 +Patch42: chromium-75.0.3770.80-aeed4d-gcc-dcheck_ne-fix.patch +# Revert https://chromium.googlesource.com/chromium/src/+/daff6b66faae53a0cefb88987c9ff4843629b728%5E%21/#F0 +# It might make clang happy but it breaks gcc. F*** clang. +Patch43: chromium-75.0.3770.80-revert-daff6b.patch +# Avoid pure virtual crash destroying RenderProcessUserData +# https://chromium.googlesource.com/chromium/src/+/cdf306db81efaaaa954487585d5a5a16205a5ebd%5E%21/ +Patch44: chromium-75.0.3770.80-pure-virtual-crash-fix.patch +# rename function to avoid conflict with rawhide glibc "gettid()" +Patch45: chromium-75.0.3770.80-grpc-gettid-fix.patch +# fix v8 compile with gcc +# https://chromium.googlesource.com/v8/v8/+/3b8c624bda58d05aea80dd9626cd550537d6ac3f%5E%21/#F1 +Patch46: chromium-75.0.3770.100-fix-v8-gcc.patch +# https://chromium.googlesource.com/chromium/src/+/00281713519dbd84b90d2996a009bf3a7e294435%5E%21/#F0 +Patch47: chromium-75.0.3770.100-git00281713.patch + +# Apply these changes to work around EPEL7 compiler issues +Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch +# Use lstdc++ on EPEL7 only +Patch101: chromium-75.0.3770.100-epel7-stdc++.patch +# el7 only patch +Patch102: chromium-75.0.3770.100-el7-fix-noexcept.patch + # In file included from ../linux/directory.c:21: # In file included from ../../../../native_client/src/nonsfi/linux/abi_conversion.h:20: # ../../../../native_client/src/nonsfi/linux/linux_syscall_structs.h:44:13: error: GNU-style inline assembly is disabled # __asm__ __volatile__("mov %%gs, %0" : "=r"(gs)); # ^ # 1 error generated. -Patch6: chromium-47.0.2526.80-pnacl-fgnu-inline-asm.patch +Patch200: chromium-47.0.2526.80-pnacl-fgnu-inline-asm.patch # Ignore broken nacl open fd counter -Patch7: chromium-47.0.2526.80-nacl-ignore-broken-fd-counter.patch -# Use libusb_interrupt_event_handler from current libusbx (1.0.21-0.1.git448584a) -Patch9: chromium-48.0.2564.116-libusb_interrupt_event_handler.patch -# Ignore deprecations in cups 2.2 -# https://bugs.chromium.org/p/chromium/issues/detail?id=622493 -Patch12: chromium-55.0.2883.75-cups22.patch -# Use PIE in the Linux sandbox (from openSUSE via Russian Fedora) -Patch15: chromium-70.0.3538.67-sandbox-pie.patch -# Use /etc/chromium for master_prefs -Patch18: chromium-68.0.3440.106-master-prefs-path.patch -# Disable MADV_FREE (if set by glibc) -# https://bugzilla.redhat.com/show_bug.cgi?id=1361157 -Patch19: chromium-52.0.2743.116-unset-madv_free.patch -# Use gn system files -Patch20: chromium-67.0.3396.62-gn-system.patch -# Fix last commit position issue -# https://groups.google.com/a/chromium.org/forum/#!topic/gn-dev/7nlJv486bD4 -# Patch21: chromium-60.0.3112.78-last-commit-position.patch -# Fix issue where timespec is not defined when sys/stat.h is included. -Patch22: chromium-53.0.2785.92-boringssl-time-fix.patch -# I wouldn't have to do this if there was a standard way to append extra compiler flags -Patch24: chromium-63.0.3289.84-nullfix.patch -# Add explicit includedir for jpeglib.h -Patch25: chromium-54.0.2840.59-jpeg-include-dir.patch -# On i686, pass --no-keep-memory --reduce-memory-overheads to ld. -Patch26: chromium-59.0.3071.86-i686-ld-memory-tricks.patch -# obj/content/renderer/renderer/child_frame_compositing_helper.o: In function `content::ChildFrameCompositingHelper::OnSetSurface(cc::SurfaceId const&, gfx::Size const&, float, cc::SurfaceSequence const&)': -# /builddir/build/BUILD/chromium-54.0.2840.90/out/Release/../../content/renderer/child_frame_compositing_helper.cc:214: undefined reference to `cc_blink::WebLayerImpl::setOpaque(bool)' -# Patch27: chromium-63.0.3289.84-setopaque.patch -# Use -fpermissive to build WebKit -# Patch31: chromium-56.0.2924.87-fpermissive.patch -# Fix issue with compilation on gcc7 -# Thanks to Ben Noordhuis -# Patch33: chromium-65.0.3325.146-gcc7.patch -# Revert https://chromium.googlesource.com/chromium/src/+/b794998819088f76b4cf44c8db6940240c563cf4%5E%21/#F0 -# https://bugs.chromium.org/p/chromium/issues/detail?id=712737 -# https://bugzilla.redhat.com/show_bug.cgi?id=1446851 -Patch36: chromium-58.0.3029.96-revert-b794998819088f76b4cf44c8db6940240c563cf4.patch -# Correctly compile the stdatomic.h in ffmpeg with gcc 4.8 -Patch37: chromium-64.0.3282.119-ffmpeg-stdatomic.patch -# Nacl can't die soon enough -Patch39: chromium-66.0.3359.117-system-clang.patch -# Do not prefix libpng functions -Patch42: chromium-60.0.3112.78-no-libpng-prefix.patch -# Do not mangle libjpeg -Patch43: chromium-60.0.3112.78-jpeg-nomangle.patch -# Do not mangle zlib -Patch45: chromium-75.0.3770.80-no-zlib-mangle.patch -# Apply these changes to work around EPEL7 compiler issues -Patch46: chromium-62.0.3202.62-kmaxskip-constexpr.patch -Patch47: chromium-60.0.3112.90-vulkan-force-c99.patch -# Fix libavutil include pathing to find arch specific timer.h -# For some reason, this only fails on aarch64. No idea why. -Patch50: chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch -# from gentoo -Patch53: chromium-61.0.3163.79-gcc-no-opt-safe-math.patch -# Only needed when glibc 2.26.90 or later is used -Patch57: chromium-63.0.3289.84-aarch64-glibc-2.26.90.patch -# From gentoo -Patch62: chromium-72.0.3626.121-gcc5-r3.patch -# Do not try to use libc++ in the remoting stack -# Patch63: chromium-63.0.3289.84-nolibc++.patch -# To use round with gcc, you need to #include -Patch65: chromium-65.0.3325.146-gcc-round-fix.patch -# Include proper headers to invoke memcpy() -Patch67: chromium-65.0.3325.146-memcpy-fix.patch -# ../../mojo/public/cpp/bindings/associated_interface_ptr_info.h:48:43: error: cannot convert 'const mojo::ScopedInterfaceEndpointHandle' to 'bool' in return -Patch85: chromium-68.0.3440.106-boolfix.patch -# From Debian -Patch86: chromium-71.0.3578.98-skia-aarch64-buildfix.patch -# Use lstdc++ on EPEL7 only -Patch87: chromium-75.0.3770.100-epel7-stdc++.patch -# Missing files in tarball -Patch88: chromium-66.0.3359.117-missing-files.patch -# https://chromium.googlesource.com/chromium/src/+/ba4141e451f4e0b1b19410b1b503bd32e150df06%5E%21/#F0 -# Patch89: chromium-66.0.3359.117-gcc-optional-move-fixes.patch -# https://chromium.googlesource.com/chromium/src/+/4f2b52281ce1649ea8347489443965ad33262ecc%5E%21 -# Patch90: chromium-66.0.3359.117-gcc-copy-constructor-fix.patch -# https://bugs.chromium.org/p/chromium/issues/detail?id=816952 -# Patch91: chromium-66.0.3359.117-gcc-vector-copy-constructor-fix.patch -# Do not use unrar code, it is non-free -Patch92: chromium-73.0.3683.75-norar.patch -# Upstream GCC fixes -Patch93: chromium-66.0.3359.117-GCC-build-fix-base-Optional-T-requires-the-full-decl.patch -Patch94: chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch -# Patch95: chromium-65.0.3325.146-GCC-IDB-methods-String-renamed-to-GetString.patch -# https://github.com/archlinuxarm/PKGBUILDs/blob/master/extra/chromium/0006-GCC-do-not-use-initializer-list-for-NoDestructor-of-.patch -# Patch96: chromium-66.0.3359.117-GCC-do-not-use-initializer-list-for-NoDestructor-of-.patch -# https://chromium.googlesource.com/chromium/src/+/b84682f31dc99b9c90f5a04947075815697c68d9%5E%21/#F0 -# Patch97: chromium-66.0.3359.139-arm-init-fix.patch -# GCC8 has changed the alignof operator to return the minimal alignment required by the target ABI -# instead of the preferred alignment. This means int64_t is now 4 on i686 (instead of 8). -# Use __alignof__ to get the value we expect (and chromium checks for). -# Patch98: chromium-69.0.3497.81-gcc8-alignof.patch -# RHEL 7 has a bug in its python2.7 which does not propely handle exec with a tuple -# https://bugs.python.org/issue21591 -Patch100: chromium-67.0.3396.62-epel7-use-old-python-exec-syntax.patch -# Add "Fedora" to the user agent string -Patch101: chromium-72.0.3626.121-fedora-user-agent.patch -# Try to fix version.py for Rawhide -Patch103: chromium-71.0.3578.98-py2-bootstrap.patch -# Fix default on redeclaration error -# https://chromium.googlesource.com/chromium/src/+/122692ccee62223f266a988c575ae687e3f4c056%5E%21/#F0 -Patch110: chromium-68.0.3440.106-fix-default-on-redeclaration.patch -# Use Gentoo's Widevine hack -# https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-widevine-r3.patch -Patch111: chromium-71.0.3578.98-widevine-r3.patch -# Do not require sysroot -# Forget about trying to make libc++ -# BUILD SANELY PLEASE -Patch112: chromium-69.0.3497.81-build-sanely-please.patch -# Still moar GCC cleanups from upstream -# Patch113: chromium-gcc8-r588316.patch -# Patch114: chromium-gcc8-r588547.patch -# Patch115: chromium-gcc8-r589614.patch -# Patch116: chromium-gcc8-r591015.patch -# Disable fontconfig cache magic that breaks remoting -Patch117: chromium-70.0.3538.67-disable-fontconfig-cache-magic.patch -# Fix aarch64 build against latest linux kernel headers -Patch119: chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch +Patch201: chromium-47.0.2526.80-nacl-ignore-broken-fd-counter.patch + # Enable VAAPI support on Linux # NOTE: This patch will never land upstream -Patch121: enable-vaapi.patch -Patch122: chromium-75.0.3770.80-vaapi-i686-fpermissive.patch +Patch202: enable-vaapi.patch +Patch203: chromium-75.0.3770.80-vaapi-i686-fpermissive.patch # Fix compatibility with VA-API library (libva) version 1 -Patch124: chromium-75.0.3770.80-vaapi-libva1-compatibility.patch -# drop rsp clobber, which breaks gcc9 (thanks to Jeff Law) -Patch126: chromium-71.0.3578.98-gcc9-drop-rsp-clobber.patch -# Thanks Ubuntu -# Disable these two patches when v75 lands -Patch130: revert-gn-4980.patch -Patch131: revert-gn-4960.patch -# Try to load widevine from other places -Patch132: chromium-widevine-other-locations.patch -# Disable -fno-delete-null-pointer-checks -Patch135: chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch -# Add #include to get pipewire code to build -Patch136: chromium-73.0.3683.75-pipewire-cstring-fix.patch -# el7 only patch -Patch139: chromium-75.0.3770.100-el7-fix-noexcept.patch -# gcc does not have __assume -Patch140: chromium-75.0.3770.80-gcc-no-assume.patch -# Linux 5.2 defines SIOCGSTAMP in a slightly different way, so we need to teach chromium where to find it -Patch141: chromium-75.0.3770.80-SIOCGSTAMP.patch -# https://chromium.googlesource.com/chromium/src/+/aeed4d1f15ce84a17ea0bc219e258dc4982b2368%5E%21/#F0 -Patch142: chromium-75.0.3770.80-aeed4d-gcc-dcheck_ne-fix.patch -# Revert https://chromium.googlesource.com/chromium/src/+/daff6b66faae53a0cefb88987c9ff4843629b728%5E%21/#F0 -# It might make clang happy but it breaks gcc. F*** clang. -Patch143: chromium-75.0.3770.80-revert-daff6b.patch -# Avoid pure virtual crash destroying RenderProcessUserData -# https://chromium.googlesource.com/chromium/src/+/cdf306db81efaaaa954487585d5a5a16205a5ebd%5E%21/ -Patch144: chromium-75.0.3770.80-pure-virtual-crash-fix.patch -# rename function to avoid conflict with rawhide glibc "gettid()" -Patch145: chromium-75.0.3770.80-grpc-gettid-fix.patch -# fix v8 compile with gcc -# https://chromium.googlesource.com/v8/v8/+/3b8c624bda58d05aea80dd9626cd550537d6ac3f%5E%21/#F1 -Patch146: chromium-75.0.3770.100-fix-v8-gcc.patch -# https://chromium.googlesource.com/chromium/src/+/00281713519dbd84b90d2996a009bf3a7e294435%5E%21/#F0 -Patch147: chromium-75.0.3770.100-git00281713.patch - +Patch204: chromium-75.0.3770.80-vaapi-libva1-compatibility.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ @@ -837,97 +792,73 @@ udev. %patch0 -p1 -b .gcc5 %patch1 -p1 -b .pathmax %patch2 -p1 -b .addrfix -%patch4 -p1 -b .notest -# %%patch6 -p1 -b .gnu-inline -%patch7 -p1 -b .ignore-fd-count -%patch9 -p1 -b .modern-libusbx -%patch12 -p1 -b .cups22 -%patch15 -p1 -b .sandboxpie -%patch18 -p1 -b .etc -# %%patch19 -p1 -b .madv_free -%patch20 -p1 -b .gnsystem -# %%patch21 -p1 -b .lastcommit -%patch22 -p1 -b .timefix -%patch24 -p1 -b .nullfix -%patch25 -p1 -b .jpegfix -%patch26 -p1 -b .ldmemory -# %%patch27 -p1 -b .setopaque -# %%patch31 -p1 -b .permissive -# %%patch33 -p1 -b .gcc7 -%patch36 -p1 -b .revert -%patch37 -p1 -b .ffmpeg-stdatomic -%patch39 -p1 -b .system-clang -%patch42 -p1 -b .noprefix -%patch43 -p1 -b .nomangle -%patch45 -p1 -b .nozmangle +%patch3 -p1 -b .notest +%patch4 -p1 -b .modern-libusbx +%patch5 -p1 -b .cups22 +%patch6 -p1 -b .sandboxpie +%patch7 -p1 -b .etc +%patch8 -p1 -b .gnsystem +%patch9 -p1 -b .timefix +%patch10 -p1 -b .nullfix +%patch11 -p1 -b .jpegfix +%patch12 -p1 -b .ldmemory +%patch13 -p1 -b .revert +%patch14 -p1 -b .ffmpeg-stdatomic +%patch15 -p1 -b .system-clang +%patch16 -p1 -b .noprefix +%patch17 -p1 -b .nomangle +%patch18 -p1 -b .nozmangle +%patch19 -p1 -b .pathfix +%patch20 -p1 -b .nogccoptmath +%patch21 -p1 -b .gcc5-r3 +%patch22 -p1 -b .gcc-round-fix +%patch23 -p1 -b .memcpyfix +%patch24 -p1 -b .boolfix +%patch25 -p1 -b .aarch64fix +%patch26 -p1 -b .missing-files +%patch27 -p1 -b .nounrar +%patch28 -p1 -b .gcc-cpolicyprovider +%patch29 -p1 -b .fedora-user-agent +%patch30 -p1 -b .py2 +%patch31 -p1 -b .fix-default-redeclaration +%patch32 -p1 -b .wvhack +%patch33 -p1 -b .sanebuild +%patch34 -p1 -b .nofc +%patch35 -p1 -b .aarch64-new-stat +%patch36 -p1 -b .gcc9 +%patch37 -p1 -b .widevine-other-locations +%patch38 -p1 -b .disable-ndnpc +%patch39 -p1 -b .cstring-fix +%patch40 -p1 -b .gcc-assume +%patch41 -p1 -b .SIOCGSTAMP +%patch42 -p1 -b .gcc-dcheck_ne-fix +%patch43 -p1 -b .revert-daff6b +%patch44 -p1 -b .pure-virtual-fix +%patch45 -p1 -b .gettid-fix +%patch46 -p1 -b .fix-v8-gcc +%patch47 -p1 -b .git00281713 + +# EPEL specific patches %if 0%{?rhel} == 7 -%patch46 -p1 -b .kmaxskip -# %%patch47 -p1 -b .c99 +%patch100 -p1 -b .kmaxskip +%patch101 -p1 -b .epel7 +%patch102 -p1 -b .el7-noexcept %endif -%patch50 -p1 -b .pathfix -%patch53 -p1 -b .nogccoptmath -# %%if 0%%{?fedora} >= 28 -# %%patch57 -p1 -b .aarch64glibc -# %%endif -%patch62 -p1 -b .gcc5-r3 -# %%patch63 -p1 -b .nolibc++ -%patch65 -p1 -b .gcc-round-fix -%patch67 -p1 -b .memcpyfix -%patch85 -p1 -b .boolfix -%patch86 -p1 -b .aarch64fix -%if 0%{?rhel} == 7 -%patch87 -p1 -b .epel7 + +# Feature specific patches +%if ! 0%{?killnacl} +%patch200 -p1 -b .gnu-inline +%patch201 -p1 -b .ignore-fd-count %endif -%patch88 -p1 -b .missing -# %%patch89 -p1 -b .gccomove -# %%patch90 -p1 -b .copycon -# %%patch91 -p1 -b .944404 -%patch92 -p1 -b .nounrar -# %%patch93 -p1 -b .gcc-full-decl -%patch94 -p1 -b .gcc-cpolicyprovider -# %%patch95 -p1 -b .gcc-getstring -# %%patch96 -p1 -b .flatsetfix -# %%patch97 -p1 -b .arm-init-fix -# %%patch98 -p1 -b .gcc8-alignof -%if 0%{?rhel} == 7 -# %%patch100 -p1 -b .oldexec -%endif -%patch101 -p1 -b .fedora-user-agent -%patch103 -p1 -b .py2 -# %%patch108 -p1 -b .move-unique-ptr -%patch110 -p1 -b .fix-default-redeclaration -%patch111 -p1 -b .wvhack -%patch112 -p1 -b .sanebuild -# %%patch113 -p1 -b .r588316 -# %%patch114 -p1 -b .r588547 -# %%patch115 -p1 -b .r589614 -# %%patch116 -p1 -b .r591015 -%patch117 -p1 -b .nofc -%patch119 -p1 -b .aarch64-new-stat + %if %{use_vaapi} -%patch121 -p1 -b .vaapi -%endif +%patch202 -p1 -b .vaapi %ifarch i686 -%patch122 -p1 -b .i686permissive +%patch203 -p1 -b .i686permissive +%patch204 -p1 -b .va1compat %endif -%patch124 -p1 -b .va1compat -%patch126 -p1 -b .gcc9 -# %%patch130 -p1 -b .revert-gn-4980 -# %%patch131 -p1 -b .revert-gn-4960 -%patch132 -p1 -b .widevine-other-locations -%patch135 -p1 -b .disable-ndnpc -%patch136 -p1 -b .cstring-fix -%if 0%{?rhel} == 7 -%patch139 -p1 -b .el7-noexcept %endif -%patch140 -p1 -b .gcc-assume -%patch141 -p1 -b .SIOCGSTAMP -%patch142 -p1 -b .gcc-dcheck_ne-fix -%patch143 -p1 -b .revert-daff6b -%patch144 -p1 -b .pure-virtual-fix -%patch145 -p1 -b .gettid-fix -%patch146 -p1 -b .fix-v8-gcc -%patch147 -p1 -b .git00281713 + # Change shebang in all relevant files in this directory and all subdirectories # See `man find` for how the `-exec command {} +` syntax works diff --git a/relax-libva-version.patch b/relax-libva-version.patch deleted file mode 100644 index e297fd6..0000000 --- a/relax-libva-version.patch +++ /dev/null @@ -1,56 +0,0 @@ -From 6f1309ef8fe10965e4d0018b4f1b80ac6deccdaa Mon Sep 17 00:00:00 2001 -From: Azhar Shaikh -Date: Fri, 30 Nov 2018 23:11:57 +0000 -Subject: [PATCH] media/gpu/vaapi: Relax the version check for VA-API - -Since the newer versions of VA-API are ABI compatible, relax the -version checks for VA-API, by using VA_CHECK_VERSION(). -This will help in updating the libva to the latest releases, -while still supporting the old versions, till the new version of -libva is merged and picked by the builds. Thus ensuring that -hardware accleration is not broken while updating the libva. - -Bug: 905814 -TEST=libva-2.3.0 and libva-2.1.0 are able to do hardware acceleration. - -Suggested-by: Alexandre Courbot -Signed-off-by: Azhar Shaikh -Change-Id: I510549f72290d20676927eeeeb89a87199c062af -Reviewed-on: https://chromium-review.googlesource.com/c/1352519 -Reviewed-by: Alexandre Courbot -Reviewed-by: Hirokazu Honda -Commit-Queue: Miguel Casas -Cr-Commit-Position: refs/heads/master@{#612832} ---- - -diff --git a/AUTHORS b/AUTHORS -index 567fe15..ff42fc5 100644 ---- a/AUTHORS -+++ b/AUTHORS -@@ -103,6 +103,7 @@ - Attila Dusnoki - Avinaash Doreswamy - Ayush Khandelwal -+Azhar Shaikh - Balazs Kelemen - Baul Eun - Behara Mani Shyam Patro -diff --git a/media/gpu/vaapi/vaapi_wrapper.cc b/media/gpu/vaapi/vaapi_wrapper.cc -index b415642..053384d 100644 ---- a/media/gpu/vaapi/vaapi_wrapper.cc -+++ b/media/gpu/vaapi/vaapi_wrapper.cc -@@ -333,7 +333,13 @@ - DVLOG(1) << "VAAPI version: " << major_version << "." << minor_version << " " - << va_vendor_string_; - -- if (major_version != VA_MAJOR_VERSION || minor_version != VA_MINOR_VERSION) { -+ // The VAAPI version is determined from what is loaded on the system by -+ // calling vaInitialize(). We want a runtime evaluation of libva version, -+ // of what is loaded on the system, with, what browser is compiled with. -+ // Also since the libva is now ABI-compatible, relax the version check -+ // which helps in upgrading the libva, without breaking any existing -+ // functionality. -+ if (!VA_CHECK_VERSION(major_version, minor_version, 0)) { - LOG(ERROR) << "This build of Chromium requires VA-API version " - << VA_MAJOR_VERSION << "." << VA_MINOR_VERSION - << ", system version: " << major_version << "." << minor_version; diff --git a/revert-gn-4960.patch b/revert-gn-4960.patch deleted file mode 100644 index bb51ada..0000000 --- a/revert-gn-4960.patch +++ /dev/null @@ -1,655 +0,0 @@ -Description: revert https://gn.googlesource.com/gn/+/0d038c2e0a32a528713d3dfaf1f1e0cdfe87fd46, which breaks the chromium build - ---- a/tools/gn/build/gen.py -+++ b/tools/gn/build/gen.py -@@ -522,6 +522,7 @@ def WriteGNNinja(path, platform, host, o - 'tools/gn/setup.cc', - 'tools/gn/source_dir.cc', - 'tools/gn/source_file.cc', -+ 'tools/gn/source_file_type.cc', - 'tools/gn/standard_out.cc', - 'tools/gn/string_utils.cc', - 'tools/gn/substitution_list.cc', ---- a/tools/gn/tools/gn/c_tool.h -+++ b/tools/gn/tools/gn/c_tool.h -@@ -12,6 +12,7 @@ - #include "tools/gn/label.h" - #include "tools/gn/label_ptr.h" - #include "tools/gn/scope.h" -+#include "tools/gn/source_file_type.h" - #include "tools/gn/substitution_list.h" - #include "tools/gn/substitution_pattern.h" - #include "tools/gn/tool.h" ---- a/tools/gn/tools/gn/compile_commands_writer.cc -+++ b/tools/gn/tools/gn/compile_commands_writer.cc -@@ -122,7 +122,7 @@ void WriteCommand(const Target* target, - const CompileFlags& flags, - std::vector& tool_outputs, - PathOutput& path_output, -- SourceFile::Type source_type, -+ SourceFileType source_type, - const char* tool_name, - EscapeOptions opts, - std::string* compile_commands) { -@@ -144,16 +144,16 @@ void WriteCommand(const Target* target, - } else if (range.type == &CSubstitutionCFlags) { - command_out << flags.cflags; - } else if (range.type == &CSubstitutionCFlagsC) { -- if (source_type == SourceFile::SOURCE_C) -+ if (source_type == SOURCE_C) - command_out << flags.cflags_c; - } else if (range.type == &CSubstitutionCFlagsCc) { -- if (source_type == SourceFile::SOURCE_CPP) -+ if (source_type == SOURCE_CPP) - command_out << flags.cflags_cc; - } else if (range.type == &CSubstitutionCFlagsObjC) { -- if (source_type == SourceFile::SOURCE_M) -+ if (source_type == SOURCE_M) - command_out << flags.cflags_objc; - } else if (range.type == &CSubstitutionCFlagsObjCc) { -- if (source_type == SourceFile::SOURCE_MM) -+ if (source_type == SOURCE_MM) - command_out << flags.cflags_objcc; - } else if (range.type == &SubstitutionLabel || - range.type == &SubstitutionLabelName || -@@ -222,11 +222,9 @@ void CompileCommandsWriter::RenderJSON(c - for (const auto& source : target->sources()) { - // If this source is not a C/C++/ObjC/ObjC++ source (not header) file, - // continue as it does not belong in the compilation database. -- SourceFile::Type source_type = source.type(); -- if (source_type != SourceFile::SOURCE_CPP && -- source_type != SourceFile::SOURCE_C && -- source_type != SourceFile::SOURCE_M && -- source_type != SourceFile::SOURCE_MM) -+ SourceFileType source_type = GetSourceFileType(source); -+ if (source_type != SOURCE_CPP && source_type != SOURCE_C && -+ source_type != SOURCE_M && source_type != SOURCE_MM) - continue; - - const char* tool_name = Tool::kToolNone; -@@ -324,4 +322,4 @@ void CompileCommandsWriter::VisitDeps(co - VisitDeps(pair.ptr, visited); - } - } --} -+} -\ No newline at end of file ---- a/tools/gn/tools/gn/general_tool.h -+++ b/tools/gn/tools/gn/general_tool.h -@@ -11,6 +11,7 @@ - #include "base/macros.h" - #include "tools/gn/label.h" - #include "tools/gn/label_ptr.h" -+#include "tools/gn/source_file_type.h" - #include "tools/gn/substitution_list.h" - #include "tools/gn/substitution_pattern.h" - #include "tools/gn/tool.h" ---- a/tools/gn/tools/gn/header_checker.cc -+++ b/tools/gn/tools/gn/header_checker.cc -@@ -18,6 +18,7 @@ - #include "tools/gn/err.h" - #include "tools/gn/filesystem_utils.h" - #include "tools/gn/scheduler.h" -+#include "tools/gn/source_file_type.h" - #include "tools/gn/target.h" - #include "tools/gn/trace.h" - #include "util/worker_pool.h" -@@ -151,10 +152,9 @@ void HeaderChecker::RunCheckOverFiles(co - - for (const auto& file : files) { - // Only check C-like source files (RC files also have includes). -- SourceFile::Type type = file.first.type(); -- if (type != SourceFile::SOURCE_CPP && type != SourceFile::SOURCE_H && -- type != SourceFile::SOURCE_C && type != SourceFile::SOURCE_M && -- type != SourceFile::SOURCE_MM && type != SourceFile::SOURCE_RC) -+ SourceFileType type = GetSourceFileType(file.first); -+ if (type != SOURCE_CPP && type != SOURCE_H && type != SOURCE_C && -+ type != SOURCE_M && type != SOURCE_MM && type != SOURCE_RC) - continue; - - if (!check_generated_) { ---- a/tools/gn/tools/gn/ninja_binary_target_writer.cc -+++ b/tools/gn/tools/gn/ninja_binary_target_writer.cc -@@ -23,23 +23,22 @@ - #include "tools/gn/ninja_utils.h" - #include "tools/gn/scheduler.h" - #include "tools/gn/settings.h" -+#include "tools/gn/source_file_type.h" - #include "tools/gn/string_utils.h" - #include "tools/gn/substitution_writer.h" - #include "tools/gn/target.h" - - bool NinjaBinaryTargetWriter::SourceFileTypeSet::CSourceUsed() { -- return Get(SourceFile::SOURCE_CPP) || Get(SourceFile::SOURCE_H) || -- Get(SourceFile::SOURCE_C) || Get(SourceFile::SOURCE_M) || -- Get(SourceFile::SOURCE_MM) || Get(SourceFile::SOURCE_RC) || -- Get(SourceFile::SOURCE_S); -+ return Get(SOURCE_CPP) || Get(SOURCE_H) || Get(SOURCE_C) || Get(SOURCE_M) || -+ Get(SOURCE_MM) || Get(SOURCE_RC) || Get(SOURCE_S); - } - - bool NinjaBinaryTargetWriter::SourceFileTypeSet::RustSourceUsed() { -- return Get(SourceFile::SOURCE_RS); -+ return Get(SOURCE_RS); - } - - bool NinjaBinaryTargetWriter::SourceFileTypeSet::GoSourceUsed() { -- return Get(SourceFile::SOURCE_GO); -+ return Get(SOURCE_GO); - } - - NinjaBinaryTargetWriter::NinjaBinaryTargetWriter(const Target* target, -@@ -50,6 +49,10 @@ NinjaBinaryTargetWriter::NinjaBinaryTarg - NinjaBinaryTargetWriter::~NinjaBinaryTargetWriter() = default; - - void NinjaBinaryTargetWriter::Run() { -+ SourceFileTypeSet used_types; -+ for (const auto& source : target_->sources()) -+ used_types.Set(GetSourceFileType(source)); -+ - NinjaCBinaryTargetWriter writer(target_, out_); - writer.Run(); - } ---- a/tools/gn/tools/gn/ninja_binary_target_writer.h -+++ b/tools/gn/tools/gn/ninja_binary_target_writer.h -@@ -23,12 +23,11 @@ class NinjaBinaryTargetWriter : public N - class SourceFileTypeSet { - public: - SourceFileTypeSet() { -- memset(flags_, 0, -- sizeof(bool) * static_cast(SourceFile::SOURCE_NUMTYPES)); -+ memset(flags_, 0, sizeof(bool) * static_cast(SOURCE_NUMTYPES)); - } - -- void Set(SourceFile::Type type) { flags_[static_cast(type)] = true; } -- bool Get(SourceFile::Type type) const { -+ void Set(SourceFileType type) { flags_[static_cast(type)] = true; } -+ bool Get(SourceFileType type) const { - return flags_[static_cast(type)]; - } - -@@ -37,7 +36,7 @@ class NinjaBinaryTargetWriter : public N - bool GoSourceUsed(); - - private: -- bool flags_[static_cast(SourceFile::SOURCE_NUMTYPES)]; -+ bool flags_[static_cast(SOURCE_NUMTYPES)]; - }; - - NinjaBinaryTargetWriter(const Target* target, std::ostream& out); ---- a/tools/gn/tools/gn/ninja_c_binary_target_writer.cc -+++ b/tools/gn/tools/gn/ninja_c_binary_target_writer.cc -@@ -24,6 +24,7 @@ - #include "tools/gn/ninja_utils.h" - #include "tools/gn/scheduler.h" - #include "tools/gn/settings.h" -+#include "tools/gn/source_file_type.h" - #include "tools/gn/string_utils.h" - #include "tools/gn/substitution_writer.h" - #include "tools/gn/target.h" -@@ -66,27 +67,27 @@ void AddSourceSetObjectFiles(const Targe - if (source_set->GetOutputFilesForSource(source, &tool_name, &tool_outputs)) - obj_files->push_back(tool_outputs[0]); - -- used_types.Set(source.type()); -+ used_types.Set(GetSourceFileType(source)); - } - - // Add MSVC precompiled header object files. GCC .gch files are not object - // files so they are omitted. - if (source_set->config_values().has_precompiled_headers()) { -- if (used_types.Get(SourceFile::SOURCE_C)) { -+ if (used_types.Get(SOURCE_C)) { - const CTool* tool = source_set->toolchain()->GetToolAsC(CTool::kCToolCc); - if (tool && tool->precompiled_header_type() == CTool::PCH_MSVC) { - GetPCHOutputFiles(source_set, CTool::kCToolCc, &tool_outputs); - obj_files->Append(tool_outputs.begin(), tool_outputs.end()); - } - } -- if (used_types.Get(SourceFile::SOURCE_CPP)) { -+ if (used_types.Get(SOURCE_CPP)) { - const CTool* tool = source_set->toolchain()->GetToolAsC(CTool::kCToolCxx); - if (tool && tool->precompiled_header_type() == CTool::PCH_MSVC) { - GetPCHOutputFiles(source_set, CTool::kCToolCxx, &tool_outputs); - obj_files->Append(tool_outputs.begin(), tool_outputs.end()); - } - } -- if (used_types.Get(SourceFile::SOURCE_M)) { -+ if (used_types.Get(SOURCE_M)) { - const CTool* tool = - source_set->toolchain()->GetToolAsC(CTool::kCToolObjC); - if (tool && tool->precompiled_header_type() == CTool::PCH_MSVC) { -@@ -94,7 +95,7 @@ void AddSourceSetObjectFiles(const Targe - obj_files->Append(tool_outputs.begin(), tool_outputs.end()); - } - } -- if (used_types.Get(SourceFile::SOURCE_MM)) { -+ if (used_types.Get(SOURCE_MM)) { - const CTool* tool = - source_set->toolchain()->GetToolAsC(CTool::kCToolObjCxx); - if (tool && tool->precompiled_header_type() == CTool::PCH_MSVC) { -@@ -118,7 +119,7 @@ void NinjaCBinaryTargetWriter::Run() { - // Figure out what source types are needed. - SourceFileTypeSet used_types; - for (const auto& source : target_->sources()) -- used_types.Set(source.type()); -+ used_types.Set(GetSourceFileType(source)); - - WriteCompilerVars(used_types); - -@@ -234,34 +235,31 @@ void NinjaCBinaryTargetWriter::WriteComp - target_->config_values().has_precompiled_headers(); - - EscapeOptions opts = GetFlagOptions(); -- if (used_types.Get(SourceFile::SOURCE_S) || -- used_types.Get(SourceFile::SOURCE_ASM)) { -+ if (used_types.Get(SOURCE_S) || used_types.Get(SOURCE_ASM)) { - WriteOneFlag(target_, &CSubstitutionAsmFlags, false, Tool::kToolNone, - &ConfigValues::asmflags, opts, path_output_, out_); - } -- if (used_types.Get(SourceFile::SOURCE_C) || -- used_types.Get(SourceFile::SOURCE_CPP) || -- used_types.Get(SourceFile::SOURCE_M) || -- used_types.Get(SourceFile::SOURCE_MM)) { -+ if (used_types.Get(SOURCE_C) || used_types.Get(SOURCE_CPP) || -+ used_types.Get(SOURCE_M) || used_types.Get(SOURCE_MM)) { - WriteOneFlag(target_, &CSubstitutionCFlags, false, Tool::kToolNone, - &ConfigValues::cflags, opts, path_output_, out_); - } -- if (used_types.Get(SourceFile::SOURCE_C)) { -+ if (used_types.Get(SOURCE_C)) { - WriteOneFlag(target_, &CSubstitutionCFlagsC, has_precompiled_headers, - CTool::kCToolCc, &ConfigValues::cflags_c, opts, path_output_, - out_); - } -- if (used_types.Get(SourceFile::SOURCE_CPP)) { -+ if (used_types.Get(SOURCE_CPP)) { - WriteOneFlag(target_, &CSubstitutionCFlagsCc, has_precompiled_headers, - CTool::kCToolCxx, &ConfigValues::cflags_cc, opts, path_output_, - out_); - } -- if (used_types.Get(SourceFile::SOURCE_M)) { -+ if (used_types.Get(SOURCE_M)) { - WriteOneFlag(target_, &CSubstitutionCFlagsObjC, has_precompiled_headers, - CTool::kCToolObjC, &ConfigValues::cflags_objc, opts, - path_output_, out_); - } -- if (used_types.Get(SourceFile::SOURCE_MM)) { -+ if (used_types.Get(SOURCE_MM)) { - WriteOneFlag(target_, &CSubstitutionCFlagsObjCc, has_precompiled_headers, - CTool::kCToolObjCxx, &ConfigValues::cflags_objcc, opts, - path_output_, out_); -@@ -321,14 +319,14 @@ void NinjaCBinaryTargetWriter::WritePCHC - - const CTool* tool_c = target_->toolchain()->GetToolAsC(CTool::kCToolCc); - if (tool_c && tool_c->precompiled_header_type() != CTool::PCH_NONE && -- used_types.Get(SourceFile::SOURCE_C)) { -+ used_types.Get(SOURCE_C)) { - WritePCHCommand(&CSubstitutionCFlagsC, CTool::kCToolCc, - tool_c->precompiled_header_type(), input_dep, - order_only_deps, object_files, other_files); - } - const CTool* tool_cxx = target_->toolchain()->GetToolAsC(CTool::kCToolCxx); - if (tool_cxx && tool_cxx->precompiled_header_type() != CTool::PCH_NONE && -- used_types.Get(SourceFile::SOURCE_CPP)) { -+ used_types.Get(SOURCE_CPP)) { - WritePCHCommand(&CSubstitutionCFlagsCc, CTool::kCToolCxx, - tool_cxx->precompiled_header_type(), input_dep, - order_only_deps, object_files, other_files); -@@ -336,7 +334,7 @@ void NinjaCBinaryTargetWriter::WritePCHC - - const CTool* tool_objc = target_->toolchain()->GetToolAsC(CTool::kCToolObjC); - if (tool_objc && tool_objc->precompiled_header_type() == CTool::PCH_GCC && -- used_types.Get(SourceFile::SOURCE_M)) { -+ used_types.Get(SOURCE_M)) { - WritePCHCommand(&CSubstitutionCFlagsObjC, CTool::kCToolObjC, - tool_objc->precompiled_header_type(), input_dep, - order_only_deps, object_files, other_files); -@@ -345,7 +343,7 @@ void NinjaCBinaryTargetWriter::WritePCHC - const CTool* tool_objcxx = - target_->toolchain()->GetToolAsC(CTool::kCToolObjCxx); - if (tool_objcxx && tool_objcxx->precompiled_header_type() == CTool::PCH_GCC && -- used_types.Get(SourceFile::SOURCE_MM)) { -+ used_types.Get(SOURCE_MM)) { - WritePCHCommand(&CSubstitutionCFlagsObjCc, CTool::kCToolObjCxx, - tool_objcxx->precompiled_header_type(), input_dep, - order_only_deps, object_files, other_files); -@@ -478,7 +476,7 @@ void NinjaCBinaryTargetWriter::WriteSour - deps.resize(0); - const char* tool_name = Tool::kToolNone; - if (!target_->GetOutputFilesForSource(source, &tool_name, &tool_outputs)) { -- if (source.type() == SourceFile::SOURCE_DEF) -+ if (GetSourceFileType(source) == SOURCE_DEF) - other_files->push_back(source); - continue; // No output for this source. - } -@@ -599,7 +597,7 @@ void NinjaCBinaryTargetWriter::WriteLink - const SourceFile* optional_def_file = nullptr; - if (!other_files.empty()) { - for (const SourceFile& src_file : other_files) { -- if (src_file.type() == SourceFile::SOURCE_DEF) { -+ if (GetSourceFileType(src_file) == SOURCE_DEF) { - optional_def_file = &src_file; - implicit_deps.push_back( - OutputFile(settings_->build_settings(), src_file)); ---- a/tools/gn/tools/gn/source_file.cc -+++ b/tools/gn/tools/gn/source_file.cc -@@ -21,48 +21,18 @@ void AssertValueSourceFileString(const s - DCHECK(!EndsWithSlash(s)) << s; - } - --SourceFile::Type GetSourceFileType(const std::string& file) { -- base::StringPiece extension = FindExtension(&file); -- if (extension == "cc" || extension == "cpp" || extension == "cxx") -- return SourceFile::SOURCE_CPP; -- if (extension == "h" || extension == "hpp" || extension == "hxx" || -- extension == "hh" || extension == "inc") -- return SourceFile::SOURCE_H; -- if (extension == "c") -- return SourceFile::SOURCE_C; -- if (extension == "m") -- return SourceFile::SOURCE_M; -- if (extension == "mm") -- return SourceFile::SOURCE_MM; -- if (extension == "rc") -- return SourceFile::SOURCE_RC; -- if (extension == "S" || extension == "s" || extension == "asm") -- return SourceFile::SOURCE_S; -- if (extension == "o" || extension == "obj") -- return SourceFile::SOURCE_O; -- if (extension == "def") -- return SourceFile::SOURCE_DEF; -- if (extension == "rs") -- return SourceFile::SOURCE_RS; -- if (extension == "go") -- return SourceFile::SOURCE_GO; -- -- return SourceFile::SOURCE_UNKNOWN; --} -- - } // namespace - --SourceFile::SourceFile() : type_(SOURCE_UNKNOWN) {} -+SourceFile::SourceFile() = default; - - SourceFile::SourceFile(const base::StringPiece& p) -- : value_(p.data(), p.size()), type_(GetSourceFileType(value_)) { -+ : value_(p.data(), p.size()) { - DCHECK(!value_.empty()); - AssertValueSourceFileString(value_); - NormalizePath(&value_); - } - --SourceFile::SourceFile(SwapIn, std::string* value) -- : type_(GetSourceFileType(*value)) { -+SourceFile::SourceFile(SwapIn, std::string* value) { - value_.swap(*value); - DCHECK(!value_.empty()); - AssertValueSourceFileString(value_); ---- a/tools/gn/tools/gn/source_file.h -+++ b/tools/gn/tools/gn/source_file.h -@@ -20,28 +20,6 @@ class SourceDir; - // ends in one. - class SourceFile { - public: -- // This should be sequential integers starting from 0 so they can be used as -- // array indices. -- enum Type { -- SOURCE_UNKNOWN = 0, -- SOURCE_ASM, -- SOURCE_C, -- SOURCE_CPP, -- SOURCE_H, -- SOURCE_M, -- SOURCE_MM, -- SOURCE_S, -- SOURCE_RC, -- SOURCE_O, // Object files can be inputs, too. Also counts .obj. -- SOURCE_DEF, -- -- SOURCE_RS, -- SOURCE_GO, -- -- // Must be last. -- SOURCE_NUMTYPES, -- }; -- - enum SwapIn { SWAP_IN }; - - SourceFile(); -@@ -58,7 +36,6 @@ class SourceFile { - - bool is_null() const { return value_.empty(); } - const std::string& value() const { return value_; } -- Type type() const { return type_; } - - // Returns everything after the last slash. - std::string GetName() const; -@@ -103,7 +80,6 @@ class SourceFile { - friend class SourceDir; - - std::string value_; -- Type type_; - - // Copy & assign supported. - }; ---- /dev/null -+++ b/tools/gn/tools/gn/source_file_type.cc -@@ -0,0 +1,37 @@ -+// Copyright 2014 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. -+ -+#include "tools/gn/source_file_type.h" -+ -+#include "tools/gn/filesystem_utils.h" -+#include "tools/gn/source_file.h" -+ -+SourceFileType GetSourceFileType(const SourceFile& file) { -+ base::StringPiece extension = FindExtension(&file.value()); -+ if (extension == "cc" || extension == "cpp" || extension == "cxx") -+ return SOURCE_CPP; -+ if (extension == "h" || extension == "hpp" || extension == "hxx" || -+ extension == "hh") -+ return SOURCE_H; -+ if (extension == "c") -+ return SOURCE_C; -+ if (extension == "m") -+ return SOURCE_M; -+ if (extension == "mm") -+ return SOURCE_MM; -+ if (extension == "rc") -+ return SOURCE_RC; -+ if (extension == "S" || extension == "s" || extension == "asm") -+ return SOURCE_S; -+ if (extension == "o" || extension == "obj") -+ return SOURCE_O; -+ if (extension == "def") -+ return SOURCE_DEF; -+ if (extension == "rs") -+ return SOURCE_RS; -+ if (extension == "go") -+ return SOURCE_GO; -+ -+ return SOURCE_UNKNOWN; -+} ---- /dev/null -+++ b/tools/gn/tools/gn/source_file_type.h -@@ -0,0 +1,34 @@ -+// Copyright 2014 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. -+ -+#ifndef TOOLS_GN_SOURCE_FILE_TYPE_H_ -+#define TOOLS_GN_SOURCE_FILE_TYPE_H_ -+ -+class SourceFile; -+ -+// This should be sequential integers starting from 0 so they can be used as -+// array indices. -+enum SourceFileType { -+ SOURCE_UNKNOWN = 0, -+ SOURCE_ASM, -+ SOURCE_C, -+ SOURCE_CPP, -+ SOURCE_H, -+ SOURCE_M, -+ SOURCE_MM, -+ SOURCE_S, -+ SOURCE_RC, -+ SOURCE_O, // Object files can be inputs, too. Also counts .obj. -+ SOURCE_DEF, -+ -+ SOURCE_RS, -+ SOURCE_GO, -+ -+ // Must be last. -+ SOURCE_NUMTYPES, -+}; -+ -+SourceFileType GetSourceFileType(const SourceFile& file); -+ -+#endif // TOOLS_GN_SOURCE_FILE_TYPE_H_ ---- a/tools/gn/tools/gn/target.cc -+++ b/tools/gn/tools/gn/target.cc -@@ -16,6 +16,7 @@ - #include "tools/gn/filesystem_utils.h" - #include "tools/gn/functions.h" - #include "tools/gn/scheduler.h" -+#include "tools/gn/source_file_type.h" - #include "tools/gn/substitution_writer.h" - #include "tools/gn/tool.h" - #include "tools/gn/toolchain.h" -@@ -486,10 +487,10 @@ bool Target::GetOutputFilesForSource(con - outputs->clear(); - *computed_tool_type = Tool::kToolNone; - -- SourceFile::Type file_type = source.type(); -- if (file_type == SourceFile::SOURCE_UNKNOWN) -+ SourceFileType file_type = GetSourceFileType(source); -+ if (file_type == SOURCE_UNKNOWN) - return false; -- if (file_type == SourceFile::SOURCE_O) { -+ if (file_type == SOURCE_O) { - // Object files just get passed to the output and not compiled. - outputs->push_back(OutputFile(settings()->build_settings(), source)); - return true; ---- a/tools/gn/tools/gn/tool.cc -+++ b/tools/gn/tools/gn/tool.cc -@@ -261,27 +261,27 @@ std::unique_ptr Tool::CreateTool(c - } - - // static --const char* Tool::GetToolTypeForSourceType(SourceFile::Type type) { -+const char* Tool::GetToolTypeForSourceType(SourceFileType type) { - switch (type) { -- case SourceFile::SOURCE_C: -+ case SOURCE_C: - return CTool::kCToolCc; -- case SourceFile::SOURCE_CPP: -+ case SOURCE_CPP: - return CTool::kCToolCxx; -- case SourceFile::SOURCE_M: -+ case SOURCE_M: - return CTool::kCToolObjC; -- case SourceFile::SOURCE_MM: -+ case SOURCE_MM: - return CTool::kCToolObjCxx; -- case SourceFile::SOURCE_ASM: -- case SourceFile::SOURCE_S: -+ case SOURCE_ASM: -+ case SOURCE_S: - return CTool::kCToolAsm; -- case SourceFile::SOURCE_RC: -+ case SOURCE_RC: - return CTool::kCToolRc; -- case SourceFile::SOURCE_UNKNOWN: -- case SourceFile::SOURCE_H: -- case SourceFile::SOURCE_O: -- case SourceFile::SOURCE_DEF: -- case SourceFile::SOURCE_GO: -- case SourceFile::SOURCE_RS: -+ case SOURCE_UNKNOWN: -+ case SOURCE_H: -+ case SOURCE_O: -+ case SOURCE_DEF: -+ case SOURCE_GO: -+ case SOURCE_RS: - return kToolNone; - default: - NOTREACHED(); ---- a/tools/gn/tools/gn/tool.h -+++ b/tools/gn/tools/gn/tool.h -@@ -12,7 +12,7 @@ - #include "tools/gn/label.h" - #include "tools/gn/label_ptr.h" - #include "tools/gn/scope.h" --#include "tools/gn/source_file.h" -+#include "tools/gn/source_file_type.h" - #include "tools/gn/substitution_list.h" - #include "tools/gn/substitution_pattern.h" - -@@ -171,7 +171,7 @@ class Tool { - Toolchain* toolchain, - Err* err); - -- static const char* GetToolTypeForSourceType(SourceFile::Type type); -+ static const char* GetToolTypeForSourceType(SourceFileType type); - static const char* GetToolTypeForTargetFinalOutput(const Target* target); - - protected: ---- a/tools/gn/tools/gn/toolchain.cc -+++ b/tools/gn/tools/gn/toolchain.cc -@@ -88,16 +88,16 @@ void Toolchain::ToolchainSetupComplete() - setup_complete_ = true; - } - --const Tool* Toolchain::GetToolForSourceType(SourceFile::Type type) const { -+const Tool* Toolchain::GetToolForSourceType(SourceFileType type) const { - return GetTool(Tool::GetToolTypeForSourceType(type)); - } - --const CTool* Toolchain::GetToolForSourceTypeAsC(SourceFile::Type type) const { -+const CTool* Toolchain::GetToolForSourceTypeAsC(SourceFileType type) const { - return GetToolAsC(Tool::GetToolTypeForSourceType(type)); - } - - const GeneralTool* Toolchain::GetToolForSourceTypeAsGeneral( -- SourceFile::Type type) const { -+ SourceFileType type) const { - return GetToolAsGeneral(Tool::GetToolTypeForSourceType(type)); - } - ---- a/tools/gn/tools/gn/toolchain.h -+++ b/tools/gn/tools/gn/toolchain.h -@@ -12,6 +12,7 @@ - #include "tools/gn/item.h" - #include "tools/gn/label_ptr.h" - #include "tools/gn/scope.h" -+#include "tools/gn/source_file_type.h" - #include "tools/gn/substitution_type.h" - #include "tools/gn/tool.h" - #include "tools/gn/value.h" -@@ -87,9 +88,9 @@ class Toolchain : public Item { - } - - // Returns the tool for compiling the given source file type. -- const Tool* GetToolForSourceType(SourceFile::Type type) const; -- const CTool* GetToolForSourceTypeAsC(SourceFile::Type type) const; -- const GeneralTool* GetToolForSourceTypeAsGeneral(SourceFile::Type type) const; -+ const Tool* GetToolForSourceType(SourceFileType type) const; -+ const CTool* GetToolForSourceTypeAsC(SourceFileType type) const; -+ const GeneralTool* GetToolForSourceTypeAsGeneral(SourceFileType type) const; - - // Returns the tool that produces the final output for the given target type. - // This isn't necessarily the tool you would expect. For copy target, this ---- a/tools/gn/tools/gn/visual_studio_writer.cc -+++ b/tools/gn/tools/gn/visual_studio_writer.cc -@@ -24,6 +24,7 @@ - #include "tools/gn/label_pattern.h" - #include "tools/gn/parse_tree.h" - #include "tools/gn/path_output.h" -+#include "tools/gn/source_file_type.h" - #include "tools/gn/standard_out.h" - #include "tools/gn/target.h" - #include "tools/gn/variables.h" diff --git a/revert-gn-4980.patch b/revert-gn-4980.patch deleted file mode 100644 index fe550e9..0000000 --- a/revert-gn-4980.patch +++ /dev/null @@ -1,134 +0,0 @@ -Description: revert https://gn.googlesource.com/gn/+/8730b0feb6b991fa47368566501ab9ccfb453c92, which breaks the chromium build - ---- a/tools/gn/tools/gn/binary_target_generator.cc -+++ b/tools/gn/tools/gn/binary_target_generator.cc -@@ -68,38 +68,6 @@ void BinaryTargetGenerator::DoRun() { - return; - } - --bool BinaryTargetGenerator::FillSources() { -- bool ret = TargetGenerator::FillSources(); -- for (std::size_t i = 0; i < target_->sources().size(); ++i) { -- const auto& source = target_->sources()[i]; -- switch (source.type()) { -- case SourceFile::SOURCE_CPP: -- case SourceFile::SOURCE_H: -- case SourceFile::SOURCE_C: -- case SourceFile::SOURCE_M: -- case SourceFile::SOURCE_MM: -- case SourceFile::SOURCE_S: -- case SourceFile::SOURCE_ASM: -- case SourceFile::SOURCE_O: -- // These are allowed. -- break; -- case SourceFile::SOURCE_RC: -- case SourceFile::SOURCE_DEF: -- case SourceFile::SOURCE_RS: -- case SourceFile::SOURCE_GO: -- case SourceFile::SOURCE_UNKNOWN: -- case SourceFile::SOURCE_NUMTYPES: -- *err_ = -- Err(scope_->GetValue(variables::kSources, true)->list_value()[i], -- std::string("Only source, header, and object files belong in " -- "the sources of a ") + -- Target::GetStringForOutputType(target_->output_type()) + -- ". " + source.value() + " is not one of the valid types."); -- } -- } -- return ret; --} -- - bool BinaryTargetGenerator::FillCompleteStaticLib() { - if (target_->output_type() == Target::STATIC_LIBRARY) { - const Value* value = scope_->GetValue(variables::kCompleteStaticLib, true); ---- a/tools/gn/tools/gn/binary_target_generator.h -+++ b/tools/gn/tools/gn/binary_target_generator.h -@@ -22,7 +22,6 @@ class BinaryTargetGenerator : public Tar - - protected: - void DoRun() override; -- bool FillSources() override; - - private: - bool FillCompleteStaticLib(); ---- a/tools/gn/tools/gn/source_dir.cc -+++ b/tools/gn/tools/gn/source_dir.cc -@@ -98,10 +98,10 @@ SourceFile SourceDir::ResolveRelativeFil - return ret; - - const std::string& input_string = p.string_value(); -- if (!ValidateResolveInput(true, p, input_string, err)) -+ if (!ValidateResolveInput(true, p, input_string, err)) { - return ret; -- -- ret.SetValue(ResolveRelative(input_string, value_, true, source_root)); -+ } -+ ret.value_ = ResolveRelative(input_string, value_, true, source_root); - return ret; - } - ---- a/tools/gn/tools/gn/source_file.cc -+++ b/tools/gn/tools/gn/source_file.cc -@@ -55,19 +55,18 @@ SourceFile::Type GetSourceFileType(const - SourceFile::SourceFile() : type_(SOURCE_UNKNOWN) {} - - SourceFile::SourceFile(const base::StringPiece& p) -- : value_(p.data(), p.size()) { -+ : value_(p.data(), p.size()), type_(GetSourceFileType(value_)) { - DCHECK(!value_.empty()); - AssertValueSourceFileString(value_); - NormalizePath(&value_); -- type_ = GetSourceFileType(value_); - } - --SourceFile::SourceFile(SwapIn, std::string* value) { -+SourceFile::SourceFile(SwapIn, std::string* value) -+ : type_(GetSourceFileType(*value)) { - value_.swap(*value); - DCHECK(!value_.empty()); - AssertValueSourceFileString(value_); - NormalizePath(&value_); -- type_ = GetSourceFileType(value_); - } - - SourceFile::~SourceFile() = default; -@@ -93,8 +92,3 @@ SourceDir SourceFile::GetDir() const { - base::FilePath SourceFile::Resolve(const base::FilePath& source_root) const { - return ResolvePath(value_, true, source_root); - } -- --void SourceFile::SetValue(const std::string& value) { -- value_ = value; -- type_ = GetSourceFileType(value_); --} ---- a/tools/gn/tools/gn/source_file.h -+++ b/tools/gn/tools/gn/source_file.h -@@ -97,16 +97,11 @@ class SourceFile { - return value_ < other.value_; - } - -- void swap(SourceFile& other) { -- value_.swap(other.value_); -- std::swap(type_, other.type_); -- } -+ void swap(SourceFile& other) { value_.swap(other.value_); } - - private: - friend class SourceDir; - -- void SetValue(const std::string& value); -- - std::string value_; - Type type_; - ---- a/tools/gn/tools/gn/target_generator.h -+++ b/tools/gn/tools/gn/target_generator.h -@@ -47,7 +47,7 @@ class TargetGenerator { - - const BuildSettings* GetBuildSettings() const; - -- virtual bool FillSources(); -+ bool FillSources(); - bool FillPublic(); - bool FillConfigs(); - bool FillOutputs(bool allow_substitutions); From 59fa23497a78f39749bcdada409c23a7e41a57c4 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 13 Aug 2019 07:05:33 +0200 Subject: [PATCH 0370/1449] Update to 76.0.3809.100 --- .gitignore | 1 + ...4.116-libusb_interrupt_event_handler.patch | 15 - chromium-55.0.2883.75-cups22.patch | 29 -- chromium-66.0.3359.117-missing-files.patch | 272 ------------------ ...um-73.0.3683.75-pipewire-cstring-fix.patch | 11 - ...9.100-libusb_interrupt_event_handler.patch | 15 + chromium.spec | 32 +-- sources | 2 +- 8 files changed, 24 insertions(+), 353 deletions(-) delete mode 100644 chromium-48.0.2564.116-libusb_interrupt_event_handler.patch delete mode 100644 chromium-55.0.2883.75-cups22.patch delete mode 100644 chromium-66.0.3359.117-missing-files.patch delete mode 100644 chromium-73.0.3683.75-pipewire-cstring-fix.patch create mode 100644 chromium-76.0.3809.100-libusb_interrupt_event_handler.patch diff --git a/.gitignore b/.gitignore index 61d44ef..2bfdc54 100644 --- a/.gitignore +++ b/.gitignore @@ -81,3 +81,4 @@ /chromium-75.0.3770.80-clean.tar.xz /chromium-75.0.3770.90-clean.tar.xz /chromium-75.0.3770.100-clean.tar.xz +/chromium-76.0.3809.100-clean.tar.xz diff --git a/chromium-48.0.2564.116-libusb_interrupt_event_handler.patch b/chromium-48.0.2564.116-libusb_interrupt_event_handler.patch deleted file mode 100644 index d0b2484..0000000 --- a/chromium-48.0.2564.116-libusb_interrupt_event_handler.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -up chromium-48.0.2564.116/device/usb/usb_context.cc.modern-libusbx chromium-48.0.2564.116/device/usb/usb_context.cc ---- chromium-48.0.2564.116/device/usb/usb_context.cc.modern-libusbx 2016-02-24 10:21:10.534996028 -0500 -+++ chromium-48.0.2564.116/device/usb/usb_context.cc 2016-02-24 10:22:28.270499864 -0500 -@@ -57,7 +57,11 @@ void UsbContext::UsbEventHandler::Run() - - void UsbContext::UsbEventHandler::Stop() { - base::subtle::Release_Store(&running_, 0); -+#ifdef LIBUSB_API_VERSION >= 0x01000105 -+ libusb_interrupt_event_handler(context_); -+#else - libusb_interrupt_handle_event(context_); -+#endif - } - - UsbContext::UsbContext(PlatformUsbContext context) : context_(context) { diff --git a/chromium-55.0.2883.75-cups22.patch b/chromium-55.0.2883.75-cups22.patch deleted file mode 100644 index d1a2bf8..0000000 --- a/chromium-55.0.2883.75-cups22.patch +++ /dev/null @@ -1,29 +0,0 @@ -diff -up chromium-52.0.2743.82/printing/backend/print_backend_cups.cc.cups22 chromium-52.0.2743.82/printing/backend/print_backend_cups.cc ---- chromium-52.0.2743.82/printing/backend/print_backend_cups.cc.cups22 2016-07-22 09:20:15.794340886 -0400 -+++ chromium-52.0.2743.82/printing/backend/print_backend_cups.cc 2016-07-22 09:20:26.338261197 -0400 -@@ -16,6 +16,7 @@ - #include "base/synchronization/lock.h" - #include "base/values.h" - #include "printing/backend/cups_helper.h" -+#include - #include "printing/backend/print_backend_consts.h" - #include "url/gurl.h" - -diff -up chromium-52.0.2743.82/printing/BUILD.gn.cups22 chromium-52.0.2743.82/printing/BUILD.gn ---- chromium-52.0.2743.82/printing/BUILD.gn.cups22 2016-07-21 11:27:05.597507544 -0400 -+++ chromium-52.0.2743.82/printing/BUILD.gn 2016-07-21 14:36:45.574137758 -0400 -@@ -147,12 +147,13 @@ component("printing") { - ], - "trim string") - -- if (cups_version == "1.6" || cups_version == "1.7") { -+ if (cups_version == "1.6" || cups_version == "1.7" || cups_version == "2.2") { - cflags += [ - # CUPS 1.6 deprecated the PPD APIs, but we will stay with this - # API for now as supported Linux and Mac OS'es are still using - # older versions of CUPS. More info: crbug.com/226176 - "-Wno-deprecated-declarations", -+ "-D_PPD_DEPRECATED=", - # CUPS 1.7 deprecates httpConnectEncrypt(), see the mac section - # below. - ] diff --git a/chromium-66.0.3359.117-missing-files.patch b/chromium-66.0.3359.117-missing-files.patch deleted file mode 100644 index 746d56e..0000000 --- a/chromium-66.0.3359.117-missing-files.patch +++ /dev/null @@ -1,272 +0,0 @@ -diff -up chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/__init__.py.missing chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/__init__.py ---- chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/__init__.py.missing 2018-04-19 09:51:46.165723235 -0400 -+++ chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/__init__.py 2018-04-19 09:51:46.171723115 -0400 -@@ -0,0 +1,3 @@ -+# 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-66.0.3359.117/third_party/blink/tools/blinkpy/common/name_style_converter.py.missing chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/name_style_converter.py ---- chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/name_style_converter.py.missing 2018-04-19 09:51:46.171723115 -0400 -+++ chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/name_style_converter.py 2018-04-19 09:51:46.172723095 -0400 -@@ -0,0 +1,110 @@ -+# 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. -+# pylint: disable=import-error,print-statement,relative-import -+import re -+SPECIAL_TOKENS = [ -+ # This list should be sorted by length. -+ 'CString', -+ 'Float32', -+ 'Float64', -+ 'Base64', -+ 'IFrame', -+ 'Latin1', -+ 'PlugIn', -+ 'SQLite', -+ 'Uint16', -+ 'Uint32', -+ 'WebGL2', -+ 'ASCII', -+ 'CType', -+ 'DList', -+ 'Int16', -+ 'Int32', -+ 'MPath', -+ 'OList', -+ 'TSpan', -+ 'UList', -+ 'UTF16', -+ 'Uint8', -+ 'WebGL', -+ 'XPath', -+ 'ETC1', -+ 'HTML', -+ 'Int8', -+ 'S3TC', -+ 'SPv2', -+ 'UTF8', -+ 'API', -+ 'CSS', -+ 'DOM', -+ 'EXT', -+ 'RTC', -+ 'SVG', -+ '2D', -+ 'AX', -+ 'V0', -+ 'V8', -+] -+MATCHING_EXPRESSION = '((?:[A-Z][a-z]+)|[0-9]D?$)' -+class SmartTokenizer(object): -+ """Detects special cases that are not easily discernible without additional -+ knowledge, such as recognizing that in SVGSVGElement, the first two SVGs -+ are separate tokens, but WebGL is one token.""" -+ def __init__(self, name): -+ self.remaining = name -+ def tokenize(self): -+ name = self.remaining -+ tokens = [] -+ while len(name) > 0: -+ matched_token = None -+ for token in SPECIAL_TOKENS: -+ if name.startswith(token): -+ matched_token = token -+ break -+ if not matched_token: -+ match = re.search(MATCHING_EXPRESSION, name) -+ if not match: -+ matched_token = name -+ elif match.start(0) != 0: -+ matched_token = name[:match.start(0)] -+ else: -+ matched_token = match.group(0) -+ tokens.append(name[:len(matched_token)]) -+ name = name[len(matched_token):] -+ return tokens -+class NameStyleConverter(object): -+ """Converts names from camelCase to various other styles. -+ """ -+ def __init__(self, name): -+ self.tokens = self.tokenize(name) -+ def tokenize(self, name): -+ tokenizer = SmartTokenizer(name) -+ return tokenizer.tokenize() -+ def to_snake_case(self): -+ """Snake case is the file and variable name style per Google C++ Style -+ Guide: -+ https://google.github.io/styleguide/cppguide.html#Variable_Names -+ Also known as the hacker case. -+ https://en.wikipedia.org/wiki/Snake_case -+ """ -+ return '_'.join([token.lower() for token in self.tokens]) -+ def to_upper_camel_case(self): -+ """Upper-camel case is the class and function name style per -+ Google C++ Style Guide: -+ https://google.github.io/styleguide/cppguide.html#Function_Names -+ Also known as the PascalCase. -+ https://en.wikipedia.org/wiki/Camel_case. -+ """ -+ return ''.join([token[0].upper() + token[1:] for token in self.tokens]) -+ def to_macro_case(self): -+ """Macro case is the macro name style per Google C++ Style Guide: -+ https://google.github.io/styleguide/cppguide.html#Macro_Names -+ """ -+ return '_'.join([token.upper() for token in self.tokens]) -+ def to_all_cases(self): -+ return { -+ 'snake_case': self.to_snake_case(), -+ 'upper_camel_case': self.to_upper_camel_case(), -+ 'macro_case': self.to_macro_case(), -+ } -diff -up chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/name_style_converter_test.py.missing chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/name_style_converter_test.py ---- chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/name_style_converter_test.py.missing 2018-04-19 09:51:46.172723095 -0400 -+++ chromium-66.0.3359.117/third_party/blink/tools/blinkpy/common/name_style_converter_test.py 2018-04-19 09:51:46.173723075 -0400 -@@ -0,0 +1,140 @@ -+# 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. -+# pylint: disable=import-error,print-statement,relative-import,protected-access -+"""Unit tests for name_style_converter.py.""" -+import unittest -+from name_style_converter import NameStyleConverter -+from name_style_converter import SmartTokenizer -+class SmartTokenizerTest(unittest.TestCase): -+ def test_simple_cases(self): -+ tokenizer = SmartTokenizer('foo') -+ self.assertEqual(tokenizer.tokenize(), ['foo']) -+ tokenizer = SmartTokenizer('fooBar') -+ self.assertEqual(tokenizer.tokenize(), ['foo', 'Bar']) -+ tokenizer = SmartTokenizer('fooBarBaz') -+ self.assertEqual(tokenizer.tokenize(), ['foo', 'Bar', 'Baz']) -+ tokenizer = SmartTokenizer('Baz') -+ self.assertEqual(tokenizer.tokenize(), ['Baz']) -+ tokenizer = SmartTokenizer('') -+ self.assertEqual(tokenizer.tokenize(), []) -+ tokenizer = SmartTokenizer('FOO') -+ self.assertEqual(tokenizer.tokenize(), ['FOO']) -+ tokenizer = SmartTokenizer('foo2') -+ self.assertEqual(tokenizer.tokenize(), ['foo', '2']) -+ def test_tricky_cases(self): -+ tokenizer = SmartTokenizer('XMLHttpRequest') -+ self.assertEqual(tokenizer.tokenize(), ['XML', 'Http', 'Request']) -+ tokenizer = SmartTokenizer('HTMLElement') -+ self.assertEqual(tokenizer.tokenize(), ['HTML', 'Element']) -+ tokenizer = SmartTokenizer('WebGLRenderingContext') -+ self.assertEqual(tokenizer.tokenize(), -+ ['WebGL', 'Rendering', 'Context']) -+ tokenizer = SmartTokenizer('CanvasRenderingContext2D') -+ self.assertEqual(tokenizer.tokenize(), -+ ['Canvas', 'Rendering', 'Context', '2D']) -+ tokenizer = SmartTokenizer('CanvasRenderingContext2DAPITest') -+ self.assertEqual(tokenizer.tokenize(), -+ ['Canvas', 'Rendering', 'Context', '2D', 'API', 'Test']) -+ tokenizer = SmartTokenizer('SVGSVGElement') -+ self.assertEqual(tokenizer.tokenize(), ['SVG', 'SVG', 'Element']) -+ tokenizer = SmartTokenizer('CanvasRenderingContext2D') -+ self.assertEqual(tokenizer.tokenize(), ['Canvas', 'Rendering', 'Context', '2D']) -+ tokenizer = SmartTokenizer('CSSURLImageValue') -+ self.assertEqual(tokenizer.tokenize(), ['CSS', 'URL', 'Image', 'Value']) -+ tokenizer = SmartTokenizer('CSSPropertyAPID') -+ self.assertEqual(tokenizer.tokenize(), ['CSS', 'Property', 'API', 'D']) -+ tokenizer = SmartTokenizer('AXARIAGridCell') -+ self.assertEqual(tokenizer.tokenize(), ['AX', 'ARIA', 'Grid', 'Cell']) -+ tokenizer = SmartTokenizer('CDATASection') -+ self.assertEqual(tokenizer.tokenize(), ['CDATA', 'Section']) -+ tokenizer = SmartTokenizer('ASCIICType') -+ self.assertEqual(tokenizer.tokenize(), ['ASCII', 'CType']) -+ tokenizer = SmartTokenizer('CString') -+ self.assertEqual(tokenizer.tokenize(), ['CString']) -+ tokenizer = SmartTokenizer('HTMLDListElement') -+ self.assertEqual(tokenizer.tokenize(), ['HTML', 'DList', 'Element']) -+ tokenizer = SmartTokenizer('HTMLOListElement') -+ self.assertEqual(tokenizer.tokenize(), ['HTML', 'OList', 'Element']) -+ tokenizer = SmartTokenizer('HTMLIFrameElement') -+ self.assertEqual(tokenizer.tokenize(), ['HTML', 'IFrame', 'Element']) -+ tokenizer = SmartTokenizer('HTMLPlugInElement') -+ self.assertEqual(tokenizer.tokenize(), ['HTML', 'PlugIn', 'Element']) -+ # No special handling for OptGroup, FieldSet, and TextArea. -+ tokenizer = SmartTokenizer('HTMLOptGroupElement') -+ self.assertEqual(tokenizer.tokenize(), ['HTML', 'Opt', 'Group', 'Element']) -+ tokenizer = SmartTokenizer('HTMLFieldSetElement') -+ self.assertEqual(tokenizer.tokenize(), ['HTML', 'Field', 'Set', 'Element']) -+ tokenizer = SmartTokenizer('HTMLTextAreaElement') -+ self.assertEqual(tokenizer.tokenize(), ['HTML', 'Text', 'Area', 'Element']) -+ tokenizer = SmartTokenizer('Path2D') -+ self.assertEqual(tokenizer.tokenize(), ['Path', '2D']) -+ tokenizer = SmartTokenizer('Point2D') -+ self.assertEqual(tokenizer.tokenize(), ['Point', '2D']) -+ tokenizer = SmartTokenizer('CanvasRenderingContext2DState') -+ self.assertEqual(tokenizer.tokenize(), ['Canvas', 'Rendering', 'Context', '2D', 'State']) -+ tokenizer = SmartTokenizer('RTCDTMFSender') -+ self.assertEqual(tokenizer.tokenize(), ['RTC', 'DTMF', 'Sender']) -+ tokenizer = SmartTokenizer('WebGLCompressedTextureS3TCsRGB') -+ self.assertEqual(tokenizer.tokenize(), ['WebGL', 'Compressed', 'Texture', 'S3TC', 'sRGB']) -+ tokenizer = SmartTokenizer('WebGL2CompressedTextureETC1') -+ self.assertEqual(tokenizer.tokenize(), ['WebGL2', 'Compressed', 'Texture', 'ETC1']) -+ tokenizer = SmartTokenizer('EXTsRGB') -+ self.assertEqual(tokenizer.tokenize(), ['EXT', 'sRGB']) -+ tokenizer = SmartTokenizer('SVGFEBlendElement') -+ self.assertEqual(tokenizer.tokenize(), ['SVG', 'FE', 'Blend', 'Element']) -+ tokenizer = SmartTokenizer('SVGMPathElement') -+ self.assertEqual(tokenizer.tokenize(), ['SVG', 'MPath', 'Element']) -+ tokenizer = SmartTokenizer('SVGTSpanElement') -+ self.assertEqual(tokenizer.tokenize(), ['SVG', 'TSpan', 'Element']) -+ tokenizer = SmartTokenizer('SVGURIReference') -+ self.assertEqual(tokenizer.tokenize(), ['SVG', 'URI', 'Reference']) -+ tokenizer = SmartTokenizer('UTF16TextIterator') -+ self.assertEqual(tokenizer.tokenize(), ['UTF16', 'Text', 'Iterator']) -+ tokenizer = SmartTokenizer('UTF8Decoder') -+ self.assertEqual(tokenizer.tokenize(), ['UTF8', 'Decoder']) -+ tokenizer = SmartTokenizer('Uint8Array') -+ self.assertEqual(tokenizer.tokenize(), ['Uint8', 'Array']) -+ tokenizer = SmartTokenizer('DOMWindowBase64') -+ self.assertEqual(tokenizer.tokenize(), ['DOM', 'Window', 'Base64']) -+ tokenizer = SmartTokenizer('TextCodecLatin1') -+ self.assertEqual(tokenizer.tokenize(), ['Text', 'Codec', 'Latin1']) -+ tokenizer = SmartTokenizer('V8BindingForCore') -+ self.assertEqual(tokenizer.tokenize(), ['V8', 'Binding', 'For', 'Core']) -+ tokenizer = SmartTokenizer('V8DOMRect') -+ self.assertEqual(tokenizer.tokenize(), ['V8', 'DOM', 'Rect']) -+ tokenizer = SmartTokenizer('V0InsertionPoint') -+ self.assertEqual(tokenizer.tokenize(), ['V0', 'Insertion', 'Point']) -+ tokenizer = SmartTokenizer('ShadowDOMV0Test') -+ self.assertEqual(tokenizer.tokenize(), ['Shadow', 'DOM', 'V0', 'Test']) -+ tokenizer = SmartTokenizer('ElementShadowV0') -+ self.assertEqual(tokenizer.tokenize(), ['Element', 'Shadow', 'V0']) -+ tokenizer = SmartTokenizer('StubChromeClientForSPv2') -+ self.assertEqual(tokenizer.tokenize(), ['Stub', 'Chrome', 'Client', 'For', 'SPv2']) -+ tokenizer = SmartTokenizer('SQLiteAuthorizer') -+ self.assertEqual(tokenizer.tokenize(), ['SQLite', 'Authorizer']) -+ tokenizer = SmartTokenizer('XPathEvaluator') -+ self.assertEqual(tokenizer.tokenize(), ['XPath', 'Evaluator']) -+ tokenizer = SmartTokenizer('IsXHTMLDocument') -+ self.assertEqual(tokenizer.tokenize(), ['Is', 'XHTML', 'Document']) -+ tokenizer = SmartTokenizer('Animation.idl') -+ self.assertEqual(tokenizer.tokenize(), ['Animation', '.idl']) -+class NameStyleConverterTest(unittest.TestCase): -+ def test_snake_case(self): -+ converter = NameStyleConverter('HTMLElement') -+ self.assertEqual(converter.to_snake_case(), 'html_element') -+ def test_upper_camel_case(self): -+ converter = NameStyleConverter('someSuperThing') -+ self.assertEqual(converter.to_upper_camel_case(), 'SomeSuperThing') -+ converter = NameStyleConverter('SVGElement') -+ self.assertEqual(converter.to_upper_camel_case(), 'SVGElement') -+ def test_macro_case(self): -+ converter = NameStyleConverter('WebGLBaz2D') -+ self.assertEqual(converter.to_macro_case(), 'WEBGL_BAZ_2D') -+ def test_all_cases(self): -+ converter = NameStyleConverter('SVGScriptElement') -+ self.assertEqual(converter.to_all_cases(), { -+ 'snake_case': 'svg_script_element', -+ 'upper_camel_case': 'SVGScriptElement', -+ 'macro_case': 'SVG_SCRIPT_ELEMENT', -+ }) -diff -up chromium-66.0.3359.117/third_party/blink/tools/blinkpy/__init__.py.missing chromium-66.0.3359.117/third_party/blink/tools/blinkpy/__init__.py ---- chromium-66.0.3359.117/third_party/blink/tools/blinkpy/__init__.py.missing 2018-04-19 11:34:40.621293007 -0400 -+++ chromium-66.0.3359.117/third_party/blink/tools/blinkpy/__init__.py 2018-04-19 11:34:34.440413163 -0400 -@@ -0,0 +1,3 @@ -+# 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 --git a/chromium-73.0.3683.75-pipewire-cstring-fix.patch b/chromium-73.0.3683.75-pipewire-cstring-fix.patch deleted file mode 100644 index ce8b70b..0000000 --- a/chromium-73.0.3683.75-pipewire-cstring-fix.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-73.0.3683.75/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc.cstringfix chromium-73.0.3683.75/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc ---- chromium-73.0.3683.75/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc.cstringfix 2019-03-13 13:04:25.290842447 -0400 -+++ chromium-73.0.3683.75/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc 2019-03-13 13:05:13.234897441 -0400 -@@ -18,6 +18,7 @@ - #include - #include - -+#include - #include - #include - diff --git a/chromium-76.0.3809.100-libusb_interrupt_event_handler.patch b/chromium-76.0.3809.100-libusb_interrupt_event_handler.patch new file mode 100644 index 0000000..690f0f9 --- /dev/null +++ b/chromium-76.0.3809.100-libusb_interrupt_event_handler.patch @@ -0,0 +1,15 @@ +diff -up chromium-76.0.3809.100/services/device/usb/usb_context.cc.modern-libusbx chromium-76.0.3809.100/services/device/usb/usb_context.cc +--- chromium-76.0.3809.100/services/device/usb/usb_context.cc.modern-libusbx 2019-08-12 15:40:49.034170484 +0200 ++++ chromium-76.0.3809.100/services/device/usb/usb_context.cc 2019-08-12 15:41:23.775558867 +0200 +@@ -58,7 +58,11 @@ void UsbContext::UsbEventHandler::Run() + + void UsbContext::UsbEventHandler::Stop() { + base::subtle::Release_Store(&running_, 0); ++#ifdef LIBUSB_API_VERSION >= 0x01000105 ++ libusb_interrupt_event_handler(context_); ++#else + libusb_interrupt_handle_event(context_); ++#endif + } + + UsbContext::UsbContext(PlatformUsbContext context) : context_(context) { diff --git a/chromium.spec b/chromium.spec index d734490..1d3a256 100644 --- a/chromium.spec +++ b/chromium.spec @@ -157,15 +157,15 @@ BuildRequires: libicu-devel >= 5.4 %global chromoting_client_id %nil %endif -%global majorversion 75 +%global majorversion 76 %if %{freeworld} Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3770.100 -Release: 4%{?dist} +Version: %{majorversion}.0.3809.100 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -176,10 +176,7 @@ Patch1: chromium-45.0.2454.101-linux-path-max.patch Patch2: chromium-55.0.2883.75-addrfix.patch Patch3: chromium-72.0.3626.121-notest.patch # Use libusb_interrupt_event_handler from current libusbx (1.0.21-0.1.git448584a) -Patch4: chromium-48.0.2564.116-libusb_interrupt_event_handler.patch -# Ignore deprecations in cups 2.2 -# https://bugs.chromium.org/p/chromium/issues/detail?id=622493 -Patch5: chromium-55.0.2883.75-cups22.patch +Patch4: chromium-76.0.3809.100-libusb_interrupt_event_handler.patch # Use PIE in the Linux sandbox (from openSUSE via Russian Fedora) Patch6: chromium-70.0.3538.67-sandbox-pie.patch # Use /etc/chromium for master_prefs @@ -223,8 +220,6 @@ Patch23: chromium-65.0.3325.146-memcpy-fix.patch Patch24: chromium-68.0.3440.106-boolfix.patch # From Debian Patch25: chromium-71.0.3578.98-skia-aarch64-buildfix.patch -# Missing files in tarball -Patch26: chromium-66.0.3359.117-missing-files.patch # Do not use unrar code, it is non-free Patch27: chromium-73.0.3683.75-norar.patch # Upstream GCC fixes @@ -253,14 +248,8 @@ Patch36: chromium-71.0.3578.98-gcc9-drop-rsp-clobber.patch Patch37: chromium-widevine-other-locations.patch # Disable -fno-delete-null-pointer-checks Patch38: chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch -# Add #include to get pipewire code to build -Patch39: chromium-73.0.3683.75-pipewire-cstring-fix.patch -# gcc does not have __assume -Patch40: chromium-75.0.3770.80-gcc-no-assume.patch # Linux 5.2 defines SIOCGSTAMP in a slightly different way, so we need to teach chromium where to find it Patch41: chromium-75.0.3770.80-SIOCGSTAMP.patch -# https://chromium.googlesource.com/chromium/src/+/aeed4d1f15ce84a17ea0bc219e258dc4982b2368%5E%21/#F0 -Patch42: chromium-75.0.3770.80-aeed4d-gcc-dcheck_ne-fix.patch # Revert https://chromium.googlesource.com/chromium/src/+/daff6b66faae53a0cefb88987c9ff4843629b728%5E%21/#F0 # It might make clang happy but it breaks gcc. F*** clang. Patch43: chromium-75.0.3770.80-revert-daff6b.patch @@ -272,8 +261,6 @@ Patch45: chromium-75.0.3770.80-grpc-gettid-fix.patch # fix v8 compile with gcc # https://chromium.googlesource.com/v8/v8/+/3b8c624bda58d05aea80dd9626cd550537d6ac3f%5E%21/#F1 Patch46: chromium-75.0.3770.100-fix-v8-gcc.patch -# https://chromium.googlesource.com/chromium/src/+/00281713519dbd84b90d2996a009bf3a7e294435%5E%21/#F0 -Patch47: chromium-75.0.3770.100-git00281713.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -794,7 +781,6 @@ udev. %patch2 -p1 -b .addrfix %patch3 -p1 -b .notest %patch4 -p1 -b .modern-libusbx -%patch5 -p1 -b .cups22 %patch6 -p1 -b .sandboxpie %patch7 -p1 -b .etc %patch8 -p1 -b .gnsystem @@ -815,7 +801,6 @@ udev. %patch23 -p1 -b .memcpyfix %patch24 -p1 -b .boolfix %patch25 -p1 -b .aarch64fix -%patch26 -p1 -b .missing-files %patch27 -p1 -b .nounrar %patch28 -p1 -b .gcc-cpolicyprovider %patch29 -p1 -b .fedora-user-agent @@ -828,15 +813,11 @@ udev. %patch36 -p1 -b .gcc9 %patch37 -p1 -b .widevine-other-locations %patch38 -p1 -b .disable-ndnpc -%patch39 -p1 -b .cstring-fix -%patch40 -p1 -b .gcc-assume %patch41 -p1 -b .SIOCGSTAMP -%patch42 -p1 -b .gcc-dcheck_ne-fix %patch43 -p1 -b .revert-daff6b %patch44 -p1 -b .pure-virtual-fix %patch45 -p1 -b .gettid-fix %patch46 -p1 -b .fix-v8-gcc -%patch47 -p1 -b .git00281713 # EPEL specific patches %if 0%{?rhel} == 7 @@ -1217,7 +1198,6 @@ build/linux/unbundle/remove_bundled_libraries.py \ %if %{freeworld} 'third_party/openh264' \ %endif - 'third_party/openmax_dl' \ 'third_party/opus' \ 'third_party/ots' \ 'third_party/pdfium' \ @@ -1260,7 +1240,6 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/sqlite' \ 'third_party/swiftshader' \ 'third_party/swiftshader/third_party/subzero' \ - 'third_party/swiftshader/third_party/LLVM' \ 'third_party/swiftshader/third_party/llvm-subzero' \ 'third_party/swiftshader/third_party/llvm-7.0' \ 'third_party/tcmalloc' \ @@ -1857,6 +1836,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Tue Aug 13 2019 Tomas Popela - 76.0.3809.100-1 +- Update to 76.0.3809.100 + * Wed Jul 24 2019 Fedora Release Engineering - 75.0.3770.100-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild diff --git a/sources b/sources index 5ba7f4f..778c103 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-75.0.3770.100-clean.tar.xz) = ee2fad215cf39edc572b4ecd040f1130e857e19a34e64fffb14a995ca325adc0b01d6e8bfae4f91c2fecd13ed018049e64fe2c2cc755502b8e3291698698512e +SHA512 (chromium-76.0.3809.100-clean.tar.xz) = ad250b8cd0a01297fdff85c12a4dca85477cf027a68c0a9f7a3bc93b825772d17ddd062a89020ae954def781f19fe44beedb33ec8a86f3c12af290edb43d6ee9 From 208926062cd04b2681e8519aaa0eec9b7d655a55 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 13 Aug 2019 15:39:15 +0200 Subject: [PATCH 0371/1449] Add more fixes --- chromium-76.0.3809.100-gcc-cc-no-except.patch | 105 ++++++++++++++++ chromium-76.0.3809.100-gcc-net-fetcher.patch | 63 ++++++++++ chromium-76.0.3809.100-gcc-vulkan.patch | 115 ++++++++++++++++++ chromium.spec | 14 +++ get_free_ffmpeg_source_files.py | 8 +- sources | 2 +- 6 files changed, 302 insertions(+), 5 deletions(-) create mode 100644 chromium-76.0.3809.100-gcc-cc-no-except.patch create mode 100644 chromium-76.0.3809.100-gcc-net-fetcher.patch create mode 100644 chromium-76.0.3809.100-gcc-vulkan.patch diff --git a/chromium-76.0.3809.100-gcc-cc-no-except.patch b/chromium-76.0.3809.100-gcc-cc-no-except.patch new file mode 100644 index 0000000..e4d754a --- /dev/null +++ b/chromium-76.0.3809.100-gcc-cc-no-except.patch @@ -0,0 +1,105 @@ +From 84c91abab33966f928497c24db4a39f436d2dca8 Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Fri, 07 Jun 2019 09:50:11 +0000 +Subject: [PATCH] Make SharedMemoryMapping move constructor noexcept + +As LayerTreeHostImpl::UIResourceData move constructor is declared +noexcept with default implementation, the move constructor of its +members should also be noexcept. GCC will fail to build otherwise +for mismatching noexcept declaration. + +We also set the move assignment operator. + +Bug: 819294 +Change-Id: Icd663da83b882e15f7d16780c9241972e09bc492 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645297 +Commit-Queue: José Dapena Paz +Reviewed-by: Daniel Cheng +Cr-Commit-Position: refs/heads/master@{#667064} +--- + +diff --git a/base/memory/shared_memory_mapping.cc b/base/memory/shared_memory_mapping.cc +index 2be2570..8426fa8 100644 +--- a/base/memory/shared_memory_mapping.cc ++++ b/base/memory/shared_memory_mapping.cc +@@ -33,7 +33,7 @@ + + SharedMemoryMapping::SharedMemoryMapping() = default; + +-SharedMemoryMapping::SharedMemoryMapping(SharedMemoryMapping&& mapping) ++SharedMemoryMapping::SharedMemoryMapping(SharedMemoryMapping&& mapping) noexcept + : memory_(mapping.memory_), + size_(mapping.size_), + mapped_size_(mapping.mapped_size_), +@@ -42,7 +42,7 @@ + } + + SharedMemoryMapping& SharedMemoryMapping::operator=( +- SharedMemoryMapping&& mapping) { ++ SharedMemoryMapping&& mapping) noexcept { + Unmap(); + memory_ = mapping.memory_; + size_ = mapping.size_; +@@ -90,9 +90,9 @@ + + ReadOnlySharedMemoryMapping::ReadOnlySharedMemoryMapping() = default; + ReadOnlySharedMemoryMapping::ReadOnlySharedMemoryMapping( +- ReadOnlySharedMemoryMapping&&) = default; ++ ReadOnlySharedMemoryMapping&&) noexcept = default; + ReadOnlySharedMemoryMapping& ReadOnlySharedMemoryMapping::operator=( +- ReadOnlySharedMemoryMapping&&) = default; ++ ReadOnlySharedMemoryMapping&&) noexcept = default; + ReadOnlySharedMemoryMapping::ReadOnlySharedMemoryMapping( + void* address, + size_t size, +@@ -102,9 +102,9 @@ + + WritableSharedMemoryMapping::WritableSharedMemoryMapping() = default; + WritableSharedMemoryMapping::WritableSharedMemoryMapping( +- WritableSharedMemoryMapping&&) = default; ++ WritableSharedMemoryMapping&&) noexcept = default; + WritableSharedMemoryMapping& WritableSharedMemoryMapping::operator=( +- WritableSharedMemoryMapping&&) = default; ++ WritableSharedMemoryMapping&&) noexcept = default; + WritableSharedMemoryMapping::WritableSharedMemoryMapping( + void* address, + size_t size, +diff --git a/base/memory/shared_memory_mapping.h b/base/memory/shared_memory_mapping.h +index d9569af..2b8858e 100644 +--- a/base/memory/shared_memory_mapping.h ++++ b/base/memory/shared_memory_mapping.h +@@ -32,8 +32,8 @@ + SharedMemoryMapping(); + + // Move operations are allowed. +- SharedMemoryMapping(SharedMemoryMapping&& mapping); +- SharedMemoryMapping& operator=(SharedMemoryMapping&& mapping); ++ SharedMemoryMapping(SharedMemoryMapping&& mapping) noexcept; ++ SharedMemoryMapping& operator=(SharedMemoryMapping&& mapping) noexcept; + + // Unmaps the region if the mapping is valid. + virtual ~SharedMemoryMapping(); +@@ -93,8 +93,9 @@ + ReadOnlySharedMemoryMapping(); + + // Move operations are allowed. +- ReadOnlySharedMemoryMapping(ReadOnlySharedMemoryMapping&&); +- ReadOnlySharedMemoryMapping& operator=(ReadOnlySharedMemoryMapping&&); ++ ReadOnlySharedMemoryMapping(ReadOnlySharedMemoryMapping&&) noexcept; ++ ReadOnlySharedMemoryMapping& operator=( ++ ReadOnlySharedMemoryMapping&&) noexcept; + + // Returns the base address of the mapping. This is read-only memory. This is + // page-aligned. This is nullptr for invalid instances. +@@ -171,8 +172,9 @@ + WritableSharedMemoryMapping(); + + // Move operations are allowed. +- WritableSharedMemoryMapping(WritableSharedMemoryMapping&&); +- WritableSharedMemoryMapping& operator=(WritableSharedMemoryMapping&&); ++ WritableSharedMemoryMapping(WritableSharedMemoryMapping&&) noexcept; ++ WritableSharedMemoryMapping& operator=( ++ WritableSharedMemoryMapping&&) noexcept; + + // Returns the base address of the mapping. This is writable memory. This is + // page-aligned. This is nullptr for invalid instances. diff --git a/chromium-76.0.3809.100-gcc-net-fetcher.patch b/chromium-76.0.3809.100-gcc-net-fetcher.patch new file mode 100644 index 0000000..bc0ed98 --- /dev/null +++ b/chromium-76.0.3809.100-gcc-net-fetcher.patch @@ -0,0 +1,63 @@ +From 502e6e42633d2571c8236c8649b031fe9915eb5b Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Tue, 11 Jun 2019 16:56:27 +0000 +Subject: [PATCH] GCC: CertNetFetcherImpl declares Job as a friend but it is in the anonymous namespace + +GCC does not allow friendship declaration to anonymous namespace as done with Job +object in the CertNetFetcherImpl. This fix removes the friend declaration, and just +makes RemoveJob method public, that was the only reason to make Job a friend. + +Error was: +./../net/cert_net/cert_net_fetcher_impl.cc: In member function ‘void net::{anonymous}::Job::DetachRequest(net::CertNetFetcherImpl::RequestCore*)’: +../../net/cert_net/cert_net_fetcher_impl.cc:458:42: error: ‘std::unique_ptr net::CertNetFetcherImpl::AsyncCertNetFetcherImpl::RemoveJob(net::{anonymous}::Job*)’ is private within this context + delete_this = parent_->RemoveJob(this); + ^ +../../net/cert_net/cert_net_fetcher_impl.cc:151:24: note: declared private here + std::unique_ptr RemoveJob(Job* job); + ^~~~~~~~~ +../../net/cert_net/cert_net_fetcher_impl.cc: In member function ‘void net::{anonymous}::Job::OnJobCompleted(net::Error)’: +../../net/cert_net/cert_net_fetcher_impl.cc:610:61: error: ‘std::unique_ptr net::CertNetFetcherImpl::AsyncCertNetFetcherImpl::RemoveJob(net::{anonymous}::Job*)’ is private within this context + std::unique_ptr delete_this = parent_->RemoveJob(this); + ^ +../../net/cert_net/cert_net_fetcher_impl.cc:151:24: note: declared private here + std::unique_ptr RemoveJob(Job* job); + ^~~~~~~~~ + +Bug: 819294 +Change-Id: I3609f4558e570741395366de6a4cd40577d91450 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1651783 +Commit-Queue: Eric Roman +Reviewed-by: Eric Roman +Cr-Commit-Position: refs/heads/master@{#668015} +--- + +diff --git a/net/cert_net/cert_net_fetcher_impl.cc b/net/cert_net/cert_net_fetcher_impl.cc +index 11a1166..349c656 100644 +--- a/net/cert_net/cert_net_fetcher_impl.cc ++++ b/net/cert_net/cert_net_fetcher_impl.cc +@@ -135,21 +135,19 @@ + void Fetch(std::unique_ptr request_params, + scoped_refptr request); + ++ // Removes |job| from the in progress jobs and transfers ownership to the ++ // caller. ++ std::unique_ptr RemoveJob(Job* job); ++ + // Cancels outstanding jobs, which stops network requests and signals the + // corresponding RequestCores that the requests have completed. + void Shutdown(); + + private: +- friend class Job; +- + // Finds a job with a matching RequestPararms or returns nullptr if there was + // no match. + Job* FindJob(const RequestParams& params); + +- // Removes |job| from the in progress jobs and transfers ownership to the +- // caller. +- std::unique_ptr RemoveJob(Job* job); +- + // The in-progress jobs. This set does not contain the job which is actively + // invoking callbacks (OnJobCompleted). + JobSet jobs_; diff --git a/chromium-76.0.3809.100-gcc-vulkan.patch b/chromium-76.0.3809.100-gcc-vulkan.patch new file mode 100644 index 0000000..cf93bce --- /dev/null +++ b/chromium-76.0.3809.100-gcc-vulkan.patch @@ -0,0 +1,115 @@ +From fdb3bb1f8c41d044a5b0cb80257a26dd3c8f83a3 Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Tue, 11 Jun 2019 17:39:38 +0000 +Subject: [PATCH] GCC: do not use old C notation to assign struct with property names. + +The notation for initialization of structs referring to its properties +is invalid in C++. This is not accepted in GCC. It was making build +fail in VulkanCommandBuffer. + +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc: In member function 'void gpu::VulkanCommandBuffer::TransitionImageLayout(VkImage, VkImageLayout, VkImageLayout)': +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:214:7: error: expected primary-expression before '.' token + .subresourceRange.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT, + ^ +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:215:7: error: expected primary-expression before '.' token + .subresourceRange.baseMipLevel = 0, + ^ +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:216:7: error: expected primary-expression before '.' token + .subresourceRange.levelCount = 1, + ^ +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:217:7: error: expected primary-expression before '.' token + .subresourceRange.baseArrayLayer = 0, + ^ +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:218:7: error: expected primary-expression before '.' token + .subresourceRange.layerCount = 1, + ^ +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc: In member function 'void gpu::VulkanCommandBuffer::CopyBufferToImage(VkBuffer, VkImage, uint32_t, uint32_t, uint32_t, uint32_t)': +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:235:7: error: expected primary-expression before '.' token + .imageSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT, + ^ +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:236:7: error: expected primary-expression before '.' token + .imageSubresource.mipLevel = 0, + ^ +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:237:7: error: expected primary-expression before '.' token + .imageSubresource.baseArrayLayer = 0, + ^ +./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:238:7: error: expected primary-expression before '.' token + .imageSubresource.layerCount = 1, + ^ +Bug: 819294 + +Change-Id: I999abece0c727e77964789183642ba62009c2c22 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1651802 +Commit-Queue: José Dapena Paz +Reviewed-by: Antoine Labour +Cr-Commit-Position: refs/heads/master@{#668033} +--- + +diff --git a/gpu/vulkan/vulkan_command_buffer.cc b/gpu/vulkan/vulkan_command_buffer.cc +index ba776e4..4f14c85 100644 +--- a/gpu/vulkan/vulkan_command_buffer.cc ++++ b/gpu/vulkan/vulkan_command_buffer.cc +@@ -207,21 +207,20 @@ + void VulkanCommandBuffer::TransitionImageLayout(VkImage image, + VkImageLayout old_layout, + VkImageLayout new_layout) { +- VkImageMemoryBarrier barrier = { +- .sType = VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER, +- .srcAccessMask = GetAccessMask(old_layout), +- .dstAccessMask = GetAccessMask(new_layout), +- .oldLayout = old_layout, +- .newLayout = new_layout, +- .srcQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED, +- .dstQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED, +- .image = image, +- .subresourceRange.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT, +- .subresourceRange.baseMipLevel = 0, +- .subresourceRange.levelCount = 1, +- .subresourceRange.baseArrayLayer = 0, +- .subresourceRange.layerCount = 1, +- }; ++ VkImageMemoryBarrier barrier = {}; ++ barrier.sType = VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER; ++ barrier.srcAccessMask = GetAccessMask(old_layout); ++ barrier.dstAccessMask = GetAccessMask(new_layout); ++ barrier.oldLayout = old_layout; ++ barrier.newLayout = new_layout; ++ barrier.srcQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED; ++ barrier.dstQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED; ++ barrier.image = image; ++ barrier.subresourceRange.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT; ++ barrier.subresourceRange.baseMipLevel = 0; ++ barrier.subresourceRange.levelCount = 1; ++ barrier.subresourceRange.baseArrayLayer = 0; ++ barrier.subresourceRange.layerCount = 1; + vkCmdPipelineBarrier(command_buffer_, GetPipelineStageFlags(old_layout), + GetPipelineStageFlags(new_layout), 0, 0, nullptr, 0, + nullptr, 1, &barrier); +@@ -233,17 +232,16 @@ + uint32_t buffer_height, + uint32_t width, + uint32_t height) { +- VkBufferImageCopy region = { +- .bufferOffset = 0, +- .bufferRowLength = buffer_width, +- .bufferImageHeight = buffer_height, +- .imageSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT, +- .imageSubresource.mipLevel = 0, +- .imageSubresource.baseArrayLayer = 0, +- .imageSubresource.layerCount = 1, +- .imageOffset = {0, 0, 0}, +- .imageExtent = {width, height, 1}, +- }; ++ VkBufferImageCopy region = {}; ++ region.bufferOffset = 0; ++ region.bufferRowLength = buffer_width; ++ region.bufferImageHeight = buffer_height; ++ region.imageSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT; ++ region.imageSubresource.mipLevel = 0; ++ region.imageSubresource.baseArrayLayer = 0; ++ region.imageSubresource.layerCount = 1; ++ region.imageOffset = {0, 0, 0}; ++ region.imageExtent = {width, height, 1}; + vkCmdCopyBufferToImage(command_buffer_, buffer, image, + VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, 1, ®ion); + } diff --git a/chromium.spec b/chromium.spec index 1d3a256..602b236 100644 --- a/chromium.spec +++ b/chromium.spec @@ -261,6 +261,13 @@ Patch45: chromium-75.0.3770.80-grpc-gettid-fix.patch # fix v8 compile with gcc # https://chromium.googlesource.com/v8/v8/+/3b8c624bda58d05aea80dd9626cd550537d6ac3f%5E%21/#F1 Patch46: chromium-75.0.3770.100-fix-v8-gcc.patch +# Fix Vulkan compilation with gcc +# https://chromium.googlesource.com/chromium/src/+/fdb3bb1f8c41d044a5b0cb80257a26dd3c8f83a3 +Patch47: chromium-76.0.3809.100-gcc-vulkan.patch +# https://chromium-review.googlesource.com/c/chromium/src/+/1645297 +Patch48: chromium-76.0.3809.100-gcc-cc-no-except.patch +# https://chromium.googlesource.com/chromium/src.git/+/502e6e42633d2571c8236c8649b031fe9915eb5b +Patch49: chromium-76.0.3809.100-gcc-net-fetcher.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -818,6 +825,9 @@ udev. %patch44 -p1 -b .pure-virtual-fix %patch45 -p1 -b .gettid-fix %patch46 -p1 -b .fix-v8-gcc +%patch47 -p1 -b .gcc-vulkan +%patch48 -p1 -b .gcc-cc-no-except +%patch49 -p1 -b .gcc-net-fetcher # EPEL specific patches %if 0%{?rhel} == 7 @@ -1064,6 +1074,7 @@ ln -s %{_bindir}/node third_party/node/linux/node-linux-x64/bin/node # Remove most of the bundled libraries. Libraries specified below (taken from # Gentoo's Chromium ebuild) are the libraries that needs to be preserved. build/linux/unbundle/remove_bundled_libraries.py \ + 'base/third_party/cityhash' \ 'base/third_party/dmg_fp' \ 'base/third_party/dynamic_annotations' \ 'base/third_party/icu' \ @@ -1104,6 +1115,8 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/blink' \ 'third_party/boringssl' \ 'third_party/boringssl/src/third_party/fiat' \ + 'third_party/boringssl/src/third_party/sike' \ + 'third_party/boringssl/linux-x86_64/crypto/third_party/sike/' \ 'third_party/breakpad' \ 'third_party/breakpad/breakpad/src/third_party/curl' \ 'third_party/brotli' \ @@ -1229,6 +1242,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/sinonjs' \ 'third_party/skia' \ 'third_party/skia/include/third_party/vulkan' \ + 'third_party/skia/include/third_party/skcms' \ 'third_party/skia/third_party/gif' \ 'third_party/skia/third_party/skcms' \ 'third_party/skia/third_party/vulkan' \ diff --git a/get_free_ffmpeg_source_files.py b/get_free_ffmpeg_source_files.py index 76c73ae..f2225ea 100755 --- a/get_free_ffmpeg_source_files.py +++ b/get_free_ffmpeg_source_files.py @@ -41,9 +41,9 @@ def parse_sources(input_sources, output_sources, arch_not_arm): append_sources (block[1], output_sources) -def parse_ffmpeg_gyni_file(gyni_path, arch_not_arm): +def parse_ffmpeg_gni_file(gni_path, arch_not_arm): - with open(gyni_path, "r") as input_file: + with open(gni_path, "r") as input_file: content = input_file.read().replace('\n', '') output_sources = [] @@ -62,7 +62,7 @@ def parse_ffmpeg_gyni_file(gyni_path, arch_not_arm): limitations = ['ffmpeg_branding == "Chrome"', 'ffmpeg_branding == "ChromeOS"'] if ('use_linux_config' in condition) and not any(limitation in condition for limitation in limitations): if (arch_not_arm): - if ('x64' in condition) or ('x86' in condition): + if ('x64' in condition) or ('x86' in condition) or ('use_linux_config' in condition): parse_sources (block[1], output_sources, arch_not_arm) inserted = True else: @@ -79,4 +79,4 @@ def parse_ffmpeg_gyni_file(gyni_path, arch_not_arm): if __name__ == "__main__": path = "%s/third_party/ffmpeg/ffmpeg_generated.gni" % sys.argv[1] - parse_ffmpeg_gyni_file (path, False if sys.argv[2] == "0" else True) + parse_ffmpeg_gni_file (path, False if sys.argv[2] == "0" else True) diff --git a/sources b/sources index 778c103..4e53fd1 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-76.0.3809.100-clean.tar.xz) = ad250b8cd0a01297fdff85c12a4dca85477cf027a68c0a9f7a3bc93b825772d17ddd062a89020ae954def781f19fe44beedb33ec8a86f3c12af290edb43d6ee9 +SHA512 (chromium-76.0.3809.100-clean.tar.xz) = f9fecad99618dffbfa3331b77dd82244447382761ca864380ea145d58f4bd90bb1c0fd3d433aca7d71f63e24c4120bff15c3a4dd9b86e94096cdf31c02b80cd5 From 0833f269b89b5801b71072ef3d2d8dd912d0311a Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 14 Aug 2019 14:38:51 +0200 Subject: [PATCH 0372/1449] Backport more build fixes from upstream --- ....3809.100-gcc-ambigous-instantiation.patch | 39 +++ ...0.3809.100-gcc-feature-policy-parser.patch | 76 ++++++ ...0.3809.100-gcc-hasfraction-constexpr.patch | 32 +++ ...100-gcc-move-explicit-initialization.patch | 97 ++++++++ ...ium-76.0.3809.100-quiche-compile-fix.patch | 225 ++++++++++++++++++ ...m-76.0.3809.100-throttling-dead-beef.patch | 30 +++ ...ium-76.0.3809.100-weak-ptr-no-except.patch | 66 +++++ chromium.spec | 21 ++ 8 files changed, 586 insertions(+) create mode 100644 chromium-76.0.3809.100-gcc-ambigous-instantiation.patch create mode 100644 chromium-76.0.3809.100-gcc-feature-policy-parser.patch create mode 100644 chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch create mode 100644 chromium-76.0.3809.100-gcc-move-explicit-initialization.patch create mode 100644 chromium-76.0.3809.100-quiche-compile-fix.patch create mode 100644 chromium-76.0.3809.100-throttling-dead-beef.patch create mode 100644 chromium-76.0.3809.100-weak-ptr-no-except.patch diff --git a/chromium-76.0.3809.100-gcc-ambigous-instantiation.patch b/chromium-76.0.3809.100-gcc-ambigous-instantiation.patch new file mode 100644 index 0000000..587abf3 --- /dev/null +++ b/chromium-76.0.3809.100-gcc-ambigous-instantiation.patch @@ -0,0 +1,39 @@ +From 52b5ceac95b67491b1c71f0ef9a32b778bbbaa2e Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Wed, 05 Jun 2019 19:46:55 +0000 +Subject: [PATCH] GCC: avoid ambiguous NoDestructor creation in GetNeverSniffedMimeTypes. + +Use brace-list notation to wrap the already existing brace-list for +initializing the flat-set. This resolves an ambiguous instantiation +in GCC. + +Bug: 819294 +Change-Id: I89ddf12522d62a5140a8c2c41dc98e30ec7a0e78 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645774 +Reviewed-by: Matt Menke +Commit-Queue: José Dapena Paz +Cr-Commit-Position: refs/heads/master@{#666401} +--- + +diff --git a/services/network/cross_origin_read_blocking.cc b/services/network/cross_origin_read_blocking.cc +index 30999c0..60a03f6 100644 +--- a/services/network/cross_origin_read_blocking.cc ++++ b/services/network/cross_origin_read_blocking.cc +@@ -211,7 +211,7 @@ + // confirmation sniffing because images, scripts, etc. are frequently + // mislabelled by http servers as HTML/JSON/XML). + base::flat_set& GetNeverSniffedMimeTypes() { +- static base::NoDestructor> s_types({ ++ static base::NoDestructor> s_types{{ + // The list below has been populated based on most commonly used content + // types according to HTTP Archive - see: + // https://github.com/whatwg/fetch/issues/860#issuecomment-457330454 +@@ -224,7 +224,7 @@ + "application/x-www-form-urlencoded", + "application/zip", + "text/event-stream", +- }); ++ }}; + + // All items need to be lower-case, to support case-insensitive comparisons + // later. diff --git a/chromium-76.0.3809.100-gcc-feature-policy-parser.patch b/chromium-76.0.3809.100-gcc-feature-policy-parser.patch new file mode 100644 index 0000000..0dbffd5 --- /dev/null +++ b/chromium-76.0.3809.100-gcc-feature-policy-parser.patch @@ -0,0 +1,76 @@ +From 0aca7b8dea0f52ba7bd58dfce4ac236ee60670a8 Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Tue, 04 Jun 2019 19:44:58 +0200 +Subject: [PATCH] GCC: FeaturePolicyParser ParseValueForFuzzer is not in anonymous namespace + +Compilation fails because we are declaring ParseValueForFuzzer as friend method, +but we are declaring it is in anonymous namespace. Moving to global namespace +still fails (in this case in Clang). + +So final solution is making it a public static method of FeaturePolicyParser. + +Bug: 819294 +Change-Id: Iea307cb6faef675b748d6eb5da2175dcbb17fdc7 +--- + +diff --git a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc +index 3b7f4a9..eaee409 100644 +--- a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc ++++ b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc +@@ -317,6 +317,13 @@ + return value; + } + ++void FeaturePolicyParser::ParseValueForFuzzer( ++ blink::mojom::PolicyValueType feature_type, ++ const WTF::String& value_string) { ++ bool ok; ++ ParseValueForType(feature_type, value_string, &ok); ++} ++ + bool IsFeatureDeclared(mojom::FeaturePolicyFeature feature, + const ParsedFeaturePolicy& policy) { + return std::any_of(policy.begin(), policy.end(), +diff --git a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h +index fd25d90..36af405 100644 +--- a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h ++++ b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h +@@ -16,9 +16,6 @@ + #include "third_party/blink/renderer/platform/wtf/text/wtf_string.h" + #include "third_party/blink/renderer/platform/wtf/vector.h" + +-// Forward declare for friendship. +-void ParseValueForFuzzer(blink::mojom::PolicyValueType, const WTF::String&); +- + namespace blink { + + class Document; +@@ -79,8 +76,9 @@ + const FeatureNameMap& feature_names, + ExecutionContext* execution_context = nullptr); + ++ static void ParseValueForFuzzer(mojom::PolicyValueType, const String&); ++ + private: +- friend void ::ParseValueForFuzzer(mojom::PolicyValueType, const String&); + static PolicyValue GetFallbackValueForFeature( + mojom::FeaturePolicyFeature feature); + static PolicyValue ParseValueForType(mojom::PolicyValueType feature_type, +diff --git a/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc b/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc +index 7f8e6aa..53350e43 100644 +--- a/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc ++++ b/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc +@@ -23,9 +23,9 @@ + extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) { + static blink::BlinkFuzzerTestSupport test_support = + blink::BlinkFuzzerTestSupport(); +- ParseValueForFuzzer(blink::mojom::PolicyValueType::kBool, +- WTF::String(data, size)); +- ParseValueForFuzzer(blink::mojom::PolicyValueType::kDecDouble, +- WTF::String(data, size)); ++ blink::FeaturePolicyParser::ParseValueForFuzzer( ++ blink::mojom::PolicyValueType::kBool, WTF::String(data, size)); ++ blink::FeaturePolicyParser::ParseValueForFuzzer( ++ blink::mojom::PolicyValueType::kDecDouble, WTF::String(data, size)); + return 0; + } diff --git a/chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch b/chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch new file mode 100644 index 0000000..26bba05 --- /dev/null +++ b/chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch @@ -0,0 +1,32 @@ +From cf6d6b40d711fce93a24a2cf517fa3becdbae8bb Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Wed, 05 Jun 2019 17:18:40 +0000 +Subject: [PATCH] Make blink::LayoutUnit::HasFraction constexpr + +Other HasFraction methods as in PhysicalUnit are declared already +constexpr and using it. It breaks GCC build. + +Bug: 819294. +Change-Id: I0c4bd9bd206d45cf31f7fa815ce8533718a425cb +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645222 +Reviewed-by: vmpstr +Reviewed-by: Xianzhu Wang +Commit-Queue: José Dapena Paz +Cr-Commit-Position: refs/heads/master@{#666336} +--- + +diff --git a/third_party/blink/renderer/platform/geometry/layout_unit.h b/third_party/blink/renderer/platform/geometry/layout_unit.h +index f073986..b6dbc76 100644 +--- a/third_party/blink/renderer/platform/geometry/layout_unit.h ++++ b/third_party/blink/renderer/platform/geometry/layout_unit.h +@@ -202,7 +202,9 @@ + return value_ > 0 ? LayoutUnit() : *this; + } + +- bool HasFraction() const { return RawValue() % kFixedPointDenominator; } ++ constexpr bool HasFraction() const { ++ return RawValue() % kFixedPointDenominator; ++ } + + LayoutUnit Fraction() const { + // Compute fraction using the mod operator to preserve the sign of the value diff --git a/chromium-76.0.3809.100-gcc-move-explicit-initialization.patch b/chromium-76.0.3809.100-gcc-move-explicit-initialization.patch new file mode 100644 index 0000000..1d4b90f --- /dev/null +++ b/chromium-76.0.3809.100-gcc-move-explicit-initialization.patch @@ -0,0 +1,97 @@ +From dcb55fb8f18abe5f43d260aa67b14b2dc996f992 Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Tue, 11 Jun 2019 08:00:13 +0000 +Subject: [PATCH] GCC: move explicit specialization out of RunInfo + +Explicit specialization in non-namespace scope is not allowed in C++, and GCC breaks +build because of that. Move the template specializations out of RunInfo declaration +in shape_result_inline_headeres.h to fix the GCC build issue. + +Bug: 819294 +Change-Id: Id083852bcf8e9efbdc911fdad28fd8767d2905d0 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1651728 +Reviewed-by: Kinuko Yasuda +Commit-Queue: José Dapena Paz +Cr-Commit-Position: refs/heads/master@{#667901} +--- + +diff --git a/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h b/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h +index 76ee6091..c14d3a0 100644 +--- a/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h ++++ b/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h +@@ -251,37 +251,6 @@ + template + struct iterator final {}; + +- // For non-zero glyph offset array +- template <> +- struct iterator final { +- // The constructor for ShapeResult +- explicit iterator(const GlyphOffsetArray& array) +- : pointer(array.storage_.get()) { +- DCHECK(pointer); +- } +- +- // The constructor for ShapeResultView +- explicit iterator(const GlyphDataRange& range) : pointer(range.offsets) { +- DCHECK(pointer); +- } +- +- GlyphOffset operator*() const { return *pointer; } +- void operator++() { ++pointer; } +- +- const GlyphOffset* pointer; +- }; +- +- // For zero glyph offset array +- template <> +- struct iterator final { +- explicit iterator(const GlyphOffsetArray& array) { +- DCHECK(!array.HasStorage()); +- } +- explicit iterator(const GlyphDataRange& range) { DCHECK(!range.offsets); } +- GlyphOffset operator*() const { return GlyphOffset(); } +- void operator++() {} +- }; +- + template + iterator GetIterator() const { + return iterator(*this); +@@ -495,6 +464,37 @@ + float width_; + }; + ++// For non-zero glyph offset array ++template <> ++struct ShapeResult::RunInfo::GlyphOffsetArray::iterator final { ++ // The constructor for ShapeResult ++ explicit iterator(const GlyphOffsetArray& array) ++ : pointer(array.storage_.get()) { ++ DCHECK(pointer); ++ } ++ ++ // The constructor for ShapeResultView ++ explicit iterator(const GlyphDataRange& range) : pointer(range.offsets) { ++ DCHECK(pointer); ++ } ++ ++ GlyphOffset operator*() const { return *pointer; } ++ void operator++() { ++pointer; } ++ ++ const GlyphOffset* pointer; ++}; ++ ++// For zero glyph offset array ++template <> ++struct ShapeResult::RunInfo::GlyphOffsetArray::iterator final { ++ explicit iterator(const GlyphOffsetArray& array) { ++ DCHECK(!array.HasStorage()); ++ } ++ explicit iterator(const GlyphDataRange& range) { DCHECK(!range.offsets); } ++ GlyphOffset operator*() const { return GlyphOffset(); } ++ void operator++() {} ++}; ++ + // Find the range of HarfBuzzRunGlyphData for the specified character index + // range. This function uses binary search twice, hence O(2 log n). + inline ShapeResult::RunInfo::GlyphDataRange diff --git a/chromium-76.0.3809.100-quiche-compile-fix.patch b/chromium-76.0.3809.100-quiche-compile-fix.patch new file mode 100644 index 0000000..98789d9 --- /dev/null +++ b/chromium-76.0.3809.100-quiche-compile-fix.patch @@ -0,0 +1,225 @@ +diff -up chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc.quiche-compile-fix chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc +--- chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc.quiche-compile-fix 2019-08-14 09:58:07.721193200 +0200 ++++ chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc 2019-08-14 09:59:33.131041525 +0200 +@@ -62,37 +62,37 @@ const size_t kStatelessResetTokenLength + std::string TransportParameterIdToString( + TransportParameters::TransportParameterId param_id) { + switch (param_id) { +- case kOriginalConnectionId: ++ case TransportParameters::kOriginalConnectionId: + return "original_connection_id"; +- case kIdleTimeout: ++ case TransportParameters::kIdleTimeout: + return "idle_timeout"; +- case kStatelessResetToken: ++ case TransportParameters::kStatelessResetToken: + return "stateless_reset_token"; +- case kMaxPacketSize: ++ case TransportParameters::kMaxPacketSize: + return "max_packet_size"; +- case kInitialMaxData: ++ case TransportParameters::kInitialMaxData: + return "initial_max_data"; +- case kInitialMaxStreamDataBidiLocal: ++ case TransportParameters::kInitialMaxStreamDataBidiLocal: + return "initial_max_stream_data_bidi_local"; +- case kInitialMaxStreamDataBidiRemote: ++ case TransportParameters::kInitialMaxStreamDataBidiRemote: + return "initial_max_stream_data_bidi_remote"; +- case kInitialMaxStreamDataUni: ++ case TransportParameters::kInitialMaxStreamDataUni: + return "initial_max_stream_data_uni"; +- case kInitialMaxStreamsBidi: ++ case TransportParameters::kInitialMaxStreamsBidi: + return "initial_max_streams_bidi"; +- case kInitialMaxStreamsUni: ++ case TransportParameters::kInitialMaxStreamsUni: + return "initial_max_streams_uni"; +- case kAckDelayExponent: ++ case TransportParameters::kAckDelayExponent: + return "ack_delay_exponent"; +- case kMaxAckDelay: ++ case TransportParameters::kMaxAckDelay: + return "max_ack_delay"; +- case kDisableMigration: ++ case TransportParameters::kDisableMigration: + return "disable_migration"; +- case kPreferredAddress: ++ case TransportParameters::kPreferredAddress: + return "preferred_address"; +- case kGoogleQuicParam: ++ case TransportParameters::kGoogleQuicParam: + return "google"; +- case kGoogleQuicVersion: ++ case TransportParameters::kGoogleQuicVersion: + return "google-version"; + } + return "Unknown(" + QuicTextUtils::Uint64ToString(param_id) + ")"; +@@ -390,7 +390,7 @@ bool SerializeTransportParameters(const + CBB original_connection_id_param; + if (!in.original_connection_id.IsEmpty()) { + DCHECK_EQ(Perspective::IS_SERVER, in.perspective); +- if (!CBB_add_u16(¶ms, kOriginalConnectionId) || ++ if (!CBB_add_u16(¶ms, TransportParameters::kOriginalConnectionId) || + !CBB_add_u16_length_prefixed(¶ms, &original_connection_id_param) || + !CBB_add_bytes( + &original_connection_id_param, +@@ -412,7 +412,7 @@ bool SerializeTransportParameters(const + if (!in.stateless_reset_token.empty()) { + DCHECK_EQ(kStatelessResetTokenLength, in.stateless_reset_token.size()); + DCHECK_EQ(Perspective::IS_SERVER, in.perspective); +- if (!CBB_add_u16(¶ms, kStatelessResetToken) || ++ if (!CBB_add_u16(¶ms, TransportParameters::kStatelessResetToken) || + !CBB_add_u16_length_prefixed(¶ms, &stateless_reset_token_param) || + !CBB_add_bytes(&stateless_reset_token_param, + in.stateless_reset_token.data(), +@@ -438,7 +438,7 @@ bool SerializeTransportParameters(const + + // disable_migration + if (in.disable_migration) { +- if (!CBB_add_u16(¶ms, kDisableMigration) || ++ if (!CBB_add_u16(¶ms, TransportParameters::kDisableMigration) || + !CBB_add_u16(¶ms, 0u)) { // 0 is the length of this parameter. + QUIC_BUG << "Failed to write disable_migration for " << in; + return false; +@@ -458,7 +458,7 @@ bool SerializeTransportParameters(const + QUIC_BUG << "Bad lengths " << *in.preferred_address; + return false; + } +- if (!CBB_add_u16(¶ms, kPreferredAddress) || ++ if (!CBB_add_u16(¶ms, TransportParameters::kPreferredAddress) || + !CBB_add_u16_length_prefixed(¶ms, &preferred_address_params) || + !CBB_add_bytes( + &preferred_address_params, +@@ -491,7 +491,7 @@ bool SerializeTransportParameters(const + if (in.google_quic_params) { + const QuicData& serialized_google_quic_params = + in.google_quic_params->GetSerialized(); +- if (!CBB_add_u16(¶ms, kGoogleQuicParam) || ++ if (!CBB_add_u16(¶ms, TransportParameters::kGoogleQuicParam) || + !CBB_add_u16_length_prefixed(¶ms, &google_quic_params) || + !CBB_add_bytes(&google_quic_params, + reinterpret_cast( +@@ -505,7 +505,7 @@ bool SerializeTransportParameters(const + + // Google-specific version extension. + CBB google_version_params; +- if (!CBB_add_u16(¶ms, kGoogleQuicVersion) || ++ if (!CBB_add_u16(¶ms, TransportParameters::kGoogleQuicVersion) || + !CBB_add_u16_length_prefixed(¶ms, &google_version_params) || + !CBB_add_u32(&google_version_params, in.version)) { + QUIC_BUG << "Failed to write Google version extension for " << in; +@@ -565,7 +565,7 @@ bool ParseTransportParameters(const uint + } + bool parse_success = true; + switch (param_id) { +- case kOriginalConnectionId: ++ case TransportParameters::kOriginalConnectionId: + if (!out->original_connection_id.IsEmpty()) { + QUIC_DLOG(ERROR) << "Received a second original connection ID"; + return false; +@@ -581,10 +581,10 @@ bool ParseTransportParameters(const uint + CBS_len(&value)); + } + break; +- case kIdleTimeout: ++ case TransportParameters::kIdleTimeout: + parse_success = out->idle_timeout_milliseconds.ReadFromCbs(&value); + break; +- case kStatelessResetToken: ++ case TransportParameters::kStatelessResetToken: + if (!out->stateless_reset_token.empty()) { + QUIC_DLOG(ERROR) << "Received a second stateless reset token"; + return false; +@@ -597,36 +597,36 @@ bool ParseTransportParameters(const uint + out->stateless_reset_token.assign(CBS_data(&value), + CBS_data(&value) + CBS_len(&value)); + break; +- case kMaxPacketSize: ++ case TransportParameters::kMaxPacketSize: + parse_success = out->max_packet_size.ReadFromCbs(&value); + break; +- case kInitialMaxData: ++ case TransportParameters::kInitialMaxData: + parse_success = out->initial_max_data.ReadFromCbs(&value); + break; +- case kInitialMaxStreamDataBidiLocal: ++ case TransportParameters::kInitialMaxStreamDataBidiLocal: + parse_success = + out->initial_max_stream_data_bidi_local.ReadFromCbs(&value); + break; +- case kInitialMaxStreamDataBidiRemote: ++ case TransportParameters::kInitialMaxStreamDataBidiRemote: + parse_success = + out->initial_max_stream_data_bidi_remote.ReadFromCbs(&value); + break; +- case kInitialMaxStreamDataUni: ++ case TransportParameters::kInitialMaxStreamDataUni: + parse_success = out->initial_max_stream_data_uni.ReadFromCbs(&value); + break; +- case kInitialMaxStreamsBidi: ++ case TransportParameters::kInitialMaxStreamsBidi: + parse_success = out->initial_max_streams_bidi.ReadFromCbs(&value); + break; +- case kInitialMaxStreamsUni: ++ case TransportParameters::kInitialMaxStreamsUni: + parse_success = out->initial_max_streams_uni.ReadFromCbs(&value); + break; +- case kAckDelayExponent: ++ case TransportParameters::kAckDelayExponent: + parse_success = out->ack_delay_exponent.ReadFromCbs(&value); + break; +- case kMaxAckDelay: ++ case TransportParameters::kMaxAckDelay: + parse_success = out->max_ack_delay.ReadFromCbs(&value); + break; +- case kDisableMigration: ++ case TransportParameters::kDisableMigration: + if (out->disable_migration) { + QUIC_DLOG(ERROR) << "Received a second disable migration"; + return false; +@@ -638,7 +638,7 @@ bool ParseTransportParameters(const uint + } + out->disable_migration = true; + break; +- case kPreferredAddress: { ++ case TransportParameters::kPreferredAddress: { + uint16_t ipv4_port, ipv6_port; + in_addr ipv4_address; + in6_addr ipv6_address; +@@ -692,7 +692,7 @@ bool ParseTransportParameters(const uint + QuicMakeUnique( + preferred_address); + } break; +- case kGoogleQuicParam: { ++ case TransportParameters::kGoogleQuicParam: { + if (out->google_quic_params) { + QUIC_DLOG(ERROR) << "Received a second Google parameter"; + return false; +@@ -701,7 +701,7 @@ bool ParseTransportParameters(const uint + reinterpret_cast(CBS_data(&value)), CBS_len(&value)); + out->google_quic_params = CryptoFramer::ParseMessage(serialized_params); + } break; +- case kGoogleQuicVersion: { ++ case TransportParameters::kGoogleQuicVersion: { + if (!CBS_get_u32(&value, &out->version)) { + QUIC_DLOG(ERROR) << "Failed to parse Google version extension"; + return false; +diff -up chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc.quiche-compile-fix chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc +--- chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc.quiche-compile-fix 2019-08-14 09:59:19.139902052 +0200 ++++ chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc 2019-08-14 09:59:33.132041535 +0200 +@@ -2,10 +2,12 @@ + // Use of this source code is governed by a BSD-style license that can be + // found in the LICENSE file. + +-#include +- + #include "net/third_party/quiche/src/quic/core/quic_socket_address_coder.h" + ++#include ++#include ++#include ++ + namespace quic { + + namespace { diff --git a/chromium-76.0.3809.100-throttling-dead-beef.patch b/chromium-76.0.3809.100-throttling-dead-beef.patch new file mode 100644 index 0000000..5e392e6 --- /dev/null +++ b/chromium-76.0.3809.100-throttling-dead-beef.patch @@ -0,0 +1,30 @@ +From 53bb5a463ee956c70230eaa5450022185d0ddc3c Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Thu, 06 Jun 2019 07:54:05 +0000 +Subject: [PATCH] ThrottlingController::Liveness needs to be uint32_t + +We are setting kAlive and kDead values assigning values that +are bigger than the maximum signed int32. It is better to use +uint32_t in this case. + +Bug: 819294 +Change-Id: If72b48291a66a3a9db24b4c8e2d11d31936a66ee +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645772 +Reviewed-by: Kinuko Yasuda +Commit-Queue: José Dapena Paz +Cr-Commit-Position: refs/heads/master@{#666619} +--- + +diff --git a/services/network/throttling/throttling_controller.h b/services/network/throttling/throttling_controller.h +index 43751c4..3c6f87b 100644 +--- a/services/network/throttling/throttling_controller.h ++++ b/services/network/throttling/throttling_controller.h +@@ -38,7 +38,7 @@ + + // TODO(https://crbug.com/960874): Debugging code to try and shed some light + // on why the owned maps are invalid. +- enum class Liveness : int32_t { ++ enum class Liveness : uint32_t { + kAlive = 0xCA11AB13, + kDead = 0xDEADBEEF, + }; diff --git a/chromium-76.0.3809.100-weak-ptr-no-except.patch b/chromium-76.0.3809.100-weak-ptr-no-except.patch new file mode 100644 index 0000000..a392971 --- /dev/null +++ b/chromium-76.0.3809.100-weak-ptr-no-except.patch @@ -0,0 +1,66 @@ +From 0370838723e786b51e7ec8ab55014811ec3e3aa3 Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Thu, 18 Jul 2019 14:26:11 +0200 +Subject: [PATCH] Make base::WeakPtr move constructor/operator noexcept to fix GCC build regression + +A GCC build regression has happened on DisjointRangeLockManager, as its move +operator and constructor were declared noexcept. This was failing because the +default implementation depended on base::WeakPtr, that did not provide +noexcept declaration for them. + +So make base::WeakPtr noexcept. + +Bug: 819294 +Change-Id: I936784b881c7c1afea136ceedbe9341e76464f95 +--- + +diff --git a/base/memory/weak_ptr.cc b/base/memory/weak_ptr.cc +index 64fd499..0efcc44 100644 +--- a/base/memory/weak_ptr.cc ++++ b/base/memory/weak_ptr.cc +@@ -46,7 +46,7 @@ + + WeakReference::~WeakReference() = default; + +-WeakReference::WeakReference(WeakReference&& other) = default; ++WeakReference::WeakReference(WeakReference&& other) noexcept = default; + + WeakReference::WeakReference(const WeakReference& other) = default; + +diff --git a/base/memory/weak_ptr.h b/base/memory/weak_ptr.h +index 72b5f1f..ccd22fd13 100644 +--- a/base/memory/weak_ptr.h ++++ b/base/memory/weak_ptr.h +@@ -116,9 +116,9 @@ + explicit WeakReference(const scoped_refptr& flag); + ~WeakReference(); + +- WeakReference(WeakReference&& other); ++ WeakReference(WeakReference&& other) noexcept; + WeakReference(const WeakReference& other); +- WeakReference& operator=(WeakReference&& other) = default; ++ WeakReference& operator=(WeakReference&& other) noexcept = default; + WeakReference& operator=(const WeakReference& other) = default; + + bool IsValid() const; +@@ -153,9 +153,9 @@ + ~WeakPtrBase(); + + WeakPtrBase(const WeakPtrBase& other) = default; +- WeakPtrBase(WeakPtrBase&& other) = default; ++ WeakPtrBase(WeakPtrBase&& other) noexcept = default; + WeakPtrBase& operator=(const WeakPtrBase& other) = default; +- WeakPtrBase& operator=(WeakPtrBase&& other) = default; ++ WeakPtrBase& operator=(WeakPtrBase&& other) noexcept = default; + + void reset() { + ref_ = internal::WeakReference(); +@@ -236,7 +236,7 @@ + ptr_ = reinterpret_cast(t); + } + template +- WeakPtr(WeakPtr&& other) : WeakPtrBase(std::move(other)) { ++ WeakPtr(WeakPtr&& other) noexcept : WeakPtrBase(std::move(other)) { + // Need to cast from U* to T* to do pointer adjustment in case of multiple + // inheritance. This also enforces the "U is a T" rule. + T* t = reinterpret_cast(other.ptr_); diff --git a/chromium.spec b/chromium.spec index 602b236..383bfa9 100644 --- a/chromium.spec +++ b/chromium.spec @@ -268,6 +268,20 @@ Patch47: chromium-76.0.3809.100-gcc-vulkan.patch Patch48: chromium-76.0.3809.100-gcc-cc-no-except.patch # https://chromium.googlesource.com/chromium/src.git/+/502e6e42633d2571c8236c8649b031fe9915eb5b Patch49: chromium-76.0.3809.100-gcc-net-fetcher.patch +# https://quiche.googlesource.com/quiche.git/+/9424add9d73432a794b7944790253213cce6dcb8 +Patch50: chromium-76.0.3809.100-quiche-compile-fix.patch +# https://chromium.googlesource.com/chromium/src/+/53bb5a463ee956c70230eaa5450022185d0ddc3c +Patch51: chromium-76.0.3809.100-throttling-dead-beef.patch +# https://chromium.googlesource.com/chromium/src/+/52b5ceac95b67491b1c71f0ef9a32b778bbbaa2e +Patch52: chromium-76.0.3809.100-gcc-ambigous-instantiation.patch +# https://chromium.googlesource.com/chromium/src.git/+/715cb38eac889625de0c429d2672562188b4107e +Patch53: chromium-76.0.3809.100-weak-ptr-no-except.patch +# https://chromium.googlesource.com/chromium/src.git/+/c6afbd59c997c2b64f11abdd1eaef71ae8ea2ddc +Patch54: chromium-76.0.3809.100-gcc-feature-policy-parser.patch +# https://chromium.googlesource.com/chromium/src.git/+/cf6d6b40d711fce93a24a2cf517fa3becdbae8bb +Patch55: chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch +# https://chromium.googlesource.com/chromium/src.git/+/dcb55fb8f18abe5f43d260aa67b14b2dc996f992 +Patch56: chromium-76.0.3809.100-gcc-move-explicit-initialization.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -828,6 +842,13 @@ udev. %patch47 -p1 -b .gcc-vulkan %patch48 -p1 -b .gcc-cc-no-except %patch49 -p1 -b .gcc-net-fetcher +%patch50 -p1 -b .quiche-compile-fix +%patch51 -p1 -b .throttling-dead-beef +%patch52 -p1 -b .gcc-ambigous-instantiation +%patch53 -p1 -b .weak-ptr-no-except +%patch54 -p1 -b .gcc-feature-policy-parser +%patch55 -p1 -b .gcc-hasfraction-constexpr +%patch56 -p1 -b .gcc-move-explicit-initialization # EPEL specific patches %if 0%{?rhel} == 7 From 650cd97edc5f28bee54a2e5ed98b546e871bd6f0 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 14 Aug 2019 15:38:35 +0200 Subject: [PATCH 0373/1449] third_party/openscreen need to be preserved --- chromium.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/chromium.spec b/chromium.spec index 383bfa9..f23664a 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1232,6 +1232,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ %if %{freeworld} 'third_party/openh264' \ %endif + 'third_party/openscreen' \ 'third_party/opus' \ 'third_party/ots' \ 'third_party/pdfium' \ From 8fa5dc125a354ba16b978687fa6ee9c8235f401d Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 14 Aug 2019 15:41:23 +0200 Subject: [PATCH 0374/1449] third_party/boringssl/linux-x86_64/crypto/third_party/sike needs to be preserved --- chromium.spec | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index f23664a..0d575b1 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1137,7 +1137,8 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/boringssl' \ 'third_party/boringssl/src/third_party/fiat' \ 'third_party/boringssl/src/third_party/sike' \ - 'third_party/boringssl/linux-x86_64/crypto/third_party/sike/' \ + 'third_party/boringssl/linux-x86_64/crypto/third_party/sike' \ + 'third_party/boringssl/linux-aarch64/crypto/third_party/sike' \ 'third_party/breakpad' \ 'third_party/breakpad/breakpad/src/third_party/curl' \ 'third_party/brotli' \ From 0ff1f6c0fd040131f0ed48f0bcbe75307abdb7ce Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 14 Aug 2019 09:52:16 -0400 Subject: [PATCH 0375/1449] loosen dependency on chromium-libs in freeworld build --- chromium.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 0d575b1..bf6bdcb 100644 --- a/chromium.spec +++ b/chromium.spec @@ -730,7 +730,7 @@ Shared libraries used by chromium (and chrome-remote-desktop). Summary: Chromium media libraries built with all possible codecs Provides: chromium-libs-media = %{version}-%{release} Provides: chromium-libs-media%{_isa} = %{version}-%{release} -Requires: chromium-libs%{_isa} = %{version}-%{release} +Requires: chromium-libs%{_isa} = %{version} Requires(post): %{_sbindir}/update-alternatives Requires(preun): %{_sbindir}/update-alternatives From e16856fd562eef5c97adfcdc12c013db5ede71e0 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 14 Aug 2019 16:52:41 +0200 Subject: [PATCH 0376/1449] Pulseaudio changed the API in 12.99 and we need to adapt the signatures --- chromium-76.0.3809.100-pulse-api-change.patch | 42 +++++++++++++++++++ chromium.spec | 13 +++++- 2 files changed, 54 insertions(+), 1 deletion(-) create mode 100644 chromium-76.0.3809.100-pulse-api-change.patch diff --git a/chromium-76.0.3809.100-pulse-api-change.patch b/chromium-76.0.3809.100-pulse-api-change.patch new file mode 100644 index 0000000..37d3dfa --- /dev/null +++ b/chromium-76.0.3809.100-pulse-api-change.patch @@ -0,0 +1,42 @@ +diff -up chromium-76.0.3809.100/media/audio/pulse/pulse.sigs.pulse_api_change chromium-76.0.3809.100/media/audio/pulse/pulse.sigs +--- chromium-76.0.3809.100/media/audio/pulse/pulse.sigs.pulse_api_change 2019-08-14 16:27:55.057702172 +0200 ++++ chromium-76.0.3809.100/media/audio/pulse/pulse.sigs 2019-08-14 16:37:21.603479886 +0200 +@@ -24,7 +24,7 @@ pa_operation* pa_context_get_source_info + pa_operation* pa_context_get_source_info_by_name(pa_context* c, const char* name, pa_source_info_cb_t cb, void *userdata); + pa_operation* pa_context_get_source_info_list(pa_context* c, pa_source_info_cb_t cb, void* userdata); + pa_operation* pa_context_get_sink_info_list(pa_context* c, pa_sink_info_cb_t cb, void* userdata); +-pa_context_state_t pa_context_get_state(pa_context* c); ++pa_context_state_t pa_context_get_state(const pa_context* c); + pa_context* pa_context_new(pa_mainloop_api* mainloop, const char* name); + pa_operation* pa_context_set_source_volume_by_index(pa_context* c, uint32_t idx, const pa_cvolume* volume, pa_context_success_cb_t cb, void* userdata); + void pa_context_set_state_callback(pa_context* c, pa_context_notify_cb_t cb, void* userdata); +@@ -38,23 +38,23 @@ pa_operation* pa_stream_cork(pa_stream* + int pa_stream_disconnect(pa_stream* s); + int pa_stream_drop(pa_stream *p); + pa_operation* pa_stream_flush(pa_stream* s, pa_stream_success_cb_t cb, void* userdata); +-uint32_t pa_stream_get_device_index(pa_stream* s); ++uint32_t pa_stream_get_device_index(const pa_stream* s); + int pa_stream_get_latency(pa_stream* s, pa_usec_t* r_usec, int* negative); +-pa_stream_state_t pa_stream_get_state(pa_stream* p); ++pa_stream_state_t pa_stream_get_state(const pa_stream* p); + pa_stream* pa_stream_new(pa_context* c, const char* name, const pa_sample_spec* ss, const pa_channel_map * map); + pa_stream* pa_stream_new_with_proplist(pa_context* c, const char* name, const pa_sample_spec* ss, const pa_channel_map* map, pa_proplist* p); + pa_proplist* pa_proplist_new(void); +-int pa_proplist_contains(pa_proplist* p, const char* key); ++int pa_proplist_contains(const pa_proplist* p, const char* key); + void pa_proplist_free(pa_proplist* p); +-const char* pa_proplist_gets(pa_proplist* p, const char* key); ++const char* pa_proplist_gets(const pa_proplist* p, const char* key); + int pa_proplist_sets(pa_proplist* p, const char* key, const char* value); +-size_t pa_stream_readable_size(pa_stream *p); ++size_t pa_stream_readable_size(const pa_stream *p); + int pa_stream_peek(pa_stream* p, const void** data, size_t* nbytes); + void pa_stream_set_read_callback(pa_stream* p, pa_stream_request_cb_t cb, void* userdata); + void pa_stream_set_state_callback(pa_stream* s, pa_stream_notify_cb_t cb, void* userdata); + int pa_stream_write(pa_stream* p, const void* data, size_t nbytes, pa_free_cb_t free_cb, int64_t offset, pa_seek_mode_t seek); + void pa_stream_set_write_callback(pa_stream *p, pa_stream_request_cb_t cb, void *userdata); + void pa_stream_unref(pa_stream* s); +-int pa_context_errno(pa_context *c); ++int pa_context_errno(const pa_context *c); + const char* pa_strerror(int error); + pa_cvolume* pa_cvolume_set(pa_cvolume* a, unsigned channels, pa_volume_t v); diff --git a/chromium.spec b/chromium.spec index bf6bdcb..f91b60b 100644 --- a/chromium.spec +++ b/chromium.spec @@ -141,6 +141,13 @@ BuildRequires: libicu-devel >= 5.4 %global bundleharfbuzz 0 %endif +# Pulseaudio changed the API a little in 12.99.1 +%if 0%{?fedora} > 30 +%global pulseaudioapichange 1 +%else +%global pulseaudioapichange 0 +%endif + ### Google API keys (see http://www.chromium.org/developers/how-tos/api-keys) ### Note: These are for Fedora use ONLY. ### For your own distribution, please get your own set of keys. @@ -306,6 +313,8 @@ Patch202: enable-vaapi.patch Patch203: chromium-75.0.3770.80-vaapi-i686-fpermissive.patch # Fix compatibility with VA-API library (libva) version 1 Patch204: chromium-75.0.3770.80-vaapi-libva1-compatibility.patch +# Pulseaudio changed the API a little in 12.99.1 +Patch205: chromium-76.0.3809.100-pulse-api-change.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ @@ -491,7 +500,6 @@ BuildRequires: pkgconfig(gtk+-3.0) %else BuildRequires: pkgconfig(gtk+-2.0) %endif -BuildRequires: pulseaudio-libs-devel BuildRequires: python2-devel %if 0%{?fedora} > 27 BuildRequires: python2-beautifulsoup4 @@ -871,6 +879,9 @@ udev. %endif %endif +%if 0%{?pulseaudioapichange} +%patch205 -p1 -b .pulseaudioapichange +%endif # Change shebang in all relevant files in this directory and all subdirectories # See `man find` for how the `-exec command {} +` syntax works From 74dc565d422b4d00edc42ee123f6f4629c37a91f Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 14 Aug 2019 23:17:42 +0200 Subject: [PATCH 0377/1449] Add missing ffmpeg file on aarch64 --- clean_ffmpeg.sh | 1 + sources | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index 2f27435..e190296 100755 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -216,6 +216,7 @@ manual_files=" libavcodec/aarch64/fft_neon.S \ libavcodec/x86/videodsp_init.c \ libavcodec/x86/vorbisdsp_init.c \ libavcodec/autorename_libavcodec_mdct15.c \ + libavcodec/aarch64/autorename_libavcodec_aarch64_fft_neon.S \ libavcodec/bit_depth_template.c \ libavcodec/fft_template.c \ libavcodec/flacdec.c \ diff --git a/sources b/sources index 4e53fd1..d6d53e4 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-76.0.3809.100-clean.tar.xz) = f9fecad99618dffbfa3331b77dd82244447382761ca864380ea145d58f4bd90bb1c0fd3d433aca7d71f63e24c4120bff15c3a4dd9b86e94096cdf31c02b80cd5 +SHA512 (chromium-76.0.3809.100-clean.tar.xz) = ca39cf3df4716293d40ea78d8b6c7beb134340c42051dc5ae243f127729cc13fb60e9d168ccac29d55b4ef47aba598e3211caa8f3a8ed5689748873a36fce753 From d9260b3ba2f76df70ac30db8d37ce6560a1d4b33 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 14 Aug 2019 23:22:37 +0200 Subject: [PATCH 0378/1449] Update the Pulseaudio's pa_operation_get_state() signature Missed it while updating the Pulseaudio signatures. --- chromium-76.0.3809.100-pulse-api-change.patch | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/chromium-76.0.3809.100-pulse-api-change.patch b/chromium-76.0.3809.100-pulse-api-change.patch index 37d3dfa..d4e2b46 100644 --- a/chromium-76.0.3809.100-pulse-api-change.patch +++ b/chromium-76.0.3809.100-pulse-api-change.patch @@ -1,7 +1,7 @@ -diff -up chromium-76.0.3809.100/media/audio/pulse/pulse.sigs.pulse_api_change chromium-76.0.3809.100/media/audio/pulse/pulse.sigs ---- chromium-76.0.3809.100/media/audio/pulse/pulse.sigs.pulse_api_change 2019-08-14 16:27:55.057702172 +0200 -+++ chromium-76.0.3809.100/media/audio/pulse/pulse.sigs 2019-08-14 16:37:21.603479886 +0200 -@@ -24,7 +24,7 @@ pa_operation* pa_context_get_source_info +diff -up chromium-76.0.3809.100/media/audio/pulse/pulse.sigs.pulse-api-change chromium-76.0.3809.100/media/audio/pulse/pulse.sigs +--- chromium-76.0.3809.100/media/audio/pulse/pulse.sigs.pulse-api-change 2019-08-14 23:18:59.624627870 +0200 ++++ chromium-76.0.3809.100/media/audio/pulse/pulse.sigs 2019-08-14 23:19:41.258104998 +0200 +@@ -24,11 +24,11 @@ pa_operation* pa_context_get_source_info pa_operation* pa_context_get_source_info_by_name(pa_context* c, const char* name, pa_source_info_cb_t cb, void *userdata); pa_operation* pa_context_get_source_info_list(pa_context* c, pa_source_info_cb_t cb, void* userdata); pa_operation* pa_context_get_sink_info_list(pa_context* c, pa_sink_info_cb_t cb, void* userdata); @@ -10,6 +10,11 @@ diff -up chromium-76.0.3809.100/media/audio/pulse/pulse.sigs.pulse_api_change ch pa_context* pa_context_new(pa_mainloop_api* mainloop, const char* name); pa_operation* pa_context_set_source_volume_by_index(pa_context* c, uint32_t idx, const pa_cvolume* volume, pa_context_success_cb_t cb, void* userdata); void pa_context_set_state_callback(pa_context* c, pa_context_notify_cb_t cb, void* userdata); +-pa_operation_state_t pa_operation_get_state(pa_operation* o); ++pa_operation_state_t pa_operation_get_state(const pa_operation* o); + void pa_context_unref(pa_context* c); + void pa_operation_unref(pa_operation* o); + int pa_stream_begin_write(pa_stream* p, void** data, size_t* nbytes); @@ -38,23 +38,23 @@ pa_operation* pa_stream_cork(pa_stream* int pa_stream_disconnect(pa_stream* s); int pa_stream_drop(pa_stream *p); From de0ef0a3afff125133fd962ab186a84e86234fc0 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Thu, 15 Aug 2019 07:03:49 +0200 Subject: [PATCH 0379/1449] Backport another upstream build fix --- ....0.3809.100-gcc-initialization-order.patch | 33 +++++++++++++++++++ chromium.spec | 3 ++ 2 files changed, 36 insertions(+) create mode 100644 chromium-76.0.3809.100-gcc-initialization-order.patch diff --git a/chromium-76.0.3809.100-gcc-initialization-order.patch b/chromium-76.0.3809.100-gcc-initialization-order.patch new file mode 100644 index 0000000..3bf394f --- /dev/null +++ b/chromium-76.0.3809.100-gcc-initialization-order.patch @@ -0,0 +1,33 @@ +From 7dc76c8d9f4cfbce7cf11424120aa6f6094916dc Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Wed, 05 Jun 2019 21:09:01 +0000 +Subject: [PATCH] GCC: XSetWindowAttributes struct initialization should keep order of declaration + +XSetWindowAttributes initialization of attributes in GLSurfaceGLX is not in the +same order of the declaration. GCC fails because of that. + +Bug: 819294 +Change-Id: I8a97da980d5961a35a47ae4d0d8d558b85291f1f +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1646253 +Reviewed-by: Zhenyao Mo +Commit-Queue: José Dapena Paz +Cr-Commit-Position: refs/heads/master@{#666436} +--- + +diff --git a/ui/gl/gl_surface_glx.cc b/ui/gl/gl_surface_glx.cc +index f649dd4..0aa6892 100644 +--- a/ui/gl/gl_surface_glx.cc ++++ b/ui/gl/gl_surface_glx.cc +@@ -583,10 +583,10 @@ + + XSetWindowAttributes swa = { + .background_pixmap = 0, +- .bit_gravity = NorthWestGravity, +- .colormap = g_colormap, + .background_pixel = 0, // ARGB(0,0,0,0) for compositing WM + .border_pixel = 0, ++ .bit_gravity = NorthWestGravity, ++ .colormap = g_colormap, + }; + auto value_mask = CWBackPixmap | CWBitGravity | CWColormap | CWBorderPixel; + if (ui::IsCompositingManagerPresent() && diff --git a/chromium.spec b/chromium.spec index f91b60b..64e3243 100644 --- a/chromium.spec +++ b/chromium.spec @@ -289,6 +289,8 @@ Patch54: chromium-76.0.3809.100-gcc-feature-policy-parser.patch Patch55: chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch # https://chromium.googlesource.com/chromium/src.git/+/dcb55fb8f18abe5f43d260aa67b14b2dc996f992 Patch56: chromium-76.0.3809.100-gcc-move-explicit-initialization.patch +# https://chromium.googlesource.com/chromium/src.git/+/7dc76c8d9f4cfbce7cf11424120aa6f6094916dc +Patch57: chromium-76.0.3809.100-gcc-initialization-order.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -857,6 +859,7 @@ udev. %patch54 -p1 -b .gcc-feature-policy-parser %patch55 -p1 -b .gcc-hasfraction-constexpr %patch56 -p1 -b .gcc-move-explicit-initialization +%patch57 -p1 -b .gcc-initialization-order # EPEL specific patches %if 0%{?rhel} == 7 From 080ef08ad1f2163699ed0fb4a0d5a177aa02beff Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Thu, 15 Aug 2019 07:10:04 +0200 Subject: [PATCH 0380/1449] Upload the new cleaned tarball with aarch64 sources Previously I forgot to pass the --ffmpegarm while generating the tarball. --- clean_ffmpeg.sh | 1 - sources | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index e190296..2f27435 100755 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -216,7 +216,6 @@ manual_files=" libavcodec/aarch64/fft_neon.S \ libavcodec/x86/videodsp_init.c \ libavcodec/x86/vorbisdsp_init.c \ libavcodec/autorename_libavcodec_mdct15.c \ - libavcodec/aarch64/autorename_libavcodec_aarch64_fft_neon.S \ libavcodec/bit_depth_template.c \ libavcodec/fft_template.c \ libavcodec/flacdec.c \ diff --git a/sources b/sources index d6d53e4..b7a420d 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-76.0.3809.100-clean.tar.xz) = ca39cf3df4716293d40ea78d8b6c7beb134340c42051dc5ae243f127729cc13fb60e9d168ccac29d55b4ef47aba598e3211caa8f3a8ed5689748873a36fce753 +SHA512 (chromium-76.0.3809.100-clean.tar.xz) = 418ade473185717595b47fbf49ad58bd9bf7cece43f9e200108a2f4df1391bc6a09673e7c30a9958205e13650ed220ad289fe3d79d140612ec5c0bb7891fc8c8 From dbf9b1c4cffcd8260ecff3fccb694a5e7b3eb90f Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Thu, 15 Aug 2019 21:14:35 +0200 Subject: [PATCH 0381/1449] Backport and create more of the GCC fixes --- ...09.100-gcc-accountinfo-move-noexcept.patch | 53 +++++++++++++++++++ ...0.3809.100-gcc-history-move-noexcept.patch | 42 +++++++++++++++ ...0.3809.100-gcc-no-alignas-and-export.patch | 14 +++++ ...0.3809.100-gcc-themeservice-includes.patch | 36 +++++++++++++ chromium.spec | 14 +++++ 5 files changed, 159 insertions(+) create mode 100644 chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch create mode 100644 chromium-76.0.3809.100-gcc-history-move-noexcept.patch create mode 100644 chromium-76.0.3809.100-gcc-no-alignas-and-export.patch create mode 100644 chromium-76.0.3809.100-gcc-themeservice-includes.patch diff --git a/chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch b/chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch new file mode 100644 index 0000000..5f45a8f --- /dev/null +++ b/chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch @@ -0,0 +1,53 @@ +From 719df31ffd4d52b473509cf77acd9c02ec112acb Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Tue, 04 Jun 2019 18:38:12 +0200 +Subject: [PATCH] GCC: fix noexcept from move constructor and assign operators of AccountInfo + +AccountInfo declares them as noexcept and uses default implementation, +so all its members (including AccountId) should be noexcept. But AccountId +is not noexcept. To fix it we just need to make CoreAccountId move +operator/assign operator noexcept. + +Bug: 819294 +Change-Id: Ice38654ab7cf3b9eaa6f54aa36e1fec329264f98 +--- + +diff --git a/google_apis/gaia/core_account_id.cc b/google_apis/gaia/core_account_id.cc +index d808082..12eefe3 100644 +--- a/google_apis/gaia/core_account_id.cc ++++ b/google_apis/gaia/core_account_id.cc +@@ -6,8 +6,16 @@ + + CoreAccountId::CoreAccountId() = default; + ++CoreAccountId::CoreAccountId(const CoreAccountId&) = default; ++ ++CoreAccountId::CoreAccountId(CoreAccountId&&) noexcept = default; ++ + CoreAccountId::~CoreAccountId() = default; + ++CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; ++ ++CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) noexcept = default; ++ + CoreAccountId::CoreAccountId(const char* id) : id(id) {} + + CoreAccountId::CoreAccountId(std::string&& id) : id(std::move(id)) {} +diff --git a/google_apis/gaia/core_account_id.h b/google_apis/gaia/core_account_id.h +index 5ea602a..c2d1911 100644 +--- a/google_apis/gaia/core_account_id.h ++++ b/google_apis/gaia/core_account_id.h +@@ -14,8 +14,13 @@ + // for design and tracking). + struct CoreAccountId { + CoreAccountId(); ++ CoreAccountId(const CoreAccountId&); ++ CoreAccountId(CoreAccountId&&) noexcept; + ~CoreAccountId(); + ++ CoreAccountId& operator=(const CoreAccountId&); ++ CoreAccountId& operator=(CoreAccountId&&) noexcept; ++ + // Those implicit constructor and conversion operator allow to + // progressively migrate the code to use this struct. Removing + // them is tracked by https://crbug.com/959161 diff --git a/chromium-76.0.3809.100-gcc-history-move-noexcept.patch b/chromium-76.0.3809.100-gcc-history-move-noexcept.patch new file mode 100644 index 0000000..2876de4 --- /dev/null +++ b/chromium-76.0.3809.100-gcc-history-move-noexcept.patch @@ -0,0 +1,42 @@ +From abe74a7f0c53a43a9706a42d71b7ff4a5da53380 Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Tue, 11 Jun 2019 10:27:19 +0200 +Subject: [PATCH] GCC: add noexcept move assignment in history::URLRow + +In GCC, build is failing because history::QueryURLResult declares its move +assignment operator as noexcept using default implementation. That requires +its members to provide a move assignment operator that is noexcept too. + +But URLRow was missing noexcept declaration in move assignment operator (even +though it was providing noexcept to its move constructor). + +Bug: 819294 +Change-Id: I726e3cf7a4a50c9206a5d0fba8a561d363483d4f +--- + +diff --git a/components/history/core/browser/url_row.cc b/components/history/core/browser/url_row.cc +index 44c22fd..aec0101 100644 +--- a/components/history/core/browser/url_row.cc ++++ b/components/history/core/browser/url_row.cc +@@ -26,7 +26,7 @@ + } + + URLRow& URLRow::operator=(const URLRow& other) = default; +-URLRow& URLRow::operator=(URLRow&& other) = default; ++URLRow& URLRow::operator=(URLRow&& other) noexcept = default; + + void URLRow::Swap(URLRow* other) { + std::swap(id_, other->id_); +diff --git a/components/history/core/browser/url_row.h b/components/history/core/browser/url_row.h +index 8f6f9cf..31a1ef8 100644 +--- a/components/history/core/browser/url_row.h ++++ b/components/history/core/browser/url_row.h +@@ -35,7 +35,7 @@ + + virtual ~URLRow(); + URLRow& operator=(const URLRow& other); +- URLRow& operator=(URLRow&& other); ++ URLRow& operator=(URLRow&& other) noexcept; + + URLID id() const { return id_; } + diff --git a/chromium-76.0.3809.100-gcc-no-alignas-and-export.patch b/chromium-76.0.3809.100-gcc-no-alignas-and-export.patch new file mode 100644 index 0000000..cc91d1e --- /dev/null +++ b/chromium-76.0.3809.100-gcc-no-alignas-and-export.patch @@ -0,0 +1,14 @@ +diff -up chromium-76.0.3809.100/third_party/blink/renderer/core/css/css_property_value_set.h.gcc-no-alignas chromium-76.0.3809.100/third_party/blink/renderer/core/css/css_property_value_set.h +--- chromium-76.0.3809.100/third_party/blink/renderer/core/css/css_property_value_set.h.gcc-no-alignas 2019-08-09 16:48:13.000000000 +0200 ++++ chromium-76.0.3809.100/third_party/blink/renderer/core/css/css_property_value_set.h 2019-08-15 21:04:30.231532746 +0200 +@@ -176,8 +176,8 @@ class CSSLazyPropertyParser + DISALLOW_COPY_AND_ASSIGN(CSSLazyPropertyParser); + }; + +-class CORE_EXPORT alignas(Member) alignas( +- CSSPropertyValueMetadata) ImmutableCSSPropertyValueSet ++class CORE_EXPORT ALIGNAS(alignof(Member)) ++ ALIGNAS(alignof(CSSPropertyValueMetadata)) ImmutableCSSPropertyValueSet + : public CSSPropertyValueSet { + public: + ImmutableCSSPropertyValueSet(const CSSPropertyValue*, diff --git a/chromium-76.0.3809.100-gcc-themeservice-includes.patch b/chromium-76.0.3809.100-gcc-themeservice-includes.patch new file mode 100644 index 0000000..ad40bb9 --- /dev/null +++ b/chromium-76.0.3809.100-gcc-themeservice-includes.patch @@ -0,0 +1,36 @@ +From d08ea83acc2f5ff395c1fe54f52687e92fe51c3b Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Tue, 04 Jun 2019 22:01:03 +0200 +Subject: [PATCH] IWYU: ThemeService requires NativeTheme + +As ThemeService referes to NativeTheme through a ScopedObserver, +the full declaration is required. + +Bug: 819294 +Change-Id: I9d5bd2e87cfaa76e87f9b5509daea24848906a63 +--- + +diff --git a/chrome/browser/themes/theme_service.cc b/chrome/browser/themes/theme_service.cc +index d65388e2..23dc86d 100644 +--- a/chrome/browser/themes/theme_service.cc ++++ b/chrome/browser/themes/theme_service.cc +@@ -54,7 +54,6 @@ + #include "ui/gfx/color_palette.h" + #include "ui/gfx/image/image_skia.h" + #include "ui/native_theme/common_theme.h" +-#include "ui/native_theme/native_theme.h" + + #if BUILDFLAG(ENABLE_EXTENSIONS) + #include "base/scoped_observer.h" +diff --git a/chrome/browser/themes/theme_service.h b/chrome/browser/themes/theme_service.h +index 6c79c72..f93dc0d 100644 +--- a/chrome/browser/themes/theme_service.h ++++ b/chrome/browser/themes/theme_service.h +@@ -25,6 +25,7 @@ + #include "extensions/buildflags/buildflags.h" + #include "extensions/common/extension_id.h" + #include "ui/base/theme_provider.h" ++#include "ui/native_theme/native_theme.h" + #include "ui/native_theme/native_theme_observer.h" + + class BrowserThemePack; diff --git a/chromium.spec b/chromium.spec index 64e3243..de9e05b 100644 --- a/chromium.spec +++ b/chromium.spec @@ -291,6 +291,16 @@ Patch55: chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch Patch56: chromium-76.0.3809.100-gcc-move-explicit-initialization.patch # https://chromium.googlesource.com/chromium/src.git/+/7dc76c8d9f4cfbce7cf11424120aa6f6094916dc Patch57: chromium-76.0.3809.100-gcc-initialization-order.patch +# https://chromium.googlesource.com/chromium/src.git/+/138904af5d6a4158ef4247fda816a8035e621e59 +Patch58: chromium-76.0.3809.100-gcc-history-move-noexcept.patch +# https://chromium.googlesource.com/chromium/src.git/+/bdc24128b75008743d819e298557a53205706e7c +Patch59: chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch +# https://chromium.googlesource.com/chromium/src.git/+/5d7f227fa844e79568df64e495e7ef958c12d7b2 +Patch60: chromium-76.0.3809.100-gcc-themeservice-includes.patch +# TBD - need to submit it +# In GCC one can't use alignas() for exported classes (as described in +# https://cs.chromium.org/chromium/src/base/compiler_specific.h?rcl=a5bcc05a48f6cc6299edfaf0179278aa03653ee4&l=103) +Patch61: chromium-76.0.3809.100-gcc-no-alignas-and-export.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -860,6 +870,10 @@ udev. %patch55 -p1 -b .gcc-hasfraction-constexpr %patch56 -p1 -b .gcc-move-explicit-initialization %patch57 -p1 -b .gcc-initialization-order +%patch58 -p1 -b .gcc-history-move-noexcept +%patch59 -p1 -b .gcc-accountinfo-move-noexcept +%patch60 -p1 -b .gcc-themeservice-includes +%patch61 -p1 -b .gcc-no-alignas-and-export # EPEL specific patches %if 0%{?rhel} == 7 From e64c26cff0d271bde4e5228561a71a3545cf7c8e Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 16 Aug 2019 13:58:53 +0200 Subject: [PATCH 0382/1449] //third_party dependency missing for remoting --- chromium.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/chromium.spec b/chromium.spec index de9e05b..f003849 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1207,6 +1207,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/google_input_tools' \ 'third_party/google_input_tools/third_party/closure_library' \ 'third_party/google_input_tools/third_party/closure_library/third_party/closure' \ + 'third_party/google_trust_services' \ 'third_party/googletest' \ 'third_party/glslang' \ 'third_party/grpc' \ From a1f30b2ff3b03cf9b1c935061cfc4f9c269a07ef Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 20 Aug 2019 21:36:06 +0200 Subject: [PATCH 0383/1449] Fix the build of remoting_all target --- ...76.0.3809.100-gcc-remoting-constexpr.patch | 27 +++++++++++++++++++ ...6.0.3809.100-vtable-symbol-undefined.patch | 11 ++++++++ chromium.spec | 11 +++++--- 3 files changed, 46 insertions(+), 3 deletions(-) create mode 100644 chromium-76.0.3809.100-gcc-remoting-constexpr.patch create mode 100644 chromium-76.0.3809.100-vtable-symbol-undefined.patch diff --git a/chromium-76.0.3809.100-gcc-remoting-constexpr.patch b/chromium-76.0.3809.100-gcc-remoting-constexpr.patch new file mode 100644 index 0000000..c59702f --- /dev/null +++ b/chromium-76.0.3809.100-gcc-remoting-constexpr.patch @@ -0,0 +1,27 @@ +diff -up chromium-76.0.3809.100/remoting/signaling/message_tracker.cc.gcc-constexpr chromium-76.0.3809.100/remoting/signaling/message_tracker.cc +--- chromium-76.0.3809.100/remoting/signaling/message_tracker.cc.gcc-constexpr 2019-08-09 16:48:08.000000000 +0200 ++++ chromium-76.0.3809.100/remoting/signaling/message_tracker.cc 2019-08-20 21:29:14.545465656 +0200 +@@ -9,8 +9,7 @@ + namespace remoting { + + // static +-const base::TimeDelta MessageTracker::kCleanupInterval = +- base::TimeDelta::FromMinutes(2); ++constexpr base::TimeDelta MessageTracker::kCleanupInterval; + + MessageTracker::MessageTracker() = default; + +diff -up chromium-76.0.3809.100/remoting/signaling/message_tracker.h.gcc-constexpr chromium-76.0.3809.100/remoting/signaling/message_tracker.h +--- chromium-76.0.3809.100/remoting/signaling/message_tracker.h.gcc-constexpr 2019-08-20 21:27:53.539653248 +0200 ++++ chromium-76.0.3809.100/remoting/signaling/message_tracker.h 2019-08-20 21:28:23.371952434 +0200 +@@ -36,7 +36,8 @@ class MessageTracker final { + + // All IDs older than now - kCleanupInterval will be eventually removed, but + // they are not guaranteed to be immediately removed after the interval. +- static constexpr base::TimeDelta kCleanupInterval; ++ static constexpr base::TimeDelta kCleanupInterval = ++ base::TimeDelta::FromMinutes(2); + + void RemoveExpiredIds(); + +diff -up chromium-76.0.3809.100/remoting/signaling/message_tracker_unittest.cc.gcc-constexpr chromium-76.0.3809.100/remoting/signaling/message_tracker_unittest.cc diff --git a/chromium-76.0.3809.100-vtable-symbol-undefined.patch b/chromium-76.0.3809.100-vtable-symbol-undefined.patch new file mode 100644 index 0000000..64532df --- /dev/null +++ b/chromium-76.0.3809.100-vtable-symbol-undefined.patch @@ -0,0 +1,11 @@ +diff -up chromium-76.0.3809.100/net/quic/platform/impl/quic_default_proof_providers_impl.cc.vtable-symbol-undefined chromium-76.0.3809.100/net/quic/platform/impl/quic_default_proof_providers_impl.cc +--- chromium-76.0.3809.100/net/quic/platform/impl/quic_default_proof_providers_impl.cc.vtable-symbol-undefined 2019-08-20 21:21:24.901899270 +0200 ++++ chromium-76.0.3809.100/net/quic/platform/impl/quic_default_proof_providers_impl.cc 2019-08-20 21:19:30.361746211 +0200 +@@ -18,6 +18,7 @@ + #include "net/quic/crypto/proof_verifier_chromium.h" + #include "net/third_party/quiche/src/quic/platform/api/quic_flags.h" + #include "net/third_party/quiche/src/quic/platform/api/quic_ptr_util.h" ++#include "net/quic/platform/impl/quic_flags_impl.cc" + + DEFINE_QUIC_COMMAND_LINE_FLAG(std::string, + certificate_file, diff --git a/chromium.spec b/chromium.spec index f003849..e06bcdd 100644 --- a/chromium.spec +++ b/chromium.spec @@ -297,10 +297,13 @@ Patch58: chromium-76.0.3809.100-gcc-history-move-noexcept.patch Patch59: chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch # https://chromium.googlesource.com/chromium/src.git/+/5d7f227fa844e79568df64e495e7ef958c12d7b2 Patch60: chromium-76.0.3809.100-gcc-themeservice-includes.patch -# TBD - need to submit it -# In GCC one can't use alignas() for exported classes (as described in -# https://cs.chromium.org/chromium/src/base/compiler_specific.h?rcl=a5bcc05a48f6cc6299edfaf0179278aa03653ee4&l=103) +# In GCC one can't use alignas() for exported classes +# https://chromium.googlesource.com/chromium/src.git/+/8148fd96ae04a1150a9c6012634dcd2a7335f87a Patch61: chromium-76.0.3809.100-gcc-no-alignas-and-export.patch +# Needs to be submitted.. +Patch62: chromium-76.0.3809.100-gcc-remoting-constexpr.patch +# Needs to be submitted.. (ugly hack, needs to be added properly to GN files) +Patch63: chromium-76.0.3809.100-vtable-symbol-undefined.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -874,6 +877,8 @@ udev. %patch59 -p1 -b .gcc-accountinfo-move-noexcept %patch60 -p1 -b .gcc-themeservice-includes %patch61 -p1 -b .gcc-no-alignas-and-export +%patch62 -p1 -b .gcc-remoting-constexpr +%patch63 -p1 -b .vtable-symbol-undefined # EPEL specific patches %if 0%{?rhel} == 7 From 3a1daf2de729e7dbe1dc3e895f92ba1ee70f3114 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 20 Aug 2019 22:07:44 +0200 Subject: [PATCH 0384/1449] Fix the previously uploaded patch --- chromium-76.0.3809.100-gcc-remoting-constexpr.patch | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/chromium-76.0.3809.100-gcc-remoting-constexpr.patch b/chromium-76.0.3809.100-gcc-remoting-constexpr.patch index c59702f..aec3107 100644 --- a/chromium-76.0.3809.100-gcc-remoting-constexpr.patch +++ b/chromium-76.0.3809.100-gcc-remoting-constexpr.patch @@ -12,13 +12,13 @@ diff -up chromium-76.0.3809.100/remoting/signaling/message_tracker.cc.gcc-conste MessageTracker::MessageTracker() = default; diff -up chromium-76.0.3809.100/remoting/signaling/message_tracker.h.gcc-constexpr chromium-76.0.3809.100/remoting/signaling/message_tracker.h ---- chromium-76.0.3809.100/remoting/signaling/message_tracker.h.gcc-constexpr 2019-08-20 21:27:53.539653248 +0200 +--- chromium-76.0.3809.100/remoting/signaling/message_tracker.h.gcc-constexpr 2019-08-20 22:02:25.625970954 +0200 +++ chromium-76.0.3809.100/remoting/signaling/message_tracker.h 2019-08-20 21:28:23.371952434 +0200 @@ -36,7 +36,8 @@ class MessageTracker final { // All IDs older than now - kCleanupInterval will be eventually removed, but // they are not guaranteed to be immediately removed after the interval. -- static constexpr base::TimeDelta kCleanupInterval; +- static const base::TimeDelta kCleanupInterval; + static constexpr base::TimeDelta kCleanupInterval = + base::TimeDelta::FromMinutes(2); From 216cd7c5a963e5b4ed731e98ff725f94d070d5d1 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 21 Aug 2019 13:51:11 +0200 Subject: [PATCH 0385/1449] Update the list of private libraries and remove a pak file that was removed --- chromium.spec | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/chromium.spec b/chromium.spec index e06bcdd..8a246b7 100644 --- a/chromium.spec +++ b/chromium.spec @@ -54,9 +54,9 @@ %global __provides_exclude_from %{chromium_path}/.*\\.so|%{chromium_path}/lib/.*\\.so|%{chromium_path}/lib/.*\\.so.* %if 0%{?rhel} == 7 -%global privlibs libEGL|libGLESv2|libVkICD_mock_icd|libVkLayer_core_validation|libVkLayer_object_lifetimes|libVkLayer_stateless_validation|libVkLayer_thread_safety|libVkLayer_unique_objects|libaccessibility|libandroid_mojo_bindings_shared|libanimation|libapdu|libaura|libaura_extra|libauthenticator_test_mojo_bindings_shared|libbase|libbase_i18n|libbindings|libbindings_base|libblink_common|libblink_controller|libblink_core|libblink_embedded_frame_sink_mojo_bindings_shared|libblink_features|libblink_modules|libblink_mojo_bindings_shared|libblink_mojom_broadcastchannel_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcbor|libcc|libcc_animation|libcc_base|libcc_debug|libcc_mojo_embedder|libcc_paint|libcdm_manager|libcertificate_matching|libchrome_features|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom|libcontent_service_mojom_shared|libcrash_key|libcrcrypto|libdbus|libdbus_thread_linux|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevice_vr|libdevice_vr_mojo_bindings|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevices|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libembedder|libembedder_switches|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libextras|libfido|libfingerprint|libfreetype_harfbuzz|libgamepad_mojom|libgamepad_mojom_blink|libgamepad_mojom_shared|libgamepad_shared_typemap_traits|libgcm|libgeometry|libgeometry_skia|libgesture_detection|libgfx|libgfx_ipc|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_switches|libgfx_x11|libgin|libgl_in_process_context|libgl_init|libgl_wrapper|libgles2|libgles2_implementation|libgles2_utils|libgpu|libgpu_ipc_service|libgtkui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc|libipc_mojom|libipc_mojom_shared|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|liblearning_common|liblearning_impl|libleveldatabase|liblive_tab_count_metrics|libmanager|libmedia_blink|libmedia_filters_jpeg_parser|libmedia_gpu|libmedia_mojo_services|libmedia_session_cpp|libmedia_webrtc|libmemory_instrumentation|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirclient.so.9|libmirroring_service|libmojo_base_lib|libmojo_base_mojom|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_shared_typemap_traits|libmojo_core_embedder|libmojo_core_embedder_internal|libmojo_core_ports|libmojo_cpp_platform|libmojo_ime_lib|libmojo_mojom_bindings|libmojo_mojom_bindings_shared|libmojo_public_system|libmojo_public_system_cpp|libmojom_core_shared|libmojom_mhtml_load_result_shared|libmojom_modules_shared|libmojom_platform_shared|libmpris|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp|libnetwork_cpp_base|libnetwork_service|libnetwork_session_configurator|libonc|libos_crypt|libperfetto|libplatform|libplatform_window_handler_libs|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp_base|libresource_coordinator_cpp_features|libresource_coordinator_public_mojom|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libsandbox|libsandbox_services|libscheduling_metrics|libseccomp_bpf|libservice|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom|libservice_manager_mojom_blink|libservice_manager_mojom_constants|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_shared|libservice_manager_mojom_traits|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libtracing_cpp|libtracing_mojom|libtracing_mojom_shared|libui_accessibility_ax_mojom|libui_accessibility_ax_mojom_blink|libui_accessibility_ax_mojom_shared|libui_base|libui_base_clipboard|libui_base_clipboard_types|libui_base_features|libui_base_idle|libui_base_ime|libui_base_ime_init|libui_base_ime_linux|libui_base_ime_types|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl|liburl_ipc|liburl_matcher|libusb_shared|libuser_manager|libuser_prefs|libv8|libv8_libbase|libv8_libplatform|libviews|libviz_common|libviz_resource_format_utils|libviz_vulkan_context_provider|libvr_base|libvr_common|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libweb_dialogs|libweb_feature_mojo_bindings_mojom|libweb_feature_mojo_bindings_mojom_blink|libweb_feature_mojo_bindings_mojom_shared|libwebdata_common|libwebgpu|libwebview|libwm|libwm_public|libwtf|libx11_events_platform|libx11_window|libzygote|libmedia|libffmpeg|libfontconfig +%global privlibs libevents_devices_x11|libgfx_x11|libevents_x|libgl_wrapper|libmemory_instrumentation|libdevice_vr_mojo_bindings|libdiscardable_memory_common|libui_base_ime_init|libnetwork_cpp_base|libos_crypt|libmessage_center|libmanager|libdevice_gamepad|libembedder|libGLESv2|libtracing|libskia|libgl_in_process_context|libapdu|libbluetooth|libviz_resource_format_utils|libmojo_mojom_bindings|libblink_platform|libmojom_modules_shared|libwebdata_common|libshell_dialogs|libresource_coordinator_public_mojom_blink|libgles2_utils|libgpu_ipc_service|libcaptive_portal|libvr_common|libgles2|libdisplay|libgfx_ipc_geometry|libcc_paint|libandroid_mojo_bindings_shared|libipc_mojom_shared|libffmpeg|liburl_matcher|libbindings|libservice|libwtf|libcommon|libleveldatabase|libnetwork_session_configurator|libaura|libcloud_policy_proto_generated_compile|libservice_manager_mojom_constants|libui_touch_selection|libmojo_base_lib|libservice_manager_cpp_types|libservice_manager_mojom_blink|libmojo_core_embedder|libblink_embedded_frame_sink_mojo_bindings_shared|libgesture_detection|liburl_ipc|libweb_feature_mojo_bindings_mojom|libscheduling_metrics|libresource_coordinator_cpp_features|libcc|libdiscardable_memory_client|libsessions|libblink_common|libipc|libvulkan_init|libblink_mojom_broadcastchannel_bindings_shared|libheadless_non_renderer|libcbor|libmojo_core_embedder_internal|libmojo_public_system_cpp|libmojom_core_shared|libgfx|libusb_shared|libtracing_mojom|libuser_manager|libnet|libwebgpu|libplatform_window_handler_libs|libmojo_base_mojom_shared|libui_base|libprinting|libcontent_service_mojom_shared|libstartup_tracing|libdevice_vr_mojo_bindings_blink|libraster|libsandbox|libv8_libbase|libevents|libui_base_idle|libgles2_implementation|libkeyed_service_content|libprefs|libVkLayer_core_validation|libchrome_features|libdiscardable_memory_service|libcapture_lib|libperfetto|libicui18n|libdomain_reliability|libweb_dialogs|libcc_animation|libbase|libtracing_cpp|libGLESv2|libEGL|libVkLayer_thread_safety|libmedia_gpu|libparsers|libservice_manager_cpp|liblearning_common|libdevices|libvulkan_wrapper|libservice_manager_mojom_shared|libgfx_switches|libkeycodes_x11|libweb_feature_mojo_bindings_mojom_shared|liburl|libmpris|libppapi_proxy|libmojo_base_mojom|libprotobuf_lite|libui_base_features|libdevice_vr|libwm_public|libcolor_space|libseccomp_bpf|libinterfaces_shared|libui_base_x|libicuuc|libwebview|libdevice_event_log|libVkLayer_object_lifetimes|libvulkan_x11|libproxy_config|libnetwork_cpp|libextras|libVkICD_mock_icd|libv8_libplatform|libresource_coordinator_public_mojom|libwm|libviews|libsuid_sandbox_client|libEGL|libcapture_base|libnative_theme|libcrcrypto|libmojo_public_system|libservice_manager_mojom_constants_shared|libui_accessibility_ax_mojom_blink|libplatform|libui_data_pack|libgfx_ipc_buffer_types|libclearkeycdm|libmetrics_cpp|libmojo_base_shared_typemap_traits|libx11_events_platform|libcrash_key|libclient|libblink_controller|libfido|libfreetype_harfbuzz|libmojo_mojom_bindings_shared|libaccessibility|libstub_window|libui_base_ime|libpolicy_component|libweb_bluetooth_mojo_bindings_shared|libmojo_core_ports|libsandbox_services|libstorage_common|libviz_vulkan_context_provider|libcontent_common_mojo_bindings_shared|libgamepad_mojom_blink|libkeyed_service_core|libmedia_mojo_services|libmojo_ime_lib|libblink_modules|libgcm|libsql|libgeometry_skia|libVkLayer_unique_objects|libweb_feature_mojo_bindings_mojom_blink|libui_base_ime_linux|libdisplay_types|libdevice_vr_mojo_bindings_shared|libcc_base|libtracing_mojom_shared|libmedia_blink|libcc_mojo_embedder|libpdfium|libevents_ozone_layout|libgfx_ipc_color|libgtkui|libpolicy_proto|libcodec|libgpu|libcontent_service_cpp|libmojom_mhtml_load_result_shared|libdisplay_util|libcontent_service_mojom|libbase_i18n|libservice_manager_mojom_constants_blink|libcompositor|libmojo_base_mojom_blink|libui_message_center_cpp|libsnapshot|libdbus_thread_linux|libtab_count_metrics|libpublic|libui_accessibility_ax_mojom|liblearning_impl|librange|libbrowser_ui_views|libcontent|libvr_base|libppapi_host|libservice_manager_mojom_traits|libgamepad_mojom|libcertificate_matching|libgfx_ipc|libgl_init|libVkLayer_stateless_validation|libshared_with_blink|libshared_memory_support|libevents_base|libnet_with_v8|libmedia_webrtc|libsurface|libcontent_public_common_mojo_bindings_shared|libaura_extra|libdevice_base|libonc|libcdm_manager|libmojom_platform_shared|libui_accessibility_ax_mojom_shared|libhost|libblink_features|libdevice_features|libmirroring_service|libdbus|libgeometry|libchromium_sqlite3|libgamepad_mojom_shared|libauthenticator_test_mojo_bindings_shared|libboringssl|libembedder_switches|libgfx_ipc_skia|libzygote|libmedia_session_cpp|libv8|libnetwork_service|libx11_window|libui_base_clipboard|libanimation|libmessage_support|libui_devtools|libgamepad_shared_typemap_traits|libfingerprint|libviz_common|libppapi_shared|libstorage_browser|libbindings_base|libservice_manager_mojom|libblink_core|libgin|libresource_coordinator_public_mojom_shared|libuser_prefs|libui_base_ime_types|libipc_mojom|libmidi|libmojo_cpp_platform|libcc_debug|libui_base_clipboard_types|libmedia|libfontconfig %else -%global privlibs libEGL|libGLESv2|libVkICD_mock_icd|libVkLayer_core_validation|libVkLayer_object_lifetimes|libVkLayer_stateless_validation|libVkLayer_thread_safety|libVkLayer_unique_objects|libaccessibility|libandroid_mojo_bindings_shared|libanimation|libapdu|libaura|libaura_extra|libauthenticator_test_mojo_bindings_shared|libbase|libbase_i18n|libbindings|libbindings_base|libblink_common|libblink_controller|libblink_core|libblink_embedded_frame_sink_mojo_bindings_shared|libblink_features|libblink_modules|libblink_mojo_bindings_shared|libblink_mojom_broadcastchannel_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcbor|libcc|libcc_animation|libcc_base|libcc_debug|libcc_mojo_embedder|libcc_paint|libcdm_manager|libcertificate_matching|libchrome_features|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcommon|libcompositor|libcontent|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom|libcontent_service_mojom_shared|libcrash_key|libcrcrypto|libdbus|libdbus_thread_linux|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevice_vr|libdevice_vr_mojo_bindings|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevices|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libembedder|libembedder_switches|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libextras|libfido|libfingerprint|libfreetype_harfbuzz|libgamepad_mojom|libgamepad_mojom_blink|libgamepad_mojom_shared|libgamepad_shared_typemap_traits|libgcm|libgeometry|libgeometry_skia|libgesture_detection|libgfx|libgfx_ipc|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_switches|libgfx_x11|libgin|libgl_in_process_context|libgl_init|libgl_wrapper|libgles2|libgles2_implementation|libgles2_utils|libgpu|libgpu_ipc_service|libgtkui|libheadless|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc|libipc_mojom|libipc_mojom_shared|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|liblearning_common|liblearning_impl|libleveldatabase|liblive_tab_count_metrics|libmanager|libmedia_blink|libmedia_filters_jpeg_parser|libmedia_gpu|libmedia_mojo_services|libmedia_session_cpp|libmedia_webrtc|libmemory_instrumentation|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirclient.so.9|libmirroring_service|libmojo_base_lib|libmojo_base_mojom|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_shared_typemap_traits|libmojo_core_embedder|libmojo_core_embedder_internal|libmojo_core_ports|libmojo_cpp_platform|libmojo_ime_lib|libmojo_mojom_bindings|libmojo_mojom_bindings_shared|libmojo_public_system|libmojo_public_system_cpp|libmojom_core_shared|libmojom_mhtml_load_result_shared|libmojom_modules_shared|libmojom_platform_shared|libmpris|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp|libnetwork_cpp_base|libnetwork_service|libnetwork_session_configurator|libonc|libos_crypt|libperfetto|libplatform|libplatform_window_handler_libs|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_cpp_base|libresource_coordinator_cpp_features|libresource_coordinator_public_mojom|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libsandbox|libsandbox_services|libscheduling_metrics|libseccomp_bpf|libservice|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom|libservice_manager_mojom_blink|libservice_manager_mojom_constants|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_shared|libservice_manager_mojom_traits|libsessions|libshared_memory_support|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtracing|libtracing_cpp|libtracing_mojom|libtracing_mojom_shared|libui_accessibility_ax_mojom|libui_accessibility_ax_mojom_blink|libui_accessibility_ax_mojom_shared|libui_base|libui_base_clipboard|libui_base_clipboard_types|libui_base_features|libui_base_idle|libui_base_ime|libui_base_ime_init|libui_base_ime_linux|libui_base_ime_types|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|libui_views_mus_lib|liburl|liburl_ipc|liburl_matcher|libusb_shared|libuser_manager|libuser_prefs|libv8|libv8_libbase|libv8_libplatform|libviews|libviz_common|libviz_resource_format_utils|libviz_vulkan_context_provider|libvr_base|libvr_common|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libweb_dialogs|libweb_feature_mojo_bindings_mojom|libweb_feature_mojo_bindings_mojom_blink|libweb_feature_mojo_bindings_mojom_shared|libwebdata_common|libwebgpu|libwebview|libwm|libwm_public|libwtf|libx11_events_platform|libx11_window|libzygote|libmedia|libffmpeg +%global privlibs libevents_devices_x11|libgfx_x11|libevents_x|libgl_wrapper|libmemory_instrumentation|libdevice_vr_mojo_bindings|libdiscardable_memory_common|libui_base_ime_init|libnetwork_cpp_base|libos_crypt|libmessage_center|libmanager|libdevice_gamepad|libembedder|libGLESv2|libtracing|libskia|libgl_in_process_context|libapdu|libbluetooth|libviz_resource_format_utils|libmojo_mojom_bindings|libblink_platform|libmojom_modules_shared|libwebdata_common|libshell_dialogs|libresource_coordinator_public_mojom_blink|libgles2_utils|libgpu_ipc_service|libcaptive_portal|libvr_common|libgles2|libdisplay|libgfx_ipc_geometry|libcc_paint|libandroid_mojo_bindings_shared|libipc_mojom_shared|libffmpeg|liburl_matcher|libbindings|libservice|libwtf|libcommon|libleveldatabase|libnetwork_session_configurator|libaura|libcloud_policy_proto_generated_compile|libservice_manager_mojom_constants|libui_touch_selection|libmojo_base_lib|libservice_manager_cpp_types|libservice_manager_mojom_blink|libmojo_core_embedder|libblink_embedded_frame_sink_mojo_bindings_shared|libgesture_detection|liburl_ipc|libweb_feature_mojo_bindings_mojom|libscheduling_metrics|libresource_coordinator_cpp_features|libcc|libdiscardable_memory_client|libsessions|libblink_common|libipc|libvulkan_init|libblink_mojom_broadcastchannel_bindings_shared|libheadless_non_renderer|libcbor|libmojo_core_embedder_internal|libmojo_public_system_cpp|libmojom_core_shared|libgfx|libusb_shared|libtracing_mojom|libuser_manager|libnet|libwebgpu|libplatform_window_handler_libs|libmojo_base_mojom_shared|libui_base|libprinting|libcontent_service_mojom_shared|libstartup_tracing|libdevice_vr_mojo_bindings_blink|libraster|libsandbox|libv8_libbase|libevents|libui_base_idle|libgles2_implementation|libkeyed_service_content|libprefs|libVkLayer_core_validation|libchrome_features|libdiscardable_memory_service|libcapture_lib|libperfetto|libicui18n|libdomain_reliability|libweb_dialogs|libcc_animation|libbase|libtracing_cpp|libGLESv2|libEGL|libVkLayer_thread_safety|libmedia_gpu|libparsers|libservice_manager_cpp|liblearning_common|libdevices|libvulkan_wrapper|libservice_manager_mojom_shared|libgfx_switches|libkeycodes_x11|libweb_feature_mojo_bindings_mojom_shared|liburl|libmpris|libppapi_proxy|libmojo_base_mojom|libprotobuf_lite|libui_base_features|libdevice_vr|libwm_public|libcolor_space|libseccomp_bpf|libinterfaces_shared|libui_base_x|libicuuc|libwebview|libdevice_event_log|libVkLayer_object_lifetimes|libvulkan_x11|libproxy_config|libnetwork_cpp|libextras|libVkICD_mock_icd|libv8_libplatform|libresource_coordinator_public_mojom|libwm|libviews|libsuid_sandbox_client|libEGL|libcapture_base|libnative_theme|libcrcrypto|libmojo_public_system|libservice_manager_mojom_constants_shared|libui_accessibility_ax_mojom_blink|libplatform|libui_data_pack|libgfx_ipc_buffer_types|libclearkeycdm|libmetrics_cpp|libmojo_base_shared_typemap_traits|libx11_events_platform|libcrash_key|libclient|libblink_controller|libfido|libfreetype_harfbuzz|libmojo_mojom_bindings_shared|libaccessibility|libstub_window|libui_base_ime|libpolicy_component|libweb_bluetooth_mojo_bindings_shared|libmojo_core_ports|libsandbox_services|libstorage_common|libviz_vulkan_context_provider|libcontent_common_mojo_bindings_shared|libgamepad_mojom_blink|libkeyed_service_core|libmedia_mojo_services|libmojo_ime_lib|libblink_modules|libgcm|libsql|libgeometry_skia|libVkLayer_unique_objects|libweb_feature_mojo_bindings_mojom_blink|libui_base_ime_linux|libdisplay_types|libdevice_vr_mojo_bindings_shared|libcc_base|libtracing_mojom_shared|libmedia_blink|libcc_mojo_embedder|libpdfium|libevents_ozone_layout|libgfx_ipc_color|libgtkui|libpolicy_proto|libcodec|libgpu|libcontent_service_cpp|libmojom_mhtml_load_result_shared|libdisplay_util|libcontent_service_mojom|libbase_i18n|libservice_manager_mojom_constants_blink|libcompositor|libmojo_base_mojom_blink|libui_message_center_cpp|libsnapshot|libdbus_thread_linux|libtab_count_metrics|libpublic|libui_accessibility_ax_mojom|liblearning_impl|librange|libbrowser_ui_views|libcontent|libvr_base|libppapi_host|libservice_manager_mojom_traits|libgamepad_mojom|libcertificate_matching|libgfx_ipc|libgl_init|libVkLayer_stateless_validation|libshared_with_blink|libshared_memory_support|libevents_base|libnet_with_v8|libmedia_webrtc|libsurface|libcontent_public_common_mojo_bindings_shared|libaura_extra|libdevice_base|libonc|libcdm_manager|libmojom_platform_shared|libui_accessibility_ax_mojom_shared|libhost|libblink_features|libdevice_features|libmirroring_service|libdbus|libgeometry|libchromium_sqlite3|libgamepad_mojom_shared|libauthenticator_test_mojo_bindings_shared|libboringssl|libembedder_switches|libgfx_ipc_skia|libzygote|libmedia_session_cpp|libv8|libnetwork_service|libx11_window|libui_base_clipboard|libanimation|libmessage_support|libui_devtools|libgamepad_shared_typemap_traits|libfingerprint|libviz_common|libppapi_shared|libstorage_browser|libbindings_base|libservice_manager_mojom|libblink_core|libgin|libresource_coordinator_public_mojom_shared|libuser_prefs|libui_base_ime_types|libipc_mojom|libmidi|libmojo_cpp_platform|libcc_debug|libui_base_clipboard_types|libmedia %endif %global __requires_exclude ^(%{privlibs})\\.so* @@ -1753,7 +1753,6 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/chrome_*.pak %{chromium_path}/resources.pak %{chromium_path}/icudtl.dat -%{chromium_path}/views_mus_resources.pak %{chromium_path}/%{chromium_browser_channel} %{chromium_path}/%{chromium_browser_channel}.sh %{chromium_path}/MEIPreload/ From 80f054f012671c591a2acc3d505814cdde7507e4 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 23 Aug 2019 07:54:57 +0200 Subject: [PATCH 0386/1449] Fix the EL7 build as it doesn't like part of the upstream GCC patch --- ...00-el7-gcc-accountinfo-move-noexcept.patch | 23 +++++++++++++++++++ chromium.spec | 3 +++ 2 files changed, 26 insertions(+) create mode 100644 chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch diff --git a/chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch b/chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch new file mode 100644 index 0000000..09fccf6 --- /dev/null +++ b/chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch @@ -0,0 +1,23 @@ +diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.gcc-accountinfo-move-noexcept-epel chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc +--- chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.gcc-accountinfo-move-noexcept-epel 2019-08-23 07:35:16.544308344 +0200 ++++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc 2019-08-23 07:35:34.115441446 +0200 +@@ -14,8 +14,6 @@ CoreAccountId::~CoreAccountId() = defaul + + CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; + +-CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) noexcept = default; +- + CoreAccountId::CoreAccountId(const char* id) : id(id) {} + + CoreAccountId::CoreAccountId(std::string&& id) : id(std::move(id)) {} +diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.gcc-accountinfo-move-noexcept-epel chromium-76.0.3809.100/google_apis/gaia/core_account_id.h +--- chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.gcc-accountinfo-move-noexcept-epel 2019-08-23 07:36:05.994682935 +0200 ++++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.h 2019-08-23 07:36:13.039736302 +0200 +@@ -19,7 +19,6 @@ struct CoreAccountId { + ~CoreAccountId(); + + CoreAccountId& operator=(const CoreAccountId&); +- CoreAccountId& operator=(CoreAccountId&&) noexcept; + + // Those implicit constructor and conversion operator allow to + // progressively migrate the code to use this struct. Removing diff --git a/chromium.spec b/chromium.spec index 8a246b7..e09a0ac 100644 --- a/chromium.spec +++ b/chromium.spec @@ -311,6 +311,8 @@ Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch Patch101: chromium-75.0.3770.100-epel7-stdc++.patch # el7 only patch Patch102: chromium-75.0.3770.100-el7-fix-noexcept.patch +# el7 only patch as it doesn't like on of the operator= change in patch59 +Patch103: chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch # In file included from ../linux/directory.c:21: # In file included from ../../../../native_client/src/nonsfi/linux/abi_conversion.h:20: @@ -885,6 +887,7 @@ udev. %patch100 -p1 -b .kmaxskip %patch101 -p1 -b .epel7 %patch102 -p1 -b .el7-noexcept +%patch103 -p1 -b .el7-gcc-accountinfo-move-noexcept %endif # Feature specific patches From 9c7daa33431118fb7140890ae54d1138e21c272c Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 23 Aug 2019 11:01:37 +0200 Subject: [PATCH 0387/1449] More el7 fixes Merge the previously committed change in to the el7-noexcept patch and revert another change that is needed on Fedora, but breaking the build on EL7. --- chromium-75.0.3770.100-el7-fix-noexcept.patch | 63 ------------- ...00-el7-gcc-accountinfo-move-noexcept.patch | 23 ----- chromium-76.0.3809.100-el7-noexcept.patch | 89 +++++++++++++++++++ chromium.spec | 7 +- 4 files changed, 92 insertions(+), 90 deletions(-) delete mode 100644 chromium-75.0.3770.100-el7-fix-noexcept.patch delete mode 100644 chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch create mode 100644 chromium-76.0.3809.100-el7-noexcept.patch diff --git a/chromium-75.0.3770.100-el7-fix-noexcept.patch b/chromium-75.0.3770.100-el7-fix-noexcept.patch deleted file mode 100644 index 836e918..0000000 --- a/chromium-75.0.3770.100-el7-fix-noexcept.patch +++ /dev/null @@ -1,63 +0,0 @@ -diff -up chromium-75.0.3770.100/chrome/common/media_router/media_sink.cc.el7-noexcept chromium-75.0.3770.100/chrome/common/media_router/media_sink.cc ---- chromium-75.0.3770.100/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-06-26 13:28:13.262084778 -0400 -+++ chromium-75.0.3770.100/chrome/common/media_router/media_sink.cc 2019-06-26 13:28:13.266084674 -0400 -@@ -19,12 +19,12 @@ MediaSink::MediaSink(const MediaSink::Id - provider_id_(provider_id) {} - - MediaSink::MediaSink(const MediaSink& other) = default; --MediaSink::MediaSink(MediaSink&& other) noexcept = default; -+MediaSink::MediaSink(MediaSink&& other) = default; - MediaSink::MediaSink() = default; - MediaSink::~MediaSink() = default; - - MediaSink& MediaSink::operator=(const MediaSink& other) = default; --MediaSink& MediaSink::operator=(MediaSink&& other) noexcept = default; -+MediaSink& MediaSink::operator=(MediaSink&& other) = default; - - bool MediaSink::IsMaybeCloudSink() const { - switch (icon_type_) { -diff -up chromium-75.0.3770.100/components/policy/core/common/policy_map.cc.el7-noexcept chromium-75.0.3770.100/components/policy/core/common/policy_map.cc ---- chromium-75.0.3770.100/components/policy/core/common/policy_map.cc.el7-noexcept 2019-06-26 13:21:22.653201310 -0400 -+++ chromium-75.0.3770.100/components/policy/core/common/policy_map.cc 2019-06-26 13:21:22.666201034 -0400 -@@ -31,7 +31,7 @@ PolicyMap::Entry::Entry( - PolicyMap::Entry::~Entry() = default; - - PolicyMap::Entry::Entry(Entry&&) noexcept = default; --PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) noexcept = default; -+PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) = default; - - PolicyMap::Entry PolicyMap::Entry::DeepCopy() const { - Entry copy; -diff -up chromium-75.0.3770.100/components/signin/core/browser/account_info.cc.el7-noexcept chromium-75.0.3770.100/components/signin/core/browser/account_info.cc ---- chromium-75.0.3770.100/components/signin/core/browser/account_info.cc.el7-noexcept 2019-06-26 16:01:57.348338042 -0400 -+++ chromium-75.0.3770.100/components/signin/core/browser/account_info.cc 2019-06-26 16:02:36.117552225 -0400 -@@ -51,7 +51,7 @@ CoreAccountInfo::CoreAccountInfo(CoreAcc - CoreAccountInfo& CoreAccountInfo::operator=(const CoreAccountInfo& other) = - default; - --CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) noexcept = -+CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) = - default; - - bool CoreAccountInfo::IsEmpty() const { -@@ -68,7 +68,7 @@ AccountInfo::AccountInfo(AccountInfo&& o - - AccountInfo& AccountInfo::operator=(const AccountInfo& other) = default; - --AccountInfo& AccountInfo::operator=(AccountInfo&& other) noexcept = default; -+AccountInfo& AccountInfo::operator=(AccountInfo&& other) = default; - - bool AccountInfo::IsEmpty() const { - return CoreAccountInfo::IsEmpty() && hosted_domain.empty() && -diff -up chromium-75.0.3770.100/gpu/config/gpu_info.cc.el7-noexcept chromium-75.0.3770.100/gpu/config/gpu_info.cc ---- chromium-75.0.3770.100/gpu/config/gpu_info.cc.el7-noexcept 2019-06-26 13:20:44.513026991 -0400 -+++ chromium-75.0.3770.100/gpu/config/gpu_info.cc 2019-06-26 13:20:44.530026607 -0400 -@@ -181,7 +181,7 @@ GPUInfo::GPUDevice& GPUInfo::GPUDevice:: - const GPUInfo::GPUDevice& other) = default; - - GPUInfo::GPUDevice& GPUInfo::GPUDevice::operator=( -- GPUInfo::GPUDevice&& other) noexcept = default; -+ GPUInfo::GPUDevice&& other) = default; - - GPUInfo::GPUInfo() - : optimus(false), diff --git a/chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch b/chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch deleted file mode 100644 index 09fccf6..0000000 --- a/chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch +++ /dev/null @@ -1,23 +0,0 @@ -diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.gcc-accountinfo-move-noexcept-epel chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc ---- chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.gcc-accountinfo-move-noexcept-epel 2019-08-23 07:35:16.544308344 +0200 -+++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc 2019-08-23 07:35:34.115441446 +0200 -@@ -14,8 +14,6 @@ CoreAccountId::~CoreAccountId() = defaul - - CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; - --CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) noexcept = default; -- - CoreAccountId::CoreAccountId(const char* id) : id(id) {} - - CoreAccountId::CoreAccountId(std::string&& id) : id(std::move(id)) {} -diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.gcc-accountinfo-move-noexcept-epel chromium-76.0.3809.100/google_apis/gaia/core_account_id.h ---- chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.gcc-accountinfo-move-noexcept-epel 2019-08-23 07:36:05.994682935 +0200 -+++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.h 2019-08-23 07:36:13.039736302 +0200 -@@ -19,7 +19,6 @@ struct CoreAccountId { - ~CoreAccountId(); - - CoreAccountId& operator=(const CoreAccountId&); -- CoreAccountId& operator=(CoreAccountId&&) noexcept; - - // Those implicit constructor and conversion operator allow to - // progressively migrate the code to use this struct. Removing diff --git a/chromium-76.0.3809.100-el7-noexcept.patch b/chromium-76.0.3809.100-el7-noexcept.patch new file mode 100644 index 0000000..054d42e --- /dev/null +++ b/chromium-76.0.3809.100-el7-noexcept.patch @@ -0,0 +1,89 @@ +diff -up chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noexcept chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc +--- chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-08-23 10:35:14.911079823 +0200 ++++ chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc 2019-08-23 10:35:14.911079823 +0200 +@@ -19,12 +19,12 @@ MediaSink::MediaSink(const MediaSink::Id + provider_id_(provider_id) {} + + MediaSink::MediaSink(const MediaSink& other) = default; +-MediaSink::MediaSink(MediaSink&& other) noexcept = default; ++MediaSink::MediaSink(MediaSink&& other) = default; + MediaSink::MediaSink() = default; + MediaSink::~MediaSink() = default; + + MediaSink& MediaSink::operator=(const MediaSink& other) = default; +-MediaSink& MediaSink::operator=(MediaSink&& other) noexcept = default; ++MediaSink& MediaSink::operator=(MediaSink&& other) = default; + + bool MediaSink::IsMaybeCloudSink() const { + switch (icon_type_) { +diff -up chromium-76.0.3809.100/components/history/core/browser/url_row.cc.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/url_row.cc +diff -up chromium-76.0.3809.100/components/history/core/browser/url_row.h.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/url_row.h +diff -up chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept chromium-76.0.3809.100/components/policy/core/common/policy_map.cc +--- chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept 2019-08-23 10:35:01.127962168 +0200 ++++ chromium-76.0.3809.100/components/policy/core/common/policy_map.cc 2019-08-23 10:35:01.075961724 +0200 +@@ -52,7 +52,7 @@ PolicyMap::Entry::Entry( + PolicyMap::Entry::~Entry() = default; + + PolicyMap::Entry::Entry(Entry&&) noexcept = default; +-PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) noexcept = default; ++PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) = default; + + PolicyMap::Entry PolicyMap::Entry::DeepCopy() const { + Entry copy; +diff -up chromium-76.0.3809.100/components/signin/core/browser/account_info.cc.el7-noexcept chromium-76.0.3809.100/components/signin/core/browser/account_info.cc +--- chromium-76.0.3809.100/components/signin/core/browser/account_info.cc.el7-noexcept 2019-08-23 10:35:02.341972531 +0200 ++++ chromium-76.0.3809.100/components/signin/core/browser/account_info.cc 2019-08-23 10:35:02.314972300 +0200 +@@ -52,7 +52,7 @@ CoreAccountInfo::CoreAccountInfo(CoreAcc + CoreAccountInfo& CoreAccountInfo::operator=(const CoreAccountInfo& other) = + default; + +-CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) noexcept = ++CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) = + default; + + bool CoreAccountInfo::IsEmpty() const { +@@ -69,7 +69,7 @@ AccountInfo::AccountInfo(AccountInfo&& o + + AccountInfo& AccountInfo::operator=(const AccountInfo& other) = default; + +-AccountInfo& AccountInfo::operator=(AccountInfo&& other) noexcept = default; ++AccountInfo& AccountInfo::operator=(AccountInfo&& other) = default; + + bool AccountInfo::IsEmpty() const { + return CoreAccountInfo::IsEmpty() && hosted_domain.empty() && +diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.el7-noexcept chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc +--- chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.el7-noexcept 2019-08-23 10:52:29.047592493 +0200 ++++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc 2019-08-23 10:52:48.243763687 +0200 +@@ -14,7 +14,7 @@ CoreAccountId::~CoreAccountId() = defaul + + CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; + +-CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) noexcept = default; ++CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) = default; + + CoreAccountId::CoreAccountId(const char* id) : id(id) {} + +diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.el7-noexcept chromium-76.0.3809.100/google_apis/gaia/core_account_id.h +--- chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.el7-noexcept 2019-08-23 10:52:31.541614735 +0200 ++++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.h 2019-08-23 10:53:03.252898948 +0200 +@@ -19,7 +19,7 @@ struct CoreAccountId { + ~CoreAccountId(); + + CoreAccountId& operator=(const CoreAccountId&); +- CoreAccountId& operator=(CoreAccountId&&) noexcept; ++ CoreAccountId& operator=(CoreAccountId&&); + + // Those implicit constructor and conversion operator allow to + // progressively migrate the code to use this struct. Removing +diff -up chromium-76.0.3809.100/gpu/config/gpu_info.cc.el7-noexcept chromium-76.0.3809.100/gpu/config/gpu_info.cc +--- chromium-76.0.3809.100/gpu/config/gpu_info.cc.el7-noexcept 2019-08-23 10:38:00.659317249 +0200 ++++ chromium-76.0.3809.100/gpu/config/gpu_info.cc 2019-08-23 10:38:00.656317223 +0200 +@@ -166,7 +166,7 @@ GPUInfo::GPUDevice& GPUInfo::GPUDevice:: + const GPUInfo::GPUDevice& other) = default; + + GPUInfo::GPUDevice& GPUInfo::GPUDevice::operator=( +- GPUInfo::GPUDevice&& other) noexcept = default; ++ GPUInfo::GPUDevice&& other) = default; + + GPUInfo::GPUInfo() + : optimus(false), diff --git a/chromium.spec b/chromium.spec index e09a0ac..c961abc 100644 --- a/chromium.spec +++ b/chromium.spec @@ -310,9 +310,7 @@ Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch # Use lstdc++ on EPEL7 only Patch101: chromium-75.0.3770.100-epel7-stdc++.patch # el7 only patch -Patch102: chromium-75.0.3770.100-el7-fix-noexcept.patch -# el7 only patch as it doesn't like on of the operator= change in patch59 -Patch103: chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch +Patch102: chromium-76.0.3809.100-el7-noexcept.patch # In file included from ../linux/directory.c:21: # In file included from ../../../../native_client/src/nonsfi/linux/abi_conversion.h:20: @@ -887,7 +885,8 @@ udev. %patch100 -p1 -b .kmaxskip %patch101 -p1 -b .epel7 %patch102 -p1 -b .el7-noexcept -%patch103 -p1 -b .el7-gcc-accountinfo-move-noexcept +# Revert patch58 because it's breaking the build on el7 +%patch58 -R -p1 %endif # Feature specific patches From 863006b82eff67824b2b12a90e6dc863f6c5d11d Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 23 Aug 2019 13:48:03 +0200 Subject: [PATCH 0388/1449] Another el7 noexcept change --- chromium-76.0.3809.100-el7-noexcept.patch | 50 ++++++++++++++++------- 1 file changed, 36 insertions(+), 14 deletions(-) diff --git a/chromium-76.0.3809.100-el7-noexcept.patch b/chromium-76.0.3809.100-el7-noexcept.patch index 054d42e..99593f7 100644 --- a/chromium-76.0.3809.100-el7-noexcept.patch +++ b/chromium-76.0.3809.100-el7-noexcept.patch @@ -1,6 +1,6 @@ diff -up chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noexcept chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc ---- chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-08-23 10:35:14.911079823 +0200 -+++ chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc 2019-08-23 10:35:14.911079823 +0200 +--- chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-08-23 13:41:04.842597850 +0200 ++++ chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc 2019-08-23 13:41:04.842597850 +0200 @@ -19,12 +19,12 @@ MediaSink::MediaSink(const MediaSink::Id provider_id_(provider_id) {} @@ -16,11 +16,33 @@ diff -up chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noe bool MediaSink::IsMaybeCloudSink() const { switch (icon_type_) { -diff -up chromium-76.0.3809.100/components/history/core/browser/url_row.cc.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/url_row.cc -diff -up chromium-76.0.3809.100/components/history/core/browser/url_row.h.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/url_row.h +diff -up chromium-76.0.3809.100/components/history/core/browser/history_types.cc.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/history_types.cc +--- chromium-76.0.3809.100/components/history/core/browser/history_types.cc.el7-noexcept 2019-08-23 13:45:57.673815531 +0200 ++++ chromium-76.0.3809.100/components/history/core/browser/history_types.cc 2019-08-23 13:47:02.463525385 +0200 +@@ -42,7 +42,7 @@ QueryResults::QueryResults(QueryResults& + Swap(&other); + } + +-QueryResults& QueryResults::operator=(QueryResults&& other) noexcept { ++QueryResults& QueryResults::operator=(QueryResults&& other) { + Swap(&other); + return *this; + } +diff -up chromium-76.0.3809.100/components/history/core/browser/history_types.h.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/history_types.h +--- chromium-76.0.3809.100/components/history/core/browser/history_types.h.el7-noexcept 2019-08-23 13:46:11.455966965 +0200 ++++ chromium-76.0.3809.100/components/history/core/browser/history_types.h 2019-08-23 13:46:48.022367596 +0200 +@@ -143,7 +143,7 @@ class QueryResults { + ~QueryResults(); + + QueryResults(QueryResults&& other) noexcept; +- QueryResults& operator=(QueryResults&& other) noexcept; ++ QueryResults& operator=(QueryResults&& other); + + void set_reached_beginning(bool reached) { reached_beginning_ = reached; } + bool reached_beginning() { return reached_beginning_; } diff -up chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept chromium-76.0.3809.100/components/policy/core/common/policy_map.cc ---- chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept 2019-08-23 10:35:01.127962168 +0200 -+++ chromium-76.0.3809.100/components/policy/core/common/policy_map.cc 2019-08-23 10:35:01.075961724 +0200 +--- chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept 2019-08-23 13:40:42.633353810 +0200 ++++ chromium-76.0.3809.100/components/policy/core/common/policy_map.cc 2019-08-23 13:40:42.576353183 +0200 @@ -52,7 +52,7 @@ PolicyMap::Entry::Entry( PolicyMap::Entry::~Entry() = default; @@ -31,8 +53,8 @@ diff -up chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7- PolicyMap::Entry PolicyMap::Entry::DeepCopy() const { Entry copy; diff -up chromium-76.0.3809.100/components/signin/core/browser/account_info.cc.el7-noexcept chromium-76.0.3809.100/components/signin/core/browser/account_info.cc ---- chromium-76.0.3809.100/components/signin/core/browser/account_info.cc.el7-noexcept 2019-08-23 10:35:02.341972531 +0200 -+++ chromium-76.0.3809.100/components/signin/core/browser/account_info.cc 2019-08-23 10:35:02.314972300 +0200 +--- chromium-76.0.3809.100/components/signin/core/browser/account_info.cc.el7-noexcept 2019-08-23 13:40:44.224371292 +0200 ++++ chromium-76.0.3809.100/components/signin/core/browser/account_info.cc 2019-08-23 13:40:44.190370918 +0200 @@ -52,7 +52,7 @@ CoreAccountInfo::CoreAccountInfo(CoreAcc CoreAccountInfo& CoreAccountInfo::operator=(const CoreAccountInfo& other) = default; @@ -52,8 +74,8 @@ diff -up chromium-76.0.3809.100/components/signin/core/browser/account_info.cc.e bool AccountInfo::IsEmpty() const { return CoreAccountInfo::IsEmpty() && hosted_domain.empty() && diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.el7-noexcept chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc ---- chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.el7-noexcept 2019-08-23 10:52:29.047592493 +0200 -+++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc 2019-08-23 10:52:48.243763687 +0200 +--- chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.el7-noexcept 2019-08-23 13:40:25.468165195 +0200 ++++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc 2019-08-23 13:40:25.481165338 +0200 @@ -14,7 +14,7 @@ CoreAccountId::~CoreAccountId() = defaul CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; @@ -64,8 +86,8 @@ diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.el7-noexcept CoreAccountId::CoreAccountId(const char* id) : id(id) {} diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.el7-noexcept chromium-76.0.3809.100/google_apis/gaia/core_account_id.h ---- chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.el7-noexcept 2019-08-23 10:52:31.541614735 +0200 -+++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.h 2019-08-23 10:53:03.252898948 +0200 +--- chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.el7-noexcept 2019-08-23 13:40:25.468165195 +0200 ++++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.h 2019-08-23 13:40:25.481165338 +0200 @@ -19,7 +19,7 @@ struct CoreAccountId { ~CoreAccountId(); @@ -76,8 +98,8 @@ diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.el7-noexcept // Those implicit constructor and conversion operator allow to // progressively migrate the code to use this struct. Removing diff -up chromium-76.0.3809.100/gpu/config/gpu_info.cc.el7-noexcept chromium-76.0.3809.100/gpu/config/gpu_info.cc ---- chromium-76.0.3809.100/gpu/config/gpu_info.cc.el7-noexcept 2019-08-23 10:38:00.659317249 +0200 -+++ chromium-76.0.3809.100/gpu/config/gpu_info.cc 2019-08-23 10:38:00.656317223 +0200 +--- chromium-76.0.3809.100/gpu/config/gpu_info.cc.el7-noexcept 2019-08-09 16:48:01.000000000 +0200 ++++ chromium-76.0.3809.100/gpu/config/gpu_info.cc 2019-08-23 13:40:25.482165349 +0200 @@ -166,7 +166,7 @@ GPUInfo::GPUDevice& GPUInfo::GPUDevice:: const GPUInfo::GPUDevice& other) = default; From 32351d81ff14bde0babcab29de22c9c28d8a53d7 Mon Sep 17 00:00:00 2001 From: Nicolas Chauvet Date: Fri, 23 Aug 2019 18:15:28 +0200 Subject: [PATCH 0389/1449] Clean-up gitignore using wildcard --- .gitignore | 64 +----------------------------------------------------- 1 file changed, 1 insertion(+), 63 deletions(-) diff --git a/.gitignore b/.gitignore index 2bfdc54..06de94b 100644 --- a/.gitignore +++ b/.gitignore @@ -1,51 +1,7 @@ /chromium-52.0.2743.75-clean.tar.xz /depot_tools.git-master.tar.gz /policy_templates.zip -/chromium-52.0.2743.82-clean.tar.xz -/chromium-52.0.2743.116-clean.tar.xz -/chromium-53.0.2785.92-clean.tar.xz -/chromium-53.0.2785.101-clean.tar.xz -/chromium-53.0.2785.113-clean.tar.xz -/chromium-53.0.2785.116-clean.tar.xz -/chromium-53.0.2785.143-clean.tar.xz -/chromium-54.0.2840.59-clean.tar.xz -/chromium-54.0.2840.71-clean.tar.xz -/chromium-54.0.2840.90-clean.tar.xz -/chromium-54.0.2840.100.tar.xz -/chromium-54.0.2840.100-clean.tar.xz -/chromium-55.0.2883.75-clean.tar.xz -/chromium-55.0.2883.87-clean.tar.xz -/chromium-56.0.2924.87-clean.tar.xz -/chromium-57.0.2987.110-clean.tar.xz -/chromium-57.0.2987.133-clean.tar.xz -/chromium-58.0.3029.81-clean.tar.xz -/chromium-58.0.3029.110-clean.tar.xz -/chromium-59.0.3071.86-clean.tar.xz -/chromium-59.0.3071.104-clean.tar.xz -/chromium-59.0.3071.109-clean.tar.xz -/chromium-59.0.3071.115-clean.tar.xz -/chromium-59.0.3071.109-freetype.tar.bz2 -/chromium-60.0.3112.90-clean.tar.xz -/chromium-60.0.3112.101-clean.tar.xz -/chromium-60.0.3112.113-clean.tar.xz -/chromium-60.0.3112.113.tar.xz -/chromium-61.0.3163.79-clean.tar.xz -/chromium-61.0.3163.100-clean.tar.xz -/chromium-62.0.3202.75-clean.tar.xz -/chromium-62.0.3202.89-clean.tar.xz -/chromium-63.0.3239.84-clean.tar.xz -/chromium-63.0.3239.108-clean.tar.xz -/chromium-64.0.3282.119-clean.tar.xz -/chromium-64.0.3282.140-clean.tar.xz -/chromium-64.0.3282.167-clean.tar.xz -/chromium-64.0.3282.186-clean.tar.xz -/chromium-65.0.3325.146-clean.tar.xz -/chromium-65.0.3325.162-clean.tar.xz -/chromium-65.0.3325.181-clean.tar.xz -/chromium-66.0.3359.139-clean.tar.xz -/chromium-66.0.3359.170-clean.tar.xz -/chromium-66.0.3359.181-clean.tar.xz -/chromium-67.0.3396.62-clean.tar.xz +/chromium-*.tar.xz /gelasio.zip /MuktiNarrow-0.94.tar.bz2 /NotoSansCJKjp-hinted.zip @@ -62,23 +18,5 @@ /Tinos-Bold.ttf /Tinos-Italic.ttf /Tinos-Regular.ttf -/chromium-67.0.3396.79-clean.tar.xz -/chromium-67.0.3396.87-clean.tar.xz -/chromium-67.0.3396.99-clean.tar.xz -/chromium-68.0.3440.106-clean.tar.xz /Ahem.ttf -/chromium-69.0.3497.92-clean.tar.xz -/chromium-69.0.3497.100-clean.tar.xz -/chromium-70.0.3538.77-clean.tar.xz -/chromium-70.0.3538.110-clean.tar.xz -/chromium-71.0.3578.98-clean.tar.xz /node-v8.9.1-linux-x64.tar.gz -/chromium-72.0.3626.121-clean.tar.xz -/chromium-73.0.3683.75-clean.tar.xz -/chromium-73.0.3683.86-clean.tar.xz -/chromium-73.0.3683.103-clean.tar.xz -/chromium-74.0.3729.169-clean.tar.xz -/chromium-75.0.3770.80-clean.tar.xz -/chromium-75.0.3770.90-clean.tar.xz -/chromium-75.0.3770.100-clean.tar.xz -/chromium-76.0.3809.100-clean.tar.xz From e57befc4e4ca25195da3e392440b2530c26df645 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 26 Aug 2019 14:40:26 +0200 Subject: [PATCH 0390/1449] Another noexec fix for EL7 --- chromium-76.0.3809.100-el7-noexcept.patch | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/chromium-76.0.3809.100-el7-noexcept.patch b/chromium-76.0.3809.100-el7-noexcept.patch index 99593f7..407f8de 100644 --- a/chromium-76.0.3809.100-el7-noexcept.patch +++ b/chromium-76.0.3809.100-el7-noexcept.patch @@ -18,7 +18,7 @@ diff -up chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noe switch (icon_type_) { diff -up chromium-76.0.3809.100/components/history/core/browser/history_types.cc.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/history_types.cc --- chromium-76.0.3809.100/components/history/core/browser/history_types.cc.el7-noexcept 2019-08-23 13:45:57.673815531 +0200 -+++ chromium-76.0.3809.100/components/history/core/browser/history_types.cc 2019-08-23 13:47:02.463525385 +0200 ++++ chromium-76.0.3809.100/components/history/core/browser/history_types.cc 2019-08-26 10:13:00.815409764 +0200 @@ -42,7 +42,7 @@ QueryResults::QueryResults(QueryResults& Swap(&other); } @@ -28,9 +28,18 @@ diff -up chromium-76.0.3809.100/components/history/core/browser/history_types.cc Swap(&other); return *this; } +@@ -186,7 +186,7 @@ QueryURLResult::QueryURLResult(QueryURLR + + QueryURLResult& QueryURLResult::operator=(const QueryURLResult&) = default; + +-QueryURLResult& QueryURLResult::operator=(QueryURLResult&&) noexcept = default; ++QueryURLResult& QueryURLResult::operator=(QueryURLResult&&) = default; + + // MostVisitedURL -------------------------------------------------------------- + diff -up chromium-76.0.3809.100/components/history/core/browser/history_types.h.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/history_types.h --- chromium-76.0.3809.100/components/history/core/browser/history_types.h.el7-noexcept 2019-08-23 13:46:11.455966965 +0200 -+++ chromium-76.0.3809.100/components/history/core/browser/history_types.h 2019-08-23 13:46:48.022367596 +0200 ++++ chromium-76.0.3809.100/components/history/core/browser/history_types.h 2019-08-26 10:13:49.951881558 +0200 @@ -143,7 +143,7 @@ class QueryResults { ~QueryResults(); @@ -40,6 +49,15 @@ diff -up chromium-76.0.3809.100/components/history/core/browser/history_types.h. void set_reached_beginning(bool reached) { reached_beginning_ = reached; } bool reached_beginning() { return reached_beginning_; } +@@ -278,7 +278,7 @@ struct QueryURLResult { + QueryURLResult(const QueryURLResult&); + QueryURLResult(QueryURLResult&&) noexcept; + QueryURLResult& operator=(const QueryURLResult&); +- QueryURLResult& operator=(QueryURLResult&&) noexcept; ++ QueryURLResult& operator=(QueryURLResult&&); + ~QueryURLResult(); + + // Indicates whether the call to HistoryBackend::QueryURL was successfull diff -up chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept chromium-76.0.3809.100/components/policy/core/common/policy_map.cc --- chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept 2019-08-23 13:40:42.633353810 +0200 +++ chromium-76.0.3809.100/components/policy/core/common/policy_map.cc 2019-08-23 13:40:42.576353183 +0200 From fcd18a8550ce791c6826f2ccbabb31ffef32a923 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 23 Aug 2019 07:54:57 +0200 Subject: [PATCH 0391/1449] Fix the EL7 build as it doesn't like part of the upstream GCC patch --- ...00-el7-gcc-accountinfo-move-noexcept.patch | 23 +++++++++++++++++++ chromium.spec | 3 +++ 2 files changed, 26 insertions(+) create mode 100644 chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch diff --git a/chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch b/chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch new file mode 100644 index 0000000..09fccf6 --- /dev/null +++ b/chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch @@ -0,0 +1,23 @@ +diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.gcc-accountinfo-move-noexcept-epel chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc +--- chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.gcc-accountinfo-move-noexcept-epel 2019-08-23 07:35:16.544308344 +0200 ++++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc 2019-08-23 07:35:34.115441446 +0200 +@@ -14,8 +14,6 @@ CoreAccountId::~CoreAccountId() = defaul + + CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; + +-CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) noexcept = default; +- + CoreAccountId::CoreAccountId(const char* id) : id(id) {} + + CoreAccountId::CoreAccountId(std::string&& id) : id(std::move(id)) {} +diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.gcc-accountinfo-move-noexcept-epel chromium-76.0.3809.100/google_apis/gaia/core_account_id.h +--- chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.gcc-accountinfo-move-noexcept-epel 2019-08-23 07:36:05.994682935 +0200 ++++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.h 2019-08-23 07:36:13.039736302 +0200 +@@ -19,7 +19,6 @@ struct CoreAccountId { + ~CoreAccountId(); + + CoreAccountId& operator=(const CoreAccountId&); +- CoreAccountId& operator=(CoreAccountId&&) noexcept; + + // Those implicit constructor and conversion operator allow to + // progressively migrate the code to use this struct. Removing diff --git a/chromium.spec b/chromium.spec index 8a246b7..e09a0ac 100644 --- a/chromium.spec +++ b/chromium.spec @@ -311,6 +311,8 @@ Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch Patch101: chromium-75.0.3770.100-epel7-stdc++.patch # el7 only patch Patch102: chromium-75.0.3770.100-el7-fix-noexcept.patch +# el7 only patch as it doesn't like on of the operator= change in patch59 +Patch103: chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch # In file included from ../linux/directory.c:21: # In file included from ../../../../native_client/src/nonsfi/linux/abi_conversion.h:20: @@ -885,6 +887,7 @@ udev. %patch100 -p1 -b .kmaxskip %patch101 -p1 -b .epel7 %patch102 -p1 -b .el7-noexcept +%patch103 -p1 -b .el7-gcc-accountinfo-move-noexcept %endif # Feature specific patches From 250b15f9a2ed573472abda7e6cc642f2c3372167 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 23 Aug 2019 11:01:37 +0200 Subject: [PATCH 0392/1449] More el7 fixes Merge the previously committed change in to the el7-noexcept patch and revert another change that is needed on Fedora, but breaking the build on EL7. --- chromium-75.0.3770.100-el7-fix-noexcept.patch | 54 ----------- ...00-el7-gcc-accountinfo-move-noexcept.patch | 23 ----- chromium-76.0.3809.100-el7-noexcept.patch | 89 +++++++++++++++++++ chromium.spec | 7 +- 4 files changed, 92 insertions(+), 81 deletions(-) delete mode 100644 chromium-75.0.3770.100-el7-fix-noexcept.patch delete mode 100644 chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch create mode 100644 chromium-76.0.3809.100-el7-noexcept.patch diff --git a/chromium-75.0.3770.100-el7-fix-noexcept.patch b/chromium-75.0.3770.100-el7-fix-noexcept.patch deleted file mode 100644 index eaba072..0000000 --- a/chromium-75.0.3770.100-el7-fix-noexcept.patch +++ /dev/null @@ -1,54 +0,0 @@ -diff -up chromium-75.0.3770.100/chrome/common/media_router/media_sink.cc.el7-noexcept chromium-75.0.3770.100/chrome/common/media_router/media_sink.cc ---- chromium-75.0.3770.100/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-06-18 11:47:55.000000000 -0400 -+++ chromium-75.0.3770.100/chrome/common/media_router/media_sink.cc 2019-06-20 10:17:27.440446569 -0400 -@@ -19,12 +19,12 @@ MediaSink::MediaSink(const MediaSink::Id - provider_id_(provider_id) {} - - MediaSink::MediaSink(const MediaSink& other) = default; --MediaSink::MediaSink(MediaSink&& other) noexcept = default; -+MediaSink::MediaSink(MediaSink&& other) = default; - MediaSink::MediaSink() = default; - MediaSink::~MediaSink() = default; - - MediaSink& MediaSink::operator=(const MediaSink& other) = default; --MediaSink& MediaSink::operator=(MediaSink&& other) noexcept = default; -+MediaSink& MediaSink::operator=(MediaSink&& other) = default; - - bool MediaSink::IsMaybeCloudSink() const { - switch (icon_type_) { -diff -up chromium-75.0.3770.100/components/policy/core/common/policy_map.cc.el7-noexcept chromium-75.0.3770.100/components/policy/core/common/policy_map.cc ---- chromium-75.0.3770.100/components/policy/core/common/policy_map.cc.el7-noexcept 2019-06-18 11:48:01.000000000 -0400 -+++ chromium-75.0.3770.100/components/policy/core/common/policy_map.cc 2019-06-20 10:17:27.444446463 -0400 -@@ -31,7 +31,7 @@ PolicyMap::Entry::Entry( - PolicyMap::Entry::~Entry() = default; - - PolicyMap::Entry::Entry(Entry&&) noexcept = default; --PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) noexcept = default; -+PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) = default; - - PolicyMap::Entry PolicyMap::Entry::DeepCopy() const { - Entry copy; -diff -up chromium-75.0.3770.100/components/signin/core/browser/account_info.cc.el7-noexcept chromium-75.0.3770.100/components/signin/core/browser/account_info.cc ---- chromium-75.0.3770.100/components/signin/core/browser/account_info.cc.el7-noexcept 2019-06-20 10:17:27.444446463 -0400 -+++ chromium-75.0.3770.100/components/signin/core/browser/account_info.cc 2019-06-20 10:19:17.959532865 -0400 -@@ -51,7 +51,7 @@ CoreAccountInfo::CoreAccountInfo(CoreAcc - CoreAccountInfo& CoreAccountInfo::operator=(const CoreAccountInfo& other) = - default; - --CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) noexcept = -+CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) = - default; - - bool CoreAccountInfo::IsEmpty() const { -diff -up chromium-75.0.3770.100/gpu/config/gpu_info.cc.el7-noexcept chromium-75.0.3770.100/gpu/config/gpu_info.cc ---- chromium-75.0.3770.100/gpu/config/gpu_info.cc.el7-noexcept 2019-06-18 11:48:10.000000000 -0400 -+++ chromium-75.0.3770.100/gpu/config/gpu_info.cc 2019-06-20 10:17:27.445446437 -0400 -@@ -181,7 +181,7 @@ GPUInfo::GPUDevice& GPUInfo::GPUDevice:: - const GPUInfo::GPUDevice& other) = default; - - GPUInfo::GPUDevice& GPUInfo::GPUDevice::operator=( -- GPUInfo::GPUDevice&& other) noexcept = default; -+ GPUInfo::GPUDevice&& other) = default; - - GPUInfo::GPUInfo() - : optimus(false), diff --git a/chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch b/chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch deleted file mode 100644 index 09fccf6..0000000 --- a/chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch +++ /dev/null @@ -1,23 +0,0 @@ -diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.gcc-accountinfo-move-noexcept-epel chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc ---- chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.gcc-accountinfo-move-noexcept-epel 2019-08-23 07:35:16.544308344 +0200 -+++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc 2019-08-23 07:35:34.115441446 +0200 -@@ -14,8 +14,6 @@ CoreAccountId::~CoreAccountId() = defaul - - CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; - --CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) noexcept = default; -- - CoreAccountId::CoreAccountId(const char* id) : id(id) {} - - CoreAccountId::CoreAccountId(std::string&& id) : id(std::move(id)) {} -diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.gcc-accountinfo-move-noexcept-epel chromium-76.0.3809.100/google_apis/gaia/core_account_id.h ---- chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.gcc-accountinfo-move-noexcept-epel 2019-08-23 07:36:05.994682935 +0200 -+++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.h 2019-08-23 07:36:13.039736302 +0200 -@@ -19,7 +19,6 @@ struct CoreAccountId { - ~CoreAccountId(); - - CoreAccountId& operator=(const CoreAccountId&); -- CoreAccountId& operator=(CoreAccountId&&) noexcept; - - // Those implicit constructor and conversion operator allow to - // progressively migrate the code to use this struct. Removing diff --git a/chromium-76.0.3809.100-el7-noexcept.patch b/chromium-76.0.3809.100-el7-noexcept.patch new file mode 100644 index 0000000..054d42e --- /dev/null +++ b/chromium-76.0.3809.100-el7-noexcept.patch @@ -0,0 +1,89 @@ +diff -up chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noexcept chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc +--- chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-08-23 10:35:14.911079823 +0200 ++++ chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc 2019-08-23 10:35:14.911079823 +0200 +@@ -19,12 +19,12 @@ MediaSink::MediaSink(const MediaSink::Id + provider_id_(provider_id) {} + + MediaSink::MediaSink(const MediaSink& other) = default; +-MediaSink::MediaSink(MediaSink&& other) noexcept = default; ++MediaSink::MediaSink(MediaSink&& other) = default; + MediaSink::MediaSink() = default; + MediaSink::~MediaSink() = default; + + MediaSink& MediaSink::operator=(const MediaSink& other) = default; +-MediaSink& MediaSink::operator=(MediaSink&& other) noexcept = default; ++MediaSink& MediaSink::operator=(MediaSink&& other) = default; + + bool MediaSink::IsMaybeCloudSink() const { + switch (icon_type_) { +diff -up chromium-76.0.3809.100/components/history/core/browser/url_row.cc.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/url_row.cc +diff -up chromium-76.0.3809.100/components/history/core/browser/url_row.h.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/url_row.h +diff -up chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept chromium-76.0.3809.100/components/policy/core/common/policy_map.cc +--- chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept 2019-08-23 10:35:01.127962168 +0200 ++++ chromium-76.0.3809.100/components/policy/core/common/policy_map.cc 2019-08-23 10:35:01.075961724 +0200 +@@ -52,7 +52,7 @@ PolicyMap::Entry::Entry( + PolicyMap::Entry::~Entry() = default; + + PolicyMap::Entry::Entry(Entry&&) noexcept = default; +-PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) noexcept = default; ++PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) = default; + + PolicyMap::Entry PolicyMap::Entry::DeepCopy() const { + Entry copy; +diff -up chromium-76.0.3809.100/components/signin/core/browser/account_info.cc.el7-noexcept chromium-76.0.3809.100/components/signin/core/browser/account_info.cc +--- chromium-76.0.3809.100/components/signin/core/browser/account_info.cc.el7-noexcept 2019-08-23 10:35:02.341972531 +0200 ++++ chromium-76.0.3809.100/components/signin/core/browser/account_info.cc 2019-08-23 10:35:02.314972300 +0200 +@@ -52,7 +52,7 @@ CoreAccountInfo::CoreAccountInfo(CoreAcc + CoreAccountInfo& CoreAccountInfo::operator=(const CoreAccountInfo& other) = + default; + +-CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) noexcept = ++CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) = + default; + + bool CoreAccountInfo::IsEmpty() const { +@@ -69,7 +69,7 @@ AccountInfo::AccountInfo(AccountInfo&& o + + AccountInfo& AccountInfo::operator=(const AccountInfo& other) = default; + +-AccountInfo& AccountInfo::operator=(AccountInfo&& other) noexcept = default; ++AccountInfo& AccountInfo::operator=(AccountInfo&& other) = default; + + bool AccountInfo::IsEmpty() const { + return CoreAccountInfo::IsEmpty() && hosted_domain.empty() && +diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.el7-noexcept chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc +--- chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.el7-noexcept 2019-08-23 10:52:29.047592493 +0200 ++++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc 2019-08-23 10:52:48.243763687 +0200 +@@ -14,7 +14,7 @@ CoreAccountId::~CoreAccountId() = defaul + + CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; + +-CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) noexcept = default; ++CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) = default; + + CoreAccountId::CoreAccountId(const char* id) : id(id) {} + +diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.el7-noexcept chromium-76.0.3809.100/google_apis/gaia/core_account_id.h +--- chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.el7-noexcept 2019-08-23 10:52:31.541614735 +0200 ++++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.h 2019-08-23 10:53:03.252898948 +0200 +@@ -19,7 +19,7 @@ struct CoreAccountId { + ~CoreAccountId(); + + CoreAccountId& operator=(const CoreAccountId&); +- CoreAccountId& operator=(CoreAccountId&&) noexcept; ++ CoreAccountId& operator=(CoreAccountId&&); + + // Those implicit constructor and conversion operator allow to + // progressively migrate the code to use this struct. Removing +diff -up chromium-76.0.3809.100/gpu/config/gpu_info.cc.el7-noexcept chromium-76.0.3809.100/gpu/config/gpu_info.cc +--- chromium-76.0.3809.100/gpu/config/gpu_info.cc.el7-noexcept 2019-08-23 10:38:00.659317249 +0200 ++++ chromium-76.0.3809.100/gpu/config/gpu_info.cc 2019-08-23 10:38:00.656317223 +0200 +@@ -166,7 +166,7 @@ GPUInfo::GPUDevice& GPUInfo::GPUDevice:: + const GPUInfo::GPUDevice& other) = default; + + GPUInfo::GPUDevice& GPUInfo::GPUDevice::operator=( +- GPUInfo::GPUDevice&& other) noexcept = default; ++ GPUInfo::GPUDevice&& other) = default; + + GPUInfo::GPUInfo() + : optimus(false), diff --git a/chromium.spec b/chromium.spec index e09a0ac..c961abc 100644 --- a/chromium.spec +++ b/chromium.spec @@ -310,9 +310,7 @@ Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch # Use lstdc++ on EPEL7 only Patch101: chromium-75.0.3770.100-epel7-stdc++.patch # el7 only patch -Patch102: chromium-75.0.3770.100-el7-fix-noexcept.patch -# el7 only patch as it doesn't like on of the operator= change in patch59 -Patch103: chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch +Patch102: chromium-76.0.3809.100-el7-noexcept.patch # In file included from ../linux/directory.c:21: # In file included from ../../../../native_client/src/nonsfi/linux/abi_conversion.h:20: @@ -887,7 +885,8 @@ udev. %patch100 -p1 -b .kmaxskip %patch101 -p1 -b .epel7 %patch102 -p1 -b .el7-noexcept -%patch103 -p1 -b .el7-gcc-accountinfo-move-noexcept +# Revert patch58 because it's breaking the build on el7 +%patch58 -R -p1 %endif # Feature specific patches From 2f9ffec1c569135a8630d144cb0c4e833e55aabf Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 23 Aug 2019 13:48:03 +0200 Subject: [PATCH 0393/1449] Another el7 noexcept change --- chromium-76.0.3809.100-el7-noexcept.patch | 50 ++++++++++++++++------- 1 file changed, 36 insertions(+), 14 deletions(-) diff --git a/chromium-76.0.3809.100-el7-noexcept.patch b/chromium-76.0.3809.100-el7-noexcept.patch index 054d42e..99593f7 100644 --- a/chromium-76.0.3809.100-el7-noexcept.patch +++ b/chromium-76.0.3809.100-el7-noexcept.patch @@ -1,6 +1,6 @@ diff -up chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noexcept chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc ---- chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-08-23 10:35:14.911079823 +0200 -+++ chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc 2019-08-23 10:35:14.911079823 +0200 +--- chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-08-23 13:41:04.842597850 +0200 ++++ chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc 2019-08-23 13:41:04.842597850 +0200 @@ -19,12 +19,12 @@ MediaSink::MediaSink(const MediaSink::Id provider_id_(provider_id) {} @@ -16,11 +16,33 @@ diff -up chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noe bool MediaSink::IsMaybeCloudSink() const { switch (icon_type_) { -diff -up chromium-76.0.3809.100/components/history/core/browser/url_row.cc.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/url_row.cc -diff -up chromium-76.0.3809.100/components/history/core/browser/url_row.h.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/url_row.h +diff -up chromium-76.0.3809.100/components/history/core/browser/history_types.cc.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/history_types.cc +--- chromium-76.0.3809.100/components/history/core/browser/history_types.cc.el7-noexcept 2019-08-23 13:45:57.673815531 +0200 ++++ chromium-76.0.3809.100/components/history/core/browser/history_types.cc 2019-08-23 13:47:02.463525385 +0200 +@@ -42,7 +42,7 @@ QueryResults::QueryResults(QueryResults& + Swap(&other); + } + +-QueryResults& QueryResults::operator=(QueryResults&& other) noexcept { ++QueryResults& QueryResults::operator=(QueryResults&& other) { + Swap(&other); + return *this; + } +diff -up chromium-76.0.3809.100/components/history/core/browser/history_types.h.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/history_types.h +--- chromium-76.0.3809.100/components/history/core/browser/history_types.h.el7-noexcept 2019-08-23 13:46:11.455966965 +0200 ++++ chromium-76.0.3809.100/components/history/core/browser/history_types.h 2019-08-23 13:46:48.022367596 +0200 +@@ -143,7 +143,7 @@ class QueryResults { + ~QueryResults(); + + QueryResults(QueryResults&& other) noexcept; +- QueryResults& operator=(QueryResults&& other) noexcept; ++ QueryResults& operator=(QueryResults&& other); + + void set_reached_beginning(bool reached) { reached_beginning_ = reached; } + bool reached_beginning() { return reached_beginning_; } diff -up chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept chromium-76.0.3809.100/components/policy/core/common/policy_map.cc ---- chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept 2019-08-23 10:35:01.127962168 +0200 -+++ chromium-76.0.3809.100/components/policy/core/common/policy_map.cc 2019-08-23 10:35:01.075961724 +0200 +--- chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept 2019-08-23 13:40:42.633353810 +0200 ++++ chromium-76.0.3809.100/components/policy/core/common/policy_map.cc 2019-08-23 13:40:42.576353183 +0200 @@ -52,7 +52,7 @@ PolicyMap::Entry::Entry( PolicyMap::Entry::~Entry() = default; @@ -31,8 +53,8 @@ diff -up chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7- PolicyMap::Entry PolicyMap::Entry::DeepCopy() const { Entry copy; diff -up chromium-76.0.3809.100/components/signin/core/browser/account_info.cc.el7-noexcept chromium-76.0.3809.100/components/signin/core/browser/account_info.cc ---- chromium-76.0.3809.100/components/signin/core/browser/account_info.cc.el7-noexcept 2019-08-23 10:35:02.341972531 +0200 -+++ chromium-76.0.3809.100/components/signin/core/browser/account_info.cc 2019-08-23 10:35:02.314972300 +0200 +--- chromium-76.0.3809.100/components/signin/core/browser/account_info.cc.el7-noexcept 2019-08-23 13:40:44.224371292 +0200 ++++ chromium-76.0.3809.100/components/signin/core/browser/account_info.cc 2019-08-23 13:40:44.190370918 +0200 @@ -52,7 +52,7 @@ CoreAccountInfo::CoreAccountInfo(CoreAcc CoreAccountInfo& CoreAccountInfo::operator=(const CoreAccountInfo& other) = default; @@ -52,8 +74,8 @@ diff -up chromium-76.0.3809.100/components/signin/core/browser/account_info.cc.e bool AccountInfo::IsEmpty() const { return CoreAccountInfo::IsEmpty() && hosted_domain.empty() && diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.el7-noexcept chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc ---- chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.el7-noexcept 2019-08-23 10:52:29.047592493 +0200 -+++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc 2019-08-23 10:52:48.243763687 +0200 +--- chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.el7-noexcept 2019-08-23 13:40:25.468165195 +0200 ++++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc 2019-08-23 13:40:25.481165338 +0200 @@ -14,7 +14,7 @@ CoreAccountId::~CoreAccountId() = defaul CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; @@ -64,8 +86,8 @@ diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.el7-noexcept CoreAccountId::CoreAccountId(const char* id) : id(id) {} diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.el7-noexcept chromium-76.0.3809.100/google_apis/gaia/core_account_id.h ---- chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.el7-noexcept 2019-08-23 10:52:31.541614735 +0200 -+++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.h 2019-08-23 10:53:03.252898948 +0200 +--- chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.el7-noexcept 2019-08-23 13:40:25.468165195 +0200 ++++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.h 2019-08-23 13:40:25.481165338 +0200 @@ -19,7 +19,7 @@ struct CoreAccountId { ~CoreAccountId(); @@ -76,8 +98,8 @@ diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.el7-noexcept // Those implicit constructor and conversion operator allow to // progressively migrate the code to use this struct. Removing diff -up chromium-76.0.3809.100/gpu/config/gpu_info.cc.el7-noexcept chromium-76.0.3809.100/gpu/config/gpu_info.cc ---- chromium-76.0.3809.100/gpu/config/gpu_info.cc.el7-noexcept 2019-08-23 10:38:00.659317249 +0200 -+++ chromium-76.0.3809.100/gpu/config/gpu_info.cc 2019-08-23 10:38:00.656317223 +0200 +--- chromium-76.0.3809.100/gpu/config/gpu_info.cc.el7-noexcept 2019-08-09 16:48:01.000000000 +0200 ++++ chromium-76.0.3809.100/gpu/config/gpu_info.cc 2019-08-23 13:40:25.482165349 +0200 @@ -166,7 +166,7 @@ GPUInfo::GPUDevice& GPUInfo::GPUDevice:: const GPUInfo::GPUDevice& other) = default; From 77fd050dd942221c6dd0e8b09183bf3319e1fdfd Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 26 Aug 2019 14:40:26 +0200 Subject: [PATCH 0394/1449] Another noexec fix for EL7 --- chromium-76.0.3809.100-el7-noexcept.patch | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/chromium-76.0.3809.100-el7-noexcept.patch b/chromium-76.0.3809.100-el7-noexcept.patch index 99593f7..407f8de 100644 --- a/chromium-76.0.3809.100-el7-noexcept.patch +++ b/chromium-76.0.3809.100-el7-noexcept.patch @@ -18,7 +18,7 @@ diff -up chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noe switch (icon_type_) { diff -up chromium-76.0.3809.100/components/history/core/browser/history_types.cc.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/history_types.cc --- chromium-76.0.3809.100/components/history/core/browser/history_types.cc.el7-noexcept 2019-08-23 13:45:57.673815531 +0200 -+++ chromium-76.0.3809.100/components/history/core/browser/history_types.cc 2019-08-23 13:47:02.463525385 +0200 ++++ chromium-76.0.3809.100/components/history/core/browser/history_types.cc 2019-08-26 10:13:00.815409764 +0200 @@ -42,7 +42,7 @@ QueryResults::QueryResults(QueryResults& Swap(&other); } @@ -28,9 +28,18 @@ diff -up chromium-76.0.3809.100/components/history/core/browser/history_types.cc Swap(&other); return *this; } +@@ -186,7 +186,7 @@ QueryURLResult::QueryURLResult(QueryURLR + + QueryURLResult& QueryURLResult::operator=(const QueryURLResult&) = default; + +-QueryURLResult& QueryURLResult::operator=(QueryURLResult&&) noexcept = default; ++QueryURLResult& QueryURLResult::operator=(QueryURLResult&&) = default; + + // MostVisitedURL -------------------------------------------------------------- + diff -up chromium-76.0.3809.100/components/history/core/browser/history_types.h.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/history_types.h --- chromium-76.0.3809.100/components/history/core/browser/history_types.h.el7-noexcept 2019-08-23 13:46:11.455966965 +0200 -+++ chromium-76.0.3809.100/components/history/core/browser/history_types.h 2019-08-23 13:46:48.022367596 +0200 ++++ chromium-76.0.3809.100/components/history/core/browser/history_types.h 2019-08-26 10:13:49.951881558 +0200 @@ -143,7 +143,7 @@ class QueryResults { ~QueryResults(); @@ -40,6 +49,15 @@ diff -up chromium-76.0.3809.100/components/history/core/browser/history_types.h. void set_reached_beginning(bool reached) { reached_beginning_ = reached; } bool reached_beginning() { return reached_beginning_; } +@@ -278,7 +278,7 @@ struct QueryURLResult { + QueryURLResult(const QueryURLResult&); + QueryURLResult(QueryURLResult&&) noexcept; + QueryURLResult& operator=(const QueryURLResult&); +- QueryURLResult& operator=(QueryURLResult&&) noexcept; ++ QueryURLResult& operator=(QueryURLResult&&); + ~QueryURLResult(); + + // Indicates whether the call to HistoryBackend::QueryURL was successfull diff -up chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept chromium-76.0.3809.100/components/policy/core/common/policy_map.cc --- chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept 2019-08-23 13:40:42.633353810 +0200 +++ chromium-76.0.3809.100/components/policy/core/common/policy_map.cc 2019-08-23 13:40:42.576353183 +0200 From 937790beb5adc1bcd8c978d0e60d064afc9ad318 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 27 Aug 2019 07:13:54 +0200 Subject: [PATCH 0395/1449] Update to 76.0.3809.132 --- ....3809.100-gcc-ambigous-instantiation.patch | 39 ------------------- chromium.spec | 7 +++- sources | 2 +- 3 files changed, 6 insertions(+), 42 deletions(-) delete mode 100644 chromium-76.0.3809.100-gcc-ambigous-instantiation.patch diff --git a/chromium-76.0.3809.100-gcc-ambigous-instantiation.patch b/chromium-76.0.3809.100-gcc-ambigous-instantiation.patch deleted file mode 100644 index 587abf3..0000000 --- a/chromium-76.0.3809.100-gcc-ambigous-instantiation.patch +++ /dev/null @@ -1,39 +0,0 @@ -From 52b5ceac95b67491b1c71f0ef9a32b778bbbaa2e Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Wed, 05 Jun 2019 19:46:55 +0000 -Subject: [PATCH] GCC: avoid ambiguous NoDestructor creation in GetNeverSniffedMimeTypes. - -Use brace-list notation to wrap the already existing brace-list for -initializing the flat-set. This resolves an ambiguous instantiation -in GCC. - -Bug: 819294 -Change-Id: I89ddf12522d62a5140a8c2c41dc98e30ec7a0e78 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645774 -Reviewed-by: Matt Menke -Commit-Queue: José Dapena Paz -Cr-Commit-Position: refs/heads/master@{#666401} ---- - -diff --git a/services/network/cross_origin_read_blocking.cc b/services/network/cross_origin_read_blocking.cc -index 30999c0..60a03f6 100644 ---- a/services/network/cross_origin_read_blocking.cc -+++ b/services/network/cross_origin_read_blocking.cc -@@ -211,7 +211,7 @@ - // confirmation sniffing because images, scripts, etc. are frequently - // mislabelled by http servers as HTML/JSON/XML). - base::flat_set& GetNeverSniffedMimeTypes() { -- static base::NoDestructor> s_types({ -+ static base::NoDestructor> s_types{{ - // The list below has been populated based on most commonly used content - // types according to HTTP Archive - see: - // https://github.com/whatwg/fetch/issues/860#issuecomment-457330454 -@@ -224,7 +224,7 @@ - "application/x-www-form-urlencoded", - "application/zip", - "text/event-stream", -- }); -+ }}; - - // All items need to be lower-case, to support case-insensitive comparisons - // later. diff --git a/chromium.spec b/chromium.spec index c961abc..cbc4fa4 100644 --- a/chromium.spec +++ b/chromium.spec @@ -171,7 +171,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3809.100 +Version: %{majorversion}.0.3809.132 Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home @@ -280,7 +280,7 @@ Patch50: chromium-76.0.3809.100-quiche-compile-fix.patch # https://chromium.googlesource.com/chromium/src/+/53bb5a463ee956c70230eaa5450022185d0ddc3c Patch51: chromium-76.0.3809.100-throttling-dead-beef.patch # https://chromium.googlesource.com/chromium/src/+/52b5ceac95b67491b1c71f0ef9a32b778bbbaa2e -Patch52: chromium-76.0.3809.100-gcc-ambigous-instantiation.patch +Patch52: chromium-76.0.3809.132-gcc-ambigous-instantiation.patch # https://chromium.googlesource.com/chromium/src.git/+/715cb38eac889625de0c429d2672562188b4107e Patch53: chromium-76.0.3809.100-weak-ptr-no-except.patch # https://chromium.googlesource.com/chromium/src.git/+/c6afbd59c997c2b64f11abdd1eaef71ae8ea2ddc @@ -1908,6 +1908,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Tue Aug 27 2019 Tomas Popela - 76.0.3809.132-1 +- Update to 76.0.3809.132 + * Tue Aug 13 2019 Tomas Popela - 76.0.3809.100-1 - Update to 76.0.3809.100 diff --git a/sources b/sources index b7a420d..2d38a7c 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-76.0.3809.100-clean.tar.xz) = 418ade473185717595b47fbf49ad58bd9bf7cece43f9e200108a2f4df1391bc6a09673e7c30a9958205e13650ed220ad289fe3d79d140612ec5c0bb7891fc8c8 +SHA512 (chromium-76.0.3809.132-clean.tar.xz) = fbc5f989945adfaffb9fb5199ccb988accdc53f41a03bba9c4ab3df8585b9267b1f34cd7a6ac487eff34ebb6e65865e32ceea4ad945eec30f871d8eed41f3e6f From 5039438024ac562fb0db46dc2c07c76ead8daa0c Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 27 Aug 2019 07:56:12 +0200 Subject: [PATCH 0396/1449] Add an updated patch that was missed --- ....3809.132-gcc-ambigous-instantiation.patch | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 chromium-76.0.3809.132-gcc-ambigous-instantiation.patch diff --git a/chromium-76.0.3809.132-gcc-ambigous-instantiation.patch b/chromium-76.0.3809.132-gcc-ambigous-instantiation.patch new file mode 100644 index 0000000..73db4d4 --- /dev/null +++ b/chromium-76.0.3809.132-gcc-ambigous-instantiation.patch @@ -0,0 +1,21 @@ +diff -up chromium-76.0.3809.132/services/network/cross_origin_read_blocking.cc.gcc-ambigous-instantiation chromium-76.0.3809.132/services/network/cross_origin_read_blocking.cc +--- chromium-76.0.3809.132/services/network/cross_origin_read_blocking.cc.gcc-ambigous-instantiation 2019-08-26 21:02:33.000000000 +0200 ++++ chromium-76.0.3809.132/services/network/cross_origin_read_blocking.cc 2019-08-27 06:58:23.963821667 +0200 +@@ -207,7 +207,7 @@ std::set& GetPluginProxyingProcesse + // confirmation sniffing because images, scripts, etc. are frequently + // mislabelled by http servers as HTML/JSON/XML). + base::flat_set& GetNeverSniffedMimeTypes() { +- static base::NoDestructor> s_types({ ++ static base::NoDestructor> s_types{{ + // The list below has been populated based on most commonly used content + // types according to HTTP Archive - see: + // https://github.com/whatwg/fetch/issues/860#issuecomment-457330454 +@@ -219,7 +219,7 @@ base::flat_set& GetNeverSni + "application/x-protobuf", + "application/zip", + "text/event-stream", +- }); ++ }}; + + // All items need to be lower-case, to support case-insensitive comparisons + // later. From ec9d075ebbacdd8fa116137d33f073fa37713b54 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Mon, 26 Aug 2019 19:17:48 +0200 Subject: [PATCH 0397/1449] Use bundled Python 2 libraries during build This removes the dependency on a small stack of Python 2 libraries. There is a %global flag to control this, however only markupsafe is handled differently when %bundlepylibs is set, other libraries seem to have been bundled already. --- chromium.spec | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/chromium.spec b/chromium.spec index cbc4fa4..8e251b9 100644 --- a/chromium.spec +++ b/chromium.spec @@ -105,6 +105,10 @@ BuildRequires: libicu-devel >= 5.4 # 2017-06-08. %global bundlelibxml 1 +# Fedora's Python 2 stack is being removed, we use the bundled Python libraries +# This can be revisited once we upgrade to Python 3 +%global bundlepylibs 1 + # Chromium used to break on wayland, hidpi, and colors with gtk3 enabled. # Hopefully it does not anymore. %global gtk3 1 @@ -515,8 +519,11 @@ BuildRequires: pkgconfig(gtk+-3.0) %else BuildRequires: pkgconfig(gtk+-2.0) %endif -BuildRequires: python2-devel -%if 0%{?fedora} > 27 +BuildRequires: /usr/bin/python2 +%if 0%{?bundlepylibs} +# Using bundled bits, do nothing. +%else +%if 0%{?fedora} BuildRequires: python2-beautifulsoup4 BuildRequires: python2-beautifulsoup BuildRequires: python2-html5lib @@ -530,6 +537,8 @@ BuildRequires: python-markupsafe BuildRequires: python-ply %endif BuildRequires: python2-simplejson +BuildRequires: python2-devel +%endif %if 0%{?bundlere2} # Using bundled bits, do nothing. %else @@ -1257,7 +1266,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ %endif 'third_party/lss' \ 'third_party/lzma_sdk' \ -%if 0 +%if 0%{?bundlepylibs} 'third_party/markupsafe' \ %endif 'third_party/mesa' \ @@ -1345,10 +1354,12 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'v8/third_party/inspector_protocol' \ --do-remove +%if ! 0%{?bundlepylibs} # Look, I don't know. This package is spit and chewing gum. Sorry. rm -rf third_party/markupsafe ln -s %{python2_sitearch}/markupsafe third_party/markupsafe # We should look on removing other python2 packages as well i.e. ply +%endif # Fix hardcoded path in remoting code sed -i 's|/opt/google/chrome-remote-desktop|%{crd_path}|g' remoting/host/setup/daemon_controller_delegate_linux.cc From af4746e6db6857279053ac789cb8fe0fe8af4b88 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 23 Aug 2019 07:54:57 +0200 Subject: [PATCH 0398/1449] Fix the EL7 build as it doesn't like part of the upstream GCC patch --- ...00-el7-gcc-accountinfo-move-noexcept.patch | 23 +++++++++++++++++++ chromium.spec | 3 +++ 2 files changed, 26 insertions(+) create mode 100644 chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch diff --git a/chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch b/chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch new file mode 100644 index 0000000..09fccf6 --- /dev/null +++ b/chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch @@ -0,0 +1,23 @@ +diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.gcc-accountinfo-move-noexcept-epel chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc +--- chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.gcc-accountinfo-move-noexcept-epel 2019-08-23 07:35:16.544308344 +0200 ++++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc 2019-08-23 07:35:34.115441446 +0200 +@@ -14,8 +14,6 @@ CoreAccountId::~CoreAccountId() = defaul + + CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; + +-CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) noexcept = default; +- + CoreAccountId::CoreAccountId(const char* id) : id(id) {} + + CoreAccountId::CoreAccountId(std::string&& id) : id(std::move(id)) {} +diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.gcc-accountinfo-move-noexcept-epel chromium-76.0.3809.100/google_apis/gaia/core_account_id.h +--- chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.gcc-accountinfo-move-noexcept-epel 2019-08-23 07:36:05.994682935 +0200 ++++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.h 2019-08-23 07:36:13.039736302 +0200 +@@ -19,7 +19,6 @@ struct CoreAccountId { + ~CoreAccountId(); + + CoreAccountId& operator=(const CoreAccountId&); +- CoreAccountId& operator=(CoreAccountId&&) noexcept; + + // Those implicit constructor and conversion operator allow to + // progressively migrate the code to use this struct. Removing diff --git a/chromium.spec b/chromium.spec index 8a246b7..e09a0ac 100644 --- a/chromium.spec +++ b/chromium.spec @@ -311,6 +311,8 @@ Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch Patch101: chromium-75.0.3770.100-epel7-stdc++.patch # el7 only patch Patch102: chromium-75.0.3770.100-el7-fix-noexcept.patch +# el7 only patch as it doesn't like on of the operator= change in patch59 +Patch103: chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch # In file included from ../linux/directory.c:21: # In file included from ../../../../native_client/src/nonsfi/linux/abi_conversion.h:20: @@ -885,6 +887,7 @@ udev. %patch100 -p1 -b .kmaxskip %patch101 -p1 -b .epel7 %patch102 -p1 -b .el7-noexcept +%patch103 -p1 -b .el7-gcc-accountinfo-move-noexcept %endif # Feature specific patches From aaab3d4ed48f25ec94e1169d61281ab3ceef5d31 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 23 Aug 2019 11:01:37 +0200 Subject: [PATCH 0399/1449] More el7 fixes Merge the previously committed change in to the el7-noexcept patch and revert another change that is needed on Fedora, but breaking the build on EL7. --- chromium-75.0.3770.100-el7-fix-noexcept.patch | 54 ----------- ...00-el7-gcc-accountinfo-move-noexcept.patch | 23 ----- chromium-76.0.3809.100-el7-noexcept.patch | 89 +++++++++++++++++++ chromium.spec | 7 +- 4 files changed, 92 insertions(+), 81 deletions(-) delete mode 100644 chromium-75.0.3770.100-el7-fix-noexcept.patch delete mode 100644 chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch create mode 100644 chromium-76.0.3809.100-el7-noexcept.patch diff --git a/chromium-75.0.3770.100-el7-fix-noexcept.patch b/chromium-75.0.3770.100-el7-fix-noexcept.patch deleted file mode 100644 index eaba072..0000000 --- a/chromium-75.0.3770.100-el7-fix-noexcept.patch +++ /dev/null @@ -1,54 +0,0 @@ -diff -up chromium-75.0.3770.100/chrome/common/media_router/media_sink.cc.el7-noexcept chromium-75.0.3770.100/chrome/common/media_router/media_sink.cc ---- chromium-75.0.3770.100/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-06-18 11:47:55.000000000 -0400 -+++ chromium-75.0.3770.100/chrome/common/media_router/media_sink.cc 2019-06-20 10:17:27.440446569 -0400 -@@ -19,12 +19,12 @@ MediaSink::MediaSink(const MediaSink::Id - provider_id_(provider_id) {} - - MediaSink::MediaSink(const MediaSink& other) = default; --MediaSink::MediaSink(MediaSink&& other) noexcept = default; -+MediaSink::MediaSink(MediaSink&& other) = default; - MediaSink::MediaSink() = default; - MediaSink::~MediaSink() = default; - - MediaSink& MediaSink::operator=(const MediaSink& other) = default; --MediaSink& MediaSink::operator=(MediaSink&& other) noexcept = default; -+MediaSink& MediaSink::operator=(MediaSink&& other) = default; - - bool MediaSink::IsMaybeCloudSink() const { - switch (icon_type_) { -diff -up chromium-75.0.3770.100/components/policy/core/common/policy_map.cc.el7-noexcept chromium-75.0.3770.100/components/policy/core/common/policy_map.cc ---- chromium-75.0.3770.100/components/policy/core/common/policy_map.cc.el7-noexcept 2019-06-18 11:48:01.000000000 -0400 -+++ chromium-75.0.3770.100/components/policy/core/common/policy_map.cc 2019-06-20 10:17:27.444446463 -0400 -@@ -31,7 +31,7 @@ PolicyMap::Entry::Entry( - PolicyMap::Entry::~Entry() = default; - - PolicyMap::Entry::Entry(Entry&&) noexcept = default; --PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) noexcept = default; -+PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) = default; - - PolicyMap::Entry PolicyMap::Entry::DeepCopy() const { - Entry copy; -diff -up chromium-75.0.3770.100/components/signin/core/browser/account_info.cc.el7-noexcept chromium-75.0.3770.100/components/signin/core/browser/account_info.cc ---- chromium-75.0.3770.100/components/signin/core/browser/account_info.cc.el7-noexcept 2019-06-20 10:17:27.444446463 -0400 -+++ chromium-75.0.3770.100/components/signin/core/browser/account_info.cc 2019-06-20 10:19:17.959532865 -0400 -@@ -51,7 +51,7 @@ CoreAccountInfo::CoreAccountInfo(CoreAcc - CoreAccountInfo& CoreAccountInfo::operator=(const CoreAccountInfo& other) = - default; - --CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) noexcept = -+CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) = - default; - - bool CoreAccountInfo::IsEmpty() const { -diff -up chromium-75.0.3770.100/gpu/config/gpu_info.cc.el7-noexcept chromium-75.0.3770.100/gpu/config/gpu_info.cc ---- chromium-75.0.3770.100/gpu/config/gpu_info.cc.el7-noexcept 2019-06-18 11:48:10.000000000 -0400 -+++ chromium-75.0.3770.100/gpu/config/gpu_info.cc 2019-06-20 10:17:27.445446437 -0400 -@@ -181,7 +181,7 @@ GPUInfo::GPUDevice& GPUInfo::GPUDevice:: - const GPUInfo::GPUDevice& other) = default; - - GPUInfo::GPUDevice& GPUInfo::GPUDevice::operator=( -- GPUInfo::GPUDevice&& other) noexcept = default; -+ GPUInfo::GPUDevice&& other) = default; - - GPUInfo::GPUInfo() - : optimus(false), diff --git a/chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch b/chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch deleted file mode 100644 index 09fccf6..0000000 --- a/chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch +++ /dev/null @@ -1,23 +0,0 @@ -diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.gcc-accountinfo-move-noexcept-epel chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc ---- chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.gcc-accountinfo-move-noexcept-epel 2019-08-23 07:35:16.544308344 +0200 -+++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc 2019-08-23 07:35:34.115441446 +0200 -@@ -14,8 +14,6 @@ CoreAccountId::~CoreAccountId() = defaul - - CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; - --CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) noexcept = default; -- - CoreAccountId::CoreAccountId(const char* id) : id(id) {} - - CoreAccountId::CoreAccountId(std::string&& id) : id(std::move(id)) {} -diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.gcc-accountinfo-move-noexcept-epel chromium-76.0.3809.100/google_apis/gaia/core_account_id.h ---- chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.gcc-accountinfo-move-noexcept-epel 2019-08-23 07:36:05.994682935 +0200 -+++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.h 2019-08-23 07:36:13.039736302 +0200 -@@ -19,7 +19,6 @@ struct CoreAccountId { - ~CoreAccountId(); - - CoreAccountId& operator=(const CoreAccountId&); -- CoreAccountId& operator=(CoreAccountId&&) noexcept; - - // Those implicit constructor and conversion operator allow to - // progressively migrate the code to use this struct. Removing diff --git a/chromium-76.0.3809.100-el7-noexcept.patch b/chromium-76.0.3809.100-el7-noexcept.patch new file mode 100644 index 0000000..054d42e --- /dev/null +++ b/chromium-76.0.3809.100-el7-noexcept.patch @@ -0,0 +1,89 @@ +diff -up chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noexcept chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc +--- chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-08-23 10:35:14.911079823 +0200 ++++ chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc 2019-08-23 10:35:14.911079823 +0200 +@@ -19,12 +19,12 @@ MediaSink::MediaSink(const MediaSink::Id + provider_id_(provider_id) {} + + MediaSink::MediaSink(const MediaSink& other) = default; +-MediaSink::MediaSink(MediaSink&& other) noexcept = default; ++MediaSink::MediaSink(MediaSink&& other) = default; + MediaSink::MediaSink() = default; + MediaSink::~MediaSink() = default; + + MediaSink& MediaSink::operator=(const MediaSink& other) = default; +-MediaSink& MediaSink::operator=(MediaSink&& other) noexcept = default; ++MediaSink& MediaSink::operator=(MediaSink&& other) = default; + + bool MediaSink::IsMaybeCloudSink() const { + switch (icon_type_) { +diff -up chromium-76.0.3809.100/components/history/core/browser/url_row.cc.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/url_row.cc +diff -up chromium-76.0.3809.100/components/history/core/browser/url_row.h.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/url_row.h +diff -up chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept chromium-76.0.3809.100/components/policy/core/common/policy_map.cc +--- chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept 2019-08-23 10:35:01.127962168 +0200 ++++ chromium-76.0.3809.100/components/policy/core/common/policy_map.cc 2019-08-23 10:35:01.075961724 +0200 +@@ -52,7 +52,7 @@ PolicyMap::Entry::Entry( + PolicyMap::Entry::~Entry() = default; + + PolicyMap::Entry::Entry(Entry&&) noexcept = default; +-PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) noexcept = default; ++PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) = default; + + PolicyMap::Entry PolicyMap::Entry::DeepCopy() const { + Entry copy; +diff -up chromium-76.0.3809.100/components/signin/core/browser/account_info.cc.el7-noexcept chromium-76.0.3809.100/components/signin/core/browser/account_info.cc +--- chromium-76.0.3809.100/components/signin/core/browser/account_info.cc.el7-noexcept 2019-08-23 10:35:02.341972531 +0200 ++++ chromium-76.0.3809.100/components/signin/core/browser/account_info.cc 2019-08-23 10:35:02.314972300 +0200 +@@ -52,7 +52,7 @@ CoreAccountInfo::CoreAccountInfo(CoreAcc + CoreAccountInfo& CoreAccountInfo::operator=(const CoreAccountInfo& other) = + default; + +-CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) noexcept = ++CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) = + default; + + bool CoreAccountInfo::IsEmpty() const { +@@ -69,7 +69,7 @@ AccountInfo::AccountInfo(AccountInfo&& o + + AccountInfo& AccountInfo::operator=(const AccountInfo& other) = default; + +-AccountInfo& AccountInfo::operator=(AccountInfo&& other) noexcept = default; ++AccountInfo& AccountInfo::operator=(AccountInfo&& other) = default; + + bool AccountInfo::IsEmpty() const { + return CoreAccountInfo::IsEmpty() && hosted_domain.empty() && +diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.el7-noexcept chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc +--- chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.el7-noexcept 2019-08-23 10:52:29.047592493 +0200 ++++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc 2019-08-23 10:52:48.243763687 +0200 +@@ -14,7 +14,7 @@ CoreAccountId::~CoreAccountId() = defaul + + CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; + +-CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) noexcept = default; ++CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) = default; + + CoreAccountId::CoreAccountId(const char* id) : id(id) {} + +diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.el7-noexcept chromium-76.0.3809.100/google_apis/gaia/core_account_id.h +--- chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.el7-noexcept 2019-08-23 10:52:31.541614735 +0200 ++++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.h 2019-08-23 10:53:03.252898948 +0200 +@@ -19,7 +19,7 @@ struct CoreAccountId { + ~CoreAccountId(); + + CoreAccountId& operator=(const CoreAccountId&); +- CoreAccountId& operator=(CoreAccountId&&) noexcept; ++ CoreAccountId& operator=(CoreAccountId&&); + + // Those implicit constructor and conversion operator allow to + // progressively migrate the code to use this struct. Removing +diff -up chromium-76.0.3809.100/gpu/config/gpu_info.cc.el7-noexcept chromium-76.0.3809.100/gpu/config/gpu_info.cc +--- chromium-76.0.3809.100/gpu/config/gpu_info.cc.el7-noexcept 2019-08-23 10:38:00.659317249 +0200 ++++ chromium-76.0.3809.100/gpu/config/gpu_info.cc 2019-08-23 10:38:00.656317223 +0200 +@@ -166,7 +166,7 @@ GPUInfo::GPUDevice& GPUInfo::GPUDevice:: + const GPUInfo::GPUDevice& other) = default; + + GPUInfo::GPUDevice& GPUInfo::GPUDevice::operator=( +- GPUInfo::GPUDevice&& other) noexcept = default; ++ GPUInfo::GPUDevice&& other) = default; + + GPUInfo::GPUInfo() + : optimus(false), diff --git a/chromium.spec b/chromium.spec index e09a0ac..c961abc 100644 --- a/chromium.spec +++ b/chromium.spec @@ -310,9 +310,7 @@ Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch # Use lstdc++ on EPEL7 only Patch101: chromium-75.0.3770.100-epel7-stdc++.patch # el7 only patch -Patch102: chromium-75.0.3770.100-el7-fix-noexcept.patch -# el7 only patch as it doesn't like on of the operator= change in patch59 -Patch103: chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch +Patch102: chromium-76.0.3809.100-el7-noexcept.patch # In file included from ../linux/directory.c:21: # In file included from ../../../../native_client/src/nonsfi/linux/abi_conversion.h:20: @@ -887,7 +885,8 @@ udev. %patch100 -p1 -b .kmaxskip %patch101 -p1 -b .epel7 %patch102 -p1 -b .el7-noexcept -%patch103 -p1 -b .el7-gcc-accountinfo-move-noexcept +# Revert patch58 because it's breaking the build on el7 +%patch58 -R -p1 %endif # Feature specific patches From e39b8894d22437395e67a474b9b4addd5ef616e2 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 23 Aug 2019 13:48:03 +0200 Subject: [PATCH 0400/1449] Another el7 noexcept change --- chromium-76.0.3809.100-el7-noexcept.patch | 50 ++++++++++++++++------- 1 file changed, 36 insertions(+), 14 deletions(-) diff --git a/chromium-76.0.3809.100-el7-noexcept.patch b/chromium-76.0.3809.100-el7-noexcept.patch index 054d42e..99593f7 100644 --- a/chromium-76.0.3809.100-el7-noexcept.patch +++ b/chromium-76.0.3809.100-el7-noexcept.patch @@ -1,6 +1,6 @@ diff -up chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noexcept chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc ---- chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-08-23 10:35:14.911079823 +0200 -+++ chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc 2019-08-23 10:35:14.911079823 +0200 +--- chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-08-23 13:41:04.842597850 +0200 ++++ chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc 2019-08-23 13:41:04.842597850 +0200 @@ -19,12 +19,12 @@ MediaSink::MediaSink(const MediaSink::Id provider_id_(provider_id) {} @@ -16,11 +16,33 @@ diff -up chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noe bool MediaSink::IsMaybeCloudSink() const { switch (icon_type_) { -diff -up chromium-76.0.3809.100/components/history/core/browser/url_row.cc.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/url_row.cc -diff -up chromium-76.0.3809.100/components/history/core/browser/url_row.h.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/url_row.h +diff -up chromium-76.0.3809.100/components/history/core/browser/history_types.cc.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/history_types.cc +--- chromium-76.0.3809.100/components/history/core/browser/history_types.cc.el7-noexcept 2019-08-23 13:45:57.673815531 +0200 ++++ chromium-76.0.3809.100/components/history/core/browser/history_types.cc 2019-08-23 13:47:02.463525385 +0200 +@@ -42,7 +42,7 @@ QueryResults::QueryResults(QueryResults& + Swap(&other); + } + +-QueryResults& QueryResults::operator=(QueryResults&& other) noexcept { ++QueryResults& QueryResults::operator=(QueryResults&& other) { + Swap(&other); + return *this; + } +diff -up chromium-76.0.3809.100/components/history/core/browser/history_types.h.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/history_types.h +--- chromium-76.0.3809.100/components/history/core/browser/history_types.h.el7-noexcept 2019-08-23 13:46:11.455966965 +0200 ++++ chromium-76.0.3809.100/components/history/core/browser/history_types.h 2019-08-23 13:46:48.022367596 +0200 +@@ -143,7 +143,7 @@ class QueryResults { + ~QueryResults(); + + QueryResults(QueryResults&& other) noexcept; +- QueryResults& operator=(QueryResults&& other) noexcept; ++ QueryResults& operator=(QueryResults&& other); + + void set_reached_beginning(bool reached) { reached_beginning_ = reached; } + bool reached_beginning() { return reached_beginning_; } diff -up chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept chromium-76.0.3809.100/components/policy/core/common/policy_map.cc ---- chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept 2019-08-23 10:35:01.127962168 +0200 -+++ chromium-76.0.3809.100/components/policy/core/common/policy_map.cc 2019-08-23 10:35:01.075961724 +0200 +--- chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept 2019-08-23 13:40:42.633353810 +0200 ++++ chromium-76.0.3809.100/components/policy/core/common/policy_map.cc 2019-08-23 13:40:42.576353183 +0200 @@ -52,7 +52,7 @@ PolicyMap::Entry::Entry( PolicyMap::Entry::~Entry() = default; @@ -31,8 +53,8 @@ diff -up chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7- PolicyMap::Entry PolicyMap::Entry::DeepCopy() const { Entry copy; diff -up chromium-76.0.3809.100/components/signin/core/browser/account_info.cc.el7-noexcept chromium-76.0.3809.100/components/signin/core/browser/account_info.cc ---- chromium-76.0.3809.100/components/signin/core/browser/account_info.cc.el7-noexcept 2019-08-23 10:35:02.341972531 +0200 -+++ chromium-76.0.3809.100/components/signin/core/browser/account_info.cc 2019-08-23 10:35:02.314972300 +0200 +--- chromium-76.0.3809.100/components/signin/core/browser/account_info.cc.el7-noexcept 2019-08-23 13:40:44.224371292 +0200 ++++ chromium-76.0.3809.100/components/signin/core/browser/account_info.cc 2019-08-23 13:40:44.190370918 +0200 @@ -52,7 +52,7 @@ CoreAccountInfo::CoreAccountInfo(CoreAcc CoreAccountInfo& CoreAccountInfo::operator=(const CoreAccountInfo& other) = default; @@ -52,8 +74,8 @@ diff -up chromium-76.0.3809.100/components/signin/core/browser/account_info.cc.e bool AccountInfo::IsEmpty() const { return CoreAccountInfo::IsEmpty() && hosted_domain.empty() && diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.el7-noexcept chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc ---- chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.el7-noexcept 2019-08-23 10:52:29.047592493 +0200 -+++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc 2019-08-23 10:52:48.243763687 +0200 +--- chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.el7-noexcept 2019-08-23 13:40:25.468165195 +0200 ++++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc 2019-08-23 13:40:25.481165338 +0200 @@ -14,7 +14,7 @@ CoreAccountId::~CoreAccountId() = defaul CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; @@ -64,8 +86,8 @@ diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.el7-noexcept CoreAccountId::CoreAccountId(const char* id) : id(id) {} diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.el7-noexcept chromium-76.0.3809.100/google_apis/gaia/core_account_id.h ---- chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.el7-noexcept 2019-08-23 10:52:31.541614735 +0200 -+++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.h 2019-08-23 10:53:03.252898948 +0200 +--- chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.el7-noexcept 2019-08-23 13:40:25.468165195 +0200 ++++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.h 2019-08-23 13:40:25.481165338 +0200 @@ -19,7 +19,7 @@ struct CoreAccountId { ~CoreAccountId(); @@ -76,8 +98,8 @@ diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.el7-noexcept // Those implicit constructor and conversion operator allow to // progressively migrate the code to use this struct. Removing diff -up chromium-76.0.3809.100/gpu/config/gpu_info.cc.el7-noexcept chromium-76.0.3809.100/gpu/config/gpu_info.cc ---- chromium-76.0.3809.100/gpu/config/gpu_info.cc.el7-noexcept 2019-08-23 10:38:00.659317249 +0200 -+++ chromium-76.0.3809.100/gpu/config/gpu_info.cc 2019-08-23 10:38:00.656317223 +0200 +--- chromium-76.0.3809.100/gpu/config/gpu_info.cc.el7-noexcept 2019-08-09 16:48:01.000000000 +0200 ++++ chromium-76.0.3809.100/gpu/config/gpu_info.cc 2019-08-23 13:40:25.482165349 +0200 @@ -166,7 +166,7 @@ GPUInfo::GPUDevice& GPUInfo::GPUDevice:: const GPUInfo::GPUDevice& other) = default; From fc327721ea71add7014b3a415a52b0c58f1606de Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 26 Aug 2019 14:40:26 +0200 Subject: [PATCH 0401/1449] Another noexec fix for EL7 --- chromium-76.0.3809.100-el7-noexcept.patch | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/chromium-76.0.3809.100-el7-noexcept.patch b/chromium-76.0.3809.100-el7-noexcept.patch index 99593f7..407f8de 100644 --- a/chromium-76.0.3809.100-el7-noexcept.patch +++ b/chromium-76.0.3809.100-el7-noexcept.patch @@ -18,7 +18,7 @@ diff -up chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noe switch (icon_type_) { diff -up chromium-76.0.3809.100/components/history/core/browser/history_types.cc.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/history_types.cc --- chromium-76.0.3809.100/components/history/core/browser/history_types.cc.el7-noexcept 2019-08-23 13:45:57.673815531 +0200 -+++ chromium-76.0.3809.100/components/history/core/browser/history_types.cc 2019-08-23 13:47:02.463525385 +0200 ++++ chromium-76.0.3809.100/components/history/core/browser/history_types.cc 2019-08-26 10:13:00.815409764 +0200 @@ -42,7 +42,7 @@ QueryResults::QueryResults(QueryResults& Swap(&other); } @@ -28,9 +28,18 @@ diff -up chromium-76.0.3809.100/components/history/core/browser/history_types.cc Swap(&other); return *this; } +@@ -186,7 +186,7 @@ QueryURLResult::QueryURLResult(QueryURLR + + QueryURLResult& QueryURLResult::operator=(const QueryURLResult&) = default; + +-QueryURLResult& QueryURLResult::operator=(QueryURLResult&&) noexcept = default; ++QueryURLResult& QueryURLResult::operator=(QueryURLResult&&) = default; + + // MostVisitedURL -------------------------------------------------------------- + diff -up chromium-76.0.3809.100/components/history/core/browser/history_types.h.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/history_types.h --- chromium-76.0.3809.100/components/history/core/browser/history_types.h.el7-noexcept 2019-08-23 13:46:11.455966965 +0200 -+++ chromium-76.0.3809.100/components/history/core/browser/history_types.h 2019-08-23 13:46:48.022367596 +0200 ++++ chromium-76.0.3809.100/components/history/core/browser/history_types.h 2019-08-26 10:13:49.951881558 +0200 @@ -143,7 +143,7 @@ class QueryResults { ~QueryResults(); @@ -40,6 +49,15 @@ diff -up chromium-76.0.3809.100/components/history/core/browser/history_types.h. void set_reached_beginning(bool reached) { reached_beginning_ = reached; } bool reached_beginning() { return reached_beginning_; } +@@ -278,7 +278,7 @@ struct QueryURLResult { + QueryURLResult(const QueryURLResult&); + QueryURLResult(QueryURLResult&&) noexcept; + QueryURLResult& operator=(const QueryURLResult&); +- QueryURLResult& operator=(QueryURLResult&&) noexcept; ++ QueryURLResult& operator=(QueryURLResult&&); + ~QueryURLResult(); + + // Indicates whether the call to HistoryBackend::QueryURL was successfull diff -up chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept chromium-76.0.3809.100/components/policy/core/common/policy_map.cc --- chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept 2019-08-23 13:40:42.633353810 +0200 +++ chromium-76.0.3809.100/components/policy/core/common/policy_map.cc 2019-08-23 13:40:42.576353183 +0200 From b82b0a31dd6fca01269e15e1262ee63551753142 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 27 Aug 2019 07:13:54 +0200 Subject: [PATCH 0402/1449] Update to 76.0.3809.132 --- ....3809.100-gcc-ambigous-instantiation.patch | 39 ------------------- chromium.spec | 7 +++- sources | 2 +- 3 files changed, 6 insertions(+), 42 deletions(-) delete mode 100644 chromium-76.0.3809.100-gcc-ambigous-instantiation.patch diff --git a/chromium-76.0.3809.100-gcc-ambigous-instantiation.patch b/chromium-76.0.3809.100-gcc-ambigous-instantiation.patch deleted file mode 100644 index 587abf3..0000000 --- a/chromium-76.0.3809.100-gcc-ambigous-instantiation.patch +++ /dev/null @@ -1,39 +0,0 @@ -From 52b5ceac95b67491b1c71f0ef9a32b778bbbaa2e Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Wed, 05 Jun 2019 19:46:55 +0000 -Subject: [PATCH] GCC: avoid ambiguous NoDestructor creation in GetNeverSniffedMimeTypes. - -Use brace-list notation to wrap the already existing brace-list for -initializing the flat-set. This resolves an ambiguous instantiation -in GCC. - -Bug: 819294 -Change-Id: I89ddf12522d62a5140a8c2c41dc98e30ec7a0e78 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645774 -Reviewed-by: Matt Menke -Commit-Queue: José Dapena Paz -Cr-Commit-Position: refs/heads/master@{#666401} ---- - -diff --git a/services/network/cross_origin_read_blocking.cc b/services/network/cross_origin_read_blocking.cc -index 30999c0..60a03f6 100644 ---- a/services/network/cross_origin_read_blocking.cc -+++ b/services/network/cross_origin_read_blocking.cc -@@ -211,7 +211,7 @@ - // confirmation sniffing because images, scripts, etc. are frequently - // mislabelled by http servers as HTML/JSON/XML). - base::flat_set& GetNeverSniffedMimeTypes() { -- static base::NoDestructor> s_types({ -+ static base::NoDestructor> s_types{{ - // The list below has been populated based on most commonly used content - // types according to HTTP Archive - see: - // https://github.com/whatwg/fetch/issues/860#issuecomment-457330454 -@@ -224,7 +224,7 @@ - "application/x-www-form-urlencoded", - "application/zip", - "text/event-stream", -- }); -+ }}; - - // All items need to be lower-case, to support case-insensitive comparisons - // later. diff --git a/chromium.spec b/chromium.spec index c961abc..cbc4fa4 100644 --- a/chromium.spec +++ b/chromium.spec @@ -171,7 +171,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3809.100 +Version: %{majorversion}.0.3809.132 Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home @@ -280,7 +280,7 @@ Patch50: chromium-76.0.3809.100-quiche-compile-fix.patch # https://chromium.googlesource.com/chromium/src/+/53bb5a463ee956c70230eaa5450022185d0ddc3c Patch51: chromium-76.0.3809.100-throttling-dead-beef.patch # https://chromium.googlesource.com/chromium/src/+/52b5ceac95b67491b1c71f0ef9a32b778bbbaa2e -Patch52: chromium-76.0.3809.100-gcc-ambigous-instantiation.patch +Patch52: chromium-76.0.3809.132-gcc-ambigous-instantiation.patch # https://chromium.googlesource.com/chromium/src.git/+/715cb38eac889625de0c429d2672562188b4107e Patch53: chromium-76.0.3809.100-weak-ptr-no-except.patch # https://chromium.googlesource.com/chromium/src.git/+/c6afbd59c997c2b64f11abdd1eaef71ae8ea2ddc @@ -1908,6 +1908,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Tue Aug 27 2019 Tomas Popela - 76.0.3809.132-1 +- Update to 76.0.3809.132 + * Tue Aug 13 2019 Tomas Popela - 76.0.3809.100-1 - Update to 76.0.3809.100 diff --git a/sources b/sources index b7a420d..2d38a7c 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-76.0.3809.100-clean.tar.xz) = 418ade473185717595b47fbf49ad58bd9bf7cece43f9e200108a2f4df1391bc6a09673e7c30a9958205e13650ed220ad289fe3d79d140612ec5c0bb7891fc8c8 +SHA512 (chromium-76.0.3809.132-clean.tar.xz) = fbc5f989945adfaffb9fb5199ccb988accdc53f41a03bba9c4ab3df8585b9267b1f34cd7a6ac487eff34ebb6e65865e32ceea4ad945eec30f871d8eed41f3e6f From 8b5c622431489da2ed177d880f7fddd66e8967d2 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 27 Aug 2019 07:56:12 +0200 Subject: [PATCH 0403/1449] Add an updated patch that was missed --- ....3809.132-gcc-ambigous-instantiation.patch | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 chromium-76.0.3809.132-gcc-ambigous-instantiation.patch diff --git a/chromium-76.0.3809.132-gcc-ambigous-instantiation.patch b/chromium-76.0.3809.132-gcc-ambigous-instantiation.patch new file mode 100644 index 0000000..73db4d4 --- /dev/null +++ b/chromium-76.0.3809.132-gcc-ambigous-instantiation.patch @@ -0,0 +1,21 @@ +diff -up chromium-76.0.3809.132/services/network/cross_origin_read_blocking.cc.gcc-ambigous-instantiation chromium-76.0.3809.132/services/network/cross_origin_read_blocking.cc +--- chromium-76.0.3809.132/services/network/cross_origin_read_blocking.cc.gcc-ambigous-instantiation 2019-08-26 21:02:33.000000000 +0200 ++++ chromium-76.0.3809.132/services/network/cross_origin_read_blocking.cc 2019-08-27 06:58:23.963821667 +0200 +@@ -207,7 +207,7 @@ std::set& GetPluginProxyingProcesse + // confirmation sniffing because images, scripts, etc. are frequently + // mislabelled by http servers as HTML/JSON/XML). + base::flat_set& GetNeverSniffedMimeTypes() { +- static base::NoDestructor> s_types({ ++ static base::NoDestructor> s_types{{ + // The list below has been populated based on most commonly used content + // types according to HTTP Archive - see: + // https://github.com/whatwg/fetch/issues/860#issuecomment-457330454 +@@ -219,7 +219,7 @@ base::flat_set& GetNeverSni + "application/x-protobuf", + "application/zip", + "text/event-stream", +- }); ++ }}; + + // All items need to be lower-case, to support case-insensitive comparisons + // later. From ed655503ee49db321bfbf84dca4364a8c5979f72 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 23 Aug 2019 07:54:57 +0200 Subject: [PATCH 0404/1449] Fix the EL7 build as it doesn't like part of the upstream GCC patch --- ...00-el7-gcc-accountinfo-move-noexcept.patch | 23 +++++++++++++++++++ chromium.spec | 3 +++ 2 files changed, 26 insertions(+) create mode 100644 chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch diff --git a/chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch b/chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch new file mode 100644 index 0000000..09fccf6 --- /dev/null +++ b/chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch @@ -0,0 +1,23 @@ +diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.gcc-accountinfo-move-noexcept-epel chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc +--- chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.gcc-accountinfo-move-noexcept-epel 2019-08-23 07:35:16.544308344 +0200 ++++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc 2019-08-23 07:35:34.115441446 +0200 +@@ -14,8 +14,6 @@ CoreAccountId::~CoreAccountId() = defaul + + CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; + +-CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) noexcept = default; +- + CoreAccountId::CoreAccountId(const char* id) : id(id) {} + + CoreAccountId::CoreAccountId(std::string&& id) : id(std::move(id)) {} +diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.gcc-accountinfo-move-noexcept-epel chromium-76.0.3809.100/google_apis/gaia/core_account_id.h +--- chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.gcc-accountinfo-move-noexcept-epel 2019-08-23 07:36:05.994682935 +0200 ++++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.h 2019-08-23 07:36:13.039736302 +0200 +@@ -19,7 +19,6 @@ struct CoreAccountId { + ~CoreAccountId(); + + CoreAccountId& operator=(const CoreAccountId&); +- CoreAccountId& operator=(CoreAccountId&&) noexcept; + + // Those implicit constructor and conversion operator allow to + // progressively migrate the code to use this struct. Removing diff --git a/chromium.spec b/chromium.spec index 59883f4..6d9a760 100644 --- a/chromium.spec +++ b/chromium.spec @@ -311,6 +311,8 @@ Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch Patch101: chromium-75.0.3770.100-epel7-stdc++.patch # el7 only patch Patch102: chromium-75.0.3770.100-el7-fix-noexcept.patch +# el7 only patch as it doesn't like on of the operator= change in patch59 +Patch103: chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch # In file included from ../linux/directory.c:21: # In file included from ../../../../native_client/src/nonsfi/linux/abi_conversion.h:20: @@ -885,6 +887,7 @@ udev. %patch100 -p1 -b .kmaxskip %patch101 -p1 -b .epel7 %patch102 -p1 -b .el7-noexcept +%patch103 -p1 -b .el7-gcc-accountinfo-move-noexcept %endif # Feature specific patches From 32cbc6922abb2d6107ff13fd072c874202bcabb8 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 23 Aug 2019 11:01:37 +0200 Subject: [PATCH 0405/1449] More el7 fixes Merge the previously committed change in to the el7-noexcept patch and revert another change that is needed on Fedora, but breaking the build on EL7. --- chromium-75.0.3770.100-el7-fix-noexcept.patch | 54 ----------- ...00-el7-gcc-accountinfo-move-noexcept.patch | 23 ----- chromium-76.0.3809.100-el7-noexcept.patch | 89 +++++++++++++++++++ chromium.spec | 7 +- 4 files changed, 92 insertions(+), 81 deletions(-) delete mode 100644 chromium-75.0.3770.100-el7-fix-noexcept.patch delete mode 100644 chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch create mode 100644 chromium-76.0.3809.100-el7-noexcept.patch diff --git a/chromium-75.0.3770.100-el7-fix-noexcept.patch b/chromium-75.0.3770.100-el7-fix-noexcept.patch deleted file mode 100644 index eaba072..0000000 --- a/chromium-75.0.3770.100-el7-fix-noexcept.patch +++ /dev/null @@ -1,54 +0,0 @@ -diff -up chromium-75.0.3770.100/chrome/common/media_router/media_sink.cc.el7-noexcept chromium-75.0.3770.100/chrome/common/media_router/media_sink.cc ---- chromium-75.0.3770.100/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-06-18 11:47:55.000000000 -0400 -+++ chromium-75.0.3770.100/chrome/common/media_router/media_sink.cc 2019-06-20 10:17:27.440446569 -0400 -@@ -19,12 +19,12 @@ MediaSink::MediaSink(const MediaSink::Id - provider_id_(provider_id) {} - - MediaSink::MediaSink(const MediaSink& other) = default; --MediaSink::MediaSink(MediaSink&& other) noexcept = default; -+MediaSink::MediaSink(MediaSink&& other) = default; - MediaSink::MediaSink() = default; - MediaSink::~MediaSink() = default; - - MediaSink& MediaSink::operator=(const MediaSink& other) = default; --MediaSink& MediaSink::operator=(MediaSink&& other) noexcept = default; -+MediaSink& MediaSink::operator=(MediaSink&& other) = default; - - bool MediaSink::IsMaybeCloudSink() const { - switch (icon_type_) { -diff -up chromium-75.0.3770.100/components/policy/core/common/policy_map.cc.el7-noexcept chromium-75.0.3770.100/components/policy/core/common/policy_map.cc ---- chromium-75.0.3770.100/components/policy/core/common/policy_map.cc.el7-noexcept 2019-06-18 11:48:01.000000000 -0400 -+++ chromium-75.0.3770.100/components/policy/core/common/policy_map.cc 2019-06-20 10:17:27.444446463 -0400 -@@ -31,7 +31,7 @@ PolicyMap::Entry::Entry( - PolicyMap::Entry::~Entry() = default; - - PolicyMap::Entry::Entry(Entry&&) noexcept = default; --PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) noexcept = default; -+PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) = default; - - PolicyMap::Entry PolicyMap::Entry::DeepCopy() const { - Entry copy; -diff -up chromium-75.0.3770.100/components/signin/core/browser/account_info.cc.el7-noexcept chromium-75.0.3770.100/components/signin/core/browser/account_info.cc ---- chromium-75.0.3770.100/components/signin/core/browser/account_info.cc.el7-noexcept 2019-06-20 10:17:27.444446463 -0400 -+++ chromium-75.0.3770.100/components/signin/core/browser/account_info.cc 2019-06-20 10:19:17.959532865 -0400 -@@ -51,7 +51,7 @@ CoreAccountInfo::CoreAccountInfo(CoreAcc - CoreAccountInfo& CoreAccountInfo::operator=(const CoreAccountInfo& other) = - default; - --CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) noexcept = -+CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) = - default; - - bool CoreAccountInfo::IsEmpty() const { -diff -up chromium-75.0.3770.100/gpu/config/gpu_info.cc.el7-noexcept chromium-75.0.3770.100/gpu/config/gpu_info.cc ---- chromium-75.0.3770.100/gpu/config/gpu_info.cc.el7-noexcept 2019-06-18 11:48:10.000000000 -0400 -+++ chromium-75.0.3770.100/gpu/config/gpu_info.cc 2019-06-20 10:17:27.445446437 -0400 -@@ -181,7 +181,7 @@ GPUInfo::GPUDevice& GPUInfo::GPUDevice:: - const GPUInfo::GPUDevice& other) = default; - - GPUInfo::GPUDevice& GPUInfo::GPUDevice::operator=( -- GPUInfo::GPUDevice&& other) noexcept = default; -+ GPUInfo::GPUDevice&& other) = default; - - GPUInfo::GPUInfo() - : optimus(false), diff --git a/chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch b/chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch deleted file mode 100644 index 09fccf6..0000000 --- a/chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch +++ /dev/null @@ -1,23 +0,0 @@ -diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.gcc-accountinfo-move-noexcept-epel chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc ---- chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.gcc-accountinfo-move-noexcept-epel 2019-08-23 07:35:16.544308344 +0200 -+++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc 2019-08-23 07:35:34.115441446 +0200 -@@ -14,8 +14,6 @@ CoreAccountId::~CoreAccountId() = defaul - - CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; - --CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) noexcept = default; -- - CoreAccountId::CoreAccountId(const char* id) : id(id) {} - - CoreAccountId::CoreAccountId(std::string&& id) : id(std::move(id)) {} -diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.gcc-accountinfo-move-noexcept-epel chromium-76.0.3809.100/google_apis/gaia/core_account_id.h ---- chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.gcc-accountinfo-move-noexcept-epel 2019-08-23 07:36:05.994682935 +0200 -+++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.h 2019-08-23 07:36:13.039736302 +0200 -@@ -19,7 +19,6 @@ struct CoreAccountId { - ~CoreAccountId(); - - CoreAccountId& operator=(const CoreAccountId&); -- CoreAccountId& operator=(CoreAccountId&&) noexcept; - - // Those implicit constructor and conversion operator allow to - // progressively migrate the code to use this struct. Removing diff --git a/chromium-76.0.3809.100-el7-noexcept.patch b/chromium-76.0.3809.100-el7-noexcept.patch new file mode 100644 index 0000000..054d42e --- /dev/null +++ b/chromium-76.0.3809.100-el7-noexcept.patch @@ -0,0 +1,89 @@ +diff -up chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noexcept chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc +--- chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-08-23 10:35:14.911079823 +0200 ++++ chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc 2019-08-23 10:35:14.911079823 +0200 +@@ -19,12 +19,12 @@ MediaSink::MediaSink(const MediaSink::Id + provider_id_(provider_id) {} + + MediaSink::MediaSink(const MediaSink& other) = default; +-MediaSink::MediaSink(MediaSink&& other) noexcept = default; ++MediaSink::MediaSink(MediaSink&& other) = default; + MediaSink::MediaSink() = default; + MediaSink::~MediaSink() = default; + + MediaSink& MediaSink::operator=(const MediaSink& other) = default; +-MediaSink& MediaSink::operator=(MediaSink&& other) noexcept = default; ++MediaSink& MediaSink::operator=(MediaSink&& other) = default; + + bool MediaSink::IsMaybeCloudSink() const { + switch (icon_type_) { +diff -up chromium-76.0.3809.100/components/history/core/browser/url_row.cc.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/url_row.cc +diff -up chromium-76.0.3809.100/components/history/core/browser/url_row.h.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/url_row.h +diff -up chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept chromium-76.0.3809.100/components/policy/core/common/policy_map.cc +--- chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept 2019-08-23 10:35:01.127962168 +0200 ++++ chromium-76.0.3809.100/components/policy/core/common/policy_map.cc 2019-08-23 10:35:01.075961724 +0200 +@@ -52,7 +52,7 @@ PolicyMap::Entry::Entry( + PolicyMap::Entry::~Entry() = default; + + PolicyMap::Entry::Entry(Entry&&) noexcept = default; +-PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) noexcept = default; ++PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) = default; + + PolicyMap::Entry PolicyMap::Entry::DeepCopy() const { + Entry copy; +diff -up chromium-76.0.3809.100/components/signin/core/browser/account_info.cc.el7-noexcept chromium-76.0.3809.100/components/signin/core/browser/account_info.cc +--- chromium-76.0.3809.100/components/signin/core/browser/account_info.cc.el7-noexcept 2019-08-23 10:35:02.341972531 +0200 ++++ chromium-76.0.3809.100/components/signin/core/browser/account_info.cc 2019-08-23 10:35:02.314972300 +0200 +@@ -52,7 +52,7 @@ CoreAccountInfo::CoreAccountInfo(CoreAcc + CoreAccountInfo& CoreAccountInfo::operator=(const CoreAccountInfo& other) = + default; + +-CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) noexcept = ++CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) = + default; + + bool CoreAccountInfo::IsEmpty() const { +@@ -69,7 +69,7 @@ AccountInfo::AccountInfo(AccountInfo&& o + + AccountInfo& AccountInfo::operator=(const AccountInfo& other) = default; + +-AccountInfo& AccountInfo::operator=(AccountInfo&& other) noexcept = default; ++AccountInfo& AccountInfo::operator=(AccountInfo&& other) = default; + + bool AccountInfo::IsEmpty() const { + return CoreAccountInfo::IsEmpty() && hosted_domain.empty() && +diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.el7-noexcept chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc +--- chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.el7-noexcept 2019-08-23 10:52:29.047592493 +0200 ++++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc 2019-08-23 10:52:48.243763687 +0200 +@@ -14,7 +14,7 @@ CoreAccountId::~CoreAccountId() = defaul + + CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; + +-CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) noexcept = default; ++CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) = default; + + CoreAccountId::CoreAccountId(const char* id) : id(id) {} + +diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.el7-noexcept chromium-76.0.3809.100/google_apis/gaia/core_account_id.h +--- chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.el7-noexcept 2019-08-23 10:52:31.541614735 +0200 ++++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.h 2019-08-23 10:53:03.252898948 +0200 +@@ -19,7 +19,7 @@ struct CoreAccountId { + ~CoreAccountId(); + + CoreAccountId& operator=(const CoreAccountId&); +- CoreAccountId& operator=(CoreAccountId&&) noexcept; ++ CoreAccountId& operator=(CoreAccountId&&); + + // Those implicit constructor and conversion operator allow to + // progressively migrate the code to use this struct. Removing +diff -up chromium-76.0.3809.100/gpu/config/gpu_info.cc.el7-noexcept chromium-76.0.3809.100/gpu/config/gpu_info.cc +--- chromium-76.0.3809.100/gpu/config/gpu_info.cc.el7-noexcept 2019-08-23 10:38:00.659317249 +0200 ++++ chromium-76.0.3809.100/gpu/config/gpu_info.cc 2019-08-23 10:38:00.656317223 +0200 +@@ -166,7 +166,7 @@ GPUInfo::GPUDevice& GPUInfo::GPUDevice:: + const GPUInfo::GPUDevice& other) = default; + + GPUInfo::GPUDevice& GPUInfo::GPUDevice::operator=( +- GPUInfo::GPUDevice&& other) noexcept = default; ++ GPUInfo::GPUDevice&& other) = default; + + GPUInfo::GPUInfo() + : optimus(false), diff --git a/chromium.spec b/chromium.spec index 6d9a760..980cf6b 100644 --- a/chromium.spec +++ b/chromium.spec @@ -310,9 +310,7 @@ Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch # Use lstdc++ on EPEL7 only Patch101: chromium-75.0.3770.100-epel7-stdc++.patch # el7 only patch -Patch102: chromium-75.0.3770.100-el7-fix-noexcept.patch -# el7 only patch as it doesn't like on of the operator= change in patch59 -Patch103: chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch +Patch102: chromium-76.0.3809.100-el7-noexcept.patch # In file included from ../linux/directory.c:21: # In file included from ../../../../native_client/src/nonsfi/linux/abi_conversion.h:20: @@ -887,7 +885,8 @@ udev. %patch100 -p1 -b .kmaxskip %patch101 -p1 -b .epel7 %patch102 -p1 -b .el7-noexcept -%patch103 -p1 -b .el7-gcc-accountinfo-move-noexcept +# Revert patch58 because it's breaking the build on el7 +%patch58 -R -p1 %endif # Feature specific patches From e79629f80cbd2f675d4076bf19e451106de4edeb Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 23 Aug 2019 13:48:03 +0200 Subject: [PATCH 0406/1449] Another el7 noexcept change --- chromium-76.0.3809.100-el7-noexcept.patch | 50 ++++++++++++++++------- 1 file changed, 36 insertions(+), 14 deletions(-) diff --git a/chromium-76.0.3809.100-el7-noexcept.patch b/chromium-76.0.3809.100-el7-noexcept.patch index 054d42e..99593f7 100644 --- a/chromium-76.0.3809.100-el7-noexcept.patch +++ b/chromium-76.0.3809.100-el7-noexcept.patch @@ -1,6 +1,6 @@ diff -up chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noexcept chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc ---- chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-08-23 10:35:14.911079823 +0200 -+++ chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc 2019-08-23 10:35:14.911079823 +0200 +--- chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-08-23 13:41:04.842597850 +0200 ++++ chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc 2019-08-23 13:41:04.842597850 +0200 @@ -19,12 +19,12 @@ MediaSink::MediaSink(const MediaSink::Id provider_id_(provider_id) {} @@ -16,11 +16,33 @@ diff -up chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noe bool MediaSink::IsMaybeCloudSink() const { switch (icon_type_) { -diff -up chromium-76.0.3809.100/components/history/core/browser/url_row.cc.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/url_row.cc -diff -up chromium-76.0.3809.100/components/history/core/browser/url_row.h.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/url_row.h +diff -up chromium-76.0.3809.100/components/history/core/browser/history_types.cc.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/history_types.cc +--- chromium-76.0.3809.100/components/history/core/browser/history_types.cc.el7-noexcept 2019-08-23 13:45:57.673815531 +0200 ++++ chromium-76.0.3809.100/components/history/core/browser/history_types.cc 2019-08-23 13:47:02.463525385 +0200 +@@ -42,7 +42,7 @@ QueryResults::QueryResults(QueryResults& + Swap(&other); + } + +-QueryResults& QueryResults::operator=(QueryResults&& other) noexcept { ++QueryResults& QueryResults::operator=(QueryResults&& other) { + Swap(&other); + return *this; + } +diff -up chromium-76.0.3809.100/components/history/core/browser/history_types.h.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/history_types.h +--- chromium-76.0.3809.100/components/history/core/browser/history_types.h.el7-noexcept 2019-08-23 13:46:11.455966965 +0200 ++++ chromium-76.0.3809.100/components/history/core/browser/history_types.h 2019-08-23 13:46:48.022367596 +0200 +@@ -143,7 +143,7 @@ class QueryResults { + ~QueryResults(); + + QueryResults(QueryResults&& other) noexcept; +- QueryResults& operator=(QueryResults&& other) noexcept; ++ QueryResults& operator=(QueryResults&& other); + + void set_reached_beginning(bool reached) { reached_beginning_ = reached; } + bool reached_beginning() { return reached_beginning_; } diff -up chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept chromium-76.0.3809.100/components/policy/core/common/policy_map.cc ---- chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept 2019-08-23 10:35:01.127962168 +0200 -+++ chromium-76.0.3809.100/components/policy/core/common/policy_map.cc 2019-08-23 10:35:01.075961724 +0200 +--- chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept 2019-08-23 13:40:42.633353810 +0200 ++++ chromium-76.0.3809.100/components/policy/core/common/policy_map.cc 2019-08-23 13:40:42.576353183 +0200 @@ -52,7 +52,7 @@ PolicyMap::Entry::Entry( PolicyMap::Entry::~Entry() = default; @@ -31,8 +53,8 @@ diff -up chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7- PolicyMap::Entry PolicyMap::Entry::DeepCopy() const { Entry copy; diff -up chromium-76.0.3809.100/components/signin/core/browser/account_info.cc.el7-noexcept chromium-76.0.3809.100/components/signin/core/browser/account_info.cc ---- chromium-76.0.3809.100/components/signin/core/browser/account_info.cc.el7-noexcept 2019-08-23 10:35:02.341972531 +0200 -+++ chromium-76.0.3809.100/components/signin/core/browser/account_info.cc 2019-08-23 10:35:02.314972300 +0200 +--- chromium-76.0.3809.100/components/signin/core/browser/account_info.cc.el7-noexcept 2019-08-23 13:40:44.224371292 +0200 ++++ chromium-76.0.3809.100/components/signin/core/browser/account_info.cc 2019-08-23 13:40:44.190370918 +0200 @@ -52,7 +52,7 @@ CoreAccountInfo::CoreAccountInfo(CoreAcc CoreAccountInfo& CoreAccountInfo::operator=(const CoreAccountInfo& other) = default; @@ -52,8 +74,8 @@ diff -up chromium-76.0.3809.100/components/signin/core/browser/account_info.cc.e bool AccountInfo::IsEmpty() const { return CoreAccountInfo::IsEmpty() && hosted_domain.empty() && diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.el7-noexcept chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc ---- chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.el7-noexcept 2019-08-23 10:52:29.047592493 +0200 -+++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc 2019-08-23 10:52:48.243763687 +0200 +--- chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.el7-noexcept 2019-08-23 13:40:25.468165195 +0200 ++++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc 2019-08-23 13:40:25.481165338 +0200 @@ -14,7 +14,7 @@ CoreAccountId::~CoreAccountId() = defaul CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; @@ -64,8 +86,8 @@ diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.el7-noexcept CoreAccountId::CoreAccountId(const char* id) : id(id) {} diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.el7-noexcept chromium-76.0.3809.100/google_apis/gaia/core_account_id.h ---- chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.el7-noexcept 2019-08-23 10:52:31.541614735 +0200 -+++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.h 2019-08-23 10:53:03.252898948 +0200 +--- chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.el7-noexcept 2019-08-23 13:40:25.468165195 +0200 ++++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.h 2019-08-23 13:40:25.481165338 +0200 @@ -19,7 +19,7 @@ struct CoreAccountId { ~CoreAccountId(); @@ -76,8 +98,8 @@ diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.el7-noexcept // Those implicit constructor and conversion operator allow to // progressively migrate the code to use this struct. Removing diff -up chromium-76.0.3809.100/gpu/config/gpu_info.cc.el7-noexcept chromium-76.0.3809.100/gpu/config/gpu_info.cc ---- chromium-76.0.3809.100/gpu/config/gpu_info.cc.el7-noexcept 2019-08-23 10:38:00.659317249 +0200 -+++ chromium-76.0.3809.100/gpu/config/gpu_info.cc 2019-08-23 10:38:00.656317223 +0200 +--- chromium-76.0.3809.100/gpu/config/gpu_info.cc.el7-noexcept 2019-08-09 16:48:01.000000000 +0200 ++++ chromium-76.0.3809.100/gpu/config/gpu_info.cc 2019-08-23 13:40:25.482165349 +0200 @@ -166,7 +166,7 @@ GPUInfo::GPUDevice& GPUInfo::GPUDevice:: const GPUInfo::GPUDevice& other) = default; From 22d44ca53a19cbe79f6355ddefb3304796bb3336 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 26 Aug 2019 14:40:26 +0200 Subject: [PATCH 0407/1449] Another noexec fix for EL7 --- chromium-76.0.3809.100-el7-noexcept.patch | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/chromium-76.0.3809.100-el7-noexcept.patch b/chromium-76.0.3809.100-el7-noexcept.patch index 99593f7..407f8de 100644 --- a/chromium-76.0.3809.100-el7-noexcept.patch +++ b/chromium-76.0.3809.100-el7-noexcept.patch @@ -18,7 +18,7 @@ diff -up chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noe switch (icon_type_) { diff -up chromium-76.0.3809.100/components/history/core/browser/history_types.cc.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/history_types.cc --- chromium-76.0.3809.100/components/history/core/browser/history_types.cc.el7-noexcept 2019-08-23 13:45:57.673815531 +0200 -+++ chromium-76.0.3809.100/components/history/core/browser/history_types.cc 2019-08-23 13:47:02.463525385 +0200 ++++ chromium-76.0.3809.100/components/history/core/browser/history_types.cc 2019-08-26 10:13:00.815409764 +0200 @@ -42,7 +42,7 @@ QueryResults::QueryResults(QueryResults& Swap(&other); } @@ -28,9 +28,18 @@ diff -up chromium-76.0.3809.100/components/history/core/browser/history_types.cc Swap(&other); return *this; } +@@ -186,7 +186,7 @@ QueryURLResult::QueryURLResult(QueryURLR + + QueryURLResult& QueryURLResult::operator=(const QueryURLResult&) = default; + +-QueryURLResult& QueryURLResult::operator=(QueryURLResult&&) noexcept = default; ++QueryURLResult& QueryURLResult::operator=(QueryURLResult&&) = default; + + // MostVisitedURL -------------------------------------------------------------- + diff -up chromium-76.0.3809.100/components/history/core/browser/history_types.h.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/history_types.h --- chromium-76.0.3809.100/components/history/core/browser/history_types.h.el7-noexcept 2019-08-23 13:46:11.455966965 +0200 -+++ chromium-76.0.3809.100/components/history/core/browser/history_types.h 2019-08-23 13:46:48.022367596 +0200 ++++ chromium-76.0.3809.100/components/history/core/browser/history_types.h 2019-08-26 10:13:49.951881558 +0200 @@ -143,7 +143,7 @@ class QueryResults { ~QueryResults(); @@ -40,6 +49,15 @@ diff -up chromium-76.0.3809.100/components/history/core/browser/history_types.h. void set_reached_beginning(bool reached) { reached_beginning_ = reached; } bool reached_beginning() { return reached_beginning_; } +@@ -278,7 +278,7 @@ struct QueryURLResult { + QueryURLResult(const QueryURLResult&); + QueryURLResult(QueryURLResult&&) noexcept; + QueryURLResult& operator=(const QueryURLResult&); +- QueryURLResult& operator=(QueryURLResult&&) noexcept; ++ QueryURLResult& operator=(QueryURLResult&&); + ~QueryURLResult(); + + // Indicates whether the call to HistoryBackend::QueryURL was successfull diff -up chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept chromium-76.0.3809.100/components/policy/core/common/policy_map.cc --- chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept 2019-08-23 13:40:42.633353810 +0200 +++ chromium-76.0.3809.100/components/policy/core/common/policy_map.cc 2019-08-23 13:40:42.576353183 +0200 From 503e7f07db727ed866a0b344937089c38a6bca75 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 27 Aug 2019 07:13:54 +0200 Subject: [PATCH 0408/1449] Update to 76.0.3809.132 --- ....3809.100-gcc-ambigous-instantiation.patch | 39 ------------------- chromium.spec | 7 +++- sources | 2 +- 3 files changed, 6 insertions(+), 42 deletions(-) delete mode 100644 chromium-76.0.3809.100-gcc-ambigous-instantiation.patch diff --git a/chromium-76.0.3809.100-gcc-ambigous-instantiation.patch b/chromium-76.0.3809.100-gcc-ambigous-instantiation.patch deleted file mode 100644 index 587abf3..0000000 --- a/chromium-76.0.3809.100-gcc-ambigous-instantiation.patch +++ /dev/null @@ -1,39 +0,0 @@ -From 52b5ceac95b67491b1c71f0ef9a32b778bbbaa2e Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Wed, 05 Jun 2019 19:46:55 +0000 -Subject: [PATCH] GCC: avoid ambiguous NoDestructor creation in GetNeverSniffedMimeTypes. - -Use brace-list notation to wrap the already existing brace-list for -initializing the flat-set. This resolves an ambiguous instantiation -in GCC. - -Bug: 819294 -Change-Id: I89ddf12522d62a5140a8c2c41dc98e30ec7a0e78 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645774 -Reviewed-by: Matt Menke -Commit-Queue: José Dapena Paz -Cr-Commit-Position: refs/heads/master@{#666401} ---- - -diff --git a/services/network/cross_origin_read_blocking.cc b/services/network/cross_origin_read_blocking.cc -index 30999c0..60a03f6 100644 ---- a/services/network/cross_origin_read_blocking.cc -+++ b/services/network/cross_origin_read_blocking.cc -@@ -211,7 +211,7 @@ - // confirmation sniffing because images, scripts, etc. are frequently - // mislabelled by http servers as HTML/JSON/XML). - base::flat_set& GetNeverSniffedMimeTypes() { -- static base::NoDestructor> s_types({ -+ static base::NoDestructor> s_types{{ - // The list below has been populated based on most commonly used content - // types according to HTTP Archive - see: - // https://github.com/whatwg/fetch/issues/860#issuecomment-457330454 -@@ -224,7 +224,7 @@ - "application/x-www-form-urlencoded", - "application/zip", - "text/event-stream", -- }); -+ }}; - - // All items need to be lower-case, to support case-insensitive comparisons - // later. diff --git a/chromium.spec b/chromium.spec index 980cf6b..aec9f9f 100644 --- a/chromium.spec +++ b/chromium.spec @@ -171,7 +171,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3809.100 +Version: %{majorversion}.0.3809.132 Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home @@ -280,7 +280,7 @@ Patch50: chromium-76.0.3809.100-quiche-compile-fix.patch # https://chromium.googlesource.com/chromium/src/+/53bb5a463ee956c70230eaa5450022185d0ddc3c Patch51: chromium-76.0.3809.100-throttling-dead-beef.patch # https://chromium.googlesource.com/chromium/src/+/52b5ceac95b67491b1c71f0ef9a32b778bbbaa2e -Patch52: chromium-76.0.3809.100-gcc-ambigous-instantiation.patch +Patch52: chromium-76.0.3809.132-gcc-ambigous-instantiation.patch # https://chromium.googlesource.com/chromium/src.git/+/715cb38eac889625de0c429d2672562188b4107e Patch53: chromium-76.0.3809.100-weak-ptr-no-except.patch # https://chromium.googlesource.com/chromium/src.git/+/c6afbd59c997c2b64f11abdd1eaef71ae8ea2ddc @@ -1908,6 +1908,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Tue Aug 27 2019 Tomas Popela - 76.0.3809.132-1 +- Update to 76.0.3809.132 + * Tue Aug 13 2019 Tomas Popela - 76.0.3809.100-1 - Update to 76.0.3809.100 diff --git a/sources b/sources index b7a420d..2d38a7c 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-76.0.3809.100-clean.tar.xz) = 418ade473185717595b47fbf49ad58bd9bf7cece43f9e200108a2f4df1391bc6a09673e7c30a9958205e13650ed220ad289fe3d79d140612ec5c0bb7891fc8c8 +SHA512 (chromium-76.0.3809.132-clean.tar.xz) = fbc5f989945adfaffb9fb5199ccb988accdc53f41a03bba9c4ab3df8585b9267b1f34cd7a6ac487eff34ebb6e65865e32ceea4ad945eec30f871d8eed41f3e6f From 5bc875d20d07ffbc4beede7dcb32efe0f5533bdb Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 27 Aug 2019 07:56:12 +0200 Subject: [PATCH 0409/1449] Add an updated patch that was missed --- ....3809.132-gcc-ambigous-instantiation.patch | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 chromium-76.0.3809.132-gcc-ambigous-instantiation.patch diff --git a/chromium-76.0.3809.132-gcc-ambigous-instantiation.patch b/chromium-76.0.3809.132-gcc-ambigous-instantiation.patch new file mode 100644 index 0000000..73db4d4 --- /dev/null +++ b/chromium-76.0.3809.132-gcc-ambigous-instantiation.patch @@ -0,0 +1,21 @@ +diff -up chromium-76.0.3809.132/services/network/cross_origin_read_blocking.cc.gcc-ambigous-instantiation chromium-76.0.3809.132/services/network/cross_origin_read_blocking.cc +--- chromium-76.0.3809.132/services/network/cross_origin_read_blocking.cc.gcc-ambigous-instantiation 2019-08-26 21:02:33.000000000 +0200 ++++ chromium-76.0.3809.132/services/network/cross_origin_read_blocking.cc 2019-08-27 06:58:23.963821667 +0200 +@@ -207,7 +207,7 @@ std::set& GetPluginProxyingProcesse + // confirmation sniffing because images, scripts, etc. are frequently + // mislabelled by http servers as HTML/JSON/XML). + base::flat_set& GetNeverSniffedMimeTypes() { +- static base::NoDestructor> s_types({ ++ static base::NoDestructor> s_types{{ + // The list below has been populated based on most commonly used content + // types according to HTTP Archive - see: + // https://github.com/whatwg/fetch/issues/860#issuecomment-457330454 +@@ -219,7 +219,7 @@ base::flat_set& GetNeverSni + "application/x-protobuf", + "application/zip", + "text/event-stream", +- }); ++ }}; + + // All items need to be lower-case, to support case-insensitive comparisons + // later. From 7c18e771ba54f0923dbdf05446074ccb8e67aefe Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 23 Aug 2019 07:54:57 +0200 Subject: [PATCH 0410/1449] Fix the EL7 build as it doesn't like part of the upstream GCC patch --- ...00-el7-gcc-accountinfo-move-noexcept.patch | 23 +++++++++++++++++++ chromium.spec | 3 +++ 2 files changed, 26 insertions(+) create mode 100644 chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch diff --git a/chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch b/chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch new file mode 100644 index 0000000..09fccf6 --- /dev/null +++ b/chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch @@ -0,0 +1,23 @@ +diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.gcc-accountinfo-move-noexcept-epel chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc +--- chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.gcc-accountinfo-move-noexcept-epel 2019-08-23 07:35:16.544308344 +0200 ++++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc 2019-08-23 07:35:34.115441446 +0200 +@@ -14,8 +14,6 @@ CoreAccountId::~CoreAccountId() = defaul + + CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; + +-CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) noexcept = default; +- + CoreAccountId::CoreAccountId(const char* id) : id(id) {} + + CoreAccountId::CoreAccountId(std::string&& id) : id(std::move(id)) {} +diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.gcc-accountinfo-move-noexcept-epel chromium-76.0.3809.100/google_apis/gaia/core_account_id.h +--- chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.gcc-accountinfo-move-noexcept-epel 2019-08-23 07:36:05.994682935 +0200 ++++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.h 2019-08-23 07:36:13.039736302 +0200 +@@ -19,7 +19,6 @@ struct CoreAccountId { + ~CoreAccountId(); + + CoreAccountId& operator=(const CoreAccountId&); +- CoreAccountId& operator=(CoreAccountId&&) noexcept; + + // Those implicit constructor and conversion operator allow to + // progressively migrate the code to use this struct. Removing diff --git a/chromium.spec b/chromium.spec index 8a246b7..e09a0ac 100644 --- a/chromium.spec +++ b/chromium.spec @@ -311,6 +311,8 @@ Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch Patch101: chromium-75.0.3770.100-epel7-stdc++.patch # el7 only patch Patch102: chromium-75.0.3770.100-el7-fix-noexcept.patch +# el7 only patch as it doesn't like on of the operator= change in patch59 +Patch103: chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch # In file included from ../linux/directory.c:21: # In file included from ../../../../native_client/src/nonsfi/linux/abi_conversion.h:20: @@ -885,6 +887,7 @@ udev. %patch100 -p1 -b .kmaxskip %patch101 -p1 -b .epel7 %patch102 -p1 -b .el7-noexcept +%patch103 -p1 -b .el7-gcc-accountinfo-move-noexcept %endif # Feature specific patches From 6ad9fbddea2eecba05be099267a9d751cf756dac Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 23 Aug 2019 11:01:37 +0200 Subject: [PATCH 0411/1449] More el7 fixes Merge the previously committed change in to the el7-noexcept patch and revert another change that is needed on Fedora, but breaking the build on EL7. --- chromium-75.0.3770.100-el7-fix-noexcept.patch | 54 ----------- ...00-el7-gcc-accountinfo-move-noexcept.patch | 23 ----- chromium-76.0.3809.100-el7-noexcept.patch | 89 +++++++++++++++++++ chromium.spec | 7 +- 4 files changed, 92 insertions(+), 81 deletions(-) delete mode 100644 chromium-75.0.3770.100-el7-fix-noexcept.patch delete mode 100644 chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch create mode 100644 chromium-76.0.3809.100-el7-noexcept.patch diff --git a/chromium-75.0.3770.100-el7-fix-noexcept.patch b/chromium-75.0.3770.100-el7-fix-noexcept.patch deleted file mode 100644 index eaba072..0000000 --- a/chromium-75.0.3770.100-el7-fix-noexcept.patch +++ /dev/null @@ -1,54 +0,0 @@ -diff -up chromium-75.0.3770.100/chrome/common/media_router/media_sink.cc.el7-noexcept chromium-75.0.3770.100/chrome/common/media_router/media_sink.cc ---- chromium-75.0.3770.100/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-06-18 11:47:55.000000000 -0400 -+++ chromium-75.0.3770.100/chrome/common/media_router/media_sink.cc 2019-06-20 10:17:27.440446569 -0400 -@@ -19,12 +19,12 @@ MediaSink::MediaSink(const MediaSink::Id - provider_id_(provider_id) {} - - MediaSink::MediaSink(const MediaSink& other) = default; --MediaSink::MediaSink(MediaSink&& other) noexcept = default; -+MediaSink::MediaSink(MediaSink&& other) = default; - MediaSink::MediaSink() = default; - MediaSink::~MediaSink() = default; - - MediaSink& MediaSink::operator=(const MediaSink& other) = default; --MediaSink& MediaSink::operator=(MediaSink&& other) noexcept = default; -+MediaSink& MediaSink::operator=(MediaSink&& other) = default; - - bool MediaSink::IsMaybeCloudSink() const { - switch (icon_type_) { -diff -up chromium-75.0.3770.100/components/policy/core/common/policy_map.cc.el7-noexcept chromium-75.0.3770.100/components/policy/core/common/policy_map.cc ---- chromium-75.0.3770.100/components/policy/core/common/policy_map.cc.el7-noexcept 2019-06-18 11:48:01.000000000 -0400 -+++ chromium-75.0.3770.100/components/policy/core/common/policy_map.cc 2019-06-20 10:17:27.444446463 -0400 -@@ -31,7 +31,7 @@ PolicyMap::Entry::Entry( - PolicyMap::Entry::~Entry() = default; - - PolicyMap::Entry::Entry(Entry&&) noexcept = default; --PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) noexcept = default; -+PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) = default; - - PolicyMap::Entry PolicyMap::Entry::DeepCopy() const { - Entry copy; -diff -up chromium-75.0.3770.100/components/signin/core/browser/account_info.cc.el7-noexcept chromium-75.0.3770.100/components/signin/core/browser/account_info.cc ---- chromium-75.0.3770.100/components/signin/core/browser/account_info.cc.el7-noexcept 2019-06-20 10:17:27.444446463 -0400 -+++ chromium-75.0.3770.100/components/signin/core/browser/account_info.cc 2019-06-20 10:19:17.959532865 -0400 -@@ -51,7 +51,7 @@ CoreAccountInfo::CoreAccountInfo(CoreAcc - CoreAccountInfo& CoreAccountInfo::operator=(const CoreAccountInfo& other) = - default; - --CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) noexcept = -+CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) = - default; - - bool CoreAccountInfo::IsEmpty() const { -diff -up chromium-75.0.3770.100/gpu/config/gpu_info.cc.el7-noexcept chromium-75.0.3770.100/gpu/config/gpu_info.cc ---- chromium-75.0.3770.100/gpu/config/gpu_info.cc.el7-noexcept 2019-06-18 11:48:10.000000000 -0400 -+++ chromium-75.0.3770.100/gpu/config/gpu_info.cc 2019-06-20 10:17:27.445446437 -0400 -@@ -181,7 +181,7 @@ GPUInfo::GPUDevice& GPUInfo::GPUDevice:: - const GPUInfo::GPUDevice& other) = default; - - GPUInfo::GPUDevice& GPUInfo::GPUDevice::operator=( -- GPUInfo::GPUDevice&& other) noexcept = default; -+ GPUInfo::GPUDevice&& other) = default; - - GPUInfo::GPUInfo() - : optimus(false), diff --git a/chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch b/chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch deleted file mode 100644 index 09fccf6..0000000 --- a/chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch +++ /dev/null @@ -1,23 +0,0 @@ -diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.gcc-accountinfo-move-noexcept-epel chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc ---- chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.gcc-accountinfo-move-noexcept-epel 2019-08-23 07:35:16.544308344 +0200 -+++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc 2019-08-23 07:35:34.115441446 +0200 -@@ -14,8 +14,6 @@ CoreAccountId::~CoreAccountId() = defaul - - CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; - --CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) noexcept = default; -- - CoreAccountId::CoreAccountId(const char* id) : id(id) {} - - CoreAccountId::CoreAccountId(std::string&& id) : id(std::move(id)) {} -diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.gcc-accountinfo-move-noexcept-epel chromium-76.0.3809.100/google_apis/gaia/core_account_id.h ---- chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.gcc-accountinfo-move-noexcept-epel 2019-08-23 07:36:05.994682935 +0200 -+++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.h 2019-08-23 07:36:13.039736302 +0200 -@@ -19,7 +19,6 @@ struct CoreAccountId { - ~CoreAccountId(); - - CoreAccountId& operator=(const CoreAccountId&); -- CoreAccountId& operator=(CoreAccountId&&) noexcept; - - // Those implicit constructor and conversion operator allow to - // progressively migrate the code to use this struct. Removing diff --git a/chromium-76.0.3809.100-el7-noexcept.patch b/chromium-76.0.3809.100-el7-noexcept.patch new file mode 100644 index 0000000..054d42e --- /dev/null +++ b/chromium-76.0.3809.100-el7-noexcept.patch @@ -0,0 +1,89 @@ +diff -up chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noexcept chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc +--- chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-08-23 10:35:14.911079823 +0200 ++++ chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc 2019-08-23 10:35:14.911079823 +0200 +@@ -19,12 +19,12 @@ MediaSink::MediaSink(const MediaSink::Id + provider_id_(provider_id) {} + + MediaSink::MediaSink(const MediaSink& other) = default; +-MediaSink::MediaSink(MediaSink&& other) noexcept = default; ++MediaSink::MediaSink(MediaSink&& other) = default; + MediaSink::MediaSink() = default; + MediaSink::~MediaSink() = default; + + MediaSink& MediaSink::operator=(const MediaSink& other) = default; +-MediaSink& MediaSink::operator=(MediaSink&& other) noexcept = default; ++MediaSink& MediaSink::operator=(MediaSink&& other) = default; + + bool MediaSink::IsMaybeCloudSink() const { + switch (icon_type_) { +diff -up chromium-76.0.3809.100/components/history/core/browser/url_row.cc.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/url_row.cc +diff -up chromium-76.0.3809.100/components/history/core/browser/url_row.h.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/url_row.h +diff -up chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept chromium-76.0.3809.100/components/policy/core/common/policy_map.cc +--- chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept 2019-08-23 10:35:01.127962168 +0200 ++++ chromium-76.0.3809.100/components/policy/core/common/policy_map.cc 2019-08-23 10:35:01.075961724 +0200 +@@ -52,7 +52,7 @@ PolicyMap::Entry::Entry( + PolicyMap::Entry::~Entry() = default; + + PolicyMap::Entry::Entry(Entry&&) noexcept = default; +-PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) noexcept = default; ++PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) = default; + + PolicyMap::Entry PolicyMap::Entry::DeepCopy() const { + Entry copy; +diff -up chromium-76.0.3809.100/components/signin/core/browser/account_info.cc.el7-noexcept chromium-76.0.3809.100/components/signin/core/browser/account_info.cc +--- chromium-76.0.3809.100/components/signin/core/browser/account_info.cc.el7-noexcept 2019-08-23 10:35:02.341972531 +0200 ++++ chromium-76.0.3809.100/components/signin/core/browser/account_info.cc 2019-08-23 10:35:02.314972300 +0200 +@@ -52,7 +52,7 @@ CoreAccountInfo::CoreAccountInfo(CoreAcc + CoreAccountInfo& CoreAccountInfo::operator=(const CoreAccountInfo& other) = + default; + +-CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) noexcept = ++CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) = + default; + + bool CoreAccountInfo::IsEmpty() const { +@@ -69,7 +69,7 @@ AccountInfo::AccountInfo(AccountInfo&& o + + AccountInfo& AccountInfo::operator=(const AccountInfo& other) = default; + +-AccountInfo& AccountInfo::operator=(AccountInfo&& other) noexcept = default; ++AccountInfo& AccountInfo::operator=(AccountInfo&& other) = default; + + bool AccountInfo::IsEmpty() const { + return CoreAccountInfo::IsEmpty() && hosted_domain.empty() && +diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.el7-noexcept chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc +--- chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.el7-noexcept 2019-08-23 10:52:29.047592493 +0200 ++++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc 2019-08-23 10:52:48.243763687 +0200 +@@ -14,7 +14,7 @@ CoreAccountId::~CoreAccountId() = defaul + + CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; + +-CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) noexcept = default; ++CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) = default; + + CoreAccountId::CoreAccountId(const char* id) : id(id) {} + +diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.el7-noexcept chromium-76.0.3809.100/google_apis/gaia/core_account_id.h +--- chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.el7-noexcept 2019-08-23 10:52:31.541614735 +0200 ++++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.h 2019-08-23 10:53:03.252898948 +0200 +@@ -19,7 +19,7 @@ struct CoreAccountId { + ~CoreAccountId(); + + CoreAccountId& operator=(const CoreAccountId&); +- CoreAccountId& operator=(CoreAccountId&&) noexcept; ++ CoreAccountId& operator=(CoreAccountId&&); + + // Those implicit constructor and conversion operator allow to + // progressively migrate the code to use this struct. Removing +diff -up chromium-76.0.3809.100/gpu/config/gpu_info.cc.el7-noexcept chromium-76.0.3809.100/gpu/config/gpu_info.cc +--- chromium-76.0.3809.100/gpu/config/gpu_info.cc.el7-noexcept 2019-08-23 10:38:00.659317249 +0200 ++++ chromium-76.0.3809.100/gpu/config/gpu_info.cc 2019-08-23 10:38:00.656317223 +0200 +@@ -166,7 +166,7 @@ GPUInfo::GPUDevice& GPUInfo::GPUDevice:: + const GPUInfo::GPUDevice& other) = default; + + GPUInfo::GPUDevice& GPUInfo::GPUDevice::operator=( +- GPUInfo::GPUDevice&& other) noexcept = default; ++ GPUInfo::GPUDevice&& other) = default; + + GPUInfo::GPUInfo() + : optimus(false), diff --git a/chromium.spec b/chromium.spec index e09a0ac..c961abc 100644 --- a/chromium.spec +++ b/chromium.spec @@ -310,9 +310,7 @@ Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch # Use lstdc++ on EPEL7 only Patch101: chromium-75.0.3770.100-epel7-stdc++.patch # el7 only patch -Patch102: chromium-75.0.3770.100-el7-fix-noexcept.patch -# el7 only patch as it doesn't like on of the operator= change in patch59 -Patch103: chromium-76.0.3809.100-el7-gcc-accountinfo-move-noexcept.patch +Patch102: chromium-76.0.3809.100-el7-noexcept.patch # In file included from ../linux/directory.c:21: # In file included from ../../../../native_client/src/nonsfi/linux/abi_conversion.h:20: @@ -887,7 +885,8 @@ udev. %patch100 -p1 -b .kmaxskip %patch101 -p1 -b .epel7 %patch102 -p1 -b .el7-noexcept -%patch103 -p1 -b .el7-gcc-accountinfo-move-noexcept +# Revert patch58 because it's breaking the build on el7 +%patch58 -R -p1 %endif # Feature specific patches From 46e50be91c550d58e3a45f8ea693507809f45df9 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 23 Aug 2019 13:48:03 +0200 Subject: [PATCH 0412/1449] Another el7 noexcept change --- chromium-76.0.3809.100-el7-noexcept.patch | 50 ++++++++++++++++------- 1 file changed, 36 insertions(+), 14 deletions(-) diff --git a/chromium-76.0.3809.100-el7-noexcept.patch b/chromium-76.0.3809.100-el7-noexcept.patch index 054d42e..99593f7 100644 --- a/chromium-76.0.3809.100-el7-noexcept.patch +++ b/chromium-76.0.3809.100-el7-noexcept.patch @@ -1,6 +1,6 @@ diff -up chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noexcept chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc ---- chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-08-23 10:35:14.911079823 +0200 -+++ chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc 2019-08-23 10:35:14.911079823 +0200 +--- chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-08-23 13:41:04.842597850 +0200 ++++ chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc 2019-08-23 13:41:04.842597850 +0200 @@ -19,12 +19,12 @@ MediaSink::MediaSink(const MediaSink::Id provider_id_(provider_id) {} @@ -16,11 +16,33 @@ diff -up chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noe bool MediaSink::IsMaybeCloudSink() const { switch (icon_type_) { -diff -up chromium-76.0.3809.100/components/history/core/browser/url_row.cc.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/url_row.cc -diff -up chromium-76.0.3809.100/components/history/core/browser/url_row.h.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/url_row.h +diff -up chromium-76.0.3809.100/components/history/core/browser/history_types.cc.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/history_types.cc +--- chromium-76.0.3809.100/components/history/core/browser/history_types.cc.el7-noexcept 2019-08-23 13:45:57.673815531 +0200 ++++ chromium-76.0.3809.100/components/history/core/browser/history_types.cc 2019-08-23 13:47:02.463525385 +0200 +@@ -42,7 +42,7 @@ QueryResults::QueryResults(QueryResults& + Swap(&other); + } + +-QueryResults& QueryResults::operator=(QueryResults&& other) noexcept { ++QueryResults& QueryResults::operator=(QueryResults&& other) { + Swap(&other); + return *this; + } +diff -up chromium-76.0.3809.100/components/history/core/browser/history_types.h.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/history_types.h +--- chromium-76.0.3809.100/components/history/core/browser/history_types.h.el7-noexcept 2019-08-23 13:46:11.455966965 +0200 ++++ chromium-76.0.3809.100/components/history/core/browser/history_types.h 2019-08-23 13:46:48.022367596 +0200 +@@ -143,7 +143,7 @@ class QueryResults { + ~QueryResults(); + + QueryResults(QueryResults&& other) noexcept; +- QueryResults& operator=(QueryResults&& other) noexcept; ++ QueryResults& operator=(QueryResults&& other); + + void set_reached_beginning(bool reached) { reached_beginning_ = reached; } + bool reached_beginning() { return reached_beginning_; } diff -up chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept chromium-76.0.3809.100/components/policy/core/common/policy_map.cc ---- chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept 2019-08-23 10:35:01.127962168 +0200 -+++ chromium-76.0.3809.100/components/policy/core/common/policy_map.cc 2019-08-23 10:35:01.075961724 +0200 +--- chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept 2019-08-23 13:40:42.633353810 +0200 ++++ chromium-76.0.3809.100/components/policy/core/common/policy_map.cc 2019-08-23 13:40:42.576353183 +0200 @@ -52,7 +52,7 @@ PolicyMap::Entry::Entry( PolicyMap::Entry::~Entry() = default; @@ -31,8 +53,8 @@ diff -up chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7- PolicyMap::Entry PolicyMap::Entry::DeepCopy() const { Entry copy; diff -up chromium-76.0.3809.100/components/signin/core/browser/account_info.cc.el7-noexcept chromium-76.0.3809.100/components/signin/core/browser/account_info.cc ---- chromium-76.0.3809.100/components/signin/core/browser/account_info.cc.el7-noexcept 2019-08-23 10:35:02.341972531 +0200 -+++ chromium-76.0.3809.100/components/signin/core/browser/account_info.cc 2019-08-23 10:35:02.314972300 +0200 +--- chromium-76.0.3809.100/components/signin/core/browser/account_info.cc.el7-noexcept 2019-08-23 13:40:44.224371292 +0200 ++++ chromium-76.0.3809.100/components/signin/core/browser/account_info.cc 2019-08-23 13:40:44.190370918 +0200 @@ -52,7 +52,7 @@ CoreAccountInfo::CoreAccountInfo(CoreAcc CoreAccountInfo& CoreAccountInfo::operator=(const CoreAccountInfo& other) = default; @@ -52,8 +74,8 @@ diff -up chromium-76.0.3809.100/components/signin/core/browser/account_info.cc.e bool AccountInfo::IsEmpty() const { return CoreAccountInfo::IsEmpty() && hosted_domain.empty() && diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.el7-noexcept chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc ---- chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.el7-noexcept 2019-08-23 10:52:29.047592493 +0200 -+++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc 2019-08-23 10:52:48.243763687 +0200 +--- chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.el7-noexcept 2019-08-23 13:40:25.468165195 +0200 ++++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc 2019-08-23 13:40:25.481165338 +0200 @@ -14,7 +14,7 @@ CoreAccountId::~CoreAccountId() = defaul CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; @@ -64,8 +86,8 @@ diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.el7-noexcept CoreAccountId::CoreAccountId(const char* id) : id(id) {} diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.el7-noexcept chromium-76.0.3809.100/google_apis/gaia/core_account_id.h ---- chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.el7-noexcept 2019-08-23 10:52:31.541614735 +0200 -+++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.h 2019-08-23 10:53:03.252898948 +0200 +--- chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.el7-noexcept 2019-08-23 13:40:25.468165195 +0200 ++++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.h 2019-08-23 13:40:25.481165338 +0200 @@ -19,7 +19,7 @@ struct CoreAccountId { ~CoreAccountId(); @@ -76,8 +98,8 @@ diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.el7-noexcept // Those implicit constructor and conversion operator allow to // progressively migrate the code to use this struct. Removing diff -up chromium-76.0.3809.100/gpu/config/gpu_info.cc.el7-noexcept chromium-76.0.3809.100/gpu/config/gpu_info.cc ---- chromium-76.0.3809.100/gpu/config/gpu_info.cc.el7-noexcept 2019-08-23 10:38:00.659317249 +0200 -+++ chromium-76.0.3809.100/gpu/config/gpu_info.cc 2019-08-23 10:38:00.656317223 +0200 +--- chromium-76.0.3809.100/gpu/config/gpu_info.cc.el7-noexcept 2019-08-09 16:48:01.000000000 +0200 ++++ chromium-76.0.3809.100/gpu/config/gpu_info.cc 2019-08-23 13:40:25.482165349 +0200 @@ -166,7 +166,7 @@ GPUInfo::GPUDevice& GPUInfo::GPUDevice:: const GPUInfo::GPUDevice& other) = default; From 15f7f78118280501e6633507b74edb2d5688bf7a Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 26 Aug 2019 14:40:26 +0200 Subject: [PATCH 0413/1449] Another noexec fix for EL7 --- chromium-76.0.3809.100-el7-noexcept.patch | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/chromium-76.0.3809.100-el7-noexcept.patch b/chromium-76.0.3809.100-el7-noexcept.patch index 99593f7..407f8de 100644 --- a/chromium-76.0.3809.100-el7-noexcept.patch +++ b/chromium-76.0.3809.100-el7-noexcept.patch @@ -18,7 +18,7 @@ diff -up chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noe switch (icon_type_) { diff -up chromium-76.0.3809.100/components/history/core/browser/history_types.cc.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/history_types.cc --- chromium-76.0.3809.100/components/history/core/browser/history_types.cc.el7-noexcept 2019-08-23 13:45:57.673815531 +0200 -+++ chromium-76.0.3809.100/components/history/core/browser/history_types.cc 2019-08-23 13:47:02.463525385 +0200 ++++ chromium-76.0.3809.100/components/history/core/browser/history_types.cc 2019-08-26 10:13:00.815409764 +0200 @@ -42,7 +42,7 @@ QueryResults::QueryResults(QueryResults& Swap(&other); } @@ -28,9 +28,18 @@ diff -up chromium-76.0.3809.100/components/history/core/browser/history_types.cc Swap(&other); return *this; } +@@ -186,7 +186,7 @@ QueryURLResult::QueryURLResult(QueryURLR + + QueryURLResult& QueryURLResult::operator=(const QueryURLResult&) = default; + +-QueryURLResult& QueryURLResult::operator=(QueryURLResult&&) noexcept = default; ++QueryURLResult& QueryURLResult::operator=(QueryURLResult&&) = default; + + // MostVisitedURL -------------------------------------------------------------- + diff -up chromium-76.0.3809.100/components/history/core/browser/history_types.h.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/history_types.h --- chromium-76.0.3809.100/components/history/core/browser/history_types.h.el7-noexcept 2019-08-23 13:46:11.455966965 +0200 -+++ chromium-76.0.3809.100/components/history/core/browser/history_types.h 2019-08-23 13:46:48.022367596 +0200 ++++ chromium-76.0.3809.100/components/history/core/browser/history_types.h 2019-08-26 10:13:49.951881558 +0200 @@ -143,7 +143,7 @@ class QueryResults { ~QueryResults(); @@ -40,6 +49,15 @@ diff -up chromium-76.0.3809.100/components/history/core/browser/history_types.h. void set_reached_beginning(bool reached) { reached_beginning_ = reached; } bool reached_beginning() { return reached_beginning_; } +@@ -278,7 +278,7 @@ struct QueryURLResult { + QueryURLResult(const QueryURLResult&); + QueryURLResult(QueryURLResult&&) noexcept; + QueryURLResult& operator=(const QueryURLResult&); +- QueryURLResult& operator=(QueryURLResult&&) noexcept; ++ QueryURLResult& operator=(QueryURLResult&&); + ~QueryURLResult(); + + // Indicates whether the call to HistoryBackend::QueryURL was successfull diff -up chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept chromium-76.0.3809.100/components/policy/core/common/policy_map.cc --- chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept 2019-08-23 13:40:42.633353810 +0200 +++ chromium-76.0.3809.100/components/policy/core/common/policy_map.cc 2019-08-23 13:40:42.576353183 +0200 From a09f5470858174d9b79c6c4355f12d428ea97189 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 27 Aug 2019 07:13:54 +0200 Subject: [PATCH 0414/1449] Update to 76.0.3809.132 --- ....3809.100-gcc-ambigous-instantiation.patch | 39 ------------------- chromium.spec | 7 +++- sources | 2 +- 3 files changed, 6 insertions(+), 42 deletions(-) delete mode 100644 chromium-76.0.3809.100-gcc-ambigous-instantiation.patch diff --git a/chromium-76.0.3809.100-gcc-ambigous-instantiation.patch b/chromium-76.0.3809.100-gcc-ambigous-instantiation.patch deleted file mode 100644 index 587abf3..0000000 --- a/chromium-76.0.3809.100-gcc-ambigous-instantiation.patch +++ /dev/null @@ -1,39 +0,0 @@ -From 52b5ceac95b67491b1c71f0ef9a32b778bbbaa2e Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Wed, 05 Jun 2019 19:46:55 +0000 -Subject: [PATCH] GCC: avoid ambiguous NoDestructor creation in GetNeverSniffedMimeTypes. - -Use brace-list notation to wrap the already existing brace-list for -initializing the flat-set. This resolves an ambiguous instantiation -in GCC. - -Bug: 819294 -Change-Id: I89ddf12522d62a5140a8c2c41dc98e30ec7a0e78 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645774 -Reviewed-by: Matt Menke -Commit-Queue: José Dapena Paz -Cr-Commit-Position: refs/heads/master@{#666401} ---- - -diff --git a/services/network/cross_origin_read_blocking.cc b/services/network/cross_origin_read_blocking.cc -index 30999c0..60a03f6 100644 ---- a/services/network/cross_origin_read_blocking.cc -+++ b/services/network/cross_origin_read_blocking.cc -@@ -211,7 +211,7 @@ - // confirmation sniffing because images, scripts, etc. are frequently - // mislabelled by http servers as HTML/JSON/XML). - base::flat_set& GetNeverSniffedMimeTypes() { -- static base::NoDestructor> s_types({ -+ static base::NoDestructor> s_types{{ - // The list below has been populated based on most commonly used content - // types according to HTTP Archive - see: - // https://github.com/whatwg/fetch/issues/860#issuecomment-457330454 -@@ -224,7 +224,7 @@ - "application/x-www-form-urlencoded", - "application/zip", - "text/event-stream", -- }); -+ }}; - - // All items need to be lower-case, to support case-insensitive comparisons - // later. diff --git a/chromium.spec b/chromium.spec index c961abc..cbc4fa4 100644 --- a/chromium.spec +++ b/chromium.spec @@ -171,7 +171,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3809.100 +Version: %{majorversion}.0.3809.132 Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home @@ -280,7 +280,7 @@ Patch50: chromium-76.0.3809.100-quiche-compile-fix.patch # https://chromium.googlesource.com/chromium/src/+/53bb5a463ee956c70230eaa5450022185d0ddc3c Patch51: chromium-76.0.3809.100-throttling-dead-beef.patch # https://chromium.googlesource.com/chromium/src/+/52b5ceac95b67491b1c71f0ef9a32b778bbbaa2e -Patch52: chromium-76.0.3809.100-gcc-ambigous-instantiation.patch +Patch52: chromium-76.0.3809.132-gcc-ambigous-instantiation.patch # https://chromium.googlesource.com/chromium/src.git/+/715cb38eac889625de0c429d2672562188b4107e Patch53: chromium-76.0.3809.100-weak-ptr-no-except.patch # https://chromium.googlesource.com/chromium/src.git/+/c6afbd59c997c2b64f11abdd1eaef71ae8ea2ddc @@ -1908,6 +1908,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Tue Aug 27 2019 Tomas Popela - 76.0.3809.132-1 +- Update to 76.0.3809.132 + * Tue Aug 13 2019 Tomas Popela - 76.0.3809.100-1 - Update to 76.0.3809.100 diff --git a/sources b/sources index b7a420d..2d38a7c 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-76.0.3809.100-clean.tar.xz) = 418ade473185717595b47fbf49ad58bd9bf7cece43f9e200108a2f4df1391bc6a09673e7c30a9958205e13650ed220ad289fe3d79d140612ec5c0bb7891fc8c8 +SHA512 (chromium-76.0.3809.132-clean.tar.xz) = fbc5f989945adfaffb9fb5199ccb988accdc53f41a03bba9c4ab3df8585b9267b1f34cd7a6ac487eff34ebb6e65865e32ceea4ad945eec30f871d8eed41f3e6f From ea0cafa75a2e7de7b020c34adba5155dde0d2626 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 27 Aug 2019 07:56:12 +0200 Subject: [PATCH 0415/1449] Add an updated patch that was missed --- ....3809.132-gcc-ambigous-instantiation.patch | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 chromium-76.0.3809.132-gcc-ambigous-instantiation.patch diff --git a/chromium-76.0.3809.132-gcc-ambigous-instantiation.patch b/chromium-76.0.3809.132-gcc-ambigous-instantiation.patch new file mode 100644 index 0000000..73db4d4 --- /dev/null +++ b/chromium-76.0.3809.132-gcc-ambigous-instantiation.patch @@ -0,0 +1,21 @@ +diff -up chromium-76.0.3809.132/services/network/cross_origin_read_blocking.cc.gcc-ambigous-instantiation chromium-76.0.3809.132/services/network/cross_origin_read_blocking.cc +--- chromium-76.0.3809.132/services/network/cross_origin_read_blocking.cc.gcc-ambigous-instantiation 2019-08-26 21:02:33.000000000 +0200 ++++ chromium-76.0.3809.132/services/network/cross_origin_read_blocking.cc 2019-08-27 06:58:23.963821667 +0200 +@@ -207,7 +207,7 @@ std::set& GetPluginProxyingProcesse + // confirmation sniffing because images, scripts, etc. are frequently + // mislabelled by http servers as HTML/JSON/XML). + base::flat_set& GetNeverSniffedMimeTypes() { +- static base::NoDestructor> s_types({ ++ static base::NoDestructor> s_types{{ + // The list below has been populated based on most commonly used content + // types according to HTTP Archive - see: + // https://github.com/whatwg/fetch/issues/860#issuecomment-457330454 +@@ -219,7 +219,7 @@ base::flat_set& GetNeverSni + "application/x-protobuf", + "application/zip", + "text/event-stream", +- }); ++ }}; + + // All items need to be lower-case, to support case-insensitive comparisons + // later. From c1395d1c9d634e9ed4dbc67128ce1efe82f75458 Mon Sep 17 00:00:00 2001 From: Nicolas Chauvet Date: Fri, 23 Aug 2019 18:15:28 +0200 Subject: [PATCH 0416/1449] Clean-up gitignore using wildcard --- .gitignore | 64 +----------------------------------------------------- 1 file changed, 1 insertion(+), 63 deletions(-) diff --git a/.gitignore b/.gitignore index 2bfdc54..06de94b 100644 --- a/.gitignore +++ b/.gitignore @@ -1,51 +1,7 @@ /chromium-52.0.2743.75-clean.tar.xz /depot_tools.git-master.tar.gz /policy_templates.zip -/chromium-52.0.2743.82-clean.tar.xz -/chromium-52.0.2743.116-clean.tar.xz -/chromium-53.0.2785.92-clean.tar.xz -/chromium-53.0.2785.101-clean.tar.xz -/chromium-53.0.2785.113-clean.tar.xz -/chromium-53.0.2785.116-clean.tar.xz -/chromium-53.0.2785.143-clean.tar.xz -/chromium-54.0.2840.59-clean.tar.xz -/chromium-54.0.2840.71-clean.tar.xz -/chromium-54.0.2840.90-clean.tar.xz -/chromium-54.0.2840.100.tar.xz -/chromium-54.0.2840.100-clean.tar.xz -/chromium-55.0.2883.75-clean.tar.xz -/chromium-55.0.2883.87-clean.tar.xz -/chromium-56.0.2924.87-clean.tar.xz -/chromium-57.0.2987.110-clean.tar.xz -/chromium-57.0.2987.133-clean.tar.xz -/chromium-58.0.3029.81-clean.tar.xz -/chromium-58.0.3029.110-clean.tar.xz -/chromium-59.0.3071.86-clean.tar.xz -/chromium-59.0.3071.104-clean.tar.xz -/chromium-59.0.3071.109-clean.tar.xz -/chromium-59.0.3071.115-clean.tar.xz -/chromium-59.0.3071.109-freetype.tar.bz2 -/chromium-60.0.3112.90-clean.tar.xz -/chromium-60.0.3112.101-clean.tar.xz -/chromium-60.0.3112.113-clean.tar.xz -/chromium-60.0.3112.113.tar.xz -/chromium-61.0.3163.79-clean.tar.xz -/chromium-61.0.3163.100-clean.tar.xz -/chromium-62.0.3202.75-clean.tar.xz -/chromium-62.0.3202.89-clean.tar.xz -/chromium-63.0.3239.84-clean.tar.xz -/chromium-63.0.3239.108-clean.tar.xz -/chromium-64.0.3282.119-clean.tar.xz -/chromium-64.0.3282.140-clean.tar.xz -/chromium-64.0.3282.167-clean.tar.xz -/chromium-64.0.3282.186-clean.tar.xz -/chromium-65.0.3325.146-clean.tar.xz -/chromium-65.0.3325.162-clean.tar.xz -/chromium-65.0.3325.181-clean.tar.xz -/chromium-66.0.3359.139-clean.tar.xz -/chromium-66.0.3359.170-clean.tar.xz -/chromium-66.0.3359.181-clean.tar.xz -/chromium-67.0.3396.62-clean.tar.xz +/chromium-*.tar.xz /gelasio.zip /MuktiNarrow-0.94.tar.bz2 /NotoSansCJKjp-hinted.zip @@ -62,23 +18,5 @@ /Tinos-Bold.ttf /Tinos-Italic.ttf /Tinos-Regular.ttf -/chromium-67.0.3396.79-clean.tar.xz -/chromium-67.0.3396.87-clean.tar.xz -/chromium-67.0.3396.99-clean.tar.xz -/chromium-68.0.3440.106-clean.tar.xz /Ahem.ttf -/chromium-69.0.3497.92-clean.tar.xz -/chromium-69.0.3497.100-clean.tar.xz -/chromium-70.0.3538.77-clean.tar.xz -/chromium-70.0.3538.110-clean.tar.xz -/chromium-71.0.3578.98-clean.tar.xz /node-v8.9.1-linux-x64.tar.gz -/chromium-72.0.3626.121-clean.tar.xz -/chromium-73.0.3683.75-clean.tar.xz -/chromium-73.0.3683.86-clean.tar.xz -/chromium-73.0.3683.103-clean.tar.xz -/chromium-74.0.3729.169-clean.tar.xz -/chromium-75.0.3770.80-clean.tar.xz -/chromium-75.0.3770.90-clean.tar.xz -/chromium-75.0.3770.100-clean.tar.xz -/chromium-76.0.3809.100-clean.tar.xz From 2b5d9457a7e3a16700298aa020f1103f5f124804 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 27 Aug 2019 07:13:54 +0200 Subject: [PATCH 0417/1449] Update to 76.0.3809.132 --- ....3809.100-gcc-ambigous-instantiation.patch | 39 ------------------- chromium.spec | 7 +++- sources | 2 +- 3 files changed, 6 insertions(+), 42 deletions(-) delete mode 100644 chromium-76.0.3809.100-gcc-ambigous-instantiation.patch diff --git a/chromium-76.0.3809.100-gcc-ambigous-instantiation.patch b/chromium-76.0.3809.100-gcc-ambigous-instantiation.patch deleted file mode 100644 index 587abf3..0000000 --- a/chromium-76.0.3809.100-gcc-ambigous-instantiation.patch +++ /dev/null @@ -1,39 +0,0 @@ -From 52b5ceac95b67491b1c71f0ef9a32b778bbbaa2e Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Wed, 05 Jun 2019 19:46:55 +0000 -Subject: [PATCH] GCC: avoid ambiguous NoDestructor creation in GetNeverSniffedMimeTypes. - -Use brace-list notation to wrap the already existing brace-list for -initializing the flat-set. This resolves an ambiguous instantiation -in GCC. - -Bug: 819294 -Change-Id: I89ddf12522d62a5140a8c2c41dc98e30ec7a0e78 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645774 -Reviewed-by: Matt Menke -Commit-Queue: José Dapena Paz -Cr-Commit-Position: refs/heads/master@{#666401} ---- - -diff --git a/services/network/cross_origin_read_blocking.cc b/services/network/cross_origin_read_blocking.cc -index 30999c0..60a03f6 100644 ---- a/services/network/cross_origin_read_blocking.cc -+++ b/services/network/cross_origin_read_blocking.cc -@@ -211,7 +211,7 @@ - // confirmation sniffing because images, scripts, etc. are frequently - // mislabelled by http servers as HTML/JSON/XML). - base::flat_set& GetNeverSniffedMimeTypes() { -- static base::NoDestructor> s_types({ -+ static base::NoDestructor> s_types{{ - // The list below has been populated based on most commonly used content - // types according to HTTP Archive - see: - // https://github.com/whatwg/fetch/issues/860#issuecomment-457330454 -@@ -224,7 +224,7 @@ - "application/x-www-form-urlencoded", - "application/zip", - "text/event-stream", -- }); -+ }}; - - // All items need to be lower-case, to support case-insensitive comparisons - // later. diff --git a/chromium.spec b/chromium.spec index c961abc..cbc4fa4 100644 --- a/chromium.spec +++ b/chromium.spec @@ -171,7 +171,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3809.100 +Version: %{majorversion}.0.3809.132 Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home @@ -280,7 +280,7 @@ Patch50: chromium-76.0.3809.100-quiche-compile-fix.patch # https://chromium.googlesource.com/chromium/src/+/53bb5a463ee956c70230eaa5450022185d0ddc3c Patch51: chromium-76.0.3809.100-throttling-dead-beef.patch # https://chromium.googlesource.com/chromium/src/+/52b5ceac95b67491b1c71f0ef9a32b778bbbaa2e -Patch52: chromium-76.0.3809.100-gcc-ambigous-instantiation.patch +Patch52: chromium-76.0.3809.132-gcc-ambigous-instantiation.patch # https://chromium.googlesource.com/chromium/src.git/+/715cb38eac889625de0c429d2672562188b4107e Patch53: chromium-76.0.3809.100-weak-ptr-no-except.patch # https://chromium.googlesource.com/chromium/src.git/+/c6afbd59c997c2b64f11abdd1eaef71ae8ea2ddc @@ -1908,6 +1908,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Tue Aug 27 2019 Tomas Popela - 76.0.3809.132-1 +- Update to 76.0.3809.132 + * Tue Aug 13 2019 Tomas Popela - 76.0.3809.100-1 - Update to 76.0.3809.100 diff --git a/sources b/sources index b7a420d..2d38a7c 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-76.0.3809.100-clean.tar.xz) = 418ade473185717595b47fbf49ad58bd9bf7cece43f9e200108a2f4df1391bc6a09673e7c30a9958205e13650ed220ad289fe3d79d140612ec5c0bb7891fc8c8 +SHA512 (chromium-76.0.3809.132-clean.tar.xz) = fbc5f989945adfaffb9fb5199ccb988accdc53f41a03bba9c4ab3df8585b9267b1f34cd7a6ac487eff34ebb6e65865e32ceea4ad945eec30f871d8eed41f3e6f From 4f832fa064b6c7527c3c251e09a9579b880f26d1 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 27 Aug 2019 07:56:12 +0200 Subject: [PATCH 0418/1449] Add an updated patch that was missed --- ....3809.132-gcc-ambigous-instantiation.patch | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 chromium-76.0.3809.132-gcc-ambigous-instantiation.patch diff --git a/chromium-76.0.3809.132-gcc-ambigous-instantiation.patch b/chromium-76.0.3809.132-gcc-ambigous-instantiation.patch new file mode 100644 index 0000000..73db4d4 --- /dev/null +++ b/chromium-76.0.3809.132-gcc-ambigous-instantiation.patch @@ -0,0 +1,21 @@ +diff -up chromium-76.0.3809.132/services/network/cross_origin_read_blocking.cc.gcc-ambigous-instantiation chromium-76.0.3809.132/services/network/cross_origin_read_blocking.cc +--- chromium-76.0.3809.132/services/network/cross_origin_read_blocking.cc.gcc-ambigous-instantiation 2019-08-26 21:02:33.000000000 +0200 ++++ chromium-76.0.3809.132/services/network/cross_origin_read_blocking.cc 2019-08-27 06:58:23.963821667 +0200 +@@ -207,7 +207,7 @@ std::set& GetPluginProxyingProcesse + // confirmation sniffing because images, scripts, etc. are frequently + // mislabelled by http servers as HTML/JSON/XML). + base::flat_set& GetNeverSniffedMimeTypes() { +- static base::NoDestructor> s_types({ ++ static base::NoDestructor> s_types{{ + // The list below has been populated based on most commonly used content + // types according to HTTP Archive - see: + // https://github.com/whatwg/fetch/issues/860#issuecomment-457330454 +@@ -219,7 +219,7 @@ base::flat_set& GetNeverSni + "application/x-protobuf", + "application/zip", + "text/event-stream", +- }); ++ }}; + + // All items need to be lower-case, to support case-insensitive comparisons + // later. From 9bb933dc67b7e0b2051c0f48ef3783365b86fc8b Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 29 Aug 2019 16:22:39 -0400 Subject: [PATCH 0419/1449] update chromium-latest.py to Python3 --- chromium-latest.py | 94 +++++++++++++++++++++++----------------------- 1 file changed, 47 insertions(+), 47 deletions(-) diff --git a/chromium-latest.py b/chromium-latest.py index 87889ad..5af8628 100755 --- a/chromium-latest.py +++ b/chromium-latest.py @@ -1,5 +1,5 @@ -#!/usr/bin/python -# Copyright 2010,2015-2016 Tom Callaway +#!/usr/bin/python3 +# Copyright 2010,2015-2019 Tom Callaway # Copyright 2013-2016 Tomas Popela # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the @@ -32,9 +32,9 @@ import hashlib import locale import os import shutil -import StringIO +import io import sys -import urllib +import urllib.request, urllib.parse, urllib.error chromium_url = "http://commondatastorage.googleapis.com/chromium-browser-official/" @@ -59,22 +59,22 @@ def dlProgress(count, blockSize, totalSize): def delete_chromium_dir(ch_dir): full_dir = "%s/%s" % (latest_dir, ch_dir) - print 'Deleting %s ' % full_dir + print('Deleting %s ' % full_dir) if os.path.isdir(full_dir): shutil.rmtree(full_dir) - print '[DONE]' + print('[DONE]') else: - print '[NOT FOUND]' + print('[NOT FOUND]') def delete_chromium_files(files): full_path = "%s/%s" % (latest_dir, files) - print 'Deleting ' + full_path + ' ', + print('Deleting ' + full_path + ' ', end=' ') for filename in glob.glob(full_path): - print 'Deleting ' + filename + ' ', + print('Deleting ' + filename + ' ', end=' ') os.remove(filename) - print '[DONE]' + print('[DONE]') def check_omahaproxy(channel="stable"): @@ -82,20 +82,20 @@ def check_omahaproxy(channel="stable"): version = 0 status_url = "http://omahaproxy.appspot.com/all?os=linux&channel=" + channel - usock = urllib.urlopen(status_url) - status_dump = usock.read() + usock = urllib.request.urlopen(status_url) + status_dump = usock.read().decode('utf-8') usock.close() - status_list = StringIO.StringIO(status_dump) + status_list = io.StringIO(status_dump) status_reader = list(csv.reader(status_list, delimiter=',')) linux_channels = [s for s in status_reader if "linux" in s] linux_channel = [s for s in linux_channels if channel in s] version = linux_channel[0][2] if version == 0: - print 'I could not find the latest %s build. Bailing out.' % channel + print('I could not find the latest %s build. Bailing out.' % channel) sys.exit(1) else: - print 'Latest Chromium Version on %s at %s is %s' % (channel, status_url, version) + print('Latest Chromium Version on %s at %s is %s' % (channel, status_url, version)) return version @@ -119,27 +119,27 @@ def download_file_and_compare_hashes(file_to_download): # Let's make sure we haven't already downloaded it. tarball_local_file = "./%s" % file_to_download if os.path.isfile(tarball_local_file): - print "%s already exists!" % file_to_download + print("%s already exists!" % file_to_download) else: path = '%s%s' % (chromium_url, file_to_download) - print "Downloading %s" % path + print("Downloading %s" % path) # Perhaps look at using python-progressbar at some point? - info=urllib.urlretrieve(path, file_to_download, reporthook=dlProgress)[1] - urllib.urlcleanup() - print "" + info=urllib.request.urlretrieve(path, file_to_download, reporthook=dlProgress)[1] + urllib.request.urlcleanup() + print("") if (info["Content-Type"] != "application/x-tar"): - print 'Chromium tarballs for %s are not on servers.' % file_to_download + print('Chromium tarballs for %s are not on servers.' % file_to_download) remove_file_if_exists (file_to_download) sys.exit(1) hashes_local_file = "./%s" % hashes_file if not os.path.isfile(hashes_local_file): path = '%s%s' % (chromium_url, hashes_file) - print "Downloading %s" % path + print("Downloading %s" % path) # Perhaps look at using python-progressbar at some point? - info=urllib.urlretrieve(path, hashes_file, reporthook=dlProgress)[1] - urllib.urlcleanup() - print "" + info=urllib.request.urlretrieve(path, hashes_file, reporthook=dlProgress)[1] + urllib.request.urlcleanup() + print("") if os.path.isfile(hashes_local_file): with open(hashes_local_file, "r") as input_file: @@ -149,12 +149,12 @@ def download_file_and_compare_hashes(file_to_download): for block in iter(lambda: f.read(65536), b""): md5.update(block) if (md5sum == md5.hexdigest()): - print "MD5 matches for %s!" % file_to_download + print("MD5 matches for %s!" % file_to_download) else: - print "MD5 mismatch for %s!" % file_to_download + print("MD5 mismatch for %s!" % file_to_download) sys.exit(1) else: - print "Cannot compare hashes for %s!" % file_to_download + print("Cannot compare hashes for %s!" % file_to_download) def download_version(version): @@ -175,16 +175,16 @@ def nacl_versions(version): for line in myfile: name, var = line.partition("=")[::2] myvars[name] = var - print "nacl-binutils commit: %s" % myvars["NACL_BINUTILS_COMMIT"] - print "nacl-gcc commit: %s" % myvars["NACL_GCC_COMMIT"] - print "nacl-newlib commit: %s" % myvars["NACL_NEWLIB_COMMIT"] + print("nacl-binutils commit: %s" % myvars["NACL_BINUTILS_COMMIT"]) + print("nacl-gcc commit: %s" % myvars["NACL_GCC_COMMIT"]) + print("nacl-newlib commit: %s" % myvars["NACL_NEWLIB_COMMIT"]) # Parse GIT_REVISIONS dict from toolchain_build.py sys.path.append(os.path.abspath(chrome_dir + "/native_client/toolchain_build")) from toolchain_build import GIT_REVISIONS - print "nacl-arm-binutils commit: %s" % GIT_REVISIONS['binutils']['rev'] - print "nacl-arm-gcc commit: %s" % GIT_REVISIONS['gcc']['rev'] + print("nacl-arm-binutils commit: %s" % GIT_REVISIONS['binutils']['rev']) + print("nacl-arm-gcc commit: %s" % GIT_REVISIONS['gcc']['rev']) def download_chrome_latest_rpm(arch): @@ -197,15 +197,15 @@ def download_chrome_latest_rpm(arch): # Let's make sure we haven't already downloaded it. if os.path.isfile("./%s" % chrome_rpm): - print "%s already exists!" % chrome_rpm + print("%s already exists!" % chrome_rpm) else: - print "Downloading %s" % path + print("Downloading %s" % path) # Perhaps look at using python-progressbar at some point? - info=urllib.urlretrieve(path, chrome_rpm, reporthook=dlProgress)[1] - urllib.urlcleanup() - print "" + info=urllib.request.urlretrieve(path, chrome_rpm, reporthook=dlProgress)[1] + urllib.request.urlcleanup() + print("") if (info["Content-Type"] != "binary/octet-stream" and info["Content-Type"] != "application/x-redhat-package-manager"): - print 'Chrome %s rpms are not on servers.' % version_string + print('Chrome %s rpms are not on servers.' % version_string) remove_file_if_exists (chrome_rpm) sys.exit(1) @@ -274,7 +274,7 @@ if __name__ == '__main__': version_string = "dev" elif (not (args.stable or args.beta or args.dev)): if (not args.version): - print 'No version specified, downloading STABLE' + print('No version specified, downloading STABLE') args.stable = True chromium_version = args.version if args.version else check_omahaproxy(version_string) @@ -284,7 +284,7 @@ if __name__ == '__main__': if args.chrome: if args.version: - print 'You cannot specify a Chrome RPM version!' + print('You cannot specify a Chrome RPM version!') sys.exit(1) latest = 'google-chrome-%s_current_i386' % version_string download_chrome_latest_rpm("i386") @@ -303,11 +303,11 @@ if __name__ == '__main__': shutil.rmtree(latest_dir) if os.path.isdir(latest_dir): - print "%s already exists, perhaps %s has already been unpacked?" % (latest_dir, latest) + print("%s already exists, perhaps %s has already been unpacked?" % (latest_dir, latest)) else: - print "Unpacking %s into %s, please wait." % (latest, latest_dir) + print("Unpacking %s into %s, please wait." % (latest, latest_dir)) if (os.system("tar -xJf %s" % latest) != 0): - print "%s is possibly corrupted, exiting." % (latest) + print("%s is possibly corrupted, exiting." % (latest)) sys.exit(1) if (args.naclvers): @@ -334,11 +334,11 @@ if __name__ == '__main__': if (args.ffmpegclean): print("Cleaning ffmpeg from proprietary things...") os.system("./clean_ffmpeg.sh %s %d" % (latest_dir, 0 if args.ffmpegarm else 1)) - print "Done!" + print("Done!") if (not args.prep): - print "Compressing cleaned tree, please wait..." + print("Compressing cleaned tree, please wait...") os.chdir(chromium_root_dir) os.system("tar --exclude=\.svn -cf - chromium-%s | xz -9 -T 0 -f > %s" % (chromium_version, chromium_clean_xz_file)) - print "Finished!" + print("Finished!") From 8f7f0b6930dc9b8203ead48861cb3e390feefbd0 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 3 Sep 2019 12:20:51 +0200 Subject: [PATCH 0420/1449] Backport patch to fix certificate transparency --- ....0.3809.132-certificate-transparency.patch | 206 ++++++++++++++++++ chromium.spec | 8 +- 2 files changed, 213 insertions(+), 1 deletion(-) create mode 100644 chromium-76.0.3809.132-certificate-transparency.patch diff --git a/chromium-76.0.3809.132-certificate-transparency.patch b/chromium-76.0.3809.132-certificate-transparency.patch new file mode 100644 index 0000000..25a08af --- /dev/null +++ b/chromium-76.0.3809.132-certificate-transparency.patch @@ -0,0 +1,206 @@ +diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc +--- chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc.certificate-transparency 2019-08-26 21:02:05.000000000 +0200 ++++ chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc 2019-09-03 12:01:33.004949320 +0200 +@@ -4,11 +4,13 @@ + + #include "chrome/browser/net/system_network_context_manager.h" + ++#include + #include + #include + #include + + #include "base/bind.h" ++#include "base/build_time.h" + #include "base/command_line.h" + #include "base/feature_list.h" + #include "base/logging.h" +@@ -51,6 +53,7 @@ + #include "content/public/common/mime_handler_view_mode.h" + #include "content/public/common/service_names.mojom.h" + #include "content/public/common/user_agent.h" ++#include "crypto/sha2.h" + #include "mojo/public/cpp/bindings/associated_interface_ptr.h" + #include "net/dns/public/util.h" + #include "net/net_buildflags.h" +@@ -686,15 +689,41 @@ SystemNetworkContextManager::CreateDefau + + bool http_09_on_non_default_ports_enabled = false; + #if !defined(OS_ANDROID) +- // CT is only enabled on Desktop platforms for now. ++ ++#if BUILDFLAG(GOOGLE_CHROME_BRANDING) && defined(OFFICIAL_BUILD) && \ ++ !defined(OS_IOS) ++ // Certificate Transparency is only enabled if: ++ // - Desktop (!OS_ANDROID, !OS_IOS) ++ // - base::GetBuildTime() is deterministic to the source (OFFICIAL_BUILD) ++ // - The build in reliably updatable (GOOGLE_CHROME_BRANDING) + network_context_params->enforce_chrome_ct_policy = true; ++ network_context_params->ct_log_update_time = base::GetBuildTime(); ++ ++ std::vector operated_by_google_logs = ++ certificate_transparency::GetLogsOperatedByGoogle(); ++ std::vector> disqualified_logs = ++ certificate_transparency::GetDisqualifiedLogs(); + for (const auto& ct_log : certificate_transparency::GetKnownLogs()) { + // TODO(rsleevi): https://crbug.com/702062 - Remove this duplication. + network::mojom::CTLogInfoPtr log_info = network::mojom::CTLogInfo::New(); + log_info->public_key = std::string(ct_log.log_key, ct_log.log_key_length); + log_info->name = ct_log.log_name; ++ ++ std::string log_id = crypto::SHA256HashString(log_info->public_key); ++ log_info->operated_by_google = ++ std::binary_search(std::begin(operated_by_google_logs), ++ std::end(operated_by_google_logs), log_id); ++ auto it = std::lower_bound( ++ std::begin(disqualified_logs), std::end(disqualified_logs), log_id, ++ [](const auto& disqualified_log, const std::string& log_id) { ++ return disqualified_log.first < log_id; ++ }); ++ if (it != std::end(disqualified_logs) && it->first == log_id) { ++ log_info->disqualified_at = it->second; ++ } + network_context_params->ct_logs.push_back(std::move(log_info)); + } ++#endif + + const base::Value* value = + g_browser_process->policy_service() +diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate-transparency chromium-76.0.3809.132/services/network/network_context.cc +--- chromium-76.0.3809.132/services/network/network_context.cc.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 ++++ chromium-76.0.3809.132/services/network/network_context.cc 2019-09-03 12:04:01.983890928 +0200 +@@ -35,6 +35,7 @@ + #include "components/prefs/pref_registry_simple.h" + #include "components/prefs/pref_service.h" + #include "components/prefs/pref_service_factory.h" ++#include "crypto/sha2.h" + #include "mojo/public/cpp/bindings/strong_binding.h" + #include "net/base/layered_network_delegate.h" + #include "net/base/load_flags.h" +@@ -1851,16 +1852,6 @@ URLRequestContextOwner NetworkContext::A + base::FeatureList::IsEnabled(features::kNetworkErrorLogging)); + #endif // BUILDFLAG(ENABLE_REPORTING) + +-#if BUILDFLAG(IS_CT_SUPPORTED) +- if (params_->enforce_chrome_ct_policy) { +- builder->set_ct_policy_enforcer( +- std::make_unique( +- base::GetBuildTime(), +- certificate_transparency::GetDisqualifiedLogs(), +- certificate_transparency::GetLogsOperatedByGoogle())); +- } +-#endif // BUILDFLAG(IS_CT_SUPPORTED) +- + net::HttpNetworkSession::Params session_params; + bool is_quic_force_disabled = false; + if (network_service_ && network_service_->quic_disabled()) +@@ -1910,8 +1901,20 @@ URLRequestContextOwner NetworkContext::A + + #if BUILDFLAG(IS_CT_SUPPORTED) + std::vector> ct_logs; ++ std::vector> disqualified_logs; ++ std::vector operated_by_google_logs; ++ + if (!params_->ct_logs.empty()) { + for (const auto& log : params_->ct_logs) { ++ if (log->operated_by_google || log->disqualified_at) { ++ std::string log_id = crypto::SHA256HashString(log->public_key); ++ if (log->operated_by_google) ++ operated_by_google_logs.push_back(log_id); ++ if (log->disqualified_at) { ++ disqualified_logs.push_back( ++ std::make_pair(log_id, log->disqualified_at.value())); ++ } ++ } + scoped_refptr log_verifier = + net::CTLogVerifier::Create(log->public_key, log->name); + if (!log_verifier) { +@@ -1924,6 +1927,13 @@ URLRequestContextOwner NetworkContext::A + ct_verifier->AddLogs(ct_logs); + builder->set_ct_verifier(std::move(ct_verifier)); + } ++ ++ if (params_->enforce_chrome_ct_policy) { ++ builder.set_ct_policy_enforcer( ++ std::make_unique( ++ params_->ct_log_update_time, disqualified_logs, ++ operated_by_google_logs)); ++ } + #endif // BUILDFLAG(IS_CT_SUPPORTED) + + const base::CommandLine* command_line = +diff -up chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom.certificate-transparency chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom +--- chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 ++++ chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom 2019-09-03 11:59:48.423862022 +0200 +@@ -4,6 +4,8 @@ + + module network.mojom; + ++import "mojo/public/mojom/base/time.mojom"; ++ + // A single Certificate Transparency Log configuration. + struct CTLogInfo { + // The DER-encoded SubjectPublicKeyInfo of the log. +@@ -14,4 +16,13 @@ struct CTLogInfo { + // The human-readable, log-supplied log name. Note that this will not be + // translated. + string name; ++ ++ // Whether or not the log should should be considered a Google Log for the ++ // purposes of enforcing the "Certificate Transparency in Chrome" policy. ++ bool operated_by_google; ++ ++ // If set, the time since the Unix Epoch when the log was disqualified. This ++ // is used to determine the "once or currently qualified" status of the log. ++ // If the log is currently qualified, this will not be set. ++ mojo_base.mojom.TimeDelta? disqualified_at; + }; +diff -up chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom.certificate-transparency chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom +--- chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 ++++ chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom 2019-09-03 11:59:48.424862032 +0200 +@@ -238,15 +238,6 @@ struct NetworkContextParams { + [EnableIf=is_android] + bool check_clear_text_permitted = false; + +- // True if the "Certificate Transparency in Chrome" policy (see +- // https://github.com/chromium/ct-policy/blob/master/ct_policy.md) should +- // be enforced for certificates and connections. +- // +- // See //net/docs/certificate-transparency.md before setting this flag to +- // true. +- [EnableIf=is_ct_supported] +- bool enforce_chrome_ct_policy = false; +- + // Enables HTTP/0.9 on ports other than 80 for HTTP and 443 for HTTPS. + bool http_09_on_non_default_ports_enabled = false; + +@@ -299,6 +290,15 @@ struct NetworkContextParams { + // servers, so they can discover misconfigurations. + bool enable_certificate_reporting = false; + ++ // True if the "Certificate Transparency in Chrome" policy (see ++ // https://github.com/chromium/ct-policy/blob/master/ct_policy.md) should ++ // be enforced for certificates and connections. ++ // ++ // See //net/docs/certificate-transparency.md before setting this flag to ++ // true. ++ [EnableIf=is_ct_supported] ++ bool enforce_chrome_ct_policy = false; ++ + // Enables Expect CT reporting, which sends reports for opted-in sites that + // don't serve sufficient Certificate Transparency information. + [EnableIf=is_ct_supported] +@@ -310,6 +310,13 @@ struct NetworkContextParams { + [EnableIf=is_ct_supported] + array ct_logs; + ++ // When the Certificate Transparency logs in |ct_logs| were last updated. If ++ // |enforce_chrome_ct_policy| is set, and |ct_log_update_time| is not ++ // sufficiently recent, enforcement of the "Certificate Transparency in ++ // Chrome" policy will be disabled. ++ [EnableIf=is_ct_supported] ++ mojo_base.mojom.Time ct_log_update_time; ++ + // Specifies the path to the directory where NSS will store its database. + [EnableIf=is_chromeos] + mojo_base.mojom.FilePath? nss_path; diff --git a/chromium.spec b/chromium.spec index cbc4fa4..877f8f7 100644 --- a/chromium.spec +++ b/chromium.spec @@ -172,7 +172,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3809.132 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -304,6 +304,8 @@ Patch61: chromium-76.0.3809.100-gcc-no-alignas-and-export.patch Patch62: chromium-76.0.3809.100-gcc-remoting-constexpr.patch # Needs to be submitted.. (ugly hack, needs to be added properly to GN files) Patch63: chromium-76.0.3809.100-vtable-symbol-undefined.patch +# https://chromium.googlesource.com/chromium/src.git/+/3c9720245e440c4b7222f8348d2a2a3c25e098ae +Patch64: chromium-76.0.3809.132-certificate-transparency.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -879,6 +881,7 @@ udev. %patch61 -p1 -b .gcc-no-alignas-and-export %patch62 -p1 -b .gcc-remoting-constexpr %patch63 -p1 -b .vtable-symbol-undefined +%patch64 -p1 -b .certificate-transparency # EPEL specific patches %if 0%{?rhel} == 7 @@ -1908,6 +1911,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Tue Sep 03 2019 Tomas Popela - 76.0.3809.132-2 +- Backport patch to fix certificate transparency + * Tue Aug 27 2019 Tomas Popela - 76.0.3809.132-1 - Update to 76.0.3809.132 From 41c22993b3320f535a33080157da4f49f69bf69e Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 3 Sep 2019 12:20:51 +0200 Subject: [PATCH 0421/1449] Backport patch to fix certificate transparency --- ....0.3809.132-certificate-transparency.patch | 206 ++++++++++++++++++ chromium.spec | 8 +- 2 files changed, 213 insertions(+), 1 deletion(-) create mode 100644 chromium-76.0.3809.132-certificate-transparency.patch diff --git a/chromium-76.0.3809.132-certificate-transparency.patch b/chromium-76.0.3809.132-certificate-transparency.patch new file mode 100644 index 0000000..25a08af --- /dev/null +++ b/chromium-76.0.3809.132-certificate-transparency.patch @@ -0,0 +1,206 @@ +diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc +--- chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc.certificate-transparency 2019-08-26 21:02:05.000000000 +0200 ++++ chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc 2019-09-03 12:01:33.004949320 +0200 +@@ -4,11 +4,13 @@ + + #include "chrome/browser/net/system_network_context_manager.h" + ++#include + #include + #include + #include + + #include "base/bind.h" ++#include "base/build_time.h" + #include "base/command_line.h" + #include "base/feature_list.h" + #include "base/logging.h" +@@ -51,6 +53,7 @@ + #include "content/public/common/mime_handler_view_mode.h" + #include "content/public/common/service_names.mojom.h" + #include "content/public/common/user_agent.h" ++#include "crypto/sha2.h" + #include "mojo/public/cpp/bindings/associated_interface_ptr.h" + #include "net/dns/public/util.h" + #include "net/net_buildflags.h" +@@ -686,15 +689,41 @@ SystemNetworkContextManager::CreateDefau + + bool http_09_on_non_default_ports_enabled = false; + #if !defined(OS_ANDROID) +- // CT is only enabled on Desktop platforms for now. ++ ++#if BUILDFLAG(GOOGLE_CHROME_BRANDING) && defined(OFFICIAL_BUILD) && \ ++ !defined(OS_IOS) ++ // Certificate Transparency is only enabled if: ++ // - Desktop (!OS_ANDROID, !OS_IOS) ++ // - base::GetBuildTime() is deterministic to the source (OFFICIAL_BUILD) ++ // - The build in reliably updatable (GOOGLE_CHROME_BRANDING) + network_context_params->enforce_chrome_ct_policy = true; ++ network_context_params->ct_log_update_time = base::GetBuildTime(); ++ ++ std::vector operated_by_google_logs = ++ certificate_transparency::GetLogsOperatedByGoogle(); ++ std::vector> disqualified_logs = ++ certificate_transparency::GetDisqualifiedLogs(); + for (const auto& ct_log : certificate_transparency::GetKnownLogs()) { + // TODO(rsleevi): https://crbug.com/702062 - Remove this duplication. + network::mojom::CTLogInfoPtr log_info = network::mojom::CTLogInfo::New(); + log_info->public_key = std::string(ct_log.log_key, ct_log.log_key_length); + log_info->name = ct_log.log_name; ++ ++ std::string log_id = crypto::SHA256HashString(log_info->public_key); ++ log_info->operated_by_google = ++ std::binary_search(std::begin(operated_by_google_logs), ++ std::end(operated_by_google_logs), log_id); ++ auto it = std::lower_bound( ++ std::begin(disqualified_logs), std::end(disqualified_logs), log_id, ++ [](const auto& disqualified_log, const std::string& log_id) { ++ return disqualified_log.first < log_id; ++ }); ++ if (it != std::end(disqualified_logs) && it->first == log_id) { ++ log_info->disqualified_at = it->second; ++ } + network_context_params->ct_logs.push_back(std::move(log_info)); + } ++#endif + + const base::Value* value = + g_browser_process->policy_service() +diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate-transparency chromium-76.0.3809.132/services/network/network_context.cc +--- chromium-76.0.3809.132/services/network/network_context.cc.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 ++++ chromium-76.0.3809.132/services/network/network_context.cc 2019-09-03 12:04:01.983890928 +0200 +@@ -35,6 +35,7 @@ + #include "components/prefs/pref_registry_simple.h" + #include "components/prefs/pref_service.h" + #include "components/prefs/pref_service_factory.h" ++#include "crypto/sha2.h" + #include "mojo/public/cpp/bindings/strong_binding.h" + #include "net/base/layered_network_delegate.h" + #include "net/base/load_flags.h" +@@ -1851,16 +1852,6 @@ URLRequestContextOwner NetworkContext::A + base::FeatureList::IsEnabled(features::kNetworkErrorLogging)); + #endif // BUILDFLAG(ENABLE_REPORTING) + +-#if BUILDFLAG(IS_CT_SUPPORTED) +- if (params_->enforce_chrome_ct_policy) { +- builder->set_ct_policy_enforcer( +- std::make_unique( +- base::GetBuildTime(), +- certificate_transparency::GetDisqualifiedLogs(), +- certificate_transparency::GetLogsOperatedByGoogle())); +- } +-#endif // BUILDFLAG(IS_CT_SUPPORTED) +- + net::HttpNetworkSession::Params session_params; + bool is_quic_force_disabled = false; + if (network_service_ && network_service_->quic_disabled()) +@@ -1910,8 +1901,20 @@ URLRequestContextOwner NetworkContext::A + + #if BUILDFLAG(IS_CT_SUPPORTED) + std::vector> ct_logs; ++ std::vector> disqualified_logs; ++ std::vector operated_by_google_logs; ++ + if (!params_->ct_logs.empty()) { + for (const auto& log : params_->ct_logs) { ++ if (log->operated_by_google || log->disqualified_at) { ++ std::string log_id = crypto::SHA256HashString(log->public_key); ++ if (log->operated_by_google) ++ operated_by_google_logs.push_back(log_id); ++ if (log->disqualified_at) { ++ disqualified_logs.push_back( ++ std::make_pair(log_id, log->disqualified_at.value())); ++ } ++ } + scoped_refptr log_verifier = + net::CTLogVerifier::Create(log->public_key, log->name); + if (!log_verifier) { +@@ -1924,6 +1927,13 @@ URLRequestContextOwner NetworkContext::A + ct_verifier->AddLogs(ct_logs); + builder->set_ct_verifier(std::move(ct_verifier)); + } ++ ++ if (params_->enforce_chrome_ct_policy) { ++ builder.set_ct_policy_enforcer( ++ std::make_unique( ++ params_->ct_log_update_time, disqualified_logs, ++ operated_by_google_logs)); ++ } + #endif // BUILDFLAG(IS_CT_SUPPORTED) + + const base::CommandLine* command_line = +diff -up chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom.certificate-transparency chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom +--- chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 ++++ chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom 2019-09-03 11:59:48.423862022 +0200 +@@ -4,6 +4,8 @@ + + module network.mojom; + ++import "mojo/public/mojom/base/time.mojom"; ++ + // A single Certificate Transparency Log configuration. + struct CTLogInfo { + // The DER-encoded SubjectPublicKeyInfo of the log. +@@ -14,4 +16,13 @@ struct CTLogInfo { + // The human-readable, log-supplied log name. Note that this will not be + // translated. + string name; ++ ++ // Whether or not the log should should be considered a Google Log for the ++ // purposes of enforcing the "Certificate Transparency in Chrome" policy. ++ bool operated_by_google; ++ ++ // If set, the time since the Unix Epoch when the log was disqualified. This ++ // is used to determine the "once or currently qualified" status of the log. ++ // If the log is currently qualified, this will not be set. ++ mojo_base.mojom.TimeDelta? disqualified_at; + }; +diff -up chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom.certificate-transparency chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom +--- chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 ++++ chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom 2019-09-03 11:59:48.424862032 +0200 +@@ -238,15 +238,6 @@ struct NetworkContextParams { + [EnableIf=is_android] + bool check_clear_text_permitted = false; + +- // True if the "Certificate Transparency in Chrome" policy (see +- // https://github.com/chromium/ct-policy/blob/master/ct_policy.md) should +- // be enforced for certificates and connections. +- // +- // See //net/docs/certificate-transparency.md before setting this flag to +- // true. +- [EnableIf=is_ct_supported] +- bool enforce_chrome_ct_policy = false; +- + // Enables HTTP/0.9 on ports other than 80 for HTTP and 443 for HTTPS. + bool http_09_on_non_default_ports_enabled = false; + +@@ -299,6 +290,15 @@ struct NetworkContextParams { + // servers, so they can discover misconfigurations. + bool enable_certificate_reporting = false; + ++ // True if the "Certificate Transparency in Chrome" policy (see ++ // https://github.com/chromium/ct-policy/blob/master/ct_policy.md) should ++ // be enforced for certificates and connections. ++ // ++ // See //net/docs/certificate-transparency.md before setting this flag to ++ // true. ++ [EnableIf=is_ct_supported] ++ bool enforce_chrome_ct_policy = false; ++ + // Enables Expect CT reporting, which sends reports for opted-in sites that + // don't serve sufficient Certificate Transparency information. + [EnableIf=is_ct_supported] +@@ -310,6 +310,13 @@ struct NetworkContextParams { + [EnableIf=is_ct_supported] + array ct_logs; + ++ // When the Certificate Transparency logs in |ct_logs| were last updated. If ++ // |enforce_chrome_ct_policy| is set, and |ct_log_update_time| is not ++ // sufficiently recent, enforcement of the "Certificate Transparency in ++ // Chrome" policy will be disabled. ++ [EnableIf=is_ct_supported] ++ mojo_base.mojom.Time ct_log_update_time; ++ + // Specifies the path to the directory where NSS will store its database. + [EnableIf=is_chromeos] + mojo_base.mojom.FilePath? nss_path; diff --git a/chromium.spec b/chromium.spec index 8e251b9..1471b94 100644 --- a/chromium.spec +++ b/chromium.spec @@ -176,7 +176,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3809.132 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -308,6 +308,8 @@ Patch61: chromium-76.0.3809.100-gcc-no-alignas-and-export.patch Patch62: chromium-76.0.3809.100-gcc-remoting-constexpr.patch # Needs to be submitted.. (ugly hack, needs to be added properly to GN files) Patch63: chromium-76.0.3809.100-vtable-symbol-undefined.patch +# https://chromium.googlesource.com/chromium/src.git/+/3c9720245e440c4b7222f8348d2a2a3c25e098ae +Patch64: chromium-76.0.3809.132-certificate-transparency.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -888,6 +890,7 @@ udev. %patch61 -p1 -b .gcc-no-alignas-and-export %patch62 -p1 -b .gcc-remoting-constexpr %patch63 -p1 -b .vtable-symbol-undefined +%patch64 -p1 -b .certificate-transparency # EPEL specific patches %if 0%{?rhel} == 7 @@ -1919,6 +1922,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Tue Sep 03 2019 Tomas Popela - 76.0.3809.132-2 +- Backport patch to fix certificate transparency + * Tue Aug 27 2019 Tomas Popela - 76.0.3809.132-1 - Update to 76.0.3809.132 From bc006359dd8cff1a6890d7791885e572914f8642 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 3 Sep 2019 12:20:51 +0200 Subject: [PATCH 0422/1449] Backport patch to fix certificate transparency --- ....0.3809.132-certificate-transparency.patch | 206 ++++++++++++++++++ chromium.spec | 8 +- 2 files changed, 213 insertions(+), 1 deletion(-) create mode 100644 chromium-76.0.3809.132-certificate-transparency.patch diff --git a/chromium-76.0.3809.132-certificate-transparency.patch b/chromium-76.0.3809.132-certificate-transparency.patch new file mode 100644 index 0000000..25a08af --- /dev/null +++ b/chromium-76.0.3809.132-certificate-transparency.patch @@ -0,0 +1,206 @@ +diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc +--- chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc.certificate-transparency 2019-08-26 21:02:05.000000000 +0200 ++++ chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc 2019-09-03 12:01:33.004949320 +0200 +@@ -4,11 +4,13 @@ + + #include "chrome/browser/net/system_network_context_manager.h" + ++#include + #include + #include + #include + + #include "base/bind.h" ++#include "base/build_time.h" + #include "base/command_line.h" + #include "base/feature_list.h" + #include "base/logging.h" +@@ -51,6 +53,7 @@ + #include "content/public/common/mime_handler_view_mode.h" + #include "content/public/common/service_names.mojom.h" + #include "content/public/common/user_agent.h" ++#include "crypto/sha2.h" + #include "mojo/public/cpp/bindings/associated_interface_ptr.h" + #include "net/dns/public/util.h" + #include "net/net_buildflags.h" +@@ -686,15 +689,41 @@ SystemNetworkContextManager::CreateDefau + + bool http_09_on_non_default_ports_enabled = false; + #if !defined(OS_ANDROID) +- // CT is only enabled on Desktop platforms for now. ++ ++#if BUILDFLAG(GOOGLE_CHROME_BRANDING) && defined(OFFICIAL_BUILD) && \ ++ !defined(OS_IOS) ++ // Certificate Transparency is only enabled if: ++ // - Desktop (!OS_ANDROID, !OS_IOS) ++ // - base::GetBuildTime() is deterministic to the source (OFFICIAL_BUILD) ++ // - The build in reliably updatable (GOOGLE_CHROME_BRANDING) + network_context_params->enforce_chrome_ct_policy = true; ++ network_context_params->ct_log_update_time = base::GetBuildTime(); ++ ++ std::vector operated_by_google_logs = ++ certificate_transparency::GetLogsOperatedByGoogle(); ++ std::vector> disqualified_logs = ++ certificate_transparency::GetDisqualifiedLogs(); + for (const auto& ct_log : certificate_transparency::GetKnownLogs()) { + // TODO(rsleevi): https://crbug.com/702062 - Remove this duplication. + network::mojom::CTLogInfoPtr log_info = network::mojom::CTLogInfo::New(); + log_info->public_key = std::string(ct_log.log_key, ct_log.log_key_length); + log_info->name = ct_log.log_name; ++ ++ std::string log_id = crypto::SHA256HashString(log_info->public_key); ++ log_info->operated_by_google = ++ std::binary_search(std::begin(operated_by_google_logs), ++ std::end(operated_by_google_logs), log_id); ++ auto it = std::lower_bound( ++ std::begin(disqualified_logs), std::end(disqualified_logs), log_id, ++ [](const auto& disqualified_log, const std::string& log_id) { ++ return disqualified_log.first < log_id; ++ }); ++ if (it != std::end(disqualified_logs) && it->first == log_id) { ++ log_info->disqualified_at = it->second; ++ } + network_context_params->ct_logs.push_back(std::move(log_info)); + } ++#endif + + const base::Value* value = + g_browser_process->policy_service() +diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate-transparency chromium-76.0.3809.132/services/network/network_context.cc +--- chromium-76.0.3809.132/services/network/network_context.cc.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 ++++ chromium-76.0.3809.132/services/network/network_context.cc 2019-09-03 12:04:01.983890928 +0200 +@@ -35,6 +35,7 @@ + #include "components/prefs/pref_registry_simple.h" + #include "components/prefs/pref_service.h" + #include "components/prefs/pref_service_factory.h" ++#include "crypto/sha2.h" + #include "mojo/public/cpp/bindings/strong_binding.h" + #include "net/base/layered_network_delegate.h" + #include "net/base/load_flags.h" +@@ -1851,16 +1852,6 @@ URLRequestContextOwner NetworkContext::A + base::FeatureList::IsEnabled(features::kNetworkErrorLogging)); + #endif // BUILDFLAG(ENABLE_REPORTING) + +-#if BUILDFLAG(IS_CT_SUPPORTED) +- if (params_->enforce_chrome_ct_policy) { +- builder->set_ct_policy_enforcer( +- std::make_unique( +- base::GetBuildTime(), +- certificate_transparency::GetDisqualifiedLogs(), +- certificate_transparency::GetLogsOperatedByGoogle())); +- } +-#endif // BUILDFLAG(IS_CT_SUPPORTED) +- + net::HttpNetworkSession::Params session_params; + bool is_quic_force_disabled = false; + if (network_service_ && network_service_->quic_disabled()) +@@ -1910,8 +1901,20 @@ URLRequestContextOwner NetworkContext::A + + #if BUILDFLAG(IS_CT_SUPPORTED) + std::vector> ct_logs; ++ std::vector> disqualified_logs; ++ std::vector operated_by_google_logs; ++ + if (!params_->ct_logs.empty()) { + for (const auto& log : params_->ct_logs) { ++ if (log->operated_by_google || log->disqualified_at) { ++ std::string log_id = crypto::SHA256HashString(log->public_key); ++ if (log->operated_by_google) ++ operated_by_google_logs.push_back(log_id); ++ if (log->disqualified_at) { ++ disqualified_logs.push_back( ++ std::make_pair(log_id, log->disqualified_at.value())); ++ } ++ } + scoped_refptr log_verifier = + net::CTLogVerifier::Create(log->public_key, log->name); + if (!log_verifier) { +@@ -1924,6 +1927,13 @@ URLRequestContextOwner NetworkContext::A + ct_verifier->AddLogs(ct_logs); + builder->set_ct_verifier(std::move(ct_verifier)); + } ++ ++ if (params_->enforce_chrome_ct_policy) { ++ builder.set_ct_policy_enforcer( ++ std::make_unique( ++ params_->ct_log_update_time, disqualified_logs, ++ operated_by_google_logs)); ++ } + #endif // BUILDFLAG(IS_CT_SUPPORTED) + + const base::CommandLine* command_line = +diff -up chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom.certificate-transparency chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom +--- chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 ++++ chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom 2019-09-03 11:59:48.423862022 +0200 +@@ -4,6 +4,8 @@ + + module network.mojom; + ++import "mojo/public/mojom/base/time.mojom"; ++ + // A single Certificate Transparency Log configuration. + struct CTLogInfo { + // The DER-encoded SubjectPublicKeyInfo of the log. +@@ -14,4 +16,13 @@ struct CTLogInfo { + // The human-readable, log-supplied log name. Note that this will not be + // translated. + string name; ++ ++ // Whether or not the log should should be considered a Google Log for the ++ // purposes of enforcing the "Certificate Transparency in Chrome" policy. ++ bool operated_by_google; ++ ++ // If set, the time since the Unix Epoch when the log was disqualified. This ++ // is used to determine the "once or currently qualified" status of the log. ++ // If the log is currently qualified, this will not be set. ++ mojo_base.mojom.TimeDelta? disqualified_at; + }; +diff -up chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom.certificate-transparency chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom +--- chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 ++++ chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom 2019-09-03 11:59:48.424862032 +0200 +@@ -238,15 +238,6 @@ struct NetworkContextParams { + [EnableIf=is_android] + bool check_clear_text_permitted = false; + +- // True if the "Certificate Transparency in Chrome" policy (see +- // https://github.com/chromium/ct-policy/blob/master/ct_policy.md) should +- // be enforced for certificates and connections. +- // +- // See //net/docs/certificate-transparency.md before setting this flag to +- // true. +- [EnableIf=is_ct_supported] +- bool enforce_chrome_ct_policy = false; +- + // Enables HTTP/0.9 on ports other than 80 for HTTP and 443 for HTTPS. + bool http_09_on_non_default_ports_enabled = false; + +@@ -299,6 +290,15 @@ struct NetworkContextParams { + // servers, so they can discover misconfigurations. + bool enable_certificate_reporting = false; + ++ // True if the "Certificate Transparency in Chrome" policy (see ++ // https://github.com/chromium/ct-policy/blob/master/ct_policy.md) should ++ // be enforced for certificates and connections. ++ // ++ // See //net/docs/certificate-transparency.md before setting this flag to ++ // true. ++ [EnableIf=is_ct_supported] ++ bool enforce_chrome_ct_policy = false; ++ + // Enables Expect CT reporting, which sends reports for opted-in sites that + // don't serve sufficient Certificate Transparency information. + [EnableIf=is_ct_supported] +@@ -310,6 +310,13 @@ struct NetworkContextParams { + [EnableIf=is_ct_supported] + array ct_logs; + ++ // When the Certificate Transparency logs in |ct_logs| were last updated. If ++ // |enforce_chrome_ct_policy| is set, and |ct_log_update_time| is not ++ // sufficiently recent, enforcement of the "Certificate Transparency in ++ // Chrome" policy will be disabled. ++ [EnableIf=is_ct_supported] ++ mojo_base.mojom.Time ct_log_update_time; ++ + // Specifies the path to the directory where NSS will store its database. + [EnableIf=is_chromeos] + mojo_base.mojom.FilePath? nss_path; diff --git a/chromium.spec b/chromium.spec index cbc4fa4..877f8f7 100644 --- a/chromium.spec +++ b/chromium.spec @@ -172,7 +172,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3809.132 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -304,6 +304,8 @@ Patch61: chromium-76.0.3809.100-gcc-no-alignas-and-export.patch Patch62: chromium-76.0.3809.100-gcc-remoting-constexpr.patch # Needs to be submitted.. (ugly hack, needs to be added properly to GN files) Patch63: chromium-76.0.3809.100-vtable-symbol-undefined.patch +# https://chromium.googlesource.com/chromium/src.git/+/3c9720245e440c4b7222f8348d2a2a3c25e098ae +Patch64: chromium-76.0.3809.132-certificate-transparency.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -879,6 +881,7 @@ udev. %patch61 -p1 -b .gcc-no-alignas-and-export %patch62 -p1 -b .gcc-remoting-constexpr %patch63 -p1 -b .vtable-symbol-undefined +%patch64 -p1 -b .certificate-transparency # EPEL specific patches %if 0%{?rhel} == 7 @@ -1908,6 +1911,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Tue Sep 03 2019 Tomas Popela - 76.0.3809.132-2 +- Backport patch to fix certificate transparency + * Tue Aug 27 2019 Tomas Popela - 76.0.3809.132-1 - Update to 76.0.3809.132 From fb0db49d82bdd82577da78dea191d39bf02f0051 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 3 Sep 2019 12:20:51 +0200 Subject: [PATCH 0423/1449] Backport patch to fix certificate transparency --- ....0.3809.132-certificate-transparency.patch | 206 ++++++++++++++++++ chromium.spec | 8 +- 2 files changed, 213 insertions(+), 1 deletion(-) create mode 100644 chromium-76.0.3809.132-certificate-transparency.patch diff --git a/chromium-76.0.3809.132-certificate-transparency.patch b/chromium-76.0.3809.132-certificate-transparency.patch new file mode 100644 index 0000000..25a08af --- /dev/null +++ b/chromium-76.0.3809.132-certificate-transparency.patch @@ -0,0 +1,206 @@ +diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc +--- chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc.certificate-transparency 2019-08-26 21:02:05.000000000 +0200 ++++ chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc 2019-09-03 12:01:33.004949320 +0200 +@@ -4,11 +4,13 @@ + + #include "chrome/browser/net/system_network_context_manager.h" + ++#include + #include + #include + #include + + #include "base/bind.h" ++#include "base/build_time.h" + #include "base/command_line.h" + #include "base/feature_list.h" + #include "base/logging.h" +@@ -51,6 +53,7 @@ + #include "content/public/common/mime_handler_view_mode.h" + #include "content/public/common/service_names.mojom.h" + #include "content/public/common/user_agent.h" ++#include "crypto/sha2.h" + #include "mojo/public/cpp/bindings/associated_interface_ptr.h" + #include "net/dns/public/util.h" + #include "net/net_buildflags.h" +@@ -686,15 +689,41 @@ SystemNetworkContextManager::CreateDefau + + bool http_09_on_non_default_ports_enabled = false; + #if !defined(OS_ANDROID) +- // CT is only enabled on Desktop platforms for now. ++ ++#if BUILDFLAG(GOOGLE_CHROME_BRANDING) && defined(OFFICIAL_BUILD) && \ ++ !defined(OS_IOS) ++ // Certificate Transparency is only enabled if: ++ // - Desktop (!OS_ANDROID, !OS_IOS) ++ // - base::GetBuildTime() is deterministic to the source (OFFICIAL_BUILD) ++ // - The build in reliably updatable (GOOGLE_CHROME_BRANDING) + network_context_params->enforce_chrome_ct_policy = true; ++ network_context_params->ct_log_update_time = base::GetBuildTime(); ++ ++ std::vector operated_by_google_logs = ++ certificate_transparency::GetLogsOperatedByGoogle(); ++ std::vector> disqualified_logs = ++ certificate_transparency::GetDisqualifiedLogs(); + for (const auto& ct_log : certificate_transparency::GetKnownLogs()) { + // TODO(rsleevi): https://crbug.com/702062 - Remove this duplication. + network::mojom::CTLogInfoPtr log_info = network::mojom::CTLogInfo::New(); + log_info->public_key = std::string(ct_log.log_key, ct_log.log_key_length); + log_info->name = ct_log.log_name; ++ ++ std::string log_id = crypto::SHA256HashString(log_info->public_key); ++ log_info->operated_by_google = ++ std::binary_search(std::begin(operated_by_google_logs), ++ std::end(operated_by_google_logs), log_id); ++ auto it = std::lower_bound( ++ std::begin(disqualified_logs), std::end(disqualified_logs), log_id, ++ [](const auto& disqualified_log, const std::string& log_id) { ++ return disqualified_log.first < log_id; ++ }); ++ if (it != std::end(disqualified_logs) && it->first == log_id) { ++ log_info->disqualified_at = it->second; ++ } + network_context_params->ct_logs.push_back(std::move(log_info)); + } ++#endif + + const base::Value* value = + g_browser_process->policy_service() +diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate-transparency chromium-76.0.3809.132/services/network/network_context.cc +--- chromium-76.0.3809.132/services/network/network_context.cc.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 ++++ chromium-76.0.3809.132/services/network/network_context.cc 2019-09-03 12:04:01.983890928 +0200 +@@ -35,6 +35,7 @@ + #include "components/prefs/pref_registry_simple.h" + #include "components/prefs/pref_service.h" + #include "components/prefs/pref_service_factory.h" ++#include "crypto/sha2.h" + #include "mojo/public/cpp/bindings/strong_binding.h" + #include "net/base/layered_network_delegate.h" + #include "net/base/load_flags.h" +@@ -1851,16 +1852,6 @@ URLRequestContextOwner NetworkContext::A + base::FeatureList::IsEnabled(features::kNetworkErrorLogging)); + #endif // BUILDFLAG(ENABLE_REPORTING) + +-#if BUILDFLAG(IS_CT_SUPPORTED) +- if (params_->enforce_chrome_ct_policy) { +- builder->set_ct_policy_enforcer( +- std::make_unique( +- base::GetBuildTime(), +- certificate_transparency::GetDisqualifiedLogs(), +- certificate_transparency::GetLogsOperatedByGoogle())); +- } +-#endif // BUILDFLAG(IS_CT_SUPPORTED) +- + net::HttpNetworkSession::Params session_params; + bool is_quic_force_disabled = false; + if (network_service_ && network_service_->quic_disabled()) +@@ -1910,8 +1901,20 @@ URLRequestContextOwner NetworkContext::A + + #if BUILDFLAG(IS_CT_SUPPORTED) + std::vector> ct_logs; ++ std::vector> disqualified_logs; ++ std::vector operated_by_google_logs; ++ + if (!params_->ct_logs.empty()) { + for (const auto& log : params_->ct_logs) { ++ if (log->operated_by_google || log->disqualified_at) { ++ std::string log_id = crypto::SHA256HashString(log->public_key); ++ if (log->operated_by_google) ++ operated_by_google_logs.push_back(log_id); ++ if (log->disqualified_at) { ++ disqualified_logs.push_back( ++ std::make_pair(log_id, log->disqualified_at.value())); ++ } ++ } + scoped_refptr log_verifier = + net::CTLogVerifier::Create(log->public_key, log->name); + if (!log_verifier) { +@@ -1924,6 +1927,13 @@ URLRequestContextOwner NetworkContext::A + ct_verifier->AddLogs(ct_logs); + builder->set_ct_verifier(std::move(ct_verifier)); + } ++ ++ if (params_->enforce_chrome_ct_policy) { ++ builder.set_ct_policy_enforcer( ++ std::make_unique( ++ params_->ct_log_update_time, disqualified_logs, ++ operated_by_google_logs)); ++ } + #endif // BUILDFLAG(IS_CT_SUPPORTED) + + const base::CommandLine* command_line = +diff -up chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom.certificate-transparency chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom +--- chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 ++++ chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom 2019-09-03 11:59:48.423862022 +0200 +@@ -4,6 +4,8 @@ + + module network.mojom; + ++import "mojo/public/mojom/base/time.mojom"; ++ + // A single Certificate Transparency Log configuration. + struct CTLogInfo { + // The DER-encoded SubjectPublicKeyInfo of the log. +@@ -14,4 +16,13 @@ struct CTLogInfo { + // The human-readable, log-supplied log name. Note that this will not be + // translated. + string name; ++ ++ // Whether or not the log should should be considered a Google Log for the ++ // purposes of enforcing the "Certificate Transparency in Chrome" policy. ++ bool operated_by_google; ++ ++ // If set, the time since the Unix Epoch when the log was disqualified. This ++ // is used to determine the "once or currently qualified" status of the log. ++ // If the log is currently qualified, this will not be set. ++ mojo_base.mojom.TimeDelta? disqualified_at; + }; +diff -up chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom.certificate-transparency chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom +--- chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 ++++ chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom 2019-09-03 11:59:48.424862032 +0200 +@@ -238,15 +238,6 @@ struct NetworkContextParams { + [EnableIf=is_android] + bool check_clear_text_permitted = false; + +- // True if the "Certificate Transparency in Chrome" policy (see +- // https://github.com/chromium/ct-policy/blob/master/ct_policy.md) should +- // be enforced for certificates and connections. +- // +- // See //net/docs/certificate-transparency.md before setting this flag to +- // true. +- [EnableIf=is_ct_supported] +- bool enforce_chrome_ct_policy = false; +- + // Enables HTTP/0.9 on ports other than 80 for HTTP and 443 for HTTPS. + bool http_09_on_non_default_ports_enabled = false; + +@@ -299,6 +290,15 @@ struct NetworkContextParams { + // servers, so they can discover misconfigurations. + bool enable_certificate_reporting = false; + ++ // True if the "Certificate Transparency in Chrome" policy (see ++ // https://github.com/chromium/ct-policy/blob/master/ct_policy.md) should ++ // be enforced for certificates and connections. ++ // ++ // See //net/docs/certificate-transparency.md before setting this flag to ++ // true. ++ [EnableIf=is_ct_supported] ++ bool enforce_chrome_ct_policy = false; ++ + // Enables Expect CT reporting, which sends reports for opted-in sites that + // don't serve sufficient Certificate Transparency information. + [EnableIf=is_ct_supported] +@@ -310,6 +310,13 @@ struct NetworkContextParams { + [EnableIf=is_ct_supported] + array ct_logs; + ++ // When the Certificate Transparency logs in |ct_logs| were last updated. If ++ // |enforce_chrome_ct_policy| is set, and |ct_log_update_time| is not ++ // sufficiently recent, enforcement of the "Certificate Transparency in ++ // Chrome" policy will be disabled. ++ [EnableIf=is_ct_supported] ++ mojo_base.mojom.Time ct_log_update_time; ++ + // Specifies the path to the directory where NSS will store its database. + [EnableIf=is_chromeos] + mojo_base.mojom.FilePath? nss_path; diff --git a/chromium.spec b/chromium.spec index aec9f9f..4239a65 100644 --- a/chromium.spec +++ b/chromium.spec @@ -172,7 +172,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3809.132 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -304,6 +304,8 @@ Patch61: chromium-76.0.3809.100-gcc-no-alignas-and-export.patch Patch62: chromium-76.0.3809.100-gcc-remoting-constexpr.patch # Needs to be submitted.. (ugly hack, needs to be added properly to GN files) Patch63: chromium-76.0.3809.100-vtable-symbol-undefined.patch +# https://chromium.googlesource.com/chromium/src.git/+/3c9720245e440c4b7222f8348d2a2a3c25e098ae +Patch64: chromium-76.0.3809.132-certificate-transparency.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -879,6 +881,7 @@ udev. %patch61 -p1 -b .gcc-no-alignas-and-export %patch62 -p1 -b .gcc-remoting-constexpr %patch63 -p1 -b .vtable-symbol-undefined +%patch64 -p1 -b .certificate-transparency # EPEL specific patches %if 0%{?rhel} == 7 @@ -1908,6 +1911,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Tue Sep 03 2019 Tomas Popela - 76.0.3809.132-2 +- Backport patch to fix certificate transparency + * Tue Aug 27 2019 Tomas Popela - 76.0.3809.132-1 - Update to 76.0.3809.132 From df09cb5bec0fb8b996887505bbdd979981c43adc Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 3 Sep 2019 12:20:51 +0200 Subject: [PATCH 0424/1449] Backport patch to fix certificate transparency --- ....0.3809.132-certificate-transparency.patch | 206 ++++++++++++++++++ chromium.spec | 8 +- 2 files changed, 213 insertions(+), 1 deletion(-) create mode 100644 chromium-76.0.3809.132-certificate-transparency.patch diff --git a/chromium-76.0.3809.132-certificate-transparency.patch b/chromium-76.0.3809.132-certificate-transparency.patch new file mode 100644 index 0000000..25a08af --- /dev/null +++ b/chromium-76.0.3809.132-certificate-transparency.patch @@ -0,0 +1,206 @@ +diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc +--- chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc.certificate-transparency 2019-08-26 21:02:05.000000000 +0200 ++++ chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc 2019-09-03 12:01:33.004949320 +0200 +@@ -4,11 +4,13 @@ + + #include "chrome/browser/net/system_network_context_manager.h" + ++#include + #include + #include + #include + + #include "base/bind.h" ++#include "base/build_time.h" + #include "base/command_line.h" + #include "base/feature_list.h" + #include "base/logging.h" +@@ -51,6 +53,7 @@ + #include "content/public/common/mime_handler_view_mode.h" + #include "content/public/common/service_names.mojom.h" + #include "content/public/common/user_agent.h" ++#include "crypto/sha2.h" + #include "mojo/public/cpp/bindings/associated_interface_ptr.h" + #include "net/dns/public/util.h" + #include "net/net_buildflags.h" +@@ -686,15 +689,41 @@ SystemNetworkContextManager::CreateDefau + + bool http_09_on_non_default_ports_enabled = false; + #if !defined(OS_ANDROID) +- // CT is only enabled on Desktop platforms for now. ++ ++#if BUILDFLAG(GOOGLE_CHROME_BRANDING) && defined(OFFICIAL_BUILD) && \ ++ !defined(OS_IOS) ++ // Certificate Transparency is only enabled if: ++ // - Desktop (!OS_ANDROID, !OS_IOS) ++ // - base::GetBuildTime() is deterministic to the source (OFFICIAL_BUILD) ++ // - The build in reliably updatable (GOOGLE_CHROME_BRANDING) + network_context_params->enforce_chrome_ct_policy = true; ++ network_context_params->ct_log_update_time = base::GetBuildTime(); ++ ++ std::vector operated_by_google_logs = ++ certificate_transparency::GetLogsOperatedByGoogle(); ++ std::vector> disqualified_logs = ++ certificate_transparency::GetDisqualifiedLogs(); + for (const auto& ct_log : certificate_transparency::GetKnownLogs()) { + // TODO(rsleevi): https://crbug.com/702062 - Remove this duplication. + network::mojom::CTLogInfoPtr log_info = network::mojom::CTLogInfo::New(); + log_info->public_key = std::string(ct_log.log_key, ct_log.log_key_length); + log_info->name = ct_log.log_name; ++ ++ std::string log_id = crypto::SHA256HashString(log_info->public_key); ++ log_info->operated_by_google = ++ std::binary_search(std::begin(operated_by_google_logs), ++ std::end(operated_by_google_logs), log_id); ++ auto it = std::lower_bound( ++ std::begin(disqualified_logs), std::end(disqualified_logs), log_id, ++ [](const auto& disqualified_log, const std::string& log_id) { ++ return disqualified_log.first < log_id; ++ }); ++ if (it != std::end(disqualified_logs) && it->first == log_id) { ++ log_info->disqualified_at = it->second; ++ } + network_context_params->ct_logs.push_back(std::move(log_info)); + } ++#endif + + const base::Value* value = + g_browser_process->policy_service() +diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate-transparency chromium-76.0.3809.132/services/network/network_context.cc +--- chromium-76.0.3809.132/services/network/network_context.cc.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 ++++ chromium-76.0.3809.132/services/network/network_context.cc 2019-09-03 12:04:01.983890928 +0200 +@@ -35,6 +35,7 @@ + #include "components/prefs/pref_registry_simple.h" + #include "components/prefs/pref_service.h" + #include "components/prefs/pref_service_factory.h" ++#include "crypto/sha2.h" + #include "mojo/public/cpp/bindings/strong_binding.h" + #include "net/base/layered_network_delegate.h" + #include "net/base/load_flags.h" +@@ -1851,16 +1852,6 @@ URLRequestContextOwner NetworkContext::A + base::FeatureList::IsEnabled(features::kNetworkErrorLogging)); + #endif // BUILDFLAG(ENABLE_REPORTING) + +-#if BUILDFLAG(IS_CT_SUPPORTED) +- if (params_->enforce_chrome_ct_policy) { +- builder->set_ct_policy_enforcer( +- std::make_unique( +- base::GetBuildTime(), +- certificate_transparency::GetDisqualifiedLogs(), +- certificate_transparency::GetLogsOperatedByGoogle())); +- } +-#endif // BUILDFLAG(IS_CT_SUPPORTED) +- + net::HttpNetworkSession::Params session_params; + bool is_quic_force_disabled = false; + if (network_service_ && network_service_->quic_disabled()) +@@ -1910,8 +1901,20 @@ URLRequestContextOwner NetworkContext::A + + #if BUILDFLAG(IS_CT_SUPPORTED) + std::vector> ct_logs; ++ std::vector> disqualified_logs; ++ std::vector operated_by_google_logs; ++ + if (!params_->ct_logs.empty()) { + for (const auto& log : params_->ct_logs) { ++ if (log->operated_by_google || log->disqualified_at) { ++ std::string log_id = crypto::SHA256HashString(log->public_key); ++ if (log->operated_by_google) ++ operated_by_google_logs.push_back(log_id); ++ if (log->disqualified_at) { ++ disqualified_logs.push_back( ++ std::make_pair(log_id, log->disqualified_at.value())); ++ } ++ } + scoped_refptr log_verifier = + net::CTLogVerifier::Create(log->public_key, log->name); + if (!log_verifier) { +@@ -1924,6 +1927,13 @@ URLRequestContextOwner NetworkContext::A + ct_verifier->AddLogs(ct_logs); + builder->set_ct_verifier(std::move(ct_verifier)); + } ++ ++ if (params_->enforce_chrome_ct_policy) { ++ builder.set_ct_policy_enforcer( ++ std::make_unique( ++ params_->ct_log_update_time, disqualified_logs, ++ operated_by_google_logs)); ++ } + #endif // BUILDFLAG(IS_CT_SUPPORTED) + + const base::CommandLine* command_line = +diff -up chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom.certificate-transparency chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom +--- chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 ++++ chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom 2019-09-03 11:59:48.423862022 +0200 +@@ -4,6 +4,8 @@ + + module network.mojom; + ++import "mojo/public/mojom/base/time.mojom"; ++ + // A single Certificate Transparency Log configuration. + struct CTLogInfo { + // The DER-encoded SubjectPublicKeyInfo of the log. +@@ -14,4 +16,13 @@ struct CTLogInfo { + // The human-readable, log-supplied log name. Note that this will not be + // translated. + string name; ++ ++ // Whether or not the log should should be considered a Google Log for the ++ // purposes of enforcing the "Certificate Transparency in Chrome" policy. ++ bool operated_by_google; ++ ++ // If set, the time since the Unix Epoch when the log was disqualified. This ++ // is used to determine the "once or currently qualified" status of the log. ++ // If the log is currently qualified, this will not be set. ++ mojo_base.mojom.TimeDelta? disqualified_at; + }; +diff -up chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom.certificate-transparency chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom +--- chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 ++++ chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom 2019-09-03 11:59:48.424862032 +0200 +@@ -238,15 +238,6 @@ struct NetworkContextParams { + [EnableIf=is_android] + bool check_clear_text_permitted = false; + +- // True if the "Certificate Transparency in Chrome" policy (see +- // https://github.com/chromium/ct-policy/blob/master/ct_policy.md) should +- // be enforced for certificates and connections. +- // +- // See //net/docs/certificate-transparency.md before setting this flag to +- // true. +- [EnableIf=is_ct_supported] +- bool enforce_chrome_ct_policy = false; +- + // Enables HTTP/0.9 on ports other than 80 for HTTP and 443 for HTTPS. + bool http_09_on_non_default_ports_enabled = false; + +@@ -299,6 +290,15 @@ struct NetworkContextParams { + // servers, so they can discover misconfigurations. + bool enable_certificate_reporting = false; + ++ // True if the "Certificate Transparency in Chrome" policy (see ++ // https://github.com/chromium/ct-policy/blob/master/ct_policy.md) should ++ // be enforced for certificates and connections. ++ // ++ // See //net/docs/certificate-transparency.md before setting this flag to ++ // true. ++ [EnableIf=is_ct_supported] ++ bool enforce_chrome_ct_policy = false; ++ + // Enables Expect CT reporting, which sends reports for opted-in sites that + // don't serve sufficient Certificate Transparency information. + [EnableIf=is_ct_supported] +@@ -310,6 +310,13 @@ struct NetworkContextParams { + [EnableIf=is_ct_supported] + array ct_logs; + ++ // When the Certificate Transparency logs in |ct_logs| were last updated. If ++ // |enforce_chrome_ct_policy| is set, and |ct_log_update_time| is not ++ // sufficiently recent, enforcement of the "Certificate Transparency in ++ // Chrome" policy will be disabled. ++ [EnableIf=is_ct_supported] ++ mojo_base.mojom.Time ct_log_update_time; ++ + // Specifies the path to the directory where NSS will store its database. + [EnableIf=is_chromeos] + mojo_base.mojom.FilePath? nss_path; diff --git a/chromium.spec b/chromium.spec index cbc4fa4..877f8f7 100644 --- a/chromium.spec +++ b/chromium.spec @@ -172,7 +172,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3809.132 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -304,6 +304,8 @@ Patch61: chromium-76.0.3809.100-gcc-no-alignas-and-export.patch Patch62: chromium-76.0.3809.100-gcc-remoting-constexpr.patch # Needs to be submitted.. (ugly hack, needs to be added properly to GN files) Patch63: chromium-76.0.3809.100-vtable-symbol-undefined.patch +# https://chromium.googlesource.com/chromium/src.git/+/3c9720245e440c4b7222f8348d2a2a3c25e098ae +Patch64: chromium-76.0.3809.132-certificate-transparency.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -879,6 +881,7 @@ udev. %patch61 -p1 -b .gcc-no-alignas-and-export %patch62 -p1 -b .gcc-remoting-constexpr %patch63 -p1 -b .vtable-symbol-undefined +%patch64 -p1 -b .certificate-transparency # EPEL specific patches %if 0%{?rhel} == 7 @@ -1908,6 +1911,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Tue Sep 03 2019 Tomas Popela - 76.0.3809.132-2 +- Backport patch to fix certificate transparency + * Tue Aug 27 2019 Tomas Popela - 76.0.3809.132-1 - Update to 76.0.3809.132 From b974e5ab1a621f965dba65d413d46ee4a964fbdf Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 3 Sep 2019 15:26:53 +0200 Subject: [PATCH 0425/1449] Fix certificate-transparency patch --- chromium-76.0.3809.132-certificate-transparency.patch | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium-76.0.3809.132-certificate-transparency.patch b/chromium-76.0.3809.132-certificate-transparency.patch index 25a08af..51937e0 100644 --- a/chromium-76.0.3809.132-certificate-transparency.patch +++ b/chromium-76.0.3809.132-certificate-transparency.patch @@ -121,7 +121,7 @@ diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate- } + + if (params_->enforce_chrome_ct_policy) { -+ builder.set_ct_policy_enforcer( ++ builder->set_ct_policy_enforcer( + std::make_unique( + params_->ct_log_update_time, disqualified_logs, + operated_by_google_logs)); From 2f5fd975735eb1a7fd06d9804d0e036372e6ead7 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 3 Sep 2019 15:26:53 +0200 Subject: [PATCH 0426/1449] Fix certificate-transparency patch --- chromium-76.0.3809.132-certificate-transparency.patch | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium-76.0.3809.132-certificate-transparency.patch b/chromium-76.0.3809.132-certificate-transparency.patch index 25a08af..51937e0 100644 --- a/chromium-76.0.3809.132-certificate-transparency.patch +++ b/chromium-76.0.3809.132-certificate-transparency.patch @@ -121,7 +121,7 @@ diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate- } + + if (params_->enforce_chrome_ct_policy) { -+ builder.set_ct_policy_enforcer( ++ builder->set_ct_policy_enforcer( + std::make_unique( + params_->ct_log_update_time, disqualified_logs, + operated_by_google_logs)); From da8d872e924923bdd1d8c7eae0ace87bba8c0309 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 3 Sep 2019 15:26:53 +0200 Subject: [PATCH 0427/1449] Fix certificate-transparency patch --- chromium-76.0.3809.132-certificate-transparency.patch | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium-76.0.3809.132-certificate-transparency.patch b/chromium-76.0.3809.132-certificate-transparency.patch index 25a08af..51937e0 100644 --- a/chromium-76.0.3809.132-certificate-transparency.patch +++ b/chromium-76.0.3809.132-certificate-transparency.patch @@ -121,7 +121,7 @@ diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate- } + + if (params_->enforce_chrome_ct_policy) { -+ builder.set_ct_policy_enforcer( ++ builder->set_ct_policy_enforcer( + std::make_unique( + params_->ct_log_update_time, disqualified_logs, + operated_by_google_logs)); From be81360432cb7ef6251b4f39a0b164e04b33c044 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 3 Sep 2019 15:26:53 +0200 Subject: [PATCH 0428/1449] Fix certificate-transparency patch --- chromium-76.0.3809.132-certificate-transparency.patch | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium-76.0.3809.132-certificate-transparency.patch b/chromium-76.0.3809.132-certificate-transparency.patch index 25a08af..51937e0 100644 --- a/chromium-76.0.3809.132-certificate-transparency.patch +++ b/chromium-76.0.3809.132-certificate-transparency.patch @@ -121,7 +121,7 @@ diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate- } + + if (params_->enforce_chrome_ct_policy) { -+ builder.set_ct_policy_enforcer( ++ builder->set_ct_policy_enforcer( + std::make_unique( + params_->ct_log_update_time, disqualified_logs, + operated_by_google_logs)); From 4506e4f855514564e8503573fdd5a9247b9b4872 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 3 Sep 2019 15:26:53 +0200 Subject: [PATCH 0429/1449] Fix certificate-transparency patch --- chromium-76.0.3809.132-certificate-transparency.patch | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium-76.0.3809.132-certificate-transparency.patch b/chromium-76.0.3809.132-certificate-transparency.patch index 25a08af..51937e0 100644 --- a/chromium-76.0.3809.132-certificate-transparency.patch +++ b/chromium-76.0.3809.132-certificate-transparency.patch @@ -121,7 +121,7 @@ diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate- } + + if (params_->enforce_chrome_ct_policy) { -+ builder.set_ct_policy_enforcer( ++ builder->set_ct_policy_enforcer( + std::make_unique( + params_->ct_log_update_time, disqualified_logs, + operated_by_google_logs)); From f341b670a040a236cc836e45e0de0e9e3361cb50 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 4 Sep 2019 10:48:30 +0200 Subject: [PATCH 0430/1449] More fixes to a backported patch for certificate transparency --- ....0.3809.132-certificate-transparency.patch | 409 ++++++++++++++++-- 1 file changed, 371 insertions(+), 38 deletions(-) diff --git a/chromium-76.0.3809.132-certificate-transparency.patch b/chromium-76.0.3809.132-certificate-transparency.patch index 51937e0..8bfbced 100644 --- a/chromium-76.0.3809.132-certificate-transparency.patch +++ b/chromium-76.0.3809.132-certificate-transparency.patch @@ -1,6 +1,73 @@ +diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager_browsertest.cc +--- chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager_browsertest.cc.certificate-transparency 2019-09-03 22:08:28.931786496 +0200 ++++ chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager_browsertest.cc 2019-09-03 22:15:24.743555759 +0200 +@@ -17,6 +17,7 @@ + #include "chrome/common/pref_names.h" + #include "chrome/test/base/in_process_browser_test.h" + #include "components/prefs/pref_service.h" ++#include "services/network/public/cpp/network_service_buildflags.h" + #include "services/network/public/mojom/network_context.mojom.h" + #include "services/network/public/mojom/network_service.mojom.h" + #include "testing/gmock/include/gmock/gmock.h" +@@ -297,3 +298,55 @@ IN_PROC_BROWSER_TEST_P(SystemNetworkCont + INSTANTIATE_TEST_SUITE_P(, + SystemNetworkContextManagerStubResolverBrowsertest, + ::testing::Values(false, true)); ++ ++class SystemNetworkContextManagerCertificateTransparencyBrowsertest ++ : public SystemNetworkContextManagerBrowsertest, ++ public testing::WithParamInterface> { ++ public: ++ SystemNetworkContextManagerCertificateTransparencyBrowsertest() { ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ GetParam()); ++ } ++ ~SystemNetworkContextManagerCertificateTransparencyBrowsertest() override { ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ base::nullopt); ++ } ++}; ++ ++#if BUILDFLAG(IS_CT_SUPPORTED) ++IN_PROC_BROWSER_TEST_P( ++ SystemNetworkContextManagerCertificateTransparencyBrowsertest, ++ CertificateTransparencyConfig) { ++ network::mojom::NetworkContextParamsPtr context_params = ++ g_browser_process->system_network_context_manager() ++ ->CreateDefaultNetworkContextParams(); ++ ++ const bool kDefault = ++#if defined(GOOGLE_CHROME_BUILD) && defined(OFFICIAL_BUILD) && \ ++ !defined(OS_ANDROID) ++ true; ++#else ++ false; ++#endif ++ ++ EXPECT_EQ(GetParam().value_or(kDefault), ++ context_params->enforce_chrome_ct_policy); ++ EXPECT_NE(GetParam().value_or(kDefault), context_params->ct_logs.empty()); ++ ++ if (GetParam().value_or(kDefault)) { ++ bool has_google_log = false; ++ bool has_disqualified_log = false; ++ for (const auto& ct_log : context_params->ct_logs) { ++ has_google_log |= ct_log->operated_by_google; ++ has_disqualified_log |= ct_log->disqualified_at.has_value(); ++ } ++ EXPECT_TRUE(has_google_log); ++ EXPECT_TRUE(has_disqualified_log); ++ } ++} ++#endif ++ ++INSTANTIATE_TEST_SUITE_P( ++ , ++ SystemNetworkContextManagerCertificateTransparencyBrowsertest, ++ ::testing::Values(base::nullopt, true, false)); diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc --- chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc.certificate-transparency 2019-08-26 21:02:05.000000000 +0200 -+++ chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc 2019-09-03 12:01:33.004949320 +0200 ++++ chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc 2019-09-03 22:13:26.451198970 +0200 @@ -4,11 +4,13 @@ #include "chrome/browser/net/system_network_context_manager.h" @@ -23,52 +90,205 @@ diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manage #include "mojo/public/cpp/bindings/associated_interface_ptr.h" #include "net/dns/public/util.h" #include "net/net_buildflags.h" -@@ -686,15 +689,41 @@ SystemNetworkContextManager::CreateDefau +@@ -81,6 +84,20 @@ + + namespace { + ++constexpr bool kCertificateTransparencyEnabled = ++#if defined(GOOGLE_CHROME_BUILD) && defined(OFFICIAL_BUILD) && \ ++ !defined(OS_ANDROID) ++ // Certificate Transparency is only enabled if: ++ // - Desktop (!OS_ANDROID); OS_IOS does not use this file ++ // - base::GetBuildTime() is deterministic to the source (OFFICIAL_BUILD) ++ // - The build in reliably updatable (GOOGLE_CHROME_BUILD) ++ true; ++#else ++ false; ++#endif ++ ++bool g_enable_certificate_transparency = kCertificateTransparencyEnabled; ++ + // The global instance of the SystemNetworkContextmanager. + SystemNetworkContextManager* g_system_network_context_manager = nullptr; + +@@ -686,14 +703,35 @@ SystemNetworkContextManager::CreateDefau bool http_09_on_non_default_ports_enabled = false; #if !defined(OS_ANDROID) - // CT is only enabled on Desktop platforms for now. +- network_context_params->enforce_chrome_ct_policy = true; +- for (const auto& ct_log : certificate_transparency::GetKnownLogs()) { +- // TODO(rsleevi): https://crbug.com/702062 - Remove this duplication. +- network::mojom::CTLogInfoPtr log_info = network::mojom::CTLogInfo::New(); +- log_info->public_key = std::string(ct_log.log_key, ct_log.log_key_length); +- log_info->name = ct_log.log_name; +- network_context_params->ct_logs.push_back(std::move(log_info)); + -+#if BUILDFLAG(GOOGLE_CHROME_BRANDING) && defined(OFFICIAL_BUILD) && \ -+ !defined(OS_IOS) -+ // Certificate Transparency is only enabled if: -+ // - Desktop (!OS_ANDROID, !OS_IOS) -+ // - base::GetBuildTime() is deterministic to the source (OFFICIAL_BUILD) -+ // - The build in reliably updatable (GOOGLE_CHROME_BRANDING) - network_context_params->enforce_chrome_ct_policy = true; -+ network_context_params->ct_log_update_time = base::GetBuildTime(); ++ if (g_enable_certificate_transparency) { ++ network_context_params->enforce_chrome_ct_policy = true; ++ network_context_params->ct_log_update_time = base::GetBuildTime(); + -+ std::vector operated_by_google_logs = -+ certificate_transparency::GetLogsOperatedByGoogle(); -+ std::vector> disqualified_logs = -+ certificate_transparency::GetDisqualifiedLogs(); - for (const auto& ct_log : certificate_transparency::GetKnownLogs()) { - // TODO(rsleevi): https://crbug.com/702062 - Remove this duplication. - network::mojom::CTLogInfoPtr log_info = network::mojom::CTLogInfo::New(); - log_info->public_key = std::string(ct_log.log_key, ct_log.log_key_length); - log_info->name = ct_log.log_name; ++ std::vector operated_by_google_logs = ++ certificate_transparency::GetLogsOperatedByGoogle(); ++ std::vector> disqualified_logs = ++ certificate_transparency::GetDisqualifiedLogs(); ++ for (const auto& ct_log : certificate_transparency::GetKnownLogs()) { ++ // TODO(rsleevi): https://crbug.com/702062 - Remove this duplication. ++ network::mojom::CTLogInfoPtr log_info = network::mojom::CTLogInfo::New(); ++ log_info->public_key = std::string(ct_log.log_key, ct_log.log_key_length); ++ log_info->name = ct_log.log_name; + -+ std::string log_id = crypto::SHA256HashString(log_info->public_key); -+ log_info->operated_by_google = -+ std::binary_search(std::begin(operated_by_google_logs), -+ std::end(operated_by_google_logs), log_id); -+ auto it = std::lower_bound( -+ std::begin(disqualified_logs), std::end(disqualified_logs), log_id, -+ [](const auto& disqualified_log, const std::string& log_id) { -+ return disqualified_log.first < log_id; -+ }); -+ if (it != std::end(disqualified_logs) && it->first == log_id) { -+ log_info->disqualified_at = it->second; ++ std::string log_id = crypto::SHA256HashString(log_info->public_key); ++ log_info->operated_by_google = ++ std::binary_search(std::begin(operated_by_google_logs), ++ std::end(operated_by_google_logs), log_id); ++ auto it = std::lower_bound( ++ std::begin(disqualified_logs), std::end(disqualified_logs), log_id, ++ [](const auto& disqualified_log, const std::string& log_id) { ++ return disqualified_log.first < log_id; ++ }); ++ if (it != std::end(disqualified_logs) && it->first == log_id) { ++ log_info->disqualified_at = it->second; ++ } ++ network_context_params->ct_logs.push_back(std::move(log_info)); + } - network_context_params->ct_logs.push_back(std::move(log_info)); } -+#endif const base::Value* value = - g_browser_process->policy_service() +@@ -756,6 +794,12 @@ SystemNetworkContextManager::GetHttpAuth + return CreateHttpAuthDynamicParams(g_browser_process->local_state()); + } + ++void SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ base::Optional enabled) { ++ g_enable_certificate_transparency = ++ enabled.value_or(kCertificateTransparencyEnabled); ++} ++ + network::mojom::NetworkContextParamsPtr + SystemNetworkContextManager::CreateNetworkContextParams() { + // TODO(mmenke): Set up parameters here (in memory cookie store, etc). +diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.h.certificate-transparency chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.h +--- chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.h.certificate-transparency 2019-08-26 21:02:05.000000000 +0200 ++++ chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.h 2019-09-03 22:08:28.931786496 +0200 +@@ -158,6 +158,12 @@ class SystemNetworkContextManager { + static network::mojom::HttpAuthDynamicParamsPtr + GetHttpAuthDynamicParamsForTesting(); + ++ // Enables Certificate Transparency and enforcing the Chrome Certificate ++ // Transparency Policy. For test use only. Use base::nullopt_t to reset to ++ // the default state. ++ static void SetEnableCertificateTransparencyForTesting( ++ base::Optional enabled); ++ + private: + class URLLoaderFactoryForSystem; + +diff -up chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc +--- chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc.certificate-transparency 2019-08-26 21:02:05.000000000 +0200 ++++ chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc 2019-09-03 22:08:28.932786508 +0200 +@@ -4834,7 +4834,7 @@ IN_PROC_BROWSER_TEST_P(SSLPolicyTestComm + browser()->tab_strip_model()->GetActiveWebContents()->GetTitle()); + } + +-IN_PROC_BROWSER_TEST_F(PolicyTest, ++IN_PROC_BROWSER_TEST_F(CertificateTransparencyPolicyTest, + CertificateTransparencyEnforcementDisabledForCas) { + net::EmbeddedTestServer https_server_ok(net::EmbeddedTestServer::TYPE_HTTPS); + https_server_ok.SetSSLConfig(net::EmbeddedTestServer::CERT_OK); +diff -up chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc +--- chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc.certificate-transparency 2019-08-26 21:02:07.000000000 +0200 ++++ chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc 2019-09-03 22:08:28.932786508 +0200 +@@ -8,6 +8,7 @@ + #include "base/callback.h" + #include "base/run_loop.h" + #include "base/test/scoped_feature_list.h" ++#include "chrome/browser/net/system_network_context_manager.h" + #include "chrome/browser/profiles/profile.h" + #include "chrome/browser/ssl/cert_verifier_browser_test.h" + #include "chrome/browser/ui/browser.h" +@@ -27,7 +28,17 @@ namespace { + // received by a server. + class ExpectCTBrowserTest : public CertVerifierBrowserTest { + public: +- ExpectCTBrowserTest() : CertVerifierBrowserTest() {} ++ ExpectCTBrowserTest() : CertVerifierBrowserTest() { ++ // Expect-CT reporting depends on actually enforcing Certificate ++ // Transparency. ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ true); ++ } ++ ++ ~ExpectCTBrowserTest() override { ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ base::nullopt); ++ } + + void SetUpOnMainThread() override { + run_loop_ = std::make_unique(); +diff -up chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_browsertest.cc +--- chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_browsertest.cc.certificate-transparency 2019-08-26 21:02:07.000000000 +0200 ++++ chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_browsertest.cc 2019-09-03 22:08:28.932786508 +0200 +@@ -457,6 +457,13 @@ class SecurityStateTabHelperTest : publi + SecurityStateTabHelperTest() + : https_server_(net::EmbeddedTestServer::TYPE_HTTPS) { + https_server_.ServeFilesFromSourceDirectory(GetChromeTestDataDir()); ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ true); ++ } ++ ++ ~SecurityStateTabHelperTest() override { ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ base::nullopt); + } + + void SetUpOnMainThread() override { +diff -up chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc +--- chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc.certificate-transparency 2019-08-26 21:02:07.000000000 +0200 ++++ chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc 2019-09-03 22:08:28.934786531 +0200 +@@ -2008,8 +2008,14 @@ class CertificateTransparencySSLUITest : + public: + CertificateTransparencySSLUITest() + : CertVerifierBrowserTest(), +- https_server_(net::EmbeddedTestServer::TYPE_HTTPS) {} +- ~CertificateTransparencySSLUITest() override {} ++ https_server_(net::EmbeddedTestServer::TYPE_HTTPS) { ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ true); ++ } ++ ~CertificateTransparencySSLUITest() override { ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ base::nullopt); ++ } + + void SetUpOnMainThread() override { + CertVerifierBrowserTest::SetUpOnMainThread(); +diff -up chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_policy_enforcer.h.certificate-transparency chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_policy_enforcer.h +--- chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_policy_enforcer.h.certificate-transparency 2019-08-26 21:02:14.000000000 +0200 ++++ chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_policy_enforcer.h 2019-09-03 22:08:28.934786531 +0200 +@@ -45,6 +45,19 @@ class ChromeCTPolicyEnforcer : public ne + + void SetClockForTesting(const base::Clock* clock) { clock_ = clock; } + ++ // TODO(https://crbug.com/999240): These are exposed to allow end-to-end ++ // testing by higher layers (i.e. that the ChromeCTPolicyEnforcer is ++ // correctly constructed). When either this issue or https://crbug.com/848277 ++ // are fixed, the configuration can be tested independently, and these can ++ // be removed. ++ const std::vector& operated_by_google_logs_for_testing() { ++ return operated_by_google_logs_; ++ } ++ const std::vector>& ++ disqualified_logs_for_testing() { ++ return disqualified_logs_; ++ } ++ + private: + // Returns true if the log identified by |log_id| (the SHA-256 hash of the + // log's DER-encoded SPKI) has been disqualified, and sets diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate-transparency chromium-76.0.3809.132/services/network/network_context.cc --- chromium-76.0.3809.132/services/network/network_context.cc.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 -+++ chromium-76.0.3809.132/services/network/network_context.cc 2019-09-03 12:04:01.983890928 +0200 ++++ chromium-76.0.3809.132/services/network/network_context.cc 2019-09-03 22:17:27.977834857 +0200 @@ -35,6 +35,7 @@ #include "components/prefs/pref_registry_simple.h" #include "components/prefs/pref_service.h" @@ -115,12 +335,16 @@ diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate- scoped_refptr log_verifier = net::CTLogVerifier::Create(log->public_key, log->name); if (!log_verifier) { -@@ -1924,6 +1927,13 @@ URLRequestContextOwner NetworkContext::A +@@ -1924,6 +1927,17 @@ URLRequestContextOwner NetworkContext::A ct_verifier->AddLogs(ct_logs); builder->set_ct_verifier(std::move(ct_verifier)); } + + if (params_->enforce_chrome_ct_policy) { ++ std::sort(std::begin(operated_by_google_logs), ++ std::end(operated_by_google_logs)); ++ std::sort(std::begin(disqualified_logs), std::end(disqualified_logs)); ++ + builder->set_ct_policy_enforcer( + std::make_unique( + params_->ct_log_update_time, disqualified_logs, @@ -129,9 +353,118 @@ diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate- #endif // BUILDFLAG(IS_CT_SUPPORTED) const base::CommandLine* command_line = +diff -up chromium-76.0.3809.132/services/network/network_context_unittest.cc.certificate-transparency chromium-76.0.3809.132/services/network/network_context_unittest.cc +--- chromium-76.0.3809.132/services/network/network_context_unittest.cc.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 ++++ chromium-76.0.3809.132/services/network/network_context_unittest.cc 2019-09-03 22:20:22.382888089 +0200 +@@ -2,6 +2,7 @@ + // Use of this source code is governed by a BSD-style license that can be + // found in the LICENSE file. + ++#include + #include + #include + #include +@@ -38,10 +39,12 @@ + #include "base/threading/thread_task_runner_handle.h" + #include "base/time/default_clock.h" + #include "base/time/default_tick_clock.h" ++#include "base/time/time.h" + #include "build/build_config.h" + #include "components/network_session_configurator/browser/network_session_configurator.h" + #include "components/network_session_configurator/common/network_switches.h" + #include "components/prefs/testing_pref_service.h" ++#include "crypto/sha2.h" + #include "mojo/public/cpp/bindings/interface_request.h" + #include "mojo/public/cpp/bindings/strong_binding.h" + #include "mojo/public/cpp/system/data_pipe_utils.h" +@@ -113,6 +116,11 @@ + #include "url/scheme_host_port.h" + #include "url/url_constants.h" + ++#if BUILDFLAG(IS_CT_SUPPORTED) ++#include "components/certificate_transparency/chrome_ct_policy_enforcer.h" ++#include "services/network/public/mojom/ct_log_info.mojom.h" ++#endif ++ + #if BUILDFLAG(ENABLE_REPORTING) + #include "net/network_error_logging/network_error_logging_service.h" + #include "net/reporting/reporting_cache.h" +@@ -5566,6 +5574,72 @@ TEST_F(NetworkContextTest, BlockAllCooki + EXPECT_EQ("None", response_body); + } + ++#if BUILDFLAG(IS_CT_SUPPORTED) ++TEST_F(NetworkContextTest, CertificateTransparencyConfig) { ++ mojom::NetworkContextParamsPtr params = CreateContextParams(); ++ params->enforce_chrome_ct_policy = true; ++ params->ct_log_update_time = base::Time::Now(); ++ ++ // The log public keys do not matter for the test, so invalid keys are used. ++ // However, because the log IDs are derived from the SHA-256 hash of the log ++ // key, the log keys are generated such that qualified logs are in the form ++ // of four digits (e.g. "0000", "1111"), while disqualified logs are in the ++ // form of four letters (e.g. "AAAA", "BBBB"). ++ ++ for (int i = 0; i < 6; ++i) { ++ network::mojom::CTLogInfoPtr log_info = network::mojom::CTLogInfo::New(); ++ // Shift to ASCII '0' (0x30) ++ log_info->public_key = std::string(4, 0x30 + static_cast(i)); ++ log_info->name = std::string(4, 0x30 + static_cast(i)); ++ log_info->operated_by_google = i % 2; ++ ++ params->ct_logs.push_back(std::move(log_info)); ++ } ++ for (int i = 0; i < 3; ++i) { ++ network::mojom::CTLogInfoPtr log_info = network::mojom::CTLogInfo::New(); ++ // Shift to ASCII 'A' (0x41) ++ log_info->public_key = std::string(4, 0x41 + static_cast(i)); ++ log_info->name = std::string(4, 0x41 + static_cast(i)); ++ log_info->operated_by_google = false; ++ log_info->disqualified_at = base::TimeDelta::FromSeconds(i); ++ ++ params->ct_logs.push_back(std::move(log_info)); ++ } ++ std::unique_ptr network_context = ++ CreateContextWithParams(std::move(params)); ++ ++ net::CTPolicyEnforcer* request_enforcer = ++ network_context->url_request_context()->ct_policy_enforcer(); ++ ASSERT_TRUE(request_enforcer); ++ ++ // Completely unsafe if |enforce_chrome_ct_policy| is false. ++ certificate_transparency::ChromeCTPolicyEnforcer* policy_enforcer = ++ reinterpret_cast( ++ request_enforcer); ++ ++ EXPECT_TRUE(std::is_sorted( ++ policy_enforcer->operated_by_google_logs_for_testing().begin(), ++ policy_enforcer->operated_by_google_logs_for_testing().end())); ++ EXPECT_TRUE( ++ std::is_sorted(policy_enforcer->disqualified_logs_for_testing().begin(), ++ policy_enforcer->disqualified_logs_for_testing().end())); ++ ++ EXPECT_THAT( ++ policy_enforcer->operated_by_google_logs_for_testing(), ++ ::testing::UnorderedElementsAreArray({crypto::SHA256HashString("1111"), ++ crypto::SHA256HashString("3333"), ++ crypto::SHA256HashString("5555")})); ++ EXPECT_THAT(policy_enforcer->disqualified_logs_for_testing(), ++ ::testing::UnorderedElementsAre( ++ ::testing::Pair(crypto::SHA256HashString("AAAA"), ++ base::TimeDelta::FromSeconds(0)), ++ ::testing::Pair(crypto::SHA256HashString("BBBB"), ++ base::TimeDelta::FromSeconds(1)), ++ ::testing::Pair(crypto::SHA256HashString("CCCC"), ++ base::TimeDelta::FromSeconds(2)))); ++} ++#endif ++ + } // namespace + + } // namespace network diff -up chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom.certificate-transparency chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom --- chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 -+++ chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom 2019-09-03 11:59:48.423862022 +0200 ++++ chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom 2019-09-03 22:08:28.936786554 +0200 @@ -4,6 +4,8 @@ module network.mojom; @@ -148,7 +481,7 @@ diff -up chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom. + + // Whether or not the log should should be considered a Google Log for the + // purposes of enforcing the "Certificate Transparency in Chrome" policy. -+ bool operated_by_google; ++ bool operated_by_google = false; + + // If set, the time since the Unix Epoch when the log was disqualified. This + // is used to determine the "once or currently qualified" status of the log. @@ -157,7 +490,7 @@ diff -up chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom. }; diff -up chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom.certificate-transparency chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom --- chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 -+++ chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom 2019-09-03 11:59:48.424862032 +0200 ++++ chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom 2019-09-03 22:08:28.936786554 +0200 @@ -238,15 +238,6 @@ struct NetworkContextParams { [EnableIf=is_android] bool check_clear_text_permitted = false; From 0b3363e83fd8aa14cf970019c6f48637f4139700 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 4 Sep 2019 10:48:30 +0200 Subject: [PATCH 0431/1449] More fixes to a backported patch for certificate transparency --- ....0.3809.132-certificate-transparency.patch | 409 ++++++++++++++++-- 1 file changed, 371 insertions(+), 38 deletions(-) diff --git a/chromium-76.0.3809.132-certificate-transparency.patch b/chromium-76.0.3809.132-certificate-transparency.patch index 51937e0..8bfbced 100644 --- a/chromium-76.0.3809.132-certificate-transparency.patch +++ b/chromium-76.0.3809.132-certificate-transparency.patch @@ -1,6 +1,73 @@ +diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager_browsertest.cc +--- chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager_browsertest.cc.certificate-transparency 2019-09-03 22:08:28.931786496 +0200 ++++ chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager_browsertest.cc 2019-09-03 22:15:24.743555759 +0200 +@@ -17,6 +17,7 @@ + #include "chrome/common/pref_names.h" + #include "chrome/test/base/in_process_browser_test.h" + #include "components/prefs/pref_service.h" ++#include "services/network/public/cpp/network_service_buildflags.h" + #include "services/network/public/mojom/network_context.mojom.h" + #include "services/network/public/mojom/network_service.mojom.h" + #include "testing/gmock/include/gmock/gmock.h" +@@ -297,3 +298,55 @@ IN_PROC_BROWSER_TEST_P(SystemNetworkCont + INSTANTIATE_TEST_SUITE_P(, + SystemNetworkContextManagerStubResolverBrowsertest, + ::testing::Values(false, true)); ++ ++class SystemNetworkContextManagerCertificateTransparencyBrowsertest ++ : public SystemNetworkContextManagerBrowsertest, ++ public testing::WithParamInterface> { ++ public: ++ SystemNetworkContextManagerCertificateTransparencyBrowsertest() { ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ GetParam()); ++ } ++ ~SystemNetworkContextManagerCertificateTransparencyBrowsertest() override { ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ base::nullopt); ++ } ++}; ++ ++#if BUILDFLAG(IS_CT_SUPPORTED) ++IN_PROC_BROWSER_TEST_P( ++ SystemNetworkContextManagerCertificateTransparencyBrowsertest, ++ CertificateTransparencyConfig) { ++ network::mojom::NetworkContextParamsPtr context_params = ++ g_browser_process->system_network_context_manager() ++ ->CreateDefaultNetworkContextParams(); ++ ++ const bool kDefault = ++#if defined(GOOGLE_CHROME_BUILD) && defined(OFFICIAL_BUILD) && \ ++ !defined(OS_ANDROID) ++ true; ++#else ++ false; ++#endif ++ ++ EXPECT_EQ(GetParam().value_or(kDefault), ++ context_params->enforce_chrome_ct_policy); ++ EXPECT_NE(GetParam().value_or(kDefault), context_params->ct_logs.empty()); ++ ++ if (GetParam().value_or(kDefault)) { ++ bool has_google_log = false; ++ bool has_disqualified_log = false; ++ for (const auto& ct_log : context_params->ct_logs) { ++ has_google_log |= ct_log->operated_by_google; ++ has_disqualified_log |= ct_log->disqualified_at.has_value(); ++ } ++ EXPECT_TRUE(has_google_log); ++ EXPECT_TRUE(has_disqualified_log); ++ } ++} ++#endif ++ ++INSTANTIATE_TEST_SUITE_P( ++ , ++ SystemNetworkContextManagerCertificateTransparencyBrowsertest, ++ ::testing::Values(base::nullopt, true, false)); diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc --- chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc.certificate-transparency 2019-08-26 21:02:05.000000000 +0200 -+++ chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc 2019-09-03 12:01:33.004949320 +0200 ++++ chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc 2019-09-03 22:13:26.451198970 +0200 @@ -4,11 +4,13 @@ #include "chrome/browser/net/system_network_context_manager.h" @@ -23,52 +90,205 @@ diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manage #include "mojo/public/cpp/bindings/associated_interface_ptr.h" #include "net/dns/public/util.h" #include "net/net_buildflags.h" -@@ -686,15 +689,41 @@ SystemNetworkContextManager::CreateDefau +@@ -81,6 +84,20 @@ + + namespace { + ++constexpr bool kCertificateTransparencyEnabled = ++#if defined(GOOGLE_CHROME_BUILD) && defined(OFFICIAL_BUILD) && \ ++ !defined(OS_ANDROID) ++ // Certificate Transparency is only enabled if: ++ // - Desktop (!OS_ANDROID); OS_IOS does not use this file ++ // - base::GetBuildTime() is deterministic to the source (OFFICIAL_BUILD) ++ // - The build in reliably updatable (GOOGLE_CHROME_BUILD) ++ true; ++#else ++ false; ++#endif ++ ++bool g_enable_certificate_transparency = kCertificateTransparencyEnabled; ++ + // The global instance of the SystemNetworkContextmanager. + SystemNetworkContextManager* g_system_network_context_manager = nullptr; + +@@ -686,14 +703,35 @@ SystemNetworkContextManager::CreateDefau bool http_09_on_non_default_ports_enabled = false; #if !defined(OS_ANDROID) - // CT is only enabled on Desktop platforms for now. +- network_context_params->enforce_chrome_ct_policy = true; +- for (const auto& ct_log : certificate_transparency::GetKnownLogs()) { +- // TODO(rsleevi): https://crbug.com/702062 - Remove this duplication. +- network::mojom::CTLogInfoPtr log_info = network::mojom::CTLogInfo::New(); +- log_info->public_key = std::string(ct_log.log_key, ct_log.log_key_length); +- log_info->name = ct_log.log_name; +- network_context_params->ct_logs.push_back(std::move(log_info)); + -+#if BUILDFLAG(GOOGLE_CHROME_BRANDING) && defined(OFFICIAL_BUILD) && \ -+ !defined(OS_IOS) -+ // Certificate Transparency is only enabled if: -+ // - Desktop (!OS_ANDROID, !OS_IOS) -+ // - base::GetBuildTime() is deterministic to the source (OFFICIAL_BUILD) -+ // - The build in reliably updatable (GOOGLE_CHROME_BRANDING) - network_context_params->enforce_chrome_ct_policy = true; -+ network_context_params->ct_log_update_time = base::GetBuildTime(); ++ if (g_enable_certificate_transparency) { ++ network_context_params->enforce_chrome_ct_policy = true; ++ network_context_params->ct_log_update_time = base::GetBuildTime(); + -+ std::vector operated_by_google_logs = -+ certificate_transparency::GetLogsOperatedByGoogle(); -+ std::vector> disqualified_logs = -+ certificate_transparency::GetDisqualifiedLogs(); - for (const auto& ct_log : certificate_transparency::GetKnownLogs()) { - // TODO(rsleevi): https://crbug.com/702062 - Remove this duplication. - network::mojom::CTLogInfoPtr log_info = network::mojom::CTLogInfo::New(); - log_info->public_key = std::string(ct_log.log_key, ct_log.log_key_length); - log_info->name = ct_log.log_name; ++ std::vector operated_by_google_logs = ++ certificate_transparency::GetLogsOperatedByGoogle(); ++ std::vector> disqualified_logs = ++ certificate_transparency::GetDisqualifiedLogs(); ++ for (const auto& ct_log : certificate_transparency::GetKnownLogs()) { ++ // TODO(rsleevi): https://crbug.com/702062 - Remove this duplication. ++ network::mojom::CTLogInfoPtr log_info = network::mojom::CTLogInfo::New(); ++ log_info->public_key = std::string(ct_log.log_key, ct_log.log_key_length); ++ log_info->name = ct_log.log_name; + -+ std::string log_id = crypto::SHA256HashString(log_info->public_key); -+ log_info->operated_by_google = -+ std::binary_search(std::begin(operated_by_google_logs), -+ std::end(operated_by_google_logs), log_id); -+ auto it = std::lower_bound( -+ std::begin(disqualified_logs), std::end(disqualified_logs), log_id, -+ [](const auto& disqualified_log, const std::string& log_id) { -+ return disqualified_log.first < log_id; -+ }); -+ if (it != std::end(disqualified_logs) && it->first == log_id) { -+ log_info->disqualified_at = it->second; ++ std::string log_id = crypto::SHA256HashString(log_info->public_key); ++ log_info->operated_by_google = ++ std::binary_search(std::begin(operated_by_google_logs), ++ std::end(operated_by_google_logs), log_id); ++ auto it = std::lower_bound( ++ std::begin(disqualified_logs), std::end(disqualified_logs), log_id, ++ [](const auto& disqualified_log, const std::string& log_id) { ++ return disqualified_log.first < log_id; ++ }); ++ if (it != std::end(disqualified_logs) && it->first == log_id) { ++ log_info->disqualified_at = it->second; ++ } ++ network_context_params->ct_logs.push_back(std::move(log_info)); + } - network_context_params->ct_logs.push_back(std::move(log_info)); } -+#endif const base::Value* value = - g_browser_process->policy_service() +@@ -756,6 +794,12 @@ SystemNetworkContextManager::GetHttpAuth + return CreateHttpAuthDynamicParams(g_browser_process->local_state()); + } + ++void SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ base::Optional enabled) { ++ g_enable_certificate_transparency = ++ enabled.value_or(kCertificateTransparencyEnabled); ++} ++ + network::mojom::NetworkContextParamsPtr + SystemNetworkContextManager::CreateNetworkContextParams() { + // TODO(mmenke): Set up parameters here (in memory cookie store, etc). +diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.h.certificate-transparency chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.h +--- chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.h.certificate-transparency 2019-08-26 21:02:05.000000000 +0200 ++++ chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.h 2019-09-03 22:08:28.931786496 +0200 +@@ -158,6 +158,12 @@ class SystemNetworkContextManager { + static network::mojom::HttpAuthDynamicParamsPtr + GetHttpAuthDynamicParamsForTesting(); + ++ // Enables Certificate Transparency and enforcing the Chrome Certificate ++ // Transparency Policy. For test use only. Use base::nullopt_t to reset to ++ // the default state. ++ static void SetEnableCertificateTransparencyForTesting( ++ base::Optional enabled); ++ + private: + class URLLoaderFactoryForSystem; + +diff -up chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc +--- chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc.certificate-transparency 2019-08-26 21:02:05.000000000 +0200 ++++ chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc 2019-09-03 22:08:28.932786508 +0200 +@@ -4834,7 +4834,7 @@ IN_PROC_BROWSER_TEST_P(SSLPolicyTestComm + browser()->tab_strip_model()->GetActiveWebContents()->GetTitle()); + } + +-IN_PROC_BROWSER_TEST_F(PolicyTest, ++IN_PROC_BROWSER_TEST_F(CertificateTransparencyPolicyTest, + CertificateTransparencyEnforcementDisabledForCas) { + net::EmbeddedTestServer https_server_ok(net::EmbeddedTestServer::TYPE_HTTPS); + https_server_ok.SetSSLConfig(net::EmbeddedTestServer::CERT_OK); +diff -up chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc +--- chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc.certificate-transparency 2019-08-26 21:02:07.000000000 +0200 ++++ chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc 2019-09-03 22:08:28.932786508 +0200 +@@ -8,6 +8,7 @@ + #include "base/callback.h" + #include "base/run_loop.h" + #include "base/test/scoped_feature_list.h" ++#include "chrome/browser/net/system_network_context_manager.h" + #include "chrome/browser/profiles/profile.h" + #include "chrome/browser/ssl/cert_verifier_browser_test.h" + #include "chrome/browser/ui/browser.h" +@@ -27,7 +28,17 @@ namespace { + // received by a server. + class ExpectCTBrowserTest : public CertVerifierBrowserTest { + public: +- ExpectCTBrowserTest() : CertVerifierBrowserTest() {} ++ ExpectCTBrowserTest() : CertVerifierBrowserTest() { ++ // Expect-CT reporting depends on actually enforcing Certificate ++ // Transparency. ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ true); ++ } ++ ++ ~ExpectCTBrowserTest() override { ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ base::nullopt); ++ } + + void SetUpOnMainThread() override { + run_loop_ = std::make_unique(); +diff -up chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_browsertest.cc +--- chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_browsertest.cc.certificate-transparency 2019-08-26 21:02:07.000000000 +0200 ++++ chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_browsertest.cc 2019-09-03 22:08:28.932786508 +0200 +@@ -457,6 +457,13 @@ class SecurityStateTabHelperTest : publi + SecurityStateTabHelperTest() + : https_server_(net::EmbeddedTestServer::TYPE_HTTPS) { + https_server_.ServeFilesFromSourceDirectory(GetChromeTestDataDir()); ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ true); ++ } ++ ++ ~SecurityStateTabHelperTest() override { ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ base::nullopt); + } + + void SetUpOnMainThread() override { +diff -up chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc +--- chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc.certificate-transparency 2019-08-26 21:02:07.000000000 +0200 ++++ chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc 2019-09-03 22:08:28.934786531 +0200 +@@ -2008,8 +2008,14 @@ class CertificateTransparencySSLUITest : + public: + CertificateTransparencySSLUITest() + : CertVerifierBrowserTest(), +- https_server_(net::EmbeddedTestServer::TYPE_HTTPS) {} +- ~CertificateTransparencySSLUITest() override {} ++ https_server_(net::EmbeddedTestServer::TYPE_HTTPS) { ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ true); ++ } ++ ~CertificateTransparencySSLUITest() override { ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ base::nullopt); ++ } + + void SetUpOnMainThread() override { + CertVerifierBrowserTest::SetUpOnMainThread(); +diff -up chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_policy_enforcer.h.certificate-transparency chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_policy_enforcer.h +--- chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_policy_enforcer.h.certificate-transparency 2019-08-26 21:02:14.000000000 +0200 ++++ chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_policy_enforcer.h 2019-09-03 22:08:28.934786531 +0200 +@@ -45,6 +45,19 @@ class ChromeCTPolicyEnforcer : public ne + + void SetClockForTesting(const base::Clock* clock) { clock_ = clock; } + ++ // TODO(https://crbug.com/999240): These are exposed to allow end-to-end ++ // testing by higher layers (i.e. that the ChromeCTPolicyEnforcer is ++ // correctly constructed). When either this issue or https://crbug.com/848277 ++ // are fixed, the configuration can be tested independently, and these can ++ // be removed. ++ const std::vector& operated_by_google_logs_for_testing() { ++ return operated_by_google_logs_; ++ } ++ const std::vector>& ++ disqualified_logs_for_testing() { ++ return disqualified_logs_; ++ } ++ + private: + // Returns true if the log identified by |log_id| (the SHA-256 hash of the + // log's DER-encoded SPKI) has been disqualified, and sets diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate-transparency chromium-76.0.3809.132/services/network/network_context.cc --- chromium-76.0.3809.132/services/network/network_context.cc.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 -+++ chromium-76.0.3809.132/services/network/network_context.cc 2019-09-03 12:04:01.983890928 +0200 ++++ chromium-76.0.3809.132/services/network/network_context.cc 2019-09-03 22:17:27.977834857 +0200 @@ -35,6 +35,7 @@ #include "components/prefs/pref_registry_simple.h" #include "components/prefs/pref_service.h" @@ -115,12 +335,16 @@ diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate- scoped_refptr log_verifier = net::CTLogVerifier::Create(log->public_key, log->name); if (!log_verifier) { -@@ -1924,6 +1927,13 @@ URLRequestContextOwner NetworkContext::A +@@ -1924,6 +1927,17 @@ URLRequestContextOwner NetworkContext::A ct_verifier->AddLogs(ct_logs); builder->set_ct_verifier(std::move(ct_verifier)); } + + if (params_->enforce_chrome_ct_policy) { ++ std::sort(std::begin(operated_by_google_logs), ++ std::end(operated_by_google_logs)); ++ std::sort(std::begin(disqualified_logs), std::end(disqualified_logs)); ++ + builder->set_ct_policy_enforcer( + std::make_unique( + params_->ct_log_update_time, disqualified_logs, @@ -129,9 +353,118 @@ diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate- #endif // BUILDFLAG(IS_CT_SUPPORTED) const base::CommandLine* command_line = +diff -up chromium-76.0.3809.132/services/network/network_context_unittest.cc.certificate-transparency chromium-76.0.3809.132/services/network/network_context_unittest.cc +--- chromium-76.0.3809.132/services/network/network_context_unittest.cc.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 ++++ chromium-76.0.3809.132/services/network/network_context_unittest.cc 2019-09-03 22:20:22.382888089 +0200 +@@ -2,6 +2,7 @@ + // Use of this source code is governed by a BSD-style license that can be + // found in the LICENSE file. + ++#include + #include + #include + #include +@@ -38,10 +39,12 @@ + #include "base/threading/thread_task_runner_handle.h" + #include "base/time/default_clock.h" + #include "base/time/default_tick_clock.h" ++#include "base/time/time.h" + #include "build/build_config.h" + #include "components/network_session_configurator/browser/network_session_configurator.h" + #include "components/network_session_configurator/common/network_switches.h" + #include "components/prefs/testing_pref_service.h" ++#include "crypto/sha2.h" + #include "mojo/public/cpp/bindings/interface_request.h" + #include "mojo/public/cpp/bindings/strong_binding.h" + #include "mojo/public/cpp/system/data_pipe_utils.h" +@@ -113,6 +116,11 @@ + #include "url/scheme_host_port.h" + #include "url/url_constants.h" + ++#if BUILDFLAG(IS_CT_SUPPORTED) ++#include "components/certificate_transparency/chrome_ct_policy_enforcer.h" ++#include "services/network/public/mojom/ct_log_info.mojom.h" ++#endif ++ + #if BUILDFLAG(ENABLE_REPORTING) + #include "net/network_error_logging/network_error_logging_service.h" + #include "net/reporting/reporting_cache.h" +@@ -5566,6 +5574,72 @@ TEST_F(NetworkContextTest, BlockAllCooki + EXPECT_EQ("None", response_body); + } + ++#if BUILDFLAG(IS_CT_SUPPORTED) ++TEST_F(NetworkContextTest, CertificateTransparencyConfig) { ++ mojom::NetworkContextParamsPtr params = CreateContextParams(); ++ params->enforce_chrome_ct_policy = true; ++ params->ct_log_update_time = base::Time::Now(); ++ ++ // The log public keys do not matter for the test, so invalid keys are used. ++ // However, because the log IDs are derived from the SHA-256 hash of the log ++ // key, the log keys are generated such that qualified logs are in the form ++ // of four digits (e.g. "0000", "1111"), while disqualified logs are in the ++ // form of four letters (e.g. "AAAA", "BBBB"). ++ ++ for (int i = 0; i < 6; ++i) { ++ network::mojom::CTLogInfoPtr log_info = network::mojom::CTLogInfo::New(); ++ // Shift to ASCII '0' (0x30) ++ log_info->public_key = std::string(4, 0x30 + static_cast(i)); ++ log_info->name = std::string(4, 0x30 + static_cast(i)); ++ log_info->operated_by_google = i % 2; ++ ++ params->ct_logs.push_back(std::move(log_info)); ++ } ++ for (int i = 0; i < 3; ++i) { ++ network::mojom::CTLogInfoPtr log_info = network::mojom::CTLogInfo::New(); ++ // Shift to ASCII 'A' (0x41) ++ log_info->public_key = std::string(4, 0x41 + static_cast(i)); ++ log_info->name = std::string(4, 0x41 + static_cast(i)); ++ log_info->operated_by_google = false; ++ log_info->disqualified_at = base::TimeDelta::FromSeconds(i); ++ ++ params->ct_logs.push_back(std::move(log_info)); ++ } ++ std::unique_ptr network_context = ++ CreateContextWithParams(std::move(params)); ++ ++ net::CTPolicyEnforcer* request_enforcer = ++ network_context->url_request_context()->ct_policy_enforcer(); ++ ASSERT_TRUE(request_enforcer); ++ ++ // Completely unsafe if |enforce_chrome_ct_policy| is false. ++ certificate_transparency::ChromeCTPolicyEnforcer* policy_enforcer = ++ reinterpret_cast( ++ request_enforcer); ++ ++ EXPECT_TRUE(std::is_sorted( ++ policy_enforcer->operated_by_google_logs_for_testing().begin(), ++ policy_enforcer->operated_by_google_logs_for_testing().end())); ++ EXPECT_TRUE( ++ std::is_sorted(policy_enforcer->disqualified_logs_for_testing().begin(), ++ policy_enforcer->disqualified_logs_for_testing().end())); ++ ++ EXPECT_THAT( ++ policy_enforcer->operated_by_google_logs_for_testing(), ++ ::testing::UnorderedElementsAreArray({crypto::SHA256HashString("1111"), ++ crypto::SHA256HashString("3333"), ++ crypto::SHA256HashString("5555")})); ++ EXPECT_THAT(policy_enforcer->disqualified_logs_for_testing(), ++ ::testing::UnorderedElementsAre( ++ ::testing::Pair(crypto::SHA256HashString("AAAA"), ++ base::TimeDelta::FromSeconds(0)), ++ ::testing::Pair(crypto::SHA256HashString("BBBB"), ++ base::TimeDelta::FromSeconds(1)), ++ ::testing::Pair(crypto::SHA256HashString("CCCC"), ++ base::TimeDelta::FromSeconds(2)))); ++} ++#endif ++ + } // namespace + + } // namespace network diff -up chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom.certificate-transparency chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom --- chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 -+++ chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom 2019-09-03 11:59:48.423862022 +0200 ++++ chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom 2019-09-03 22:08:28.936786554 +0200 @@ -4,6 +4,8 @@ module network.mojom; @@ -148,7 +481,7 @@ diff -up chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom. + + // Whether or not the log should should be considered a Google Log for the + // purposes of enforcing the "Certificate Transparency in Chrome" policy. -+ bool operated_by_google; ++ bool operated_by_google = false; + + // If set, the time since the Unix Epoch when the log was disqualified. This + // is used to determine the "once or currently qualified" status of the log. @@ -157,7 +490,7 @@ diff -up chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom. }; diff -up chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom.certificate-transparency chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom --- chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 -+++ chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom 2019-09-03 11:59:48.424862032 +0200 ++++ chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom 2019-09-03 22:08:28.936786554 +0200 @@ -238,15 +238,6 @@ struct NetworkContextParams { [EnableIf=is_android] bool check_clear_text_permitted = false; From 82c3fb0c11b8125b95e298f467ccc77d9f3bafa4 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 4 Sep 2019 10:48:30 +0200 Subject: [PATCH 0432/1449] More fixes to a backported patch for certificate transparency --- ....0.3809.132-certificate-transparency.patch | 409 ++++++++++++++++-- 1 file changed, 371 insertions(+), 38 deletions(-) diff --git a/chromium-76.0.3809.132-certificate-transparency.patch b/chromium-76.0.3809.132-certificate-transparency.patch index 51937e0..8bfbced 100644 --- a/chromium-76.0.3809.132-certificate-transparency.patch +++ b/chromium-76.0.3809.132-certificate-transparency.patch @@ -1,6 +1,73 @@ +diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager_browsertest.cc +--- chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager_browsertest.cc.certificate-transparency 2019-09-03 22:08:28.931786496 +0200 ++++ chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager_browsertest.cc 2019-09-03 22:15:24.743555759 +0200 +@@ -17,6 +17,7 @@ + #include "chrome/common/pref_names.h" + #include "chrome/test/base/in_process_browser_test.h" + #include "components/prefs/pref_service.h" ++#include "services/network/public/cpp/network_service_buildflags.h" + #include "services/network/public/mojom/network_context.mojom.h" + #include "services/network/public/mojom/network_service.mojom.h" + #include "testing/gmock/include/gmock/gmock.h" +@@ -297,3 +298,55 @@ IN_PROC_BROWSER_TEST_P(SystemNetworkCont + INSTANTIATE_TEST_SUITE_P(, + SystemNetworkContextManagerStubResolverBrowsertest, + ::testing::Values(false, true)); ++ ++class SystemNetworkContextManagerCertificateTransparencyBrowsertest ++ : public SystemNetworkContextManagerBrowsertest, ++ public testing::WithParamInterface> { ++ public: ++ SystemNetworkContextManagerCertificateTransparencyBrowsertest() { ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ GetParam()); ++ } ++ ~SystemNetworkContextManagerCertificateTransparencyBrowsertest() override { ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ base::nullopt); ++ } ++}; ++ ++#if BUILDFLAG(IS_CT_SUPPORTED) ++IN_PROC_BROWSER_TEST_P( ++ SystemNetworkContextManagerCertificateTransparencyBrowsertest, ++ CertificateTransparencyConfig) { ++ network::mojom::NetworkContextParamsPtr context_params = ++ g_browser_process->system_network_context_manager() ++ ->CreateDefaultNetworkContextParams(); ++ ++ const bool kDefault = ++#if defined(GOOGLE_CHROME_BUILD) && defined(OFFICIAL_BUILD) && \ ++ !defined(OS_ANDROID) ++ true; ++#else ++ false; ++#endif ++ ++ EXPECT_EQ(GetParam().value_or(kDefault), ++ context_params->enforce_chrome_ct_policy); ++ EXPECT_NE(GetParam().value_or(kDefault), context_params->ct_logs.empty()); ++ ++ if (GetParam().value_or(kDefault)) { ++ bool has_google_log = false; ++ bool has_disqualified_log = false; ++ for (const auto& ct_log : context_params->ct_logs) { ++ has_google_log |= ct_log->operated_by_google; ++ has_disqualified_log |= ct_log->disqualified_at.has_value(); ++ } ++ EXPECT_TRUE(has_google_log); ++ EXPECT_TRUE(has_disqualified_log); ++ } ++} ++#endif ++ ++INSTANTIATE_TEST_SUITE_P( ++ , ++ SystemNetworkContextManagerCertificateTransparencyBrowsertest, ++ ::testing::Values(base::nullopt, true, false)); diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc --- chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc.certificate-transparency 2019-08-26 21:02:05.000000000 +0200 -+++ chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc 2019-09-03 12:01:33.004949320 +0200 ++++ chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc 2019-09-03 22:13:26.451198970 +0200 @@ -4,11 +4,13 @@ #include "chrome/browser/net/system_network_context_manager.h" @@ -23,52 +90,205 @@ diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manage #include "mojo/public/cpp/bindings/associated_interface_ptr.h" #include "net/dns/public/util.h" #include "net/net_buildflags.h" -@@ -686,15 +689,41 @@ SystemNetworkContextManager::CreateDefau +@@ -81,6 +84,20 @@ + + namespace { + ++constexpr bool kCertificateTransparencyEnabled = ++#if defined(GOOGLE_CHROME_BUILD) && defined(OFFICIAL_BUILD) && \ ++ !defined(OS_ANDROID) ++ // Certificate Transparency is only enabled if: ++ // - Desktop (!OS_ANDROID); OS_IOS does not use this file ++ // - base::GetBuildTime() is deterministic to the source (OFFICIAL_BUILD) ++ // - The build in reliably updatable (GOOGLE_CHROME_BUILD) ++ true; ++#else ++ false; ++#endif ++ ++bool g_enable_certificate_transparency = kCertificateTransparencyEnabled; ++ + // The global instance of the SystemNetworkContextmanager. + SystemNetworkContextManager* g_system_network_context_manager = nullptr; + +@@ -686,14 +703,35 @@ SystemNetworkContextManager::CreateDefau bool http_09_on_non_default_ports_enabled = false; #if !defined(OS_ANDROID) - // CT is only enabled on Desktop platforms for now. +- network_context_params->enforce_chrome_ct_policy = true; +- for (const auto& ct_log : certificate_transparency::GetKnownLogs()) { +- // TODO(rsleevi): https://crbug.com/702062 - Remove this duplication. +- network::mojom::CTLogInfoPtr log_info = network::mojom::CTLogInfo::New(); +- log_info->public_key = std::string(ct_log.log_key, ct_log.log_key_length); +- log_info->name = ct_log.log_name; +- network_context_params->ct_logs.push_back(std::move(log_info)); + -+#if BUILDFLAG(GOOGLE_CHROME_BRANDING) && defined(OFFICIAL_BUILD) && \ -+ !defined(OS_IOS) -+ // Certificate Transparency is only enabled if: -+ // - Desktop (!OS_ANDROID, !OS_IOS) -+ // - base::GetBuildTime() is deterministic to the source (OFFICIAL_BUILD) -+ // - The build in reliably updatable (GOOGLE_CHROME_BRANDING) - network_context_params->enforce_chrome_ct_policy = true; -+ network_context_params->ct_log_update_time = base::GetBuildTime(); ++ if (g_enable_certificate_transparency) { ++ network_context_params->enforce_chrome_ct_policy = true; ++ network_context_params->ct_log_update_time = base::GetBuildTime(); + -+ std::vector operated_by_google_logs = -+ certificate_transparency::GetLogsOperatedByGoogle(); -+ std::vector> disqualified_logs = -+ certificate_transparency::GetDisqualifiedLogs(); - for (const auto& ct_log : certificate_transparency::GetKnownLogs()) { - // TODO(rsleevi): https://crbug.com/702062 - Remove this duplication. - network::mojom::CTLogInfoPtr log_info = network::mojom::CTLogInfo::New(); - log_info->public_key = std::string(ct_log.log_key, ct_log.log_key_length); - log_info->name = ct_log.log_name; ++ std::vector operated_by_google_logs = ++ certificate_transparency::GetLogsOperatedByGoogle(); ++ std::vector> disqualified_logs = ++ certificate_transparency::GetDisqualifiedLogs(); ++ for (const auto& ct_log : certificate_transparency::GetKnownLogs()) { ++ // TODO(rsleevi): https://crbug.com/702062 - Remove this duplication. ++ network::mojom::CTLogInfoPtr log_info = network::mojom::CTLogInfo::New(); ++ log_info->public_key = std::string(ct_log.log_key, ct_log.log_key_length); ++ log_info->name = ct_log.log_name; + -+ std::string log_id = crypto::SHA256HashString(log_info->public_key); -+ log_info->operated_by_google = -+ std::binary_search(std::begin(operated_by_google_logs), -+ std::end(operated_by_google_logs), log_id); -+ auto it = std::lower_bound( -+ std::begin(disqualified_logs), std::end(disqualified_logs), log_id, -+ [](const auto& disqualified_log, const std::string& log_id) { -+ return disqualified_log.first < log_id; -+ }); -+ if (it != std::end(disqualified_logs) && it->first == log_id) { -+ log_info->disqualified_at = it->second; ++ std::string log_id = crypto::SHA256HashString(log_info->public_key); ++ log_info->operated_by_google = ++ std::binary_search(std::begin(operated_by_google_logs), ++ std::end(operated_by_google_logs), log_id); ++ auto it = std::lower_bound( ++ std::begin(disqualified_logs), std::end(disqualified_logs), log_id, ++ [](const auto& disqualified_log, const std::string& log_id) { ++ return disqualified_log.first < log_id; ++ }); ++ if (it != std::end(disqualified_logs) && it->first == log_id) { ++ log_info->disqualified_at = it->second; ++ } ++ network_context_params->ct_logs.push_back(std::move(log_info)); + } - network_context_params->ct_logs.push_back(std::move(log_info)); } -+#endif const base::Value* value = - g_browser_process->policy_service() +@@ -756,6 +794,12 @@ SystemNetworkContextManager::GetHttpAuth + return CreateHttpAuthDynamicParams(g_browser_process->local_state()); + } + ++void SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ base::Optional enabled) { ++ g_enable_certificate_transparency = ++ enabled.value_or(kCertificateTransparencyEnabled); ++} ++ + network::mojom::NetworkContextParamsPtr + SystemNetworkContextManager::CreateNetworkContextParams() { + // TODO(mmenke): Set up parameters here (in memory cookie store, etc). +diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.h.certificate-transparency chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.h +--- chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.h.certificate-transparency 2019-08-26 21:02:05.000000000 +0200 ++++ chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.h 2019-09-03 22:08:28.931786496 +0200 +@@ -158,6 +158,12 @@ class SystemNetworkContextManager { + static network::mojom::HttpAuthDynamicParamsPtr + GetHttpAuthDynamicParamsForTesting(); + ++ // Enables Certificate Transparency and enforcing the Chrome Certificate ++ // Transparency Policy. For test use only. Use base::nullopt_t to reset to ++ // the default state. ++ static void SetEnableCertificateTransparencyForTesting( ++ base::Optional enabled); ++ + private: + class URLLoaderFactoryForSystem; + +diff -up chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc +--- chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc.certificate-transparency 2019-08-26 21:02:05.000000000 +0200 ++++ chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc 2019-09-03 22:08:28.932786508 +0200 +@@ -4834,7 +4834,7 @@ IN_PROC_BROWSER_TEST_P(SSLPolicyTestComm + browser()->tab_strip_model()->GetActiveWebContents()->GetTitle()); + } + +-IN_PROC_BROWSER_TEST_F(PolicyTest, ++IN_PROC_BROWSER_TEST_F(CertificateTransparencyPolicyTest, + CertificateTransparencyEnforcementDisabledForCas) { + net::EmbeddedTestServer https_server_ok(net::EmbeddedTestServer::TYPE_HTTPS); + https_server_ok.SetSSLConfig(net::EmbeddedTestServer::CERT_OK); +diff -up chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc +--- chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc.certificate-transparency 2019-08-26 21:02:07.000000000 +0200 ++++ chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc 2019-09-03 22:08:28.932786508 +0200 +@@ -8,6 +8,7 @@ + #include "base/callback.h" + #include "base/run_loop.h" + #include "base/test/scoped_feature_list.h" ++#include "chrome/browser/net/system_network_context_manager.h" + #include "chrome/browser/profiles/profile.h" + #include "chrome/browser/ssl/cert_verifier_browser_test.h" + #include "chrome/browser/ui/browser.h" +@@ -27,7 +28,17 @@ namespace { + // received by a server. + class ExpectCTBrowserTest : public CertVerifierBrowserTest { + public: +- ExpectCTBrowserTest() : CertVerifierBrowserTest() {} ++ ExpectCTBrowserTest() : CertVerifierBrowserTest() { ++ // Expect-CT reporting depends on actually enforcing Certificate ++ // Transparency. ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ true); ++ } ++ ++ ~ExpectCTBrowserTest() override { ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ base::nullopt); ++ } + + void SetUpOnMainThread() override { + run_loop_ = std::make_unique(); +diff -up chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_browsertest.cc +--- chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_browsertest.cc.certificate-transparency 2019-08-26 21:02:07.000000000 +0200 ++++ chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_browsertest.cc 2019-09-03 22:08:28.932786508 +0200 +@@ -457,6 +457,13 @@ class SecurityStateTabHelperTest : publi + SecurityStateTabHelperTest() + : https_server_(net::EmbeddedTestServer::TYPE_HTTPS) { + https_server_.ServeFilesFromSourceDirectory(GetChromeTestDataDir()); ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ true); ++ } ++ ++ ~SecurityStateTabHelperTest() override { ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ base::nullopt); + } + + void SetUpOnMainThread() override { +diff -up chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc +--- chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc.certificate-transparency 2019-08-26 21:02:07.000000000 +0200 ++++ chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc 2019-09-03 22:08:28.934786531 +0200 +@@ -2008,8 +2008,14 @@ class CertificateTransparencySSLUITest : + public: + CertificateTransparencySSLUITest() + : CertVerifierBrowserTest(), +- https_server_(net::EmbeddedTestServer::TYPE_HTTPS) {} +- ~CertificateTransparencySSLUITest() override {} ++ https_server_(net::EmbeddedTestServer::TYPE_HTTPS) { ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ true); ++ } ++ ~CertificateTransparencySSLUITest() override { ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ base::nullopt); ++ } + + void SetUpOnMainThread() override { + CertVerifierBrowserTest::SetUpOnMainThread(); +diff -up chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_policy_enforcer.h.certificate-transparency chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_policy_enforcer.h +--- chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_policy_enforcer.h.certificate-transparency 2019-08-26 21:02:14.000000000 +0200 ++++ chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_policy_enforcer.h 2019-09-03 22:08:28.934786531 +0200 +@@ -45,6 +45,19 @@ class ChromeCTPolicyEnforcer : public ne + + void SetClockForTesting(const base::Clock* clock) { clock_ = clock; } + ++ // TODO(https://crbug.com/999240): These are exposed to allow end-to-end ++ // testing by higher layers (i.e. that the ChromeCTPolicyEnforcer is ++ // correctly constructed). When either this issue or https://crbug.com/848277 ++ // are fixed, the configuration can be tested independently, and these can ++ // be removed. ++ const std::vector& operated_by_google_logs_for_testing() { ++ return operated_by_google_logs_; ++ } ++ const std::vector>& ++ disqualified_logs_for_testing() { ++ return disqualified_logs_; ++ } ++ + private: + // Returns true if the log identified by |log_id| (the SHA-256 hash of the + // log's DER-encoded SPKI) has been disqualified, and sets diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate-transparency chromium-76.0.3809.132/services/network/network_context.cc --- chromium-76.0.3809.132/services/network/network_context.cc.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 -+++ chromium-76.0.3809.132/services/network/network_context.cc 2019-09-03 12:04:01.983890928 +0200 ++++ chromium-76.0.3809.132/services/network/network_context.cc 2019-09-03 22:17:27.977834857 +0200 @@ -35,6 +35,7 @@ #include "components/prefs/pref_registry_simple.h" #include "components/prefs/pref_service.h" @@ -115,12 +335,16 @@ diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate- scoped_refptr log_verifier = net::CTLogVerifier::Create(log->public_key, log->name); if (!log_verifier) { -@@ -1924,6 +1927,13 @@ URLRequestContextOwner NetworkContext::A +@@ -1924,6 +1927,17 @@ URLRequestContextOwner NetworkContext::A ct_verifier->AddLogs(ct_logs); builder->set_ct_verifier(std::move(ct_verifier)); } + + if (params_->enforce_chrome_ct_policy) { ++ std::sort(std::begin(operated_by_google_logs), ++ std::end(operated_by_google_logs)); ++ std::sort(std::begin(disqualified_logs), std::end(disqualified_logs)); ++ + builder->set_ct_policy_enforcer( + std::make_unique( + params_->ct_log_update_time, disqualified_logs, @@ -129,9 +353,118 @@ diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate- #endif // BUILDFLAG(IS_CT_SUPPORTED) const base::CommandLine* command_line = +diff -up chromium-76.0.3809.132/services/network/network_context_unittest.cc.certificate-transparency chromium-76.0.3809.132/services/network/network_context_unittest.cc +--- chromium-76.0.3809.132/services/network/network_context_unittest.cc.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 ++++ chromium-76.0.3809.132/services/network/network_context_unittest.cc 2019-09-03 22:20:22.382888089 +0200 +@@ -2,6 +2,7 @@ + // Use of this source code is governed by a BSD-style license that can be + // found in the LICENSE file. + ++#include + #include + #include + #include +@@ -38,10 +39,12 @@ + #include "base/threading/thread_task_runner_handle.h" + #include "base/time/default_clock.h" + #include "base/time/default_tick_clock.h" ++#include "base/time/time.h" + #include "build/build_config.h" + #include "components/network_session_configurator/browser/network_session_configurator.h" + #include "components/network_session_configurator/common/network_switches.h" + #include "components/prefs/testing_pref_service.h" ++#include "crypto/sha2.h" + #include "mojo/public/cpp/bindings/interface_request.h" + #include "mojo/public/cpp/bindings/strong_binding.h" + #include "mojo/public/cpp/system/data_pipe_utils.h" +@@ -113,6 +116,11 @@ + #include "url/scheme_host_port.h" + #include "url/url_constants.h" + ++#if BUILDFLAG(IS_CT_SUPPORTED) ++#include "components/certificate_transparency/chrome_ct_policy_enforcer.h" ++#include "services/network/public/mojom/ct_log_info.mojom.h" ++#endif ++ + #if BUILDFLAG(ENABLE_REPORTING) + #include "net/network_error_logging/network_error_logging_service.h" + #include "net/reporting/reporting_cache.h" +@@ -5566,6 +5574,72 @@ TEST_F(NetworkContextTest, BlockAllCooki + EXPECT_EQ("None", response_body); + } + ++#if BUILDFLAG(IS_CT_SUPPORTED) ++TEST_F(NetworkContextTest, CertificateTransparencyConfig) { ++ mojom::NetworkContextParamsPtr params = CreateContextParams(); ++ params->enforce_chrome_ct_policy = true; ++ params->ct_log_update_time = base::Time::Now(); ++ ++ // The log public keys do not matter for the test, so invalid keys are used. ++ // However, because the log IDs are derived from the SHA-256 hash of the log ++ // key, the log keys are generated such that qualified logs are in the form ++ // of four digits (e.g. "0000", "1111"), while disqualified logs are in the ++ // form of four letters (e.g. "AAAA", "BBBB"). ++ ++ for (int i = 0; i < 6; ++i) { ++ network::mojom::CTLogInfoPtr log_info = network::mojom::CTLogInfo::New(); ++ // Shift to ASCII '0' (0x30) ++ log_info->public_key = std::string(4, 0x30 + static_cast(i)); ++ log_info->name = std::string(4, 0x30 + static_cast(i)); ++ log_info->operated_by_google = i % 2; ++ ++ params->ct_logs.push_back(std::move(log_info)); ++ } ++ for (int i = 0; i < 3; ++i) { ++ network::mojom::CTLogInfoPtr log_info = network::mojom::CTLogInfo::New(); ++ // Shift to ASCII 'A' (0x41) ++ log_info->public_key = std::string(4, 0x41 + static_cast(i)); ++ log_info->name = std::string(4, 0x41 + static_cast(i)); ++ log_info->operated_by_google = false; ++ log_info->disqualified_at = base::TimeDelta::FromSeconds(i); ++ ++ params->ct_logs.push_back(std::move(log_info)); ++ } ++ std::unique_ptr network_context = ++ CreateContextWithParams(std::move(params)); ++ ++ net::CTPolicyEnforcer* request_enforcer = ++ network_context->url_request_context()->ct_policy_enforcer(); ++ ASSERT_TRUE(request_enforcer); ++ ++ // Completely unsafe if |enforce_chrome_ct_policy| is false. ++ certificate_transparency::ChromeCTPolicyEnforcer* policy_enforcer = ++ reinterpret_cast( ++ request_enforcer); ++ ++ EXPECT_TRUE(std::is_sorted( ++ policy_enforcer->operated_by_google_logs_for_testing().begin(), ++ policy_enforcer->operated_by_google_logs_for_testing().end())); ++ EXPECT_TRUE( ++ std::is_sorted(policy_enforcer->disqualified_logs_for_testing().begin(), ++ policy_enforcer->disqualified_logs_for_testing().end())); ++ ++ EXPECT_THAT( ++ policy_enforcer->operated_by_google_logs_for_testing(), ++ ::testing::UnorderedElementsAreArray({crypto::SHA256HashString("1111"), ++ crypto::SHA256HashString("3333"), ++ crypto::SHA256HashString("5555")})); ++ EXPECT_THAT(policy_enforcer->disqualified_logs_for_testing(), ++ ::testing::UnorderedElementsAre( ++ ::testing::Pair(crypto::SHA256HashString("AAAA"), ++ base::TimeDelta::FromSeconds(0)), ++ ::testing::Pair(crypto::SHA256HashString("BBBB"), ++ base::TimeDelta::FromSeconds(1)), ++ ::testing::Pair(crypto::SHA256HashString("CCCC"), ++ base::TimeDelta::FromSeconds(2)))); ++} ++#endif ++ + } // namespace + + } // namespace network diff -up chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom.certificate-transparency chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom --- chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 -+++ chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom 2019-09-03 11:59:48.423862022 +0200 ++++ chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom 2019-09-03 22:08:28.936786554 +0200 @@ -4,6 +4,8 @@ module network.mojom; @@ -148,7 +481,7 @@ diff -up chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom. + + // Whether or not the log should should be considered a Google Log for the + // purposes of enforcing the "Certificate Transparency in Chrome" policy. -+ bool operated_by_google; ++ bool operated_by_google = false; + + // If set, the time since the Unix Epoch when the log was disqualified. This + // is used to determine the "once or currently qualified" status of the log. @@ -157,7 +490,7 @@ diff -up chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom. }; diff -up chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom.certificate-transparency chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom --- chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 -+++ chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom 2019-09-03 11:59:48.424862032 +0200 ++++ chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom 2019-09-03 22:08:28.936786554 +0200 @@ -238,15 +238,6 @@ struct NetworkContextParams { [EnableIf=is_android] bool check_clear_text_permitted = false; From 6140e1104effb04aa4f3c65110ec71eca3efb66d Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 4 Sep 2019 10:48:30 +0200 Subject: [PATCH 0433/1449] More fixes to a backported patch for certificate transparency --- ....0.3809.132-certificate-transparency.patch | 409 ++++++++++++++++-- 1 file changed, 371 insertions(+), 38 deletions(-) diff --git a/chromium-76.0.3809.132-certificate-transparency.patch b/chromium-76.0.3809.132-certificate-transparency.patch index 51937e0..8bfbced 100644 --- a/chromium-76.0.3809.132-certificate-transparency.patch +++ b/chromium-76.0.3809.132-certificate-transparency.patch @@ -1,6 +1,73 @@ +diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager_browsertest.cc +--- chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager_browsertest.cc.certificate-transparency 2019-09-03 22:08:28.931786496 +0200 ++++ chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager_browsertest.cc 2019-09-03 22:15:24.743555759 +0200 +@@ -17,6 +17,7 @@ + #include "chrome/common/pref_names.h" + #include "chrome/test/base/in_process_browser_test.h" + #include "components/prefs/pref_service.h" ++#include "services/network/public/cpp/network_service_buildflags.h" + #include "services/network/public/mojom/network_context.mojom.h" + #include "services/network/public/mojom/network_service.mojom.h" + #include "testing/gmock/include/gmock/gmock.h" +@@ -297,3 +298,55 @@ IN_PROC_BROWSER_TEST_P(SystemNetworkCont + INSTANTIATE_TEST_SUITE_P(, + SystemNetworkContextManagerStubResolverBrowsertest, + ::testing::Values(false, true)); ++ ++class SystemNetworkContextManagerCertificateTransparencyBrowsertest ++ : public SystemNetworkContextManagerBrowsertest, ++ public testing::WithParamInterface> { ++ public: ++ SystemNetworkContextManagerCertificateTransparencyBrowsertest() { ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ GetParam()); ++ } ++ ~SystemNetworkContextManagerCertificateTransparencyBrowsertest() override { ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ base::nullopt); ++ } ++}; ++ ++#if BUILDFLAG(IS_CT_SUPPORTED) ++IN_PROC_BROWSER_TEST_P( ++ SystemNetworkContextManagerCertificateTransparencyBrowsertest, ++ CertificateTransparencyConfig) { ++ network::mojom::NetworkContextParamsPtr context_params = ++ g_browser_process->system_network_context_manager() ++ ->CreateDefaultNetworkContextParams(); ++ ++ const bool kDefault = ++#if defined(GOOGLE_CHROME_BUILD) && defined(OFFICIAL_BUILD) && \ ++ !defined(OS_ANDROID) ++ true; ++#else ++ false; ++#endif ++ ++ EXPECT_EQ(GetParam().value_or(kDefault), ++ context_params->enforce_chrome_ct_policy); ++ EXPECT_NE(GetParam().value_or(kDefault), context_params->ct_logs.empty()); ++ ++ if (GetParam().value_or(kDefault)) { ++ bool has_google_log = false; ++ bool has_disqualified_log = false; ++ for (const auto& ct_log : context_params->ct_logs) { ++ has_google_log |= ct_log->operated_by_google; ++ has_disqualified_log |= ct_log->disqualified_at.has_value(); ++ } ++ EXPECT_TRUE(has_google_log); ++ EXPECT_TRUE(has_disqualified_log); ++ } ++} ++#endif ++ ++INSTANTIATE_TEST_SUITE_P( ++ , ++ SystemNetworkContextManagerCertificateTransparencyBrowsertest, ++ ::testing::Values(base::nullopt, true, false)); diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc --- chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc.certificate-transparency 2019-08-26 21:02:05.000000000 +0200 -+++ chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc 2019-09-03 12:01:33.004949320 +0200 ++++ chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc 2019-09-03 22:13:26.451198970 +0200 @@ -4,11 +4,13 @@ #include "chrome/browser/net/system_network_context_manager.h" @@ -23,52 +90,205 @@ diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manage #include "mojo/public/cpp/bindings/associated_interface_ptr.h" #include "net/dns/public/util.h" #include "net/net_buildflags.h" -@@ -686,15 +689,41 @@ SystemNetworkContextManager::CreateDefau +@@ -81,6 +84,20 @@ + + namespace { + ++constexpr bool kCertificateTransparencyEnabled = ++#if defined(GOOGLE_CHROME_BUILD) && defined(OFFICIAL_BUILD) && \ ++ !defined(OS_ANDROID) ++ // Certificate Transparency is only enabled if: ++ // - Desktop (!OS_ANDROID); OS_IOS does not use this file ++ // - base::GetBuildTime() is deterministic to the source (OFFICIAL_BUILD) ++ // - The build in reliably updatable (GOOGLE_CHROME_BUILD) ++ true; ++#else ++ false; ++#endif ++ ++bool g_enable_certificate_transparency = kCertificateTransparencyEnabled; ++ + // The global instance of the SystemNetworkContextmanager. + SystemNetworkContextManager* g_system_network_context_manager = nullptr; + +@@ -686,14 +703,35 @@ SystemNetworkContextManager::CreateDefau bool http_09_on_non_default_ports_enabled = false; #if !defined(OS_ANDROID) - // CT is only enabled on Desktop platforms for now. +- network_context_params->enforce_chrome_ct_policy = true; +- for (const auto& ct_log : certificate_transparency::GetKnownLogs()) { +- // TODO(rsleevi): https://crbug.com/702062 - Remove this duplication. +- network::mojom::CTLogInfoPtr log_info = network::mojom::CTLogInfo::New(); +- log_info->public_key = std::string(ct_log.log_key, ct_log.log_key_length); +- log_info->name = ct_log.log_name; +- network_context_params->ct_logs.push_back(std::move(log_info)); + -+#if BUILDFLAG(GOOGLE_CHROME_BRANDING) && defined(OFFICIAL_BUILD) && \ -+ !defined(OS_IOS) -+ // Certificate Transparency is only enabled if: -+ // - Desktop (!OS_ANDROID, !OS_IOS) -+ // - base::GetBuildTime() is deterministic to the source (OFFICIAL_BUILD) -+ // - The build in reliably updatable (GOOGLE_CHROME_BRANDING) - network_context_params->enforce_chrome_ct_policy = true; -+ network_context_params->ct_log_update_time = base::GetBuildTime(); ++ if (g_enable_certificate_transparency) { ++ network_context_params->enforce_chrome_ct_policy = true; ++ network_context_params->ct_log_update_time = base::GetBuildTime(); + -+ std::vector operated_by_google_logs = -+ certificate_transparency::GetLogsOperatedByGoogle(); -+ std::vector> disqualified_logs = -+ certificate_transparency::GetDisqualifiedLogs(); - for (const auto& ct_log : certificate_transparency::GetKnownLogs()) { - // TODO(rsleevi): https://crbug.com/702062 - Remove this duplication. - network::mojom::CTLogInfoPtr log_info = network::mojom::CTLogInfo::New(); - log_info->public_key = std::string(ct_log.log_key, ct_log.log_key_length); - log_info->name = ct_log.log_name; ++ std::vector operated_by_google_logs = ++ certificate_transparency::GetLogsOperatedByGoogle(); ++ std::vector> disqualified_logs = ++ certificate_transparency::GetDisqualifiedLogs(); ++ for (const auto& ct_log : certificate_transparency::GetKnownLogs()) { ++ // TODO(rsleevi): https://crbug.com/702062 - Remove this duplication. ++ network::mojom::CTLogInfoPtr log_info = network::mojom::CTLogInfo::New(); ++ log_info->public_key = std::string(ct_log.log_key, ct_log.log_key_length); ++ log_info->name = ct_log.log_name; + -+ std::string log_id = crypto::SHA256HashString(log_info->public_key); -+ log_info->operated_by_google = -+ std::binary_search(std::begin(operated_by_google_logs), -+ std::end(operated_by_google_logs), log_id); -+ auto it = std::lower_bound( -+ std::begin(disqualified_logs), std::end(disqualified_logs), log_id, -+ [](const auto& disqualified_log, const std::string& log_id) { -+ return disqualified_log.first < log_id; -+ }); -+ if (it != std::end(disqualified_logs) && it->first == log_id) { -+ log_info->disqualified_at = it->second; ++ std::string log_id = crypto::SHA256HashString(log_info->public_key); ++ log_info->operated_by_google = ++ std::binary_search(std::begin(operated_by_google_logs), ++ std::end(operated_by_google_logs), log_id); ++ auto it = std::lower_bound( ++ std::begin(disqualified_logs), std::end(disqualified_logs), log_id, ++ [](const auto& disqualified_log, const std::string& log_id) { ++ return disqualified_log.first < log_id; ++ }); ++ if (it != std::end(disqualified_logs) && it->first == log_id) { ++ log_info->disqualified_at = it->second; ++ } ++ network_context_params->ct_logs.push_back(std::move(log_info)); + } - network_context_params->ct_logs.push_back(std::move(log_info)); } -+#endif const base::Value* value = - g_browser_process->policy_service() +@@ -756,6 +794,12 @@ SystemNetworkContextManager::GetHttpAuth + return CreateHttpAuthDynamicParams(g_browser_process->local_state()); + } + ++void SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ base::Optional enabled) { ++ g_enable_certificate_transparency = ++ enabled.value_or(kCertificateTransparencyEnabled); ++} ++ + network::mojom::NetworkContextParamsPtr + SystemNetworkContextManager::CreateNetworkContextParams() { + // TODO(mmenke): Set up parameters here (in memory cookie store, etc). +diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.h.certificate-transparency chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.h +--- chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.h.certificate-transparency 2019-08-26 21:02:05.000000000 +0200 ++++ chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.h 2019-09-03 22:08:28.931786496 +0200 +@@ -158,6 +158,12 @@ class SystemNetworkContextManager { + static network::mojom::HttpAuthDynamicParamsPtr + GetHttpAuthDynamicParamsForTesting(); + ++ // Enables Certificate Transparency and enforcing the Chrome Certificate ++ // Transparency Policy. For test use only. Use base::nullopt_t to reset to ++ // the default state. ++ static void SetEnableCertificateTransparencyForTesting( ++ base::Optional enabled); ++ + private: + class URLLoaderFactoryForSystem; + +diff -up chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc +--- chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc.certificate-transparency 2019-08-26 21:02:05.000000000 +0200 ++++ chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc 2019-09-03 22:08:28.932786508 +0200 +@@ -4834,7 +4834,7 @@ IN_PROC_BROWSER_TEST_P(SSLPolicyTestComm + browser()->tab_strip_model()->GetActiveWebContents()->GetTitle()); + } + +-IN_PROC_BROWSER_TEST_F(PolicyTest, ++IN_PROC_BROWSER_TEST_F(CertificateTransparencyPolicyTest, + CertificateTransparencyEnforcementDisabledForCas) { + net::EmbeddedTestServer https_server_ok(net::EmbeddedTestServer::TYPE_HTTPS); + https_server_ok.SetSSLConfig(net::EmbeddedTestServer::CERT_OK); +diff -up chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc +--- chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc.certificate-transparency 2019-08-26 21:02:07.000000000 +0200 ++++ chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc 2019-09-03 22:08:28.932786508 +0200 +@@ -8,6 +8,7 @@ + #include "base/callback.h" + #include "base/run_loop.h" + #include "base/test/scoped_feature_list.h" ++#include "chrome/browser/net/system_network_context_manager.h" + #include "chrome/browser/profiles/profile.h" + #include "chrome/browser/ssl/cert_verifier_browser_test.h" + #include "chrome/browser/ui/browser.h" +@@ -27,7 +28,17 @@ namespace { + // received by a server. + class ExpectCTBrowserTest : public CertVerifierBrowserTest { + public: +- ExpectCTBrowserTest() : CertVerifierBrowserTest() {} ++ ExpectCTBrowserTest() : CertVerifierBrowserTest() { ++ // Expect-CT reporting depends on actually enforcing Certificate ++ // Transparency. ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ true); ++ } ++ ++ ~ExpectCTBrowserTest() override { ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ base::nullopt); ++ } + + void SetUpOnMainThread() override { + run_loop_ = std::make_unique(); +diff -up chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_browsertest.cc +--- chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_browsertest.cc.certificate-transparency 2019-08-26 21:02:07.000000000 +0200 ++++ chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_browsertest.cc 2019-09-03 22:08:28.932786508 +0200 +@@ -457,6 +457,13 @@ class SecurityStateTabHelperTest : publi + SecurityStateTabHelperTest() + : https_server_(net::EmbeddedTestServer::TYPE_HTTPS) { + https_server_.ServeFilesFromSourceDirectory(GetChromeTestDataDir()); ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ true); ++ } ++ ++ ~SecurityStateTabHelperTest() override { ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ base::nullopt); + } + + void SetUpOnMainThread() override { +diff -up chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc +--- chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc.certificate-transparency 2019-08-26 21:02:07.000000000 +0200 ++++ chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc 2019-09-03 22:08:28.934786531 +0200 +@@ -2008,8 +2008,14 @@ class CertificateTransparencySSLUITest : + public: + CertificateTransparencySSLUITest() + : CertVerifierBrowserTest(), +- https_server_(net::EmbeddedTestServer::TYPE_HTTPS) {} +- ~CertificateTransparencySSLUITest() override {} ++ https_server_(net::EmbeddedTestServer::TYPE_HTTPS) { ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ true); ++ } ++ ~CertificateTransparencySSLUITest() override { ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ base::nullopt); ++ } + + void SetUpOnMainThread() override { + CertVerifierBrowserTest::SetUpOnMainThread(); +diff -up chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_policy_enforcer.h.certificate-transparency chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_policy_enforcer.h +--- chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_policy_enforcer.h.certificate-transparency 2019-08-26 21:02:14.000000000 +0200 ++++ chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_policy_enforcer.h 2019-09-03 22:08:28.934786531 +0200 +@@ -45,6 +45,19 @@ class ChromeCTPolicyEnforcer : public ne + + void SetClockForTesting(const base::Clock* clock) { clock_ = clock; } + ++ // TODO(https://crbug.com/999240): These are exposed to allow end-to-end ++ // testing by higher layers (i.e. that the ChromeCTPolicyEnforcer is ++ // correctly constructed). When either this issue or https://crbug.com/848277 ++ // are fixed, the configuration can be tested independently, and these can ++ // be removed. ++ const std::vector& operated_by_google_logs_for_testing() { ++ return operated_by_google_logs_; ++ } ++ const std::vector>& ++ disqualified_logs_for_testing() { ++ return disqualified_logs_; ++ } ++ + private: + // Returns true if the log identified by |log_id| (the SHA-256 hash of the + // log's DER-encoded SPKI) has been disqualified, and sets diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate-transparency chromium-76.0.3809.132/services/network/network_context.cc --- chromium-76.0.3809.132/services/network/network_context.cc.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 -+++ chromium-76.0.3809.132/services/network/network_context.cc 2019-09-03 12:04:01.983890928 +0200 ++++ chromium-76.0.3809.132/services/network/network_context.cc 2019-09-03 22:17:27.977834857 +0200 @@ -35,6 +35,7 @@ #include "components/prefs/pref_registry_simple.h" #include "components/prefs/pref_service.h" @@ -115,12 +335,16 @@ diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate- scoped_refptr log_verifier = net::CTLogVerifier::Create(log->public_key, log->name); if (!log_verifier) { -@@ -1924,6 +1927,13 @@ URLRequestContextOwner NetworkContext::A +@@ -1924,6 +1927,17 @@ URLRequestContextOwner NetworkContext::A ct_verifier->AddLogs(ct_logs); builder->set_ct_verifier(std::move(ct_verifier)); } + + if (params_->enforce_chrome_ct_policy) { ++ std::sort(std::begin(operated_by_google_logs), ++ std::end(operated_by_google_logs)); ++ std::sort(std::begin(disqualified_logs), std::end(disqualified_logs)); ++ + builder->set_ct_policy_enforcer( + std::make_unique( + params_->ct_log_update_time, disqualified_logs, @@ -129,9 +353,118 @@ diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate- #endif // BUILDFLAG(IS_CT_SUPPORTED) const base::CommandLine* command_line = +diff -up chromium-76.0.3809.132/services/network/network_context_unittest.cc.certificate-transparency chromium-76.0.3809.132/services/network/network_context_unittest.cc +--- chromium-76.0.3809.132/services/network/network_context_unittest.cc.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 ++++ chromium-76.0.3809.132/services/network/network_context_unittest.cc 2019-09-03 22:20:22.382888089 +0200 +@@ -2,6 +2,7 @@ + // Use of this source code is governed by a BSD-style license that can be + // found in the LICENSE file. + ++#include + #include + #include + #include +@@ -38,10 +39,12 @@ + #include "base/threading/thread_task_runner_handle.h" + #include "base/time/default_clock.h" + #include "base/time/default_tick_clock.h" ++#include "base/time/time.h" + #include "build/build_config.h" + #include "components/network_session_configurator/browser/network_session_configurator.h" + #include "components/network_session_configurator/common/network_switches.h" + #include "components/prefs/testing_pref_service.h" ++#include "crypto/sha2.h" + #include "mojo/public/cpp/bindings/interface_request.h" + #include "mojo/public/cpp/bindings/strong_binding.h" + #include "mojo/public/cpp/system/data_pipe_utils.h" +@@ -113,6 +116,11 @@ + #include "url/scheme_host_port.h" + #include "url/url_constants.h" + ++#if BUILDFLAG(IS_CT_SUPPORTED) ++#include "components/certificate_transparency/chrome_ct_policy_enforcer.h" ++#include "services/network/public/mojom/ct_log_info.mojom.h" ++#endif ++ + #if BUILDFLAG(ENABLE_REPORTING) + #include "net/network_error_logging/network_error_logging_service.h" + #include "net/reporting/reporting_cache.h" +@@ -5566,6 +5574,72 @@ TEST_F(NetworkContextTest, BlockAllCooki + EXPECT_EQ("None", response_body); + } + ++#if BUILDFLAG(IS_CT_SUPPORTED) ++TEST_F(NetworkContextTest, CertificateTransparencyConfig) { ++ mojom::NetworkContextParamsPtr params = CreateContextParams(); ++ params->enforce_chrome_ct_policy = true; ++ params->ct_log_update_time = base::Time::Now(); ++ ++ // The log public keys do not matter for the test, so invalid keys are used. ++ // However, because the log IDs are derived from the SHA-256 hash of the log ++ // key, the log keys are generated such that qualified logs are in the form ++ // of four digits (e.g. "0000", "1111"), while disqualified logs are in the ++ // form of four letters (e.g. "AAAA", "BBBB"). ++ ++ for (int i = 0; i < 6; ++i) { ++ network::mojom::CTLogInfoPtr log_info = network::mojom::CTLogInfo::New(); ++ // Shift to ASCII '0' (0x30) ++ log_info->public_key = std::string(4, 0x30 + static_cast(i)); ++ log_info->name = std::string(4, 0x30 + static_cast(i)); ++ log_info->operated_by_google = i % 2; ++ ++ params->ct_logs.push_back(std::move(log_info)); ++ } ++ for (int i = 0; i < 3; ++i) { ++ network::mojom::CTLogInfoPtr log_info = network::mojom::CTLogInfo::New(); ++ // Shift to ASCII 'A' (0x41) ++ log_info->public_key = std::string(4, 0x41 + static_cast(i)); ++ log_info->name = std::string(4, 0x41 + static_cast(i)); ++ log_info->operated_by_google = false; ++ log_info->disqualified_at = base::TimeDelta::FromSeconds(i); ++ ++ params->ct_logs.push_back(std::move(log_info)); ++ } ++ std::unique_ptr network_context = ++ CreateContextWithParams(std::move(params)); ++ ++ net::CTPolicyEnforcer* request_enforcer = ++ network_context->url_request_context()->ct_policy_enforcer(); ++ ASSERT_TRUE(request_enforcer); ++ ++ // Completely unsafe if |enforce_chrome_ct_policy| is false. ++ certificate_transparency::ChromeCTPolicyEnforcer* policy_enforcer = ++ reinterpret_cast( ++ request_enforcer); ++ ++ EXPECT_TRUE(std::is_sorted( ++ policy_enforcer->operated_by_google_logs_for_testing().begin(), ++ policy_enforcer->operated_by_google_logs_for_testing().end())); ++ EXPECT_TRUE( ++ std::is_sorted(policy_enforcer->disqualified_logs_for_testing().begin(), ++ policy_enforcer->disqualified_logs_for_testing().end())); ++ ++ EXPECT_THAT( ++ policy_enforcer->operated_by_google_logs_for_testing(), ++ ::testing::UnorderedElementsAreArray({crypto::SHA256HashString("1111"), ++ crypto::SHA256HashString("3333"), ++ crypto::SHA256HashString("5555")})); ++ EXPECT_THAT(policy_enforcer->disqualified_logs_for_testing(), ++ ::testing::UnorderedElementsAre( ++ ::testing::Pair(crypto::SHA256HashString("AAAA"), ++ base::TimeDelta::FromSeconds(0)), ++ ::testing::Pair(crypto::SHA256HashString("BBBB"), ++ base::TimeDelta::FromSeconds(1)), ++ ::testing::Pair(crypto::SHA256HashString("CCCC"), ++ base::TimeDelta::FromSeconds(2)))); ++} ++#endif ++ + } // namespace + + } // namespace network diff -up chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom.certificate-transparency chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom --- chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 -+++ chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom 2019-09-03 11:59:48.423862022 +0200 ++++ chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom 2019-09-03 22:08:28.936786554 +0200 @@ -4,6 +4,8 @@ module network.mojom; @@ -148,7 +481,7 @@ diff -up chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom. + + // Whether or not the log should should be considered a Google Log for the + // purposes of enforcing the "Certificate Transparency in Chrome" policy. -+ bool operated_by_google; ++ bool operated_by_google = false; + + // If set, the time since the Unix Epoch when the log was disqualified. This + // is used to determine the "once or currently qualified" status of the log. @@ -157,7 +490,7 @@ diff -up chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom. }; diff -up chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom.certificate-transparency chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom --- chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 -+++ chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom 2019-09-03 11:59:48.424862032 +0200 ++++ chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom 2019-09-03 22:08:28.936786554 +0200 @@ -238,15 +238,6 @@ struct NetworkContextParams { [EnableIf=is_android] bool check_clear_text_permitted = false; From c5383dd2883385aa29924a70ec9e644fb4f86b1a Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 4 Sep 2019 10:48:30 +0200 Subject: [PATCH 0434/1449] More fixes to a backported patch for certificate transparency --- ....0.3809.132-certificate-transparency.patch | 409 ++++++++++++++++-- 1 file changed, 371 insertions(+), 38 deletions(-) diff --git a/chromium-76.0.3809.132-certificate-transparency.patch b/chromium-76.0.3809.132-certificate-transparency.patch index 51937e0..8bfbced 100644 --- a/chromium-76.0.3809.132-certificate-transparency.patch +++ b/chromium-76.0.3809.132-certificate-transparency.patch @@ -1,6 +1,73 @@ +diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager_browsertest.cc +--- chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager_browsertest.cc.certificate-transparency 2019-09-03 22:08:28.931786496 +0200 ++++ chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager_browsertest.cc 2019-09-03 22:15:24.743555759 +0200 +@@ -17,6 +17,7 @@ + #include "chrome/common/pref_names.h" + #include "chrome/test/base/in_process_browser_test.h" + #include "components/prefs/pref_service.h" ++#include "services/network/public/cpp/network_service_buildflags.h" + #include "services/network/public/mojom/network_context.mojom.h" + #include "services/network/public/mojom/network_service.mojom.h" + #include "testing/gmock/include/gmock/gmock.h" +@@ -297,3 +298,55 @@ IN_PROC_BROWSER_TEST_P(SystemNetworkCont + INSTANTIATE_TEST_SUITE_P(, + SystemNetworkContextManagerStubResolverBrowsertest, + ::testing::Values(false, true)); ++ ++class SystemNetworkContextManagerCertificateTransparencyBrowsertest ++ : public SystemNetworkContextManagerBrowsertest, ++ public testing::WithParamInterface> { ++ public: ++ SystemNetworkContextManagerCertificateTransparencyBrowsertest() { ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ GetParam()); ++ } ++ ~SystemNetworkContextManagerCertificateTransparencyBrowsertest() override { ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ base::nullopt); ++ } ++}; ++ ++#if BUILDFLAG(IS_CT_SUPPORTED) ++IN_PROC_BROWSER_TEST_P( ++ SystemNetworkContextManagerCertificateTransparencyBrowsertest, ++ CertificateTransparencyConfig) { ++ network::mojom::NetworkContextParamsPtr context_params = ++ g_browser_process->system_network_context_manager() ++ ->CreateDefaultNetworkContextParams(); ++ ++ const bool kDefault = ++#if defined(GOOGLE_CHROME_BUILD) && defined(OFFICIAL_BUILD) && \ ++ !defined(OS_ANDROID) ++ true; ++#else ++ false; ++#endif ++ ++ EXPECT_EQ(GetParam().value_or(kDefault), ++ context_params->enforce_chrome_ct_policy); ++ EXPECT_NE(GetParam().value_or(kDefault), context_params->ct_logs.empty()); ++ ++ if (GetParam().value_or(kDefault)) { ++ bool has_google_log = false; ++ bool has_disqualified_log = false; ++ for (const auto& ct_log : context_params->ct_logs) { ++ has_google_log |= ct_log->operated_by_google; ++ has_disqualified_log |= ct_log->disqualified_at.has_value(); ++ } ++ EXPECT_TRUE(has_google_log); ++ EXPECT_TRUE(has_disqualified_log); ++ } ++} ++#endif ++ ++INSTANTIATE_TEST_SUITE_P( ++ , ++ SystemNetworkContextManagerCertificateTransparencyBrowsertest, ++ ::testing::Values(base::nullopt, true, false)); diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc --- chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc.certificate-transparency 2019-08-26 21:02:05.000000000 +0200 -+++ chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc 2019-09-03 12:01:33.004949320 +0200 ++++ chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc 2019-09-03 22:13:26.451198970 +0200 @@ -4,11 +4,13 @@ #include "chrome/browser/net/system_network_context_manager.h" @@ -23,52 +90,205 @@ diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manage #include "mojo/public/cpp/bindings/associated_interface_ptr.h" #include "net/dns/public/util.h" #include "net/net_buildflags.h" -@@ -686,15 +689,41 @@ SystemNetworkContextManager::CreateDefau +@@ -81,6 +84,20 @@ + + namespace { + ++constexpr bool kCertificateTransparencyEnabled = ++#if defined(GOOGLE_CHROME_BUILD) && defined(OFFICIAL_BUILD) && \ ++ !defined(OS_ANDROID) ++ // Certificate Transparency is only enabled if: ++ // - Desktop (!OS_ANDROID); OS_IOS does not use this file ++ // - base::GetBuildTime() is deterministic to the source (OFFICIAL_BUILD) ++ // - The build in reliably updatable (GOOGLE_CHROME_BUILD) ++ true; ++#else ++ false; ++#endif ++ ++bool g_enable_certificate_transparency = kCertificateTransparencyEnabled; ++ + // The global instance of the SystemNetworkContextmanager. + SystemNetworkContextManager* g_system_network_context_manager = nullptr; + +@@ -686,14 +703,35 @@ SystemNetworkContextManager::CreateDefau bool http_09_on_non_default_ports_enabled = false; #if !defined(OS_ANDROID) - // CT is only enabled on Desktop platforms for now. +- network_context_params->enforce_chrome_ct_policy = true; +- for (const auto& ct_log : certificate_transparency::GetKnownLogs()) { +- // TODO(rsleevi): https://crbug.com/702062 - Remove this duplication. +- network::mojom::CTLogInfoPtr log_info = network::mojom::CTLogInfo::New(); +- log_info->public_key = std::string(ct_log.log_key, ct_log.log_key_length); +- log_info->name = ct_log.log_name; +- network_context_params->ct_logs.push_back(std::move(log_info)); + -+#if BUILDFLAG(GOOGLE_CHROME_BRANDING) && defined(OFFICIAL_BUILD) && \ -+ !defined(OS_IOS) -+ // Certificate Transparency is only enabled if: -+ // - Desktop (!OS_ANDROID, !OS_IOS) -+ // - base::GetBuildTime() is deterministic to the source (OFFICIAL_BUILD) -+ // - The build in reliably updatable (GOOGLE_CHROME_BRANDING) - network_context_params->enforce_chrome_ct_policy = true; -+ network_context_params->ct_log_update_time = base::GetBuildTime(); ++ if (g_enable_certificate_transparency) { ++ network_context_params->enforce_chrome_ct_policy = true; ++ network_context_params->ct_log_update_time = base::GetBuildTime(); + -+ std::vector operated_by_google_logs = -+ certificate_transparency::GetLogsOperatedByGoogle(); -+ std::vector> disqualified_logs = -+ certificate_transparency::GetDisqualifiedLogs(); - for (const auto& ct_log : certificate_transparency::GetKnownLogs()) { - // TODO(rsleevi): https://crbug.com/702062 - Remove this duplication. - network::mojom::CTLogInfoPtr log_info = network::mojom::CTLogInfo::New(); - log_info->public_key = std::string(ct_log.log_key, ct_log.log_key_length); - log_info->name = ct_log.log_name; ++ std::vector operated_by_google_logs = ++ certificate_transparency::GetLogsOperatedByGoogle(); ++ std::vector> disqualified_logs = ++ certificate_transparency::GetDisqualifiedLogs(); ++ for (const auto& ct_log : certificate_transparency::GetKnownLogs()) { ++ // TODO(rsleevi): https://crbug.com/702062 - Remove this duplication. ++ network::mojom::CTLogInfoPtr log_info = network::mojom::CTLogInfo::New(); ++ log_info->public_key = std::string(ct_log.log_key, ct_log.log_key_length); ++ log_info->name = ct_log.log_name; + -+ std::string log_id = crypto::SHA256HashString(log_info->public_key); -+ log_info->operated_by_google = -+ std::binary_search(std::begin(operated_by_google_logs), -+ std::end(operated_by_google_logs), log_id); -+ auto it = std::lower_bound( -+ std::begin(disqualified_logs), std::end(disqualified_logs), log_id, -+ [](const auto& disqualified_log, const std::string& log_id) { -+ return disqualified_log.first < log_id; -+ }); -+ if (it != std::end(disqualified_logs) && it->first == log_id) { -+ log_info->disqualified_at = it->second; ++ std::string log_id = crypto::SHA256HashString(log_info->public_key); ++ log_info->operated_by_google = ++ std::binary_search(std::begin(operated_by_google_logs), ++ std::end(operated_by_google_logs), log_id); ++ auto it = std::lower_bound( ++ std::begin(disqualified_logs), std::end(disqualified_logs), log_id, ++ [](const auto& disqualified_log, const std::string& log_id) { ++ return disqualified_log.first < log_id; ++ }); ++ if (it != std::end(disqualified_logs) && it->first == log_id) { ++ log_info->disqualified_at = it->second; ++ } ++ network_context_params->ct_logs.push_back(std::move(log_info)); + } - network_context_params->ct_logs.push_back(std::move(log_info)); } -+#endif const base::Value* value = - g_browser_process->policy_service() +@@ -756,6 +794,12 @@ SystemNetworkContextManager::GetHttpAuth + return CreateHttpAuthDynamicParams(g_browser_process->local_state()); + } + ++void SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ base::Optional enabled) { ++ g_enable_certificate_transparency = ++ enabled.value_or(kCertificateTransparencyEnabled); ++} ++ + network::mojom::NetworkContextParamsPtr + SystemNetworkContextManager::CreateNetworkContextParams() { + // TODO(mmenke): Set up parameters here (in memory cookie store, etc). +diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.h.certificate-transparency chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.h +--- chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.h.certificate-transparency 2019-08-26 21:02:05.000000000 +0200 ++++ chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.h 2019-09-03 22:08:28.931786496 +0200 +@@ -158,6 +158,12 @@ class SystemNetworkContextManager { + static network::mojom::HttpAuthDynamicParamsPtr + GetHttpAuthDynamicParamsForTesting(); + ++ // Enables Certificate Transparency and enforcing the Chrome Certificate ++ // Transparency Policy. For test use only. Use base::nullopt_t to reset to ++ // the default state. ++ static void SetEnableCertificateTransparencyForTesting( ++ base::Optional enabled); ++ + private: + class URLLoaderFactoryForSystem; + +diff -up chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc +--- chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc.certificate-transparency 2019-08-26 21:02:05.000000000 +0200 ++++ chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc 2019-09-03 22:08:28.932786508 +0200 +@@ -4834,7 +4834,7 @@ IN_PROC_BROWSER_TEST_P(SSLPolicyTestComm + browser()->tab_strip_model()->GetActiveWebContents()->GetTitle()); + } + +-IN_PROC_BROWSER_TEST_F(PolicyTest, ++IN_PROC_BROWSER_TEST_F(CertificateTransparencyPolicyTest, + CertificateTransparencyEnforcementDisabledForCas) { + net::EmbeddedTestServer https_server_ok(net::EmbeddedTestServer::TYPE_HTTPS); + https_server_ok.SetSSLConfig(net::EmbeddedTestServer::CERT_OK); +diff -up chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc +--- chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc.certificate-transparency 2019-08-26 21:02:07.000000000 +0200 ++++ chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc 2019-09-03 22:08:28.932786508 +0200 +@@ -8,6 +8,7 @@ + #include "base/callback.h" + #include "base/run_loop.h" + #include "base/test/scoped_feature_list.h" ++#include "chrome/browser/net/system_network_context_manager.h" + #include "chrome/browser/profiles/profile.h" + #include "chrome/browser/ssl/cert_verifier_browser_test.h" + #include "chrome/browser/ui/browser.h" +@@ -27,7 +28,17 @@ namespace { + // received by a server. + class ExpectCTBrowserTest : public CertVerifierBrowserTest { + public: +- ExpectCTBrowserTest() : CertVerifierBrowserTest() {} ++ ExpectCTBrowserTest() : CertVerifierBrowserTest() { ++ // Expect-CT reporting depends on actually enforcing Certificate ++ // Transparency. ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ true); ++ } ++ ++ ~ExpectCTBrowserTest() override { ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ base::nullopt); ++ } + + void SetUpOnMainThread() override { + run_loop_ = std::make_unique(); +diff -up chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_browsertest.cc +--- chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_browsertest.cc.certificate-transparency 2019-08-26 21:02:07.000000000 +0200 ++++ chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_browsertest.cc 2019-09-03 22:08:28.932786508 +0200 +@@ -457,6 +457,13 @@ class SecurityStateTabHelperTest : publi + SecurityStateTabHelperTest() + : https_server_(net::EmbeddedTestServer::TYPE_HTTPS) { + https_server_.ServeFilesFromSourceDirectory(GetChromeTestDataDir()); ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ true); ++ } ++ ++ ~SecurityStateTabHelperTest() override { ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ base::nullopt); + } + + void SetUpOnMainThread() override { +diff -up chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc +--- chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc.certificate-transparency 2019-08-26 21:02:07.000000000 +0200 ++++ chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc 2019-09-03 22:08:28.934786531 +0200 +@@ -2008,8 +2008,14 @@ class CertificateTransparencySSLUITest : + public: + CertificateTransparencySSLUITest() + : CertVerifierBrowserTest(), +- https_server_(net::EmbeddedTestServer::TYPE_HTTPS) {} +- ~CertificateTransparencySSLUITest() override {} ++ https_server_(net::EmbeddedTestServer::TYPE_HTTPS) { ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ true); ++ } ++ ~CertificateTransparencySSLUITest() override { ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ base::nullopt); ++ } + + void SetUpOnMainThread() override { + CertVerifierBrowserTest::SetUpOnMainThread(); +diff -up chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_policy_enforcer.h.certificate-transparency chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_policy_enforcer.h +--- chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_policy_enforcer.h.certificate-transparency 2019-08-26 21:02:14.000000000 +0200 ++++ chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_policy_enforcer.h 2019-09-03 22:08:28.934786531 +0200 +@@ -45,6 +45,19 @@ class ChromeCTPolicyEnforcer : public ne + + void SetClockForTesting(const base::Clock* clock) { clock_ = clock; } + ++ // TODO(https://crbug.com/999240): These are exposed to allow end-to-end ++ // testing by higher layers (i.e. that the ChromeCTPolicyEnforcer is ++ // correctly constructed). When either this issue or https://crbug.com/848277 ++ // are fixed, the configuration can be tested independently, and these can ++ // be removed. ++ const std::vector& operated_by_google_logs_for_testing() { ++ return operated_by_google_logs_; ++ } ++ const std::vector>& ++ disqualified_logs_for_testing() { ++ return disqualified_logs_; ++ } ++ + private: + // Returns true if the log identified by |log_id| (the SHA-256 hash of the + // log's DER-encoded SPKI) has been disqualified, and sets diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate-transparency chromium-76.0.3809.132/services/network/network_context.cc --- chromium-76.0.3809.132/services/network/network_context.cc.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 -+++ chromium-76.0.3809.132/services/network/network_context.cc 2019-09-03 12:04:01.983890928 +0200 ++++ chromium-76.0.3809.132/services/network/network_context.cc 2019-09-03 22:17:27.977834857 +0200 @@ -35,6 +35,7 @@ #include "components/prefs/pref_registry_simple.h" #include "components/prefs/pref_service.h" @@ -115,12 +335,16 @@ diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate- scoped_refptr log_verifier = net::CTLogVerifier::Create(log->public_key, log->name); if (!log_verifier) { -@@ -1924,6 +1927,13 @@ URLRequestContextOwner NetworkContext::A +@@ -1924,6 +1927,17 @@ URLRequestContextOwner NetworkContext::A ct_verifier->AddLogs(ct_logs); builder->set_ct_verifier(std::move(ct_verifier)); } + + if (params_->enforce_chrome_ct_policy) { ++ std::sort(std::begin(operated_by_google_logs), ++ std::end(operated_by_google_logs)); ++ std::sort(std::begin(disqualified_logs), std::end(disqualified_logs)); ++ + builder->set_ct_policy_enforcer( + std::make_unique( + params_->ct_log_update_time, disqualified_logs, @@ -129,9 +353,118 @@ diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate- #endif // BUILDFLAG(IS_CT_SUPPORTED) const base::CommandLine* command_line = +diff -up chromium-76.0.3809.132/services/network/network_context_unittest.cc.certificate-transparency chromium-76.0.3809.132/services/network/network_context_unittest.cc +--- chromium-76.0.3809.132/services/network/network_context_unittest.cc.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 ++++ chromium-76.0.3809.132/services/network/network_context_unittest.cc 2019-09-03 22:20:22.382888089 +0200 +@@ -2,6 +2,7 @@ + // Use of this source code is governed by a BSD-style license that can be + // found in the LICENSE file. + ++#include + #include + #include + #include +@@ -38,10 +39,12 @@ + #include "base/threading/thread_task_runner_handle.h" + #include "base/time/default_clock.h" + #include "base/time/default_tick_clock.h" ++#include "base/time/time.h" + #include "build/build_config.h" + #include "components/network_session_configurator/browser/network_session_configurator.h" + #include "components/network_session_configurator/common/network_switches.h" + #include "components/prefs/testing_pref_service.h" ++#include "crypto/sha2.h" + #include "mojo/public/cpp/bindings/interface_request.h" + #include "mojo/public/cpp/bindings/strong_binding.h" + #include "mojo/public/cpp/system/data_pipe_utils.h" +@@ -113,6 +116,11 @@ + #include "url/scheme_host_port.h" + #include "url/url_constants.h" + ++#if BUILDFLAG(IS_CT_SUPPORTED) ++#include "components/certificate_transparency/chrome_ct_policy_enforcer.h" ++#include "services/network/public/mojom/ct_log_info.mojom.h" ++#endif ++ + #if BUILDFLAG(ENABLE_REPORTING) + #include "net/network_error_logging/network_error_logging_service.h" + #include "net/reporting/reporting_cache.h" +@@ -5566,6 +5574,72 @@ TEST_F(NetworkContextTest, BlockAllCooki + EXPECT_EQ("None", response_body); + } + ++#if BUILDFLAG(IS_CT_SUPPORTED) ++TEST_F(NetworkContextTest, CertificateTransparencyConfig) { ++ mojom::NetworkContextParamsPtr params = CreateContextParams(); ++ params->enforce_chrome_ct_policy = true; ++ params->ct_log_update_time = base::Time::Now(); ++ ++ // The log public keys do not matter for the test, so invalid keys are used. ++ // However, because the log IDs are derived from the SHA-256 hash of the log ++ // key, the log keys are generated such that qualified logs are in the form ++ // of four digits (e.g. "0000", "1111"), while disqualified logs are in the ++ // form of four letters (e.g. "AAAA", "BBBB"). ++ ++ for (int i = 0; i < 6; ++i) { ++ network::mojom::CTLogInfoPtr log_info = network::mojom::CTLogInfo::New(); ++ // Shift to ASCII '0' (0x30) ++ log_info->public_key = std::string(4, 0x30 + static_cast(i)); ++ log_info->name = std::string(4, 0x30 + static_cast(i)); ++ log_info->operated_by_google = i % 2; ++ ++ params->ct_logs.push_back(std::move(log_info)); ++ } ++ for (int i = 0; i < 3; ++i) { ++ network::mojom::CTLogInfoPtr log_info = network::mojom::CTLogInfo::New(); ++ // Shift to ASCII 'A' (0x41) ++ log_info->public_key = std::string(4, 0x41 + static_cast(i)); ++ log_info->name = std::string(4, 0x41 + static_cast(i)); ++ log_info->operated_by_google = false; ++ log_info->disqualified_at = base::TimeDelta::FromSeconds(i); ++ ++ params->ct_logs.push_back(std::move(log_info)); ++ } ++ std::unique_ptr network_context = ++ CreateContextWithParams(std::move(params)); ++ ++ net::CTPolicyEnforcer* request_enforcer = ++ network_context->url_request_context()->ct_policy_enforcer(); ++ ASSERT_TRUE(request_enforcer); ++ ++ // Completely unsafe if |enforce_chrome_ct_policy| is false. ++ certificate_transparency::ChromeCTPolicyEnforcer* policy_enforcer = ++ reinterpret_cast( ++ request_enforcer); ++ ++ EXPECT_TRUE(std::is_sorted( ++ policy_enforcer->operated_by_google_logs_for_testing().begin(), ++ policy_enforcer->operated_by_google_logs_for_testing().end())); ++ EXPECT_TRUE( ++ std::is_sorted(policy_enforcer->disqualified_logs_for_testing().begin(), ++ policy_enforcer->disqualified_logs_for_testing().end())); ++ ++ EXPECT_THAT( ++ policy_enforcer->operated_by_google_logs_for_testing(), ++ ::testing::UnorderedElementsAreArray({crypto::SHA256HashString("1111"), ++ crypto::SHA256HashString("3333"), ++ crypto::SHA256HashString("5555")})); ++ EXPECT_THAT(policy_enforcer->disqualified_logs_for_testing(), ++ ::testing::UnorderedElementsAre( ++ ::testing::Pair(crypto::SHA256HashString("AAAA"), ++ base::TimeDelta::FromSeconds(0)), ++ ::testing::Pair(crypto::SHA256HashString("BBBB"), ++ base::TimeDelta::FromSeconds(1)), ++ ::testing::Pair(crypto::SHA256HashString("CCCC"), ++ base::TimeDelta::FromSeconds(2)))); ++} ++#endif ++ + } // namespace + + } // namespace network diff -up chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom.certificate-transparency chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom --- chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 -+++ chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom 2019-09-03 11:59:48.423862022 +0200 ++++ chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom 2019-09-03 22:08:28.936786554 +0200 @@ -4,6 +4,8 @@ module network.mojom; @@ -148,7 +481,7 @@ diff -up chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom. + + // Whether or not the log should should be considered a Google Log for the + // purposes of enforcing the "Certificate Transparency in Chrome" policy. -+ bool operated_by_google; ++ bool operated_by_google = false; + + // If set, the time since the Unix Epoch when the log was disqualified. This + // is used to determine the "once or currently qualified" status of the log. @@ -157,7 +490,7 @@ diff -up chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom. }; diff -up chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom.certificate-transparency chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom --- chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 -+++ chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom 2019-09-03 11:59:48.424862032 +0200 ++++ chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom 2019-09-03 22:08:28.936786554 +0200 @@ -238,15 +238,6 @@ struct NetworkContextParams { [EnableIf=is_android] bool check_clear_text_permitted = false; From 2c4faaedb3611d1d5cbf09d7e277a7586b1e9084 Mon Sep 17 00:00:00 2001 From: Gwyn Ciesla Date: Thu, 5 Sep 2019 15:46:11 -0500 Subject: [PATCH 0435/1449] "Adding package.cfg file" --- package.cfg | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 package.cfg diff --git a/package.cfg b/package.cfg new file mode 100644 index 0000000..66ea79d --- /dev/null +++ b/package.cfg @@ -0,0 +1,2 @@ +[koji] +targets = epel8 epel8-playground \ No newline at end of file From e9192241d8d4cd7fc33052dcb2d9a1ebf95cdaa6 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 6 Sep 2019 10:44:11 -0400 Subject: [PATCH 0436/1449] lots of spec cleanups, support for epel8, remove nacl for good, apply freeworld fixes --- chromium.spec | 246 +++++++++----------------------------------------- 1 file changed, 41 insertions(+), 205 deletions(-) diff --git a/chromium.spec b/chromium.spec index 1471b94..b870100 100644 --- a/chromium.spec +++ b/chromium.spec @@ -70,25 +70,6 @@ # https://www.chromium.org/developers/testing/addresssanitizer %global asan 0 -# nacl/pnacl are soon to be dead. We're just killing them off early. -%global killnacl 1 - -%if 0%{?killnacl} - %global nacl 0 - %global nonacl 1 -%else -# TODO: Try arm (nacl disabled) -%if 0%{?fedora} - %ifarch i686 - %global nacl 0 - %global nonacl 1 - %else - %global nacl 1 - %global nonacl 0 - %endif -%endif -%endif - %if 0 # Chromium's fork of ICU is now something we can't unbundle. # This is left here to ease the change if that ever switches. @@ -171,13 +152,14 @@ BuildRequires: libicu-devel >= 5.4 %global majorversion 76 %if %{freeworld} -Name: chromium%{chromium_channel}%{?freeworld:-freeworld} +Name: chromium%{chromium_channel}%{?freeworld:-libs-media-freeworld} +Summary: Chromium media libraries built with all possible codecs %else Name: chromium%{chromium_channel} +Summary: A WebKit (Blink) powered web browser %endif Version: %{majorversion}.0.3809.132 -Release: 2%{?dist} -Summary: A WebKit (Blink) powered web browser +Release: 3%{?dist} Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -318,16 +300,6 @@ Patch101: chromium-75.0.3770.100-epel7-stdc++.patch # el7 only patch Patch102: chromium-76.0.3809.100-el7-noexcept.patch -# In file included from ../linux/directory.c:21: -# In file included from ../../../../native_client/src/nonsfi/linux/abi_conversion.h:20: -# ../../../../native_client/src/nonsfi/linux/linux_syscall_structs.h:44:13: error: GNU-style inline assembly is disabled -# __asm__ __volatile__("mov %%gs, %0" : "=r"(gs)); -# ^ -# 1 error generated. -Patch200: chromium-47.0.2526.80-pnacl-fgnu-inline-asm.patch -# Ignore broken nacl open fd counter -Patch201: chromium-47.0.2526.80-nacl-ignore-broken-fd-counter.patch - # Enable VAAPI support on Linux # NOTE: This patch will never land upstream Patch202: enable-vaapi.patch @@ -387,9 +359,6 @@ BuildRequires: flex BuildRequires: fontconfig-devel BuildRequires: GConf2-devel BuildRequires: glib2-devel -%if 0%{?fedora} <= 27 -BuildRequires: gnome-keyring-devel -%endif BuildRequires: glibc-devel BuildRequires: gperf %if 0%{?bundleharfbuzz} @@ -435,24 +404,6 @@ BuildRequires: libappstream-glib # gn needs these BuildRequires: libstdc++-static BuildRequires: libstdc++-devel, openssl-devel -%if 0%{?nacl} -BuildRequires: nacl-gcc, nacl-binutils, nacl-newlib -BuildRequires: nacl-arm-gcc, nacl-arm-binutils, nacl-arm-newlib -# pNaCl needs this monster -# It's possible that someday this dep will stabilize, but -# right now, it needs to be updated everytime chromium bumps -# a major version. -BuildRequires: chromium-native_client >= 52.0.2743.82 -BuildRequires: clang -BuildRequires: llvm -%ifarch x86_64 -# Really, this is what we want: -# BuildRequires: glibc-devel(x86-32) libgcc(x86-32) -# But, koji only offers glibc32. Maybe that's enough. -# This BR will pull in either glibc.i686 or glibc32. -BuildRequires: /lib/libc.so.6 /usr/lib/libc.so -%endif -%endif # Fedora tries to use system libs whenever it can. BuildRequires: bzip2-devel BuildRequires: dbus-glib-devel @@ -550,7 +501,9 @@ BuildRequires: re2-devel >= 20160401 BuildRequires: speech-dispatcher-devel BuildRequires: yasm BuildRequires: zlib-devel +%if 0%{?rhel} < 8 BuildRequires: pkgconfig(gnome-keyring-1) +%endif # remote desktop needs this BuildRequires: pam-devel BuildRequires: systemd @@ -558,7 +511,7 @@ BuildRequires: systemd %if %{freeworld} # dont need fonts for this %else -%if 0%{?rhel} == 7 +%if 0%{?rhel} >= 7 Source100: https://github.com/google/fonts/blob/master/apache/arimo/Arimo-Bold.ttf Source101: https://github.com/google/fonts/blob/master/apache/arimo/Arimo-BoldItalic.ttf Source102: https://github.com/google/fonts/blob/master/apache/arimo/Arimo-Italic.ttf @@ -571,12 +524,15 @@ Source108: https://github.com/google/fonts/blob/master/apache/tinos/Tinos-Bold.t Source109: https://github.com/google/fonts/blob/master/apache/tinos/Tinos-BoldItalic.ttf Source110: https://github.com/google/fonts/blob/master/apache/tinos/Tinos-Italic.ttf Source111: https://github.com/google/fonts/blob/master/apache/tinos/Tinos-Regular.ttf +%else +BuildRequires: google-croscore-arimo-fonts +BuildRequires: google-croscore-cousine-fonts +BuildRequires: google-croscore-tinos-fonts +%endif +%if 0%{?rhel} == 7 Source112: https://releases.pagure.org/lohit/lohit-gurmukhi-ttf-2.91.2.tar.gz Source113: https://noto-website-2.storage.googleapis.com/pkgs/NotoSansCJKjp-hinted.zip %else -BuildRequires: google-croscore-arimo-fonts -BuildRequires: google-croscore-cousine-fonts -BuildRequires: google-croscore-tinos-fonts BuildRequires: google-noto-sans-cjk-jp-fonts BuildRequires: lohit-gurmukhi-fonts %endif @@ -732,8 +688,22 @@ Provides: bundled(xdg-user-dirs) Requires(post): /usr/sbin/semanage Requires(post): /usr/sbin/restorecon +%if %{freeworld} +Provides: chromium-libs-media = %{version}-%{release} +Provides: chromium-libs-media%{_isa} = %{version}-%{release} +Requires: chromium-libs%{_isa} = %{version} +Requires(post): %{_sbindir}/update-alternatives +Requires(preun): %{_sbindir}/update-alternatives + +%description +Chromium media libraries built with all possible codecs. Chromium is an +open-source web browser, powered by WebKit (Blink). This package replaces +the default chromium-libs-media package, which is limited in what it +can include. +%else %description Chromium is an open-source web browser, powered by WebKit (Blink). +%endif %package common Summary: Files needed for both the headless_shell and full Chromium @@ -760,19 +730,6 @@ Requires(preun): %{_sbindir}/update-alternatives Shared libraries used by chromium (and chrome-remote-desktop). %if %{freeworld} -%package -n chromium-libs-media-freeworld -Summary: Chromium media libraries built with all possible codecs -Provides: chromium-libs-media = %{version}-%{release} -Provides: chromium-libs-media%{_isa} = %{version}-%{release} -Requires: chromium-libs%{_isa} = %{version} -Requires(post): %{_sbindir}/update-alternatives -Requires(preun): %{_sbindir}/update-alternatives - -%description -n chromium-libs-media-freeworld -Chromium media libraries built with all possible codecs. Chromium is an -open-source web browser, powered by WebKit (Blink). This package replaces -the default chromium-libs-media package, which is limited in what it -can include. %else %package libs-media Summary: Shared libraries used by the chromium media subsystem @@ -901,12 +858,6 @@ udev. %patch58 -R -p1 %endif -# Feature specific patches -%if ! 0%{?killnacl} -%patch200 -p1 -b .gnu-inline -%patch201 -p1 -b .ignore-fd-count -%endif - %if %{use_vaapi} %patch202 -p1 -b .vaapi %ifarch i686 @@ -935,101 +886,6 @@ export RANLIB="ranlib" rm -rf buildtools/third_party/libc++/BUILD.gn -%if 0%{?nacl} -# prep the nacl tree -mkdir -p out/Release/gen/sdk/linux_x86/nacl_x86_newlib -cp -a --no-preserve=context /usr/%{_arch}-nacl/* out/Release/gen/sdk/linux_x86/nacl_x86_newlib - -mkdir -p out/Release/gen/sdk/linux_x86/nacl_arm_newlib -cp -a --no-preserve=context /usr/arm-nacl/* out/Release/gen/sdk/linux_x86/nacl_arm_newlib - -# Not sure if we need this or not, but better safe than sorry. -pushd out/Release/gen/sdk/linux_x86 -ln -s nacl_x86_newlib nacl_x86_newlib_raw -ln -s nacl_arm_newlib nacl_arm_newlib_raw -popd - -mkdir -p out/Release/gen/sdk/linux_x86/nacl_x86_newlib/bin -pushd out/Release/gen/sdk/linux_x86/nacl_x86_newlib/bin -ln -s /usr/bin/x86_64-nacl-gcc gcc -ln -s /usr/bin/x86_64-nacl-gcc x86_64-nacl-gcc -ln -s /usr/bin/x86_64-nacl-g++ g++ -ln -s /usr/bin/x86_64-nacl-g++ x86_64-nacl-g++ -# ln -s /usr/bin/x86_64-nacl-ar ar -ln -s /usr/bin/x86_64-nacl-ar x86_64-nacl-ar -# ln -s /usr/bin/x86_64-nacl-as as -ln -s /usr/bin/x86_64-nacl-as x86_64-nacl-as -# ln -s /usr/bin/x86_64-nacl-ranlib ranlib -ln -s /usr/bin/x86_64-nacl-ranlib x86_64-nacl-ranlib -# Cleanups -rm addr2line -ln -s /usr/bin/x86_64-nacl-addr2line addr2line -rm c++filt -ln -s /usr/bin/x86_64-nacl-c++filt c++filt -rm gprof -ln -s /usr/bin/x86_64-nacl-gprof gprof -rm readelf -ln -s /usr/bin/x86_64-nacl-readelf readelf -rm size -ln -s /usr/bin/x86_64-nacl-size size -rm strings -ln -s /usr/bin/x86_64-nacl-strings strings -popd - -mkdir -p out/Release/gen/sdk/linux_x86/nacl_arm_newlib/bin -pushd out/Release/gen/sdk/linux_x86/nacl_arm_newlib/bin -ln -s /usr/bin/arm-nacl-gcc gcc -ln -s /usr/bin/arm-nacl-gcc arm-nacl-gcc -ln -s /usr/bin/arm-nacl-g++ g++ -ln -s /usr/bin/arm-nacl-g++ arm-nacl-g++ -ln -s /usr/bin/arm-nacl-ar arm-nacl-ar -ln -s /usr/bin/arm-nacl-as arm-nacl-as -ln -s /usr/bin/arm-nacl-ranlib arm-nacl-ranlib -popd - -touch out/Release/gen/sdk/linux_x86/nacl_x86_newlib/stamp.untar out/Release/gen/sdk/linux_x86/nacl_x86_newlib/stamp.prep -touch out/Release/gen/sdk/linux_x86/nacl_x86_newlib/nacl_x86_newlib.json -touch out/Release/gen/sdk/linux_x86/nacl_arm_newlib/stamp.untar out/Release/gen/sdk/linux_x86/nacl_arm_newlib/stamp.prep -touch out/Release/gen/sdk/linux_x86/nacl_arm_newlib/nacl_arm_newlib.json - -pushd out/Release/gen/sdk/linux_x86/ -mkdir -p pnacl_newlib pnacl_translator -# Might be able to do symlinks here, but eh. -cp -a --no-preserve=context /usr/pnacl_newlib/* pnacl_newlib/ -cp -a --no-preserve=context /usr/pnacl_translator/* pnacl_translator/ -for i in lib/libc.a lib/libc++.a lib/libg.a lib/libm.a; do - /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/x86_64_bc-nacl/$i - /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/i686_bc-nacl/$i - /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/le32-nacl/$i -done - -for i in lib/libpthread.a lib/libnacl.a; do - /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/le32-nacl/$i -done - -for i in lib/clang/3.7.0/lib/x86_64_bc-nacl/libpnaclmm.a lib/clang/3.7.0/lib/i686_bc-nacl/libpnaclmm.a; do - /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/$i -done - -for i in lib/clang/3.7.0/lib/le32-nacl/libpnaclmm.a lib/clang/3.7.0/lib/le32-nacl/libgcc.a; do - /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/$i -done - -popd - -mkdir -p native_client/toolchain/.tars/linux_x86 -touch native_client/toolchain/.tars/linux_x86/pnacl_translator.json - -pushd native_client/toolchain -ln -s ../../out/Release/gen/sdk/linux_x86 linux_x86 -popd - -mkdir -p third_party/llvm-build/Release+Asserts/bin -pushd third_party/llvm-build/Release+Asserts/bin -ln -s /usr/bin/clang clang -popd -%endif - # Unpack fonts %if %{freeworld} # no font fun needed. @@ -1044,7 +900,7 @@ rm -rf MuktiNarrow0.94 cp %{SOURCE16} . cp %{SOURCE17} . cp %{SOURCE18} . -%if 0%{?rhel} == 7 +%if 0%{?rhel} >= 7 cp %{SOURCE100} . cp %{SOURCE101} . cp %{SOURCE102} . @@ -1057,14 +913,17 @@ cp %{SOURCE108} . cp %{SOURCE109} . cp %{SOURCE110} . cp %{SOURCE111} . +%else +cp -a /usr/share/fonts/google-croscore/Arimo-*.ttf . +cp -a /usr/share/fonts/google-croscore/Cousine-*.ttf . +cp -a /usr/share/fonts/google-croscore/Tinos-*.ttf . +%endif +%if 0%{?rhel} == 7 tar xf %{SOURCE112} mv lohit-gurmukhi-ttf-2.91.2/Lohit-Gurmukhi.ttf . rm -rf lohit-gurmukhi-ttf-2.91.2 unzip %{SOURCE113} %else -cp -a /usr/share/fonts/google-croscore/Arimo-*.ttf . -cp -a /usr/share/fonts/google-croscore/Cousine-*.ttf . -cp -a /usr/share/fonts/google-croscore/Tinos-*.ttf . cp -a /usr/share/fonts/lohit-gurmukhi/Lohit-Gurmukhi.ttf . cp -a /usr/share/fonts/google-noto-cjk/NotoSansCJKjp-Regular.otf . %endif @@ -1100,9 +959,7 @@ export CHROMIUM_CORE_GN_DEFINES CHROMIUM_BROWSER_GN_DEFINES="" CHROMIUM_BROWSER_GN_DEFINES+=' use_gio=true use_pulseaudio=true icu_use_data_file=true' -%if 0%{?nonacl} CHROMIUM_BROWSER_GN_DEFINES+=' enable_nacl=false' -%endif %if 0%{?shared} CHROMIUM_BROWSER_GN_DEFINES+=' is_component_ffmpeg=true is_component_build=true' %else @@ -1264,9 +1121,6 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/libwebm' \ 'third_party/libwebp' \ 'third_party/libyuv' \ -%if 0%{?nacl} - 'third_party/llvm-build' \ -%endif 'third_party/lss' \ 'third_party/lzma_sdk' \ %if 0%{?bundlepylibs} @@ -1494,10 +1348,8 @@ pushd remoting # ../../depot_tools/ninja -C ../%{target} -vvv remoting_me2me_host remoting_start_host remoting_it2me_native_messaging_host remoting_me2me_native_messaging_host remoting_native_messaging_manifests remoting_resources ../../depot_tools/ninja -C ../%{remotingtarget} -vvv remoting_all %if 0%{?build_remoting_app} -%if 0%{?nacl} GOOGLE_CLIENT_ID_REMOTING_IDENTITY_API=%{chromoting_client_id} ../../depot_tools/ninja -vv -C ../out/Release/ remoting_webapp %endif -%endif popd %endif @@ -1544,14 +1396,7 @@ mkdir -p %{buildroot}%{_mandir}/man1/ pushd %{target} cp -a *.pak locales resources icudtl.dat %{buildroot}%{chromium_path} -%if 0%{?nacl} -cp -a nacl_helper* *.nexe pnacl tls_edit %{buildroot}%{chromium_path} -chmod -x %{buildroot}%{chromium_path}/nacl_helper_bootstrap* *.nexe -%endif # Reasonably sure we don't need this anymore. Chrome doesn't include it. -%if 0 -cp -a protoc pyproto %{buildroot}%{chromium_path} -%endif %ifarch x86_64 i686 aarch64 cp -a swiftshader %{buildroot}%{chromium_path} %endif @@ -1630,10 +1475,8 @@ ln -s system-auth chrome-remote-desktop popd %if 0%{?build_remoting_app} -%if 0%{?nacl} cp -a remoting_client_plugin_newlib.* %{buildroot}%{chromium_path} %endif -%endif %if %{build_headless} pushd %{headlesstarget} @@ -1704,7 +1547,7 @@ if st and st.type == "link" then end %if %{freeworld} -%posttrans -n chromium-libs-media-freeworld +%posttrans %{_sbindir}/update-alternatives --install \ %{_libdir}/chromium-browser/libffmpeg.so libffmpeg.so \ %{_libdir}/chromium-browser/libffmpeg.so.freeworld 20 \ @@ -1715,7 +1558,7 @@ end --slave %{_libdir}/chromium-browser/libmedia.so.TOC libmedia.so.TOC \ %{_libdir}/chromium-browser/libmedia.so.TOC.freeworld -%preun -n chromium-libs-media-freeworld +%preun if [ $1 = 0 ]; then %{_sbindir}/alternatives --remove libffmpeg.so \ %{_libdir}/chromium-browser/libffmpeg.so.freeworld @@ -1775,16 +1618,7 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %ifarch x86_64 i686 aarch64 %{chromium_path}/swiftshader/ %endif -%if 0%{?nacl} -%{chromium_path}/nacl_helper* -%{chromium_path}/*.nexe -%{chromium_path}/pnacl/ -%{chromium_path}/tls_edit -%endif %dir %{chromium_path}/PepperFlash/ -%if 0 -%{chromium_path}/protoc -%endif # %%{chromium_path}/remoting_locales/ # %%{chromium_path}/pseudo_locales/ # %%{chromium_path}/plugins/ @@ -1895,10 +1729,8 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{_unitdir}/chrome-remote-desktop@.service /var/lib/chrome-remote-desktop/ %if 0%{?build_remoting_app} -%if 0%{?nacl} %{chromium_path}/remoting_client_plugin_newlib.* %endif -%endif %files -n chromedriver %doc AUTHORS @@ -1910,7 +1742,7 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %if 0%{?shared} %if %{freeworld} -%files -n chromium-libs-media-freeworld +%files %else %files libs-media %endif @@ -1922,6 +1754,10 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Fri Sep 6 2019 Tom Callaway - 76.0.3809.132-3 +- spec cleanups and changes to make EPEL8 try to build +- freeworld changes from Nicolas Chauvet + * Tue Sep 03 2019 Tomas Popela - 76.0.3809.132-2 - Backport patch to fix certificate transparency From 911f7b2ea074e200c79a66dc07f57c3b39df4fbd Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 6 Sep 2019 16:10:38 -0400 Subject: [PATCH 0437/1449] disable gnome-keyring --- chromium.spec | 3 +++ 1 file changed, 3 insertions(+) diff --git a/chromium.spec b/chromium.spec index b870100..d2a573a 100644 --- a/chromium.spec +++ b/chromium.spec @@ -955,6 +955,9 @@ CHROMIUM_CORE_GN_DEFINES+=' target_cpu="arm64"' %if %{?use_jumbo} CHROMIUM_CORE_GN_DEFINES+=' use_jumbo_build=true jumbo_file_merge_limit=8' %endif +%if 0%{?rhel} == 8 +CHROMIUM_CORE_GN_DEFINES+=' use_gnome_keyring=false use_glib=true' +%endif export CHROMIUM_CORE_GN_DEFINES CHROMIUM_BROWSER_GN_DEFINES="" From c76cbbc3b06ce1008fca84278d3653896474b7b2 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 6 Sep 2019 16:40:41 -0400 Subject: [PATCH 0438/1449] conditionalize minizip bundling since rhel 8 does not have it --- chromium.spec | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/chromium.spec b/chromium.spec index d2a573a..9bdec57 100644 --- a/chromium.spec +++ b/chromium.spec @@ -133,6 +133,13 @@ BuildRequires: libicu-devel >= 5.4 %global pulseaudioapichange 0 %endif +# RHEL 8 doesn't have minizip +%if 0%{?rhel} == 8 +%global bundleminizip 1 +%else +%global bundleminizip 0 +%endif + ### Google API keys (see http://www.chromium.org/developers/how-tos/api-keys) ### Note: These are for Fedora use ONLY. ### For your own distribution, please get your own set of keys. @@ -380,11 +387,15 @@ BuildRequires: libusb-devel BuildRequires: libXdamage-devel BuildRequires: libXScrnSaver-devel BuildRequires: libXtst-devel +%if %{bundleminizip} +# We're using the bundle, baby. +%else %if 0%{?fedora} >= 30 BuildRequires: minizip-compat-devel %else BuildRequires: minizip-devel %endif +%endif # RHEL 7's nodejs is too old %if 0%{?fedora} BuildRequires: nodejs @@ -709,11 +720,15 @@ Chromium is an open-source web browser, powered by WebKit (Blink). Summary: Files needed for both the headless_shell and full Chromium # Chromium needs an explicit Requires: minizip-compat # We put it here to cover headless too. +%if %{bundleminizip} +# Using the bundle. No Requires needed. +%else %if 0%{?fedora} >= 30 Requires: minizip-compat%{_isa} %else Requires: minizip%{_isa} %endif +%endif %description common %{summary}. @@ -1131,6 +1146,9 @@ build/linux/unbundle/remove_bundled_libraries.py \ %endif 'third_party/mesa' \ 'third_party/metrics_proto' \ +%if %{bundleminizip} + 'third_party/minizip' \ +%endif 'third_party/modp_b64' \ 'third_party/nasm' \ 'third_party/node' \ From 1964554c88c8e379f9ceb934337f0fff260cbfba Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 6 Sep 2019 17:10:21 -0400 Subject: [PATCH 0439/1449] force disable use_gnome_keyring --- ...809.132-rhel8-force-disable-use_gnome_keyring.patch | 10 ++++++++++ chromium.spec | 7 +++++++ 2 files changed, 17 insertions(+) create mode 100644 chromium-76.0.3809.132-rhel8-force-disable-use_gnome_keyring.patch diff --git a/chromium-76.0.3809.132-rhel8-force-disable-use_gnome_keyring.patch b/chromium-76.0.3809.132-rhel8-force-disable-use_gnome_keyring.patch new file mode 100644 index 0000000..ff6c523 --- /dev/null +++ b/chromium-76.0.3809.132-rhel8-force-disable-use_gnome_keyring.patch @@ -0,0 +1,10 @@ +diff -up chromium-76.0.3809.132/components/os_crypt/features.gni.rhel8 chromium-76.0.3809.132/components/os_crypt/features.gni +--- chromium-76.0.3809.132/components/os_crypt/features.gni.rhel8 2019-09-06 17:08:01.242314126 -0400 ++++ chromium-76.0.3809.132/components/os_crypt/features.gni 2019-09-06 17:08:10.139134707 -0400 +@@ -7,5 +7,5 @@ import("//build/config/ui.gni") + declare_args() { + # Whether to use libgnome-keyring (deprecated by libsecret). + # See http://crbug.com/466975 and http://crbug.com/355223. +- use_gnome_keyring = is_desktop_linux && use_glib ++ use_gnome_keyring = false + } diff --git a/chromium.spec b/chromium.spec index 9bdec57..9c12951 100644 --- a/chromium.spec +++ b/chromium.spec @@ -316,6 +316,9 @@ Patch204: chromium-75.0.3770.80-vaapi-libva1-compatibility.patch # Pulseaudio changed the API a little in 12.99.1 Patch205: chromium-76.0.3809.100-pulse-api-change.patch +# Apply this patches to work around EPEL8 issues +Patch300: chromium-76.0.3809.132-rhel8-force-disable-use_gnome_keyring.patch + # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ # For Chromium Fedora use chromium-latest.py --stable --ffmpegclean --ffmpegarm @@ -885,6 +888,10 @@ udev. %patch205 -p1 -b .pulseaudioapichange %endif +%if 0%{?rhel} == 8 +%patch300 -p1 -b .disblegnomekeyring +%endif + # Change shebang in all relevant files in this directory and all subdirectories # See `man find` for how the `-exec command {} +` syntax works find -type f -exec sed -iE '1s=^#! */usr/bin/\(python\|env python\)[23]\?=#!%{__python2}=' {} + From 71ab9fa61df4d55acdef90769e8f9238c38cbce7 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 9 Sep 2019 07:54:13 -0400 Subject: [PATCH 0440/1449] use bundled zlib here (ugh) --- chromium.spec | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/chromium.spec b/chromium.spec index 9c12951..5b07016 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1302,8 +1302,12 @@ build/linux/unbundle/replace_gn_files.py --system-libraries \ %else re2 \ %endif +%if %{bundleminizip} + yasm +%else yasm \ zlib +%endif # fix arm gcc sed -i 's|arm-linux-gnueabihf-|arm-linux-gnu-|g' build/toolchain/linux/BUILD.gn From f53529c22595c5f8492df88b4f8b39875a168321 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 10 Sep 2019 13:28:28 -0400 Subject: [PATCH 0441/1449] re-enable zlib mangling in bundleminizip conditional case --- chromium.spec | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/chromium.spec b/chromium.spec index 5b07016..fd6a3ea 100644 --- a/chromium.spec +++ b/chromium.spec @@ -823,7 +823,11 @@ udev. %patch15 -p1 -b .system-clang %patch16 -p1 -b .noprefix %patch17 -p1 -b .nomangle +%if %{bundleminizip} +# Leave zlib mangling in place +%else %patch18 -p1 -b .nozmangle +%endif %patch19 -p1 -b .pathfix %patch20 -p1 -b .nogccoptmath %patch21 -p1 -b .gcc5-r3 From 7f0ec73cb7f97bea9a276d1e9d33c40557338c1a Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 10 Sep 2019 15:55:16 -0400 Subject: [PATCH 0442/1449] trying this --- chromium-76.0.3809.132-chromedriver-zlib-fix.patch | 11 +++++++++++ chromium.spec | 7 ++++++- 2 files changed, 17 insertions(+), 1 deletion(-) create mode 100644 chromium-76.0.3809.132-chromedriver-zlib-fix.patch diff --git a/chromium-76.0.3809.132-chromedriver-zlib-fix.patch b/chromium-76.0.3809.132-chromedriver-zlib-fix.patch new file mode 100644 index 0000000..7ab46d8 --- /dev/null +++ b/chromium-76.0.3809.132-chromedriver-zlib-fix.patch @@ -0,0 +1,11 @@ +diff -up chromium-76.0.3809.132/chrome/test/chromedriver/BUILD.gn.fixme chromium-76.0.3809.132/chrome/test/chromedriver/BUILD.gn +--- chromium-76.0.3809.132/chrome/test/chromedriver/BUILD.gn.fixme 2019-09-10 15:53:02.871463568 -0400 ++++ chromium-76.0.3809.132/chrome/test/chromedriver/BUILD.gn 2019-09-10 15:53:33.057824836 -0400 +@@ -197,6 +197,7 @@ source_set("automation_client_lib") { + "//services/network/public/cpp", + "//services/network/public/mojom", + "//third_party/blink/public:buildflags", ++ "//third_party/zlib", + "//third_party/zlib:minizip", + "//third_party/zlib/google:zip", + "//ui/accessibility:ax_enums_mojo", diff --git a/chromium.spec b/chromium.spec index fd6a3ea..81982e2 100644 --- a/chromium.spec +++ b/chromium.spec @@ -316,8 +316,9 @@ Patch204: chromium-75.0.3770.80-vaapi-libva1-compatibility.patch # Pulseaudio changed the API a little in 12.99.1 Patch205: chromium-76.0.3809.100-pulse-api-change.patch -# Apply this patches to work around EPEL8 issues +# Apply these patches to work around EPEL8 issues Patch300: chromium-76.0.3809.132-rhel8-force-disable-use_gnome_keyring.patch +Patch301: chromium-76.0.3809.132-chromedriver-zlib-fix.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ @@ -896,6 +897,10 @@ udev. %patch300 -p1 -b .disblegnomekeyring %endif +%if %{bundleminizip} +%patch301 -p1 -b .chromedriver-zlib +%endif + # Change shebang in all relevant files in this directory and all subdirectories # See `man find` for how the `-exec command {} +` syntax works find -type f -exec sed -iE '1s=^#! */usr/bin/\(python\|env python\)[23]\?=#!%{__python2}=' {} + From a0c0e33b0a2dc8f2eeba8711bd86c7c6eacfa943 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 10 Sep 2019 16:58:00 -0400 Subject: [PATCH 0443/1449] take two --- chromium-76.0.3809.132-chromedriver-zlib-fix.patch | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/chromium-76.0.3809.132-chromedriver-zlib-fix.patch b/chromium-76.0.3809.132-chromedriver-zlib-fix.patch index 7ab46d8..f8b44d0 100644 --- a/chromium-76.0.3809.132-chromedriver-zlib-fix.patch +++ b/chromium-76.0.3809.132-chromedriver-zlib-fix.patch @@ -1,11 +1,11 @@ diff -up chromium-76.0.3809.132/chrome/test/chromedriver/BUILD.gn.fixme chromium-76.0.3809.132/chrome/test/chromedriver/BUILD.gn --- chromium-76.0.3809.132/chrome/test/chromedriver/BUILD.gn.fixme 2019-09-10 15:53:02.871463568 -0400 -+++ chromium-76.0.3809.132/chrome/test/chromedriver/BUILD.gn 2019-09-10 15:53:33.057824836 -0400 -@@ -197,6 +197,7 @@ source_set("automation_client_lib") { - "//services/network/public/cpp", ++++ chromium-76.0.3809.132/chrome/test/chromedriver/BUILD.gn 2019-09-10 16:57:32.281112323 -0400 +@@ -319,6 +319,7 @@ executable("chromedriver") { + "//net/server:http_server", + "//net/traffic_annotation:test_support", "//services/network/public/mojom", - "//third_party/blink/public:buildflags", + "//third_party/zlib", - "//third_party/zlib:minizip", - "//third_party/zlib/google:zip", - "//ui/accessibility:ax_enums_mojo", + ] + } + From 892e596886b085085ee7b974404746d408db7cda Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Thu, 12 Sep 2019 17:28:51 +0200 Subject: [PATCH 0444/1449] Update to 77.0.3865.75 Rebase and clean the patches. --- ...um-61.0.3163.79-gcc-no-opt-safe-math.patch | 13 - chromium-68.0.3440.106-boolfix.patch | 36 --- ...mium-72.0.3626.121-fedora-user-agent.patch | 12 - chromium-72.0.3626.121-gcc5-r3.patch | 36 --- chromium-75.0.3770.100-fix-v8-gcc.patch | 14 -- chromium-75.0.3770.80-no-zlib-mangle.patch | 14 -- ...-75.0.3770.80-pure-virtual-crash-fix.patch | 24 -- ...09.100-gcc-accountinfo-move-noexcept.patch | 53 ----- chromium-76.0.3809.100-gcc-cc-no-except.patch | 105 -------- ...0.3809.100-gcc-feature-policy-parser.patch | 76 ------ ...0.3809.100-gcc-hasfraction-constexpr.patch | 32 --- ...0.3809.100-gcc-history-move-noexcept.patch | 42 ---- ....0.3809.100-gcc-initialization-order.patch | 33 --- ...100-gcc-move-explicit-initialization.patch | 97 -------- chromium-76.0.3809.100-gcc-net-fetcher.patch | 63 ----- ...0.3809.100-gcc-themeservice-includes.patch | 36 --- chromium-76.0.3809.100-gcc-vulkan.patch | 115 --------- ...ium-76.0.3809.100-quiche-compile-fix.patch | 225 ------------------ ...m-76.0.3809.100-throttling-dead-beef.patch | 30 --- ...ium-76.0.3809.100-weak-ptr-no-except.patch | 66 ----- ....3809.132-gcc-ambigous-instantiation.patch | 21 -- chromium-77.0.3865.75-boolfix.patch | 24 ++ ...7.0.3865.75-certificate-transparency.patch | 132 +++++----- chromium-77.0.3865.75-fedora-user-agent.patch | 12 + chromium-77.0.3865.75-fix-v8-gcc.patch | 14 ++ ...um-77.0.3865.75-gcc-no-opt-safe-math.patch | 13 + chromium-77.0.3865.75-gcc5-r3.patch | 36 +++ chromium-77.0.3865.75-no-zlib-mangle.patch | 22 ++ chromium.spec | 68 +----- sources | 2 +- 30 files changed, 199 insertions(+), 1267 deletions(-) delete mode 100644 chromium-61.0.3163.79-gcc-no-opt-safe-math.patch delete mode 100644 chromium-68.0.3440.106-boolfix.patch delete mode 100644 chromium-72.0.3626.121-fedora-user-agent.patch delete mode 100644 chromium-72.0.3626.121-gcc5-r3.patch delete mode 100644 chromium-75.0.3770.100-fix-v8-gcc.patch delete mode 100644 chromium-75.0.3770.80-no-zlib-mangle.patch delete mode 100644 chromium-75.0.3770.80-pure-virtual-crash-fix.patch delete mode 100644 chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch delete mode 100644 chromium-76.0.3809.100-gcc-cc-no-except.patch delete mode 100644 chromium-76.0.3809.100-gcc-feature-policy-parser.patch delete mode 100644 chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch delete mode 100644 chromium-76.0.3809.100-gcc-history-move-noexcept.patch delete mode 100644 chromium-76.0.3809.100-gcc-initialization-order.patch delete mode 100644 chromium-76.0.3809.100-gcc-move-explicit-initialization.patch delete mode 100644 chromium-76.0.3809.100-gcc-net-fetcher.patch delete mode 100644 chromium-76.0.3809.100-gcc-themeservice-includes.patch delete mode 100644 chromium-76.0.3809.100-gcc-vulkan.patch delete mode 100644 chromium-76.0.3809.100-quiche-compile-fix.patch delete mode 100644 chromium-76.0.3809.100-throttling-dead-beef.patch delete mode 100644 chromium-76.0.3809.100-weak-ptr-no-except.patch delete mode 100644 chromium-76.0.3809.132-gcc-ambigous-instantiation.patch create mode 100644 chromium-77.0.3865.75-boolfix.patch rename chromium-76.0.3809.132-certificate-transparency.patch => chromium-77.0.3865.75-certificate-transparency.patch (73%) create mode 100644 chromium-77.0.3865.75-fedora-user-agent.patch create mode 100644 chromium-77.0.3865.75-fix-v8-gcc.patch create mode 100644 chromium-77.0.3865.75-gcc-no-opt-safe-math.patch create mode 100644 chromium-77.0.3865.75-gcc5-r3.patch create mode 100644 chromium-77.0.3865.75-no-zlib-mangle.patch diff --git a/chromium-61.0.3163.79-gcc-no-opt-safe-math.patch b/chromium-61.0.3163.79-gcc-no-opt-safe-math.patch deleted file mode 100644 index 183b5ab..0000000 --- a/chromium-61.0.3163.79-gcc-no-opt-safe-math.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -up chromium-61.0.3163.79/base/numerics/safe_math_shared_impl.h.fixgcc3 chromium-61.0.3163.79/base/numerics/safe_math_shared_impl.h ---- chromium-61.0.3163.79/base/numerics/safe_math_shared_impl.h.fixgcc3 2017-09-06 16:30:15.898454585 -0400 -+++ chromium-61.0.3163.79/base/numerics/safe_math_shared_impl.h 2017-09-06 16:30:27.570229539 -0400 -@@ -21,8 +21,7 @@ - #if !defined(__native_client__) && \ - ((defined(__clang__) && \ - ((__clang_major__ > 3) || \ -- (__clang_major__ == 3 && __clang_minor__ >= 4))) || \ -- (defined(__GNUC__) && __GNUC__ >= 5)) -+ (__clang_major__ == 3 && __clang_minor__ >= 4)))) - #include "base/numerics/safe_math_clang_gcc_impl.h" - #define BASE_HAS_OPTIMIZED_SAFE_MATH (1) - #else diff --git a/chromium-68.0.3440.106-boolfix.patch b/chromium-68.0.3440.106-boolfix.patch deleted file mode 100644 index ed22aa9..0000000 --- a/chromium-68.0.3440.106-boolfix.patch +++ /dev/null @@ -1,36 +0,0 @@ -diff -up chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_ptr_info.h ---- chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix 2018-08-09 03:21:23.066802340 -0400 -+++ chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_ptr_info.h 2018-08-09 03:25:10.638595925 -0400 -@@ -45,7 +45,7 @@ class AssociatedInterfacePtrInfo { - - bool is_valid() const { return handle_.is_valid(); } - -- explicit operator bool() const { return handle_.is_valid(); } -+ explicit operator bool() const { return (bool) handle_.is_valid(); } - - ScopedInterfaceEndpointHandle PassHandle() { - return std::move(handle_); -diff -up chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_request.h.boolfix chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_request.h ---- chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_request.h.boolfix 2018-08-09 03:21:23.067802318 -0400 -+++ chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_request.h 2018-08-09 03:24:44.935229067 -0400 -@@ -50,7 +50,7 @@ class AssociatedInterfaceRequest { - // handle. - 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(); } - - ScopedInterfaceEndpointHandle PassHandle() { return std::move(handle_); } - -diff -up chromium-68.0.3440.106/mojo/public/cpp/bindings/interface_request.h.boolfix chromium-68.0.3440.106/mojo/public/cpp/bindings/interface_request.h ---- chromium-68.0.3440.106/mojo/public/cpp/bindings/interface_request.h.boolfix 2018-08-08 15:11:05.000000000 -0400 -+++ chromium-68.0.3440.106/mojo/public/cpp/bindings/interface_request.h 2018-08-09 03:21:23.067802318 -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-72.0.3626.121-fedora-user-agent.patch b/chromium-72.0.3626.121-fedora-user-agent.patch deleted file mode 100644 index 5cef6f0..0000000 --- a/chromium-72.0.3626.121-fedora-user-agent.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-72.0.3626.121/content/common/user_agent.cc.fedora-user-agent chromium-72.0.3626.121/content/common/user_agent.cc ---- chromium-72.0.3626.121/content/common/user_agent.cc.fedora-user-agent 2019-03-10 14:21:02.877454982 -0400 -+++ chromium-72.0.3626.121/content/common/user_agent.cc 2019-03-10 14:22:05.728812272 -0400 -@@ -36,7 +36,7 @@ std::string GetUserAgentPlatform() { - #elif defined(OS_MACOSX) - "Macintosh; "; - #elif defined(USE_X11) || defined(USE_OZONE) -- "X11; "; // strange, but that's what Firefox uses -+ "X11; Fedora; "; // strange, but that's what Firefox uses - #elif defined(OS_ANDROID) - "Linux; "; - #elif defined(OS_POSIX) || defined(OS_FUCHSIA) diff --git a/chromium-72.0.3626.121-gcc5-r3.patch b/chromium-72.0.3626.121-gcc5-r3.patch deleted file mode 100644 index f4cf40b..0000000 --- a/chromium-72.0.3626.121-gcc5-r3.patch +++ /dev/null @@ -1,36 +0,0 @@ -diff -up chromium-72.0.3626.121/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 chromium-72.0.3626.121/gpu/ipc/common/mailbox_struct_traits.h ---- chromium-72.0.3626.121/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 2019-03-01 23:10:21.000000000 -0500 -+++ chromium-72.0.3626.121/gpu/ipc/common/mailbox_struct_traits.h 2019-03-10 14:07:48.300244125 -0400 -@@ -15,7 +15,7 @@ namespace mojo { - template <> - struct StructTraits { - static base::span name(const gpu::Mailbox& mailbox) { -- return mailbox.name; -+ return base::make_span(mailbox.name); - } - static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out); - }; -diff -up chromium-72.0.3626.121/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 chromium-72.0.3626.121/services/viz/public/cpp/compositing/quads_struct_traits.h ---- chromium-72.0.3626.121/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 2019-03-01 23:10:31.000000000 -0500 -+++ chromium-72.0.3626.121/services/viz/public/cpp/compositing/quads_struct_traits.h 2019-03-10 14:07:48.303244046 -0400 -@@ -340,7 +340,7 @@ struct StructTraits vertex_opacity(const viz::DrawQuad& input) { - const viz::TextureDrawQuad* quad = - viz::TextureDrawQuad::MaterialCast(&input); -- return quad->vertex_opacity; -+ return base::make_span(quad->vertex_opacity); - } - - static bool y_flipped(const viz::DrawQuad& input) { -diff -up chromium-72.0.3626.121/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 chromium-72.0.3626.121/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc ---- chromium-72.0.3626.121/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 2019-03-10 14:07:48.307243941 -0400 -+++ chromium-72.0.3626.121/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2019-03-10 14:09:16.565920044 -0400 -@@ -10,7 +10,7 @@ - - #include "modules/audio_processing/aec3/aec_state.h" - --#include -+#include - #include - #include - #include diff --git a/chromium-75.0.3770.100-fix-v8-gcc.patch b/chromium-75.0.3770.100-fix-v8-gcc.patch deleted file mode 100644 index 4a1a4b0..0000000 --- a/chromium-75.0.3770.100-fix-v8-gcc.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -up chromium-75.0.3770.100/v8/src/objects/js-objects.cc.fix-v8-gcc chromium-75.0.3770.100/v8/src/objects/js-objects.cc ---- chromium-75.0.3770.100/v8/src/objects/js-objects.cc.fix-v8-gcc 2019-06-25 10:55:08.132254304 -0400 -+++ chromium-75.0.3770.100/v8/src/objects/js-objects.cc 2019-06-25 10:55:23.147933648 -0400 -@@ -3792,6 +3792,10 @@ void JSObject::ApplyAttributesToDictiona - } - } - -+template void JSObject::ApplyAttributesToDictionary( -+ Isolate* isolate, ReadOnlyRoots roots, Handle dictionary, -+ const PropertyAttributes attributes); -+ - template - Maybe JSObject::PreventExtensionsWithTransition( - Handle object, ShouldThrow should_throw) { diff --git a/chromium-75.0.3770.80-no-zlib-mangle.patch b/chromium-75.0.3770.80-no-zlib-mangle.patch deleted file mode 100644 index 998be67..0000000 --- a/chromium-75.0.3770.80-no-zlib-mangle.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -up chromium-75.0.3770.80/third_party/zlib/zconf.h.nozmangle chromium-75.0.3770.80/third_party/zlib/zconf.h ---- chromium-75.0.3770.80/third_party/zlib/zconf.h.nozmangle 2019-06-05 11:12:30.420412467 -0400 -+++ chromium-75.0.3770.80/third_party/zlib/zconf.h 2019-06-05 11:17:43.512683058 -0400 -@@ -8,10 +8,6 @@ - #ifndef ZCONF_H - #define ZCONF_H - --/* This include does prefixing as below, but with an updated set of names. Also -- * sets up export macros in component builds. */ --#include "chromeconf.h" -- - /* - * If you *really* need a unique prefix for all types and library functions, - * compile with -DZ_PREFIX. The "standard" zlib should be compiled without it. diff --git a/chromium-75.0.3770.80-pure-virtual-crash-fix.patch b/chromium-75.0.3770.80-pure-virtual-crash-fix.patch deleted file mode 100644 index 06c909f..0000000 --- a/chromium-75.0.3770.80-pure-virtual-crash-fix.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff -up chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.cc.pure-virtual-fix chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.cc ---- chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.cc.pure-virtual-fix 2019-06-07 15:03:43.302202979 -0400 -+++ chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.cc 2019-06-07 15:04:25.140393048 -0400 -@@ -116,4 +116,9 @@ void RenderProcessUserData::RenderProces - base::Unretained(process_node_.get()), info.exit_code)); - } - -+void RenderProcessUserData::RenderProcessHostDestroyed( -+ content::RenderProcessHost* host) { -+ host->RemoveUserData(kRenderProcessUserDataKey); -+} -+ - } // namespace performance_manager -diff -up chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.h.pure-virtual-fix chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.h ---- chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.h.pure-virtual-fix 2019-06-07 15:04:43.530039597 -0400 -+++ chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.h 2019-06-07 15:05:13.770458374 -0400 -@@ -47,6 +47,7 @@ class RenderProcessUserData : public bas - 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. diff --git a/chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch b/chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch deleted file mode 100644 index 5f45a8f..0000000 --- a/chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch +++ /dev/null @@ -1,53 +0,0 @@ -From 719df31ffd4d52b473509cf77acd9c02ec112acb Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Tue, 04 Jun 2019 18:38:12 +0200 -Subject: [PATCH] GCC: fix noexcept from move constructor and assign operators of AccountInfo - -AccountInfo declares them as noexcept and uses default implementation, -so all its members (including AccountId) should be noexcept. But AccountId -is not noexcept. To fix it we just need to make CoreAccountId move -operator/assign operator noexcept. - -Bug: 819294 -Change-Id: Ice38654ab7cf3b9eaa6f54aa36e1fec329264f98 ---- - -diff --git a/google_apis/gaia/core_account_id.cc b/google_apis/gaia/core_account_id.cc -index d808082..12eefe3 100644 ---- a/google_apis/gaia/core_account_id.cc -+++ b/google_apis/gaia/core_account_id.cc -@@ -6,8 +6,16 @@ - - CoreAccountId::CoreAccountId() = default; - -+CoreAccountId::CoreAccountId(const CoreAccountId&) = default; -+ -+CoreAccountId::CoreAccountId(CoreAccountId&&) noexcept = default; -+ - CoreAccountId::~CoreAccountId() = default; - -+CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; -+ -+CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) noexcept = default; -+ - CoreAccountId::CoreAccountId(const char* id) : id(id) {} - - CoreAccountId::CoreAccountId(std::string&& id) : id(std::move(id)) {} -diff --git a/google_apis/gaia/core_account_id.h b/google_apis/gaia/core_account_id.h -index 5ea602a..c2d1911 100644 ---- a/google_apis/gaia/core_account_id.h -+++ b/google_apis/gaia/core_account_id.h -@@ -14,8 +14,13 @@ - // for design and tracking). - struct CoreAccountId { - CoreAccountId(); -+ CoreAccountId(const CoreAccountId&); -+ CoreAccountId(CoreAccountId&&) noexcept; - ~CoreAccountId(); - -+ CoreAccountId& operator=(const CoreAccountId&); -+ CoreAccountId& operator=(CoreAccountId&&) noexcept; -+ - // Those implicit constructor and conversion operator allow to - // progressively migrate the code to use this struct. Removing - // them is tracked by https://crbug.com/959161 diff --git a/chromium-76.0.3809.100-gcc-cc-no-except.patch b/chromium-76.0.3809.100-gcc-cc-no-except.patch deleted file mode 100644 index e4d754a..0000000 --- a/chromium-76.0.3809.100-gcc-cc-no-except.patch +++ /dev/null @@ -1,105 +0,0 @@ -From 84c91abab33966f928497c24db4a39f436d2dca8 Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Fri, 07 Jun 2019 09:50:11 +0000 -Subject: [PATCH] Make SharedMemoryMapping move constructor noexcept - -As LayerTreeHostImpl::UIResourceData move constructor is declared -noexcept with default implementation, the move constructor of its -members should also be noexcept. GCC will fail to build otherwise -for mismatching noexcept declaration. - -We also set the move assignment operator. - -Bug: 819294 -Change-Id: Icd663da83b882e15f7d16780c9241972e09bc492 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645297 -Commit-Queue: José Dapena Paz -Reviewed-by: Daniel Cheng -Cr-Commit-Position: refs/heads/master@{#667064} ---- - -diff --git a/base/memory/shared_memory_mapping.cc b/base/memory/shared_memory_mapping.cc -index 2be2570..8426fa8 100644 ---- a/base/memory/shared_memory_mapping.cc -+++ b/base/memory/shared_memory_mapping.cc -@@ -33,7 +33,7 @@ - - SharedMemoryMapping::SharedMemoryMapping() = default; - --SharedMemoryMapping::SharedMemoryMapping(SharedMemoryMapping&& mapping) -+SharedMemoryMapping::SharedMemoryMapping(SharedMemoryMapping&& mapping) noexcept - : memory_(mapping.memory_), - size_(mapping.size_), - mapped_size_(mapping.mapped_size_), -@@ -42,7 +42,7 @@ - } - - SharedMemoryMapping& SharedMemoryMapping::operator=( -- SharedMemoryMapping&& mapping) { -+ SharedMemoryMapping&& mapping) noexcept { - Unmap(); - memory_ = mapping.memory_; - size_ = mapping.size_; -@@ -90,9 +90,9 @@ - - ReadOnlySharedMemoryMapping::ReadOnlySharedMemoryMapping() = default; - ReadOnlySharedMemoryMapping::ReadOnlySharedMemoryMapping( -- ReadOnlySharedMemoryMapping&&) = default; -+ ReadOnlySharedMemoryMapping&&) noexcept = default; - ReadOnlySharedMemoryMapping& ReadOnlySharedMemoryMapping::operator=( -- ReadOnlySharedMemoryMapping&&) = default; -+ ReadOnlySharedMemoryMapping&&) noexcept = default; - ReadOnlySharedMemoryMapping::ReadOnlySharedMemoryMapping( - void* address, - size_t size, -@@ -102,9 +102,9 @@ - - WritableSharedMemoryMapping::WritableSharedMemoryMapping() = default; - WritableSharedMemoryMapping::WritableSharedMemoryMapping( -- WritableSharedMemoryMapping&&) = default; -+ WritableSharedMemoryMapping&&) noexcept = default; - WritableSharedMemoryMapping& WritableSharedMemoryMapping::operator=( -- WritableSharedMemoryMapping&&) = default; -+ WritableSharedMemoryMapping&&) noexcept = default; - WritableSharedMemoryMapping::WritableSharedMemoryMapping( - void* address, - size_t size, -diff --git a/base/memory/shared_memory_mapping.h b/base/memory/shared_memory_mapping.h -index d9569af..2b8858e 100644 ---- a/base/memory/shared_memory_mapping.h -+++ b/base/memory/shared_memory_mapping.h -@@ -32,8 +32,8 @@ - SharedMemoryMapping(); - - // Move operations are allowed. -- SharedMemoryMapping(SharedMemoryMapping&& mapping); -- SharedMemoryMapping& operator=(SharedMemoryMapping&& mapping); -+ SharedMemoryMapping(SharedMemoryMapping&& mapping) noexcept; -+ SharedMemoryMapping& operator=(SharedMemoryMapping&& mapping) noexcept; - - // Unmaps the region if the mapping is valid. - virtual ~SharedMemoryMapping(); -@@ -93,8 +93,9 @@ - ReadOnlySharedMemoryMapping(); - - // Move operations are allowed. -- ReadOnlySharedMemoryMapping(ReadOnlySharedMemoryMapping&&); -- ReadOnlySharedMemoryMapping& operator=(ReadOnlySharedMemoryMapping&&); -+ ReadOnlySharedMemoryMapping(ReadOnlySharedMemoryMapping&&) noexcept; -+ ReadOnlySharedMemoryMapping& operator=( -+ ReadOnlySharedMemoryMapping&&) noexcept; - - // Returns the base address of the mapping. This is read-only memory. This is - // page-aligned. This is nullptr for invalid instances. -@@ -171,8 +172,9 @@ - WritableSharedMemoryMapping(); - - // Move operations are allowed. -- WritableSharedMemoryMapping(WritableSharedMemoryMapping&&); -- WritableSharedMemoryMapping& operator=(WritableSharedMemoryMapping&&); -+ WritableSharedMemoryMapping(WritableSharedMemoryMapping&&) noexcept; -+ WritableSharedMemoryMapping& operator=( -+ WritableSharedMemoryMapping&&) noexcept; - - // Returns the base address of the mapping. This is writable memory. This is - // page-aligned. This is nullptr for invalid instances. diff --git a/chromium-76.0.3809.100-gcc-feature-policy-parser.patch b/chromium-76.0.3809.100-gcc-feature-policy-parser.patch deleted file mode 100644 index 0dbffd5..0000000 --- a/chromium-76.0.3809.100-gcc-feature-policy-parser.patch +++ /dev/null @@ -1,76 +0,0 @@ -From 0aca7b8dea0f52ba7bd58dfce4ac236ee60670a8 Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Tue, 04 Jun 2019 19:44:58 +0200 -Subject: [PATCH] GCC: FeaturePolicyParser ParseValueForFuzzer is not in anonymous namespace - -Compilation fails because we are declaring ParseValueForFuzzer as friend method, -but we are declaring it is in anonymous namespace. Moving to global namespace -still fails (in this case in Clang). - -So final solution is making it a public static method of FeaturePolicyParser. - -Bug: 819294 -Change-Id: Iea307cb6faef675b748d6eb5da2175dcbb17fdc7 ---- - -diff --git a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc -index 3b7f4a9..eaee409 100644 ---- a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc -+++ b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc -@@ -317,6 +317,13 @@ - return value; - } - -+void FeaturePolicyParser::ParseValueForFuzzer( -+ blink::mojom::PolicyValueType feature_type, -+ const WTF::String& value_string) { -+ bool ok; -+ ParseValueForType(feature_type, value_string, &ok); -+} -+ - bool IsFeatureDeclared(mojom::FeaturePolicyFeature feature, - const ParsedFeaturePolicy& policy) { - return std::any_of(policy.begin(), policy.end(), -diff --git a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h -index fd25d90..36af405 100644 ---- a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h -+++ b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h -@@ -16,9 +16,6 @@ - #include "third_party/blink/renderer/platform/wtf/text/wtf_string.h" - #include "third_party/blink/renderer/platform/wtf/vector.h" - --// Forward declare for friendship. --void ParseValueForFuzzer(blink::mojom::PolicyValueType, const WTF::String&); -- - namespace blink { - - class Document; -@@ -79,8 +76,9 @@ - const FeatureNameMap& feature_names, - ExecutionContext* execution_context = nullptr); - -+ static void ParseValueForFuzzer(mojom::PolicyValueType, const String&); -+ - private: -- friend void ::ParseValueForFuzzer(mojom::PolicyValueType, const String&); - static PolicyValue GetFallbackValueForFeature( - mojom::FeaturePolicyFeature feature); - static PolicyValue ParseValueForType(mojom::PolicyValueType feature_type, -diff --git a/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc b/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc -index 7f8e6aa..53350e43 100644 ---- a/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc -+++ b/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc -@@ -23,9 +23,9 @@ - extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) { - static blink::BlinkFuzzerTestSupport test_support = - blink::BlinkFuzzerTestSupport(); -- ParseValueForFuzzer(blink::mojom::PolicyValueType::kBool, -- WTF::String(data, size)); -- ParseValueForFuzzer(blink::mojom::PolicyValueType::kDecDouble, -- WTF::String(data, size)); -+ blink::FeaturePolicyParser::ParseValueForFuzzer( -+ blink::mojom::PolicyValueType::kBool, WTF::String(data, size)); -+ blink::FeaturePolicyParser::ParseValueForFuzzer( -+ blink::mojom::PolicyValueType::kDecDouble, WTF::String(data, size)); - return 0; - } diff --git a/chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch b/chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch deleted file mode 100644 index 26bba05..0000000 --- a/chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch +++ /dev/null @@ -1,32 +0,0 @@ -From cf6d6b40d711fce93a24a2cf517fa3becdbae8bb Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Wed, 05 Jun 2019 17:18:40 +0000 -Subject: [PATCH] Make blink::LayoutUnit::HasFraction constexpr - -Other HasFraction methods as in PhysicalUnit are declared already -constexpr and using it. It breaks GCC build. - -Bug: 819294. -Change-Id: I0c4bd9bd206d45cf31f7fa815ce8533718a425cb -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645222 -Reviewed-by: vmpstr -Reviewed-by: Xianzhu Wang -Commit-Queue: José Dapena Paz -Cr-Commit-Position: refs/heads/master@{#666336} ---- - -diff --git a/third_party/blink/renderer/platform/geometry/layout_unit.h b/third_party/blink/renderer/platform/geometry/layout_unit.h -index f073986..b6dbc76 100644 ---- a/third_party/blink/renderer/platform/geometry/layout_unit.h -+++ b/third_party/blink/renderer/platform/geometry/layout_unit.h -@@ -202,7 +202,9 @@ - return value_ > 0 ? LayoutUnit() : *this; - } - -- bool HasFraction() const { return RawValue() % kFixedPointDenominator; } -+ constexpr bool HasFraction() const { -+ return RawValue() % kFixedPointDenominator; -+ } - - LayoutUnit Fraction() const { - // Compute fraction using the mod operator to preserve the sign of the value diff --git a/chromium-76.0.3809.100-gcc-history-move-noexcept.patch b/chromium-76.0.3809.100-gcc-history-move-noexcept.patch deleted file mode 100644 index 2876de4..0000000 --- a/chromium-76.0.3809.100-gcc-history-move-noexcept.patch +++ /dev/null @@ -1,42 +0,0 @@ -From abe74a7f0c53a43a9706a42d71b7ff4a5da53380 Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Tue, 11 Jun 2019 10:27:19 +0200 -Subject: [PATCH] GCC: add noexcept move assignment in history::URLRow - -In GCC, build is failing because history::QueryURLResult declares its move -assignment operator as noexcept using default implementation. That requires -its members to provide a move assignment operator that is noexcept too. - -But URLRow was missing noexcept declaration in move assignment operator (even -though it was providing noexcept to its move constructor). - -Bug: 819294 -Change-Id: I726e3cf7a4a50c9206a5d0fba8a561d363483d4f ---- - -diff --git a/components/history/core/browser/url_row.cc b/components/history/core/browser/url_row.cc -index 44c22fd..aec0101 100644 ---- a/components/history/core/browser/url_row.cc -+++ b/components/history/core/browser/url_row.cc -@@ -26,7 +26,7 @@ - } - - URLRow& URLRow::operator=(const URLRow& other) = default; --URLRow& URLRow::operator=(URLRow&& other) = default; -+URLRow& URLRow::operator=(URLRow&& other) noexcept = default; - - void URLRow::Swap(URLRow* other) { - std::swap(id_, other->id_); -diff --git a/components/history/core/browser/url_row.h b/components/history/core/browser/url_row.h -index 8f6f9cf..31a1ef8 100644 ---- a/components/history/core/browser/url_row.h -+++ b/components/history/core/browser/url_row.h -@@ -35,7 +35,7 @@ - - virtual ~URLRow(); - URLRow& operator=(const URLRow& other); -- URLRow& operator=(URLRow&& other); -+ URLRow& operator=(URLRow&& other) noexcept; - - URLID id() const { return id_; } - diff --git a/chromium-76.0.3809.100-gcc-initialization-order.patch b/chromium-76.0.3809.100-gcc-initialization-order.patch deleted file mode 100644 index 3bf394f..0000000 --- a/chromium-76.0.3809.100-gcc-initialization-order.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 7dc76c8d9f4cfbce7cf11424120aa6f6094916dc Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Wed, 05 Jun 2019 21:09:01 +0000 -Subject: [PATCH] GCC: XSetWindowAttributes struct initialization should keep order of declaration - -XSetWindowAttributes initialization of attributes in GLSurfaceGLX is not in the -same order of the declaration. GCC fails because of that. - -Bug: 819294 -Change-Id: I8a97da980d5961a35a47ae4d0d8d558b85291f1f -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1646253 -Reviewed-by: Zhenyao Mo -Commit-Queue: José Dapena Paz -Cr-Commit-Position: refs/heads/master@{#666436} ---- - -diff --git a/ui/gl/gl_surface_glx.cc b/ui/gl/gl_surface_glx.cc -index f649dd4..0aa6892 100644 ---- a/ui/gl/gl_surface_glx.cc -+++ b/ui/gl/gl_surface_glx.cc -@@ -583,10 +583,10 @@ - - XSetWindowAttributes swa = { - .background_pixmap = 0, -- .bit_gravity = NorthWestGravity, -- .colormap = g_colormap, - .background_pixel = 0, // ARGB(0,0,0,0) for compositing WM - .border_pixel = 0, -+ .bit_gravity = NorthWestGravity, -+ .colormap = g_colormap, - }; - auto value_mask = CWBackPixmap | CWBitGravity | CWColormap | CWBorderPixel; - if (ui::IsCompositingManagerPresent() && diff --git a/chromium-76.0.3809.100-gcc-move-explicit-initialization.patch b/chromium-76.0.3809.100-gcc-move-explicit-initialization.patch deleted file mode 100644 index 1d4b90f..0000000 --- a/chromium-76.0.3809.100-gcc-move-explicit-initialization.patch +++ /dev/null @@ -1,97 +0,0 @@ -From dcb55fb8f18abe5f43d260aa67b14b2dc996f992 Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Tue, 11 Jun 2019 08:00:13 +0000 -Subject: [PATCH] GCC: move explicit specialization out of RunInfo - -Explicit specialization in non-namespace scope is not allowed in C++, and GCC breaks -build because of that. Move the template specializations out of RunInfo declaration -in shape_result_inline_headeres.h to fix the GCC build issue. - -Bug: 819294 -Change-Id: Id083852bcf8e9efbdc911fdad28fd8767d2905d0 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1651728 -Reviewed-by: Kinuko Yasuda -Commit-Queue: José Dapena Paz -Cr-Commit-Position: refs/heads/master@{#667901} ---- - -diff --git a/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h b/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h -index 76ee6091..c14d3a0 100644 ---- a/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h -+++ b/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h -@@ -251,37 +251,6 @@ - template - struct iterator final {}; - -- // For non-zero glyph offset array -- template <> -- struct iterator final { -- // The constructor for ShapeResult -- explicit iterator(const GlyphOffsetArray& array) -- : pointer(array.storage_.get()) { -- DCHECK(pointer); -- } -- -- // The constructor for ShapeResultView -- explicit iterator(const GlyphDataRange& range) : pointer(range.offsets) { -- DCHECK(pointer); -- } -- -- GlyphOffset operator*() const { return *pointer; } -- void operator++() { ++pointer; } -- -- const GlyphOffset* pointer; -- }; -- -- // For zero glyph offset array -- template <> -- struct iterator final { -- explicit iterator(const GlyphOffsetArray& array) { -- DCHECK(!array.HasStorage()); -- } -- explicit iterator(const GlyphDataRange& range) { DCHECK(!range.offsets); } -- GlyphOffset operator*() const { return GlyphOffset(); } -- void operator++() {} -- }; -- - template - iterator GetIterator() const { - return iterator(*this); -@@ -495,6 +464,37 @@ - float width_; - }; - -+// For non-zero glyph offset array -+template <> -+struct ShapeResult::RunInfo::GlyphOffsetArray::iterator final { -+ // The constructor for ShapeResult -+ explicit iterator(const GlyphOffsetArray& array) -+ : pointer(array.storage_.get()) { -+ DCHECK(pointer); -+ } -+ -+ // The constructor for ShapeResultView -+ explicit iterator(const GlyphDataRange& range) : pointer(range.offsets) { -+ DCHECK(pointer); -+ } -+ -+ GlyphOffset operator*() const { return *pointer; } -+ void operator++() { ++pointer; } -+ -+ const GlyphOffset* pointer; -+}; -+ -+// For zero glyph offset array -+template <> -+struct ShapeResult::RunInfo::GlyphOffsetArray::iterator final { -+ explicit iterator(const GlyphOffsetArray& array) { -+ DCHECK(!array.HasStorage()); -+ } -+ explicit iterator(const GlyphDataRange& range) { DCHECK(!range.offsets); } -+ GlyphOffset operator*() const { return GlyphOffset(); } -+ void operator++() {} -+}; -+ - // Find the range of HarfBuzzRunGlyphData for the specified character index - // range. This function uses binary search twice, hence O(2 log n). - inline ShapeResult::RunInfo::GlyphDataRange diff --git a/chromium-76.0.3809.100-gcc-net-fetcher.patch b/chromium-76.0.3809.100-gcc-net-fetcher.patch deleted file mode 100644 index bc0ed98..0000000 --- a/chromium-76.0.3809.100-gcc-net-fetcher.patch +++ /dev/null @@ -1,63 +0,0 @@ -From 502e6e42633d2571c8236c8649b031fe9915eb5b Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Tue, 11 Jun 2019 16:56:27 +0000 -Subject: [PATCH] GCC: CertNetFetcherImpl declares Job as a friend but it is in the anonymous namespace - -GCC does not allow friendship declaration to anonymous namespace as done with Job -object in the CertNetFetcherImpl. This fix removes the friend declaration, and just -makes RemoveJob method public, that was the only reason to make Job a friend. - -Error was: -./../net/cert_net/cert_net_fetcher_impl.cc: In member function ‘void net::{anonymous}::Job::DetachRequest(net::CertNetFetcherImpl::RequestCore*)’: -../../net/cert_net/cert_net_fetcher_impl.cc:458:42: error: ‘std::unique_ptr net::CertNetFetcherImpl::AsyncCertNetFetcherImpl::RemoveJob(net::{anonymous}::Job*)’ is private within this context - delete_this = parent_->RemoveJob(this); - ^ -../../net/cert_net/cert_net_fetcher_impl.cc:151:24: note: declared private here - std::unique_ptr RemoveJob(Job* job); - ^~~~~~~~~ -../../net/cert_net/cert_net_fetcher_impl.cc: In member function ‘void net::{anonymous}::Job::OnJobCompleted(net::Error)’: -../../net/cert_net/cert_net_fetcher_impl.cc:610:61: error: ‘std::unique_ptr net::CertNetFetcherImpl::AsyncCertNetFetcherImpl::RemoveJob(net::{anonymous}::Job*)’ is private within this context - std::unique_ptr delete_this = parent_->RemoveJob(this); - ^ -../../net/cert_net/cert_net_fetcher_impl.cc:151:24: note: declared private here - std::unique_ptr RemoveJob(Job* job); - ^~~~~~~~~ - -Bug: 819294 -Change-Id: I3609f4558e570741395366de6a4cd40577d91450 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1651783 -Commit-Queue: Eric Roman -Reviewed-by: Eric Roman -Cr-Commit-Position: refs/heads/master@{#668015} ---- - -diff --git a/net/cert_net/cert_net_fetcher_impl.cc b/net/cert_net/cert_net_fetcher_impl.cc -index 11a1166..349c656 100644 ---- a/net/cert_net/cert_net_fetcher_impl.cc -+++ b/net/cert_net/cert_net_fetcher_impl.cc -@@ -135,21 +135,19 @@ - void Fetch(std::unique_ptr request_params, - scoped_refptr request); - -+ // Removes |job| from the in progress jobs and transfers ownership to the -+ // caller. -+ std::unique_ptr RemoveJob(Job* job); -+ - // Cancels outstanding jobs, which stops network requests and signals the - // corresponding RequestCores that the requests have completed. - void Shutdown(); - - private: -- friend class Job; -- - // Finds a job with a matching RequestPararms or returns nullptr if there was - // no match. - Job* FindJob(const RequestParams& params); - -- // Removes |job| from the in progress jobs and transfers ownership to the -- // caller. -- std::unique_ptr RemoveJob(Job* job); -- - // The in-progress jobs. This set does not contain the job which is actively - // invoking callbacks (OnJobCompleted). - JobSet jobs_; diff --git a/chromium-76.0.3809.100-gcc-themeservice-includes.patch b/chromium-76.0.3809.100-gcc-themeservice-includes.patch deleted file mode 100644 index ad40bb9..0000000 --- a/chromium-76.0.3809.100-gcc-themeservice-includes.patch +++ /dev/null @@ -1,36 +0,0 @@ -From d08ea83acc2f5ff395c1fe54f52687e92fe51c3b Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Tue, 04 Jun 2019 22:01:03 +0200 -Subject: [PATCH] IWYU: ThemeService requires NativeTheme - -As ThemeService referes to NativeTheme through a ScopedObserver, -the full declaration is required. - -Bug: 819294 -Change-Id: I9d5bd2e87cfaa76e87f9b5509daea24848906a63 ---- - -diff --git a/chrome/browser/themes/theme_service.cc b/chrome/browser/themes/theme_service.cc -index d65388e2..23dc86d 100644 ---- a/chrome/browser/themes/theme_service.cc -+++ b/chrome/browser/themes/theme_service.cc -@@ -54,7 +54,6 @@ - #include "ui/gfx/color_palette.h" - #include "ui/gfx/image/image_skia.h" - #include "ui/native_theme/common_theme.h" --#include "ui/native_theme/native_theme.h" - - #if BUILDFLAG(ENABLE_EXTENSIONS) - #include "base/scoped_observer.h" -diff --git a/chrome/browser/themes/theme_service.h b/chrome/browser/themes/theme_service.h -index 6c79c72..f93dc0d 100644 ---- a/chrome/browser/themes/theme_service.h -+++ b/chrome/browser/themes/theme_service.h -@@ -25,6 +25,7 @@ - #include "extensions/buildflags/buildflags.h" - #include "extensions/common/extension_id.h" - #include "ui/base/theme_provider.h" -+#include "ui/native_theme/native_theme.h" - #include "ui/native_theme/native_theme_observer.h" - - class BrowserThemePack; diff --git a/chromium-76.0.3809.100-gcc-vulkan.patch b/chromium-76.0.3809.100-gcc-vulkan.patch deleted file mode 100644 index cf93bce..0000000 --- a/chromium-76.0.3809.100-gcc-vulkan.patch +++ /dev/null @@ -1,115 +0,0 @@ -From fdb3bb1f8c41d044a5b0cb80257a26dd3c8f83a3 Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Tue, 11 Jun 2019 17:39:38 +0000 -Subject: [PATCH] GCC: do not use old C notation to assign struct with property names. - -The notation for initialization of structs referring to its properties -is invalid in C++. This is not accepted in GCC. It was making build -fail in VulkanCommandBuffer. - -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc: In member function 'void gpu::VulkanCommandBuffer::TransitionImageLayout(VkImage, VkImageLayout, VkImageLayout)': -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:214:7: error: expected primary-expression before '.' token - .subresourceRange.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT, - ^ -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:215:7: error: expected primary-expression before '.' token - .subresourceRange.baseMipLevel = 0, - ^ -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:216:7: error: expected primary-expression before '.' token - .subresourceRange.levelCount = 1, - ^ -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:217:7: error: expected primary-expression before '.' token - .subresourceRange.baseArrayLayer = 0, - ^ -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:218:7: error: expected primary-expression before '.' token - .subresourceRange.layerCount = 1, - ^ -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc: In member function 'void gpu::VulkanCommandBuffer::CopyBufferToImage(VkBuffer, VkImage, uint32_t, uint32_t, uint32_t, uint32_t)': -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:235:7: error: expected primary-expression before '.' token - .imageSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT, - ^ -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:236:7: error: expected primary-expression before '.' token - .imageSubresource.mipLevel = 0, - ^ -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:237:7: error: expected primary-expression before '.' token - .imageSubresource.baseArrayLayer = 0, - ^ -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:238:7: error: expected primary-expression before '.' token - .imageSubresource.layerCount = 1, - ^ -Bug: 819294 - -Change-Id: I999abece0c727e77964789183642ba62009c2c22 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1651802 -Commit-Queue: José Dapena Paz -Reviewed-by: Antoine Labour -Cr-Commit-Position: refs/heads/master@{#668033} ---- - -diff --git a/gpu/vulkan/vulkan_command_buffer.cc b/gpu/vulkan/vulkan_command_buffer.cc -index ba776e4..4f14c85 100644 ---- a/gpu/vulkan/vulkan_command_buffer.cc -+++ b/gpu/vulkan/vulkan_command_buffer.cc -@@ -207,21 +207,20 @@ - void VulkanCommandBuffer::TransitionImageLayout(VkImage image, - VkImageLayout old_layout, - VkImageLayout new_layout) { -- VkImageMemoryBarrier barrier = { -- .sType = VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER, -- .srcAccessMask = GetAccessMask(old_layout), -- .dstAccessMask = GetAccessMask(new_layout), -- .oldLayout = old_layout, -- .newLayout = new_layout, -- .srcQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED, -- .dstQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED, -- .image = image, -- .subresourceRange.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT, -- .subresourceRange.baseMipLevel = 0, -- .subresourceRange.levelCount = 1, -- .subresourceRange.baseArrayLayer = 0, -- .subresourceRange.layerCount = 1, -- }; -+ VkImageMemoryBarrier barrier = {}; -+ barrier.sType = VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER; -+ barrier.srcAccessMask = GetAccessMask(old_layout); -+ barrier.dstAccessMask = GetAccessMask(new_layout); -+ barrier.oldLayout = old_layout; -+ barrier.newLayout = new_layout; -+ barrier.srcQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED; -+ barrier.dstQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED; -+ barrier.image = image; -+ barrier.subresourceRange.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT; -+ barrier.subresourceRange.baseMipLevel = 0; -+ barrier.subresourceRange.levelCount = 1; -+ barrier.subresourceRange.baseArrayLayer = 0; -+ barrier.subresourceRange.layerCount = 1; - vkCmdPipelineBarrier(command_buffer_, GetPipelineStageFlags(old_layout), - GetPipelineStageFlags(new_layout), 0, 0, nullptr, 0, - nullptr, 1, &barrier); -@@ -233,17 +232,16 @@ - uint32_t buffer_height, - uint32_t width, - uint32_t height) { -- VkBufferImageCopy region = { -- .bufferOffset = 0, -- .bufferRowLength = buffer_width, -- .bufferImageHeight = buffer_height, -- .imageSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT, -- .imageSubresource.mipLevel = 0, -- .imageSubresource.baseArrayLayer = 0, -- .imageSubresource.layerCount = 1, -- .imageOffset = {0, 0, 0}, -- .imageExtent = {width, height, 1}, -- }; -+ VkBufferImageCopy region = {}; -+ region.bufferOffset = 0; -+ region.bufferRowLength = buffer_width; -+ region.bufferImageHeight = buffer_height; -+ region.imageSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT; -+ region.imageSubresource.mipLevel = 0; -+ region.imageSubresource.baseArrayLayer = 0; -+ region.imageSubresource.layerCount = 1; -+ region.imageOffset = {0, 0, 0}; -+ region.imageExtent = {width, height, 1}; - vkCmdCopyBufferToImage(command_buffer_, buffer, image, - VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, 1, ®ion); - } diff --git a/chromium-76.0.3809.100-quiche-compile-fix.patch b/chromium-76.0.3809.100-quiche-compile-fix.patch deleted file mode 100644 index 98789d9..0000000 --- a/chromium-76.0.3809.100-quiche-compile-fix.patch +++ /dev/null @@ -1,225 +0,0 @@ -diff -up chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc.quiche-compile-fix chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc ---- chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc.quiche-compile-fix 2019-08-14 09:58:07.721193200 +0200 -+++ chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc 2019-08-14 09:59:33.131041525 +0200 -@@ -62,37 +62,37 @@ const size_t kStatelessResetTokenLength - std::string TransportParameterIdToString( - TransportParameters::TransportParameterId param_id) { - switch (param_id) { -- case kOriginalConnectionId: -+ case TransportParameters::kOriginalConnectionId: - return "original_connection_id"; -- case kIdleTimeout: -+ case TransportParameters::kIdleTimeout: - return "idle_timeout"; -- case kStatelessResetToken: -+ case TransportParameters::kStatelessResetToken: - return "stateless_reset_token"; -- case kMaxPacketSize: -+ case TransportParameters::kMaxPacketSize: - return "max_packet_size"; -- case kInitialMaxData: -+ case TransportParameters::kInitialMaxData: - return "initial_max_data"; -- case kInitialMaxStreamDataBidiLocal: -+ case TransportParameters::kInitialMaxStreamDataBidiLocal: - return "initial_max_stream_data_bidi_local"; -- case kInitialMaxStreamDataBidiRemote: -+ case TransportParameters::kInitialMaxStreamDataBidiRemote: - return "initial_max_stream_data_bidi_remote"; -- case kInitialMaxStreamDataUni: -+ case TransportParameters::kInitialMaxStreamDataUni: - return "initial_max_stream_data_uni"; -- case kInitialMaxStreamsBidi: -+ case TransportParameters::kInitialMaxStreamsBidi: - return "initial_max_streams_bidi"; -- case kInitialMaxStreamsUni: -+ case TransportParameters::kInitialMaxStreamsUni: - return "initial_max_streams_uni"; -- case kAckDelayExponent: -+ case TransportParameters::kAckDelayExponent: - return "ack_delay_exponent"; -- case kMaxAckDelay: -+ case TransportParameters::kMaxAckDelay: - return "max_ack_delay"; -- case kDisableMigration: -+ case TransportParameters::kDisableMigration: - return "disable_migration"; -- case kPreferredAddress: -+ case TransportParameters::kPreferredAddress: - return "preferred_address"; -- case kGoogleQuicParam: -+ case TransportParameters::kGoogleQuicParam: - return "google"; -- case kGoogleQuicVersion: -+ case TransportParameters::kGoogleQuicVersion: - return "google-version"; - } - return "Unknown(" + QuicTextUtils::Uint64ToString(param_id) + ")"; -@@ -390,7 +390,7 @@ bool SerializeTransportParameters(const - CBB original_connection_id_param; - if (!in.original_connection_id.IsEmpty()) { - DCHECK_EQ(Perspective::IS_SERVER, in.perspective); -- if (!CBB_add_u16(¶ms, kOriginalConnectionId) || -+ if (!CBB_add_u16(¶ms, TransportParameters::kOriginalConnectionId) || - !CBB_add_u16_length_prefixed(¶ms, &original_connection_id_param) || - !CBB_add_bytes( - &original_connection_id_param, -@@ -412,7 +412,7 @@ bool SerializeTransportParameters(const - if (!in.stateless_reset_token.empty()) { - DCHECK_EQ(kStatelessResetTokenLength, in.stateless_reset_token.size()); - DCHECK_EQ(Perspective::IS_SERVER, in.perspective); -- if (!CBB_add_u16(¶ms, kStatelessResetToken) || -+ if (!CBB_add_u16(¶ms, TransportParameters::kStatelessResetToken) || - !CBB_add_u16_length_prefixed(¶ms, &stateless_reset_token_param) || - !CBB_add_bytes(&stateless_reset_token_param, - in.stateless_reset_token.data(), -@@ -438,7 +438,7 @@ bool SerializeTransportParameters(const - - // disable_migration - if (in.disable_migration) { -- if (!CBB_add_u16(¶ms, kDisableMigration) || -+ if (!CBB_add_u16(¶ms, TransportParameters::kDisableMigration) || - !CBB_add_u16(¶ms, 0u)) { // 0 is the length of this parameter. - QUIC_BUG << "Failed to write disable_migration for " << in; - return false; -@@ -458,7 +458,7 @@ bool SerializeTransportParameters(const - QUIC_BUG << "Bad lengths " << *in.preferred_address; - return false; - } -- if (!CBB_add_u16(¶ms, kPreferredAddress) || -+ if (!CBB_add_u16(¶ms, TransportParameters::kPreferredAddress) || - !CBB_add_u16_length_prefixed(¶ms, &preferred_address_params) || - !CBB_add_bytes( - &preferred_address_params, -@@ -491,7 +491,7 @@ bool SerializeTransportParameters(const - if (in.google_quic_params) { - const QuicData& serialized_google_quic_params = - in.google_quic_params->GetSerialized(); -- if (!CBB_add_u16(¶ms, kGoogleQuicParam) || -+ if (!CBB_add_u16(¶ms, TransportParameters::kGoogleQuicParam) || - !CBB_add_u16_length_prefixed(¶ms, &google_quic_params) || - !CBB_add_bytes(&google_quic_params, - reinterpret_cast( -@@ -505,7 +505,7 @@ bool SerializeTransportParameters(const - - // Google-specific version extension. - CBB google_version_params; -- if (!CBB_add_u16(¶ms, kGoogleQuicVersion) || -+ if (!CBB_add_u16(¶ms, TransportParameters::kGoogleQuicVersion) || - !CBB_add_u16_length_prefixed(¶ms, &google_version_params) || - !CBB_add_u32(&google_version_params, in.version)) { - QUIC_BUG << "Failed to write Google version extension for " << in; -@@ -565,7 +565,7 @@ bool ParseTransportParameters(const uint - } - bool parse_success = true; - switch (param_id) { -- case kOriginalConnectionId: -+ case TransportParameters::kOriginalConnectionId: - if (!out->original_connection_id.IsEmpty()) { - QUIC_DLOG(ERROR) << "Received a second original connection ID"; - return false; -@@ -581,10 +581,10 @@ bool ParseTransportParameters(const uint - CBS_len(&value)); - } - break; -- case kIdleTimeout: -+ case TransportParameters::kIdleTimeout: - parse_success = out->idle_timeout_milliseconds.ReadFromCbs(&value); - break; -- case kStatelessResetToken: -+ case TransportParameters::kStatelessResetToken: - if (!out->stateless_reset_token.empty()) { - QUIC_DLOG(ERROR) << "Received a second stateless reset token"; - return false; -@@ -597,36 +597,36 @@ bool ParseTransportParameters(const uint - out->stateless_reset_token.assign(CBS_data(&value), - CBS_data(&value) + CBS_len(&value)); - break; -- case kMaxPacketSize: -+ case TransportParameters::kMaxPacketSize: - parse_success = out->max_packet_size.ReadFromCbs(&value); - break; -- case kInitialMaxData: -+ case TransportParameters::kInitialMaxData: - parse_success = out->initial_max_data.ReadFromCbs(&value); - break; -- case kInitialMaxStreamDataBidiLocal: -+ case TransportParameters::kInitialMaxStreamDataBidiLocal: - parse_success = - out->initial_max_stream_data_bidi_local.ReadFromCbs(&value); - break; -- case kInitialMaxStreamDataBidiRemote: -+ case TransportParameters::kInitialMaxStreamDataBidiRemote: - parse_success = - out->initial_max_stream_data_bidi_remote.ReadFromCbs(&value); - break; -- case kInitialMaxStreamDataUni: -+ case TransportParameters::kInitialMaxStreamDataUni: - parse_success = out->initial_max_stream_data_uni.ReadFromCbs(&value); - break; -- case kInitialMaxStreamsBidi: -+ case TransportParameters::kInitialMaxStreamsBidi: - parse_success = out->initial_max_streams_bidi.ReadFromCbs(&value); - break; -- case kInitialMaxStreamsUni: -+ case TransportParameters::kInitialMaxStreamsUni: - parse_success = out->initial_max_streams_uni.ReadFromCbs(&value); - break; -- case kAckDelayExponent: -+ case TransportParameters::kAckDelayExponent: - parse_success = out->ack_delay_exponent.ReadFromCbs(&value); - break; -- case kMaxAckDelay: -+ case TransportParameters::kMaxAckDelay: - parse_success = out->max_ack_delay.ReadFromCbs(&value); - break; -- case kDisableMigration: -+ case TransportParameters::kDisableMigration: - if (out->disable_migration) { - QUIC_DLOG(ERROR) << "Received a second disable migration"; - return false; -@@ -638,7 +638,7 @@ bool ParseTransportParameters(const uint - } - out->disable_migration = true; - break; -- case kPreferredAddress: { -+ case TransportParameters::kPreferredAddress: { - uint16_t ipv4_port, ipv6_port; - in_addr ipv4_address; - in6_addr ipv6_address; -@@ -692,7 +692,7 @@ bool ParseTransportParameters(const uint - QuicMakeUnique( - preferred_address); - } break; -- case kGoogleQuicParam: { -+ case TransportParameters::kGoogleQuicParam: { - if (out->google_quic_params) { - QUIC_DLOG(ERROR) << "Received a second Google parameter"; - return false; -@@ -701,7 +701,7 @@ bool ParseTransportParameters(const uint - reinterpret_cast(CBS_data(&value)), CBS_len(&value)); - out->google_quic_params = CryptoFramer::ParseMessage(serialized_params); - } break; -- case kGoogleQuicVersion: { -+ case TransportParameters::kGoogleQuicVersion: { - if (!CBS_get_u32(&value, &out->version)) { - QUIC_DLOG(ERROR) << "Failed to parse Google version extension"; - return false; -diff -up chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc.quiche-compile-fix chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc ---- chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc.quiche-compile-fix 2019-08-14 09:59:19.139902052 +0200 -+++ chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc 2019-08-14 09:59:33.132041535 +0200 -@@ -2,10 +2,12 @@ - // Use of this source code is governed by a BSD-style license that can be - // found in the LICENSE file. - --#include -- - #include "net/third_party/quiche/src/quic/core/quic_socket_address_coder.h" - -+#include -+#include -+#include -+ - namespace quic { - - namespace { diff --git a/chromium-76.0.3809.100-throttling-dead-beef.patch b/chromium-76.0.3809.100-throttling-dead-beef.patch deleted file mode 100644 index 5e392e6..0000000 --- a/chromium-76.0.3809.100-throttling-dead-beef.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 53bb5a463ee956c70230eaa5450022185d0ddc3c Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Thu, 06 Jun 2019 07:54:05 +0000 -Subject: [PATCH] ThrottlingController::Liveness needs to be uint32_t - -We are setting kAlive and kDead values assigning values that -are bigger than the maximum signed int32. It is better to use -uint32_t in this case. - -Bug: 819294 -Change-Id: If72b48291a66a3a9db24b4c8e2d11d31936a66ee -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645772 -Reviewed-by: Kinuko Yasuda -Commit-Queue: José Dapena Paz -Cr-Commit-Position: refs/heads/master@{#666619} ---- - -diff --git a/services/network/throttling/throttling_controller.h b/services/network/throttling/throttling_controller.h -index 43751c4..3c6f87b 100644 ---- a/services/network/throttling/throttling_controller.h -+++ b/services/network/throttling/throttling_controller.h -@@ -38,7 +38,7 @@ - - // TODO(https://crbug.com/960874): Debugging code to try and shed some light - // on why the owned maps are invalid. -- enum class Liveness : int32_t { -+ enum class Liveness : uint32_t { - kAlive = 0xCA11AB13, - kDead = 0xDEADBEEF, - }; diff --git a/chromium-76.0.3809.100-weak-ptr-no-except.patch b/chromium-76.0.3809.100-weak-ptr-no-except.patch deleted file mode 100644 index a392971..0000000 --- a/chromium-76.0.3809.100-weak-ptr-no-except.patch +++ /dev/null @@ -1,66 +0,0 @@ -From 0370838723e786b51e7ec8ab55014811ec3e3aa3 Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Thu, 18 Jul 2019 14:26:11 +0200 -Subject: [PATCH] Make base::WeakPtr move constructor/operator noexcept to fix GCC build regression - -A GCC build regression has happened on DisjointRangeLockManager, as its move -operator and constructor were declared noexcept. This was failing because the -default implementation depended on base::WeakPtr, that did not provide -noexcept declaration for them. - -So make base::WeakPtr noexcept. - -Bug: 819294 -Change-Id: I936784b881c7c1afea136ceedbe9341e76464f95 ---- - -diff --git a/base/memory/weak_ptr.cc b/base/memory/weak_ptr.cc -index 64fd499..0efcc44 100644 ---- a/base/memory/weak_ptr.cc -+++ b/base/memory/weak_ptr.cc -@@ -46,7 +46,7 @@ - - WeakReference::~WeakReference() = default; - --WeakReference::WeakReference(WeakReference&& other) = default; -+WeakReference::WeakReference(WeakReference&& other) noexcept = default; - - WeakReference::WeakReference(const WeakReference& other) = default; - -diff --git a/base/memory/weak_ptr.h b/base/memory/weak_ptr.h -index 72b5f1f..ccd22fd13 100644 ---- a/base/memory/weak_ptr.h -+++ b/base/memory/weak_ptr.h -@@ -116,9 +116,9 @@ - explicit WeakReference(const scoped_refptr& flag); - ~WeakReference(); - -- WeakReference(WeakReference&& other); -+ WeakReference(WeakReference&& other) noexcept; - WeakReference(const WeakReference& other); -- WeakReference& operator=(WeakReference&& other) = default; -+ WeakReference& operator=(WeakReference&& other) noexcept = default; - WeakReference& operator=(const WeakReference& other) = default; - - bool IsValid() const; -@@ -153,9 +153,9 @@ - ~WeakPtrBase(); - - WeakPtrBase(const WeakPtrBase& other) = default; -- WeakPtrBase(WeakPtrBase&& other) = default; -+ WeakPtrBase(WeakPtrBase&& other) noexcept = default; - WeakPtrBase& operator=(const WeakPtrBase& other) = default; -- WeakPtrBase& operator=(WeakPtrBase&& other) = default; -+ WeakPtrBase& operator=(WeakPtrBase&& other) noexcept = default; - - void reset() { - ref_ = internal::WeakReference(); -@@ -236,7 +236,7 @@ - ptr_ = reinterpret_cast(t); - } - template -- WeakPtr(WeakPtr&& other) : WeakPtrBase(std::move(other)) { -+ WeakPtr(WeakPtr&& other) noexcept : WeakPtrBase(std::move(other)) { - // Need to cast from U* to T* to do pointer adjustment in case of multiple - // inheritance. This also enforces the "U is a T" rule. - T* t = reinterpret_cast(other.ptr_); diff --git a/chromium-76.0.3809.132-gcc-ambigous-instantiation.patch b/chromium-76.0.3809.132-gcc-ambigous-instantiation.patch deleted file mode 100644 index 73db4d4..0000000 --- a/chromium-76.0.3809.132-gcc-ambigous-instantiation.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -up chromium-76.0.3809.132/services/network/cross_origin_read_blocking.cc.gcc-ambigous-instantiation chromium-76.0.3809.132/services/network/cross_origin_read_blocking.cc ---- chromium-76.0.3809.132/services/network/cross_origin_read_blocking.cc.gcc-ambigous-instantiation 2019-08-26 21:02:33.000000000 +0200 -+++ chromium-76.0.3809.132/services/network/cross_origin_read_blocking.cc 2019-08-27 06:58:23.963821667 +0200 -@@ -207,7 +207,7 @@ std::set& GetPluginProxyingProcesse - // confirmation sniffing because images, scripts, etc. are frequently - // mislabelled by http servers as HTML/JSON/XML). - base::flat_set& GetNeverSniffedMimeTypes() { -- static base::NoDestructor> s_types({ -+ static base::NoDestructor> s_types{{ - // The list below has been populated based on most commonly used content - // types according to HTTP Archive - see: - // https://github.com/whatwg/fetch/issues/860#issuecomment-457330454 -@@ -219,7 +219,7 @@ base::flat_set& GetNeverSni - "application/x-protobuf", - "application/zip", - "text/event-stream", -- }); -+ }}; - - // All items need to be lower-case, to support case-insensitive comparisons - // later. diff --git a/chromium-77.0.3865.75-boolfix.patch b/chromium-77.0.3865.75-boolfix.patch new file mode 100644 index 0000000..c836214 --- /dev/null +++ b/chromium-77.0.3865.75-boolfix.patch @@ -0,0 +1,24 @@ +diff -up chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_ptr_info.h +--- chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix 2019-09-09 23:55:20.000000000 +0200 ++++ chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_ptr_info.h 2019-09-12 15:43:30.025360946 +0200 +@@ -45,7 +45,7 @@ class AssociatedInterfacePtrInfo { + + bool is_valid() const { return handle_.is_valid(); } + +- explicit operator bool() const { return handle_.is_valid(); } ++ explicit operator bool() const { return (bool) handle_.is_valid(); } + + ScopedInterfaceEndpointHandle PassHandle() { + return std::move(handle_); +diff -up chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_request.h.boolfix chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_request.h +--- chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_request.h.boolfix 2019-09-09 23:55:20.000000000 +0200 ++++ chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_request.h 2019-09-12 15:43:30.025360946 +0200 +@@ -51,7 +51,7 @@ class AssociatedInterfaceRequest { + // handle. + 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(); } + + ScopedInterfaceEndpointHandle PassHandle() { return std::move(handle_); } + diff --git a/chromium-76.0.3809.132-certificate-transparency.patch b/chromium-77.0.3865.75-certificate-transparency.patch similarity index 73% rename from chromium-76.0.3809.132-certificate-transparency.patch rename to chromium-77.0.3865.75-certificate-transparency.patch index 8bfbced..82e2958 100644 --- a/chromium-76.0.3809.132-certificate-transparency.patch +++ b/chromium-77.0.3865.75-certificate-transparency.patch @@ -1,18 +1,18 @@ -diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager_browsertest.cc ---- chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager_browsertest.cc.certificate-transparency 2019-09-03 22:08:28.931786496 +0200 -+++ chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager_browsertest.cc 2019-09-03 22:15:24.743555759 +0200 -@@ -17,6 +17,7 @@ - #include "chrome/common/pref_names.h" - #include "chrome/test/base/in_process_browser_test.h" - #include "components/prefs/pref_service.h" +diff -up chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager_browsertest.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager_browsertest.cc +--- chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager_browsertest.cc.certificate-transparency 2019-09-12 16:09:52.818635106 +0200 ++++ chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager_browsertest.cc 2019-09-12 16:11:07.662562005 +0200 +@@ -21,6 +21,7 @@ + #include "components/version_info/version_info.h" + #include "content/public/common/content_switches.h" + #include "content/public/common/user_agent.h" +#include "services/network/public/cpp/network_service_buildflags.h" #include "services/network/public/mojom/network_context.mojom.h" #include "services/network/public/mojom/network_service.mojom.h" #include "testing/gmock/include/gmock/gmock.h" -@@ -297,3 +298,55 @@ IN_PROC_BROWSER_TEST_P(SystemNetworkCont +@@ -356,3 +357,55 @@ IN_PROC_BROWSER_TEST_P(SystemNetworkCont INSTANTIATE_TEST_SUITE_P(, - SystemNetworkContextManagerStubResolverBrowsertest, - ::testing::Values(false, true)); + SystemNetworkContextManagerFreezeQUICUaBrowsertest, + ::testing::Values(true, false)); + +class SystemNetworkContextManagerCertificateTransparencyBrowsertest + : public SystemNetworkContextManagerBrowsertest, @@ -65,9 +65,9 @@ diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manage + , + SystemNetworkContextManagerCertificateTransparencyBrowsertest, + ::testing::Values(base::nullopt, true, false)); -diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc ---- chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc.certificate-transparency 2019-08-26 21:02:05.000000000 +0200 -+++ chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc 2019-09-03 22:13:26.451198970 +0200 +diff -up chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.cc +--- chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.cc.certificate-transparency 2019-09-09 23:55:09.000000000 +0200 ++++ chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.cc 2019-09-12 16:09:52.819635118 +0200 @@ -4,11 +4,13 @@ #include "chrome/browser/net/system_network_context_manager.h" @@ -82,7 +82,7 @@ diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manage #include "base/command_line.h" #include "base/feature_list.h" #include "base/logging.h" -@@ -51,6 +53,7 @@ +@@ -50,6 +52,7 @@ #include "content/public/common/mime_handler_view_mode.h" #include "content/public/common/service_names.mojom.h" #include "content/public/common/user_agent.h" @@ -90,7 +90,7 @@ diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manage #include "mojo/public/cpp/bindings/associated_interface_ptr.h" #include "net/dns/public/util.h" #include "net/net_buildflags.h" -@@ -81,6 +84,20 @@ +@@ -79,6 +82,20 @@ namespace { @@ -111,7 +111,7 @@ diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manage // The global instance of the SystemNetworkContextmanager. SystemNetworkContextManager* g_system_network_context_manager = nullptr; -@@ -686,14 +703,35 @@ SystemNetworkContextManager::CreateDefau +@@ -658,14 +675,35 @@ SystemNetworkContextManager::CreateDefau bool http_09_on_non_default_ports_enabled = false; #if !defined(OS_ANDROID) @@ -155,7 +155,7 @@ diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manage } const base::Value* value = -@@ -756,6 +794,12 @@ SystemNetworkContextManager::GetHttpAuth +@@ -723,6 +761,12 @@ SystemNetworkContextManager::GetHttpAuth return CreateHttpAuthDynamicParams(g_browser_process->local_state()); } @@ -168,10 +168,10 @@ diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manage network::mojom::NetworkContextParamsPtr SystemNetworkContextManager::CreateNetworkContextParams() { // TODO(mmenke): Set up parameters here (in memory cookie store, etc). -diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.h.certificate-transparency chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.h ---- chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.h.certificate-transparency 2019-08-26 21:02:05.000000000 +0200 -+++ chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.h 2019-09-03 22:08:28.931786496 +0200 -@@ -158,6 +158,12 @@ class SystemNetworkContextManager { +diff -up chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.h.certificate-transparency chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.h +--- chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.h.certificate-transparency 2019-09-09 23:55:09.000000000 +0200 ++++ chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.h 2019-09-12 16:09:52.819635118 +0200 +@@ -139,6 +139,12 @@ class SystemNetworkContextManager { static network::mojom::HttpAuthDynamicParamsPtr GetHttpAuthDynamicParamsForTesting(); @@ -184,10 +184,10 @@ diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manage private: class URLLoaderFactoryForSystem; -diff -up chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc ---- chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc.certificate-transparency 2019-08-26 21:02:05.000000000 +0200 -+++ chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc 2019-09-03 22:08:28.932786508 +0200 -@@ -4834,7 +4834,7 @@ IN_PROC_BROWSER_TEST_P(SSLPolicyTestComm +diff -up chromium-77.0.3865.75/chrome/browser/policy/policy_browsertest.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/policy/policy_browsertest.cc +--- chromium-77.0.3865.75/chrome/browser/policy/policy_browsertest.cc.certificate-transparency 2019-09-09 23:55:10.000000000 +0200 ++++ chromium-77.0.3865.75/chrome/browser/policy/policy_browsertest.cc 2019-09-12 16:09:52.820635131 +0200 +@@ -4836,7 +4836,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, browser()->tab_strip_model()->GetActiveWebContents()->GetTitle()); } @@ -196,9 +196,9 @@ diff -up chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc.cert CertificateTransparencyEnforcementDisabledForCas) { net::EmbeddedTestServer https_server_ok(net::EmbeddedTestServer::TYPE_HTTPS); https_server_ok.SetSSLConfig(net::EmbeddedTestServer::CERT_OK); -diff -up chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc ---- chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc.certificate-transparency 2019-08-26 21:02:07.000000000 +0200 -+++ chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc 2019-09-03 22:08:28.932786508 +0200 +diff -up chromium-77.0.3865.75/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc +--- chromium-77.0.3865.75/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc.certificate-transparency 2019-09-09 23:55:10.000000000 +0200 ++++ chromium-77.0.3865.75/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc 2019-09-12 16:09:52.821635143 +0200 @@ -8,6 +8,7 @@ #include "base/callback.h" #include "base/run_loop.h" @@ -226,10 +226,10 @@ diff -up chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_bro void SetUpOnMainThread() override { run_loop_ = std::make_unique(); -diff -up chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_browsertest.cc ---- chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_browsertest.cc.certificate-transparency 2019-08-26 21:02:07.000000000 +0200 -+++ chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_browsertest.cc 2019-09-03 22:08:28.932786508 +0200 -@@ -457,6 +457,13 @@ class SecurityStateTabHelperTest : publi +diff -up chromium-77.0.3865.75/chrome/browser/ssl/security_state_tab_helper_browsertest.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/ssl/security_state_tab_helper_browsertest.cc +--- chromium-77.0.3865.75/chrome/browser/ssl/security_state_tab_helper_browsertest.cc.certificate-transparency 2019-09-09 23:55:10.000000000 +0200 ++++ chromium-77.0.3865.75/chrome/browser/ssl/security_state_tab_helper_browsertest.cc 2019-09-12 16:09:52.821635143 +0200 +@@ -433,6 +433,13 @@ class SecurityStateTabHelperTest : publi SecurityStateTabHelperTest() : https_server_(net::EmbeddedTestServer::TYPE_HTTPS) { https_server_.ServeFilesFromSourceDirectory(GetChromeTestDataDir()); @@ -243,10 +243,10 @@ diff -up chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_bro } void SetUpOnMainThread() override { -diff -up chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc ---- chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc.certificate-transparency 2019-08-26 21:02:07.000000000 +0200 -+++ chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc 2019-09-03 22:08:28.934786531 +0200 -@@ -2008,8 +2008,14 @@ class CertificateTransparencySSLUITest : +diff -up chromium-77.0.3865.75/chrome/browser/ssl/ssl_browsertest.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/ssl/ssl_browsertest.cc +--- chromium-77.0.3865.75/chrome/browser/ssl/ssl_browsertest.cc.certificate-transparency 2019-09-09 23:55:10.000000000 +0200 ++++ chromium-77.0.3865.75/chrome/browser/ssl/ssl_browsertest.cc 2019-09-12 16:09:52.822635155 +0200 +@@ -1853,8 +1853,14 @@ class CertificateTransparencySSLUITest : public: CertificateTransparencySSLUITest() : CertVerifierBrowserTest(), @@ -263,9 +263,9 @@ diff -up chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc.certificat void SetUpOnMainThread() override { CertVerifierBrowserTest::SetUpOnMainThread(); -diff -up chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_policy_enforcer.h.certificate-transparency chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_policy_enforcer.h ---- chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_policy_enforcer.h.certificate-transparency 2019-08-26 21:02:14.000000000 +0200 -+++ chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_policy_enforcer.h 2019-09-03 22:08:28.934786531 +0200 +diff -up chromium-77.0.3865.75/components/certificate_transparency/chrome_ct_policy_enforcer.h.certificate-transparency chromium-77.0.3865.75/components/certificate_transparency/chrome_ct_policy_enforcer.h +--- chromium-77.0.3865.75/components/certificate_transparency/chrome_ct_policy_enforcer.h.certificate-transparency 2019-09-09 23:55:14.000000000 +0200 ++++ chromium-77.0.3865.75/components/certificate_transparency/chrome_ct_policy_enforcer.h 2019-09-12 16:09:52.823635168 +0200 @@ -45,6 +45,19 @@ class ChromeCTPolicyEnforcer : public ne void SetClockForTesting(const base::Clock* clock) { clock_ = clock; } @@ -286,10 +286,10 @@ diff -up chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_po private: // Returns true if the log identified by |log_id| (the SHA-256 hash of the // log's DER-encoded SPKI) has been disqualified, and sets -diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate-transparency chromium-76.0.3809.132/services/network/network_context.cc ---- chromium-76.0.3809.132/services/network/network_context.cc.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 -+++ chromium-76.0.3809.132/services/network/network_context.cc 2019-09-03 22:17:27.977834857 +0200 -@@ -35,6 +35,7 @@ +diff -up chromium-77.0.3865.75/services/network/network_context.cc.certificate-transparency chromium-77.0.3865.75/services/network/network_context.cc +--- chromium-77.0.3865.75/services/network/network_context.cc.certificate-transparency 2019-09-09 23:55:22.000000000 +0200 ++++ chromium-77.0.3865.75/services/network/network_context.cc 2019-09-12 16:09:52.823635168 +0200 +@@ -36,6 +36,7 @@ #include "components/prefs/pref_registry_simple.h" #include "components/prefs/pref_service.h" #include "components/prefs/pref_service_factory.h" @@ -297,7 +297,7 @@ diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate- #include "mojo/public/cpp/bindings/strong_binding.h" #include "net/base/layered_network_delegate.h" #include "net/base/load_flags.h" -@@ -1851,16 +1852,6 @@ URLRequestContextOwner NetworkContext::A +@@ -1877,16 +1878,6 @@ URLRequestContextOwner NetworkContext::A base::FeatureList::IsEnabled(features::kNetworkErrorLogging)); #endif // BUILDFLAG(ENABLE_REPORTING) @@ -314,7 +314,7 @@ diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate- net::HttpNetworkSession::Params session_params; bool is_quic_force_disabled = false; if (network_service_ && network_service_->quic_disabled()) -@@ -1910,8 +1901,20 @@ URLRequestContextOwner NetworkContext::A +@@ -1936,8 +1927,20 @@ URLRequestContextOwner NetworkContext::A #if BUILDFLAG(IS_CT_SUPPORTED) std::vector> ct_logs; @@ -335,7 +335,7 @@ diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate- scoped_refptr log_verifier = net::CTLogVerifier::Create(log->public_key, log->name); if (!log_verifier) { -@@ -1924,6 +1927,17 @@ URLRequestContextOwner NetworkContext::A +@@ -1950,6 +1953,17 @@ URLRequestContextOwner NetworkContext::A ct_verifier->AddLogs(ct_logs); builder->set_ct_verifier(std::move(ct_verifier)); } @@ -353,9 +353,9 @@ diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate- #endif // BUILDFLAG(IS_CT_SUPPORTED) const base::CommandLine* command_line = -diff -up chromium-76.0.3809.132/services/network/network_context_unittest.cc.certificate-transparency chromium-76.0.3809.132/services/network/network_context_unittest.cc ---- chromium-76.0.3809.132/services/network/network_context_unittest.cc.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 -+++ chromium-76.0.3809.132/services/network/network_context_unittest.cc 2019-09-03 22:20:22.382888089 +0200 +diff -up chromium-77.0.3865.75/services/network/network_context_unittest.cc.certificate-transparency chromium-77.0.3865.75/services/network/network_context_unittest.cc +--- chromium-77.0.3865.75/services/network/network_context_unittest.cc.certificate-transparency 2019-09-09 23:55:22.000000000 +0200 ++++ chromium-77.0.3865.75/services/network/network_context_unittest.cc 2019-09-12 16:13:10.479056669 +0200 @@ -2,6 +2,7 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. @@ -374,10 +374,10 @@ diff -up chromium-76.0.3809.132/services/network/network_context_unittest.cc.cer #include "components/network_session_configurator/common/network_switches.h" #include "components/prefs/testing_pref_service.h" +#include "crypto/sha2.h" - #include "mojo/public/cpp/bindings/interface_request.h" - #include "mojo/public/cpp/bindings/strong_binding.h" + #include "mojo/public/cpp/bindings/remote.h" + #include "mojo/public/cpp/bindings/self_owned_receiver.h" #include "mojo/public/cpp/system/data_pipe_utils.h" -@@ -113,6 +116,11 @@ +@@ -115,6 +118,11 @@ #include "url/scheme_host_port.h" #include "url/url_constants.h" @@ -386,11 +386,11 @@ diff -up chromium-76.0.3809.132/services/network/network_context_unittest.cc.cer +#include "services/network/public/mojom/ct_log_info.mojom.h" +#endif + - #if BUILDFLAG(ENABLE_REPORTING) - #include "net/network_error_logging/network_error_logging_service.h" - #include "net/reporting/reporting_cache.h" -@@ -5566,6 +5574,72 @@ TEST_F(NetworkContextTest, BlockAllCooki - EXPECT_EQ("None", response_body); + #if !BUILDFLAG(DISABLE_FTP_SUPPORT) + #include "net/ftp/ftp_auth_cache.h" + #endif // !BUILDFLAG(DISABLE_FTP_SUPPORT) +@@ -5958,6 +5966,72 @@ TEST_F(NetworkContextSplitCacheTest, + true /* was_cached */, true /* is_navigation */); } +#if BUILDFLAG(IS_CT_SUPPORTED) @@ -462,9 +462,9 @@ diff -up chromium-76.0.3809.132/services/network/network_context_unittest.cc.cer } // namespace } // namespace network -diff -up chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom.certificate-transparency chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom ---- chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 -+++ chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom 2019-09-03 22:08:28.936786554 +0200 +diff -up chromium-77.0.3865.75/services/network/public/mojom/ct_log_info.mojom.certificate-transparency chromium-77.0.3865.75/services/network/public/mojom/ct_log_info.mojom +--- chromium-77.0.3865.75/services/network/public/mojom/ct_log_info.mojom.certificate-transparency 2019-09-09 23:55:22.000000000 +0200 ++++ chromium-77.0.3865.75/services/network/public/mojom/ct_log_info.mojom 2019-09-12 16:09:52.824635180 +0200 @@ -4,6 +4,8 @@ module network.mojom; @@ -488,10 +488,10 @@ diff -up chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom. + // If the log is currently qualified, this will not be set. + mojo_base.mojom.TimeDelta? disqualified_at; }; -diff -up chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom.certificate-transparency chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom ---- chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 -+++ chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom 2019-09-03 22:08:28.936786554 +0200 -@@ -238,15 +238,6 @@ struct NetworkContextParams { +diff -up chromium-77.0.3865.75/services/network/public/mojom/network_context.mojom.certificate-transparency chromium-77.0.3865.75/services/network/public/mojom/network_context.mojom +--- chromium-77.0.3865.75/services/network/public/mojom/network_context.mojom.certificate-transparency 2019-09-09 23:55:22.000000000 +0200 ++++ chromium-77.0.3865.75/services/network/public/mojom/network_context.mojom 2019-09-12 16:09:52.825635192 +0200 +@@ -239,15 +239,6 @@ struct NetworkContextParams { [EnableIf=is_android] bool check_clear_text_permitted = false; @@ -507,7 +507,7 @@ diff -up chromium-76.0.3809.132/services/network/public/mojom/network_context.mo // Enables HTTP/0.9 on ports other than 80 for HTTP and 443 for HTTPS. bool http_09_on_non_default_ports_enabled = false; -@@ -299,6 +290,15 @@ struct NetworkContextParams { +@@ -300,6 +291,15 @@ struct NetworkContextParams { // servers, so they can discover misconfigurations. bool enable_certificate_reporting = false; @@ -523,7 +523,7 @@ diff -up chromium-76.0.3809.132/services/network/public/mojom/network_context.mo // Enables Expect CT reporting, which sends reports for opted-in sites that // don't serve sufficient Certificate Transparency information. [EnableIf=is_ct_supported] -@@ -310,6 +310,13 @@ struct NetworkContextParams { +@@ -311,6 +311,13 @@ struct NetworkContextParams { [EnableIf=is_ct_supported] array ct_logs; diff --git a/chromium-77.0.3865.75-fedora-user-agent.patch b/chromium-77.0.3865.75-fedora-user-agent.patch new file mode 100644 index 0000000..8f6de51 --- /dev/null +++ b/chromium-77.0.3865.75-fedora-user-agent.patch @@ -0,0 +1,12 @@ +diff -up chromium-77.0.3865.75/content/common/user_agent.cc.fedora-user-agent chromium-77.0.3865.75/content/common/user_agent.cc +--- chromium-77.0.3865.75/content/common/user_agent.cc.fedora-user-agent 2019-09-12 15:49:11.902270729 +0200 ++++ chromium-77.0.3865.75/content/common/user_agent.cc 2019-09-12 15:50:11.555732044 +0200 +@@ -35,7 +35,7 @@ std::string GetUserAgentPlatform() { + #elif defined(OS_MACOSX) + return "Macintosh; "; + #elif defined(USE_X11) || defined(USE_OZONE) +- return "X11; "; // strange, but that's what Firefox uses ++ return "X11; Fedora; "; // strange, but that's what Firefox uses + #elif defined(OS_ANDROID) + return "Linux; "; + #elif defined(OS_POSIX) diff --git a/chromium-77.0.3865.75-fix-v8-gcc.patch b/chromium-77.0.3865.75-fix-v8-gcc.patch new file mode 100644 index 0000000..385778c --- /dev/null +++ b/chromium-77.0.3865.75-fix-v8-gcc.patch @@ -0,0 +1,14 @@ +diff -up chromium-77.0.3865.75/v8/src/objects/js-objects.cc.fix-v8-gcc chromium-77.0.3865.75/v8/src/objects/js-objects.cc +--- chromium-77.0.3865.75/v8/src/objects/js-objects.cc.fix-v8-gcc 2019-09-12 15:55:18.936238980 +0200 ++++ chromium-77.0.3865.75/v8/src/objects/js-objects.cc 2019-09-12 15:56:06.796645726 +0200 +@@ -3773,6 +3773,10 @@ Handle CreateElementDi + return new_element_dictionary; + } + ++template void JSObject::ApplyAttributesToDictionary( ++ Isolate* isolate, ReadOnlyRoots roots, Handle dictionary, ++ const PropertyAttributes attributes); ++ + template + Maybe JSObject::PreventExtensionsWithTransition( + Handle object, ShouldThrow should_throw) { diff --git a/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch b/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch new file mode 100644 index 0000000..d342e2d --- /dev/null +++ b/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch @@ -0,0 +1,13 @@ +diff -up chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h.nogccoptmath chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h +--- chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h.nogccoptmath 2019-09-12 09:55:13.041038765 +0200 ++++ chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h 2019-09-12 10:11:14.088101504 +0200 +@@ -24,8 +24,7 @@ + #elif !defined(__native_client__) && \ + ((defined(__clang__) && \ + ((__clang_major__ > 3) || \ +- (__clang_major__ == 3 && __clang_minor__ >= 4))) || \ +- (defined(__GNUC__) && __GNUC__ >= 5)) ++ (__clang_major__ == 3 && __clang_minor__ >= 4))) + #include "base/numerics/safe_math_clang_gcc_impl.h" + #define BASE_HAS_OPTIMIZED_SAFE_MATH (1) + #else diff --git a/chromium-77.0.3865.75-gcc5-r3.patch b/chromium-77.0.3865.75-gcc5-r3.patch new file mode 100644 index 0000000..34b858a --- /dev/null +++ b/chromium-77.0.3865.75-gcc5-r3.patch @@ -0,0 +1,36 @@ +diff -up chromium-77.0.3865.75/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 chromium-77.0.3865.75/gpu/ipc/common/mailbox_struct_traits.h +--- chromium-77.0.3865.75/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 2019-09-09 23:55:18.000000000 +0200 ++++ chromium-77.0.3865.75/gpu/ipc/common/mailbox_struct_traits.h 2019-09-12 10:13:16.710206500 +0200 +@@ -15,7 +15,7 @@ namespace mojo { + template <> + struct StructTraits { + static base::span name(const gpu::Mailbox& mailbox) { +- return mailbox.name; ++ return base::make_span(mailbox.name); + } + static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out); + }; +diff -up chromium-77.0.3865.75/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 chromium-77.0.3865.75/services/viz/public/cpp/compositing/quads_struct_traits.h +--- chromium-77.0.3865.75/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 2019-09-09 23:55:23.000000000 +0200 ++++ chromium-77.0.3865.75/services/viz/public/cpp/compositing/quads_struct_traits.h 2019-09-12 10:13:16.710206500 +0200 +@@ -391,7 +391,7 @@ struct StructTraits vertex_opacity(const viz::DrawQuad& input) { + const viz::TextureDrawQuad* quad = + viz::TextureDrawQuad::MaterialCast(&input); +- return quad->vertex_opacity; ++ return base::make_span(quad->vertex_opacity); + } + + static bool y_flipped(const viz::DrawQuad& input) { +diff -up chromium-77.0.3865.75/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 chromium-77.0.3865.75/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc +--- chromium-77.0.3865.75/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 2019-09-12 10:13:16.711206509 +0200 ++++ chromium-77.0.3865.75/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2019-09-12 15:41:15.300158849 +0200 +@@ -10,7 +10,7 @@ + + #include "modules/audio_processing/aec3/aec_state.h" + +-#include ++#include + + #include + #include diff --git a/chromium-77.0.3865.75-no-zlib-mangle.patch b/chromium-77.0.3865.75-no-zlib-mangle.patch new file mode 100644 index 0000000..c32d226 --- /dev/null +++ b/chromium-77.0.3865.75-no-zlib-mangle.patch @@ -0,0 +1,22 @@ +diff -up chromium-77.0.3865.75/third_party/zlib/zconf.h.nozmangle chromium-77.0.3865.75/third_party/zlib/zconf.h +--- chromium-77.0.3865.75/third_party/zlib/zconf.h.nozmangle 2019-09-12 09:36:37.924086850 +0200 ++++ chromium-77.0.3865.75/third_party/zlib/zconf.h 2019-09-12 09:53:01.623958551 +0200 +@@ -9,18 +9,6 @@ + #define ZCONF_H + + /* +- * This library is also built as a part of AOSP, which does not need to include +- * chromeconf.h. This config does not want chromeconf.h, so it can set this +- * macro to opt out. While this works today, there's no guarantee that building +- * zlib outside of Chromium keeps working in the future. +- */ +-#if !defined(CHROMIUM_ZLIB_NO_CHROMECONF) +-/* This include does prefixing as below, but with an updated set of names. Also +- * sets up export macros in component builds. */ +-#include "chromeconf.h" +-#endif +- +-/* + * If you *really* need a unique prefix for all types and library functions, + * compile with -DZ_PREFIX. The "standard" zlib should be compiled without it. + * Even better than compiling with -DZ_PREFIX would be to use configure to set diff --git a/chromium.spec b/chromium.spec index 1471b94..a2d54e4 100644 --- a/chromium.spec +++ b/chromium.spec @@ -168,14 +168,14 @@ BuildRequires: libicu-devel >= 5.4 %global chromoting_client_id %nil %endif -%global majorversion 76 +%global majorversion 77 %if %{freeworld} Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3809.132 +Version: %{majorversion}.0.3865.75 Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home @@ -215,20 +215,20 @@ Patch16: chromium-60.0.3112.78-no-libpng-prefix.patch # Do not mangle libjpeg Patch17: chromium-60.0.3112.78-jpeg-nomangle.patch # Do not mangle zlib -Patch18: chromium-75.0.3770.80-no-zlib-mangle.patch +Patch18: chromium-77.0.3865.75-no-zlib-mangle.patch # Fix libavutil include pathing to find arch specific timer.h # For some reason, this only fails on aarch64. No idea why. Patch19: chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch # from gentoo -Patch20: chromium-61.0.3163.79-gcc-no-opt-safe-math.patch +Patch20: chromium-77.0.3865.75-gcc-no-opt-safe-math.patch # From gentoo -Patch21: chromium-72.0.3626.121-gcc5-r3.patch +Patch21: chromium-77.0.3865.75-gcc5-r3.patch # To use round with gcc, you need to #include Patch22: chromium-65.0.3325.146-gcc-round-fix.patch # Include proper headers to invoke memcpy() Patch23: chromium-65.0.3325.146-memcpy-fix.patch # ../../mojo/public/cpp/bindings/associated_interface_ptr_info.h:48:43: error: cannot convert 'const mojo::ScopedInterfaceEndpointHandle' to 'bool' in return -Patch24: chromium-68.0.3440.106-boolfix.patch +Patch24: chromium-77.0.3865.75-boolfix.patch # From Debian Patch25: chromium-71.0.3578.98-skia-aarch64-buildfix.patch # Do not use unrar code, it is non-free @@ -236,7 +236,7 @@ Patch27: chromium-73.0.3683.75-norar.patch # Upstream GCC fixes Patch28: chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch # Add "Fedora" to the user agent string -Patch29: chromium-72.0.3626.121-fedora-user-agent.patch +Patch29: chromium-77.0.3865.75-fedora-user-agent.patch # Try to fix version.py for Rawhide Patch30: chromium-71.0.3578.98-py2-bootstrap.patch # Fix default on redeclaration error @@ -264,43 +264,11 @@ Patch41: chromium-75.0.3770.80-SIOCGSTAMP.patch # Revert https://chromium.googlesource.com/chromium/src/+/daff6b66faae53a0cefb88987c9ff4843629b728%5E%21/#F0 # It might make clang happy but it breaks gcc. F*** clang. Patch43: chromium-75.0.3770.80-revert-daff6b.patch -# Avoid pure virtual crash destroying RenderProcessUserData -# https://chromium.googlesource.com/chromium/src/+/cdf306db81efaaaa954487585d5a5a16205a5ebd%5E%21/ -Patch44: chromium-75.0.3770.80-pure-virtual-crash-fix.patch # rename function to avoid conflict with rawhide glibc "gettid()" Patch45: chromium-75.0.3770.80-grpc-gettid-fix.patch # fix v8 compile with gcc # https://chromium.googlesource.com/v8/v8/+/3b8c624bda58d05aea80dd9626cd550537d6ac3f%5E%21/#F1 -Patch46: chromium-75.0.3770.100-fix-v8-gcc.patch -# Fix Vulkan compilation with gcc -# https://chromium.googlesource.com/chromium/src/+/fdb3bb1f8c41d044a5b0cb80257a26dd3c8f83a3 -Patch47: chromium-76.0.3809.100-gcc-vulkan.patch -# https://chromium-review.googlesource.com/c/chromium/src/+/1645297 -Patch48: chromium-76.0.3809.100-gcc-cc-no-except.patch -# https://chromium.googlesource.com/chromium/src.git/+/502e6e42633d2571c8236c8649b031fe9915eb5b -Patch49: chromium-76.0.3809.100-gcc-net-fetcher.patch -# https://quiche.googlesource.com/quiche.git/+/9424add9d73432a794b7944790253213cce6dcb8 -Patch50: chromium-76.0.3809.100-quiche-compile-fix.patch -# https://chromium.googlesource.com/chromium/src/+/53bb5a463ee956c70230eaa5450022185d0ddc3c -Patch51: chromium-76.0.3809.100-throttling-dead-beef.patch -# https://chromium.googlesource.com/chromium/src/+/52b5ceac95b67491b1c71f0ef9a32b778bbbaa2e -Patch52: chromium-76.0.3809.132-gcc-ambigous-instantiation.patch -# https://chromium.googlesource.com/chromium/src.git/+/715cb38eac889625de0c429d2672562188b4107e -Patch53: chromium-76.0.3809.100-weak-ptr-no-except.patch -# https://chromium.googlesource.com/chromium/src.git/+/c6afbd59c997c2b64f11abdd1eaef71ae8ea2ddc -Patch54: chromium-76.0.3809.100-gcc-feature-policy-parser.patch -# https://chromium.googlesource.com/chromium/src.git/+/cf6d6b40d711fce93a24a2cf517fa3becdbae8bb -Patch55: chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch -# https://chromium.googlesource.com/chromium/src.git/+/dcb55fb8f18abe5f43d260aa67b14b2dc996f992 -Patch56: chromium-76.0.3809.100-gcc-move-explicit-initialization.patch -# https://chromium.googlesource.com/chromium/src.git/+/7dc76c8d9f4cfbce7cf11424120aa6f6094916dc -Patch57: chromium-76.0.3809.100-gcc-initialization-order.patch -# https://chromium.googlesource.com/chromium/src.git/+/138904af5d6a4158ef4247fda816a8035e621e59 -Patch58: chromium-76.0.3809.100-gcc-history-move-noexcept.patch -# https://chromium.googlesource.com/chromium/src.git/+/bdc24128b75008743d819e298557a53205706e7c -Patch59: chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch -# https://chromium.googlesource.com/chromium/src.git/+/5d7f227fa844e79568df64e495e7ef958c12d7b2 -Patch60: chromium-76.0.3809.100-gcc-themeservice-includes.patch +Patch46: chromium-77.0.3865.75-fix-v8-gcc.patch # In GCC one can't use alignas() for exported classes # https://chromium.googlesource.com/chromium/src.git/+/8148fd96ae04a1150a9c6012634dcd2a7335f87a Patch61: chromium-76.0.3809.100-gcc-no-alignas-and-export.patch @@ -309,7 +277,7 @@ Patch62: chromium-76.0.3809.100-gcc-remoting-constexpr.patch # Needs to be submitted.. (ugly hack, needs to be added properly to GN files) Patch63: chromium-76.0.3809.100-vtable-symbol-undefined.patch # https://chromium.googlesource.com/chromium/src.git/+/3c9720245e440c4b7222f8348d2a2a3c25e098ae -Patch64: chromium-76.0.3809.132-certificate-transparency.patch +Patch64: chromium-77.0.3865.75-certificate-transparency.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -855,7 +823,7 @@ udev. %patch22 -p1 -b .gcc-round-fix %patch23 -p1 -b .memcpyfix %patch24 -p1 -b .boolfix -%patch25 -p1 -b .aarch64fix +#%patch25 -p1 -b .aarch64fix %patch27 -p1 -b .nounrar %patch28 -p1 -b .gcc-cpolicyprovider %patch29 -p1 -b .fedora-user-agent @@ -870,23 +838,8 @@ udev. %patch38 -p1 -b .disable-ndnpc %patch41 -p1 -b .SIOCGSTAMP %patch43 -p1 -b .revert-daff6b -%patch44 -p1 -b .pure-virtual-fix %patch45 -p1 -b .gettid-fix %patch46 -p1 -b .fix-v8-gcc -%patch47 -p1 -b .gcc-vulkan -%patch48 -p1 -b .gcc-cc-no-except -%patch49 -p1 -b .gcc-net-fetcher -%patch50 -p1 -b .quiche-compile-fix -%patch51 -p1 -b .throttling-dead-beef -%patch52 -p1 -b .gcc-ambigous-instantiation -%patch53 -p1 -b .weak-ptr-no-except -%patch54 -p1 -b .gcc-feature-policy-parser -%patch55 -p1 -b .gcc-hasfraction-constexpr -%patch56 -p1 -b .gcc-move-explicit-initialization -%patch57 -p1 -b .gcc-initialization-order -%patch58 -p1 -b .gcc-history-move-noexcept -%patch59 -p1 -b .gcc-accountinfo-move-noexcept -%patch60 -p1 -b .gcc-themeservice-includes %patch61 -p1 -b .gcc-no-alignas-and-export %patch62 -p1 -b .gcc-remoting-constexpr %patch63 -p1 -b .vtable-symbol-undefined @@ -1477,6 +1430,7 @@ sed -i.orig -e 's/getenv("CHROME_VERSION_EXTRA")/"Fedora Project"/' $FILE . /opt/rh/devtoolset-%{dts_version}/enable %endif +echo # Now do the full browser %if 0%{freeworld} ../depot_tools/ninja -C %{target} -vvv media diff --git a/sources b/sources index 2d38a7c..a1d28bf 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-76.0.3809.132-clean.tar.xz) = fbc5f989945adfaffb9fb5199ccb988accdc53f41a03bba9c4ab3df8585b9267b1f34cd7a6ac487eff34ebb6e65865e32ceea4ad945eec30f871d8eed41f3e6f +SHA512 (chromium-77.0.3865.75-clean.tar.xz) = 9531e5d533bf305bd82ae2dbc7bf1a9e081377b61a5611f4bfa14ed389f94d106e26a9981771ed11697ca9c2490eb24c69e992fd907de241698c89a6131db0b6 From 8458f58818dc3548cdaec285bd680ff9c84f9f46 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 15:18:03 +0200 Subject: [PATCH 0445/1449] Unbundle the zlib Use the gentoo patch. --- chromium-77.0.3865.75-unbundle-zlib.patch | 25 +++++++++++++++++++++++ chromium.spec | 3 +++ 2 files changed, 28 insertions(+) create mode 100644 chromium-77.0.3865.75-unbundle-zlib.patch diff --git a/chromium-77.0.3865.75-unbundle-zlib.patch b/chromium-77.0.3865.75-unbundle-zlib.patch new file mode 100644 index 0000000..d6c45ad --- /dev/null +++ b/chromium-77.0.3865.75-unbundle-zlib.patch @@ -0,0 +1,25 @@ +From e1bbdec720a333937bd1b990ae0f7ee97db0d3b0 Mon Sep 17 00:00:00 2001 +From: Your Name +Date: Fri, 28 Jun 2019 15:56:23 +0000 +Subject: [PATCH] update zlib + +--- + third_party/perfetto/gn/BUILD.gn | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/third_party/perfetto/gn/BUILD.gn b/third_party/perfetto/gn/BUILD.gn +index c951f5f..297eee3 100644 +--- a/third_party/perfetto/gn/BUILD.gn ++++ b/third_party/perfetto/gn/BUILD.gn +@@ -200,7 +200,7 @@ group("zlib") { + "//buildtools:zlib", + ] + } else if (build_with_chromium) { +- public_configs = [ "//third_party/zlib:zlib_config" ] ++ public_configs = [ "//third_party/zlib:system_zlib" ] + public_deps = [ + "//third_party/zlib", + ] +-- +2.21.0 + diff --git a/chromium.spec b/chromium.spec index a2d54e4..cc79386 100644 --- a/chromium.spec +++ b/chromium.spec @@ -278,6 +278,8 @@ Patch62: chromium-76.0.3809.100-gcc-remoting-constexpr.patch Patch63: chromium-76.0.3809.100-vtable-symbol-undefined.patch # https://chromium.googlesource.com/chromium/src.git/+/3c9720245e440c4b7222f8348d2a2a3c25e098ae Patch64: chromium-77.0.3865.75-certificate-transparency.patch +# https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-unbundle-zlib.patch +Patch65: chromium-77.0.3865.75-unbundle-zlib.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -844,6 +846,7 @@ udev. %patch62 -p1 -b .gcc-remoting-constexpr %patch63 -p1 -b .vtable-symbol-undefined %patch64 -p1 -b .certificate-transparency +%patch65 -p1 -b .unbundle-zlib # EPEL specific patches %if 0%{?rhel} == 7 From 1b0a93bc239d9ee125a0356f974176ef82bafeb3 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 15:23:46 +0200 Subject: [PATCH 0446/1449] Missing bundled dependency for headless --- chromium.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/chromium.spec b/chromium.spec index cc79386..4b20549 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1239,6 +1239,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ %endif 'third_party/openscreen' \ 'third_party/opus' \ + 'third_party/one_euro_filter' \ 'third_party/ots' \ 'third_party/pdfium' \ 'third_party/pdfium/third_party/agg23' \ From 2cfc18c994143ce77664104024315e6056e4371e Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 15:21:43 +0200 Subject: [PATCH 0447/1449] Fix the previously rebased patched --- chromium-77.0.3865.75-gcc-no-opt-safe-math.patch | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch b/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch index d342e2d..920a53e 100644 --- a/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch +++ b/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch @@ -1,13 +1,15 @@ diff -up chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h.nogccoptmath chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h ---- chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h.nogccoptmath 2019-09-12 09:55:13.041038765 +0200 -+++ chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h 2019-09-12 10:11:14.088101504 +0200 -@@ -24,8 +24,7 @@ +--- chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h.nogccoptmath 2019-09-13 14:17:22.726738088 +0200 ++++ chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h 2019-09-13 14:31:37.686898493 +0200 +@@ -23,9 +23,8 @@ + // Where available use builtin math overflow support on Clang and GCC. #elif !defined(__native_client__) && \ ((defined(__clang__) && \ - ((__clang_major__ > 3) || \ +- ((__clang_major__ > 3) || \ - (__clang_major__ == 3 && __clang_minor__ >= 4))) || \ - (defined(__GNUC__) && __GNUC__ >= 5)) -+ (__clang_major__ == 3 && __clang_minor__ >= 4))) ++ (__clang_major__ > 3) || \ ++ (__clang_major__ == 3 && __clang_minor__ >= 4))) #include "base/numerics/safe_math_clang_gcc_impl.h" #define BASE_HAS_OPTIMIZED_SAFE_MATH (1) #else From 5e3b7f3e899c48fbabcf95b19bc275a629a0e871 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 15:18:54 +0200 Subject: [PATCH 0448/1449] Update the clean-ffmpeg.sh script --- clean_ffmpeg.sh | 1 + sources | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index 2f27435..fd226e8 100755 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -138,6 +138,7 @@ header_files=" libavcodec/x86/inline_asm.h \ libavcodec/vlc.h \ libavcodec/vorbisdsp.h \ libavcodec/vp3data.h \ + libavcodec/vp4data.h \ libavcodec/vp3dsp.h \ libavcodec/vp56.h \ libavcodec/vp56dsp.h \ diff --git a/sources b/sources index a1d28bf..b9b0498 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-77.0.3865.75-clean.tar.xz) = 9531e5d533bf305bd82ae2dbc7bf1a9e081377b61a5611f4bfa14ed389f94d106e26a9981771ed11697ca9c2490eb24c69e992fd907de241698c89a6131db0b6 +SHA512 (chromium-77.0.3865.75-clean.tar.xz) = ca7a71586a60abeacb70b9d08ba9a28455d875bfa5232070fdff079e52395924b80f05d7627e3a5d5c7a3df606a39a31e05634683a052c9efb634ed536afc092 From d08e680fa760fa174b8940428aafbf62cef21c50 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 15:24:09 +0200 Subject: [PATCH 0449/1449] Include to fix the headless build --- chromium-77.0.3865.75-gcc-include-memory.patch | 12 ++++++++++++ chromium.spec | 3 +++ 2 files changed, 15 insertions(+) create mode 100644 chromium-77.0.3865.75-gcc-include-memory.patch diff --git a/chromium-77.0.3865.75-gcc-include-memory.patch b/chromium-77.0.3865.75-gcc-include-memory.patch new file mode 100644 index 0000000..93b4399 --- /dev/null +++ b/chromium-77.0.3865.75-gcc-include-memory.patch @@ -0,0 +1,12 @@ +diff -up chromium-77.0.3865.75/third_party/one_euro_filter/src/one_euro_filter.h.gcc-include-memory chromium-77.0.3865.75/third_party/one_euro_filter/src/one_euro_filter.h +--- chromium-77.0.3865.75/third_party/one_euro_filter/src/one_euro_filter.h.gcc-include-memory 2019-09-13 14:44:24.962770079 +0200 ++++ chromium-77.0.3865.75/third_party/one_euro_filter/src/one_euro_filter.h 2019-09-13 14:44:45.347073612 +0200 +@@ -3,6 +3,8 @@ + + #include "low_pass_filter.h" + ++#include ++ + namespace one_euro_filter { + namespace test { + class OneEuroFilterTest; diff --git a/chromium.spec b/chromium.spec index 4b20549..f8a9800 100644 --- a/chromium.spec +++ b/chromium.spec @@ -280,6 +280,8 @@ Patch63: chromium-76.0.3809.100-vtable-symbol-undefined.patch Patch64: chromium-77.0.3865.75-certificate-transparency.patch # https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-unbundle-zlib.patch Patch65: chromium-77.0.3865.75-unbundle-zlib.patch +# Needs to be submitted.. +Patch66: chromium-77.0.3865.75-gcc-include-memory.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -847,6 +849,7 @@ udev. %patch63 -p1 -b .vtable-symbol-undefined %patch64 -p1 -b .certificate-transparency %patch65 -p1 -b .unbundle-zlib +%patch66 -p1 -b .gcc-include-memory # EPEL specific patches %if 0%{?rhel} == 7 From 1a11ef1abaf843579269cb7f1a60aceb6b50b023 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 15:00:03 +0200 Subject: [PATCH 0450/1449] Use the bundled harfbuzz-ng for < F31 Needed because of the hb_subset_input_set_retain_gids(), that's only available in harbuzz 2.4 that's only in F31+ --- chromium.spec | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/chromium.spec b/chromium.spec index f8a9800..102f14d 100644 --- a/chromium.spec +++ b/chromium.spec @@ -137,9 +137,9 @@ BuildRequires: libicu-devel >= 5.4 %global bundlefontconfig 0 %endif -# Needs at least harfbuzz 2.3.0 now. -# 2019-03-13 -%if 0%{?fedora} < 30 +# Needs at least harfbuzz 2.4.0 now. +# 2019-09-13 +%if 0%{?fedora} < 31 %global bundleharfbuzz 1 %else %global bundleharfbuzz 0 From 63945f4efd038b18f3556b766e01ce17012d8ece Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 21:48:17 +0200 Subject: [PATCH 0451/1449] Remove an unneeded patch that's breaking the build --- chromium-77.0.3865.75-fix-v8-gcc.patch | 14 -------------- chromium.spec | 4 ---- 2 files changed, 18 deletions(-) delete mode 100644 chromium-77.0.3865.75-fix-v8-gcc.patch diff --git a/chromium-77.0.3865.75-fix-v8-gcc.patch b/chromium-77.0.3865.75-fix-v8-gcc.patch deleted file mode 100644 index 385778c..0000000 --- a/chromium-77.0.3865.75-fix-v8-gcc.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -up chromium-77.0.3865.75/v8/src/objects/js-objects.cc.fix-v8-gcc chromium-77.0.3865.75/v8/src/objects/js-objects.cc ---- chromium-77.0.3865.75/v8/src/objects/js-objects.cc.fix-v8-gcc 2019-09-12 15:55:18.936238980 +0200 -+++ chromium-77.0.3865.75/v8/src/objects/js-objects.cc 2019-09-12 15:56:06.796645726 +0200 -@@ -3773,6 +3773,10 @@ Handle CreateElementDi - return new_element_dictionary; - } - -+template void JSObject::ApplyAttributesToDictionary( -+ Isolate* isolate, ReadOnlyRoots roots, Handle dictionary, -+ const PropertyAttributes attributes); -+ - template - Maybe JSObject::PreventExtensionsWithTransition( - Handle object, ShouldThrow should_throw) { diff --git a/chromium.spec b/chromium.spec index 102f14d..008873e 100644 --- a/chromium.spec +++ b/chromium.spec @@ -266,9 +266,6 @@ Patch41: chromium-75.0.3770.80-SIOCGSTAMP.patch Patch43: chromium-75.0.3770.80-revert-daff6b.patch # rename function to avoid conflict with rawhide glibc "gettid()" Patch45: chromium-75.0.3770.80-grpc-gettid-fix.patch -# fix v8 compile with gcc -# https://chromium.googlesource.com/v8/v8/+/3b8c624bda58d05aea80dd9626cd550537d6ac3f%5E%21/#F1 -Patch46: chromium-77.0.3865.75-fix-v8-gcc.patch # In GCC one can't use alignas() for exported classes # https://chromium.googlesource.com/chromium/src.git/+/8148fd96ae04a1150a9c6012634dcd2a7335f87a Patch61: chromium-76.0.3809.100-gcc-no-alignas-and-export.patch @@ -843,7 +840,6 @@ udev. %patch41 -p1 -b .SIOCGSTAMP %patch43 -p1 -b .revert-daff6b %patch45 -p1 -b .gettid-fix -%patch46 -p1 -b .fix-v8-gcc %patch61 -p1 -b .gcc-no-alignas-and-export %patch62 -p1 -b .gcc-remoting-constexpr %patch63 -p1 -b .vtable-symbol-undefined From 8ed36c4625d4090e87a85bf5368f82289664d77f Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 22:05:31 +0200 Subject: [PATCH 0452/1449] Another export and alignas gcc compilation fix --- chromium-77.0.3865.75-base-gcc-no-alignas.patch | 12 ++++++++++++ chromium.spec | 3 +++ 2 files changed, 15 insertions(+) create mode 100644 chromium-77.0.3865.75-base-gcc-no-alignas.patch diff --git a/chromium-77.0.3865.75-base-gcc-no-alignas.patch b/chromium-77.0.3865.75-base-gcc-no-alignas.patch new file mode 100644 index 0000000..86a2271 --- /dev/null +++ b/chromium-77.0.3865.75-base-gcc-no-alignas.patch @@ -0,0 +1,12 @@ +diff -up chromium-77.0.3865.75/base/task/promise/dependent_list.h.base-gcc-no-alignas chromium-77.0.3865.75/base/task/promise/dependent_list.h +--- chromium-77.0.3865.75/base/task/promise/dependent_list.h.base-gcc-no-alignas 2019-09-13 21:45:51.873172347 +0200 ++++ chromium-77.0.3865.75/base/task/promise/dependent_list.h 2019-09-13 21:46:21.661522514 +0200 +@@ -59,7 +59,7 @@ class BASE_EXPORT DependentList { + + // Align Node on an 8-byte boundary to ensure the first 3 bits are 0 and can + // be used to store additional state (see static_asserts below). +- class BASE_EXPORT alignas(8) Node { ++ class BASE_EXPORT ALIGNAS(8) Node { + public: + Node(); + explicit Node(Node&& other) noexcept; diff --git a/chromium.spec b/chromium.spec index 008873e..636aaab 100644 --- a/chromium.spec +++ b/chromium.spec @@ -279,6 +279,8 @@ Patch64: chromium-77.0.3865.75-certificate-transparency.patch Patch65: chromium-77.0.3865.75-unbundle-zlib.patch # Needs to be submitted.. Patch66: chromium-77.0.3865.75-gcc-include-memory.patch +# Needs to be submitted.. +Patch67: chromium-77.0.3865.75-base-gcc-no-alignas.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -846,6 +848,7 @@ udev. %patch64 -p1 -b .certificate-transparency %patch65 -p1 -b .unbundle-zlib %patch66 -p1 -b .gcc-include-memory +%patch67 -p1 -b .base-gcc-no-alignas # EPEL specific patches %if 0%{?rhel} == 7 From fb22c7a5e910b0d702d8c8cace78936eff63eccc Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 22:06:07 +0200 Subject: [PATCH 0453/1449] Preserve the spirv heads for swiftshader compilation --- chromium.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/chromium.spec b/chromium.spec index 636aaab..bfbc930 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1286,6 +1286,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/swiftshader/third_party/subzero' \ 'third_party/swiftshader/third_party/llvm-subzero' \ 'third_party/swiftshader/third_party/llvm-7.0' \ + 'third_party/swiftshader/third_party/SPIRV-Headers' \ 'third_party/tcmalloc' \ 'third_party/test_fonts' \ 'third_party/usb_ids' \ From ecb75dee3259ac4e802881ab69b036fa7019d553 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 22:13:56 +0200 Subject: [PATCH 0454/1449] Fix the release number and add a changelog entry --- chromium.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index bfbc930..dd3fbaf 100644 --- a/chromium.spec +++ b/chromium.spec @@ -176,7 +176,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3865.75 -Release: 2%{?dist} +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1883,6 +1883,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Fri Sep 13 2019 Tomas Popela - 77.0.3865.75-1 +- Update to 77.0.3865.75 + * Tue Sep 03 2019 Tomas Popela - 76.0.3809.132-2 - Backport patch to fix certificate transparency From dc2f301520eb0151967763d129a425fa0a509ada Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Sat, 14 Sep 2019 11:09:46 +0200 Subject: [PATCH 0455/1449] More of the harfbuzz related fixes --- chromium-77.0.3865.75-harfbuzz-subset.patch | 49 +++++++++++++++++++++ chromium.spec | 7 ++- 2 files changed, 54 insertions(+), 2 deletions(-) create mode 100644 chromium-77.0.3865.75-harfbuzz-subset.patch diff --git a/chromium-77.0.3865.75-harfbuzz-subset.patch b/chromium-77.0.3865.75-harfbuzz-subset.patch new file mode 100644 index 0000000..55d78d1 --- /dev/null +++ b/chromium-77.0.3865.75-harfbuzz-subset.patch @@ -0,0 +1,49 @@ +From 27e25336b8316ff3ec4e464058682ed85801fd06 Mon Sep 17 00:00:00 2001 +From: Raphael Kubo da Costa +Date: Mon, 29 Jul 2019 10:54:28 +0000 +Subject: [PATCH] Also link against libharfbuzz-subset when use_system_harfbuzz is true + +When building HarfBuzz as part of Chromium, there is a single source set +with all the files we need in the build. + +Upstream HarfBuzz, on the other hand, produces a few different libraries: +harfbuzz, harfbuzz-icu and harfbuzz-subset. When |use_system_harfbuzz| is +true, we were only looking for (and using) harfbuzz.pc with pkg-config even +though we also use symbols from libharfbuzz-subset.so. This resulted in +errors when linking: + + ld: obj/skia/skia/SkPDFSubsetFont.o: in function `SkPDFSubsetFont(sk_sp, SkPDFGlyphUse const&, SkPDF::Metadata::Subsetter, char const*, int)': + SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x48a): undefined reference to `hb_subset_input_create_or_fail' + ld: SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x4af): undefined reference to `hb_subset_input_glyph_set' + ld: SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x5d7): undefined reference to `hb_subset_input_set_retain_gids' + ld: SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x5e4): undefined reference to `hb_subset_input_set_drop_hints' + ld: SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x5f3): undefined reference to `hb_subset' + ld: SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x66f): undefined reference to `hb_subset_input_destroy' + +as reported in +https://groups.google.com/a/chromium.org/d/msg/chromium-packagers/UyJsVJ5QqWo/jSv5z7-rEQAJ + +Change-Id: I997af075c7b7263cd7cc71a63db5b0f93bd1ab59 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1715288 +Auto-Submit: Raphael Kubo da Costa +Commit-Queue: Dominik Röttsches +Reviewed-by: Dominik Röttsches +Cr-Commit-Position: refs/heads/master@{#681760} +--- + +diff --git a/third_party/harfbuzz-ng/BUILD.gn b/third_party/harfbuzz-ng/BUILD.gn +index 37d8e33..72013eb1d 100644 +--- a/third_party/harfbuzz-ng/BUILD.gn ++++ b/third_party/harfbuzz-ng/BUILD.gn +@@ -16,7 +16,10 @@ + "//third_party:freetype_harfbuzz", + "//third_party/freetype:freetype_source", + ] +- packages = [ "harfbuzz" ] ++ packages = [ ++ "harfbuzz", ++ "harfbuzz-subset", ++ ] + } + } else { + config("harfbuzz_config") { diff --git a/chromium.spec b/chromium.spec index dd3fbaf..8039cd0 100644 --- a/chromium.spec +++ b/chromium.spec @@ -281,6 +281,8 @@ Patch65: chromium-77.0.3865.75-unbundle-zlib.patch Patch66: chromium-77.0.3865.75-gcc-include-memory.patch # Needs to be submitted.. Patch67: chromium-77.0.3865.75-base-gcc-no-alignas.patch +# https://chromium.googlesource.com/chromium/src/+/27e25336b8316ff3ec4e464058682ed85801fd06 +Patch68: chromium-77.0.3865.75-harfbuzz-subset.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -366,7 +368,7 @@ BuildRequires: gperf %if 0%{?bundleharfbuzz} #nothing %else -BuildRequires: harfbuzz-devel >= 2.3.0 +BuildRequires: harfbuzz-devel >= 2.4.0 %endif BuildRequires: libatomic BuildRequires: libcap-devel @@ -633,7 +635,7 @@ Provides: bundled(freetype) = 2.9.3 %endif Provides: bundled(gperftools) = svn144 %if 0%{?bundleharfbuzz} -Provides: bundled(harfbuzz) = 2.3.0 +Provides: bundled(harfbuzz) = 2.4.0 %endif Provides: bundled(hunspell) = 1.6.0 Provides: bundled(iccjpeg) @@ -849,6 +851,7 @@ udev. %patch65 -p1 -b .unbundle-zlib %patch66 -p1 -b .gcc-include-memory %patch67 -p1 -b .base-gcc-no-alignas +%patch68 -p1 -b .harfbuzz-subset # EPEL specific patches %if 0%{?rhel} == 7 From 057d9fcd01bff959156616a47f0c13409dc6ecaf Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Sat, 14 Sep 2019 11:10:29 +0200 Subject: [PATCH 0456/1449] Don't remove an additional bundled library --- chromium.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/chromium.spec b/chromium.spec index 8039cd0..522df10 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1243,6 +1243,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/openh264' \ %endif 'third_party/openscreen' \ + 'third_party/openscreen/src/third_party/tinycbor' \ 'third_party/opus' \ 'third_party/one_euro_filter' \ 'third_party/ots' \ From 63ccbdcf58d947939423cf78126866370e0f78ba Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Sat, 14 Sep 2019 17:06:52 +0200 Subject: [PATCH 0457/1449] Backport another GCC build fix --- ...mium-77.0.3865.75-gcc-abstract-class.patch | 61 +++++++++++++++++++ chromium.spec | 3 + 2 files changed, 64 insertions(+) create mode 100644 chromium-77.0.3865.75-gcc-abstract-class.patch diff --git a/chromium-77.0.3865.75-gcc-abstract-class.patch b/chromium-77.0.3865.75-gcc-abstract-class.patch new file mode 100644 index 0000000..6d77299 --- /dev/null +++ b/chromium-77.0.3865.75-gcc-abstract-class.patch @@ -0,0 +1,61 @@ +From f08cb0022527081c078e8b96062e6c9b4fbda151 Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Fri, 26 Jul 2019 16:48:06 +0000 +Subject: [PATCH] BinaryUploadService: change parameter passing that cannot afford abstract class + +The method UploadForDeepScanning gets a Request as parameter. But Request is an +abstract class, so GCC will not allow that declaration (polimorphycs should be +passed by reference). Use std::unique_ptr so BinaryUploadService can assume +ownership. + +Bug: 819294 +Change-Id: I9e8c75cc92b01abd704d9049b0421555377da5ba +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1713550 +Reviewed-by: Daniel Rubery +Commit-Queue: José Dapena Paz +Cr-Commit-Position: refs/heads/master@{#681333} +--- + +diff --git a/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc b/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc +index 6430c89..4e90487 100644 +--- a/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc ++++ b/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc +@@ -10,7 +10,7 @@ + namespace safe_browsing { + + void BinaryUploadService::UploadForDeepScanning( +- BinaryUploadService::Request request) { ++ std::unique_ptr request) { + DCHECK_CURRENTLY_ON(content::BrowserThread::UI); + NOTREACHED(); + } +diff --git a/chrome/browser/safe_browsing/download_protection/binary_upload_service.h b/chrome/browser/safe_browsing/download_protection/binary_upload_service.h +index d2dfd83..9b6f395 100644 +--- a/chrome/browser/safe_browsing/download_protection/binary_upload_service.h ++++ b/chrome/browser/safe_browsing/download_protection/binary_upload_service.h +@@ -5,6 +5,8 @@ + #ifndef CHROME_BROWSER_SAFE_BROWSING_DOWNLOAD_PROTECTION_BINARY_UPLOAD_SERVICE_H_ + #define CHROME_BROWSER_SAFE_BROWSING_DOWNLOAD_PROTECTION_BINARY_UPLOAD_SERVICE_H_ + ++#include ++ + #include "base/callback.h" + #include "components/safe_browsing/proto/webprotect.pb.h" + +@@ -40,6 +42,7 @@ + public: + // |callback| will run on the UI thread. + explicit Request(Callback callback); ++ virtual ~Request() = default; + Request(const Request&) = delete; + Request& operator=(const Request&) = delete; + +@@ -67,7 +70,7 @@ + // Upload the given file contents for deep scanning. The results will be + // returned asynchronously by calling |request|'s |callback|. This must be + // called on the UI thread. +- void UploadForDeepScanning(Request request); ++ void UploadForDeepScanning(std::unique_ptr request); + }; + + } // namespace safe_browsing diff --git a/chromium.spec b/chromium.spec index 522df10..d874dd5 100644 --- a/chromium.spec +++ b/chromium.spec @@ -283,6 +283,8 @@ Patch66: chromium-77.0.3865.75-gcc-include-memory.patch Patch67: chromium-77.0.3865.75-base-gcc-no-alignas.patch # https://chromium.googlesource.com/chromium/src/+/27e25336b8316ff3ec4e464058682ed85801fd06 Patch68: chromium-77.0.3865.75-harfbuzz-subset.patch +# https://chromium.googlesource.com/chromium/src.git/+/f08cb0022527081c078e8b96062e6c9b4fbda151 +Patch69: chromium-77.0.3865.75-gcc-abstract-class.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -852,6 +854,7 @@ udev. %patch66 -p1 -b .gcc-include-memory %patch67 -p1 -b .base-gcc-no-alignas %patch68 -p1 -b .harfbuzz-subset +%patch69 -p1 -b .gcc-abstract-class # EPEL specific patches %if 0%{?rhel} == 7 From 578228ae99ca125111d573ee5ff5c7cca67264ee Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Sat, 14 Sep 2019 19:15:24 +0200 Subject: [PATCH 0458/1449] Customize the ninja status to show the currently build target So one is able to realize faster, where the build is failing. --- chromium.spec | 53 ++++++++++++++++++++++++++++++--------------------- 1 file changed, 31 insertions(+), 22 deletions(-) diff --git a/chromium.spec b/chromium.spec index d874dd5..5dec1f7 100644 --- a/chromium.spec +++ b/chromium.spec @@ -2,6 +2,13 @@ # https://fedoraproject.org/wiki/Changes/No_more_automagic_Python_bytecompilation_phase_2 %global _python_bytecompile_extra 1 +# Fancy build status, so we at least know, where we are.. +# %1 where +# %2 what +%global build_target() \ + export NINJA_STATUS="[%2:%f/%t] " ; \ + ../depot_tools/ninja -C '%1' -vvv '%2' + # This is faster when it works, but it doesn't always. %ifarch aarch64 %global use_jumbo 0 @@ -28,9 +35,9 @@ %global useapikeys 1 # Leave this alone, please. -%global target out/Release -%global headlesstarget out/Headless -%global remotingtarget out/Remoting +%global builddir out/Release +%global headlessbuilddir out/Headless +%global remotingbuilddir out/Remoting # Debuginfo packages aren't very useful here. If you need to debug # you should do a proper debug build (not implemented in this spec yet) @@ -1414,17 +1421,17 @@ if python2 -c 'import google ; print google.__path__' 2> /dev/null ; then \ fi tools/gn/bootstrap/bootstrap.py -v "$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" -%{target}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{target} +%{builddir}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{builddir} %if %{freeworld} # do not need to do headless gen %else %if %{build_headless} -%{target}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_HEADLESS_GN_DEFINES" %{headlesstarget} +%{builddir}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_HEADLESS_GN_DEFINES" %{headlessbuilddir} %endif %endif -%{target}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{remotingtarget} +%{builddir}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{remotingbuilddir} %if %{bundlelibusbx} # no hackity hack hack @@ -1444,34 +1451,36 @@ sed -i.orig -e 's/getenv("CHROME_VERSION_EXTRA")/"Fedora Project"/' $FILE . /opt/rh/devtoolset-%{dts_version}/enable %endif -echo +echo # Now do the full browser %if 0%{freeworld} -../depot_tools/ninja -C %{target} -vvv media +%build_target %{builddir} media %else %if %{build_headless} -# Do headless first. -../depot_tools/ninja -C %{headlesstarget} -vvv headless_shell +# Do headless first. +%build_target %{headlessbuilddir} headless_shell %endif -../depot_tools/ninja -C %{target} -vvv chrome chrome_sandbox chromedriver clear_key_cdm policy_templates +%build_target %{builddir} chrome +%build_target %{builddir} chrome_sandbox +%build_target %{builddir} chromedriver +%build_target %{builddir} clear_key_cdm +%build_target %{builddir} policy_templates # remote client -pushd remoting - -# ../../depot_tools/ninja -C ../%{target} -vvv remoting_me2me_host remoting_start_host remoting_it2me_native_messaging_host remoting_me2me_native_messaging_host remoting_native_messaging_manifests remoting_resources -../../depot_tools/ninja -C ../%{remotingtarget} -vvv remoting_all +# ../../depot_tools/ninja -C ../%{builddir} -vvv remoting_me2me_host remoting_start_host remoting_it2me_native_messaging_host remoting_me2me_native_messaging_host remoting_native_messaging_manifests remoting_resources +%build_target %{remotingbuilddir} remoting_all %if 0%{?build_remoting_app} %if 0%{?nacl} -GOOGLE_CLIENT_ID_REMOTING_IDENTITY_API=%{chromoting_client_id} ../../depot_tools/ninja -vv -C ../out/Release/ remoting_webapp +export GOOGLE_CLIENT_ID_REMOTING_IDENTITY_API=%{chromoting_client_id} +%build_target %{builddir} remoting_webapp %endif %endif -popd %endif # Nuke nacl/pnacl bits at the end of the build -rm -rf out/Release/gen/sdk +rm -rf %{builddir}/gen/sdk rm -rf native_client/toolchain rm -rf third_party/llvm-build/* @@ -1481,7 +1490,7 @@ rm -rf %{buildroot} %if 0%{freeworld} mkdir -p %{buildroot}%{chromium_path} -pushd %{target} +pushd %{builddir} cp -a libffmpeg.so* %{buildroot}%{chromium_path} cp -a libmedia.so* %{buildroot}%{chromium_path} mv %{buildroot}%{chromium_path}/libffmpeg.so{,.%{lsuffix}} @@ -1510,7 +1519,7 @@ sed -i "s|@@EXTRA_FLAGS@@|$EXTRA_FLAGS|g" %{buildroot}%{chromium_path}/%{chromiu ln -s %{chromium_path}/%{chromium_browser_channel}.sh %{buildroot}%{_bindir}/%{chromium_browser_channel} mkdir -p %{buildroot}%{_mandir}/man1/ -pushd %{target} +pushd %{builddir} cp -a *.pak locales resources icudtl.dat %{buildroot}%{chromium_path} %if 0%{?nacl} cp -a nacl_helper* *.nexe pnacl tls_edit %{buildroot}%{chromium_path} @@ -1561,7 +1570,7 @@ popd %endif popd -pushd %{remotingtarget} +pushd %{remotingbuilddir} # See remoting/host/installer/linux/Makefile for logic cp -a remoting_native_messaging_host %{buildroot}%{crd_path}/native-messaging-host @@ -1604,7 +1613,7 @@ cp -a remoting_client_plugin_newlib.* %{buildroot}%{chromium_path} %endif %if %{build_headless} -pushd %{headlesstarget} +pushd %{headlessbuilddir} cp -a headless_lib.pak headless_shell %{buildroot}%{chromium_path} popd %endif From 4d35c8a98356aedecd1f0fe80534a454f93ecf6d Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Sun, 15 Sep 2019 08:08:54 +0200 Subject: [PATCH 0459/1449] Fix the aarch64 build --- chromium-77.0.3865.75-missing-limits.patch | 28 ++++++++++++++++++++++ chromium.spec | 3 +++ 2 files changed, 31 insertions(+) create mode 100644 chromium-77.0.3865.75-missing-limits.patch diff --git a/chromium-77.0.3865.75-missing-limits.patch b/chromium-77.0.3865.75-missing-limits.patch new file mode 100644 index 0000000..3ac1770 --- /dev/null +++ b/chromium-77.0.3865.75-missing-limits.patch @@ -0,0 +1,28 @@ +From 5baf7df7f4c5971dab552897eeef94b194650ce5 Mon Sep 17 00:00:00 2001 +From: Dave Tapuska +Date: Mon, 12 Aug 2019 22:30:13 +0000 +Subject: [PATCH] Fix build failure due to missing include for std::numeric_limits usage. + +Some configurations fail to build, limits should have been included. + +BUG=992832 + +Change-Id: I894ba0543bfcef101c93259e39a31d12ae6d035c +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1747981 +Commit-Queue: Dave Tapuska +Reviewed-by: Mostyn Bramley-Moore +Cr-Commit-Position: refs/heads/master@{#686214} +--- + +diff --git a/third_party/blink/renderer/platform/exported/web_time_range.cc b/third_party/blink/renderer/platform/exported/web_time_range.cc +index 384566a..68d83e1 100644 +--- a/third_party/blink/renderer/platform/exported/web_time_range.cc ++++ b/third_party/blink/renderer/platform/exported/web_time_range.cc +@@ -31,6 +31,7 @@ + #include "third_party/blink/public/platform/web_time_range.h" + + #include ++#include + + namespace blink { + diff --git a/chromium.spec b/chromium.spec index 5dec1f7..a198ddf 100644 --- a/chromium.spec +++ b/chromium.spec @@ -292,6 +292,8 @@ Patch67: chromium-77.0.3865.75-base-gcc-no-alignas.patch Patch68: chromium-77.0.3865.75-harfbuzz-subset.patch # https://chromium.googlesource.com/chromium/src.git/+/f08cb0022527081c078e8b96062e6c9b4fbda151 Patch69: chromium-77.0.3865.75-gcc-abstract-class.patch +# https://chromium.googlesource.com/chromium/src/+/5baf7df7f4c5971dab552897eeef94b194650ce5 +Patch70: chromium-77.0.3865.75-missing-limits.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -862,6 +864,7 @@ udev. %patch67 -p1 -b .base-gcc-no-alignas %patch68 -p1 -b .harfbuzz-subset %patch69 -p1 -b .gcc-abstract-class +%patch70 -p1 -b .missing-limits # EPEL specific patches %if 0%{?rhel} == 7 From 7fc281321af19c13b81aeaa367d93b7681482b00 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Sun, 15 Sep 2019 08:11:22 +0200 Subject: [PATCH 0460/1449] 22x22 icon was removed and use the symbolic one as well --- chromium.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/chromium.spec b/chromium.spec index a198ddf..843f1a0 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1645,8 +1645,8 @@ mkdir -p %{buildroot}%{_datadir}/icons/hicolor/48x48/apps cp -a chrome/app/theme/chromium/product_logo_48.png %{buildroot}%{_datadir}/icons/hicolor/48x48/apps/%{chromium_browser_channel}.png mkdir -p %{buildroot}%{_datadir}/icons/hicolor/24x24/apps cp -a chrome/app/theme/chromium/product_logo_24.png %{buildroot}%{_datadir}/icons/hicolor/24x24/apps/%{chromium_browser_channel}.png -mkdir -p %{buildroot}%{_datadir}/icons/hicolor/22x22/apps -cp -a chrome/app/theme/chromium/product_logo_22.png %{buildroot}%{_datadir}/icons/hicolor/22x22/apps/%{chromium_browser_channel}.png +mkdir -p %{buildroot}%{_datadir}/icons/hicolor/symbolic/apps +cp -a chrome/app/theme/chromium/product_logo_22_mono.png %{buildroot}%{_datadir}/icons/hicolor/symbolic/apps/%{chromium_browser_channel}.png # Install the master_preferences file mkdir -p %{buildroot}%{_sysconfdir}/%{name} From 782a626758b49d8cedf4c7d485190c817455e136 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Thu, 12 Sep 2019 17:28:51 +0200 Subject: [PATCH 0461/1449] Update to 77.0.3865.75 Rebase and clean the patches. --- ...um-61.0.3163.79-gcc-no-opt-safe-math.patch | 13 - chromium-68.0.3440.106-boolfix.patch | 36 --- ...mium-72.0.3626.121-fedora-user-agent.patch | 12 - chromium-72.0.3626.121-gcc5-r3.patch | 36 --- chromium-75.0.3770.100-fix-v8-gcc.patch | 14 -- chromium-75.0.3770.80-no-zlib-mangle.patch | 14 -- ...-75.0.3770.80-pure-virtual-crash-fix.patch | 24 -- ...09.100-gcc-accountinfo-move-noexcept.patch | 53 ----- chromium-76.0.3809.100-gcc-cc-no-except.patch | 105 -------- ...0.3809.100-gcc-feature-policy-parser.patch | 76 ------ ...0.3809.100-gcc-hasfraction-constexpr.patch | 32 --- ...0.3809.100-gcc-history-move-noexcept.patch | 42 ---- ....0.3809.100-gcc-initialization-order.patch | 33 --- ...100-gcc-move-explicit-initialization.patch | 97 -------- chromium-76.0.3809.100-gcc-net-fetcher.patch | 63 ----- ...0.3809.100-gcc-themeservice-includes.patch | 36 --- chromium-76.0.3809.100-gcc-vulkan.patch | 115 --------- ...ium-76.0.3809.100-quiche-compile-fix.patch | 225 ------------------ ...m-76.0.3809.100-throttling-dead-beef.patch | 30 --- ...ium-76.0.3809.100-weak-ptr-no-except.patch | 66 ----- ....3809.132-gcc-ambigous-instantiation.patch | 21 -- chromium-77.0.3865.75-boolfix.patch | 24 ++ ...7.0.3865.75-certificate-transparency.patch | 132 +++++----- chromium-77.0.3865.75-fedora-user-agent.patch | 12 + chromium-77.0.3865.75-fix-v8-gcc.patch | 14 ++ ...um-77.0.3865.75-gcc-no-opt-safe-math.patch | 13 + chromium-77.0.3865.75-gcc5-r3.patch | 36 +++ chromium-77.0.3865.75-no-zlib-mangle.patch | 22 ++ chromium.spec | 68 +----- sources | 2 +- 30 files changed, 199 insertions(+), 1267 deletions(-) delete mode 100644 chromium-61.0.3163.79-gcc-no-opt-safe-math.patch delete mode 100644 chromium-68.0.3440.106-boolfix.patch delete mode 100644 chromium-72.0.3626.121-fedora-user-agent.patch delete mode 100644 chromium-72.0.3626.121-gcc5-r3.patch delete mode 100644 chromium-75.0.3770.100-fix-v8-gcc.patch delete mode 100644 chromium-75.0.3770.80-no-zlib-mangle.patch delete mode 100644 chromium-75.0.3770.80-pure-virtual-crash-fix.patch delete mode 100644 chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch delete mode 100644 chromium-76.0.3809.100-gcc-cc-no-except.patch delete mode 100644 chromium-76.0.3809.100-gcc-feature-policy-parser.patch delete mode 100644 chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch delete mode 100644 chromium-76.0.3809.100-gcc-history-move-noexcept.patch delete mode 100644 chromium-76.0.3809.100-gcc-initialization-order.patch delete mode 100644 chromium-76.0.3809.100-gcc-move-explicit-initialization.patch delete mode 100644 chromium-76.0.3809.100-gcc-net-fetcher.patch delete mode 100644 chromium-76.0.3809.100-gcc-themeservice-includes.patch delete mode 100644 chromium-76.0.3809.100-gcc-vulkan.patch delete mode 100644 chromium-76.0.3809.100-quiche-compile-fix.patch delete mode 100644 chromium-76.0.3809.100-throttling-dead-beef.patch delete mode 100644 chromium-76.0.3809.100-weak-ptr-no-except.patch delete mode 100644 chromium-76.0.3809.132-gcc-ambigous-instantiation.patch create mode 100644 chromium-77.0.3865.75-boolfix.patch rename chromium-76.0.3809.132-certificate-transparency.patch => chromium-77.0.3865.75-certificate-transparency.patch (73%) create mode 100644 chromium-77.0.3865.75-fedora-user-agent.patch create mode 100644 chromium-77.0.3865.75-fix-v8-gcc.patch create mode 100644 chromium-77.0.3865.75-gcc-no-opt-safe-math.patch create mode 100644 chromium-77.0.3865.75-gcc5-r3.patch create mode 100644 chromium-77.0.3865.75-no-zlib-mangle.patch diff --git a/chromium-61.0.3163.79-gcc-no-opt-safe-math.patch b/chromium-61.0.3163.79-gcc-no-opt-safe-math.patch deleted file mode 100644 index 183b5ab..0000000 --- a/chromium-61.0.3163.79-gcc-no-opt-safe-math.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -up chromium-61.0.3163.79/base/numerics/safe_math_shared_impl.h.fixgcc3 chromium-61.0.3163.79/base/numerics/safe_math_shared_impl.h ---- chromium-61.0.3163.79/base/numerics/safe_math_shared_impl.h.fixgcc3 2017-09-06 16:30:15.898454585 -0400 -+++ chromium-61.0.3163.79/base/numerics/safe_math_shared_impl.h 2017-09-06 16:30:27.570229539 -0400 -@@ -21,8 +21,7 @@ - #if !defined(__native_client__) && \ - ((defined(__clang__) && \ - ((__clang_major__ > 3) || \ -- (__clang_major__ == 3 && __clang_minor__ >= 4))) || \ -- (defined(__GNUC__) && __GNUC__ >= 5)) -+ (__clang_major__ == 3 && __clang_minor__ >= 4)))) - #include "base/numerics/safe_math_clang_gcc_impl.h" - #define BASE_HAS_OPTIMIZED_SAFE_MATH (1) - #else diff --git a/chromium-68.0.3440.106-boolfix.patch b/chromium-68.0.3440.106-boolfix.patch deleted file mode 100644 index ed22aa9..0000000 --- a/chromium-68.0.3440.106-boolfix.patch +++ /dev/null @@ -1,36 +0,0 @@ -diff -up chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_ptr_info.h ---- chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix 2018-08-09 03:21:23.066802340 -0400 -+++ chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_ptr_info.h 2018-08-09 03:25:10.638595925 -0400 -@@ -45,7 +45,7 @@ class AssociatedInterfacePtrInfo { - - bool is_valid() const { return handle_.is_valid(); } - -- explicit operator bool() const { return handle_.is_valid(); } -+ explicit operator bool() const { return (bool) handle_.is_valid(); } - - ScopedInterfaceEndpointHandle PassHandle() { - return std::move(handle_); -diff -up chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_request.h.boolfix chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_request.h ---- chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_request.h.boolfix 2018-08-09 03:21:23.067802318 -0400 -+++ chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_request.h 2018-08-09 03:24:44.935229067 -0400 -@@ -50,7 +50,7 @@ class AssociatedInterfaceRequest { - // handle. - 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(); } - - ScopedInterfaceEndpointHandle PassHandle() { return std::move(handle_); } - -diff -up chromium-68.0.3440.106/mojo/public/cpp/bindings/interface_request.h.boolfix chromium-68.0.3440.106/mojo/public/cpp/bindings/interface_request.h ---- chromium-68.0.3440.106/mojo/public/cpp/bindings/interface_request.h.boolfix 2018-08-08 15:11:05.000000000 -0400 -+++ chromium-68.0.3440.106/mojo/public/cpp/bindings/interface_request.h 2018-08-09 03:21:23.067802318 -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-72.0.3626.121-fedora-user-agent.patch b/chromium-72.0.3626.121-fedora-user-agent.patch deleted file mode 100644 index 5cef6f0..0000000 --- a/chromium-72.0.3626.121-fedora-user-agent.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-72.0.3626.121/content/common/user_agent.cc.fedora-user-agent chromium-72.0.3626.121/content/common/user_agent.cc ---- chromium-72.0.3626.121/content/common/user_agent.cc.fedora-user-agent 2019-03-10 14:21:02.877454982 -0400 -+++ chromium-72.0.3626.121/content/common/user_agent.cc 2019-03-10 14:22:05.728812272 -0400 -@@ -36,7 +36,7 @@ std::string GetUserAgentPlatform() { - #elif defined(OS_MACOSX) - "Macintosh; "; - #elif defined(USE_X11) || defined(USE_OZONE) -- "X11; "; // strange, but that's what Firefox uses -+ "X11; Fedora; "; // strange, but that's what Firefox uses - #elif defined(OS_ANDROID) - "Linux; "; - #elif defined(OS_POSIX) || defined(OS_FUCHSIA) diff --git a/chromium-72.0.3626.121-gcc5-r3.patch b/chromium-72.0.3626.121-gcc5-r3.patch deleted file mode 100644 index f4cf40b..0000000 --- a/chromium-72.0.3626.121-gcc5-r3.patch +++ /dev/null @@ -1,36 +0,0 @@ -diff -up chromium-72.0.3626.121/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 chromium-72.0.3626.121/gpu/ipc/common/mailbox_struct_traits.h ---- chromium-72.0.3626.121/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 2019-03-01 23:10:21.000000000 -0500 -+++ chromium-72.0.3626.121/gpu/ipc/common/mailbox_struct_traits.h 2019-03-10 14:07:48.300244125 -0400 -@@ -15,7 +15,7 @@ namespace mojo { - template <> - struct StructTraits { - static base::span name(const gpu::Mailbox& mailbox) { -- return mailbox.name; -+ return base::make_span(mailbox.name); - } - static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out); - }; -diff -up chromium-72.0.3626.121/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 chromium-72.0.3626.121/services/viz/public/cpp/compositing/quads_struct_traits.h ---- chromium-72.0.3626.121/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 2019-03-01 23:10:31.000000000 -0500 -+++ chromium-72.0.3626.121/services/viz/public/cpp/compositing/quads_struct_traits.h 2019-03-10 14:07:48.303244046 -0400 -@@ -340,7 +340,7 @@ struct StructTraits vertex_opacity(const viz::DrawQuad& input) { - const viz::TextureDrawQuad* quad = - viz::TextureDrawQuad::MaterialCast(&input); -- return quad->vertex_opacity; -+ return base::make_span(quad->vertex_opacity); - } - - static bool y_flipped(const viz::DrawQuad& input) { -diff -up chromium-72.0.3626.121/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 chromium-72.0.3626.121/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc ---- chromium-72.0.3626.121/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 2019-03-10 14:07:48.307243941 -0400 -+++ chromium-72.0.3626.121/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2019-03-10 14:09:16.565920044 -0400 -@@ -10,7 +10,7 @@ - - #include "modules/audio_processing/aec3/aec_state.h" - --#include -+#include - #include - #include - #include diff --git a/chromium-75.0.3770.100-fix-v8-gcc.patch b/chromium-75.0.3770.100-fix-v8-gcc.patch deleted file mode 100644 index 4a1a4b0..0000000 --- a/chromium-75.0.3770.100-fix-v8-gcc.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -up chromium-75.0.3770.100/v8/src/objects/js-objects.cc.fix-v8-gcc chromium-75.0.3770.100/v8/src/objects/js-objects.cc ---- chromium-75.0.3770.100/v8/src/objects/js-objects.cc.fix-v8-gcc 2019-06-25 10:55:08.132254304 -0400 -+++ chromium-75.0.3770.100/v8/src/objects/js-objects.cc 2019-06-25 10:55:23.147933648 -0400 -@@ -3792,6 +3792,10 @@ void JSObject::ApplyAttributesToDictiona - } - } - -+template void JSObject::ApplyAttributesToDictionary( -+ Isolate* isolate, ReadOnlyRoots roots, Handle dictionary, -+ const PropertyAttributes attributes); -+ - template - Maybe JSObject::PreventExtensionsWithTransition( - Handle object, ShouldThrow should_throw) { diff --git a/chromium-75.0.3770.80-no-zlib-mangle.patch b/chromium-75.0.3770.80-no-zlib-mangle.patch deleted file mode 100644 index 998be67..0000000 --- a/chromium-75.0.3770.80-no-zlib-mangle.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -up chromium-75.0.3770.80/third_party/zlib/zconf.h.nozmangle chromium-75.0.3770.80/third_party/zlib/zconf.h ---- chromium-75.0.3770.80/third_party/zlib/zconf.h.nozmangle 2019-06-05 11:12:30.420412467 -0400 -+++ chromium-75.0.3770.80/third_party/zlib/zconf.h 2019-06-05 11:17:43.512683058 -0400 -@@ -8,10 +8,6 @@ - #ifndef ZCONF_H - #define ZCONF_H - --/* This include does prefixing as below, but with an updated set of names. Also -- * sets up export macros in component builds. */ --#include "chromeconf.h" -- - /* - * If you *really* need a unique prefix for all types and library functions, - * compile with -DZ_PREFIX. The "standard" zlib should be compiled without it. diff --git a/chromium-75.0.3770.80-pure-virtual-crash-fix.patch b/chromium-75.0.3770.80-pure-virtual-crash-fix.patch deleted file mode 100644 index 06c909f..0000000 --- a/chromium-75.0.3770.80-pure-virtual-crash-fix.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff -up chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.cc.pure-virtual-fix chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.cc ---- chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.cc.pure-virtual-fix 2019-06-07 15:03:43.302202979 -0400 -+++ chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.cc 2019-06-07 15:04:25.140393048 -0400 -@@ -116,4 +116,9 @@ void RenderProcessUserData::RenderProces - base::Unretained(process_node_.get()), info.exit_code)); - } - -+void RenderProcessUserData::RenderProcessHostDestroyed( -+ content::RenderProcessHost* host) { -+ host->RemoveUserData(kRenderProcessUserDataKey); -+} -+ - } // namespace performance_manager -diff -up chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.h.pure-virtual-fix chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.h ---- chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.h.pure-virtual-fix 2019-06-07 15:04:43.530039597 -0400 -+++ chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.h 2019-06-07 15:05:13.770458374 -0400 -@@ -47,6 +47,7 @@ class RenderProcessUserData : public bas - 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. diff --git a/chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch b/chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch deleted file mode 100644 index 5f45a8f..0000000 --- a/chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch +++ /dev/null @@ -1,53 +0,0 @@ -From 719df31ffd4d52b473509cf77acd9c02ec112acb Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Tue, 04 Jun 2019 18:38:12 +0200 -Subject: [PATCH] GCC: fix noexcept from move constructor and assign operators of AccountInfo - -AccountInfo declares them as noexcept and uses default implementation, -so all its members (including AccountId) should be noexcept. But AccountId -is not noexcept. To fix it we just need to make CoreAccountId move -operator/assign operator noexcept. - -Bug: 819294 -Change-Id: Ice38654ab7cf3b9eaa6f54aa36e1fec329264f98 ---- - -diff --git a/google_apis/gaia/core_account_id.cc b/google_apis/gaia/core_account_id.cc -index d808082..12eefe3 100644 ---- a/google_apis/gaia/core_account_id.cc -+++ b/google_apis/gaia/core_account_id.cc -@@ -6,8 +6,16 @@ - - CoreAccountId::CoreAccountId() = default; - -+CoreAccountId::CoreAccountId(const CoreAccountId&) = default; -+ -+CoreAccountId::CoreAccountId(CoreAccountId&&) noexcept = default; -+ - CoreAccountId::~CoreAccountId() = default; - -+CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; -+ -+CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) noexcept = default; -+ - CoreAccountId::CoreAccountId(const char* id) : id(id) {} - - CoreAccountId::CoreAccountId(std::string&& id) : id(std::move(id)) {} -diff --git a/google_apis/gaia/core_account_id.h b/google_apis/gaia/core_account_id.h -index 5ea602a..c2d1911 100644 ---- a/google_apis/gaia/core_account_id.h -+++ b/google_apis/gaia/core_account_id.h -@@ -14,8 +14,13 @@ - // for design and tracking). - struct CoreAccountId { - CoreAccountId(); -+ CoreAccountId(const CoreAccountId&); -+ CoreAccountId(CoreAccountId&&) noexcept; - ~CoreAccountId(); - -+ CoreAccountId& operator=(const CoreAccountId&); -+ CoreAccountId& operator=(CoreAccountId&&) noexcept; -+ - // Those implicit constructor and conversion operator allow to - // progressively migrate the code to use this struct. Removing - // them is tracked by https://crbug.com/959161 diff --git a/chromium-76.0.3809.100-gcc-cc-no-except.patch b/chromium-76.0.3809.100-gcc-cc-no-except.patch deleted file mode 100644 index e4d754a..0000000 --- a/chromium-76.0.3809.100-gcc-cc-no-except.patch +++ /dev/null @@ -1,105 +0,0 @@ -From 84c91abab33966f928497c24db4a39f436d2dca8 Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Fri, 07 Jun 2019 09:50:11 +0000 -Subject: [PATCH] Make SharedMemoryMapping move constructor noexcept - -As LayerTreeHostImpl::UIResourceData move constructor is declared -noexcept with default implementation, the move constructor of its -members should also be noexcept. GCC will fail to build otherwise -for mismatching noexcept declaration. - -We also set the move assignment operator. - -Bug: 819294 -Change-Id: Icd663da83b882e15f7d16780c9241972e09bc492 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645297 -Commit-Queue: José Dapena Paz -Reviewed-by: Daniel Cheng -Cr-Commit-Position: refs/heads/master@{#667064} ---- - -diff --git a/base/memory/shared_memory_mapping.cc b/base/memory/shared_memory_mapping.cc -index 2be2570..8426fa8 100644 ---- a/base/memory/shared_memory_mapping.cc -+++ b/base/memory/shared_memory_mapping.cc -@@ -33,7 +33,7 @@ - - SharedMemoryMapping::SharedMemoryMapping() = default; - --SharedMemoryMapping::SharedMemoryMapping(SharedMemoryMapping&& mapping) -+SharedMemoryMapping::SharedMemoryMapping(SharedMemoryMapping&& mapping) noexcept - : memory_(mapping.memory_), - size_(mapping.size_), - mapped_size_(mapping.mapped_size_), -@@ -42,7 +42,7 @@ - } - - SharedMemoryMapping& SharedMemoryMapping::operator=( -- SharedMemoryMapping&& mapping) { -+ SharedMemoryMapping&& mapping) noexcept { - Unmap(); - memory_ = mapping.memory_; - size_ = mapping.size_; -@@ -90,9 +90,9 @@ - - ReadOnlySharedMemoryMapping::ReadOnlySharedMemoryMapping() = default; - ReadOnlySharedMemoryMapping::ReadOnlySharedMemoryMapping( -- ReadOnlySharedMemoryMapping&&) = default; -+ ReadOnlySharedMemoryMapping&&) noexcept = default; - ReadOnlySharedMemoryMapping& ReadOnlySharedMemoryMapping::operator=( -- ReadOnlySharedMemoryMapping&&) = default; -+ ReadOnlySharedMemoryMapping&&) noexcept = default; - ReadOnlySharedMemoryMapping::ReadOnlySharedMemoryMapping( - void* address, - size_t size, -@@ -102,9 +102,9 @@ - - WritableSharedMemoryMapping::WritableSharedMemoryMapping() = default; - WritableSharedMemoryMapping::WritableSharedMemoryMapping( -- WritableSharedMemoryMapping&&) = default; -+ WritableSharedMemoryMapping&&) noexcept = default; - WritableSharedMemoryMapping& WritableSharedMemoryMapping::operator=( -- WritableSharedMemoryMapping&&) = default; -+ WritableSharedMemoryMapping&&) noexcept = default; - WritableSharedMemoryMapping::WritableSharedMemoryMapping( - void* address, - size_t size, -diff --git a/base/memory/shared_memory_mapping.h b/base/memory/shared_memory_mapping.h -index d9569af..2b8858e 100644 ---- a/base/memory/shared_memory_mapping.h -+++ b/base/memory/shared_memory_mapping.h -@@ -32,8 +32,8 @@ - SharedMemoryMapping(); - - // Move operations are allowed. -- SharedMemoryMapping(SharedMemoryMapping&& mapping); -- SharedMemoryMapping& operator=(SharedMemoryMapping&& mapping); -+ SharedMemoryMapping(SharedMemoryMapping&& mapping) noexcept; -+ SharedMemoryMapping& operator=(SharedMemoryMapping&& mapping) noexcept; - - // Unmaps the region if the mapping is valid. - virtual ~SharedMemoryMapping(); -@@ -93,8 +93,9 @@ - ReadOnlySharedMemoryMapping(); - - // Move operations are allowed. -- ReadOnlySharedMemoryMapping(ReadOnlySharedMemoryMapping&&); -- ReadOnlySharedMemoryMapping& operator=(ReadOnlySharedMemoryMapping&&); -+ ReadOnlySharedMemoryMapping(ReadOnlySharedMemoryMapping&&) noexcept; -+ ReadOnlySharedMemoryMapping& operator=( -+ ReadOnlySharedMemoryMapping&&) noexcept; - - // Returns the base address of the mapping. This is read-only memory. This is - // page-aligned. This is nullptr for invalid instances. -@@ -171,8 +172,9 @@ - WritableSharedMemoryMapping(); - - // Move operations are allowed. -- WritableSharedMemoryMapping(WritableSharedMemoryMapping&&); -- WritableSharedMemoryMapping& operator=(WritableSharedMemoryMapping&&); -+ WritableSharedMemoryMapping(WritableSharedMemoryMapping&&) noexcept; -+ WritableSharedMemoryMapping& operator=( -+ WritableSharedMemoryMapping&&) noexcept; - - // Returns the base address of the mapping. This is writable memory. This is - // page-aligned. This is nullptr for invalid instances. diff --git a/chromium-76.0.3809.100-gcc-feature-policy-parser.patch b/chromium-76.0.3809.100-gcc-feature-policy-parser.patch deleted file mode 100644 index 0dbffd5..0000000 --- a/chromium-76.0.3809.100-gcc-feature-policy-parser.patch +++ /dev/null @@ -1,76 +0,0 @@ -From 0aca7b8dea0f52ba7bd58dfce4ac236ee60670a8 Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Tue, 04 Jun 2019 19:44:58 +0200 -Subject: [PATCH] GCC: FeaturePolicyParser ParseValueForFuzzer is not in anonymous namespace - -Compilation fails because we are declaring ParseValueForFuzzer as friend method, -but we are declaring it is in anonymous namespace. Moving to global namespace -still fails (in this case in Clang). - -So final solution is making it a public static method of FeaturePolicyParser. - -Bug: 819294 -Change-Id: Iea307cb6faef675b748d6eb5da2175dcbb17fdc7 ---- - -diff --git a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc -index 3b7f4a9..eaee409 100644 ---- a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc -+++ b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc -@@ -317,6 +317,13 @@ - return value; - } - -+void FeaturePolicyParser::ParseValueForFuzzer( -+ blink::mojom::PolicyValueType feature_type, -+ const WTF::String& value_string) { -+ bool ok; -+ ParseValueForType(feature_type, value_string, &ok); -+} -+ - bool IsFeatureDeclared(mojom::FeaturePolicyFeature feature, - const ParsedFeaturePolicy& policy) { - return std::any_of(policy.begin(), policy.end(), -diff --git a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h -index fd25d90..36af405 100644 ---- a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h -+++ b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h -@@ -16,9 +16,6 @@ - #include "third_party/blink/renderer/platform/wtf/text/wtf_string.h" - #include "third_party/blink/renderer/platform/wtf/vector.h" - --// Forward declare for friendship. --void ParseValueForFuzzer(blink::mojom::PolicyValueType, const WTF::String&); -- - namespace blink { - - class Document; -@@ -79,8 +76,9 @@ - const FeatureNameMap& feature_names, - ExecutionContext* execution_context = nullptr); - -+ static void ParseValueForFuzzer(mojom::PolicyValueType, const String&); -+ - private: -- friend void ::ParseValueForFuzzer(mojom::PolicyValueType, const String&); - static PolicyValue GetFallbackValueForFeature( - mojom::FeaturePolicyFeature feature); - static PolicyValue ParseValueForType(mojom::PolicyValueType feature_type, -diff --git a/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc b/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc -index 7f8e6aa..53350e43 100644 ---- a/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc -+++ b/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc -@@ -23,9 +23,9 @@ - extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) { - static blink::BlinkFuzzerTestSupport test_support = - blink::BlinkFuzzerTestSupport(); -- ParseValueForFuzzer(blink::mojom::PolicyValueType::kBool, -- WTF::String(data, size)); -- ParseValueForFuzzer(blink::mojom::PolicyValueType::kDecDouble, -- WTF::String(data, size)); -+ blink::FeaturePolicyParser::ParseValueForFuzzer( -+ blink::mojom::PolicyValueType::kBool, WTF::String(data, size)); -+ blink::FeaturePolicyParser::ParseValueForFuzzer( -+ blink::mojom::PolicyValueType::kDecDouble, WTF::String(data, size)); - return 0; - } diff --git a/chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch b/chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch deleted file mode 100644 index 26bba05..0000000 --- a/chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch +++ /dev/null @@ -1,32 +0,0 @@ -From cf6d6b40d711fce93a24a2cf517fa3becdbae8bb Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Wed, 05 Jun 2019 17:18:40 +0000 -Subject: [PATCH] Make blink::LayoutUnit::HasFraction constexpr - -Other HasFraction methods as in PhysicalUnit are declared already -constexpr and using it. It breaks GCC build. - -Bug: 819294. -Change-Id: I0c4bd9bd206d45cf31f7fa815ce8533718a425cb -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645222 -Reviewed-by: vmpstr -Reviewed-by: Xianzhu Wang -Commit-Queue: José Dapena Paz -Cr-Commit-Position: refs/heads/master@{#666336} ---- - -diff --git a/third_party/blink/renderer/platform/geometry/layout_unit.h b/third_party/blink/renderer/platform/geometry/layout_unit.h -index f073986..b6dbc76 100644 ---- a/third_party/blink/renderer/platform/geometry/layout_unit.h -+++ b/third_party/blink/renderer/platform/geometry/layout_unit.h -@@ -202,7 +202,9 @@ - return value_ > 0 ? LayoutUnit() : *this; - } - -- bool HasFraction() const { return RawValue() % kFixedPointDenominator; } -+ constexpr bool HasFraction() const { -+ return RawValue() % kFixedPointDenominator; -+ } - - LayoutUnit Fraction() const { - // Compute fraction using the mod operator to preserve the sign of the value diff --git a/chromium-76.0.3809.100-gcc-history-move-noexcept.patch b/chromium-76.0.3809.100-gcc-history-move-noexcept.patch deleted file mode 100644 index 2876de4..0000000 --- a/chromium-76.0.3809.100-gcc-history-move-noexcept.patch +++ /dev/null @@ -1,42 +0,0 @@ -From abe74a7f0c53a43a9706a42d71b7ff4a5da53380 Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Tue, 11 Jun 2019 10:27:19 +0200 -Subject: [PATCH] GCC: add noexcept move assignment in history::URLRow - -In GCC, build is failing because history::QueryURLResult declares its move -assignment operator as noexcept using default implementation. That requires -its members to provide a move assignment operator that is noexcept too. - -But URLRow was missing noexcept declaration in move assignment operator (even -though it was providing noexcept to its move constructor). - -Bug: 819294 -Change-Id: I726e3cf7a4a50c9206a5d0fba8a561d363483d4f ---- - -diff --git a/components/history/core/browser/url_row.cc b/components/history/core/browser/url_row.cc -index 44c22fd..aec0101 100644 ---- a/components/history/core/browser/url_row.cc -+++ b/components/history/core/browser/url_row.cc -@@ -26,7 +26,7 @@ - } - - URLRow& URLRow::operator=(const URLRow& other) = default; --URLRow& URLRow::operator=(URLRow&& other) = default; -+URLRow& URLRow::operator=(URLRow&& other) noexcept = default; - - void URLRow::Swap(URLRow* other) { - std::swap(id_, other->id_); -diff --git a/components/history/core/browser/url_row.h b/components/history/core/browser/url_row.h -index 8f6f9cf..31a1ef8 100644 ---- a/components/history/core/browser/url_row.h -+++ b/components/history/core/browser/url_row.h -@@ -35,7 +35,7 @@ - - virtual ~URLRow(); - URLRow& operator=(const URLRow& other); -- URLRow& operator=(URLRow&& other); -+ URLRow& operator=(URLRow&& other) noexcept; - - URLID id() const { return id_; } - diff --git a/chromium-76.0.3809.100-gcc-initialization-order.patch b/chromium-76.0.3809.100-gcc-initialization-order.patch deleted file mode 100644 index 3bf394f..0000000 --- a/chromium-76.0.3809.100-gcc-initialization-order.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 7dc76c8d9f4cfbce7cf11424120aa6f6094916dc Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Wed, 05 Jun 2019 21:09:01 +0000 -Subject: [PATCH] GCC: XSetWindowAttributes struct initialization should keep order of declaration - -XSetWindowAttributes initialization of attributes in GLSurfaceGLX is not in the -same order of the declaration. GCC fails because of that. - -Bug: 819294 -Change-Id: I8a97da980d5961a35a47ae4d0d8d558b85291f1f -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1646253 -Reviewed-by: Zhenyao Mo -Commit-Queue: José Dapena Paz -Cr-Commit-Position: refs/heads/master@{#666436} ---- - -diff --git a/ui/gl/gl_surface_glx.cc b/ui/gl/gl_surface_glx.cc -index f649dd4..0aa6892 100644 ---- a/ui/gl/gl_surface_glx.cc -+++ b/ui/gl/gl_surface_glx.cc -@@ -583,10 +583,10 @@ - - XSetWindowAttributes swa = { - .background_pixmap = 0, -- .bit_gravity = NorthWestGravity, -- .colormap = g_colormap, - .background_pixel = 0, // ARGB(0,0,0,0) for compositing WM - .border_pixel = 0, -+ .bit_gravity = NorthWestGravity, -+ .colormap = g_colormap, - }; - auto value_mask = CWBackPixmap | CWBitGravity | CWColormap | CWBorderPixel; - if (ui::IsCompositingManagerPresent() && diff --git a/chromium-76.0.3809.100-gcc-move-explicit-initialization.patch b/chromium-76.0.3809.100-gcc-move-explicit-initialization.patch deleted file mode 100644 index 1d4b90f..0000000 --- a/chromium-76.0.3809.100-gcc-move-explicit-initialization.patch +++ /dev/null @@ -1,97 +0,0 @@ -From dcb55fb8f18abe5f43d260aa67b14b2dc996f992 Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Tue, 11 Jun 2019 08:00:13 +0000 -Subject: [PATCH] GCC: move explicit specialization out of RunInfo - -Explicit specialization in non-namespace scope is not allowed in C++, and GCC breaks -build because of that. Move the template specializations out of RunInfo declaration -in shape_result_inline_headeres.h to fix the GCC build issue. - -Bug: 819294 -Change-Id: Id083852bcf8e9efbdc911fdad28fd8767d2905d0 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1651728 -Reviewed-by: Kinuko Yasuda -Commit-Queue: José Dapena Paz -Cr-Commit-Position: refs/heads/master@{#667901} ---- - -diff --git a/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h b/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h -index 76ee6091..c14d3a0 100644 ---- a/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h -+++ b/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h -@@ -251,37 +251,6 @@ - template - struct iterator final {}; - -- // For non-zero glyph offset array -- template <> -- struct iterator final { -- // The constructor for ShapeResult -- explicit iterator(const GlyphOffsetArray& array) -- : pointer(array.storage_.get()) { -- DCHECK(pointer); -- } -- -- // The constructor for ShapeResultView -- explicit iterator(const GlyphDataRange& range) : pointer(range.offsets) { -- DCHECK(pointer); -- } -- -- GlyphOffset operator*() const { return *pointer; } -- void operator++() { ++pointer; } -- -- const GlyphOffset* pointer; -- }; -- -- // For zero glyph offset array -- template <> -- struct iterator final { -- explicit iterator(const GlyphOffsetArray& array) { -- DCHECK(!array.HasStorage()); -- } -- explicit iterator(const GlyphDataRange& range) { DCHECK(!range.offsets); } -- GlyphOffset operator*() const { return GlyphOffset(); } -- void operator++() {} -- }; -- - template - iterator GetIterator() const { - return iterator(*this); -@@ -495,6 +464,37 @@ - float width_; - }; - -+// For non-zero glyph offset array -+template <> -+struct ShapeResult::RunInfo::GlyphOffsetArray::iterator final { -+ // The constructor for ShapeResult -+ explicit iterator(const GlyphOffsetArray& array) -+ : pointer(array.storage_.get()) { -+ DCHECK(pointer); -+ } -+ -+ // The constructor for ShapeResultView -+ explicit iterator(const GlyphDataRange& range) : pointer(range.offsets) { -+ DCHECK(pointer); -+ } -+ -+ GlyphOffset operator*() const { return *pointer; } -+ void operator++() { ++pointer; } -+ -+ const GlyphOffset* pointer; -+}; -+ -+// For zero glyph offset array -+template <> -+struct ShapeResult::RunInfo::GlyphOffsetArray::iterator final { -+ explicit iterator(const GlyphOffsetArray& array) { -+ DCHECK(!array.HasStorage()); -+ } -+ explicit iterator(const GlyphDataRange& range) { DCHECK(!range.offsets); } -+ GlyphOffset operator*() const { return GlyphOffset(); } -+ void operator++() {} -+}; -+ - // Find the range of HarfBuzzRunGlyphData for the specified character index - // range. This function uses binary search twice, hence O(2 log n). - inline ShapeResult::RunInfo::GlyphDataRange diff --git a/chromium-76.0.3809.100-gcc-net-fetcher.patch b/chromium-76.0.3809.100-gcc-net-fetcher.patch deleted file mode 100644 index bc0ed98..0000000 --- a/chromium-76.0.3809.100-gcc-net-fetcher.patch +++ /dev/null @@ -1,63 +0,0 @@ -From 502e6e42633d2571c8236c8649b031fe9915eb5b Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Tue, 11 Jun 2019 16:56:27 +0000 -Subject: [PATCH] GCC: CertNetFetcherImpl declares Job as a friend but it is in the anonymous namespace - -GCC does not allow friendship declaration to anonymous namespace as done with Job -object in the CertNetFetcherImpl. This fix removes the friend declaration, and just -makes RemoveJob method public, that was the only reason to make Job a friend. - -Error was: -./../net/cert_net/cert_net_fetcher_impl.cc: In member function ‘void net::{anonymous}::Job::DetachRequest(net::CertNetFetcherImpl::RequestCore*)’: -../../net/cert_net/cert_net_fetcher_impl.cc:458:42: error: ‘std::unique_ptr net::CertNetFetcherImpl::AsyncCertNetFetcherImpl::RemoveJob(net::{anonymous}::Job*)’ is private within this context - delete_this = parent_->RemoveJob(this); - ^ -../../net/cert_net/cert_net_fetcher_impl.cc:151:24: note: declared private here - std::unique_ptr RemoveJob(Job* job); - ^~~~~~~~~ -../../net/cert_net/cert_net_fetcher_impl.cc: In member function ‘void net::{anonymous}::Job::OnJobCompleted(net::Error)’: -../../net/cert_net/cert_net_fetcher_impl.cc:610:61: error: ‘std::unique_ptr net::CertNetFetcherImpl::AsyncCertNetFetcherImpl::RemoveJob(net::{anonymous}::Job*)’ is private within this context - std::unique_ptr delete_this = parent_->RemoveJob(this); - ^ -../../net/cert_net/cert_net_fetcher_impl.cc:151:24: note: declared private here - std::unique_ptr RemoveJob(Job* job); - ^~~~~~~~~ - -Bug: 819294 -Change-Id: I3609f4558e570741395366de6a4cd40577d91450 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1651783 -Commit-Queue: Eric Roman -Reviewed-by: Eric Roman -Cr-Commit-Position: refs/heads/master@{#668015} ---- - -diff --git a/net/cert_net/cert_net_fetcher_impl.cc b/net/cert_net/cert_net_fetcher_impl.cc -index 11a1166..349c656 100644 ---- a/net/cert_net/cert_net_fetcher_impl.cc -+++ b/net/cert_net/cert_net_fetcher_impl.cc -@@ -135,21 +135,19 @@ - void Fetch(std::unique_ptr request_params, - scoped_refptr request); - -+ // Removes |job| from the in progress jobs and transfers ownership to the -+ // caller. -+ std::unique_ptr RemoveJob(Job* job); -+ - // Cancels outstanding jobs, which stops network requests and signals the - // corresponding RequestCores that the requests have completed. - void Shutdown(); - - private: -- friend class Job; -- - // Finds a job with a matching RequestPararms or returns nullptr if there was - // no match. - Job* FindJob(const RequestParams& params); - -- // Removes |job| from the in progress jobs and transfers ownership to the -- // caller. -- std::unique_ptr RemoveJob(Job* job); -- - // The in-progress jobs. This set does not contain the job which is actively - // invoking callbacks (OnJobCompleted). - JobSet jobs_; diff --git a/chromium-76.0.3809.100-gcc-themeservice-includes.patch b/chromium-76.0.3809.100-gcc-themeservice-includes.patch deleted file mode 100644 index ad40bb9..0000000 --- a/chromium-76.0.3809.100-gcc-themeservice-includes.patch +++ /dev/null @@ -1,36 +0,0 @@ -From d08ea83acc2f5ff395c1fe54f52687e92fe51c3b Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Tue, 04 Jun 2019 22:01:03 +0200 -Subject: [PATCH] IWYU: ThemeService requires NativeTheme - -As ThemeService referes to NativeTheme through a ScopedObserver, -the full declaration is required. - -Bug: 819294 -Change-Id: I9d5bd2e87cfaa76e87f9b5509daea24848906a63 ---- - -diff --git a/chrome/browser/themes/theme_service.cc b/chrome/browser/themes/theme_service.cc -index d65388e2..23dc86d 100644 ---- a/chrome/browser/themes/theme_service.cc -+++ b/chrome/browser/themes/theme_service.cc -@@ -54,7 +54,6 @@ - #include "ui/gfx/color_palette.h" - #include "ui/gfx/image/image_skia.h" - #include "ui/native_theme/common_theme.h" --#include "ui/native_theme/native_theme.h" - - #if BUILDFLAG(ENABLE_EXTENSIONS) - #include "base/scoped_observer.h" -diff --git a/chrome/browser/themes/theme_service.h b/chrome/browser/themes/theme_service.h -index 6c79c72..f93dc0d 100644 ---- a/chrome/browser/themes/theme_service.h -+++ b/chrome/browser/themes/theme_service.h -@@ -25,6 +25,7 @@ - #include "extensions/buildflags/buildflags.h" - #include "extensions/common/extension_id.h" - #include "ui/base/theme_provider.h" -+#include "ui/native_theme/native_theme.h" - #include "ui/native_theme/native_theme_observer.h" - - class BrowserThemePack; diff --git a/chromium-76.0.3809.100-gcc-vulkan.patch b/chromium-76.0.3809.100-gcc-vulkan.patch deleted file mode 100644 index cf93bce..0000000 --- a/chromium-76.0.3809.100-gcc-vulkan.patch +++ /dev/null @@ -1,115 +0,0 @@ -From fdb3bb1f8c41d044a5b0cb80257a26dd3c8f83a3 Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Tue, 11 Jun 2019 17:39:38 +0000 -Subject: [PATCH] GCC: do not use old C notation to assign struct with property names. - -The notation for initialization of structs referring to its properties -is invalid in C++. This is not accepted in GCC. It was making build -fail in VulkanCommandBuffer. - -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc: In member function 'void gpu::VulkanCommandBuffer::TransitionImageLayout(VkImage, VkImageLayout, VkImageLayout)': -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:214:7: error: expected primary-expression before '.' token - .subresourceRange.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT, - ^ -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:215:7: error: expected primary-expression before '.' token - .subresourceRange.baseMipLevel = 0, - ^ -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:216:7: error: expected primary-expression before '.' token - .subresourceRange.levelCount = 1, - ^ -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:217:7: error: expected primary-expression before '.' token - .subresourceRange.baseArrayLayer = 0, - ^ -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:218:7: error: expected primary-expression before '.' token - .subresourceRange.layerCount = 1, - ^ -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc: In member function 'void gpu::VulkanCommandBuffer::CopyBufferToImage(VkBuffer, VkImage, uint32_t, uint32_t, uint32_t, uint32_t)': -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:235:7: error: expected primary-expression before '.' token - .imageSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT, - ^ -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:236:7: error: expected primary-expression before '.' token - .imageSubresource.mipLevel = 0, - ^ -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:237:7: error: expected primary-expression before '.' token - .imageSubresource.baseArrayLayer = 0, - ^ -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:238:7: error: expected primary-expression before '.' token - .imageSubresource.layerCount = 1, - ^ -Bug: 819294 - -Change-Id: I999abece0c727e77964789183642ba62009c2c22 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1651802 -Commit-Queue: José Dapena Paz -Reviewed-by: Antoine Labour -Cr-Commit-Position: refs/heads/master@{#668033} ---- - -diff --git a/gpu/vulkan/vulkan_command_buffer.cc b/gpu/vulkan/vulkan_command_buffer.cc -index ba776e4..4f14c85 100644 ---- a/gpu/vulkan/vulkan_command_buffer.cc -+++ b/gpu/vulkan/vulkan_command_buffer.cc -@@ -207,21 +207,20 @@ - void VulkanCommandBuffer::TransitionImageLayout(VkImage image, - VkImageLayout old_layout, - VkImageLayout new_layout) { -- VkImageMemoryBarrier barrier = { -- .sType = VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER, -- .srcAccessMask = GetAccessMask(old_layout), -- .dstAccessMask = GetAccessMask(new_layout), -- .oldLayout = old_layout, -- .newLayout = new_layout, -- .srcQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED, -- .dstQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED, -- .image = image, -- .subresourceRange.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT, -- .subresourceRange.baseMipLevel = 0, -- .subresourceRange.levelCount = 1, -- .subresourceRange.baseArrayLayer = 0, -- .subresourceRange.layerCount = 1, -- }; -+ VkImageMemoryBarrier barrier = {}; -+ barrier.sType = VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER; -+ barrier.srcAccessMask = GetAccessMask(old_layout); -+ barrier.dstAccessMask = GetAccessMask(new_layout); -+ barrier.oldLayout = old_layout; -+ barrier.newLayout = new_layout; -+ barrier.srcQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED; -+ barrier.dstQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED; -+ barrier.image = image; -+ barrier.subresourceRange.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT; -+ barrier.subresourceRange.baseMipLevel = 0; -+ barrier.subresourceRange.levelCount = 1; -+ barrier.subresourceRange.baseArrayLayer = 0; -+ barrier.subresourceRange.layerCount = 1; - vkCmdPipelineBarrier(command_buffer_, GetPipelineStageFlags(old_layout), - GetPipelineStageFlags(new_layout), 0, 0, nullptr, 0, - nullptr, 1, &barrier); -@@ -233,17 +232,16 @@ - uint32_t buffer_height, - uint32_t width, - uint32_t height) { -- VkBufferImageCopy region = { -- .bufferOffset = 0, -- .bufferRowLength = buffer_width, -- .bufferImageHeight = buffer_height, -- .imageSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT, -- .imageSubresource.mipLevel = 0, -- .imageSubresource.baseArrayLayer = 0, -- .imageSubresource.layerCount = 1, -- .imageOffset = {0, 0, 0}, -- .imageExtent = {width, height, 1}, -- }; -+ VkBufferImageCopy region = {}; -+ region.bufferOffset = 0; -+ region.bufferRowLength = buffer_width; -+ region.bufferImageHeight = buffer_height; -+ region.imageSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT; -+ region.imageSubresource.mipLevel = 0; -+ region.imageSubresource.baseArrayLayer = 0; -+ region.imageSubresource.layerCount = 1; -+ region.imageOffset = {0, 0, 0}; -+ region.imageExtent = {width, height, 1}; - vkCmdCopyBufferToImage(command_buffer_, buffer, image, - VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, 1, ®ion); - } diff --git a/chromium-76.0.3809.100-quiche-compile-fix.patch b/chromium-76.0.3809.100-quiche-compile-fix.patch deleted file mode 100644 index 98789d9..0000000 --- a/chromium-76.0.3809.100-quiche-compile-fix.patch +++ /dev/null @@ -1,225 +0,0 @@ -diff -up chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc.quiche-compile-fix chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc ---- chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc.quiche-compile-fix 2019-08-14 09:58:07.721193200 +0200 -+++ chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc 2019-08-14 09:59:33.131041525 +0200 -@@ -62,37 +62,37 @@ const size_t kStatelessResetTokenLength - std::string TransportParameterIdToString( - TransportParameters::TransportParameterId param_id) { - switch (param_id) { -- case kOriginalConnectionId: -+ case TransportParameters::kOriginalConnectionId: - return "original_connection_id"; -- case kIdleTimeout: -+ case TransportParameters::kIdleTimeout: - return "idle_timeout"; -- case kStatelessResetToken: -+ case TransportParameters::kStatelessResetToken: - return "stateless_reset_token"; -- case kMaxPacketSize: -+ case TransportParameters::kMaxPacketSize: - return "max_packet_size"; -- case kInitialMaxData: -+ case TransportParameters::kInitialMaxData: - return "initial_max_data"; -- case kInitialMaxStreamDataBidiLocal: -+ case TransportParameters::kInitialMaxStreamDataBidiLocal: - return "initial_max_stream_data_bidi_local"; -- case kInitialMaxStreamDataBidiRemote: -+ case TransportParameters::kInitialMaxStreamDataBidiRemote: - return "initial_max_stream_data_bidi_remote"; -- case kInitialMaxStreamDataUni: -+ case TransportParameters::kInitialMaxStreamDataUni: - return "initial_max_stream_data_uni"; -- case kInitialMaxStreamsBidi: -+ case TransportParameters::kInitialMaxStreamsBidi: - return "initial_max_streams_bidi"; -- case kInitialMaxStreamsUni: -+ case TransportParameters::kInitialMaxStreamsUni: - return "initial_max_streams_uni"; -- case kAckDelayExponent: -+ case TransportParameters::kAckDelayExponent: - return "ack_delay_exponent"; -- case kMaxAckDelay: -+ case TransportParameters::kMaxAckDelay: - return "max_ack_delay"; -- case kDisableMigration: -+ case TransportParameters::kDisableMigration: - return "disable_migration"; -- case kPreferredAddress: -+ case TransportParameters::kPreferredAddress: - return "preferred_address"; -- case kGoogleQuicParam: -+ case TransportParameters::kGoogleQuicParam: - return "google"; -- case kGoogleQuicVersion: -+ case TransportParameters::kGoogleQuicVersion: - return "google-version"; - } - return "Unknown(" + QuicTextUtils::Uint64ToString(param_id) + ")"; -@@ -390,7 +390,7 @@ bool SerializeTransportParameters(const - CBB original_connection_id_param; - if (!in.original_connection_id.IsEmpty()) { - DCHECK_EQ(Perspective::IS_SERVER, in.perspective); -- if (!CBB_add_u16(¶ms, kOriginalConnectionId) || -+ if (!CBB_add_u16(¶ms, TransportParameters::kOriginalConnectionId) || - !CBB_add_u16_length_prefixed(¶ms, &original_connection_id_param) || - !CBB_add_bytes( - &original_connection_id_param, -@@ -412,7 +412,7 @@ bool SerializeTransportParameters(const - if (!in.stateless_reset_token.empty()) { - DCHECK_EQ(kStatelessResetTokenLength, in.stateless_reset_token.size()); - DCHECK_EQ(Perspective::IS_SERVER, in.perspective); -- if (!CBB_add_u16(¶ms, kStatelessResetToken) || -+ if (!CBB_add_u16(¶ms, TransportParameters::kStatelessResetToken) || - !CBB_add_u16_length_prefixed(¶ms, &stateless_reset_token_param) || - !CBB_add_bytes(&stateless_reset_token_param, - in.stateless_reset_token.data(), -@@ -438,7 +438,7 @@ bool SerializeTransportParameters(const - - // disable_migration - if (in.disable_migration) { -- if (!CBB_add_u16(¶ms, kDisableMigration) || -+ if (!CBB_add_u16(¶ms, TransportParameters::kDisableMigration) || - !CBB_add_u16(¶ms, 0u)) { // 0 is the length of this parameter. - QUIC_BUG << "Failed to write disable_migration for " << in; - return false; -@@ -458,7 +458,7 @@ bool SerializeTransportParameters(const - QUIC_BUG << "Bad lengths " << *in.preferred_address; - return false; - } -- if (!CBB_add_u16(¶ms, kPreferredAddress) || -+ if (!CBB_add_u16(¶ms, TransportParameters::kPreferredAddress) || - !CBB_add_u16_length_prefixed(¶ms, &preferred_address_params) || - !CBB_add_bytes( - &preferred_address_params, -@@ -491,7 +491,7 @@ bool SerializeTransportParameters(const - if (in.google_quic_params) { - const QuicData& serialized_google_quic_params = - in.google_quic_params->GetSerialized(); -- if (!CBB_add_u16(¶ms, kGoogleQuicParam) || -+ if (!CBB_add_u16(¶ms, TransportParameters::kGoogleQuicParam) || - !CBB_add_u16_length_prefixed(¶ms, &google_quic_params) || - !CBB_add_bytes(&google_quic_params, - reinterpret_cast( -@@ -505,7 +505,7 @@ bool SerializeTransportParameters(const - - // Google-specific version extension. - CBB google_version_params; -- if (!CBB_add_u16(¶ms, kGoogleQuicVersion) || -+ if (!CBB_add_u16(¶ms, TransportParameters::kGoogleQuicVersion) || - !CBB_add_u16_length_prefixed(¶ms, &google_version_params) || - !CBB_add_u32(&google_version_params, in.version)) { - QUIC_BUG << "Failed to write Google version extension for " << in; -@@ -565,7 +565,7 @@ bool ParseTransportParameters(const uint - } - bool parse_success = true; - switch (param_id) { -- case kOriginalConnectionId: -+ case TransportParameters::kOriginalConnectionId: - if (!out->original_connection_id.IsEmpty()) { - QUIC_DLOG(ERROR) << "Received a second original connection ID"; - return false; -@@ -581,10 +581,10 @@ bool ParseTransportParameters(const uint - CBS_len(&value)); - } - break; -- case kIdleTimeout: -+ case TransportParameters::kIdleTimeout: - parse_success = out->idle_timeout_milliseconds.ReadFromCbs(&value); - break; -- case kStatelessResetToken: -+ case TransportParameters::kStatelessResetToken: - if (!out->stateless_reset_token.empty()) { - QUIC_DLOG(ERROR) << "Received a second stateless reset token"; - return false; -@@ -597,36 +597,36 @@ bool ParseTransportParameters(const uint - out->stateless_reset_token.assign(CBS_data(&value), - CBS_data(&value) + CBS_len(&value)); - break; -- case kMaxPacketSize: -+ case TransportParameters::kMaxPacketSize: - parse_success = out->max_packet_size.ReadFromCbs(&value); - break; -- case kInitialMaxData: -+ case TransportParameters::kInitialMaxData: - parse_success = out->initial_max_data.ReadFromCbs(&value); - break; -- case kInitialMaxStreamDataBidiLocal: -+ case TransportParameters::kInitialMaxStreamDataBidiLocal: - parse_success = - out->initial_max_stream_data_bidi_local.ReadFromCbs(&value); - break; -- case kInitialMaxStreamDataBidiRemote: -+ case TransportParameters::kInitialMaxStreamDataBidiRemote: - parse_success = - out->initial_max_stream_data_bidi_remote.ReadFromCbs(&value); - break; -- case kInitialMaxStreamDataUni: -+ case TransportParameters::kInitialMaxStreamDataUni: - parse_success = out->initial_max_stream_data_uni.ReadFromCbs(&value); - break; -- case kInitialMaxStreamsBidi: -+ case TransportParameters::kInitialMaxStreamsBidi: - parse_success = out->initial_max_streams_bidi.ReadFromCbs(&value); - break; -- case kInitialMaxStreamsUni: -+ case TransportParameters::kInitialMaxStreamsUni: - parse_success = out->initial_max_streams_uni.ReadFromCbs(&value); - break; -- case kAckDelayExponent: -+ case TransportParameters::kAckDelayExponent: - parse_success = out->ack_delay_exponent.ReadFromCbs(&value); - break; -- case kMaxAckDelay: -+ case TransportParameters::kMaxAckDelay: - parse_success = out->max_ack_delay.ReadFromCbs(&value); - break; -- case kDisableMigration: -+ case TransportParameters::kDisableMigration: - if (out->disable_migration) { - QUIC_DLOG(ERROR) << "Received a second disable migration"; - return false; -@@ -638,7 +638,7 @@ bool ParseTransportParameters(const uint - } - out->disable_migration = true; - break; -- case kPreferredAddress: { -+ case TransportParameters::kPreferredAddress: { - uint16_t ipv4_port, ipv6_port; - in_addr ipv4_address; - in6_addr ipv6_address; -@@ -692,7 +692,7 @@ bool ParseTransportParameters(const uint - QuicMakeUnique( - preferred_address); - } break; -- case kGoogleQuicParam: { -+ case TransportParameters::kGoogleQuicParam: { - if (out->google_quic_params) { - QUIC_DLOG(ERROR) << "Received a second Google parameter"; - return false; -@@ -701,7 +701,7 @@ bool ParseTransportParameters(const uint - reinterpret_cast(CBS_data(&value)), CBS_len(&value)); - out->google_quic_params = CryptoFramer::ParseMessage(serialized_params); - } break; -- case kGoogleQuicVersion: { -+ case TransportParameters::kGoogleQuicVersion: { - if (!CBS_get_u32(&value, &out->version)) { - QUIC_DLOG(ERROR) << "Failed to parse Google version extension"; - return false; -diff -up chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc.quiche-compile-fix chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc ---- chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc.quiche-compile-fix 2019-08-14 09:59:19.139902052 +0200 -+++ chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc 2019-08-14 09:59:33.132041535 +0200 -@@ -2,10 +2,12 @@ - // Use of this source code is governed by a BSD-style license that can be - // found in the LICENSE file. - --#include -- - #include "net/third_party/quiche/src/quic/core/quic_socket_address_coder.h" - -+#include -+#include -+#include -+ - namespace quic { - - namespace { diff --git a/chromium-76.0.3809.100-throttling-dead-beef.patch b/chromium-76.0.3809.100-throttling-dead-beef.patch deleted file mode 100644 index 5e392e6..0000000 --- a/chromium-76.0.3809.100-throttling-dead-beef.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 53bb5a463ee956c70230eaa5450022185d0ddc3c Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Thu, 06 Jun 2019 07:54:05 +0000 -Subject: [PATCH] ThrottlingController::Liveness needs to be uint32_t - -We are setting kAlive and kDead values assigning values that -are bigger than the maximum signed int32. It is better to use -uint32_t in this case. - -Bug: 819294 -Change-Id: If72b48291a66a3a9db24b4c8e2d11d31936a66ee -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645772 -Reviewed-by: Kinuko Yasuda -Commit-Queue: José Dapena Paz -Cr-Commit-Position: refs/heads/master@{#666619} ---- - -diff --git a/services/network/throttling/throttling_controller.h b/services/network/throttling/throttling_controller.h -index 43751c4..3c6f87b 100644 ---- a/services/network/throttling/throttling_controller.h -+++ b/services/network/throttling/throttling_controller.h -@@ -38,7 +38,7 @@ - - // TODO(https://crbug.com/960874): Debugging code to try and shed some light - // on why the owned maps are invalid. -- enum class Liveness : int32_t { -+ enum class Liveness : uint32_t { - kAlive = 0xCA11AB13, - kDead = 0xDEADBEEF, - }; diff --git a/chromium-76.0.3809.100-weak-ptr-no-except.patch b/chromium-76.0.3809.100-weak-ptr-no-except.patch deleted file mode 100644 index a392971..0000000 --- a/chromium-76.0.3809.100-weak-ptr-no-except.patch +++ /dev/null @@ -1,66 +0,0 @@ -From 0370838723e786b51e7ec8ab55014811ec3e3aa3 Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Thu, 18 Jul 2019 14:26:11 +0200 -Subject: [PATCH] Make base::WeakPtr move constructor/operator noexcept to fix GCC build regression - -A GCC build regression has happened on DisjointRangeLockManager, as its move -operator and constructor were declared noexcept. This was failing because the -default implementation depended on base::WeakPtr, that did not provide -noexcept declaration for them. - -So make base::WeakPtr noexcept. - -Bug: 819294 -Change-Id: I936784b881c7c1afea136ceedbe9341e76464f95 ---- - -diff --git a/base/memory/weak_ptr.cc b/base/memory/weak_ptr.cc -index 64fd499..0efcc44 100644 ---- a/base/memory/weak_ptr.cc -+++ b/base/memory/weak_ptr.cc -@@ -46,7 +46,7 @@ - - WeakReference::~WeakReference() = default; - --WeakReference::WeakReference(WeakReference&& other) = default; -+WeakReference::WeakReference(WeakReference&& other) noexcept = default; - - WeakReference::WeakReference(const WeakReference& other) = default; - -diff --git a/base/memory/weak_ptr.h b/base/memory/weak_ptr.h -index 72b5f1f..ccd22fd13 100644 ---- a/base/memory/weak_ptr.h -+++ b/base/memory/weak_ptr.h -@@ -116,9 +116,9 @@ - explicit WeakReference(const scoped_refptr& flag); - ~WeakReference(); - -- WeakReference(WeakReference&& other); -+ WeakReference(WeakReference&& other) noexcept; - WeakReference(const WeakReference& other); -- WeakReference& operator=(WeakReference&& other) = default; -+ WeakReference& operator=(WeakReference&& other) noexcept = default; - WeakReference& operator=(const WeakReference& other) = default; - - bool IsValid() const; -@@ -153,9 +153,9 @@ - ~WeakPtrBase(); - - WeakPtrBase(const WeakPtrBase& other) = default; -- WeakPtrBase(WeakPtrBase&& other) = default; -+ WeakPtrBase(WeakPtrBase&& other) noexcept = default; - WeakPtrBase& operator=(const WeakPtrBase& other) = default; -- WeakPtrBase& operator=(WeakPtrBase&& other) = default; -+ WeakPtrBase& operator=(WeakPtrBase&& other) noexcept = default; - - void reset() { - ref_ = internal::WeakReference(); -@@ -236,7 +236,7 @@ - ptr_ = reinterpret_cast(t); - } - template -- WeakPtr(WeakPtr&& other) : WeakPtrBase(std::move(other)) { -+ WeakPtr(WeakPtr&& other) noexcept : WeakPtrBase(std::move(other)) { - // Need to cast from U* to T* to do pointer adjustment in case of multiple - // inheritance. This also enforces the "U is a T" rule. - T* t = reinterpret_cast(other.ptr_); diff --git a/chromium-76.0.3809.132-gcc-ambigous-instantiation.patch b/chromium-76.0.3809.132-gcc-ambigous-instantiation.patch deleted file mode 100644 index 73db4d4..0000000 --- a/chromium-76.0.3809.132-gcc-ambigous-instantiation.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -up chromium-76.0.3809.132/services/network/cross_origin_read_blocking.cc.gcc-ambigous-instantiation chromium-76.0.3809.132/services/network/cross_origin_read_blocking.cc ---- chromium-76.0.3809.132/services/network/cross_origin_read_blocking.cc.gcc-ambigous-instantiation 2019-08-26 21:02:33.000000000 +0200 -+++ chromium-76.0.3809.132/services/network/cross_origin_read_blocking.cc 2019-08-27 06:58:23.963821667 +0200 -@@ -207,7 +207,7 @@ std::set& GetPluginProxyingProcesse - // confirmation sniffing because images, scripts, etc. are frequently - // mislabelled by http servers as HTML/JSON/XML). - base::flat_set& GetNeverSniffedMimeTypes() { -- static base::NoDestructor> s_types({ -+ static base::NoDestructor> s_types{{ - // The list below has been populated based on most commonly used content - // types according to HTTP Archive - see: - // https://github.com/whatwg/fetch/issues/860#issuecomment-457330454 -@@ -219,7 +219,7 @@ base::flat_set& GetNeverSni - "application/x-protobuf", - "application/zip", - "text/event-stream", -- }); -+ }}; - - // All items need to be lower-case, to support case-insensitive comparisons - // later. diff --git a/chromium-77.0.3865.75-boolfix.patch b/chromium-77.0.3865.75-boolfix.patch new file mode 100644 index 0000000..c836214 --- /dev/null +++ b/chromium-77.0.3865.75-boolfix.patch @@ -0,0 +1,24 @@ +diff -up chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_ptr_info.h +--- chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix 2019-09-09 23:55:20.000000000 +0200 ++++ chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_ptr_info.h 2019-09-12 15:43:30.025360946 +0200 +@@ -45,7 +45,7 @@ class AssociatedInterfacePtrInfo { + + bool is_valid() const { return handle_.is_valid(); } + +- explicit operator bool() const { return handle_.is_valid(); } ++ explicit operator bool() const { return (bool) handle_.is_valid(); } + + ScopedInterfaceEndpointHandle PassHandle() { + return std::move(handle_); +diff -up chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_request.h.boolfix chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_request.h +--- chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_request.h.boolfix 2019-09-09 23:55:20.000000000 +0200 ++++ chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_request.h 2019-09-12 15:43:30.025360946 +0200 +@@ -51,7 +51,7 @@ class AssociatedInterfaceRequest { + // handle. + 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(); } + + ScopedInterfaceEndpointHandle PassHandle() { return std::move(handle_); } + diff --git a/chromium-76.0.3809.132-certificate-transparency.patch b/chromium-77.0.3865.75-certificate-transparency.patch similarity index 73% rename from chromium-76.0.3809.132-certificate-transparency.patch rename to chromium-77.0.3865.75-certificate-transparency.patch index 8bfbced..82e2958 100644 --- a/chromium-76.0.3809.132-certificate-transparency.patch +++ b/chromium-77.0.3865.75-certificate-transparency.patch @@ -1,18 +1,18 @@ -diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager_browsertest.cc ---- chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager_browsertest.cc.certificate-transparency 2019-09-03 22:08:28.931786496 +0200 -+++ chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager_browsertest.cc 2019-09-03 22:15:24.743555759 +0200 -@@ -17,6 +17,7 @@ - #include "chrome/common/pref_names.h" - #include "chrome/test/base/in_process_browser_test.h" - #include "components/prefs/pref_service.h" +diff -up chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager_browsertest.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager_browsertest.cc +--- chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager_browsertest.cc.certificate-transparency 2019-09-12 16:09:52.818635106 +0200 ++++ chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager_browsertest.cc 2019-09-12 16:11:07.662562005 +0200 +@@ -21,6 +21,7 @@ + #include "components/version_info/version_info.h" + #include "content/public/common/content_switches.h" + #include "content/public/common/user_agent.h" +#include "services/network/public/cpp/network_service_buildflags.h" #include "services/network/public/mojom/network_context.mojom.h" #include "services/network/public/mojom/network_service.mojom.h" #include "testing/gmock/include/gmock/gmock.h" -@@ -297,3 +298,55 @@ IN_PROC_BROWSER_TEST_P(SystemNetworkCont +@@ -356,3 +357,55 @@ IN_PROC_BROWSER_TEST_P(SystemNetworkCont INSTANTIATE_TEST_SUITE_P(, - SystemNetworkContextManagerStubResolverBrowsertest, - ::testing::Values(false, true)); + SystemNetworkContextManagerFreezeQUICUaBrowsertest, + ::testing::Values(true, false)); + +class SystemNetworkContextManagerCertificateTransparencyBrowsertest + : public SystemNetworkContextManagerBrowsertest, @@ -65,9 +65,9 @@ diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manage + , + SystemNetworkContextManagerCertificateTransparencyBrowsertest, + ::testing::Values(base::nullopt, true, false)); -diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc ---- chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc.certificate-transparency 2019-08-26 21:02:05.000000000 +0200 -+++ chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc 2019-09-03 22:13:26.451198970 +0200 +diff -up chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.cc +--- chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.cc.certificate-transparency 2019-09-09 23:55:09.000000000 +0200 ++++ chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.cc 2019-09-12 16:09:52.819635118 +0200 @@ -4,11 +4,13 @@ #include "chrome/browser/net/system_network_context_manager.h" @@ -82,7 +82,7 @@ diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manage #include "base/command_line.h" #include "base/feature_list.h" #include "base/logging.h" -@@ -51,6 +53,7 @@ +@@ -50,6 +52,7 @@ #include "content/public/common/mime_handler_view_mode.h" #include "content/public/common/service_names.mojom.h" #include "content/public/common/user_agent.h" @@ -90,7 +90,7 @@ diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manage #include "mojo/public/cpp/bindings/associated_interface_ptr.h" #include "net/dns/public/util.h" #include "net/net_buildflags.h" -@@ -81,6 +84,20 @@ +@@ -79,6 +82,20 @@ namespace { @@ -111,7 +111,7 @@ diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manage // The global instance of the SystemNetworkContextmanager. SystemNetworkContextManager* g_system_network_context_manager = nullptr; -@@ -686,14 +703,35 @@ SystemNetworkContextManager::CreateDefau +@@ -658,14 +675,35 @@ SystemNetworkContextManager::CreateDefau bool http_09_on_non_default_ports_enabled = false; #if !defined(OS_ANDROID) @@ -155,7 +155,7 @@ diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manage } const base::Value* value = -@@ -756,6 +794,12 @@ SystemNetworkContextManager::GetHttpAuth +@@ -723,6 +761,12 @@ SystemNetworkContextManager::GetHttpAuth return CreateHttpAuthDynamicParams(g_browser_process->local_state()); } @@ -168,10 +168,10 @@ diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manage network::mojom::NetworkContextParamsPtr SystemNetworkContextManager::CreateNetworkContextParams() { // TODO(mmenke): Set up parameters here (in memory cookie store, etc). -diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.h.certificate-transparency chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.h ---- chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.h.certificate-transparency 2019-08-26 21:02:05.000000000 +0200 -+++ chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.h 2019-09-03 22:08:28.931786496 +0200 -@@ -158,6 +158,12 @@ class SystemNetworkContextManager { +diff -up chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.h.certificate-transparency chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.h +--- chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.h.certificate-transparency 2019-09-09 23:55:09.000000000 +0200 ++++ chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.h 2019-09-12 16:09:52.819635118 +0200 +@@ -139,6 +139,12 @@ class SystemNetworkContextManager { static network::mojom::HttpAuthDynamicParamsPtr GetHttpAuthDynamicParamsForTesting(); @@ -184,10 +184,10 @@ diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manage private: class URLLoaderFactoryForSystem; -diff -up chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc ---- chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc.certificate-transparency 2019-08-26 21:02:05.000000000 +0200 -+++ chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc 2019-09-03 22:08:28.932786508 +0200 -@@ -4834,7 +4834,7 @@ IN_PROC_BROWSER_TEST_P(SSLPolicyTestComm +diff -up chromium-77.0.3865.75/chrome/browser/policy/policy_browsertest.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/policy/policy_browsertest.cc +--- chromium-77.0.3865.75/chrome/browser/policy/policy_browsertest.cc.certificate-transparency 2019-09-09 23:55:10.000000000 +0200 ++++ chromium-77.0.3865.75/chrome/browser/policy/policy_browsertest.cc 2019-09-12 16:09:52.820635131 +0200 +@@ -4836,7 +4836,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, browser()->tab_strip_model()->GetActiveWebContents()->GetTitle()); } @@ -196,9 +196,9 @@ diff -up chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc.cert CertificateTransparencyEnforcementDisabledForCas) { net::EmbeddedTestServer https_server_ok(net::EmbeddedTestServer::TYPE_HTTPS); https_server_ok.SetSSLConfig(net::EmbeddedTestServer::CERT_OK); -diff -up chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc ---- chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc.certificate-transparency 2019-08-26 21:02:07.000000000 +0200 -+++ chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc 2019-09-03 22:08:28.932786508 +0200 +diff -up chromium-77.0.3865.75/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc +--- chromium-77.0.3865.75/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc.certificate-transparency 2019-09-09 23:55:10.000000000 +0200 ++++ chromium-77.0.3865.75/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc 2019-09-12 16:09:52.821635143 +0200 @@ -8,6 +8,7 @@ #include "base/callback.h" #include "base/run_loop.h" @@ -226,10 +226,10 @@ diff -up chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_bro void SetUpOnMainThread() override { run_loop_ = std::make_unique(); -diff -up chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_browsertest.cc ---- chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_browsertest.cc.certificate-transparency 2019-08-26 21:02:07.000000000 +0200 -+++ chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_browsertest.cc 2019-09-03 22:08:28.932786508 +0200 -@@ -457,6 +457,13 @@ class SecurityStateTabHelperTest : publi +diff -up chromium-77.0.3865.75/chrome/browser/ssl/security_state_tab_helper_browsertest.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/ssl/security_state_tab_helper_browsertest.cc +--- chromium-77.0.3865.75/chrome/browser/ssl/security_state_tab_helper_browsertest.cc.certificate-transparency 2019-09-09 23:55:10.000000000 +0200 ++++ chromium-77.0.3865.75/chrome/browser/ssl/security_state_tab_helper_browsertest.cc 2019-09-12 16:09:52.821635143 +0200 +@@ -433,6 +433,13 @@ class SecurityStateTabHelperTest : publi SecurityStateTabHelperTest() : https_server_(net::EmbeddedTestServer::TYPE_HTTPS) { https_server_.ServeFilesFromSourceDirectory(GetChromeTestDataDir()); @@ -243,10 +243,10 @@ diff -up chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_bro } void SetUpOnMainThread() override { -diff -up chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc ---- chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc.certificate-transparency 2019-08-26 21:02:07.000000000 +0200 -+++ chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc 2019-09-03 22:08:28.934786531 +0200 -@@ -2008,8 +2008,14 @@ class CertificateTransparencySSLUITest : +diff -up chromium-77.0.3865.75/chrome/browser/ssl/ssl_browsertest.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/ssl/ssl_browsertest.cc +--- chromium-77.0.3865.75/chrome/browser/ssl/ssl_browsertest.cc.certificate-transparency 2019-09-09 23:55:10.000000000 +0200 ++++ chromium-77.0.3865.75/chrome/browser/ssl/ssl_browsertest.cc 2019-09-12 16:09:52.822635155 +0200 +@@ -1853,8 +1853,14 @@ class CertificateTransparencySSLUITest : public: CertificateTransparencySSLUITest() : CertVerifierBrowserTest(), @@ -263,9 +263,9 @@ diff -up chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc.certificat void SetUpOnMainThread() override { CertVerifierBrowserTest::SetUpOnMainThread(); -diff -up chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_policy_enforcer.h.certificate-transparency chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_policy_enforcer.h ---- chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_policy_enforcer.h.certificate-transparency 2019-08-26 21:02:14.000000000 +0200 -+++ chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_policy_enforcer.h 2019-09-03 22:08:28.934786531 +0200 +diff -up chromium-77.0.3865.75/components/certificate_transparency/chrome_ct_policy_enforcer.h.certificate-transparency chromium-77.0.3865.75/components/certificate_transparency/chrome_ct_policy_enforcer.h +--- chromium-77.0.3865.75/components/certificate_transparency/chrome_ct_policy_enforcer.h.certificate-transparency 2019-09-09 23:55:14.000000000 +0200 ++++ chromium-77.0.3865.75/components/certificate_transparency/chrome_ct_policy_enforcer.h 2019-09-12 16:09:52.823635168 +0200 @@ -45,6 +45,19 @@ class ChromeCTPolicyEnforcer : public ne void SetClockForTesting(const base::Clock* clock) { clock_ = clock; } @@ -286,10 +286,10 @@ diff -up chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_po private: // Returns true if the log identified by |log_id| (the SHA-256 hash of the // log's DER-encoded SPKI) has been disqualified, and sets -diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate-transparency chromium-76.0.3809.132/services/network/network_context.cc ---- chromium-76.0.3809.132/services/network/network_context.cc.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 -+++ chromium-76.0.3809.132/services/network/network_context.cc 2019-09-03 22:17:27.977834857 +0200 -@@ -35,6 +35,7 @@ +diff -up chromium-77.0.3865.75/services/network/network_context.cc.certificate-transparency chromium-77.0.3865.75/services/network/network_context.cc +--- chromium-77.0.3865.75/services/network/network_context.cc.certificate-transparency 2019-09-09 23:55:22.000000000 +0200 ++++ chromium-77.0.3865.75/services/network/network_context.cc 2019-09-12 16:09:52.823635168 +0200 +@@ -36,6 +36,7 @@ #include "components/prefs/pref_registry_simple.h" #include "components/prefs/pref_service.h" #include "components/prefs/pref_service_factory.h" @@ -297,7 +297,7 @@ diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate- #include "mojo/public/cpp/bindings/strong_binding.h" #include "net/base/layered_network_delegate.h" #include "net/base/load_flags.h" -@@ -1851,16 +1852,6 @@ URLRequestContextOwner NetworkContext::A +@@ -1877,16 +1878,6 @@ URLRequestContextOwner NetworkContext::A base::FeatureList::IsEnabled(features::kNetworkErrorLogging)); #endif // BUILDFLAG(ENABLE_REPORTING) @@ -314,7 +314,7 @@ diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate- net::HttpNetworkSession::Params session_params; bool is_quic_force_disabled = false; if (network_service_ && network_service_->quic_disabled()) -@@ -1910,8 +1901,20 @@ URLRequestContextOwner NetworkContext::A +@@ -1936,8 +1927,20 @@ URLRequestContextOwner NetworkContext::A #if BUILDFLAG(IS_CT_SUPPORTED) std::vector> ct_logs; @@ -335,7 +335,7 @@ diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate- scoped_refptr log_verifier = net::CTLogVerifier::Create(log->public_key, log->name); if (!log_verifier) { -@@ -1924,6 +1927,17 @@ URLRequestContextOwner NetworkContext::A +@@ -1950,6 +1953,17 @@ URLRequestContextOwner NetworkContext::A ct_verifier->AddLogs(ct_logs); builder->set_ct_verifier(std::move(ct_verifier)); } @@ -353,9 +353,9 @@ diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate- #endif // BUILDFLAG(IS_CT_SUPPORTED) const base::CommandLine* command_line = -diff -up chromium-76.0.3809.132/services/network/network_context_unittest.cc.certificate-transparency chromium-76.0.3809.132/services/network/network_context_unittest.cc ---- chromium-76.0.3809.132/services/network/network_context_unittest.cc.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 -+++ chromium-76.0.3809.132/services/network/network_context_unittest.cc 2019-09-03 22:20:22.382888089 +0200 +diff -up chromium-77.0.3865.75/services/network/network_context_unittest.cc.certificate-transparency chromium-77.0.3865.75/services/network/network_context_unittest.cc +--- chromium-77.0.3865.75/services/network/network_context_unittest.cc.certificate-transparency 2019-09-09 23:55:22.000000000 +0200 ++++ chromium-77.0.3865.75/services/network/network_context_unittest.cc 2019-09-12 16:13:10.479056669 +0200 @@ -2,6 +2,7 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. @@ -374,10 +374,10 @@ diff -up chromium-76.0.3809.132/services/network/network_context_unittest.cc.cer #include "components/network_session_configurator/common/network_switches.h" #include "components/prefs/testing_pref_service.h" +#include "crypto/sha2.h" - #include "mojo/public/cpp/bindings/interface_request.h" - #include "mojo/public/cpp/bindings/strong_binding.h" + #include "mojo/public/cpp/bindings/remote.h" + #include "mojo/public/cpp/bindings/self_owned_receiver.h" #include "mojo/public/cpp/system/data_pipe_utils.h" -@@ -113,6 +116,11 @@ +@@ -115,6 +118,11 @@ #include "url/scheme_host_port.h" #include "url/url_constants.h" @@ -386,11 +386,11 @@ diff -up chromium-76.0.3809.132/services/network/network_context_unittest.cc.cer +#include "services/network/public/mojom/ct_log_info.mojom.h" +#endif + - #if BUILDFLAG(ENABLE_REPORTING) - #include "net/network_error_logging/network_error_logging_service.h" - #include "net/reporting/reporting_cache.h" -@@ -5566,6 +5574,72 @@ TEST_F(NetworkContextTest, BlockAllCooki - EXPECT_EQ("None", response_body); + #if !BUILDFLAG(DISABLE_FTP_SUPPORT) + #include "net/ftp/ftp_auth_cache.h" + #endif // !BUILDFLAG(DISABLE_FTP_SUPPORT) +@@ -5958,6 +5966,72 @@ TEST_F(NetworkContextSplitCacheTest, + true /* was_cached */, true /* is_navigation */); } +#if BUILDFLAG(IS_CT_SUPPORTED) @@ -462,9 +462,9 @@ diff -up chromium-76.0.3809.132/services/network/network_context_unittest.cc.cer } // namespace } // namespace network -diff -up chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom.certificate-transparency chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom ---- chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 -+++ chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom 2019-09-03 22:08:28.936786554 +0200 +diff -up chromium-77.0.3865.75/services/network/public/mojom/ct_log_info.mojom.certificate-transparency chromium-77.0.3865.75/services/network/public/mojom/ct_log_info.mojom +--- chromium-77.0.3865.75/services/network/public/mojom/ct_log_info.mojom.certificate-transparency 2019-09-09 23:55:22.000000000 +0200 ++++ chromium-77.0.3865.75/services/network/public/mojom/ct_log_info.mojom 2019-09-12 16:09:52.824635180 +0200 @@ -4,6 +4,8 @@ module network.mojom; @@ -488,10 +488,10 @@ diff -up chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom. + // If the log is currently qualified, this will not be set. + mojo_base.mojom.TimeDelta? disqualified_at; }; -diff -up chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom.certificate-transparency chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom ---- chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 -+++ chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom 2019-09-03 22:08:28.936786554 +0200 -@@ -238,15 +238,6 @@ struct NetworkContextParams { +diff -up chromium-77.0.3865.75/services/network/public/mojom/network_context.mojom.certificate-transparency chromium-77.0.3865.75/services/network/public/mojom/network_context.mojom +--- chromium-77.0.3865.75/services/network/public/mojom/network_context.mojom.certificate-transparency 2019-09-09 23:55:22.000000000 +0200 ++++ chromium-77.0.3865.75/services/network/public/mojom/network_context.mojom 2019-09-12 16:09:52.825635192 +0200 +@@ -239,15 +239,6 @@ struct NetworkContextParams { [EnableIf=is_android] bool check_clear_text_permitted = false; @@ -507,7 +507,7 @@ diff -up chromium-76.0.3809.132/services/network/public/mojom/network_context.mo // Enables HTTP/0.9 on ports other than 80 for HTTP and 443 for HTTPS. bool http_09_on_non_default_ports_enabled = false; -@@ -299,6 +290,15 @@ struct NetworkContextParams { +@@ -300,6 +291,15 @@ struct NetworkContextParams { // servers, so they can discover misconfigurations. bool enable_certificate_reporting = false; @@ -523,7 +523,7 @@ diff -up chromium-76.0.3809.132/services/network/public/mojom/network_context.mo // Enables Expect CT reporting, which sends reports for opted-in sites that // don't serve sufficient Certificate Transparency information. [EnableIf=is_ct_supported] -@@ -310,6 +310,13 @@ struct NetworkContextParams { +@@ -311,6 +311,13 @@ struct NetworkContextParams { [EnableIf=is_ct_supported] array ct_logs; diff --git a/chromium-77.0.3865.75-fedora-user-agent.patch b/chromium-77.0.3865.75-fedora-user-agent.patch new file mode 100644 index 0000000..8f6de51 --- /dev/null +++ b/chromium-77.0.3865.75-fedora-user-agent.patch @@ -0,0 +1,12 @@ +diff -up chromium-77.0.3865.75/content/common/user_agent.cc.fedora-user-agent chromium-77.0.3865.75/content/common/user_agent.cc +--- chromium-77.0.3865.75/content/common/user_agent.cc.fedora-user-agent 2019-09-12 15:49:11.902270729 +0200 ++++ chromium-77.0.3865.75/content/common/user_agent.cc 2019-09-12 15:50:11.555732044 +0200 +@@ -35,7 +35,7 @@ std::string GetUserAgentPlatform() { + #elif defined(OS_MACOSX) + return "Macintosh; "; + #elif defined(USE_X11) || defined(USE_OZONE) +- return "X11; "; // strange, but that's what Firefox uses ++ return "X11; Fedora; "; // strange, but that's what Firefox uses + #elif defined(OS_ANDROID) + return "Linux; "; + #elif defined(OS_POSIX) diff --git a/chromium-77.0.3865.75-fix-v8-gcc.patch b/chromium-77.0.3865.75-fix-v8-gcc.patch new file mode 100644 index 0000000..385778c --- /dev/null +++ b/chromium-77.0.3865.75-fix-v8-gcc.patch @@ -0,0 +1,14 @@ +diff -up chromium-77.0.3865.75/v8/src/objects/js-objects.cc.fix-v8-gcc chromium-77.0.3865.75/v8/src/objects/js-objects.cc +--- chromium-77.0.3865.75/v8/src/objects/js-objects.cc.fix-v8-gcc 2019-09-12 15:55:18.936238980 +0200 ++++ chromium-77.0.3865.75/v8/src/objects/js-objects.cc 2019-09-12 15:56:06.796645726 +0200 +@@ -3773,6 +3773,10 @@ Handle CreateElementDi + return new_element_dictionary; + } + ++template void JSObject::ApplyAttributesToDictionary( ++ Isolate* isolate, ReadOnlyRoots roots, Handle dictionary, ++ const PropertyAttributes attributes); ++ + template + Maybe JSObject::PreventExtensionsWithTransition( + Handle object, ShouldThrow should_throw) { diff --git a/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch b/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch new file mode 100644 index 0000000..d342e2d --- /dev/null +++ b/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch @@ -0,0 +1,13 @@ +diff -up chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h.nogccoptmath chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h +--- chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h.nogccoptmath 2019-09-12 09:55:13.041038765 +0200 ++++ chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h 2019-09-12 10:11:14.088101504 +0200 +@@ -24,8 +24,7 @@ + #elif !defined(__native_client__) && \ + ((defined(__clang__) && \ + ((__clang_major__ > 3) || \ +- (__clang_major__ == 3 && __clang_minor__ >= 4))) || \ +- (defined(__GNUC__) && __GNUC__ >= 5)) ++ (__clang_major__ == 3 && __clang_minor__ >= 4))) + #include "base/numerics/safe_math_clang_gcc_impl.h" + #define BASE_HAS_OPTIMIZED_SAFE_MATH (1) + #else diff --git a/chromium-77.0.3865.75-gcc5-r3.patch b/chromium-77.0.3865.75-gcc5-r3.patch new file mode 100644 index 0000000..34b858a --- /dev/null +++ b/chromium-77.0.3865.75-gcc5-r3.patch @@ -0,0 +1,36 @@ +diff -up chromium-77.0.3865.75/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 chromium-77.0.3865.75/gpu/ipc/common/mailbox_struct_traits.h +--- chromium-77.0.3865.75/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 2019-09-09 23:55:18.000000000 +0200 ++++ chromium-77.0.3865.75/gpu/ipc/common/mailbox_struct_traits.h 2019-09-12 10:13:16.710206500 +0200 +@@ -15,7 +15,7 @@ namespace mojo { + template <> + struct StructTraits { + static base::span name(const gpu::Mailbox& mailbox) { +- return mailbox.name; ++ return base::make_span(mailbox.name); + } + static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out); + }; +diff -up chromium-77.0.3865.75/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 chromium-77.0.3865.75/services/viz/public/cpp/compositing/quads_struct_traits.h +--- chromium-77.0.3865.75/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 2019-09-09 23:55:23.000000000 +0200 ++++ chromium-77.0.3865.75/services/viz/public/cpp/compositing/quads_struct_traits.h 2019-09-12 10:13:16.710206500 +0200 +@@ -391,7 +391,7 @@ struct StructTraits vertex_opacity(const viz::DrawQuad& input) { + const viz::TextureDrawQuad* quad = + viz::TextureDrawQuad::MaterialCast(&input); +- return quad->vertex_opacity; ++ return base::make_span(quad->vertex_opacity); + } + + static bool y_flipped(const viz::DrawQuad& input) { +diff -up chromium-77.0.3865.75/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 chromium-77.0.3865.75/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc +--- chromium-77.0.3865.75/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 2019-09-12 10:13:16.711206509 +0200 ++++ chromium-77.0.3865.75/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2019-09-12 15:41:15.300158849 +0200 +@@ -10,7 +10,7 @@ + + #include "modules/audio_processing/aec3/aec_state.h" + +-#include ++#include + + #include + #include diff --git a/chromium-77.0.3865.75-no-zlib-mangle.patch b/chromium-77.0.3865.75-no-zlib-mangle.patch new file mode 100644 index 0000000..c32d226 --- /dev/null +++ b/chromium-77.0.3865.75-no-zlib-mangle.patch @@ -0,0 +1,22 @@ +diff -up chromium-77.0.3865.75/third_party/zlib/zconf.h.nozmangle chromium-77.0.3865.75/third_party/zlib/zconf.h +--- chromium-77.0.3865.75/third_party/zlib/zconf.h.nozmangle 2019-09-12 09:36:37.924086850 +0200 ++++ chromium-77.0.3865.75/third_party/zlib/zconf.h 2019-09-12 09:53:01.623958551 +0200 +@@ -9,18 +9,6 @@ + #define ZCONF_H + + /* +- * This library is also built as a part of AOSP, which does not need to include +- * chromeconf.h. This config does not want chromeconf.h, so it can set this +- * macro to opt out. While this works today, there's no guarantee that building +- * zlib outside of Chromium keeps working in the future. +- */ +-#if !defined(CHROMIUM_ZLIB_NO_CHROMECONF) +-/* This include does prefixing as below, but with an updated set of names. Also +- * sets up export macros in component builds. */ +-#include "chromeconf.h" +-#endif +- +-/* + * If you *really* need a unique prefix for all types and library functions, + * compile with -DZ_PREFIX. The "standard" zlib should be compiled without it. + * Even better than compiling with -DZ_PREFIX would be to use configure to set diff --git a/chromium.spec b/chromium.spec index 877f8f7..a943ad5 100644 --- a/chromium.spec +++ b/chromium.spec @@ -164,14 +164,14 @@ BuildRequires: libicu-devel >= 5.4 %global chromoting_client_id %nil %endif -%global majorversion 76 +%global majorversion 77 %if %{freeworld} Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3809.132 +Version: %{majorversion}.0.3865.75 Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home @@ -211,20 +211,20 @@ Patch16: chromium-60.0.3112.78-no-libpng-prefix.patch # Do not mangle libjpeg Patch17: chromium-60.0.3112.78-jpeg-nomangle.patch # Do not mangle zlib -Patch18: chromium-75.0.3770.80-no-zlib-mangle.patch +Patch18: chromium-77.0.3865.75-no-zlib-mangle.patch # Fix libavutil include pathing to find arch specific timer.h # For some reason, this only fails on aarch64. No idea why. Patch19: chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch # from gentoo -Patch20: chromium-61.0.3163.79-gcc-no-opt-safe-math.patch +Patch20: chromium-77.0.3865.75-gcc-no-opt-safe-math.patch # From gentoo -Patch21: chromium-72.0.3626.121-gcc5-r3.patch +Patch21: chromium-77.0.3865.75-gcc5-r3.patch # To use round with gcc, you need to #include Patch22: chromium-65.0.3325.146-gcc-round-fix.patch # Include proper headers to invoke memcpy() Patch23: chromium-65.0.3325.146-memcpy-fix.patch # ../../mojo/public/cpp/bindings/associated_interface_ptr_info.h:48:43: error: cannot convert 'const mojo::ScopedInterfaceEndpointHandle' to 'bool' in return -Patch24: chromium-68.0.3440.106-boolfix.patch +Patch24: chromium-77.0.3865.75-boolfix.patch # From Debian Patch25: chromium-71.0.3578.98-skia-aarch64-buildfix.patch # Do not use unrar code, it is non-free @@ -232,7 +232,7 @@ Patch27: chromium-73.0.3683.75-norar.patch # Upstream GCC fixes Patch28: chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch # Add "Fedora" to the user agent string -Patch29: chromium-72.0.3626.121-fedora-user-agent.patch +Patch29: chromium-77.0.3865.75-fedora-user-agent.patch # Try to fix version.py for Rawhide Patch30: chromium-71.0.3578.98-py2-bootstrap.patch # Fix default on redeclaration error @@ -260,43 +260,11 @@ Patch41: chromium-75.0.3770.80-SIOCGSTAMP.patch # Revert https://chromium.googlesource.com/chromium/src/+/daff6b66faae53a0cefb88987c9ff4843629b728%5E%21/#F0 # It might make clang happy but it breaks gcc. F*** clang. Patch43: chromium-75.0.3770.80-revert-daff6b.patch -# Avoid pure virtual crash destroying RenderProcessUserData -# https://chromium.googlesource.com/chromium/src/+/cdf306db81efaaaa954487585d5a5a16205a5ebd%5E%21/ -Patch44: chromium-75.0.3770.80-pure-virtual-crash-fix.patch # rename function to avoid conflict with rawhide glibc "gettid()" Patch45: chromium-75.0.3770.80-grpc-gettid-fix.patch # fix v8 compile with gcc # https://chromium.googlesource.com/v8/v8/+/3b8c624bda58d05aea80dd9626cd550537d6ac3f%5E%21/#F1 -Patch46: chromium-75.0.3770.100-fix-v8-gcc.patch -# Fix Vulkan compilation with gcc -# https://chromium.googlesource.com/chromium/src/+/fdb3bb1f8c41d044a5b0cb80257a26dd3c8f83a3 -Patch47: chromium-76.0.3809.100-gcc-vulkan.patch -# https://chromium-review.googlesource.com/c/chromium/src/+/1645297 -Patch48: chromium-76.0.3809.100-gcc-cc-no-except.patch -# https://chromium.googlesource.com/chromium/src.git/+/502e6e42633d2571c8236c8649b031fe9915eb5b -Patch49: chromium-76.0.3809.100-gcc-net-fetcher.patch -# https://quiche.googlesource.com/quiche.git/+/9424add9d73432a794b7944790253213cce6dcb8 -Patch50: chromium-76.0.3809.100-quiche-compile-fix.patch -# https://chromium.googlesource.com/chromium/src/+/53bb5a463ee956c70230eaa5450022185d0ddc3c -Patch51: chromium-76.0.3809.100-throttling-dead-beef.patch -# https://chromium.googlesource.com/chromium/src/+/52b5ceac95b67491b1c71f0ef9a32b778bbbaa2e -Patch52: chromium-76.0.3809.132-gcc-ambigous-instantiation.patch -# https://chromium.googlesource.com/chromium/src.git/+/715cb38eac889625de0c429d2672562188b4107e -Patch53: chromium-76.0.3809.100-weak-ptr-no-except.patch -# https://chromium.googlesource.com/chromium/src.git/+/c6afbd59c997c2b64f11abdd1eaef71ae8ea2ddc -Patch54: chromium-76.0.3809.100-gcc-feature-policy-parser.patch -# https://chromium.googlesource.com/chromium/src.git/+/cf6d6b40d711fce93a24a2cf517fa3becdbae8bb -Patch55: chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch -# https://chromium.googlesource.com/chromium/src.git/+/dcb55fb8f18abe5f43d260aa67b14b2dc996f992 -Patch56: chromium-76.0.3809.100-gcc-move-explicit-initialization.patch -# https://chromium.googlesource.com/chromium/src.git/+/7dc76c8d9f4cfbce7cf11424120aa6f6094916dc -Patch57: chromium-76.0.3809.100-gcc-initialization-order.patch -# https://chromium.googlesource.com/chromium/src.git/+/138904af5d6a4158ef4247fda816a8035e621e59 -Patch58: chromium-76.0.3809.100-gcc-history-move-noexcept.patch -# https://chromium.googlesource.com/chromium/src.git/+/bdc24128b75008743d819e298557a53205706e7c -Patch59: chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch -# https://chromium.googlesource.com/chromium/src.git/+/5d7f227fa844e79568df64e495e7ef958c12d7b2 -Patch60: chromium-76.0.3809.100-gcc-themeservice-includes.patch +Patch46: chromium-77.0.3865.75-fix-v8-gcc.patch # In GCC one can't use alignas() for exported classes # https://chromium.googlesource.com/chromium/src.git/+/8148fd96ae04a1150a9c6012634dcd2a7335f87a Patch61: chromium-76.0.3809.100-gcc-no-alignas-and-export.patch @@ -305,7 +273,7 @@ Patch62: chromium-76.0.3809.100-gcc-remoting-constexpr.patch # Needs to be submitted.. (ugly hack, needs to be added properly to GN files) Patch63: chromium-76.0.3809.100-vtable-symbol-undefined.patch # https://chromium.googlesource.com/chromium/src.git/+/3c9720245e440c4b7222f8348d2a2a3c25e098ae -Patch64: chromium-76.0.3809.132-certificate-transparency.patch +Patch64: chromium-77.0.3865.75-certificate-transparency.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -846,7 +814,7 @@ udev. %patch22 -p1 -b .gcc-round-fix %patch23 -p1 -b .memcpyfix %patch24 -p1 -b .boolfix -%patch25 -p1 -b .aarch64fix +#%patch25 -p1 -b .aarch64fix %patch27 -p1 -b .nounrar %patch28 -p1 -b .gcc-cpolicyprovider %patch29 -p1 -b .fedora-user-agent @@ -861,23 +829,8 @@ udev. %patch38 -p1 -b .disable-ndnpc %patch41 -p1 -b .SIOCGSTAMP %patch43 -p1 -b .revert-daff6b -%patch44 -p1 -b .pure-virtual-fix %patch45 -p1 -b .gettid-fix %patch46 -p1 -b .fix-v8-gcc -%patch47 -p1 -b .gcc-vulkan -%patch48 -p1 -b .gcc-cc-no-except -%patch49 -p1 -b .gcc-net-fetcher -%patch50 -p1 -b .quiche-compile-fix -%patch51 -p1 -b .throttling-dead-beef -%patch52 -p1 -b .gcc-ambigous-instantiation -%patch53 -p1 -b .weak-ptr-no-except -%patch54 -p1 -b .gcc-feature-policy-parser -%patch55 -p1 -b .gcc-hasfraction-constexpr -%patch56 -p1 -b .gcc-move-explicit-initialization -%patch57 -p1 -b .gcc-initialization-order -%patch58 -p1 -b .gcc-history-move-noexcept -%patch59 -p1 -b .gcc-accountinfo-move-noexcept -%patch60 -p1 -b .gcc-themeservice-includes %patch61 -p1 -b .gcc-no-alignas-and-export %patch62 -p1 -b .gcc-remoting-constexpr %patch63 -p1 -b .vtable-symbol-undefined @@ -1466,6 +1419,7 @@ sed -i.orig -e 's/getenv("CHROME_VERSION_EXTRA")/"Fedora Project"/' $FILE . /opt/rh/devtoolset-%{dts_version}/enable %endif +echo # Now do the full browser %if 0%{freeworld} ../depot_tools/ninja -C %{target} -vvv media diff --git a/sources b/sources index 2d38a7c..a1d28bf 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-76.0.3809.132-clean.tar.xz) = fbc5f989945adfaffb9fb5199ccb988accdc53f41a03bba9c4ab3df8585b9267b1f34cd7a6ac487eff34ebb6e65865e32ceea4ad945eec30f871d8eed41f3e6f +SHA512 (chromium-77.0.3865.75-clean.tar.xz) = 9531e5d533bf305bd82ae2dbc7bf1a9e081377b61a5611f4bfa14ed389f94d106e26a9981771ed11697ca9c2490eb24c69e992fd907de241698c89a6131db0b6 From 6e6dfd56f09be0eb1bd8c1e180b5db4b517958af Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 15:18:03 +0200 Subject: [PATCH 0462/1449] Unbundle the zlib Use the gentoo patch. --- chromium-77.0.3865.75-unbundle-zlib.patch | 25 +++++++++++++++++++++++ chromium.spec | 3 +++ 2 files changed, 28 insertions(+) create mode 100644 chromium-77.0.3865.75-unbundle-zlib.patch diff --git a/chromium-77.0.3865.75-unbundle-zlib.patch b/chromium-77.0.3865.75-unbundle-zlib.patch new file mode 100644 index 0000000..d6c45ad --- /dev/null +++ b/chromium-77.0.3865.75-unbundle-zlib.patch @@ -0,0 +1,25 @@ +From e1bbdec720a333937bd1b990ae0f7ee97db0d3b0 Mon Sep 17 00:00:00 2001 +From: Your Name +Date: Fri, 28 Jun 2019 15:56:23 +0000 +Subject: [PATCH] update zlib + +--- + third_party/perfetto/gn/BUILD.gn | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/third_party/perfetto/gn/BUILD.gn b/third_party/perfetto/gn/BUILD.gn +index c951f5f..297eee3 100644 +--- a/third_party/perfetto/gn/BUILD.gn ++++ b/third_party/perfetto/gn/BUILD.gn +@@ -200,7 +200,7 @@ group("zlib") { + "//buildtools:zlib", + ] + } else if (build_with_chromium) { +- public_configs = [ "//third_party/zlib:zlib_config" ] ++ public_configs = [ "//third_party/zlib:system_zlib" ] + public_deps = [ + "//third_party/zlib", + ] +-- +2.21.0 + diff --git a/chromium.spec b/chromium.spec index a943ad5..440ec40 100644 --- a/chromium.spec +++ b/chromium.spec @@ -274,6 +274,8 @@ Patch62: chromium-76.0.3809.100-gcc-remoting-constexpr.patch Patch63: chromium-76.0.3809.100-vtable-symbol-undefined.patch # https://chromium.googlesource.com/chromium/src.git/+/3c9720245e440c4b7222f8348d2a2a3c25e098ae Patch64: chromium-77.0.3865.75-certificate-transparency.patch +# https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-unbundle-zlib.patch +Patch65: chromium-77.0.3865.75-unbundle-zlib.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -835,6 +837,7 @@ udev. %patch62 -p1 -b .gcc-remoting-constexpr %patch63 -p1 -b .vtable-symbol-undefined %patch64 -p1 -b .certificate-transparency +%patch65 -p1 -b .unbundle-zlib # EPEL specific patches %if 0%{?rhel} == 7 From 62d330423a8d7a7ba17fdbee6966abbc76707a4a Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 15:23:46 +0200 Subject: [PATCH 0463/1449] Missing bundled dependency for headless --- chromium.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/chromium.spec b/chromium.spec index 440ec40..92e6b78 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1230,6 +1230,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ %endif 'third_party/openscreen' \ 'third_party/opus' \ + 'third_party/one_euro_filter' \ 'third_party/ots' \ 'third_party/pdfium' \ 'third_party/pdfium/third_party/agg23' \ From 3534908954173e8207dd19ecc36b19eb5666ecb7 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 15:21:43 +0200 Subject: [PATCH 0464/1449] Fix the previously rebased patched --- chromium-77.0.3865.75-gcc-no-opt-safe-math.patch | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch b/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch index d342e2d..920a53e 100644 --- a/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch +++ b/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch @@ -1,13 +1,15 @@ diff -up chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h.nogccoptmath chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h ---- chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h.nogccoptmath 2019-09-12 09:55:13.041038765 +0200 -+++ chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h 2019-09-12 10:11:14.088101504 +0200 -@@ -24,8 +24,7 @@ +--- chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h.nogccoptmath 2019-09-13 14:17:22.726738088 +0200 ++++ chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h 2019-09-13 14:31:37.686898493 +0200 +@@ -23,9 +23,8 @@ + // Where available use builtin math overflow support on Clang and GCC. #elif !defined(__native_client__) && \ ((defined(__clang__) && \ - ((__clang_major__ > 3) || \ +- ((__clang_major__ > 3) || \ - (__clang_major__ == 3 && __clang_minor__ >= 4))) || \ - (defined(__GNUC__) && __GNUC__ >= 5)) -+ (__clang_major__ == 3 && __clang_minor__ >= 4))) ++ (__clang_major__ > 3) || \ ++ (__clang_major__ == 3 && __clang_minor__ >= 4))) #include "base/numerics/safe_math_clang_gcc_impl.h" #define BASE_HAS_OPTIMIZED_SAFE_MATH (1) #else From aa41a1de67e23ce345062d1753d1f6b3c3d7fad8 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 15:18:54 +0200 Subject: [PATCH 0465/1449] Update the clean-ffmpeg.sh script --- clean_ffmpeg.sh | 1 + sources | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index 2f27435..fd226e8 100755 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -138,6 +138,7 @@ header_files=" libavcodec/x86/inline_asm.h \ libavcodec/vlc.h \ libavcodec/vorbisdsp.h \ libavcodec/vp3data.h \ + libavcodec/vp4data.h \ libavcodec/vp3dsp.h \ libavcodec/vp56.h \ libavcodec/vp56dsp.h \ diff --git a/sources b/sources index a1d28bf..b9b0498 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-77.0.3865.75-clean.tar.xz) = 9531e5d533bf305bd82ae2dbc7bf1a9e081377b61a5611f4bfa14ed389f94d106e26a9981771ed11697ca9c2490eb24c69e992fd907de241698c89a6131db0b6 +SHA512 (chromium-77.0.3865.75-clean.tar.xz) = ca7a71586a60abeacb70b9d08ba9a28455d875bfa5232070fdff079e52395924b80f05d7627e3a5d5c7a3df606a39a31e05634683a052c9efb634ed536afc092 From 1dabe8d36679bcd36e5488c42a5f148a6100f872 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 15:24:09 +0200 Subject: [PATCH 0466/1449] Include to fix the headless build --- chromium-77.0.3865.75-gcc-include-memory.patch | 12 ++++++++++++ chromium.spec | 3 +++ 2 files changed, 15 insertions(+) create mode 100644 chromium-77.0.3865.75-gcc-include-memory.patch diff --git a/chromium-77.0.3865.75-gcc-include-memory.patch b/chromium-77.0.3865.75-gcc-include-memory.patch new file mode 100644 index 0000000..93b4399 --- /dev/null +++ b/chromium-77.0.3865.75-gcc-include-memory.patch @@ -0,0 +1,12 @@ +diff -up chromium-77.0.3865.75/third_party/one_euro_filter/src/one_euro_filter.h.gcc-include-memory chromium-77.0.3865.75/third_party/one_euro_filter/src/one_euro_filter.h +--- chromium-77.0.3865.75/third_party/one_euro_filter/src/one_euro_filter.h.gcc-include-memory 2019-09-13 14:44:24.962770079 +0200 ++++ chromium-77.0.3865.75/third_party/one_euro_filter/src/one_euro_filter.h 2019-09-13 14:44:45.347073612 +0200 +@@ -3,6 +3,8 @@ + + #include "low_pass_filter.h" + ++#include ++ + namespace one_euro_filter { + namespace test { + class OneEuroFilterTest; diff --git a/chromium.spec b/chromium.spec index 92e6b78..980a57d 100644 --- a/chromium.spec +++ b/chromium.spec @@ -276,6 +276,8 @@ Patch63: chromium-76.0.3809.100-vtable-symbol-undefined.patch Patch64: chromium-77.0.3865.75-certificate-transparency.patch # https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-unbundle-zlib.patch Patch65: chromium-77.0.3865.75-unbundle-zlib.patch +# Needs to be submitted.. +Patch66: chromium-77.0.3865.75-gcc-include-memory.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -838,6 +840,7 @@ udev. %patch63 -p1 -b .vtable-symbol-undefined %patch64 -p1 -b .certificate-transparency %patch65 -p1 -b .unbundle-zlib +%patch66 -p1 -b .gcc-include-memory # EPEL specific patches %if 0%{?rhel} == 7 From 670a5ef5afc89028d89ec7486261805cefbd1626 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 15:00:03 +0200 Subject: [PATCH 0467/1449] Use the bundled harfbuzz-ng for < F31 Needed because of the hb_subset_input_set_retain_gids(), that's only available in harbuzz 2.4 that's only in F31+ --- chromium.spec | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/chromium.spec b/chromium.spec index 980a57d..129f8b9 100644 --- a/chromium.spec +++ b/chromium.spec @@ -133,9 +133,9 @@ BuildRequires: libicu-devel >= 5.4 %global bundlefontconfig 0 %endif -# Needs at least harfbuzz 2.3.0 now. -# 2019-03-13 -%if 0%{?fedora} < 30 +# Needs at least harfbuzz 2.4.0 now. +# 2019-09-13 +%if 0%{?fedora} < 31 %global bundleharfbuzz 1 %else %global bundleharfbuzz 0 From ce1cdf147b4faa3545fb1f783fed82712f601144 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 21:48:17 +0200 Subject: [PATCH 0468/1449] Remove an unneeded patch that's breaking the build --- chromium-77.0.3865.75-fix-v8-gcc.patch | 14 -------------- chromium.spec | 4 ---- 2 files changed, 18 deletions(-) delete mode 100644 chromium-77.0.3865.75-fix-v8-gcc.patch diff --git a/chromium-77.0.3865.75-fix-v8-gcc.patch b/chromium-77.0.3865.75-fix-v8-gcc.patch deleted file mode 100644 index 385778c..0000000 --- a/chromium-77.0.3865.75-fix-v8-gcc.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -up chromium-77.0.3865.75/v8/src/objects/js-objects.cc.fix-v8-gcc chromium-77.0.3865.75/v8/src/objects/js-objects.cc ---- chromium-77.0.3865.75/v8/src/objects/js-objects.cc.fix-v8-gcc 2019-09-12 15:55:18.936238980 +0200 -+++ chromium-77.0.3865.75/v8/src/objects/js-objects.cc 2019-09-12 15:56:06.796645726 +0200 -@@ -3773,6 +3773,10 @@ Handle CreateElementDi - return new_element_dictionary; - } - -+template void JSObject::ApplyAttributesToDictionary( -+ Isolate* isolate, ReadOnlyRoots roots, Handle dictionary, -+ const PropertyAttributes attributes); -+ - template - Maybe JSObject::PreventExtensionsWithTransition( - Handle object, ShouldThrow should_throw) { diff --git a/chromium.spec b/chromium.spec index 129f8b9..a6daffc 100644 --- a/chromium.spec +++ b/chromium.spec @@ -262,9 +262,6 @@ Patch41: chromium-75.0.3770.80-SIOCGSTAMP.patch Patch43: chromium-75.0.3770.80-revert-daff6b.patch # rename function to avoid conflict with rawhide glibc "gettid()" Patch45: chromium-75.0.3770.80-grpc-gettid-fix.patch -# fix v8 compile with gcc -# https://chromium.googlesource.com/v8/v8/+/3b8c624bda58d05aea80dd9626cd550537d6ac3f%5E%21/#F1 -Patch46: chromium-77.0.3865.75-fix-v8-gcc.patch # In GCC one can't use alignas() for exported classes # https://chromium.googlesource.com/chromium/src.git/+/8148fd96ae04a1150a9c6012634dcd2a7335f87a Patch61: chromium-76.0.3809.100-gcc-no-alignas-and-export.patch @@ -834,7 +831,6 @@ udev. %patch41 -p1 -b .SIOCGSTAMP %patch43 -p1 -b .revert-daff6b %patch45 -p1 -b .gettid-fix -%patch46 -p1 -b .fix-v8-gcc %patch61 -p1 -b .gcc-no-alignas-and-export %patch62 -p1 -b .gcc-remoting-constexpr %patch63 -p1 -b .vtable-symbol-undefined From b10ed01ae7f394478f8abea46a1227b93933c576 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 22:05:31 +0200 Subject: [PATCH 0469/1449] Another export and alignas gcc compilation fix --- chromium-77.0.3865.75-base-gcc-no-alignas.patch | 12 ++++++++++++ chromium.spec | 3 +++ 2 files changed, 15 insertions(+) create mode 100644 chromium-77.0.3865.75-base-gcc-no-alignas.patch diff --git a/chromium-77.0.3865.75-base-gcc-no-alignas.patch b/chromium-77.0.3865.75-base-gcc-no-alignas.patch new file mode 100644 index 0000000..86a2271 --- /dev/null +++ b/chromium-77.0.3865.75-base-gcc-no-alignas.patch @@ -0,0 +1,12 @@ +diff -up chromium-77.0.3865.75/base/task/promise/dependent_list.h.base-gcc-no-alignas chromium-77.0.3865.75/base/task/promise/dependent_list.h +--- chromium-77.0.3865.75/base/task/promise/dependent_list.h.base-gcc-no-alignas 2019-09-13 21:45:51.873172347 +0200 ++++ chromium-77.0.3865.75/base/task/promise/dependent_list.h 2019-09-13 21:46:21.661522514 +0200 +@@ -59,7 +59,7 @@ class BASE_EXPORT DependentList { + + // Align Node on an 8-byte boundary to ensure the first 3 bits are 0 and can + // be used to store additional state (see static_asserts below). +- class BASE_EXPORT alignas(8) Node { ++ class BASE_EXPORT ALIGNAS(8) Node { + public: + Node(); + explicit Node(Node&& other) noexcept; diff --git a/chromium.spec b/chromium.spec index a6daffc..328b149 100644 --- a/chromium.spec +++ b/chromium.spec @@ -275,6 +275,8 @@ Patch64: chromium-77.0.3865.75-certificate-transparency.patch Patch65: chromium-77.0.3865.75-unbundle-zlib.patch # Needs to be submitted.. Patch66: chromium-77.0.3865.75-gcc-include-memory.patch +# Needs to be submitted.. +Patch67: chromium-77.0.3865.75-base-gcc-no-alignas.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -837,6 +839,7 @@ udev. %patch64 -p1 -b .certificate-transparency %patch65 -p1 -b .unbundle-zlib %patch66 -p1 -b .gcc-include-memory +%patch67 -p1 -b .base-gcc-no-alignas # EPEL specific patches %if 0%{?rhel} == 7 From a9b565084b2825a476563c1d40597038e8d18971 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 22:06:07 +0200 Subject: [PATCH 0470/1449] Preserve the spirv heads for swiftshader compilation --- chromium.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/chromium.spec b/chromium.spec index 328b149..dca072c 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1277,6 +1277,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/swiftshader/third_party/subzero' \ 'third_party/swiftshader/third_party/llvm-subzero' \ 'third_party/swiftshader/third_party/llvm-7.0' \ + 'third_party/swiftshader/third_party/SPIRV-Headers' \ 'third_party/tcmalloc' \ 'third_party/test_fonts' \ 'third_party/usb_ids' \ From 4287667b770213af574b8adb5d22f919a5c63fca Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 22:13:56 +0200 Subject: [PATCH 0471/1449] Fix the release number and add a changelog entry --- chromium.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index dca072c..b959409 100644 --- a/chromium.spec +++ b/chromium.spec @@ -172,7 +172,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3865.75 -Release: 2%{?dist} +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1872,6 +1872,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Fri Sep 13 2019 Tomas Popela - 77.0.3865.75-1 +- Update to 77.0.3865.75 + * Tue Sep 03 2019 Tomas Popela - 76.0.3809.132-2 - Backport patch to fix certificate transparency From 5316414f65248b78db5678e60a797f2cea4dc493 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Sat, 14 Sep 2019 11:09:46 +0200 Subject: [PATCH 0472/1449] More of the harfbuzz related fixes --- chromium-77.0.3865.75-harfbuzz-subset.patch | 49 +++++++++++++++++++++ chromium.spec | 7 ++- 2 files changed, 54 insertions(+), 2 deletions(-) create mode 100644 chromium-77.0.3865.75-harfbuzz-subset.patch diff --git a/chromium-77.0.3865.75-harfbuzz-subset.patch b/chromium-77.0.3865.75-harfbuzz-subset.patch new file mode 100644 index 0000000..55d78d1 --- /dev/null +++ b/chromium-77.0.3865.75-harfbuzz-subset.patch @@ -0,0 +1,49 @@ +From 27e25336b8316ff3ec4e464058682ed85801fd06 Mon Sep 17 00:00:00 2001 +From: Raphael Kubo da Costa +Date: Mon, 29 Jul 2019 10:54:28 +0000 +Subject: [PATCH] Also link against libharfbuzz-subset when use_system_harfbuzz is true + +When building HarfBuzz as part of Chromium, there is a single source set +with all the files we need in the build. + +Upstream HarfBuzz, on the other hand, produces a few different libraries: +harfbuzz, harfbuzz-icu and harfbuzz-subset. When |use_system_harfbuzz| is +true, we were only looking for (and using) harfbuzz.pc with pkg-config even +though we also use symbols from libharfbuzz-subset.so. This resulted in +errors when linking: + + ld: obj/skia/skia/SkPDFSubsetFont.o: in function `SkPDFSubsetFont(sk_sp, SkPDFGlyphUse const&, SkPDF::Metadata::Subsetter, char const*, int)': + SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x48a): undefined reference to `hb_subset_input_create_or_fail' + ld: SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x4af): undefined reference to `hb_subset_input_glyph_set' + ld: SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x5d7): undefined reference to `hb_subset_input_set_retain_gids' + ld: SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x5e4): undefined reference to `hb_subset_input_set_drop_hints' + ld: SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x5f3): undefined reference to `hb_subset' + ld: SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x66f): undefined reference to `hb_subset_input_destroy' + +as reported in +https://groups.google.com/a/chromium.org/d/msg/chromium-packagers/UyJsVJ5QqWo/jSv5z7-rEQAJ + +Change-Id: I997af075c7b7263cd7cc71a63db5b0f93bd1ab59 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1715288 +Auto-Submit: Raphael Kubo da Costa +Commit-Queue: Dominik Röttsches +Reviewed-by: Dominik Röttsches +Cr-Commit-Position: refs/heads/master@{#681760} +--- + +diff --git a/third_party/harfbuzz-ng/BUILD.gn b/third_party/harfbuzz-ng/BUILD.gn +index 37d8e33..72013eb1d 100644 +--- a/third_party/harfbuzz-ng/BUILD.gn ++++ b/third_party/harfbuzz-ng/BUILD.gn +@@ -16,7 +16,10 @@ + "//third_party:freetype_harfbuzz", + "//third_party/freetype:freetype_source", + ] +- packages = [ "harfbuzz" ] ++ packages = [ ++ "harfbuzz", ++ "harfbuzz-subset", ++ ] + } + } else { + config("harfbuzz_config") { diff --git a/chromium.spec b/chromium.spec index b959409..277fcfe 100644 --- a/chromium.spec +++ b/chromium.spec @@ -277,6 +277,8 @@ Patch65: chromium-77.0.3865.75-unbundle-zlib.patch Patch66: chromium-77.0.3865.75-gcc-include-memory.patch # Needs to be submitted.. Patch67: chromium-77.0.3865.75-base-gcc-no-alignas.patch +# https://chromium.googlesource.com/chromium/src/+/27e25336b8316ff3ec4e464058682ed85801fd06 +Patch68: chromium-77.0.3865.75-harfbuzz-subset.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -362,7 +364,7 @@ BuildRequires: gperf %if 0%{?bundleharfbuzz} #nothing %else -BuildRequires: harfbuzz-devel >= 2.3.0 +BuildRequires: harfbuzz-devel >= 2.4.0 %endif BuildRequires: libatomic BuildRequires: libcap-devel @@ -624,7 +626,7 @@ Provides: bundled(freetype) = 2.9.3 %endif Provides: bundled(gperftools) = svn144 %if 0%{?bundleharfbuzz} -Provides: bundled(harfbuzz) = 2.3.0 +Provides: bundled(harfbuzz) = 2.4.0 %endif Provides: bundled(hunspell) = 1.6.0 Provides: bundled(iccjpeg) @@ -840,6 +842,7 @@ udev. %patch65 -p1 -b .unbundle-zlib %patch66 -p1 -b .gcc-include-memory %patch67 -p1 -b .base-gcc-no-alignas +%patch68 -p1 -b .harfbuzz-subset # EPEL specific patches %if 0%{?rhel} == 7 From a159083f2bffc5638c2bc82df2b5187c6b2b6408 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Sat, 14 Sep 2019 11:10:29 +0200 Subject: [PATCH 0473/1449] Don't remove an additional bundled library --- chromium.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/chromium.spec b/chromium.spec index 277fcfe..4a74346 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1234,6 +1234,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/openh264' \ %endif 'third_party/openscreen' \ + 'third_party/openscreen/src/third_party/tinycbor' \ 'third_party/opus' \ 'third_party/one_euro_filter' \ 'third_party/ots' \ From d0e5893874a5394bcf62cbb090dd7245a080c245 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Sat, 14 Sep 2019 17:06:52 +0200 Subject: [PATCH 0474/1449] Backport another GCC build fix --- ...mium-77.0.3865.75-gcc-abstract-class.patch | 61 +++++++++++++++++++ chromium.spec | 3 + 2 files changed, 64 insertions(+) create mode 100644 chromium-77.0.3865.75-gcc-abstract-class.patch diff --git a/chromium-77.0.3865.75-gcc-abstract-class.patch b/chromium-77.0.3865.75-gcc-abstract-class.patch new file mode 100644 index 0000000..6d77299 --- /dev/null +++ b/chromium-77.0.3865.75-gcc-abstract-class.patch @@ -0,0 +1,61 @@ +From f08cb0022527081c078e8b96062e6c9b4fbda151 Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Fri, 26 Jul 2019 16:48:06 +0000 +Subject: [PATCH] BinaryUploadService: change parameter passing that cannot afford abstract class + +The method UploadForDeepScanning gets a Request as parameter. But Request is an +abstract class, so GCC will not allow that declaration (polimorphycs should be +passed by reference). Use std::unique_ptr so BinaryUploadService can assume +ownership. + +Bug: 819294 +Change-Id: I9e8c75cc92b01abd704d9049b0421555377da5ba +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1713550 +Reviewed-by: Daniel Rubery +Commit-Queue: José Dapena Paz +Cr-Commit-Position: refs/heads/master@{#681333} +--- + +diff --git a/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc b/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc +index 6430c89..4e90487 100644 +--- a/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc ++++ b/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc +@@ -10,7 +10,7 @@ + namespace safe_browsing { + + void BinaryUploadService::UploadForDeepScanning( +- BinaryUploadService::Request request) { ++ std::unique_ptr request) { + DCHECK_CURRENTLY_ON(content::BrowserThread::UI); + NOTREACHED(); + } +diff --git a/chrome/browser/safe_browsing/download_protection/binary_upload_service.h b/chrome/browser/safe_browsing/download_protection/binary_upload_service.h +index d2dfd83..9b6f395 100644 +--- a/chrome/browser/safe_browsing/download_protection/binary_upload_service.h ++++ b/chrome/browser/safe_browsing/download_protection/binary_upload_service.h +@@ -5,6 +5,8 @@ + #ifndef CHROME_BROWSER_SAFE_BROWSING_DOWNLOAD_PROTECTION_BINARY_UPLOAD_SERVICE_H_ + #define CHROME_BROWSER_SAFE_BROWSING_DOWNLOAD_PROTECTION_BINARY_UPLOAD_SERVICE_H_ + ++#include ++ + #include "base/callback.h" + #include "components/safe_browsing/proto/webprotect.pb.h" + +@@ -40,6 +42,7 @@ + public: + // |callback| will run on the UI thread. + explicit Request(Callback callback); ++ virtual ~Request() = default; + Request(const Request&) = delete; + Request& operator=(const Request&) = delete; + +@@ -67,7 +70,7 @@ + // Upload the given file contents for deep scanning. The results will be + // returned asynchronously by calling |request|'s |callback|. This must be + // called on the UI thread. +- void UploadForDeepScanning(Request request); ++ void UploadForDeepScanning(std::unique_ptr request); + }; + + } // namespace safe_browsing diff --git a/chromium.spec b/chromium.spec index 4a74346..625d74d 100644 --- a/chromium.spec +++ b/chromium.spec @@ -279,6 +279,8 @@ Patch66: chromium-77.0.3865.75-gcc-include-memory.patch Patch67: chromium-77.0.3865.75-base-gcc-no-alignas.patch # https://chromium.googlesource.com/chromium/src/+/27e25336b8316ff3ec4e464058682ed85801fd06 Patch68: chromium-77.0.3865.75-harfbuzz-subset.patch +# https://chromium.googlesource.com/chromium/src.git/+/f08cb0022527081c078e8b96062e6c9b4fbda151 +Patch69: chromium-77.0.3865.75-gcc-abstract-class.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -843,6 +845,7 @@ udev. %patch66 -p1 -b .gcc-include-memory %patch67 -p1 -b .base-gcc-no-alignas %patch68 -p1 -b .harfbuzz-subset +%patch69 -p1 -b .gcc-abstract-class # EPEL specific patches %if 0%{?rhel} == 7 From d544c78407eac8efb67088cde61ccd4eba574658 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Sat, 14 Sep 2019 19:15:24 +0200 Subject: [PATCH 0475/1449] Customize the ninja status to show the currently build target So one is able to realize faster, where the build is failing. --- chromium.spec | 53 ++++++++++++++++++++++++++++++--------------------- 1 file changed, 31 insertions(+), 22 deletions(-) diff --git a/chromium.spec b/chromium.spec index 625d74d..760805e 100644 --- a/chromium.spec +++ b/chromium.spec @@ -2,6 +2,13 @@ # https://fedoraproject.org/wiki/Changes/No_more_automagic_Python_bytecompilation_phase_2 %global _python_bytecompile_extra 1 +# Fancy build status, so we at least know, where we are.. +# %1 where +# %2 what +%global build_target() \ + export NINJA_STATUS="[%2:%f/%t] " ; \ + ../depot_tools/ninja -C '%1' -vvv '%2' + # This is faster when it works, but it doesn't always. %ifarch aarch64 %global use_jumbo 0 @@ -28,9 +35,9 @@ %global useapikeys 1 # Leave this alone, please. -%global target out/Release -%global headlesstarget out/Headless -%global remotingtarget out/Remoting +%global builddir out/Release +%global headlessbuilddir out/Headless +%global remotingbuilddir out/Remoting # Debuginfo packages aren't very useful here. If you need to debug # you should do a proper debug build (not implemented in this spec yet) @@ -1403,17 +1410,17 @@ if python2 -c 'import google ; print google.__path__' 2> /dev/null ; then \ fi tools/gn/bootstrap/bootstrap.py -v "$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" -%{target}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{target} +%{builddir}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{builddir} %if %{freeworld} # do not need to do headless gen %else %if %{build_headless} -%{target}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_HEADLESS_GN_DEFINES" %{headlesstarget} +%{builddir}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_HEADLESS_GN_DEFINES" %{headlessbuilddir} %endif %endif -%{target}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{remotingtarget} +%{builddir}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{remotingbuilddir} %if %{bundlelibusbx} # no hackity hack hack @@ -1433,34 +1440,36 @@ sed -i.orig -e 's/getenv("CHROME_VERSION_EXTRA")/"Fedora Project"/' $FILE . /opt/rh/devtoolset-%{dts_version}/enable %endif -echo +echo # Now do the full browser %if 0%{freeworld} -../depot_tools/ninja -C %{target} -vvv media +%build_target %{builddir} media %else %if %{build_headless} -# Do headless first. -../depot_tools/ninja -C %{headlesstarget} -vvv headless_shell +# Do headless first. +%build_target %{headlessbuilddir} headless_shell %endif -../depot_tools/ninja -C %{target} -vvv chrome chrome_sandbox chromedriver clear_key_cdm policy_templates +%build_target %{builddir} chrome +%build_target %{builddir} chrome_sandbox +%build_target %{builddir} chromedriver +%build_target %{builddir} clear_key_cdm +%build_target %{builddir} policy_templates # remote client -pushd remoting - -# ../../depot_tools/ninja -C ../%{target} -vvv remoting_me2me_host remoting_start_host remoting_it2me_native_messaging_host remoting_me2me_native_messaging_host remoting_native_messaging_manifests remoting_resources -../../depot_tools/ninja -C ../%{remotingtarget} -vvv remoting_all +# ../../depot_tools/ninja -C ../%{builddir} -vvv remoting_me2me_host remoting_start_host remoting_it2me_native_messaging_host remoting_me2me_native_messaging_host remoting_native_messaging_manifests remoting_resources +%build_target %{remotingbuilddir} remoting_all %if 0%{?build_remoting_app} %if 0%{?nacl} -GOOGLE_CLIENT_ID_REMOTING_IDENTITY_API=%{chromoting_client_id} ../../depot_tools/ninja -vv -C ../out/Release/ remoting_webapp +export GOOGLE_CLIENT_ID_REMOTING_IDENTITY_API=%{chromoting_client_id} +%build_target %{builddir} remoting_webapp %endif %endif -popd %endif # Nuke nacl/pnacl bits at the end of the build -rm -rf out/Release/gen/sdk +rm -rf %{builddir}/gen/sdk rm -rf native_client/toolchain rm -rf third_party/llvm-build/* @@ -1470,7 +1479,7 @@ rm -rf %{buildroot} %if 0%{freeworld} mkdir -p %{buildroot}%{chromium_path} -pushd %{target} +pushd %{builddir} cp -a libffmpeg.so* %{buildroot}%{chromium_path} cp -a libmedia.so* %{buildroot}%{chromium_path} mv %{buildroot}%{chromium_path}/libffmpeg.so{,.%{lsuffix}} @@ -1499,7 +1508,7 @@ sed -i "s|@@EXTRA_FLAGS@@|$EXTRA_FLAGS|g" %{buildroot}%{chromium_path}/%{chromiu ln -s %{chromium_path}/%{chromium_browser_channel}.sh %{buildroot}%{_bindir}/%{chromium_browser_channel} mkdir -p %{buildroot}%{_mandir}/man1/ -pushd %{target} +pushd %{builddir} cp -a *.pak locales resources icudtl.dat %{buildroot}%{chromium_path} %if 0%{?nacl} cp -a nacl_helper* *.nexe pnacl tls_edit %{buildroot}%{chromium_path} @@ -1550,7 +1559,7 @@ popd %endif popd -pushd %{remotingtarget} +pushd %{remotingbuilddir} # See remoting/host/installer/linux/Makefile for logic cp -a remoting_native_messaging_host %{buildroot}%{crd_path}/native-messaging-host @@ -1593,7 +1602,7 @@ cp -a remoting_client_plugin_newlib.* %{buildroot}%{chromium_path} %endif %if %{build_headless} -pushd %{headlesstarget} +pushd %{headlessbuilddir} cp -a headless_lib.pak headless_shell %{buildroot}%{chromium_path} popd %endif From f68b7de9c099cd6540f657e6df3d7bccf7ff914b Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Sun, 15 Sep 2019 08:08:54 +0200 Subject: [PATCH 0476/1449] Fix the aarch64 build --- chromium-77.0.3865.75-missing-limits.patch | 28 ++++++++++++++++++++++ chromium.spec | 3 +++ 2 files changed, 31 insertions(+) create mode 100644 chromium-77.0.3865.75-missing-limits.patch diff --git a/chromium-77.0.3865.75-missing-limits.patch b/chromium-77.0.3865.75-missing-limits.patch new file mode 100644 index 0000000..3ac1770 --- /dev/null +++ b/chromium-77.0.3865.75-missing-limits.patch @@ -0,0 +1,28 @@ +From 5baf7df7f4c5971dab552897eeef94b194650ce5 Mon Sep 17 00:00:00 2001 +From: Dave Tapuska +Date: Mon, 12 Aug 2019 22:30:13 +0000 +Subject: [PATCH] Fix build failure due to missing include for std::numeric_limits usage. + +Some configurations fail to build, limits should have been included. + +BUG=992832 + +Change-Id: I894ba0543bfcef101c93259e39a31d12ae6d035c +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1747981 +Commit-Queue: Dave Tapuska +Reviewed-by: Mostyn Bramley-Moore +Cr-Commit-Position: refs/heads/master@{#686214} +--- + +diff --git a/third_party/blink/renderer/platform/exported/web_time_range.cc b/third_party/blink/renderer/platform/exported/web_time_range.cc +index 384566a..68d83e1 100644 +--- a/third_party/blink/renderer/platform/exported/web_time_range.cc ++++ b/third_party/blink/renderer/platform/exported/web_time_range.cc +@@ -31,6 +31,7 @@ + #include "third_party/blink/public/platform/web_time_range.h" + + #include ++#include + + namespace blink { + diff --git a/chromium.spec b/chromium.spec index 760805e..799b55b 100644 --- a/chromium.spec +++ b/chromium.spec @@ -288,6 +288,8 @@ Patch67: chromium-77.0.3865.75-base-gcc-no-alignas.patch Patch68: chromium-77.0.3865.75-harfbuzz-subset.patch # https://chromium.googlesource.com/chromium/src.git/+/f08cb0022527081c078e8b96062e6c9b4fbda151 Patch69: chromium-77.0.3865.75-gcc-abstract-class.patch +# https://chromium.googlesource.com/chromium/src/+/5baf7df7f4c5971dab552897eeef94b194650ce5 +Patch70: chromium-77.0.3865.75-missing-limits.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -853,6 +855,7 @@ udev. %patch67 -p1 -b .base-gcc-no-alignas %patch68 -p1 -b .harfbuzz-subset %patch69 -p1 -b .gcc-abstract-class +%patch70 -p1 -b .missing-limits # EPEL specific patches %if 0%{?rhel} == 7 From be307c8f4d884cb12958bb7bc62eb591fcaea35b Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Sun, 15 Sep 2019 08:11:22 +0200 Subject: [PATCH 0477/1449] 22x22 icon was removed and use the symbolic one as well --- chromium.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/chromium.spec b/chromium.spec index 799b55b..d2436e2 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1634,8 +1634,8 @@ mkdir -p %{buildroot}%{_datadir}/icons/hicolor/48x48/apps cp -a chrome/app/theme/chromium/product_logo_48.png %{buildroot}%{_datadir}/icons/hicolor/48x48/apps/%{chromium_browser_channel}.png mkdir -p %{buildroot}%{_datadir}/icons/hicolor/24x24/apps cp -a chrome/app/theme/chromium/product_logo_24.png %{buildroot}%{_datadir}/icons/hicolor/24x24/apps/%{chromium_browser_channel}.png -mkdir -p %{buildroot}%{_datadir}/icons/hicolor/22x22/apps -cp -a chrome/app/theme/chromium/product_logo_22.png %{buildroot}%{_datadir}/icons/hicolor/22x22/apps/%{chromium_browser_channel}.png +mkdir -p %{buildroot}%{_datadir}/icons/hicolor/symbolic/apps +cp -a chrome/app/theme/chromium/product_logo_22_mono.png %{buildroot}%{_datadir}/icons/hicolor/symbolic/apps/%{chromium_browser_channel}.png # Install the master_preferences file mkdir -p %{buildroot}%{_sysconfdir}/%{name} From 2873f12bb33c082c677cf6764c958a16c21b4d1e Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Thu, 12 Sep 2019 17:28:51 +0200 Subject: [PATCH 0478/1449] Update to 77.0.3865.75 Rebase and clean the patches. --- ...um-61.0.3163.79-gcc-no-opt-safe-math.patch | 13 - chromium-68.0.3440.106-boolfix.patch | 36 --- ...mium-72.0.3626.121-fedora-user-agent.patch | 12 - chromium-72.0.3626.121-gcc5-r3.patch | 36 --- chromium-75.0.3770.100-fix-v8-gcc.patch | 14 -- chromium-75.0.3770.80-no-zlib-mangle.patch | 14 -- ...-75.0.3770.80-pure-virtual-crash-fix.patch | 24 -- ...09.100-gcc-accountinfo-move-noexcept.patch | 53 ----- chromium-76.0.3809.100-gcc-cc-no-except.patch | 105 -------- ...0.3809.100-gcc-feature-policy-parser.patch | 76 ------ ...0.3809.100-gcc-hasfraction-constexpr.patch | 32 --- ...0.3809.100-gcc-history-move-noexcept.patch | 42 ---- ....0.3809.100-gcc-initialization-order.patch | 33 --- ...100-gcc-move-explicit-initialization.patch | 97 -------- chromium-76.0.3809.100-gcc-net-fetcher.patch | 63 ----- ...0.3809.100-gcc-themeservice-includes.patch | 36 --- chromium-76.0.3809.100-gcc-vulkan.patch | 115 --------- ...ium-76.0.3809.100-quiche-compile-fix.patch | 225 ------------------ ...m-76.0.3809.100-throttling-dead-beef.patch | 30 --- ...ium-76.0.3809.100-weak-ptr-no-except.patch | 66 ----- ....3809.132-gcc-ambigous-instantiation.patch | 21 -- chromium-77.0.3865.75-boolfix.patch | 24 ++ ...7.0.3865.75-certificate-transparency.patch | 132 +++++----- chromium-77.0.3865.75-fedora-user-agent.patch | 12 + chromium-77.0.3865.75-fix-v8-gcc.patch | 14 ++ ...um-77.0.3865.75-gcc-no-opt-safe-math.patch | 13 + chromium-77.0.3865.75-gcc5-r3.patch | 36 +++ chromium-77.0.3865.75-no-zlib-mangle.patch | 22 ++ chromium.spec | 68 +----- sources | 2 +- 30 files changed, 199 insertions(+), 1267 deletions(-) delete mode 100644 chromium-61.0.3163.79-gcc-no-opt-safe-math.patch delete mode 100644 chromium-68.0.3440.106-boolfix.patch delete mode 100644 chromium-72.0.3626.121-fedora-user-agent.patch delete mode 100644 chromium-72.0.3626.121-gcc5-r3.patch delete mode 100644 chromium-75.0.3770.100-fix-v8-gcc.patch delete mode 100644 chromium-75.0.3770.80-no-zlib-mangle.patch delete mode 100644 chromium-75.0.3770.80-pure-virtual-crash-fix.patch delete mode 100644 chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch delete mode 100644 chromium-76.0.3809.100-gcc-cc-no-except.patch delete mode 100644 chromium-76.0.3809.100-gcc-feature-policy-parser.patch delete mode 100644 chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch delete mode 100644 chromium-76.0.3809.100-gcc-history-move-noexcept.patch delete mode 100644 chromium-76.0.3809.100-gcc-initialization-order.patch delete mode 100644 chromium-76.0.3809.100-gcc-move-explicit-initialization.patch delete mode 100644 chromium-76.0.3809.100-gcc-net-fetcher.patch delete mode 100644 chromium-76.0.3809.100-gcc-themeservice-includes.patch delete mode 100644 chromium-76.0.3809.100-gcc-vulkan.patch delete mode 100644 chromium-76.0.3809.100-quiche-compile-fix.patch delete mode 100644 chromium-76.0.3809.100-throttling-dead-beef.patch delete mode 100644 chromium-76.0.3809.100-weak-ptr-no-except.patch delete mode 100644 chromium-76.0.3809.132-gcc-ambigous-instantiation.patch create mode 100644 chromium-77.0.3865.75-boolfix.patch rename chromium-76.0.3809.132-certificate-transparency.patch => chromium-77.0.3865.75-certificate-transparency.patch (73%) create mode 100644 chromium-77.0.3865.75-fedora-user-agent.patch create mode 100644 chromium-77.0.3865.75-fix-v8-gcc.patch create mode 100644 chromium-77.0.3865.75-gcc-no-opt-safe-math.patch create mode 100644 chromium-77.0.3865.75-gcc5-r3.patch create mode 100644 chromium-77.0.3865.75-no-zlib-mangle.patch diff --git a/chromium-61.0.3163.79-gcc-no-opt-safe-math.patch b/chromium-61.0.3163.79-gcc-no-opt-safe-math.patch deleted file mode 100644 index 183b5ab..0000000 --- a/chromium-61.0.3163.79-gcc-no-opt-safe-math.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -up chromium-61.0.3163.79/base/numerics/safe_math_shared_impl.h.fixgcc3 chromium-61.0.3163.79/base/numerics/safe_math_shared_impl.h ---- chromium-61.0.3163.79/base/numerics/safe_math_shared_impl.h.fixgcc3 2017-09-06 16:30:15.898454585 -0400 -+++ chromium-61.0.3163.79/base/numerics/safe_math_shared_impl.h 2017-09-06 16:30:27.570229539 -0400 -@@ -21,8 +21,7 @@ - #if !defined(__native_client__) && \ - ((defined(__clang__) && \ - ((__clang_major__ > 3) || \ -- (__clang_major__ == 3 && __clang_minor__ >= 4))) || \ -- (defined(__GNUC__) && __GNUC__ >= 5)) -+ (__clang_major__ == 3 && __clang_minor__ >= 4)))) - #include "base/numerics/safe_math_clang_gcc_impl.h" - #define BASE_HAS_OPTIMIZED_SAFE_MATH (1) - #else diff --git a/chromium-68.0.3440.106-boolfix.patch b/chromium-68.0.3440.106-boolfix.patch deleted file mode 100644 index ed22aa9..0000000 --- a/chromium-68.0.3440.106-boolfix.patch +++ /dev/null @@ -1,36 +0,0 @@ -diff -up chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_ptr_info.h ---- chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix 2018-08-09 03:21:23.066802340 -0400 -+++ chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_ptr_info.h 2018-08-09 03:25:10.638595925 -0400 -@@ -45,7 +45,7 @@ class AssociatedInterfacePtrInfo { - - bool is_valid() const { return handle_.is_valid(); } - -- explicit operator bool() const { return handle_.is_valid(); } -+ explicit operator bool() const { return (bool) handle_.is_valid(); } - - ScopedInterfaceEndpointHandle PassHandle() { - return std::move(handle_); -diff -up chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_request.h.boolfix chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_request.h ---- chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_request.h.boolfix 2018-08-09 03:21:23.067802318 -0400 -+++ chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_request.h 2018-08-09 03:24:44.935229067 -0400 -@@ -50,7 +50,7 @@ class AssociatedInterfaceRequest { - // handle. - 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(); } - - ScopedInterfaceEndpointHandle PassHandle() { return std::move(handle_); } - -diff -up chromium-68.0.3440.106/mojo/public/cpp/bindings/interface_request.h.boolfix chromium-68.0.3440.106/mojo/public/cpp/bindings/interface_request.h ---- chromium-68.0.3440.106/mojo/public/cpp/bindings/interface_request.h.boolfix 2018-08-08 15:11:05.000000000 -0400 -+++ chromium-68.0.3440.106/mojo/public/cpp/bindings/interface_request.h 2018-08-09 03:21:23.067802318 -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-72.0.3626.121-fedora-user-agent.patch b/chromium-72.0.3626.121-fedora-user-agent.patch deleted file mode 100644 index 5cef6f0..0000000 --- a/chromium-72.0.3626.121-fedora-user-agent.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-72.0.3626.121/content/common/user_agent.cc.fedora-user-agent chromium-72.0.3626.121/content/common/user_agent.cc ---- chromium-72.0.3626.121/content/common/user_agent.cc.fedora-user-agent 2019-03-10 14:21:02.877454982 -0400 -+++ chromium-72.0.3626.121/content/common/user_agent.cc 2019-03-10 14:22:05.728812272 -0400 -@@ -36,7 +36,7 @@ std::string GetUserAgentPlatform() { - #elif defined(OS_MACOSX) - "Macintosh; "; - #elif defined(USE_X11) || defined(USE_OZONE) -- "X11; "; // strange, but that's what Firefox uses -+ "X11; Fedora; "; // strange, but that's what Firefox uses - #elif defined(OS_ANDROID) - "Linux; "; - #elif defined(OS_POSIX) || defined(OS_FUCHSIA) diff --git a/chromium-72.0.3626.121-gcc5-r3.patch b/chromium-72.0.3626.121-gcc5-r3.patch deleted file mode 100644 index f4cf40b..0000000 --- a/chromium-72.0.3626.121-gcc5-r3.patch +++ /dev/null @@ -1,36 +0,0 @@ -diff -up chromium-72.0.3626.121/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 chromium-72.0.3626.121/gpu/ipc/common/mailbox_struct_traits.h ---- chromium-72.0.3626.121/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 2019-03-01 23:10:21.000000000 -0500 -+++ chromium-72.0.3626.121/gpu/ipc/common/mailbox_struct_traits.h 2019-03-10 14:07:48.300244125 -0400 -@@ -15,7 +15,7 @@ namespace mojo { - template <> - struct StructTraits { - static base::span name(const gpu::Mailbox& mailbox) { -- return mailbox.name; -+ return base::make_span(mailbox.name); - } - static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out); - }; -diff -up chromium-72.0.3626.121/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 chromium-72.0.3626.121/services/viz/public/cpp/compositing/quads_struct_traits.h ---- chromium-72.0.3626.121/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 2019-03-01 23:10:31.000000000 -0500 -+++ chromium-72.0.3626.121/services/viz/public/cpp/compositing/quads_struct_traits.h 2019-03-10 14:07:48.303244046 -0400 -@@ -340,7 +340,7 @@ struct StructTraits vertex_opacity(const viz::DrawQuad& input) { - const viz::TextureDrawQuad* quad = - viz::TextureDrawQuad::MaterialCast(&input); -- return quad->vertex_opacity; -+ return base::make_span(quad->vertex_opacity); - } - - static bool y_flipped(const viz::DrawQuad& input) { -diff -up chromium-72.0.3626.121/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 chromium-72.0.3626.121/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc ---- chromium-72.0.3626.121/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 2019-03-10 14:07:48.307243941 -0400 -+++ chromium-72.0.3626.121/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2019-03-10 14:09:16.565920044 -0400 -@@ -10,7 +10,7 @@ - - #include "modules/audio_processing/aec3/aec_state.h" - --#include -+#include - #include - #include - #include diff --git a/chromium-75.0.3770.100-fix-v8-gcc.patch b/chromium-75.0.3770.100-fix-v8-gcc.patch deleted file mode 100644 index 4a1a4b0..0000000 --- a/chromium-75.0.3770.100-fix-v8-gcc.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -up chromium-75.0.3770.100/v8/src/objects/js-objects.cc.fix-v8-gcc chromium-75.0.3770.100/v8/src/objects/js-objects.cc ---- chromium-75.0.3770.100/v8/src/objects/js-objects.cc.fix-v8-gcc 2019-06-25 10:55:08.132254304 -0400 -+++ chromium-75.0.3770.100/v8/src/objects/js-objects.cc 2019-06-25 10:55:23.147933648 -0400 -@@ -3792,6 +3792,10 @@ void JSObject::ApplyAttributesToDictiona - } - } - -+template void JSObject::ApplyAttributesToDictionary( -+ Isolate* isolate, ReadOnlyRoots roots, Handle dictionary, -+ const PropertyAttributes attributes); -+ - template - Maybe JSObject::PreventExtensionsWithTransition( - Handle object, ShouldThrow should_throw) { diff --git a/chromium-75.0.3770.80-no-zlib-mangle.patch b/chromium-75.0.3770.80-no-zlib-mangle.patch deleted file mode 100644 index 998be67..0000000 --- a/chromium-75.0.3770.80-no-zlib-mangle.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -up chromium-75.0.3770.80/third_party/zlib/zconf.h.nozmangle chromium-75.0.3770.80/third_party/zlib/zconf.h ---- chromium-75.0.3770.80/third_party/zlib/zconf.h.nozmangle 2019-06-05 11:12:30.420412467 -0400 -+++ chromium-75.0.3770.80/third_party/zlib/zconf.h 2019-06-05 11:17:43.512683058 -0400 -@@ -8,10 +8,6 @@ - #ifndef ZCONF_H - #define ZCONF_H - --/* This include does prefixing as below, but with an updated set of names. Also -- * sets up export macros in component builds. */ --#include "chromeconf.h" -- - /* - * If you *really* need a unique prefix for all types and library functions, - * compile with -DZ_PREFIX. The "standard" zlib should be compiled without it. diff --git a/chromium-75.0.3770.80-pure-virtual-crash-fix.patch b/chromium-75.0.3770.80-pure-virtual-crash-fix.patch deleted file mode 100644 index 06c909f..0000000 --- a/chromium-75.0.3770.80-pure-virtual-crash-fix.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff -up chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.cc.pure-virtual-fix chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.cc ---- chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.cc.pure-virtual-fix 2019-06-07 15:03:43.302202979 -0400 -+++ chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.cc 2019-06-07 15:04:25.140393048 -0400 -@@ -116,4 +116,9 @@ void RenderProcessUserData::RenderProces - base::Unretained(process_node_.get()), info.exit_code)); - } - -+void RenderProcessUserData::RenderProcessHostDestroyed( -+ content::RenderProcessHost* host) { -+ host->RemoveUserData(kRenderProcessUserDataKey); -+} -+ - } // namespace performance_manager -diff -up chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.h.pure-virtual-fix chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.h ---- chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.h.pure-virtual-fix 2019-06-07 15:04:43.530039597 -0400 -+++ chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.h 2019-06-07 15:05:13.770458374 -0400 -@@ -47,6 +47,7 @@ class RenderProcessUserData : public bas - 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. diff --git a/chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch b/chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch deleted file mode 100644 index 5f45a8f..0000000 --- a/chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch +++ /dev/null @@ -1,53 +0,0 @@ -From 719df31ffd4d52b473509cf77acd9c02ec112acb Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Tue, 04 Jun 2019 18:38:12 +0200 -Subject: [PATCH] GCC: fix noexcept from move constructor and assign operators of AccountInfo - -AccountInfo declares them as noexcept and uses default implementation, -so all its members (including AccountId) should be noexcept. But AccountId -is not noexcept. To fix it we just need to make CoreAccountId move -operator/assign operator noexcept. - -Bug: 819294 -Change-Id: Ice38654ab7cf3b9eaa6f54aa36e1fec329264f98 ---- - -diff --git a/google_apis/gaia/core_account_id.cc b/google_apis/gaia/core_account_id.cc -index d808082..12eefe3 100644 ---- a/google_apis/gaia/core_account_id.cc -+++ b/google_apis/gaia/core_account_id.cc -@@ -6,8 +6,16 @@ - - CoreAccountId::CoreAccountId() = default; - -+CoreAccountId::CoreAccountId(const CoreAccountId&) = default; -+ -+CoreAccountId::CoreAccountId(CoreAccountId&&) noexcept = default; -+ - CoreAccountId::~CoreAccountId() = default; - -+CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; -+ -+CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) noexcept = default; -+ - CoreAccountId::CoreAccountId(const char* id) : id(id) {} - - CoreAccountId::CoreAccountId(std::string&& id) : id(std::move(id)) {} -diff --git a/google_apis/gaia/core_account_id.h b/google_apis/gaia/core_account_id.h -index 5ea602a..c2d1911 100644 ---- a/google_apis/gaia/core_account_id.h -+++ b/google_apis/gaia/core_account_id.h -@@ -14,8 +14,13 @@ - // for design and tracking). - struct CoreAccountId { - CoreAccountId(); -+ CoreAccountId(const CoreAccountId&); -+ CoreAccountId(CoreAccountId&&) noexcept; - ~CoreAccountId(); - -+ CoreAccountId& operator=(const CoreAccountId&); -+ CoreAccountId& operator=(CoreAccountId&&) noexcept; -+ - // Those implicit constructor and conversion operator allow to - // progressively migrate the code to use this struct. Removing - // them is tracked by https://crbug.com/959161 diff --git a/chromium-76.0.3809.100-gcc-cc-no-except.patch b/chromium-76.0.3809.100-gcc-cc-no-except.patch deleted file mode 100644 index e4d754a..0000000 --- a/chromium-76.0.3809.100-gcc-cc-no-except.patch +++ /dev/null @@ -1,105 +0,0 @@ -From 84c91abab33966f928497c24db4a39f436d2dca8 Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Fri, 07 Jun 2019 09:50:11 +0000 -Subject: [PATCH] Make SharedMemoryMapping move constructor noexcept - -As LayerTreeHostImpl::UIResourceData move constructor is declared -noexcept with default implementation, the move constructor of its -members should also be noexcept. GCC will fail to build otherwise -for mismatching noexcept declaration. - -We also set the move assignment operator. - -Bug: 819294 -Change-Id: Icd663da83b882e15f7d16780c9241972e09bc492 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645297 -Commit-Queue: José Dapena Paz -Reviewed-by: Daniel Cheng -Cr-Commit-Position: refs/heads/master@{#667064} ---- - -diff --git a/base/memory/shared_memory_mapping.cc b/base/memory/shared_memory_mapping.cc -index 2be2570..8426fa8 100644 ---- a/base/memory/shared_memory_mapping.cc -+++ b/base/memory/shared_memory_mapping.cc -@@ -33,7 +33,7 @@ - - SharedMemoryMapping::SharedMemoryMapping() = default; - --SharedMemoryMapping::SharedMemoryMapping(SharedMemoryMapping&& mapping) -+SharedMemoryMapping::SharedMemoryMapping(SharedMemoryMapping&& mapping) noexcept - : memory_(mapping.memory_), - size_(mapping.size_), - mapped_size_(mapping.mapped_size_), -@@ -42,7 +42,7 @@ - } - - SharedMemoryMapping& SharedMemoryMapping::operator=( -- SharedMemoryMapping&& mapping) { -+ SharedMemoryMapping&& mapping) noexcept { - Unmap(); - memory_ = mapping.memory_; - size_ = mapping.size_; -@@ -90,9 +90,9 @@ - - ReadOnlySharedMemoryMapping::ReadOnlySharedMemoryMapping() = default; - ReadOnlySharedMemoryMapping::ReadOnlySharedMemoryMapping( -- ReadOnlySharedMemoryMapping&&) = default; -+ ReadOnlySharedMemoryMapping&&) noexcept = default; - ReadOnlySharedMemoryMapping& ReadOnlySharedMemoryMapping::operator=( -- ReadOnlySharedMemoryMapping&&) = default; -+ ReadOnlySharedMemoryMapping&&) noexcept = default; - ReadOnlySharedMemoryMapping::ReadOnlySharedMemoryMapping( - void* address, - size_t size, -@@ -102,9 +102,9 @@ - - WritableSharedMemoryMapping::WritableSharedMemoryMapping() = default; - WritableSharedMemoryMapping::WritableSharedMemoryMapping( -- WritableSharedMemoryMapping&&) = default; -+ WritableSharedMemoryMapping&&) noexcept = default; - WritableSharedMemoryMapping& WritableSharedMemoryMapping::operator=( -- WritableSharedMemoryMapping&&) = default; -+ WritableSharedMemoryMapping&&) noexcept = default; - WritableSharedMemoryMapping::WritableSharedMemoryMapping( - void* address, - size_t size, -diff --git a/base/memory/shared_memory_mapping.h b/base/memory/shared_memory_mapping.h -index d9569af..2b8858e 100644 ---- a/base/memory/shared_memory_mapping.h -+++ b/base/memory/shared_memory_mapping.h -@@ -32,8 +32,8 @@ - SharedMemoryMapping(); - - // Move operations are allowed. -- SharedMemoryMapping(SharedMemoryMapping&& mapping); -- SharedMemoryMapping& operator=(SharedMemoryMapping&& mapping); -+ SharedMemoryMapping(SharedMemoryMapping&& mapping) noexcept; -+ SharedMemoryMapping& operator=(SharedMemoryMapping&& mapping) noexcept; - - // Unmaps the region if the mapping is valid. - virtual ~SharedMemoryMapping(); -@@ -93,8 +93,9 @@ - ReadOnlySharedMemoryMapping(); - - // Move operations are allowed. -- ReadOnlySharedMemoryMapping(ReadOnlySharedMemoryMapping&&); -- ReadOnlySharedMemoryMapping& operator=(ReadOnlySharedMemoryMapping&&); -+ ReadOnlySharedMemoryMapping(ReadOnlySharedMemoryMapping&&) noexcept; -+ ReadOnlySharedMemoryMapping& operator=( -+ ReadOnlySharedMemoryMapping&&) noexcept; - - // Returns the base address of the mapping. This is read-only memory. This is - // page-aligned. This is nullptr for invalid instances. -@@ -171,8 +172,9 @@ - WritableSharedMemoryMapping(); - - // Move operations are allowed. -- WritableSharedMemoryMapping(WritableSharedMemoryMapping&&); -- WritableSharedMemoryMapping& operator=(WritableSharedMemoryMapping&&); -+ WritableSharedMemoryMapping(WritableSharedMemoryMapping&&) noexcept; -+ WritableSharedMemoryMapping& operator=( -+ WritableSharedMemoryMapping&&) noexcept; - - // Returns the base address of the mapping. This is writable memory. This is - // page-aligned. This is nullptr for invalid instances. diff --git a/chromium-76.0.3809.100-gcc-feature-policy-parser.patch b/chromium-76.0.3809.100-gcc-feature-policy-parser.patch deleted file mode 100644 index 0dbffd5..0000000 --- a/chromium-76.0.3809.100-gcc-feature-policy-parser.patch +++ /dev/null @@ -1,76 +0,0 @@ -From 0aca7b8dea0f52ba7bd58dfce4ac236ee60670a8 Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Tue, 04 Jun 2019 19:44:58 +0200 -Subject: [PATCH] GCC: FeaturePolicyParser ParseValueForFuzzer is not in anonymous namespace - -Compilation fails because we are declaring ParseValueForFuzzer as friend method, -but we are declaring it is in anonymous namespace. Moving to global namespace -still fails (in this case in Clang). - -So final solution is making it a public static method of FeaturePolicyParser. - -Bug: 819294 -Change-Id: Iea307cb6faef675b748d6eb5da2175dcbb17fdc7 ---- - -diff --git a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc -index 3b7f4a9..eaee409 100644 ---- a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc -+++ b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc -@@ -317,6 +317,13 @@ - return value; - } - -+void FeaturePolicyParser::ParseValueForFuzzer( -+ blink::mojom::PolicyValueType feature_type, -+ const WTF::String& value_string) { -+ bool ok; -+ ParseValueForType(feature_type, value_string, &ok); -+} -+ - bool IsFeatureDeclared(mojom::FeaturePolicyFeature feature, - const ParsedFeaturePolicy& policy) { - return std::any_of(policy.begin(), policy.end(), -diff --git a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h -index fd25d90..36af405 100644 ---- a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h -+++ b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h -@@ -16,9 +16,6 @@ - #include "third_party/blink/renderer/platform/wtf/text/wtf_string.h" - #include "third_party/blink/renderer/platform/wtf/vector.h" - --// Forward declare for friendship. --void ParseValueForFuzzer(blink::mojom::PolicyValueType, const WTF::String&); -- - namespace blink { - - class Document; -@@ -79,8 +76,9 @@ - const FeatureNameMap& feature_names, - ExecutionContext* execution_context = nullptr); - -+ static void ParseValueForFuzzer(mojom::PolicyValueType, const String&); -+ - private: -- friend void ::ParseValueForFuzzer(mojom::PolicyValueType, const String&); - static PolicyValue GetFallbackValueForFeature( - mojom::FeaturePolicyFeature feature); - static PolicyValue ParseValueForType(mojom::PolicyValueType feature_type, -diff --git a/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc b/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc -index 7f8e6aa..53350e43 100644 ---- a/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc -+++ b/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc -@@ -23,9 +23,9 @@ - extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) { - static blink::BlinkFuzzerTestSupport test_support = - blink::BlinkFuzzerTestSupport(); -- ParseValueForFuzzer(blink::mojom::PolicyValueType::kBool, -- WTF::String(data, size)); -- ParseValueForFuzzer(blink::mojom::PolicyValueType::kDecDouble, -- WTF::String(data, size)); -+ blink::FeaturePolicyParser::ParseValueForFuzzer( -+ blink::mojom::PolicyValueType::kBool, WTF::String(data, size)); -+ blink::FeaturePolicyParser::ParseValueForFuzzer( -+ blink::mojom::PolicyValueType::kDecDouble, WTF::String(data, size)); - return 0; - } diff --git a/chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch b/chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch deleted file mode 100644 index 26bba05..0000000 --- a/chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch +++ /dev/null @@ -1,32 +0,0 @@ -From cf6d6b40d711fce93a24a2cf517fa3becdbae8bb Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Wed, 05 Jun 2019 17:18:40 +0000 -Subject: [PATCH] Make blink::LayoutUnit::HasFraction constexpr - -Other HasFraction methods as in PhysicalUnit are declared already -constexpr and using it. It breaks GCC build. - -Bug: 819294. -Change-Id: I0c4bd9bd206d45cf31f7fa815ce8533718a425cb -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645222 -Reviewed-by: vmpstr -Reviewed-by: Xianzhu Wang -Commit-Queue: José Dapena Paz -Cr-Commit-Position: refs/heads/master@{#666336} ---- - -diff --git a/third_party/blink/renderer/platform/geometry/layout_unit.h b/third_party/blink/renderer/platform/geometry/layout_unit.h -index f073986..b6dbc76 100644 ---- a/third_party/blink/renderer/platform/geometry/layout_unit.h -+++ b/third_party/blink/renderer/platform/geometry/layout_unit.h -@@ -202,7 +202,9 @@ - return value_ > 0 ? LayoutUnit() : *this; - } - -- bool HasFraction() const { return RawValue() % kFixedPointDenominator; } -+ constexpr bool HasFraction() const { -+ return RawValue() % kFixedPointDenominator; -+ } - - LayoutUnit Fraction() const { - // Compute fraction using the mod operator to preserve the sign of the value diff --git a/chromium-76.0.3809.100-gcc-history-move-noexcept.patch b/chromium-76.0.3809.100-gcc-history-move-noexcept.patch deleted file mode 100644 index 2876de4..0000000 --- a/chromium-76.0.3809.100-gcc-history-move-noexcept.patch +++ /dev/null @@ -1,42 +0,0 @@ -From abe74a7f0c53a43a9706a42d71b7ff4a5da53380 Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Tue, 11 Jun 2019 10:27:19 +0200 -Subject: [PATCH] GCC: add noexcept move assignment in history::URLRow - -In GCC, build is failing because history::QueryURLResult declares its move -assignment operator as noexcept using default implementation. That requires -its members to provide a move assignment operator that is noexcept too. - -But URLRow was missing noexcept declaration in move assignment operator (even -though it was providing noexcept to its move constructor). - -Bug: 819294 -Change-Id: I726e3cf7a4a50c9206a5d0fba8a561d363483d4f ---- - -diff --git a/components/history/core/browser/url_row.cc b/components/history/core/browser/url_row.cc -index 44c22fd..aec0101 100644 ---- a/components/history/core/browser/url_row.cc -+++ b/components/history/core/browser/url_row.cc -@@ -26,7 +26,7 @@ - } - - URLRow& URLRow::operator=(const URLRow& other) = default; --URLRow& URLRow::operator=(URLRow&& other) = default; -+URLRow& URLRow::operator=(URLRow&& other) noexcept = default; - - void URLRow::Swap(URLRow* other) { - std::swap(id_, other->id_); -diff --git a/components/history/core/browser/url_row.h b/components/history/core/browser/url_row.h -index 8f6f9cf..31a1ef8 100644 ---- a/components/history/core/browser/url_row.h -+++ b/components/history/core/browser/url_row.h -@@ -35,7 +35,7 @@ - - virtual ~URLRow(); - URLRow& operator=(const URLRow& other); -- URLRow& operator=(URLRow&& other); -+ URLRow& operator=(URLRow&& other) noexcept; - - URLID id() const { return id_; } - diff --git a/chromium-76.0.3809.100-gcc-initialization-order.patch b/chromium-76.0.3809.100-gcc-initialization-order.patch deleted file mode 100644 index 3bf394f..0000000 --- a/chromium-76.0.3809.100-gcc-initialization-order.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 7dc76c8d9f4cfbce7cf11424120aa6f6094916dc Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Wed, 05 Jun 2019 21:09:01 +0000 -Subject: [PATCH] GCC: XSetWindowAttributes struct initialization should keep order of declaration - -XSetWindowAttributes initialization of attributes in GLSurfaceGLX is not in the -same order of the declaration. GCC fails because of that. - -Bug: 819294 -Change-Id: I8a97da980d5961a35a47ae4d0d8d558b85291f1f -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1646253 -Reviewed-by: Zhenyao Mo -Commit-Queue: José Dapena Paz -Cr-Commit-Position: refs/heads/master@{#666436} ---- - -diff --git a/ui/gl/gl_surface_glx.cc b/ui/gl/gl_surface_glx.cc -index f649dd4..0aa6892 100644 ---- a/ui/gl/gl_surface_glx.cc -+++ b/ui/gl/gl_surface_glx.cc -@@ -583,10 +583,10 @@ - - XSetWindowAttributes swa = { - .background_pixmap = 0, -- .bit_gravity = NorthWestGravity, -- .colormap = g_colormap, - .background_pixel = 0, // ARGB(0,0,0,0) for compositing WM - .border_pixel = 0, -+ .bit_gravity = NorthWestGravity, -+ .colormap = g_colormap, - }; - auto value_mask = CWBackPixmap | CWBitGravity | CWColormap | CWBorderPixel; - if (ui::IsCompositingManagerPresent() && diff --git a/chromium-76.0.3809.100-gcc-move-explicit-initialization.patch b/chromium-76.0.3809.100-gcc-move-explicit-initialization.patch deleted file mode 100644 index 1d4b90f..0000000 --- a/chromium-76.0.3809.100-gcc-move-explicit-initialization.patch +++ /dev/null @@ -1,97 +0,0 @@ -From dcb55fb8f18abe5f43d260aa67b14b2dc996f992 Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Tue, 11 Jun 2019 08:00:13 +0000 -Subject: [PATCH] GCC: move explicit specialization out of RunInfo - -Explicit specialization in non-namespace scope is not allowed in C++, and GCC breaks -build because of that. Move the template specializations out of RunInfo declaration -in shape_result_inline_headeres.h to fix the GCC build issue. - -Bug: 819294 -Change-Id: Id083852bcf8e9efbdc911fdad28fd8767d2905d0 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1651728 -Reviewed-by: Kinuko Yasuda -Commit-Queue: José Dapena Paz -Cr-Commit-Position: refs/heads/master@{#667901} ---- - -diff --git a/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h b/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h -index 76ee6091..c14d3a0 100644 ---- a/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h -+++ b/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h -@@ -251,37 +251,6 @@ - template - struct iterator final {}; - -- // For non-zero glyph offset array -- template <> -- struct iterator final { -- // The constructor for ShapeResult -- explicit iterator(const GlyphOffsetArray& array) -- : pointer(array.storage_.get()) { -- DCHECK(pointer); -- } -- -- // The constructor for ShapeResultView -- explicit iterator(const GlyphDataRange& range) : pointer(range.offsets) { -- DCHECK(pointer); -- } -- -- GlyphOffset operator*() const { return *pointer; } -- void operator++() { ++pointer; } -- -- const GlyphOffset* pointer; -- }; -- -- // For zero glyph offset array -- template <> -- struct iterator final { -- explicit iterator(const GlyphOffsetArray& array) { -- DCHECK(!array.HasStorage()); -- } -- explicit iterator(const GlyphDataRange& range) { DCHECK(!range.offsets); } -- GlyphOffset operator*() const { return GlyphOffset(); } -- void operator++() {} -- }; -- - template - iterator GetIterator() const { - return iterator(*this); -@@ -495,6 +464,37 @@ - float width_; - }; - -+// For non-zero glyph offset array -+template <> -+struct ShapeResult::RunInfo::GlyphOffsetArray::iterator final { -+ // The constructor for ShapeResult -+ explicit iterator(const GlyphOffsetArray& array) -+ : pointer(array.storage_.get()) { -+ DCHECK(pointer); -+ } -+ -+ // The constructor for ShapeResultView -+ explicit iterator(const GlyphDataRange& range) : pointer(range.offsets) { -+ DCHECK(pointer); -+ } -+ -+ GlyphOffset operator*() const { return *pointer; } -+ void operator++() { ++pointer; } -+ -+ const GlyphOffset* pointer; -+}; -+ -+// For zero glyph offset array -+template <> -+struct ShapeResult::RunInfo::GlyphOffsetArray::iterator final { -+ explicit iterator(const GlyphOffsetArray& array) { -+ DCHECK(!array.HasStorage()); -+ } -+ explicit iterator(const GlyphDataRange& range) { DCHECK(!range.offsets); } -+ GlyphOffset operator*() const { return GlyphOffset(); } -+ void operator++() {} -+}; -+ - // Find the range of HarfBuzzRunGlyphData for the specified character index - // range. This function uses binary search twice, hence O(2 log n). - inline ShapeResult::RunInfo::GlyphDataRange diff --git a/chromium-76.0.3809.100-gcc-net-fetcher.patch b/chromium-76.0.3809.100-gcc-net-fetcher.patch deleted file mode 100644 index bc0ed98..0000000 --- a/chromium-76.0.3809.100-gcc-net-fetcher.patch +++ /dev/null @@ -1,63 +0,0 @@ -From 502e6e42633d2571c8236c8649b031fe9915eb5b Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Tue, 11 Jun 2019 16:56:27 +0000 -Subject: [PATCH] GCC: CertNetFetcherImpl declares Job as a friend but it is in the anonymous namespace - -GCC does not allow friendship declaration to anonymous namespace as done with Job -object in the CertNetFetcherImpl. This fix removes the friend declaration, and just -makes RemoveJob method public, that was the only reason to make Job a friend. - -Error was: -./../net/cert_net/cert_net_fetcher_impl.cc: In member function ‘void net::{anonymous}::Job::DetachRequest(net::CertNetFetcherImpl::RequestCore*)’: -../../net/cert_net/cert_net_fetcher_impl.cc:458:42: error: ‘std::unique_ptr net::CertNetFetcherImpl::AsyncCertNetFetcherImpl::RemoveJob(net::{anonymous}::Job*)’ is private within this context - delete_this = parent_->RemoveJob(this); - ^ -../../net/cert_net/cert_net_fetcher_impl.cc:151:24: note: declared private here - std::unique_ptr RemoveJob(Job* job); - ^~~~~~~~~ -../../net/cert_net/cert_net_fetcher_impl.cc: In member function ‘void net::{anonymous}::Job::OnJobCompleted(net::Error)’: -../../net/cert_net/cert_net_fetcher_impl.cc:610:61: error: ‘std::unique_ptr net::CertNetFetcherImpl::AsyncCertNetFetcherImpl::RemoveJob(net::{anonymous}::Job*)’ is private within this context - std::unique_ptr delete_this = parent_->RemoveJob(this); - ^ -../../net/cert_net/cert_net_fetcher_impl.cc:151:24: note: declared private here - std::unique_ptr RemoveJob(Job* job); - ^~~~~~~~~ - -Bug: 819294 -Change-Id: I3609f4558e570741395366de6a4cd40577d91450 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1651783 -Commit-Queue: Eric Roman -Reviewed-by: Eric Roman -Cr-Commit-Position: refs/heads/master@{#668015} ---- - -diff --git a/net/cert_net/cert_net_fetcher_impl.cc b/net/cert_net/cert_net_fetcher_impl.cc -index 11a1166..349c656 100644 ---- a/net/cert_net/cert_net_fetcher_impl.cc -+++ b/net/cert_net/cert_net_fetcher_impl.cc -@@ -135,21 +135,19 @@ - void Fetch(std::unique_ptr request_params, - scoped_refptr request); - -+ // Removes |job| from the in progress jobs and transfers ownership to the -+ // caller. -+ std::unique_ptr RemoveJob(Job* job); -+ - // Cancels outstanding jobs, which stops network requests and signals the - // corresponding RequestCores that the requests have completed. - void Shutdown(); - - private: -- friend class Job; -- - // Finds a job with a matching RequestPararms or returns nullptr if there was - // no match. - Job* FindJob(const RequestParams& params); - -- // Removes |job| from the in progress jobs and transfers ownership to the -- // caller. -- std::unique_ptr RemoveJob(Job* job); -- - // The in-progress jobs. This set does not contain the job which is actively - // invoking callbacks (OnJobCompleted). - JobSet jobs_; diff --git a/chromium-76.0.3809.100-gcc-themeservice-includes.patch b/chromium-76.0.3809.100-gcc-themeservice-includes.patch deleted file mode 100644 index ad40bb9..0000000 --- a/chromium-76.0.3809.100-gcc-themeservice-includes.patch +++ /dev/null @@ -1,36 +0,0 @@ -From d08ea83acc2f5ff395c1fe54f52687e92fe51c3b Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Tue, 04 Jun 2019 22:01:03 +0200 -Subject: [PATCH] IWYU: ThemeService requires NativeTheme - -As ThemeService referes to NativeTheme through a ScopedObserver, -the full declaration is required. - -Bug: 819294 -Change-Id: I9d5bd2e87cfaa76e87f9b5509daea24848906a63 ---- - -diff --git a/chrome/browser/themes/theme_service.cc b/chrome/browser/themes/theme_service.cc -index d65388e2..23dc86d 100644 ---- a/chrome/browser/themes/theme_service.cc -+++ b/chrome/browser/themes/theme_service.cc -@@ -54,7 +54,6 @@ - #include "ui/gfx/color_palette.h" - #include "ui/gfx/image/image_skia.h" - #include "ui/native_theme/common_theme.h" --#include "ui/native_theme/native_theme.h" - - #if BUILDFLAG(ENABLE_EXTENSIONS) - #include "base/scoped_observer.h" -diff --git a/chrome/browser/themes/theme_service.h b/chrome/browser/themes/theme_service.h -index 6c79c72..f93dc0d 100644 ---- a/chrome/browser/themes/theme_service.h -+++ b/chrome/browser/themes/theme_service.h -@@ -25,6 +25,7 @@ - #include "extensions/buildflags/buildflags.h" - #include "extensions/common/extension_id.h" - #include "ui/base/theme_provider.h" -+#include "ui/native_theme/native_theme.h" - #include "ui/native_theme/native_theme_observer.h" - - class BrowserThemePack; diff --git a/chromium-76.0.3809.100-gcc-vulkan.patch b/chromium-76.0.3809.100-gcc-vulkan.patch deleted file mode 100644 index cf93bce..0000000 --- a/chromium-76.0.3809.100-gcc-vulkan.patch +++ /dev/null @@ -1,115 +0,0 @@ -From fdb3bb1f8c41d044a5b0cb80257a26dd3c8f83a3 Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Tue, 11 Jun 2019 17:39:38 +0000 -Subject: [PATCH] GCC: do not use old C notation to assign struct with property names. - -The notation for initialization of structs referring to its properties -is invalid in C++. This is not accepted in GCC. It was making build -fail in VulkanCommandBuffer. - -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc: In member function 'void gpu::VulkanCommandBuffer::TransitionImageLayout(VkImage, VkImageLayout, VkImageLayout)': -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:214:7: error: expected primary-expression before '.' token - .subresourceRange.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT, - ^ -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:215:7: error: expected primary-expression before '.' token - .subresourceRange.baseMipLevel = 0, - ^ -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:216:7: error: expected primary-expression before '.' token - .subresourceRange.levelCount = 1, - ^ -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:217:7: error: expected primary-expression before '.' token - .subresourceRange.baseArrayLayer = 0, - ^ -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:218:7: error: expected primary-expression before '.' token - .subresourceRange.layerCount = 1, - ^ -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc: In member function 'void gpu::VulkanCommandBuffer::CopyBufferToImage(VkBuffer, VkImage, uint32_t, uint32_t, uint32_t, uint32_t)': -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:235:7: error: expected primary-expression before '.' token - .imageSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT, - ^ -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:236:7: error: expected primary-expression before '.' token - .imageSubresource.mipLevel = 0, - ^ -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:237:7: error: expected primary-expression before '.' token - .imageSubresource.baseArrayLayer = 0, - ^ -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:238:7: error: expected primary-expression before '.' token - .imageSubresource.layerCount = 1, - ^ -Bug: 819294 - -Change-Id: I999abece0c727e77964789183642ba62009c2c22 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1651802 -Commit-Queue: José Dapena Paz -Reviewed-by: Antoine Labour -Cr-Commit-Position: refs/heads/master@{#668033} ---- - -diff --git a/gpu/vulkan/vulkan_command_buffer.cc b/gpu/vulkan/vulkan_command_buffer.cc -index ba776e4..4f14c85 100644 ---- a/gpu/vulkan/vulkan_command_buffer.cc -+++ b/gpu/vulkan/vulkan_command_buffer.cc -@@ -207,21 +207,20 @@ - void VulkanCommandBuffer::TransitionImageLayout(VkImage image, - VkImageLayout old_layout, - VkImageLayout new_layout) { -- VkImageMemoryBarrier barrier = { -- .sType = VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER, -- .srcAccessMask = GetAccessMask(old_layout), -- .dstAccessMask = GetAccessMask(new_layout), -- .oldLayout = old_layout, -- .newLayout = new_layout, -- .srcQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED, -- .dstQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED, -- .image = image, -- .subresourceRange.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT, -- .subresourceRange.baseMipLevel = 0, -- .subresourceRange.levelCount = 1, -- .subresourceRange.baseArrayLayer = 0, -- .subresourceRange.layerCount = 1, -- }; -+ VkImageMemoryBarrier barrier = {}; -+ barrier.sType = VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER; -+ barrier.srcAccessMask = GetAccessMask(old_layout); -+ barrier.dstAccessMask = GetAccessMask(new_layout); -+ barrier.oldLayout = old_layout; -+ barrier.newLayout = new_layout; -+ barrier.srcQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED; -+ barrier.dstQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED; -+ barrier.image = image; -+ barrier.subresourceRange.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT; -+ barrier.subresourceRange.baseMipLevel = 0; -+ barrier.subresourceRange.levelCount = 1; -+ barrier.subresourceRange.baseArrayLayer = 0; -+ barrier.subresourceRange.layerCount = 1; - vkCmdPipelineBarrier(command_buffer_, GetPipelineStageFlags(old_layout), - GetPipelineStageFlags(new_layout), 0, 0, nullptr, 0, - nullptr, 1, &barrier); -@@ -233,17 +232,16 @@ - uint32_t buffer_height, - uint32_t width, - uint32_t height) { -- VkBufferImageCopy region = { -- .bufferOffset = 0, -- .bufferRowLength = buffer_width, -- .bufferImageHeight = buffer_height, -- .imageSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT, -- .imageSubresource.mipLevel = 0, -- .imageSubresource.baseArrayLayer = 0, -- .imageSubresource.layerCount = 1, -- .imageOffset = {0, 0, 0}, -- .imageExtent = {width, height, 1}, -- }; -+ VkBufferImageCopy region = {}; -+ region.bufferOffset = 0; -+ region.bufferRowLength = buffer_width; -+ region.bufferImageHeight = buffer_height; -+ region.imageSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT; -+ region.imageSubresource.mipLevel = 0; -+ region.imageSubresource.baseArrayLayer = 0; -+ region.imageSubresource.layerCount = 1; -+ region.imageOffset = {0, 0, 0}; -+ region.imageExtent = {width, height, 1}; - vkCmdCopyBufferToImage(command_buffer_, buffer, image, - VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, 1, ®ion); - } diff --git a/chromium-76.0.3809.100-quiche-compile-fix.patch b/chromium-76.0.3809.100-quiche-compile-fix.patch deleted file mode 100644 index 98789d9..0000000 --- a/chromium-76.0.3809.100-quiche-compile-fix.patch +++ /dev/null @@ -1,225 +0,0 @@ -diff -up chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc.quiche-compile-fix chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc ---- chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc.quiche-compile-fix 2019-08-14 09:58:07.721193200 +0200 -+++ chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc 2019-08-14 09:59:33.131041525 +0200 -@@ -62,37 +62,37 @@ const size_t kStatelessResetTokenLength - std::string TransportParameterIdToString( - TransportParameters::TransportParameterId param_id) { - switch (param_id) { -- case kOriginalConnectionId: -+ case TransportParameters::kOriginalConnectionId: - return "original_connection_id"; -- case kIdleTimeout: -+ case TransportParameters::kIdleTimeout: - return "idle_timeout"; -- case kStatelessResetToken: -+ case TransportParameters::kStatelessResetToken: - return "stateless_reset_token"; -- case kMaxPacketSize: -+ case TransportParameters::kMaxPacketSize: - return "max_packet_size"; -- case kInitialMaxData: -+ case TransportParameters::kInitialMaxData: - return "initial_max_data"; -- case kInitialMaxStreamDataBidiLocal: -+ case TransportParameters::kInitialMaxStreamDataBidiLocal: - return "initial_max_stream_data_bidi_local"; -- case kInitialMaxStreamDataBidiRemote: -+ case TransportParameters::kInitialMaxStreamDataBidiRemote: - return "initial_max_stream_data_bidi_remote"; -- case kInitialMaxStreamDataUni: -+ case TransportParameters::kInitialMaxStreamDataUni: - return "initial_max_stream_data_uni"; -- case kInitialMaxStreamsBidi: -+ case TransportParameters::kInitialMaxStreamsBidi: - return "initial_max_streams_bidi"; -- case kInitialMaxStreamsUni: -+ case TransportParameters::kInitialMaxStreamsUni: - return "initial_max_streams_uni"; -- case kAckDelayExponent: -+ case TransportParameters::kAckDelayExponent: - return "ack_delay_exponent"; -- case kMaxAckDelay: -+ case TransportParameters::kMaxAckDelay: - return "max_ack_delay"; -- case kDisableMigration: -+ case TransportParameters::kDisableMigration: - return "disable_migration"; -- case kPreferredAddress: -+ case TransportParameters::kPreferredAddress: - return "preferred_address"; -- case kGoogleQuicParam: -+ case TransportParameters::kGoogleQuicParam: - return "google"; -- case kGoogleQuicVersion: -+ case TransportParameters::kGoogleQuicVersion: - return "google-version"; - } - return "Unknown(" + QuicTextUtils::Uint64ToString(param_id) + ")"; -@@ -390,7 +390,7 @@ bool SerializeTransportParameters(const - CBB original_connection_id_param; - if (!in.original_connection_id.IsEmpty()) { - DCHECK_EQ(Perspective::IS_SERVER, in.perspective); -- if (!CBB_add_u16(¶ms, kOriginalConnectionId) || -+ if (!CBB_add_u16(¶ms, TransportParameters::kOriginalConnectionId) || - !CBB_add_u16_length_prefixed(¶ms, &original_connection_id_param) || - !CBB_add_bytes( - &original_connection_id_param, -@@ -412,7 +412,7 @@ bool SerializeTransportParameters(const - if (!in.stateless_reset_token.empty()) { - DCHECK_EQ(kStatelessResetTokenLength, in.stateless_reset_token.size()); - DCHECK_EQ(Perspective::IS_SERVER, in.perspective); -- if (!CBB_add_u16(¶ms, kStatelessResetToken) || -+ if (!CBB_add_u16(¶ms, TransportParameters::kStatelessResetToken) || - !CBB_add_u16_length_prefixed(¶ms, &stateless_reset_token_param) || - !CBB_add_bytes(&stateless_reset_token_param, - in.stateless_reset_token.data(), -@@ -438,7 +438,7 @@ bool SerializeTransportParameters(const - - // disable_migration - if (in.disable_migration) { -- if (!CBB_add_u16(¶ms, kDisableMigration) || -+ if (!CBB_add_u16(¶ms, TransportParameters::kDisableMigration) || - !CBB_add_u16(¶ms, 0u)) { // 0 is the length of this parameter. - QUIC_BUG << "Failed to write disable_migration for " << in; - return false; -@@ -458,7 +458,7 @@ bool SerializeTransportParameters(const - QUIC_BUG << "Bad lengths " << *in.preferred_address; - return false; - } -- if (!CBB_add_u16(¶ms, kPreferredAddress) || -+ if (!CBB_add_u16(¶ms, TransportParameters::kPreferredAddress) || - !CBB_add_u16_length_prefixed(¶ms, &preferred_address_params) || - !CBB_add_bytes( - &preferred_address_params, -@@ -491,7 +491,7 @@ bool SerializeTransportParameters(const - if (in.google_quic_params) { - const QuicData& serialized_google_quic_params = - in.google_quic_params->GetSerialized(); -- if (!CBB_add_u16(¶ms, kGoogleQuicParam) || -+ if (!CBB_add_u16(¶ms, TransportParameters::kGoogleQuicParam) || - !CBB_add_u16_length_prefixed(¶ms, &google_quic_params) || - !CBB_add_bytes(&google_quic_params, - reinterpret_cast( -@@ -505,7 +505,7 @@ bool SerializeTransportParameters(const - - // Google-specific version extension. - CBB google_version_params; -- if (!CBB_add_u16(¶ms, kGoogleQuicVersion) || -+ if (!CBB_add_u16(¶ms, TransportParameters::kGoogleQuicVersion) || - !CBB_add_u16_length_prefixed(¶ms, &google_version_params) || - !CBB_add_u32(&google_version_params, in.version)) { - QUIC_BUG << "Failed to write Google version extension for " << in; -@@ -565,7 +565,7 @@ bool ParseTransportParameters(const uint - } - bool parse_success = true; - switch (param_id) { -- case kOriginalConnectionId: -+ case TransportParameters::kOriginalConnectionId: - if (!out->original_connection_id.IsEmpty()) { - QUIC_DLOG(ERROR) << "Received a second original connection ID"; - return false; -@@ -581,10 +581,10 @@ bool ParseTransportParameters(const uint - CBS_len(&value)); - } - break; -- case kIdleTimeout: -+ case TransportParameters::kIdleTimeout: - parse_success = out->idle_timeout_milliseconds.ReadFromCbs(&value); - break; -- case kStatelessResetToken: -+ case TransportParameters::kStatelessResetToken: - if (!out->stateless_reset_token.empty()) { - QUIC_DLOG(ERROR) << "Received a second stateless reset token"; - return false; -@@ -597,36 +597,36 @@ bool ParseTransportParameters(const uint - out->stateless_reset_token.assign(CBS_data(&value), - CBS_data(&value) + CBS_len(&value)); - break; -- case kMaxPacketSize: -+ case TransportParameters::kMaxPacketSize: - parse_success = out->max_packet_size.ReadFromCbs(&value); - break; -- case kInitialMaxData: -+ case TransportParameters::kInitialMaxData: - parse_success = out->initial_max_data.ReadFromCbs(&value); - break; -- case kInitialMaxStreamDataBidiLocal: -+ case TransportParameters::kInitialMaxStreamDataBidiLocal: - parse_success = - out->initial_max_stream_data_bidi_local.ReadFromCbs(&value); - break; -- case kInitialMaxStreamDataBidiRemote: -+ case TransportParameters::kInitialMaxStreamDataBidiRemote: - parse_success = - out->initial_max_stream_data_bidi_remote.ReadFromCbs(&value); - break; -- case kInitialMaxStreamDataUni: -+ case TransportParameters::kInitialMaxStreamDataUni: - parse_success = out->initial_max_stream_data_uni.ReadFromCbs(&value); - break; -- case kInitialMaxStreamsBidi: -+ case TransportParameters::kInitialMaxStreamsBidi: - parse_success = out->initial_max_streams_bidi.ReadFromCbs(&value); - break; -- case kInitialMaxStreamsUni: -+ case TransportParameters::kInitialMaxStreamsUni: - parse_success = out->initial_max_streams_uni.ReadFromCbs(&value); - break; -- case kAckDelayExponent: -+ case TransportParameters::kAckDelayExponent: - parse_success = out->ack_delay_exponent.ReadFromCbs(&value); - break; -- case kMaxAckDelay: -+ case TransportParameters::kMaxAckDelay: - parse_success = out->max_ack_delay.ReadFromCbs(&value); - break; -- case kDisableMigration: -+ case TransportParameters::kDisableMigration: - if (out->disable_migration) { - QUIC_DLOG(ERROR) << "Received a second disable migration"; - return false; -@@ -638,7 +638,7 @@ bool ParseTransportParameters(const uint - } - out->disable_migration = true; - break; -- case kPreferredAddress: { -+ case TransportParameters::kPreferredAddress: { - uint16_t ipv4_port, ipv6_port; - in_addr ipv4_address; - in6_addr ipv6_address; -@@ -692,7 +692,7 @@ bool ParseTransportParameters(const uint - QuicMakeUnique( - preferred_address); - } break; -- case kGoogleQuicParam: { -+ case TransportParameters::kGoogleQuicParam: { - if (out->google_quic_params) { - QUIC_DLOG(ERROR) << "Received a second Google parameter"; - return false; -@@ -701,7 +701,7 @@ bool ParseTransportParameters(const uint - reinterpret_cast(CBS_data(&value)), CBS_len(&value)); - out->google_quic_params = CryptoFramer::ParseMessage(serialized_params); - } break; -- case kGoogleQuicVersion: { -+ case TransportParameters::kGoogleQuicVersion: { - if (!CBS_get_u32(&value, &out->version)) { - QUIC_DLOG(ERROR) << "Failed to parse Google version extension"; - return false; -diff -up chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc.quiche-compile-fix chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc ---- chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc.quiche-compile-fix 2019-08-14 09:59:19.139902052 +0200 -+++ chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc 2019-08-14 09:59:33.132041535 +0200 -@@ -2,10 +2,12 @@ - // Use of this source code is governed by a BSD-style license that can be - // found in the LICENSE file. - --#include -- - #include "net/third_party/quiche/src/quic/core/quic_socket_address_coder.h" - -+#include -+#include -+#include -+ - namespace quic { - - namespace { diff --git a/chromium-76.0.3809.100-throttling-dead-beef.patch b/chromium-76.0.3809.100-throttling-dead-beef.patch deleted file mode 100644 index 5e392e6..0000000 --- a/chromium-76.0.3809.100-throttling-dead-beef.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 53bb5a463ee956c70230eaa5450022185d0ddc3c Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Thu, 06 Jun 2019 07:54:05 +0000 -Subject: [PATCH] ThrottlingController::Liveness needs to be uint32_t - -We are setting kAlive and kDead values assigning values that -are bigger than the maximum signed int32. It is better to use -uint32_t in this case. - -Bug: 819294 -Change-Id: If72b48291a66a3a9db24b4c8e2d11d31936a66ee -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645772 -Reviewed-by: Kinuko Yasuda -Commit-Queue: José Dapena Paz -Cr-Commit-Position: refs/heads/master@{#666619} ---- - -diff --git a/services/network/throttling/throttling_controller.h b/services/network/throttling/throttling_controller.h -index 43751c4..3c6f87b 100644 ---- a/services/network/throttling/throttling_controller.h -+++ b/services/network/throttling/throttling_controller.h -@@ -38,7 +38,7 @@ - - // TODO(https://crbug.com/960874): Debugging code to try and shed some light - // on why the owned maps are invalid. -- enum class Liveness : int32_t { -+ enum class Liveness : uint32_t { - kAlive = 0xCA11AB13, - kDead = 0xDEADBEEF, - }; diff --git a/chromium-76.0.3809.100-weak-ptr-no-except.patch b/chromium-76.0.3809.100-weak-ptr-no-except.patch deleted file mode 100644 index a392971..0000000 --- a/chromium-76.0.3809.100-weak-ptr-no-except.patch +++ /dev/null @@ -1,66 +0,0 @@ -From 0370838723e786b51e7ec8ab55014811ec3e3aa3 Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Thu, 18 Jul 2019 14:26:11 +0200 -Subject: [PATCH] Make base::WeakPtr move constructor/operator noexcept to fix GCC build regression - -A GCC build regression has happened on DisjointRangeLockManager, as its move -operator and constructor were declared noexcept. This was failing because the -default implementation depended on base::WeakPtr, that did not provide -noexcept declaration for them. - -So make base::WeakPtr noexcept. - -Bug: 819294 -Change-Id: I936784b881c7c1afea136ceedbe9341e76464f95 ---- - -diff --git a/base/memory/weak_ptr.cc b/base/memory/weak_ptr.cc -index 64fd499..0efcc44 100644 ---- a/base/memory/weak_ptr.cc -+++ b/base/memory/weak_ptr.cc -@@ -46,7 +46,7 @@ - - WeakReference::~WeakReference() = default; - --WeakReference::WeakReference(WeakReference&& other) = default; -+WeakReference::WeakReference(WeakReference&& other) noexcept = default; - - WeakReference::WeakReference(const WeakReference& other) = default; - -diff --git a/base/memory/weak_ptr.h b/base/memory/weak_ptr.h -index 72b5f1f..ccd22fd13 100644 ---- a/base/memory/weak_ptr.h -+++ b/base/memory/weak_ptr.h -@@ -116,9 +116,9 @@ - explicit WeakReference(const scoped_refptr& flag); - ~WeakReference(); - -- WeakReference(WeakReference&& other); -+ WeakReference(WeakReference&& other) noexcept; - WeakReference(const WeakReference& other); -- WeakReference& operator=(WeakReference&& other) = default; -+ WeakReference& operator=(WeakReference&& other) noexcept = default; - WeakReference& operator=(const WeakReference& other) = default; - - bool IsValid() const; -@@ -153,9 +153,9 @@ - ~WeakPtrBase(); - - WeakPtrBase(const WeakPtrBase& other) = default; -- WeakPtrBase(WeakPtrBase&& other) = default; -+ WeakPtrBase(WeakPtrBase&& other) noexcept = default; - WeakPtrBase& operator=(const WeakPtrBase& other) = default; -- WeakPtrBase& operator=(WeakPtrBase&& other) = default; -+ WeakPtrBase& operator=(WeakPtrBase&& other) noexcept = default; - - void reset() { - ref_ = internal::WeakReference(); -@@ -236,7 +236,7 @@ - ptr_ = reinterpret_cast(t); - } - template -- WeakPtr(WeakPtr&& other) : WeakPtrBase(std::move(other)) { -+ WeakPtr(WeakPtr&& other) noexcept : WeakPtrBase(std::move(other)) { - // Need to cast from U* to T* to do pointer adjustment in case of multiple - // inheritance. This also enforces the "U is a T" rule. - T* t = reinterpret_cast(other.ptr_); diff --git a/chromium-76.0.3809.132-gcc-ambigous-instantiation.patch b/chromium-76.0.3809.132-gcc-ambigous-instantiation.patch deleted file mode 100644 index 73db4d4..0000000 --- a/chromium-76.0.3809.132-gcc-ambigous-instantiation.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -up chromium-76.0.3809.132/services/network/cross_origin_read_blocking.cc.gcc-ambigous-instantiation chromium-76.0.3809.132/services/network/cross_origin_read_blocking.cc ---- chromium-76.0.3809.132/services/network/cross_origin_read_blocking.cc.gcc-ambigous-instantiation 2019-08-26 21:02:33.000000000 +0200 -+++ chromium-76.0.3809.132/services/network/cross_origin_read_blocking.cc 2019-08-27 06:58:23.963821667 +0200 -@@ -207,7 +207,7 @@ std::set& GetPluginProxyingProcesse - // confirmation sniffing because images, scripts, etc. are frequently - // mislabelled by http servers as HTML/JSON/XML). - base::flat_set& GetNeverSniffedMimeTypes() { -- static base::NoDestructor> s_types({ -+ static base::NoDestructor> s_types{{ - // The list below has been populated based on most commonly used content - // types according to HTTP Archive - see: - // https://github.com/whatwg/fetch/issues/860#issuecomment-457330454 -@@ -219,7 +219,7 @@ base::flat_set& GetNeverSni - "application/x-protobuf", - "application/zip", - "text/event-stream", -- }); -+ }}; - - // All items need to be lower-case, to support case-insensitive comparisons - // later. diff --git a/chromium-77.0.3865.75-boolfix.patch b/chromium-77.0.3865.75-boolfix.patch new file mode 100644 index 0000000..c836214 --- /dev/null +++ b/chromium-77.0.3865.75-boolfix.patch @@ -0,0 +1,24 @@ +diff -up chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_ptr_info.h +--- chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix 2019-09-09 23:55:20.000000000 +0200 ++++ chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_ptr_info.h 2019-09-12 15:43:30.025360946 +0200 +@@ -45,7 +45,7 @@ class AssociatedInterfacePtrInfo { + + bool is_valid() const { return handle_.is_valid(); } + +- explicit operator bool() const { return handle_.is_valid(); } ++ explicit operator bool() const { return (bool) handle_.is_valid(); } + + ScopedInterfaceEndpointHandle PassHandle() { + return std::move(handle_); +diff -up chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_request.h.boolfix chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_request.h +--- chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_request.h.boolfix 2019-09-09 23:55:20.000000000 +0200 ++++ chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_request.h 2019-09-12 15:43:30.025360946 +0200 +@@ -51,7 +51,7 @@ class AssociatedInterfaceRequest { + // handle. + 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(); } + + ScopedInterfaceEndpointHandle PassHandle() { return std::move(handle_); } + diff --git a/chromium-76.0.3809.132-certificate-transparency.patch b/chromium-77.0.3865.75-certificate-transparency.patch similarity index 73% rename from chromium-76.0.3809.132-certificate-transparency.patch rename to chromium-77.0.3865.75-certificate-transparency.patch index 8bfbced..82e2958 100644 --- a/chromium-76.0.3809.132-certificate-transparency.patch +++ b/chromium-77.0.3865.75-certificate-transparency.patch @@ -1,18 +1,18 @@ -diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager_browsertest.cc ---- chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager_browsertest.cc.certificate-transparency 2019-09-03 22:08:28.931786496 +0200 -+++ chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager_browsertest.cc 2019-09-03 22:15:24.743555759 +0200 -@@ -17,6 +17,7 @@ - #include "chrome/common/pref_names.h" - #include "chrome/test/base/in_process_browser_test.h" - #include "components/prefs/pref_service.h" +diff -up chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager_browsertest.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager_browsertest.cc +--- chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager_browsertest.cc.certificate-transparency 2019-09-12 16:09:52.818635106 +0200 ++++ chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager_browsertest.cc 2019-09-12 16:11:07.662562005 +0200 +@@ -21,6 +21,7 @@ + #include "components/version_info/version_info.h" + #include "content/public/common/content_switches.h" + #include "content/public/common/user_agent.h" +#include "services/network/public/cpp/network_service_buildflags.h" #include "services/network/public/mojom/network_context.mojom.h" #include "services/network/public/mojom/network_service.mojom.h" #include "testing/gmock/include/gmock/gmock.h" -@@ -297,3 +298,55 @@ IN_PROC_BROWSER_TEST_P(SystemNetworkCont +@@ -356,3 +357,55 @@ IN_PROC_BROWSER_TEST_P(SystemNetworkCont INSTANTIATE_TEST_SUITE_P(, - SystemNetworkContextManagerStubResolverBrowsertest, - ::testing::Values(false, true)); + SystemNetworkContextManagerFreezeQUICUaBrowsertest, + ::testing::Values(true, false)); + +class SystemNetworkContextManagerCertificateTransparencyBrowsertest + : public SystemNetworkContextManagerBrowsertest, @@ -65,9 +65,9 @@ diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manage + , + SystemNetworkContextManagerCertificateTransparencyBrowsertest, + ::testing::Values(base::nullopt, true, false)); -diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc ---- chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc.certificate-transparency 2019-08-26 21:02:05.000000000 +0200 -+++ chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc 2019-09-03 22:13:26.451198970 +0200 +diff -up chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.cc +--- chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.cc.certificate-transparency 2019-09-09 23:55:09.000000000 +0200 ++++ chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.cc 2019-09-12 16:09:52.819635118 +0200 @@ -4,11 +4,13 @@ #include "chrome/browser/net/system_network_context_manager.h" @@ -82,7 +82,7 @@ diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manage #include "base/command_line.h" #include "base/feature_list.h" #include "base/logging.h" -@@ -51,6 +53,7 @@ +@@ -50,6 +52,7 @@ #include "content/public/common/mime_handler_view_mode.h" #include "content/public/common/service_names.mojom.h" #include "content/public/common/user_agent.h" @@ -90,7 +90,7 @@ diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manage #include "mojo/public/cpp/bindings/associated_interface_ptr.h" #include "net/dns/public/util.h" #include "net/net_buildflags.h" -@@ -81,6 +84,20 @@ +@@ -79,6 +82,20 @@ namespace { @@ -111,7 +111,7 @@ diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manage // The global instance of the SystemNetworkContextmanager. SystemNetworkContextManager* g_system_network_context_manager = nullptr; -@@ -686,14 +703,35 @@ SystemNetworkContextManager::CreateDefau +@@ -658,14 +675,35 @@ SystemNetworkContextManager::CreateDefau bool http_09_on_non_default_ports_enabled = false; #if !defined(OS_ANDROID) @@ -155,7 +155,7 @@ diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manage } const base::Value* value = -@@ -756,6 +794,12 @@ SystemNetworkContextManager::GetHttpAuth +@@ -723,6 +761,12 @@ SystemNetworkContextManager::GetHttpAuth return CreateHttpAuthDynamicParams(g_browser_process->local_state()); } @@ -168,10 +168,10 @@ diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manage network::mojom::NetworkContextParamsPtr SystemNetworkContextManager::CreateNetworkContextParams() { // TODO(mmenke): Set up parameters here (in memory cookie store, etc). -diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.h.certificate-transparency chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.h ---- chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.h.certificate-transparency 2019-08-26 21:02:05.000000000 +0200 -+++ chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.h 2019-09-03 22:08:28.931786496 +0200 -@@ -158,6 +158,12 @@ class SystemNetworkContextManager { +diff -up chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.h.certificate-transparency chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.h +--- chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.h.certificate-transparency 2019-09-09 23:55:09.000000000 +0200 ++++ chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.h 2019-09-12 16:09:52.819635118 +0200 +@@ -139,6 +139,12 @@ class SystemNetworkContextManager { static network::mojom::HttpAuthDynamicParamsPtr GetHttpAuthDynamicParamsForTesting(); @@ -184,10 +184,10 @@ diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manage private: class URLLoaderFactoryForSystem; -diff -up chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc ---- chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc.certificate-transparency 2019-08-26 21:02:05.000000000 +0200 -+++ chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc 2019-09-03 22:08:28.932786508 +0200 -@@ -4834,7 +4834,7 @@ IN_PROC_BROWSER_TEST_P(SSLPolicyTestComm +diff -up chromium-77.0.3865.75/chrome/browser/policy/policy_browsertest.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/policy/policy_browsertest.cc +--- chromium-77.0.3865.75/chrome/browser/policy/policy_browsertest.cc.certificate-transparency 2019-09-09 23:55:10.000000000 +0200 ++++ chromium-77.0.3865.75/chrome/browser/policy/policy_browsertest.cc 2019-09-12 16:09:52.820635131 +0200 +@@ -4836,7 +4836,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, browser()->tab_strip_model()->GetActiveWebContents()->GetTitle()); } @@ -196,9 +196,9 @@ diff -up chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc.cert CertificateTransparencyEnforcementDisabledForCas) { net::EmbeddedTestServer https_server_ok(net::EmbeddedTestServer::TYPE_HTTPS); https_server_ok.SetSSLConfig(net::EmbeddedTestServer::CERT_OK); -diff -up chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc ---- chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc.certificate-transparency 2019-08-26 21:02:07.000000000 +0200 -+++ chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc 2019-09-03 22:08:28.932786508 +0200 +diff -up chromium-77.0.3865.75/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc +--- chromium-77.0.3865.75/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc.certificate-transparency 2019-09-09 23:55:10.000000000 +0200 ++++ chromium-77.0.3865.75/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc 2019-09-12 16:09:52.821635143 +0200 @@ -8,6 +8,7 @@ #include "base/callback.h" #include "base/run_loop.h" @@ -226,10 +226,10 @@ diff -up chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_bro void SetUpOnMainThread() override { run_loop_ = std::make_unique(); -diff -up chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_browsertest.cc ---- chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_browsertest.cc.certificate-transparency 2019-08-26 21:02:07.000000000 +0200 -+++ chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_browsertest.cc 2019-09-03 22:08:28.932786508 +0200 -@@ -457,6 +457,13 @@ class SecurityStateTabHelperTest : publi +diff -up chromium-77.0.3865.75/chrome/browser/ssl/security_state_tab_helper_browsertest.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/ssl/security_state_tab_helper_browsertest.cc +--- chromium-77.0.3865.75/chrome/browser/ssl/security_state_tab_helper_browsertest.cc.certificate-transparency 2019-09-09 23:55:10.000000000 +0200 ++++ chromium-77.0.3865.75/chrome/browser/ssl/security_state_tab_helper_browsertest.cc 2019-09-12 16:09:52.821635143 +0200 +@@ -433,6 +433,13 @@ class SecurityStateTabHelperTest : publi SecurityStateTabHelperTest() : https_server_(net::EmbeddedTestServer::TYPE_HTTPS) { https_server_.ServeFilesFromSourceDirectory(GetChromeTestDataDir()); @@ -243,10 +243,10 @@ diff -up chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_bro } void SetUpOnMainThread() override { -diff -up chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc ---- chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc.certificate-transparency 2019-08-26 21:02:07.000000000 +0200 -+++ chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc 2019-09-03 22:08:28.934786531 +0200 -@@ -2008,8 +2008,14 @@ class CertificateTransparencySSLUITest : +diff -up chromium-77.0.3865.75/chrome/browser/ssl/ssl_browsertest.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/ssl/ssl_browsertest.cc +--- chromium-77.0.3865.75/chrome/browser/ssl/ssl_browsertest.cc.certificate-transparency 2019-09-09 23:55:10.000000000 +0200 ++++ chromium-77.0.3865.75/chrome/browser/ssl/ssl_browsertest.cc 2019-09-12 16:09:52.822635155 +0200 +@@ -1853,8 +1853,14 @@ class CertificateTransparencySSLUITest : public: CertificateTransparencySSLUITest() : CertVerifierBrowserTest(), @@ -263,9 +263,9 @@ diff -up chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc.certificat void SetUpOnMainThread() override { CertVerifierBrowserTest::SetUpOnMainThread(); -diff -up chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_policy_enforcer.h.certificate-transparency chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_policy_enforcer.h ---- chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_policy_enforcer.h.certificate-transparency 2019-08-26 21:02:14.000000000 +0200 -+++ chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_policy_enforcer.h 2019-09-03 22:08:28.934786531 +0200 +diff -up chromium-77.0.3865.75/components/certificate_transparency/chrome_ct_policy_enforcer.h.certificate-transparency chromium-77.0.3865.75/components/certificate_transparency/chrome_ct_policy_enforcer.h +--- chromium-77.0.3865.75/components/certificate_transparency/chrome_ct_policy_enforcer.h.certificate-transparency 2019-09-09 23:55:14.000000000 +0200 ++++ chromium-77.0.3865.75/components/certificate_transparency/chrome_ct_policy_enforcer.h 2019-09-12 16:09:52.823635168 +0200 @@ -45,6 +45,19 @@ class ChromeCTPolicyEnforcer : public ne void SetClockForTesting(const base::Clock* clock) { clock_ = clock; } @@ -286,10 +286,10 @@ diff -up chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_po private: // Returns true if the log identified by |log_id| (the SHA-256 hash of the // log's DER-encoded SPKI) has been disqualified, and sets -diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate-transparency chromium-76.0.3809.132/services/network/network_context.cc ---- chromium-76.0.3809.132/services/network/network_context.cc.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 -+++ chromium-76.0.3809.132/services/network/network_context.cc 2019-09-03 22:17:27.977834857 +0200 -@@ -35,6 +35,7 @@ +diff -up chromium-77.0.3865.75/services/network/network_context.cc.certificate-transparency chromium-77.0.3865.75/services/network/network_context.cc +--- chromium-77.0.3865.75/services/network/network_context.cc.certificate-transparency 2019-09-09 23:55:22.000000000 +0200 ++++ chromium-77.0.3865.75/services/network/network_context.cc 2019-09-12 16:09:52.823635168 +0200 +@@ -36,6 +36,7 @@ #include "components/prefs/pref_registry_simple.h" #include "components/prefs/pref_service.h" #include "components/prefs/pref_service_factory.h" @@ -297,7 +297,7 @@ diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate- #include "mojo/public/cpp/bindings/strong_binding.h" #include "net/base/layered_network_delegate.h" #include "net/base/load_flags.h" -@@ -1851,16 +1852,6 @@ URLRequestContextOwner NetworkContext::A +@@ -1877,16 +1878,6 @@ URLRequestContextOwner NetworkContext::A base::FeatureList::IsEnabled(features::kNetworkErrorLogging)); #endif // BUILDFLAG(ENABLE_REPORTING) @@ -314,7 +314,7 @@ diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate- net::HttpNetworkSession::Params session_params; bool is_quic_force_disabled = false; if (network_service_ && network_service_->quic_disabled()) -@@ -1910,8 +1901,20 @@ URLRequestContextOwner NetworkContext::A +@@ -1936,8 +1927,20 @@ URLRequestContextOwner NetworkContext::A #if BUILDFLAG(IS_CT_SUPPORTED) std::vector> ct_logs; @@ -335,7 +335,7 @@ diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate- scoped_refptr log_verifier = net::CTLogVerifier::Create(log->public_key, log->name); if (!log_verifier) { -@@ -1924,6 +1927,17 @@ URLRequestContextOwner NetworkContext::A +@@ -1950,6 +1953,17 @@ URLRequestContextOwner NetworkContext::A ct_verifier->AddLogs(ct_logs); builder->set_ct_verifier(std::move(ct_verifier)); } @@ -353,9 +353,9 @@ diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate- #endif // BUILDFLAG(IS_CT_SUPPORTED) const base::CommandLine* command_line = -diff -up chromium-76.0.3809.132/services/network/network_context_unittest.cc.certificate-transparency chromium-76.0.3809.132/services/network/network_context_unittest.cc ---- chromium-76.0.3809.132/services/network/network_context_unittest.cc.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 -+++ chromium-76.0.3809.132/services/network/network_context_unittest.cc 2019-09-03 22:20:22.382888089 +0200 +diff -up chromium-77.0.3865.75/services/network/network_context_unittest.cc.certificate-transparency chromium-77.0.3865.75/services/network/network_context_unittest.cc +--- chromium-77.0.3865.75/services/network/network_context_unittest.cc.certificate-transparency 2019-09-09 23:55:22.000000000 +0200 ++++ chromium-77.0.3865.75/services/network/network_context_unittest.cc 2019-09-12 16:13:10.479056669 +0200 @@ -2,6 +2,7 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. @@ -374,10 +374,10 @@ diff -up chromium-76.0.3809.132/services/network/network_context_unittest.cc.cer #include "components/network_session_configurator/common/network_switches.h" #include "components/prefs/testing_pref_service.h" +#include "crypto/sha2.h" - #include "mojo/public/cpp/bindings/interface_request.h" - #include "mojo/public/cpp/bindings/strong_binding.h" + #include "mojo/public/cpp/bindings/remote.h" + #include "mojo/public/cpp/bindings/self_owned_receiver.h" #include "mojo/public/cpp/system/data_pipe_utils.h" -@@ -113,6 +116,11 @@ +@@ -115,6 +118,11 @@ #include "url/scheme_host_port.h" #include "url/url_constants.h" @@ -386,11 +386,11 @@ diff -up chromium-76.0.3809.132/services/network/network_context_unittest.cc.cer +#include "services/network/public/mojom/ct_log_info.mojom.h" +#endif + - #if BUILDFLAG(ENABLE_REPORTING) - #include "net/network_error_logging/network_error_logging_service.h" - #include "net/reporting/reporting_cache.h" -@@ -5566,6 +5574,72 @@ TEST_F(NetworkContextTest, BlockAllCooki - EXPECT_EQ("None", response_body); + #if !BUILDFLAG(DISABLE_FTP_SUPPORT) + #include "net/ftp/ftp_auth_cache.h" + #endif // !BUILDFLAG(DISABLE_FTP_SUPPORT) +@@ -5958,6 +5966,72 @@ TEST_F(NetworkContextSplitCacheTest, + true /* was_cached */, true /* is_navigation */); } +#if BUILDFLAG(IS_CT_SUPPORTED) @@ -462,9 +462,9 @@ diff -up chromium-76.0.3809.132/services/network/network_context_unittest.cc.cer } // namespace } // namespace network -diff -up chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom.certificate-transparency chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom ---- chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 -+++ chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom 2019-09-03 22:08:28.936786554 +0200 +diff -up chromium-77.0.3865.75/services/network/public/mojom/ct_log_info.mojom.certificate-transparency chromium-77.0.3865.75/services/network/public/mojom/ct_log_info.mojom +--- chromium-77.0.3865.75/services/network/public/mojom/ct_log_info.mojom.certificate-transparency 2019-09-09 23:55:22.000000000 +0200 ++++ chromium-77.0.3865.75/services/network/public/mojom/ct_log_info.mojom 2019-09-12 16:09:52.824635180 +0200 @@ -4,6 +4,8 @@ module network.mojom; @@ -488,10 +488,10 @@ diff -up chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom. + // If the log is currently qualified, this will not be set. + mojo_base.mojom.TimeDelta? disqualified_at; }; -diff -up chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom.certificate-transparency chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom ---- chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 -+++ chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom 2019-09-03 22:08:28.936786554 +0200 -@@ -238,15 +238,6 @@ struct NetworkContextParams { +diff -up chromium-77.0.3865.75/services/network/public/mojom/network_context.mojom.certificate-transparency chromium-77.0.3865.75/services/network/public/mojom/network_context.mojom +--- chromium-77.0.3865.75/services/network/public/mojom/network_context.mojom.certificate-transparency 2019-09-09 23:55:22.000000000 +0200 ++++ chromium-77.0.3865.75/services/network/public/mojom/network_context.mojom 2019-09-12 16:09:52.825635192 +0200 +@@ -239,15 +239,6 @@ struct NetworkContextParams { [EnableIf=is_android] bool check_clear_text_permitted = false; @@ -507,7 +507,7 @@ diff -up chromium-76.0.3809.132/services/network/public/mojom/network_context.mo // Enables HTTP/0.9 on ports other than 80 for HTTP and 443 for HTTPS. bool http_09_on_non_default_ports_enabled = false; -@@ -299,6 +290,15 @@ struct NetworkContextParams { +@@ -300,6 +291,15 @@ struct NetworkContextParams { // servers, so they can discover misconfigurations. bool enable_certificate_reporting = false; @@ -523,7 +523,7 @@ diff -up chromium-76.0.3809.132/services/network/public/mojom/network_context.mo // Enables Expect CT reporting, which sends reports for opted-in sites that // don't serve sufficient Certificate Transparency information. [EnableIf=is_ct_supported] -@@ -310,6 +310,13 @@ struct NetworkContextParams { +@@ -311,6 +311,13 @@ struct NetworkContextParams { [EnableIf=is_ct_supported] array ct_logs; diff --git a/chromium-77.0.3865.75-fedora-user-agent.patch b/chromium-77.0.3865.75-fedora-user-agent.patch new file mode 100644 index 0000000..8f6de51 --- /dev/null +++ b/chromium-77.0.3865.75-fedora-user-agent.patch @@ -0,0 +1,12 @@ +diff -up chromium-77.0.3865.75/content/common/user_agent.cc.fedora-user-agent chromium-77.0.3865.75/content/common/user_agent.cc +--- chromium-77.0.3865.75/content/common/user_agent.cc.fedora-user-agent 2019-09-12 15:49:11.902270729 +0200 ++++ chromium-77.0.3865.75/content/common/user_agent.cc 2019-09-12 15:50:11.555732044 +0200 +@@ -35,7 +35,7 @@ std::string GetUserAgentPlatform() { + #elif defined(OS_MACOSX) + return "Macintosh; "; + #elif defined(USE_X11) || defined(USE_OZONE) +- return "X11; "; // strange, but that's what Firefox uses ++ return "X11; Fedora; "; // strange, but that's what Firefox uses + #elif defined(OS_ANDROID) + return "Linux; "; + #elif defined(OS_POSIX) diff --git a/chromium-77.0.3865.75-fix-v8-gcc.patch b/chromium-77.0.3865.75-fix-v8-gcc.patch new file mode 100644 index 0000000..385778c --- /dev/null +++ b/chromium-77.0.3865.75-fix-v8-gcc.patch @@ -0,0 +1,14 @@ +diff -up chromium-77.0.3865.75/v8/src/objects/js-objects.cc.fix-v8-gcc chromium-77.0.3865.75/v8/src/objects/js-objects.cc +--- chromium-77.0.3865.75/v8/src/objects/js-objects.cc.fix-v8-gcc 2019-09-12 15:55:18.936238980 +0200 ++++ chromium-77.0.3865.75/v8/src/objects/js-objects.cc 2019-09-12 15:56:06.796645726 +0200 +@@ -3773,6 +3773,10 @@ Handle CreateElementDi + return new_element_dictionary; + } + ++template void JSObject::ApplyAttributesToDictionary( ++ Isolate* isolate, ReadOnlyRoots roots, Handle dictionary, ++ const PropertyAttributes attributes); ++ + template + Maybe JSObject::PreventExtensionsWithTransition( + Handle object, ShouldThrow should_throw) { diff --git a/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch b/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch new file mode 100644 index 0000000..d342e2d --- /dev/null +++ b/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch @@ -0,0 +1,13 @@ +diff -up chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h.nogccoptmath chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h +--- chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h.nogccoptmath 2019-09-12 09:55:13.041038765 +0200 ++++ chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h 2019-09-12 10:11:14.088101504 +0200 +@@ -24,8 +24,7 @@ + #elif !defined(__native_client__) && \ + ((defined(__clang__) && \ + ((__clang_major__ > 3) || \ +- (__clang_major__ == 3 && __clang_minor__ >= 4))) || \ +- (defined(__GNUC__) && __GNUC__ >= 5)) ++ (__clang_major__ == 3 && __clang_minor__ >= 4))) + #include "base/numerics/safe_math_clang_gcc_impl.h" + #define BASE_HAS_OPTIMIZED_SAFE_MATH (1) + #else diff --git a/chromium-77.0.3865.75-gcc5-r3.patch b/chromium-77.0.3865.75-gcc5-r3.patch new file mode 100644 index 0000000..34b858a --- /dev/null +++ b/chromium-77.0.3865.75-gcc5-r3.patch @@ -0,0 +1,36 @@ +diff -up chromium-77.0.3865.75/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 chromium-77.0.3865.75/gpu/ipc/common/mailbox_struct_traits.h +--- chromium-77.0.3865.75/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 2019-09-09 23:55:18.000000000 +0200 ++++ chromium-77.0.3865.75/gpu/ipc/common/mailbox_struct_traits.h 2019-09-12 10:13:16.710206500 +0200 +@@ -15,7 +15,7 @@ namespace mojo { + template <> + struct StructTraits { + static base::span name(const gpu::Mailbox& mailbox) { +- return mailbox.name; ++ return base::make_span(mailbox.name); + } + static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out); + }; +diff -up chromium-77.0.3865.75/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 chromium-77.0.3865.75/services/viz/public/cpp/compositing/quads_struct_traits.h +--- chromium-77.0.3865.75/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 2019-09-09 23:55:23.000000000 +0200 ++++ chromium-77.0.3865.75/services/viz/public/cpp/compositing/quads_struct_traits.h 2019-09-12 10:13:16.710206500 +0200 +@@ -391,7 +391,7 @@ struct StructTraits vertex_opacity(const viz::DrawQuad& input) { + const viz::TextureDrawQuad* quad = + viz::TextureDrawQuad::MaterialCast(&input); +- return quad->vertex_opacity; ++ return base::make_span(quad->vertex_opacity); + } + + static bool y_flipped(const viz::DrawQuad& input) { +diff -up chromium-77.0.3865.75/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 chromium-77.0.3865.75/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc +--- chromium-77.0.3865.75/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 2019-09-12 10:13:16.711206509 +0200 ++++ chromium-77.0.3865.75/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2019-09-12 15:41:15.300158849 +0200 +@@ -10,7 +10,7 @@ + + #include "modules/audio_processing/aec3/aec_state.h" + +-#include ++#include + + #include + #include diff --git a/chromium-77.0.3865.75-no-zlib-mangle.patch b/chromium-77.0.3865.75-no-zlib-mangle.patch new file mode 100644 index 0000000..c32d226 --- /dev/null +++ b/chromium-77.0.3865.75-no-zlib-mangle.patch @@ -0,0 +1,22 @@ +diff -up chromium-77.0.3865.75/third_party/zlib/zconf.h.nozmangle chromium-77.0.3865.75/third_party/zlib/zconf.h +--- chromium-77.0.3865.75/third_party/zlib/zconf.h.nozmangle 2019-09-12 09:36:37.924086850 +0200 ++++ chromium-77.0.3865.75/third_party/zlib/zconf.h 2019-09-12 09:53:01.623958551 +0200 +@@ -9,18 +9,6 @@ + #define ZCONF_H + + /* +- * This library is also built as a part of AOSP, which does not need to include +- * chromeconf.h. This config does not want chromeconf.h, so it can set this +- * macro to opt out. While this works today, there's no guarantee that building +- * zlib outside of Chromium keeps working in the future. +- */ +-#if !defined(CHROMIUM_ZLIB_NO_CHROMECONF) +-/* This include does prefixing as below, but with an updated set of names. Also +- * sets up export macros in component builds. */ +-#include "chromeconf.h" +-#endif +- +-/* + * If you *really* need a unique prefix for all types and library functions, + * compile with -DZ_PREFIX. The "standard" zlib should be compiled without it. + * Even better than compiling with -DZ_PREFIX would be to use configure to set diff --git a/chromium.spec b/chromium.spec index 4239a65..100b665 100644 --- a/chromium.spec +++ b/chromium.spec @@ -164,14 +164,14 @@ BuildRequires: libicu-devel >= 5.4 %global chromoting_client_id %nil %endif -%global majorversion 76 +%global majorversion 77 %if %{freeworld} Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3809.132 +Version: %{majorversion}.0.3865.75 Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home @@ -211,20 +211,20 @@ Patch16: chromium-60.0.3112.78-no-libpng-prefix.patch # Do not mangle libjpeg Patch17: chromium-60.0.3112.78-jpeg-nomangle.patch # Do not mangle zlib -Patch18: chromium-75.0.3770.80-no-zlib-mangle.patch +Patch18: chromium-77.0.3865.75-no-zlib-mangle.patch # Fix libavutil include pathing to find arch specific timer.h # For some reason, this only fails on aarch64. No idea why. Patch19: chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch # from gentoo -Patch20: chromium-61.0.3163.79-gcc-no-opt-safe-math.patch +Patch20: chromium-77.0.3865.75-gcc-no-opt-safe-math.patch # From gentoo -Patch21: chromium-72.0.3626.121-gcc5-r3.patch +Patch21: chromium-77.0.3865.75-gcc5-r3.patch # To use round with gcc, you need to #include Patch22: chromium-65.0.3325.146-gcc-round-fix.patch # Include proper headers to invoke memcpy() Patch23: chromium-65.0.3325.146-memcpy-fix.patch # ../../mojo/public/cpp/bindings/associated_interface_ptr_info.h:48:43: error: cannot convert 'const mojo::ScopedInterfaceEndpointHandle' to 'bool' in return -Patch24: chromium-68.0.3440.106-boolfix.patch +Patch24: chromium-77.0.3865.75-boolfix.patch # From Debian Patch25: chromium-71.0.3578.98-skia-aarch64-buildfix.patch # Do not use unrar code, it is non-free @@ -232,7 +232,7 @@ Patch27: chromium-73.0.3683.75-norar.patch # Upstream GCC fixes Patch28: chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch # Add "Fedora" to the user agent string -Patch29: chromium-72.0.3626.121-fedora-user-agent.patch +Patch29: chromium-77.0.3865.75-fedora-user-agent.patch # Try to fix version.py for Rawhide Patch30: chromium-71.0.3578.98-py2-bootstrap.patch # Fix default on redeclaration error @@ -260,43 +260,11 @@ Patch41: chromium-75.0.3770.80-SIOCGSTAMP.patch # Revert https://chromium.googlesource.com/chromium/src/+/daff6b66faae53a0cefb88987c9ff4843629b728%5E%21/#F0 # It might make clang happy but it breaks gcc. F*** clang. Patch43: chromium-75.0.3770.80-revert-daff6b.patch -# Avoid pure virtual crash destroying RenderProcessUserData -# https://chromium.googlesource.com/chromium/src/+/cdf306db81efaaaa954487585d5a5a16205a5ebd%5E%21/ -Patch44: chromium-75.0.3770.80-pure-virtual-crash-fix.patch # rename function to avoid conflict with rawhide glibc "gettid()" Patch45: chromium-75.0.3770.80-grpc-gettid-fix.patch # fix v8 compile with gcc # https://chromium.googlesource.com/v8/v8/+/3b8c624bda58d05aea80dd9626cd550537d6ac3f%5E%21/#F1 -Patch46: chromium-75.0.3770.100-fix-v8-gcc.patch -# Fix Vulkan compilation with gcc -# https://chromium.googlesource.com/chromium/src/+/fdb3bb1f8c41d044a5b0cb80257a26dd3c8f83a3 -Patch47: chromium-76.0.3809.100-gcc-vulkan.patch -# https://chromium-review.googlesource.com/c/chromium/src/+/1645297 -Patch48: chromium-76.0.3809.100-gcc-cc-no-except.patch -# https://chromium.googlesource.com/chromium/src.git/+/502e6e42633d2571c8236c8649b031fe9915eb5b -Patch49: chromium-76.0.3809.100-gcc-net-fetcher.patch -# https://quiche.googlesource.com/quiche.git/+/9424add9d73432a794b7944790253213cce6dcb8 -Patch50: chromium-76.0.3809.100-quiche-compile-fix.patch -# https://chromium.googlesource.com/chromium/src/+/53bb5a463ee956c70230eaa5450022185d0ddc3c -Patch51: chromium-76.0.3809.100-throttling-dead-beef.patch -# https://chromium.googlesource.com/chromium/src/+/52b5ceac95b67491b1c71f0ef9a32b778bbbaa2e -Patch52: chromium-76.0.3809.132-gcc-ambigous-instantiation.patch -# https://chromium.googlesource.com/chromium/src.git/+/715cb38eac889625de0c429d2672562188b4107e -Patch53: chromium-76.0.3809.100-weak-ptr-no-except.patch -# https://chromium.googlesource.com/chromium/src.git/+/c6afbd59c997c2b64f11abdd1eaef71ae8ea2ddc -Patch54: chromium-76.0.3809.100-gcc-feature-policy-parser.patch -# https://chromium.googlesource.com/chromium/src.git/+/cf6d6b40d711fce93a24a2cf517fa3becdbae8bb -Patch55: chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch -# https://chromium.googlesource.com/chromium/src.git/+/dcb55fb8f18abe5f43d260aa67b14b2dc996f992 -Patch56: chromium-76.0.3809.100-gcc-move-explicit-initialization.patch -# https://chromium.googlesource.com/chromium/src.git/+/7dc76c8d9f4cfbce7cf11424120aa6f6094916dc -Patch57: chromium-76.0.3809.100-gcc-initialization-order.patch -# https://chromium.googlesource.com/chromium/src.git/+/138904af5d6a4158ef4247fda816a8035e621e59 -Patch58: chromium-76.0.3809.100-gcc-history-move-noexcept.patch -# https://chromium.googlesource.com/chromium/src.git/+/bdc24128b75008743d819e298557a53205706e7c -Patch59: chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch -# https://chromium.googlesource.com/chromium/src.git/+/5d7f227fa844e79568df64e495e7ef958c12d7b2 -Patch60: chromium-76.0.3809.100-gcc-themeservice-includes.patch +Patch46: chromium-77.0.3865.75-fix-v8-gcc.patch # In GCC one can't use alignas() for exported classes # https://chromium.googlesource.com/chromium/src.git/+/8148fd96ae04a1150a9c6012634dcd2a7335f87a Patch61: chromium-76.0.3809.100-gcc-no-alignas-and-export.patch @@ -305,7 +273,7 @@ Patch62: chromium-76.0.3809.100-gcc-remoting-constexpr.patch # Needs to be submitted.. (ugly hack, needs to be added properly to GN files) Patch63: chromium-76.0.3809.100-vtable-symbol-undefined.patch # https://chromium.googlesource.com/chromium/src.git/+/3c9720245e440c4b7222f8348d2a2a3c25e098ae -Patch64: chromium-76.0.3809.132-certificate-transparency.patch +Patch64: chromium-77.0.3865.75-certificate-transparency.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -846,7 +814,7 @@ udev. %patch22 -p1 -b .gcc-round-fix %patch23 -p1 -b .memcpyfix %patch24 -p1 -b .boolfix -%patch25 -p1 -b .aarch64fix +#%patch25 -p1 -b .aarch64fix %patch27 -p1 -b .nounrar %patch28 -p1 -b .gcc-cpolicyprovider %patch29 -p1 -b .fedora-user-agent @@ -861,23 +829,8 @@ udev. %patch38 -p1 -b .disable-ndnpc %patch41 -p1 -b .SIOCGSTAMP %patch43 -p1 -b .revert-daff6b -%patch44 -p1 -b .pure-virtual-fix %patch45 -p1 -b .gettid-fix %patch46 -p1 -b .fix-v8-gcc -%patch47 -p1 -b .gcc-vulkan -%patch48 -p1 -b .gcc-cc-no-except -%patch49 -p1 -b .gcc-net-fetcher -%patch50 -p1 -b .quiche-compile-fix -%patch51 -p1 -b .throttling-dead-beef -%patch52 -p1 -b .gcc-ambigous-instantiation -%patch53 -p1 -b .weak-ptr-no-except -%patch54 -p1 -b .gcc-feature-policy-parser -%patch55 -p1 -b .gcc-hasfraction-constexpr -%patch56 -p1 -b .gcc-move-explicit-initialization -%patch57 -p1 -b .gcc-initialization-order -%patch58 -p1 -b .gcc-history-move-noexcept -%patch59 -p1 -b .gcc-accountinfo-move-noexcept -%patch60 -p1 -b .gcc-themeservice-includes %patch61 -p1 -b .gcc-no-alignas-and-export %patch62 -p1 -b .gcc-remoting-constexpr %patch63 -p1 -b .vtable-symbol-undefined @@ -1466,6 +1419,7 @@ sed -i.orig -e 's/getenv("CHROME_VERSION_EXTRA")/"Fedora Project"/' $FILE . /opt/rh/devtoolset-%{dts_version}/enable %endif +echo # Now do the full browser %if 0%{freeworld} ../depot_tools/ninja -C %{target} -vvv media diff --git a/sources b/sources index 2d38a7c..a1d28bf 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-76.0.3809.132-clean.tar.xz) = fbc5f989945adfaffb9fb5199ccb988accdc53f41a03bba9c4ab3df8585b9267b1f34cd7a6ac487eff34ebb6e65865e32ceea4ad945eec30f871d8eed41f3e6f +SHA512 (chromium-77.0.3865.75-clean.tar.xz) = 9531e5d533bf305bd82ae2dbc7bf1a9e081377b61a5611f4bfa14ed389f94d106e26a9981771ed11697ca9c2490eb24c69e992fd907de241698c89a6131db0b6 From 16423a6aaf33016cb0eeb0c20725d6434ca411c3 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 15:18:03 +0200 Subject: [PATCH 0479/1449] Unbundle the zlib Use the gentoo patch. --- chromium-77.0.3865.75-unbundle-zlib.patch | 25 +++++++++++++++++++++++ chromium.spec | 3 +++ 2 files changed, 28 insertions(+) create mode 100644 chromium-77.0.3865.75-unbundle-zlib.patch diff --git a/chromium-77.0.3865.75-unbundle-zlib.patch b/chromium-77.0.3865.75-unbundle-zlib.patch new file mode 100644 index 0000000..d6c45ad --- /dev/null +++ b/chromium-77.0.3865.75-unbundle-zlib.patch @@ -0,0 +1,25 @@ +From e1bbdec720a333937bd1b990ae0f7ee97db0d3b0 Mon Sep 17 00:00:00 2001 +From: Your Name +Date: Fri, 28 Jun 2019 15:56:23 +0000 +Subject: [PATCH] update zlib + +--- + third_party/perfetto/gn/BUILD.gn | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/third_party/perfetto/gn/BUILD.gn b/third_party/perfetto/gn/BUILD.gn +index c951f5f..297eee3 100644 +--- a/third_party/perfetto/gn/BUILD.gn ++++ b/third_party/perfetto/gn/BUILD.gn +@@ -200,7 +200,7 @@ group("zlib") { + "//buildtools:zlib", + ] + } else if (build_with_chromium) { +- public_configs = [ "//third_party/zlib:zlib_config" ] ++ public_configs = [ "//third_party/zlib:system_zlib" ] + public_deps = [ + "//third_party/zlib", + ] +-- +2.21.0 + diff --git a/chromium.spec b/chromium.spec index 100b665..71a6cfa 100644 --- a/chromium.spec +++ b/chromium.spec @@ -274,6 +274,8 @@ Patch62: chromium-76.0.3809.100-gcc-remoting-constexpr.patch Patch63: chromium-76.0.3809.100-vtable-symbol-undefined.patch # https://chromium.googlesource.com/chromium/src.git/+/3c9720245e440c4b7222f8348d2a2a3c25e098ae Patch64: chromium-77.0.3865.75-certificate-transparency.patch +# https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-unbundle-zlib.patch +Patch65: chromium-77.0.3865.75-unbundle-zlib.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -835,6 +837,7 @@ udev. %patch62 -p1 -b .gcc-remoting-constexpr %patch63 -p1 -b .vtable-symbol-undefined %patch64 -p1 -b .certificate-transparency +%patch65 -p1 -b .unbundle-zlib # EPEL specific patches %if 0%{?rhel} == 7 From 382929d255c8becf3ff2123e95657adaa8345c84 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 15:23:46 +0200 Subject: [PATCH 0480/1449] Missing bundled dependency for headless --- chromium.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/chromium.spec b/chromium.spec index 71a6cfa..fb7886c 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1230,6 +1230,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ %endif 'third_party/openscreen' \ 'third_party/opus' \ + 'third_party/one_euro_filter' \ 'third_party/ots' \ 'third_party/pdfium' \ 'third_party/pdfium/third_party/agg23' \ From e77d556bade31e19ca7415d6289203b1e604787c Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 15:21:43 +0200 Subject: [PATCH 0481/1449] Fix the previously rebased patched --- chromium-77.0.3865.75-gcc-no-opt-safe-math.patch | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch b/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch index d342e2d..920a53e 100644 --- a/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch +++ b/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch @@ -1,13 +1,15 @@ diff -up chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h.nogccoptmath chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h ---- chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h.nogccoptmath 2019-09-12 09:55:13.041038765 +0200 -+++ chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h 2019-09-12 10:11:14.088101504 +0200 -@@ -24,8 +24,7 @@ +--- chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h.nogccoptmath 2019-09-13 14:17:22.726738088 +0200 ++++ chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h 2019-09-13 14:31:37.686898493 +0200 +@@ -23,9 +23,8 @@ + // Where available use builtin math overflow support on Clang and GCC. #elif !defined(__native_client__) && \ ((defined(__clang__) && \ - ((__clang_major__ > 3) || \ +- ((__clang_major__ > 3) || \ - (__clang_major__ == 3 && __clang_minor__ >= 4))) || \ - (defined(__GNUC__) && __GNUC__ >= 5)) -+ (__clang_major__ == 3 && __clang_minor__ >= 4))) ++ (__clang_major__ > 3) || \ ++ (__clang_major__ == 3 && __clang_minor__ >= 4))) #include "base/numerics/safe_math_clang_gcc_impl.h" #define BASE_HAS_OPTIMIZED_SAFE_MATH (1) #else From 1302df6eb572e7aac300962907eac7cc6ad9efe5 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 15:18:54 +0200 Subject: [PATCH 0482/1449] Update the clean-ffmpeg.sh script --- clean_ffmpeg.sh | 1 + sources | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index 2f27435..fd226e8 100755 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -138,6 +138,7 @@ header_files=" libavcodec/x86/inline_asm.h \ libavcodec/vlc.h \ libavcodec/vorbisdsp.h \ libavcodec/vp3data.h \ + libavcodec/vp4data.h \ libavcodec/vp3dsp.h \ libavcodec/vp56.h \ libavcodec/vp56dsp.h \ diff --git a/sources b/sources index a1d28bf..b9b0498 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-77.0.3865.75-clean.tar.xz) = 9531e5d533bf305bd82ae2dbc7bf1a9e081377b61a5611f4bfa14ed389f94d106e26a9981771ed11697ca9c2490eb24c69e992fd907de241698c89a6131db0b6 +SHA512 (chromium-77.0.3865.75-clean.tar.xz) = ca7a71586a60abeacb70b9d08ba9a28455d875bfa5232070fdff079e52395924b80f05d7627e3a5d5c7a3df606a39a31e05634683a052c9efb634ed536afc092 From f36acf4bdbf61a81f2b142c4d0db230ce56e58e2 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 15:24:09 +0200 Subject: [PATCH 0483/1449] Include to fix the headless build --- chromium-77.0.3865.75-gcc-include-memory.patch | 12 ++++++++++++ chromium.spec | 3 +++ 2 files changed, 15 insertions(+) create mode 100644 chromium-77.0.3865.75-gcc-include-memory.patch diff --git a/chromium-77.0.3865.75-gcc-include-memory.patch b/chromium-77.0.3865.75-gcc-include-memory.patch new file mode 100644 index 0000000..93b4399 --- /dev/null +++ b/chromium-77.0.3865.75-gcc-include-memory.patch @@ -0,0 +1,12 @@ +diff -up chromium-77.0.3865.75/third_party/one_euro_filter/src/one_euro_filter.h.gcc-include-memory chromium-77.0.3865.75/third_party/one_euro_filter/src/one_euro_filter.h +--- chromium-77.0.3865.75/third_party/one_euro_filter/src/one_euro_filter.h.gcc-include-memory 2019-09-13 14:44:24.962770079 +0200 ++++ chromium-77.0.3865.75/third_party/one_euro_filter/src/one_euro_filter.h 2019-09-13 14:44:45.347073612 +0200 +@@ -3,6 +3,8 @@ + + #include "low_pass_filter.h" + ++#include ++ + namespace one_euro_filter { + namespace test { + class OneEuroFilterTest; diff --git a/chromium.spec b/chromium.spec index fb7886c..5b769cb 100644 --- a/chromium.spec +++ b/chromium.spec @@ -276,6 +276,8 @@ Patch63: chromium-76.0.3809.100-vtable-symbol-undefined.patch Patch64: chromium-77.0.3865.75-certificate-transparency.patch # https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-unbundle-zlib.patch Patch65: chromium-77.0.3865.75-unbundle-zlib.patch +# Needs to be submitted.. +Patch66: chromium-77.0.3865.75-gcc-include-memory.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -838,6 +840,7 @@ udev. %patch63 -p1 -b .vtable-symbol-undefined %patch64 -p1 -b .certificate-transparency %patch65 -p1 -b .unbundle-zlib +%patch66 -p1 -b .gcc-include-memory # EPEL specific patches %if 0%{?rhel} == 7 From 0c379302f50ae654e3872cb517a8929d62dfbe22 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 15:00:03 +0200 Subject: [PATCH 0484/1449] Use the bundled harfbuzz-ng for < F31 Needed because of the hb_subset_input_set_retain_gids(), that's only available in harbuzz 2.4 that's only in F31+ --- chromium.spec | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/chromium.spec b/chromium.spec index 5b769cb..0a6434d 100644 --- a/chromium.spec +++ b/chromium.spec @@ -133,9 +133,9 @@ BuildRequires: libicu-devel >= 5.4 %global bundlefontconfig 0 %endif -# Needs at least harfbuzz 2.3.0 now. -# 2019-03-13 -%if 0%{?fedora} < 30 +# Needs at least harfbuzz 2.4.0 now. +# 2019-09-13 +%if 0%{?fedora} < 31 %global bundleharfbuzz 1 %else %global bundleharfbuzz 0 From 09209e74278ef53332bc05582bd24314fdbfb4d2 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 21:48:17 +0200 Subject: [PATCH 0485/1449] Remove an unneeded patch that's breaking the build --- chromium-77.0.3865.75-fix-v8-gcc.patch | 14 -------------- chromium.spec | 4 ---- 2 files changed, 18 deletions(-) delete mode 100644 chromium-77.0.3865.75-fix-v8-gcc.patch diff --git a/chromium-77.0.3865.75-fix-v8-gcc.patch b/chromium-77.0.3865.75-fix-v8-gcc.patch deleted file mode 100644 index 385778c..0000000 --- a/chromium-77.0.3865.75-fix-v8-gcc.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -up chromium-77.0.3865.75/v8/src/objects/js-objects.cc.fix-v8-gcc chromium-77.0.3865.75/v8/src/objects/js-objects.cc ---- chromium-77.0.3865.75/v8/src/objects/js-objects.cc.fix-v8-gcc 2019-09-12 15:55:18.936238980 +0200 -+++ chromium-77.0.3865.75/v8/src/objects/js-objects.cc 2019-09-12 15:56:06.796645726 +0200 -@@ -3773,6 +3773,10 @@ Handle CreateElementDi - return new_element_dictionary; - } - -+template void JSObject::ApplyAttributesToDictionary( -+ Isolate* isolate, ReadOnlyRoots roots, Handle dictionary, -+ const PropertyAttributes attributes); -+ - template - Maybe JSObject::PreventExtensionsWithTransition( - Handle object, ShouldThrow should_throw) { diff --git a/chromium.spec b/chromium.spec index 0a6434d..2bd1b2f 100644 --- a/chromium.spec +++ b/chromium.spec @@ -262,9 +262,6 @@ Patch41: chromium-75.0.3770.80-SIOCGSTAMP.patch Patch43: chromium-75.0.3770.80-revert-daff6b.patch # rename function to avoid conflict with rawhide glibc "gettid()" Patch45: chromium-75.0.3770.80-grpc-gettid-fix.patch -# fix v8 compile with gcc -# https://chromium.googlesource.com/v8/v8/+/3b8c624bda58d05aea80dd9626cd550537d6ac3f%5E%21/#F1 -Patch46: chromium-77.0.3865.75-fix-v8-gcc.patch # In GCC one can't use alignas() for exported classes # https://chromium.googlesource.com/chromium/src.git/+/8148fd96ae04a1150a9c6012634dcd2a7335f87a Patch61: chromium-76.0.3809.100-gcc-no-alignas-and-export.patch @@ -834,7 +831,6 @@ udev. %patch41 -p1 -b .SIOCGSTAMP %patch43 -p1 -b .revert-daff6b %patch45 -p1 -b .gettid-fix -%patch46 -p1 -b .fix-v8-gcc %patch61 -p1 -b .gcc-no-alignas-and-export %patch62 -p1 -b .gcc-remoting-constexpr %patch63 -p1 -b .vtable-symbol-undefined From e05d0e1ae8e54ea44dd0eee63a9ca3424ef71f23 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 22:05:31 +0200 Subject: [PATCH 0486/1449] Another export and alignas gcc compilation fix --- chromium-77.0.3865.75-base-gcc-no-alignas.patch | 12 ++++++++++++ chromium.spec | 3 +++ 2 files changed, 15 insertions(+) create mode 100644 chromium-77.0.3865.75-base-gcc-no-alignas.patch diff --git a/chromium-77.0.3865.75-base-gcc-no-alignas.patch b/chromium-77.0.3865.75-base-gcc-no-alignas.patch new file mode 100644 index 0000000..86a2271 --- /dev/null +++ b/chromium-77.0.3865.75-base-gcc-no-alignas.patch @@ -0,0 +1,12 @@ +diff -up chromium-77.0.3865.75/base/task/promise/dependent_list.h.base-gcc-no-alignas chromium-77.0.3865.75/base/task/promise/dependent_list.h +--- chromium-77.0.3865.75/base/task/promise/dependent_list.h.base-gcc-no-alignas 2019-09-13 21:45:51.873172347 +0200 ++++ chromium-77.0.3865.75/base/task/promise/dependent_list.h 2019-09-13 21:46:21.661522514 +0200 +@@ -59,7 +59,7 @@ class BASE_EXPORT DependentList { + + // Align Node on an 8-byte boundary to ensure the first 3 bits are 0 and can + // be used to store additional state (see static_asserts below). +- class BASE_EXPORT alignas(8) Node { ++ class BASE_EXPORT ALIGNAS(8) Node { + public: + Node(); + explicit Node(Node&& other) noexcept; diff --git a/chromium.spec b/chromium.spec index 2bd1b2f..f6f1614 100644 --- a/chromium.spec +++ b/chromium.spec @@ -275,6 +275,8 @@ Patch64: chromium-77.0.3865.75-certificate-transparency.patch Patch65: chromium-77.0.3865.75-unbundle-zlib.patch # Needs to be submitted.. Patch66: chromium-77.0.3865.75-gcc-include-memory.patch +# Needs to be submitted.. +Patch67: chromium-77.0.3865.75-base-gcc-no-alignas.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -837,6 +839,7 @@ udev. %patch64 -p1 -b .certificate-transparency %patch65 -p1 -b .unbundle-zlib %patch66 -p1 -b .gcc-include-memory +%patch67 -p1 -b .base-gcc-no-alignas # EPEL specific patches %if 0%{?rhel} == 7 From 2af2caea12b584c709b99b1807387bfab22f11f3 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 22:06:07 +0200 Subject: [PATCH 0487/1449] Preserve the spirv heads for swiftshader compilation --- chromium.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/chromium.spec b/chromium.spec index f6f1614..1102cc7 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1277,6 +1277,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/swiftshader/third_party/subzero' \ 'third_party/swiftshader/third_party/llvm-subzero' \ 'third_party/swiftshader/third_party/llvm-7.0' \ + 'third_party/swiftshader/third_party/SPIRV-Headers' \ 'third_party/tcmalloc' \ 'third_party/test_fonts' \ 'third_party/usb_ids' \ From f468793c28b6e08c98d91d167a0682371fd0132a Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 22:13:56 +0200 Subject: [PATCH 0488/1449] Fix the release number and add a changelog entry --- chromium.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 1102cc7..0698efa 100644 --- a/chromium.spec +++ b/chromium.spec @@ -172,7 +172,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3865.75 -Release: 2%{?dist} +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1872,6 +1872,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Fri Sep 13 2019 Tomas Popela - 77.0.3865.75-1 +- Update to 77.0.3865.75 + * Tue Sep 03 2019 Tomas Popela - 76.0.3809.132-2 - Backport patch to fix certificate transparency From 176f9b5d933c05a0599ab75ec609cc7f58bf8e9d Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Sat, 14 Sep 2019 11:09:46 +0200 Subject: [PATCH 0489/1449] More of the harfbuzz related fixes --- chromium-77.0.3865.75-harfbuzz-subset.patch | 49 +++++++++++++++++++++ chromium.spec | 7 ++- 2 files changed, 54 insertions(+), 2 deletions(-) create mode 100644 chromium-77.0.3865.75-harfbuzz-subset.patch diff --git a/chromium-77.0.3865.75-harfbuzz-subset.patch b/chromium-77.0.3865.75-harfbuzz-subset.patch new file mode 100644 index 0000000..55d78d1 --- /dev/null +++ b/chromium-77.0.3865.75-harfbuzz-subset.patch @@ -0,0 +1,49 @@ +From 27e25336b8316ff3ec4e464058682ed85801fd06 Mon Sep 17 00:00:00 2001 +From: Raphael Kubo da Costa +Date: Mon, 29 Jul 2019 10:54:28 +0000 +Subject: [PATCH] Also link against libharfbuzz-subset when use_system_harfbuzz is true + +When building HarfBuzz as part of Chromium, there is a single source set +with all the files we need in the build. + +Upstream HarfBuzz, on the other hand, produces a few different libraries: +harfbuzz, harfbuzz-icu and harfbuzz-subset. When |use_system_harfbuzz| is +true, we were only looking for (and using) harfbuzz.pc with pkg-config even +though we also use symbols from libharfbuzz-subset.so. This resulted in +errors when linking: + + ld: obj/skia/skia/SkPDFSubsetFont.o: in function `SkPDFSubsetFont(sk_sp, SkPDFGlyphUse const&, SkPDF::Metadata::Subsetter, char const*, int)': + SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x48a): undefined reference to `hb_subset_input_create_or_fail' + ld: SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x4af): undefined reference to `hb_subset_input_glyph_set' + ld: SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x5d7): undefined reference to `hb_subset_input_set_retain_gids' + ld: SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x5e4): undefined reference to `hb_subset_input_set_drop_hints' + ld: SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x5f3): undefined reference to `hb_subset' + ld: SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x66f): undefined reference to `hb_subset_input_destroy' + +as reported in +https://groups.google.com/a/chromium.org/d/msg/chromium-packagers/UyJsVJ5QqWo/jSv5z7-rEQAJ + +Change-Id: I997af075c7b7263cd7cc71a63db5b0f93bd1ab59 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1715288 +Auto-Submit: Raphael Kubo da Costa +Commit-Queue: Dominik Röttsches +Reviewed-by: Dominik Röttsches +Cr-Commit-Position: refs/heads/master@{#681760} +--- + +diff --git a/third_party/harfbuzz-ng/BUILD.gn b/third_party/harfbuzz-ng/BUILD.gn +index 37d8e33..72013eb1d 100644 +--- a/third_party/harfbuzz-ng/BUILD.gn ++++ b/third_party/harfbuzz-ng/BUILD.gn +@@ -16,7 +16,10 @@ + "//third_party:freetype_harfbuzz", + "//third_party/freetype:freetype_source", + ] +- packages = [ "harfbuzz" ] ++ packages = [ ++ "harfbuzz", ++ "harfbuzz-subset", ++ ] + } + } else { + config("harfbuzz_config") { diff --git a/chromium.spec b/chromium.spec index 0698efa..acd3c83 100644 --- a/chromium.spec +++ b/chromium.spec @@ -277,6 +277,8 @@ Patch65: chromium-77.0.3865.75-unbundle-zlib.patch Patch66: chromium-77.0.3865.75-gcc-include-memory.patch # Needs to be submitted.. Patch67: chromium-77.0.3865.75-base-gcc-no-alignas.patch +# https://chromium.googlesource.com/chromium/src/+/27e25336b8316ff3ec4e464058682ed85801fd06 +Patch68: chromium-77.0.3865.75-harfbuzz-subset.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -362,7 +364,7 @@ BuildRequires: gperf %if 0%{?bundleharfbuzz} #nothing %else -BuildRequires: harfbuzz-devel >= 2.3.0 +BuildRequires: harfbuzz-devel >= 2.4.0 %endif BuildRequires: libatomic BuildRequires: libcap-devel @@ -624,7 +626,7 @@ Provides: bundled(freetype) = 2.9.3 %endif Provides: bundled(gperftools) = svn144 %if 0%{?bundleharfbuzz} -Provides: bundled(harfbuzz) = 2.3.0 +Provides: bundled(harfbuzz) = 2.4.0 %endif Provides: bundled(hunspell) = 1.6.0 Provides: bundled(iccjpeg) @@ -840,6 +842,7 @@ udev. %patch65 -p1 -b .unbundle-zlib %patch66 -p1 -b .gcc-include-memory %patch67 -p1 -b .base-gcc-no-alignas +%patch68 -p1 -b .harfbuzz-subset # EPEL specific patches %if 0%{?rhel} == 7 From 13aab678f5a9b833d2d451491793d823121540b6 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Sat, 14 Sep 2019 11:10:29 +0200 Subject: [PATCH 0490/1449] Don't remove an additional bundled library --- chromium.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/chromium.spec b/chromium.spec index acd3c83..44e7cf4 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1234,6 +1234,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/openh264' \ %endif 'third_party/openscreen' \ + 'third_party/openscreen/src/third_party/tinycbor' \ 'third_party/opus' \ 'third_party/one_euro_filter' \ 'third_party/ots' \ From b30c77e75cc415b2a854f26288ad4e2f071dd1c1 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Sat, 14 Sep 2019 17:06:52 +0200 Subject: [PATCH 0491/1449] Backport another GCC build fix --- ...mium-77.0.3865.75-gcc-abstract-class.patch | 61 +++++++++++++++++++ chromium.spec | 3 + 2 files changed, 64 insertions(+) create mode 100644 chromium-77.0.3865.75-gcc-abstract-class.patch diff --git a/chromium-77.0.3865.75-gcc-abstract-class.patch b/chromium-77.0.3865.75-gcc-abstract-class.patch new file mode 100644 index 0000000..6d77299 --- /dev/null +++ b/chromium-77.0.3865.75-gcc-abstract-class.patch @@ -0,0 +1,61 @@ +From f08cb0022527081c078e8b96062e6c9b4fbda151 Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Fri, 26 Jul 2019 16:48:06 +0000 +Subject: [PATCH] BinaryUploadService: change parameter passing that cannot afford abstract class + +The method UploadForDeepScanning gets a Request as parameter. But Request is an +abstract class, so GCC will not allow that declaration (polimorphycs should be +passed by reference). Use std::unique_ptr so BinaryUploadService can assume +ownership. + +Bug: 819294 +Change-Id: I9e8c75cc92b01abd704d9049b0421555377da5ba +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1713550 +Reviewed-by: Daniel Rubery +Commit-Queue: José Dapena Paz +Cr-Commit-Position: refs/heads/master@{#681333} +--- + +diff --git a/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc b/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc +index 6430c89..4e90487 100644 +--- a/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc ++++ b/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc +@@ -10,7 +10,7 @@ + namespace safe_browsing { + + void BinaryUploadService::UploadForDeepScanning( +- BinaryUploadService::Request request) { ++ std::unique_ptr request) { + DCHECK_CURRENTLY_ON(content::BrowserThread::UI); + NOTREACHED(); + } +diff --git a/chrome/browser/safe_browsing/download_protection/binary_upload_service.h b/chrome/browser/safe_browsing/download_protection/binary_upload_service.h +index d2dfd83..9b6f395 100644 +--- a/chrome/browser/safe_browsing/download_protection/binary_upload_service.h ++++ b/chrome/browser/safe_browsing/download_protection/binary_upload_service.h +@@ -5,6 +5,8 @@ + #ifndef CHROME_BROWSER_SAFE_BROWSING_DOWNLOAD_PROTECTION_BINARY_UPLOAD_SERVICE_H_ + #define CHROME_BROWSER_SAFE_BROWSING_DOWNLOAD_PROTECTION_BINARY_UPLOAD_SERVICE_H_ + ++#include ++ + #include "base/callback.h" + #include "components/safe_browsing/proto/webprotect.pb.h" + +@@ -40,6 +42,7 @@ + public: + // |callback| will run on the UI thread. + explicit Request(Callback callback); ++ virtual ~Request() = default; + Request(const Request&) = delete; + Request& operator=(const Request&) = delete; + +@@ -67,7 +70,7 @@ + // Upload the given file contents for deep scanning. The results will be + // returned asynchronously by calling |request|'s |callback|. This must be + // called on the UI thread. +- void UploadForDeepScanning(Request request); ++ void UploadForDeepScanning(std::unique_ptr request); + }; + + } // namespace safe_browsing diff --git a/chromium.spec b/chromium.spec index 44e7cf4..854c788 100644 --- a/chromium.spec +++ b/chromium.spec @@ -279,6 +279,8 @@ Patch66: chromium-77.0.3865.75-gcc-include-memory.patch Patch67: chromium-77.0.3865.75-base-gcc-no-alignas.patch # https://chromium.googlesource.com/chromium/src/+/27e25336b8316ff3ec4e464058682ed85801fd06 Patch68: chromium-77.0.3865.75-harfbuzz-subset.patch +# https://chromium.googlesource.com/chromium/src.git/+/f08cb0022527081c078e8b96062e6c9b4fbda151 +Patch69: chromium-77.0.3865.75-gcc-abstract-class.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -843,6 +845,7 @@ udev. %patch66 -p1 -b .gcc-include-memory %patch67 -p1 -b .base-gcc-no-alignas %patch68 -p1 -b .harfbuzz-subset +%patch69 -p1 -b .gcc-abstract-class # EPEL specific patches %if 0%{?rhel} == 7 From e0d06a0fbf5063d875762e3c2cec32e15082c8b3 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Sat, 14 Sep 2019 19:15:24 +0200 Subject: [PATCH 0492/1449] Customize the ninja status to show the currently build target So one is able to realize faster, where the build is failing. --- chromium.spec | 53 ++++++++++++++++++++++++++++++--------------------- 1 file changed, 31 insertions(+), 22 deletions(-) diff --git a/chromium.spec b/chromium.spec index 854c788..247c3e6 100644 --- a/chromium.spec +++ b/chromium.spec @@ -2,6 +2,13 @@ # https://fedoraproject.org/wiki/Changes/No_more_automagic_Python_bytecompilation_phase_2 %global _python_bytecompile_extra 1 +# Fancy build status, so we at least know, where we are.. +# %1 where +# %2 what +%global build_target() \ + export NINJA_STATUS="[%2:%f/%t] " ; \ + ../depot_tools/ninja -C '%1' -vvv '%2' + # This is faster when it works, but it doesn't always. %ifarch aarch64 %global use_jumbo 0 @@ -28,9 +35,9 @@ %global useapikeys 1 # Leave this alone, please. -%global target out/Release -%global headlesstarget out/Headless -%global remotingtarget out/Remoting +%global builddir out/Release +%global headlessbuilddir out/Headless +%global remotingbuilddir out/Remoting # Debuginfo packages aren't very useful here. If you need to debug # you should do a proper debug build (not implemented in this spec yet) @@ -1403,17 +1410,17 @@ if python2 -c 'import google ; print google.__path__' 2> /dev/null ; then \ fi tools/gn/bootstrap/bootstrap.py -v "$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" -%{target}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{target} +%{builddir}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{builddir} %if %{freeworld} # do not need to do headless gen %else %if %{build_headless} -%{target}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_HEADLESS_GN_DEFINES" %{headlesstarget} +%{builddir}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_HEADLESS_GN_DEFINES" %{headlessbuilddir} %endif %endif -%{target}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{remotingtarget} +%{builddir}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{remotingbuilddir} %if %{bundlelibusbx} # no hackity hack hack @@ -1433,34 +1440,36 @@ sed -i.orig -e 's/getenv("CHROME_VERSION_EXTRA")/"Fedora Project"/' $FILE . /opt/rh/devtoolset-%{dts_version}/enable %endif -echo +echo # Now do the full browser %if 0%{freeworld} -../depot_tools/ninja -C %{target} -vvv media +%build_target %{builddir} media %else %if %{build_headless} -# Do headless first. -../depot_tools/ninja -C %{headlesstarget} -vvv headless_shell +# Do headless first. +%build_target %{headlessbuilddir} headless_shell %endif -../depot_tools/ninja -C %{target} -vvv chrome chrome_sandbox chromedriver clear_key_cdm policy_templates +%build_target %{builddir} chrome +%build_target %{builddir} chrome_sandbox +%build_target %{builddir} chromedriver +%build_target %{builddir} clear_key_cdm +%build_target %{builddir} policy_templates # remote client -pushd remoting - -# ../../depot_tools/ninja -C ../%{target} -vvv remoting_me2me_host remoting_start_host remoting_it2me_native_messaging_host remoting_me2me_native_messaging_host remoting_native_messaging_manifests remoting_resources -../../depot_tools/ninja -C ../%{remotingtarget} -vvv remoting_all +# ../../depot_tools/ninja -C ../%{builddir} -vvv remoting_me2me_host remoting_start_host remoting_it2me_native_messaging_host remoting_me2me_native_messaging_host remoting_native_messaging_manifests remoting_resources +%build_target %{remotingbuilddir} remoting_all %if 0%{?build_remoting_app} %if 0%{?nacl} -GOOGLE_CLIENT_ID_REMOTING_IDENTITY_API=%{chromoting_client_id} ../../depot_tools/ninja -vv -C ../out/Release/ remoting_webapp +export GOOGLE_CLIENT_ID_REMOTING_IDENTITY_API=%{chromoting_client_id} +%build_target %{builddir} remoting_webapp %endif %endif -popd %endif # Nuke nacl/pnacl bits at the end of the build -rm -rf out/Release/gen/sdk +rm -rf %{builddir}/gen/sdk rm -rf native_client/toolchain rm -rf third_party/llvm-build/* @@ -1470,7 +1479,7 @@ rm -rf %{buildroot} %if 0%{freeworld} mkdir -p %{buildroot}%{chromium_path} -pushd %{target} +pushd %{builddir} cp -a libffmpeg.so* %{buildroot}%{chromium_path} cp -a libmedia.so* %{buildroot}%{chromium_path} mv %{buildroot}%{chromium_path}/libffmpeg.so{,.%{lsuffix}} @@ -1499,7 +1508,7 @@ sed -i "s|@@EXTRA_FLAGS@@|$EXTRA_FLAGS|g" %{buildroot}%{chromium_path}/%{chromiu ln -s %{chromium_path}/%{chromium_browser_channel}.sh %{buildroot}%{_bindir}/%{chromium_browser_channel} mkdir -p %{buildroot}%{_mandir}/man1/ -pushd %{target} +pushd %{builddir} cp -a *.pak locales resources icudtl.dat %{buildroot}%{chromium_path} %if 0%{?nacl} cp -a nacl_helper* *.nexe pnacl tls_edit %{buildroot}%{chromium_path} @@ -1550,7 +1559,7 @@ popd %endif popd -pushd %{remotingtarget} +pushd %{remotingbuilddir} # See remoting/host/installer/linux/Makefile for logic cp -a remoting_native_messaging_host %{buildroot}%{crd_path}/native-messaging-host @@ -1593,7 +1602,7 @@ cp -a remoting_client_plugin_newlib.* %{buildroot}%{chromium_path} %endif %if %{build_headless} -pushd %{headlesstarget} +pushd %{headlessbuilddir} cp -a headless_lib.pak headless_shell %{buildroot}%{chromium_path} popd %endif From 91378b7314afaa749fac68da0f10742ce6339b3b Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Sun, 15 Sep 2019 08:08:54 +0200 Subject: [PATCH 0493/1449] Fix the aarch64 build --- chromium-77.0.3865.75-missing-limits.patch | 28 ++++++++++++++++++++++ chromium.spec | 3 +++ 2 files changed, 31 insertions(+) create mode 100644 chromium-77.0.3865.75-missing-limits.patch diff --git a/chromium-77.0.3865.75-missing-limits.patch b/chromium-77.0.3865.75-missing-limits.patch new file mode 100644 index 0000000..3ac1770 --- /dev/null +++ b/chromium-77.0.3865.75-missing-limits.patch @@ -0,0 +1,28 @@ +From 5baf7df7f4c5971dab552897eeef94b194650ce5 Mon Sep 17 00:00:00 2001 +From: Dave Tapuska +Date: Mon, 12 Aug 2019 22:30:13 +0000 +Subject: [PATCH] Fix build failure due to missing include for std::numeric_limits usage. + +Some configurations fail to build, limits should have been included. + +BUG=992832 + +Change-Id: I894ba0543bfcef101c93259e39a31d12ae6d035c +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1747981 +Commit-Queue: Dave Tapuska +Reviewed-by: Mostyn Bramley-Moore +Cr-Commit-Position: refs/heads/master@{#686214} +--- + +diff --git a/third_party/blink/renderer/platform/exported/web_time_range.cc b/third_party/blink/renderer/platform/exported/web_time_range.cc +index 384566a..68d83e1 100644 +--- a/third_party/blink/renderer/platform/exported/web_time_range.cc ++++ b/third_party/blink/renderer/platform/exported/web_time_range.cc +@@ -31,6 +31,7 @@ + #include "third_party/blink/public/platform/web_time_range.h" + + #include ++#include + + namespace blink { + diff --git a/chromium.spec b/chromium.spec index 247c3e6..0155f8b 100644 --- a/chromium.spec +++ b/chromium.spec @@ -288,6 +288,8 @@ Patch67: chromium-77.0.3865.75-base-gcc-no-alignas.patch Patch68: chromium-77.0.3865.75-harfbuzz-subset.patch # https://chromium.googlesource.com/chromium/src.git/+/f08cb0022527081c078e8b96062e6c9b4fbda151 Patch69: chromium-77.0.3865.75-gcc-abstract-class.patch +# https://chromium.googlesource.com/chromium/src/+/5baf7df7f4c5971dab552897eeef94b194650ce5 +Patch70: chromium-77.0.3865.75-missing-limits.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -853,6 +855,7 @@ udev. %patch67 -p1 -b .base-gcc-no-alignas %patch68 -p1 -b .harfbuzz-subset %patch69 -p1 -b .gcc-abstract-class +%patch70 -p1 -b .missing-limits # EPEL specific patches %if 0%{?rhel} == 7 From 4dcf0591dcdec5b3da92ea722776011dced3b408 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Sun, 15 Sep 2019 08:11:22 +0200 Subject: [PATCH 0494/1449] 22x22 icon was removed and use the symbolic one as well --- chromium.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/chromium.spec b/chromium.spec index 0155f8b..07dc939 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1634,8 +1634,8 @@ mkdir -p %{buildroot}%{_datadir}/icons/hicolor/48x48/apps cp -a chrome/app/theme/chromium/product_logo_48.png %{buildroot}%{_datadir}/icons/hicolor/48x48/apps/%{chromium_browser_channel}.png mkdir -p %{buildroot}%{_datadir}/icons/hicolor/24x24/apps cp -a chrome/app/theme/chromium/product_logo_24.png %{buildroot}%{_datadir}/icons/hicolor/24x24/apps/%{chromium_browser_channel}.png -mkdir -p %{buildroot}%{_datadir}/icons/hicolor/22x22/apps -cp -a chrome/app/theme/chromium/product_logo_22.png %{buildroot}%{_datadir}/icons/hicolor/22x22/apps/%{chromium_browser_channel}.png +mkdir -p %{buildroot}%{_datadir}/icons/hicolor/symbolic/apps +cp -a chrome/app/theme/chromium/product_logo_22_mono.png %{buildroot}%{_datadir}/icons/hicolor/symbolic/apps/%{chromium_browser_channel}.png # Install the master_preferences file mkdir -p %{buildroot}%{_sysconfdir}/%{name} From 2698a79a5d0209e9ab0c131c7c3e076428a29330 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Thu, 12 Sep 2019 17:28:51 +0200 Subject: [PATCH 0495/1449] Update to 77.0.3865.75 Rebase and clean the patches. --- ...um-61.0.3163.79-gcc-no-opt-safe-math.patch | 13 - chromium-68.0.3440.106-boolfix.patch | 36 --- ...mium-72.0.3626.121-fedora-user-agent.patch | 12 - chromium-72.0.3626.121-gcc5-r3.patch | 36 --- chromium-75.0.3770.100-fix-v8-gcc.patch | 14 -- chromium-75.0.3770.80-no-zlib-mangle.patch | 14 -- ...-75.0.3770.80-pure-virtual-crash-fix.patch | 24 -- ...09.100-gcc-accountinfo-move-noexcept.patch | 53 ----- chromium-76.0.3809.100-gcc-cc-no-except.patch | 105 -------- ...0.3809.100-gcc-feature-policy-parser.patch | 76 ------ ...0.3809.100-gcc-hasfraction-constexpr.patch | 32 --- ...0.3809.100-gcc-history-move-noexcept.patch | 42 ---- ....0.3809.100-gcc-initialization-order.patch | 33 --- ...100-gcc-move-explicit-initialization.patch | 97 -------- chromium-76.0.3809.100-gcc-net-fetcher.patch | 63 ----- ...0.3809.100-gcc-themeservice-includes.patch | 36 --- chromium-76.0.3809.100-gcc-vulkan.patch | 115 --------- ...ium-76.0.3809.100-quiche-compile-fix.patch | 225 ------------------ ...m-76.0.3809.100-throttling-dead-beef.patch | 30 --- ...ium-76.0.3809.100-weak-ptr-no-except.patch | 66 ----- ....3809.132-gcc-ambigous-instantiation.patch | 21 -- chromium-77.0.3865.75-boolfix.patch | 24 ++ ...7.0.3865.75-certificate-transparency.patch | 132 +++++----- chromium-77.0.3865.75-fedora-user-agent.patch | 12 + chromium-77.0.3865.75-fix-v8-gcc.patch | 14 ++ ...um-77.0.3865.75-gcc-no-opt-safe-math.patch | 13 + chromium-77.0.3865.75-gcc5-r3.patch | 36 +++ chromium-77.0.3865.75-no-zlib-mangle.patch | 22 ++ chromium.spec | 68 +----- sources | 2 +- 30 files changed, 199 insertions(+), 1267 deletions(-) delete mode 100644 chromium-61.0.3163.79-gcc-no-opt-safe-math.patch delete mode 100644 chromium-68.0.3440.106-boolfix.patch delete mode 100644 chromium-72.0.3626.121-fedora-user-agent.patch delete mode 100644 chromium-72.0.3626.121-gcc5-r3.patch delete mode 100644 chromium-75.0.3770.100-fix-v8-gcc.patch delete mode 100644 chromium-75.0.3770.80-no-zlib-mangle.patch delete mode 100644 chromium-75.0.3770.80-pure-virtual-crash-fix.patch delete mode 100644 chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch delete mode 100644 chromium-76.0.3809.100-gcc-cc-no-except.patch delete mode 100644 chromium-76.0.3809.100-gcc-feature-policy-parser.patch delete mode 100644 chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch delete mode 100644 chromium-76.0.3809.100-gcc-history-move-noexcept.patch delete mode 100644 chromium-76.0.3809.100-gcc-initialization-order.patch delete mode 100644 chromium-76.0.3809.100-gcc-move-explicit-initialization.patch delete mode 100644 chromium-76.0.3809.100-gcc-net-fetcher.patch delete mode 100644 chromium-76.0.3809.100-gcc-themeservice-includes.patch delete mode 100644 chromium-76.0.3809.100-gcc-vulkan.patch delete mode 100644 chromium-76.0.3809.100-quiche-compile-fix.patch delete mode 100644 chromium-76.0.3809.100-throttling-dead-beef.patch delete mode 100644 chromium-76.0.3809.100-weak-ptr-no-except.patch delete mode 100644 chromium-76.0.3809.132-gcc-ambigous-instantiation.patch create mode 100644 chromium-77.0.3865.75-boolfix.patch rename chromium-76.0.3809.132-certificate-transparency.patch => chromium-77.0.3865.75-certificate-transparency.patch (73%) create mode 100644 chromium-77.0.3865.75-fedora-user-agent.patch create mode 100644 chromium-77.0.3865.75-fix-v8-gcc.patch create mode 100644 chromium-77.0.3865.75-gcc-no-opt-safe-math.patch create mode 100644 chromium-77.0.3865.75-gcc5-r3.patch create mode 100644 chromium-77.0.3865.75-no-zlib-mangle.patch diff --git a/chromium-61.0.3163.79-gcc-no-opt-safe-math.patch b/chromium-61.0.3163.79-gcc-no-opt-safe-math.patch deleted file mode 100644 index 183b5ab..0000000 --- a/chromium-61.0.3163.79-gcc-no-opt-safe-math.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -up chromium-61.0.3163.79/base/numerics/safe_math_shared_impl.h.fixgcc3 chromium-61.0.3163.79/base/numerics/safe_math_shared_impl.h ---- chromium-61.0.3163.79/base/numerics/safe_math_shared_impl.h.fixgcc3 2017-09-06 16:30:15.898454585 -0400 -+++ chromium-61.0.3163.79/base/numerics/safe_math_shared_impl.h 2017-09-06 16:30:27.570229539 -0400 -@@ -21,8 +21,7 @@ - #if !defined(__native_client__) && \ - ((defined(__clang__) && \ - ((__clang_major__ > 3) || \ -- (__clang_major__ == 3 && __clang_minor__ >= 4))) || \ -- (defined(__GNUC__) && __GNUC__ >= 5)) -+ (__clang_major__ == 3 && __clang_minor__ >= 4)))) - #include "base/numerics/safe_math_clang_gcc_impl.h" - #define BASE_HAS_OPTIMIZED_SAFE_MATH (1) - #else diff --git a/chromium-68.0.3440.106-boolfix.patch b/chromium-68.0.3440.106-boolfix.patch deleted file mode 100644 index ed22aa9..0000000 --- a/chromium-68.0.3440.106-boolfix.patch +++ /dev/null @@ -1,36 +0,0 @@ -diff -up chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_ptr_info.h ---- chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix 2018-08-09 03:21:23.066802340 -0400 -+++ chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_ptr_info.h 2018-08-09 03:25:10.638595925 -0400 -@@ -45,7 +45,7 @@ class AssociatedInterfacePtrInfo { - - bool is_valid() const { return handle_.is_valid(); } - -- explicit operator bool() const { return handle_.is_valid(); } -+ explicit operator bool() const { return (bool) handle_.is_valid(); } - - ScopedInterfaceEndpointHandle PassHandle() { - return std::move(handle_); -diff -up chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_request.h.boolfix chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_request.h ---- chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_request.h.boolfix 2018-08-09 03:21:23.067802318 -0400 -+++ chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_request.h 2018-08-09 03:24:44.935229067 -0400 -@@ -50,7 +50,7 @@ class AssociatedInterfaceRequest { - // handle. - 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(); } - - ScopedInterfaceEndpointHandle PassHandle() { return std::move(handle_); } - -diff -up chromium-68.0.3440.106/mojo/public/cpp/bindings/interface_request.h.boolfix chromium-68.0.3440.106/mojo/public/cpp/bindings/interface_request.h ---- chromium-68.0.3440.106/mojo/public/cpp/bindings/interface_request.h.boolfix 2018-08-08 15:11:05.000000000 -0400 -+++ chromium-68.0.3440.106/mojo/public/cpp/bindings/interface_request.h 2018-08-09 03:21:23.067802318 -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-72.0.3626.121-fedora-user-agent.patch b/chromium-72.0.3626.121-fedora-user-agent.patch deleted file mode 100644 index 5cef6f0..0000000 --- a/chromium-72.0.3626.121-fedora-user-agent.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-72.0.3626.121/content/common/user_agent.cc.fedora-user-agent chromium-72.0.3626.121/content/common/user_agent.cc ---- chromium-72.0.3626.121/content/common/user_agent.cc.fedora-user-agent 2019-03-10 14:21:02.877454982 -0400 -+++ chromium-72.0.3626.121/content/common/user_agent.cc 2019-03-10 14:22:05.728812272 -0400 -@@ -36,7 +36,7 @@ std::string GetUserAgentPlatform() { - #elif defined(OS_MACOSX) - "Macintosh; "; - #elif defined(USE_X11) || defined(USE_OZONE) -- "X11; "; // strange, but that's what Firefox uses -+ "X11; Fedora; "; // strange, but that's what Firefox uses - #elif defined(OS_ANDROID) - "Linux; "; - #elif defined(OS_POSIX) || defined(OS_FUCHSIA) diff --git a/chromium-72.0.3626.121-gcc5-r3.patch b/chromium-72.0.3626.121-gcc5-r3.patch deleted file mode 100644 index f4cf40b..0000000 --- a/chromium-72.0.3626.121-gcc5-r3.patch +++ /dev/null @@ -1,36 +0,0 @@ -diff -up chromium-72.0.3626.121/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 chromium-72.0.3626.121/gpu/ipc/common/mailbox_struct_traits.h ---- chromium-72.0.3626.121/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 2019-03-01 23:10:21.000000000 -0500 -+++ chromium-72.0.3626.121/gpu/ipc/common/mailbox_struct_traits.h 2019-03-10 14:07:48.300244125 -0400 -@@ -15,7 +15,7 @@ namespace mojo { - template <> - struct StructTraits { - static base::span name(const gpu::Mailbox& mailbox) { -- return mailbox.name; -+ return base::make_span(mailbox.name); - } - static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out); - }; -diff -up chromium-72.0.3626.121/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 chromium-72.0.3626.121/services/viz/public/cpp/compositing/quads_struct_traits.h ---- chromium-72.0.3626.121/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 2019-03-01 23:10:31.000000000 -0500 -+++ chromium-72.0.3626.121/services/viz/public/cpp/compositing/quads_struct_traits.h 2019-03-10 14:07:48.303244046 -0400 -@@ -340,7 +340,7 @@ struct StructTraits vertex_opacity(const viz::DrawQuad& input) { - const viz::TextureDrawQuad* quad = - viz::TextureDrawQuad::MaterialCast(&input); -- return quad->vertex_opacity; -+ return base::make_span(quad->vertex_opacity); - } - - static bool y_flipped(const viz::DrawQuad& input) { -diff -up chromium-72.0.3626.121/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 chromium-72.0.3626.121/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc ---- chromium-72.0.3626.121/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 2019-03-10 14:07:48.307243941 -0400 -+++ chromium-72.0.3626.121/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2019-03-10 14:09:16.565920044 -0400 -@@ -10,7 +10,7 @@ - - #include "modules/audio_processing/aec3/aec_state.h" - --#include -+#include - #include - #include - #include diff --git a/chromium-75.0.3770.100-fix-v8-gcc.patch b/chromium-75.0.3770.100-fix-v8-gcc.patch deleted file mode 100644 index 4a1a4b0..0000000 --- a/chromium-75.0.3770.100-fix-v8-gcc.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -up chromium-75.0.3770.100/v8/src/objects/js-objects.cc.fix-v8-gcc chromium-75.0.3770.100/v8/src/objects/js-objects.cc ---- chromium-75.0.3770.100/v8/src/objects/js-objects.cc.fix-v8-gcc 2019-06-25 10:55:08.132254304 -0400 -+++ chromium-75.0.3770.100/v8/src/objects/js-objects.cc 2019-06-25 10:55:23.147933648 -0400 -@@ -3792,6 +3792,10 @@ void JSObject::ApplyAttributesToDictiona - } - } - -+template void JSObject::ApplyAttributesToDictionary( -+ Isolate* isolate, ReadOnlyRoots roots, Handle dictionary, -+ const PropertyAttributes attributes); -+ - template - Maybe JSObject::PreventExtensionsWithTransition( - Handle object, ShouldThrow should_throw) { diff --git a/chromium-75.0.3770.80-no-zlib-mangle.patch b/chromium-75.0.3770.80-no-zlib-mangle.patch deleted file mode 100644 index 998be67..0000000 --- a/chromium-75.0.3770.80-no-zlib-mangle.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -up chromium-75.0.3770.80/third_party/zlib/zconf.h.nozmangle chromium-75.0.3770.80/third_party/zlib/zconf.h ---- chromium-75.0.3770.80/third_party/zlib/zconf.h.nozmangle 2019-06-05 11:12:30.420412467 -0400 -+++ chromium-75.0.3770.80/third_party/zlib/zconf.h 2019-06-05 11:17:43.512683058 -0400 -@@ -8,10 +8,6 @@ - #ifndef ZCONF_H - #define ZCONF_H - --/* This include does prefixing as below, but with an updated set of names. Also -- * sets up export macros in component builds. */ --#include "chromeconf.h" -- - /* - * If you *really* need a unique prefix for all types and library functions, - * compile with -DZ_PREFIX. The "standard" zlib should be compiled without it. diff --git a/chromium-75.0.3770.80-pure-virtual-crash-fix.patch b/chromium-75.0.3770.80-pure-virtual-crash-fix.patch deleted file mode 100644 index 06c909f..0000000 --- a/chromium-75.0.3770.80-pure-virtual-crash-fix.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff -up chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.cc.pure-virtual-fix chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.cc ---- chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.cc.pure-virtual-fix 2019-06-07 15:03:43.302202979 -0400 -+++ chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.cc 2019-06-07 15:04:25.140393048 -0400 -@@ -116,4 +116,9 @@ void RenderProcessUserData::RenderProces - base::Unretained(process_node_.get()), info.exit_code)); - } - -+void RenderProcessUserData::RenderProcessHostDestroyed( -+ content::RenderProcessHost* host) { -+ host->RemoveUserData(kRenderProcessUserDataKey); -+} -+ - } // namespace performance_manager -diff -up chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.h.pure-virtual-fix chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.h ---- chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.h.pure-virtual-fix 2019-06-07 15:04:43.530039597 -0400 -+++ chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.h 2019-06-07 15:05:13.770458374 -0400 -@@ -47,6 +47,7 @@ class RenderProcessUserData : public bas - 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. diff --git a/chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch b/chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch deleted file mode 100644 index 5f45a8f..0000000 --- a/chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch +++ /dev/null @@ -1,53 +0,0 @@ -From 719df31ffd4d52b473509cf77acd9c02ec112acb Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Tue, 04 Jun 2019 18:38:12 +0200 -Subject: [PATCH] GCC: fix noexcept from move constructor and assign operators of AccountInfo - -AccountInfo declares them as noexcept and uses default implementation, -so all its members (including AccountId) should be noexcept. But AccountId -is not noexcept. To fix it we just need to make CoreAccountId move -operator/assign operator noexcept. - -Bug: 819294 -Change-Id: Ice38654ab7cf3b9eaa6f54aa36e1fec329264f98 ---- - -diff --git a/google_apis/gaia/core_account_id.cc b/google_apis/gaia/core_account_id.cc -index d808082..12eefe3 100644 ---- a/google_apis/gaia/core_account_id.cc -+++ b/google_apis/gaia/core_account_id.cc -@@ -6,8 +6,16 @@ - - CoreAccountId::CoreAccountId() = default; - -+CoreAccountId::CoreAccountId(const CoreAccountId&) = default; -+ -+CoreAccountId::CoreAccountId(CoreAccountId&&) noexcept = default; -+ - CoreAccountId::~CoreAccountId() = default; - -+CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; -+ -+CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) noexcept = default; -+ - CoreAccountId::CoreAccountId(const char* id) : id(id) {} - - CoreAccountId::CoreAccountId(std::string&& id) : id(std::move(id)) {} -diff --git a/google_apis/gaia/core_account_id.h b/google_apis/gaia/core_account_id.h -index 5ea602a..c2d1911 100644 ---- a/google_apis/gaia/core_account_id.h -+++ b/google_apis/gaia/core_account_id.h -@@ -14,8 +14,13 @@ - // for design and tracking). - struct CoreAccountId { - CoreAccountId(); -+ CoreAccountId(const CoreAccountId&); -+ CoreAccountId(CoreAccountId&&) noexcept; - ~CoreAccountId(); - -+ CoreAccountId& operator=(const CoreAccountId&); -+ CoreAccountId& operator=(CoreAccountId&&) noexcept; -+ - // Those implicit constructor and conversion operator allow to - // progressively migrate the code to use this struct. Removing - // them is tracked by https://crbug.com/959161 diff --git a/chromium-76.0.3809.100-gcc-cc-no-except.patch b/chromium-76.0.3809.100-gcc-cc-no-except.patch deleted file mode 100644 index e4d754a..0000000 --- a/chromium-76.0.3809.100-gcc-cc-no-except.patch +++ /dev/null @@ -1,105 +0,0 @@ -From 84c91abab33966f928497c24db4a39f436d2dca8 Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Fri, 07 Jun 2019 09:50:11 +0000 -Subject: [PATCH] Make SharedMemoryMapping move constructor noexcept - -As LayerTreeHostImpl::UIResourceData move constructor is declared -noexcept with default implementation, the move constructor of its -members should also be noexcept. GCC will fail to build otherwise -for mismatching noexcept declaration. - -We also set the move assignment operator. - -Bug: 819294 -Change-Id: Icd663da83b882e15f7d16780c9241972e09bc492 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645297 -Commit-Queue: José Dapena Paz -Reviewed-by: Daniel Cheng -Cr-Commit-Position: refs/heads/master@{#667064} ---- - -diff --git a/base/memory/shared_memory_mapping.cc b/base/memory/shared_memory_mapping.cc -index 2be2570..8426fa8 100644 ---- a/base/memory/shared_memory_mapping.cc -+++ b/base/memory/shared_memory_mapping.cc -@@ -33,7 +33,7 @@ - - SharedMemoryMapping::SharedMemoryMapping() = default; - --SharedMemoryMapping::SharedMemoryMapping(SharedMemoryMapping&& mapping) -+SharedMemoryMapping::SharedMemoryMapping(SharedMemoryMapping&& mapping) noexcept - : memory_(mapping.memory_), - size_(mapping.size_), - mapped_size_(mapping.mapped_size_), -@@ -42,7 +42,7 @@ - } - - SharedMemoryMapping& SharedMemoryMapping::operator=( -- SharedMemoryMapping&& mapping) { -+ SharedMemoryMapping&& mapping) noexcept { - Unmap(); - memory_ = mapping.memory_; - size_ = mapping.size_; -@@ -90,9 +90,9 @@ - - ReadOnlySharedMemoryMapping::ReadOnlySharedMemoryMapping() = default; - ReadOnlySharedMemoryMapping::ReadOnlySharedMemoryMapping( -- ReadOnlySharedMemoryMapping&&) = default; -+ ReadOnlySharedMemoryMapping&&) noexcept = default; - ReadOnlySharedMemoryMapping& ReadOnlySharedMemoryMapping::operator=( -- ReadOnlySharedMemoryMapping&&) = default; -+ ReadOnlySharedMemoryMapping&&) noexcept = default; - ReadOnlySharedMemoryMapping::ReadOnlySharedMemoryMapping( - void* address, - size_t size, -@@ -102,9 +102,9 @@ - - WritableSharedMemoryMapping::WritableSharedMemoryMapping() = default; - WritableSharedMemoryMapping::WritableSharedMemoryMapping( -- WritableSharedMemoryMapping&&) = default; -+ WritableSharedMemoryMapping&&) noexcept = default; - WritableSharedMemoryMapping& WritableSharedMemoryMapping::operator=( -- WritableSharedMemoryMapping&&) = default; -+ WritableSharedMemoryMapping&&) noexcept = default; - WritableSharedMemoryMapping::WritableSharedMemoryMapping( - void* address, - size_t size, -diff --git a/base/memory/shared_memory_mapping.h b/base/memory/shared_memory_mapping.h -index d9569af..2b8858e 100644 ---- a/base/memory/shared_memory_mapping.h -+++ b/base/memory/shared_memory_mapping.h -@@ -32,8 +32,8 @@ - SharedMemoryMapping(); - - // Move operations are allowed. -- SharedMemoryMapping(SharedMemoryMapping&& mapping); -- SharedMemoryMapping& operator=(SharedMemoryMapping&& mapping); -+ SharedMemoryMapping(SharedMemoryMapping&& mapping) noexcept; -+ SharedMemoryMapping& operator=(SharedMemoryMapping&& mapping) noexcept; - - // Unmaps the region if the mapping is valid. - virtual ~SharedMemoryMapping(); -@@ -93,8 +93,9 @@ - ReadOnlySharedMemoryMapping(); - - // Move operations are allowed. -- ReadOnlySharedMemoryMapping(ReadOnlySharedMemoryMapping&&); -- ReadOnlySharedMemoryMapping& operator=(ReadOnlySharedMemoryMapping&&); -+ ReadOnlySharedMemoryMapping(ReadOnlySharedMemoryMapping&&) noexcept; -+ ReadOnlySharedMemoryMapping& operator=( -+ ReadOnlySharedMemoryMapping&&) noexcept; - - // Returns the base address of the mapping. This is read-only memory. This is - // page-aligned. This is nullptr for invalid instances. -@@ -171,8 +172,9 @@ - WritableSharedMemoryMapping(); - - // Move operations are allowed. -- WritableSharedMemoryMapping(WritableSharedMemoryMapping&&); -- WritableSharedMemoryMapping& operator=(WritableSharedMemoryMapping&&); -+ WritableSharedMemoryMapping(WritableSharedMemoryMapping&&) noexcept; -+ WritableSharedMemoryMapping& operator=( -+ WritableSharedMemoryMapping&&) noexcept; - - // Returns the base address of the mapping. This is writable memory. This is - // page-aligned. This is nullptr for invalid instances. diff --git a/chromium-76.0.3809.100-gcc-feature-policy-parser.patch b/chromium-76.0.3809.100-gcc-feature-policy-parser.patch deleted file mode 100644 index 0dbffd5..0000000 --- a/chromium-76.0.3809.100-gcc-feature-policy-parser.patch +++ /dev/null @@ -1,76 +0,0 @@ -From 0aca7b8dea0f52ba7bd58dfce4ac236ee60670a8 Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Tue, 04 Jun 2019 19:44:58 +0200 -Subject: [PATCH] GCC: FeaturePolicyParser ParseValueForFuzzer is not in anonymous namespace - -Compilation fails because we are declaring ParseValueForFuzzer as friend method, -but we are declaring it is in anonymous namespace. Moving to global namespace -still fails (in this case in Clang). - -So final solution is making it a public static method of FeaturePolicyParser. - -Bug: 819294 -Change-Id: Iea307cb6faef675b748d6eb5da2175dcbb17fdc7 ---- - -diff --git a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc -index 3b7f4a9..eaee409 100644 ---- a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc -+++ b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc -@@ -317,6 +317,13 @@ - return value; - } - -+void FeaturePolicyParser::ParseValueForFuzzer( -+ blink::mojom::PolicyValueType feature_type, -+ const WTF::String& value_string) { -+ bool ok; -+ ParseValueForType(feature_type, value_string, &ok); -+} -+ - bool IsFeatureDeclared(mojom::FeaturePolicyFeature feature, - const ParsedFeaturePolicy& policy) { - return std::any_of(policy.begin(), policy.end(), -diff --git a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h -index fd25d90..36af405 100644 ---- a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h -+++ b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h -@@ -16,9 +16,6 @@ - #include "third_party/blink/renderer/platform/wtf/text/wtf_string.h" - #include "third_party/blink/renderer/platform/wtf/vector.h" - --// Forward declare for friendship. --void ParseValueForFuzzer(blink::mojom::PolicyValueType, const WTF::String&); -- - namespace blink { - - class Document; -@@ -79,8 +76,9 @@ - const FeatureNameMap& feature_names, - ExecutionContext* execution_context = nullptr); - -+ static void ParseValueForFuzzer(mojom::PolicyValueType, const String&); -+ - private: -- friend void ::ParseValueForFuzzer(mojom::PolicyValueType, const String&); - static PolicyValue GetFallbackValueForFeature( - mojom::FeaturePolicyFeature feature); - static PolicyValue ParseValueForType(mojom::PolicyValueType feature_type, -diff --git a/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc b/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc -index 7f8e6aa..53350e43 100644 ---- a/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc -+++ b/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc -@@ -23,9 +23,9 @@ - extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) { - static blink::BlinkFuzzerTestSupport test_support = - blink::BlinkFuzzerTestSupport(); -- ParseValueForFuzzer(blink::mojom::PolicyValueType::kBool, -- WTF::String(data, size)); -- ParseValueForFuzzer(blink::mojom::PolicyValueType::kDecDouble, -- WTF::String(data, size)); -+ blink::FeaturePolicyParser::ParseValueForFuzzer( -+ blink::mojom::PolicyValueType::kBool, WTF::String(data, size)); -+ blink::FeaturePolicyParser::ParseValueForFuzzer( -+ blink::mojom::PolicyValueType::kDecDouble, WTF::String(data, size)); - return 0; - } diff --git a/chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch b/chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch deleted file mode 100644 index 26bba05..0000000 --- a/chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch +++ /dev/null @@ -1,32 +0,0 @@ -From cf6d6b40d711fce93a24a2cf517fa3becdbae8bb Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Wed, 05 Jun 2019 17:18:40 +0000 -Subject: [PATCH] Make blink::LayoutUnit::HasFraction constexpr - -Other HasFraction methods as in PhysicalUnit are declared already -constexpr and using it. It breaks GCC build. - -Bug: 819294. -Change-Id: I0c4bd9bd206d45cf31f7fa815ce8533718a425cb -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645222 -Reviewed-by: vmpstr -Reviewed-by: Xianzhu Wang -Commit-Queue: José Dapena Paz -Cr-Commit-Position: refs/heads/master@{#666336} ---- - -diff --git a/third_party/blink/renderer/platform/geometry/layout_unit.h b/third_party/blink/renderer/platform/geometry/layout_unit.h -index f073986..b6dbc76 100644 ---- a/third_party/blink/renderer/platform/geometry/layout_unit.h -+++ b/third_party/blink/renderer/platform/geometry/layout_unit.h -@@ -202,7 +202,9 @@ - return value_ > 0 ? LayoutUnit() : *this; - } - -- bool HasFraction() const { return RawValue() % kFixedPointDenominator; } -+ constexpr bool HasFraction() const { -+ return RawValue() % kFixedPointDenominator; -+ } - - LayoutUnit Fraction() const { - // Compute fraction using the mod operator to preserve the sign of the value diff --git a/chromium-76.0.3809.100-gcc-history-move-noexcept.patch b/chromium-76.0.3809.100-gcc-history-move-noexcept.patch deleted file mode 100644 index 2876de4..0000000 --- a/chromium-76.0.3809.100-gcc-history-move-noexcept.patch +++ /dev/null @@ -1,42 +0,0 @@ -From abe74a7f0c53a43a9706a42d71b7ff4a5da53380 Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Tue, 11 Jun 2019 10:27:19 +0200 -Subject: [PATCH] GCC: add noexcept move assignment in history::URLRow - -In GCC, build is failing because history::QueryURLResult declares its move -assignment operator as noexcept using default implementation. That requires -its members to provide a move assignment operator that is noexcept too. - -But URLRow was missing noexcept declaration in move assignment operator (even -though it was providing noexcept to its move constructor). - -Bug: 819294 -Change-Id: I726e3cf7a4a50c9206a5d0fba8a561d363483d4f ---- - -diff --git a/components/history/core/browser/url_row.cc b/components/history/core/browser/url_row.cc -index 44c22fd..aec0101 100644 ---- a/components/history/core/browser/url_row.cc -+++ b/components/history/core/browser/url_row.cc -@@ -26,7 +26,7 @@ - } - - URLRow& URLRow::operator=(const URLRow& other) = default; --URLRow& URLRow::operator=(URLRow&& other) = default; -+URLRow& URLRow::operator=(URLRow&& other) noexcept = default; - - void URLRow::Swap(URLRow* other) { - std::swap(id_, other->id_); -diff --git a/components/history/core/browser/url_row.h b/components/history/core/browser/url_row.h -index 8f6f9cf..31a1ef8 100644 ---- a/components/history/core/browser/url_row.h -+++ b/components/history/core/browser/url_row.h -@@ -35,7 +35,7 @@ - - virtual ~URLRow(); - URLRow& operator=(const URLRow& other); -- URLRow& operator=(URLRow&& other); -+ URLRow& operator=(URLRow&& other) noexcept; - - URLID id() const { return id_; } - diff --git a/chromium-76.0.3809.100-gcc-initialization-order.patch b/chromium-76.0.3809.100-gcc-initialization-order.patch deleted file mode 100644 index 3bf394f..0000000 --- a/chromium-76.0.3809.100-gcc-initialization-order.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 7dc76c8d9f4cfbce7cf11424120aa6f6094916dc Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Wed, 05 Jun 2019 21:09:01 +0000 -Subject: [PATCH] GCC: XSetWindowAttributes struct initialization should keep order of declaration - -XSetWindowAttributes initialization of attributes in GLSurfaceGLX is not in the -same order of the declaration. GCC fails because of that. - -Bug: 819294 -Change-Id: I8a97da980d5961a35a47ae4d0d8d558b85291f1f -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1646253 -Reviewed-by: Zhenyao Mo -Commit-Queue: José Dapena Paz -Cr-Commit-Position: refs/heads/master@{#666436} ---- - -diff --git a/ui/gl/gl_surface_glx.cc b/ui/gl/gl_surface_glx.cc -index f649dd4..0aa6892 100644 ---- a/ui/gl/gl_surface_glx.cc -+++ b/ui/gl/gl_surface_glx.cc -@@ -583,10 +583,10 @@ - - XSetWindowAttributes swa = { - .background_pixmap = 0, -- .bit_gravity = NorthWestGravity, -- .colormap = g_colormap, - .background_pixel = 0, // ARGB(0,0,0,0) for compositing WM - .border_pixel = 0, -+ .bit_gravity = NorthWestGravity, -+ .colormap = g_colormap, - }; - auto value_mask = CWBackPixmap | CWBitGravity | CWColormap | CWBorderPixel; - if (ui::IsCompositingManagerPresent() && diff --git a/chromium-76.0.3809.100-gcc-move-explicit-initialization.patch b/chromium-76.0.3809.100-gcc-move-explicit-initialization.patch deleted file mode 100644 index 1d4b90f..0000000 --- a/chromium-76.0.3809.100-gcc-move-explicit-initialization.patch +++ /dev/null @@ -1,97 +0,0 @@ -From dcb55fb8f18abe5f43d260aa67b14b2dc996f992 Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Tue, 11 Jun 2019 08:00:13 +0000 -Subject: [PATCH] GCC: move explicit specialization out of RunInfo - -Explicit specialization in non-namespace scope is not allowed in C++, and GCC breaks -build because of that. Move the template specializations out of RunInfo declaration -in shape_result_inline_headeres.h to fix the GCC build issue. - -Bug: 819294 -Change-Id: Id083852bcf8e9efbdc911fdad28fd8767d2905d0 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1651728 -Reviewed-by: Kinuko Yasuda -Commit-Queue: José Dapena Paz -Cr-Commit-Position: refs/heads/master@{#667901} ---- - -diff --git a/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h b/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h -index 76ee6091..c14d3a0 100644 ---- a/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h -+++ b/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h -@@ -251,37 +251,6 @@ - template - struct iterator final {}; - -- // For non-zero glyph offset array -- template <> -- struct iterator final { -- // The constructor for ShapeResult -- explicit iterator(const GlyphOffsetArray& array) -- : pointer(array.storage_.get()) { -- DCHECK(pointer); -- } -- -- // The constructor for ShapeResultView -- explicit iterator(const GlyphDataRange& range) : pointer(range.offsets) { -- DCHECK(pointer); -- } -- -- GlyphOffset operator*() const { return *pointer; } -- void operator++() { ++pointer; } -- -- const GlyphOffset* pointer; -- }; -- -- // For zero glyph offset array -- template <> -- struct iterator final { -- explicit iterator(const GlyphOffsetArray& array) { -- DCHECK(!array.HasStorage()); -- } -- explicit iterator(const GlyphDataRange& range) { DCHECK(!range.offsets); } -- GlyphOffset operator*() const { return GlyphOffset(); } -- void operator++() {} -- }; -- - template - iterator GetIterator() const { - return iterator(*this); -@@ -495,6 +464,37 @@ - float width_; - }; - -+// For non-zero glyph offset array -+template <> -+struct ShapeResult::RunInfo::GlyphOffsetArray::iterator final { -+ // The constructor for ShapeResult -+ explicit iterator(const GlyphOffsetArray& array) -+ : pointer(array.storage_.get()) { -+ DCHECK(pointer); -+ } -+ -+ // The constructor for ShapeResultView -+ explicit iterator(const GlyphDataRange& range) : pointer(range.offsets) { -+ DCHECK(pointer); -+ } -+ -+ GlyphOffset operator*() const { return *pointer; } -+ void operator++() { ++pointer; } -+ -+ const GlyphOffset* pointer; -+}; -+ -+// For zero glyph offset array -+template <> -+struct ShapeResult::RunInfo::GlyphOffsetArray::iterator final { -+ explicit iterator(const GlyphOffsetArray& array) { -+ DCHECK(!array.HasStorage()); -+ } -+ explicit iterator(const GlyphDataRange& range) { DCHECK(!range.offsets); } -+ GlyphOffset operator*() const { return GlyphOffset(); } -+ void operator++() {} -+}; -+ - // Find the range of HarfBuzzRunGlyphData for the specified character index - // range. This function uses binary search twice, hence O(2 log n). - inline ShapeResult::RunInfo::GlyphDataRange diff --git a/chromium-76.0.3809.100-gcc-net-fetcher.patch b/chromium-76.0.3809.100-gcc-net-fetcher.patch deleted file mode 100644 index bc0ed98..0000000 --- a/chromium-76.0.3809.100-gcc-net-fetcher.patch +++ /dev/null @@ -1,63 +0,0 @@ -From 502e6e42633d2571c8236c8649b031fe9915eb5b Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Tue, 11 Jun 2019 16:56:27 +0000 -Subject: [PATCH] GCC: CertNetFetcherImpl declares Job as a friend but it is in the anonymous namespace - -GCC does not allow friendship declaration to anonymous namespace as done with Job -object in the CertNetFetcherImpl. This fix removes the friend declaration, and just -makes RemoveJob method public, that was the only reason to make Job a friend. - -Error was: -./../net/cert_net/cert_net_fetcher_impl.cc: In member function ‘void net::{anonymous}::Job::DetachRequest(net::CertNetFetcherImpl::RequestCore*)’: -../../net/cert_net/cert_net_fetcher_impl.cc:458:42: error: ‘std::unique_ptr net::CertNetFetcherImpl::AsyncCertNetFetcherImpl::RemoveJob(net::{anonymous}::Job*)’ is private within this context - delete_this = parent_->RemoveJob(this); - ^ -../../net/cert_net/cert_net_fetcher_impl.cc:151:24: note: declared private here - std::unique_ptr RemoveJob(Job* job); - ^~~~~~~~~ -../../net/cert_net/cert_net_fetcher_impl.cc: In member function ‘void net::{anonymous}::Job::OnJobCompleted(net::Error)’: -../../net/cert_net/cert_net_fetcher_impl.cc:610:61: error: ‘std::unique_ptr net::CertNetFetcherImpl::AsyncCertNetFetcherImpl::RemoveJob(net::{anonymous}::Job*)’ is private within this context - std::unique_ptr delete_this = parent_->RemoveJob(this); - ^ -../../net/cert_net/cert_net_fetcher_impl.cc:151:24: note: declared private here - std::unique_ptr RemoveJob(Job* job); - ^~~~~~~~~ - -Bug: 819294 -Change-Id: I3609f4558e570741395366de6a4cd40577d91450 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1651783 -Commit-Queue: Eric Roman -Reviewed-by: Eric Roman -Cr-Commit-Position: refs/heads/master@{#668015} ---- - -diff --git a/net/cert_net/cert_net_fetcher_impl.cc b/net/cert_net/cert_net_fetcher_impl.cc -index 11a1166..349c656 100644 ---- a/net/cert_net/cert_net_fetcher_impl.cc -+++ b/net/cert_net/cert_net_fetcher_impl.cc -@@ -135,21 +135,19 @@ - void Fetch(std::unique_ptr request_params, - scoped_refptr request); - -+ // Removes |job| from the in progress jobs and transfers ownership to the -+ // caller. -+ std::unique_ptr RemoveJob(Job* job); -+ - // Cancels outstanding jobs, which stops network requests and signals the - // corresponding RequestCores that the requests have completed. - void Shutdown(); - - private: -- friend class Job; -- - // Finds a job with a matching RequestPararms or returns nullptr if there was - // no match. - Job* FindJob(const RequestParams& params); - -- // Removes |job| from the in progress jobs and transfers ownership to the -- // caller. -- std::unique_ptr RemoveJob(Job* job); -- - // The in-progress jobs. This set does not contain the job which is actively - // invoking callbacks (OnJobCompleted). - JobSet jobs_; diff --git a/chromium-76.0.3809.100-gcc-themeservice-includes.patch b/chromium-76.0.3809.100-gcc-themeservice-includes.patch deleted file mode 100644 index ad40bb9..0000000 --- a/chromium-76.0.3809.100-gcc-themeservice-includes.patch +++ /dev/null @@ -1,36 +0,0 @@ -From d08ea83acc2f5ff395c1fe54f52687e92fe51c3b Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Tue, 04 Jun 2019 22:01:03 +0200 -Subject: [PATCH] IWYU: ThemeService requires NativeTheme - -As ThemeService referes to NativeTheme through a ScopedObserver, -the full declaration is required. - -Bug: 819294 -Change-Id: I9d5bd2e87cfaa76e87f9b5509daea24848906a63 ---- - -diff --git a/chrome/browser/themes/theme_service.cc b/chrome/browser/themes/theme_service.cc -index d65388e2..23dc86d 100644 ---- a/chrome/browser/themes/theme_service.cc -+++ b/chrome/browser/themes/theme_service.cc -@@ -54,7 +54,6 @@ - #include "ui/gfx/color_palette.h" - #include "ui/gfx/image/image_skia.h" - #include "ui/native_theme/common_theme.h" --#include "ui/native_theme/native_theme.h" - - #if BUILDFLAG(ENABLE_EXTENSIONS) - #include "base/scoped_observer.h" -diff --git a/chrome/browser/themes/theme_service.h b/chrome/browser/themes/theme_service.h -index 6c79c72..f93dc0d 100644 ---- a/chrome/browser/themes/theme_service.h -+++ b/chrome/browser/themes/theme_service.h -@@ -25,6 +25,7 @@ - #include "extensions/buildflags/buildflags.h" - #include "extensions/common/extension_id.h" - #include "ui/base/theme_provider.h" -+#include "ui/native_theme/native_theme.h" - #include "ui/native_theme/native_theme_observer.h" - - class BrowserThemePack; diff --git a/chromium-76.0.3809.100-gcc-vulkan.patch b/chromium-76.0.3809.100-gcc-vulkan.patch deleted file mode 100644 index cf93bce..0000000 --- a/chromium-76.0.3809.100-gcc-vulkan.patch +++ /dev/null @@ -1,115 +0,0 @@ -From fdb3bb1f8c41d044a5b0cb80257a26dd3c8f83a3 Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Tue, 11 Jun 2019 17:39:38 +0000 -Subject: [PATCH] GCC: do not use old C notation to assign struct with property names. - -The notation for initialization of structs referring to its properties -is invalid in C++. This is not accepted in GCC. It was making build -fail in VulkanCommandBuffer. - -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc: In member function 'void gpu::VulkanCommandBuffer::TransitionImageLayout(VkImage, VkImageLayout, VkImageLayout)': -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:214:7: error: expected primary-expression before '.' token - .subresourceRange.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT, - ^ -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:215:7: error: expected primary-expression before '.' token - .subresourceRange.baseMipLevel = 0, - ^ -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:216:7: error: expected primary-expression before '.' token - .subresourceRange.levelCount = 1, - ^ -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:217:7: error: expected primary-expression before '.' token - .subresourceRange.baseArrayLayer = 0, - ^ -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:218:7: error: expected primary-expression before '.' token - .subresourceRange.layerCount = 1, - ^ -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc: In member function 'void gpu::VulkanCommandBuffer::CopyBufferToImage(VkBuffer, VkImage, uint32_t, uint32_t, uint32_t, uint32_t)': -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:235:7: error: expected primary-expression before '.' token - .imageSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT, - ^ -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:236:7: error: expected primary-expression before '.' token - .imageSubresource.mipLevel = 0, - ^ -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:237:7: error: expected primary-expression before '.' token - .imageSubresource.baseArrayLayer = 0, - ^ -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:238:7: error: expected primary-expression before '.' token - .imageSubresource.layerCount = 1, - ^ -Bug: 819294 - -Change-Id: I999abece0c727e77964789183642ba62009c2c22 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1651802 -Commit-Queue: José Dapena Paz -Reviewed-by: Antoine Labour -Cr-Commit-Position: refs/heads/master@{#668033} ---- - -diff --git a/gpu/vulkan/vulkan_command_buffer.cc b/gpu/vulkan/vulkan_command_buffer.cc -index ba776e4..4f14c85 100644 ---- a/gpu/vulkan/vulkan_command_buffer.cc -+++ b/gpu/vulkan/vulkan_command_buffer.cc -@@ -207,21 +207,20 @@ - void VulkanCommandBuffer::TransitionImageLayout(VkImage image, - VkImageLayout old_layout, - VkImageLayout new_layout) { -- VkImageMemoryBarrier barrier = { -- .sType = VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER, -- .srcAccessMask = GetAccessMask(old_layout), -- .dstAccessMask = GetAccessMask(new_layout), -- .oldLayout = old_layout, -- .newLayout = new_layout, -- .srcQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED, -- .dstQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED, -- .image = image, -- .subresourceRange.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT, -- .subresourceRange.baseMipLevel = 0, -- .subresourceRange.levelCount = 1, -- .subresourceRange.baseArrayLayer = 0, -- .subresourceRange.layerCount = 1, -- }; -+ VkImageMemoryBarrier barrier = {}; -+ barrier.sType = VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER; -+ barrier.srcAccessMask = GetAccessMask(old_layout); -+ barrier.dstAccessMask = GetAccessMask(new_layout); -+ barrier.oldLayout = old_layout; -+ barrier.newLayout = new_layout; -+ barrier.srcQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED; -+ barrier.dstQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED; -+ barrier.image = image; -+ barrier.subresourceRange.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT; -+ barrier.subresourceRange.baseMipLevel = 0; -+ barrier.subresourceRange.levelCount = 1; -+ barrier.subresourceRange.baseArrayLayer = 0; -+ barrier.subresourceRange.layerCount = 1; - vkCmdPipelineBarrier(command_buffer_, GetPipelineStageFlags(old_layout), - GetPipelineStageFlags(new_layout), 0, 0, nullptr, 0, - nullptr, 1, &barrier); -@@ -233,17 +232,16 @@ - uint32_t buffer_height, - uint32_t width, - uint32_t height) { -- VkBufferImageCopy region = { -- .bufferOffset = 0, -- .bufferRowLength = buffer_width, -- .bufferImageHeight = buffer_height, -- .imageSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT, -- .imageSubresource.mipLevel = 0, -- .imageSubresource.baseArrayLayer = 0, -- .imageSubresource.layerCount = 1, -- .imageOffset = {0, 0, 0}, -- .imageExtent = {width, height, 1}, -- }; -+ VkBufferImageCopy region = {}; -+ region.bufferOffset = 0; -+ region.bufferRowLength = buffer_width; -+ region.bufferImageHeight = buffer_height; -+ region.imageSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT; -+ region.imageSubresource.mipLevel = 0; -+ region.imageSubresource.baseArrayLayer = 0; -+ region.imageSubresource.layerCount = 1; -+ region.imageOffset = {0, 0, 0}; -+ region.imageExtent = {width, height, 1}; - vkCmdCopyBufferToImage(command_buffer_, buffer, image, - VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, 1, ®ion); - } diff --git a/chromium-76.0.3809.100-quiche-compile-fix.patch b/chromium-76.0.3809.100-quiche-compile-fix.patch deleted file mode 100644 index 98789d9..0000000 --- a/chromium-76.0.3809.100-quiche-compile-fix.patch +++ /dev/null @@ -1,225 +0,0 @@ -diff -up chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc.quiche-compile-fix chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc ---- chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc.quiche-compile-fix 2019-08-14 09:58:07.721193200 +0200 -+++ chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc 2019-08-14 09:59:33.131041525 +0200 -@@ -62,37 +62,37 @@ const size_t kStatelessResetTokenLength - std::string TransportParameterIdToString( - TransportParameters::TransportParameterId param_id) { - switch (param_id) { -- case kOriginalConnectionId: -+ case TransportParameters::kOriginalConnectionId: - return "original_connection_id"; -- case kIdleTimeout: -+ case TransportParameters::kIdleTimeout: - return "idle_timeout"; -- case kStatelessResetToken: -+ case TransportParameters::kStatelessResetToken: - return "stateless_reset_token"; -- case kMaxPacketSize: -+ case TransportParameters::kMaxPacketSize: - return "max_packet_size"; -- case kInitialMaxData: -+ case TransportParameters::kInitialMaxData: - return "initial_max_data"; -- case kInitialMaxStreamDataBidiLocal: -+ case TransportParameters::kInitialMaxStreamDataBidiLocal: - return "initial_max_stream_data_bidi_local"; -- case kInitialMaxStreamDataBidiRemote: -+ case TransportParameters::kInitialMaxStreamDataBidiRemote: - return "initial_max_stream_data_bidi_remote"; -- case kInitialMaxStreamDataUni: -+ case TransportParameters::kInitialMaxStreamDataUni: - return "initial_max_stream_data_uni"; -- case kInitialMaxStreamsBidi: -+ case TransportParameters::kInitialMaxStreamsBidi: - return "initial_max_streams_bidi"; -- case kInitialMaxStreamsUni: -+ case TransportParameters::kInitialMaxStreamsUni: - return "initial_max_streams_uni"; -- case kAckDelayExponent: -+ case TransportParameters::kAckDelayExponent: - return "ack_delay_exponent"; -- case kMaxAckDelay: -+ case TransportParameters::kMaxAckDelay: - return "max_ack_delay"; -- case kDisableMigration: -+ case TransportParameters::kDisableMigration: - return "disable_migration"; -- case kPreferredAddress: -+ case TransportParameters::kPreferredAddress: - return "preferred_address"; -- case kGoogleQuicParam: -+ case TransportParameters::kGoogleQuicParam: - return "google"; -- case kGoogleQuicVersion: -+ case TransportParameters::kGoogleQuicVersion: - return "google-version"; - } - return "Unknown(" + QuicTextUtils::Uint64ToString(param_id) + ")"; -@@ -390,7 +390,7 @@ bool SerializeTransportParameters(const - CBB original_connection_id_param; - if (!in.original_connection_id.IsEmpty()) { - DCHECK_EQ(Perspective::IS_SERVER, in.perspective); -- if (!CBB_add_u16(¶ms, kOriginalConnectionId) || -+ if (!CBB_add_u16(¶ms, TransportParameters::kOriginalConnectionId) || - !CBB_add_u16_length_prefixed(¶ms, &original_connection_id_param) || - !CBB_add_bytes( - &original_connection_id_param, -@@ -412,7 +412,7 @@ bool SerializeTransportParameters(const - if (!in.stateless_reset_token.empty()) { - DCHECK_EQ(kStatelessResetTokenLength, in.stateless_reset_token.size()); - DCHECK_EQ(Perspective::IS_SERVER, in.perspective); -- if (!CBB_add_u16(¶ms, kStatelessResetToken) || -+ if (!CBB_add_u16(¶ms, TransportParameters::kStatelessResetToken) || - !CBB_add_u16_length_prefixed(¶ms, &stateless_reset_token_param) || - !CBB_add_bytes(&stateless_reset_token_param, - in.stateless_reset_token.data(), -@@ -438,7 +438,7 @@ bool SerializeTransportParameters(const - - // disable_migration - if (in.disable_migration) { -- if (!CBB_add_u16(¶ms, kDisableMigration) || -+ if (!CBB_add_u16(¶ms, TransportParameters::kDisableMigration) || - !CBB_add_u16(¶ms, 0u)) { // 0 is the length of this parameter. - QUIC_BUG << "Failed to write disable_migration for " << in; - return false; -@@ -458,7 +458,7 @@ bool SerializeTransportParameters(const - QUIC_BUG << "Bad lengths " << *in.preferred_address; - return false; - } -- if (!CBB_add_u16(¶ms, kPreferredAddress) || -+ if (!CBB_add_u16(¶ms, TransportParameters::kPreferredAddress) || - !CBB_add_u16_length_prefixed(¶ms, &preferred_address_params) || - !CBB_add_bytes( - &preferred_address_params, -@@ -491,7 +491,7 @@ bool SerializeTransportParameters(const - if (in.google_quic_params) { - const QuicData& serialized_google_quic_params = - in.google_quic_params->GetSerialized(); -- if (!CBB_add_u16(¶ms, kGoogleQuicParam) || -+ if (!CBB_add_u16(¶ms, TransportParameters::kGoogleQuicParam) || - !CBB_add_u16_length_prefixed(¶ms, &google_quic_params) || - !CBB_add_bytes(&google_quic_params, - reinterpret_cast( -@@ -505,7 +505,7 @@ bool SerializeTransportParameters(const - - // Google-specific version extension. - CBB google_version_params; -- if (!CBB_add_u16(¶ms, kGoogleQuicVersion) || -+ if (!CBB_add_u16(¶ms, TransportParameters::kGoogleQuicVersion) || - !CBB_add_u16_length_prefixed(¶ms, &google_version_params) || - !CBB_add_u32(&google_version_params, in.version)) { - QUIC_BUG << "Failed to write Google version extension for " << in; -@@ -565,7 +565,7 @@ bool ParseTransportParameters(const uint - } - bool parse_success = true; - switch (param_id) { -- case kOriginalConnectionId: -+ case TransportParameters::kOriginalConnectionId: - if (!out->original_connection_id.IsEmpty()) { - QUIC_DLOG(ERROR) << "Received a second original connection ID"; - return false; -@@ -581,10 +581,10 @@ bool ParseTransportParameters(const uint - CBS_len(&value)); - } - break; -- case kIdleTimeout: -+ case TransportParameters::kIdleTimeout: - parse_success = out->idle_timeout_milliseconds.ReadFromCbs(&value); - break; -- case kStatelessResetToken: -+ case TransportParameters::kStatelessResetToken: - if (!out->stateless_reset_token.empty()) { - QUIC_DLOG(ERROR) << "Received a second stateless reset token"; - return false; -@@ -597,36 +597,36 @@ bool ParseTransportParameters(const uint - out->stateless_reset_token.assign(CBS_data(&value), - CBS_data(&value) + CBS_len(&value)); - break; -- case kMaxPacketSize: -+ case TransportParameters::kMaxPacketSize: - parse_success = out->max_packet_size.ReadFromCbs(&value); - break; -- case kInitialMaxData: -+ case TransportParameters::kInitialMaxData: - parse_success = out->initial_max_data.ReadFromCbs(&value); - break; -- case kInitialMaxStreamDataBidiLocal: -+ case TransportParameters::kInitialMaxStreamDataBidiLocal: - parse_success = - out->initial_max_stream_data_bidi_local.ReadFromCbs(&value); - break; -- case kInitialMaxStreamDataBidiRemote: -+ case TransportParameters::kInitialMaxStreamDataBidiRemote: - parse_success = - out->initial_max_stream_data_bidi_remote.ReadFromCbs(&value); - break; -- case kInitialMaxStreamDataUni: -+ case TransportParameters::kInitialMaxStreamDataUni: - parse_success = out->initial_max_stream_data_uni.ReadFromCbs(&value); - break; -- case kInitialMaxStreamsBidi: -+ case TransportParameters::kInitialMaxStreamsBidi: - parse_success = out->initial_max_streams_bidi.ReadFromCbs(&value); - break; -- case kInitialMaxStreamsUni: -+ case TransportParameters::kInitialMaxStreamsUni: - parse_success = out->initial_max_streams_uni.ReadFromCbs(&value); - break; -- case kAckDelayExponent: -+ case TransportParameters::kAckDelayExponent: - parse_success = out->ack_delay_exponent.ReadFromCbs(&value); - break; -- case kMaxAckDelay: -+ case TransportParameters::kMaxAckDelay: - parse_success = out->max_ack_delay.ReadFromCbs(&value); - break; -- case kDisableMigration: -+ case TransportParameters::kDisableMigration: - if (out->disable_migration) { - QUIC_DLOG(ERROR) << "Received a second disable migration"; - return false; -@@ -638,7 +638,7 @@ bool ParseTransportParameters(const uint - } - out->disable_migration = true; - break; -- case kPreferredAddress: { -+ case TransportParameters::kPreferredAddress: { - uint16_t ipv4_port, ipv6_port; - in_addr ipv4_address; - in6_addr ipv6_address; -@@ -692,7 +692,7 @@ bool ParseTransportParameters(const uint - QuicMakeUnique( - preferred_address); - } break; -- case kGoogleQuicParam: { -+ case TransportParameters::kGoogleQuicParam: { - if (out->google_quic_params) { - QUIC_DLOG(ERROR) << "Received a second Google parameter"; - return false; -@@ -701,7 +701,7 @@ bool ParseTransportParameters(const uint - reinterpret_cast(CBS_data(&value)), CBS_len(&value)); - out->google_quic_params = CryptoFramer::ParseMessage(serialized_params); - } break; -- case kGoogleQuicVersion: { -+ case TransportParameters::kGoogleQuicVersion: { - if (!CBS_get_u32(&value, &out->version)) { - QUIC_DLOG(ERROR) << "Failed to parse Google version extension"; - return false; -diff -up chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc.quiche-compile-fix chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc ---- chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc.quiche-compile-fix 2019-08-14 09:59:19.139902052 +0200 -+++ chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc 2019-08-14 09:59:33.132041535 +0200 -@@ -2,10 +2,12 @@ - // Use of this source code is governed by a BSD-style license that can be - // found in the LICENSE file. - --#include -- - #include "net/third_party/quiche/src/quic/core/quic_socket_address_coder.h" - -+#include -+#include -+#include -+ - namespace quic { - - namespace { diff --git a/chromium-76.0.3809.100-throttling-dead-beef.patch b/chromium-76.0.3809.100-throttling-dead-beef.patch deleted file mode 100644 index 5e392e6..0000000 --- a/chromium-76.0.3809.100-throttling-dead-beef.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 53bb5a463ee956c70230eaa5450022185d0ddc3c Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Thu, 06 Jun 2019 07:54:05 +0000 -Subject: [PATCH] ThrottlingController::Liveness needs to be uint32_t - -We are setting kAlive and kDead values assigning values that -are bigger than the maximum signed int32. It is better to use -uint32_t in this case. - -Bug: 819294 -Change-Id: If72b48291a66a3a9db24b4c8e2d11d31936a66ee -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645772 -Reviewed-by: Kinuko Yasuda -Commit-Queue: José Dapena Paz -Cr-Commit-Position: refs/heads/master@{#666619} ---- - -diff --git a/services/network/throttling/throttling_controller.h b/services/network/throttling/throttling_controller.h -index 43751c4..3c6f87b 100644 ---- a/services/network/throttling/throttling_controller.h -+++ b/services/network/throttling/throttling_controller.h -@@ -38,7 +38,7 @@ - - // TODO(https://crbug.com/960874): Debugging code to try and shed some light - // on why the owned maps are invalid. -- enum class Liveness : int32_t { -+ enum class Liveness : uint32_t { - kAlive = 0xCA11AB13, - kDead = 0xDEADBEEF, - }; diff --git a/chromium-76.0.3809.100-weak-ptr-no-except.patch b/chromium-76.0.3809.100-weak-ptr-no-except.patch deleted file mode 100644 index a392971..0000000 --- a/chromium-76.0.3809.100-weak-ptr-no-except.patch +++ /dev/null @@ -1,66 +0,0 @@ -From 0370838723e786b51e7ec8ab55014811ec3e3aa3 Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Thu, 18 Jul 2019 14:26:11 +0200 -Subject: [PATCH] Make base::WeakPtr move constructor/operator noexcept to fix GCC build regression - -A GCC build regression has happened on DisjointRangeLockManager, as its move -operator and constructor were declared noexcept. This was failing because the -default implementation depended on base::WeakPtr, that did not provide -noexcept declaration for them. - -So make base::WeakPtr noexcept. - -Bug: 819294 -Change-Id: I936784b881c7c1afea136ceedbe9341e76464f95 ---- - -diff --git a/base/memory/weak_ptr.cc b/base/memory/weak_ptr.cc -index 64fd499..0efcc44 100644 ---- a/base/memory/weak_ptr.cc -+++ b/base/memory/weak_ptr.cc -@@ -46,7 +46,7 @@ - - WeakReference::~WeakReference() = default; - --WeakReference::WeakReference(WeakReference&& other) = default; -+WeakReference::WeakReference(WeakReference&& other) noexcept = default; - - WeakReference::WeakReference(const WeakReference& other) = default; - -diff --git a/base/memory/weak_ptr.h b/base/memory/weak_ptr.h -index 72b5f1f..ccd22fd13 100644 ---- a/base/memory/weak_ptr.h -+++ b/base/memory/weak_ptr.h -@@ -116,9 +116,9 @@ - explicit WeakReference(const scoped_refptr& flag); - ~WeakReference(); - -- WeakReference(WeakReference&& other); -+ WeakReference(WeakReference&& other) noexcept; - WeakReference(const WeakReference& other); -- WeakReference& operator=(WeakReference&& other) = default; -+ WeakReference& operator=(WeakReference&& other) noexcept = default; - WeakReference& operator=(const WeakReference& other) = default; - - bool IsValid() const; -@@ -153,9 +153,9 @@ - ~WeakPtrBase(); - - WeakPtrBase(const WeakPtrBase& other) = default; -- WeakPtrBase(WeakPtrBase&& other) = default; -+ WeakPtrBase(WeakPtrBase&& other) noexcept = default; - WeakPtrBase& operator=(const WeakPtrBase& other) = default; -- WeakPtrBase& operator=(WeakPtrBase&& other) = default; -+ WeakPtrBase& operator=(WeakPtrBase&& other) noexcept = default; - - void reset() { - ref_ = internal::WeakReference(); -@@ -236,7 +236,7 @@ - ptr_ = reinterpret_cast(t); - } - template -- WeakPtr(WeakPtr&& other) : WeakPtrBase(std::move(other)) { -+ WeakPtr(WeakPtr&& other) noexcept : WeakPtrBase(std::move(other)) { - // Need to cast from U* to T* to do pointer adjustment in case of multiple - // inheritance. This also enforces the "U is a T" rule. - T* t = reinterpret_cast(other.ptr_); diff --git a/chromium-76.0.3809.132-gcc-ambigous-instantiation.patch b/chromium-76.0.3809.132-gcc-ambigous-instantiation.patch deleted file mode 100644 index 73db4d4..0000000 --- a/chromium-76.0.3809.132-gcc-ambigous-instantiation.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -up chromium-76.0.3809.132/services/network/cross_origin_read_blocking.cc.gcc-ambigous-instantiation chromium-76.0.3809.132/services/network/cross_origin_read_blocking.cc ---- chromium-76.0.3809.132/services/network/cross_origin_read_blocking.cc.gcc-ambigous-instantiation 2019-08-26 21:02:33.000000000 +0200 -+++ chromium-76.0.3809.132/services/network/cross_origin_read_blocking.cc 2019-08-27 06:58:23.963821667 +0200 -@@ -207,7 +207,7 @@ std::set& GetPluginProxyingProcesse - // confirmation sniffing because images, scripts, etc. are frequently - // mislabelled by http servers as HTML/JSON/XML). - base::flat_set& GetNeverSniffedMimeTypes() { -- static base::NoDestructor> s_types({ -+ static base::NoDestructor> s_types{{ - // The list below has been populated based on most commonly used content - // types according to HTTP Archive - see: - // https://github.com/whatwg/fetch/issues/860#issuecomment-457330454 -@@ -219,7 +219,7 @@ base::flat_set& GetNeverSni - "application/x-protobuf", - "application/zip", - "text/event-stream", -- }); -+ }}; - - // All items need to be lower-case, to support case-insensitive comparisons - // later. diff --git a/chromium-77.0.3865.75-boolfix.patch b/chromium-77.0.3865.75-boolfix.patch new file mode 100644 index 0000000..c836214 --- /dev/null +++ b/chromium-77.0.3865.75-boolfix.patch @@ -0,0 +1,24 @@ +diff -up chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_ptr_info.h +--- chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix 2019-09-09 23:55:20.000000000 +0200 ++++ chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_ptr_info.h 2019-09-12 15:43:30.025360946 +0200 +@@ -45,7 +45,7 @@ class AssociatedInterfacePtrInfo { + + bool is_valid() const { return handle_.is_valid(); } + +- explicit operator bool() const { return handle_.is_valid(); } ++ explicit operator bool() const { return (bool) handle_.is_valid(); } + + ScopedInterfaceEndpointHandle PassHandle() { + return std::move(handle_); +diff -up chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_request.h.boolfix chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_request.h +--- chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_request.h.boolfix 2019-09-09 23:55:20.000000000 +0200 ++++ chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_request.h 2019-09-12 15:43:30.025360946 +0200 +@@ -51,7 +51,7 @@ class AssociatedInterfaceRequest { + // handle. + 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(); } + + ScopedInterfaceEndpointHandle PassHandle() { return std::move(handle_); } + diff --git a/chromium-76.0.3809.132-certificate-transparency.patch b/chromium-77.0.3865.75-certificate-transparency.patch similarity index 73% rename from chromium-76.0.3809.132-certificate-transparency.patch rename to chromium-77.0.3865.75-certificate-transparency.patch index 8bfbced..82e2958 100644 --- a/chromium-76.0.3809.132-certificate-transparency.patch +++ b/chromium-77.0.3865.75-certificate-transparency.patch @@ -1,18 +1,18 @@ -diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager_browsertest.cc ---- chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager_browsertest.cc.certificate-transparency 2019-09-03 22:08:28.931786496 +0200 -+++ chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager_browsertest.cc 2019-09-03 22:15:24.743555759 +0200 -@@ -17,6 +17,7 @@ - #include "chrome/common/pref_names.h" - #include "chrome/test/base/in_process_browser_test.h" - #include "components/prefs/pref_service.h" +diff -up chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager_browsertest.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager_browsertest.cc +--- chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager_browsertest.cc.certificate-transparency 2019-09-12 16:09:52.818635106 +0200 ++++ chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager_browsertest.cc 2019-09-12 16:11:07.662562005 +0200 +@@ -21,6 +21,7 @@ + #include "components/version_info/version_info.h" + #include "content/public/common/content_switches.h" + #include "content/public/common/user_agent.h" +#include "services/network/public/cpp/network_service_buildflags.h" #include "services/network/public/mojom/network_context.mojom.h" #include "services/network/public/mojom/network_service.mojom.h" #include "testing/gmock/include/gmock/gmock.h" -@@ -297,3 +298,55 @@ IN_PROC_BROWSER_TEST_P(SystemNetworkCont +@@ -356,3 +357,55 @@ IN_PROC_BROWSER_TEST_P(SystemNetworkCont INSTANTIATE_TEST_SUITE_P(, - SystemNetworkContextManagerStubResolverBrowsertest, - ::testing::Values(false, true)); + SystemNetworkContextManagerFreezeQUICUaBrowsertest, + ::testing::Values(true, false)); + +class SystemNetworkContextManagerCertificateTransparencyBrowsertest + : public SystemNetworkContextManagerBrowsertest, @@ -65,9 +65,9 @@ diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manage + , + SystemNetworkContextManagerCertificateTransparencyBrowsertest, + ::testing::Values(base::nullopt, true, false)); -diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc ---- chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc.certificate-transparency 2019-08-26 21:02:05.000000000 +0200 -+++ chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc 2019-09-03 22:13:26.451198970 +0200 +diff -up chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.cc +--- chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.cc.certificate-transparency 2019-09-09 23:55:09.000000000 +0200 ++++ chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.cc 2019-09-12 16:09:52.819635118 +0200 @@ -4,11 +4,13 @@ #include "chrome/browser/net/system_network_context_manager.h" @@ -82,7 +82,7 @@ diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manage #include "base/command_line.h" #include "base/feature_list.h" #include "base/logging.h" -@@ -51,6 +53,7 @@ +@@ -50,6 +52,7 @@ #include "content/public/common/mime_handler_view_mode.h" #include "content/public/common/service_names.mojom.h" #include "content/public/common/user_agent.h" @@ -90,7 +90,7 @@ diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manage #include "mojo/public/cpp/bindings/associated_interface_ptr.h" #include "net/dns/public/util.h" #include "net/net_buildflags.h" -@@ -81,6 +84,20 @@ +@@ -79,6 +82,20 @@ namespace { @@ -111,7 +111,7 @@ diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manage // The global instance of the SystemNetworkContextmanager. SystemNetworkContextManager* g_system_network_context_manager = nullptr; -@@ -686,14 +703,35 @@ SystemNetworkContextManager::CreateDefau +@@ -658,14 +675,35 @@ SystemNetworkContextManager::CreateDefau bool http_09_on_non_default_ports_enabled = false; #if !defined(OS_ANDROID) @@ -155,7 +155,7 @@ diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manage } const base::Value* value = -@@ -756,6 +794,12 @@ SystemNetworkContextManager::GetHttpAuth +@@ -723,6 +761,12 @@ SystemNetworkContextManager::GetHttpAuth return CreateHttpAuthDynamicParams(g_browser_process->local_state()); } @@ -168,10 +168,10 @@ diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manage network::mojom::NetworkContextParamsPtr SystemNetworkContextManager::CreateNetworkContextParams() { // TODO(mmenke): Set up parameters here (in memory cookie store, etc). -diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.h.certificate-transparency chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.h ---- chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.h.certificate-transparency 2019-08-26 21:02:05.000000000 +0200 -+++ chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.h 2019-09-03 22:08:28.931786496 +0200 -@@ -158,6 +158,12 @@ class SystemNetworkContextManager { +diff -up chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.h.certificate-transparency chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.h +--- chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.h.certificate-transparency 2019-09-09 23:55:09.000000000 +0200 ++++ chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.h 2019-09-12 16:09:52.819635118 +0200 +@@ -139,6 +139,12 @@ class SystemNetworkContextManager { static network::mojom::HttpAuthDynamicParamsPtr GetHttpAuthDynamicParamsForTesting(); @@ -184,10 +184,10 @@ diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manage private: class URLLoaderFactoryForSystem; -diff -up chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc ---- chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc.certificate-transparency 2019-08-26 21:02:05.000000000 +0200 -+++ chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc 2019-09-03 22:08:28.932786508 +0200 -@@ -4834,7 +4834,7 @@ IN_PROC_BROWSER_TEST_P(SSLPolicyTestComm +diff -up chromium-77.0.3865.75/chrome/browser/policy/policy_browsertest.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/policy/policy_browsertest.cc +--- chromium-77.0.3865.75/chrome/browser/policy/policy_browsertest.cc.certificate-transparency 2019-09-09 23:55:10.000000000 +0200 ++++ chromium-77.0.3865.75/chrome/browser/policy/policy_browsertest.cc 2019-09-12 16:09:52.820635131 +0200 +@@ -4836,7 +4836,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, browser()->tab_strip_model()->GetActiveWebContents()->GetTitle()); } @@ -196,9 +196,9 @@ diff -up chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc.cert CertificateTransparencyEnforcementDisabledForCas) { net::EmbeddedTestServer https_server_ok(net::EmbeddedTestServer::TYPE_HTTPS); https_server_ok.SetSSLConfig(net::EmbeddedTestServer::CERT_OK); -diff -up chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc ---- chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc.certificate-transparency 2019-08-26 21:02:07.000000000 +0200 -+++ chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc 2019-09-03 22:08:28.932786508 +0200 +diff -up chromium-77.0.3865.75/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc +--- chromium-77.0.3865.75/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc.certificate-transparency 2019-09-09 23:55:10.000000000 +0200 ++++ chromium-77.0.3865.75/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc 2019-09-12 16:09:52.821635143 +0200 @@ -8,6 +8,7 @@ #include "base/callback.h" #include "base/run_loop.h" @@ -226,10 +226,10 @@ diff -up chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_bro void SetUpOnMainThread() override { run_loop_ = std::make_unique(); -diff -up chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_browsertest.cc ---- chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_browsertest.cc.certificate-transparency 2019-08-26 21:02:07.000000000 +0200 -+++ chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_browsertest.cc 2019-09-03 22:08:28.932786508 +0200 -@@ -457,6 +457,13 @@ class SecurityStateTabHelperTest : publi +diff -up chromium-77.0.3865.75/chrome/browser/ssl/security_state_tab_helper_browsertest.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/ssl/security_state_tab_helper_browsertest.cc +--- chromium-77.0.3865.75/chrome/browser/ssl/security_state_tab_helper_browsertest.cc.certificate-transparency 2019-09-09 23:55:10.000000000 +0200 ++++ chromium-77.0.3865.75/chrome/browser/ssl/security_state_tab_helper_browsertest.cc 2019-09-12 16:09:52.821635143 +0200 +@@ -433,6 +433,13 @@ class SecurityStateTabHelperTest : publi SecurityStateTabHelperTest() : https_server_(net::EmbeddedTestServer::TYPE_HTTPS) { https_server_.ServeFilesFromSourceDirectory(GetChromeTestDataDir()); @@ -243,10 +243,10 @@ diff -up chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_bro } void SetUpOnMainThread() override { -diff -up chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc ---- chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc.certificate-transparency 2019-08-26 21:02:07.000000000 +0200 -+++ chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc 2019-09-03 22:08:28.934786531 +0200 -@@ -2008,8 +2008,14 @@ class CertificateTransparencySSLUITest : +diff -up chromium-77.0.3865.75/chrome/browser/ssl/ssl_browsertest.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/ssl/ssl_browsertest.cc +--- chromium-77.0.3865.75/chrome/browser/ssl/ssl_browsertest.cc.certificate-transparency 2019-09-09 23:55:10.000000000 +0200 ++++ chromium-77.0.3865.75/chrome/browser/ssl/ssl_browsertest.cc 2019-09-12 16:09:52.822635155 +0200 +@@ -1853,8 +1853,14 @@ class CertificateTransparencySSLUITest : public: CertificateTransparencySSLUITest() : CertVerifierBrowserTest(), @@ -263,9 +263,9 @@ diff -up chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc.certificat void SetUpOnMainThread() override { CertVerifierBrowserTest::SetUpOnMainThread(); -diff -up chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_policy_enforcer.h.certificate-transparency chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_policy_enforcer.h ---- chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_policy_enforcer.h.certificate-transparency 2019-08-26 21:02:14.000000000 +0200 -+++ chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_policy_enforcer.h 2019-09-03 22:08:28.934786531 +0200 +diff -up chromium-77.0.3865.75/components/certificate_transparency/chrome_ct_policy_enforcer.h.certificate-transparency chromium-77.0.3865.75/components/certificate_transparency/chrome_ct_policy_enforcer.h +--- chromium-77.0.3865.75/components/certificate_transparency/chrome_ct_policy_enforcer.h.certificate-transparency 2019-09-09 23:55:14.000000000 +0200 ++++ chromium-77.0.3865.75/components/certificate_transparency/chrome_ct_policy_enforcer.h 2019-09-12 16:09:52.823635168 +0200 @@ -45,6 +45,19 @@ class ChromeCTPolicyEnforcer : public ne void SetClockForTesting(const base::Clock* clock) { clock_ = clock; } @@ -286,10 +286,10 @@ diff -up chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_po private: // Returns true if the log identified by |log_id| (the SHA-256 hash of the // log's DER-encoded SPKI) has been disqualified, and sets -diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate-transparency chromium-76.0.3809.132/services/network/network_context.cc ---- chromium-76.0.3809.132/services/network/network_context.cc.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 -+++ chromium-76.0.3809.132/services/network/network_context.cc 2019-09-03 22:17:27.977834857 +0200 -@@ -35,6 +35,7 @@ +diff -up chromium-77.0.3865.75/services/network/network_context.cc.certificate-transparency chromium-77.0.3865.75/services/network/network_context.cc +--- chromium-77.0.3865.75/services/network/network_context.cc.certificate-transparency 2019-09-09 23:55:22.000000000 +0200 ++++ chromium-77.0.3865.75/services/network/network_context.cc 2019-09-12 16:09:52.823635168 +0200 +@@ -36,6 +36,7 @@ #include "components/prefs/pref_registry_simple.h" #include "components/prefs/pref_service.h" #include "components/prefs/pref_service_factory.h" @@ -297,7 +297,7 @@ diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate- #include "mojo/public/cpp/bindings/strong_binding.h" #include "net/base/layered_network_delegate.h" #include "net/base/load_flags.h" -@@ -1851,16 +1852,6 @@ URLRequestContextOwner NetworkContext::A +@@ -1877,16 +1878,6 @@ URLRequestContextOwner NetworkContext::A base::FeatureList::IsEnabled(features::kNetworkErrorLogging)); #endif // BUILDFLAG(ENABLE_REPORTING) @@ -314,7 +314,7 @@ diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate- net::HttpNetworkSession::Params session_params; bool is_quic_force_disabled = false; if (network_service_ && network_service_->quic_disabled()) -@@ -1910,8 +1901,20 @@ URLRequestContextOwner NetworkContext::A +@@ -1936,8 +1927,20 @@ URLRequestContextOwner NetworkContext::A #if BUILDFLAG(IS_CT_SUPPORTED) std::vector> ct_logs; @@ -335,7 +335,7 @@ diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate- scoped_refptr log_verifier = net::CTLogVerifier::Create(log->public_key, log->name); if (!log_verifier) { -@@ -1924,6 +1927,17 @@ URLRequestContextOwner NetworkContext::A +@@ -1950,6 +1953,17 @@ URLRequestContextOwner NetworkContext::A ct_verifier->AddLogs(ct_logs); builder->set_ct_verifier(std::move(ct_verifier)); } @@ -353,9 +353,9 @@ diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate- #endif // BUILDFLAG(IS_CT_SUPPORTED) const base::CommandLine* command_line = -diff -up chromium-76.0.3809.132/services/network/network_context_unittest.cc.certificate-transparency chromium-76.0.3809.132/services/network/network_context_unittest.cc ---- chromium-76.0.3809.132/services/network/network_context_unittest.cc.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 -+++ chromium-76.0.3809.132/services/network/network_context_unittest.cc 2019-09-03 22:20:22.382888089 +0200 +diff -up chromium-77.0.3865.75/services/network/network_context_unittest.cc.certificate-transparency chromium-77.0.3865.75/services/network/network_context_unittest.cc +--- chromium-77.0.3865.75/services/network/network_context_unittest.cc.certificate-transparency 2019-09-09 23:55:22.000000000 +0200 ++++ chromium-77.0.3865.75/services/network/network_context_unittest.cc 2019-09-12 16:13:10.479056669 +0200 @@ -2,6 +2,7 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. @@ -374,10 +374,10 @@ diff -up chromium-76.0.3809.132/services/network/network_context_unittest.cc.cer #include "components/network_session_configurator/common/network_switches.h" #include "components/prefs/testing_pref_service.h" +#include "crypto/sha2.h" - #include "mojo/public/cpp/bindings/interface_request.h" - #include "mojo/public/cpp/bindings/strong_binding.h" + #include "mojo/public/cpp/bindings/remote.h" + #include "mojo/public/cpp/bindings/self_owned_receiver.h" #include "mojo/public/cpp/system/data_pipe_utils.h" -@@ -113,6 +116,11 @@ +@@ -115,6 +118,11 @@ #include "url/scheme_host_port.h" #include "url/url_constants.h" @@ -386,11 +386,11 @@ diff -up chromium-76.0.3809.132/services/network/network_context_unittest.cc.cer +#include "services/network/public/mojom/ct_log_info.mojom.h" +#endif + - #if BUILDFLAG(ENABLE_REPORTING) - #include "net/network_error_logging/network_error_logging_service.h" - #include "net/reporting/reporting_cache.h" -@@ -5566,6 +5574,72 @@ TEST_F(NetworkContextTest, BlockAllCooki - EXPECT_EQ("None", response_body); + #if !BUILDFLAG(DISABLE_FTP_SUPPORT) + #include "net/ftp/ftp_auth_cache.h" + #endif // !BUILDFLAG(DISABLE_FTP_SUPPORT) +@@ -5958,6 +5966,72 @@ TEST_F(NetworkContextSplitCacheTest, + true /* was_cached */, true /* is_navigation */); } +#if BUILDFLAG(IS_CT_SUPPORTED) @@ -462,9 +462,9 @@ diff -up chromium-76.0.3809.132/services/network/network_context_unittest.cc.cer } // namespace } // namespace network -diff -up chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom.certificate-transparency chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom ---- chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 -+++ chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom 2019-09-03 22:08:28.936786554 +0200 +diff -up chromium-77.0.3865.75/services/network/public/mojom/ct_log_info.mojom.certificate-transparency chromium-77.0.3865.75/services/network/public/mojom/ct_log_info.mojom +--- chromium-77.0.3865.75/services/network/public/mojom/ct_log_info.mojom.certificate-transparency 2019-09-09 23:55:22.000000000 +0200 ++++ chromium-77.0.3865.75/services/network/public/mojom/ct_log_info.mojom 2019-09-12 16:09:52.824635180 +0200 @@ -4,6 +4,8 @@ module network.mojom; @@ -488,10 +488,10 @@ diff -up chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom. + // If the log is currently qualified, this will not be set. + mojo_base.mojom.TimeDelta? disqualified_at; }; -diff -up chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom.certificate-transparency chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom ---- chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 -+++ chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom 2019-09-03 22:08:28.936786554 +0200 -@@ -238,15 +238,6 @@ struct NetworkContextParams { +diff -up chromium-77.0.3865.75/services/network/public/mojom/network_context.mojom.certificate-transparency chromium-77.0.3865.75/services/network/public/mojom/network_context.mojom +--- chromium-77.0.3865.75/services/network/public/mojom/network_context.mojom.certificate-transparency 2019-09-09 23:55:22.000000000 +0200 ++++ chromium-77.0.3865.75/services/network/public/mojom/network_context.mojom 2019-09-12 16:09:52.825635192 +0200 +@@ -239,15 +239,6 @@ struct NetworkContextParams { [EnableIf=is_android] bool check_clear_text_permitted = false; @@ -507,7 +507,7 @@ diff -up chromium-76.0.3809.132/services/network/public/mojom/network_context.mo // Enables HTTP/0.9 on ports other than 80 for HTTP and 443 for HTTPS. bool http_09_on_non_default_ports_enabled = false; -@@ -299,6 +290,15 @@ struct NetworkContextParams { +@@ -300,6 +291,15 @@ struct NetworkContextParams { // servers, so they can discover misconfigurations. bool enable_certificate_reporting = false; @@ -523,7 +523,7 @@ diff -up chromium-76.0.3809.132/services/network/public/mojom/network_context.mo // Enables Expect CT reporting, which sends reports for opted-in sites that // don't serve sufficient Certificate Transparency information. [EnableIf=is_ct_supported] -@@ -310,6 +310,13 @@ struct NetworkContextParams { +@@ -311,6 +311,13 @@ struct NetworkContextParams { [EnableIf=is_ct_supported] array ct_logs; diff --git a/chromium-77.0.3865.75-fedora-user-agent.patch b/chromium-77.0.3865.75-fedora-user-agent.patch new file mode 100644 index 0000000..8f6de51 --- /dev/null +++ b/chromium-77.0.3865.75-fedora-user-agent.patch @@ -0,0 +1,12 @@ +diff -up chromium-77.0.3865.75/content/common/user_agent.cc.fedora-user-agent chromium-77.0.3865.75/content/common/user_agent.cc +--- chromium-77.0.3865.75/content/common/user_agent.cc.fedora-user-agent 2019-09-12 15:49:11.902270729 +0200 ++++ chromium-77.0.3865.75/content/common/user_agent.cc 2019-09-12 15:50:11.555732044 +0200 +@@ -35,7 +35,7 @@ std::string GetUserAgentPlatform() { + #elif defined(OS_MACOSX) + return "Macintosh; "; + #elif defined(USE_X11) || defined(USE_OZONE) +- return "X11; "; // strange, but that's what Firefox uses ++ return "X11; Fedora; "; // strange, but that's what Firefox uses + #elif defined(OS_ANDROID) + return "Linux; "; + #elif defined(OS_POSIX) diff --git a/chromium-77.0.3865.75-fix-v8-gcc.patch b/chromium-77.0.3865.75-fix-v8-gcc.patch new file mode 100644 index 0000000..385778c --- /dev/null +++ b/chromium-77.0.3865.75-fix-v8-gcc.patch @@ -0,0 +1,14 @@ +diff -up chromium-77.0.3865.75/v8/src/objects/js-objects.cc.fix-v8-gcc chromium-77.0.3865.75/v8/src/objects/js-objects.cc +--- chromium-77.0.3865.75/v8/src/objects/js-objects.cc.fix-v8-gcc 2019-09-12 15:55:18.936238980 +0200 ++++ chromium-77.0.3865.75/v8/src/objects/js-objects.cc 2019-09-12 15:56:06.796645726 +0200 +@@ -3773,6 +3773,10 @@ Handle CreateElementDi + return new_element_dictionary; + } + ++template void JSObject::ApplyAttributesToDictionary( ++ Isolate* isolate, ReadOnlyRoots roots, Handle dictionary, ++ const PropertyAttributes attributes); ++ + template + Maybe JSObject::PreventExtensionsWithTransition( + Handle object, ShouldThrow should_throw) { diff --git a/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch b/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch new file mode 100644 index 0000000..d342e2d --- /dev/null +++ b/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch @@ -0,0 +1,13 @@ +diff -up chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h.nogccoptmath chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h +--- chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h.nogccoptmath 2019-09-12 09:55:13.041038765 +0200 ++++ chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h 2019-09-12 10:11:14.088101504 +0200 +@@ -24,8 +24,7 @@ + #elif !defined(__native_client__) && \ + ((defined(__clang__) && \ + ((__clang_major__ > 3) || \ +- (__clang_major__ == 3 && __clang_minor__ >= 4))) || \ +- (defined(__GNUC__) && __GNUC__ >= 5)) ++ (__clang_major__ == 3 && __clang_minor__ >= 4))) + #include "base/numerics/safe_math_clang_gcc_impl.h" + #define BASE_HAS_OPTIMIZED_SAFE_MATH (1) + #else diff --git a/chromium-77.0.3865.75-gcc5-r3.patch b/chromium-77.0.3865.75-gcc5-r3.patch new file mode 100644 index 0000000..34b858a --- /dev/null +++ b/chromium-77.0.3865.75-gcc5-r3.patch @@ -0,0 +1,36 @@ +diff -up chromium-77.0.3865.75/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 chromium-77.0.3865.75/gpu/ipc/common/mailbox_struct_traits.h +--- chromium-77.0.3865.75/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 2019-09-09 23:55:18.000000000 +0200 ++++ chromium-77.0.3865.75/gpu/ipc/common/mailbox_struct_traits.h 2019-09-12 10:13:16.710206500 +0200 +@@ -15,7 +15,7 @@ namespace mojo { + template <> + struct StructTraits { + static base::span name(const gpu::Mailbox& mailbox) { +- return mailbox.name; ++ return base::make_span(mailbox.name); + } + static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out); + }; +diff -up chromium-77.0.3865.75/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 chromium-77.0.3865.75/services/viz/public/cpp/compositing/quads_struct_traits.h +--- chromium-77.0.3865.75/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 2019-09-09 23:55:23.000000000 +0200 ++++ chromium-77.0.3865.75/services/viz/public/cpp/compositing/quads_struct_traits.h 2019-09-12 10:13:16.710206500 +0200 +@@ -391,7 +391,7 @@ struct StructTraits vertex_opacity(const viz::DrawQuad& input) { + const viz::TextureDrawQuad* quad = + viz::TextureDrawQuad::MaterialCast(&input); +- return quad->vertex_opacity; ++ return base::make_span(quad->vertex_opacity); + } + + static bool y_flipped(const viz::DrawQuad& input) { +diff -up chromium-77.0.3865.75/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 chromium-77.0.3865.75/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc +--- chromium-77.0.3865.75/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 2019-09-12 10:13:16.711206509 +0200 ++++ chromium-77.0.3865.75/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2019-09-12 15:41:15.300158849 +0200 +@@ -10,7 +10,7 @@ + + #include "modules/audio_processing/aec3/aec_state.h" + +-#include ++#include + + #include + #include diff --git a/chromium-77.0.3865.75-no-zlib-mangle.patch b/chromium-77.0.3865.75-no-zlib-mangle.patch new file mode 100644 index 0000000..c32d226 --- /dev/null +++ b/chromium-77.0.3865.75-no-zlib-mangle.patch @@ -0,0 +1,22 @@ +diff -up chromium-77.0.3865.75/third_party/zlib/zconf.h.nozmangle chromium-77.0.3865.75/third_party/zlib/zconf.h +--- chromium-77.0.3865.75/third_party/zlib/zconf.h.nozmangle 2019-09-12 09:36:37.924086850 +0200 ++++ chromium-77.0.3865.75/third_party/zlib/zconf.h 2019-09-12 09:53:01.623958551 +0200 +@@ -9,18 +9,6 @@ + #define ZCONF_H + + /* +- * This library is also built as a part of AOSP, which does not need to include +- * chromeconf.h. This config does not want chromeconf.h, so it can set this +- * macro to opt out. While this works today, there's no guarantee that building +- * zlib outside of Chromium keeps working in the future. +- */ +-#if !defined(CHROMIUM_ZLIB_NO_CHROMECONF) +-/* This include does prefixing as below, but with an updated set of names. Also +- * sets up export macros in component builds. */ +-#include "chromeconf.h" +-#endif +- +-/* + * If you *really* need a unique prefix for all types and library functions, + * compile with -DZ_PREFIX. The "standard" zlib should be compiled without it. + * Even better than compiling with -DZ_PREFIX would be to use configure to set diff --git a/chromium.spec b/chromium.spec index 877f8f7..a943ad5 100644 --- a/chromium.spec +++ b/chromium.spec @@ -164,14 +164,14 @@ BuildRequires: libicu-devel >= 5.4 %global chromoting_client_id %nil %endif -%global majorversion 76 +%global majorversion 77 %if %{freeworld} Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3809.132 +Version: %{majorversion}.0.3865.75 Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home @@ -211,20 +211,20 @@ Patch16: chromium-60.0.3112.78-no-libpng-prefix.patch # Do not mangle libjpeg Patch17: chromium-60.0.3112.78-jpeg-nomangle.patch # Do not mangle zlib -Patch18: chromium-75.0.3770.80-no-zlib-mangle.patch +Patch18: chromium-77.0.3865.75-no-zlib-mangle.patch # Fix libavutil include pathing to find arch specific timer.h # For some reason, this only fails on aarch64. No idea why. Patch19: chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch # from gentoo -Patch20: chromium-61.0.3163.79-gcc-no-opt-safe-math.patch +Patch20: chromium-77.0.3865.75-gcc-no-opt-safe-math.patch # From gentoo -Patch21: chromium-72.0.3626.121-gcc5-r3.patch +Patch21: chromium-77.0.3865.75-gcc5-r3.patch # To use round with gcc, you need to #include Patch22: chromium-65.0.3325.146-gcc-round-fix.patch # Include proper headers to invoke memcpy() Patch23: chromium-65.0.3325.146-memcpy-fix.patch # ../../mojo/public/cpp/bindings/associated_interface_ptr_info.h:48:43: error: cannot convert 'const mojo::ScopedInterfaceEndpointHandle' to 'bool' in return -Patch24: chromium-68.0.3440.106-boolfix.patch +Patch24: chromium-77.0.3865.75-boolfix.patch # From Debian Patch25: chromium-71.0.3578.98-skia-aarch64-buildfix.patch # Do not use unrar code, it is non-free @@ -232,7 +232,7 @@ Patch27: chromium-73.0.3683.75-norar.patch # Upstream GCC fixes Patch28: chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch # Add "Fedora" to the user agent string -Patch29: chromium-72.0.3626.121-fedora-user-agent.patch +Patch29: chromium-77.0.3865.75-fedora-user-agent.patch # Try to fix version.py for Rawhide Patch30: chromium-71.0.3578.98-py2-bootstrap.patch # Fix default on redeclaration error @@ -260,43 +260,11 @@ Patch41: chromium-75.0.3770.80-SIOCGSTAMP.patch # Revert https://chromium.googlesource.com/chromium/src/+/daff6b66faae53a0cefb88987c9ff4843629b728%5E%21/#F0 # It might make clang happy but it breaks gcc. F*** clang. Patch43: chromium-75.0.3770.80-revert-daff6b.patch -# Avoid pure virtual crash destroying RenderProcessUserData -# https://chromium.googlesource.com/chromium/src/+/cdf306db81efaaaa954487585d5a5a16205a5ebd%5E%21/ -Patch44: chromium-75.0.3770.80-pure-virtual-crash-fix.patch # rename function to avoid conflict with rawhide glibc "gettid()" Patch45: chromium-75.0.3770.80-grpc-gettid-fix.patch # fix v8 compile with gcc # https://chromium.googlesource.com/v8/v8/+/3b8c624bda58d05aea80dd9626cd550537d6ac3f%5E%21/#F1 -Patch46: chromium-75.0.3770.100-fix-v8-gcc.patch -# Fix Vulkan compilation with gcc -# https://chromium.googlesource.com/chromium/src/+/fdb3bb1f8c41d044a5b0cb80257a26dd3c8f83a3 -Patch47: chromium-76.0.3809.100-gcc-vulkan.patch -# https://chromium-review.googlesource.com/c/chromium/src/+/1645297 -Patch48: chromium-76.0.3809.100-gcc-cc-no-except.patch -# https://chromium.googlesource.com/chromium/src.git/+/502e6e42633d2571c8236c8649b031fe9915eb5b -Patch49: chromium-76.0.3809.100-gcc-net-fetcher.patch -# https://quiche.googlesource.com/quiche.git/+/9424add9d73432a794b7944790253213cce6dcb8 -Patch50: chromium-76.0.3809.100-quiche-compile-fix.patch -# https://chromium.googlesource.com/chromium/src/+/53bb5a463ee956c70230eaa5450022185d0ddc3c -Patch51: chromium-76.0.3809.100-throttling-dead-beef.patch -# https://chromium.googlesource.com/chromium/src/+/52b5ceac95b67491b1c71f0ef9a32b778bbbaa2e -Patch52: chromium-76.0.3809.132-gcc-ambigous-instantiation.patch -# https://chromium.googlesource.com/chromium/src.git/+/715cb38eac889625de0c429d2672562188b4107e -Patch53: chromium-76.0.3809.100-weak-ptr-no-except.patch -# https://chromium.googlesource.com/chromium/src.git/+/c6afbd59c997c2b64f11abdd1eaef71ae8ea2ddc -Patch54: chromium-76.0.3809.100-gcc-feature-policy-parser.patch -# https://chromium.googlesource.com/chromium/src.git/+/cf6d6b40d711fce93a24a2cf517fa3becdbae8bb -Patch55: chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch -# https://chromium.googlesource.com/chromium/src.git/+/dcb55fb8f18abe5f43d260aa67b14b2dc996f992 -Patch56: chromium-76.0.3809.100-gcc-move-explicit-initialization.patch -# https://chromium.googlesource.com/chromium/src.git/+/7dc76c8d9f4cfbce7cf11424120aa6f6094916dc -Patch57: chromium-76.0.3809.100-gcc-initialization-order.patch -# https://chromium.googlesource.com/chromium/src.git/+/138904af5d6a4158ef4247fda816a8035e621e59 -Patch58: chromium-76.0.3809.100-gcc-history-move-noexcept.patch -# https://chromium.googlesource.com/chromium/src.git/+/bdc24128b75008743d819e298557a53205706e7c -Patch59: chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch -# https://chromium.googlesource.com/chromium/src.git/+/5d7f227fa844e79568df64e495e7ef958c12d7b2 -Patch60: chromium-76.0.3809.100-gcc-themeservice-includes.patch +Patch46: chromium-77.0.3865.75-fix-v8-gcc.patch # In GCC one can't use alignas() for exported classes # https://chromium.googlesource.com/chromium/src.git/+/8148fd96ae04a1150a9c6012634dcd2a7335f87a Patch61: chromium-76.0.3809.100-gcc-no-alignas-and-export.patch @@ -305,7 +273,7 @@ Patch62: chromium-76.0.3809.100-gcc-remoting-constexpr.patch # Needs to be submitted.. (ugly hack, needs to be added properly to GN files) Patch63: chromium-76.0.3809.100-vtable-symbol-undefined.patch # https://chromium.googlesource.com/chromium/src.git/+/3c9720245e440c4b7222f8348d2a2a3c25e098ae -Patch64: chromium-76.0.3809.132-certificate-transparency.patch +Patch64: chromium-77.0.3865.75-certificate-transparency.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -846,7 +814,7 @@ udev. %patch22 -p1 -b .gcc-round-fix %patch23 -p1 -b .memcpyfix %patch24 -p1 -b .boolfix -%patch25 -p1 -b .aarch64fix +#%patch25 -p1 -b .aarch64fix %patch27 -p1 -b .nounrar %patch28 -p1 -b .gcc-cpolicyprovider %patch29 -p1 -b .fedora-user-agent @@ -861,23 +829,8 @@ udev. %patch38 -p1 -b .disable-ndnpc %patch41 -p1 -b .SIOCGSTAMP %patch43 -p1 -b .revert-daff6b -%patch44 -p1 -b .pure-virtual-fix %patch45 -p1 -b .gettid-fix %patch46 -p1 -b .fix-v8-gcc -%patch47 -p1 -b .gcc-vulkan -%patch48 -p1 -b .gcc-cc-no-except -%patch49 -p1 -b .gcc-net-fetcher -%patch50 -p1 -b .quiche-compile-fix -%patch51 -p1 -b .throttling-dead-beef -%patch52 -p1 -b .gcc-ambigous-instantiation -%patch53 -p1 -b .weak-ptr-no-except -%patch54 -p1 -b .gcc-feature-policy-parser -%patch55 -p1 -b .gcc-hasfraction-constexpr -%patch56 -p1 -b .gcc-move-explicit-initialization -%patch57 -p1 -b .gcc-initialization-order -%patch58 -p1 -b .gcc-history-move-noexcept -%patch59 -p1 -b .gcc-accountinfo-move-noexcept -%patch60 -p1 -b .gcc-themeservice-includes %patch61 -p1 -b .gcc-no-alignas-and-export %patch62 -p1 -b .gcc-remoting-constexpr %patch63 -p1 -b .vtable-symbol-undefined @@ -1466,6 +1419,7 @@ sed -i.orig -e 's/getenv("CHROME_VERSION_EXTRA")/"Fedora Project"/' $FILE . /opt/rh/devtoolset-%{dts_version}/enable %endif +echo # Now do the full browser %if 0%{freeworld} ../depot_tools/ninja -C %{target} -vvv media diff --git a/sources b/sources index 2d38a7c..a1d28bf 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-76.0.3809.132-clean.tar.xz) = fbc5f989945adfaffb9fb5199ccb988accdc53f41a03bba9c4ab3df8585b9267b1f34cd7a6ac487eff34ebb6e65865e32ceea4ad945eec30f871d8eed41f3e6f +SHA512 (chromium-77.0.3865.75-clean.tar.xz) = 9531e5d533bf305bd82ae2dbc7bf1a9e081377b61a5611f4bfa14ed389f94d106e26a9981771ed11697ca9c2490eb24c69e992fd907de241698c89a6131db0b6 From e8aad2e8bc7f279896289cf59692f79386fde464 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 15:18:03 +0200 Subject: [PATCH 0496/1449] Unbundle the zlib Use the gentoo patch. --- chromium-77.0.3865.75-unbundle-zlib.patch | 25 +++++++++++++++++++++++ chromium.spec | 3 +++ 2 files changed, 28 insertions(+) create mode 100644 chromium-77.0.3865.75-unbundle-zlib.patch diff --git a/chromium-77.0.3865.75-unbundle-zlib.patch b/chromium-77.0.3865.75-unbundle-zlib.patch new file mode 100644 index 0000000..d6c45ad --- /dev/null +++ b/chromium-77.0.3865.75-unbundle-zlib.patch @@ -0,0 +1,25 @@ +From e1bbdec720a333937bd1b990ae0f7ee97db0d3b0 Mon Sep 17 00:00:00 2001 +From: Your Name +Date: Fri, 28 Jun 2019 15:56:23 +0000 +Subject: [PATCH] update zlib + +--- + third_party/perfetto/gn/BUILD.gn | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/third_party/perfetto/gn/BUILD.gn b/third_party/perfetto/gn/BUILD.gn +index c951f5f..297eee3 100644 +--- a/third_party/perfetto/gn/BUILD.gn ++++ b/third_party/perfetto/gn/BUILD.gn +@@ -200,7 +200,7 @@ group("zlib") { + "//buildtools:zlib", + ] + } else if (build_with_chromium) { +- public_configs = [ "//third_party/zlib:zlib_config" ] ++ public_configs = [ "//third_party/zlib:system_zlib" ] + public_deps = [ + "//third_party/zlib", + ] +-- +2.21.0 + diff --git a/chromium.spec b/chromium.spec index a943ad5..440ec40 100644 --- a/chromium.spec +++ b/chromium.spec @@ -274,6 +274,8 @@ Patch62: chromium-76.0.3809.100-gcc-remoting-constexpr.patch Patch63: chromium-76.0.3809.100-vtable-symbol-undefined.patch # https://chromium.googlesource.com/chromium/src.git/+/3c9720245e440c4b7222f8348d2a2a3c25e098ae Patch64: chromium-77.0.3865.75-certificate-transparency.patch +# https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-unbundle-zlib.patch +Patch65: chromium-77.0.3865.75-unbundle-zlib.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -835,6 +837,7 @@ udev. %patch62 -p1 -b .gcc-remoting-constexpr %patch63 -p1 -b .vtable-symbol-undefined %patch64 -p1 -b .certificate-transparency +%patch65 -p1 -b .unbundle-zlib # EPEL specific patches %if 0%{?rhel} == 7 From 99274dda89d3248891ab242510770ba8ce139f9c Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 15:23:46 +0200 Subject: [PATCH 0497/1449] Missing bundled dependency for headless --- chromium.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/chromium.spec b/chromium.spec index 440ec40..92e6b78 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1230,6 +1230,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ %endif 'third_party/openscreen' \ 'third_party/opus' \ + 'third_party/one_euro_filter' \ 'third_party/ots' \ 'third_party/pdfium' \ 'third_party/pdfium/third_party/agg23' \ From 31afa2bf6dfc8537a79fd58010029ec6622de34a Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 15:21:43 +0200 Subject: [PATCH 0498/1449] Fix the previously rebased patched --- chromium-77.0.3865.75-gcc-no-opt-safe-math.patch | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch b/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch index d342e2d..920a53e 100644 --- a/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch +++ b/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch @@ -1,13 +1,15 @@ diff -up chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h.nogccoptmath chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h ---- chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h.nogccoptmath 2019-09-12 09:55:13.041038765 +0200 -+++ chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h 2019-09-12 10:11:14.088101504 +0200 -@@ -24,8 +24,7 @@ +--- chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h.nogccoptmath 2019-09-13 14:17:22.726738088 +0200 ++++ chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h 2019-09-13 14:31:37.686898493 +0200 +@@ -23,9 +23,8 @@ + // Where available use builtin math overflow support on Clang and GCC. #elif !defined(__native_client__) && \ ((defined(__clang__) && \ - ((__clang_major__ > 3) || \ +- ((__clang_major__ > 3) || \ - (__clang_major__ == 3 && __clang_minor__ >= 4))) || \ - (defined(__GNUC__) && __GNUC__ >= 5)) -+ (__clang_major__ == 3 && __clang_minor__ >= 4))) ++ (__clang_major__ > 3) || \ ++ (__clang_major__ == 3 && __clang_minor__ >= 4))) #include "base/numerics/safe_math_clang_gcc_impl.h" #define BASE_HAS_OPTIMIZED_SAFE_MATH (1) #else From 80ef5cb4da29d6d1e0bedffe53af531e28040457 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 15:18:54 +0200 Subject: [PATCH 0499/1449] Update the clean-ffmpeg.sh script --- clean_ffmpeg.sh | 1 + sources | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index 2f27435..fd226e8 100755 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -138,6 +138,7 @@ header_files=" libavcodec/x86/inline_asm.h \ libavcodec/vlc.h \ libavcodec/vorbisdsp.h \ libavcodec/vp3data.h \ + libavcodec/vp4data.h \ libavcodec/vp3dsp.h \ libavcodec/vp56.h \ libavcodec/vp56dsp.h \ diff --git a/sources b/sources index a1d28bf..b9b0498 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-77.0.3865.75-clean.tar.xz) = 9531e5d533bf305bd82ae2dbc7bf1a9e081377b61a5611f4bfa14ed389f94d106e26a9981771ed11697ca9c2490eb24c69e992fd907de241698c89a6131db0b6 +SHA512 (chromium-77.0.3865.75-clean.tar.xz) = ca7a71586a60abeacb70b9d08ba9a28455d875bfa5232070fdff079e52395924b80f05d7627e3a5d5c7a3df606a39a31e05634683a052c9efb634ed536afc092 From 8b6db4ec93c82a6728a448af05ba5428864c58ab Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 15:24:09 +0200 Subject: [PATCH 0500/1449] Include to fix the headless build --- chromium-77.0.3865.75-gcc-include-memory.patch | 12 ++++++++++++ chromium.spec | 3 +++ 2 files changed, 15 insertions(+) create mode 100644 chromium-77.0.3865.75-gcc-include-memory.patch diff --git a/chromium-77.0.3865.75-gcc-include-memory.patch b/chromium-77.0.3865.75-gcc-include-memory.patch new file mode 100644 index 0000000..93b4399 --- /dev/null +++ b/chromium-77.0.3865.75-gcc-include-memory.patch @@ -0,0 +1,12 @@ +diff -up chromium-77.0.3865.75/third_party/one_euro_filter/src/one_euro_filter.h.gcc-include-memory chromium-77.0.3865.75/third_party/one_euro_filter/src/one_euro_filter.h +--- chromium-77.0.3865.75/third_party/one_euro_filter/src/one_euro_filter.h.gcc-include-memory 2019-09-13 14:44:24.962770079 +0200 ++++ chromium-77.0.3865.75/third_party/one_euro_filter/src/one_euro_filter.h 2019-09-13 14:44:45.347073612 +0200 +@@ -3,6 +3,8 @@ + + #include "low_pass_filter.h" + ++#include ++ + namespace one_euro_filter { + namespace test { + class OneEuroFilterTest; diff --git a/chromium.spec b/chromium.spec index 92e6b78..980a57d 100644 --- a/chromium.spec +++ b/chromium.spec @@ -276,6 +276,8 @@ Patch63: chromium-76.0.3809.100-vtable-symbol-undefined.patch Patch64: chromium-77.0.3865.75-certificate-transparency.patch # https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-unbundle-zlib.patch Patch65: chromium-77.0.3865.75-unbundle-zlib.patch +# Needs to be submitted.. +Patch66: chromium-77.0.3865.75-gcc-include-memory.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -838,6 +840,7 @@ udev. %patch63 -p1 -b .vtable-symbol-undefined %patch64 -p1 -b .certificate-transparency %patch65 -p1 -b .unbundle-zlib +%patch66 -p1 -b .gcc-include-memory # EPEL specific patches %if 0%{?rhel} == 7 From e37acb8e8cd7fda722a059bc3aba28632ff869ac Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 15:00:03 +0200 Subject: [PATCH 0501/1449] Use the bundled harfbuzz-ng for < F31 Needed because of the hb_subset_input_set_retain_gids(), that's only available in harbuzz 2.4 that's only in F31+ --- chromium.spec | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/chromium.spec b/chromium.spec index 980a57d..129f8b9 100644 --- a/chromium.spec +++ b/chromium.spec @@ -133,9 +133,9 @@ BuildRequires: libicu-devel >= 5.4 %global bundlefontconfig 0 %endif -# Needs at least harfbuzz 2.3.0 now. -# 2019-03-13 -%if 0%{?fedora} < 30 +# Needs at least harfbuzz 2.4.0 now. +# 2019-09-13 +%if 0%{?fedora} < 31 %global bundleharfbuzz 1 %else %global bundleharfbuzz 0 From 0d2fa426aafe8f3f7f15c8e101b18fd285a4b31e Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 21:48:17 +0200 Subject: [PATCH 0502/1449] Remove an unneeded patch that's breaking the build --- chromium-77.0.3865.75-fix-v8-gcc.patch | 14 -------------- chromium.spec | 4 ---- 2 files changed, 18 deletions(-) delete mode 100644 chromium-77.0.3865.75-fix-v8-gcc.patch diff --git a/chromium-77.0.3865.75-fix-v8-gcc.patch b/chromium-77.0.3865.75-fix-v8-gcc.patch deleted file mode 100644 index 385778c..0000000 --- a/chromium-77.0.3865.75-fix-v8-gcc.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -up chromium-77.0.3865.75/v8/src/objects/js-objects.cc.fix-v8-gcc chromium-77.0.3865.75/v8/src/objects/js-objects.cc ---- chromium-77.0.3865.75/v8/src/objects/js-objects.cc.fix-v8-gcc 2019-09-12 15:55:18.936238980 +0200 -+++ chromium-77.0.3865.75/v8/src/objects/js-objects.cc 2019-09-12 15:56:06.796645726 +0200 -@@ -3773,6 +3773,10 @@ Handle CreateElementDi - return new_element_dictionary; - } - -+template void JSObject::ApplyAttributesToDictionary( -+ Isolate* isolate, ReadOnlyRoots roots, Handle dictionary, -+ const PropertyAttributes attributes); -+ - template - Maybe JSObject::PreventExtensionsWithTransition( - Handle object, ShouldThrow should_throw) { diff --git a/chromium.spec b/chromium.spec index 129f8b9..a6daffc 100644 --- a/chromium.spec +++ b/chromium.spec @@ -262,9 +262,6 @@ Patch41: chromium-75.0.3770.80-SIOCGSTAMP.patch Patch43: chromium-75.0.3770.80-revert-daff6b.patch # rename function to avoid conflict with rawhide glibc "gettid()" Patch45: chromium-75.0.3770.80-grpc-gettid-fix.patch -# fix v8 compile with gcc -# https://chromium.googlesource.com/v8/v8/+/3b8c624bda58d05aea80dd9626cd550537d6ac3f%5E%21/#F1 -Patch46: chromium-77.0.3865.75-fix-v8-gcc.patch # In GCC one can't use alignas() for exported classes # https://chromium.googlesource.com/chromium/src.git/+/8148fd96ae04a1150a9c6012634dcd2a7335f87a Patch61: chromium-76.0.3809.100-gcc-no-alignas-and-export.patch @@ -834,7 +831,6 @@ udev. %patch41 -p1 -b .SIOCGSTAMP %patch43 -p1 -b .revert-daff6b %patch45 -p1 -b .gettid-fix -%patch46 -p1 -b .fix-v8-gcc %patch61 -p1 -b .gcc-no-alignas-and-export %patch62 -p1 -b .gcc-remoting-constexpr %patch63 -p1 -b .vtable-symbol-undefined From fee98db480314bb5e353f827c303625b0075df77 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 22:05:31 +0200 Subject: [PATCH 0503/1449] Another export and alignas gcc compilation fix --- chromium-77.0.3865.75-base-gcc-no-alignas.patch | 12 ++++++++++++ chromium.spec | 3 +++ 2 files changed, 15 insertions(+) create mode 100644 chromium-77.0.3865.75-base-gcc-no-alignas.patch diff --git a/chromium-77.0.3865.75-base-gcc-no-alignas.patch b/chromium-77.0.3865.75-base-gcc-no-alignas.patch new file mode 100644 index 0000000..86a2271 --- /dev/null +++ b/chromium-77.0.3865.75-base-gcc-no-alignas.patch @@ -0,0 +1,12 @@ +diff -up chromium-77.0.3865.75/base/task/promise/dependent_list.h.base-gcc-no-alignas chromium-77.0.3865.75/base/task/promise/dependent_list.h +--- chromium-77.0.3865.75/base/task/promise/dependent_list.h.base-gcc-no-alignas 2019-09-13 21:45:51.873172347 +0200 ++++ chromium-77.0.3865.75/base/task/promise/dependent_list.h 2019-09-13 21:46:21.661522514 +0200 +@@ -59,7 +59,7 @@ class BASE_EXPORT DependentList { + + // Align Node on an 8-byte boundary to ensure the first 3 bits are 0 and can + // be used to store additional state (see static_asserts below). +- class BASE_EXPORT alignas(8) Node { ++ class BASE_EXPORT ALIGNAS(8) Node { + public: + Node(); + explicit Node(Node&& other) noexcept; diff --git a/chromium.spec b/chromium.spec index a6daffc..328b149 100644 --- a/chromium.spec +++ b/chromium.spec @@ -275,6 +275,8 @@ Patch64: chromium-77.0.3865.75-certificate-transparency.patch Patch65: chromium-77.0.3865.75-unbundle-zlib.patch # Needs to be submitted.. Patch66: chromium-77.0.3865.75-gcc-include-memory.patch +# Needs to be submitted.. +Patch67: chromium-77.0.3865.75-base-gcc-no-alignas.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -837,6 +839,7 @@ udev. %patch64 -p1 -b .certificate-transparency %patch65 -p1 -b .unbundle-zlib %patch66 -p1 -b .gcc-include-memory +%patch67 -p1 -b .base-gcc-no-alignas # EPEL specific patches %if 0%{?rhel} == 7 From 5008833513c462f884857764071fb645359808b6 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 22:06:07 +0200 Subject: [PATCH 0504/1449] Preserve the spirv heads for swiftshader compilation --- chromium.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/chromium.spec b/chromium.spec index 328b149..dca072c 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1277,6 +1277,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/swiftshader/third_party/subzero' \ 'third_party/swiftshader/third_party/llvm-subzero' \ 'third_party/swiftshader/third_party/llvm-7.0' \ + 'third_party/swiftshader/third_party/SPIRV-Headers' \ 'third_party/tcmalloc' \ 'third_party/test_fonts' \ 'third_party/usb_ids' \ From 28b564b6156d6e38ff68ad310283343080df1fa4 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 22:13:56 +0200 Subject: [PATCH 0505/1449] Fix the release number and add a changelog entry --- chromium.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index dca072c..b959409 100644 --- a/chromium.spec +++ b/chromium.spec @@ -172,7 +172,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3865.75 -Release: 2%{?dist} +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1872,6 +1872,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Fri Sep 13 2019 Tomas Popela - 77.0.3865.75-1 +- Update to 77.0.3865.75 + * Tue Sep 03 2019 Tomas Popela - 76.0.3809.132-2 - Backport patch to fix certificate transparency From 359c9903b5538c413854254c8b26dae0b073807c Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Sat, 14 Sep 2019 11:09:46 +0200 Subject: [PATCH 0506/1449] More of the harfbuzz related fixes --- chromium-77.0.3865.75-harfbuzz-subset.patch | 49 +++++++++++++++++++++ chromium.spec | 7 ++- 2 files changed, 54 insertions(+), 2 deletions(-) create mode 100644 chromium-77.0.3865.75-harfbuzz-subset.patch diff --git a/chromium-77.0.3865.75-harfbuzz-subset.patch b/chromium-77.0.3865.75-harfbuzz-subset.patch new file mode 100644 index 0000000..55d78d1 --- /dev/null +++ b/chromium-77.0.3865.75-harfbuzz-subset.patch @@ -0,0 +1,49 @@ +From 27e25336b8316ff3ec4e464058682ed85801fd06 Mon Sep 17 00:00:00 2001 +From: Raphael Kubo da Costa +Date: Mon, 29 Jul 2019 10:54:28 +0000 +Subject: [PATCH] Also link against libharfbuzz-subset when use_system_harfbuzz is true + +When building HarfBuzz as part of Chromium, there is a single source set +with all the files we need in the build. + +Upstream HarfBuzz, on the other hand, produces a few different libraries: +harfbuzz, harfbuzz-icu and harfbuzz-subset. When |use_system_harfbuzz| is +true, we were only looking for (and using) harfbuzz.pc with pkg-config even +though we also use symbols from libharfbuzz-subset.so. This resulted in +errors when linking: + + ld: obj/skia/skia/SkPDFSubsetFont.o: in function `SkPDFSubsetFont(sk_sp, SkPDFGlyphUse const&, SkPDF::Metadata::Subsetter, char const*, int)': + SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x48a): undefined reference to `hb_subset_input_create_or_fail' + ld: SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x4af): undefined reference to `hb_subset_input_glyph_set' + ld: SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x5d7): undefined reference to `hb_subset_input_set_retain_gids' + ld: SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x5e4): undefined reference to `hb_subset_input_set_drop_hints' + ld: SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x5f3): undefined reference to `hb_subset' + ld: SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x66f): undefined reference to `hb_subset_input_destroy' + +as reported in +https://groups.google.com/a/chromium.org/d/msg/chromium-packagers/UyJsVJ5QqWo/jSv5z7-rEQAJ + +Change-Id: I997af075c7b7263cd7cc71a63db5b0f93bd1ab59 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1715288 +Auto-Submit: Raphael Kubo da Costa +Commit-Queue: Dominik Röttsches +Reviewed-by: Dominik Röttsches +Cr-Commit-Position: refs/heads/master@{#681760} +--- + +diff --git a/third_party/harfbuzz-ng/BUILD.gn b/third_party/harfbuzz-ng/BUILD.gn +index 37d8e33..72013eb1d 100644 +--- a/third_party/harfbuzz-ng/BUILD.gn ++++ b/third_party/harfbuzz-ng/BUILD.gn +@@ -16,7 +16,10 @@ + "//third_party:freetype_harfbuzz", + "//third_party/freetype:freetype_source", + ] +- packages = [ "harfbuzz" ] ++ packages = [ ++ "harfbuzz", ++ "harfbuzz-subset", ++ ] + } + } else { + config("harfbuzz_config") { diff --git a/chromium.spec b/chromium.spec index b959409..277fcfe 100644 --- a/chromium.spec +++ b/chromium.spec @@ -277,6 +277,8 @@ Patch65: chromium-77.0.3865.75-unbundle-zlib.patch Patch66: chromium-77.0.3865.75-gcc-include-memory.patch # Needs to be submitted.. Patch67: chromium-77.0.3865.75-base-gcc-no-alignas.patch +# https://chromium.googlesource.com/chromium/src/+/27e25336b8316ff3ec4e464058682ed85801fd06 +Patch68: chromium-77.0.3865.75-harfbuzz-subset.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -362,7 +364,7 @@ BuildRequires: gperf %if 0%{?bundleharfbuzz} #nothing %else -BuildRequires: harfbuzz-devel >= 2.3.0 +BuildRequires: harfbuzz-devel >= 2.4.0 %endif BuildRequires: libatomic BuildRequires: libcap-devel @@ -624,7 +626,7 @@ Provides: bundled(freetype) = 2.9.3 %endif Provides: bundled(gperftools) = svn144 %if 0%{?bundleharfbuzz} -Provides: bundled(harfbuzz) = 2.3.0 +Provides: bundled(harfbuzz) = 2.4.0 %endif Provides: bundled(hunspell) = 1.6.0 Provides: bundled(iccjpeg) @@ -840,6 +842,7 @@ udev. %patch65 -p1 -b .unbundle-zlib %patch66 -p1 -b .gcc-include-memory %patch67 -p1 -b .base-gcc-no-alignas +%patch68 -p1 -b .harfbuzz-subset # EPEL specific patches %if 0%{?rhel} == 7 From c8be01a2e685fd25e57c8264adec337b61b66fb4 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Sat, 14 Sep 2019 11:10:29 +0200 Subject: [PATCH 0507/1449] Don't remove an additional bundled library --- chromium.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/chromium.spec b/chromium.spec index 277fcfe..4a74346 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1234,6 +1234,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/openh264' \ %endif 'third_party/openscreen' \ + 'third_party/openscreen/src/third_party/tinycbor' \ 'third_party/opus' \ 'third_party/one_euro_filter' \ 'third_party/ots' \ From 247c850861933c33f91ad4f78ee2c794073c51ec Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Sat, 14 Sep 2019 17:06:52 +0200 Subject: [PATCH 0508/1449] Backport another GCC build fix --- ...mium-77.0.3865.75-gcc-abstract-class.patch | 61 +++++++++++++++++++ chromium.spec | 3 + 2 files changed, 64 insertions(+) create mode 100644 chromium-77.0.3865.75-gcc-abstract-class.patch diff --git a/chromium-77.0.3865.75-gcc-abstract-class.patch b/chromium-77.0.3865.75-gcc-abstract-class.patch new file mode 100644 index 0000000..6d77299 --- /dev/null +++ b/chromium-77.0.3865.75-gcc-abstract-class.patch @@ -0,0 +1,61 @@ +From f08cb0022527081c078e8b96062e6c9b4fbda151 Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Fri, 26 Jul 2019 16:48:06 +0000 +Subject: [PATCH] BinaryUploadService: change parameter passing that cannot afford abstract class + +The method UploadForDeepScanning gets a Request as parameter. But Request is an +abstract class, so GCC will not allow that declaration (polimorphycs should be +passed by reference). Use std::unique_ptr so BinaryUploadService can assume +ownership. + +Bug: 819294 +Change-Id: I9e8c75cc92b01abd704d9049b0421555377da5ba +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1713550 +Reviewed-by: Daniel Rubery +Commit-Queue: José Dapena Paz +Cr-Commit-Position: refs/heads/master@{#681333} +--- + +diff --git a/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc b/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc +index 6430c89..4e90487 100644 +--- a/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc ++++ b/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc +@@ -10,7 +10,7 @@ + namespace safe_browsing { + + void BinaryUploadService::UploadForDeepScanning( +- BinaryUploadService::Request request) { ++ std::unique_ptr request) { + DCHECK_CURRENTLY_ON(content::BrowserThread::UI); + NOTREACHED(); + } +diff --git a/chrome/browser/safe_browsing/download_protection/binary_upload_service.h b/chrome/browser/safe_browsing/download_protection/binary_upload_service.h +index d2dfd83..9b6f395 100644 +--- a/chrome/browser/safe_browsing/download_protection/binary_upload_service.h ++++ b/chrome/browser/safe_browsing/download_protection/binary_upload_service.h +@@ -5,6 +5,8 @@ + #ifndef CHROME_BROWSER_SAFE_BROWSING_DOWNLOAD_PROTECTION_BINARY_UPLOAD_SERVICE_H_ + #define CHROME_BROWSER_SAFE_BROWSING_DOWNLOAD_PROTECTION_BINARY_UPLOAD_SERVICE_H_ + ++#include ++ + #include "base/callback.h" + #include "components/safe_browsing/proto/webprotect.pb.h" + +@@ -40,6 +42,7 @@ + public: + // |callback| will run on the UI thread. + explicit Request(Callback callback); ++ virtual ~Request() = default; + Request(const Request&) = delete; + Request& operator=(const Request&) = delete; + +@@ -67,7 +70,7 @@ + // Upload the given file contents for deep scanning. The results will be + // returned asynchronously by calling |request|'s |callback|. This must be + // called on the UI thread. +- void UploadForDeepScanning(Request request); ++ void UploadForDeepScanning(std::unique_ptr request); + }; + + } // namespace safe_browsing diff --git a/chromium.spec b/chromium.spec index 4a74346..625d74d 100644 --- a/chromium.spec +++ b/chromium.spec @@ -279,6 +279,8 @@ Patch66: chromium-77.0.3865.75-gcc-include-memory.patch Patch67: chromium-77.0.3865.75-base-gcc-no-alignas.patch # https://chromium.googlesource.com/chromium/src/+/27e25336b8316ff3ec4e464058682ed85801fd06 Patch68: chromium-77.0.3865.75-harfbuzz-subset.patch +# https://chromium.googlesource.com/chromium/src.git/+/f08cb0022527081c078e8b96062e6c9b4fbda151 +Patch69: chromium-77.0.3865.75-gcc-abstract-class.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -843,6 +845,7 @@ udev. %patch66 -p1 -b .gcc-include-memory %patch67 -p1 -b .base-gcc-no-alignas %patch68 -p1 -b .harfbuzz-subset +%patch69 -p1 -b .gcc-abstract-class # EPEL specific patches %if 0%{?rhel} == 7 From 13a5dba5beca40ad695d05c2534d2791fc19f185 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Sat, 14 Sep 2019 19:15:24 +0200 Subject: [PATCH 0509/1449] Customize the ninja status to show the currently build target So one is able to realize faster, where the build is failing. --- chromium.spec | 53 ++++++++++++++++++++++++++++++--------------------- 1 file changed, 31 insertions(+), 22 deletions(-) diff --git a/chromium.spec b/chromium.spec index 625d74d..760805e 100644 --- a/chromium.spec +++ b/chromium.spec @@ -2,6 +2,13 @@ # https://fedoraproject.org/wiki/Changes/No_more_automagic_Python_bytecompilation_phase_2 %global _python_bytecompile_extra 1 +# Fancy build status, so we at least know, where we are.. +# %1 where +# %2 what +%global build_target() \ + export NINJA_STATUS="[%2:%f/%t] " ; \ + ../depot_tools/ninja -C '%1' -vvv '%2' + # This is faster when it works, but it doesn't always. %ifarch aarch64 %global use_jumbo 0 @@ -28,9 +35,9 @@ %global useapikeys 1 # Leave this alone, please. -%global target out/Release -%global headlesstarget out/Headless -%global remotingtarget out/Remoting +%global builddir out/Release +%global headlessbuilddir out/Headless +%global remotingbuilddir out/Remoting # Debuginfo packages aren't very useful here. If you need to debug # you should do a proper debug build (not implemented in this spec yet) @@ -1403,17 +1410,17 @@ if python2 -c 'import google ; print google.__path__' 2> /dev/null ; then \ fi tools/gn/bootstrap/bootstrap.py -v "$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" -%{target}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{target} +%{builddir}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{builddir} %if %{freeworld} # do not need to do headless gen %else %if %{build_headless} -%{target}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_HEADLESS_GN_DEFINES" %{headlesstarget} +%{builddir}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_HEADLESS_GN_DEFINES" %{headlessbuilddir} %endif %endif -%{target}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{remotingtarget} +%{builddir}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{remotingbuilddir} %if %{bundlelibusbx} # no hackity hack hack @@ -1433,34 +1440,36 @@ sed -i.orig -e 's/getenv("CHROME_VERSION_EXTRA")/"Fedora Project"/' $FILE . /opt/rh/devtoolset-%{dts_version}/enable %endif -echo +echo # Now do the full browser %if 0%{freeworld} -../depot_tools/ninja -C %{target} -vvv media +%build_target %{builddir} media %else %if %{build_headless} -# Do headless first. -../depot_tools/ninja -C %{headlesstarget} -vvv headless_shell +# Do headless first. +%build_target %{headlessbuilddir} headless_shell %endif -../depot_tools/ninja -C %{target} -vvv chrome chrome_sandbox chromedriver clear_key_cdm policy_templates +%build_target %{builddir} chrome +%build_target %{builddir} chrome_sandbox +%build_target %{builddir} chromedriver +%build_target %{builddir} clear_key_cdm +%build_target %{builddir} policy_templates # remote client -pushd remoting - -# ../../depot_tools/ninja -C ../%{target} -vvv remoting_me2me_host remoting_start_host remoting_it2me_native_messaging_host remoting_me2me_native_messaging_host remoting_native_messaging_manifests remoting_resources -../../depot_tools/ninja -C ../%{remotingtarget} -vvv remoting_all +# ../../depot_tools/ninja -C ../%{builddir} -vvv remoting_me2me_host remoting_start_host remoting_it2me_native_messaging_host remoting_me2me_native_messaging_host remoting_native_messaging_manifests remoting_resources +%build_target %{remotingbuilddir} remoting_all %if 0%{?build_remoting_app} %if 0%{?nacl} -GOOGLE_CLIENT_ID_REMOTING_IDENTITY_API=%{chromoting_client_id} ../../depot_tools/ninja -vv -C ../out/Release/ remoting_webapp +export GOOGLE_CLIENT_ID_REMOTING_IDENTITY_API=%{chromoting_client_id} +%build_target %{builddir} remoting_webapp %endif %endif -popd %endif # Nuke nacl/pnacl bits at the end of the build -rm -rf out/Release/gen/sdk +rm -rf %{builddir}/gen/sdk rm -rf native_client/toolchain rm -rf third_party/llvm-build/* @@ -1470,7 +1479,7 @@ rm -rf %{buildroot} %if 0%{freeworld} mkdir -p %{buildroot}%{chromium_path} -pushd %{target} +pushd %{builddir} cp -a libffmpeg.so* %{buildroot}%{chromium_path} cp -a libmedia.so* %{buildroot}%{chromium_path} mv %{buildroot}%{chromium_path}/libffmpeg.so{,.%{lsuffix}} @@ -1499,7 +1508,7 @@ sed -i "s|@@EXTRA_FLAGS@@|$EXTRA_FLAGS|g" %{buildroot}%{chromium_path}/%{chromiu ln -s %{chromium_path}/%{chromium_browser_channel}.sh %{buildroot}%{_bindir}/%{chromium_browser_channel} mkdir -p %{buildroot}%{_mandir}/man1/ -pushd %{target} +pushd %{builddir} cp -a *.pak locales resources icudtl.dat %{buildroot}%{chromium_path} %if 0%{?nacl} cp -a nacl_helper* *.nexe pnacl tls_edit %{buildroot}%{chromium_path} @@ -1550,7 +1559,7 @@ popd %endif popd -pushd %{remotingtarget} +pushd %{remotingbuilddir} # See remoting/host/installer/linux/Makefile for logic cp -a remoting_native_messaging_host %{buildroot}%{crd_path}/native-messaging-host @@ -1593,7 +1602,7 @@ cp -a remoting_client_plugin_newlib.* %{buildroot}%{chromium_path} %endif %if %{build_headless} -pushd %{headlesstarget} +pushd %{headlessbuilddir} cp -a headless_lib.pak headless_shell %{buildroot}%{chromium_path} popd %endif From 78050fc457fd3214d2d039f403eaa7860b19e698 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Sun, 15 Sep 2019 08:08:54 +0200 Subject: [PATCH 0510/1449] Fix the aarch64 build --- chromium-77.0.3865.75-missing-limits.patch | 28 ++++++++++++++++++++++ chromium.spec | 3 +++ 2 files changed, 31 insertions(+) create mode 100644 chromium-77.0.3865.75-missing-limits.patch diff --git a/chromium-77.0.3865.75-missing-limits.patch b/chromium-77.0.3865.75-missing-limits.patch new file mode 100644 index 0000000..3ac1770 --- /dev/null +++ b/chromium-77.0.3865.75-missing-limits.patch @@ -0,0 +1,28 @@ +From 5baf7df7f4c5971dab552897eeef94b194650ce5 Mon Sep 17 00:00:00 2001 +From: Dave Tapuska +Date: Mon, 12 Aug 2019 22:30:13 +0000 +Subject: [PATCH] Fix build failure due to missing include for std::numeric_limits usage. + +Some configurations fail to build, limits should have been included. + +BUG=992832 + +Change-Id: I894ba0543bfcef101c93259e39a31d12ae6d035c +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1747981 +Commit-Queue: Dave Tapuska +Reviewed-by: Mostyn Bramley-Moore +Cr-Commit-Position: refs/heads/master@{#686214} +--- + +diff --git a/third_party/blink/renderer/platform/exported/web_time_range.cc b/third_party/blink/renderer/platform/exported/web_time_range.cc +index 384566a..68d83e1 100644 +--- a/third_party/blink/renderer/platform/exported/web_time_range.cc ++++ b/third_party/blink/renderer/platform/exported/web_time_range.cc +@@ -31,6 +31,7 @@ + #include "third_party/blink/public/platform/web_time_range.h" + + #include ++#include + + namespace blink { + diff --git a/chromium.spec b/chromium.spec index 760805e..799b55b 100644 --- a/chromium.spec +++ b/chromium.spec @@ -288,6 +288,8 @@ Patch67: chromium-77.0.3865.75-base-gcc-no-alignas.patch Patch68: chromium-77.0.3865.75-harfbuzz-subset.patch # https://chromium.googlesource.com/chromium/src.git/+/f08cb0022527081c078e8b96062e6c9b4fbda151 Patch69: chromium-77.0.3865.75-gcc-abstract-class.patch +# https://chromium.googlesource.com/chromium/src/+/5baf7df7f4c5971dab552897eeef94b194650ce5 +Patch70: chromium-77.0.3865.75-missing-limits.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -853,6 +855,7 @@ udev. %patch67 -p1 -b .base-gcc-no-alignas %patch68 -p1 -b .harfbuzz-subset %patch69 -p1 -b .gcc-abstract-class +%patch70 -p1 -b .missing-limits # EPEL specific patches %if 0%{?rhel} == 7 From 91e065368c471af52d51eabc4bb1cecf43d1aa7c Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Sun, 15 Sep 2019 08:11:22 +0200 Subject: [PATCH 0511/1449] 22x22 icon was removed and use the symbolic one as well --- chromium.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/chromium.spec b/chromium.spec index 799b55b..d2436e2 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1634,8 +1634,8 @@ mkdir -p %{buildroot}%{_datadir}/icons/hicolor/48x48/apps cp -a chrome/app/theme/chromium/product_logo_48.png %{buildroot}%{_datadir}/icons/hicolor/48x48/apps/%{chromium_browser_channel}.png mkdir -p %{buildroot}%{_datadir}/icons/hicolor/24x24/apps cp -a chrome/app/theme/chromium/product_logo_24.png %{buildroot}%{_datadir}/icons/hicolor/24x24/apps/%{chromium_browser_channel}.png -mkdir -p %{buildroot}%{_datadir}/icons/hicolor/22x22/apps -cp -a chrome/app/theme/chromium/product_logo_22.png %{buildroot}%{_datadir}/icons/hicolor/22x22/apps/%{chromium_browser_channel}.png +mkdir -p %{buildroot}%{_datadir}/icons/hicolor/symbolic/apps +cp -a chrome/app/theme/chromium/product_logo_22_mono.png %{buildroot}%{_datadir}/icons/hicolor/symbolic/apps/%{chromium_browser_channel}.png # Install the master_preferences file mkdir -p %{buildroot}%{_sysconfdir}/%{name} From 1def4598743bc403b89da40fff38f97ca3cfef25 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Thu, 12 Sep 2019 17:28:51 +0200 Subject: [PATCH 0512/1449] Update to 77.0.3865.75 Rebase and clean the patches. --- ...um-61.0.3163.79-gcc-no-opt-safe-math.patch | 13 - chromium-68.0.3440.106-boolfix.patch | 36 --- ...mium-72.0.3626.121-fedora-user-agent.patch | 12 - chromium-72.0.3626.121-gcc5-r3.patch | 36 --- chromium-75.0.3770.100-fix-v8-gcc.patch | 14 -- chromium-75.0.3770.80-no-zlib-mangle.patch | 14 -- ...-75.0.3770.80-pure-virtual-crash-fix.patch | 24 -- ...09.100-gcc-accountinfo-move-noexcept.patch | 53 ----- chromium-76.0.3809.100-gcc-cc-no-except.patch | 105 -------- ...0.3809.100-gcc-feature-policy-parser.patch | 76 ------ ...0.3809.100-gcc-hasfraction-constexpr.patch | 32 --- ...0.3809.100-gcc-history-move-noexcept.patch | 42 ---- ....0.3809.100-gcc-initialization-order.patch | 33 --- ...100-gcc-move-explicit-initialization.patch | 97 -------- chromium-76.0.3809.100-gcc-net-fetcher.patch | 63 ----- ...0.3809.100-gcc-themeservice-includes.patch | 36 --- chromium-76.0.3809.100-gcc-vulkan.patch | 115 --------- ...ium-76.0.3809.100-quiche-compile-fix.patch | 225 ------------------ ...m-76.0.3809.100-throttling-dead-beef.patch | 30 --- ...ium-76.0.3809.100-weak-ptr-no-except.patch | 66 ----- ....3809.132-gcc-ambigous-instantiation.patch | 21 -- chromium-77.0.3865.75-boolfix.patch | 24 ++ ...7.0.3865.75-certificate-transparency.patch | 132 +++++----- chromium-77.0.3865.75-fedora-user-agent.patch | 12 + chromium-77.0.3865.75-fix-v8-gcc.patch | 14 ++ ...um-77.0.3865.75-gcc-no-opt-safe-math.patch | 13 + chromium-77.0.3865.75-gcc5-r3.patch | 36 +++ chromium-77.0.3865.75-no-zlib-mangle.patch | 22 ++ chromium.spec | 68 +----- sources | 2 +- 30 files changed, 199 insertions(+), 1267 deletions(-) delete mode 100644 chromium-61.0.3163.79-gcc-no-opt-safe-math.patch delete mode 100644 chromium-68.0.3440.106-boolfix.patch delete mode 100644 chromium-72.0.3626.121-fedora-user-agent.patch delete mode 100644 chromium-72.0.3626.121-gcc5-r3.patch delete mode 100644 chromium-75.0.3770.100-fix-v8-gcc.patch delete mode 100644 chromium-75.0.3770.80-no-zlib-mangle.patch delete mode 100644 chromium-75.0.3770.80-pure-virtual-crash-fix.patch delete mode 100644 chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch delete mode 100644 chromium-76.0.3809.100-gcc-cc-no-except.patch delete mode 100644 chromium-76.0.3809.100-gcc-feature-policy-parser.patch delete mode 100644 chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch delete mode 100644 chromium-76.0.3809.100-gcc-history-move-noexcept.patch delete mode 100644 chromium-76.0.3809.100-gcc-initialization-order.patch delete mode 100644 chromium-76.0.3809.100-gcc-move-explicit-initialization.patch delete mode 100644 chromium-76.0.3809.100-gcc-net-fetcher.patch delete mode 100644 chromium-76.0.3809.100-gcc-themeservice-includes.patch delete mode 100644 chromium-76.0.3809.100-gcc-vulkan.patch delete mode 100644 chromium-76.0.3809.100-quiche-compile-fix.patch delete mode 100644 chromium-76.0.3809.100-throttling-dead-beef.patch delete mode 100644 chromium-76.0.3809.100-weak-ptr-no-except.patch delete mode 100644 chromium-76.0.3809.132-gcc-ambigous-instantiation.patch create mode 100644 chromium-77.0.3865.75-boolfix.patch rename chromium-76.0.3809.132-certificate-transparency.patch => chromium-77.0.3865.75-certificate-transparency.patch (73%) create mode 100644 chromium-77.0.3865.75-fedora-user-agent.patch create mode 100644 chromium-77.0.3865.75-fix-v8-gcc.patch create mode 100644 chromium-77.0.3865.75-gcc-no-opt-safe-math.patch create mode 100644 chromium-77.0.3865.75-gcc5-r3.patch create mode 100644 chromium-77.0.3865.75-no-zlib-mangle.patch diff --git a/chromium-61.0.3163.79-gcc-no-opt-safe-math.patch b/chromium-61.0.3163.79-gcc-no-opt-safe-math.patch deleted file mode 100644 index 183b5ab..0000000 --- a/chromium-61.0.3163.79-gcc-no-opt-safe-math.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -up chromium-61.0.3163.79/base/numerics/safe_math_shared_impl.h.fixgcc3 chromium-61.0.3163.79/base/numerics/safe_math_shared_impl.h ---- chromium-61.0.3163.79/base/numerics/safe_math_shared_impl.h.fixgcc3 2017-09-06 16:30:15.898454585 -0400 -+++ chromium-61.0.3163.79/base/numerics/safe_math_shared_impl.h 2017-09-06 16:30:27.570229539 -0400 -@@ -21,8 +21,7 @@ - #if !defined(__native_client__) && \ - ((defined(__clang__) && \ - ((__clang_major__ > 3) || \ -- (__clang_major__ == 3 && __clang_minor__ >= 4))) || \ -- (defined(__GNUC__) && __GNUC__ >= 5)) -+ (__clang_major__ == 3 && __clang_minor__ >= 4)))) - #include "base/numerics/safe_math_clang_gcc_impl.h" - #define BASE_HAS_OPTIMIZED_SAFE_MATH (1) - #else diff --git a/chromium-68.0.3440.106-boolfix.patch b/chromium-68.0.3440.106-boolfix.patch deleted file mode 100644 index ed22aa9..0000000 --- a/chromium-68.0.3440.106-boolfix.patch +++ /dev/null @@ -1,36 +0,0 @@ -diff -up chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_ptr_info.h ---- chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix 2018-08-09 03:21:23.066802340 -0400 -+++ chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_ptr_info.h 2018-08-09 03:25:10.638595925 -0400 -@@ -45,7 +45,7 @@ class AssociatedInterfacePtrInfo { - - bool is_valid() const { return handle_.is_valid(); } - -- explicit operator bool() const { return handle_.is_valid(); } -+ explicit operator bool() const { return (bool) handle_.is_valid(); } - - ScopedInterfaceEndpointHandle PassHandle() { - return std::move(handle_); -diff -up chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_request.h.boolfix chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_request.h ---- chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_request.h.boolfix 2018-08-09 03:21:23.067802318 -0400 -+++ chromium-68.0.3440.106/mojo/public/cpp/bindings/associated_interface_request.h 2018-08-09 03:24:44.935229067 -0400 -@@ -50,7 +50,7 @@ class AssociatedInterfaceRequest { - // handle. - 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(); } - - ScopedInterfaceEndpointHandle PassHandle() { return std::move(handle_); } - -diff -up chromium-68.0.3440.106/mojo/public/cpp/bindings/interface_request.h.boolfix chromium-68.0.3440.106/mojo/public/cpp/bindings/interface_request.h ---- chromium-68.0.3440.106/mojo/public/cpp/bindings/interface_request.h.boolfix 2018-08-08 15:11:05.000000000 -0400 -+++ chromium-68.0.3440.106/mojo/public/cpp/bindings/interface_request.h 2018-08-09 03:21:23.067802318 -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-72.0.3626.121-fedora-user-agent.patch b/chromium-72.0.3626.121-fedora-user-agent.patch deleted file mode 100644 index 5cef6f0..0000000 --- a/chromium-72.0.3626.121-fedora-user-agent.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-72.0.3626.121/content/common/user_agent.cc.fedora-user-agent chromium-72.0.3626.121/content/common/user_agent.cc ---- chromium-72.0.3626.121/content/common/user_agent.cc.fedora-user-agent 2019-03-10 14:21:02.877454982 -0400 -+++ chromium-72.0.3626.121/content/common/user_agent.cc 2019-03-10 14:22:05.728812272 -0400 -@@ -36,7 +36,7 @@ std::string GetUserAgentPlatform() { - #elif defined(OS_MACOSX) - "Macintosh; "; - #elif defined(USE_X11) || defined(USE_OZONE) -- "X11; "; // strange, but that's what Firefox uses -+ "X11; Fedora; "; // strange, but that's what Firefox uses - #elif defined(OS_ANDROID) - "Linux; "; - #elif defined(OS_POSIX) || defined(OS_FUCHSIA) diff --git a/chromium-72.0.3626.121-gcc5-r3.patch b/chromium-72.0.3626.121-gcc5-r3.patch deleted file mode 100644 index f4cf40b..0000000 --- a/chromium-72.0.3626.121-gcc5-r3.patch +++ /dev/null @@ -1,36 +0,0 @@ -diff -up chromium-72.0.3626.121/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 chromium-72.0.3626.121/gpu/ipc/common/mailbox_struct_traits.h ---- chromium-72.0.3626.121/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 2019-03-01 23:10:21.000000000 -0500 -+++ chromium-72.0.3626.121/gpu/ipc/common/mailbox_struct_traits.h 2019-03-10 14:07:48.300244125 -0400 -@@ -15,7 +15,7 @@ namespace mojo { - template <> - struct StructTraits { - static base::span name(const gpu::Mailbox& mailbox) { -- return mailbox.name; -+ return base::make_span(mailbox.name); - } - static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out); - }; -diff -up chromium-72.0.3626.121/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 chromium-72.0.3626.121/services/viz/public/cpp/compositing/quads_struct_traits.h ---- chromium-72.0.3626.121/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 2019-03-01 23:10:31.000000000 -0500 -+++ chromium-72.0.3626.121/services/viz/public/cpp/compositing/quads_struct_traits.h 2019-03-10 14:07:48.303244046 -0400 -@@ -340,7 +340,7 @@ struct StructTraits vertex_opacity(const viz::DrawQuad& input) { - const viz::TextureDrawQuad* quad = - viz::TextureDrawQuad::MaterialCast(&input); -- return quad->vertex_opacity; -+ return base::make_span(quad->vertex_opacity); - } - - static bool y_flipped(const viz::DrawQuad& input) { -diff -up chromium-72.0.3626.121/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 chromium-72.0.3626.121/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc ---- chromium-72.0.3626.121/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 2019-03-10 14:07:48.307243941 -0400 -+++ chromium-72.0.3626.121/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2019-03-10 14:09:16.565920044 -0400 -@@ -10,7 +10,7 @@ - - #include "modules/audio_processing/aec3/aec_state.h" - --#include -+#include - #include - #include - #include diff --git a/chromium-75.0.3770.100-fix-v8-gcc.patch b/chromium-75.0.3770.100-fix-v8-gcc.patch deleted file mode 100644 index 4a1a4b0..0000000 --- a/chromium-75.0.3770.100-fix-v8-gcc.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -up chromium-75.0.3770.100/v8/src/objects/js-objects.cc.fix-v8-gcc chromium-75.0.3770.100/v8/src/objects/js-objects.cc ---- chromium-75.0.3770.100/v8/src/objects/js-objects.cc.fix-v8-gcc 2019-06-25 10:55:08.132254304 -0400 -+++ chromium-75.0.3770.100/v8/src/objects/js-objects.cc 2019-06-25 10:55:23.147933648 -0400 -@@ -3792,6 +3792,10 @@ void JSObject::ApplyAttributesToDictiona - } - } - -+template void JSObject::ApplyAttributesToDictionary( -+ Isolate* isolate, ReadOnlyRoots roots, Handle dictionary, -+ const PropertyAttributes attributes); -+ - template - Maybe JSObject::PreventExtensionsWithTransition( - Handle object, ShouldThrow should_throw) { diff --git a/chromium-75.0.3770.80-no-zlib-mangle.patch b/chromium-75.0.3770.80-no-zlib-mangle.patch deleted file mode 100644 index 998be67..0000000 --- a/chromium-75.0.3770.80-no-zlib-mangle.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -up chromium-75.0.3770.80/third_party/zlib/zconf.h.nozmangle chromium-75.0.3770.80/third_party/zlib/zconf.h ---- chromium-75.0.3770.80/third_party/zlib/zconf.h.nozmangle 2019-06-05 11:12:30.420412467 -0400 -+++ chromium-75.0.3770.80/third_party/zlib/zconf.h 2019-06-05 11:17:43.512683058 -0400 -@@ -8,10 +8,6 @@ - #ifndef ZCONF_H - #define ZCONF_H - --/* This include does prefixing as below, but with an updated set of names. Also -- * sets up export macros in component builds. */ --#include "chromeconf.h" -- - /* - * If you *really* need a unique prefix for all types and library functions, - * compile with -DZ_PREFIX. The "standard" zlib should be compiled without it. diff --git a/chromium-75.0.3770.80-pure-virtual-crash-fix.patch b/chromium-75.0.3770.80-pure-virtual-crash-fix.patch deleted file mode 100644 index 06c909f..0000000 --- a/chromium-75.0.3770.80-pure-virtual-crash-fix.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff -up chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.cc.pure-virtual-fix chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.cc ---- chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.cc.pure-virtual-fix 2019-06-07 15:03:43.302202979 -0400 -+++ chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.cc 2019-06-07 15:04:25.140393048 -0400 -@@ -116,4 +116,9 @@ void RenderProcessUserData::RenderProces - base::Unretained(process_node_.get()), info.exit_code)); - } - -+void RenderProcessUserData::RenderProcessHostDestroyed( -+ content::RenderProcessHost* host) { -+ host->RemoveUserData(kRenderProcessUserDataKey); -+} -+ - } // namespace performance_manager -diff -up chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.h.pure-virtual-fix chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.h ---- chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.h.pure-virtual-fix 2019-06-07 15:04:43.530039597 -0400 -+++ chromium-75.0.3770.80/chrome/browser/performance_manager/render_process_user_data.h 2019-06-07 15:05:13.770458374 -0400 -@@ -47,6 +47,7 @@ class RenderProcessUserData : public bas - 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. diff --git a/chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch b/chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch deleted file mode 100644 index 5f45a8f..0000000 --- a/chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch +++ /dev/null @@ -1,53 +0,0 @@ -From 719df31ffd4d52b473509cf77acd9c02ec112acb Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Tue, 04 Jun 2019 18:38:12 +0200 -Subject: [PATCH] GCC: fix noexcept from move constructor and assign operators of AccountInfo - -AccountInfo declares them as noexcept and uses default implementation, -so all its members (including AccountId) should be noexcept. But AccountId -is not noexcept. To fix it we just need to make CoreAccountId move -operator/assign operator noexcept. - -Bug: 819294 -Change-Id: Ice38654ab7cf3b9eaa6f54aa36e1fec329264f98 ---- - -diff --git a/google_apis/gaia/core_account_id.cc b/google_apis/gaia/core_account_id.cc -index d808082..12eefe3 100644 ---- a/google_apis/gaia/core_account_id.cc -+++ b/google_apis/gaia/core_account_id.cc -@@ -6,8 +6,16 @@ - - CoreAccountId::CoreAccountId() = default; - -+CoreAccountId::CoreAccountId(const CoreAccountId&) = default; -+ -+CoreAccountId::CoreAccountId(CoreAccountId&&) noexcept = default; -+ - CoreAccountId::~CoreAccountId() = default; - -+CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; -+ -+CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) noexcept = default; -+ - CoreAccountId::CoreAccountId(const char* id) : id(id) {} - - CoreAccountId::CoreAccountId(std::string&& id) : id(std::move(id)) {} -diff --git a/google_apis/gaia/core_account_id.h b/google_apis/gaia/core_account_id.h -index 5ea602a..c2d1911 100644 ---- a/google_apis/gaia/core_account_id.h -+++ b/google_apis/gaia/core_account_id.h -@@ -14,8 +14,13 @@ - // for design and tracking). - struct CoreAccountId { - CoreAccountId(); -+ CoreAccountId(const CoreAccountId&); -+ CoreAccountId(CoreAccountId&&) noexcept; - ~CoreAccountId(); - -+ CoreAccountId& operator=(const CoreAccountId&); -+ CoreAccountId& operator=(CoreAccountId&&) noexcept; -+ - // Those implicit constructor and conversion operator allow to - // progressively migrate the code to use this struct. Removing - // them is tracked by https://crbug.com/959161 diff --git a/chromium-76.0.3809.100-gcc-cc-no-except.patch b/chromium-76.0.3809.100-gcc-cc-no-except.patch deleted file mode 100644 index e4d754a..0000000 --- a/chromium-76.0.3809.100-gcc-cc-no-except.patch +++ /dev/null @@ -1,105 +0,0 @@ -From 84c91abab33966f928497c24db4a39f436d2dca8 Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Fri, 07 Jun 2019 09:50:11 +0000 -Subject: [PATCH] Make SharedMemoryMapping move constructor noexcept - -As LayerTreeHostImpl::UIResourceData move constructor is declared -noexcept with default implementation, the move constructor of its -members should also be noexcept. GCC will fail to build otherwise -for mismatching noexcept declaration. - -We also set the move assignment operator. - -Bug: 819294 -Change-Id: Icd663da83b882e15f7d16780c9241972e09bc492 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645297 -Commit-Queue: José Dapena Paz -Reviewed-by: Daniel Cheng -Cr-Commit-Position: refs/heads/master@{#667064} ---- - -diff --git a/base/memory/shared_memory_mapping.cc b/base/memory/shared_memory_mapping.cc -index 2be2570..8426fa8 100644 ---- a/base/memory/shared_memory_mapping.cc -+++ b/base/memory/shared_memory_mapping.cc -@@ -33,7 +33,7 @@ - - SharedMemoryMapping::SharedMemoryMapping() = default; - --SharedMemoryMapping::SharedMemoryMapping(SharedMemoryMapping&& mapping) -+SharedMemoryMapping::SharedMemoryMapping(SharedMemoryMapping&& mapping) noexcept - : memory_(mapping.memory_), - size_(mapping.size_), - mapped_size_(mapping.mapped_size_), -@@ -42,7 +42,7 @@ - } - - SharedMemoryMapping& SharedMemoryMapping::operator=( -- SharedMemoryMapping&& mapping) { -+ SharedMemoryMapping&& mapping) noexcept { - Unmap(); - memory_ = mapping.memory_; - size_ = mapping.size_; -@@ -90,9 +90,9 @@ - - ReadOnlySharedMemoryMapping::ReadOnlySharedMemoryMapping() = default; - ReadOnlySharedMemoryMapping::ReadOnlySharedMemoryMapping( -- ReadOnlySharedMemoryMapping&&) = default; -+ ReadOnlySharedMemoryMapping&&) noexcept = default; - ReadOnlySharedMemoryMapping& ReadOnlySharedMemoryMapping::operator=( -- ReadOnlySharedMemoryMapping&&) = default; -+ ReadOnlySharedMemoryMapping&&) noexcept = default; - ReadOnlySharedMemoryMapping::ReadOnlySharedMemoryMapping( - void* address, - size_t size, -@@ -102,9 +102,9 @@ - - WritableSharedMemoryMapping::WritableSharedMemoryMapping() = default; - WritableSharedMemoryMapping::WritableSharedMemoryMapping( -- WritableSharedMemoryMapping&&) = default; -+ WritableSharedMemoryMapping&&) noexcept = default; - WritableSharedMemoryMapping& WritableSharedMemoryMapping::operator=( -- WritableSharedMemoryMapping&&) = default; -+ WritableSharedMemoryMapping&&) noexcept = default; - WritableSharedMemoryMapping::WritableSharedMemoryMapping( - void* address, - size_t size, -diff --git a/base/memory/shared_memory_mapping.h b/base/memory/shared_memory_mapping.h -index d9569af..2b8858e 100644 ---- a/base/memory/shared_memory_mapping.h -+++ b/base/memory/shared_memory_mapping.h -@@ -32,8 +32,8 @@ - SharedMemoryMapping(); - - // Move operations are allowed. -- SharedMemoryMapping(SharedMemoryMapping&& mapping); -- SharedMemoryMapping& operator=(SharedMemoryMapping&& mapping); -+ SharedMemoryMapping(SharedMemoryMapping&& mapping) noexcept; -+ SharedMemoryMapping& operator=(SharedMemoryMapping&& mapping) noexcept; - - // Unmaps the region if the mapping is valid. - virtual ~SharedMemoryMapping(); -@@ -93,8 +93,9 @@ - ReadOnlySharedMemoryMapping(); - - // Move operations are allowed. -- ReadOnlySharedMemoryMapping(ReadOnlySharedMemoryMapping&&); -- ReadOnlySharedMemoryMapping& operator=(ReadOnlySharedMemoryMapping&&); -+ ReadOnlySharedMemoryMapping(ReadOnlySharedMemoryMapping&&) noexcept; -+ ReadOnlySharedMemoryMapping& operator=( -+ ReadOnlySharedMemoryMapping&&) noexcept; - - // Returns the base address of the mapping. This is read-only memory. This is - // page-aligned. This is nullptr for invalid instances. -@@ -171,8 +172,9 @@ - WritableSharedMemoryMapping(); - - // Move operations are allowed. -- WritableSharedMemoryMapping(WritableSharedMemoryMapping&&); -- WritableSharedMemoryMapping& operator=(WritableSharedMemoryMapping&&); -+ WritableSharedMemoryMapping(WritableSharedMemoryMapping&&) noexcept; -+ WritableSharedMemoryMapping& operator=( -+ WritableSharedMemoryMapping&&) noexcept; - - // Returns the base address of the mapping. This is writable memory. This is - // page-aligned. This is nullptr for invalid instances. diff --git a/chromium-76.0.3809.100-gcc-feature-policy-parser.patch b/chromium-76.0.3809.100-gcc-feature-policy-parser.patch deleted file mode 100644 index 0dbffd5..0000000 --- a/chromium-76.0.3809.100-gcc-feature-policy-parser.patch +++ /dev/null @@ -1,76 +0,0 @@ -From 0aca7b8dea0f52ba7bd58dfce4ac236ee60670a8 Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Tue, 04 Jun 2019 19:44:58 +0200 -Subject: [PATCH] GCC: FeaturePolicyParser ParseValueForFuzzer is not in anonymous namespace - -Compilation fails because we are declaring ParseValueForFuzzer as friend method, -but we are declaring it is in anonymous namespace. Moving to global namespace -still fails (in this case in Clang). - -So final solution is making it a public static method of FeaturePolicyParser. - -Bug: 819294 -Change-Id: Iea307cb6faef675b748d6eb5da2175dcbb17fdc7 ---- - -diff --git a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc -index 3b7f4a9..eaee409 100644 ---- a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc -+++ b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc -@@ -317,6 +317,13 @@ - return value; - } - -+void FeaturePolicyParser::ParseValueForFuzzer( -+ blink::mojom::PolicyValueType feature_type, -+ const WTF::String& value_string) { -+ bool ok; -+ ParseValueForType(feature_type, value_string, &ok); -+} -+ - bool IsFeatureDeclared(mojom::FeaturePolicyFeature feature, - const ParsedFeaturePolicy& policy) { - return std::any_of(policy.begin(), policy.end(), -diff --git a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h -index fd25d90..36af405 100644 ---- a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h -+++ b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h -@@ -16,9 +16,6 @@ - #include "third_party/blink/renderer/platform/wtf/text/wtf_string.h" - #include "third_party/blink/renderer/platform/wtf/vector.h" - --// Forward declare for friendship. --void ParseValueForFuzzer(blink::mojom::PolicyValueType, const WTF::String&); -- - namespace blink { - - class Document; -@@ -79,8 +76,9 @@ - const FeatureNameMap& feature_names, - ExecutionContext* execution_context = nullptr); - -+ static void ParseValueForFuzzer(mojom::PolicyValueType, const String&); -+ - private: -- friend void ::ParseValueForFuzzer(mojom::PolicyValueType, const String&); - static PolicyValue GetFallbackValueForFeature( - mojom::FeaturePolicyFeature feature); - static PolicyValue ParseValueForType(mojom::PolicyValueType feature_type, -diff --git a/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc b/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc -index 7f8e6aa..53350e43 100644 ---- a/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc -+++ b/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc -@@ -23,9 +23,9 @@ - extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) { - static blink::BlinkFuzzerTestSupport test_support = - blink::BlinkFuzzerTestSupport(); -- ParseValueForFuzzer(blink::mojom::PolicyValueType::kBool, -- WTF::String(data, size)); -- ParseValueForFuzzer(blink::mojom::PolicyValueType::kDecDouble, -- WTF::String(data, size)); -+ blink::FeaturePolicyParser::ParseValueForFuzzer( -+ blink::mojom::PolicyValueType::kBool, WTF::String(data, size)); -+ blink::FeaturePolicyParser::ParseValueForFuzzer( -+ blink::mojom::PolicyValueType::kDecDouble, WTF::String(data, size)); - return 0; - } diff --git a/chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch b/chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch deleted file mode 100644 index 26bba05..0000000 --- a/chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch +++ /dev/null @@ -1,32 +0,0 @@ -From cf6d6b40d711fce93a24a2cf517fa3becdbae8bb Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Wed, 05 Jun 2019 17:18:40 +0000 -Subject: [PATCH] Make blink::LayoutUnit::HasFraction constexpr - -Other HasFraction methods as in PhysicalUnit are declared already -constexpr and using it. It breaks GCC build. - -Bug: 819294. -Change-Id: I0c4bd9bd206d45cf31f7fa815ce8533718a425cb -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645222 -Reviewed-by: vmpstr -Reviewed-by: Xianzhu Wang -Commit-Queue: José Dapena Paz -Cr-Commit-Position: refs/heads/master@{#666336} ---- - -diff --git a/third_party/blink/renderer/platform/geometry/layout_unit.h b/third_party/blink/renderer/platform/geometry/layout_unit.h -index f073986..b6dbc76 100644 ---- a/third_party/blink/renderer/platform/geometry/layout_unit.h -+++ b/third_party/blink/renderer/platform/geometry/layout_unit.h -@@ -202,7 +202,9 @@ - return value_ > 0 ? LayoutUnit() : *this; - } - -- bool HasFraction() const { return RawValue() % kFixedPointDenominator; } -+ constexpr bool HasFraction() const { -+ return RawValue() % kFixedPointDenominator; -+ } - - LayoutUnit Fraction() const { - // Compute fraction using the mod operator to preserve the sign of the value diff --git a/chromium-76.0.3809.100-gcc-history-move-noexcept.patch b/chromium-76.0.3809.100-gcc-history-move-noexcept.patch deleted file mode 100644 index 2876de4..0000000 --- a/chromium-76.0.3809.100-gcc-history-move-noexcept.patch +++ /dev/null @@ -1,42 +0,0 @@ -From abe74a7f0c53a43a9706a42d71b7ff4a5da53380 Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Tue, 11 Jun 2019 10:27:19 +0200 -Subject: [PATCH] GCC: add noexcept move assignment in history::URLRow - -In GCC, build is failing because history::QueryURLResult declares its move -assignment operator as noexcept using default implementation. That requires -its members to provide a move assignment operator that is noexcept too. - -But URLRow was missing noexcept declaration in move assignment operator (even -though it was providing noexcept to its move constructor). - -Bug: 819294 -Change-Id: I726e3cf7a4a50c9206a5d0fba8a561d363483d4f ---- - -diff --git a/components/history/core/browser/url_row.cc b/components/history/core/browser/url_row.cc -index 44c22fd..aec0101 100644 ---- a/components/history/core/browser/url_row.cc -+++ b/components/history/core/browser/url_row.cc -@@ -26,7 +26,7 @@ - } - - URLRow& URLRow::operator=(const URLRow& other) = default; --URLRow& URLRow::operator=(URLRow&& other) = default; -+URLRow& URLRow::operator=(URLRow&& other) noexcept = default; - - void URLRow::Swap(URLRow* other) { - std::swap(id_, other->id_); -diff --git a/components/history/core/browser/url_row.h b/components/history/core/browser/url_row.h -index 8f6f9cf..31a1ef8 100644 ---- a/components/history/core/browser/url_row.h -+++ b/components/history/core/browser/url_row.h -@@ -35,7 +35,7 @@ - - virtual ~URLRow(); - URLRow& operator=(const URLRow& other); -- URLRow& operator=(URLRow&& other); -+ URLRow& operator=(URLRow&& other) noexcept; - - URLID id() const { return id_; } - diff --git a/chromium-76.0.3809.100-gcc-initialization-order.patch b/chromium-76.0.3809.100-gcc-initialization-order.patch deleted file mode 100644 index 3bf394f..0000000 --- a/chromium-76.0.3809.100-gcc-initialization-order.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 7dc76c8d9f4cfbce7cf11424120aa6f6094916dc Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Wed, 05 Jun 2019 21:09:01 +0000 -Subject: [PATCH] GCC: XSetWindowAttributes struct initialization should keep order of declaration - -XSetWindowAttributes initialization of attributes in GLSurfaceGLX is not in the -same order of the declaration. GCC fails because of that. - -Bug: 819294 -Change-Id: I8a97da980d5961a35a47ae4d0d8d558b85291f1f -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1646253 -Reviewed-by: Zhenyao Mo -Commit-Queue: José Dapena Paz -Cr-Commit-Position: refs/heads/master@{#666436} ---- - -diff --git a/ui/gl/gl_surface_glx.cc b/ui/gl/gl_surface_glx.cc -index f649dd4..0aa6892 100644 ---- a/ui/gl/gl_surface_glx.cc -+++ b/ui/gl/gl_surface_glx.cc -@@ -583,10 +583,10 @@ - - XSetWindowAttributes swa = { - .background_pixmap = 0, -- .bit_gravity = NorthWestGravity, -- .colormap = g_colormap, - .background_pixel = 0, // ARGB(0,0,0,0) for compositing WM - .border_pixel = 0, -+ .bit_gravity = NorthWestGravity, -+ .colormap = g_colormap, - }; - auto value_mask = CWBackPixmap | CWBitGravity | CWColormap | CWBorderPixel; - if (ui::IsCompositingManagerPresent() && diff --git a/chromium-76.0.3809.100-gcc-move-explicit-initialization.patch b/chromium-76.0.3809.100-gcc-move-explicit-initialization.patch deleted file mode 100644 index 1d4b90f..0000000 --- a/chromium-76.0.3809.100-gcc-move-explicit-initialization.patch +++ /dev/null @@ -1,97 +0,0 @@ -From dcb55fb8f18abe5f43d260aa67b14b2dc996f992 Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Tue, 11 Jun 2019 08:00:13 +0000 -Subject: [PATCH] GCC: move explicit specialization out of RunInfo - -Explicit specialization in non-namespace scope is not allowed in C++, and GCC breaks -build because of that. Move the template specializations out of RunInfo declaration -in shape_result_inline_headeres.h to fix the GCC build issue. - -Bug: 819294 -Change-Id: Id083852bcf8e9efbdc911fdad28fd8767d2905d0 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1651728 -Reviewed-by: Kinuko Yasuda -Commit-Queue: José Dapena Paz -Cr-Commit-Position: refs/heads/master@{#667901} ---- - -diff --git a/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h b/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h -index 76ee6091..c14d3a0 100644 ---- a/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h -+++ b/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h -@@ -251,37 +251,6 @@ - template - struct iterator final {}; - -- // For non-zero glyph offset array -- template <> -- struct iterator final { -- // The constructor for ShapeResult -- explicit iterator(const GlyphOffsetArray& array) -- : pointer(array.storage_.get()) { -- DCHECK(pointer); -- } -- -- // The constructor for ShapeResultView -- explicit iterator(const GlyphDataRange& range) : pointer(range.offsets) { -- DCHECK(pointer); -- } -- -- GlyphOffset operator*() const { return *pointer; } -- void operator++() { ++pointer; } -- -- const GlyphOffset* pointer; -- }; -- -- // For zero glyph offset array -- template <> -- struct iterator final { -- explicit iterator(const GlyphOffsetArray& array) { -- DCHECK(!array.HasStorage()); -- } -- explicit iterator(const GlyphDataRange& range) { DCHECK(!range.offsets); } -- GlyphOffset operator*() const { return GlyphOffset(); } -- void operator++() {} -- }; -- - template - iterator GetIterator() const { - return iterator(*this); -@@ -495,6 +464,37 @@ - float width_; - }; - -+// For non-zero glyph offset array -+template <> -+struct ShapeResult::RunInfo::GlyphOffsetArray::iterator final { -+ // The constructor for ShapeResult -+ explicit iterator(const GlyphOffsetArray& array) -+ : pointer(array.storage_.get()) { -+ DCHECK(pointer); -+ } -+ -+ // The constructor for ShapeResultView -+ explicit iterator(const GlyphDataRange& range) : pointer(range.offsets) { -+ DCHECK(pointer); -+ } -+ -+ GlyphOffset operator*() const { return *pointer; } -+ void operator++() { ++pointer; } -+ -+ const GlyphOffset* pointer; -+}; -+ -+// For zero glyph offset array -+template <> -+struct ShapeResult::RunInfo::GlyphOffsetArray::iterator final { -+ explicit iterator(const GlyphOffsetArray& array) { -+ DCHECK(!array.HasStorage()); -+ } -+ explicit iterator(const GlyphDataRange& range) { DCHECK(!range.offsets); } -+ GlyphOffset operator*() const { return GlyphOffset(); } -+ void operator++() {} -+}; -+ - // Find the range of HarfBuzzRunGlyphData for the specified character index - // range. This function uses binary search twice, hence O(2 log n). - inline ShapeResult::RunInfo::GlyphDataRange diff --git a/chromium-76.0.3809.100-gcc-net-fetcher.patch b/chromium-76.0.3809.100-gcc-net-fetcher.patch deleted file mode 100644 index bc0ed98..0000000 --- a/chromium-76.0.3809.100-gcc-net-fetcher.patch +++ /dev/null @@ -1,63 +0,0 @@ -From 502e6e42633d2571c8236c8649b031fe9915eb5b Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Tue, 11 Jun 2019 16:56:27 +0000 -Subject: [PATCH] GCC: CertNetFetcherImpl declares Job as a friend but it is in the anonymous namespace - -GCC does not allow friendship declaration to anonymous namespace as done with Job -object in the CertNetFetcherImpl. This fix removes the friend declaration, and just -makes RemoveJob method public, that was the only reason to make Job a friend. - -Error was: -./../net/cert_net/cert_net_fetcher_impl.cc: In member function ‘void net::{anonymous}::Job::DetachRequest(net::CertNetFetcherImpl::RequestCore*)’: -../../net/cert_net/cert_net_fetcher_impl.cc:458:42: error: ‘std::unique_ptr net::CertNetFetcherImpl::AsyncCertNetFetcherImpl::RemoveJob(net::{anonymous}::Job*)’ is private within this context - delete_this = parent_->RemoveJob(this); - ^ -../../net/cert_net/cert_net_fetcher_impl.cc:151:24: note: declared private here - std::unique_ptr RemoveJob(Job* job); - ^~~~~~~~~ -../../net/cert_net/cert_net_fetcher_impl.cc: In member function ‘void net::{anonymous}::Job::OnJobCompleted(net::Error)’: -../../net/cert_net/cert_net_fetcher_impl.cc:610:61: error: ‘std::unique_ptr net::CertNetFetcherImpl::AsyncCertNetFetcherImpl::RemoveJob(net::{anonymous}::Job*)’ is private within this context - std::unique_ptr delete_this = parent_->RemoveJob(this); - ^ -../../net/cert_net/cert_net_fetcher_impl.cc:151:24: note: declared private here - std::unique_ptr RemoveJob(Job* job); - ^~~~~~~~~ - -Bug: 819294 -Change-Id: I3609f4558e570741395366de6a4cd40577d91450 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1651783 -Commit-Queue: Eric Roman -Reviewed-by: Eric Roman -Cr-Commit-Position: refs/heads/master@{#668015} ---- - -diff --git a/net/cert_net/cert_net_fetcher_impl.cc b/net/cert_net/cert_net_fetcher_impl.cc -index 11a1166..349c656 100644 ---- a/net/cert_net/cert_net_fetcher_impl.cc -+++ b/net/cert_net/cert_net_fetcher_impl.cc -@@ -135,21 +135,19 @@ - void Fetch(std::unique_ptr request_params, - scoped_refptr request); - -+ // Removes |job| from the in progress jobs and transfers ownership to the -+ // caller. -+ std::unique_ptr RemoveJob(Job* job); -+ - // Cancels outstanding jobs, which stops network requests and signals the - // corresponding RequestCores that the requests have completed. - void Shutdown(); - - private: -- friend class Job; -- - // Finds a job with a matching RequestPararms or returns nullptr if there was - // no match. - Job* FindJob(const RequestParams& params); - -- // Removes |job| from the in progress jobs and transfers ownership to the -- // caller. -- std::unique_ptr RemoveJob(Job* job); -- - // The in-progress jobs. This set does not contain the job which is actively - // invoking callbacks (OnJobCompleted). - JobSet jobs_; diff --git a/chromium-76.0.3809.100-gcc-themeservice-includes.patch b/chromium-76.0.3809.100-gcc-themeservice-includes.patch deleted file mode 100644 index ad40bb9..0000000 --- a/chromium-76.0.3809.100-gcc-themeservice-includes.patch +++ /dev/null @@ -1,36 +0,0 @@ -From d08ea83acc2f5ff395c1fe54f52687e92fe51c3b Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Tue, 04 Jun 2019 22:01:03 +0200 -Subject: [PATCH] IWYU: ThemeService requires NativeTheme - -As ThemeService referes to NativeTheme through a ScopedObserver, -the full declaration is required. - -Bug: 819294 -Change-Id: I9d5bd2e87cfaa76e87f9b5509daea24848906a63 ---- - -diff --git a/chrome/browser/themes/theme_service.cc b/chrome/browser/themes/theme_service.cc -index d65388e2..23dc86d 100644 ---- a/chrome/browser/themes/theme_service.cc -+++ b/chrome/browser/themes/theme_service.cc -@@ -54,7 +54,6 @@ - #include "ui/gfx/color_palette.h" - #include "ui/gfx/image/image_skia.h" - #include "ui/native_theme/common_theme.h" --#include "ui/native_theme/native_theme.h" - - #if BUILDFLAG(ENABLE_EXTENSIONS) - #include "base/scoped_observer.h" -diff --git a/chrome/browser/themes/theme_service.h b/chrome/browser/themes/theme_service.h -index 6c79c72..f93dc0d 100644 ---- a/chrome/browser/themes/theme_service.h -+++ b/chrome/browser/themes/theme_service.h -@@ -25,6 +25,7 @@ - #include "extensions/buildflags/buildflags.h" - #include "extensions/common/extension_id.h" - #include "ui/base/theme_provider.h" -+#include "ui/native_theme/native_theme.h" - #include "ui/native_theme/native_theme_observer.h" - - class BrowserThemePack; diff --git a/chromium-76.0.3809.100-gcc-vulkan.patch b/chromium-76.0.3809.100-gcc-vulkan.patch deleted file mode 100644 index cf93bce..0000000 --- a/chromium-76.0.3809.100-gcc-vulkan.patch +++ /dev/null @@ -1,115 +0,0 @@ -From fdb3bb1f8c41d044a5b0cb80257a26dd3c8f83a3 Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Tue, 11 Jun 2019 17:39:38 +0000 -Subject: [PATCH] GCC: do not use old C notation to assign struct with property names. - -The notation for initialization of structs referring to its properties -is invalid in C++. This is not accepted in GCC. It was making build -fail in VulkanCommandBuffer. - -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc: In member function 'void gpu::VulkanCommandBuffer::TransitionImageLayout(VkImage, VkImageLayout, VkImageLayout)': -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:214:7: error: expected primary-expression before '.' token - .subresourceRange.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT, - ^ -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:215:7: error: expected primary-expression before '.' token - .subresourceRange.baseMipLevel = 0, - ^ -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:216:7: error: expected primary-expression before '.' token - .subresourceRange.levelCount = 1, - ^ -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:217:7: error: expected primary-expression before '.' token - .subresourceRange.baseArrayLayer = 0, - ^ -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:218:7: error: expected primary-expression before '.' token - .subresourceRange.layerCount = 1, - ^ -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc: In member function 'void gpu::VulkanCommandBuffer::CopyBufferToImage(VkBuffer, VkImage, uint32_t, uint32_t, uint32_t, uint32_t)': -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:235:7: error: expected primary-expression before '.' token - .imageSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT, - ^ -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:236:7: error: expected primary-expression before '.' token - .imageSubresource.mipLevel = 0, - ^ -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:237:7: error: expected primary-expression before '.' token - .imageSubresource.baseArrayLayer = 0, - ^ -./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:238:7: error: expected primary-expression before '.' token - .imageSubresource.layerCount = 1, - ^ -Bug: 819294 - -Change-Id: I999abece0c727e77964789183642ba62009c2c22 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1651802 -Commit-Queue: José Dapena Paz -Reviewed-by: Antoine Labour -Cr-Commit-Position: refs/heads/master@{#668033} ---- - -diff --git a/gpu/vulkan/vulkan_command_buffer.cc b/gpu/vulkan/vulkan_command_buffer.cc -index ba776e4..4f14c85 100644 ---- a/gpu/vulkan/vulkan_command_buffer.cc -+++ b/gpu/vulkan/vulkan_command_buffer.cc -@@ -207,21 +207,20 @@ - void VulkanCommandBuffer::TransitionImageLayout(VkImage image, - VkImageLayout old_layout, - VkImageLayout new_layout) { -- VkImageMemoryBarrier barrier = { -- .sType = VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER, -- .srcAccessMask = GetAccessMask(old_layout), -- .dstAccessMask = GetAccessMask(new_layout), -- .oldLayout = old_layout, -- .newLayout = new_layout, -- .srcQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED, -- .dstQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED, -- .image = image, -- .subresourceRange.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT, -- .subresourceRange.baseMipLevel = 0, -- .subresourceRange.levelCount = 1, -- .subresourceRange.baseArrayLayer = 0, -- .subresourceRange.layerCount = 1, -- }; -+ VkImageMemoryBarrier barrier = {}; -+ barrier.sType = VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER; -+ barrier.srcAccessMask = GetAccessMask(old_layout); -+ barrier.dstAccessMask = GetAccessMask(new_layout); -+ barrier.oldLayout = old_layout; -+ barrier.newLayout = new_layout; -+ barrier.srcQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED; -+ barrier.dstQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED; -+ barrier.image = image; -+ barrier.subresourceRange.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT; -+ barrier.subresourceRange.baseMipLevel = 0; -+ barrier.subresourceRange.levelCount = 1; -+ barrier.subresourceRange.baseArrayLayer = 0; -+ barrier.subresourceRange.layerCount = 1; - vkCmdPipelineBarrier(command_buffer_, GetPipelineStageFlags(old_layout), - GetPipelineStageFlags(new_layout), 0, 0, nullptr, 0, - nullptr, 1, &barrier); -@@ -233,17 +232,16 @@ - uint32_t buffer_height, - uint32_t width, - uint32_t height) { -- VkBufferImageCopy region = { -- .bufferOffset = 0, -- .bufferRowLength = buffer_width, -- .bufferImageHeight = buffer_height, -- .imageSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT, -- .imageSubresource.mipLevel = 0, -- .imageSubresource.baseArrayLayer = 0, -- .imageSubresource.layerCount = 1, -- .imageOffset = {0, 0, 0}, -- .imageExtent = {width, height, 1}, -- }; -+ VkBufferImageCopy region = {}; -+ region.bufferOffset = 0; -+ region.bufferRowLength = buffer_width; -+ region.bufferImageHeight = buffer_height; -+ region.imageSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT; -+ region.imageSubresource.mipLevel = 0; -+ region.imageSubresource.baseArrayLayer = 0; -+ region.imageSubresource.layerCount = 1; -+ region.imageOffset = {0, 0, 0}; -+ region.imageExtent = {width, height, 1}; - vkCmdCopyBufferToImage(command_buffer_, buffer, image, - VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, 1, ®ion); - } diff --git a/chromium-76.0.3809.100-quiche-compile-fix.patch b/chromium-76.0.3809.100-quiche-compile-fix.patch deleted file mode 100644 index 98789d9..0000000 --- a/chromium-76.0.3809.100-quiche-compile-fix.patch +++ /dev/null @@ -1,225 +0,0 @@ -diff -up chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc.quiche-compile-fix chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc ---- chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc.quiche-compile-fix 2019-08-14 09:58:07.721193200 +0200 -+++ chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc 2019-08-14 09:59:33.131041525 +0200 -@@ -62,37 +62,37 @@ const size_t kStatelessResetTokenLength - std::string TransportParameterIdToString( - TransportParameters::TransportParameterId param_id) { - switch (param_id) { -- case kOriginalConnectionId: -+ case TransportParameters::kOriginalConnectionId: - return "original_connection_id"; -- case kIdleTimeout: -+ case TransportParameters::kIdleTimeout: - return "idle_timeout"; -- case kStatelessResetToken: -+ case TransportParameters::kStatelessResetToken: - return "stateless_reset_token"; -- case kMaxPacketSize: -+ case TransportParameters::kMaxPacketSize: - return "max_packet_size"; -- case kInitialMaxData: -+ case TransportParameters::kInitialMaxData: - return "initial_max_data"; -- case kInitialMaxStreamDataBidiLocal: -+ case TransportParameters::kInitialMaxStreamDataBidiLocal: - return "initial_max_stream_data_bidi_local"; -- case kInitialMaxStreamDataBidiRemote: -+ case TransportParameters::kInitialMaxStreamDataBidiRemote: - return "initial_max_stream_data_bidi_remote"; -- case kInitialMaxStreamDataUni: -+ case TransportParameters::kInitialMaxStreamDataUni: - return "initial_max_stream_data_uni"; -- case kInitialMaxStreamsBidi: -+ case TransportParameters::kInitialMaxStreamsBidi: - return "initial_max_streams_bidi"; -- case kInitialMaxStreamsUni: -+ case TransportParameters::kInitialMaxStreamsUni: - return "initial_max_streams_uni"; -- case kAckDelayExponent: -+ case TransportParameters::kAckDelayExponent: - return "ack_delay_exponent"; -- case kMaxAckDelay: -+ case TransportParameters::kMaxAckDelay: - return "max_ack_delay"; -- case kDisableMigration: -+ case TransportParameters::kDisableMigration: - return "disable_migration"; -- case kPreferredAddress: -+ case TransportParameters::kPreferredAddress: - return "preferred_address"; -- case kGoogleQuicParam: -+ case TransportParameters::kGoogleQuicParam: - return "google"; -- case kGoogleQuicVersion: -+ case TransportParameters::kGoogleQuicVersion: - return "google-version"; - } - return "Unknown(" + QuicTextUtils::Uint64ToString(param_id) + ")"; -@@ -390,7 +390,7 @@ bool SerializeTransportParameters(const - CBB original_connection_id_param; - if (!in.original_connection_id.IsEmpty()) { - DCHECK_EQ(Perspective::IS_SERVER, in.perspective); -- if (!CBB_add_u16(¶ms, kOriginalConnectionId) || -+ if (!CBB_add_u16(¶ms, TransportParameters::kOriginalConnectionId) || - !CBB_add_u16_length_prefixed(¶ms, &original_connection_id_param) || - !CBB_add_bytes( - &original_connection_id_param, -@@ -412,7 +412,7 @@ bool SerializeTransportParameters(const - if (!in.stateless_reset_token.empty()) { - DCHECK_EQ(kStatelessResetTokenLength, in.stateless_reset_token.size()); - DCHECK_EQ(Perspective::IS_SERVER, in.perspective); -- if (!CBB_add_u16(¶ms, kStatelessResetToken) || -+ if (!CBB_add_u16(¶ms, TransportParameters::kStatelessResetToken) || - !CBB_add_u16_length_prefixed(¶ms, &stateless_reset_token_param) || - !CBB_add_bytes(&stateless_reset_token_param, - in.stateless_reset_token.data(), -@@ -438,7 +438,7 @@ bool SerializeTransportParameters(const - - // disable_migration - if (in.disable_migration) { -- if (!CBB_add_u16(¶ms, kDisableMigration) || -+ if (!CBB_add_u16(¶ms, TransportParameters::kDisableMigration) || - !CBB_add_u16(¶ms, 0u)) { // 0 is the length of this parameter. - QUIC_BUG << "Failed to write disable_migration for " << in; - return false; -@@ -458,7 +458,7 @@ bool SerializeTransportParameters(const - QUIC_BUG << "Bad lengths " << *in.preferred_address; - return false; - } -- if (!CBB_add_u16(¶ms, kPreferredAddress) || -+ if (!CBB_add_u16(¶ms, TransportParameters::kPreferredAddress) || - !CBB_add_u16_length_prefixed(¶ms, &preferred_address_params) || - !CBB_add_bytes( - &preferred_address_params, -@@ -491,7 +491,7 @@ bool SerializeTransportParameters(const - if (in.google_quic_params) { - const QuicData& serialized_google_quic_params = - in.google_quic_params->GetSerialized(); -- if (!CBB_add_u16(¶ms, kGoogleQuicParam) || -+ if (!CBB_add_u16(¶ms, TransportParameters::kGoogleQuicParam) || - !CBB_add_u16_length_prefixed(¶ms, &google_quic_params) || - !CBB_add_bytes(&google_quic_params, - reinterpret_cast( -@@ -505,7 +505,7 @@ bool SerializeTransportParameters(const - - // Google-specific version extension. - CBB google_version_params; -- if (!CBB_add_u16(¶ms, kGoogleQuicVersion) || -+ if (!CBB_add_u16(¶ms, TransportParameters::kGoogleQuicVersion) || - !CBB_add_u16_length_prefixed(¶ms, &google_version_params) || - !CBB_add_u32(&google_version_params, in.version)) { - QUIC_BUG << "Failed to write Google version extension for " << in; -@@ -565,7 +565,7 @@ bool ParseTransportParameters(const uint - } - bool parse_success = true; - switch (param_id) { -- case kOriginalConnectionId: -+ case TransportParameters::kOriginalConnectionId: - if (!out->original_connection_id.IsEmpty()) { - QUIC_DLOG(ERROR) << "Received a second original connection ID"; - return false; -@@ -581,10 +581,10 @@ bool ParseTransportParameters(const uint - CBS_len(&value)); - } - break; -- case kIdleTimeout: -+ case TransportParameters::kIdleTimeout: - parse_success = out->idle_timeout_milliseconds.ReadFromCbs(&value); - break; -- case kStatelessResetToken: -+ case TransportParameters::kStatelessResetToken: - if (!out->stateless_reset_token.empty()) { - QUIC_DLOG(ERROR) << "Received a second stateless reset token"; - return false; -@@ -597,36 +597,36 @@ bool ParseTransportParameters(const uint - out->stateless_reset_token.assign(CBS_data(&value), - CBS_data(&value) + CBS_len(&value)); - break; -- case kMaxPacketSize: -+ case TransportParameters::kMaxPacketSize: - parse_success = out->max_packet_size.ReadFromCbs(&value); - break; -- case kInitialMaxData: -+ case TransportParameters::kInitialMaxData: - parse_success = out->initial_max_data.ReadFromCbs(&value); - break; -- case kInitialMaxStreamDataBidiLocal: -+ case TransportParameters::kInitialMaxStreamDataBidiLocal: - parse_success = - out->initial_max_stream_data_bidi_local.ReadFromCbs(&value); - break; -- case kInitialMaxStreamDataBidiRemote: -+ case TransportParameters::kInitialMaxStreamDataBidiRemote: - parse_success = - out->initial_max_stream_data_bidi_remote.ReadFromCbs(&value); - break; -- case kInitialMaxStreamDataUni: -+ case TransportParameters::kInitialMaxStreamDataUni: - parse_success = out->initial_max_stream_data_uni.ReadFromCbs(&value); - break; -- case kInitialMaxStreamsBidi: -+ case TransportParameters::kInitialMaxStreamsBidi: - parse_success = out->initial_max_streams_bidi.ReadFromCbs(&value); - break; -- case kInitialMaxStreamsUni: -+ case TransportParameters::kInitialMaxStreamsUni: - parse_success = out->initial_max_streams_uni.ReadFromCbs(&value); - break; -- case kAckDelayExponent: -+ case TransportParameters::kAckDelayExponent: - parse_success = out->ack_delay_exponent.ReadFromCbs(&value); - break; -- case kMaxAckDelay: -+ case TransportParameters::kMaxAckDelay: - parse_success = out->max_ack_delay.ReadFromCbs(&value); - break; -- case kDisableMigration: -+ case TransportParameters::kDisableMigration: - if (out->disable_migration) { - QUIC_DLOG(ERROR) << "Received a second disable migration"; - return false; -@@ -638,7 +638,7 @@ bool ParseTransportParameters(const uint - } - out->disable_migration = true; - break; -- case kPreferredAddress: { -+ case TransportParameters::kPreferredAddress: { - uint16_t ipv4_port, ipv6_port; - in_addr ipv4_address; - in6_addr ipv6_address; -@@ -692,7 +692,7 @@ bool ParseTransportParameters(const uint - QuicMakeUnique( - preferred_address); - } break; -- case kGoogleQuicParam: { -+ case TransportParameters::kGoogleQuicParam: { - if (out->google_quic_params) { - QUIC_DLOG(ERROR) << "Received a second Google parameter"; - return false; -@@ -701,7 +701,7 @@ bool ParseTransportParameters(const uint - reinterpret_cast(CBS_data(&value)), CBS_len(&value)); - out->google_quic_params = CryptoFramer::ParseMessage(serialized_params); - } break; -- case kGoogleQuicVersion: { -+ case TransportParameters::kGoogleQuicVersion: { - if (!CBS_get_u32(&value, &out->version)) { - QUIC_DLOG(ERROR) << "Failed to parse Google version extension"; - return false; -diff -up chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc.quiche-compile-fix chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc ---- chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc.quiche-compile-fix 2019-08-14 09:59:19.139902052 +0200 -+++ chromium-76.0.3809.100/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc 2019-08-14 09:59:33.132041535 +0200 -@@ -2,10 +2,12 @@ - // Use of this source code is governed by a BSD-style license that can be - // found in the LICENSE file. - --#include -- - #include "net/third_party/quiche/src/quic/core/quic_socket_address_coder.h" - -+#include -+#include -+#include -+ - namespace quic { - - namespace { diff --git a/chromium-76.0.3809.100-throttling-dead-beef.patch b/chromium-76.0.3809.100-throttling-dead-beef.patch deleted file mode 100644 index 5e392e6..0000000 --- a/chromium-76.0.3809.100-throttling-dead-beef.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 53bb5a463ee956c70230eaa5450022185d0ddc3c Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Thu, 06 Jun 2019 07:54:05 +0000 -Subject: [PATCH] ThrottlingController::Liveness needs to be uint32_t - -We are setting kAlive and kDead values assigning values that -are bigger than the maximum signed int32. It is better to use -uint32_t in this case. - -Bug: 819294 -Change-Id: If72b48291a66a3a9db24b4c8e2d11d31936a66ee -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645772 -Reviewed-by: Kinuko Yasuda -Commit-Queue: José Dapena Paz -Cr-Commit-Position: refs/heads/master@{#666619} ---- - -diff --git a/services/network/throttling/throttling_controller.h b/services/network/throttling/throttling_controller.h -index 43751c4..3c6f87b 100644 ---- a/services/network/throttling/throttling_controller.h -+++ b/services/network/throttling/throttling_controller.h -@@ -38,7 +38,7 @@ - - // TODO(https://crbug.com/960874): Debugging code to try and shed some light - // on why the owned maps are invalid. -- enum class Liveness : int32_t { -+ enum class Liveness : uint32_t { - kAlive = 0xCA11AB13, - kDead = 0xDEADBEEF, - }; diff --git a/chromium-76.0.3809.100-weak-ptr-no-except.patch b/chromium-76.0.3809.100-weak-ptr-no-except.patch deleted file mode 100644 index a392971..0000000 --- a/chromium-76.0.3809.100-weak-ptr-no-except.patch +++ /dev/null @@ -1,66 +0,0 @@ -From 0370838723e786b51e7ec8ab55014811ec3e3aa3 Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Thu, 18 Jul 2019 14:26:11 +0200 -Subject: [PATCH] Make base::WeakPtr move constructor/operator noexcept to fix GCC build regression - -A GCC build regression has happened on DisjointRangeLockManager, as its move -operator and constructor were declared noexcept. This was failing because the -default implementation depended on base::WeakPtr, that did not provide -noexcept declaration for them. - -So make base::WeakPtr noexcept. - -Bug: 819294 -Change-Id: I936784b881c7c1afea136ceedbe9341e76464f95 ---- - -diff --git a/base/memory/weak_ptr.cc b/base/memory/weak_ptr.cc -index 64fd499..0efcc44 100644 ---- a/base/memory/weak_ptr.cc -+++ b/base/memory/weak_ptr.cc -@@ -46,7 +46,7 @@ - - WeakReference::~WeakReference() = default; - --WeakReference::WeakReference(WeakReference&& other) = default; -+WeakReference::WeakReference(WeakReference&& other) noexcept = default; - - WeakReference::WeakReference(const WeakReference& other) = default; - -diff --git a/base/memory/weak_ptr.h b/base/memory/weak_ptr.h -index 72b5f1f..ccd22fd13 100644 ---- a/base/memory/weak_ptr.h -+++ b/base/memory/weak_ptr.h -@@ -116,9 +116,9 @@ - explicit WeakReference(const scoped_refptr& flag); - ~WeakReference(); - -- WeakReference(WeakReference&& other); -+ WeakReference(WeakReference&& other) noexcept; - WeakReference(const WeakReference& other); -- WeakReference& operator=(WeakReference&& other) = default; -+ WeakReference& operator=(WeakReference&& other) noexcept = default; - WeakReference& operator=(const WeakReference& other) = default; - - bool IsValid() const; -@@ -153,9 +153,9 @@ - ~WeakPtrBase(); - - WeakPtrBase(const WeakPtrBase& other) = default; -- WeakPtrBase(WeakPtrBase&& other) = default; -+ WeakPtrBase(WeakPtrBase&& other) noexcept = default; - WeakPtrBase& operator=(const WeakPtrBase& other) = default; -- WeakPtrBase& operator=(WeakPtrBase&& other) = default; -+ WeakPtrBase& operator=(WeakPtrBase&& other) noexcept = default; - - void reset() { - ref_ = internal::WeakReference(); -@@ -236,7 +236,7 @@ - ptr_ = reinterpret_cast(t); - } - template -- WeakPtr(WeakPtr&& other) : WeakPtrBase(std::move(other)) { -+ WeakPtr(WeakPtr&& other) noexcept : WeakPtrBase(std::move(other)) { - // Need to cast from U* to T* to do pointer adjustment in case of multiple - // inheritance. This also enforces the "U is a T" rule. - T* t = reinterpret_cast(other.ptr_); diff --git a/chromium-76.0.3809.132-gcc-ambigous-instantiation.patch b/chromium-76.0.3809.132-gcc-ambigous-instantiation.patch deleted file mode 100644 index 73db4d4..0000000 --- a/chromium-76.0.3809.132-gcc-ambigous-instantiation.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -up chromium-76.0.3809.132/services/network/cross_origin_read_blocking.cc.gcc-ambigous-instantiation chromium-76.0.3809.132/services/network/cross_origin_read_blocking.cc ---- chromium-76.0.3809.132/services/network/cross_origin_read_blocking.cc.gcc-ambigous-instantiation 2019-08-26 21:02:33.000000000 +0200 -+++ chromium-76.0.3809.132/services/network/cross_origin_read_blocking.cc 2019-08-27 06:58:23.963821667 +0200 -@@ -207,7 +207,7 @@ std::set& GetPluginProxyingProcesse - // confirmation sniffing because images, scripts, etc. are frequently - // mislabelled by http servers as HTML/JSON/XML). - base::flat_set& GetNeverSniffedMimeTypes() { -- static base::NoDestructor> s_types({ -+ static base::NoDestructor> s_types{{ - // The list below has been populated based on most commonly used content - // types according to HTTP Archive - see: - // https://github.com/whatwg/fetch/issues/860#issuecomment-457330454 -@@ -219,7 +219,7 @@ base::flat_set& GetNeverSni - "application/x-protobuf", - "application/zip", - "text/event-stream", -- }); -+ }}; - - // All items need to be lower-case, to support case-insensitive comparisons - // later. diff --git a/chromium-77.0.3865.75-boolfix.patch b/chromium-77.0.3865.75-boolfix.patch new file mode 100644 index 0000000..c836214 --- /dev/null +++ b/chromium-77.0.3865.75-boolfix.patch @@ -0,0 +1,24 @@ +diff -up chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_ptr_info.h +--- chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix 2019-09-09 23:55:20.000000000 +0200 ++++ chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_ptr_info.h 2019-09-12 15:43:30.025360946 +0200 +@@ -45,7 +45,7 @@ class AssociatedInterfacePtrInfo { + + bool is_valid() const { return handle_.is_valid(); } + +- explicit operator bool() const { return handle_.is_valid(); } ++ explicit operator bool() const { return (bool) handle_.is_valid(); } + + ScopedInterfaceEndpointHandle PassHandle() { + return std::move(handle_); +diff -up chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_request.h.boolfix chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_request.h +--- chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_request.h.boolfix 2019-09-09 23:55:20.000000000 +0200 ++++ chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_request.h 2019-09-12 15:43:30.025360946 +0200 +@@ -51,7 +51,7 @@ class AssociatedInterfaceRequest { + // handle. + 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(); } + + ScopedInterfaceEndpointHandle PassHandle() { return std::move(handle_); } + diff --git a/chromium-76.0.3809.132-certificate-transparency.patch b/chromium-77.0.3865.75-certificate-transparency.patch similarity index 73% rename from chromium-76.0.3809.132-certificate-transparency.patch rename to chromium-77.0.3865.75-certificate-transparency.patch index 8bfbced..82e2958 100644 --- a/chromium-76.0.3809.132-certificate-transparency.patch +++ b/chromium-77.0.3865.75-certificate-transparency.patch @@ -1,18 +1,18 @@ -diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager_browsertest.cc ---- chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager_browsertest.cc.certificate-transparency 2019-09-03 22:08:28.931786496 +0200 -+++ chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager_browsertest.cc 2019-09-03 22:15:24.743555759 +0200 -@@ -17,6 +17,7 @@ - #include "chrome/common/pref_names.h" - #include "chrome/test/base/in_process_browser_test.h" - #include "components/prefs/pref_service.h" +diff -up chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager_browsertest.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager_browsertest.cc +--- chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager_browsertest.cc.certificate-transparency 2019-09-12 16:09:52.818635106 +0200 ++++ chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager_browsertest.cc 2019-09-12 16:11:07.662562005 +0200 +@@ -21,6 +21,7 @@ + #include "components/version_info/version_info.h" + #include "content/public/common/content_switches.h" + #include "content/public/common/user_agent.h" +#include "services/network/public/cpp/network_service_buildflags.h" #include "services/network/public/mojom/network_context.mojom.h" #include "services/network/public/mojom/network_service.mojom.h" #include "testing/gmock/include/gmock/gmock.h" -@@ -297,3 +298,55 @@ IN_PROC_BROWSER_TEST_P(SystemNetworkCont +@@ -356,3 +357,55 @@ IN_PROC_BROWSER_TEST_P(SystemNetworkCont INSTANTIATE_TEST_SUITE_P(, - SystemNetworkContextManagerStubResolverBrowsertest, - ::testing::Values(false, true)); + SystemNetworkContextManagerFreezeQUICUaBrowsertest, + ::testing::Values(true, false)); + +class SystemNetworkContextManagerCertificateTransparencyBrowsertest + : public SystemNetworkContextManagerBrowsertest, @@ -65,9 +65,9 @@ diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manage + , + SystemNetworkContextManagerCertificateTransparencyBrowsertest, + ::testing::Values(base::nullopt, true, false)); -diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc ---- chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc.certificate-transparency 2019-08-26 21:02:05.000000000 +0200 -+++ chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.cc 2019-09-03 22:13:26.451198970 +0200 +diff -up chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.cc +--- chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.cc.certificate-transparency 2019-09-09 23:55:09.000000000 +0200 ++++ chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.cc 2019-09-12 16:09:52.819635118 +0200 @@ -4,11 +4,13 @@ #include "chrome/browser/net/system_network_context_manager.h" @@ -82,7 +82,7 @@ diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manage #include "base/command_line.h" #include "base/feature_list.h" #include "base/logging.h" -@@ -51,6 +53,7 @@ +@@ -50,6 +52,7 @@ #include "content/public/common/mime_handler_view_mode.h" #include "content/public/common/service_names.mojom.h" #include "content/public/common/user_agent.h" @@ -90,7 +90,7 @@ diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manage #include "mojo/public/cpp/bindings/associated_interface_ptr.h" #include "net/dns/public/util.h" #include "net/net_buildflags.h" -@@ -81,6 +84,20 @@ +@@ -79,6 +82,20 @@ namespace { @@ -111,7 +111,7 @@ diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manage // The global instance of the SystemNetworkContextmanager. SystemNetworkContextManager* g_system_network_context_manager = nullptr; -@@ -686,14 +703,35 @@ SystemNetworkContextManager::CreateDefau +@@ -658,14 +675,35 @@ SystemNetworkContextManager::CreateDefau bool http_09_on_non_default_ports_enabled = false; #if !defined(OS_ANDROID) @@ -155,7 +155,7 @@ diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manage } const base::Value* value = -@@ -756,6 +794,12 @@ SystemNetworkContextManager::GetHttpAuth +@@ -723,6 +761,12 @@ SystemNetworkContextManager::GetHttpAuth return CreateHttpAuthDynamicParams(g_browser_process->local_state()); } @@ -168,10 +168,10 @@ diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manage network::mojom::NetworkContextParamsPtr SystemNetworkContextManager::CreateNetworkContextParams() { // TODO(mmenke): Set up parameters here (in memory cookie store, etc). -diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.h.certificate-transparency chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.h ---- chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.h.certificate-transparency 2019-08-26 21:02:05.000000000 +0200 -+++ chromium-76.0.3809.132/chrome/browser/net/system_network_context_manager.h 2019-09-03 22:08:28.931786496 +0200 -@@ -158,6 +158,12 @@ class SystemNetworkContextManager { +diff -up chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.h.certificate-transparency chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.h +--- chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.h.certificate-transparency 2019-09-09 23:55:09.000000000 +0200 ++++ chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.h 2019-09-12 16:09:52.819635118 +0200 +@@ -139,6 +139,12 @@ class SystemNetworkContextManager { static network::mojom::HttpAuthDynamicParamsPtr GetHttpAuthDynamicParamsForTesting(); @@ -184,10 +184,10 @@ diff -up chromium-76.0.3809.132/chrome/browser/net/system_network_context_manage private: class URLLoaderFactoryForSystem; -diff -up chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc ---- chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc.certificate-transparency 2019-08-26 21:02:05.000000000 +0200 -+++ chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc 2019-09-03 22:08:28.932786508 +0200 -@@ -4834,7 +4834,7 @@ IN_PROC_BROWSER_TEST_P(SSLPolicyTestComm +diff -up chromium-77.0.3865.75/chrome/browser/policy/policy_browsertest.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/policy/policy_browsertest.cc +--- chromium-77.0.3865.75/chrome/browser/policy/policy_browsertest.cc.certificate-transparency 2019-09-09 23:55:10.000000000 +0200 ++++ chromium-77.0.3865.75/chrome/browser/policy/policy_browsertest.cc 2019-09-12 16:09:52.820635131 +0200 +@@ -4836,7 +4836,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, browser()->tab_strip_model()->GetActiveWebContents()->GetTitle()); } @@ -196,9 +196,9 @@ diff -up chromium-76.0.3809.132/chrome/browser/policy/policy_browsertest.cc.cert CertificateTransparencyEnforcementDisabledForCas) { net::EmbeddedTestServer https_server_ok(net::EmbeddedTestServer::TYPE_HTTPS); https_server_ok.SetSSLConfig(net::EmbeddedTestServer::CERT_OK); -diff -up chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc ---- chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc.certificate-transparency 2019-08-26 21:02:07.000000000 +0200 -+++ chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc 2019-09-03 22:08:28.932786508 +0200 +diff -up chromium-77.0.3865.75/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc +--- chromium-77.0.3865.75/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc.certificate-transparency 2019-09-09 23:55:10.000000000 +0200 ++++ chromium-77.0.3865.75/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc 2019-09-12 16:09:52.821635143 +0200 @@ -8,6 +8,7 @@ #include "base/callback.h" #include "base/run_loop.h" @@ -226,10 +226,10 @@ diff -up chromium-76.0.3809.132/chrome/browser/ssl/chrome_expect_ct_reporter_bro void SetUpOnMainThread() override { run_loop_ = std::make_unique(); -diff -up chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_browsertest.cc ---- chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_browsertest.cc.certificate-transparency 2019-08-26 21:02:07.000000000 +0200 -+++ chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_browsertest.cc 2019-09-03 22:08:28.932786508 +0200 -@@ -457,6 +457,13 @@ class SecurityStateTabHelperTest : publi +diff -up chromium-77.0.3865.75/chrome/browser/ssl/security_state_tab_helper_browsertest.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/ssl/security_state_tab_helper_browsertest.cc +--- chromium-77.0.3865.75/chrome/browser/ssl/security_state_tab_helper_browsertest.cc.certificate-transparency 2019-09-09 23:55:10.000000000 +0200 ++++ chromium-77.0.3865.75/chrome/browser/ssl/security_state_tab_helper_browsertest.cc 2019-09-12 16:09:52.821635143 +0200 +@@ -433,6 +433,13 @@ class SecurityStateTabHelperTest : publi SecurityStateTabHelperTest() : https_server_(net::EmbeddedTestServer::TYPE_HTTPS) { https_server_.ServeFilesFromSourceDirectory(GetChromeTestDataDir()); @@ -243,10 +243,10 @@ diff -up chromium-76.0.3809.132/chrome/browser/ssl/security_state_tab_helper_bro } void SetUpOnMainThread() override { -diff -up chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc.certificate-transparency chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc ---- chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc.certificate-transparency 2019-08-26 21:02:07.000000000 +0200 -+++ chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc 2019-09-03 22:08:28.934786531 +0200 -@@ -2008,8 +2008,14 @@ class CertificateTransparencySSLUITest : +diff -up chromium-77.0.3865.75/chrome/browser/ssl/ssl_browsertest.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/ssl/ssl_browsertest.cc +--- chromium-77.0.3865.75/chrome/browser/ssl/ssl_browsertest.cc.certificate-transparency 2019-09-09 23:55:10.000000000 +0200 ++++ chromium-77.0.3865.75/chrome/browser/ssl/ssl_browsertest.cc 2019-09-12 16:09:52.822635155 +0200 +@@ -1853,8 +1853,14 @@ class CertificateTransparencySSLUITest : public: CertificateTransparencySSLUITest() : CertVerifierBrowserTest(), @@ -263,9 +263,9 @@ diff -up chromium-76.0.3809.132/chrome/browser/ssl/ssl_browsertest.cc.certificat void SetUpOnMainThread() override { CertVerifierBrowserTest::SetUpOnMainThread(); -diff -up chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_policy_enforcer.h.certificate-transparency chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_policy_enforcer.h ---- chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_policy_enforcer.h.certificate-transparency 2019-08-26 21:02:14.000000000 +0200 -+++ chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_policy_enforcer.h 2019-09-03 22:08:28.934786531 +0200 +diff -up chromium-77.0.3865.75/components/certificate_transparency/chrome_ct_policy_enforcer.h.certificate-transparency chromium-77.0.3865.75/components/certificate_transparency/chrome_ct_policy_enforcer.h +--- chromium-77.0.3865.75/components/certificate_transparency/chrome_ct_policy_enforcer.h.certificate-transparency 2019-09-09 23:55:14.000000000 +0200 ++++ chromium-77.0.3865.75/components/certificate_transparency/chrome_ct_policy_enforcer.h 2019-09-12 16:09:52.823635168 +0200 @@ -45,6 +45,19 @@ class ChromeCTPolicyEnforcer : public ne void SetClockForTesting(const base::Clock* clock) { clock_ = clock; } @@ -286,10 +286,10 @@ diff -up chromium-76.0.3809.132/components/certificate_transparency/chrome_ct_po private: // Returns true if the log identified by |log_id| (the SHA-256 hash of the // log's DER-encoded SPKI) has been disqualified, and sets -diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate-transparency chromium-76.0.3809.132/services/network/network_context.cc ---- chromium-76.0.3809.132/services/network/network_context.cc.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 -+++ chromium-76.0.3809.132/services/network/network_context.cc 2019-09-03 22:17:27.977834857 +0200 -@@ -35,6 +35,7 @@ +diff -up chromium-77.0.3865.75/services/network/network_context.cc.certificate-transparency chromium-77.0.3865.75/services/network/network_context.cc +--- chromium-77.0.3865.75/services/network/network_context.cc.certificate-transparency 2019-09-09 23:55:22.000000000 +0200 ++++ chromium-77.0.3865.75/services/network/network_context.cc 2019-09-12 16:09:52.823635168 +0200 +@@ -36,6 +36,7 @@ #include "components/prefs/pref_registry_simple.h" #include "components/prefs/pref_service.h" #include "components/prefs/pref_service_factory.h" @@ -297,7 +297,7 @@ diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate- #include "mojo/public/cpp/bindings/strong_binding.h" #include "net/base/layered_network_delegate.h" #include "net/base/load_flags.h" -@@ -1851,16 +1852,6 @@ URLRequestContextOwner NetworkContext::A +@@ -1877,16 +1878,6 @@ URLRequestContextOwner NetworkContext::A base::FeatureList::IsEnabled(features::kNetworkErrorLogging)); #endif // BUILDFLAG(ENABLE_REPORTING) @@ -314,7 +314,7 @@ diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate- net::HttpNetworkSession::Params session_params; bool is_quic_force_disabled = false; if (network_service_ && network_service_->quic_disabled()) -@@ -1910,8 +1901,20 @@ URLRequestContextOwner NetworkContext::A +@@ -1936,8 +1927,20 @@ URLRequestContextOwner NetworkContext::A #if BUILDFLAG(IS_CT_SUPPORTED) std::vector> ct_logs; @@ -335,7 +335,7 @@ diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate- scoped_refptr log_verifier = net::CTLogVerifier::Create(log->public_key, log->name); if (!log_verifier) { -@@ -1924,6 +1927,17 @@ URLRequestContextOwner NetworkContext::A +@@ -1950,6 +1953,17 @@ URLRequestContextOwner NetworkContext::A ct_verifier->AddLogs(ct_logs); builder->set_ct_verifier(std::move(ct_verifier)); } @@ -353,9 +353,9 @@ diff -up chromium-76.0.3809.132/services/network/network_context.cc.certificate- #endif // BUILDFLAG(IS_CT_SUPPORTED) const base::CommandLine* command_line = -diff -up chromium-76.0.3809.132/services/network/network_context_unittest.cc.certificate-transparency chromium-76.0.3809.132/services/network/network_context_unittest.cc ---- chromium-76.0.3809.132/services/network/network_context_unittest.cc.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 -+++ chromium-76.0.3809.132/services/network/network_context_unittest.cc 2019-09-03 22:20:22.382888089 +0200 +diff -up chromium-77.0.3865.75/services/network/network_context_unittest.cc.certificate-transparency chromium-77.0.3865.75/services/network/network_context_unittest.cc +--- chromium-77.0.3865.75/services/network/network_context_unittest.cc.certificate-transparency 2019-09-09 23:55:22.000000000 +0200 ++++ chromium-77.0.3865.75/services/network/network_context_unittest.cc 2019-09-12 16:13:10.479056669 +0200 @@ -2,6 +2,7 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. @@ -374,10 +374,10 @@ diff -up chromium-76.0.3809.132/services/network/network_context_unittest.cc.cer #include "components/network_session_configurator/common/network_switches.h" #include "components/prefs/testing_pref_service.h" +#include "crypto/sha2.h" - #include "mojo/public/cpp/bindings/interface_request.h" - #include "mojo/public/cpp/bindings/strong_binding.h" + #include "mojo/public/cpp/bindings/remote.h" + #include "mojo/public/cpp/bindings/self_owned_receiver.h" #include "mojo/public/cpp/system/data_pipe_utils.h" -@@ -113,6 +116,11 @@ +@@ -115,6 +118,11 @@ #include "url/scheme_host_port.h" #include "url/url_constants.h" @@ -386,11 +386,11 @@ diff -up chromium-76.0.3809.132/services/network/network_context_unittest.cc.cer +#include "services/network/public/mojom/ct_log_info.mojom.h" +#endif + - #if BUILDFLAG(ENABLE_REPORTING) - #include "net/network_error_logging/network_error_logging_service.h" - #include "net/reporting/reporting_cache.h" -@@ -5566,6 +5574,72 @@ TEST_F(NetworkContextTest, BlockAllCooki - EXPECT_EQ("None", response_body); + #if !BUILDFLAG(DISABLE_FTP_SUPPORT) + #include "net/ftp/ftp_auth_cache.h" + #endif // !BUILDFLAG(DISABLE_FTP_SUPPORT) +@@ -5958,6 +5966,72 @@ TEST_F(NetworkContextSplitCacheTest, + true /* was_cached */, true /* is_navigation */); } +#if BUILDFLAG(IS_CT_SUPPORTED) @@ -462,9 +462,9 @@ diff -up chromium-76.0.3809.132/services/network/network_context_unittest.cc.cer } // namespace } // namespace network -diff -up chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom.certificate-transparency chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom ---- chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 -+++ chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom 2019-09-03 22:08:28.936786554 +0200 +diff -up chromium-77.0.3865.75/services/network/public/mojom/ct_log_info.mojom.certificate-transparency chromium-77.0.3865.75/services/network/public/mojom/ct_log_info.mojom +--- chromium-77.0.3865.75/services/network/public/mojom/ct_log_info.mojom.certificate-transparency 2019-09-09 23:55:22.000000000 +0200 ++++ chromium-77.0.3865.75/services/network/public/mojom/ct_log_info.mojom 2019-09-12 16:09:52.824635180 +0200 @@ -4,6 +4,8 @@ module network.mojom; @@ -488,10 +488,10 @@ diff -up chromium-76.0.3809.132/services/network/public/mojom/ct_log_info.mojom. + // If the log is currently qualified, this will not be set. + mojo_base.mojom.TimeDelta? disqualified_at; }; -diff -up chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom.certificate-transparency chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom ---- chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom.certificate-transparency 2019-08-26 21:02:33.000000000 +0200 -+++ chromium-76.0.3809.132/services/network/public/mojom/network_context.mojom 2019-09-03 22:08:28.936786554 +0200 -@@ -238,15 +238,6 @@ struct NetworkContextParams { +diff -up chromium-77.0.3865.75/services/network/public/mojom/network_context.mojom.certificate-transparency chromium-77.0.3865.75/services/network/public/mojom/network_context.mojom +--- chromium-77.0.3865.75/services/network/public/mojom/network_context.mojom.certificate-transparency 2019-09-09 23:55:22.000000000 +0200 ++++ chromium-77.0.3865.75/services/network/public/mojom/network_context.mojom 2019-09-12 16:09:52.825635192 +0200 +@@ -239,15 +239,6 @@ struct NetworkContextParams { [EnableIf=is_android] bool check_clear_text_permitted = false; @@ -507,7 +507,7 @@ diff -up chromium-76.0.3809.132/services/network/public/mojom/network_context.mo // Enables HTTP/0.9 on ports other than 80 for HTTP and 443 for HTTPS. bool http_09_on_non_default_ports_enabled = false; -@@ -299,6 +290,15 @@ struct NetworkContextParams { +@@ -300,6 +291,15 @@ struct NetworkContextParams { // servers, so they can discover misconfigurations. bool enable_certificate_reporting = false; @@ -523,7 +523,7 @@ diff -up chromium-76.0.3809.132/services/network/public/mojom/network_context.mo // Enables Expect CT reporting, which sends reports for opted-in sites that // don't serve sufficient Certificate Transparency information. [EnableIf=is_ct_supported] -@@ -310,6 +310,13 @@ struct NetworkContextParams { +@@ -311,6 +311,13 @@ struct NetworkContextParams { [EnableIf=is_ct_supported] array ct_logs; diff --git a/chromium-77.0.3865.75-fedora-user-agent.patch b/chromium-77.0.3865.75-fedora-user-agent.patch new file mode 100644 index 0000000..8f6de51 --- /dev/null +++ b/chromium-77.0.3865.75-fedora-user-agent.patch @@ -0,0 +1,12 @@ +diff -up chromium-77.0.3865.75/content/common/user_agent.cc.fedora-user-agent chromium-77.0.3865.75/content/common/user_agent.cc +--- chromium-77.0.3865.75/content/common/user_agent.cc.fedora-user-agent 2019-09-12 15:49:11.902270729 +0200 ++++ chromium-77.0.3865.75/content/common/user_agent.cc 2019-09-12 15:50:11.555732044 +0200 +@@ -35,7 +35,7 @@ std::string GetUserAgentPlatform() { + #elif defined(OS_MACOSX) + return "Macintosh; "; + #elif defined(USE_X11) || defined(USE_OZONE) +- return "X11; "; // strange, but that's what Firefox uses ++ return "X11; Fedora; "; // strange, but that's what Firefox uses + #elif defined(OS_ANDROID) + return "Linux; "; + #elif defined(OS_POSIX) diff --git a/chromium-77.0.3865.75-fix-v8-gcc.patch b/chromium-77.0.3865.75-fix-v8-gcc.patch new file mode 100644 index 0000000..385778c --- /dev/null +++ b/chromium-77.0.3865.75-fix-v8-gcc.patch @@ -0,0 +1,14 @@ +diff -up chromium-77.0.3865.75/v8/src/objects/js-objects.cc.fix-v8-gcc chromium-77.0.3865.75/v8/src/objects/js-objects.cc +--- chromium-77.0.3865.75/v8/src/objects/js-objects.cc.fix-v8-gcc 2019-09-12 15:55:18.936238980 +0200 ++++ chromium-77.0.3865.75/v8/src/objects/js-objects.cc 2019-09-12 15:56:06.796645726 +0200 +@@ -3773,6 +3773,10 @@ Handle CreateElementDi + return new_element_dictionary; + } + ++template void JSObject::ApplyAttributesToDictionary( ++ Isolate* isolate, ReadOnlyRoots roots, Handle dictionary, ++ const PropertyAttributes attributes); ++ + template + Maybe JSObject::PreventExtensionsWithTransition( + Handle object, ShouldThrow should_throw) { diff --git a/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch b/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch new file mode 100644 index 0000000..d342e2d --- /dev/null +++ b/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch @@ -0,0 +1,13 @@ +diff -up chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h.nogccoptmath chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h +--- chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h.nogccoptmath 2019-09-12 09:55:13.041038765 +0200 ++++ chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h 2019-09-12 10:11:14.088101504 +0200 +@@ -24,8 +24,7 @@ + #elif !defined(__native_client__) && \ + ((defined(__clang__) && \ + ((__clang_major__ > 3) || \ +- (__clang_major__ == 3 && __clang_minor__ >= 4))) || \ +- (defined(__GNUC__) && __GNUC__ >= 5)) ++ (__clang_major__ == 3 && __clang_minor__ >= 4))) + #include "base/numerics/safe_math_clang_gcc_impl.h" + #define BASE_HAS_OPTIMIZED_SAFE_MATH (1) + #else diff --git a/chromium-77.0.3865.75-gcc5-r3.patch b/chromium-77.0.3865.75-gcc5-r3.patch new file mode 100644 index 0000000..34b858a --- /dev/null +++ b/chromium-77.0.3865.75-gcc5-r3.patch @@ -0,0 +1,36 @@ +diff -up chromium-77.0.3865.75/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 chromium-77.0.3865.75/gpu/ipc/common/mailbox_struct_traits.h +--- chromium-77.0.3865.75/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 2019-09-09 23:55:18.000000000 +0200 ++++ chromium-77.0.3865.75/gpu/ipc/common/mailbox_struct_traits.h 2019-09-12 10:13:16.710206500 +0200 +@@ -15,7 +15,7 @@ namespace mojo { + template <> + struct StructTraits { + static base::span name(const gpu::Mailbox& mailbox) { +- return mailbox.name; ++ return base::make_span(mailbox.name); + } + static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out); + }; +diff -up chromium-77.0.3865.75/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 chromium-77.0.3865.75/services/viz/public/cpp/compositing/quads_struct_traits.h +--- chromium-77.0.3865.75/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 2019-09-09 23:55:23.000000000 +0200 ++++ chromium-77.0.3865.75/services/viz/public/cpp/compositing/quads_struct_traits.h 2019-09-12 10:13:16.710206500 +0200 +@@ -391,7 +391,7 @@ struct StructTraits vertex_opacity(const viz::DrawQuad& input) { + const viz::TextureDrawQuad* quad = + viz::TextureDrawQuad::MaterialCast(&input); +- return quad->vertex_opacity; ++ return base::make_span(quad->vertex_opacity); + } + + static bool y_flipped(const viz::DrawQuad& input) { +diff -up chromium-77.0.3865.75/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 chromium-77.0.3865.75/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc +--- chromium-77.0.3865.75/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 2019-09-12 10:13:16.711206509 +0200 ++++ chromium-77.0.3865.75/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2019-09-12 15:41:15.300158849 +0200 +@@ -10,7 +10,7 @@ + + #include "modules/audio_processing/aec3/aec_state.h" + +-#include ++#include + + #include + #include diff --git a/chromium-77.0.3865.75-no-zlib-mangle.patch b/chromium-77.0.3865.75-no-zlib-mangle.patch new file mode 100644 index 0000000..c32d226 --- /dev/null +++ b/chromium-77.0.3865.75-no-zlib-mangle.patch @@ -0,0 +1,22 @@ +diff -up chromium-77.0.3865.75/third_party/zlib/zconf.h.nozmangle chromium-77.0.3865.75/third_party/zlib/zconf.h +--- chromium-77.0.3865.75/third_party/zlib/zconf.h.nozmangle 2019-09-12 09:36:37.924086850 +0200 ++++ chromium-77.0.3865.75/third_party/zlib/zconf.h 2019-09-12 09:53:01.623958551 +0200 +@@ -9,18 +9,6 @@ + #define ZCONF_H + + /* +- * This library is also built as a part of AOSP, which does not need to include +- * chromeconf.h. This config does not want chromeconf.h, so it can set this +- * macro to opt out. While this works today, there's no guarantee that building +- * zlib outside of Chromium keeps working in the future. +- */ +-#if !defined(CHROMIUM_ZLIB_NO_CHROMECONF) +-/* This include does prefixing as below, but with an updated set of names. Also +- * sets up export macros in component builds. */ +-#include "chromeconf.h" +-#endif +- +-/* + * If you *really* need a unique prefix for all types and library functions, + * compile with -DZ_PREFIX. The "standard" zlib should be compiled without it. + * Even better than compiling with -DZ_PREFIX would be to use configure to set diff --git a/chromium.spec b/chromium.spec index 877f8f7..a943ad5 100644 --- a/chromium.spec +++ b/chromium.spec @@ -164,14 +164,14 @@ BuildRequires: libicu-devel >= 5.4 %global chromoting_client_id %nil %endif -%global majorversion 76 +%global majorversion 77 %if %{freeworld} Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3809.132 +Version: %{majorversion}.0.3865.75 Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home @@ -211,20 +211,20 @@ Patch16: chromium-60.0.3112.78-no-libpng-prefix.patch # Do not mangle libjpeg Patch17: chromium-60.0.3112.78-jpeg-nomangle.patch # Do not mangle zlib -Patch18: chromium-75.0.3770.80-no-zlib-mangle.patch +Patch18: chromium-77.0.3865.75-no-zlib-mangle.patch # Fix libavutil include pathing to find arch specific timer.h # For some reason, this only fails on aarch64. No idea why. Patch19: chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch # from gentoo -Patch20: chromium-61.0.3163.79-gcc-no-opt-safe-math.patch +Patch20: chromium-77.0.3865.75-gcc-no-opt-safe-math.patch # From gentoo -Patch21: chromium-72.0.3626.121-gcc5-r3.patch +Patch21: chromium-77.0.3865.75-gcc5-r3.patch # To use round with gcc, you need to #include Patch22: chromium-65.0.3325.146-gcc-round-fix.patch # Include proper headers to invoke memcpy() Patch23: chromium-65.0.3325.146-memcpy-fix.patch # ../../mojo/public/cpp/bindings/associated_interface_ptr_info.h:48:43: error: cannot convert 'const mojo::ScopedInterfaceEndpointHandle' to 'bool' in return -Patch24: chromium-68.0.3440.106-boolfix.patch +Patch24: chromium-77.0.3865.75-boolfix.patch # From Debian Patch25: chromium-71.0.3578.98-skia-aarch64-buildfix.patch # Do not use unrar code, it is non-free @@ -232,7 +232,7 @@ Patch27: chromium-73.0.3683.75-norar.patch # Upstream GCC fixes Patch28: chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch # Add "Fedora" to the user agent string -Patch29: chromium-72.0.3626.121-fedora-user-agent.patch +Patch29: chromium-77.0.3865.75-fedora-user-agent.patch # Try to fix version.py for Rawhide Patch30: chromium-71.0.3578.98-py2-bootstrap.patch # Fix default on redeclaration error @@ -260,43 +260,11 @@ Patch41: chromium-75.0.3770.80-SIOCGSTAMP.patch # Revert https://chromium.googlesource.com/chromium/src/+/daff6b66faae53a0cefb88987c9ff4843629b728%5E%21/#F0 # It might make clang happy but it breaks gcc. F*** clang. Patch43: chromium-75.0.3770.80-revert-daff6b.patch -# Avoid pure virtual crash destroying RenderProcessUserData -# https://chromium.googlesource.com/chromium/src/+/cdf306db81efaaaa954487585d5a5a16205a5ebd%5E%21/ -Patch44: chromium-75.0.3770.80-pure-virtual-crash-fix.patch # rename function to avoid conflict with rawhide glibc "gettid()" Patch45: chromium-75.0.3770.80-grpc-gettid-fix.patch # fix v8 compile with gcc # https://chromium.googlesource.com/v8/v8/+/3b8c624bda58d05aea80dd9626cd550537d6ac3f%5E%21/#F1 -Patch46: chromium-75.0.3770.100-fix-v8-gcc.patch -# Fix Vulkan compilation with gcc -# https://chromium.googlesource.com/chromium/src/+/fdb3bb1f8c41d044a5b0cb80257a26dd3c8f83a3 -Patch47: chromium-76.0.3809.100-gcc-vulkan.patch -# https://chromium-review.googlesource.com/c/chromium/src/+/1645297 -Patch48: chromium-76.0.3809.100-gcc-cc-no-except.patch -# https://chromium.googlesource.com/chromium/src.git/+/502e6e42633d2571c8236c8649b031fe9915eb5b -Patch49: chromium-76.0.3809.100-gcc-net-fetcher.patch -# https://quiche.googlesource.com/quiche.git/+/9424add9d73432a794b7944790253213cce6dcb8 -Patch50: chromium-76.0.3809.100-quiche-compile-fix.patch -# https://chromium.googlesource.com/chromium/src/+/53bb5a463ee956c70230eaa5450022185d0ddc3c -Patch51: chromium-76.0.3809.100-throttling-dead-beef.patch -# https://chromium.googlesource.com/chromium/src/+/52b5ceac95b67491b1c71f0ef9a32b778bbbaa2e -Patch52: chromium-76.0.3809.132-gcc-ambigous-instantiation.patch -# https://chromium.googlesource.com/chromium/src.git/+/715cb38eac889625de0c429d2672562188b4107e -Patch53: chromium-76.0.3809.100-weak-ptr-no-except.patch -# https://chromium.googlesource.com/chromium/src.git/+/c6afbd59c997c2b64f11abdd1eaef71ae8ea2ddc -Patch54: chromium-76.0.3809.100-gcc-feature-policy-parser.patch -# https://chromium.googlesource.com/chromium/src.git/+/cf6d6b40d711fce93a24a2cf517fa3becdbae8bb -Patch55: chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch -# https://chromium.googlesource.com/chromium/src.git/+/dcb55fb8f18abe5f43d260aa67b14b2dc996f992 -Patch56: chromium-76.0.3809.100-gcc-move-explicit-initialization.patch -# https://chromium.googlesource.com/chromium/src.git/+/7dc76c8d9f4cfbce7cf11424120aa6f6094916dc -Patch57: chromium-76.0.3809.100-gcc-initialization-order.patch -# https://chromium.googlesource.com/chromium/src.git/+/138904af5d6a4158ef4247fda816a8035e621e59 -Patch58: chromium-76.0.3809.100-gcc-history-move-noexcept.patch -# https://chromium.googlesource.com/chromium/src.git/+/bdc24128b75008743d819e298557a53205706e7c -Patch59: chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch -# https://chromium.googlesource.com/chromium/src.git/+/5d7f227fa844e79568df64e495e7ef958c12d7b2 -Patch60: chromium-76.0.3809.100-gcc-themeservice-includes.patch +Patch46: chromium-77.0.3865.75-fix-v8-gcc.patch # In GCC one can't use alignas() for exported classes # https://chromium.googlesource.com/chromium/src.git/+/8148fd96ae04a1150a9c6012634dcd2a7335f87a Patch61: chromium-76.0.3809.100-gcc-no-alignas-and-export.patch @@ -305,7 +273,7 @@ Patch62: chromium-76.0.3809.100-gcc-remoting-constexpr.patch # Needs to be submitted.. (ugly hack, needs to be added properly to GN files) Patch63: chromium-76.0.3809.100-vtable-symbol-undefined.patch # https://chromium.googlesource.com/chromium/src.git/+/3c9720245e440c4b7222f8348d2a2a3c25e098ae -Patch64: chromium-76.0.3809.132-certificate-transparency.patch +Patch64: chromium-77.0.3865.75-certificate-transparency.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -846,7 +814,7 @@ udev. %patch22 -p1 -b .gcc-round-fix %patch23 -p1 -b .memcpyfix %patch24 -p1 -b .boolfix -%patch25 -p1 -b .aarch64fix +#%patch25 -p1 -b .aarch64fix %patch27 -p1 -b .nounrar %patch28 -p1 -b .gcc-cpolicyprovider %patch29 -p1 -b .fedora-user-agent @@ -861,23 +829,8 @@ udev. %patch38 -p1 -b .disable-ndnpc %patch41 -p1 -b .SIOCGSTAMP %patch43 -p1 -b .revert-daff6b -%patch44 -p1 -b .pure-virtual-fix %patch45 -p1 -b .gettid-fix %patch46 -p1 -b .fix-v8-gcc -%patch47 -p1 -b .gcc-vulkan -%patch48 -p1 -b .gcc-cc-no-except -%patch49 -p1 -b .gcc-net-fetcher -%patch50 -p1 -b .quiche-compile-fix -%patch51 -p1 -b .throttling-dead-beef -%patch52 -p1 -b .gcc-ambigous-instantiation -%patch53 -p1 -b .weak-ptr-no-except -%patch54 -p1 -b .gcc-feature-policy-parser -%patch55 -p1 -b .gcc-hasfraction-constexpr -%patch56 -p1 -b .gcc-move-explicit-initialization -%patch57 -p1 -b .gcc-initialization-order -%patch58 -p1 -b .gcc-history-move-noexcept -%patch59 -p1 -b .gcc-accountinfo-move-noexcept -%patch60 -p1 -b .gcc-themeservice-includes %patch61 -p1 -b .gcc-no-alignas-and-export %patch62 -p1 -b .gcc-remoting-constexpr %patch63 -p1 -b .vtable-symbol-undefined @@ -1466,6 +1419,7 @@ sed -i.orig -e 's/getenv("CHROME_VERSION_EXTRA")/"Fedora Project"/' $FILE . /opt/rh/devtoolset-%{dts_version}/enable %endif +echo # Now do the full browser %if 0%{freeworld} ../depot_tools/ninja -C %{target} -vvv media diff --git a/sources b/sources index 2d38a7c..a1d28bf 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-76.0.3809.132-clean.tar.xz) = fbc5f989945adfaffb9fb5199ccb988accdc53f41a03bba9c4ab3df8585b9267b1f34cd7a6ac487eff34ebb6e65865e32ceea4ad945eec30f871d8eed41f3e6f +SHA512 (chromium-77.0.3865.75-clean.tar.xz) = 9531e5d533bf305bd82ae2dbc7bf1a9e081377b61a5611f4bfa14ed389f94d106e26a9981771ed11697ca9c2490eb24c69e992fd907de241698c89a6131db0b6 From d67cac7441b5819c89c107ecdfac4344d4c1ff45 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 15:18:03 +0200 Subject: [PATCH 0513/1449] Unbundle the zlib Use the gentoo patch. --- chromium-77.0.3865.75-unbundle-zlib.patch | 25 +++++++++++++++++++++++ chromium.spec | 3 +++ 2 files changed, 28 insertions(+) create mode 100644 chromium-77.0.3865.75-unbundle-zlib.patch diff --git a/chromium-77.0.3865.75-unbundle-zlib.patch b/chromium-77.0.3865.75-unbundle-zlib.patch new file mode 100644 index 0000000..d6c45ad --- /dev/null +++ b/chromium-77.0.3865.75-unbundle-zlib.patch @@ -0,0 +1,25 @@ +From e1bbdec720a333937bd1b990ae0f7ee97db0d3b0 Mon Sep 17 00:00:00 2001 +From: Your Name +Date: Fri, 28 Jun 2019 15:56:23 +0000 +Subject: [PATCH] update zlib + +--- + third_party/perfetto/gn/BUILD.gn | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/third_party/perfetto/gn/BUILD.gn b/third_party/perfetto/gn/BUILD.gn +index c951f5f..297eee3 100644 +--- a/third_party/perfetto/gn/BUILD.gn ++++ b/third_party/perfetto/gn/BUILD.gn +@@ -200,7 +200,7 @@ group("zlib") { + "//buildtools:zlib", + ] + } else if (build_with_chromium) { +- public_configs = [ "//third_party/zlib:zlib_config" ] ++ public_configs = [ "//third_party/zlib:system_zlib" ] + public_deps = [ + "//third_party/zlib", + ] +-- +2.21.0 + diff --git a/chromium.spec b/chromium.spec index a943ad5..440ec40 100644 --- a/chromium.spec +++ b/chromium.spec @@ -274,6 +274,8 @@ Patch62: chromium-76.0.3809.100-gcc-remoting-constexpr.patch Patch63: chromium-76.0.3809.100-vtable-symbol-undefined.patch # https://chromium.googlesource.com/chromium/src.git/+/3c9720245e440c4b7222f8348d2a2a3c25e098ae Patch64: chromium-77.0.3865.75-certificate-transparency.patch +# https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-unbundle-zlib.patch +Patch65: chromium-77.0.3865.75-unbundle-zlib.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -835,6 +837,7 @@ udev. %patch62 -p1 -b .gcc-remoting-constexpr %patch63 -p1 -b .vtable-symbol-undefined %patch64 -p1 -b .certificate-transparency +%patch65 -p1 -b .unbundle-zlib # EPEL specific patches %if 0%{?rhel} == 7 From f28acfd9940af3210e4d7d1d9d07a2d782008116 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 15:23:46 +0200 Subject: [PATCH 0514/1449] Missing bundled dependency for headless --- chromium.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/chromium.spec b/chromium.spec index 440ec40..92e6b78 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1230,6 +1230,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ %endif 'third_party/openscreen' \ 'third_party/opus' \ + 'third_party/one_euro_filter' \ 'third_party/ots' \ 'third_party/pdfium' \ 'third_party/pdfium/third_party/agg23' \ From d1ec1a4e823df3c2fd27786a44ba7fd2a7fa2ea0 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 15:21:43 +0200 Subject: [PATCH 0515/1449] Fix the previously rebased patched --- chromium-77.0.3865.75-gcc-no-opt-safe-math.patch | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch b/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch index d342e2d..920a53e 100644 --- a/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch +++ b/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch @@ -1,13 +1,15 @@ diff -up chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h.nogccoptmath chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h ---- chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h.nogccoptmath 2019-09-12 09:55:13.041038765 +0200 -+++ chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h 2019-09-12 10:11:14.088101504 +0200 -@@ -24,8 +24,7 @@ +--- chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h.nogccoptmath 2019-09-13 14:17:22.726738088 +0200 ++++ chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h 2019-09-13 14:31:37.686898493 +0200 +@@ -23,9 +23,8 @@ + // Where available use builtin math overflow support on Clang and GCC. #elif !defined(__native_client__) && \ ((defined(__clang__) && \ - ((__clang_major__ > 3) || \ +- ((__clang_major__ > 3) || \ - (__clang_major__ == 3 && __clang_minor__ >= 4))) || \ - (defined(__GNUC__) && __GNUC__ >= 5)) -+ (__clang_major__ == 3 && __clang_minor__ >= 4))) ++ (__clang_major__ > 3) || \ ++ (__clang_major__ == 3 && __clang_minor__ >= 4))) #include "base/numerics/safe_math_clang_gcc_impl.h" #define BASE_HAS_OPTIMIZED_SAFE_MATH (1) #else From 6c65d57f62000ea56b75cc5808cb3f144d4a6b53 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 15:18:54 +0200 Subject: [PATCH 0516/1449] Update the clean-ffmpeg.sh script --- clean_ffmpeg.sh | 1 + sources | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh index 2f27435..fd226e8 100755 --- a/clean_ffmpeg.sh +++ b/clean_ffmpeg.sh @@ -138,6 +138,7 @@ header_files=" libavcodec/x86/inline_asm.h \ libavcodec/vlc.h \ libavcodec/vorbisdsp.h \ libavcodec/vp3data.h \ + libavcodec/vp4data.h \ libavcodec/vp3dsp.h \ libavcodec/vp56.h \ libavcodec/vp56dsp.h \ diff --git a/sources b/sources index a1d28bf..b9b0498 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-77.0.3865.75-clean.tar.xz) = 9531e5d533bf305bd82ae2dbc7bf1a9e081377b61a5611f4bfa14ed389f94d106e26a9981771ed11697ca9c2490eb24c69e992fd907de241698c89a6131db0b6 +SHA512 (chromium-77.0.3865.75-clean.tar.xz) = ca7a71586a60abeacb70b9d08ba9a28455d875bfa5232070fdff079e52395924b80f05d7627e3a5d5c7a3df606a39a31e05634683a052c9efb634ed536afc092 From 9c8a63d90f343b982094879bb8d0709266e1487b Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 15:24:09 +0200 Subject: [PATCH 0517/1449] Include to fix the headless build --- chromium-77.0.3865.75-gcc-include-memory.patch | 12 ++++++++++++ chromium.spec | 3 +++ 2 files changed, 15 insertions(+) create mode 100644 chromium-77.0.3865.75-gcc-include-memory.patch diff --git a/chromium-77.0.3865.75-gcc-include-memory.patch b/chromium-77.0.3865.75-gcc-include-memory.patch new file mode 100644 index 0000000..93b4399 --- /dev/null +++ b/chromium-77.0.3865.75-gcc-include-memory.patch @@ -0,0 +1,12 @@ +diff -up chromium-77.0.3865.75/third_party/one_euro_filter/src/one_euro_filter.h.gcc-include-memory chromium-77.0.3865.75/third_party/one_euro_filter/src/one_euro_filter.h +--- chromium-77.0.3865.75/third_party/one_euro_filter/src/one_euro_filter.h.gcc-include-memory 2019-09-13 14:44:24.962770079 +0200 ++++ chromium-77.0.3865.75/third_party/one_euro_filter/src/one_euro_filter.h 2019-09-13 14:44:45.347073612 +0200 +@@ -3,6 +3,8 @@ + + #include "low_pass_filter.h" + ++#include ++ + namespace one_euro_filter { + namespace test { + class OneEuroFilterTest; diff --git a/chromium.spec b/chromium.spec index 92e6b78..980a57d 100644 --- a/chromium.spec +++ b/chromium.spec @@ -276,6 +276,8 @@ Patch63: chromium-76.0.3809.100-vtable-symbol-undefined.patch Patch64: chromium-77.0.3865.75-certificate-transparency.patch # https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-unbundle-zlib.patch Patch65: chromium-77.0.3865.75-unbundle-zlib.patch +# Needs to be submitted.. +Patch66: chromium-77.0.3865.75-gcc-include-memory.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -838,6 +840,7 @@ udev. %patch63 -p1 -b .vtable-symbol-undefined %patch64 -p1 -b .certificate-transparency %patch65 -p1 -b .unbundle-zlib +%patch66 -p1 -b .gcc-include-memory # EPEL specific patches %if 0%{?rhel} == 7 From 122b5264219f3fcb4bb46164393ed5660149ac59 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 15:00:03 +0200 Subject: [PATCH 0518/1449] Use the bundled harfbuzz-ng for < F31 Needed because of the hb_subset_input_set_retain_gids(), that's only available in harbuzz 2.4 that's only in F31+ --- chromium.spec | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/chromium.spec b/chromium.spec index 980a57d..129f8b9 100644 --- a/chromium.spec +++ b/chromium.spec @@ -133,9 +133,9 @@ BuildRequires: libicu-devel >= 5.4 %global bundlefontconfig 0 %endif -# Needs at least harfbuzz 2.3.0 now. -# 2019-03-13 -%if 0%{?fedora} < 30 +# Needs at least harfbuzz 2.4.0 now. +# 2019-09-13 +%if 0%{?fedora} < 31 %global bundleharfbuzz 1 %else %global bundleharfbuzz 0 From 039149eb6d0d64949043fec966b256ceb99a1dc0 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 21:48:17 +0200 Subject: [PATCH 0519/1449] Remove an unneeded patch that's breaking the build --- chromium-77.0.3865.75-fix-v8-gcc.patch | 14 -------------- chromium.spec | 4 ---- 2 files changed, 18 deletions(-) delete mode 100644 chromium-77.0.3865.75-fix-v8-gcc.patch diff --git a/chromium-77.0.3865.75-fix-v8-gcc.patch b/chromium-77.0.3865.75-fix-v8-gcc.patch deleted file mode 100644 index 385778c..0000000 --- a/chromium-77.0.3865.75-fix-v8-gcc.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -up chromium-77.0.3865.75/v8/src/objects/js-objects.cc.fix-v8-gcc chromium-77.0.3865.75/v8/src/objects/js-objects.cc ---- chromium-77.0.3865.75/v8/src/objects/js-objects.cc.fix-v8-gcc 2019-09-12 15:55:18.936238980 +0200 -+++ chromium-77.0.3865.75/v8/src/objects/js-objects.cc 2019-09-12 15:56:06.796645726 +0200 -@@ -3773,6 +3773,10 @@ Handle CreateElementDi - return new_element_dictionary; - } - -+template void JSObject::ApplyAttributesToDictionary( -+ Isolate* isolate, ReadOnlyRoots roots, Handle dictionary, -+ const PropertyAttributes attributes); -+ - template - Maybe JSObject::PreventExtensionsWithTransition( - Handle object, ShouldThrow should_throw) { diff --git a/chromium.spec b/chromium.spec index 129f8b9..a6daffc 100644 --- a/chromium.spec +++ b/chromium.spec @@ -262,9 +262,6 @@ Patch41: chromium-75.0.3770.80-SIOCGSTAMP.patch Patch43: chromium-75.0.3770.80-revert-daff6b.patch # rename function to avoid conflict with rawhide glibc "gettid()" Patch45: chromium-75.0.3770.80-grpc-gettid-fix.patch -# fix v8 compile with gcc -# https://chromium.googlesource.com/v8/v8/+/3b8c624bda58d05aea80dd9626cd550537d6ac3f%5E%21/#F1 -Patch46: chromium-77.0.3865.75-fix-v8-gcc.patch # In GCC one can't use alignas() for exported classes # https://chromium.googlesource.com/chromium/src.git/+/8148fd96ae04a1150a9c6012634dcd2a7335f87a Patch61: chromium-76.0.3809.100-gcc-no-alignas-and-export.patch @@ -834,7 +831,6 @@ udev. %patch41 -p1 -b .SIOCGSTAMP %patch43 -p1 -b .revert-daff6b %patch45 -p1 -b .gettid-fix -%patch46 -p1 -b .fix-v8-gcc %patch61 -p1 -b .gcc-no-alignas-and-export %patch62 -p1 -b .gcc-remoting-constexpr %patch63 -p1 -b .vtable-symbol-undefined From 7d528767a1b680d421f3d4c014e132775dda38e1 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 22:05:31 +0200 Subject: [PATCH 0520/1449] Another export and alignas gcc compilation fix --- chromium-77.0.3865.75-base-gcc-no-alignas.patch | 12 ++++++++++++ chromium.spec | 3 +++ 2 files changed, 15 insertions(+) create mode 100644 chromium-77.0.3865.75-base-gcc-no-alignas.patch diff --git a/chromium-77.0.3865.75-base-gcc-no-alignas.patch b/chromium-77.0.3865.75-base-gcc-no-alignas.patch new file mode 100644 index 0000000..86a2271 --- /dev/null +++ b/chromium-77.0.3865.75-base-gcc-no-alignas.patch @@ -0,0 +1,12 @@ +diff -up chromium-77.0.3865.75/base/task/promise/dependent_list.h.base-gcc-no-alignas chromium-77.0.3865.75/base/task/promise/dependent_list.h +--- chromium-77.0.3865.75/base/task/promise/dependent_list.h.base-gcc-no-alignas 2019-09-13 21:45:51.873172347 +0200 ++++ chromium-77.0.3865.75/base/task/promise/dependent_list.h 2019-09-13 21:46:21.661522514 +0200 +@@ -59,7 +59,7 @@ class BASE_EXPORT DependentList { + + // Align Node on an 8-byte boundary to ensure the first 3 bits are 0 and can + // be used to store additional state (see static_asserts below). +- class BASE_EXPORT alignas(8) Node { ++ class BASE_EXPORT ALIGNAS(8) Node { + public: + Node(); + explicit Node(Node&& other) noexcept; diff --git a/chromium.spec b/chromium.spec index a6daffc..328b149 100644 --- a/chromium.spec +++ b/chromium.spec @@ -275,6 +275,8 @@ Patch64: chromium-77.0.3865.75-certificate-transparency.patch Patch65: chromium-77.0.3865.75-unbundle-zlib.patch # Needs to be submitted.. Patch66: chromium-77.0.3865.75-gcc-include-memory.patch +# Needs to be submitted.. +Patch67: chromium-77.0.3865.75-base-gcc-no-alignas.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -837,6 +839,7 @@ udev. %patch64 -p1 -b .certificate-transparency %patch65 -p1 -b .unbundle-zlib %patch66 -p1 -b .gcc-include-memory +%patch67 -p1 -b .base-gcc-no-alignas # EPEL specific patches %if 0%{?rhel} == 7 From bcedb0cfff4bf28519602300456219efa959a92f Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 22:06:07 +0200 Subject: [PATCH 0521/1449] Preserve the spirv heads for swiftshader compilation --- chromium.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/chromium.spec b/chromium.spec index 328b149..dca072c 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1277,6 +1277,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/swiftshader/third_party/subzero' \ 'third_party/swiftshader/third_party/llvm-subzero' \ 'third_party/swiftshader/third_party/llvm-7.0' \ + 'third_party/swiftshader/third_party/SPIRV-Headers' \ 'third_party/tcmalloc' \ 'third_party/test_fonts' \ 'third_party/usb_ids' \ From 1803f2eb6a24153611bf8df1db467b2eca15fc31 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 13 Sep 2019 22:13:56 +0200 Subject: [PATCH 0522/1449] Fix the release number and add a changelog entry --- chromium.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index dca072c..b959409 100644 --- a/chromium.spec +++ b/chromium.spec @@ -172,7 +172,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3865.75 -Release: 2%{?dist} +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1872,6 +1872,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Fri Sep 13 2019 Tomas Popela - 77.0.3865.75-1 +- Update to 77.0.3865.75 + * Tue Sep 03 2019 Tomas Popela - 76.0.3809.132-2 - Backport patch to fix certificate transparency From 254cf9a9a905ad6e4c61c827789a7a01cfaf0b8e Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Sat, 14 Sep 2019 11:09:46 +0200 Subject: [PATCH 0523/1449] More of the harfbuzz related fixes --- chromium-77.0.3865.75-harfbuzz-subset.patch | 49 +++++++++++++++++++++ chromium.spec | 7 ++- 2 files changed, 54 insertions(+), 2 deletions(-) create mode 100644 chromium-77.0.3865.75-harfbuzz-subset.patch diff --git a/chromium-77.0.3865.75-harfbuzz-subset.patch b/chromium-77.0.3865.75-harfbuzz-subset.patch new file mode 100644 index 0000000..55d78d1 --- /dev/null +++ b/chromium-77.0.3865.75-harfbuzz-subset.patch @@ -0,0 +1,49 @@ +From 27e25336b8316ff3ec4e464058682ed85801fd06 Mon Sep 17 00:00:00 2001 +From: Raphael Kubo da Costa +Date: Mon, 29 Jul 2019 10:54:28 +0000 +Subject: [PATCH] Also link against libharfbuzz-subset when use_system_harfbuzz is true + +When building HarfBuzz as part of Chromium, there is a single source set +with all the files we need in the build. + +Upstream HarfBuzz, on the other hand, produces a few different libraries: +harfbuzz, harfbuzz-icu and harfbuzz-subset. When |use_system_harfbuzz| is +true, we were only looking for (and using) harfbuzz.pc with pkg-config even +though we also use symbols from libharfbuzz-subset.so. This resulted in +errors when linking: + + ld: obj/skia/skia/SkPDFSubsetFont.o: in function `SkPDFSubsetFont(sk_sp, SkPDFGlyphUse const&, SkPDF::Metadata::Subsetter, char const*, int)': + SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x48a): undefined reference to `hb_subset_input_create_or_fail' + ld: SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x4af): undefined reference to `hb_subset_input_glyph_set' + ld: SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x5d7): undefined reference to `hb_subset_input_set_retain_gids' + ld: SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x5e4): undefined reference to `hb_subset_input_set_drop_hints' + ld: SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x5f3): undefined reference to `hb_subset' + ld: SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x66f): undefined reference to `hb_subset_input_destroy' + +as reported in +https://groups.google.com/a/chromium.org/d/msg/chromium-packagers/UyJsVJ5QqWo/jSv5z7-rEQAJ + +Change-Id: I997af075c7b7263cd7cc71a63db5b0f93bd1ab59 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1715288 +Auto-Submit: Raphael Kubo da Costa +Commit-Queue: Dominik Röttsches +Reviewed-by: Dominik Röttsches +Cr-Commit-Position: refs/heads/master@{#681760} +--- + +diff --git a/third_party/harfbuzz-ng/BUILD.gn b/third_party/harfbuzz-ng/BUILD.gn +index 37d8e33..72013eb1d 100644 +--- a/third_party/harfbuzz-ng/BUILD.gn ++++ b/third_party/harfbuzz-ng/BUILD.gn +@@ -16,7 +16,10 @@ + "//third_party:freetype_harfbuzz", + "//third_party/freetype:freetype_source", + ] +- packages = [ "harfbuzz" ] ++ packages = [ ++ "harfbuzz", ++ "harfbuzz-subset", ++ ] + } + } else { + config("harfbuzz_config") { diff --git a/chromium.spec b/chromium.spec index b959409..277fcfe 100644 --- a/chromium.spec +++ b/chromium.spec @@ -277,6 +277,8 @@ Patch65: chromium-77.0.3865.75-unbundle-zlib.patch Patch66: chromium-77.0.3865.75-gcc-include-memory.patch # Needs to be submitted.. Patch67: chromium-77.0.3865.75-base-gcc-no-alignas.patch +# https://chromium.googlesource.com/chromium/src/+/27e25336b8316ff3ec4e464058682ed85801fd06 +Patch68: chromium-77.0.3865.75-harfbuzz-subset.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -362,7 +364,7 @@ BuildRequires: gperf %if 0%{?bundleharfbuzz} #nothing %else -BuildRequires: harfbuzz-devel >= 2.3.0 +BuildRequires: harfbuzz-devel >= 2.4.0 %endif BuildRequires: libatomic BuildRequires: libcap-devel @@ -624,7 +626,7 @@ Provides: bundled(freetype) = 2.9.3 %endif Provides: bundled(gperftools) = svn144 %if 0%{?bundleharfbuzz} -Provides: bundled(harfbuzz) = 2.3.0 +Provides: bundled(harfbuzz) = 2.4.0 %endif Provides: bundled(hunspell) = 1.6.0 Provides: bundled(iccjpeg) @@ -840,6 +842,7 @@ udev. %patch65 -p1 -b .unbundle-zlib %patch66 -p1 -b .gcc-include-memory %patch67 -p1 -b .base-gcc-no-alignas +%patch68 -p1 -b .harfbuzz-subset # EPEL specific patches %if 0%{?rhel} == 7 From 0388e8d7f5831fce37d9f3edf9756657e0d7d190 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Sat, 14 Sep 2019 11:10:29 +0200 Subject: [PATCH 0524/1449] Don't remove an additional bundled library --- chromium.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/chromium.spec b/chromium.spec index 277fcfe..4a74346 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1234,6 +1234,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/openh264' \ %endif 'third_party/openscreen' \ + 'third_party/openscreen/src/third_party/tinycbor' \ 'third_party/opus' \ 'third_party/one_euro_filter' \ 'third_party/ots' \ From 83db2ad437745c2db7dbd3d914948a7e3a9655f0 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Sat, 14 Sep 2019 17:06:52 +0200 Subject: [PATCH 0525/1449] Backport another GCC build fix --- ...mium-77.0.3865.75-gcc-abstract-class.patch | 61 +++++++++++++++++++ chromium.spec | 3 + 2 files changed, 64 insertions(+) create mode 100644 chromium-77.0.3865.75-gcc-abstract-class.patch diff --git a/chromium-77.0.3865.75-gcc-abstract-class.patch b/chromium-77.0.3865.75-gcc-abstract-class.patch new file mode 100644 index 0000000..6d77299 --- /dev/null +++ b/chromium-77.0.3865.75-gcc-abstract-class.patch @@ -0,0 +1,61 @@ +From f08cb0022527081c078e8b96062e6c9b4fbda151 Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Fri, 26 Jul 2019 16:48:06 +0000 +Subject: [PATCH] BinaryUploadService: change parameter passing that cannot afford abstract class + +The method UploadForDeepScanning gets a Request as parameter. But Request is an +abstract class, so GCC will not allow that declaration (polimorphycs should be +passed by reference). Use std::unique_ptr so BinaryUploadService can assume +ownership. + +Bug: 819294 +Change-Id: I9e8c75cc92b01abd704d9049b0421555377da5ba +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1713550 +Reviewed-by: Daniel Rubery +Commit-Queue: José Dapena Paz +Cr-Commit-Position: refs/heads/master@{#681333} +--- + +diff --git a/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc b/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc +index 6430c89..4e90487 100644 +--- a/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc ++++ b/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc +@@ -10,7 +10,7 @@ + namespace safe_browsing { + + void BinaryUploadService::UploadForDeepScanning( +- BinaryUploadService::Request request) { ++ std::unique_ptr request) { + DCHECK_CURRENTLY_ON(content::BrowserThread::UI); + NOTREACHED(); + } +diff --git a/chrome/browser/safe_browsing/download_protection/binary_upload_service.h b/chrome/browser/safe_browsing/download_protection/binary_upload_service.h +index d2dfd83..9b6f395 100644 +--- a/chrome/browser/safe_browsing/download_protection/binary_upload_service.h ++++ b/chrome/browser/safe_browsing/download_protection/binary_upload_service.h +@@ -5,6 +5,8 @@ + #ifndef CHROME_BROWSER_SAFE_BROWSING_DOWNLOAD_PROTECTION_BINARY_UPLOAD_SERVICE_H_ + #define CHROME_BROWSER_SAFE_BROWSING_DOWNLOAD_PROTECTION_BINARY_UPLOAD_SERVICE_H_ + ++#include ++ + #include "base/callback.h" + #include "components/safe_browsing/proto/webprotect.pb.h" + +@@ -40,6 +42,7 @@ + public: + // |callback| will run on the UI thread. + explicit Request(Callback callback); ++ virtual ~Request() = default; + Request(const Request&) = delete; + Request& operator=(const Request&) = delete; + +@@ -67,7 +70,7 @@ + // Upload the given file contents for deep scanning. The results will be + // returned asynchronously by calling |request|'s |callback|. This must be + // called on the UI thread. +- void UploadForDeepScanning(Request request); ++ void UploadForDeepScanning(std::unique_ptr request); + }; + + } // namespace safe_browsing diff --git a/chromium.spec b/chromium.spec index 4a74346..625d74d 100644 --- a/chromium.spec +++ b/chromium.spec @@ -279,6 +279,8 @@ Patch66: chromium-77.0.3865.75-gcc-include-memory.patch Patch67: chromium-77.0.3865.75-base-gcc-no-alignas.patch # https://chromium.googlesource.com/chromium/src/+/27e25336b8316ff3ec4e464058682ed85801fd06 Patch68: chromium-77.0.3865.75-harfbuzz-subset.patch +# https://chromium.googlesource.com/chromium/src.git/+/f08cb0022527081c078e8b96062e6c9b4fbda151 +Patch69: chromium-77.0.3865.75-gcc-abstract-class.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -843,6 +845,7 @@ udev. %patch66 -p1 -b .gcc-include-memory %patch67 -p1 -b .base-gcc-no-alignas %patch68 -p1 -b .harfbuzz-subset +%patch69 -p1 -b .gcc-abstract-class # EPEL specific patches %if 0%{?rhel} == 7 From 6caa3f6918c6a7a48e74217c4ce1e8f6106db3bf Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Sat, 14 Sep 2019 19:15:24 +0200 Subject: [PATCH 0526/1449] Customize the ninja status to show the currently build target So one is able to realize faster, where the build is failing. --- chromium.spec | 53 ++++++++++++++++++++++++++++++--------------------- 1 file changed, 31 insertions(+), 22 deletions(-) diff --git a/chromium.spec b/chromium.spec index 625d74d..760805e 100644 --- a/chromium.spec +++ b/chromium.spec @@ -2,6 +2,13 @@ # https://fedoraproject.org/wiki/Changes/No_more_automagic_Python_bytecompilation_phase_2 %global _python_bytecompile_extra 1 +# Fancy build status, so we at least know, where we are.. +# %1 where +# %2 what +%global build_target() \ + export NINJA_STATUS="[%2:%f/%t] " ; \ + ../depot_tools/ninja -C '%1' -vvv '%2' + # This is faster when it works, but it doesn't always. %ifarch aarch64 %global use_jumbo 0 @@ -28,9 +35,9 @@ %global useapikeys 1 # Leave this alone, please. -%global target out/Release -%global headlesstarget out/Headless -%global remotingtarget out/Remoting +%global builddir out/Release +%global headlessbuilddir out/Headless +%global remotingbuilddir out/Remoting # Debuginfo packages aren't very useful here. If you need to debug # you should do a proper debug build (not implemented in this spec yet) @@ -1403,17 +1410,17 @@ if python2 -c 'import google ; print google.__path__' 2> /dev/null ; then \ fi tools/gn/bootstrap/bootstrap.py -v "$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" -%{target}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{target} +%{builddir}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{builddir} %if %{freeworld} # do not need to do headless gen %else %if %{build_headless} -%{target}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_HEADLESS_GN_DEFINES" %{headlesstarget} +%{builddir}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_HEADLESS_GN_DEFINES" %{headlessbuilddir} %endif %endif -%{target}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{remotingtarget} +%{builddir}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{remotingbuilddir} %if %{bundlelibusbx} # no hackity hack hack @@ -1433,34 +1440,36 @@ sed -i.orig -e 's/getenv("CHROME_VERSION_EXTRA")/"Fedora Project"/' $FILE . /opt/rh/devtoolset-%{dts_version}/enable %endif -echo +echo # Now do the full browser %if 0%{freeworld} -../depot_tools/ninja -C %{target} -vvv media +%build_target %{builddir} media %else %if %{build_headless} -# Do headless first. -../depot_tools/ninja -C %{headlesstarget} -vvv headless_shell +# Do headless first. +%build_target %{headlessbuilddir} headless_shell %endif -../depot_tools/ninja -C %{target} -vvv chrome chrome_sandbox chromedriver clear_key_cdm policy_templates +%build_target %{builddir} chrome +%build_target %{builddir} chrome_sandbox +%build_target %{builddir} chromedriver +%build_target %{builddir} clear_key_cdm +%build_target %{builddir} policy_templates # remote client -pushd remoting - -# ../../depot_tools/ninja -C ../%{target} -vvv remoting_me2me_host remoting_start_host remoting_it2me_native_messaging_host remoting_me2me_native_messaging_host remoting_native_messaging_manifests remoting_resources -../../depot_tools/ninja -C ../%{remotingtarget} -vvv remoting_all +# ../../depot_tools/ninja -C ../%{builddir} -vvv remoting_me2me_host remoting_start_host remoting_it2me_native_messaging_host remoting_me2me_native_messaging_host remoting_native_messaging_manifests remoting_resources +%build_target %{remotingbuilddir} remoting_all %if 0%{?build_remoting_app} %if 0%{?nacl} -GOOGLE_CLIENT_ID_REMOTING_IDENTITY_API=%{chromoting_client_id} ../../depot_tools/ninja -vv -C ../out/Release/ remoting_webapp +export GOOGLE_CLIENT_ID_REMOTING_IDENTITY_API=%{chromoting_client_id} +%build_target %{builddir} remoting_webapp %endif %endif -popd %endif # Nuke nacl/pnacl bits at the end of the build -rm -rf out/Release/gen/sdk +rm -rf %{builddir}/gen/sdk rm -rf native_client/toolchain rm -rf third_party/llvm-build/* @@ -1470,7 +1479,7 @@ rm -rf %{buildroot} %if 0%{freeworld} mkdir -p %{buildroot}%{chromium_path} -pushd %{target} +pushd %{builddir} cp -a libffmpeg.so* %{buildroot}%{chromium_path} cp -a libmedia.so* %{buildroot}%{chromium_path} mv %{buildroot}%{chromium_path}/libffmpeg.so{,.%{lsuffix}} @@ -1499,7 +1508,7 @@ sed -i "s|@@EXTRA_FLAGS@@|$EXTRA_FLAGS|g" %{buildroot}%{chromium_path}/%{chromiu ln -s %{chromium_path}/%{chromium_browser_channel}.sh %{buildroot}%{_bindir}/%{chromium_browser_channel} mkdir -p %{buildroot}%{_mandir}/man1/ -pushd %{target} +pushd %{builddir} cp -a *.pak locales resources icudtl.dat %{buildroot}%{chromium_path} %if 0%{?nacl} cp -a nacl_helper* *.nexe pnacl tls_edit %{buildroot}%{chromium_path} @@ -1550,7 +1559,7 @@ popd %endif popd -pushd %{remotingtarget} +pushd %{remotingbuilddir} # See remoting/host/installer/linux/Makefile for logic cp -a remoting_native_messaging_host %{buildroot}%{crd_path}/native-messaging-host @@ -1593,7 +1602,7 @@ cp -a remoting_client_plugin_newlib.* %{buildroot}%{chromium_path} %endif %if %{build_headless} -pushd %{headlesstarget} +pushd %{headlessbuilddir} cp -a headless_lib.pak headless_shell %{buildroot}%{chromium_path} popd %endif From 4c4b4029d4dc778ce9164dc4397e030d4954be49 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Sun, 15 Sep 2019 08:08:54 +0200 Subject: [PATCH 0527/1449] Fix the aarch64 build --- chromium-77.0.3865.75-missing-limits.patch | 28 ++++++++++++++++++++++ chromium.spec | 3 +++ 2 files changed, 31 insertions(+) create mode 100644 chromium-77.0.3865.75-missing-limits.patch diff --git a/chromium-77.0.3865.75-missing-limits.patch b/chromium-77.0.3865.75-missing-limits.patch new file mode 100644 index 0000000..3ac1770 --- /dev/null +++ b/chromium-77.0.3865.75-missing-limits.patch @@ -0,0 +1,28 @@ +From 5baf7df7f4c5971dab552897eeef94b194650ce5 Mon Sep 17 00:00:00 2001 +From: Dave Tapuska +Date: Mon, 12 Aug 2019 22:30:13 +0000 +Subject: [PATCH] Fix build failure due to missing include for std::numeric_limits usage. + +Some configurations fail to build, limits should have been included. + +BUG=992832 + +Change-Id: I894ba0543bfcef101c93259e39a31d12ae6d035c +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1747981 +Commit-Queue: Dave Tapuska +Reviewed-by: Mostyn Bramley-Moore +Cr-Commit-Position: refs/heads/master@{#686214} +--- + +diff --git a/third_party/blink/renderer/platform/exported/web_time_range.cc b/third_party/blink/renderer/platform/exported/web_time_range.cc +index 384566a..68d83e1 100644 +--- a/third_party/blink/renderer/platform/exported/web_time_range.cc ++++ b/third_party/blink/renderer/platform/exported/web_time_range.cc +@@ -31,6 +31,7 @@ + #include "third_party/blink/public/platform/web_time_range.h" + + #include ++#include + + namespace blink { + diff --git a/chromium.spec b/chromium.spec index 760805e..799b55b 100644 --- a/chromium.spec +++ b/chromium.spec @@ -288,6 +288,8 @@ Patch67: chromium-77.0.3865.75-base-gcc-no-alignas.patch Patch68: chromium-77.0.3865.75-harfbuzz-subset.patch # https://chromium.googlesource.com/chromium/src.git/+/f08cb0022527081c078e8b96062e6c9b4fbda151 Patch69: chromium-77.0.3865.75-gcc-abstract-class.patch +# https://chromium.googlesource.com/chromium/src/+/5baf7df7f4c5971dab552897eeef94b194650ce5 +Patch70: chromium-77.0.3865.75-missing-limits.patch # Apply these changes to work around EPEL7 compiler issues Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch @@ -853,6 +855,7 @@ udev. %patch67 -p1 -b .base-gcc-no-alignas %patch68 -p1 -b .harfbuzz-subset %patch69 -p1 -b .gcc-abstract-class +%patch70 -p1 -b .missing-limits # EPEL specific patches %if 0%{?rhel} == 7 From fc7ac21219f9ae283a2aca3e9d15c3bc2761e569 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Sun, 15 Sep 2019 08:11:22 +0200 Subject: [PATCH 0528/1449] 22x22 icon was removed and use the symbolic one as well --- chromium.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/chromium.spec b/chromium.spec index 799b55b..d2436e2 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1634,8 +1634,8 @@ mkdir -p %{buildroot}%{_datadir}/icons/hicolor/48x48/apps cp -a chrome/app/theme/chromium/product_logo_48.png %{buildroot}%{_datadir}/icons/hicolor/48x48/apps/%{chromium_browser_channel}.png mkdir -p %{buildroot}%{_datadir}/icons/hicolor/24x24/apps cp -a chrome/app/theme/chromium/product_logo_24.png %{buildroot}%{_datadir}/icons/hicolor/24x24/apps/%{chromium_browser_channel}.png -mkdir -p %{buildroot}%{_datadir}/icons/hicolor/22x22/apps -cp -a chrome/app/theme/chromium/product_logo_22.png %{buildroot}%{_datadir}/icons/hicolor/22x22/apps/%{chromium_browser_channel}.png +mkdir -p %{buildroot}%{_datadir}/icons/hicolor/symbolic/apps +cp -a chrome/app/theme/chromium/product_logo_22_mono.png %{buildroot}%{_datadir}/icons/hicolor/symbolic/apps/%{chromium_browser_channel}.png # Install the master_preferences file mkdir -p %{buildroot}%{_sysconfdir}/%{name} From d46699c683e772e623cbb14150d24b87c241b951 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Sun, 15 Sep 2019 13:36:44 +0200 Subject: [PATCH 0529/1449] Don't try to revert a previously removed patch --- chromium.spec | 2 -- 1 file changed, 2 deletions(-) diff --git a/chromium.spec b/chromium.spec index d2436e2..3c10174 100644 --- a/chromium.spec +++ b/chromium.spec @@ -862,8 +862,6 @@ udev. %patch100 -p1 -b .kmaxskip %patch101 -p1 -b .epel7 %patch102 -p1 -b .el7-noexcept -# Revert patch58 because it's breaking the build on el7 -%patch58 -R -p1 %endif # Feature specific patches From fa69419940e71be5ae2632b759bd664c1a3e8def Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 16 Sep 2019 14:21:14 +0200 Subject: [PATCH 0530/1449] Update the list of private libraries --- chromium.spec | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/chromium.spec b/chromium.spec index 843f1a0..6967dc4 100644 --- a/chromium.spec +++ b/chromium.spec @@ -52,7 +52,7 @@ %global crd_path %{_libdir}/chrome-remote-desktop # We don't want any libs in these directories to generate Provides -# Requires is trickier. +# Requires is trickier. # To generate this list, go into %%{buildroot}%%{chromium_path} and run # for i in `find . -name "*.so"`; do NAME=`basename -s .so $i`; printf "$NAME|"; done @@ -61,9 +61,9 @@ %global __provides_exclude_from %{chromium_path}/.*\\.so|%{chromium_path}/lib/.*\\.so|%{chromium_path}/lib/.*\\.so.* %if 0%{?rhel} == 7 -%global privlibs libevents_devices_x11|libgfx_x11|libevents_x|libgl_wrapper|libmemory_instrumentation|libdevice_vr_mojo_bindings|libdiscardable_memory_common|libui_base_ime_init|libnetwork_cpp_base|libos_crypt|libmessage_center|libmanager|libdevice_gamepad|libembedder|libGLESv2|libtracing|libskia|libgl_in_process_context|libapdu|libbluetooth|libviz_resource_format_utils|libmojo_mojom_bindings|libblink_platform|libmojom_modules_shared|libwebdata_common|libshell_dialogs|libresource_coordinator_public_mojom_blink|libgles2_utils|libgpu_ipc_service|libcaptive_portal|libvr_common|libgles2|libdisplay|libgfx_ipc_geometry|libcc_paint|libandroid_mojo_bindings_shared|libipc_mojom_shared|libffmpeg|liburl_matcher|libbindings|libservice|libwtf|libcommon|libleveldatabase|libnetwork_session_configurator|libaura|libcloud_policy_proto_generated_compile|libservice_manager_mojom_constants|libui_touch_selection|libmojo_base_lib|libservice_manager_cpp_types|libservice_manager_mojom_blink|libmojo_core_embedder|libblink_embedded_frame_sink_mojo_bindings_shared|libgesture_detection|liburl_ipc|libweb_feature_mojo_bindings_mojom|libscheduling_metrics|libresource_coordinator_cpp_features|libcc|libdiscardable_memory_client|libsessions|libblink_common|libipc|libvulkan_init|libblink_mojom_broadcastchannel_bindings_shared|libheadless_non_renderer|libcbor|libmojo_core_embedder_internal|libmojo_public_system_cpp|libmojom_core_shared|libgfx|libusb_shared|libtracing_mojom|libuser_manager|libnet|libwebgpu|libplatform_window_handler_libs|libmojo_base_mojom_shared|libui_base|libprinting|libcontent_service_mojom_shared|libstartup_tracing|libdevice_vr_mojo_bindings_blink|libraster|libsandbox|libv8_libbase|libevents|libui_base_idle|libgles2_implementation|libkeyed_service_content|libprefs|libVkLayer_core_validation|libchrome_features|libdiscardable_memory_service|libcapture_lib|libperfetto|libicui18n|libdomain_reliability|libweb_dialogs|libcc_animation|libbase|libtracing_cpp|libGLESv2|libEGL|libVkLayer_thread_safety|libmedia_gpu|libparsers|libservice_manager_cpp|liblearning_common|libdevices|libvulkan_wrapper|libservice_manager_mojom_shared|libgfx_switches|libkeycodes_x11|libweb_feature_mojo_bindings_mojom_shared|liburl|libmpris|libppapi_proxy|libmojo_base_mojom|libprotobuf_lite|libui_base_features|libdevice_vr|libwm_public|libcolor_space|libseccomp_bpf|libinterfaces_shared|libui_base_x|libicuuc|libwebview|libdevice_event_log|libVkLayer_object_lifetimes|libvulkan_x11|libproxy_config|libnetwork_cpp|libextras|libVkICD_mock_icd|libv8_libplatform|libresource_coordinator_public_mojom|libwm|libviews|libsuid_sandbox_client|libEGL|libcapture_base|libnative_theme|libcrcrypto|libmojo_public_system|libservice_manager_mojom_constants_shared|libui_accessibility_ax_mojom_blink|libplatform|libui_data_pack|libgfx_ipc_buffer_types|libclearkeycdm|libmetrics_cpp|libmojo_base_shared_typemap_traits|libx11_events_platform|libcrash_key|libclient|libblink_controller|libfido|libfreetype_harfbuzz|libmojo_mojom_bindings_shared|libaccessibility|libstub_window|libui_base_ime|libpolicy_component|libweb_bluetooth_mojo_bindings_shared|libmojo_core_ports|libsandbox_services|libstorage_common|libviz_vulkan_context_provider|libcontent_common_mojo_bindings_shared|libgamepad_mojom_blink|libkeyed_service_core|libmedia_mojo_services|libmojo_ime_lib|libblink_modules|libgcm|libsql|libgeometry_skia|libVkLayer_unique_objects|libweb_feature_mojo_bindings_mojom_blink|libui_base_ime_linux|libdisplay_types|libdevice_vr_mojo_bindings_shared|libcc_base|libtracing_mojom_shared|libmedia_blink|libcc_mojo_embedder|libpdfium|libevents_ozone_layout|libgfx_ipc_color|libgtkui|libpolicy_proto|libcodec|libgpu|libcontent_service_cpp|libmojom_mhtml_load_result_shared|libdisplay_util|libcontent_service_mojom|libbase_i18n|libservice_manager_mojom_constants_blink|libcompositor|libmojo_base_mojom_blink|libui_message_center_cpp|libsnapshot|libdbus_thread_linux|libtab_count_metrics|libpublic|libui_accessibility_ax_mojom|liblearning_impl|librange|libbrowser_ui_views|libcontent|libvr_base|libppapi_host|libservice_manager_mojom_traits|libgamepad_mojom|libcertificate_matching|libgfx_ipc|libgl_init|libVkLayer_stateless_validation|libshared_with_blink|libshared_memory_support|libevents_base|libnet_with_v8|libmedia_webrtc|libsurface|libcontent_public_common_mojo_bindings_shared|libaura_extra|libdevice_base|libonc|libcdm_manager|libmojom_platform_shared|libui_accessibility_ax_mojom_shared|libhost|libblink_features|libdevice_features|libmirroring_service|libdbus|libgeometry|libchromium_sqlite3|libgamepad_mojom_shared|libauthenticator_test_mojo_bindings_shared|libboringssl|libembedder_switches|libgfx_ipc_skia|libzygote|libmedia_session_cpp|libv8|libnetwork_service|libx11_window|libui_base_clipboard|libanimation|libmessage_support|libui_devtools|libgamepad_shared_typemap_traits|libfingerprint|libviz_common|libppapi_shared|libstorage_browser|libbindings_base|libservice_manager_mojom|libblink_core|libgin|libresource_coordinator_public_mojom_shared|libuser_prefs|libui_base_ime_types|libipc_mojom|libmidi|libmojo_cpp_platform|libcc_debug|libui_base_clipboard_types|libmedia|libfontconfig +%global privlibs libservice|libui_accessibility_ax_mojom_blink|libmojo_mojom_bindings_shared|libcolor_space|libui_base_ime_linux|libv8|libtracing_cpp|libprotobuf_lite|librange|libui_touch_selection|libgtkui|libraster|libstub_window|libmessage_center|libv8_libplatform|libtab_count_metrics|libclient|libaura|libresource_coordinator_public_mojom_shared|libbluetooth|libipc_mojom_shared|libdevice_event_log|libcc_debug|libnet_with_v8|libcc_paint|libwm_public|libnetwork_cpp_base|libservice_manager_mojom|libaura_extra|libmojo_public_system|libpdfium|libui_base_ime_init|libmpris|libcc|libservice_manager_cpp|libblink_mojom_broadcastchannel_bindings_shared|libinterfaces_shared|libservice_manager_cpp_types|libservice_manager_mojom_shared|libwm|libbase_i18n|libnetwork_session_configurator|libwebview|libplatform_window_handler_libs|libx11_events_platform|libmojo_cpp_platform|libandroid_mojo_bindings_shared|libpublic|libmirroring_service|libmedia_session_cpp|libblink_platform|libicui18n|libwebdata_common|libgin|libdevice_gamepad|libdevice_vr_mojo_bindings|libffmpeg|libmetrics_cpp|liburl_matcher|libpolicy_proto|libshared_memory_support|libparsers|libgles2_utils|libweb_feature_mojo_bindings_mojom|libui_base_idle|libmojo_public_system_cpp|libsuid_sandbox_client|libgfx_ipc_skia|libmojo_base_shared_typemap_traits|libcapture_lib|libgl_init|libblink_common|libcc_base|libmojo_base_mojom|libtracing_mojom_shared|libgpu_ipc_service|libui_accessibility_ax_mojom|libweb_feature_mojo_bindings_mojom_shared|libgfx_switches|libmedia_session_base_cpp|libmessage_support|libvulkan_init|libonc|libgpu|libmojom_modules_shared|libnative_theme|libgcm|libvr_base|libmojo_core_embedder_internal|libuser_prefs|libweb_bluetooth_mojo_bindings_shared|libos_crypt|libbrowser_ui_views|libembedder_switches|libcontent_service_mojom_shared|libsandbox|libvulkan_x11|libdevice_vr_test_mojo_bindings|libmojo_core_ports|libblink_core|libx11_window|libmojo_mojom_bindings|libipc|libmojo_base_mojom_blink|libgl_wrapper|libprinting|libgesture_detection|libdiscardable_memory_service|libmojom_core_shared|libviz_vulkan_context_provider|libpolicy_component|libdisplay|libvr_common|libdevice_vr_test_mojo_bindings_shared|libui_accessibility_ax_mojom_shared|libresource_coordinator_public_mojom|libvulkan_wrapper|libcrcrypto|libGLESv2|libv8_libbase|libcrash_key|libchrome_features|libdiscardable_memory_common|libbindings|libfreetype_harfbuzz|libcapture_base|libmojo_core_embedder|libprefs|libdevice_features|libresource_coordinator_cpp_features|libgfx_ipc_geometry|libgfx|libui_devtools|libweb_dialogs|libkeyed_service_core|libcontent|libgeometry_skia|libdisplay_util|libservice_manager_mojom_traits|libkeycodes_x11|libipc_mojom|libmojo_base_lib|libui_base_clipboard_types|libtracing_mojom|libmanager|libmedia_webrtc|libmedia_mojo_services|libcontent_public_common_mojo_bindings_shared|libgfx_ipc|libdiscardable_memory_client|libmemory_instrumentation|libui_base_ime|libskia|libgfx_ipc_color|libshell_dialogs|libEGL|libmedia_blink|libmedia_message_center|libblink_controller|libdevice_vr_mojo_bindings_shared|libmidi|libapdu|libseccomp_bpf|libboringssl|libcolor_utils|libdbus|libproxy_config|libblink_features|libmojom_platform_shared|libshared_with_blink|libui_data_pack|libevents_x|libleveldatabase|libevents_ozone_layout|libgfx_x11|libsurface|liblearning_impl|libgamepad_mojom|libcontent_service_cpp|libui_base|libzygote|libevents|libvulkan|libGLESv2|libEGL|libcertificate_matching|libusb_shared|libbindings_base|libgfx_ipc_buffer_types|libcodec|libmojom_mhtml_load_result_shared|libstorage_common|libdevice_vr|libviz_resource_format_utils|libservice_manager_mojom_blink|libgles2|libauthenticator_test_mojo_bindings_shared|libui_base_clipboard|libgamepad_mojom_shared|libdomain_reliability|libmenu|libblink_embedded_frame_sink_mojo_bindings_shared|libwebgpu|liburl_ipc|libnet|libmedia_gpu|libservice_manager_mojom_constants_shared|libaccessibility|libservice_manager_mojom_constants|libembedder|libgamepad_mojom_blink|libcc_animation|libplatform|libdevice_base|libanimation|libgamepad_shared_typemap_traits|libwtf|libthread_linux|libui_base_x|libcloud_policy_proto_generated_compile|libsql|libhost|libextras|libchromium_sqlite3|libnetwork_cpp|libmojo_base_mojom_shared|libgeometry|libppapi_proxy|libweb_feature_mojo_bindings_mojom_blink|libcontent_common_mojo_bindings_shared|libVkICD_mock_icd|libdevice_vr_mojo_bindings_blink|libservice_manager_mojom_constants_blink|libevents_base|liburl|libresource_coordinator_public_mojom_blink|libppapi_host|libppapi_shared|libmedia|libtracing|libsandbox_services|libcontent_service_mojom|libevents_devices_x11|libcompositor|libfingerprint|libuser_manager|libstorage_browser|libbase|libkeyed_service_content|libviews|libcaptive_portal|libcbor|libviz_common|libcc_mojo_embedder|libheadless_non_renderer|libui_base_features|libsnapshot|libcommon|libnetwork_service|liblearning_common|libblink_modules|libscheduling_metrics|libperfetto|libgles2_implementation|libsessions|libdevices|libstartup_tracing|libdisplay_types|libgl_in_process_context|libui_base_ime_types|libui_message_center_cpp|libclearkeycdm|libicuuc|libfido|libfontconfig %else -%global privlibs libevents_devices_x11|libgfx_x11|libevents_x|libgl_wrapper|libmemory_instrumentation|libdevice_vr_mojo_bindings|libdiscardable_memory_common|libui_base_ime_init|libnetwork_cpp_base|libos_crypt|libmessage_center|libmanager|libdevice_gamepad|libembedder|libGLESv2|libtracing|libskia|libgl_in_process_context|libapdu|libbluetooth|libviz_resource_format_utils|libmojo_mojom_bindings|libblink_platform|libmojom_modules_shared|libwebdata_common|libshell_dialogs|libresource_coordinator_public_mojom_blink|libgles2_utils|libgpu_ipc_service|libcaptive_portal|libvr_common|libgles2|libdisplay|libgfx_ipc_geometry|libcc_paint|libandroid_mojo_bindings_shared|libipc_mojom_shared|libffmpeg|liburl_matcher|libbindings|libservice|libwtf|libcommon|libleveldatabase|libnetwork_session_configurator|libaura|libcloud_policy_proto_generated_compile|libservice_manager_mojom_constants|libui_touch_selection|libmojo_base_lib|libservice_manager_cpp_types|libservice_manager_mojom_blink|libmojo_core_embedder|libblink_embedded_frame_sink_mojo_bindings_shared|libgesture_detection|liburl_ipc|libweb_feature_mojo_bindings_mojom|libscheduling_metrics|libresource_coordinator_cpp_features|libcc|libdiscardable_memory_client|libsessions|libblink_common|libipc|libvulkan_init|libblink_mojom_broadcastchannel_bindings_shared|libheadless_non_renderer|libcbor|libmojo_core_embedder_internal|libmojo_public_system_cpp|libmojom_core_shared|libgfx|libusb_shared|libtracing_mojom|libuser_manager|libnet|libwebgpu|libplatform_window_handler_libs|libmojo_base_mojom_shared|libui_base|libprinting|libcontent_service_mojom_shared|libstartup_tracing|libdevice_vr_mojo_bindings_blink|libraster|libsandbox|libv8_libbase|libevents|libui_base_idle|libgles2_implementation|libkeyed_service_content|libprefs|libVkLayer_core_validation|libchrome_features|libdiscardable_memory_service|libcapture_lib|libperfetto|libicui18n|libdomain_reliability|libweb_dialogs|libcc_animation|libbase|libtracing_cpp|libGLESv2|libEGL|libVkLayer_thread_safety|libmedia_gpu|libparsers|libservice_manager_cpp|liblearning_common|libdevices|libvulkan_wrapper|libservice_manager_mojom_shared|libgfx_switches|libkeycodes_x11|libweb_feature_mojo_bindings_mojom_shared|liburl|libmpris|libppapi_proxy|libmojo_base_mojom|libprotobuf_lite|libui_base_features|libdevice_vr|libwm_public|libcolor_space|libseccomp_bpf|libinterfaces_shared|libui_base_x|libicuuc|libwebview|libdevice_event_log|libVkLayer_object_lifetimes|libvulkan_x11|libproxy_config|libnetwork_cpp|libextras|libVkICD_mock_icd|libv8_libplatform|libresource_coordinator_public_mojom|libwm|libviews|libsuid_sandbox_client|libEGL|libcapture_base|libnative_theme|libcrcrypto|libmojo_public_system|libservice_manager_mojom_constants_shared|libui_accessibility_ax_mojom_blink|libplatform|libui_data_pack|libgfx_ipc_buffer_types|libclearkeycdm|libmetrics_cpp|libmojo_base_shared_typemap_traits|libx11_events_platform|libcrash_key|libclient|libblink_controller|libfido|libfreetype_harfbuzz|libmojo_mojom_bindings_shared|libaccessibility|libstub_window|libui_base_ime|libpolicy_component|libweb_bluetooth_mojo_bindings_shared|libmojo_core_ports|libsandbox_services|libstorage_common|libviz_vulkan_context_provider|libcontent_common_mojo_bindings_shared|libgamepad_mojom_blink|libkeyed_service_core|libmedia_mojo_services|libmojo_ime_lib|libblink_modules|libgcm|libsql|libgeometry_skia|libVkLayer_unique_objects|libweb_feature_mojo_bindings_mojom_blink|libui_base_ime_linux|libdisplay_types|libdevice_vr_mojo_bindings_shared|libcc_base|libtracing_mojom_shared|libmedia_blink|libcc_mojo_embedder|libpdfium|libevents_ozone_layout|libgfx_ipc_color|libgtkui|libpolicy_proto|libcodec|libgpu|libcontent_service_cpp|libmojom_mhtml_load_result_shared|libdisplay_util|libcontent_service_mojom|libbase_i18n|libservice_manager_mojom_constants_blink|libcompositor|libmojo_base_mojom_blink|libui_message_center_cpp|libsnapshot|libdbus_thread_linux|libtab_count_metrics|libpublic|libui_accessibility_ax_mojom|liblearning_impl|librange|libbrowser_ui_views|libcontent|libvr_base|libppapi_host|libservice_manager_mojom_traits|libgamepad_mojom|libcertificate_matching|libgfx_ipc|libgl_init|libVkLayer_stateless_validation|libshared_with_blink|libshared_memory_support|libevents_base|libnet_with_v8|libmedia_webrtc|libsurface|libcontent_public_common_mojo_bindings_shared|libaura_extra|libdevice_base|libonc|libcdm_manager|libmojom_platform_shared|libui_accessibility_ax_mojom_shared|libhost|libblink_features|libdevice_features|libmirroring_service|libdbus|libgeometry|libchromium_sqlite3|libgamepad_mojom_shared|libauthenticator_test_mojo_bindings_shared|libboringssl|libembedder_switches|libgfx_ipc_skia|libzygote|libmedia_session_cpp|libv8|libnetwork_service|libx11_window|libui_base_clipboard|libanimation|libmessage_support|libui_devtools|libgamepad_shared_typemap_traits|libfingerprint|libviz_common|libppapi_shared|libstorage_browser|libbindings_base|libservice_manager_mojom|libblink_core|libgin|libresource_coordinator_public_mojom_shared|libuser_prefs|libui_base_ime_types|libipc_mojom|libmidi|libmojo_cpp_platform|libcc_debug|libui_base_clipboard_types|libmedia +%global privlibs libservice|libui_accessibility_ax_mojom_blink|libmojo_mojom_bindings_shared|libcolor_space|libui_base_ime_linux|libv8|libtracing_cpp|libprotobuf_lite|librange|libui_touch_selection|libgtkui|libraster|libstub_window|libmessage_center|libv8_libplatform|libtab_count_metrics|libclient|libaura|libresource_coordinator_public_mojom_shared|libbluetooth|libipc_mojom_shared|libdevice_event_log|libcc_debug|libnet_with_v8|libcc_paint|libwm_public|libnetwork_cpp_base|libservice_manager_mojom|libaura_extra|libmojo_public_system|libpdfium|libui_base_ime_init|libmpris|libcc|libservice_manager_cpp|libblink_mojom_broadcastchannel_bindings_shared|libinterfaces_shared|libservice_manager_cpp_types|libservice_manager_mojom_shared|libwm|libbase_i18n|libnetwork_session_configurator|libwebview|libplatform_window_handler_libs|libx11_events_platform|libmojo_cpp_platform|libandroid_mojo_bindings_shared|libpublic|libmirroring_service|libmedia_session_cpp|libblink_platform|libicui18n|libwebdata_common|libgin|libdevice_gamepad|libdevice_vr_mojo_bindings|libffmpeg|libmetrics_cpp|liburl_matcher|libpolicy_proto|libshared_memory_support|libparsers|libgles2_utils|libweb_feature_mojo_bindings_mojom|libui_base_idle|libmojo_public_system_cpp|libsuid_sandbox_client|libgfx_ipc_skia|libmojo_base_shared_typemap_traits|libcapture_lib|libgl_init|libblink_common|libcc_base|libmojo_base_mojom|libtracing_mojom_shared|libgpu_ipc_service|libui_accessibility_ax_mojom|libweb_feature_mojo_bindings_mojom_shared|libgfx_switches|libmedia_session_base_cpp|libmessage_support|libvulkan_init|libonc|libgpu|libmojom_modules_shared|libnative_theme|libgcm|libvr_base|libmojo_core_embedder_internal|libuser_prefs|libweb_bluetooth_mojo_bindings_shared|libos_crypt|libbrowser_ui_views|libembedder_switches|libcontent_service_mojom_shared|libsandbox|libvulkan_x11|libdevice_vr_test_mojo_bindings|libmojo_core_ports|libblink_core|libx11_window|libmojo_mojom_bindings|libipc|libmojo_base_mojom_blink|libgl_wrapper|libprinting|libgesture_detection|libdiscardable_memory_service|libmojom_core_shared|libviz_vulkan_context_provider|libpolicy_component|libdisplay|libvr_common|libdevice_vr_test_mojo_bindings_shared|libui_accessibility_ax_mojom_shared|libresource_coordinator_public_mojom|libvulkan_wrapper|libcrcrypto|libGLESv2|libv8_libbase|libcrash_key|libchrome_features|libdiscardable_memory_common|libbindings|libfreetype_harfbuzz|libcapture_base|libmojo_core_embedder|libprefs|libdevice_features|libresource_coordinator_cpp_features|libgfx_ipc_geometry|libgfx|libui_devtools|libweb_dialogs|libkeyed_service_core|libcontent|libgeometry_skia|libdisplay_util|libservice_manager_mojom_traits|libkeycodes_x11|libipc_mojom|libmojo_base_lib|libui_base_clipboard_types|libtracing_mojom|libmanager|libmedia_webrtc|libmedia_mojo_services|libcontent_public_common_mojo_bindings_shared|libgfx_ipc|libdiscardable_memory_client|libmemory_instrumentation|libui_base_ime|libskia|libgfx_ipc_color|libshell_dialogs|libEGL|libmedia_blink|libmedia_message_center|libblink_controller|libdevice_vr_mojo_bindings_shared|libmidi|libapdu|libseccomp_bpf|libboringssl|libcolor_utils|libdbus|libproxy_config|libblink_features|libmojom_platform_shared|libshared_with_blink|libui_data_pack|libevents_x|libleveldatabase|libevents_ozone_layout|libgfx_x11|libsurface|liblearning_impl|libgamepad_mojom|libcontent_service_cpp|libui_base|libzygote|libevents|libvulkan|libGLESv2|libEGL|libcertificate_matching|libusb_shared|libbindings_base|libgfx_ipc_buffer_types|libcodec|libmojom_mhtml_load_result_shared|libstorage_common|libdevice_vr|libviz_resource_format_utils|libservice_manager_mojom_blink|libgles2|libauthenticator_test_mojo_bindings_shared|libui_base_clipboard|libgamepad_mojom_shared|libdomain_reliability|libmenu|libblink_embedded_frame_sink_mojo_bindings_shared|libwebgpu|liburl_ipc|libnet|libmedia_gpu|libservice_manager_mojom_constants_shared|libaccessibility|libservice_manager_mojom_constants|libembedder|libgamepad_mojom_blink|libcc_animation|libplatform|libdevice_base|libanimation|libgamepad_shared_typemap_traits|libwtf|libthread_linux|libui_base_x|libcloud_policy_proto_generated_compile|libsql|libhost|libextras|libchromium_sqlite3|libnetwork_cpp|libmojo_base_mojom_shared|libgeometry|libppapi_proxy|libweb_feature_mojo_bindings_mojom_blink|libcontent_common_mojo_bindings_shared|libVkICD_mock_icd|libdevice_vr_mojo_bindings_blink|libservice_manager_mojom_constants_blink|libevents_base|liburl|libresource_coordinator_public_mojom_blink|libppapi_host|libppapi_shared|libmedia|libtracing|libsandbox_services|libcontent_service_mojom|libevents_devices_x11|libcompositor|libfingerprint|libuser_manager|libstorage_browser|libbase|libkeyed_service_content|libviews|libcaptive_portal|libcbor|libviz_common|libcc_mojo_embedder|libheadless_non_renderer|libui_base_features|libsnapshot|libcommon|libnetwork_service|liblearning_common|libblink_modules|libscheduling_metrics|libperfetto|libgles2_implementation|libsessions|libdevices|libstartup_tracing|libdisplay_types|libgl_in_process_context|libui_base_ime_types|libui_message_center_cpp|libclearkeycdm|libicuuc|libfido %endif %global __requires_exclude ^(%{privlibs})\\.so* From dd3c28c89ec41f3999f065bab972221f5316b87a Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 16 Sep 2019 14:21:14 +0200 Subject: [PATCH 0531/1449] Update the list of private libraries --- chromium.spec | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/chromium.spec b/chromium.spec index d2436e2..496b922 100644 --- a/chromium.spec +++ b/chromium.spec @@ -52,7 +52,7 @@ %global crd_path %{_libdir}/chrome-remote-desktop # We don't want any libs in these directories to generate Provides -# Requires is trickier. +# Requires is trickier. # To generate this list, go into %%{buildroot}%%{chromium_path} and run # for i in `find . -name "*.so"`; do NAME=`basename -s .so $i`; printf "$NAME|"; done @@ -61,9 +61,9 @@ %global __provides_exclude_from %{chromium_path}/.*\\.so|%{chromium_path}/lib/.*\\.so|%{chromium_path}/lib/.*\\.so.* %if 0%{?rhel} == 7 -%global privlibs libevents_devices_x11|libgfx_x11|libevents_x|libgl_wrapper|libmemory_instrumentation|libdevice_vr_mojo_bindings|libdiscardable_memory_common|libui_base_ime_init|libnetwork_cpp_base|libos_crypt|libmessage_center|libmanager|libdevice_gamepad|libembedder|libGLESv2|libtracing|libskia|libgl_in_process_context|libapdu|libbluetooth|libviz_resource_format_utils|libmojo_mojom_bindings|libblink_platform|libmojom_modules_shared|libwebdata_common|libshell_dialogs|libresource_coordinator_public_mojom_blink|libgles2_utils|libgpu_ipc_service|libcaptive_portal|libvr_common|libgles2|libdisplay|libgfx_ipc_geometry|libcc_paint|libandroid_mojo_bindings_shared|libipc_mojom_shared|libffmpeg|liburl_matcher|libbindings|libservice|libwtf|libcommon|libleveldatabase|libnetwork_session_configurator|libaura|libcloud_policy_proto_generated_compile|libservice_manager_mojom_constants|libui_touch_selection|libmojo_base_lib|libservice_manager_cpp_types|libservice_manager_mojom_blink|libmojo_core_embedder|libblink_embedded_frame_sink_mojo_bindings_shared|libgesture_detection|liburl_ipc|libweb_feature_mojo_bindings_mojom|libscheduling_metrics|libresource_coordinator_cpp_features|libcc|libdiscardable_memory_client|libsessions|libblink_common|libipc|libvulkan_init|libblink_mojom_broadcastchannel_bindings_shared|libheadless_non_renderer|libcbor|libmojo_core_embedder_internal|libmojo_public_system_cpp|libmojom_core_shared|libgfx|libusb_shared|libtracing_mojom|libuser_manager|libnet|libwebgpu|libplatform_window_handler_libs|libmojo_base_mojom_shared|libui_base|libprinting|libcontent_service_mojom_shared|libstartup_tracing|libdevice_vr_mojo_bindings_blink|libraster|libsandbox|libv8_libbase|libevents|libui_base_idle|libgles2_implementation|libkeyed_service_content|libprefs|libVkLayer_core_validation|libchrome_features|libdiscardable_memory_service|libcapture_lib|libperfetto|libicui18n|libdomain_reliability|libweb_dialogs|libcc_animation|libbase|libtracing_cpp|libGLESv2|libEGL|libVkLayer_thread_safety|libmedia_gpu|libparsers|libservice_manager_cpp|liblearning_common|libdevices|libvulkan_wrapper|libservice_manager_mojom_shared|libgfx_switches|libkeycodes_x11|libweb_feature_mojo_bindings_mojom_shared|liburl|libmpris|libppapi_proxy|libmojo_base_mojom|libprotobuf_lite|libui_base_features|libdevice_vr|libwm_public|libcolor_space|libseccomp_bpf|libinterfaces_shared|libui_base_x|libicuuc|libwebview|libdevice_event_log|libVkLayer_object_lifetimes|libvulkan_x11|libproxy_config|libnetwork_cpp|libextras|libVkICD_mock_icd|libv8_libplatform|libresource_coordinator_public_mojom|libwm|libviews|libsuid_sandbox_client|libEGL|libcapture_base|libnative_theme|libcrcrypto|libmojo_public_system|libservice_manager_mojom_constants_shared|libui_accessibility_ax_mojom_blink|libplatform|libui_data_pack|libgfx_ipc_buffer_types|libclearkeycdm|libmetrics_cpp|libmojo_base_shared_typemap_traits|libx11_events_platform|libcrash_key|libclient|libblink_controller|libfido|libfreetype_harfbuzz|libmojo_mojom_bindings_shared|libaccessibility|libstub_window|libui_base_ime|libpolicy_component|libweb_bluetooth_mojo_bindings_shared|libmojo_core_ports|libsandbox_services|libstorage_common|libviz_vulkan_context_provider|libcontent_common_mojo_bindings_shared|libgamepad_mojom_blink|libkeyed_service_core|libmedia_mojo_services|libmojo_ime_lib|libblink_modules|libgcm|libsql|libgeometry_skia|libVkLayer_unique_objects|libweb_feature_mojo_bindings_mojom_blink|libui_base_ime_linux|libdisplay_types|libdevice_vr_mojo_bindings_shared|libcc_base|libtracing_mojom_shared|libmedia_blink|libcc_mojo_embedder|libpdfium|libevents_ozone_layout|libgfx_ipc_color|libgtkui|libpolicy_proto|libcodec|libgpu|libcontent_service_cpp|libmojom_mhtml_load_result_shared|libdisplay_util|libcontent_service_mojom|libbase_i18n|libservice_manager_mojom_constants_blink|libcompositor|libmojo_base_mojom_blink|libui_message_center_cpp|libsnapshot|libdbus_thread_linux|libtab_count_metrics|libpublic|libui_accessibility_ax_mojom|liblearning_impl|librange|libbrowser_ui_views|libcontent|libvr_base|libppapi_host|libservice_manager_mojom_traits|libgamepad_mojom|libcertificate_matching|libgfx_ipc|libgl_init|libVkLayer_stateless_validation|libshared_with_blink|libshared_memory_support|libevents_base|libnet_with_v8|libmedia_webrtc|libsurface|libcontent_public_common_mojo_bindings_shared|libaura_extra|libdevice_base|libonc|libcdm_manager|libmojom_platform_shared|libui_accessibility_ax_mojom_shared|libhost|libblink_features|libdevice_features|libmirroring_service|libdbus|libgeometry|libchromium_sqlite3|libgamepad_mojom_shared|libauthenticator_test_mojo_bindings_shared|libboringssl|libembedder_switches|libgfx_ipc_skia|libzygote|libmedia_session_cpp|libv8|libnetwork_service|libx11_window|libui_base_clipboard|libanimation|libmessage_support|libui_devtools|libgamepad_shared_typemap_traits|libfingerprint|libviz_common|libppapi_shared|libstorage_browser|libbindings_base|libservice_manager_mojom|libblink_core|libgin|libresource_coordinator_public_mojom_shared|libuser_prefs|libui_base_ime_types|libipc_mojom|libmidi|libmojo_cpp_platform|libcc_debug|libui_base_clipboard_types|libmedia|libfontconfig +%global privlibs libservice|libui_accessibility_ax_mojom_blink|libmojo_mojom_bindings_shared|libcolor_space|libui_base_ime_linux|libv8|libtracing_cpp|libprotobuf_lite|librange|libui_touch_selection|libgtkui|libraster|libstub_window|libmessage_center|libv8_libplatform|libtab_count_metrics|libclient|libaura|libresource_coordinator_public_mojom_shared|libbluetooth|libipc_mojom_shared|libdevice_event_log|libcc_debug|libnet_with_v8|libcc_paint|libwm_public|libnetwork_cpp_base|libservice_manager_mojom|libaura_extra|libmojo_public_system|libpdfium|libui_base_ime_init|libmpris|libcc|libservice_manager_cpp|libblink_mojom_broadcastchannel_bindings_shared|libinterfaces_shared|libservice_manager_cpp_types|libservice_manager_mojom_shared|libwm|libbase_i18n|libnetwork_session_configurator|libwebview|libplatform_window_handler_libs|libx11_events_platform|libmojo_cpp_platform|libandroid_mojo_bindings_shared|libpublic|libmirroring_service|libmedia_session_cpp|libblink_platform|libicui18n|libwebdata_common|libgin|libdevice_gamepad|libdevice_vr_mojo_bindings|libffmpeg|libmetrics_cpp|liburl_matcher|libpolicy_proto|libshared_memory_support|libparsers|libgles2_utils|libweb_feature_mojo_bindings_mojom|libui_base_idle|libmojo_public_system_cpp|libsuid_sandbox_client|libgfx_ipc_skia|libmojo_base_shared_typemap_traits|libcapture_lib|libgl_init|libblink_common|libcc_base|libmojo_base_mojom|libtracing_mojom_shared|libgpu_ipc_service|libui_accessibility_ax_mojom|libweb_feature_mojo_bindings_mojom_shared|libgfx_switches|libmedia_session_base_cpp|libmessage_support|libvulkan_init|libonc|libgpu|libmojom_modules_shared|libnative_theme|libgcm|libvr_base|libmojo_core_embedder_internal|libuser_prefs|libweb_bluetooth_mojo_bindings_shared|libos_crypt|libbrowser_ui_views|libembedder_switches|libcontent_service_mojom_shared|libsandbox|libvulkan_x11|libdevice_vr_test_mojo_bindings|libmojo_core_ports|libblink_core|libx11_window|libmojo_mojom_bindings|libipc|libmojo_base_mojom_blink|libgl_wrapper|libprinting|libgesture_detection|libdiscardable_memory_service|libmojom_core_shared|libviz_vulkan_context_provider|libpolicy_component|libdisplay|libvr_common|libdevice_vr_test_mojo_bindings_shared|libui_accessibility_ax_mojom_shared|libresource_coordinator_public_mojom|libvulkan_wrapper|libcrcrypto|libGLESv2|libv8_libbase|libcrash_key|libchrome_features|libdiscardable_memory_common|libbindings|libfreetype_harfbuzz|libcapture_base|libmojo_core_embedder|libprefs|libdevice_features|libresource_coordinator_cpp_features|libgfx_ipc_geometry|libgfx|libui_devtools|libweb_dialogs|libkeyed_service_core|libcontent|libgeometry_skia|libdisplay_util|libservice_manager_mojom_traits|libkeycodes_x11|libipc_mojom|libmojo_base_lib|libui_base_clipboard_types|libtracing_mojom|libmanager|libmedia_webrtc|libmedia_mojo_services|libcontent_public_common_mojo_bindings_shared|libgfx_ipc|libdiscardable_memory_client|libmemory_instrumentation|libui_base_ime|libskia|libgfx_ipc_color|libshell_dialogs|libEGL|libmedia_blink|libmedia_message_center|libblink_controller|libdevice_vr_mojo_bindings_shared|libmidi|libapdu|libseccomp_bpf|libboringssl|libcolor_utils|libdbus|libproxy_config|libblink_features|libmojom_platform_shared|libshared_with_blink|libui_data_pack|libevents_x|libleveldatabase|libevents_ozone_layout|libgfx_x11|libsurface|liblearning_impl|libgamepad_mojom|libcontent_service_cpp|libui_base|libzygote|libevents|libvulkan|libGLESv2|libEGL|libcertificate_matching|libusb_shared|libbindings_base|libgfx_ipc_buffer_types|libcodec|libmojom_mhtml_load_result_shared|libstorage_common|libdevice_vr|libviz_resource_format_utils|libservice_manager_mojom_blink|libgles2|libauthenticator_test_mojo_bindings_shared|libui_base_clipboard|libgamepad_mojom_shared|libdomain_reliability|libmenu|libblink_embedded_frame_sink_mojo_bindings_shared|libwebgpu|liburl_ipc|libnet|libmedia_gpu|libservice_manager_mojom_constants_shared|libaccessibility|libservice_manager_mojom_constants|libembedder|libgamepad_mojom_blink|libcc_animation|libplatform|libdevice_base|libanimation|libgamepad_shared_typemap_traits|libwtf|libthread_linux|libui_base_x|libcloud_policy_proto_generated_compile|libsql|libhost|libextras|libchromium_sqlite3|libnetwork_cpp|libmojo_base_mojom_shared|libgeometry|libppapi_proxy|libweb_feature_mojo_bindings_mojom_blink|libcontent_common_mojo_bindings_shared|libVkICD_mock_icd|libdevice_vr_mojo_bindings_blink|libservice_manager_mojom_constants_blink|libevents_base|liburl|libresource_coordinator_public_mojom_blink|libppapi_host|libppapi_shared|libmedia|libtracing|libsandbox_services|libcontent_service_mojom|libevents_devices_x11|libcompositor|libfingerprint|libuser_manager|libstorage_browser|libbase|libkeyed_service_content|libviews|libcaptive_portal|libcbor|libviz_common|libcc_mojo_embedder|libheadless_non_renderer|libui_base_features|libsnapshot|libcommon|libnetwork_service|liblearning_common|libblink_modules|libscheduling_metrics|libperfetto|libgles2_implementation|libsessions|libdevices|libstartup_tracing|libdisplay_types|libgl_in_process_context|libui_base_ime_types|libui_message_center_cpp|libclearkeycdm|libicuuc|libfido|libfontconfig %else -%global privlibs libevents_devices_x11|libgfx_x11|libevents_x|libgl_wrapper|libmemory_instrumentation|libdevice_vr_mojo_bindings|libdiscardable_memory_common|libui_base_ime_init|libnetwork_cpp_base|libos_crypt|libmessage_center|libmanager|libdevice_gamepad|libembedder|libGLESv2|libtracing|libskia|libgl_in_process_context|libapdu|libbluetooth|libviz_resource_format_utils|libmojo_mojom_bindings|libblink_platform|libmojom_modules_shared|libwebdata_common|libshell_dialogs|libresource_coordinator_public_mojom_blink|libgles2_utils|libgpu_ipc_service|libcaptive_portal|libvr_common|libgles2|libdisplay|libgfx_ipc_geometry|libcc_paint|libandroid_mojo_bindings_shared|libipc_mojom_shared|libffmpeg|liburl_matcher|libbindings|libservice|libwtf|libcommon|libleveldatabase|libnetwork_session_configurator|libaura|libcloud_policy_proto_generated_compile|libservice_manager_mojom_constants|libui_touch_selection|libmojo_base_lib|libservice_manager_cpp_types|libservice_manager_mojom_blink|libmojo_core_embedder|libblink_embedded_frame_sink_mojo_bindings_shared|libgesture_detection|liburl_ipc|libweb_feature_mojo_bindings_mojom|libscheduling_metrics|libresource_coordinator_cpp_features|libcc|libdiscardable_memory_client|libsessions|libblink_common|libipc|libvulkan_init|libblink_mojom_broadcastchannel_bindings_shared|libheadless_non_renderer|libcbor|libmojo_core_embedder_internal|libmojo_public_system_cpp|libmojom_core_shared|libgfx|libusb_shared|libtracing_mojom|libuser_manager|libnet|libwebgpu|libplatform_window_handler_libs|libmojo_base_mojom_shared|libui_base|libprinting|libcontent_service_mojom_shared|libstartup_tracing|libdevice_vr_mojo_bindings_blink|libraster|libsandbox|libv8_libbase|libevents|libui_base_idle|libgles2_implementation|libkeyed_service_content|libprefs|libVkLayer_core_validation|libchrome_features|libdiscardable_memory_service|libcapture_lib|libperfetto|libicui18n|libdomain_reliability|libweb_dialogs|libcc_animation|libbase|libtracing_cpp|libGLESv2|libEGL|libVkLayer_thread_safety|libmedia_gpu|libparsers|libservice_manager_cpp|liblearning_common|libdevices|libvulkan_wrapper|libservice_manager_mojom_shared|libgfx_switches|libkeycodes_x11|libweb_feature_mojo_bindings_mojom_shared|liburl|libmpris|libppapi_proxy|libmojo_base_mojom|libprotobuf_lite|libui_base_features|libdevice_vr|libwm_public|libcolor_space|libseccomp_bpf|libinterfaces_shared|libui_base_x|libicuuc|libwebview|libdevice_event_log|libVkLayer_object_lifetimes|libvulkan_x11|libproxy_config|libnetwork_cpp|libextras|libVkICD_mock_icd|libv8_libplatform|libresource_coordinator_public_mojom|libwm|libviews|libsuid_sandbox_client|libEGL|libcapture_base|libnative_theme|libcrcrypto|libmojo_public_system|libservice_manager_mojom_constants_shared|libui_accessibility_ax_mojom_blink|libplatform|libui_data_pack|libgfx_ipc_buffer_types|libclearkeycdm|libmetrics_cpp|libmojo_base_shared_typemap_traits|libx11_events_platform|libcrash_key|libclient|libblink_controller|libfido|libfreetype_harfbuzz|libmojo_mojom_bindings_shared|libaccessibility|libstub_window|libui_base_ime|libpolicy_component|libweb_bluetooth_mojo_bindings_shared|libmojo_core_ports|libsandbox_services|libstorage_common|libviz_vulkan_context_provider|libcontent_common_mojo_bindings_shared|libgamepad_mojom_blink|libkeyed_service_core|libmedia_mojo_services|libmojo_ime_lib|libblink_modules|libgcm|libsql|libgeometry_skia|libVkLayer_unique_objects|libweb_feature_mojo_bindings_mojom_blink|libui_base_ime_linux|libdisplay_types|libdevice_vr_mojo_bindings_shared|libcc_base|libtracing_mojom_shared|libmedia_blink|libcc_mojo_embedder|libpdfium|libevents_ozone_layout|libgfx_ipc_color|libgtkui|libpolicy_proto|libcodec|libgpu|libcontent_service_cpp|libmojom_mhtml_load_result_shared|libdisplay_util|libcontent_service_mojom|libbase_i18n|libservice_manager_mojom_constants_blink|libcompositor|libmojo_base_mojom_blink|libui_message_center_cpp|libsnapshot|libdbus_thread_linux|libtab_count_metrics|libpublic|libui_accessibility_ax_mojom|liblearning_impl|librange|libbrowser_ui_views|libcontent|libvr_base|libppapi_host|libservice_manager_mojom_traits|libgamepad_mojom|libcertificate_matching|libgfx_ipc|libgl_init|libVkLayer_stateless_validation|libshared_with_blink|libshared_memory_support|libevents_base|libnet_with_v8|libmedia_webrtc|libsurface|libcontent_public_common_mojo_bindings_shared|libaura_extra|libdevice_base|libonc|libcdm_manager|libmojom_platform_shared|libui_accessibility_ax_mojom_shared|libhost|libblink_features|libdevice_features|libmirroring_service|libdbus|libgeometry|libchromium_sqlite3|libgamepad_mojom_shared|libauthenticator_test_mojo_bindings_shared|libboringssl|libembedder_switches|libgfx_ipc_skia|libzygote|libmedia_session_cpp|libv8|libnetwork_service|libx11_window|libui_base_clipboard|libanimation|libmessage_support|libui_devtools|libgamepad_shared_typemap_traits|libfingerprint|libviz_common|libppapi_shared|libstorage_browser|libbindings_base|libservice_manager_mojom|libblink_core|libgin|libresource_coordinator_public_mojom_shared|libuser_prefs|libui_base_ime_types|libipc_mojom|libmidi|libmojo_cpp_platform|libcc_debug|libui_base_clipboard_types|libmedia +%global privlibs libservice|libui_accessibility_ax_mojom_blink|libmojo_mojom_bindings_shared|libcolor_space|libui_base_ime_linux|libv8|libtracing_cpp|libprotobuf_lite|librange|libui_touch_selection|libgtkui|libraster|libstub_window|libmessage_center|libv8_libplatform|libtab_count_metrics|libclient|libaura|libresource_coordinator_public_mojom_shared|libbluetooth|libipc_mojom_shared|libdevice_event_log|libcc_debug|libnet_with_v8|libcc_paint|libwm_public|libnetwork_cpp_base|libservice_manager_mojom|libaura_extra|libmojo_public_system|libpdfium|libui_base_ime_init|libmpris|libcc|libservice_manager_cpp|libblink_mojom_broadcastchannel_bindings_shared|libinterfaces_shared|libservice_manager_cpp_types|libservice_manager_mojom_shared|libwm|libbase_i18n|libnetwork_session_configurator|libwebview|libplatform_window_handler_libs|libx11_events_platform|libmojo_cpp_platform|libandroid_mojo_bindings_shared|libpublic|libmirroring_service|libmedia_session_cpp|libblink_platform|libicui18n|libwebdata_common|libgin|libdevice_gamepad|libdevice_vr_mojo_bindings|libffmpeg|libmetrics_cpp|liburl_matcher|libpolicy_proto|libshared_memory_support|libparsers|libgles2_utils|libweb_feature_mojo_bindings_mojom|libui_base_idle|libmojo_public_system_cpp|libsuid_sandbox_client|libgfx_ipc_skia|libmojo_base_shared_typemap_traits|libcapture_lib|libgl_init|libblink_common|libcc_base|libmojo_base_mojom|libtracing_mojom_shared|libgpu_ipc_service|libui_accessibility_ax_mojom|libweb_feature_mojo_bindings_mojom_shared|libgfx_switches|libmedia_session_base_cpp|libmessage_support|libvulkan_init|libonc|libgpu|libmojom_modules_shared|libnative_theme|libgcm|libvr_base|libmojo_core_embedder_internal|libuser_prefs|libweb_bluetooth_mojo_bindings_shared|libos_crypt|libbrowser_ui_views|libembedder_switches|libcontent_service_mojom_shared|libsandbox|libvulkan_x11|libdevice_vr_test_mojo_bindings|libmojo_core_ports|libblink_core|libx11_window|libmojo_mojom_bindings|libipc|libmojo_base_mojom_blink|libgl_wrapper|libprinting|libgesture_detection|libdiscardable_memory_service|libmojom_core_shared|libviz_vulkan_context_provider|libpolicy_component|libdisplay|libvr_common|libdevice_vr_test_mojo_bindings_shared|libui_accessibility_ax_mojom_shared|libresource_coordinator_public_mojom|libvulkan_wrapper|libcrcrypto|libGLESv2|libv8_libbase|libcrash_key|libchrome_features|libdiscardable_memory_common|libbindings|libfreetype_harfbuzz|libcapture_base|libmojo_core_embedder|libprefs|libdevice_features|libresource_coordinator_cpp_features|libgfx_ipc_geometry|libgfx|libui_devtools|libweb_dialogs|libkeyed_service_core|libcontent|libgeometry_skia|libdisplay_util|libservice_manager_mojom_traits|libkeycodes_x11|libipc_mojom|libmojo_base_lib|libui_base_clipboard_types|libtracing_mojom|libmanager|libmedia_webrtc|libmedia_mojo_services|libcontent_public_common_mojo_bindings_shared|libgfx_ipc|libdiscardable_memory_client|libmemory_instrumentation|libui_base_ime|libskia|libgfx_ipc_color|libshell_dialogs|libEGL|libmedia_blink|libmedia_message_center|libblink_controller|libdevice_vr_mojo_bindings_shared|libmidi|libapdu|libseccomp_bpf|libboringssl|libcolor_utils|libdbus|libproxy_config|libblink_features|libmojom_platform_shared|libshared_with_blink|libui_data_pack|libevents_x|libleveldatabase|libevents_ozone_layout|libgfx_x11|libsurface|liblearning_impl|libgamepad_mojom|libcontent_service_cpp|libui_base|libzygote|libevents|libvulkan|libGLESv2|libEGL|libcertificate_matching|libusb_shared|libbindings_base|libgfx_ipc_buffer_types|libcodec|libmojom_mhtml_load_result_shared|libstorage_common|libdevice_vr|libviz_resource_format_utils|libservice_manager_mojom_blink|libgles2|libauthenticator_test_mojo_bindings_shared|libui_base_clipboard|libgamepad_mojom_shared|libdomain_reliability|libmenu|libblink_embedded_frame_sink_mojo_bindings_shared|libwebgpu|liburl_ipc|libnet|libmedia_gpu|libservice_manager_mojom_constants_shared|libaccessibility|libservice_manager_mojom_constants|libembedder|libgamepad_mojom_blink|libcc_animation|libplatform|libdevice_base|libanimation|libgamepad_shared_typemap_traits|libwtf|libthread_linux|libui_base_x|libcloud_policy_proto_generated_compile|libsql|libhost|libextras|libchromium_sqlite3|libnetwork_cpp|libmojo_base_mojom_shared|libgeometry|libppapi_proxy|libweb_feature_mojo_bindings_mojom_blink|libcontent_common_mojo_bindings_shared|libVkICD_mock_icd|libdevice_vr_mojo_bindings_blink|libservice_manager_mojom_constants_blink|libevents_base|liburl|libresource_coordinator_public_mojom_blink|libppapi_host|libppapi_shared|libmedia|libtracing|libsandbox_services|libcontent_service_mojom|libevents_devices_x11|libcompositor|libfingerprint|libuser_manager|libstorage_browser|libbase|libkeyed_service_content|libviews|libcaptive_portal|libcbor|libviz_common|libcc_mojo_embedder|libheadless_non_renderer|libui_base_features|libsnapshot|libcommon|libnetwork_service|liblearning_common|libblink_modules|libscheduling_metrics|libperfetto|libgles2_implementation|libsessions|libdevices|libstartup_tracing|libdisplay_types|libgl_in_process_context|libui_base_ime_types|libui_message_center_cpp|libclearkeycdm|libicuuc|libfido %endif %global __requires_exclude ^(%{privlibs})\\.so* From ce1cd8e39484eefc8575db11fcc6c4b3ebceef43 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 16 Sep 2019 14:23:29 +0200 Subject: [PATCH 0532/1449] Update the list of private libraries --- chromium.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 6967dc4..87d6b6c 100644 --- a/chromium.spec +++ b/chromium.spec @@ -183,7 +183,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3865.75 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1902,6 +1902,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Mon Sep 16 2019 Tomas Popela - 77.0.3865.75-2 +- Update the list of private libraries + * Fri Sep 13 2019 Tomas Popela - 77.0.3865.75-1 - Update to 77.0.3865.75 From de3e9b33bbe4855083c5bb26f7e779b7fda87d8b Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 16 Sep 2019 14:23:29 +0200 Subject: [PATCH 0533/1449] Update the list of private libraries --- chromium.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 496b922..38911e2 100644 --- a/chromium.spec +++ b/chromium.spec @@ -179,7 +179,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3865.75 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1891,6 +1891,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Mon Sep 16 2019 Tomas Popela - 77.0.3865.75-2 +- Update the list of private libraries + * Fri Sep 13 2019 Tomas Popela - 77.0.3865.75-1 - Update to 77.0.3865.75 From 7b0eb5189f249fbbbbdb3898b9b2d6f82193597a Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 16 Sep 2019 14:21:14 +0200 Subject: [PATCH 0534/1449] Update the list of private libraries --- chromium.spec | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/chromium.spec b/chromium.spec index 07dc939..29a98c0 100644 --- a/chromium.spec +++ b/chromium.spec @@ -52,7 +52,7 @@ %global crd_path %{_libdir}/chrome-remote-desktop # We don't want any libs in these directories to generate Provides -# Requires is trickier. +# Requires is trickier. # To generate this list, go into %%{buildroot}%%{chromium_path} and run # for i in `find . -name "*.so"`; do NAME=`basename -s .so $i`; printf "$NAME|"; done @@ -61,9 +61,9 @@ %global __provides_exclude_from %{chromium_path}/.*\\.so|%{chromium_path}/lib/.*\\.so|%{chromium_path}/lib/.*\\.so.* %if 0%{?rhel} == 7 -%global privlibs libevents_devices_x11|libgfx_x11|libevents_x|libgl_wrapper|libmemory_instrumentation|libdevice_vr_mojo_bindings|libdiscardable_memory_common|libui_base_ime_init|libnetwork_cpp_base|libos_crypt|libmessage_center|libmanager|libdevice_gamepad|libembedder|libGLESv2|libtracing|libskia|libgl_in_process_context|libapdu|libbluetooth|libviz_resource_format_utils|libmojo_mojom_bindings|libblink_platform|libmojom_modules_shared|libwebdata_common|libshell_dialogs|libresource_coordinator_public_mojom_blink|libgles2_utils|libgpu_ipc_service|libcaptive_portal|libvr_common|libgles2|libdisplay|libgfx_ipc_geometry|libcc_paint|libandroid_mojo_bindings_shared|libipc_mojom_shared|libffmpeg|liburl_matcher|libbindings|libservice|libwtf|libcommon|libleveldatabase|libnetwork_session_configurator|libaura|libcloud_policy_proto_generated_compile|libservice_manager_mojom_constants|libui_touch_selection|libmojo_base_lib|libservice_manager_cpp_types|libservice_manager_mojom_blink|libmojo_core_embedder|libblink_embedded_frame_sink_mojo_bindings_shared|libgesture_detection|liburl_ipc|libweb_feature_mojo_bindings_mojom|libscheduling_metrics|libresource_coordinator_cpp_features|libcc|libdiscardable_memory_client|libsessions|libblink_common|libipc|libvulkan_init|libblink_mojom_broadcastchannel_bindings_shared|libheadless_non_renderer|libcbor|libmojo_core_embedder_internal|libmojo_public_system_cpp|libmojom_core_shared|libgfx|libusb_shared|libtracing_mojom|libuser_manager|libnet|libwebgpu|libplatform_window_handler_libs|libmojo_base_mojom_shared|libui_base|libprinting|libcontent_service_mojom_shared|libstartup_tracing|libdevice_vr_mojo_bindings_blink|libraster|libsandbox|libv8_libbase|libevents|libui_base_idle|libgles2_implementation|libkeyed_service_content|libprefs|libVkLayer_core_validation|libchrome_features|libdiscardable_memory_service|libcapture_lib|libperfetto|libicui18n|libdomain_reliability|libweb_dialogs|libcc_animation|libbase|libtracing_cpp|libGLESv2|libEGL|libVkLayer_thread_safety|libmedia_gpu|libparsers|libservice_manager_cpp|liblearning_common|libdevices|libvulkan_wrapper|libservice_manager_mojom_shared|libgfx_switches|libkeycodes_x11|libweb_feature_mojo_bindings_mojom_shared|liburl|libmpris|libppapi_proxy|libmojo_base_mojom|libprotobuf_lite|libui_base_features|libdevice_vr|libwm_public|libcolor_space|libseccomp_bpf|libinterfaces_shared|libui_base_x|libicuuc|libwebview|libdevice_event_log|libVkLayer_object_lifetimes|libvulkan_x11|libproxy_config|libnetwork_cpp|libextras|libVkICD_mock_icd|libv8_libplatform|libresource_coordinator_public_mojom|libwm|libviews|libsuid_sandbox_client|libEGL|libcapture_base|libnative_theme|libcrcrypto|libmojo_public_system|libservice_manager_mojom_constants_shared|libui_accessibility_ax_mojom_blink|libplatform|libui_data_pack|libgfx_ipc_buffer_types|libclearkeycdm|libmetrics_cpp|libmojo_base_shared_typemap_traits|libx11_events_platform|libcrash_key|libclient|libblink_controller|libfido|libfreetype_harfbuzz|libmojo_mojom_bindings_shared|libaccessibility|libstub_window|libui_base_ime|libpolicy_component|libweb_bluetooth_mojo_bindings_shared|libmojo_core_ports|libsandbox_services|libstorage_common|libviz_vulkan_context_provider|libcontent_common_mojo_bindings_shared|libgamepad_mojom_blink|libkeyed_service_core|libmedia_mojo_services|libmojo_ime_lib|libblink_modules|libgcm|libsql|libgeometry_skia|libVkLayer_unique_objects|libweb_feature_mojo_bindings_mojom_blink|libui_base_ime_linux|libdisplay_types|libdevice_vr_mojo_bindings_shared|libcc_base|libtracing_mojom_shared|libmedia_blink|libcc_mojo_embedder|libpdfium|libevents_ozone_layout|libgfx_ipc_color|libgtkui|libpolicy_proto|libcodec|libgpu|libcontent_service_cpp|libmojom_mhtml_load_result_shared|libdisplay_util|libcontent_service_mojom|libbase_i18n|libservice_manager_mojom_constants_blink|libcompositor|libmojo_base_mojom_blink|libui_message_center_cpp|libsnapshot|libdbus_thread_linux|libtab_count_metrics|libpublic|libui_accessibility_ax_mojom|liblearning_impl|librange|libbrowser_ui_views|libcontent|libvr_base|libppapi_host|libservice_manager_mojom_traits|libgamepad_mojom|libcertificate_matching|libgfx_ipc|libgl_init|libVkLayer_stateless_validation|libshared_with_blink|libshared_memory_support|libevents_base|libnet_with_v8|libmedia_webrtc|libsurface|libcontent_public_common_mojo_bindings_shared|libaura_extra|libdevice_base|libonc|libcdm_manager|libmojom_platform_shared|libui_accessibility_ax_mojom_shared|libhost|libblink_features|libdevice_features|libmirroring_service|libdbus|libgeometry|libchromium_sqlite3|libgamepad_mojom_shared|libauthenticator_test_mojo_bindings_shared|libboringssl|libembedder_switches|libgfx_ipc_skia|libzygote|libmedia_session_cpp|libv8|libnetwork_service|libx11_window|libui_base_clipboard|libanimation|libmessage_support|libui_devtools|libgamepad_shared_typemap_traits|libfingerprint|libviz_common|libppapi_shared|libstorage_browser|libbindings_base|libservice_manager_mojom|libblink_core|libgin|libresource_coordinator_public_mojom_shared|libuser_prefs|libui_base_ime_types|libipc_mojom|libmidi|libmojo_cpp_platform|libcc_debug|libui_base_clipboard_types|libmedia|libfontconfig +%global privlibs libservice|libui_accessibility_ax_mojom_blink|libmojo_mojom_bindings_shared|libcolor_space|libui_base_ime_linux|libv8|libtracing_cpp|libprotobuf_lite|librange|libui_touch_selection|libgtkui|libraster|libstub_window|libmessage_center|libv8_libplatform|libtab_count_metrics|libclient|libaura|libresource_coordinator_public_mojom_shared|libbluetooth|libipc_mojom_shared|libdevice_event_log|libcc_debug|libnet_with_v8|libcc_paint|libwm_public|libnetwork_cpp_base|libservice_manager_mojom|libaura_extra|libmojo_public_system|libpdfium|libui_base_ime_init|libmpris|libcc|libservice_manager_cpp|libblink_mojom_broadcastchannel_bindings_shared|libinterfaces_shared|libservice_manager_cpp_types|libservice_manager_mojom_shared|libwm|libbase_i18n|libnetwork_session_configurator|libwebview|libplatform_window_handler_libs|libx11_events_platform|libmojo_cpp_platform|libandroid_mojo_bindings_shared|libpublic|libmirroring_service|libmedia_session_cpp|libblink_platform|libicui18n|libwebdata_common|libgin|libdevice_gamepad|libdevice_vr_mojo_bindings|libffmpeg|libmetrics_cpp|liburl_matcher|libpolicy_proto|libshared_memory_support|libparsers|libgles2_utils|libweb_feature_mojo_bindings_mojom|libui_base_idle|libmojo_public_system_cpp|libsuid_sandbox_client|libgfx_ipc_skia|libmojo_base_shared_typemap_traits|libcapture_lib|libgl_init|libblink_common|libcc_base|libmojo_base_mojom|libtracing_mojom_shared|libgpu_ipc_service|libui_accessibility_ax_mojom|libweb_feature_mojo_bindings_mojom_shared|libgfx_switches|libmedia_session_base_cpp|libmessage_support|libvulkan_init|libonc|libgpu|libmojom_modules_shared|libnative_theme|libgcm|libvr_base|libmojo_core_embedder_internal|libuser_prefs|libweb_bluetooth_mojo_bindings_shared|libos_crypt|libbrowser_ui_views|libembedder_switches|libcontent_service_mojom_shared|libsandbox|libvulkan_x11|libdevice_vr_test_mojo_bindings|libmojo_core_ports|libblink_core|libx11_window|libmojo_mojom_bindings|libipc|libmojo_base_mojom_blink|libgl_wrapper|libprinting|libgesture_detection|libdiscardable_memory_service|libmojom_core_shared|libviz_vulkan_context_provider|libpolicy_component|libdisplay|libvr_common|libdevice_vr_test_mojo_bindings_shared|libui_accessibility_ax_mojom_shared|libresource_coordinator_public_mojom|libvulkan_wrapper|libcrcrypto|libGLESv2|libv8_libbase|libcrash_key|libchrome_features|libdiscardable_memory_common|libbindings|libfreetype_harfbuzz|libcapture_base|libmojo_core_embedder|libprefs|libdevice_features|libresource_coordinator_cpp_features|libgfx_ipc_geometry|libgfx|libui_devtools|libweb_dialogs|libkeyed_service_core|libcontent|libgeometry_skia|libdisplay_util|libservice_manager_mojom_traits|libkeycodes_x11|libipc_mojom|libmojo_base_lib|libui_base_clipboard_types|libtracing_mojom|libmanager|libmedia_webrtc|libmedia_mojo_services|libcontent_public_common_mojo_bindings_shared|libgfx_ipc|libdiscardable_memory_client|libmemory_instrumentation|libui_base_ime|libskia|libgfx_ipc_color|libshell_dialogs|libEGL|libmedia_blink|libmedia_message_center|libblink_controller|libdevice_vr_mojo_bindings_shared|libmidi|libapdu|libseccomp_bpf|libboringssl|libcolor_utils|libdbus|libproxy_config|libblink_features|libmojom_platform_shared|libshared_with_blink|libui_data_pack|libevents_x|libleveldatabase|libevents_ozone_layout|libgfx_x11|libsurface|liblearning_impl|libgamepad_mojom|libcontent_service_cpp|libui_base|libzygote|libevents|libvulkan|libGLESv2|libEGL|libcertificate_matching|libusb_shared|libbindings_base|libgfx_ipc_buffer_types|libcodec|libmojom_mhtml_load_result_shared|libstorage_common|libdevice_vr|libviz_resource_format_utils|libservice_manager_mojom_blink|libgles2|libauthenticator_test_mojo_bindings_shared|libui_base_clipboard|libgamepad_mojom_shared|libdomain_reliability|libmenu|libblink_embedded_frame_sink_mojo_bindings_shared|libwebgpu|liburl_ipc|libnet|libmedia_gpu|libservice_manager_mojom_constants_shared|libaccessibility|libservice_manager_mojom_constants|libembedder|libgamepad_mojom_blink|libcc_animation|libplatform|libdevice_base|libanimation|libgamepad_shared_typemap_traits|libwtf|libthread_linux|libui_base_x|libcloud_policy_proto_generated_compile|libsql|libhost|libextras|libchromium_sqlite3|libnetwork_cpp|libmojo_base_mojom_shared|libgeometry|libppapi_proxy|libweb_feature_mojo_bindings_mojom_blink|libcontent_common_mojo_bindings_shared|libVkICD_mock_icd|libdevice_vr_mojo_bindings_blink|libservice_manager_mojom_constants_blink|libevents_base|liburl|libresource_coordinator_public_mojom_blink|libppapi_host|libppapi_shared|libmedia|libtracing|libsandbox_services|libcontent_service_mojom|libevents_devices_x11|libcompositor|libfingerprint|libuser_manager|libstorage_browser|libbase|libkeyed_service_content|libviews|libcaptive_portal|libcbor|libviz_common|libcc_mojo_embedder|libheadless_non_renderer|libui_base_features|libsnapshot|libcommon|libnetwork_service|liblearning_common|libblink_modules|libscheduling_metrics|libperfetto|libgles2_implementation|libsessions|libdevices|libstartup_tracing|libdisplay_types|libgl_in_process_context|libui_base_ime_types|libui_message_center_cpp|libclearkeycdm|libicuuc|libfido|libfontconfig %else -%global privlibs libevents_devices_x11|libgfx_x11|libevents_x|libgl_wrapper|libmemory_instrumentation|libdevice_vr_mojo_bindings|libdiscardable_memory_common|libui_base_ime_init|libnetwork_cpp_base|libos_crypt|libmessage_center|libmanager|libdevice_gamepad|libembedder|libGLESv2|libtracing|libskia|libgl_in_process_context|libapdu|libbluetooth|libviz_resource_format_utils|libmojo_mojom_bindings|libblink_platform|libmojom_modules_shared|libwebdata_common|libshell_dialogs|libresource_coordinator_public_mojom_blink|libgles2_utils|libgpu_ipc_service|libcaptive_portal|libvr_common|libgles2|libdisplay|libgfx_ipc_geometry|libcc_paint|libandroid_mojo_bindings_shared|libipc_mojom_shared|libffmpeg|liburl_matcher|libbindings|libservice|libwtf|libcommon|libleveldatabase|libnetwork_session_configurator|libaura|libcloud_policy_proto_generated_compile|libservice_manager_mojom_constants|libui_touch_selection|libmojo_base_lib|libservice_manager_cpp_types|libservice_manager_mojom_blink|libmojo_core_embedder|libblink_embedded_frame_sink_mojo_bindings_shared|libgesture_detection|liburl_ipc|libweb_feature_mojo_bindings_mojom|libscheduling_metrics|libresource_coordinator_cpp_features|libcc|libdiscardable_memory_client|libsessions|libblink_common|libipc|libvulkan_init|libblink_mojom_broadcastchannel_bindings_shared|libheadless_non_renderer|libcbor|libmojo_core_embedder_internal|libmojo_public_system_cpp|libmojom_core_shared|libgfx|libusb_shared|libtracing_mojom|libuser_manager|libnet|libwebgpu|libplatform_window_handler_libs|libmojo_base_mojom_shared|libui_base|libprinting|libcontent_service_mojom_shared|libstartup_tracing|libdevice_vr_mojo_bindings_blink|libraster|libsandbox|libv8_libbase|libevents|libui_base_idle|libgles2_implementation|libkeyed_service_content|libprefs|libVkLayer_core_validation|libchrome_features|libdiscardable_memory_service|libcapture_lib|libperfetto|libicui18n|libdomain_reliability|libweb_dialogs|libcc_animation|libbase|libtracing_cpp|libGLESv2|libEGL|libVkLayer_thread_safety|libmedia_gpu|libparsers|libservice_manager_cpp|liblearning_common|libdevices|libvulkan_wrapper|libservice_manager_mojom_shared|libgfx_switches|libkeycodes_x11|libweb_feature_mojo_bindings_mojom_shared|liburl|libmpris|libppapi_proxy|libmojo_base_mojom|libprotobuf_lite|libui_base_features|libdevice_vr|libwm_public|libcolor_space|libseccomp_bpf|libinterfaces_shared|libui_base_x|libicuuc|libwebview|libdevice_event_log|libVkLayer_object_lifetimes|libvulkan_x11|libproxy_config|libnetwork_cpp|libextras|libVkICD_mock_icd|libv8_libplatform|libresource_coordinator_public_mojom|libwm|libviews|libsuid_sandbox_client|libEGL|libcapture_base|libnative_theme|libcrcrypto|libmojo_public_system|libservice_manager_mojom_constants_shared|libui_accessibility_ax_mojom_blink|libplatform|libui_data_pack|libgfx_ipc_buffer_types|libclearkeycdm|libmetrics_cpp|libmojo_base_shared_typemap_traits|libx11_events_platform|libcrash_key|libclient|libblink_controller|libfido|libfreetype_harfbuzz|libmojo_mojom_bindings_shared|libaccessibility|libstub_window|libui_base_ime|libpolicy_component|libweb_bluetooth_mojo_bindings_shared|libmojo_core_ports|libsandbox_services|libstorage_common|libviz_vulkan_context_provider|libcontent_common_mojo_bindings_shared|libgamepad_mojom_blink|libkeyed_service_core|libmedia_mojo_services|libmojo_ime_lib|libblink_modules|libgcm|libsql|libgeometry_skia|libVkLayer_unique_objects|libweb_feature_mojo_bindings_mojom_blink|libui_base_ime_linux|libdisplay_types|libdevice_vr_mojo_bindings_shared|libcc_base|libtracing_mojom_shared|libmedia_blink|libcc_mojo_embedder|libpdfium|libevents_ozone_layout|libgfx_ipc_color|libgtkui|libpolicy_proto|libcodec|libgpu|libcontent_service_cpp|libmojom_mhtml_load_result_shared|libdisplay_util|libcontent_service_mojom|libbase_i18n|libservice_manager_mojom_constants_blink|libcompositor|libmojo_base_mojom_blink|libui_message_center_cpp|libsnapshot|libdbus_thread_linux|libtab_count_metrics|libpublic|libui_accessibility_ax_mojom|liblearning_impl|librange|libbrowser_ui_views|libcontent|libvr_base|libppapi_host|libservice_manager_mojom_traits|libgamepad_mojom|libcertificate_matching|libgfx_ipc|libgl_init|libVkLayer_stateless_validation|libshared_with_blink|libshared_memory_support|libevents_base|libnet_with_v8|libmedia_webrtc|libsurface|libcontent_public_common_mojo_bindings_shared|libaura_extra|libdevice_base|libonc|libcdm_manager|libmojom_platform_shared|libui_accessibility_ax_mojom_shared|libhost|libblink_features|libdevice_features|libmirroring_service|libdbus|libgeometry|libchromium_sqlite3|libgamepad_mojom_shared|libauthenticator_test_mojo_bindings_shared|libboringssl|libembedder_switches|libgfx_ipc_skia|libzygote|libmedia_session_cpp|libv8|libnetwork_service|libx11_window|libui_base_clipboard|libanimation|libmessage_support|libui_devtools|libgamepad_shared_typemap_traits|libfingerprint|libviz_common|libppapi_shared|libstorage_browser|libbindings_base|libservice_manager_mojom|libblink_core|libgin|libresource_coordinator_public_mojom_shared|libuser_prefs|libui_base_ime_types|libipc_mojom|libmidi|libmojo_cpp_platform|libcc_debug|libui_base_clipboard_types|libmedia +%global privlibs libservice|libui_accessibility_ax_mojom_blink|libmojo_mojom_bindings_shared|libcolor_space|libui_base_ime_linux|libv8|libtracing_cpp|libprotobuf_lite|librange|libui_touch_selection|libgtkui|libraster|libstub_window|libmessage_center|libv8_libplatform|libtab_count_metrics|libclient|libaura|libresource_coordinator_public_mojom_shared|libbluetooth|libipc_mojom_shared|libdevice_event_log|libcc_debug|libnet_with_v8|libcc_paint|libwm_public|libnetwork_cpp_base|libservice_manager_mojom|libaura_extra|libmojo_public_system|libpdfium|libui_base_ime_init|libmpris|libcc|libservice_manager_cpp|libblink_mojom_broadcastchannel_bindings_shared|libinterfaces_shared|libservice_manager_cpp_types|libservice_manager_mojom_shared|libwm|libbase_i18n|libnetwork_session_configurator|libwebview|libplatform_window_handler_libs|libx11_events_platform|libmojo_cpp_platform|libandroid_mojo_bindings_shared|libpublic|libmirroring_service|libmedia_session_cpp|libblink_platform|libicui18n|libwebdata_common|libgin|libdevice_gamepad|libdevice_vr_mojo_bindings|libffmpeg|libmetrics_cpp|liburl_matcher|libpolicy_proto|libshared_memory_support|libparsers|libgles2_utils|libweb_feature_mojo_bindings_mojom|libui_base_idle|libmojo_public_system_cpp|libsuid_sandbox_client|libgfx_ipc_skia|libmojo_base_shared_typemap_traits|libcapture_lib|libgl_init|libblink_common|libcc_base|libmojo_base_mojom|libtracing_mojom_shared|libgpu_ipc_service|libui_accessibility_ax_mojom|libweb_feature_mojo_bindings_mojom_shared|libgfx_switches|libmedia_session_base_cpp|libmessage_support|libvulkan_init|libonc|libgpu|libmojom_modules_shared|libnative_theme|libgcm|libvr_base|libmojo_core_embedder_internal|libuser_prefs|libweb_bluetooth_mojo_bindings_shared|libos_crypt|libbrowser_ui_views|libembedder_switches|libcontent_service_mojom_shared|libsandbox|libvulkan_x11|libdevice_vr_test_mojo_bindings|libmojo_core_ports|libblink_core|libx11_window|libmojo_mojom_bindings|libipc|libmojo_base_mojom_blink|libgl_wrapper|libprinting|libgesture_detection|libdiscardable_memory_service|libmojom_core_shared|libviz_vulkan_context_provider|libpolicy_component|libdisplay|libvr_common|libdevice_vr_test_mojo_bindings_shared|libui_accessibility_ax_mojom_shared|libresource_coordinator_public_mojom|libvulkan_wrapper|libcrcrypto|libGLESv2|libv8_libbase|libcrash_key|libchrome_features|libdiscardable_memory_common|libbindings|libfreetype_harfbuzz|libcapture_base|libmojo_core_embedder|libprefs|libdevice_features|libresource_coordinator_cpp_features|libgfx_ipc_geometry|libgfx|libui_devtools|libweb_dialogs|libkeyed_service_core|libcontent|libgeometry_skia|libdisplay_util|libservice_manager_mojom_traits|libkeycodes_x11|libipc_mojom|libmojo_base_lib|libui_base_clipboard_types|libtracing_mojom|libmanager|libmedia_webrtc|libmedia_mojo_services|libcontent_public_common_mojo_bindings_shared|libgfx_ipc|libdiscardable_memory_client|libmemory_instrumentation|libui_base_ime|libskia|libgfx_ipc_color|libshell_dialogs|libEGL|libmedia_blink|libmedia_message_center|libblink_controller|libdevice_vr_mojo_bindings_shared|libmidi|libapdu|libseccomp_bpf|libboringssl|libcolor_utils|libdbus|libproxy_config|libblink_features|libmojom_platform_shared|libshared_with_blink|libui_data_pack|libevents_x|libleveldatabase|libevents_ozone_layout|libgfx_x11|libsurface|liblearning_impl|libgamepad_mojom|libcontent_service_cpp|libui_base|libzygote|libevents|libvulkan|libGLESv2|libEGL|libcertificate_matching|libusb_shared|libbindings_base|libgfx_ipc_buffer_types|libcodec|libmojom_mhtml_load_result_shared|libstorage_common|libdevice_vr|libviz_resource_format_utils|libservice_manager_mojom_blink|libgles2|libauthenticator_test_mojo_bindings_shared|libui_base_clipboard|libgamepad_mojom_shared|libdomain_reliability|libmenu|libblink_embedded_frame_sink_mojo_bindings_shared|libwebgpu|liburl_ipc|libnet|libmedia_gpu|libservice_manager_mojom_constants_shared|libaccessibility|libservice_manager_mojom_constants|libembedder|libgamepad_mojom_blink|libcc_animation|libplatform|libdevice_base|libanimation|libgamepad_shared_typemap_traits|libwtf|libthread_linux|libui_base_x|libcloud_policy_proto_generated_compile|libsql|libhost|libextras|libchromium_sqlite3|libnetwork_cpp|libmojo_base_mojom_shared|libgeometry|libppapi_proxy|libweb_feature_mojo_bindings_mojom_blink|libcontent_common_mojo_bindings_shared|libVkICD_mock_icd|libdevice_vr_mojo_bindings_blink|libservice_manager_mojom_constants_blink|libevents_base|liburl|libresource_coordinator_public_mojom_blink|libppapi_host|libppapi_shared|libmedia|libtracing|libsandbox_services|libcontent_service_mojom|libevents_devices_x11|libcompositor|libfingerprint|libuser_manager|libstorage_browser|libbase|libkeyed_service_content|libviews|libcaptive_portal|libcbor|libviz_common|libcc_mojo_embedder|libheadless_non_renderer|libui_base_features|libsnapshot|libcommon|libnetwork_service|liblearning_common|libblink_modules|libscheduling_metrics|libperfetto|libgles2_implementation|libsessions|libdevices|libstartup_tracing|libdisplay_types|libgl_in_process_context|libui_base_ime_types|libui_message_center_cpp|libclearkeycdm|libicuuc|libfido %endif %global __requires_exclude ^(%{privlibs})\\.so* From d8c8b864697a920d705fe5ff2336dd234582b1fc Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 16 Sep 2019 14:23:29 +0200 Subject: [PATCH 0535/1449] Update the list of private libraries --- chromium.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 29a98c0..8df9fa0 100644 --- a/chromium.spec +++ b/chromium.spec @@ -179,7 +179,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3865.75 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1891,6 +1891,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Mon Sep 16 2019 Tomas Popela - 77.0.3865.75-2 +- Update the list of private libraries + * Fri Sep 13 2019 Tomas Popela - 77.0.3865.75-1 - Update to 77.0.3865.75 From 8f89cb9012b72ef618828a06e3fd2cff52812c75 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 16 Sep 2019 14:21:14 +0200 Subject: [PATCH 0536/1449] Update the list of private libraries --- chromium.spec | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/chromium.spec b/chromium.spec index d2436e2..496b922 100644 --- a/chromium.spec +++ b/chromium.spec @@ -52,7 +52,7 @@ %global crd_path %{_libdir}/chrome-remote-desktop # We don't want any libs in these directories to generate Provides -# Requires is trickier. +# Requires is trickier. # To generate this list, go into %%{buildroot}%%{chromium_path} and run # for i in `find . -name "*.so"`; do NAME=`basename -s .so $i`; printf "$NAME|"; done @@ -61,9 +61,9 @@ %global __provides_exclude_from %{chromium_path}/.*\\.so|%{chromium_path}/lib/.*\\.so|%{chromium_path}/lib/.*\\.so.* %if 0%{?rhel} == 7 -%global privlibs libevents_devices_x11|libgfx_x11|libevents_x|libgl_wrapper|libmemory_instrumentation|libdevice_vr_mojo_bindings|libdiscardable_memory_common|libui_base_ime_init|libnetwork_cpp_base|libos_crypt|libmessage_center|libmanager|libdevice_gamepad|libembedder|libGLESv2|libtracing|libskia|libgl_in_process_context|libapdu|libbluetooth|libviz_resource_format_utils|libmojo_mojom_bindings|libblink_platform|libmojom_modules_shared|libwebdata_common|libshell_dialogs|libresource_coordinator_public_mojom_blink|libgles2_utils|libgpu_ipc_service|libcaptive_portal|libvr_common|libgles2|libdisplay|libgfx_ipc_geometry|libcc_paint|libandroid_mojo_bindings_shared|libipc_mojom_shared|libffmpeg|liburl_matcher|libbindings|libservice|libwtf|libcommon|libleveldatabase|libnetwork_session_configurator|libaura|libcloud_policy_proto_generated_compile|libservice_manager_mojom_constants|libui_touch_selection|libmojo_base_lib|libservice_manager_cpp_types|libservice_manager_mojom_blink|libmojo_core_embedder|libblink_embedded_frame_sink_mojo_bindings_shared|libgesture_detection|liburl_ipc|libweb_feature_mojo_bindings_mojom|libscheduling_metrics|libresource_coordinator_cpp_features|libcc|libdiscardable_memory_client|libsessions|libblink_common|libipc|libvulkan_init|libblink_mojom_broadcastchannel_bindings_shared|libheadless_non_renderer|libcbor|libmojo_core_embedder_internal|libmojo_public_system_cpp|libmojom_core_shared|libgfx|libusb_shared|libtracing_mojom|libuser_manager|libnet|libwebgpu|libplatform_window_handler_libs|libmojo_base_mojom_shared|libui_base|libprinting|libcontent_service_mojom_shared|libstartup_tracing|libdevice_vr_mojo_bindings_blink|libraster|libsandbox|libv8_libbase|libevents|libui_base_idle|libgles2_implementation|libkeyed_service_content|libprefs|libVkLayer_core_validation|libchrome_features|libdiscardable_memory_service|libcapture_lib|libperfetto|libicui18n|libdomain_reliability|libweb_dialogs|libcc_animation|libbase|libtracing_cpp|libGLESv2|libEGL|libVkLayer_thread_safety|libmedia_gpu|libparsers|libservice_manager_cpp|liblearning_common|libdevices|libvulkan_wrapper|libservice_manager_mojom_shared|libgfx_switches|libkeycodes_x11|libweb_feature_mojo_bindings_mojom_shared|liburl|libmpris|libppapi_proxy|libmojo_base_mojom|libprotobuf_lite|libui_base_features|libdevice_vr|libwm_public|libcolor_space|libseccomp_bpf|libinterfaces_shared|libui_base_x|libicuuc|libwebview|libdevice_event_log|libVkLayer_object_lifetimes|libvulkan_x11|libproxy_config|libnetwork_cpp|libextras|libVkICD_mock_icd|libv8_libplatform|libresource_coordinator_public_mojom|libwm|libviews|libsuid_sandbox_client|libEGL|libcapture_base|libnative_theme|libcrcrypto|libmojo_public_system|libservice_manager_mojom_constants_shared|libui_accessibility_ax_mojom_blink|libplatform|libui_data_pack|libgfx_ipc_buffer_types|libclearkeycdm|libmetrics_cpp|libmojo_base_shared_typemap_traits|libx11_events_platform|libcrash_key|libclient|libblink_controller|libfido|libfreetype_harfbuzz|libmojo_mojom_bindings_shared|libaccessibility|libstub_window|libui_base_ime|libpolicy_component|libweb_bluetooth_mojo_bindings_shared|libmojo_core_ports|libsandbox_services|libstorage_common|libviz_vulkan_context_provider|libcontent_common_mojo_bindings_shared|libgamepad_mojom_blink|libkeyed_service_core|libmedia_mojo_services|libmojo_ime_lib|libblink_modules|libgcm|libsql|libgeometry_skia|libVkLayer_unique_objects|libweb_feature_mojo_bindings_mojom_blink|libui_base_ime_linux|libdisplay_types|libdevice_vr_mojo_bindings_shared|libcc_base|libtracing_mojom_shared|libmedia_blink|libcc_mojo_embedder|libpdfium|libevents_ozone_layout|libgfx_ipc_color|libgtkui|libpolicy_proto|libcodec|libgpu|libcontent_service_cpp|libmojom_mhtml_load_result_shared|libdisplay_util|libcontent_service_mojom|libbase_i18n|libservice_manager_mojom_constants_blink|libcompositor|libmojo_base_mojom_blink|libui_message_center_cpp|libsnapshot|libdbus_thread_linux|libtab_count_metrics|libpublic|libui_accessibility_ax_mojom|liblearning_impl|librange|libbrowser_ui_views|libcontent|libvr_base|libppapi_host|libservice_manager_mojom_traits|libgamepad_mojom|libcertificate_matching|libgfx_ipc|libgl_init|libVkLayer_stateless_validation|libshared_with_blink|libshared_memory_support|libevents_base|libnet_with_v8|libmedia_webrtc|libsurface|libcontent_public_common_mojo_bindings_shared|libaura_extra|libdevice_base|libonc|libcdm_manager|libmojom_platform_shared|libui_accessibility_ax_mojom_shared|libhost|libblink_features|libdevice_features|libmirroring_service|libdbus|libgeometry|libchromium_sqlite3|libgamepad_mojom_shared|libauthenticator_test_mojo_bindings_shared|libboringssl|libembedder_switches|libgfx_ipc_skia|libzygote|libmedia_session_cpp|libv8|libnetwork_service|libx11_window|libui_base_clipboard|libanimation|libmessage_support|libui_devtools|libgamepad_shared_typemap_traits|libfingerprint|libviz_common|libppapi_shared|libstorage_browser|libbindings_base|libservice_manager_mojom|libblink_core|libgin|libresource_coordinator_public_mojom_shared|libuser_prefs|libui_base_ime_types|libipc_mojom|libmidi|libmojo_cpp_platform|libcc_debug|libui_base_clipboard_types|libmedia|libfontconfig +%global privlibs libservice|libui_accessibility_ax_mojom_blink|libmojo_mojom_bindings_shared|libcolor_space|libui_base_ime_linux|libv8|libtracing_cpp|libprotobuf_lite|librange|libui_touch_selection|libgtkui|libraster|libstub_window|libmessage_center|libv8_libplatform|libtab_count_metrics|libclient|libaura|libresource_coordinator_public_mojom_shared|libbluetooth|libipc_mojom_shared|libdevice_event_log|libcc_debug|libnet_with_v8|libcc_paint|libwm_public|libnetwork_cpp_base|libservice_manager_mojom|libaura_extra|libmojo_public_system|libpdfium|libui_base_ime_init|libmpris|libcc|libservice_manager_cpp|libblink_mojom_broadcastchannel_bindings_shared|libinterfaces_shared|libservice_manager_cpp_types|libservice_manager_mojom_shared|libwm|libbase_i18n|libnetwork_session_configurator|libwebview|libplatform_window_handler_libs|libx11_events_platform|libmojo_cpp_platform|libandroid_mojo_bindings_shared|libpublic|libmirroring_service|libmedia_session_cpp|libblink_platform|libicui18n|libwebdata_common|libgin|libdevice_gamepad|libdevice_vr_mojo_bindings|libffmpeg|libmetrics_cpp|liburl_matcher|libpolicy_proto|libshared_memory_support|libparsers|libgles2_utils|libweb_feature_mojo_bindings_mojom|libui_base_idle|libmojo_public_system_cpp|libsuid_sandbox_client|libgfx_ipc_skia|libmojo_base_shared_typemap_traits|libcapture_lib|libgl_init|libblink_common|libcc_base|libmojo_base_mojom|libtracing_mojom_shared|libgpu_ipc_service|libui_accessibility_ax_mojom|libweb_feature_mojo_bindings_mojom_shared|libgfx_switches|libmedia_session_base_cpp|libmessage_support|libvulkan_init|libonc|libgpu|libmojom_modules_shared|libnative_theme|libgcm|libvr_base|libmojo_core_embedder_internal|libuser_prefs|libweb_bluetooth_mojo_bindings_shared|libos_crypt|libbrowser_ui_views|libembedder_switches|libcontent_service_mojom_shared|libsandbox|libvulkan_x11|libdevice_vr_test_mojo_bindings|libmojo_core_ports|libblink_core|libx11_window|libmojo_mojom_bindings|libipc|libmojo_base_mojom_blink|libgl_wrapper|libprinting|libgesture_detection|libdiscardable_memory_service|libmojom_core_shared|libviz_vulkan_context_provider|libpolicy_component|libdisplay|libvr_common|libdevice_vr_test_mojo_bindings_shared|libui_accessibility_ax_mojom_shared|libresource_coordinator_public_mojom|libvulkan_wrapper|libcrcrypto|libGLESv2|libv8_libbase|libcrash_key|libchrome_features|libdiscardable_memory_common|libbindings|libfreetype_harfbuzz|libcapture_base|libmojo_core_embedder|libprefs|libdevice_features|libresource_coordinator_cpp_features|libgfx_ipc_geometry|libgfx|libui_devtools|libweb_dialogs|libkeyed_service_core|libcontent|libgeometry_skia|libdisplay_util|libservice_manager_mojom_traits|libkeycodes_x11|libipc_mojom|libmojo_base_lib|libui_base_clipboard_types|libtracing_mojom|libmanager|libmedia_webrtc|libmedia_mojo_services|libcontent_public_common_mojo_bindings_shared|libgfx_ipc|libdiscardable_memory_client|libmemory_instrumentation|libui_base_ime|libskia|libgfx_ipc_color|libshell_dialogs|libEGL|libmedia_blink|libmedia_message_center|libblink_controller|libdevice_vr_mojo_bindings_shared|libmidi|libapdu|libseccomp_bpf|libboringssl|libcolor_utils|libdbus|libproxy_config|libblink_features|libmojom_platform_shared|libshared_with_blink|libui_data_pack|libevents_x|libleveldatabase|libevents_ozone_layout|libgfx_x11|libsurface|liblearning_impl|libgamepad_mojom|libcontent_service_cpp|libui_base|libzygote|libevents|libvulkan|libGLESv2|libEGL|libcertificate_matching|libusb_shared|libbindings_base|libgfx_ipc_buffer_types|libcodec|libmojom_mhtml_load_result_shared|libstorage_common|libdevice_vr|libviz_resource_format_utils|libservice_manager_mojom_blink|libgles2|libauthenticator_test_mojo_bindings_shared|libui_base_clipboard|libgamepad_mojom_shared|libdomain_reliability|libmenu|libblink_embedded_frame_sink_mojo_bindings_shared|libwebgpu|liburl_ipc|libnet|libmedia_gpu|libservice_manager_mojom_constants_shared|libaccessibility|libservice_manager_mojom_constants|libembedder|libgamepad_mojom_blink|libcc_animation|libplatform|libdevice_base|libanimation|libgamepad_shared_typemap_traits|libwtf|libthread_linux|libui_base_x|libcloud_policy_proto_generated_compile|libsql|libhost|libextras|libchromium_sqlite3|libnetwork_cpp|libmojo_base_mojom_shared|libgeometry|libppapi_proxy|libweb_feature_mojo_bindings_mojom_blink|libcontent_common_mojo_bindings_shared|libVkICD_mock_icd|libdevice_vr_mojo_bindings_blink|libservice_manager_mojom_constants_blink|libevents_base|liburl|libresource_coordinator_public_mojom_blink|libppapi_host|libppapi_shared|libmedia|libtracing|libsandbox_services|libcontent_service_mojom|libevents_devices_x11|libcompositor|libfingerprint|libuser_manager|libstorage_browser|libbase|libkeyed_service_content|libviews|libcaptive_portal|libcbor|libviz_common|libcc_mojo_embedder|libheadless_non_renderer|libui_base_features|libsnapshot|libcommon|libnetwork_service|liblearning_common|libblink_modules|libscheduling_metrics|libperfetto|libgles2_implementation|libsessions|libdevices|libstartup_tracing|libdisplay_types|libgl_in_process_context|libui_base_ime_types|libui_message_center_cpp|libclearkeycdm|libicuuc|libfido|libfontconfig %else -%global privlibs libevents_devices_x11|libgfx_x11|libevents_x|libgl_wrapper|libmemory_instrumentation|libdevice_vr_mojo_bindings|libdiscardable_memory_common|libui_base_ime_init|libnetwork_cpp_base|libos_crypt|libmessage_center|libmanager|libdevice_gamepad|libembedder|libGLESv2|libtracing|libskia|libgl_in_process_context|libapdu|libbluetooth|libviz_resource_format_utils|libmojo_mojom_bindings|libblink_platform|libmojom_modules_shared|libwebdata_common|libshell_dialogs|libresource_coordinator_public_mojom_blink|libgles2_utils|libgpu_ipc_service|libcaptive_portal|libvr_common|libgles2|libdisplay|libgfx_ipc_geometry|libcc_paint|libandroid_mojo_bindings_shared|libipc_mojom_shared|libffmpeg|liburl_matcher|libbindings|libservice|libwtf|libcommon|libleveldatabase|libnetwork_session_configurator|libaura|libcloud_policy_proto_generated_compile|libservice_manager_mojom_constants|libui_touch_selection|libmojo_base_lib|libservice_manager_cpp_types|libservice_manager_mojom_blink|libmojo_core_embedder|libblink_embedded_frame_sink_mojo_bindings_shared|libgesture_detection|liburl_ipc|libweb_feature_mojo_bindings_mojom|libscheduling_metrics|libresource_coordinator_cpp_features|libcc|libdiscardable_memory_client|libsessions|libblink_common|libipc|libvulkan_init|libblink_mojom_broadcastchannel_bindings_shared|libheadless_non_renderer|libcbor|libmojo_core_embedder_internal|libmojo_public_system_cpp|libmojom_core_shared|libgfx|libusb_shared|libtracing_mojom|libuser_manager|libnet|libwebgpu|libplatform_window_handler_libs|libmojo_base_mojom_shared|libui_base|libprinting|libcontent_service_mojom_shared|libstartup_tracing|libdevice_vr_mojo_bindings_blink|libraster|libsandbox|libv8_libbase|libevents|libui_base_idle|libgles2_implementation|libkeyed_service_content|libprefs|libVkLayer_core_validation|libchrome_features|libdiscardable_memory_service|libcapture_lib|libperfetto|libicui18n|libdomain_reliability|libweb_dialogs|libcc_animation|libbase|libtracing_cpp|libGLESv2|libEGL|libVkLayer_thread_safety|libmedia_gpu|libparsers|libservice_manager_cpp|liblearning_common|libdevices|libvulkan_wrapper|libservice_manager_mojom_shared|libgfx_switches|libkeycodes_x11|libweb_feature_mojo_bindings_mojom_shared|liburl|libmpris|libppapi_proxy|libmojo_base_mojom|libprotobuf_lite|libui_base_features|libdevice_vr|libwm_public|libcolor_space|libseccomp_bpf|libinterfaces_shared|libui_base_x|libicuuc|libwebview|libdevice_event_log|libVkLayer_object_lifetimes|libvulkan_x11|libproxy_config|libnetwork_cpp|libextras|libVkICD_mock_icd|libv8_libplatform|libresource_coordinator_public_mojom|libwm|libviews|libsuid_sandbox_client|libEGL|libcapture_base|libnative_theme|libcrcrypto|libmojo_public_system|libservice_manager_mojom_constants_shared|libui_accessibility_ax_mojom_blink|libplatform|libui_data_pack|libgfx_ipc_buffer_types|libclearkeycdm|libmetrics_cpp|libmojo_base_shared_typemap_traits|libx11_events_platform|libcrash_key|libclient|libblink_controller|libfido|libfreetype_harfbuzz|libmojo_mojom_bindings_shared|libaccessibility|libstub_window|libui_base_ime|libpolicy_component|libweb_bluetooth_mojo_bindings_shared|libmojo_core_ports|libsandbox_services|libstorage_common|libviz_vulkan_context_provider|libcontent_common_mojo_bindings_shared|libgamepad_mojom_blink|libkeyed_service_core|libmedia_mojo_services|libmojo_ime_lib|libblink_modules|libgcm|libsql|libgeometry_skia|libVkLayer_unique_objects|libweb_feature_mojo_bindings_mojom_blink|libui_base_ime_linux|libdisplay_types|libdevice_vr_mojo_bindings_shared|libcc_base|libtracing_mojom_shared|libmedia_blink|libcc_mojo_embedder|libpdfium|libevents_ozone_layout|libgfx_ipc_color|libgtkui|libpolicy_proto|libcodec|libgpu|libcontent_service_cpp|libmojom_mhtml_load_result_shared|libdisplay_util|libcontent_service_mojom|libbase_i18n|libservice_manager_mojom_constants_blink|libcompositor|libmojo_base_mojom_blink|libui_message_center_cpp|libsnapshot|libdbus_thread_linux|libtab_count_metrics|libpublic|libui_accessibility_ax_mojom|liblearning_impl|librange|libbrowser_ui_views|libcontent|libvr_base|libppapi_host|libservice_manager_mojom_traits|libgamepad_mojom|libcertificate_matching|libgfx_ipc|libgl_init|libVkLayer_stateless_validation|libshared_with_blink|libshared_memory_support|libevents_base|libnet_with_v8|libmedia_webrtc|libsurface|libcontent_public_common_mojo_bindings_shared|libaura_extra|libdevice_base|libonc|libcdm_manager|libmojom_platform_shared|libui_accessibility_ax_mojom_shared|libhost|libblink_features|libdevice_features|libmirroring_service|libdbus|libgeometry|libchromium_sqlite3|libgamepad_mojom_shared|libauthenticator_test_mojo_bindings_shared|libboringssl|libembedder_switches|libgfx_ipc_skia|libzygote|libmedia_session_cpp|libv8|libnetwork_service|libx11_window|libui_base_clipboard|libanimation|libmessage_support|libui_devtools|libgamepad_shared_typemap_traits|libfingerprint|libviz_common|libppapi_shared|libstorage_browser|libbindings_base|libservice_manager_mojom|libblink_core|libgin|libresource_coordinator_public_mojom_shared|libuser_prefs|libui_base_ime_types|libipc_mojom|libmidi|libmojo_cpp_platform|libcc_debug|libui_base_clipboard_types|libmedia +%global privlibs libservice|libui_accessibility_ax_mojom_blink|libmojo_mojom_bindings_shared|libcolor_space|libui_base_ime_linux|libv8|libtracing_cpp|libprotobuf_lite|librange|libui_touch_selection|libgtkui|libraster|libstub_window|libmessage_center|libv8_libplatform|libtab_count_metrics|libclient|libaura|libresource_coordinator_public_mojom_shared|libbluetooth|libipc_mojom_shared|libdevice_event_log|libcc_debug|libnet_with_v8|libcc_paint|libwm_public|libnetwork_cpp_base|libservice_manager_mojom|libaura_extra|libmojo_public_system|libpdfium|libui_base_ime_init|libmpris|libcc|libservice_manager_cpp|libblink_mojom_broadcastchannel_bindings_shared|libinterfaces_shared|libservice_manager_cpp_types|libservice_manager_mojom_shared|libwm|libbase_i18n|libnetwork_session_configurator|libwebview|libplatform_window_handler_libs|libx11_events_platform|libmojo_cpp_platform|libandroid_mojo_bindings_shared|libpublic|libmirroring_service|libmedia_session_cpp|libblink_platform|libicui18n|libwebdata_common|libgin|libdevice_gamepad|libdevice_vr_mojo_bindings|libffmpeg|libmetrics_cpp|liburl_matcher|libpolicy_proto|libshared_memory_support|libparsers|libgles2_utils|libweb_feature_mojo_bindings_mojom|libui_base_idle|libmojo_public_system_cpp|libsuid_sandbox_client|libgfx_ipc_skia|libmojo_base_shared_typemap_traits|libcapture_lib|libgl_init|libblink_common|libcc_base|libmojo_base_mojom|libtracing_mojom_shared|libgpu_ipc_service|libui_accessibility_ax_mojom|libweb_feature_mojo_bindings_mojom_shared|libgfx_switches|libmedia_session_base_cpp|libmessage_support|libvulkan_init|libonc|libgpu|libmojom_modules_shared|libnative_theme|libgcm|libvr_base|libmojo_core_embedder_internal|libuser_prefs|libweb_bluetooth_mojo_bindings_shared|libos_crypt|libbrowser_ui_views|libembedder_switches|libcontent_service_mojom_shared|libsandbox|libvulkan_x11|libdevice_vr_test_mojo_bindings|libmojo_core_ports|libblink_core|libx11_window|libmojo_mojom_bindings|libipc|libmojo_base_mojom_blink|libgl_wrapper|libprinting|libgesture_detection|libdiscardable_memory_service|libmojom_core_shared|libviz_vulkan_context_provider|libpolicy_component|libdisplay|libvr_common|libdevice_vr_test_mojo_bindings_shared|libui_accessibility_ax_mojom_shared|libresource_coordinator_public_mojom|libvulkan_wrapper|libcrcrypto|libGLESv2|libv8_libbase|libcrash_key|libchrome_features|libdiscardable_memory_common|libbindings|libfreetype_harfbuzz|libcapture_base|libmojo_core_embedder|libprefs|libdevice_features|libresource_coordinator_cpp_features|libgfx_ipc_geometry|libgfx|libui_devtools|libweb_dialogs|libkeyed_service_core|libcontent|libgeometry_skia|libdisplay_util|libservice_manager_mojom_traits|libkeycodes_x11|libipc_mojom|libmojo_base_lib|libui_base_clipboard_types|libtracing_mojom|libmanager|libmedia_webrtc|libmedia_mojo_services|libcontent_public_common_mojo_bindings_shared|libgfx_ipc|libdiscardable_memory_client|libmemory_instrumentation|libui_base_ime|libskia|libgfx_ipc_color|libshell_dialogs|libEGL|libmedia_blink|libmedia_message_center|libblink_controller|libdevice_vr_mojo_bindings_shared|libmidi|libapdu|libseccomp_bpf|libboringssl|libcolor_utils|libdbus|libproxy_config|libblink_features|libmojom_platform_shared|libshared_with_blink|libui_data_pack|libevents_x|libleveldatabase|libevents_ozone_layout|libgfx_x11|libsurface|liblearning_impl|libgamepad_mojom|libcontent_service_cpp|libui_base|libzygote|libevents|libvulkan|libGLESv2|libEGL|libcertificate_matching|libusb_shared|libbindings_base|libgfx_ipc_buffer_types|libcodec|libmojom_mhtml_load_result_shared|libstorage_common|libdevice_vr|libviz_resource_format_utils|libservice_manager_mojom_blink|libgles2|libauthenticator_test_mojo_bindings_shared|libui_base_clipboard|libgamepad_mojom_shared|libdomain_reliability|libmenu|libblink_embedded_frame_sink_mojo_bindings_shared|libwebgpu|liburl_ipc|libnet|libmedia_gpu|libservice_manager_mojom_constants_shared|libaccessibility|libservice_manager_mojom_constants|libembedder|libgamepad_mojom_blink|libcc_animation|libplatform|libdevice_base|libanimation|libgamepad_shared_typemap_traits|libwtf|libthread_linux|libui_base_x|libcloud_policy_proto_generated_compile|libsql|libhost|libextras|libchromium_sqlite3|libnetwork_cpp|libmojo_base_mojom_shared|libgeometry|libppapi_proxy|libweb_feature_mojo_bindings_mojom_blink|libcontent_common_mojo_bindings_shared|libVkICD_mock_icd|libdevice_vr_mojo_bindings_blink|libservice_manager_mojom_constants_blink|libevents_base|liburl|libresource_coordinator_public_mojom_blink|libppapi_host|libppapi_shared|libmedia|libtracing|libsandbox_services|libcontent_service_mojom|libevents_devices_x11|libcompositor|libfingerprint|libuser_manager|libstorage_browser|libbase|libkeyed_service_content|libviews|libcaptive_portal|libcbor|libviz_common|libcc_mojo_embedder|libheadless_non_renderer|libui_base_features|libsnapshot|libcommon|libnetwork_service|liblearning_common|libblink_modules|libscheduling_metrics|libperfetto|libgles2_implementation|libsessions|libdevices|libstartup_tracing|libdisplay_types|libgl_in_process_context|libui_base_ime_types|libui_message_center_cpp|libclearkeycdm|libicuuc|libfido %endif %global __requires_exclude ^(%{privlibs})\\.so* From 33d340b63aeeede9ceb7a646d3d4d06faae0178a Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 16 Sep 2019 14:23:29 +0200 Subject: [PATCH 0537/1449] Update the list of private libraries --- chromium.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 496b922..38911e2 100644 --- a/chromium.spec +++ b/chromium.spec @@ -179,7 +179,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3865.75 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1891,6 +1891,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Mon Sep 16 2019 Tomas Popela - 77.0.3865.75-2 +- Update the list of private libraries + * Fri Sep 13 2019 Tomas Popela - 77.0.3865.75-1 - Update to 77.0.3865.75 From e849f348d4876ba0d891f724fca961643db0921c Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 16 Sep 2019 14:21:14 +0200 Subject: [PATCH 0538/1449] Update the list of private libraries --- chromium.spec | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/chromium.spec b/chromium.spec index 3c10174..c1a65b0 100644 --- a/chromium.spec +++ b/chromium.spec @@ -52,7 +52,7 @@ %global crd_path %{_libdir}/chrome-remote-desktop # We don't want any libs in these directories to generate Provides -# Requires is trickier. +# Requires is trickier. # To generate this list, go into %%{buildroot}%%{chromium_path} and run # for i in `find . -name "*.so"`; do NAME=`basename -s .so $i`; printf "$NAME|"; done @@ -61,9 +61,9 @@ %global __provides_exclude_from %{chromium_path}/.*\\.so|%{chromium_path}/lib/.*\\.so|%{chromium_path}/lib/.*\\.so.* %if 0%{?rhel} == 7 -%global privlibs libevents_devices_x11|libgfx_x11|libevents_x|libgl_wrapper|libmemory_instrumentation|libdevice_vr_mojo_bindings|libdiscardable_memory_common|libui_base_ime_init|libnetwork_cpp_base|libos_crypt|libmessage_center|libmanager|libdevice_gamepad|libembedder|libGLESv2|libtracing|libskia|libgl_in_process_context|libapdu|libbluetooth|libviz_resource_format_utils|libmojo_mojom_bindings|libblink_platform|libmojom_modules_shared|libwebdata_common|libshell_dialogs|libresource_coordinator_public_mojom_blink|libgles2_utils|libgpu_ipc_service|libcaptive_portal|libvr_common|libgles2|libdisplay|libgfx_ipc_geometry|libcc_paint|libandroid_mojo_bindings_shared|libipc_mojom_shared|libffmpeg|liburl_matcher|libbindings|libservice|libwtf|libcommon|libleveldatabase|libnetwork_session_configurator|libaura|libcloud_policy_proto_generated_compile|libservice_manager_mojom_constants|libui_touch_selection|libmojo_base_lib|libservice_manager_cpp_types|libservice_manager_mojom_blink|libmojo_core_embedder|libblink_embedded_frame_sink_mojo_bindings_shared|libgesture_detection|liburl_ipc|libweb_feature_mojo_bindings_mojom|libscheduling_metrics|libresource_coordinator_cpp_features|libcc|libdiscardable_memory_client|libsessions|libblink_common|libipc|libvulkan_init|libblink_mojom_broadcastchannel_bindings_shared|libheadless_non_renderer|libcbor|libmojo_core_embedder_internal|libmojo_public_system_cpp|libmojom_core_shared|libgfx|libusb_shared|libtracing_mojom|libuser_manager|libnet|libwebgpu|libplatform_window_handler_libs|libmojo_base_mojom_shared|libui_base|libprinting|libcontent_service_mojom_shared|libstartup_tracing|libdevice_vr_mojo_bindings_blink|libraster|libsandbox|libv8_libbase|libevents|libui_base_idle|libgles2_implementation|libkeyed_service_content|libprefs|libVkLayer_core_validation|libchrome_features|libdiscardable_memory_service|libcapture_lib|libperfetto|libicui18n|libdomain_reliability|libweb_dialogs|libcc_animation|libbase|libtracing_cpp|libGLESv2|libEGL|libVkLayer_thread_safety|libmedia_gpu|libparsers|libservice_manager_cpp|liblearning_common|libdevices|libvulkan_wrapper|libservice_manager_mojom_shared|libgfx_switches|libkeycodes_x11|libweb_feature_mojo_bindings_mojom_shared|liburl|libmpris|libppapi_proxy|libmojo_base_mojom|libprotobuf_lite|libui_base_features|libdevice_vr|libwm_public|libcolor_space|libseccomp_bpf|libinterfaces_shared|libui_base_x|libicuuc|libwebview|libdevice_event_log|libVkLayer_object_lifetimes|libvulkan_x11|libproxy_config|libnetwork_cpp|libextras|libVkICD_mock_icd|libv8_libplatform|libresource_coordinator_public_mojom|libwm|libviews|libsuid_sandbox_client|libEGL|libcapture_base|libnative_theme|libcrcrypto|libmojo_public_system|libservice_manager_mojom_constants_shared|libui_accessibility_ax_mojom_blink|libplatform|libui_data_pack|libgfx_ipc_buffer_types|libclearkeycdm|libmetrics_cpp|libmojo_base_shared_typemap_traits|libx11_events_platform|libcrash_key|libclient|libblink_controller|libfido|libfreetype_harfbuzz|libmojo_mojom_bindings_shared|libaccessibility|libstub_window|libui_base_ime|libpolicy_component|libweb_bluetooth_mojo_bindings_shared|libmojo_core_ports|libsandbox_services|libstorage_common|libviz_vulkan_context_provider|libcontent_common_mojo_bindings_shared|libgamepad_mojom_blink|libkeyed_service_core|libmedia_mojo_services|libmojo_ime_lib|libblink_modules|libgcm|libsql|libgeometry_skia|libVkLayer_unique_objects|libweb_feature_mojo_bindings_mojom_blink|libui_base_ime_linux|libdisplay_types|libdevice_vr_mojo_bindings_shared|libcc_base|libtracing_mojom_shared|libmedia_blink|libcc_mojo_embedder|libpdfium|libevents_ozone_layout|libgfx_ipc_color|libgtkui|libpolicy_proto|libcodec|libgpu|libcontent_service_cpp|libmojom_mhtml_load_result_shared|libdisplay_util|libcontent_service_mojom|libbase_i18n|libservice_manager_mojom_constants_blink|libcompositor|libmojo_base_mojom_blink|libui_message_center_cpp|libsnapshot|libdbus_thread_linux|libtab_count_metrics|libpublic|libui_accessibility_ax_mojom|liblearning_impl|librange|libbrowser_ui_views|libcontent|libvr_base|libppapi_host|libservice_manager_mojom_traits|libgamepad_mojom|libcertificate_matching|libgfx_ipc|libgl_init|libVkLayer_stateless_validation|libshared_with_blink|libshared_memory_support|libevents_base|libnet_with_v8|libmedia_webrtc|libsurface|libcontent_public_common_mojo_bindings_shared|libaura_extra|libdevice_base|libonc|libcdm_manager|libmojom_platform_shared|libui_accessibility_ax_mojom_shared|libhost|libblink_features|libdevice_features|libmirroring_service|libdbus|libgeometry|libchromium_sqlite3|libgamepad_mojom_shared|libauthenticator_test_mojo_bindings_shared|libboringssl|libembedder_switches|libgfx_ipc_skia|libzygote|libmedia_session_cpp|libv8|libnetwork_service|libx11_window|libui_base_clipboard|libanimation|libmessage_support|libui_devtools|libgamepad_shared_typemap_traits|libfingerprint|libviz_common|libppapi_shared|libstorage_browser|libbindings_base|libservice_manager_mojom|libblink_core|libgin|libresource_coordinator_public_mojom_shared|libuser_prefs|libui_base_ime_types|libipc_mojom|libmidi|libmojo_cpp_platform|libcc_debug|libui_base_clipboard_types|libmedia|libfontconfig +%global privlibs libservice|libui_accessibility_ax_mojom_blink|libmojo_mojom_bindings_shared|libcolor_space|libui_base_ime_linux|libv8|libtracing_cpp|libprotobuf_lite|librange|libui_touch_selection|libgtkui|libraster|libstub_window|libmessage_center|libv8_libplatform|libtab_count_metrics|libclient|libaura|libresource_coordinator_public_mojom_shared|libbluetooth|libipc_mojom_shared|libdevice_event_log|libcc_debug|libnet_with_v8|libcc_paint|libwm_public|libnetwork_cpp_base|libservice_manager_mojom|libaura_extra|libmojo_public_system|libpdfium|libui_base_ime_init|libmpris|libcc|libservice_manager_cpp|libblink_mojom_broadcastchannel_bindings_shared|libinterfaces_shared|libservice_manager_cpp_types|libservice_manager_mojom_shared|libwm|libbase_i18n|libnetwork_session_configurator|libwebview|libplatform_window_handler_libs|libx11_events_platform|libmojo_cpp_platform|libandroid_mojo_bindings_shared|libpublic|libmirroring_service|libmedia_session_cpp|libblink_platform|libicui18n|libwebdata_common|libgin|libdevice_gamepad|libdevice_vr_mojo_bindings|libffmpeg|libmetrics_cpp|liburl_matcher|libpolicy_proto|libshared_memory_support|libparsers|libgles2_utils|libweb_feature_mojo_bindings_mojom|libui_base_idle|libmojo_public_system_cpp|libsuid_sandbox_client|libgfx_ipc_skia|libmojo_base_shared_typemap_traits|libcapture_lib|libgl_init|libblink_common|libcc_base|libmojo_base_mojom|libtracing_mojom_shared|libgpu_ipc_service|libui_accessibility_ax_mojom|libweb_feature_mojo_bindings_mojom_shared|libgfx_switches|libmedia_session_base_cpp|libmessage_support|libvulkan_init|libonc|libgpu|libmojom_modules_shared|libnative_theme|libgcm|libvr_base|libmojo_core_embedder_internal|libuser_prefs|libweb_bluetooth_mojo_bindings_shared|libos_crypt|libbrowser_ui_views|libembedder_switches|libcontent_service_mojom_shared|libsandbox|libvulkan_x11|libdevice_vr_test_mojo_bindings|libmojo_core_ports|libblink_core|libx11_window|libmojo_mojom_bindings|libipc|libmojo_base_mojom_blink|libgl_wrapper|libprinting|libgesture_detection|libdiscardable_memory_service|libmojom_core_shared|libviz_vulkan_context_provider|libpolicy_component|libdisplay|libvr_common|libdevice_vr_test_mojo_bindings_shared|libui_accessibility_ax_mojom_shared|libresource_coordinator_public_mojom|libvulkan_wrapper|libcrcrypto|libGLESv2|libv8_libbase|libcrash_key|libchrome_features|libdiscardable_memory_common|libbindings|libfreetype_harfbuzz|libcapture_base|libmojo_core_embedder|libprefs|libdevice_features|libresource_coordinator_cpp_features|libgfx_ipc_geometry|libgfx|libui_devtools|libweb_dialogs|libkeyed_service_core|libcontent|libgeometry_skia|libdisplay_util|libservice_manager_mojom_traits|libkeycodes_x11|libipc_mojom|libmojo_base_lib|libui_base_clipboard_types|libtracing_mojom|libmanager|libmedia_webrtc|libmedia_mojo_services|libcontent_public_common_mojo_bindings_shared|libgfx_ipc|libdiscardable_memory_client|libmemory_instrumentation|libui_base_ime|libskia|libgfx_ipc_color|libshell_dialogs|libEGL|libmedia_blink|libmedia_message_center|libblink_controller|libdevice_vr_mojo_bindings_shared|libmidi|libapdu|libseccomp_bpf|libboringssl|libcolor_utils|libdbus|libproxy_config|libblink_features|libmojom_platform_shared|libshared_with_blink|libui_data_pack|libevents_x|libleveldatabase|libevents_ozone_layout|libgfx_x11|libsurface|liblearning_impl|libgamepad_mojom|libcontent_service_cpp|libui_base|libzygote|libevents|libvulkan|libGLESv2|libEGL|libcertificate_matching|libusb_shared|libbindings_base|libgfx_ipc_buffer_types|libcodec|libmojom_mhtml_load_result_shared|libstorage_common|libdevice_vr|libviz_resource_format_utils|libservice_manager_mojom_blink|libgles2|libauthenticator_test_mojo_bindings_shared|libui_base_clipboard|libgamepad_mojom_shared|libdomain_reliability|libmenu|libblink_embedded_frame_sink_mojo_bindings_shared|libwebgpu|liburl_ipc|libnet|libmedia_gpu|libservice_manager_mojom_constants_shared|libaccessibility|libservice_manager_mojom_constants|libembedder|libgamepad_mojom_blink|libcc_animation|libplatform|libdevice_base|libanimation|libgamepad_shared_typemap_traits|libwtf|libthread_linux|libui_base_x|libcloud_policy_proto_generated_compile|libsql|libhost|libextras|libchromium_sqlite3|libnetwork_cpp|libmojo_base_mojom_shared|libgeometry|libppapi_proxy|libweb_feature_mojo_bindings_mojom_blink|libcontent_common_mojo_bindings_shared|libVkICD_mock_icd|libdevice_vr_mojo_bindings_blink|libservice_manager_mojom_constants_blink|libevents_base|liburl|libresource_coordinator_public_mojom_blink|libppapi_host|libppapi_shared|libmedia|libtracing|libsandbox_services|libcontent_service_mojom|libevents_devices_x11|libcompositor|libfingerprint|libuser_manager|libstorage_browser|libbase|libkeyed_service_content|libviews|libcaptive_portal|libcbor|libviz_common|libcc_mojo_embedder|libheadless_non_renderer|libui_base_features|libsnapshot|libcommon|libnetwork_service|liblearning_common|libblink_modules|libscheduling_metrics|libperfetto|libgles2_implementation|libsessions|libdevices|libstartup_tracing|libdisplay_types|libgl_in_process_context|libui_base_ime_types|libui_message_center_cpp|libclearkeycdm|libicuuc|libfido|libfontconfig %else -%global privlibs libevents_devices_x11|libgfx_x11|libevents_x|libgl_wrapper|libmemory_instrumentation|libdevice_vr_mojo_bindings|libdiscardable_memory_common|libui_base_ime_init|libnetwork_cpp_base|libos_crypt|libmessage_center|libmanager|libdevice_gamepad|libembedder|libGLESv2|libtracing|libskia|libgl_in_process_context|libapdu|libbluetooth|libviz_resource_format_utils|libmojo_mojom_bindings|libblink_platform|libmojom_modules_shared|libwebdata_common|libshell_dialogs|libresource_coordinator_public_mojom_blink|libgles2_utils|libgpu_ipc_service|libcaptive_portal|libvr_common|libgles2|libdisplay|libgfx_ipc_geometry|libcc_paint|libandroid_mojo_bindings_shared|libipc_mojom_shared|libffmpeg|liburl_matcher|libbindings|libservice|libwtf|libcommon|libleveldatabase|libnetwork_session_configurator|libaura|libcloud_policy_proto_generated_compile|libservice_manager_mojom_constants|libui_touch_selection|libmojo_base_lib|libservice_manager_cpp_types|libservice_manager_mojom_blink|libmojo_core_embedder|libblink_embedded_frame_sink_mojo_bindings_shared|libgesture_detection|liburl_ipc|libweb_feature_mojo_bindings_mojom|libscheduling_metrics|libresource_coordinator_cpp_features|libcc|libdiscardable_memory_client|libsessions|libblink_common|libipc|libvulkan_init|libblink_mojom_broadcastchannel_bindings_shared|libheadless_non_renderer|libcbor|libmojo_core_embedder_internal|libmojo_public_system_cpp|libmojom_core_shared|libgfx|libusb_shared|libtracing_mojom|libuser_manager|libnet|libwebgpu|libplatform_window_handler_libs|libmojo_base_mojom_shared|libui_base|libprinting|libcontent_service_mojom_shared|libstartup_tracing|libdevice_vr_mojo_bindings_blink|libraster|libsandbox|libv8_libbase|libevents|libui_base_idle|libgles2_implementation|libkeyed_service_content|libprefs|libVkLayer_core_validation|libchrome_features|libdiscardable_memory_service|libcapture_lib|libperfetto|libicui18n|libdomain_reliability|libweb_dialogs|libcc_animation|libbase|libtracing_cpp|libGLESv2|libEGL|libVkLayer_thread_safety|libmedia_gpu|libparsers|libservice_manager_cpp|liblearning_common|libdevices|libvulkan_wrapper|libservice_manager_mojom_shared|libgfx_switches|libkeycodes_x11|libweb_feature_mojo_bindings_mojom_shared|liburl|libmpris|libppapi_proxy|libmojo_base_mojom|libprotobuf_lite|libui_base_features|libdevice_vr|libwm_public|libcolor_space|libseccomp_bpf|libinterfaces_shared|libui_base_x|libicuuc|libwebview|libdevice_event_log|libVkLayer_object_lifetimes|libvulkan_x11|libproxy_config|libnetwork_cpp|libextras|libVkICD_mock_icd|libv8_libplatform|libresource_coordinator_public_mojom|libwm|libviews|libsuid_sandbox_client|libEGL|libcapture_base|libnative_theme|libcrcrypto|libmojo_public_system|libservice_manager_mojom_constants_shared|libui_accessibility_ax_mojom_blink|libplatform|libui_data_pack|libgfx_ipc_buffer_types|libclearkeycdm|libmetrics_cpp|libmojo_base_shared_typemap_traits|libx11_events_platform|libcrash_key|libclient|libblink_controller|libfido|libfreetype_harfbuzz|libmojo_mojom_bindings_shared|libaccessibility|libstub_window|libui_base_ime|libpolicy_component|libweb_bluetooth_mojo_bindings_shared|libmojo_core_ports|libsandbox_services|libstorage_common|libviz_vulkan_context_provider|libcontent_common_mojo_bindings_shared|libgamepad_mojom_blink|libkeyed_service_core|libmedia_mojo_services|libmojo_ime_lib|libblink_modules|libgcm|libsql|libgeometry_skia|libVkLayer_unique_objects|libweb_feature_mojo_bindings_mojom_blink|libui_base_ime_linux|libdisplay_types|libdevice_vr_mojo_bindings_shared|libcc_base|libtracing_mojom_shared|libmedia_blink|libcc_mojo_embedder|libpdfium|libevents_ozone_layout|libgfx_ipc_color|libgtkui|libpolicy_proto|libcodec|libgpu|libcontent_service_cpp|libmojom_mhtml_load_result_shared|libdisplay_util|libcontent_service_mojom|libbase_i18n|libservice_manager_mojom_constants_blink|libcompositor|libmojo_base_mojom_blink|libui_message_center_cpp|libsnapshot|libdbus_thread_linux|libtab_count_metrics|libpublic|libui_accessibility_ax_mojom|liblearning_impl|librange|libbrowser_ui_views|libcontent|libvr_base|libppapi_host|libservice_manager_mojom_traits|libgamepad_mojom|libcertificate_matching|libgfx_ipc|libgl_init|libVkLayer_stateless_validation|libshared_with_blink|libshared_memory_support|libevents_base|libnet_with_v8|libmedia_webrtc|libsurface|libcontent_public_common_mojo_bindings_shared|libaura_extra|libdevice_base|libonc|libcdm_manager|libmojom_platform_shared|libui_accessibility_ax_mojom_shared|libhost|libblink_features|libdevice_features|libmirroring_service|libdbus|libgeometry|libchromium_sqlite3|libgamepad_mojom_shared|libauthenticator_test_mojo_bindings_shared|libboringssl|libembedder_switches|libgfx_ipc_skia|libzygote|libmedia_session_cpp|libv8|libnetwork_service|libx11_window|libui_base_clipboard|libanimation|libmessage_support|libui_devtools|libgamepad_shared_typemap_traits|libfingerprint|libviz_common|libppapi_shared|libstorage_browser|libbindings_base|libservice_manager_mojom|libblink_core|libgin|libresource_coordinator_public_mojom_shared|libuser_prefs|libui_base_ime_types|libipc_mojom|libmidi|libmojo_cpp_platform|libcc_debug|libui_base_clipboard_types|libmedia +%global privlibs libservice|libui_accessibility_ax_mojom_blink|libmojo_mojom_bindings_shared|libcolor_space|libui_base_ime_linux|libv8|libtracing_cpp|libprotobuf_lite|librange|libui_touch_selection|libgtkui|libraster|libstub_window|libmessage_center|libv8_libplatform|libtab_count_metrics|libclient|libaura|libresource_coordinator_public_mojom_shared|libbluetooth|libipc_mojom_shared|libdevice_event_log|libcc_debug|libnet_with_v8|libcc_paint|libwm_public|libnetwork_cpp_base|libservice_manager_mojom|libaura_extra|libmojo_public_system|libpdfium|libui_base_ime_init|libmpris|libcc|libservice_manager_cpp|libblink_mojom_broadcastchannel_bindings_shared|libinterfaces_shared|libservice_manager_cpp_types|libservice_manager_mojom_shared|libwm|libbase_i18n|libnetwork_session_configurator|libwebview|libplatform_window_handler_libs|libx11_events_platform|libmojo_cpp_platform|libandroid_mojo_bindings_shared|libpublic|libmirroring_service|libmedia_session_cpp|libblink_platform|libicui18n|libwebdata_common|libgin|libdevice_gamepad|libdevice_vr_mojo_bindings|libffmpeg|libmetrics_cpp|liburl_matcher|libpolicy_proto|libshared_memory_support|libparsers|libgles2_utils|libweb_feature_mojo_bindings_mojom|libui_base_idle|libmojo_public_system_cpp|libsuid_sandbox_client|libgfx_ipc_skia|libmojo_base_shared_typemap_traits|libcapture_lib|libgl_init|libblink_common|libcc_base|libmojo_base_mojom|libtracing_mojom_shared|libgpu_ipc_service|libui_accessibility_ax_mojom|libweb_feature_mojo_bindings_mojom_shared|libgfx_switches|libmedia_session_base_cpp|libmessage_support|libvulkan_init|libonc|libgpu|libmojom_modules_shared|libnative_theme|libgcm|libvr_base|libmojo_core_embedder_internal|libuser_prefs|libweb_bluetooth_mojo_bindings_shared|libos_crypt|libbrowser_ui_views|libembedder_switches|libcontent_service_mojom_shared|libsandbox|libvulkan_x11|libdevice_vr_test_mojo_bindings|libmojo_core_ports|libblink_core|libx11_window|libmojo_mojom_bindings|libipc|libmojo_base_mojom_blink|libgl_wrapper|libprinting|libgesture_detection|libdiscardable_memory_service|libmojom_core_shared|libviz_vulkan_context_provider|libpolicy_component|libdisplay|libvr_common|libdevice_vr_test_mojo_bindings_shared|libui_accessibility_ax_mojom_shared|libresource_coordinator_public_mojom|libvulkan_wrapper|libcrcrypto|libGLESv2|libv8_libbase|libcrash_key|libchrome_features|libdiscardable_memory_common|libbindings|libfreetype_harfbuzz|libcapture_base|libmojo_core_embedder|libprefs|libdevice_features|libresource_coordinator_cpp_features|libgfx_ipc_geometry|libgfx|libui_devtools|libweb_dialogs|libkeyed_service_core|libcontent|libgeometry_skia|libdisplay_util|libservice_manager_mojom_traits|libkeycodes_x11|libipc_mojom|libmojo_base_lib|libui_base_clipboard_types|libtracing_mojom|libmanager|libmedia_webrtc|libmedia_mojo_services|libcontent_public_common_mojo_bindings_shared|libgfx_ipc|libdiscardable_memory_client|libmemory_instrumentation|libui_base_ime|libskia|libgfx_ipc_color|libshell_dialogs|libEGL|libmedia_blink|libmedia_message_center|libblink_controller|libdevice_vr_mojo_bindings_shared|libmidi|libapdu|libseccomp_bpf|libboringssl|libcolor_utils|libdbus|libproxy_config|libblink_features|libmojom_platform_shared|libshared_with_blink|libui_data_pack|libevents_x|libleveldatabase|libevents_ozone_layout|libgfx_x11|libsurface|liblearning_impl|libgamepad_mojom|libcontent_service_cpp|libui_base|libzygote|libevents|libvulkan|libGLESv2|libEGL|libcertificate_matching|libusb_shared|libbindings_base|libgfx_ipc_buffer_types|libcodec|libmojom_mhtml_load_result_shared|libstorage_common|libdevice_vr|libviz_resource_format_utils|libservice_manager_mojom_blink|libgles2|libauthenticator_test_mojo_bindings_shared|libui_base_clipboard|libgamepad_mojom_shared|libdomain_reliability|libmenu|libblink_embedded_frame_sink_mojo_bindings_shared|libwebgpu|liburl_ipc|libnet|libmedia_gpu|libservice_manager_mojom_constants_shared|libaccessibility|libservice_manager_mojom_constants|libembedder|libgamepad_mojom_blink|libcc_animation|libplatform|libdevice_base|libanimation|libgamepad_shared_typemap_traits|libwtf|libthread_linux|libui_base_x|libcloud_policy_proto_generated_compile|libsql|libhost|libextras|libchromium_sqlite3|libnetwork_cpp|libmojo_base_mojom_shared|libgeometry|libppapi_proxy|libweb_feature_mojo_bindings_mojom_blink|libcontent_common_mojo_bindings_shared|libVkICD_mock_icd|libdevice_vr_mojo_bindings_blink|libservice_manager_mojom_constants_blink|libevents_base|liburl|libresource_coordinator_public_mojom_blink|libppapi_host|libppapi_shared|libmedia|libtracing|libsandbox_services|libcontent_service_mojom|libevents_devices_x11|libcompositor|libfingerprint|libuser_manager|libstorage_browser|libbase|libkeyed_service_content|libviews|libcaptive_portal|libcbor|libviz_common|libcc_mojo_embedder|libheadless_non_renderer|libui_base_features|libsnapshot|libcommon|libnetwork_service|liblearning_common|libblink_modules|libscheduling_metrics|libperfetto|libgles2_implementation|libsessions|libdevices|libstartup_tracing|libdisplay_types|libgl_in_process_context|libui_base_ime_types|libui_message_center_cpp|libclearkeycdm|libicuuc|libfido %endif %global __requires_exclude ^(%{privlibs})\\.so* From 2c44b244e01b2300c3b18bfdeac75b9a032c39f7 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 16 Sep 2019 14:23:29 +0200 Subject: [PATCH 0539/1449] Update the list of private libraries --- chromium.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index c1a65b0..4128a5c 100644 --- a/chromium.spec +++ b/chromium.spec @@ -179,7 +179,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3865.75 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1889,6 +1889,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Mon Sep 16 2019 Tomas Popela - 77.0.3865.75-2 +- Update the list of private libraries + * Fri Sep 13 2019 Tomas Popela - 77.0.3865.75-1 - Update to 77.0.3865.75 From 3f84f5c938ed15c767048e20623fd0f482bbdb52 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 18 Sep 2019 06:34:09 +0200 Subject: [PATCH 0540/1449] Update status of the downstream patch --- chromium.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 4128a5c..68fd93d 100644 --- a/chromium.spec +++ b/chromium.spec @@ -282,7 +282,7 @@ Patch64: chromium-77.0.3865.75-certificate-transparency.patch Patch65: chromium-77.0.3865.75-unbundle-zlib.patch # Needs to be submitted.. Patch66: chromium-77.0.3865.75-gcc-include-memory.patch -# Needs to be submitted.. +# https://chromium.googlesource.com/chromium/src/+/6b633c4b14850df376d5cec571699018772f358e Patch67: chromium-77.0.3865.75-base-gcc-no-alignas.patch # https://chromium.googlesource.com/chromium/src/+/27e25336b8316ff3ec4e464058682ed85801fd06 Patch68: chromium-77.0.3865.75-harfbuzz-subset.patch From 6fd7406e19f3a0f474462f63aee22189a9b2cea2 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 18 Sep 2019 06:35:01 +0200 Subject: [PATCH 0541/1449] Update the el7 noexcept patch and fix the el7 build --- chromium-76.0.3809.100-el7-noexcept.patch | 129 ------------------ chromium-77.0.3865.75-el7-noexcept.patch | 153 ++++++++++++++++++++++ chromium.spec | 2 +- 3 files changed, 154 insertions(+), 130 deletions(-) delete mode 100644 chromium-76.0.3809.100-el7-noexcept.patch create mode 100644 chromium-77.0.3865.75-el7-noexcept.patch diff --git a/chromium-76.0.3809.100-el7-noexcept.patch b/chromium-76.0.3809.100-el7-noexcept.patch deleted file mode 100644 index 407f8de..0000000 --- a/chromium-76.0.3809.100-el7-noexcept.patch +++ /dev/null @@ -1,129 +0,0 @@ -diff -up chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noexcept chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc ---- chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-08-23 13:41:04.842597850 +0200 -+++ chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc 2019-08-23 13:41:04.842597850 +0200 -@@ -19,12 +19,12 @@ MediaSink::MediaSink(const MediaSink::Id - provider_id_(provider_id) {} - - MediaSink::MediaSink(const MediaSink& other) = default; --MediaSink::MediaSink(MediaSink&& other) noexcept = default; -+MediaSink::MediaSink(MediaSink&& other) = default; - MediaSink::MediaSink() = default; - MediaSink::~MediaSink() = default; - - MediaSink& MediaSink::operator=(const MediaSink& other) = default; --MediaSink& MediaSink::operator=(MediaSink&& other) noexcept = default; -+MediaSink& MediaSink::operator=(MediaSink&& other) = default; - - bool MediaSink::IsMaybeCloudSink() const { - switch (icon_type_) { -diff -up chromium-76.0.3809.100/components/history/core/browser/history_types.cc.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/history_types.cc ---- chromium-76.0.3809.100/components/history/core/browser/history_types.cc.el7-noexcept 2019-08-23 13:45:57.673815531 +0200 -+++ chromium-76.0.3809.100/components/history/core/browser/history_types.cc 2019-08-26 10:13:00.815409764 +0200 -@@ -42,7 +42,7 @@ QueryResults::QueryResults(QueryResults& - Swap(&other); - } - --QueryResults& QueryResults::operator=(QueryResults&& other) noexcept { -+QueryResults& QueryResults::operator=(QueryResults&& other) { - Swap(&other); - return *this; - } -@@ -186,7 +186,7 @@ QueryURLResult::QueryURLResult(QueryURLR - - QueryURLResult& QueryURLResult::operator=(const QueryURLResult&) = default; - --QueryURLResult& QueryURLResult::operator=(QueryURLResult&&) noexcept = default; -+QueryURLResult& QueryURLResult::operator=(QueryURLResult&&) = default; - - // MostVisitedURL -------------------------------------------------------------- - -diff -up chromium-76.0.3809.100/components/history/core/browser/history_types.h.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/history_types.h ---- chromium-76.0.3809.100/components/history/core/browser/history_types.h.el7-noexcept 2019-08-23 13:46:11.455966965 +0200 -+++ chromium-76.0.3809.100/components/history/core/browser/history_types.h 2019-08-26 10:13:49.951881558 +0200 -@@ -143,7 +143,7 @@ class QueryResults { - ~QueryResults(); - - QueryResults(QueryResults&& other) noexcept; -- QueryResults& operator=(QueryResults&& other) noexcept; -+ QueryResults& operator=(QueryResults&& other); - - void set_reached_beginning(bool reached) { reached_beginning_ = reached; } - bool reached_beginning() { return reached_beginning_; } -@@ -278,7 +278,7 @@ struct QueryURLResult { - QueryURLResult(const QueryURLResult&); - QueryURLResult(QueryURLResult&&) noexcept; - QueryURLResult& operator=(const QueryURLResult&); -- QueryURLResult& operator=(QueryURLResult&&) noexcept; -+ QueryURLResult& operator=(QueryURLResult&&); - ~QueryURLResult(); - - // Indicates whether the call to HistoryBackend::QueryURL was successfull -diff -up chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept chromium-76.0.3809.100/components/policy/core/common/policy_map.cc ---- chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept 2019-08-23 13:40:42.633353810 +0200 -+++ chromium-76.0.3809.100/components/policy/core/common/policy_map.cc 2019-08-23 13:40:42.576353183 +0200 -@@ -52,7 +52,7 @@ PolicyMap::Entry::Entry( - PolicyMap::Entry::~Entry() = default; - - PolicyMap::Entry::Entry(Entry&&) noexcept = default; --PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) noexcept = default; -+PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) = default; - - PolicyMap::Entry PolicyMap::Entry::DeepCopy() const { - Entry copy; -diff -up chromium-76.0.3809.100/components/signin/core/browser/account_info.cc.el7-noexcept chromium-76.0.3809.100/components/signin/core/browser/account_info.cc ---- chromium-76.0.3809.100/components/signin/core/browser/account_info.cc.el7-noexcept 2019-08-23 13:40:44.224371292 +0200 -+++ chromium-76.0.3809.100/components/signin/core/browser/account_info.cc 2019-08-23 13:40:44.190370918 +0200 -@@ -52,7 +52,7 @@ CoreAccountInfo::CoreAccountInfo(CoreAcc - CoreAccountInfo& CoreAccountInfo::operator=(const CoreAccountInfo& other) = - default; - --CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) noexcept = -+CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) = - default; - - bool CoreAccountInfo::IsEmpty() const { -@@ -69,7 +69,7 @@ AccountInfo::AccountInfo(AccountInfo&& o - - AccountInfo& AccountInfo::operator=(const AccountInfo& other) = default; - --AccountInfo& AccountInfo::operator=(AccountInfo&& other) noexcept = default; -+AccountInfo& AccountInfo::operator=(AccountInfo&& other) = default; - - bool AccountInfo::IsEmpty() const { - return CoreAccountInfo::IsEmpty() && hosted_domain.empty() && -diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.el7-noexcept chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc ---- chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.el7-noexcept 2019-08-23 13:40:25.468165195 +0200 -+++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc 2019-08-23 13:40:25.481165338 +0200 -@@ -14,7 +14,7 @@ CoreAccountId::~CoreAccountId() = defaul - - CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; - --CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) noexcept = default; -+CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) = default; - - CoreAccountId::CoreAccountId(const char* id) : id(id) {} - -diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.el7-noexcept chromium-76.0.3809.100/google_apis/gaia/core_account_id.h ---- chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.el7-noexcept 2019-08-23 13:40:25.468165195 +0200 -+++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.h 2019-08-23 13:40:25.481165338 +0200 -@@ -19,7 +19,7 @@ struct CoreAccountId { - ~CoreAccountId(); - - CoreAccountId& operator=(const CoreAccountId&); -- CoreAccountId& operator=(CoreAccountId&&) noexcept; -+ CoreAccountId& operator=(CoreAccountId&&); - - // Those implicit constructor and conversion operator allow to - // progressively migrate the code to use this struct. Removing -diff -up chromium-76.0.3809.100/gpu/config/gpu_info.cc.el7-noexcept chromium-76.0.3809.100/gpu/config/gpu_info.cc ---- chromium-76.0.3809.100/gpu/config/gpu_info.cc.el7-noexcept 2019-08-09 16:48:01.000000000 +0200 -+++ chromium-76.0.3809.100/gpu/config/gpu_info.cc 2019-08-23 13:40:25.482165349 +0200 -@@ -166,7 +166,7 @@ GPUInfo::GPUDevice& GPUInfo::GPUDevice:: - const GPUInfo::GPUDevice& other) = default; - - GPUInfo::GPUDevice& GPUInfo::GPUDevice::operator=( -- GPUInfo::GPUDevice&& other) noexcept = default; -+ GPUInfo::GPUDevice&& other) = default; - - GPUInfo::GPUInfo() - : optimus(false), diff --git a/chromium-77.0.3865.75-el7-noexcept.patch b/chromium-77.0.3865.75-el7-noexcept.patch new file mode 100644 index 0000000..59b6fa9 --- /dev/null +++ b/chromium-77.0.3865.75-el7-noexcept.patch @@ -0,0 +1,153 @@ +diff -up chromium-77.0.3865.75/chrome/common/media_router/media_sink.cc.el7-noexcept chromium-77.0.3865.75/chrome/common/media_router/media_sink.cc +--- chromium-77.0.3865.75/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-09-17 18:42:37.137393137 +0200 ++++ chromium-77.0.3865.75/chrome/common/media_router/media_sink.cc 2019-09-17 18:42:37.145393201 +0200 +@@ -19,12 +19,12 @@ MediaSink::MediaSink(const MediaSink::Id + provider_id_(provider_id) {} + + MediaSink::MediaSink(const MediaSink& other) = default; +-MediaSink::MediaSink(MediaSink&& other) noexcept = default; ++MediaSink::MediaSink(MediaSink&& other) = default; + MediaSink::MediaSink() = default; + MediaSink::~MediaSink() = default; + + MediaSink& MediaSink::operator=(const MediaSink& other) = default; +-MediaSink& MediaSink::operator=(MediaSink&& other) noexcept = default; ++MediaSink& MediaSink::operator=(MediaSink&& other) = default; + + bool MediaSink::IsMaybeCloudSink() const { + switch (icon_type_) { +diff -up chromium-77.0.3865.75/components/history/core/browser/history_types.cc.el7-noexcept chromium-77.0.3865.75/components/history/core/browser/history_types.cc +--- chromium-77.0.3865.75/components/history/core/browser/history_types.cc.el7-noexcept 2019-09-17 18:42:09.417172829 +0200 ++++ chromium-77.0.3865.75/components/history/core/browser/history_types.cc 2019-09-17 18:42:09.385172574 +0200 +@@ -42,7 +42,7 @@ QueryResults::QueryResults(QueryResults& + Swap(&other); + } + +-QueryResults& QueryResults::operator=(QueryResults&& other) noexcept { ++QueryResults& QueryResults::operator=(QueryResults&& other) { + Swap(&other); + return *this; + } +@@ -186,7 +186,7 @@ QueryURLResult::QueryURLResult(QueryURLR + + QueryURLResult& QueryURLResult::operator=(const QueryURLResult&) = default; + +-QueryURLResult& QueryURLResult::operator=(QueryURLResult&&) noexcept = default; ++QueryURLResult& QueryURLResult::operator=(QueryURLResult&&) = default; + + // MostVisitedURL -------------------------------------------------------------- + +diff -up chromium-77.0.3865.75/components/history/core/browser/history_types.h.el7-noexcept chromium-77.0.3865.75/components/history/core/browser/history_types.h +--- chromium-77.0.3865.75/components/history/core/browser/history_types.h.el7-noexcept 2019-09-17 18:42:09.437172988 +0200 ++++ chromium-77.0.3865.75/components/history/core/browser/history_types.h 2019-09-17 18:42:09.365172415 +0200 +@@ -143,7 +143,7 @@ class QueryResults { + ~QueryResults(); + + QueryResults(QueryResults&& other) noexcept; +- QueryResults& operator=(QueryResults&& other) noexcept; ++ QueryResults& operator=(QueryResults&& other); + + void set_reached_beginning(bool reached) { reached_beginning_ = reached; } + bool reached_beginning() { return reached_beginning_; } +@@ -278,7 +278,7 @@ struct QueryURLResult { + QueryURLResult(const QueryURLResult&); + QueryURLResult(QueryURLResult&&) noexcept; + QueryURLResult& operator=(const QueryURLResult&); +- QueryURLResult& operator=(QueryURLResult&&) noexcept; ++ QueryURLResult& operator=(QueryURLResult&&); + ~QueryURLResult(); + + // Indicates whether the call to HistoryBackend::QueryURL was successfull +diff -up chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc.el7-noexcept chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc +--- chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc.el7-noexcept 2019-09-17 22:00:18.670108528 +0200 ++++ chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc 2019-09-17 22:00:32.518272148 +0200 +@@ -60,7 +60,7 @@ SuggestionAnswer::TextField::TextField(T + SuggestionAnswer::TextField& SuggestionAnswer::TextField::operator=( + const TextField&) = default; + SuggestionAnswer::TextField& SuggestionAnswer::TextField::operator=( +- TextField&&) noexcept = default; ++ TextField&&) = default; + + // static + bool SuggestionAnswer::TextField::ParseTextField(const base::Value& field_json, +diff -up chromium-77.0.3865.75/components/policy/core/common/policy_map.cc.el7-noexcept chromium-77.0.3865.75/components/policy/core/common/policy_map.cc +--- chromium-77.0.3865.75/components/policy/core/common/policy_map.cc.el7-noexcept 2019-09-17 18:42:14.622214197 +0200 ++++ chromium-77.0.3865.75/components/policy/core/common/policy_map.cc 2019-09-17 18:42:14.556213673 +0200 +@@ -52,7 +52,7 @@ PolicyMap::Entry::Entry( + PolicyMap::Entry::~Entry() = default; + + PolicyMap::Entry::Entry(Entry&&) noexcept = default; +-PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) noexcept = default; ++PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) = default; + + PolicyMap::Entry PolicyMap::Entry::DeepCopy() const { + Entry copy; +diff -up chromium-77.0.3865.75/components/signin/public/identity_manager/account_info.cc.el7-noexcept chromium-77.0.3865.75/components/signin/public/identity_manager/account_info.cc +--- chromium-77.0.3865.75/components/signin/public/identity_manager/account_info.cc.el7-noexcept 2019-09-17 21:06:27.037828110 +0200 ++++ chromium-77.0.3865.75/components/signin/public/identity_manager/account_info.cc 2019-09-17 21:07:20.726472932 +0200 +@@ -52,7 +52,7 @@ CoreAccountInfo::CoreAccountInfo(CoreAcc + CoreAccountInfo& CoreAccountInfo::operator=(const CoreAccountInfo& other) = + default; + +-CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) noexcept = ++CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) = + default; + + bool CoreAccountInfo::IsEmpty() const { +@@ -69,7 +69,7 @@ AccountInfo::AccountInfo(AccountInfo&& o + + AccountInfo& AccountInfo::operator=(const AccountInfo& other) = default; + +-AccountInfo& AccountInfo::operator=(AccountInfo&& other) noexcept = default; ++AccountInfo& AccountInfo::operator=(AccountInfo&& other) = default; + + bool AccountInfo::IsEmpty() const { + return CoreAccountInfo::IsEmpty() && hosted_domain.empty() && +diff -up chromium-77.0.3865.75/google_apis/gaia/core_account_id.cc.el7-noexcept chromium-77.0.3865.75/google_apis/gaia/core_account_id.cc +--- chromium-77.0.3865.75/google_apis/gaia/core_account_id.cc.el7-noexcept 2019-09-17 18:43:12.969677930 +0200 ++++ chromium-77.0.3865.75/google_apis/gaia/core_account_id.cc 2019-09-17 18:43:12.989678089 +0200 +@@ -14,7 +14,7 @@ CoreAccountId::~CoreAccountId() = defaul + + CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; + +-CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) noexcept = default; ++CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) = default; + + CoreAccountId::CoreAccountId(const char* id) : id(id) {} + +diff -up chromium-77.0.3865.75/google_apis/gaia/core_account_id.h.el7-noexcept chromium-77.0.3865.75/google_apis/gaia/core_account_id.h +--- chromium-77.0.3865.75/google_apis/gaia/core_account_id.h.el7-noexcept 2019-09-17 18:43:12.978678001 +0200 ++++ chromium-77.0.3865.75/google_apis/gaia/core_account_id.h 2019-09-17 18:43:12.983678041 +0200 +@@ -20,7 +20,7 @@ struct CoreAccountId { + ~CoreAccountId(); + + CoreAccountId& operator=(const CoreAccountId&); +- CoreAccountId& operator=(CoreAccountId&&) noexcept; ++ CoreAccountId& operator=(CoreAccountId&&); + + // Those implicit constructor and conversion operator allow to + // progressively migrate the code to use this struct. Removing +diff -up chromium-77.0.3865.75/gpu/config/gpu_info.cc.el7-noexcept chromium-77.0.3865.75/gpu/config/gpu_info.cc +--- chromium-77.0.3865.75/gpu/config/gpu_info.cc.el7-noexcept 2019-09-17 18:42:25.049297073 +0200 ++++ chromium-77.0.3865.75/gpu/config/gpu_info.cc 2019-09-17 18:42:25.049297073 +0200 +@@ -170,7 +170,7 @@ GPUInfo::GPUDevice& GPUInfo::GPUDevice:: + const GPUInfo::GPUDevice& other) = default; + + GPUInfo::GPUDevice& GPUInfo::GPUDevice::operator=( +- GPUInfo::GPUDevice&& other) noexcept = default; ++ GPUInfo::GPUDevice&& other) = default; + + GPUInfo::GPUInfo() + : optimus(false), +diff -up chromium-77.0.3865.75/third_party/openscreen/src/osp/public/service_info.h.el7-noexcept chromium-77.0.3865.75/third_party/openscreen/src/osp/public/service_info.h +--- chromium-77.0.3865.75/third_party/openscreen/src/osp/public/service_info.h.el7-noexcept 2019-09-17 21:46:46.378655525 +0200 ++++ chromium-77.0.3865.75/third_party/openscreen/src/osp/public/service_info.h 2019-09-17 21:47:16.897035418 +0200 +@@ -21,7 +21,7 @@ struct ServiceInfo { + ServiceInfo(ServiceInfo&&) MAYBE_NOEXCEPT = default; + ServiceInfo(const ServiceInfo&) MAYBE_NOEXCEPT = default; + +- ServiceInfo& operator=(ServiceInfo&&) MAYBE_NOEXCEPT = default; ++ ServiceInfo& operator=(ServiceInfo&&) = default; + ServiceInfo& operator=(const ServiceInfo&) MAYBE_NOEXCEPT = default; + + bool operator==(const ServiceInfo& other) const; diff --git a/chromium.spec b/chromium.spec index 68fd93d..2d65554 100644 --- a/chromium.spec +++ b/chromium.spec @@ -296,7 +296,7 @@ Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch # Use lstdc++ on EPEL7 only Patch101: chromium-75.0.3770.100-epel7-stdc++.patch # el7 only patch -Patch102: chromium-76.0.3809.100-el7-noexcept.patch +Patch102: chromium-77.0.3865.75-el7-noexcept.patch # In file included from ../linux/directory.c:21: # In file included from ../../../../native_client/src/nonsfi/linux/abi_conversion.h:20: From ab78a226f4f23c23ea97d0a4370a05a2002d17ae Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 18 Sep 2019 08:05:03 +0200 Subject: [PATCH 0542/1449] Forget to generate diff for one affected el7-noexcept file --- chromium-77.0.3865.75-el7-noexcept.patch | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/chromium-77.0.3865.75-el7-noexcept.patch b/chromium-77.0.3865.75-el7-noexcept.patch index 59b6fa9..366c139 100644 --- a/chromium-77.0.3865.75-el7-noexcept.patch +++ b/chromium-77.0.3865.75-el7-noexcept.patch @@ -58,6 +58,18 @@ diff -up chromium-77.0.3865.75/components/history/core/browser/history_types.h.e ~QueryURLResult(); // Indicates whether the call to HistoryBackend::QueryURL was successfull +diff -up chromium-77.0.3865.75/components/history/core/browser/url_row.cc.el7-noexcept chromium-77.0.3865.75/components/history/core/browser/url_row.cc +--- chromium-77.0.3865.75/components/history/core/browser/url_row.cc.el7-noexcept 2019-09-18 08:03:25.458138423 +0200 ++++ chromium-77.0.3865.75/components/history/core/browser/url_row.cc 2019-09-18 08:03:34.363234155 +0200 +@@ -26,7 +26,7 @@ URLRow::~URLRow() { + } + + URLRow& URLRow::operator=(const URLRow& other) = default; +-URLRow& URLRow::operator=(URLRow&& other) noexcept = default; ++URLRow& URLRow::operator=(URLRow&& other) = default; + + void URLRow::Swap(URLRow* other) { + std::swap(id_, other->id_); diff -up chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc.el7-noexcept chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc --- chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc.el7-noexcept 2019-09-17 22:00:18.670108528 +0200 +++ chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc 2019-09-17 22:00:32.518272148 +0200 From 1a179e7d6a6aa7376e3b286bffa6901c66716294 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 18 Sep 2019 06:35:01 +0200 Subject: [PATCH 0543/1449] Update the el7 noexcept patch and fix the el7 build --- chromium-76.0.3809.100-el7-noexcept.patch | 129 ------------------ chromium-77.0.3865.75-el7-noexcept.patch | 153 ++++++++++++++++++++++ chromium.spec | 2 +- 3 files changed, 154 insertions(+), 130 deletions(-) delete mode 100644 chromium-76.0.3809.100-el7-noexcept.patch create mode 100644 chromium-77.0.3865.75-el7-noexcept.patch diff --git a/chromium-76.0.3809.100-el7-noexcept.patch b/chromium-76.0.3809.100-el7-noexcept.patch deleted file mode 100644 index 407f8de..0000000 --- a/chromium-76.0.3809.100-el7-noexcept.patch +++ /dev/null @@ -1,129 +0,0 @@ -diff -up chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noexcept chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc ---- chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-08-23 13:41:04.842597850 +0200 -+++ chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc 2019-08-23 13:41:04.842597850 +0200 -@@ -19,12 +19,12 @@ MediaSink::MediaSink(const MediaSink::Id - provider_id_(provider_id) {} - - MediaSink::MediaSink(const MediaSink& other) = default; --MediaSink::MediaSink(MediaSink&& other) noexcept = default; -+MediaSink::MediaSink(MediaSink&& other) = default; - MediaSink::MediaSink() = default; - MediaSink::~MediaSink() = default; - - MediaSink& MediaSink::operator=(const MediaSink& other) = default; --MediaSink& MediaSink::operator=(MediaSink&& other) noexcept = default; -+MediaSink& MediaSink::operator=(MediaSink&& other) = default; - - bool MediaSink::IsMaybeCloudSink() const { - switch (icon_type_) { -diff -up chromium-76.0.3809.100/components/history/core/browser/history_types.cc.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/history_types.cc ---- chromium-76.0.3809.100/components/history/core/browser/history_types.cc.el7-noexcept 2019-08-23 13:45:57.673815531 +0200 -+++ chromium-76.0.3809.100/components/history/core/browser/history_types.cc 2019-08-26 10:13:00.815409764 +0200 -@@ -42,7 +42,7 @@ QueryResults::QueryResults(QueryResults& - Swap(&other); - } - --QueryResults& QueryResults::operator=(QueryResults&& other) noexcept { -+QueryResults& QueryResults::operator=(QueryResults&& other) { - Swap(&other); - return *this; - } -@@ -186,7 +186,7 @@ QueryURLResult::QueryURLResult(QueryURLR - - QueryURLResult& QueryURLResult::operator=(const QueryURLResult&) = default; - --QueryURLResult& QueryURLResult::operator=(QueryURLResult&&) noexcept = default; -+QueryURLResult& QueryURLResult::operator=(QueryURLResult&&) = default; - - // MostVisitedURL -------------------------------------------------------------- - -diff -up chromium-76.0.3809.100/components/history/core/browser/history_types.h.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/history_types.h ---- chromium-76.0.3809.100/components/history/core/browser/history_types.h.el7-noexcept 2019-08-23 13:46:11.455966965 +0200 -+++ chromium-76.0.3809.100/components/history/core/browser/history_types.h 2019-08-26 10:13:49.951881558 +0200 -@@ -143,7 +143,7 @@ class QueryResults { - ~QueryResults(); - - QueryResults(QueryResults&& other) noexcept; -- QueryResults& operator=(QueryResults&& other) noexcept; -+ QueryResults& operator=(QueryResults&& other); - - void set_reached_beginning(bool reached) { reached_beginning_ = reached; } - bool reached_beginning() { return reached_beginning_; } -@@ -278,7 +278,7 @@ struct QueryURLResult { - QueryURLResult(const QueryURLResult&); - QueryURLResult(QueryURLResult&&) noexcept; - QueryURLResult& operator=(const QueryURLResult&); -- QueryURLResult& operator=(QueryURLResult&&) noexcept; -+ QueryURLResult& operator=(QueryURLResult&&); - ~QueryURLResult(); - - // Indicates whether the call to HistoryBackend::QueryURL was successfull -diff -up chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept chromium-76.0.3809.100/components/policy/core/common/policy_map.cc ---- chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept 2019-08-23 13:40:42.633353810 +0200 -+++ chromium-76.0.3809.100/components/policy/core/common/policy_map.cc 2019-08-23 13:40:42.576353183 +0200 -@@ -52,7 +52,7 @@ PolicyMap::Entry::Entry( - PolicyMap::Entry::~Entry() = default; - - PolicyMap::Entry::Entry(Entry&&) noexcept = default; --PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) noexcept = default; -+PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) = default; - - PolicyMap::Entry PolicyMap::Entry::DeepCopy() const { - Entry copy; -diff -up chromium-76.0.3809.100/components/signin/core/browser/account_info.cc.el7-noexcept chromium-76.0.3809.100/components/signin/core/browser/account_info.cc ---- chromium-76.0.3809.100/components/signin/core/browser/account_info.cc.el7-noexcept 2019-08-23 13:40:44.224371292 +0200 -+++ chromium-76.0.3809.100/components/signin/core/browser/account_info.cc 2019-08-23 13:40:44.190370918 +0200 -@@ -52,7 +52,7 @@ CoreAccountInfo::CoreAccountInfo(CoreAcc - CoreAccountInfo& CoreAccountInfo::operator=(const CoreAccountInfo& other) = - default; - --CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) noexcept = -+CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) = - default; - - bool CoreAccountInfo::IsEmpty() const { -@@ -69,7 +69,7 @@ AccountInfo::AccountInfo(AccountInfo&& o - - AccountInfo& AccountInfo::operator=(const AccountInfo& other) = default; - --AccountInfo& AccountInfo::operator=(AccountInfo&& other) noexcept = default; -+AccountInfo& AccountInfo::operator=(AccountInfo&& other) = default; - - bool AccountInfo::IsEmpty() const { - return CoreAccountInfo::IsEmpty() && hosted_domain.empty() && -diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.el7-noexcept chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc ---- chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.el7-noexcept 2019-08-23 13:40:25.468165195 +0200 -+++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc 2019-08-23 13:40:25.481165338 +0200 -@@ -14,7 +14,7 @@ CoreAccountId::~CoreAccountId() = defaul - - CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; - --CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) noexcept = default; -+CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) = default; - - CoreAccountId::CoreAccountId(const char* id) : id(id) {} - -diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.el7-noexcept chromium-76.0.3809.100/google_apis/gaia/core_account_id.h ---- chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.el7-noexcept 2019-08-23 13:40:25.468165195 +0200 -+++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.h 2019-08-23 13:40:25.481165338 +0200 -@@ -19,7 +19,7 @@ struct CoreAccountId { - ~CoreAccountId(); - - CoreAccountId& operator=(const CoreAccountId&); -- CoreAccountId& operator=(CoreAccountId&&) noexcept; -+ CoreAccountId& operator=(CoreAccountId&&); - - // Those implicit constructor and conversion operator allow to - // progressively migrate the code to use this struct. Removing -diff -up chromium-76.0.3809.100/gpu/config/gpu_info.cc.el7-noexcept chromium-76.0.3809.100/gpu/config/gpu_info.cc ---- chromium-76.0.3809.100/gpu/config/gpu_info.cc.el7-noexcept 2019-08-09 16:48:01.000000000 +0200 -+++ chromium-76.0.3809.100/gpu/config/gpu_info.cc 2019-08-23 13:40:25.482165349 +0200 -@@ -166,7 +166,7 @@ GPUInfo::GPUDevice& GPUInfo::GPUDevice:: - const GPUInfo::GPUDevice& other) = default; - - GPUInfo::GPUDevice& GPUInfo::GPUDevice::operator=( -- GPUInfo::GPUDevice&& other) noexcept = default; -+ GPUInfo::GPUDevice&& other) = default; - - GPUInfo::GPUInfo() - : optimus(false), diff --git a/chromium-77.0.3865.75-el7-noexcept.patch b/chromium-77.0.3865.75-el7-noexcept.patch new file mode 100644 index 0000000..59b6fa9 --- /dev/null +++ b/chromium-77.0.3865.75-el7-noexcept.patch @@ -0,0 +1,153 @@ +diff -up chromium-77.0.3865.75/chrome/common/media_router/media_sink.cc.el7-noexcept chromium-77.0.3865.75/chrome/common/media_router/media_sink.cc +--- chromium-77.0.3865.75/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-09-17 18:42:37.137393137 +0200 ++++ chromium-77.0.3865.75/chrome/common/media_router/media_sink.cc 2019-09-17 18:42:37.145393201 +0200 +@@ -19,12 +19,12 @@ MediaSink::MediaSink(const MediaSink::Id + provider_id_(provider_id) {} + + MediaSink::MediaSink(const MediaSink& other) = default; +-MediaSink::MediaSink(MediaSink&& other) noexcept = default; ++MediaSink::MediaSink(MediaSink&& other) = default; + MediaSink::MediaSink() = default; + MediaSink::~MediaSink() = default; + + MediaSink& MediaSink::operator=(const MediaSink& other) = default; +-MediaSink& MediaSink::operator=(MediaSink&& other) noexcept = default; ++MediaSink& MediaSink::operator=(MediaSink&& other) = default; + + bool MediaSink::IsMaybeCloudSink() const { + switch (icon_type_) { +diff -up chromium-77.0.3865.75/components/history/core/browser/history_types.cc.el7-noexcept chromium-77.0.3865.75/components/history/core/browser/history_types.cc +--- chromium-77.0.3865.75/components/history/core/browser/history_types.cc.el7-noexcept 2019-09-17 18:42:09.417172829 +0200 ++++ chromium-77.0.3865.75/components/history/core/browser/history_types.cc 2019-09-17 18:42:09.385172574 +0200 +@@ -42,7 +42,7 @@ QueryResults::QueryResults(QueryResults& + Swap(&other); + } + +-QueryResults& QueryResults::operator=(QueryResults&& other) noexcept { ++QueryResults& QueryResults::operator=(QueryResults&& other) { + Swap(&other); + return *this; + } +@@ -186,7 +186,7 @@ QueryURLResult::QueryURLResult(QueryURLR + + QueryURLResult& QueryURLResult::operator=(const QueryURLResult&) = default; + +-QueryURLResult& QueryURLResult::operator=(QueryURLResult&&) noexcept = default; ++QueryURLResult& QueryURLResult::operator=(QueryURLResult&&) = default; + + // MostVisitedURL -------------------------------------------------------------- + +diff -up chromium-77.0.3865.75/components/history/core/browser/history_types.h.el7-noexcept chromium-77.0.3865.75/components/history/core/browser/history_types.h +--- chromium-77.0.3865.75/components/history/core/browser/history_types.h.el7-noexcept 2019-09-17 18:42:09.437172988 +0200 ++++ chromium-77.0.3865.75/components/history/core/browser/history_types.h 2019-09-17 18:42:09.365172415 +0200 +@@ -143,7 +143,7 @@ class QueryResults { + ~QueryResults(); + + QueryResults(QueryResults&& other) noexcept; +- QueryResults& operator=(QueryResults&& other) noexcept; ++ QueryResults& operator=(QueryResults&& other); + + void set_reached_beginning(bool reached) { reached_beginning_ = reached; } + bool reached_beginning() { return reached_beginning_; } +@@ -278,7 +278,7 @@ struct QueryURLResult { + QueryURLResult(const QueryURLResult&); + QueryURLResult(QueryURLResult&&) noexcept; + QueryURLResult& operator=(const QueryURLResult&); +- QueryURLResult& operator=(QueryURLResult&&) noexcept; ++ QueryURLResult& operator=(QueryURLResult&&); + ~QueryURLResult(); + + // Indicates whether the call to HistoryBackend::QueryURL was successfull +diff -up chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc.el7-noexcept chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc +--- chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc.el7-noexcept 2019-09-17 22:00:18.670108528 +0200 ++++ chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc 2019-09-17 22:00:32.518272148 +0200 +@@ -60,7 +60,7 @@ SuggestionAnswer::TextField::TextField(T + SuggestionAnswer::TextField& SuggestionAnswer::TextField::operator=( + const TextField&) = default; + SuggestionAnswer::TextField& SuggestionAnswer::TextField::operator=( +- TextField&&) noexcept = default; ++ TextField&&) = default; + + // static + bool SuggestionAnswer::TextField::ParseTextField(const base::Value& field_json, +diff -up chromium-77.0.3865.75/components/policy/core/common/policy_map.cc.el7-noexcept chromium-77.0.3865.75/components/policy/core/common/policy_map.cc +--- chromium-77.0.3865.75/components/policy/core/common/policy_map.cc.el7-noexcept 2019-09-17 18:42:14.622214197 +0200 ++++ chromium-77.0.3865.75/components/policy/core/common/policy_map.cc 2019-09-17 18:42:14.556213673 +0200 +@@ -52,7 +52,7 @@ PolicyMap::Entry::Entry( + PolicyMap::Entry::~Entry() = default; + + PolicyMap::Entry::Entry(Entry&&) noexcept = default; +-PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) noexcept = default; ++PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) = default; + + PolicyMap::Entry PolicyMap::Entry::DeepCopy() const { + Entry copy; +diff -up chromium-77.0.3865.75/components/signin/public/identity_manager/account_info.cc.el7-noexcept chromium-77.0.3865.75/components/signin/public/identity_manager/account_info.cc +--- chromium-77.0.3865.75/components/signin/public/identity_manager/account_info.cc.el7-noexcept 2019-09-17 21:06:27.037828110 +0200 ++++ chromium-77.0.3865.75/components/signin/public/identity_manager/account_info.cc 2019-09-17 21:07:20.726472932 +0200 +@@ -52,7 +52,7 @@ CoreAccountInfo::CoreAccountInfo(CoreAcc + CoreAccountInfo& CoreAccountInfo::operator=(const CoreAccountInfo& other) = + default; + +-CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) noexcept = ++CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) = + default; + + bool CoreAccountInfo::IsEmpty() const { +@@ -69,7 +69,7 @@ AccountInfo::AccountInfo(AccountInfo&& o + + AccountInfo& AccountInfo::operator=(const AccountInfo& other) = default; + +-AccountInfo& AccountInfo::operator=(AccountInfo&& other) noexcept = default; ++AccountInfo& AccountInfo::operator=(AccountInfo&& other) = default; + + bool AccountInfo::IsEmpty() const { + return CoreAccountInfo::IsEmpty() && hosted_domain.empty() && +diff -up chromium-77.0.3865.75/google_apis/gaia/core_account_id.cc.el7-noexcept chromium-77.0.3865.75/google_apis/gaia/core_account_id.cc +--- chromium-77.0.3865.75/google_apis/gaia/core_account_id.cc.el7-noexcept 2019-09-17 18:43:12.969677930 +0200 ++++ chromium-77.0.3865.75/google_apis/gaia/core_account_id.cc 2019-09-17 18:43:12.989678089 +0200 +@@ -14,7 +14,7 @@ CoreAccountId::~CoreAccountId() = defaul + + CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; + +-CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) noexcept = default; ++CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) = default; + + CoreAccountId::CoreAccountId(const char* id) : id(id) {} + +diff -up chromium-77.0.3865.75/google_apis/gaia/core_account_id.h.el7-noexcept chromium-77.0.3865.75/google_apis/gaia/core_account_id.h +--- chromium-77.0.3865.75/google_apis/gaia/core_account_id.h.el7-noexcept 2019-09-17 18:43:12.978678001 +0200 ++++ chromium-77.0.3865.75/google_apis/gaia/core_account_id.h 2019-09-17 18:43:12.983678041 +0200 +@@ -20,7 +20,7 @@ struct CoreAccountId { + ~CoreAccountId(); + + CoreAccountId& operator=(const CoreAccountId&); +- CoreAccountId& operator=(CoreAccountId&&) noexcept; ++ CoreAccountId& operator=(CoreAccountId&&); + + // Those implicit constructor and conversion operator allow to + // progressively migrate the code to use this struct. Removing +diff -up chromium-77.0.3865.75/gpu/config/gpu_info.cc.el7-noexcept chromium-77.0.3865.75/gpu/config/gpu_info.cc +--- chromium-77.0.3865.75/gpu/config/gpu_info.cc.el7-noexcept 2019-09-17 18:42:25.049297073 +0200 ++++ chromium-77.0.3865.75/gpu/config/gpu_info.cc 2019-09-17 18:42:25.049297073 +0200 +@@ -170,7 +170,7 @@ GPUInfo::GPUDevice& GPUInfo::GPUDevice:: + const GPUInfo::GPUDevice& other) = default; + + GPUInfo::GPUDevice& GPUInfo::GPUDevice::operator=( +- GPUInfo::GPUDevice&& other) noexcept = default; ++ GPUInfo::GPUDevice&& other) = default; + + GPUInfo::GPUInfo() + : optimus(false), +diff -up chromium-77.0.3865.75/third_party/openscreen/src/osp/public/service_info.h.el7-noexcept chromium-77.0.3865.75/third_party/openscreen/src/osp/public/service_info.h +--- chromium-77.0.3865.75/third_party/openscreen/src/osp/public/service_info.h.el7-noexcept 2019-09-17 21:46:46.378655525 +0200 ++++ chromium-77.0.3865.75/third_party/openscreen/src/osp/public/service_info.h 2019-09-17 21:47:16.897035418 +0200 +@@ -21,7 +21,7 @@ struct ServiceInfo { + ServiceInfo(ServiceInfo&&) MAYBE_NOEXCEPT = default; + ServiceInfo(const ServiceInfo&) MAYBE_NOEXCEPT = default; + +- ServiceInfo& operator=(ServiceInfo&&) MAYBE_NOEXCEPT = default; ++ ServiceInfo& operator=(ServiceInfo&&) = default; + ServiceInfo& operator=(const ServiceInfo&) MAYBE_NOEXCEPT = default; + + bool operator==(const ServiceInfo& other) const; diff --git a/chromium.spec b/chromium.spec index 87d6b6c..5491e4c 100644 --- a/chromium.spec +++ b/chromium.spec @@ -300,7 +300,7 @@ Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch # Use lstdc++ on EPEL7 only Patch101: chromium-75.0.3770.100-epel7-stdc++.patch # el7 only patch -Patch102: chromium-76.0.3809.100-el7-noexcept.patch +Patch102: chromium-77.0.3865.75-el7-noexcept.patch # In file included from ../linux/directory.c:21: # In file included from ../../../../native_client/src/nonsfi/linux/abi_conversion.h:20: From c510174e57208c85a6fe9add725046fa4233abf4 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 18 Sep 2019 08:05:03 +0200 Subject: [PATCH 0544/1449] Forget to generate diff for one affected el7-noexcept file --- chromium-77.0.3865.75-el7-noexcept.patch | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/chromium-77.0.3865.75-el7-noexcept.patch b/chromium-77.0.3865.75-el7-noexcept.patch index 59b6fa9..366c139 100644 --- a/chromium-77.0.3865.75-el7-noexcept.patch +++ b/chromium-77.0.3865.75-el7-noexcept.patch @@ -58,6 +58,18 @@ diff -up chromium-77.0.3865.75/components/history/core/browser/history_types.h.e ~QueryURLResult(); // Indicates whether the call to HistoryBackend::QueryURL was successfull +diff -up chromium-77.0.3865.75/components/history/core/browser/url_row.cc.el7-noexcept chromium-77.0.3865.75/components/history/core/browser/url_row.cc +--- chromium-77.0.3865.75/components/history/core/browser/url_row.cc.el7-noexcept 2019-09-18 08:03:25.458138423 +0200 ++++ chromium-77.0.3865.75/components/history/core/browser/url_row.cc 2019-09-18 08:03:34.363234155 +0200 +@@ -26,7 +26,7 @@ URLRow::~URLRow() { + } + + URLRow& URLRow::operator=(const URLRow& other) = default; +-URLRow& URLRow::operator=(URLRow&& other) noexcept = default; ++URLRow& URLRow::operator=(URLRow&& other) = default; + + void URLRow::Swap(URLRow* other) { + std::swap(id_, other->id_); diff -up chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc.el7-noexcept chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc --- chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc.el7-noexcept 2019-09-17 22:00:18.670108528 +0200 +++ chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc 2019-09-17 22:00:32.518272148 +0200 From 06cf3b0691efe622951e72292af48063622b40c7 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Thu, 19 Sep 2019 07:58:49 +0200 Subject: [PATCH 0545/1449] Update to 77.0.3865.90 --- chromium.spec | 7 +++++-- sources | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/chromium.spec b/chromium.spec index 5491e4c..7a0d711 100644 --- a/chromium.spec +++ b/chromium.spec @@ -182,8 +182,8 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3865.75 -Release: 2%{?dist} +Version: %{majorversion}.0.3865.90 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1902,6 +1902,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Thu Sep 19 2019 Tomas Popela - 77.0.3865.90-1 +- Update to 77.0.3865.90 + * Mon Sep 16 2019 Tomas Popela - 77.0.3865.75-2 - Update the list of private libraries diff --git a/sources b/sources index b9b0498..13e91e7 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-77.0.3865.75-clean.tar.xz) = ca7a71586a60abeacb70b9d08ba9a28455d875bfa5232070fdff079e52395924b80f05d7627e3a5d5c7a3df606a39a31e05634683a052c9efb634ed536afc092 +SHA512 (chromium-77.0.3865.90-clean.tar.xz) = 696c5b01756fb720645512fc997f4c378001a01f74bb61fe2b27722b7a3c6bbef782af82ec5678e8fe7ff76285164a331b3a99eff9c5f605ff477b3795c968c4 From 10a2ce3a34eeaa2c0a4286cd682bd448e0f0c727 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 18 Sep 2019 06:35:01 +0200 Subject: [PATCH 0546/1449] Update the el7 noexcept patch and fix the el7 build --- chromium-76.0.3809.100-el7-noexcept.patch | 129 ------------------ chromium-77.0.3865.75-el7-noexcept.patch | 153 ++++++++++++++++++++++ chromium.spec | 2 +- 3 files changed, 154 insertions(+), 130 deletions(-) delete mode 100644 chromium-76.0.3809.100-el7-noexcept.patch create mode 100644 chromium-77.0.3865.75-el7-noexcept.patch diff --git a/chromium-76.0.3809.100-el7-noexcept.patch b/chromium-76.0.3809.100-el7-noexcept.patch deleted file mode 100644 index 407f8de..0000000 --- a/chromium-76.0.3809.100-el7-noexcept.patch +++ /dev/null @@ -1,129 +0,0 @@ -diff -up chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noexcept chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc ---- chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-08-23 13:41:04.842597850 +0200 -+++ chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc 2019-08-23 13:41:04.842597850 +0200 -@@ -19,12 +19,12 @@ MediaSink::MediaSink(const MediaSink::Id - provider_id_(provider_id) {} - - MediaSink::MediaSink(const MediaSink& other) = default; --MediaSink::MediaSink(MediaSink&& other) noexcept = default; -+MediaSink::MediaSink(MediaSink&& other) = default; - MediaSink::MediaSink() = default; - MediaSink::~MediaSink() = default; - - MediaSink& MediaSink::operator=(const MediaSink& other) = default; --MediaSink& MediaSink::operator=(MediaSink&& other) noexcept = default; -+MediaSink& MediaSink::operator=(MediaSink&& other) = default; - - bool MediaSink::IsMaybeCloudSink() const { - switch (icon_type_) { -diff -up chromium-76.0.3809.100/components/history/core/browser/history_types.cc.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/history_types.cc ---- chromium-76.0.3809.100/components/history/core/browser/history_types.cc.el7-noexcept 2019-08-23 13:45:57.673815531 +0200 -+++ chromium-76.0.3809.100/components/history/core/browser/history_types.cc 2019-08-26 10:13:00.815409764 +0200 -@@ -42,7 +42,7 @@ QueryResults::QueryResults(QueryResults& - Swap(&other); - } - --QueryResults& QueryResults::operator=(QueryResults&& other) noexcept { -+QueryResults& QueryResults::operator=(QueryResults&& other) { - Swap(&other); - return *this; - } -@@ -186,7 +186,7 @@ QueryURLResult::QueryURLResult(QueryURLR - - QueryURLResult& QueryURLResult::operator=(const QueryURLResult&) = default; - --QueryURLResult& QueryURLResult::operator=(QueryURLResult&&) noexcept = default; -+QueryURLResult& QueryURLResult::operator=(QueryURLResult&&) = default; - - // MostVisitedURL -------------------------------------------------------------- - -diff -up chromium-76.0.3809.100/components/history/core/browser/history_types.h.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/history_types.h ---- chromium-76.0.3809.100/components/history/core/browser/history_types.h.el7-noexcept 2019-08-23 13:46:11.455966965 +0200 -+++ chromium-76.0.3809.100/components/history/core/browser/history_types.h 2019-08-26 10:13:49.951881558 +0200 -@@ -143,7 +143,7 @@ class QueryResults { - ~QueryResults(); - - QueryResults(QueryResults&& other) noexcept; -- QueryResults& operator=(QueryResults&& other) noexcept; -+ QueryResults& operator=(QueryResults&& other); - - void set_reached_beginning(bool reached) { reached_beginning_ = reached; } - bool reached_beginning() { return reached_beginning_; } -@@ -278,7 +278,7 @@ struct QueryURLResult { - QueryURLResult(const QueryURLResult&); - QueryURLResult(QueryURLResult&&) noexcept; - QueryURLResult& operator=(const QueryURLResult&); -- QueryURLResult& operator=(QueryURLResult&&) noexcept; -+ QueryURLResult& operator=(QueryURLResult&&); - ~QueryURLResult(); - - // Indicates whether the call to HistoryBackend::QueryURL was successfull -diff -up chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept chromium-76.0.3809.100/components/policy/core/common/policy_map.cc ---- chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept 2019-08-23 13:40:42.633353810 +0200 -+++ chromium-76.0.3809.100/components/policy/core/common/policy_map.cc 2019-08-23 13:40:42.576353183 +0200 -@@ -52,7 +52,7 @@ PolicyMap::Entry::Entry( - PolicyMap::Entry::~Entry() = default; - - PolicyMap::Entry::Entry(Entry&&) noexcept = default; --PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) noexcept = default; -+PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) = default; - - PolicyMap::Entry PolicyMap::Entry::DeepCopy() const { - Entry copy; -diff -up chromium-76.0.3809.100/components/signin/core/browser/account_info.cc.el7-noexcept chromium-76.0.3809.100/components/signin/core/browser/account_info.cc ---- chromium-76.0.3809.100/components/signin/core/browser/account_info.cc.el7-noexcept 2019-08-23 13:40:44.224371292 +0200 -+++ chromium-76.0.3809.100/components/signin/core/browser/account_info.cc 2019-08-23 13:40:44.190370918 +0200 -@@ -52,7 +52,7 @@ CoreAccountInfo::CoreAccountInfo(CoreAcc - CoreAccountInfo& CoreAccountInfo::operator=(const CoreAccountInfo& other) = - default; - --CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) noexcept = -+CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) = - default; - - bool CoreAccountInfo::IsEmpty() const { -@@ -69,7 +69,7 @@ AccountInfo::AccountInfo(AccountInfo&& o - - AccountInfo& AccountInfo::operator=(const AccountInfo& other) = default; - --AccountInfo& AccountInfo::operator=(AccountInfo&& other) noexcept = default; -+AccountInfo& AccountInfo::operator=(AccountInfo&& other) = default; - - bool AccountInfo::IsEmpty() const { - return CoreAccountInfo::IsEmpty() && hosted_domain.empty() && -diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.el7-noexcept chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc ---- chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.el7-noexcept 2019-08-23 13:40:25.468165195 +0200 -+++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc 2019-08-23 13:40:25.481165338 +0200 -@@ -14,7 +14,7 @@ CoreAccountId::~CoreAccountId() = defaul - - CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; - --CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) noexcept = default; -+CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) = default; - - CoreAccountId::CoreAccountId(const char* id) : id(id) {} - -diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.el7-noexcept chromium-76.0.3809.100/google_apis/gaia/core_account_id.h ---- chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.el7-noexcept 2019-08-23 13:40:25.468165195 +0200 -+++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.h 2019-08-23 13:40:25.481165338 +0200 -@@ -19,7 +19,7 @@ struct CoreAccountId { - ~CoreAccountId(); - - CoreAccountId& operator=(const CoreAccountId&); -- CoreAccountId& operator=(CoreAccountId&&) noexcept; -+ CoreAccountId& operator=(CoreAccountId&&); - - // Those implicit constructor and conversion operator allow to - // progressively migrate the code to use this struct. Removing -diff -up chromium-76.0.3809.100/gpu/config/gpu_info.cc.el7-noexcept chromium-76.0.3809.100/gpu/config/gpu_info.cc ---- chromium-76.0.3809.100/gpu/config/gpu_info.cc.el7-noexcept 2019-08-09 16:48:01.000000000 +0200 -+++ chromium-76.0.3809.100/gpu/config/gpu_info.cc 2019-08-23 13:40:25.482165349 +0200 -@@ -166,7 +166,7 @@ GPUInfo::GPUDevice& GPUInfo::GPUDevice:: - const GPUInfo::GPUDevice& other) = default; - - GPUInfo::GPUDevice& GPUInfo::GPUDevice::operator=( -- GPUInfo::GPUDevice&& other) noexcept = default; -+ GPUInfo::GPUDevice&& other) = default; - - GPUInfo::GPUInfo() - : optimus(false), diff --git a/chromium-77.0.3865.75-el7-noexcept.patch b/chromium-77.0.3865.75-el7-noexcept.patch new file mode 100644 index 0000000..59b6fa9 --- /dev/null +++ b/chromium-77.0.3865.75-el7-noexcept.patch @@ -0,0 +1,153 @@ +diff -up chromium-77.0.3865.75/chrome/common/media_router/media_sink.cc.el7-noexcept chromium-77.0.3865.75/chrome/common/media_router/media_sink.cc +--- chromium-77.0.3865.75/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-09-17 18:42:37.137393137 +0200 ++++ chromium-77.0.3865.75/chrome/common/media_router/media_sink.cc 2019-09-17 18:42:37.145393201 +0200 +@@ -19,12 +19,12 @@ MediaSink::MediaSink(const MediaSink::Id + provider_id_(provider_id) {} + + MediaSink::MediaSink(const MediaSink& other) = default; +-MediaSink::MediaSink(MediaSink&& other) noexcept = default; ++MediaSink::MediaSink(MediaSink&& other) = default; + MediaSink::MediaSink() = default; + MediaSink::~MediaSink() = default; + + MediaSink& MediaSink::operator=(const MediaSink& other) = default; +-MediaSink& MediaSink::operator=(MediaSink&& other) noexcept = default; ++MediaSink& MediaSink::operator=(MediaSink&& other) = default; + + bool MediaSink::IsMaybeCloudSink() const { + switch (icon_type_) { +diff -up chromium-77.0.3865.75/components/history/core/browser/history_types.cc.el7-noexcept chromium-77.0.3865.75/components/history/core/browser/history_types.cc +--- chromium-77.0.3865.75/components/history/core/browser/history_types.cc.el7-noexcept 2019-09-17 18:42:09.417172829 +0200 ++++ chromium-77.0.3865.75/components/history/core/browser/history_types.cc 2019-09-17 18:42:09.385172574 +0200 +@@ -42,7 +42,7 @@ QueryResults::QueryResults(QueryResults& + Swap(&other); + } + +-QueryResults& QueryResults::operator=(QueryResults&& other) noexcept { ++QueryResults& QueryResults::operator=(QueryResults&& other) { + Swap(&other); + return *this; + } +@@ -186,7 +186,7 @@ QueryURLResult::QueryURLResult(QueryURLR + + QueryURLResult& QueryURLResult::operator=(const QueryURLResult&) = default; + +-QueryURLResult& QueryURLResult::operator=(QueryURLResult&&) noexcept = default; ++QueryURLResult& QueryURLResult::operator=(QueryURLResult&&) = default; + + // MostVisitedURL -------------------------------------------------------------- + +diff -up chromium-77.0.3865.75/components/history/core/browser/history_types.h.el7-noexcept chromium-77.0.3865.75/components/history/core/browser/history_types.h +--- chromium-77.0.3865.75/components/history/core/browser/history_types.h.el7-noexcept 2019-09-17 18:42:09.437172988 +0200 ++++ chromium-77.0.3865.75/components/history/core/browser/history_types.h 2019-09-17 18:42:09.365172415 +0200 +@@ -143,7 +143,7 @@ class QueryResults { + ~QueryResults(); + + QueryResults(QueryResults&& other) noexcept; +- QueryResults& operator=(QueryResults&& other) noexcept; ++ QueryResults& operator=(QueryResults&& other); + + void set_reached_beginning(bool reached) { reached_beginning_ = reached; } + bool reached_beginning() { return reached_beginning_; } +@@ -278,7 +278,7 @@ struct QueryURLResult { + QueryURLResult(const QueryURLResult&); + QueryURLResult(QueryURLResult&&) noexcept; + QueryURLResult& operator=(const QueryURLResult&); +- QueryURLResult& operator=(QueryURLResult&&) noexcept; ++ QueryURLResult& operator=(QueryURLResult&&); + ~QueryURLResult(); + + // Indicates whether the call to HistoryBackend::QueryURL was successfull +diff -up chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc.el7-noexcept chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc +--- chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc.el7-noexcept 2019-09-17 22:00:18.670108528 +0200 ++++ chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc 2019-09-17 22:00:32.518272148 +0200 +@@ -60,7 +60,7 @@ SuggestionAnswer::TextField::TextField(T + SuggestionAnswer::TextField& SuggestionAnswer::TextField::operator=( + const TextField&) = default; + SuggestionAnswer::TextField& SuggestionAnswer::TextField::operator=( +- TextField&&) noexcept = default; ++ TextField&&) = default; + + // static + bool SuggestionAnswer::TextField::ParseTextField(const base::Value& field_json, +diff -up chromium-77.0.3865.75/components/policy/core/common/policy_map.cc.el7-noexcept chromium-77.0.3865.75/components/policy/core/common/policy_map.cc +--- chromium-77.0.3865.75/components/policy/core/common/policy_map.cc.el7-noexcept 2019-09-17 18:42:14.622214197 +0200 ++++ chromium-77.0.3865.75/components/policy/core/common/policy_map.cc 2019-09-17 18:42:14.556213673 +0200 +@@ -52,7 +52,7 @@ PolicyMap::Entry::Entry( + PolicyMap::Entry::~Entry() = default; + + PolicyMap::Entry::Entry(Entry&&) noexcept = default; +-PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) noexcept = default; ++PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) = default; + + PolicyMap::Entry PolicyMap::Entry::DeepCopy() const { + Entry copy; +diff -up chromium-77.0.3865.75/components/signin/public/identity_manager/account_info.cc.el7-noexcept chromium-77.0.3865.75/components/signin/public/identity_manager/account_info.cc +--- chromium-77.0.3865.75/components/signin/public/identity_manager/account_info.cc.el7-noexcept 2019-09-17 21:06:27.037828110 +0200 ++++ chromium-77.0.3865.75/components/signin/public/identity_manager/account_info.cc 2019-09-17 21:07:20.726472932 +0200 +@@ -52,7 +52,7 @@ CoreAccountInfo::CoreAccountInfo(CoreAcc + CoreAccountInfo& CoreAccountInfo::operator=(const CoreAccountInfo& other) = + default; + +-CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) noexcept = ++CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) = + default; + + bool CoreAccountInfo::IsEmpty() const { +@@ -69,7 +69,7 @@ AccountInfo::AccountInfo(AccountInfo&& o + + AccountInfo& AccountInfo::operator=(const AccountInfo& other) = default; + +-AccountInfo& AccountInfo::operator=(AccountInfo&& other) noexcept = default; ++AccountInfo& AccountInfo::operator=(AccountInfo&& other) = default; + + bool AccountInfo::IsEmpty() const { + return CoreAccountInfo::IsEmpty() && hosted_domain.empty() && +diff -up chromium-77.0.3865.75/google_apis/gaia/core_account_id.cc.el7-noexcept chromium-77.0.3865.75/google_apis/gaia/core_account_id.cc +--- chromium-77.0.3865.75/google_apis/gaia/core_account_id.cc.el7-noexcept 2019-09-17 18:43:12.969677930 +0200 ++++ chromium-77.0.3865.75/google_apis/gaia/core_account_id.cc 2019-09-17 18:43:12.989678089 +0200 +@@ -14,7 +14,7 @@ CoreAccountId::~CoreAccountId() = defaul + + CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; + +-CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) noexcept = default; ++CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) = default; + + CoreAccountId::CoreAccountId(const char* id) : id(id) {} + +diff -up chromium-77.0.3865.75/google_apis/gaia/core_account_id.h.el7-noexcept chromium-77.0.3865.75/google_apis/gaia/core_account_id.h +--- chromium-77.0.3865.75/google_apis/gaia/core_account_id.h.el7-noexcept 2019-09-17 18:43:12.978678001 +0200 ++++ chromium-77.0.3865.75/google_apis/gaia/core_account_id.h 2019-09-17 18:43:12.983678041 +0200 +@@ -20,7 +20,7 @@ struct CoreAccountId { + ~CoreAccountId(); + + CoreAccountId& operator=(const CoreAccountId&); +- CoreAccountId& operator=(CoreAccountId&&) noexcept; ++ CoreAccountId& operator=(CoreAccountId&&); + + // Those implicit constructor and conversion operator allow to + // progressively migrate the code to use this struct. Removing +diff -up chromium-77.0.3865.75/gpu/config/gpu_info.cc.el7-noexcept chromium-77.0.3865.75/gpu/config/gpu_info.cc +--- chromium-77.0.3865.75/gpu/config/gpu_info.cc.el7-noexcept 2019-09-17 18:42:25.049297073 +0200 ++++ chromium-77.0.3865.75/gpu/config/gpu_info.cc 2019-09-17 18:42:25.049297073 +0200 +@@ -170,7 +170,7 @@ GPUInfo::GPUDevice& GPUInfo::GPUDevice:: + const GPUInfo::GPUDevice& other) = default; + + GPUInfo::GPUDevice& GPUInfo::GPUDevice::operator=( +- GPUInfo::GPUDevice&& other) noexcept = default; ++ GPUInfo::GPUDevice&& other) = default; + + GPUInfo::GPUInfo() + : optimus(false), +diff -up chromium-77.0.3865.75/third_party/openscreen/src/osp/public/service_info.h.el7-noexcept chromium-77.0.3865.75/third_party/openscreen/src/osp/public/service_info.h +--- chromium-77.0.3865.75/third_party/openscreen/src/osp/public/service_info.h.el7-noexcept 2019-09-17 21:46:46.378655525 +0200 ++++ chromium-77.0.3865.75/third_party/openscreen/src/osp/public/service_info.h 2019-09-17 21:47:16.897035418 +0200 +@@ -21,7 +21,7 @@ struct ServiceInfo { + ServiceInfo(ServiceInfo&&) MAYBE_NOEXCEPT = default; + ServiceInfo(const ServiceInfo&) MAYBE_NOEXCEPT = default; + +- ServiceInfo& operator=(ServiceInfo&&) MAYBE_NOEXCEPT = default; ++ ServiceInfo& operator=(ServiceInfo&&) = default; + ServiceInfo& operator=(const ServiceInfo&) MAYBE_NOEXCEPT = default; + + bool operator==(const ServiceInfo& other) const; diff --git a/chromium.spec b/chromium.spec index 38911e2..2b39cea 100644 --- a/chromium.spec +++ b/chromium.spec @@ -296,7 +296,7 @@ Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch # Use lstdc++ on EPEL7 only Patch101: chromium-75.0.3770.100-epel7-stdc++.patch # el7 only patch -Patch102: chromium-76.0.3809.100-el7-noexcept.patch +Patch102: chromium-77.0.3865.75-el7-noexcept.patch # In file included from ../linux/directory.c:21: # In file included from ../../../../native_client/src/nonsfi/linux/abi_conversion.h:20: From c8786bde9b73d933dab3ea7f6c581461882d9c45 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 18 Sep 2019 08:05:03 +0200 Subject: [PATCH 0547/1449] Forget to generate diff for one affected el7-noexcept file --- chromium-77.0.3865.75-el7-noexcept.patch | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/chromium-77.0.3865.75-el7-noexcept.patch b/chromium-77.0.3865.75-el7-noexcept.patch index 59b6fa9..366c139 100644 --- a/chromium-77.0.3865.75-el7-noexcept.patch +++ b/chromium-77.0.3865.75-el7-noexcept.patch @@ -58,6 +58,18 @@ diff -up chromium-77.0.3865.75/components/history/core/browser/history_types.h.e ~QueryURLResult(); // Indicates whether the call to HistoryBackend::QueryURL was successfull +diff -up chromium-77.0.3865.75/components/history/core/browser/url_row.cc.el7-noexcept chromium-77.0.3865.75/components/history/core/browser/url_row.cc +--- chromium-77.0.3865.75/components/history/core/browser/url_row.cc.el7-noexcept 2019-09-18 08:03:25.458138423 +0200 ++++ chromium-77.0.3865.75/components/history/core/browser/url_row.cc 2019-09-18 08:03:34.363234155 +0200 +@@ -26,7 +26,7 @@ URLRow::~URLRow() { + } + + URLRow& URLRow::operator=(const URLRow& other) = default; +-URLRow& URLRow::operator=(URLRow&& other) noexcept = default; ++URLRow& URLRow::operator=(URLRow&& other) = default; + + void URLRow::Swap(URLRow* other) { + std::swap(id_, other->id_); diff -up chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc.el7-noexcept chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc --- chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc.el7-noexcept 2019-09-17 22:00:18.670108528 +0200 +++ chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc 2019-09-17 22:00:32.518272148 +0200 From 2a431ec174c08be608abec360a4fb191aa9464e4 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Thu, 19 Sep 2019 07:58:49 +0200 Subject: [PATCH 0548/1449] Update to 77.0.3865.90 --- chromium.spec | 7 +++++-- sources | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/chromium.spec b/chromium.spec index 2b39cea..6b2691a 100644 --- a/chromium.spec +++ b/chromium.spec @@ -178,8 +178,8 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3865.75 -Release: 2%{?dist} +Version: %{majorversion}.0.3865.90 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1891,6 +1891,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Thu Sep 19 2019 Tomas Popela - 77.0.3865.90-1 +- Update to 77.0.3865.90 + * Mon Sep 16 2019 Tomas Popela - 77.0.3865.75-2 - Update the list of private libraries diff --git a/sources b/sources index b9b0498..13e91e7 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-77.0.3865.75-clean.tar.xz) = ca7a71586a60abeacb70b9d08ba9a28455d875bfa5232070fdff079e52395924b80f05d7627e3a5d5c7a3df606a39a31e05634683a052c9efb634ed536afc092 +SHA512 (chromium-77.0.3865.90-clean.tar.xz) = 696c5b01756fb720645512fc997f4c378001a01f74bb61fe2b27722b7a3c6bbef782af82ec5678e8fe7ff76285164a331b3a99eff9c5f605ff477b3795c968c4 From 65bf37589cce82019ca9f09951e2dcc54da36b6a Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 18 Sep 2019 06:35:01 +0200 Subject: [PATCH 0549/1449] Update the el7 noexcept patch and fix the el7 build --- chromium-76.0.3809.100-el7-noexcept.patch | 129 ------------------ chromium-77.0.3865.75-el7-noexcept.patch | 153 ++++++++++++++++++++++ chromium.spec | 2 +- 3 files changed, 154 insertions(+), 130 deletions(-) delete mode 100644 chromium-76.0.3809.100-el7-noexcept.patch create mode 100644 chromium-77.0.3865.75-el7-noexcept.patch diff --git a/chromium-76.0.3809.100-el7-noexcept.patch b/chromium-76.0.3809.100-el7-noexcept.patch deleted file mode 100644 index 407f8de..0000000 --- a/chromium-76.0.3809.100-el7-noexcept.patch +++ /dev/null @@ -1,129 +0,0 @@ -diff -up chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noexcept chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc ---- chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-08-23 13:41:04.842597850 +0200 -+++ chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc 2019-08-23 13:41:04.842597850 +0200 -@@ -19,12 +19,12 @@ MediaSink::MediaSink(const MediaSink::Id - provider_id_(provider_id) {} - - MediaSink::MediaSink(const MediaSink& other) = default; --MediaSink::MediaSink(MediaSink&& other) noexcept = default; -+MediaSink::MediaSink(MediaSink&& other) = default; - MediaSink::MediaSink() = default; - MediaSink::~MediaSink() = default; - - MediaSink& MediaSink::operator=(const MediaSink& other) = default; --MediaSink& MediaSink::operator=(MediaSink&& other) noexcept = default; -+MediaSink& MediaSink::operator=(MediaSink&& other) = default; - - bool MediaSink::IsMaybeCloudSink() const { - switch (icon_type_) { -diff -up chromium-76.0.3809.100/components/history/core/browser/history_types.cc.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/history_types.cc ---- chromium-76.0.3809.100/components/history/core/browser/history_types.cc.el7-noexcept 2019-08-23 13:45:57.673815531 +0200 -+++ chromium-76.0.3809.100/components/history/core/browser/history_types.cc 2019-08-26 10:13:00.815409764 +0200 -@@ -42,7 +42,7 @@ QueryResults::QueryResults(QueryResults& - Swap(&other); - } - --QueryResults& QueryResults::operator=(QueryResults&& other) noexcept { -+QueryResults& QueryResults::operator=(QueryResults&& other) { - Swap(&other); - return *this; - } -@@ -186,7 +186,7 @@ QueryURLResult::QueryURLResult(QueryURLR - - QueryURLResult& QueryURLResult::operator=(const QueryURLResult&) = default; - --QueryURLResult& QueryURLResult::operator=(QueryURLResult&&) noexcept = default; -+QueryURLResult& QueryURLResult::operator=(QueryURLResult&&) = default; - - // MostVisitedURL -------------------------------------------------------------- - -diff -up chromium-76.0.3809.100/components/history/core/browser/history_types.h.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/history_types.h ---- chromium-76.0.3809.100/components/history/core/browser/history_types.h.el7-noexcept 2019-08-23 13:46:11.455966965 +0200 -+++ chromium-76.0.3809.100/components/history/core/browser/history_types.h 2019-08-26 10:13:49.951881558 +0200 -@@ -143,7 +143,7 @@ class QueryResults { - ~QueryResults(); - - QueryResults(QueryResults&& other) noexcept; -- QueryResults& operator=(QueryResults&& other) noexcept; -+ QueryResults& operator=(QueryResults&& other); - - void set_reached_beginning(bool reached) { reached_beginning_ = reached; } - bool reached_beginning() { return reached_beginning_; } -@@ -278,7 +278,7 @@ struct QueryURLResult { - QueryURLResult(const QueryURLResult&); - QueryURLResult(QueryURLResult&&) noexcept; - QueryURLResult& operator=(const QueryURLResult&); -- QueryURLResult& operator=(QueryURLResult&&) noexcept; -+ QueryURLResult& operator=(QueryURLResult&&); - ~QueryURLResult(); - - // Indicates whether the call to HistoryBackend::QueryURL was successfull -diff -up chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept chromium-76.0.3809.100/components/policy/core/common/policy_map.cc ---- chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept 2019-08-23 13:40:42.633353810 +0200 -+++ chromium-76.0.3809.100/components/policy/core/common/policy_map.cc 2019-08-23 13:40:42.576353183 +0200 -@@ -52,7 +52,7 @@ PolicyMap::Entry::Entry( - PolicyMap::Entry::~Entry() = default; - - PolicyMap::Entry::Entry(Entry&&) noexcept = default; --PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) noexcept = default; -+PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) = default; - - PolicyMap::Entry PolicyMap::Entry::DeepCopy() const { - Entry copy; -diff -up chromium-76.0.3809.100/components/signin/core/browser/account_info.cc.el7-noexcept chromium-76.0.3809.100/components/signin/core/browser/account_info.cc ---- chromium-76.0.3809.100/components/signin/core/browser/account_info.cc.el7-noexcept 2019-08-23 13:40:44.224371292 +0200 -+++ chromium-76.0.3809.100/components/signin/core/browser/account_info.cc 2019-08-23 13:40:44.190370918 +0200 -@@ -52,7 +52,7 @@ CoreAccountInfo::CoreAccountInfo(CoreAcc - CoreAccountInfo& CoreAccountInfo::operator=(const CoreAccountInfo& other) = - default; - --CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) noexcept = -+CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) = - default; - - bool CoreAccountInfo::IsEmpty() const { -@@ -69,7 +69,7 @@ AccountInfo::AccountInfo(AccountInfo&& o - - AccountInfo& AccountInfo::operator=(const AccountInfo& other) = default; - --AccountInfo& AccountInfo::operator=(AccountInfo&& other) noexcept = default; -+AccountInfo& AccountInfo::operator=(AccountInfo&& other) = default; - - bool AccountInfo::IsEmpty() const { - return CoreAccountInfo::IsEmpty() && hosted_domain.empty() && -diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.el7-noexcept chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc ---- chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.el7-noexcept 2019-08-23 13:40:25.468165195 +0200 -+++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc 2019-08-23 13:40:25.481165338 +0200 -@@ -14,7 +14,7 @@ CoreAccountId::~CoreAccountId() = defaul - - CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; - --CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) noexcept = default; -+CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) = default; - - CoreAccountId::CoreAccountId(const char* id) : id(id) {} - -diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.el7-noexcept chromium-76.0.3809.100/google_apis/gaia/core_account_id.h ---- chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.el7-noexcept 2019-08-23 13:40:25.468165195 +0200 -+++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.h 2019-08-23 13:40:25.481165338 +0200 -@@ -19,7 +19,7 @@ struct CoreAccountId { - ~CoreAccountId(); - - CoreAccountId& operator=(const CoreAccountId&); -- CoreAccountId& operator=(CoreAccountId&&) noexcept; -+ CoreAccountId& operator=(CoreAccountId&&); - - // Those implicit constructor and conversion operator allow to - // progressively migrate the code to use this struct. Removing -diff -up chromium-76.0.3809.100/gpu/config/gpu_info.cc.el7-noexcept chromium-76.0.3809.100/gpu/config/gpu_info.cc ---- chromium-76.0.3809.100/gpu/config/gpu_info.cc.el7-noexcept 2019-08-09 16:48:01.000000000 +0200 -+++ chromium-76.0.3809.100/gpu/config/gpu_info.cc 2019-08-23 13:40:25.482165349 +0200 -@@ -166,7 +166,7 @@ GPUInfo::GPUDevice& GPUInfo::GPUDevice:: - const GPUInfo::GPUDevice& other) = default; - - GPUInfo::GPUDevice& GPUInfo::GPUDevice::operator=( -- GPUInfo::GPUDevice&& other) noexcept = default; -+ GPUInfo::GPUDevice&& other) = default; - - GPUInfo::GPUInfo() - : optimus(false), diff --git a/chromium-77.0.3865.75-el7-noexcept.patch b/chromium-77.0.3865.75-el7-noexcept.patch new file mode 100644 index 0000000..59b6fa9 --- /dev/null +++ b/chromium-77.0.3865.75-el7-noexcept.patch @@ -0,0 +1,153 @@ +diff -up chromium-77.0.3865.75/chrome/common/media_router/media_sink.cc.el7-noexcept chromium-77.0.3865.75/chrome/common/media_router/media_sink.cc +--- chromium-77.0.3865.75/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-09-17 18:42:37.137393137 +0200 ++++ chromium-77.0.3865.75/chrome/common/media_router/media_sink.cc 2019-09-17 18:42:37.145393201 +0200 +@@ -19,12 +19,12 @@ MediaSink::MediaSink(const MediaSink::Id + provider_id_(provider_id) {} + + MediaSink::MediaSink(const MediaSink& other) = default; +-MediaSink::MediaSink(MediaSink&& other) noexcept = default; ++MediaSink::MediaSink(MediaSink&& other) = default; + MediaSink::MediaSink() = default; + MediaSink::~MediaSink() = default; + + MediaSink& MediaSink::operator=(const MediaSink& other) = default; +-MediaSink& MediaSink::operator=(MediaSink&& other) noexcept = default; ++MediaSink& MediaSink::operator=(MediaSink&& other) = default; + + bool MediaSink::IsMaybeCloudSink() const { + switch (icon_type_) { +diff -up chromium-77.0.3865.75/components/history/core/browser/history_types.cc.el7-noexcept chromium-77.0.3865.75/components/history/core/browser/history_types.cc +--- chromium-77.0.3865.75/components/history/core/browser/history_types.cc.el7-noexcept 2019-09-17 18:42:09.417172829 +0200 ++++ chromium-77.0.3865.75/components/history/core/browser/history_types.cc 2019-09-17 18:42:09.385172574 +0200 +@@ -42,7 +42,7 @@ QueryResults::QueryResults(QueryResults& + Swap(&other); + } + +-QueryResults& QueryResults::operator=(QueryResults&& other) noexcept { ++QueryResults& QueryResults::operator=(QueryResults&& other) { + Swap(&other); + return *this; + } +@@ -186,7 +186,7 @@ QueryURLResult::QueryURLResult(QueryURLR + + QueryURLResult& QueryURLResult::operator=(const QueryURLResult&) = default; + +-QueryURLResult& QueryURLResult::operator=(QueryURLResult&&) noexcept = default; ++QueryURLResult& QueryURLResult::operator=(QueryURLResult&&) = default; + + // MostVisitedURL -------------------------------------------------------------- + +diff -up chromium-77.0.3865.75/components/history/core/browser/history_types.h.el7-noexcept chromium-77.0.3865.75/components/history/core/browser/history_types.h +--- chromium-77.0.3865.75/components/history/core/browser/history_types.h.el7-noexcept 2019-09-17 18:42:09.437172988 +0200 ++++ chromium-77.0.3865.75/components/history/core/browser/history_types.h 2019-09-17 18:42:09.365172415 +0200 +@@ -143,7 +143,7 @@ class QueryResults { + ~QueryResults(); + + QueryResults(QueryResults&& other) noexcept; +- QueryResults& operator=(QueryResults&& other) noexcept; ++ QueryResults& operator=(QueryResults&& other); + + void set_reached_beginning(bool reached) { reached_beginning_ = reached; } + bool reached_beginning() { return reached_beginning_; } +@@ -278,7 +278,7 @@ struct QueryURLResult { + QueryURLResult(const QueryURLResult&); + QueryURLResult(QueryURLResult&&) noexcept; + QueryURLResult& operator=(const QueryURLResult&); +- QueryURLResult& operator=(QueryURLResult&&) noexcept; ++ QueryURLResult& operator=(QueryURLResult&&); + ~QueryURLResult(); + + // Indicates whether the call to HistoryBackend::QueryURL was successfull +diff -up chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc.el7-noexcept chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc +--- chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc.el7-noexcept 2019-09-17 22:00:18.670108528 +0200 ++++ chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc 2019-09-17 22:00:32.518272148 +0200 +@@ -60,7 +60,7 @@ SuggestionAnswer::TextField::TextField(T + SuggestionAnswer::TextField& SuggestionAnswer::TextField::operator=( + const TextField&) = default; + SuggestionAnswer::TextField& SuggestionAnswer::TextField::operator=( +- TextField&&) noexcept = default; ++ TextField&&) = default; + + // static + bool SuggestionAnswer::TextField::ParseTextField(const base::Value& field_json, +diff -up chromium-77.0.3865.75/components/policy/core/common/policy_map.cc.el7-noexcept chromium-77.0.3865.75/components/policy/core/common/policy_map.cc +--- chromium-77.0.3865.75/components/policy/core/common/policy_map.cc.el7-noexcept 2019-09-17 18:42:14.622214197 +0200 ++++ chromium-77.0.3865.75/components/policy/core/common/policy_map.cc 2019-09-17 18:42:14.556213673 +0200 +@@ -52,7 +52,7 @@ PolicyMap::Entry::Entry( + PolicyMap::Entry::~Entry() = default; + + PolicyMap::Entry::Entry(Entry&&) noexcept = default; +-PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) noexcept = default; ++PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) = default; + + PolicyMap::Entry PolicyMap::Entry::DeepCopy() const { + Entry copy; +diff -up chromium-77.0.3865.75/components/signin/public/identity_manager/account_info.cc.el7-noexcept chromium-77.0.3865.75/components/signin/public/identity_manager/account_info.cc +--- chromium-77.0.3865.75/components/signin/public/identity_manager/account_info.cc.el7-noexcept 2019-09-17 21:06:27.037828110 +0200 ++++ chromium-77.0.3865.75/components/signin/public/identity_manager/account_info.cc 2019-09-17 21:07:20.726472932 +0200 +@@ -52,7 +52,7 @@ CoreAccountInfo::CoreAccountInfo(CoreAcc + CoreAccountInfo& CoreAccountInfo::operator=(const CoreAccountInfo& other) = + default; + +-CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) noexcept = ++CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) = + default; + + bool CoreAccountInfo::IsEmpty() const { +@@ -69,7 +69,7 @@ AccountInfo::AccountInfo(AccountInfo&& o + + AccountInfo& AccountInfo::operator=(const AccountInfo& other) = default; + +-AccountInfo& AccountInfo::operator=(AccountInfo&& other) noexcept = default; ++AccountInfo& AccountInfo::operator=(AccountInfo&& other) = default; + + bool AccountInfo::IsEmpty() const { + return CoreAccountInfo::IsEmpty() && hosted_domain.empty() && +diff -up chromium-77.0.3865.75/google_apis/gaia/core_account_id.cc.el7-noexcept chromium-77.0.3865.75/google_apis/gaia/core_account_id.cc +--- chromium-77.0.3865.75/google_apis/gaia/core_account_id.cc.el7-noexcept 2019-09-17 18:43:12.969677930 +0200 ++++ chromium-77.0.3865.75/google_apis/gaia/core_account_id.cc 2019-09-17 18:43:12.989678089 +0200 +@@ -14,7 +14,7 @@ CoreAccountId::~CoreAccountId() = defaul + + CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; + +-CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) noexcept = default; ++CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) = default; + + CoreAccountId::CoreAccountId(const char* id) : id(id) {} + +diff -up chromium-77.0.3865.75/google_apis/gaia/core_account_id.h.el7-noexcept chromium-77.0.3865.75/google_apis/gaia/core_account_id.h +--- chromium-77.0.3865.75/google_apis/gaia/core_account_id.h.el7-noexcept 2019-09-17 18:43:12.978678001 +0200 ++++ chromium-77.0.3865.75/google_apis/gaia/core_account_id.h 2019-09-17 18:43:12.983678041 +0200 +@@ -20,7 +20,7 @@ struct CoreAccountId { + ~CoreAccountId(); + + CoreAccountId& operator=(const CoreAccountId&); +- CoreAccountId& operator=(CoreAccountId&&) noexcept; ++ CoreAccountId& operator=(CoreAccountId&&); + + // Those implicit constructor and conversion operator allow to + // progressively migrate the code to use this struct. Removing +diff -up chromium-77.0.3865.75/gpu/config/gpu_info.cc.el7-noexcept chromium-77.0.3865.75/gpu/config/gpu_info.cc +--- chromium-77.0.3865.75/gpu/config/gpu_info.cc.el7-noexcept 2019-09-17 18:42:25.049297073 +0200 ++++ chromium-77.0.3865.75/gpu/config/gpu_info.cc 2019-09-17 18:42:25.049297073 +0200 +@@ -170,7 +170,7 @@ GPUInfo::GPUDevice& GPUInfo::GPUDevice:: + const GPUInfo::GPUDevice& other) = default; + + GPUInfo::GPUDevice& GPUInfo::GPUDevice::operator=( +- GPUInfo::GPUDevice&& other) noexcept = default; ++ GPUInfo::GPUDevice&& other) = default; + + GPUInfo::GPUInfo() + : optimus(false), +diff -up chromium-77.0.3865.75/third_party/openscreen/src/osp/public/service_info.h.el7-noexcept chromium-77.0.3865.75/third_party/openscreen/src/osp/public/service_info.h +--- chromium-77.0.3865.75/third_party/openscreen/src/osp/public/service_info.h.el7-noexcept 2019-09-17 21:46:46.378655525 +0200 ++++ chromium-77.0.3865.75/third_party/openscreen/src/osp/public/service_info.h 2019-09-17 21:47:16.897035418 +0200 +@@ -21,7 +21,7 @@ struct ServiceInfo { + ServiceInfo(ServiceInfo&&) MAYBE_NOEXCEPT = default; + ServiceInfo(const ServiceInfo&) MAYBE_NOEXCEPT = default; + +- ServiceInfo& operator=(ServiceInfo&&) MAYBE_NOEXCEPT = default; ++ ServiceInfo& operator=(ServiceInfo&&) = default; + ServiceInfo& operator=(const ServiceInfo&) MAYBE_NOEXCEPT = default; + + bool operator==(const ServiceInfo& other) const; diff --git a/chromium.spec b/chromium.spec index 8df9fa0..1c05a5b 100644 --- a/chromium.spec +++ b/chromium.spec @@ -296,7 +296,7 @@ Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch # Use lstdc++ on EPEL7 only Patch101: chromium-75.0.3770.100-epel7-stdc++.patch # el7 only patch -Patch102: chromium-76.0.3809.100-el7-noexcept.patch +Patch102: chromium-77.0.3865.75-el7-noexcept.patch # In file included from ../linux/directory.c:21: # In file included from ../../../../native_client/src/nonsfi/linux/abi_conversion.h:20: From 8564a8c0249dfd591b07c9414454f817c61af1ab Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 18 Sep 2019 08:05:03 +0200 Subject: [PATCH 0550/1449] Forget to generate diff for one affected el7-noexcept file --- chromium-77.0.3865.75-el7-noexcept.patch | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/chromium-77.0.3865.75-el7-noexcept.patch b/chromium-77.0.3865.75-el7-noexcept.patch index 59b6fa9..366c139 100644 --- a/chromium-77.0.3865.75-el7-noexcept.patch +++ b/chromium-77.0.3865.75-el7-noexcept.patch @@ -58,6 +58,18 @@ diff -up chromium-77.0.3865.75/components/history/core/browser/history_types.h.e ~QueryURLResult(); // Indicates whether the call to HistoryBackend::QueryURL was successfull +diff -up chromium-77.0.3865.75/components/history/core/browser/url_row.cc.el7-noexcept chromium-77.0.3865.75/components/history/core/browser/url_row.cc +--- chromium-77.0.3865.75/components/history/core/browser/url_row.cc.el7-noexcept 2019-09-18 08:03:25.458138423 +0200 ++++ chromium-77.0.3865.75/components/history/core/browser/url_row.cc 2019-09-18 08:03:34.363234155 +0200 +@@ -26,7 +26,7 @@ URLRow::~URLRow() { + } + + URLRow& URLRow::operator=(const URLRow& other) = default; +-URLRow& URLRow::operator=(URLRow&& other) noexcept = default; ++URLRow& URLRow::operator=(URLRow&& other) = default; + + void URLRow::Swap(URLRow* other) { + std::swap(id_, other->id_); diff -up chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc.el7-noexcept chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc --- chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc.el7-noexcept 2019-09-17 22:00:18.670108528 +0200 +++ chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc 2019-09-17 22:00:32.518272148 +0200 From d30cc0e5c57bc0e11e6af60e0d278ab72f83f6eb Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Thu, 19 Sep 2019 07:58:49 +0200 Subject: [PATCH 0551/1449] Update to 77.0.3865.90 --- chromium.spec | 7 +++++-- sources | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/chromium.spec b/chromium.spec index 1c05a5b..883277c 100644 --- a/chromium.spec +++ b/chromium.spec @@ -178,8 +178,8 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3865.75 -Release: 2%{?dist} +Version: %{majorversion}.0.3865.90 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1891,6 +1891,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Thu Sep 19 2019 Tomas Popela - 77.0.3865.90-1 +- Update to 77.0.3865.90 + * Mon Sep 16 2019 Tomas Popela - 77.0.3865.75-2 - Update the list of private libraries diff --git a/sources b/sources index b9b0498..13e91e7 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-77.0.3865.75-clean.tar.xz) = ca7a71586a60abeacb70b9d08ba9a28455d875bfa5232070fdff079e52395924b80f05d7627e3a5d5c7a3df606a39a31e05634683a052c9efb634ed536afc092 +SHA512 (chromium-77.0.3865.90-clean.tar.xz) = 696c5b01756fb720645512fc997f4c378001a01f74bb61fe2b27722b7a3c6bbef782af82ec5678e8fe7ff76285164a331b3a99eff9c5f605ff477b3795c968c4 From 7b637c4471031d1d30a2204758e1e820f8dfebce Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 18 Sep 2019 06:35:01 +0200 Subject: [PATCH 0552/1449] Update the el7 noexcept patch and fix the el7 build --- chromium-76.0.3809.100-el7-noexcept.patch | 129 ------------------ chromium-77.0.3865.75-el7-noexcept.patch | 153 ++++++++++++++++++++++ chromium.spec | 2 +- 3 files changed, 154 insertions(+), 130 deletions(-) delete mode 100644 chromium-76.0.3809.100-el7-noexcept.patch create mode 100644 chromium-77.0.3865.75-el7-noexcept.patch diff --git a/chromium-76.0.3809.100-el7-noexcept.patch b/chromium-76.0.3809.100-el7-noexcept.patch deleted file mode 100644 index 407f8de..0000000 --- a/chromium-76.0.3809.100-el7-noexcept.patch +++ /dev/null @@ -1,129 +0,0 @@ -diff -up chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noexcept chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc ---- chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-08-23 13:41:04.842597850 +0200 -+++ chromium-76.0.3809.100/chrome/common/media_router/media_sink.cc 2019-08-23 13:41:04.842597850 +0200 -@@ -19,12 +19,12 @@ MediaSink::MediaSink(const MediaSink::Id - provider_id_(provider_id) {} - - MediaSink::MediaSink(const MediaSink& other) = default; --MediaSink::MediaSink(MediaSink&& other) noexcept = default; -+MediaSink::MediaSink(MediaSink&& other) = default; - MediaSink::MediaSink() = default; - MediaSink::~MediaSink() = default; - - MediaSink& MediaSink::operator=(const MediaSink& other) = default; --MediaSink& MediaSink::operator=(MediaSink&& other) noexcept = default; -+MediaSink& MediaSink::operator=(MediaSink&& other) = default; - - bool MediaSink::IsMaybeCloudSink() const { - switch (icon_type_) { -diff -up chromium-76.0.3809.100/components/history/core/browser/history_types.cc.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/history_types.cc ---- chromium-76.0.3809.100/components/history/core/browser/history_types.cc.el7-noexcept 2019-08-23 13:45:57.673815531 +0200 -+++ chromium-76.0.3809.100/components/history/core/browser/history_types.cc 2019-08-26 10:13:00.815409764 +0200 -@@ -42,7 +42,7 @@ QueryResults::QueryResults(QueryResults& - Swap(&other); - } - --QueryResults& QueryResults::operator=(QueryResults&& other) noexcept { -+QueryResults& QueryResults::operator=(QueryResults&& other) { - Swap(&other); - return *this; - } -@@ -186,7 +186,7 @@ QueryURLResult::QueryURLResult(QueryURLR - - QueryURLResult& QueryURLResult::operator=(const QueryURLResult&) = default; - --QueryURLResult& QueryURLResult::operator=(QueryURLResult&&) noexcept = default; -+QueryURLResult& QueryURLResult::operator=(QueryURLResult&&) = default; - - // MostVisitedURL -------------------------------------------------------------- - -diff -up chromium-76.0.3809.100/components/history/core/browser/history_types.h.el7-noexcept chromium-76.0.3809.100/components/history/core/browser/history_types.h ---- chromium-76.0.3809.100/components/history/core/browser/history_types.h.el7-noexcept 2019-08-23 13:46:11.455966965 +0200 -+++ chromium-76.0.3809.100/components/history/core/browser/history_types.h 2019-08-26 10:13:49.951881558 +0200 -@@ -143,7 +143,7 @@ class QueryResults { - ~QueryResults(); - - QueryResults(QueryResults&& other) noexcept; -- QueryResults& operator=(QueryResults&& other) noexcept; -+ QueryResults& operator=(QueryResults&& other); - - void set_reached_beginning(bool reached) { reached_beginning_ = reached; } - bool reached_beginning() { return reached_beginning_; } -@@ -278,7 +278,7 @@ struct QueryURLResult { - QueryURLResult(const QueryURLResult&); - QueryURLResult(QueryURLResult&&) noexcept; - QueryURLResult& operator=(const QueryURLResult&); -- QueryURLResult& operator=(QueryURLResult&&) noexcept; -+ QueryURLResult& operator=(QueryURLResult&&); - ~QueryURLResult(); - - // Indicates whether the call to HistoryBackend::QueryURL was successfull -diff -up chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept chromium-76.0.3809.100/components/policy/core/common/policy_map.cc ---- chromium-76.0.3809.100/components/policy/core/common/policy_map.cc.el7-noexcept 2019-08-23 13:40:42.633353810 +0200 -+++ chromium-76.0.3809.100/components/policy/core/common/policy_map.cc 2019-08-23 13:40:42.576353183 +0200 -@@ -52,7 +52,7 @@ PolicyMap::Entry::Entry( - PolicyMap::Entry::~Entry() = default; - - PolicyMap::Entry::Entry(Entry&&) noexcept = default; --PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) noexcept = default; -+PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) = default; - - PolicyMap::Entry PolicyMap::Entry::DeepCopy() const { - Entry copy; -diff -up chromium-76.0.3809.100/components/signin/core/browser/account_info.cc.el7-noexcept chromium-76.0.3809.100/components/signin/core/browser/account_info.cc ---- chromium-76.0.3809.100/components/signin/core/browser/account_info.cc.el7-noexcept 2019-08-23 13:40:44.224371292 +0200 -+++ chromium-76.0.3809.100/components/signin/core/browser/account_info.cc 2019-08-23 13:40:44.190370918 +0200 -@@ -52,7 +52,7 @@ CoreAccountInfo::CoreAccountInfo(CoreAcc - CoreAccountInfo& CoreAccountInfo::operator=(const CoreAccountInfo& other) = - default; - --CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) noexcept = -+CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) = - default; - - bool CoreAccountInfo::IsEmpty() const { -@@ -69,7 +69,7 @@ AccountInfo::AccountInfo(AccountInfo&& o - - AccountInfo& AccountInfo::operator=(const AccountInfo& other) = default; - --AccountInfo& AccountInfo::operator=(AccountInfo&& other) noexcept = default; -+AccountInfo& AccountInfo::operator=(AccountInfo&& other) = default; - - bool AccountInfo::IsEmpty() const { - return CoreAccountInfo::IsEmpty() && hosted_domain.empty() && -diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.el7-noexcept chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc ---- chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc.el7-noexcept 2019-08-23 13:40:25.468165195 +0200 -+++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.cc 2019-08-23 13:40:25.481165338 +0200 -@@ -14,7 +14,7 @@ CoreAccountId::~CoreAccountId() = defaul - - CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; - --CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) noexcept = default; -+CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) = default; - - CoreAccountId::CoreAccountId(const char* id) : id(id) {} - -diff -up chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.el7-noexcept chromium-76.0.3809.100/google_apis/gaia/core_account_id.h ---- chromium-76.0.3809.100/google_apis/gaia/core_account_id.h.el7-noexcept 2019-08-23 13:40:25.468165195 +0200 -+++ chromium-76.0.3809.100/google_apis/gaia/core_account_id.h 2019-08-23 13:40:25.481165338 +0200 -@@ -19,7 +19,7 @@ struct CoreAccountId { - ~CoreAccountId(); - - CoreAccountId& operator=(const CoreAccountId&); -- CoreAccountId& operator=(CoreAccountId&&) noexcept; -+ CoreAccountId& operator=(CoreAccountId&&); - - // Those implicit constructor and conversion operator allow to - // progressively migrate the code to use this struct. Removing -diff -up chromium-76.0.3809.100/gpu/config/gpu_info.cc.el7-noexcept chromium-76.0.3809.100/gpu/config/gpu_info.cc ---- chromium-76.0.3809.100/gpu/config/gpu_info.cc.el7-noexcept 2019-08-09 16:48:01.000000000 +0200 -+++ chromium-76.0.3809.100/gpu/config/gpu_info.cc 2019-08-23 13:40:25.482165349 +0200 -@@ -166,7 +166,7 @@ GPUInfo::GPUDevice& GPUInfo::GPUDevice:: - const GPUInfo::GPUDevice& other) = default; - - GPUInfo::GPUDevice& GPUInfo::GPUDevice::operator=( -- GPUInfo::GPUDevice&& other) noexcept = default; -+ GPUInfo::GPUDevice&& other) = default; - - GPUInfo::GPUInfo() - : optimus(false), diff --git a/chromium-77.0.3865.75-el7-noexcept.patch b/chromium-77.0.3865.75-el7-noexcept.patch new file mode 100644 index 0000000..59b6fa9 --- /dev/null +++ b/chromium-77.0.3865.75-el7-noexcept.patch @@ -0,0 +1,153 @@ +diff -up chromium-77.0.3865.75/chrome/common/media_router/media_sink.cc.el7-noexcept chromium-77.0.3865.75/chrome/common/media_router/media_sink.cc +--- chromium-77.0.3865.75/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-09-17 18:42:37.137393137 +0200 ++++ chromium-77.0.3865.75/chrome/common/media_router/media_sink.cc 2019-09-17 18:42:37.145393201 +0200 +@@ -19,12 +19,12 @@ MediaSink::MediaSink(const MediaSink::Id + provider_id_(provider_id) {} + + MediaSink::MediaSink(const MediaSink& other) = default; +-MediaSink::MediaSink(MediaSink&& other) noexcept = default; ++MediaSink::MediaSink(MediaSink&& other) = default; + MediaSink::MediaSink() = default; + MediaSink::~MediaSink() = default; + + MediaSink& MediaSink::operator=(const MediaSink& other) = default; +-MediaSink& MediaSink::operator=(MediaSink&& other) noexcept = default; ++MediaSink& MediaSink::operator=(MediaSink&& other) = default; + + bool MediaSink::IsMaybeCloudSink() const { + switch (icon_type_) { +diff -up chromium-77.0.3865.75/components/history/core/browser/history_types.cc.el7-noexcept chromium-77.0.3865.75/components/history/core/browser/history_types.cc +--- chromium-77.0.3865.75/components/history/core/browser/history_types.cc.el7-noexcept 2019-09-17 18:42:09.417172829 +0200 ++++ chromium-77.0.3865.75/components/history/core/browser/history_types.cc 2019-09-17 18:42:09.385172574 +0200 +@@ -42,7 +42,7 @@ QueryResults::QueryResults(QueryResults& + Swap(&other); + } + +-QueryResults& QueryResults::operator=(QueryResults&& other) noexcept { ++QueryResults& QueryResults::operator=(QueryResults&& other) { + Swap(&other); + return *this; + } +@@ -186,7 +186,7 @@ QueryURLResult::QueryURLResult(QueryURLR + + QueryURLResult& QueryURLResult::operator=(const QueryURLResult&) = default; + +-QueryURLResult& QueryURLResult::operator=(QueryURLResult&&) noexcept = default; ++QueryURLResult& QueryURLResult::operator=(QueryURLResult&&) = default; + + // MostVisitedURL -------------------------------------------------------------- + +diff -up chromium-77.0.3865.75/components/history/core/browser/history_types.h.el7-noexcept chromium-77.0.3865.75/components/history/core/browser/history_types.h +--- chromium-77.0.3865.75/components/history/core/browser/history_types.h.el7-noexcept 2019-09-17 18:42:09.437172988 +0200 ++++ chromium-77.0.3865.75/components/history/core/browser/history_types.h 2019-09-17 18:42:09.365172415 +0200 +@@ -143,7 +143,7 @@ class QueryResults { + ~QueryResults(); + + QueryResults(QueryResults&& other) noexcept; +- QueryResults& operator=(QueryResults&& other) noexcept; ++ QueryResults& operator=(QueryResults&& other); + + void set_reached_beginning(bool reached) { reached_beginning_ = reached; } + bool reached_beginning() { return reached_beginning_; } +@@ -278,7 +278,7 @@ struct QueryURLResult { + QueryURLResult(const QueryURLResult&); + QueryURLResult(QueryURLResult&&) noexcept; + QueryURLResult& operator=(const QueryURLResult&); +- QueryURLResult& operator=(QueryURLResult&&) noexcept; ++ QueryURLResult& operator=(QueryURLResult&&); + ~QueryURLResult(); + + // Indicates whether the call to HistoryBackend::QueryURL was successfull +diff -up chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc.el7-noexcept chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc +--- chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc.el7-noexcept 2019-09-17 22:00:18.670108528 +0200 ++++ chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc 2019-09-17 22:00:32.518272148 +0200 +@@ -60,7 +60,7 @@ SuggestionAnswer::TextField::TextField(T + SuggestionAnswer::TextField& SuggestionAnswer::TextField::operator=( + const TextField&) = default; + SuggestionAnswer::TextField& SuggestionAnswer::TextField::operator=( +- TextField&&) noexcept = default; ++ TextField&&) = default; + + // static + bool SuggestionAnswer::TextField::ParseTextField(const base::Value& field_json, +diff -up chromium-77.0.3865.75/components/policy/core/common/policy_map.cc.el7-noexcept chromium-77.0.3865.75/components/policy/core/common/policy_map.cc +--- chromium-77.0.3865.75/components/policy/core/common/policy_map.cc.el7-noexcept 2019-09-17 18:42:14.622214197 +0200 ++++ chromium-77.0.3865.75/components/policy/core/common/policy_map.cc 2019-09-17 18:42:14.556213673 +0200 +@@ -52,7 +52,7 @@ PolicyMap::Entry::Entry( + PolicyMap::Entry::~Entry() = default; + + PolicyMap::Entry::Entry(Entry&&) noexcept = default; +-PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) noexcept = default; ++PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) = default; + + PolicyMap::Entry PolicyMap::Entry::DeepCopy() const { + Entry copy; +diff -up chromium-77.0.3865.75/components/signin/public/identity_manager/account_info.cc.el7-noexcept chromium-77.0.3865.75/components/signin/public/identity_manager/account_info.cc +--- chromium-77.0.3865.75/components/signin/public/identity_manager/account_info.cc.el7-noexcept 2019-09-17 21:06:27.037828110 +0200 ++++ chromium-77.0.3865.75/components/signin/public/identity_manager/account_info.cc 2019-09-17 21:07:20.726472932 +0200 +@@ -52,7 +52,7 @@ CoreAccountInfo::CoreAccountInfo(CoreAcc + CoreAccountInfo& CoreAccountInfo::operator=(const CoreAccountInfo& other) = + default; + +-CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) noexcept = ++CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) = + default; + + bool CoreAccountInfo::IsEmpty() const { +@@ -69,7 +69,7 @@ AccountInfo::AccountInfo(AccountInfo&& o + + AccountInfo& AccountInfo::operator=(const AccountInfo& other) = default; + +-AccountInfo& AccountInfo::operator=(AccountInfo&& other) noexcept = default; ++AccountInfo& AccountInfo::operator=(AccountInfo&& other) = default; + + bool AccountInfo::IsEmpty() const { + return CoreAccountInfo::IsEmpty() && hosted_domain.empty() && +diff -up chromium-77.0.3865.75/google_apis/gaia/core_account_id.cc.el7-noexcept chromium-77.0.3865.75/google_apis/gaia/core_account_id.cc +--- chromium-77.0.3865.75/google_apis/gaia/core_account_id.cc.el7-noexcept 2019-09-17 18:43:12.969677930 +0200 ++++ chromium-77.0.3865.75/google_apis/gaia/core_account_id.cc 2019-09-17 18:43:12.989678089 +0200 +@@ -14,7 +14,7 @@ CoreAccountId::~CoreAccountId() = defaul + + CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; + +-CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) noexcept = default; ++CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) = default; + + CoreAccountId::CoreAccountId(const char* id) : id(id) {} + +diff -up chromium-77.0.3865.75/google_apis/gaia/core_account_id.h.el7-noexcept chromium-77.0.3865.75/google_apis/gaia/core_account_id.h +--- chromium-77.0.3865.75/google_apis/gaia/core_account_id.h.el7-noexcept 2019-09-17 18:43:12.978678001 +0200 ++++ chromium-77.0.3865.75/google_apis/gaia/core_account_id.h 2019-09-17 18:43:12.983678041 +0200 +@@ -20,7 +20,7 @@ struct CoreAccountId { + ~CoreAccountId(); + + CoreAccountId& operator=(const CoreAccountId&); +- CoreAccountId& operator=(CoreAccountId&&) noexcept; ++ CoreAccountId& operator=(CoreAccountId&&); + + // Those implicit constructor and conversion operator allow to + // progressively migrate the code to use this struct. Removing +diff -up chromium-77.0.3865.75/gpu/config/gpu_info.cc.el7-noexcept chromium-77.0.3865.75/gpu/config/gpu_info.cc +--- chromium-77.0.3865.75/gpu/config/gpu_info.cc.el7-noexcept 2019-09-17 18:42:25.049297073 +0200 ++++ chromium-77.0.3865.75/gpu/config/gpu_info.cc 2019-09-17 18:42:25.049297073 +0200 +@@ -170,7 +170,7 @@ GPUInfo::GPUDevice& GPUInfo::GPUDevice:: + const GPUInfo::GPUDevice& other) = default; + + GPUInfo::GPUDevice& GPUInfo::GPUDevice::operator=( +- GPUInfo::GPUDevice&& other) noexcept = default; ++ GPUInfo::GPUDevice&& other) = default; + + GPUInfo::GPUInfo() + : optimus(false), +diff -up chromium-77.0.3865.75/third_party/openscreen/src/osp/public/service_info.h.el7-noexcept chromium-77.0.3865.75/third_party/openscreen/src/osp/public/service_info.h +--- chromium-77.0.3865.75/third_party/openscreen/src/osp/public/service_info.h.el7-noexcept 2019-09-17 21:46:46.378655525 +0200 ++++ chromium-77.0.3865.75/third_party/openscreen/src/osp/public/service_info.h 2019-09-17 21:47:16.897035418 +0200 +@@ -21,7 +21,7 @@ struct ServiceInfo { + ServiceInfo(ServiceInfo&&) MAYBE_NOEXCEPT = default; + ServiceInfo(const ServiceInfo&) MAYBE_NOEXCEPT = default; + +- ServiceInfo& operator=(ServiceInfo&&) MAYBE_NOEXCEPT = default; ++ ServiceInfo& operator=(ServiceInfo&&) = default; + ServiceInfo& operator=(const ServiceInfo&) MAYBE_NOEXCEPT = default; + + bool operator==(const ServiceInfo& other) const; diff --git a/chromium.spec b/chromium.spec index 38911e2..2b39cea 100644 --- a/chromium.spec +++ b/chromium.spec @@ -296,7 +296,7 @@ Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch # Use lstdc++ on EPEL7 only Patch101: chromium-75.0.3770.100-epel7-stdc++.patch # el7 only patch -Patch102: chromium-76.0.3809.100-el7-noexcept.patch +Patch102: chromium-77.0.3865.75-el7-noexcept.patch # In file included from ../linux/directory.c:21: # In file included from ../../../../native_client/src/nonsfi/linux/abi_conversion.h:20: From 2aa7959287a7aaf9cd5dd371c01fe46e93b35d4e Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 18 Sep 2019 08:05:03 +0200 Subject: [PATCH 0553/1449] Forget to generate diff for one affected el7-noexcept file --- chromium-77.0.3865.75-el7-noexcept.patch | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/chromium-77.0.3865.75-el7-noexcept.patch b/chromium-77.0.3865.75-el7-noexcept.patch index 59b6fa9..366c139 100644 --- a/chromium-77.0.3865.75-el7-noexcept.patch +++ b/chromium-77.0.3865.75-el7-noexcept.patch @@ -58,6 +58,18 @@ diff -up chromium-77.0.3865.75/components/history/core/browser/history_types.h.e ~QueryURLResult(); // Indicates whether the call to HistoryBackend::QueryURL was successfull +diff -up chromium-77.0.3865.75/components/history/core/browser/url_row.cc.el7-noexcept chromium-77.0.3865.75/components/history/core/browser/url_row.cc +--- chromium-77.0.3865.75/components/history/core/browser/url_row.cc.el7-noexcept 2019-09-18 08:03:25.458138423 +0200 ++++ chromium-77.0.3865.75/components/history/core/browser/url_row.cc 2019-09-18 08:03:34.363234155 +0200 +@@ -26,7 +26,7 @@ URLRow::~URLRow() { + } + + URLRow& URLRow::operator=(const URLRow& other) = default; +-URLRow& URLRow::operator=(URLRow&& other) noexcept = default; ++URLRow& URLRow::operator=(URLRow&& other) = default; + + void URLRow::Swap(URLRow* other) { + std::swap(id_, other->id_); diff -up chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc.el7-noexcept chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc --- chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc.el7-noexcept 2019-09-17 22:00:18.670108528 +0200 +++ chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc 2019-09-17 22:00:32.518272148 +0200 From 67cc152547bab79180a8595720d72dd9ef7ccfbe Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Thu, 19 Sep 2019 07:58:49 +0200 Subject: [PATCH 0554/1449] Update to 77.0.3865.90 --- chromium.spec | 7 +++++-- sources | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/chromium.spec b/chromium.spec index 2b39cea..6b2691a 100644 --- a/chromium.spec +++ b/chromium.spec @@ -178,8 +178,8 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3865.75 -Release: 2%{?dist} +Version: %{majorversion}.0.3865.90 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1891,6 +1891,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Thu Sep 19 2019 Tomas Popela - 77.0.3865.90-1 +- Update to 77.0.3865.90 + * Mon Sep 16 2019 Tomas Popela - 77.0.3865.75-2 - Update the list of private libraries diff --git a/sources b/sources index b9b0498..13e91e7 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-77.0.3865.75-clean.tar.xz) = ca7a71586a60abeacb70b9d08ba9a28455d875bfa5232070fdff079e52395924b80f05d7627e3a5d5c7a3df606a39a31e05634683a052c9efb634ed536afc092 +SHA512 (chromium-77.0.3865.90-clean.tar.xz) = 696c5b01756fb720645512fc997f4c378001a01f74bb61fe2b27722b7a3c6bbef782af82ec5678e8fe7ff76285164a331b3a99eff9c5f605ff477b3795c968c4 From b0a27e4e2df3a4f669f222007995c30f48dc17b7 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Thu, 19 Sep 2019 07:58:49 +0200 Subject: [PATCH 0555/1449] Update to 77.0.3865.90 --- chromium.spec | 7 +++++-- sources | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/chromium.spec b/chromium.spec index 2d65554..f73a819 100644 --- a/chromium.spec +++ b/chromium.spec @@ -178,8 +178,8 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3865.75 -Release: 2%{?dist} +Version: %{majorversion}.0.3865.90 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1889,6 +1889,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Thu Sep 19 2019 Tomas Popela - 77.0.3865.90-1 +- Update to 77.0.3865.90 + * Mon Sep 16 2019 Tomas Popela - 77.0.3865.75-2 - Update the list of private libraries diff --git a/sources b/sources index b9b0498..13e91e7 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-77.0.3865.75-clean.tar.xz) = ca7a71586a60abeacb70b9d08ba9a28455d875bfa5232070fdff079e52395924b80f05d7627e3a5d5c7a3df606a39a31e05634683a052c9efb634ed536afc092 +SHA512 (chromium-77.0.3865.90-clean.tar.xz) = 696c5b01756fb720645512fc997f4c378001a01f74bb61fe2b27722b7a3c6bbef782af82ec5678e8fe7ff76285164a331b3a99eff9c5f605ff477b3795c968c4 From a2942aa1bba73adf0d336548aea65e3830f172ef Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Sun, 15 Sep 2019 13:36:44 +0200 Subject: [PATCH 0556/1449] Don't try to revert a previously removed patch --- chromium.spec | 2 -- 1 file changed, 2 deletions(-) diff --git a/chromium.spec b/chromium.spec index 7a0d711..a2538f0 100644 --- a/chromium.spec +++ b/chromium.spec @@ -871,8 +871,6 @@ udev. %patch100 -p1 -b .kmaxskip %patch101 -p1 -b .epel7 %patch102 -p1 -b .el7-noexcept -# Revert patch58 because it's breaking the build on el7 -%patch58 -R -p1 %endif # Feature specific patches From 1ef42a21dcf51442af1b6830c71b060258844ef5 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 20 Sep 2019 09:37:33 +0200 Subject: [PATCH 0557/1449] Remove support for (p)NaCL We don't build it for quite some time and will by killed by Google in Spring 2020. Let's drop the support for it from the SPEC file. We can revert this patch if needed. --- ...526.80-nacl-ignore-broken-fd-counter.patch | 27 --- ...m-47.0.2526.80-pnacl-fgnu-inline-asm.patch | 11 -- chromium.spec | 187 ------------------ 3 files changed, 225 deletions(-) delete mode 100644 chromium-47.0.2526.80-nacl-ignore-broken-fd-counter.patch delete mode 100644 chromium-47.0.2526.80-pnacl-fgnu-inline-asm.patch diff --git a/chromium-47.0.2526.80-nacl-ignore-broken-fd-counter.patch b/chromium-47.0.2526.80-nacl-ignore-broken-fd-counter.patch deleted file mode 100644 index c422957..0000000 --- a/chromium-47.0.2526.80-nacl-ignore-broken-fd-counter.patch +++ /dev/null @@ -1,27 +0,0 @@ -diff -up chromium-47.0.2526.80/components/nacl/loader/sandbox_linux/nacl_sandbox_linux.cc.ignore-fd-count chromium-47.0.2526.80/components/nacl/loader/sandbox_linux/nacl_sandbox_linux.cc ---- chromium-47.0.2526.80/components/nacl/loader/sandbox_linux/nacl_sandbox_linux.cc.ignore-fd-count 2015-12-15 14:48:07.119011866 -0500 -+++ chromium-47.0.2526.80/components/nacl/loader/sandbox_linux/nacl_sandbox_linux.cc 2015-12-15 14:48:14.151850055 -0500 -@@ -153,6 +153,14 @@ void NaClSandbox::InitializeLayerOneSand - } - - void NaClSandbox::CheckForExpectedNumberOfOpenFds() { -+ // Whatever logic this code is using is wrong more often than it is right. -+ // If you set expected_num_fds to 6, it finds 7. -+ // If you set expected_num_fds to 7, it finds 6. -+ // Code like this makes a packager drink. And not the good stuff either. -+ // Instead, we're just going to smile and tell it to never care about the -+ // number of FDs open. Stupid code. We hates it. -+ -+#if 0 - // We expect to have the following FDs open: - // 1-3) stdin, stdout, stderr. - // 4) The /dev/urandom FD used by base::GetUrandomFD(). -@@ -171,6 +179,8 @@ void NaClSandbox::CheckForExpectedNumber - } - - CHECK_EQ(expected_num_fds, sandbox::ProcUtil::CountOpenFds(proc_fd_.get())); -+#endif -+ - } - - void NaClSandbox::InitializeLayerTwoSandbox(bool uses_nonsfi_mode) { diff --git a/chromium-47.0.2526.80-pnacl-fgnu-inline-asm.patch b/chromium-47.0.2526.80-pnacl-fgnu-inline-asm.patch deleted file mode 100644 index bfe0422..0000000 --- a/chromium-47.0.2526.80-pnacl-fgnu-inline-asm.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-47.0.2526.80/native_client/build/untrusted.gypi.fixme chromium-47.0.2526.80/native_client/build/untrusted.gypi ---- chromium-47.0.2526.80/native_client/build/untrusted.gypi.fixme 2015-12-09 11:54:27.584962337 -0500 -+++ chromium-47.0.2526.80/native_client/build/untrusted.gypi 2015-12-09 11:54:45.033571750 -0500 -@@ -1564,6 +1564,7 @@ - '-Wno-char-subscripts', - '-Wno-unused-function', - '-std=gnu++11', -+ '-fgnu-inline-asm', - ], - 'native_irt_compile_flags': [ - # IRT compile/link flags to make the binary smaller. diff --git a/chromium.spec b/chromium.spec index a2538f0..25eb383 100644 --- a/chromium.spec +++ b/chromium.spec @@ -70,32 +70,11 @@ # If we build with shared on, then chrome-remote-desktop depends on chromium libs. # If we build with shared off, then users cannot swap out libffmpeg (and i686 gets a lot harder to build) %global shared 1 -# We should not need to turn this on. The app in the webstore _should_ work. -%global build_remoting_app 0 # AddressSanitizer mode # https://www.chromium.org/developers/testing/addresssanitizer %global asan 0 -# nacl/pnacl are soon to be dead. We're just killing them off early. -%global killnacl 1 - -%if 0%{?killnacl} - %global nacl 0 - %global nonacl 1 -%else -# TODO: Try arm (nacl disabled) -%if 0%{?fedora} - %ifarch i686 - %global nacl 0 - %global nonacl 1 - %else - %global nacl 1 - %global nonacl 0 - %endif -%endif -%endif - %if 0 # Chromium's fork of ICU is now something we can't unbundle. # This is left here to ease the change if that ever switches. @@ -302,16 +281,6 @@ Patch101: chromium-75.0.3770.100-epel7-stdc++.patch # el7 only patch Patch102: chromium-77.0.3865.75-el7-noexcept.patch -# In file included from ../linux/directory.c:21: -# In file included from ../../../../native_client/src/nonsfi/linux/abi_conversion.h:20: -# ../../../../native_client/src/nonsfi/linux/linux_syscall_structs.h:44:13: error: GNU-style inline assembly is disabled -# __asm__ __volatile__("mov %%gs, %0" : "=r"(gs)); -# ^ -# 1 error generated. -Patch200: chromium-47.0.2526.80-pnacl-fgnu-inline-asm.patch -# Ignore broken nacl open fd counter -Patch201: chromium-47.0.2526.80-nacl-ignore-broken-fd-counter.patch - # Enable VAAPI support on Linux # NOTE: This patch will never land upstream Patch202: enable-vaapi.patch @@ -419,24 +388,6 @@ BuildRequires: libappstream-glib # gn needs these BuildRequires: libstdc++-static BuildRequires: libstdc++-devel, openssl-devel -%if 0%{?nacl} -BuildRequires: nacl-gcc, nacl-binutils, nacl-newlib -BuildRequires: nacl-arm-gcc, nacl-arm-binutils, nacl-arm-newlib -# pNaCl needs this monster -# It's possible that someday this dep will stabilize, but -# right now, it needs to be updated everytime chromium bumps -# a major version. -BuildRequires: chromium-native_client >= 52.0.2743.82 -BuildRequires: clang -BuildRequires: llvm -%ifarch x86_64 -# Really, this is what we want: -# BuildRequires: glibc-devel(x86-32) libgcc(x86-32) -# But, koji only offers glibc32. Maybe that's enough. -# This BR will pull in either glibc.i686 or glibc32. -BuildRequires: /lib/libc.so.6 /usr/lib/libc.so -%endif -%endif # Fedora tries to use system libs whenever it can. BuildRequires: bzip2-devel BuildRequires: dbus-glib-devel @@ -874,11 +825,6 @@ udev. %endif # Feature specific patches -%if ! 0%{?killnacl} -%patch200 -p1 -b .gnu-inline -%patch201 -p1 -b .ignore-fd-count -%endif - %if %{use_vaapi} %patch202 -p1 -b .vaapi %ifarch i686 @@ -907,101 +853,6 @@ export RANLIB="ranlib" rm -rf buildtools/third_party/libc++/BUILD.gn -%if 0%{?nacl} -# prep the nacl tree -mkdir -p out/Release/gen/sdk/linux_x86/nacl_x86_newlib -cp -a --no-preserve=context /usr/%{_arch}-nacl/* out/Release/gen/sdk/linux_x86/nacl_x86_newlib - -mkdir -p out/Release/gen/sdk/linux_x86/nacl_arm_newlib -cp -a --no-preserve=context /usr/arm-nacl/* out/Release/gen/sdk/linux_x86/nacl_arm_newlib - -# Not sure if we need this or not, but better safe than sorry. -pushd out/Release/gen/sdk/linux_x86 -ln -s nacl_x86_newlib nacl_x86_newlib_raw -ln -s nacl_arm_newlib nacl_arm_newlib_raw -popd - -mkdir -p out/Release/gen/sdk/linux_x86/nacl_x86_newlib/bin -pushd out/Release/gen/sdk/linux_x86/nacl_x86_newlib/bin -ln -s /usr/bin/x86_64-nacl-gcc gcc -ln -s /usr/bin/x86_64-nacl-gcc x86_64-nacl-gcc -ln -s /usr/bin/x86_64-nacl-g++ g++ -ln -s /usr/bin/x86_64-nacl-g++ x86_64-nacl-g++ -# ln -s /usr/bin/x86_64-nacl-ar ar -ln -s /usr/bin/x86_64-nacl-ar x86_64-nacl-ar -# ln -s /usr/bin/x86_64-nacl-as as -ln -s /usr/bin/x86_64-nacl-as x86_64-nacl-as -# ln -s /usr/bin/x86_64-nacl-ranlib ranlib -ln -s /usr/bin/x86_64-nacl-ranlib x86_64-nacl-ranlib -# Cleanups -rm addr2line -ln -s /usr/bin/x86_64-nacl-addr2line addr2line -rm c++filt -ln -s /usr/bin/x86_64-nacl-c++filt c++filt -rm gprof -ln -s /usr/bin/x86_64-nacl-gprof gprof -rm readelf -ln -s /usr/bin/x86_64-nacl-readelf readelf -rm size -ln -s /usr/bin/x86_64-nacl-size size -rm strings -ln -s /usr/bin/x86_64-nacl-strings strings -popd - -mkdir -p out/Release/gen/sdk/linux_x86/nacl_arm_newlib/bin -pushd out/Release/gen/sdk/linux_x86/nacl_arm_newlib/bin -ln -s /usr/bin/arm-nacl-gcc gcc -ln -s /usr/bin/arm-nacl-gcc arm-nacl-gcc -ln -s /usr/bin/arm-nacl-g++ g++ -ln -s /usr/bin/arm-nacl-g++ arm-nacl-g++ -ln -s /usr/bin/arm-nacl-ar arm-nacl-ar -ln -s /usr/bin/arm-nacl-as arm-nacl-as -ln -s /usr/bin/arm-nacl-ranlib arm-nacl-ranlib -popd - -touch out/Release/gen/sdk/linux_x86/nacl_x86_newlib/stamp.untar out/Release/gen/sdk/linux_x86/nacl_x86_newlib/stamp.prep -touch out/Release/gen/sdk/linux_x86/nacl_x86_newlib/nacl_x86_newlib.json -touch out/Release/gen/sdk/linux_x86/nacl_arm_newlib/stamp.untar out/Release/gen/sdk/linux_x86/nacl_arm_newlib/stamp.prep -touch out/Release/gen/sdk/linux_x86/nacl_arm_newlib/nacl_arm_newlib.json - -pushd out/Release/gen/sdk/linux_x86/ -mkdir -p pnacl_newlib pnacl_translator -# Might be able to do symlinks here, but eh. -cp -a --no-preserve=context /usr/pnacl_newlib/* pnacl_newlib/ -cp -a --no-preserve=context /usr/pnacl_translator/* pnacl_translator/ -for i in lib/libc.a lib/libc++.a lib/libg.a lib/libm.a; do - /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/x86_64_bc-nacl/$i - /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/i686_bc-nacl/$i - /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/le32-nacl/$i -done - -for i in lib/libpthread.a lib/libnacl.a; do - /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/le32-nacl/$i -done - -for i in lib/clang/3.7.0/lib/x86_64_bc-nacl/libpnaclmm.a lib/clang/3.7.0/lib/i686_bc-nacl/libpnaclmm.a; do - /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/$i -done - -for i in lib/clang/3.7.0/lib/le32-nacl/libpnaclmm.a lib/clang/3.7.0/lib/le32-nacl/libgcc.a; do - /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/$i -done - -popd - -mkdir -p native_client/toolchain/.tars/linux_x86 -touch native_client/toolchain/.tars/linux_x86/pnacl_translator.json - -pushd native_client/toolchain -ln -s ../../out/Release/gen/sdk/linux_x86 linux_x86 -popd - -mkdir -p third_party/llvm-build/Release+Asserts/bin -pushd third_party/llvm-build/Release+Asserts/bin -ln -s /usr/bin/clang clang -popd -%endif - # Unpack fonts %if %{freeworld} # no font fun needed. @@ -1072,9 +923,7 @@ export CHROMIUM_CORE_GN_DEFINES CHROMIUM_BROWSER_GN_DEFINES="" CHROMIUM_BROWSER_GN_DEFINES+=' use_gio=true use_pulseaudio=true icu_use_data_file=true' -%if 0%{?nonacl} CHROMIUM_BROWSER_GN_DEFINES+=' enable_nacl=false' -%endif %if 0%{?shared} CHROMIUM_BROWSER_GN_DEFINES+=' is_component_ffmpeg=true is_component_build=true' %else @@ -1236,9 +1085,6 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/libwebm' \ 'third_party/libwebp' \ 'third_party/libyuv' \ -%if 0%{?nacl} - 'third_party/llvm-build' \ -%endif 'third_party/lss' \ 'third_party/lzma_sdk' \ %if 0%{?bundlepylibs} @@ -1471,19 +1317,7 @@ echo # remote client # ../../depot_tools/ninja -C ../%{builddir} -vvv remoting_me2me_host remoting_start_host remoting_it2me_native_messaging_host remoting_me2me_native_messaging_host remoting_native_messaging_manifests remoting_resources %build_target %{remotingbuilddir} remoting_all -%if 0%{?build_remoting_app} -%if 0%{?nacl} -export GOOGLE_CLIENT_ID_REMOTING_IDENTITY_API=%{chromoting_client_id} -%build_target %{builddir} remoting_webapp %endif -%endif - -%endif - -# Nuke nacl/pnacl bits at the end of the build -rm -rf %{builddir}/gen/sdk -rm -rf native_client/toolchain -rm -rf third_party/llvm-build/* %install rm -rf %{buildroot} @@ -1522,10 +1356,6 @@ mkdir -p %{buildroot}%{_mandir}/man1/ pushd %{builddir} cp -a *.pak locales resources icudtl.dat %{buildroot}%{chromium_path} -%if 0%{?nacl} -cp -a nacl_helper* *.nexe pnacl tls_edit %{buildroot}%{chromium_path} -chmod -x %{buildroot}%{chromium_path}/nacl_helper_bootstrap* *.nexe -%endif # Reasonably sure we don't need this anymore. Chrome doesn't include it. %if 0 cp -a protoc pyproto %{buildroot}%{chromium_path} @@ -1607,12 +1437,6 @@ pushd %{buildroot}%{_sysconfdir}/pam.d/ ln -s system-auth chrome-remote-desktop popd -%if 0%{?build_remoting_app} -%if 0%{?nacl} -cp -a remoting_client_plugin_newlib.* %{buildroot}%{chromium_path} -%endif -%endif - %if %{build_headless} pushd %{headlessbuilddir} cp -a headless_lib.pak headless_shell %{buildroot}%{chromium_path} @@ -1753,12 +1577,6 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %ifarch x86_64 i686 aarch64 %{chromium_path}/swiftshader/ %endif -%if 0%{?nacl} -%{chromium_path}/nacl_helper* -%{chromium_path}/*.nexe -%{chromium_path}/pnacl/ -%{chromium_path}/tls_edit -%endif %dir %{chromium_path}/PepperFlash/ %if 0 %{chromium_path}/protoc @@ -1872,11 +1690,6 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{crd_path}/user-session %{_unitdir}/chrome-remote-desktop@.service /var/lib/chrome-remote-desktop/ -%if 0%{?build_remoting_app} -%if 0%{?nacl} -%{chromium_path}/remoting_client_plugin_newlib.* -%endif -%endif %files -n chromedriver %doc AUTHORS From d8b8fc10a9d2bc16fbdc802ba975b68bc5f4d97b Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 20 Sep 2019 09:45:43 +0200 Subject: [PATCH 0558/1449] Fix how the arguments are passed to GN's bootstrap.py I don't know why, but previously it was failing only on aarch64. --- chromium.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 25eb383..4fa3d44 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1267,7 +1267,7 @@ if python2 -c 'import google ; print google.__path__' 2> /dev/null ; then \ exit 1 ; \ fi -tools/gn/bootstrap/bootstrap.py -v "$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" +tools/gn/bootstrap/bootstrap.py -v --no-clean --gn-gen-args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{builddir}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{builddir} %if %{freeworld} From 8f569e63e829cc877407b3e0b438daf3a9cf9fe3 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 20 Sep 2019 09:37:33 +0200 Subject: [PATCH 0559/1449] Remove support for (p)NaCL We don't build it for quite some time and will by killed by Google in Spring 2020. Let's drop the support for it from the SPEC file. We can revert this patch if needed. --- ...526.80-nacl-ignore-broken-fd-counter.patch | 27 --- ...m-47.0.2526.80-pnacl-fgnu-inline-asm.patch | 11 -- chromium.spec | 187 ------------------ 3 files changed, 225 deletions(-) delete mode 100644 chromium-47.0.2526.80-nacl-ignore-broken-fd-counter.patch delete mode 100644 chromium-47.0.2526.80-pnacl-fgnu-inline-asm.patch diff --git a/chromium-47.0.2526.80-nacl-ignore-broken-fd-counter.patch b/chromium-47.0.2526.80-nacl-ignore-broken-fd-counter.patch deleted file mode 100644 index c422957..0000000 --- a/chromium-47.0.2526.80-nacl-ignore-broken-fd-counter.patch +++ /dev/null @@ -1,27 +0,0 @@ -diff -up chromium-47.0.2526.80/components/nacl/loader/sandbox_linux/nacl_sandbox_linux.cc.ignore-fd-count chromium-47.0.2526.80/components/nacl/loader/sandbox_linux/nacl_sandbox_linux.cc ---- chromium-47.0.2526.80/components/nacl/loader/sandbox_linux/nacl_sandbox_linux.cc.ignore-fd-count 2015-12-15 14:48:07.119011866 -0500 -+++ chromium-47.0.2526.80/components/nacl/loader/sandbox_linux/nacl_sandbox_linux.cc 2015-12-15 14:48:14.151850055 -0500 -@@ -153,6 +153,14 @@ void NaClSandbox::InitializeLayerOneSand - } - - void NaClSandbox::CheckForExpectedNumberOfOpenFds() { -+ // Whatever logic this code is using is wrong more often than it is right. -+ // If you set expected_num_fds to 6, it finds 7. -+ // If you set expected_num_fds to 7, it finds 6. -+ // Code like this makes a packager drink. And not the good stuff either. -+ // Instead, we're just going to smile and tell it to never care about the -+ // number of FDs open. Stupid code. We hates it. -+ -+#if 0 - // We expect to have the following FDs open: - // 1-3) stdin, stdout, stderr. - // 4) The /dev/urandom FD used by base::GetUrandomFD(). -@@ -171,6 +179,8 @@ void NaClSandbox::CheckForExpectedNumber - } - - CHECK_EQ(expected_num_fds, sandbox::ProcUtil::CountOpenFds(proc_fd_.get())); -+#endif -+ - } - - void NaClSandbox::InitializeLayerTwoSandbox(bool uses_nonsfi_mode) { diff --git a/chromium-47.0.2526.80-pnacl-fgnu-inline-asm.patch b/chromium-47.0.2526.80-pnacl-fgnu-inline-asm.patch deleted file mode 100644 index bfe0422..0000000 --- a/chromium-47.0.2526.80-pnacl-fgnu-inline-asm.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-47.0.2526.80/native_client/build/untrusted.gypi.fixme chromium-47.0.2526.80/native_client/build/untrusted.gypi ---- chromium-47.0.2526.80/native_client/build/untrusted.gypi.fixme 2015-12-09 11:54:27.584962337 -0500 -+++ chromium-47.0.2526.80/native_client/build/untrusted.gypi 2015-12-09 11:54:45.033571750 -0500 -@@ -1564,6 +1564,7 @@ - '-Wno-char-subscripts', - '-Wno-unused-function', - '-std=gnu++11', -+ '-fgnu-inline-asm', - ], - 'native_irt_compile_flags': [ - # IRT compile/link flags to make the binary smaller. diff --git a/chromium.spec b/chromium.spec index f73a819..021e934 100644 --- a/chromium.spec +++ b/chromium.spec @@ -70,32 +70,11 @@ # If we build with shared on, then chrome-remote-desktop depends on chromium libs. # If we build with shared off, then users cannot swap out libffmpeg (and i686 gets a lot harder to build) %global shared 1 -# We should not need to turn this on. The app in the webstore _should_ work. -%global build_remoting_app 0 # AddressSanitizer mode # https://www.chromium.org/developers/testing/addresssanitizer %global asan 0 -# nacl/pnacl are soon to be dead. We're just killing them off early. -%global killnacl 1 - -%if 0%{?killnacl} - %global nacl 0 - %global nonacl 1 -%else -# TODO: Try arm (nacl disabled) -%if 0%{?fedora} - %ifarch i686 - %global nacl 0 - %global nonacl 1 - %else - %global nacl 1 - %global nonacl 0 - %endif -%endif -%endif - %if 0 # Chromium's fork of ICU is now something we can't unbundle. # This is left here to ease the change if that ever switches. @@ -298,16 +277,6 @@ Patch101: chromium-75.0.3770.100-epel7-stdc++.patch # el7 only patch Patch102: chromium-77.0.3865.75-el7-noexcept.patch -# In file included from ../linux/directory.c:21: -# In file included from ../../../../native_client/src/nonsfi/linux/abi_conversion.h:20: -# ../../../../native_client/src/nonsfi/linux/linux_syscall_structs.h:44:13: error: GNU-style inline assembly is disabled -# __asm__ __volatile__("mov %%gs, %0" : "=r"(gs)); -# ^ -# 1 error generated. -Patch200: chromium-47.0.2526.80-pnacl-fgnu-inline-asm.patch -# Ignore broken nacl open fd counter -Patch201: chromium-47.0.2526.80-nacl-ignore-broken-fd-counter.patch - # Enable VAAPI support on Linux # NOTE: This patch will never land upstream Patch202: enable-vaapi.patch @@ -415,24 +384,6 @@ BuildRequires: libappstream-glib # gn needs these BuildRequires: libstdc++-static BuildRequires: libstdc++-devel, openssl-devel -%if 0%{?nacl} -BuildRequires: nacl-gcc, nacl-binutils, nacl-newlib -BuildRequires: nacl-arm-gcc, nacl-arm-binutils, nacl-arm-newlib -# pNaCl needs this monster -# It's possible that someday this dep will stabilize, but -# right now, it needs to be updated everytime chromium bumps -# a major version. -BuildRequires: chromium-native_client >= 52.0.2743.82 -BuildRequires: clang -BuildRequires: llvm -%ifarch x86_64 -# Really, this is what we want: -# BuildRequires: glibc-devel(x86-32) libgcc(x86-32) -# But, koji only offers glibc32. Maybe that's enough. -# This BR will pull in either glibc.i686 or glibc32. -BuildRequires: /lib/libc.so.6 /usr/lib/libc.so -%endif -%endif # Fedora tries to use system libs whenever it can. BuildRequires: bzip2-devel BuildRequires: dbus-glib-devel @@ -865,11 +816,6 @@ udev. %endif # Feature specific patches -%if ! 0%{?killnacl} -%patch200 -p1 -b .gnu-inline -%patch201 -p1 -b .ignore-fd-count -%endif - %if %{use_vaapi} %patch202 -p1 -b .vaapi %ifarch i686 @@ -898,101 +844,6 @@ export RANLIB="ranlib" rm -rf buildtools/third_party/libc++/BUILD.gn -%if 0%{?nacl} -# prep the nacl tree -mkdir -p out/Release/gen/sdk/linux_x86/nacl_x86_newlib -cp -a --no-preserve=context /usr/%{_arch}-nacl/* out/Release/gen/sdk/linux_x86/nacl_x86_newlib - -mkdir -p out/Release/gen/sdk/linux_x86/nacl_arm_newlib -cp -a --no-preserve=context /usr/arm-nacl/* out/Release/gen/sdk/linux_x86/nacl_arm_newlib - -# Not sure if we need this or not, but better safe than sorry. -pushd out/Release/gen/sdk/linux_x86 -ln -s nacl_x86_newlib nacl_x86_newlib_raw -ln -s nacl_arm_newlib nacl_arm_newlib_raw -popd - -mkdir -p out/Release/gen/sdk/linux_x86/nacl_x86_newlib/bin -pushd out/Release/gen/sdk/linux_x86/nacl_x86_newlib/bin -ln -s /usr/bin/x86_64-nacl-gcc gcc -ln -s /usr/bin/x86_64-nacl-gcc x86_64-nacl-gcc -ln -s /usr/bin/x86_64-nacl-g++ g++ -ln -s /usr/bin/x86_64-nacl-g++ x86_64-nacl-g++ -# ln -s /usr/bin/x86_64-nacl-ar ar -ln -s /usr/bin/x86_64-nacl-ar x86_64-nacl-ar -# ln -s /usr/bin/x86_64-nacl-as as -ln -s /usr/bin/x86_64-nacl-as x86_64-nacl-as -# ln -s /usr/bin/x86_64-nacl-ranlib ranlib -ln -s /usr/bin/x86_64-nacl-ranlib x86_64-nacl-ranlib -# Cleanups -rm addr2line -ln -s /usr/bin/x86_64-nacl-addr2line addr2line -rm c++filt -ln -s /usr/bin/x86_64-nacl-c++filt c++filt -rm gprof -ln -s /usr/bin/x86_64-nacl-gprof gprof -rm readelf -ln -s /usr/bin/x86_64-nacl-readelf readelf -rm size -ln -s /usr/bin/x86_64-nacl-size size -rm strings -ln -s /usr/bin/x86_64-nacl-strings strings -popd - -mkdir -p out/Release/gen/sdk/linux_x86/nacl_arm_newlib/bin -pushd out/Release/gen/sdk/linux_x86/nacl_arm_newlib/bin -ln -s /usr/bin/arm-nacl-gcc gcc -ln -s /usr/bin/arm-nacl-gcc arm-nacl-gcc -ln -s /usr/bin/arm-nacl-g++ g++ -ln -s /usr/bin/arm-nacl-g++ arm-nacl-g++ -ln -s /usr/bin/arm-nacl-ar arm-nacl-ar -ln -s /usr/bin/arm-nacl-as arm-nacl-as -ln -s /usr/bin/arm-nacl-ranlib arm-nacl-ranlib -popd - -touch out/Release/gen/sdk/linux_x86/nacl_x86_newlib/stamp.untar out/Release/gen/sdk/linux_x86/nacl_x86_newlib/stamp.prep -touch out/Release/gen/sdk/linux_x86/nacl_x86_newlib/nacl_x86_newlib.json -touch out/Release/gen/sdk/linux_x86/nacl_arm_newlib/stamp.untar out/Release/gen/sdk/linux_x86/nacl_arm_newlib/stamp.prep -touch out/Release/gen/sdk/linux_x86/nacl_arm_newlib/nacl_arm_newlib.json - -pushd out/Release/gen/sdk/linux_x86/ -mkdir -p pnacl_newlib pnacl_translator -# Might be able to do symlinks here, but eh. -cp -a --no-preserve=context /usr/pnacl_newlib/* pnacl_newlib/ -cp -a --no-preserve=context /usr/pnacl_translator/* pnacl_translator/ -for i in lib/libc.a lib/libc++.a lib/libg.a lib/libm.a; do - /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/x86_64_bc-nacl/$i - /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/i686_bc-nacl/$i - /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/le32-nacl/$i -done - -for i in lib/libpthread.a lib/libnacl.a; do - /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/le32-nacl/$i -done - -for i in lib/clang/3.7.0/lib/x86_64_bc-nacl/libpnaclmm.a lib/clang/3.7.0/lib/i686_bc-nacl/libpnaclmm.a; do - /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/$i -done - -for i in lib/clang/3.7.0/lib/le32-nacl/libpnaclmm.a lib/clang/3.7.0/lib/le32-nacl/libgcc.a; do - /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/$i -done - -popd - -mkdir -p native_client/toolchain/.tars/linux_x86 -touch native_client/toolchain/.tars/linux_x86/pnacl_translator.json - -pushd native_client/toolchain -ln -s ../../out/Release/gen/sdk/linux_x86 linux_x86 -popd - -mkdir -p third_party/llvm-build/Release+Asserts/bin -pushd third_party/llvm-build/Release+Asserts/bin -ln -s /usr/bin/clang clang -popd -%endif - # Unpack fonts %if %{freeworld} # no font fun needed. @@ -1063,9 +914,7 @@ export CHROMIUM_CORE_GN_DEFINES CHROMIUM_BROWSER_GN_DEFINES="" CHROMIUM_BROWSER_GN_DEFINES+=' use_gio=true use_pulseaudio=true icu_use_data_file=true' -%if 0%{?nonacl} CHROMIUM_BROWSER_GN_DEFINES+=' enable_nacl=false' -%endif %if 0%{?shared} CHROMIUM_BROWSER_GN_DEFINES+=' is_component_ffmpeg=true is_component_build=true' %else @@ -1227,9 +1076,6 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/libwebm' \ 'third_party/libwebp' \ 'third_party/libyuv' \ -%if 0%{?nacl} - 'third_party/llvm-build' \ -%endif 'third_party/lss' \ 'third_party/lzma_sdk' \ %if 0 @@ -1460,19 +1306,7 @@ echo # remote client # ../../depot_tools/ninja -C ../%{builddir} -vvv remoting_me2me_host remoting_start_host remoting_it2me_native_messaging_host remoting_me2me_native_messaging_host remoting_native_messaging_manifests remoting_resources %build_target %{remotingbuilddir} remoting_all -%if 0%{?build_remoting_app} -%if 0%{?nacl} -export GOOGLE_CLIENT_ID_REMOTING_IDENTITY_API=%{chromoting_client_id} -%build_target %{builddir} remoting_webapp %endif -%endif - -%endif - -# Nuke nacl/pnacl bits at the end of the build -rm -rf %{builddir}/gen/sdk -rm -rf native_client/toolchain -rm -rf third_party/llvm-build/* %install rm -rf %{buildroot} @@ -1511,10 +1345,6 @@ mkdir -p %{buildroot}%{_mandir}/man1/ pushd %{builddir} cp -a *.pak locales resources icudtl.dat %{buildroot}%{chromium_path} -%if 0%{?nacl} -cp -a nacl_helper* *.nexe pnacl tls_edit %{buildroot}%{chromium_path} -chmod -x %{buildroot}%{chromium_path}/nacl_helper_bootstrap* *.nexe -%endif # Reasonably sure we don't need this anymore. Chrome doesn't include it. %if 0 cp -a protoc pyproto %{buildroot}%{chromium_path} @@ -1596,12 +1426,6 @@ pushd %{buildroot}%{_sysconfdir}/pam.d/ ln -s system-auth chrome-remote-desktop popd -%if 0%{?build_remoting_app} -%if 0%{?nacl} -cp -a remoting_client_plugin_newlib.* %{buildroot}%{chromium_path} -%endif -%endif - %if %{build_headless} pushd %{headlessbuilddir} cp -a headless_lib.pak headless_shell %{buildroot}%{chromium_path} @@ -1742,12 +1566,6 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %ifarch x86_64 i686 aarch64 %{chromium_path}/swiftshader/ %endif -%if 0%{?nacl} -%{chromium_path}/nacl_helper* -%{chromium_path}/*.nexe -%{chromium_path}/pnacl/ -%{chromium_path}/tls_edit -%endif %dir %{chromium_path}/PepperFlash/ %if 0 %{chromium_path}/protoc @@ -1861,11 +1679,6 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{crd_path}/user-session %{_unitdir}/chrome-remote-desktop@.service /var/lib/chrome-remote-desktop/ -%if 0%{?build_remoting_app} -%if 0%{?nacl} -%{chromium_path}/remoting_client_plugin_newlib.* -%endif -%endif %files -n chromedriver %doc AUTHORS From ea4b8125e8ade5b91796f7facdc921d2233e987f Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 20 Sep 2019 09:45:43 +0200 Subject: [PATCH 0560/1449] Fix how the arguments are passed to GN's bootstrap.py I don't know why, but previously it was failing only on aarch64. --- chromium.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 021e934..54cc5b1 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1256,7 +1256,7 @@ if python2 -c 'import google ; print google.__path__' 2> /dev/null ; then \ exit 1 ; \ fi -tools/gn/bootstrap/bootstrap.py -v "$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" +tools/gn/bootstrap/bootstrap.py -v --no-clean --gn-gen-args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{builddir}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{builddir} %if %{freeworld} From 5a0168685de2184cd3ce9b36a80febe22a738e54 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 20 Sep 2019 09:57:18 +0200 Subject: [PATCH 0561/1449] Remove the unused patches or patches that are not needed anymore Also replace some patches with changes in the SPEC file. --- chromium-45.0.2454.101-linux-path-max.patch | 44 ---- ...mium-53.0.2785.92-boringssl-time-fix.patch | 11 - chromium-54.0.2840.59-jpeg-include-dir.patch | 11 - chromium-55.0.2883.75-addrfix.patch | 11 - ...m-59.0.3071.86-i686-ld-memory-tricks.patch | 12 -- ...113-libavutil-timer-include-path-fix.patch | 21 -- ...mium-62.0.3202.62-kmaxskip-constexpr.patch | 12 -- chromium-63.0.3289.84-nullfix.patch | 43 ---- chromium-64.0.3282.119-ffmpeg-stdatomic.patch | 17 -- chromium-65.0.3325.146-gcc-round-fix.patch | 12 -- chromium-65.0.3325.146-memcpy-fix.patch | 12 -- ...-declare-ConfigurationPolicyProvider.patch | 18 -- chromium-66.0.3359.117-system-clang.patch | 12 -- chromium-67.0.3396.62-gcc5.patch | 12 -- ...440.106-fix-default-on-redeclaration.patch | 30 --- ...ium-69.0.3497.81-build-sanely-please.patch | 33 --- ...0.3538.77-aarch64-arch-want-new-stat.patch | 12 -- ...m-71.0.3578.98-skia-aarch64-buildfix.patch | 21 -- chromium-72.0.3626.121-notest.patch | 11 - ...sable-fno-delete-null-pointer-checks.patch | 48 ----- chromium-75.0.3770.100-git00281713.patch | 34 --- chromium-75.0.3770.80-SIOCGSTAMP.patch | 15 -- ...5.0.3770.80-aeed4d-gcc-dcheck_ne-fix.patch | 14 -- chromium-75.0.3770.80-gcc-no-assume.patch | 21 -- chromium-75.0.3770.80-revert-daff6b.patch | 13 -- ...9.100-libusb_interrupt_event_handler.patch | 15 -- chromium-77.0.3865.75-boolfix.patch | 24 --- ...um-77.0.3865.75-gcc-no-opt-safe-math.patch | 15 -- chromium-77.0.3865.75-gcc5-r3.patch | 36 ---- chromium.spec | 198 ++++++------------ 30 files changed, 65 insertions(+), 723 deletions(-) delete mode 100644 chromium-45.0.2454.101-linux-path-max.patch delete mode 100644 chromium-53.0.2785.92-boringssl-time-fix.patch delete mode 100644 chromium-54.0.2840.59-jpeg-include-dir.patch delete mode 100644 chromium-55.0.2883.75-addrfix.patch delete mode 100644 chromium-59.0.3071.86-i686-ld-memory-tricks.patch delete mode 100644 chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch delete mode 100644 chromium-62.0.3202.62-kmaxskip-constexpr.patch delete mode 100644 chromium-63.0.3289.84-nullfix.patch delete mode 100644 chromium-64.0.3282.119-ffmpeg-stdatomic.patch delete mode 100644 chromium-65.0.3325.146-gcc-round-fix.patch delete mode 100644 chromium-65.0.3325.146-memcpy-fix.patch delete mode 100644 chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch delete mode 100644 chromium-66.0.3359.117-system-clang.patch delete mode 100644 chromium-67.0.3396.62-gcc5.patch delete mode 100644 chromium-68.0.3440.106-fix-default-on-redeclaration.patch delete mode 100644 chromium-69.0.3497.81-build-sanely-please.patch delete mode 100644 chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch delete mode 100644 chromium-71.0.3578.98-skia-aarch64-buildfix.patch delete mode 100644 chromium-72.0.3626.121-notest.patch delete mode 100644 chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch delete mode 100644 chromium-75.0.3770.100-git00281713.patch delete mode 100644 chromium-75.0.3770.80-SIOCGSTAMP.patch delete mode 100644 chromium-75.0.3770.80-aeed4d-gcc-dcheck_ne-fix.patch delete mode 100644 chromium-75.0.3770.80-gcc-no-assume.patch delete mode 100644 chromium-75.0.3770.80-revert-daff6b.patch delete mode 100644 chromium-76.0.3809.100-libusb_interrupt_event_handler.patch delete mode 100644 chromium-77.0.3865.75-boolfix.patch delete mode 100644 chromium-77.0.3865.75-gcc-no-opt-safe-math.patch delete mode 100644 chromium-77.0.3865.75-gcc5-r3.patch diff --git a/chromium-45.0.2454.101-linux-path-max.patch b/chromium-45.0.2454.101-linux-path-max.patch deleted file mode 100644 index 3146349..0000000 --- a/chromium-45.0.2454.101-linux-path-max.patch +++ /dev/null @@ -1,44 +0,0 @@ -diff -up chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/path.h.pathmax chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/path.h ---- chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/path.h.pathmax 2015-10-07 11:26:11.813477839 -0400 -+++ chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/path.h 2015-10-07 11:26:40.845845054 -0400 -@@ -12,6 +12,11 @@ - - #include "sdk_util/macros.h" - -+/* Needed for PATH_MAX */ -+#ifndef PATH_MAX -+#define PATH_MAX 4096 -+#endif -+ - namespace nacl_io { - - class Path { -diff -up chromium-45.0.2454.101/native_client/src/untrusted/nacl/getcwd.c.pathmax chromium-45.0.2454.101/native_client/src/untrusted/nacl/getcwd.c ---- chromium-45.0.2454.101/native_client/src/untrusted/nacl/getcwd.c.pathmax 2015-08-22 15:02:08.000000000 -0400 -+++ chromium-45.0.2454.101/native_client/src/untrusted/nacl/getcwd.c 2015-10-07 10:58:56.172018783 -0400 -@@ -11,6 +11,10 @@ - - #include - #include -+/* Needed for PATH_MAX */ -+#ifndef PATH_MAX -+#define PATH_MAX 4096 -+#endif - #include - #include - #include -diff -up chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/syscalls/realpath.c.pathmax chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/syscalls/realpath.c ---- chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/syscalls/realpath.c.pathmax 2015-10-09 10:57:38.424348662 -0400 -+++ chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/syscalls/realpath.c 2015-10-09 10:57:51.541059938 -0400 -@@ -13,6 +13,11 @@ - - #include "sdk_util/macros.h" - -+/* Needed for PATH_MAX */ -+#ifndef PATH_MAX -+#define PATH_MAX 4096 -+#endif -+ - EXTERN_C_BEGIN - - #if defined(__native_client__) diff --git a/chromium-53.0.2785.92-boringssl-time-fix.patch b/chromium-53.0.2785.92-boringssl-time-fix.patch deleted file mode 100644 index 8d67957..0000000 --- a/chromium-53.0.2785.92-boringssl-time-fix.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-53.0.2785.92/third_party/boringssl/src/crypto/x509/by_dir.c.timefix chromium-53.0.2785.92/third_party/boringssl/src/crypto/x509/by_dir.c ---- chromium-53.0.2785.92/third_party/boringssl/src/crypto/x509/by_dir.c.timefix 2016-09-06 15:20:06.094396255 -0400 -+++ chromium-53.0.2785.92/third_party/boringssl/src/crypto/x509/by_dir.c 2016-09-06 15:20:16.893187930 -0400 -@@ -56,6 +56,7 @@ - * [including the GNU Public Licence.] */ - - #include -+#include - #include - #include - diff --git a/chromium-54.0.2840.59-jpeg-include-dir.patch b/chromium-54.0.2840.59-jpeg-include-dir.patch deleted file mode 100644 index f96a56c..0000000 --- a/chromium-54.0.2840.59-jpeg-include-dir.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-54.0.2840.59/third_party/BUILD.gn.jpegfix chromium-54.0.2840.59/third_party/BUILD.gn ---- chromium-54.0.2840.59/third_party/BUILD.gn.jpegfix 2016-10-17 11:45:44.995340495 -0400 -+++ chromium-54.0.2840.59/third_party/BUILD.gn 2016-10-17 11:46:35.254289872 -0400 -@@ -20,6 +20,7 @@ declare_args() { - config("system_libjpeg_config") { - libs = [ "jpeg" ] - defines = [ "USE_SYSTEM_LIBJPEG" ] -+ include_dirs = [ "/usr/include/" ] - } - - config("libjpeg_turbo_config") { diff --git a/chromium-55.0.2883.75-addrfix.patch b/chromium-55.0.2883.75-addrfix.patch deleted file mode 100644 index 00c214c..0000000 --- a/chromium-55.0.2883.75-addrfix.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-55.0.2883.75/third_party/boringssl/BUILD.gn.addrfix chromium-55.0.2883.75/third_party/boringssl/BUILD.gn ---- chromium-55.0.2883.75/third_party/boringssl/BUILD.gn.addrfix 2016-12-12 15:30:27.727834891 -0500 -+++ chromium-55.0.2883.75/third_party/boringssl/BUILD.gn 2016-12-12 15:30:53.095709352 -0500 -@@ -24,6 +24,7 @@ config("internal_config") { - "BORINGSSL_IMPLEMENTATION", - "BORINGSSL_NO_STATIC_INITIALIZER", - "OPENSSL_SMALL", -+ "_POSIX_C_SOURCE=200112L", - ] - configs = [ - # TODO(davidben): Fix size_t truncations in BoringSSL. diff --git a/chromium-59.0.3071.86-i686-ld-memory-tricks.patch b/chromium-59.0.3071.86-i686-ld-memory-tricks.patch deleted file mode 100644 index 9dde4c5..0000000 --- a/chromium-59.0.3071.86-i686-ld-memory-tricks.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn.ldmemory chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn ---- chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn.ldmemory 2017-06-07 15:37:09.436616113 -0400 -+++ chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn 2017-06-07 15:38:04.508519102 -0400 -@@ -93,7 +93,7 @@ gcc_toolchain("x86") { - nm = "nm" - ar = "ar" - ld = cxx -- extra_cppflags = "-fno-delete-null-pointer-checks" -+ extra_cppflags = "-fno-delete-null-pointer-checks -g1" - - # Output linker map files for binary size analysis. - enable_linker_map = true diff --git a/chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch b/chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch deleted file mode 100644 index 7248825..0000000 --- a/chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -up chromium-60.0.3112.113/third_party/ffmpeg/libavutil/timer.h.pathfix chromium-60.0.3112.113/third_party/ffmpeg/libavutil/timer.h ---- chromium-60.0.3112.113/third_party/ffmpeg/libavutil/timer.h.pathfix 2017-08-25 15:29:12.143242471 -0400 -+++ chromium-60.0.3112.113/third_party/ffmpeg/libavutil/timer.h 2017-08-25 15:29:36.941835865 -0400 -@@ -39,13 +39,13 @@ - #include "log.h" - - #if ARCH_AARCH64 --# include "aarch64/timer.h" -+# include "libavutil/aarch64/timer.h" - #elif ARCH_ARM --# include "arm/timer.h" -+# include "libavutil/arm/timer.h" - #elif ARCH_PPC --# include "ppc/timer.h" -+# include "libavutil/ppc/timer.h" - #elif ARCH_X86 --# include "x86/timer.h" -+# include "libavutil/x86/timer.h" - #endif - - #if !defined(AV_READ_TIME) diff --git a/chromium-62.0.3202.62-kmaxskip-constexpr.patch b/chromium-62.0.3202.62-kmaxskip-constexpr.patch deleted file mode 100644 index d4f8250..0000000 --- a/chromium-62.0.3202.62-kmaxskip-constexpr.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-62.0.3202.62/cc/paint/paint_op_buffer.cc.kmaxskip chromium-62.0.3202.62/cc/paint/paint_op_buffer.cc ---- chromium-62.0.3202.62/cc/paint/paint_op_buffer.cc.kmaxskip 2017-10-18 10:00:28.503714392 -0400 -+++ chromium-62.0.3202.62/cc/paint/paint_op_buffer.cc 2017-10-18 10:00:43.153430212 -0400 -@@ -336,7 +336,7 @@ TYPES(M); - #undef TYPES - - const SkRect PaintOp::kUnsetRect = {SK_ScalarInfinity, 0, 0, 0}; --const size_t PaintOp::kMaxSkip; -+constexpr size_t PaintOp::kMaxSkip; - - std::string PaintOpTypeToString(PaintOpType type) { - switch (type) { diff --git a/chromium-63.0.3289.84-nullfix.patch b/chromium-63.0.3289.84-nullfix.patch deleted file mode 100644 index c66aff1..0000000 --- a/chromium-63.0.3289.84-nullfix.patch +++ /dev/null @@ -1,43 +0,0 @@ -diff -up chromium-63.0.3239.84/build/toolchain/linux/BUILD.gn.nullfix chromium-63.0.3239.84/build/toolchain/linux/BUILD.gn ---- chromium-63.0.3239.84/build/toolchain/linux/BUILD.gn.nullfix 2017-12-06 15:05:21.000000000 -0500 -+++ chromium-63.0.3239.84/build/toolchain/linux/BUILD.gn 2017-12-07 10:44:34.507207080 -0500 -@@ -31,6 +31,7 @@ gcc_toolchain("arm64") { - ld = cxx - readelf = "${toolprefix}readelf" - nm = "${toolprefix}nm" -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - toolchain_args = { - current_cpu = "arm64" -@@ -49,6 +50,7 @@ gcc_toolchain("arm") { - ld = cxx - readelf = "${toolprefix}readelf" - nm = "${toolprefix}nm" -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - toolchain_args = { - current_cpu = "arm" -@@ -99,6 +101,7 @@ gcc_toolchain("x86") { - nm = "nm" - ar = "ar" - ld = cxx -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - # Output linker map files for binary size analysis. - enable_linker_map = true -@@ -152,6 +155,7 @@ gcc_toolchain("x64") { - nm = "nm" - ar = "ar" - ld = cxx -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - # Output linker map files for binary size analysis. - enable_linker_map = true -@@ -186,6 +190,7 @@ gcc_toolchain("mipsel") { - ld = cxx - readelf = "${toolprefix}readelf" - nm = "${toolprefix}nm" -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - toolchain_args = { - cc_wrapper = "" diff --git a/chromium-64.0.3282.119-ffmpeg-stdatomic.patch b/chromium-64.0.3282.119-ffmpeg-stdatomic.patch deleted file mode 100644 index 64c5f26..0000000 --- a/chromium-64.0.3282.119-ffmpeg-stdatomic.patch +++ /dev/null @@ -1,17 +0,0 @@ -diff -up chromium-64.0.3282.119/third_party/ffmpeg/libavutil/cpu.c.ffmpeg-stdatomic chromium-64.0.3282.119/third_party/ffmpeg/libavutil/cpu.c ---- chromium-64.0.3282.119/third_party/ffmpeg/libavutil/cpu.c.ffmpeg-stdatomic 2018-01-25 11:55:57.880936815 -0500 -+++ chromium-64.0.3282.119/third_party/ffmpeg/libavutil/cpu.c 2018-01-25 11:57:18.456787888 -0500 -@@ -18,7 +18,13 @@ - - #include - #include -+// GCC 4.8 didn't have stdatomic, but was advertising it. -+// https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58016 -+#if !defined(__clang__) && defined(__GNUC__) && (__GNUC__ == 4 || (__GNUC__ == 4 && (__GNUC_MINOR__ == 8))) -+#include -+#else - #include -+#endif - - #include "attributes.h" - #include "cpu.h" diff --git a/chromium-65.0.3325.146-gcc-round-fix.patch b/chromium-65.0.3325.146-gcc-round-fix.patch deleted file mode 100644 index a29779d..0000000 --- a/chromium-65.0.3325.146-gcc-round-fix.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-65.0.3325.146/third_party/webrtc/p2p/base/port.cc.gcc-round-fix chromium-65.0.3325.146/third_party/webrtc/p2p/base/port.cc ---- chromium-65.0.3325.146/third_party/webrtc/p2p/base/port.cc.gcc-round-fix 2018-03-07 10:57:11.284376048 -0500 -+++ chromium-65.0.3325.146/third_party/webrtc/p2p/base/port.cc 2018-03-07 10:58:16.590742636 -0500 -@@ -10,7 +10,7 @@ - - #include "p2p/base/port.h" - --#include -+#include - - #include - #include diff --git a/chromium-65.0.3325.146-memcpy-fix.patch b/chromium-65.0.3325.146-memcpy-fix.patch deleted file mode 100644 index b2b2cd4..0000000 --- a/chromium-65.0.3325.146-memcpy-fix.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-65.0.3325.146/cc/paint/raw_memory_transfer_cache_entry.cc.memcpyfix chromium-65.0.3325.146/cc/paint/raw_memory_transfer_cache_entry.cc ---- chromium-65.0.3325.146/cc/paint/raw_memory_transfer_cache_entry.cc.memcpyfix 2018-03-07 11:04:14.690379817 -0500 -+++ chromium-65.0.3325.146/cc/paint/raw_memory_transfer_cache_entry.cc 2018-03-07 11:06:04.339878069 -0500 -@@ -3,7 +3,7 @@ - // found in the LICENSE file. - - #include "cc/paint/raw_memory_transfer_cache_entry.h" -- -+#include - #include - - namespace cc { diff --git a/chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch b/chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch deleted file mode 100644 index d5b19cf..0000000 --- a/chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch +++ /dev/null @@ -1,18 +0,0 @@ -diff -up chromium-66.0.3359.117/components/policy/core/browser/browser_policy_connector_base.h.gcc-cpolicyprovider chromium-66.0.3359.117/components/policy/core/browser/browser_policy_connector_base.h ---- chromium-66.0.3359.117/components/policy/core/browser/browser_policy_connector_base.h.gcc-cpolicyprovider 2018-04-25 16:33:40.872222779 -0400 -+++ chromium-66.0.3359.117/components/policy/core/browser/browser_policy_connector_base.h 2018-04-25 16:37:23.175883637 -0400 -@@ -11,13 +11,13 @@ - #include "base/callback_forward.h" - #include "base/macros.h" - #include "components/policy/core/browser/configuration_policy_handler_list.h" -+#include "components/policy/core/common/configuration_policy_provider.h" - #include "components/policy/core/common/schema.h" - #include "components/policy/core/common/schema_registry.h" - #include "components/policy/policy_export.h" - - namespace policy { - --class ConfigurationPolicyProvider; - class PolicyService; - class PolicyServiceImpl; - diff --git a/chromium-66.0.3359.117-system-clang.patch b/chromium-66.0.3359.117-system-clang.patch deleted file mode 100644 index e90dc58..0000000 --- a/chromium-66.0.3359.117-system-clang.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-66.0.3359.117/build/config/clang/clang.gni.system-clang chromium-66.0.3359.117/build/config/clang/clang.gni ---- chromium-66.0.3359.117/build/config/clang/clang.gni.system-clang 2018-04-18 12:08:45.658190297 -0400 -+++ chromium-66.0.3359.117/build/config/clang/clang.gni 2018-04-18 12:09:37.612032982 -0400 -@@ -4,7 +4,7 @@ - - import("//build/toolchain/toolchain.gni") - --default_clang_base_path = "//third_party/llvm-build/Release+Asserts" -+default_clang_base_path = "/usr" - - declare_args() { - # Indicates if the build should use the Chrome-specific plugins for enforcing diff --git a/chromium-67.0.3396.62-gcc5.patch b/chromium-67.0.3396.62-gcc5.patch deleted file mode 100644 index ceef85d..0000000 --- a/chromium-67.0.3396.62-gcc5.patch +++ /dev/null @@ -1,12 +0,0 @@ -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-68.0.3440.106-fix-default-on-redeclaration.patch b/chromium-68.0.3440.106-fix-default-on-redeclaration.patch deleted file mode 100644 index 4a92fba..0000000 --- a/chromium-68.0.3440.106-fix-default-on-redeclaration.patch +++ /dev/null @@ -1,30 +0,0 @@ -diff -up chromium-68.0.3440.106/components/search_provider_logos/logo_common.cc.122692c chromium-68.0.3440.106/components/search_provider_logos/logo_common.cc ---- chromium-68.0.3440.106/components/search_provider_logos/logo_common.cc.122692c 2018-08-17 14:54:30.587338865 -0400 -+++ chromium-68.0.3440.106/components/search_provider_logos/logo_common.cc 2018-08-17 14:55:20.461184298 -0400 -@@ -14,22 +14,22 @@ LogoMetadata::LogoMetadata() = default; - LogoMetadata::LogoMetadata(const LogoMetadata&) = default; - LogoMetadata::LogoMetadata(LogoMetadata&&) noexcept = default; - LogoMetadata& LogoMetadata::operator=(const LogoMetadata&) = default; --LogoMetadata& LogoMetadata::operator=(LogoMetadata&&) noexcept = default; -+LogoMetadata& LogoMetadata::operator=(LogoMetadata&&) = default; - LogoMetadata::~LogoMetadata() = default; - - EncodedLogo::EncodedLogo() = default; - EncodedLogo::EncodedLogo(const EncodedLogo&) = default; - EncodedLogo::EncodedLogo(EncodedLogo&&) noexcept = default; - EncodedLogo& EncodedLogo::operator=(const EncodedLogo&) = default; --EncodedLogo& EncodedLogo::operator=(EncodedLogo&&) noexcept = default; -+EncodedLogo& EncodedLogo::operator=(EncodedLogo&&) = default; - EncodedLogo::~EncodedLogo() = default; - - Logo::Logo() = default; - Logo::~Logo() = default; - - LogoCallbacks::LogoCallbacks() = default; --LogoCallbacks::LogoCallbacks(LogoCallbacks&&) noexcept = default; --LogoCallbacks& LogoCallbacks::operator=(LogoCallbacks&&) noexcept = default; -+LogoCallbacks::LogoCallbacks(LogoCallbacks&&) = default; -+LogoCallbacks& LogoCallbacks::operator=(LogoCallbacks&&) = default; - LogoCallbacks::~LogoCallbacks() = default; - - } // namespace search_provider_logos diff --git a/chromium-69.0.3497.81-build-sanely-please.patch b/chromium-69.0.3497.81-build-sanely-please.patch deleted file mode 100644 index 6241a97..0000000 --- a/chromium-69.0.3497.81-build-sanely-please.patch +++ /dev/null @@ -1,33 +0,0 @@ -diff -up chromium-69.0.3497.81/build/config/BUILD.gn.fyoursysroot chromium-69.0.3497.81/build/config/BUILD.gn ---- chromium-69.0.3497.81/build/config/BUILD.gn.fyoursysroot 2018-09-06 13:43:44.863375238 -0400 -+++ chromium-69.0.3497.81/build/config/BUILD.gn 2018-09-06 13:43:58.377083290 -0400 -@@ -284,9 +284,9 @@ group("executable_and_loadable_module_an - public_deps += [ "//build/config/sanitizers:deps" ] - } - -- if (use_custom_libcxx) { -- public_deps += [ "//buildtools/third_party/libc++" ] -- } -+ # if (use_custom_libcxx) { -+ # public_deps += [ "//buildtools/third_party/libc++" ] -+ # } - - if (use_afl) { - public_deps += [ "//third_party/afl" ] -diff -up chromium-69.0.3497.81/build/config/sysroot.gni.fyoursysroot chromium-69.0.3497.81/build/config/sysroot.gni ---- chromium-69.0.3497.81/build/config/sysroot.gni.fyoursysroot 2018-09-06 13:40:46.212232232 -0400 -+++ chromium-69.0.3497.81/build/config/sysroot.gni 2018-09-06 13:41:02.421882529 -0400 -@@ -15,9 +15,10 @@ declare_args() { - # The absolute path to directory containing linux sysroot images - target_sysroot_dir = "//build/linux" - -- use_sysroot = current_cpu == "x86" || current_cpu == "x64" || -- current_cpu == "arm" || current_cpu == "arm64" || -- current_cpu == "mipsel" || current_cpu == "mips64el" -+ use_sysroot = false -+ # use_sysroot = current_cpu == "x86" || current_cpu == "x64" || -+ # current_cpu == "arm" || current_cpu == "arm64" || -+ # current_cpu == "mipsel" || current_cpu == "mips64el" - } - - if (current_os == target_os && current_cpu == target_cpu && diff --git a/chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch b/chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch deleted file mode 100644 index ccecfcb..0000000 --- a/chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-70.0.3538.77/sandbox/linux/system_headers/arm64_linux_syscalls.h.aarch64-new-stat chromium-70.0.3538.77/sandbox/linux/system_headers/arm64_linux_syscalls.h ---- chromium-70.0.3538.77/sandbox/linux/system_headers/arm64_linux_syscalls.h.aarch64-new-stat 2018-11-06 13:27:05.118766581 -0500 -+++ chromium-70.0.3538.77/sandbox/linux/system_headers/arm64_linux_syscalls.h 2018-11-06 13:27:34.575204504 -0500 -@@ -5,6 +5,8 @@ - #ifndef SANDBOX_LINUX_SYSTEM_HEADERS_ARM64_LINUX_SYSCALLS_H_ - #define SANDBOX_LINUX_SYSTEM_HEADERS_ARM64_LINUX_SYSCALLS_H_ - -+#define __ARCH_WANT_NEW_STAT -+ - #include - - #if !defined(__NR_io_setup) diff --git a/chromium-71.0.3578.98-skia-aarch64-buildfix.patch b/chromium-71.0.3578.98-skia-aarch64-buildfix.patch deleted file mode 100644 index 5da1674..0000000 --- a/chromium-71.0.3578.98-skia-aarch64-buildfix.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -up chromium-71.0.3578.98/third_party/skia/src/opts/SkRasterPipeline_opts.h.aarch64fix chromium-71.0.3578.98/third_party/skia/src/opts/SkRasterPipeline_opts.h ---- chromium-71.0.3578.98/third_party/skia/src/opts/SkRasterPipeline_opts.h.aarch64fix 2018-12-14 11:17:43.249121756 -0500 -+++ chromium-71.0.3578.98/third_party/skia/src/opts/SkRasterPipeline_opts.h 2018-12-14 11:20:07.770030234 -0500 -@@ -658,7 +658,7 @@ SI F approx_powf(F x, F y) { - } - - SI F from_half(U16 h) { --#if defined(SK_CPU_ARM64) && !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) -@@ -678,7 +678,7 @@ SI F from_half(U16 h) { - } - - SI U16 to_half(F f) { --#if defined(SK_CPU_ARM64) && !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) diff --git a/chromium-72.0.3626.121-notest.patch b/chromium-72.0.3626.121-notest.patch deleted file mode 100644 index e8b7bf4..0000000 --- a/chromium-72.0.3626.121-notest.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-72.0.3626.121/chrome/test/data/webui_test_resources.grd.notest chromium-72.0.3626.121/chrome/test/data/webui_test_resources.grd ---- chromium-72.0.3626.121/chrome/test/data/webui_test_resources.grd.notest 2019-03-10 13:54:17.843583876 -0400 -+++ chromium-72.0.3626.121/chrome/test/data/webui_test_resources.grd 2019-03-10 14:03:29.302063637 -0400 -@@ -8,7 +8,6 @@ - - - -- - - - diff --git a/chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch b/chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch deleted file mode 100644 index f8abb52..0000000 --- a/chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch +++ /dev/null @@ -1,48 +0,0 @@ -diff -up chromium-73.0.3683.75/build/toolchain/linux/BUILD.gn.disable-ndnpc chromium-73.0.3683.75/build/toolchain/linux/BUILD.gn ---- chromium-73.0.3683.75/build/toolchain/linux/BUILD.gn.disable-ndnpc 2019-03-13 10:29:00.331009643 -0400 -+++ chromium-73.0.3683.75/build/toolchain/linux/BUILD.gn 2019-03-13 10:29:28.344458746 -0400 -@@ -31,7 +31,7 @@ gcc_toolchain("arm64") { - ld = cxx - readelf = "${toolprefix}readelf" - nm = "${toolprefix}nm" -- extra_cppflags = "-fno-delete-null-pointer-checks" -+ extra_cppflags = "" - - toolchain_args = { - current_cpu = "arm64" -@@ -50,7 +50,7 @@ gcc_toolchain("arm") { - ld = cxx - readelf = "${toolprefix}readelf" - nm = "${toolprefix}nm" -- extra_cppflags = "-fno-delete-null-pointer-checks" -+ extra_cppflags = "" - - toolchain_args = { - current_cpu = "arm" -@@ -101,7 +101,7 @@ gcc_toolchain("x86") { - nm = "nm" - ar = "ar" - ld = cxx -- extra_cppflags = "-fno-delete-null-pointer-checks -g1" -+ extra_cppflags = "-g1" - - # Output linker map files for binary size analysis. - enable_linker_map = true -@@ -155,7 +155,7 @@ gcc_toolchain("x64") { - nm = "nm" - ar = "ar" - ld = cxx -- extra_cppflags = "-fno-delete-null-pointer-checks" -+ extra_cppflags = "" - - # Output linker map files for binary size analysis. - enable_linker_map = true -@@ -190,7 +190,7 @@ gcc_toolchain("mipsel") { - ld = cxx - readelf = "${toolprefix}readelf" - nm = "${toolprefix}nm" -- extra_cppflags = "-fno-delete-null-pointer-checks" -+ extra_cppflags = "" - - toolchain_args = { - cc_wrapper = "" diff --git a/chromium-75.0.3770.100-git00281713.patch b/chromium-75.0.3770.100-git00281713.patch deleted file mode 100644 index 4356435..0000000 --- a/chromium-75.0.3770.100-git00281713.patch +++ /dev/null @@ -1,34 +0,0 @@ -diff -up chromium-75.0.3770.100/chrome/browser/performance_manager/chrome_content_browser_client_performance_manager_part.cc.git00281713 chromium-75.0.3770.100/chrome/browser/performance_manager/chrome_content_browser_client_performance_manager_part.cc ---- chromium-75.0.3770.100/chrome/browser/performance_manager/chrome_content_browser_client_performance_manager_part.cc.git00281713 2019-07-02 09:10:38.951369854 -0400 -+++ chromium-75.0.3770.100/chrome/browser/performance_manager/chrome_content_browser_client_performance_manager_part.cc 2019-07-02 09:11:59.864642942 -0400 -@@ -12,13 +12,19 @@ - #include "chrome/browser/performance_manager/graph/process_node_impl.h" - #include "chrome/browser/performance_manager/performance_manager.h" - #include "chrome/browser/performance_manager/render_process_user_data.h" -+#include "content/public/browser/render_process_host.h" - #include "services/resource_coordinator/public/mojom/coordination_unit.mojom.h" - - namespace { - - void BindProcessNode( -- content::RenderProcessHost* render_process_host, -+ int render_process_host_id, - resource_coordinator::mojom::ProcessCoordinationUnitRequest request) { -+ content::RenderProcessHost* render_process_host = -+ content::RenderProcessHost::FromID(render_process_host_id); -+ if (!render_process_host) -+ return; -+ - performance_manager::RenderProcessUserData* user_data = - performance_manager::RenderProcessUserData::GetForRenderProcessHost( - render_process_host); -@@ -47,8 +53,7 @@ void ChromeContentBrowserClientPerforman - blink::AssociatedInterfaceRegistry* associated_registry, - content::RenderProcessHost* render_process_host) { - registry->AddInterface( -- base::BindRepeating(&BindProcessNode, -- base::Unretained(render_process_host)), -+ base::BindRepeating(&BindProcessNode, render_process_host->GetID()), - base::SequencedTaskRunnerHandle::Get()); - - // Ideally this would strictly be a "CreateForRenderProcess", but when a diff --git a/chromium-75.0.3770.80-SIOCGSTAMP.patch b/chromium-75.0.3770.80-SIOCGSTAMP.patch deleted file mode 100644 index 0ef1e7f..0000000 --- a/chromium-75.0.3770.80-SIOCGSTAMP.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -up chromium-75.0.3770.80/third_party/webrtc/rtc_base/physical_socket_server.h.SIOCGSTAMP chromium-75.0.3770.80/third_party/webrtc/rtc_base/physical_socket_server.h ---- chromium-75.0.3770.80/third_party/webrtc/rtc_base/physical_socket_server.h.SIOCGSTAMP 2019-06-06 10:04:57.050403639 -0400 -+++ chromium-75.0.3770.80/third_party/webrtc/rtc_base/physical_socket_server.h 2019-06-06 10:06:03.975121688 -0400 -@@ -16,6 +16,11 @@ - #define WEBRTC_USE_EPOLL 1 - #endif - -+// for SIOCGSTAMP in Linux 5.2 -+#if defined(WEBRTC_LINUX) -+#include -+#endif -+ - #include - #include - #include diff --git a/chromium-75.0.3770.80-aeed4d-gcc-dcheck_ne-fix.patch b/chromium-75.0.3770.80-aeed4d-gcc-dcheck_ne-fix.patch deleted file mode 100644 index 2a8ac2f..0000000 --- a/chromium-75.0.3770.80-aeed4d-gcc-dcheck_ne-fix.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -up chromium-75.0.3770.80/cc/scheduler/compositor_frame_reporting_controller.cc.gcc-dcheck_ne-fix chromium-75.0.3770.80/cc/scheduler/compositor_frame_reporting_controller.cc ---- chromium-75.0.3770.80/cc/scheduler/compositor_frame_reporting_controller.cc.gcc-dcheck_ne-fix 2019-06-06 12:42:27.431575032 -0400 -+++ chromium-75.0.3770.80/cc/scheduler/compositor_frame_reporting_controller.cc 2019-06-06 12:43:05.692848409 -0400 -@@ -31,8 +31,8 @@ void CompositorFrameReportingController: - - 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, diff --git a/chromium-75.0.3770.80-gcc-no-assume.patch b/chromium-75.0.3770.80-gcc-no-assume.patch deleted file mode 100644 index 0bbb08f..0000000 --- a/chromium-75.0.3770.80-gcc-no-assume.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -up chromium-75.0.3770.80/third_party/angle/src/common/debug.h.gcc-assume chromium-75.0.3770.80/third_party/angle/src/common/debug.h ---- chromium-75.0.3770.80/third_party/angle/src/common/debug.h.gcc-assume 2019-06-06 17:38:01.876631704 -0400 -+++ chromium-75.0.3770.80/third_party/angle/src/common/debug.h 2019-06-07 09:30:06.205446547 -0400 -@@ -248,7 +248,7 @@ std::ostream &FmtHex(std::ostream &os, T - # define EVENT(message, ...) (void(0)) - #endif - --#if defined(COMPILER_GCC) || defined(__clang__) -+#if defined(__GNUC__) - # define ANGLE_CRASH() __builtin_trap() - #else - # define ANGLE_CRASH() ((void)(*(volatile char *)0 = 0)), __assume(0) -@@ -336,7 +336,7 @@ std::ostream &FmtHex(std::ostream &os, T - # 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") diff --git a/chromium-75.0.3770.80-revert-daff6b.patch b/chromium-75.0.3770.80-revert-daff6b.patch deleted file mode 100644 index f996898..0000000 --- a/chromium-75.0.3770.80-revert-daff6b.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -up chromium-75.0.3770.80/components/omnibox/browser/autocomplete_match.cc.revert-daff6b chromium-75.0.3770.80/components/omnibox/browser/autocomplete_match.cc ---- chromium-75.0.3770.80/components/omnibox/browser/autocomplete_match.cc.revert-daff6b 2019-06-06 14:54:13.819190586 -0400 -+++ chromium-75.0.3770.80/components/omnibox/browser/autocomplete_match.cc 2019-06-06 14:54:31.892839991 -0400 -@@ -154,8 +154,7 @@ AutocompleteMatch::AutocompleteMatch(con - additional_info(match.additional_info), - duplicate_matches(match.duplicate_matches) {} - --AutocompleteMatch::AutocompleteMatch(AutocompleteMatch&& match) noexcept = -- default; -+AutocompleteMatch::AutocompleteMatch(AutocompleteMatch&& match) = default; - - AutocompleteMatch::~AutocompleteMatch() { - } diff --git a/chromium-76.0.3809.100-libusb_interrupt_event_handler.patch b/chromium-76.0.3809.100-libusb_interrupt_event_handler.patch deleted file mode 100644 index 690f0f9..0000000 --- a/chromium-76.0.3809.100-libusb_interrupt_event_handler.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -up chromium-76.0.3809.100/services/device/usb/usb_context.cc.modern-libusbx chromium-76.0.3809.100/services/device/usb/usb_context.cc ---- chromium-76.0.3809.100/services/device/usb/usb_context.cc.modern-libusbx 2019-08-12 15:40:49.034170484 +0200 -+++ chromium-76.0.3809.100/services/device/usb/usb_context.cc 2019-08-12 15:41:23.775558867 +0200 -@@ -58,7 +58,11 @@ void UsbContext::UsbEventHandler::Run() - - void UsbContext::UsbEventHandler::Stop() { - base::subtle::Release_Store(&running_, 0); -+#ifdef LIBUSB_API_VERSION >= 0x01000105 -+ libusb_interrupt_event_handler(context_); -+#else - libusb_interrupt_handle_event(context_); -+#endif - } - - UsbContext::UsbContext(PlatformUsbContext context) : context_(context) { diff --git a/chromium-77.0.3865.75-boolfix.patch b/chromium-77.0.3865.75-boolfix.patch deleted file mode 100644 index c836214..0000000 --- a/chromium-77.0.3865.75-boolfix.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff -up chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_ptr_info.h ---- chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix 2019-09-09 23:55:20.000000000 +0200 -+++ chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_ptr_info.h 2019-09-12 15:43:30.025360946 +0200 -@@ -45,7 +45,7 @@ class AssociatedInterfacePtrInfo { - - bool is_valid() const { return handle_.is_valid(); } - -- explicit operator bool() const { return handle_.is_valid(); } -+ explicit operator bool() const { return (bool) handle_.is_valid(); } - - ScopedInterfaceEndpointHandle PassHandle() { - return std::move(handle_); -diff -up chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_request.h.boolfix chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_request.h ---- chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_request.h.boolfix 2019-09-09 23:55:20.000000000 +0200 -+++ chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_request.h 2019-09-12 15:43:30.025360946 +0200 -@@ -51,7 +51,7 @@ class AssociatedInterfaceRequest { - // handle. - 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(); } - - ScopedInterfaceEndpointHandle PassHandle() { return std::move(handle_); } - diff --git a/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch b/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch deleted file mode 100644 index 920a53e..0000000 --- a/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -up chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h.nogccoptmath chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h ---- chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h.nogccoptmath 2019-09-13 14:17:22.726738088 +0200 -+++ chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h 2019-09-13 14:31:37.686898493 +0200 -@@ -23,9 +23,8 @@ - // Where available use builtin math overflow support on Clang and GCC. - #elif !defined(__native_client__) && \ - ((defined(__clang__) && \ -- ((__clang_major__ > 3) || \ -- (__clang_major__ == 3 && __clang_minor__ >= 4))) || \ -- (defined(__GNUC__) && __GNUC__ >= 5)) -+ (__clang_major__ > 3) || \ -+ (__clang_major__ == 3 && __clang_minor__ >= 4))) - #include "base/numerics/safe_math_clang_gcc_impl.h" - #define BASE_HAS_OPTIMIZED_SAFE_MATH (1) - #else diff --git a/chromium-77.0.3865.75-gcc5-r3.patch b/chromium-77.0.3865.75-gcc5-r3.patch deleted file mode 100644 index 34b858a..0000000 --- a/chromium-77.0.3865.75-gcc5-r3.patch +++ /dev/null @@ -1,36 +0,0 @@ -diff -up chromium-77.0.3865.75/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 chromium-77.0.3865.75/gpu/ipc/common/mailbox_struct_traits.h ---- chromium-77.0.3865.75/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 2019-09-09 23:55:18.000000000 +0200 -+++ chromium-77.0.3865.75/gpu/ipc/common/mailbox_struct_traits.h 2019-09-12 10:13:16.710206500 +0200 -@@ -15,7 +15,7 @@ namespace mojo { - template <> - struct StructTraits { - static base::span name(const gpu::Mailbox& mailbox) { -- return mailbox.name; -+ return base::make_span(mailbox.name); - } - static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out); - }; -diff -up chromium-77.0.3865.75/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 chromium-77.0.3865.75/services/viz/public/cpp/compositing/quads_struct_traits.h ---- chromium-77.0.3865.75/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 2019-09-09 23:55:23.000000000 +0200 -+++ chromium-77.0.3865.75/services/viz/public/cpp/compositing/quads_struct_traits.h 2019-09-12 10:13:16.710206500 +0200 -@@ -391,7 +391,7 @@ struct StructTraits vertex_opacity(const viz::DrawQuad& input) { - const viz::TextureDrawQuad* quad = - viz::TextureDrawQuad::MaterialCast(&input); -- return quad->vertex_opacity; -+ return base::make_span(quad->vertex_opacity); - } - - static bool y_flipped(const viz::DrawQuad& input) { -diff -up chromium-77.0.3865.75/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 chromium-77.0.3865.75/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc ---- chromium-77.0.3865.75/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 2019-09-12 10:13:16.711206509 +0200 -+++ chromium-77.0.3865.75/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2019-09-12 15:41:15.300158849 +0200 -@@ -10,7 +10,7 @@ - - #include "modules/audio_processing/aec3/aec_state.h" - --#include -+#include - - #include - #include diff --git a/chromium.spec b/chromium.spec index 4fa3d44..e426495 100644 --- a/chromium.spec +++ b/chromium.spec @@ -168,114 +168,61 @@ Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) ### Chromium Fedora Patches ### -Patch0: chromium-67.0.3396.62-gcc5.patch -Patch1: chromium-45.0.2454.101-linux-path-max.patch -Patch2: chromium-55.0.2883.75-addrfix.patch -Patch3: chromium-72.0.3626.121-notest.patch -# Use libusb_interrupt_event_handler from current libusbx (1.0.21-0.1.git448584a) -Patch4: chromium-76.0.3809.100-libusb_interrupt_event_handler.patch -# Use PIE in the Linux sandbox (from openSUSE via Russian Fedora) -Patch6: chromium-70.0.3538.67-sandbox-pie.patch +Patch0: chromium-70.0.3538.67-sandbox-pie.patch # Use /etc/chromium for master_prefs -Patch7: chromium-68.0.3440.106-master-prefs-path.patch +Patch1: chromium-68.0.3440.106-master-prefs-path.patch # Use gn system files -Patch8: chromium-67.0.3396.62-gn-system.patch -# Fix issue where timespec is not defined when sys/stat.h is included. -Patch9: chromium-53.0.2785.92-boringssl-time-fix.patch -# I wouldn't have to do this if there was a standard way to append extra compiler flags -Patch10: chromium-63.0.3289.84-nullfix.patch -# Add explicit includedir for jpeglib.h -Patch11: chromium-54.0.2840.59-jpeg-include-dir.patch -# On i686, pass --no-keep-memory --reduce-memory-overheads to ld. -Patch12: chromium-59.0.3071.86-i686-ld-memory-tricks.patch +Patch2: chromium-67.0.3396.62-gn-system.patch # Revert https://chromium.googlesource.com/chromium/src/+/b794998819088f76b4cf44c8db6940240c563cf4%5E%21/#F0 # https://bugs.chromium.org/p/chromium/issues/detail?id=712737 # https://bugzilla.redhat.com/show_bug.cgi?id=1446851 -Patch13: chromium-58.0.3029.96-revert-b794998819088f76b4cf44c8db6940240c563cf4.patch -# Correctly compile the stdatomic.h in ffmpeg with gcc 4.8 -Patch14: chromium-64.0.3282.119-ffmpeg-stdatomic.patch -# Nacl can't die soon enough -Patch15: chromium-66.0.3359.117-system-clang.patch +Patch3: chromium-58.0.3029.96-revert-b794998819088f76b4cf44c8db6940240c563cf4.patch # Do not prefix libpng functions -Patch16: chromium-60.0.3112.78-no-libpng-prefix.patch +Patch4: chromium-60.0.3112.78-no-libpng-prefix.patch # Do not mangle libjpeg -Patch17: chromium-60.0.3112.78-jpeg-nomangle.patch +Patch5: chromium-60.0.3112.78-jpeg-nomangle.patch # Do not mangle zlib -Patch18: chromium-77.0.3865.75-no-zlib-mangle.patch -# Fix libavutil include pathing to find arch specific timer.h -# For some reason, this only fails on aarch64. No idea why. -Patch19: chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch -# from gentoo -Patch20: chromium-77.0.3865.75-gcc-no-opt-safe-math.patch -# From gentoo -Patch21: chromium-77.0.3865.75-gcc5-r3.patch -# To use round with gcc, you need to #include -Patch22: chromium-65.0.3325.146-gcc-round-fix.patch -# Include proper headers to invoke memcpy() -Patch23: chromium-65.0.3325.146-memcpy-fix.patch -# ../../mojo/public/cpp/bindings/associated_interface_ptr_info.h:48:43: error: cannot convert 'const mojo::ScopedInterfaceEndpointHandle' to 'bool' in return -Patch24: chromium-77.0.3865.75-boolfix.patch -# From Debian -Patch25: chromium-71.0.3578.98-skia-aarch64-buildfix.patch +Patch6: chromium-77.0.3865.75-no-zlib-mangle.patch # Do not use unrar code, it is non-free -Patch27: chromium-73.0.3683.75-norar.patch -# Upstream GCC fixes -Patch28: chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch -# Add "Fedora" to the user agent string -Patch29: chromium-77.0.3865.75-fedora-user-agent.patch -# Try to fix version.py for Rawhide -Patch30: chromium-71.0.3578.98-py2-bootstrap.patch -# Fix default on redeclaration error -# https://chromium.googlesource.com/chromium/src/+/122692ccee62223f266a988c575ae687e3f4c056%5E%21/#F0 -Patch31: chromium-68.0.3440.106-fix-default-on-redeclaration.patch +Patch7: chromium-73.0.3683.75-norar.patch # Use Gentoo's Widevine hack # https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-widevine-r3.patch -Patch32: chromium-71.0.3578.98-widevine-r3.patch -# Do not require sysroot -# Forget about trying to make libc++ -# BUILD SANELY PLEASE -Patch33: chromium-69.0.3497.81-build-sanely-please.patch +Patch8: chromium-71.0.3578.98-widevine-r3.patch # Disable fontconfig cache magic that breaks remoting -Patch34: chromium-70.0.3538.67-disable-fontconfig-cache-magic.patch -# Fix aarch64 build against latest linux kernel headers -Patch35: chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch +Patch9: chromium-70.0.3538.67-disable-fontconfig-cache-magic.patch # drop rsp clobber, which breaks gcc9 (thanks to Jeff Law) -Patch36: chromium-71.0.3578.98-gcc9-drop-rsp-clobber.patch +Patch10: chromium-71.0.3578.98-gcc9-drop-rsp-clobber.patch # Try to load widevine from other places -Patch37: chromium-widevine-other-locations.patch -# Disable -fno-delete-null-pointer-checks -Patch38: chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch -# Linux 5.2 defines SIOCGSTAMP in a slightly different way, so we need to teach chromium where to find it -Patch41: chromium-75.0.3770.80-SIOCGSTAMP.patch -# Revert https://chromium.googlesource.com/chromium/src/+/daff6b66faae53a0cefb88987c9ff4843629b728%5E%21/#F0 -# It might make clang happy but it breaks gcc. F*** clang. -Patch43: chromium-75.0.3770.80-revert-daff6b.patch +Patch11: chromium-widevine-other-locations.patch +# Try to fix version.py for Rawhide +Patch12: chromium-71.0.3578.98-py2-bootstrap.patch +# Add "Fedora" to the user agent string +Patch13: chromium-77.0.3865.75-fedora-user-agent.patch + # rename function to avoid conflict with rawhide glibc "gettid()" -Patch45: chromium-75.0.3770.80-grpc-gettid-fix.patch +Patch50: chromium-75.0.3770.80-grpc-gettid-fix.patch # In GCC one can't use alignas() for exported classes # https://chromium.googlesource.com/chromium/src.git/+/8148fd96ae04a1150a9c6012634dcd2a7335f87a -Patch61: chromium-76.0.3809.100-gcc-no-alignas-and-export.patch +Patch51: chromium-76.0.3809.100-gcc-no-alignas-and-export.patch # Needs to be submitted.. -Patch62: chromium-76.0.3809.100-gcc-remoting-constexpr.patch +Patch52: chromium-76.0.3809.100-gcc-remoting-constexpr.patch # Needs to be submitted.. (ugly hack, needs to be added properly to GN files) -Patch63: chromium-76.0.3809.100-vtable-symbol-undefined.patch +Patch53: chromium-76.0.3809.100-vtable-symbol-undefined.patch # https://chromium.googlesource.com/chromium/src.git/+/3c9720245e440c4b7222f8348d2a2a3c25e098ae -Patch64: chromium-77.0.3865.75-certificate-transparency.patch +Patch54: chromium-77.0.3865.75-certificate-transparency.patch # https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-unbundle-zlib.patch -Patch65: chromium-77.0.3865.75-unbundle-zlib.patch +Patch55: chromium-77.0.3865.75-unbundle-zlib.patch # Needs to be submitted.. -Patch66: chromium-77.0.3865.75-gcc-include-memory.patch -# Needs to be submitted.. -Patch67: chromium-77.0.3865.75-base-gcc-no-alignas.patch +Patch56: chromium-77.0.3865.75-gcc-include-memory.patch +# https://chromium.googlesource.com/chromium/src/+/6b633c4b14850df376d5cec571699018772f358e +Patch57: chromium-77.0.3865.75-base-gcc-no-alignas.patch # https://chromium.googlesource.com/chromium/src/+/27e25336b8316ff3ec4e464058682ed85801fd06 -Patch68: chromium-77.0.3865.75-harfbuzz-subset.patch +Patch58: chromium-77.0.3865.75-harfbuzz-subset.patch # https://chromium.googlesource.com/chromium/src.git/+/f08cb0022527081c078e8b96062e6c9b4fbda151 -Patch69: chromium-77.0.3865.75-gcc-abstract-class.patch +Patch59: chromium-77.0.3865.75-gcc-abstract-class.patch # https://chromium.googlesource.com/chromium/src/+/5baf7df7f4c5971dab552897eeef94b194650ce5 -Patch70: chromium-77.0.3865.75-missing-limits.patch +Patch60: chromium-77.0.3865.75-missing-limits.patch -# Apply these changes to work around EPEL7 compiler issues -Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch # Use lstdc++ on EPEL7 only Patch101: chromium-75.0.3770.100-epel7-stdc++.patch # el7 only patch @@ -766,60 +713,40 @@ udev. %setup -q -n chromium-%{version} ### Chromium Fedora Patches ### -%patch0 -p1 -b .gcc5 -%patch1 -p1 -b .pathmax -%patch2 -p1 -b .addrfix -%patch3 -p1 -b .notest -%patch4 -p1 -b .modern-libusbx -%patch6 -p1 -b .sandboxpie -%patch7 -p1 -b .etc -%patch8 -p1 -b .gnsystem -%patch9 -p1 -b .timefix -%patch10 -p1 -b .nullfix -%patch11 -p1 -b .jpegfix -%patch12 -p1 -b .ldmemory -%patch13 -p1 -b .revert -%patch14 -p1 -b .ffmpeg-stdatomic -%patch15 -p1 -b .system-clang -%patch16 -p1 -b .noprefix -%patch17 -p1 -b .nomangle -%patch18 -p1 -b .nozmangle -%patch19 -p1 -b .pathfix -%patch20 -p1 -b .nogccoptmath -%patch21 -p1 -b .gcc5-r3 -%patch22 -p1 -b .gcc-round-fix -%patch23 -p1 -b .memcpyfix -%patch24 -p1 -b .boolfix -#%patch25 -p1 -b .aarch64fix -%patch27 -p1 -b .nounrar -%patch28 -p1 -b .gcc-cpolicyprovider -%patch29 -p1 -b .fedora-user-agent -%patch30 -p1 -b .py2 -%patch31 -p1 -b .fix-default-redeclaration -%patch32 -p1 -b .wvhack -%patch33 -p1 -b .sanebuild -%patch34 -p1 -b .nofc -%patch35 -p1 -b .aarch64-new-stat -%patch36 -p1 -b .gcc9 -%patch37 -p1 -b .widevine-other-locations -%patch38 -p1 -b .disable-ndnpc -%patch41 -p1 -b .SIOCGSTAMP -%patch43 -p1 -b .revert-daff6b -%patch45 -p1 -b .gettid-fix -%patch61 -p1 -b .gcc-no-alignas-and-export -%patch62 -p1 -b .gcc-remoting-constexpr -%patch63 -p1 -b .vtable-symbol-undefined -%patch64 -p1 -b .certificate-transparency -%patch65 -p1 -b .unbundle-zlib -%patch66 -p1 -b .gcc-include-memory -%patch67 -p1 -b .base-gcc-no-alignas -%patch68 -p1 -b .harfbuzz-subset -%patch69 -p1 -b .gcc-abstract-class -%patch70 -p1 -b .missing-limits +%patch0 -p1 -b .sandboxpie +%patch1 -p1 -b .etc +%patch2 -p1 -b .gnsystem +%patch3 -p1 -b .revert +%patch4 -p1 -b .nolibpngprefix +%patch5 -p1 -b .nolibjpegmangle +%patch6 -p1 -b .nozlibmangle +%patch7 -p1 -b .nounrar +%patch8 -p1 -b .widevine-hack +%patch9 -p1 -b .nofontconfigcache +%patch10 -p1 -b .gcc9 +%patch11 -p1 -b .widevine-other-locations +%patch12 -p1 -b .py2 + +# Short term fixes (usually gcc and backports) +%patch50 -p1 -b .gettid-fix +%patch51 -p1 -b .gcc-no-alignas-and-export +%patch52 -p1 -b .gcc-remoting-constexpr +%patch53 -p1 -b .vtable-symbol-undefined +%patch54 -p1 -b .certificate-transparency +%patch55 -p1 -b .unbundle-zlib +%patch56 -p1 -b .gcc-include-memory +%patch57 -p1 -b .base-gcc-no-alignas +%patch58 -p1 -b .harfbuzz-subset +%patch59 -p1 -b .gcc-abstract-class +%patch60 -p1 -b .missing-limits + +# Fedora branded user agent +%if 0%{?fedora} +%patch13 -p1 -b .fedora-user-agent +%endif # EPEL specific patches %if 0%{?rhel} == 7 -%patch100 -p1 -b .kmaxskip %patch101 -p1 -b .epel7 %patch102 -p1 -b .el7-noexcept %endif @@ -1298,6 +1225,11 @@ sed -i.orig -e 's/getenv("CHROME_VERSION_EXTRA")/"Fedora Project"/' $FILE . /opt/rh/devtoolset-%{dts_version}/enable %endif +# Decrease the debuginfo verbosity, so it compiles in koji +%ifarch %{ix86} +%global optflags %(echo %{optflags} | sed 's/-g /-g1 /') +%endif + echo # Now do the full browser %if 0%{freeworld} From df0bca62fb678ffb99b862f69343ab7b40629316 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 20 Sep 2019 09:57:18 +0200 Subject: [PATCH 0562/1449] Remove the unused patches or patches that are not needed anymore Also replace some patches with changes in the SPEC file. --- chromium-45.0.2454.101-linux-path-max.patch | 44 ---- ...mium-53.0.2785.92-boringssl-time-fix.patch | 11 - chromium-54.0.2840.59-jpeg-include-dir.patch | 11 - chromium-55.0.2883.75-addrfix.patch | 11 - ...m-59.0.3071.86-i686-ld-memory-tricks.patch | 12 -- ...113-libavutil-timer-include-path-fix.patch | 21 -- ...mium-62.0.3202.62-kmaxskip-constexpr.patch | 12 -- chromium-63.0.3289.84-nullfix.patch | 43 ---- chromium-64.0.3282.119-ffmpeg-stdatomic.patch | 17 -- chromium-65.0.3325.146-gcc-round-fix.patch | 12 -- chromium-65.0.3325.146-memcpy-fix.patch | 12 -- ...-declare-ConfigurationPolicyProvider.patch | 18 -- chromium-66.0.3359.117-system-clang.patch | 12 -- chromium-67.0.3396.62-gcc5.patch | 12 -- ...440.106-fix-default-on-redeclaration.patch | 30 --- ...ium-69.0.3497.81-build-sanely-please.patch | 33 --- ...0.3538.77-aarch64-arch-want-new-stat.patch | 12 -- ...m-71.0.3578.98-skia-aarch64-buildfix.patch | 21 -- chromium-72.0.3626.121-notest.patch | 11 - ...sable-fno-delete-null-pointer-checks.patch | 48 ----- chromium-75.0.3770.100-git00281713.patch | 34 --- chromium-75.0.3770.80-SIOCGSTAMP.patch | 15 -- ...5.0.3770.80-aeed4d-gcc-dcheck_ne-fix.patch | 14 -- chromium-75.0.3770.80-gcc-no-assume.patch | 21 -- chromium-75.0.3770.80-revert-daff6b.patch | 13 -- ...9.100-libusb_interrupt_event_handler.patch | 15 -- chromium-77.0.3865.75-boolfix.patch | 24 --- ...um-77.0.3865.75-gcc-no-opt-safe-math.patch | 15 -- chromium-77.0.3865.75-gcc5-r3.patch | 36 ---- chromium.spec | 196 ++++++------------ 30 files changed, 64 insertions(+), 722 deletions(-) delete mode 100644 chromium-45.0.2454.101-linux-path-max.patch delete mode 100644 chromium-53.0.2785.92-boringssl-time-fix.patch delete mode 100644 chromium-54.0.2840.59-jpeg-include-dir.patch delete mode 100644 chromium-55.0.2883.75-addrfix.patch delete mode 100644 chromium-59.0.3071.86-i686-ld-memory-tricks.patch delete mode 100644 chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch delete mode 100644 chromium-62.0.3202.62-kmaxskip-constexpr.patch delete mode 100644 chromium-63.0.3289.84-nullfix.patch delete mode 100644 chromium-64.0.3282.119-ffmpeg-stdatomic.patch delete mode 100644 chromium-65.0.3325.146-gcc-round-fix.patch delete mode 100644 chromium-65.0.3325.146-memcpy-fix.patch delete mode 100644 chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch delete mode 100644 chromium-66.0.3359.117-system-clang.patch delete mode 100644 chromium-67.0.3396.62-gcc5.patch delete mode 100644 chromium-68.0.3440.106-fix-default-on-redeclaration.patch delete mode 100644 chromium-69.0.3497.81-build-sanely-please.patch delete mode 100644 chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch delete mode 100644 chromium-71.0.3578.98-skia-aarch64-buildfix.patch delete mode 100644 chromium-72.0.3626.121-notest.patch delete mode 100644 chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch delete mode 100644 chromium-75.0.3770.100-git00281713.patch delete mode 100644 chromium-75.0.3770.80-SIOCGSTAMP.patch delete mode 100644 chromium-75.0.3770.80-aeed4d-gcc-dcheck_ne-fix.patch delete mode 100644 chromium-75.0.3770.80-gcc-no-assume.patch delete mode 100644 chromium-75.0.3770.80-revert-daff6b.patch delete mode 100644 chromium-76.0.3809.100-libusb_interrupt_event_handler.patch delete mode 100644 chromium-77.0.3865.75-boolfix.patch delete mode 100644 chromium-77.0.3865.75-gcc-no-opt-safe-math.patch delete mode 100644 chromium-77.0.3865.75-gcc5-r3.patch diff --git a/chromium-45.0.2454.101-linux-path-max.patch b/chromium-45.0.2454.101-linux-path-max.patch deleted file mode 100644 index 3146349..0000000 --- a/chromium-45.0.2454.101-linux-path-max.patch +++ /dev/null @@ -1,44 +0,0 @@ -diff -up chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/path.h.pathmax chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/path.h ---- chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/path.h.pathmax 2015-10-07 11:26:11.813477839 -0400 -+++ chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/path.h 2015-10-07 11:26:40.845845054 -0400 -@@ -12,6 +12,11 @@ - - #include "sdk_util/macros.h" - -+/* Needed for PATH_MAX */ -+#ifndef PATH_MAX -+#define PATH_MAX 4096 -+#endif -+ - namespace nacl_io { - - class Path { -diff -up chromium-45.0.2454.101/native_client/src/untrusted/nacl/getcwd.c.pathmax chromium-45.0.2454.101/native_client/src/untrusted/nacl/getcwd.c ---- chromium-45.0.2454.101/native_client/src/untrusted/nacl/getcwd.c.pathmax 2015-08-22 15:02:08.000000000 -0400 -+++ chromium-45.0.2454.101/native_client/src/untrusted/nacl/getcwd.c 2015-10-07 10:58:56.172018783 -0400 -@@ -11,6 +11,10 @@ - - #include - #include -+/* Needed for PATH_MAX */ -+#ifndef PATH_MAX -+#define PATH_MAX 4096 -+#endif - #include - #include - #include -diff -up chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/syscalls/realpath.c.pathmax chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/syscalls/realpath.c ---- chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/syscalls/realpath.c.pathmax 2015-10-09 10:57:38.424348662 -0400 -+++ chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/syscalls/realpath.c 2015-10-09 10:57:51.541059938 -0400 -@@ -13,6 +13,11 @@ - - #include "sdk_util/macros.h" - -+/* Needed for PATH_MAX */ -+#ifndef PATH_MAX -+#define PATH_MAX 4096 -+#endif -+ - EXTERN_C_BEGIN - - #if defined(__native_client__) diff --git a/chromium-53.0.2785.92-boringssl-time-fix.patch b/chromium-53.0.2785.92-boringssl-time-fix.patch deleted file mode 100644 index 8d67957..0000000 --- a/chromium-53.0.2785.92-boringssl-time-fix.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-53.0.2785.92/third_party/boringssl/src/crypto/x509/by_dir.c.timefix chromium-53.0.2785.92/third_party/boringssl/src/crypto/x509/by_dir.c ---- chromium-53.0.2785.92/third_party/boringssl/src/crypto/x509/by_dir.c.timefix 2016-09-06 15:20:06.094396255 -0400 -+++ chromium-53.0.2785.92/third_party/boringssl/src/crypto/x509/by_dir.c 2016-09-06 15:20:16.893187930 -0400 -@@ -56,6 +56,7 @@ - * [including the GNU Public Licence.] */ - - #include -+#include - #include - #include - diff --git a/chromium-54.0.2840.59-jpeg-include-dir.patch b/chromium-54.0.2840.59-jpeg-include-dir.patch deleted file mode 100644 index f96a56c..0000000 --- a/chromium-54.0.2840.59-jpeg-include-dir.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-54.0.2840.59/third_party/BUILD.gn.jpegfix chromium-54.0.2840.59/third_party/BUILD.gn ---- chromium-54.0.2840.59/third_party/BUILD.gn.jpegfix 2016-10-17 11:45:44.995340495 -0400 -+++ chromium-54.0.2840.59/third_party/BUILD.gn 2016-10-17 11:46:35.254289872 -0400 -@@ -20,6 +20,7 @@ declare_args() { - config("system_libjpeg_config") { - libs = [ "jpeg" ] - defines = [ "USE_SYSTEM_LIBJPEG" ] -+ include_dirs = [ "/usr/include/" ] - } - - config("libjpeg_turbo_config") { diff --git a/chromium-55.0.2883.75-addrfix.patch b/chromium-55.0.2883.75-addrfix.patch deleted file mode 100644 index 00c214c..0000000 --- a/chromium-55.0.2883.75-addrfix.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-55.0.2883.75/third_party/boringssl/BUILD.gn.addrfix chromium-55.0.2883.75/third_party/boringssl/BUILD.gn ---- chromium-55.0.2883.75/third_party/boringssl/BUILD.gn.addrfix 2016-12-12 15:30:27.727834891 -0500 -+++ chromium-55.0.2883.75/third_party/boringssl/BUILD.gn 2016-12-12 15:30:53.095709352 -0500 -@@ -24,6 +24,7 @@ config("internal_config") { - "BORINGSSL_IMPLEMENTATION", - "BORINGSSL_NO_STATIC_INITIALIZER", - "OPENSSL_SMALL", -+ "_POSIX_C_SOURCE=200112L", - ] - configs = [ - # TODO(davidben): Fix size_t truncations in BoringSSL. diff --git a/chromium-59.0.3071.86-i686-ld-memory-tricks.patch b/chromium-59.0.3071.86-i686-ld-memory-tricks.patch deleted file mode 100644 index 9dde4c5..0000000 --- a/chromium-59.0.3071.86-i686-ld-memory-tricks.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn.ldmemory chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn ---- chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn.ldmemory 2017-06-07 15:37:09.436616113 -0400 -+++ chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn 2017-06-07 15:38:04.508519102 -0400 -@@ -93,7 +93,7 @@ gcc_toolchain("x86") { - nm = "nm" - ar = "ar" - ld = cxx -- extra_cppflags = "-fno-delete-null-pointer-checks" -+ extra_cppflags = "-fno-delete-null-pointer-checks -g1" - - # Output linker map files for binary size analysis. - enable_linker_map = true diff --git a/chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch b/chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch deleted file mode 100644 index 7248825..0000000 --- a/chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -up chromium-60.0.3112.113/third_party/ffmpeg/libavutil/timer.h.pathfix chromium-60.0.3112.113/third_party/ffmpeg/libavutil/timer.h ---- chromium-60.0.3112.113/third_party/ffmpeg/libavutil/timer.h.pathfix 2017-08-25 15:29:12.143242471 -0400 -+++ chromium-60.0.3112.113/third_party/ffmpeg/libavutil/timer.h 2017-08-25 15:29:36.941835865 -0400 -@@ -39,13 +39,13 @@ - #include "log.h" - - #if ARCH_AARCH64 --# include "aarch64/timer.h" -+# include "libavutil/aarch64/timer.h" - #elif ARCH_ARM --# include "arm/timer.h" -+# include "libavutil/arm/timer.h" - #elif ARCH_PPC --# include "ppc/timer.h" -+# include "libavutil/ppc/timer.h" - #elif ARCH_X86 --# include "x86/timer.h" -+# include "libavutil/x86/timer.h" - #endif - - #if !defined(AV_READ_TIME) diff --git a/chromium-62.0.3202.62-kmaxskip-constexpr.patch b/chromium-62.0.3202.62-kmaxskip-constexpr.patch deleted file mode 100644 index d4f8250..0000000 --- a/chromium-62.0.3202.62-kmaxskip-constexpr.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-62.0.3202.62/cc/paint/paint_op_buffer.cc.kmaxskip chromium-62.0.3202.62/cc/paint/paint_op_buffer.cc ---- chromium-62.0.3202.62/cc/paint/paint_op_buffer.cc.kmaxskip 2017-10-18 10:00:28.503714392 -0400 -+++ chromium-62.0.3202.62/cc/paint/paint_op_buffer.cc 2017-10-18 10:00:43.153430212 -0400 -@@ -336,7 +336,7 @@ TYPES(M); - #undef TYPES - - const SkRect PaintOp::kUnsetRect = {SK_ScalarInfinity, 0, 0, 0}; --const size_t PaintOp::kMaxSkip; -+constexpr size_t PaintOp::kMaxSkip; - - std::string PaintOpTypeToString(PaintOpType type) { - switch (type) { diff --git a/chromium-63.0.3289.84-nullfix.patch b/chromium-63.0.3289.84-nullfix.patch deleted file mode 100644 index c66aff1..0000000 --- a/chromium-63.0.3289.84-nullfix.patch +++ /dev/null @@ -1,43 +0,0 @@ -diff -up chromium-63.0.3239.84/build/toolchain/linux/BUILD.gn.nullfix chromium-63.0.3239.84/build/toolchain/linux/BUILD.gn ---- chromium-63.0.3239.84/build/toolchain/linux/BUILD.gn.nullfix 2017-12-06 15:05:21.000000000 -0500 -+++ chromium-63.0.3239.84/build/toolchain/linux/BUILD.gn 2017-12-07 10:44:34.507207080 -0500 -@@ -31,6 +31,7 @@ gcc_toolchain("arm64") { - ld = cxx - readelf = "${toolprefix}readelf" - nm = "${toolprefix}nm" -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - toolchain_args = { - current_cpu = "arm64" -@@ -49,6 +50,7 @@ gcc_toolchain("arm") { - ld = cxx - readelf = "${toolprefix}readelf" - nm = "${toolprefix}nm" -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - toolchain_args = { - current_cpu = "arm" -@@ -99,6 +101,7 @@ gcc_toolchain("x86") { - nm = "nm" - ar = "ar" - ld = cxx -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - # Output linker map files for binary size analysis. - enable_linker_map = true -@@ -152,6 +155,7 @@ gcc_toolchain("x64") { - nm = "nm" - ar = "ar" - ld = cxx -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - # Output linker map files for binary size analysis. - enable_linker_map = true -@@ -186,6 +190,7 @@ gcc_toolchain("mipsel") { - ld = cxx - readelf = "${toolprefix}readelf" - nm = "${toolprefix}nm" -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - toolchain_args = { - cc_wrapper = "" diff --git a/chromium-64.0.3282.119-ffmpeg-stdatomic.patch b/chromium-64.0.3282.119-ffmpeg-stdatomic.patch deleted file mode 100644 index 64c5f26..0000000 --- a/chromium-64.0.3282.119-ffmpeg-stdatomic.patch +++ /dev/null @@ -1,17 +0,0 @@ -diff -up chromium-64.0.3282.119/third_party/ffmpeg/libavutil/cpu.c.ffmpeg-stdatomic chromium-64.0.3282.119/third_party/ffmpeg/libavutil/cpu.c ---- chromium-64.0.3282.119/third_party/ffmpeg/libavutil/cpu.c.ffmpeg-stdatomic 2018-01-25 11:55:57.880936815 -0500 -+++ chromium-64.0.3282.119/third_party/ffmpeg/libavutil/cpu.c 2018-01-25 11:57:18.456787888 -0500 -@@ -18,7 +18,13 @@ - - #include - #include -+// GCC 4.8 didn't have stdatomic, but was advertising it. -+// https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58016 -+#if !defined(__clang__) && defined(__GNUC__) && (__GNUC__ == 4 || (__GNUC__ == 4 && (__GNUC_MINOR__ == 8))) -+#include -+#else - #include -+#endif - - #include "attributes.h" - #include "cpu.h" diff --git a/chromium-65.0.3325.146-gcc-round-fix.patch b/chromium-65.0.3325.146-gcc-round-fix.patch deleted file mode 100644 index a29779d..0000000 --- a/chromium-65.0.3325.146-gcc-round-fix.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-65.0.3325.146/third_party/webrtc/p2p/base/port.cc.gcc-round-fix chromium-65.0.3325.146/third_party/webrtc/p2p/base/port.cc ---- chromium-65.0.3325.146/third_party/webrtc/p2p/base/port.cc.gcc-round-fix 2018-03-07 10:57:11.284376048 -0500 -+++ chromium-65.0.3325.146/third_party/webrtc/p2p/base/port.cc 2018-03-07 10:58:16.590742636 -0500 -@@ -10,7 +10,7 @@ - - #include "p2p/base/port.h" - --#include -+#include - - #include - #include diff --git a/chromium-65.0.3325.146-memcpy-fix.patch b/chromium-65.0.3325.146-memcpy-fix.patch deleted file mode 100644 index b2b2cd4..0000000 --- a/chromium-65.0.3325.146-memcpy-fix.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-65.0.3325.146/cc/paint/raw_memory_transfer_cache_entry.cc.memcpyfix chromium-65.0.3325.146/cc/paint/raw_memory_transfer_cache_entry.cc ---- chromium-65.0.3325.146/cc/paint/raw_memory_transfer_cache_entry.cc.memcpyfix 2018-03-07 11:04:14.690379817 -0500 -+++ chromium-65.0.3325.146/cc/paint/raw_memory_transfer_cache_entry.cc 2018-03-07 11:06:04.339878069 -0500 -@@ -3,7 +3,7 @@ - // found in the LICENSE file. - - #include "cc/paint/raw_memory_transfer_cache_entry.h" -- -+#include - #include - - namespace cc { diff --git a/chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch b/chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch deleted file mode 100644 index d5b19cf..0000000 --- a/chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch +++ /dev/null @@ -1,18 +0,0 @@ -diff -up chromium-66.0.3359.117/components/policy/core/browser/browser_policy_connector_base.h.gcc-cpolicyprovider chromium-66.0.3359.117/components/policy/core/browser/browser_policy_connector_base.h ---- chromium-66.0.3359.117/components/policy/core/browser/browser_policy_connector_base.h.gcc-cpolicyprovider 2018-04-25 16:33:40.872222779 -0400 -+++ chromium-66.0.3359.117/components/policy/core/browser/browser_policy_connector_base.h 2018-04-25 16:37:23.175883637 -0400 -@@ -11,13 +11,13 @@ - #include "base/callback_forward.h" - #include "base/macros.h" - #include "components/policy/core/browser/configuration_policy_handler_list.h" -+#include "components/policy/core/common/configuration_policy_provider.h" - #include "components/policy/core/common/schema.h" - #include "components/policy/core/common/schema_registry.h" - #include "components/policy/policy_export.h" - - namespace policy { - --class ConfigurationPolicyProvider; - class PolicyService; - class PolicyServiceImpl; - diff --git a/chromium-66.0.3359.117-system-clang.patch b/chromium-66.0.3359.117-system-clang.patch deleted file mode 100644 index e90dc58..0000000 --- a/chromium-66.0.3359.117-system-clang.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-66.0.3359.117/build/config/clang/clang.gni.system-clang chromium-66.0.3359.117/build/config/clang/clang.gni ---- chromium-66.0.3359.117/build/config/clang/clang.gni.system-clang 2018-04-18 12:08:45.658190297 -0400 -+++ chromium-66.0.3359.117/build/config/clang/clang.gni 2018-04-18 12:09:37.612032982 -0400 -@@ -4,7 +4,7 @@ - - import("//build/toolchain/toolchain.gni") - --default_clang_base_path = "//third_party/llvm-build/Release+Asserts" -+default_clang_base_path = "/usr" - - declare_args() { - # Indicates if the build should use the Chrome-specific plugins for enforcing diff --git a/chromium-67.0.3396.62-gcc5.patch b/chromium-67.0.3396.62-gcc5.patch deleted file mode 100644 index ceef85d..0000000 --- a/chromium-67.0.3396.62-gcc5.patch +++ /dev/null @@ -1,12 +0,0 @@ -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-68.0.3440.106-fix-default-on-redeclaration.patch b/chromium-68.0.3440.106-fix-default-on-redeclaration.patch deleted file mode 100644 index 4a92fba..0000000 --- a/chromium-68.0.3440.106-fix-default-on-redeclaration.patch +++ /dev/null @@ -1,30 +0,0 @@ -diff -up chromium-68.0.3440.106/components/search_provider_logos/logo_common.cc.122692c chromium-68.0.3440.106/components/search_provider_logos/logo_common.cc ---- chromium-68.0.3440.106/components/search_provider_logos/logo_common.cc.122692c 2018-08-17 14:54:30.587338865 -0400 -+++ chromium-68.0.3440.106/components/search_provider_logos/logo_common.cc 2018-08-17 14:55:20.461184298 -0400 -@@ -14,22 +14,22 @@ LogoMetadata::LogoMetadata() = default; - LogoMetadata::LogoMetadata(const LogoMetadata&) = default; - LogoMetadata::LogoMetadata(LogoMetadata&&) noexcept = default; - LogoMetadata& LogoMetadata::operator=(const LogoMetadata&) = default; --LogoMetadata& LogoMetadata::operator=(LogoMetadata&&) noexcept = default; -+LogoMetadata& LogoMetadata::operator=(LogoMetadata&&) = default; - LogoMetadata::~LogoMetadata() = default; - - EncodedLogo::EncodedLogo() = default; - EncodedLogo::EncodedLogo(const EncodedLogo&) = default; - EncodedLogo::EncodedLogo(EncodedLogo&&) noexcept = default; - EncodedLogo& EncodedLogo::operator=(const EncodedLogo&) = default; --EncodedLogo& EncodedLogo::operator=(EncodedLogo&&) noexcept = default; -+EncodedLogo& EncodedLogo::operator=(EncodedLogo&&) = default; - EncodedLogo::~EncodedLogo() = default; - - Logo::Logo() = default; - Logo::~Logo() = default; - - LogoCallbacks::LogoCallbacks() = default; --LogoCallbacks::LogoCallbacks(LogoCallbacks&&) noexcept = default; --LogoCallbacks& LogoCallbacks::operator=(LogoCallbacks&&) noexcept = default; -+LogoCallbacks::LogoCallbacks(LogoCallbacks&&) = default; -+LogoCallbacks& LogoCallbacks::operator=(LogoCallbacks&&) = default; - LogoCallbacks::~LogoCallbacks() = default; - - } // namespace search_provider_logos diff --git a/chromium-69.0.3497.81-build-sanely-please.patch b/chromium-69.0.3497.81-build-sanely-please.patch deleted file mode 100644 index 6241a97..0000000 --- a/chromium-69.0.3497.81-build-sanely-please.patch +++ /dev/null @@ -1,33 +0,0 @@ -diff -up chromium-69.0.3497.81/build/config/BUILD.gn.fyoursysroot chromium-69.0.3497.81/build/config/BUILD.gn ---- chromium-69.0.3497.81/build/config/BUILD.gn.fyoursysroot 2018-09-06 13:43:44.863375238 -0400 -+++ chromium-69.0.3497.81/build/config/BUILD.gn 2018-09-06 13:43:58.377083290 -0400 -@@ -284,9 +284,9 @@ group("executable_and_loadable_module_an - public_deps += [ "//build/config/sanitizers:deps" ] - } - -- if (use_custom_libcxx) { -- public_deps += [ "//buildtools/third_party/libc++" ] -- } -+ # if (use_custom_libcxx) { -+ # public_deps += [ "//buildtools/third_party/libc++" ] -+ # } - - if (use_afl) { - public_deps += [ "//third_party/afl" ] -diff -up chromium-69.0.3497.81/build/config/sysroot.gni.fyoursysroot chromium-69.0.3497.81/build/config/sysroot.gni ---- chromium-69.0.3497.81/build/config/sysroot.gni.fyoursysroot 2018-09-06 13:40:46.212232232 -0400 -+++ chromium-69.0.3497.81/build/config/sysroot.gni 2018-09-06 13:41:02.421882529 -0400 -@@ -15,9 +15,10 @@ declare_args() { - # The absolute path to directory containing linux sysroot images - target_sysroot_dir = "//build/linux" - -- use_sysroot = current_cpu == "x86" || current_cpu == "x64" || -- current_cpu == "arm" || current_cpu == "arm64" || -- current_cpu == "mipsel" || current_cpu == "mips64el" -+ use_sysroot = false -+ # use_sysroot = current_cpu == "x86" || current_cpu == "x64" || -+ # current_cpu == "arm" || current_cpu == "arm64" || -+ # current_cpu == "mipsel" || current_cpu == "mips64el" - } - - if (current_os == target_os && current_cpu == target_cpu && diff --git a/chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch b/chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch deleted file mode 100644 index ccecfcb..0000000 --- a/chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-70.0.3538.77/sandbox/linux/system_headers/arm64_linux_syscalls.h.aarch64-new-stat chromium-70.0.3538.77/sandbox/linux/system_headers/arm64_linux_syscalls.h ---- chromium-70.0.3538.77/sandbox/linux/system_headers/arm64_linux_syscalls.h.aarch64-new-stat 2018-11-06 13:27:05.118766581 -0500 -+++ chromium-70.0.3538.77/sandbox/linux/system_headers/arm64_linux_syscalls.h 2018-11-06 13:27:34.575204504 -0500 -@@ -5,6 +5,8 @@ - #ifndef SANDBOX_LINUX_SYSTEM_HEADERS_ARM64_LINUX_SYSCALLS_H_ - #define SANDBOX_LINUX_SYSTEM_HEADERS_ARM64_LINUX_SYSCALLS_H_ - -+#define __ARCH_WANT_NEW_STAT -+ - #include - - #if !defined(__NR_io_setup) diff --git a/chromium-71.0.3578.98-skia-aarch64-buildfix.patch b/chromium-71.0.3578.98-skia-aarch64-buildfix.patch deleted file mode 100644 index 5da1674..0000000 --- a/chromium-71.0.3578.98-skia-aarch64-buildfix.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -up chromium-71.0.3578.98/third_party/skia/src/opts/SkRasterPipeline_opts.h.aarch64fix chromium-71.0.3578.98/third_party/skia/src/opts/SkRasterPipeline_opts.h ---- chromium-71.0.3578.98/third_party/skia/src/opts/SkRasterPipeline_opts.h.aarch64fix 2018-12-14 11:17:43.249121756 -0500 -+++ chromium-71.0.3578.98/third_party/skia/src/opts/SkRasterPipeline_opts.h 2018-12-14 11:20:07.770030234 -0500 -@@ -658,7 +658,7 @@ SI F approx_powf(F x, F y) { - } - - SI F from_half(U16 h) { --#if defined(SK_CPU_ARM64) && !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) -@@ -678,7 +678,7 @@ SI F from_half(U16 h) { - } - - SI U16 to_half(F f) { --#if defined(SK_CPU_ARM64) && !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) diff --git a/chromium-72.0.3626.121-notest.patch b/chromium-72.0.3626.121-notest.patch deleted file mode 100644 index e8b7bf4..0000000 --- a/chromium-72.0.3626.121-notest.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-72.0.3626.121/chrome/test/data/webui_test_resources.grd.notest chromium-72.0.3626.121/chrome/test/data/webui_test_resources.grd ---- chromium-72.0.3626.121/chrome/test/data/webui_test_resources.grd.notest 2019-03-10 13:54:17.843583876 -0400 -+++ chromium-72.0.3626.121/chrome/test/data/webui_test_resources.grd 2019-03-10 14:03:29.302063637 -0400 -@@ -8,7 +8,6 @@ - - - -- - - - diff --git a/chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch b/chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch deleted file mode 100644 index f8abb52..0000000 --- a/chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch +++ /dev/null @@ -1,48 +0,0 @@ -diff -up chromium-73.0.3683.75/build/toolchain/linux/BUILD.gn.disable-ndnpc chromium-73.0.3683.75/build/toolchain/linux/BUILD.gn ---- chromium-73.0.3683.75/build/toolchain/linux/BUILD.gn.disable-ndnpc 2019-03-13 10:29:00.331009643 -0400 -+++ chromium-73.0.3683.75/build/toolchain/linux/BUILD.gn 2019-03-13 10:29:28.344458746 -0400 -@@ -31,7 +31,7 @@ gcc_toolchain("arm64") { - ld = cxx - readelf = "${toolprefix}readelf" - nm = "${toolprefix}nm" -- extra_cppflags = "-fno-delete-null-pointer-checks" -+ extra_cppflags = "" - - toolchain_args = { - current_cpu = "arm64" -@@ -50,7 +50,7 @@ gcc_toolchain("arm") { - ld = cxx - readelf = "${toolprefix}readelf" - nm = "${toolprefix}nm" -- extra_cppflags = "-fno-delete-null-pointer-checks" -+ extra_cppflags = "" - - toolchain_args = { - current_cpu = "arm" -@@ -101,7 +101,7 @@ gcc_toolchain("x86") { - nm = "nm" - ar = "ar" - ld = cxx -- extra_cppflags = "-fno-delete-null-pointer-checks -g1" -+ extra_cppflags = "-g1" - - # Output linker map files for binary size analysis. - enable_linker_map = true -@@ -155,7 +155,7 @@ gcc_toolchain("x64") { - nm = "nm" - ar = "ar" - ld = cxx -- extra_cppflags = "-fno-delete-null-pointer-checks" -+ extra_cppflags = "" - - # Output linker map files for binary size analysis. - enable_linker_map = true -@@ -190,7 +190,7 @@ gcc_toolchain("mipsel") { - ld = cxx - readelf = "${toolprefix}readelf" - nm = "${toolprefix}nm" -- extra_cppflags = "-fno-delete-null-pointer-checks" -+ extra_cppflags = "" - - toolchain_args = { - cc_wrapper = "" diff --git a/chromium-75.0.3770.100-git00281713.patch b/chromium-75.0.3770.100-git00281713.patch deleted file mode 100644 index 4356435..0000000 --- a/chromium-75.0.3770.100-git00281713.patch +++ /dev/null @@ -1,34 +0,0 @@ -diff -up chromium-75.0.3770.100/chrome/browser/performance_manager/chrome_content_browser_client_performance_manager_part.cc.git00281713 chromium-75.0.3770.100/chrome/browser/performance_manager/chrome_content_browser_client_performance_manager_part.cc ---- chromium-75.0.3770.100/chrome/browser/performance_manager/chrome_content_browser_client_performance_manager_part.cc.git00281713 2019-07-02 09:10:38.951369854 -0400 -+++ chromium-75.0.3770.100/chrome/browser/performance_manager/chrome_content_browser_client_performance_manager_part.cc 2019-07-02 09:11:59.864642942 -0400 -@@ -12,13 +12,19 @@ - #include "chrome/browser/performance_manager/graph/process_node_impl.h" - #include "chrome/browser/performance_manager/performance_manager.h" - #include "chrome/browser/performance_manager/render_process_user_data.h" -+#include "content/public/browser/render_process_host.h" - #include "services/resource_coordinator/public/mojom/coordination_unit.mojom.h" - - namespace { - - void BindProcessNode( -- content::RenderProcessHost* render_process_host, -+ int render_process_host_id, - resource_coordinator::mojom::ProcessCoordinationUnitRequest request) { -+ content::RenderProcessHost* render_process_host = -+ content::RenderProcessHost::FromID(render_process_host_id); -+ if (!render_process_host) -+ return; -+ - performance_manager::RenderProcessUserData* user_data = - performance_manager::RenderProcessUserData::GetForRenderProcessHost( - render_process_host); -@@ -47,8 +53,7 @@ void ChromeContentBrowserClientPerforman - blink::AssociatedInterfaceRegistry* associated_registry, - content::RenderProcessHost* render_process_host) { - registry->AddInterface( -- base::BindRepeating(&BindProcessNode, -- base::Unretained(render_process_host)), -+ base::BindRepeating(&BindProcessNode, render_process_host->GetID()), - base::SequencedTaskRunnerHandle::Get()); - - // Ideally this would strictly be a "CreateForRenderProcess", but when a diff --git a/chromium-75.0.3770.80-SIOCGSTAMP.patch b/chromium-75.0.3770.80-SIOCGSTAMP.patch deleted file mode 100644 index 0ef1e7f..0000000 --- a/chromium-75.0.3770.80-SIOCGSTAMP.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -up chromium-75.0.3770.80/third_party/webrtc/rtc_base/physical_socket_server.h.SIOCGSTAMP chromium-75.0.3770.80/third_party/webrtc/rtc_base/physical_socket_server.h ---- chromium-75.0.3770.80/third_party/webrtc/rtc_base/physical_socket_server.h.SIOCGSTAMP 2019-06-06 10:04:57.050403639 -0400 -+++ chromium-75.0.3770.80/third_party/webrtc/rtc_base/physical_socket_server.h 2019-06-06 10:06:03.975121688 -0400 -@@ -16,6 +16,11 @@ - #define WEBRTC_USE_EPOLL 1 - #endif - -+// for SIOCGSTAMP in Linux 5.2 -+#if defined(WEBRTC_LINUX) -+#include -+#endif -+ - #include - #include - #include diff --git a/chromium-75.0.3770.80-aeed4d-gcc-dcheck_ne-fix.patch b/chromium-75.0.3770.80-aeed4d-gcc-dcheck_ne-fix.patch deleted file mode 100644 index 2a8ac2f..0000000 --- a/chromium-75.0.3770.80-aeed4d-gcc-dcheck_ne-fix.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -up chromium-75.0.3770.80/cc/scheduler/compositor_frame_reporting_controller.cc.gcc-dcheck_ne-fix chromium-75.0.3770.80/cc/scheduler/compositor_frame_reporting_controller.cc ---- chromium-75.0.3770.80/cc/scheduler/compositor_frame_reporting_controller.cc.gcc-dcheck_ne-fix 2019-06-06 12:42:27.431575032 -0400 -+++ chromium-75.0.3770.80/cc/scheduler/compositor_frame_reporting_controller.cc 2019-06-06 12:43:05.692848409 -0400 -@@ -31,8 +31,8 @@ void CompositorFrameReportingController: - - 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, diff --git a/chromium-75.0.3770.80-gcc-no-assume.patch b/chromium-75.0.3770.80-gcc-no-assume.patch deleted file mode 100644 index 0bbb08f..0000000 --- a/chromium-75.0.3770.80-gcc-no-assume.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -up chromium-75.0.3770.80/third_party/angle/src/common/debug.h.gcc-assume chromium-75.0.3770.80/third_party/angle/src/common/debug.h ---- chromium-75.0.3770.80/third_party/angle/src/common/debug.h.gcc-assume 2019-06-06 17:38:01.876631704 -0400 -+++ chromium-75.0.3770.80/third_party/angle/src/common/debug.h 2019-06-07 09:30:06.205446547 -0400 -@@ -248,7 +248,7 @@ std::ostream &FmtHex(std::ostream &os, T - # define EVENT(message, ...) (void(0)) - #endif - --#if defined(COMPILER_GCC) || defined(__clang__) -+#if defined(__GNUC__) - # define ANGLE_CRASH() __builtin_trap() - #else - # define ANGLE_CRASH() ((void)(*(volatile char *)0 = 0)), __assume(0) -@@ -336,7 +336,7 @@ std::ostream &FmtHex(std::ostream &os, T - # 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") diff --git a/chromium-75.0.3770.80-revert-daff6b.patch b/chromium-75.0.3770.80-revert-daff6b.patch deleted file mode 100644 index f996898..0000000 --- a/chromium-75.0.3770.80-revert-daff6b.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -up chromium-75.0.3770.80/components/omnibox/browser/autocomplete_match.cc.revert-daff6b chromium-75.0.3770.80/components/omnibox/browser/autocomplete_match.cc ---- chromium-75.0.3770.80/components/omnibox/browser/autocomplete_match.cc.revert-daff6b 2019-06-06 14:54:13.819190586 -0400 -+++ chromium-75.0.3770.80/components/omnibox/browser/autocomplete_match.cc 2019-06-06 14:54:31.892839991 -0400 -@@ -154,8 +154,7 @@ AutocompleteMatch::AutocompleteMatch(con - additional_info(match.additional_info), - duplicate_matches(match.duplicate_matches) {} - --AutocompleteMatch::AutocompleteMatch(AutocompleteMatch&& match) noexcept = -- default; -+AutocompleteMatch::AutocompleteMatch(AutocompleteMatch&& match) = default; - - AutocompleteMatch::~AutocompleteMatch() { - } diff --git a/chromium-76.0.3809.100-libusb_interrupt_event_handler.patch b/chromium-76.0.3809.100-libusb_interrupt_event_handler.patch deleted file mode 100644 index 690f0f9..0000000 --- a/chromium-76.0.3809.100-libusb_interrupt_event_handler.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -up chromium-76.0.3809.100/services/device/usb/usb_context.cc.modern-libusbx chromium-76.0.3809.100/services/device/usb/usb_context.cc ---- chromium-76.0.3809.100/services/device/usb/usb_context.cc.modern-libusbx 2019-08-12 15:40:49.034170484 +0200 -+++ chromium-76.0.3809.100/services/device/usb/usb_context.cc 2019-08-12 15:41:23.775558867 +0200 -@@ -58,7 +58,11 @@ void UsbContext::UsbEventHandler::Run() - - void UsbContext::UsbEventHandler::Stop() { - base::subtle::Release_Store(&running_, 0); -+#ifdef LIBUSB_API_VERSION >= 0x01000105 -+ libusb_interrupt_event_handler(context_); -+#else - libusb_interrupt_handle_event(context_); -+#endif - } - - UsbContext::UsbContext(PlatformUsbContext context) : context_(context) { diff --git a/chromium-77.0.3865.75-boolfix.patch b/chromium-77.0.3865.75-boolfix.patch deleted file mode 100644 index c836214..0000000 --- a/chromium-77.0.3865.75-boolfix.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff -up chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_ptr_info.h ---- chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix 2019-09-09 23:55:20.000000000 +0200 -+++ chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_ptr_info.h 2019-09-12 15:43:30.025360946 +0200 -@@ -45,7 +45,7 @@ class AssociatedInterfacePtrInfo { - - bool is_valid() const { return handle_.is_valid(); } - -- explicit operator bool() const { return handle_.is_valid(); } -+ explicit operator bool() const { return (bool) handle_.is_valid(); } - - ScopedInterfaceEndpointHandle PassHandle() { - return std::move(handle_); -diff -up chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_request.h.boolfix chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_request.h ---- chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_request.h.boolfix 2019-09-09 23:55:20.000000000 +0200 -+++ chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_request.h 2019-09-12 15:43:30.025360946 +0200 -@@ -51,7 +51,7 @@ class AssociatedInterfaceRequest { - // handle. - 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(); } - - ScopedInterfaceEndpointHandle PassHandle() { return std::move(handle_); } - diff --git a/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch b/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch deleted file mode 100644 index 920a53e..0000000 --- a/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -up chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h.nogccoptmath chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h ---- chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h.nogccoptmath 2019-09-13 14:17:22.726738088 +0200 -+++ chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h 2019-09-13 14:31:37.686898493 +0200 -@@ -23,9 +23,8 @@ - // Where available use builtin math overflow support on Clang and GCC. - #elif !defined(__native_client__) && \ - ((defined(__clang__) && \ -- ((__clang_major__ > 3) || \ -- (__clang_major__ == 3 && __clang_minor__ >= 4))) || \ -- (defined(__GNUC__) && __GNUC__ >= 5)) -+ (__clang_major__ > 3) || \ -+ (__clang_major__ == 3 && __clang_minor__ >= 4))) - #include "base/numerics/safe_math_clang_gcc_impl.h" - #define BASE_HAS_OPTIMIZED_SAFE_MATH (1) - #else diff --git a/chromium-77.0.3865.75-gcc5-r3.patch b/chromium-77.0.3865.75-gcc5-r3.patch deleted file mode 100644 index 34b858a..0000000 --- a/chromium-77.0.3865.75-gcc5-r3.patch +++ /dev/null @@ -1,36 +0,0 @@ -diff -up chromium-77.0.3865.75/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 chromium-77.0.3865.75/gpu/ipc/common/mailbox_struct_traits.h ---- chromium-77.0.3865.75/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 2019-09-09 23:55:18.000000000 +0200 -+++ chromium-77.0.3865.75/gpu/ipc/common/mailbox_struct_traits.h 2019-09-12 10:13:16.710206500 +0200 -@@ -15,7 +15,7 @@ namespace mojo { - template <> - struct StructTraits { - static base::span name(const gpu::Mailbox& mailbox) { -- return mailbox.name; -+ return base::make_span(mailbox.name); - } - static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out); - }; -diff -up chromium-77.0.3865.75/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 chromium-77.0.3865.75/services/viz/public/cpp/compositing/quads_struct_traits.h ---- chromium-77.0.3865.75/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 2019-09-09 23:55:23.000000000 +0200 -+++ chromium-77.0.3865.75/services/viz/public/cpp/compositing/quads_struct_traits.h 2019-09-12 10:13:16.710206500 +0200 -@@ -391,7 +391,7 @@ struct StructTraits vertex_opacity(const viz::DrawQuad& input) { - const viz::TextureDrawQuad* quad = - viz::TextureDrawQuad::MaterialCast(&input); -- return quad->vertex_opacity; -+ return base::make_span(quad->vertex_opacity); - } - - static bool y_flipped(const viz::DrawQuad& input) { -diff -up chromium-77.0.3865.75/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 chromium-77.0.3865.75/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc ---- chromium-77.0.3865.75/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 2019-09-12 10:13:16.711206509 +0200 -+++ chromium-77.0.3865.75/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2019-09-12 15:41:15.300158849 +0200 -@@ -10,7 +10,7 @@ - - #include "modules/audio_processing/aec3/aec_state.h" - --#include -+#include - - #include - #include diff --git a/chromium.spec b/chromium.spec index 54cc5b1..e6a6f88 100644 --- a/chromium.spec +++ b/chromium.spec @@ -164,114 +164,61 @@ Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) ### Chromium Fedora Patches ### -Patch0: chromium-67.0.3396.62-gcc5.patch -Patch1: chromium-45.0.2454.101-linux-path-max.patch -Patch2: chromium-55.0.2883.75-addrfix.patch -Patch3: chromium-72.0.3626.121-notest.patch -# Use libusb_interrupt_event_handler from current libusbx (1.0.21-0.1.git448584a) -Patch4: chromium-76.0.3809.100-libusb_interrupt_event_handler.patch -# Use PIE in the Linux sandbox (from openSUSE via Russian Fedora) -Patch6: chromium-70.0.3538.67-sandbox-pie.patch +Patch0: chromium-70.0.3538.67-sandbox-pie.patch # Use /etc/chromium for master_prefs -Patch7: chromium-68.0.3440.106-master-prefs-path.patch +Patch1: chromium-68.0.3440.106-master-prefs-path.patch # Use gn system files -Patch8: chromium-67.0.3396.62-gn-system.patch -# Fix issue where timespec is not defined when sys/stat.h is included. -Patch9: chromium-53.0.2785.92-boringssl-time-fix.patch -# I wouldn't have to do this if there was a standard way to append extra compiler flags -Patch10: chromium-63.0.3289.84-nullfix.patch -# Add explicit includedir for jpeglib.h -Patch11: chromium-54.0.2840.59-jpeg-include-dir.patch -# On i686, pass --no-keep-memory --reduce-memory-overheads to ld. -Patch12: chromium-59.0.3071.86-i686-ld-memory-tricks.patch +Patch2: chromium-67.0.3396.62-gn-system.patch # Revert https://chromium.googlesource.com/chromium/src/+/b794998819088f76b4cf44c8db6940240c563cf4%5E%21/#F0 # https://bugs.chromium.org/p/chromium/issues/detail?id=712737 # https://bugzilla.redhat.com/show_bug.cgi?id=1446851 -Patch13: chromium-58.0.3029.96-revert-b794998819088f76b4cf44c8db6940240c563cf4.patch -# Correctly compile the stdatomic.h in ffmpeg with gcc 4.8 -Patch14: chromium-64.0.3282.119-ffmpeg-stdatomic.patch -# Nacl can't die soon enough -Patch15: chromium-66.0.3359.117-system-clang.patch +Patch3: chromium-58.0.3029.96-revert-b794998819088f76b4cf44c8db6940240c563cf4.patch # Do not prefix libpng functions -Patch16: chromium-60.0.3112.78-no-libpng-prefix.patch +Patch4: chromium-60.0.3112.78-no-libpng-prefix.patch # Do not mangle libjpeg -Patch17: chromium-60.0.3112.78-jpeg-nomangle.patch +Patch5: chromium-60.0.3112.78-jpeg-nomangle.patch # Do not mangle zlib -Patch18: chromium-77.0.3865.75-no-zlib-mangle.patch -# Fix libavutil include pathing to find arch specific timer.h -# For some reason, this only fails on aarch64. No idea why. -Patch19: chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch -# from gentoo -Patch20: chromium-77.0.3865.75-gcc-no-opt-safe-math.patch -# From gentoo -Patch21: chromium-77.0.3865.75-gcc5-r3.patch -# To use round with gcc, you need to #include -Patch22: chromium-65.0.3325.146-gcc-round-fix.patch -# Include proper headers to invoke memcpy() -Patch23: chromium-65.0.3325.146-memcpy-fix.patch -# ../../mojo/public/cpp/bindings/associated_interface_ptr_info.h:48:43: error: cannot convert 'const mojo::ScopedInterfaceEndpointHandle' to 'bool' in return -Patch24: chromium-77.0.3865.75-boolfix.patch -# From Debian -Patch25: chromium-71.0.3578.98-skia-aarch64-buildfix.patch +Patch6: chromium-77.0.3865.75-no-zlib-mangle.patch # Do not use unrar code, it is non-free -Patch27: chromium-73.0.3683.75-norar.patch -# Upstream GCC fixes -Patch28: chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch -# Add "Fedora" to the user agent string -Patch29: chromium-77.0.3865.75-fedora-user-agent.patch -# Try to fix version.py for Rawhide -Patch30: chromium-71.0.3578.98-py2-bootstrap.patch -# Fix default on redeclaration error -# https://chromium.googlesource.com/chromium/src/+/122692ccee62223f266a988c575ae687e3f4c056%5E%21/#F0 -Patch31: chromium-68.0.3440.106-fix-default-on-redeclaration.patch +Patch7: chromium-73.0.3683.75-norar.patch # Use Gentoo's Widevine hack # https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-widevine-r3.patch -Patch32: chromium-71.0.3578.98-widevine-r3.patch -# Do not require sysroot -# Forget about trying to make libc++ -# BUILD SANELY PLEASE -Patch33: chromium-69.0.3497.81-build-sanely-please.patch +Patch8: chromium-71.0.3578.98-widevine-r3.patch # Disable fontconfig cache magic that breaks remoting -Patch34: chromium-70.0.3538.67-disable-fontconfig-cache-magic.patch -# Fix aarch64 build against latest linux kernel headers -Patch35: chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch +Patch9: chromium-70.0.3538.67-disable-fontconfig-cache-magic.patch # drop rsp clobber, which breaks gcc9 (thanks to Jeff Law) -Patch36: chromium-71.0.3578.98-gcc9-drop-rsp-clobber.patch +Patch10: chromium-71.0.3578.98-gcc9-drop-rsp-clobber.patch # Try to load widevine from other places -Patch37: chromium-widevine-other-locations.patch -# Disable -fno-delete-null-pointer-checks -Patch38: chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch -# Linux 5.2 defines SIOCGSTAMP in a slightly different way, so we need to teach chromium where to find it -Patch41: chromium-75.0.3770.80-SIOCGSTAMP.patch -# Revert https://chromium.googlesource.com/chromium/src/+/daff6b66faae53a0cefb88987c9ff4843629b728%5E%21/#F0 -# It might make clang happy but it breaks gcc. F*** clang. -Patch43: chromium-75.0.3770.80-revert-daff6b.patch +Patch11: chromium-widevine-other-locations.patch +# Try to fix version.py for Rawhide +Patch12: chromium-71.0.3578.98-py2-bootstrap.patch +# Add "Fedora" to the user agent string +Patch13: chromium-77.0.3865.75-fedora-user-agent.patch + # rename function to avoid conflict with rawhide glibc "gettid()" -Patch45: chromium-75.0.3770.80-grpc-gettid-fix.patch +Patch50: chromium-75.0.3770.80-grpc-gettid-fix.patch # In GCC one can't use alignas() for exported classes # https://chromium.googlesource.com/chromium/src.git/+/8148fd96ae04a1150a9c6012634dcd2a7335f87a -Patch61: chromium-76.0.3809.100-gcc-no-alignas-and-export.patch +Patch51: chromium-76.0.3809.100-gcc-no-alignas-and-export.patch # Needs to be submitted.. -Patch62: chromium-76.0.3809.100-gcc-remoting-constexpr.patch +Patch52: chromium-76.0.3809.100-gcc-remoting-constexpr.patch # Needs to be submitted.. (ugly hack, needs to be added properly to GN files) -Patch63: chromium-76.0.3809.100-vtable-symbol-undefined.patch +Patch53: chromium-76.0.3809.100-vtable-symbol-undefined.patch # https://chromium.googlesource.com/chromium/src.git/+/3c9720245e440c4b7222f8348d2a2a3c25e098ae -Patch64: chromium-77.0.3865.75-certificate-transparency.patch +Patch54: chromium-77.0.3865.75-certificate-transparency.patch # https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-unbundle-zlib.patch -Patch65: chromium-77.0.3865.75-unbundle-zlib.patch +Patch55: chromium-77.0.3865.75-unbundle-zlib.patch # Needs to be submitted.. -Patch66: chromium-77.0.3865.75-gcc-include-memory.patch +Patch56: chromium-77.0.3865.75-gcc-include-memory.patch # https://chromium.googlesource.com/chromium/src/+/6b633c4b14850df376d5cec571699018772f358e -Patch67: chromium-77.0.3865.75-base-gcc-no-alignas.patch +Patch57: chromium-77.0.3865.75-base-gcc-no-alignas.patch # https://chromium.googlesource.com/chromium/src/+/27e25336b8316ff3ec4e464058682ed85801fd06 -Patch68: chromium-77.0.3865.75-harfbuzz-subset.patch +Patch58: chromium-77.0.3865.75-harfbuzz-subset.patch # https://chromium.googlesource.com/chromium/src.git/+/f08cb0022527081c078e8b96062e6c9b4fbda151 -Patch69: chromium-77.0.3865.75-gcc-abstract-class.patch +Patch59: chromium-77.0.3865.75-gcc-abstract-class.patch # https://chromium.googlesource.com/chromium/src/+/5baf7df7f4c5971dab552897eeef94b194650ce5 -Patch70: chromium-77.0.3865.75-missing-limits.patch +Patch60: chromium-77.0.3865.75-missing-limits.patch -# Apply these changes to work around EPEL7 compiler issues -Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch # Use lstdc++ on EPEL7 only Patch101: chromium-75.0.3770.100-epel7-stdc++.patch # el7 only patch @@ -757,60 +704,40 @@ udev. %setup -q -n chromium-%{version} ### Chromium Fedora Patches ### -%patch0 -p1 -b .gcc5 -%patch1 -p1 -b .pathmax -%patch2 -p1 -b .addrfix -%patch3 -p1 -b .notest -%patch4 -p1 -b .modern-libusbx -%patch6 -p1 -b .sandboxpie -%patch7 -p1 -b .etc -%patch8 -p1 -b .gnsystem -%patch9 -p1 -b .timefix -%patch10 -p1 -b .nullfix -%patch11 -p1 -b .jpegfix -%patch12 -p1 -b .ldmemory -%patch13 -p1 -b .revert -%patch14 -p1 -b .ffmpeg-stdatomic -%patch15 -p1 -b .system-clang -%patch16 -p1 -b .noprefix -%patch17 -p1 -b .nomangle -%patch18 -p1 -b .nozmangle -%patch19 -p1 -b .pathfix -%patch20 -p1 -b .nogccoptmath -%patch21 -p1 -b .gcc5-r3 -%patch22 -p1 -b .gcc-round-fix -%patch23 -p1 -b .memcpyfix -%patch24 -p1 -b .boolfix -#%patch25 -p1 -b .aarch64fix -%patch27 -p1 -b .nounrar -%patch28 -p1 -b .gcc-cpolicyprovider -%patch29 -p1 -b .fedora-user-agent -%patch30 -p1 -b .py2 -%patch31 -p1 -b .fix-default-redeclaration -%patch32 -p1 -b .wvhack -%patch33 -p1 -b .sanebuild -%patch34 -p1 -b .nofc -%patch35 -p1 -b .aarch64-new-stat -%patch36 -p1 -b .gcc9 -%patch37 -p1 -b .widevine-other-locations -%patch38 -p1 -b .disable-ndnpc -%patch41 -p1 -b .SIOCGSTAMP -%patch43 -p1 -b .revert-daff6b -%patch45 -p1 -b .gettid-fix -%patch61 -p1 -b .gcc-no-alignas-and-export -%patch62 -p1 -b .gcc-remoting-constexpr -%patch63 -p1 -b .vtable-symbol-undefined -%patch64 -p1 -b .certificate-transparency -%patch65 -p1 -b .unbundle-zlib -%patch66 -p1 -b .gcc-include-memory -%patch67 -p1 -b .base-gcc-no-alignas -%patch68 -p1 -b .harfbuzz-subset -%patch69 -p1 -b .gcc-abstract-class -%patch70 -p1 -b .missing-limits +%patch0 -p1 -b .sandboxpie +%patch1 -p1 -b .etc +%patch2 -p1 -b .gnsystem +%patch3 -p1 -b .revert +%patch4 -p1 -b .nolibpngprefix +%patch5 -p1 -b .nolibjpegmangle +%patch6 -p1 -b .nozlibmangle +%patch7 -p1 -b .nounrar +%patch8 -p1 -b .widevine-hack +%patch9 -p1 -b .nofontconfigcache +%patch10 -p1 -b .gcc9 +%patch11 -p1 -b .widevine-other-locations +%patch12 -p1 -b .py2 + +# Short term fixes (usually gcc and backports) +%patch50 -p1 -b .gettid-fix +%patch51 -p1 -b .gcc-no-alignas-and-export +%patch52 -p1 -b .gcc-remoting-constexpr +%patch53 -p1 -b .vtable-symbol-undefined +%patch54 -p1 -b .certificate-transparency +%patch55 -p1 -b .unbundle-zlib +%patch56 -p1 -b .gcc-include-memory +%patch57 -p1 -b .base-gcc-no-alignas +%patch58 -p1 -b .harfbuzz-subset +%patch59 -p1 -b .gcc-abstract-class +%patch60 -p1 -b .missing-limits + +# Fedora branded user agent +%if 0%{?fedora} +%patch13 -p1 -b .fedora-user-agent +%endif # EPEL specific patches %if 0%{?rhel} == 7 -%patch100 -p1 -b .kmaxskip %patch101 -p1 -b .epel7 %patch102 -p1 -b .el7-noexcept %endif @@ -1287,6 +1214,11 @@ sed -i.orig -e 's/getenv("CHROME_VERSION_EXTRA")/"Fedora Project"/' $FILE . /opt/rh/devtoolset-%{dts_version}/enable %endif +# Decrease the debuginfo verbosity, so it compiles in koji +%ifarch %{ix86} +%global optflags %(echo %{optflags} | sed 's/-g /-g1 /') +%endif + echo # Now do the full browser %if 0%{freeworld} From 1d37c1e7aa034fa781f73e3dcc663a8b66cc4952 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 23 Sep 2019 06:45:42 +0200 Subject: [PATCH 0563/1449] Update the el7's noexcept patch --- chromium-77.0.3865.90-el7-noexcept.patch | 194 +++++++++++++++++++++++ chromium.spec | 2 +- 2 files changed, 195 insertions(+), 1 deletion(-) create mode 100644 chromium-77.0.3865.90-el7-noexcept.patch diff --git a/chromium-77.0.3865.90-el7-noexcept.patch b/chromium-77.0.3865.90-el7-noexcept.patch new file mode 100644 index 0000000..1b7ac61 --- /dev/null +++ b/chromium-77.0.3865.90-el7-noexcept.patch @@ -0,0 +1,194 @@ +diff -up chromium-77.0.3865.90/chrome/common/media_router/media_sink.cc.el7-noexcept chromium-77.0.3865.90/chrome/common/media_router/media_sink.cc +--- chromium-77.0.3865.90/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-09-19 22:40:27.933863751 +0200 ++++ chromium-77.0.3865.90/chrome/common/media_router/media_sink.cc 2019-09-19 22:40:27.939863796 +0200 +@@ -19,12 +19,12 @@ MediaSink::MediaSink(const MediaSink::Id + provider_id_(provider_id) {} + + MediaSink::MediaSink(const MediaSink& other) = default; +-MediaSink::MediaSink(MediaSink&& other) noexcept = default; ++MediaSink::MediaSink(MediaSink&& other) = default; + MediaSink::MediaSink() = default; + MediaSink::~MediaSink() = default; + + MediaSink& MediaSink::operator=(const MediaSink& other) = default; +-MediaSink& MediaSink::operator=(MediaSink&& other) noexcept = default; ++MediaSink& MediaSink::operator=(MediaSink&& other) = default; + + bool MediaSink::IsMaybeCloudSink() const { + switch (icon_type_) { +diff -up chromium-77.0.3865.90/components/history/core/browser/history_types.cc.el7-noexcept chromium-77.0.3865.90/components/history/core/browser/history_types.cc +--- chromium-77.0.3865.90/components/history/core/browser/history_types.cc.el7-noexcept 2019-09-19 22:39:59.299649596 +0200 ++++ chromium-77.0.3865.90/components/history/core/browser/history_types.cc 2019-09-19 22:39:59.268649364 +0200 +@@ -42,7 +42,7 @@ QueryResults::QueryResults(QueryResults& + Swap(&other); + } + +-QueryResults& QueryResults::operator=(QueryResults&& other) noexcept { ++QueryResults& QueryResults::operator=(QueryResults&& other) { + Swap(&other); + return *this; + } +@@ -186,7 +186,7 @@ QueryURLResult::QueryURLResult(QueryURLR + + QueryURLResult& QueryURLResult::operator=(const QueryURLResult&) = default; + +-QueryURLResult& QueryURLResult::operator=(QueryURLResult&&) noexcept = default; ++QueryURLResult& QueryURLResult::operator=(QueryURLResult&&) = default; + + // MostVisitedURL -------------------------------------------------------------- + +diff -up chromium-77.0.3865.90/components/history/core/browser/history_types.h.el7-noexcept chromium-77.0.3865.90/components/history/core/browser/history_types.h +--- chromium-77.0.3865.90/components/history/core/browser/history_types.h.el7-noexcept 2019-09-19 22:39:59.318649738 +0200 ++++ chromium-77.0.3865.90/components/history/core/browser/history_types.h 2019-09-19 22:39:59.248649215 +0200 +@@ -143,7 +143,7 @@ class QueryResults { + ~QueryResults(); + + QueryResults(QueryResults&& other) noexcept; +- QueryResults& operator=(QueryResults&& other) noexcept; ++ QueryResults& operator=(QueryResults&& other); + + void set_reached_beginning(bool reached) { reached_beginning_ = reached; } + bool reached_beginning() { return reached_beginning_; } +@@ -278,7 +278,7 @@ struct QueryURLResult { + QueryURLResult(const QueryURLResult&); + QueryURLResult(QueryURLResult&&) noexcept; + QueryURLResult& operator=(const QueryURLResult&); +- QueryURLResult& operator=(QueryURLResult&&) noexcept; ++ QueryURLResult& operator=(QueryURLResult&&); + ~QueryURLResult(); + + // Indicates whether the call to HistoryBackend::QueryURL was successfull +diff -up chromium-77.0.3865.90/components/history/core/browser/url_row.cc.el7-noexcept chromium-77.0.3865.90/components/history/core/browser/url_row.cc +--- chromium-77.0.3865.90/components/history/core/browser/url_row.cc.el7-noexcept 2019-09-19 22:39:59.268649364 +0200 ++++ chromium-77.0.3865.90/components/history/core/browser/url_row.cc 2019-09-19 22:39:59.301649611 +0200 +@@ -26,7 +26,7 @@ URLRow::~URLRow() { + } + + URLRow& URLRow::operator=(const URLRow& other) = default; +-URLRow& URLRow::operator=(URLRow&& other) noexcept = default; ++URLRow& URLRow::operator=(URLRow&& other) = default; + + void URLRow::Swap(URLRow* other) { + std::swap(id_, other->id_); +diff -up chromium-77.0.3865.90/components/omnibox/browser/suggestion_answer.cc.el7-noexcept chromium-77.0.3865.90/components/omnibox/browser/suggestion_answer.cc +--- chromium-77.0.3865.90/components/omnibox/browser/suggestion_answer.cc.el7-noexcept 2019-09-19 22:40:04.794690694 +0200 ++++ chromium-77.0.3865.90/components/omnibox/browser/suggestion_answer.cc 2019-09-19 22:40:04.756690409 +0200 +@@ -60,7 +60,7 @@ SuggestionAnswer::TextField::TextField(T + SuggestionAnswer::TextField& SuggestionAnswer::TextField::operator=( + const TextField&) = default; + SuggestionAnswer::TextField& SuggestionAnswer::TextField::operator=( +- TextField&&) noexcept = default; ++ TextField&&) = default; + + // static + bool SuggestionAnswer::TextField::ParseTextField(const base::Value& field_json, +diff -up chromium-77.0.3865.90/components/policy/core/common/policy_map.cc.el7-noexcept chromium-77.0.3865.90/components/policy/core/common/policy_map.cc +--- chromium-77.0.3865.90/components/policy/core/common/policy_map.cc.el7-noexcept 2019-09-19 22:40:05.476695794 +0200 ++++ chromium-77.0.3865.90/components/policy/core/common/policy_map.cc 2019-09-19 22:40:05.409695293 +0200 +@@ -52,7 +52,7 @@ PolicyMap::Entry::Entry( + PolicyMap::Entry::~Entry() = default; + + PolicyMap::Entry::Entry(Entry&&) noexcept = default; +-PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) noexcept = default; ++PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) = default; + + PolicyMap::Entry PolicyMap::Entry::DeepCopy() const { + Entry copy; +diff -up chromium-77.0.3865.90/components/search_provider_logos/logo_common.cc.el7-noexcept chromium-77.0.3865.90/components/search_provider_logos/logo_common.cc +--- chromium-77.0.3865.90/components/search_provider_logos/logo_common.cc.el7-noexcept 2019-09-20 08:08:39.129845878 +0200 ++++ chromium-77.0.3865.90/components/search_provider_logos/logo_common.cc 2019-09-20 08:12:58.283828785 +0200 +@@ -14,14 +14,14 @@ LogoMetadata::LogoMetadata() = default; + LogoMetadata::LogoMetadata(const LogoMetadata&) = default; + LogoMetadata::LogoMetadata(LogoMetadata&&) noexcept = default; + LogoMetadata& LogoMetadata::operator=(const LogoMetadata&) = default; +-LogoMetadata& LogoMetadata::operator=(LogoMetadata&&) noexcept = default; ++LogoMetadata& LogoMetadata::operator=(LogoMetadata&&) = default; + LogoMetadata::~LogoMetadata() = default; + + EncodedLogo::EncodedLogo() = default; + EncodedLogo::EncodedLogo(const EncodedLogo&) = default; + EncodedLogo::EncodedLogo(EncodedLogo&&) noexcept = default; + EncodedLogo& EncodedLogo::operator=(const EncodedLogo&) = default; +-EncodedLogo& EncodedLogo::operator=(EncodedLogo&&) noexcept = default; ++EncodedLogo& EncodedLogo::operator=(EncodedLogo&&) = default; + EncodedLogo::~EncodedLogo() = default; + + Logo::Logo() = default; +@@ -29,7 +29,7 @@ Logo::~Logo() = default; + + LogoCallbacks::LogoCallbacks() = default; + LogoCallbacks::LogoCallbacks(LogoCallbacks&&) noexcept = default; +-LogoCallbacks& LogoCallbacks::operator=(LogoCallbacks&&) noexcept = default; ++LogoCallbacks& LogoCallbacks::operator=(LogoCallbacks&&) = default; + LogoCallbacks::~LogoCallbacks() = default; + + } // namespace search_provider_logos +diff -up chromium-77.0.3865.90/components/signin/public/identity_manager/account_info.cc.el7-noexcept chromium-77.0.3865.90/components/signin/public/identity_manager/account_info.cc +--- chromium-77.0.3865.90/components/signin/public/identity_manager/account_info.cc.el7-noexcept 2019-09-19 22:39:59.938654375 +0200 ++++ chromium-77.0.3865.90/components/signin/public/identity_manager/account_info.cc 2019-09-19 22:39:59.946654435 +0200 +@@ -52,7 +52,7 @@ CoreAccountInfo::CoreAccountInfo(CoreAcc + CoreAccountInfo& CoreAccountInfo::operator=(const CoreAccountInfo& other) = + default; + +-CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) noexcept = ++CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) = + default; + + bool CoreAccountInfo::IsEmpty() const { +@@ -69,7 +69,7 @@ AccountInfo::AccountInfo(AccountInfo&& o + + AccountInfo& AccountInfo::operator=(const AccountInfo& other) = default; + +-AccountInfo& AccountInfo::operator=(AccountInfo&& other) noexcept = default; ++AccountInfo& AccountInfo::operator=(AccountInfo&& other) = default; + + bool AccountInfo::IsEmpty() const { + return CoreAccountInfo::IsEmpty() && hosted_domain.empty() && +diff -up chromium-77.0.3865.90/google_apis/gaia/core_account_id.cc.el7-noexcept chromium-77.0.3865.90/google_apis/gaia/core_account_id.cc +--- chromium-77.0.3865.90/google_apis/gaia/core_account_id.cc.el7-noexcept 2019-09-19 22:40:51.185037647 +0200 ++++ chromium-77.0.3865.90/google_apis/gaia/core_account_id.cc 2019-09-19 22:40:51.202037775 +0200 +@@ -14,7 +14,7 @@ CoreAccountId::~CoreAccountId() = defaul + + CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; + +-CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) noexcept = default; ++CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) = default; + + CoreAccountId::CoreAccountId(const char* id) : id(id) {} + +diff -up chromium-77.0.3865.90/google_apis/gaia/core_account_id.h.el7-noexcept chromium-77.0.3865.90/google_apis/gaia/core_account_id.h +--- chromium-77.0.3865.90/google_apis/gaia/core_account_id.h.el7-noexcept 2019-09-19 22:40:51.193037707 +0200 ++++ chromium-77.0.3865.90/google_apis/gaia/core_account_id.h 2019-09-19 22:40:51.197037737 +0200 +@@ -20,7 +20,7 @@ struct CoreAccountId { + ~CoreAccountId(); + + CoreAccountId& operator=(const CoreAccountId&); +- CoreAccountId& operator=(CoreAccountId&&) noexcept; ++ CoreAccountId& operator=(CoreAccountId&&); + + // Those implicit constructor and conversion operator allow to + // progressively migrate the code to use this struct. Removing +diff -up chromium-77.0.3865.90/gpu/config/gpu_info.cc.el7-noexcept chromium-77.0.3865.90/gpu/config/gpu_info.cc +--- chromium-77.0.3865.90/gpu/config/gpu_info.cc.el7-noexcept 2019-09-19 22:40:26.755854941 +0200 ++++ chromium-77.0.3865.90/gpu/config/gpu_info.cc 2019-09-19 22:40:26.755854941 +0200 +@@ -170,7 +170,7 @@ GPUInfo::GPUDevice& GPUInfo::GPUDevice:: + const GPUInfo::GPUDevice& other) = default; + + GPUInfo::GPUDevice& GPUInfo::GPUDevice::operator=( +- GPUInfo::GPUDevice&& other) noexcept = default; ++ GPUInfo::GPUDevice&& other) = default; + + GPUInfo::GPUInfo() + : optimus(false), +diff -up chromium-77.0.3865.90/third_party/openscreen/src/osp/public/service_info.h.el7-noexcept chromium-77.0.3865.90/third_party/openscreen/src/osp/public/service_info.h +--- chromium-77.0.3865.90/third_party/openscreen/src/osp/public/service_info.h.el7-noexcept 2019-09-19 22:43:20.726156068 +0200 ++++ chromium-77.0.3865.90/third_party/openscreen/src/osp/public/service_info.h 2019-09-19 22:43:20.728156083 +0200 +@@ -21,7 +21,7 @@ struct ServiceInfo { + ServiceInfo(ServiceInfo&&) MAYBE_NOEXCEPT = default; + ServiceInfo(const ServiceInfo&) MAYBE_NOEXCEPT = default; + +- ServiceInfo& operator=(ServiceInfo&&) MAYBE_NOEXCEPT = default; ++ ServiceInfo& operator=(ServiceInfo&&) = default; + ServiceInfo& operator=(const ServiceInfo&) MAYBE_NOEXCEPT = default; + + bool operator==(const ServiceInfo& other) const; diff --git a/chromium.spec b/chromium.spec index e6a6f88..8f9e7ee 100644 --- a/chromium.spec +++ b/chromium.spec @@ -222,7 +222,7 @@ Patch60: chromium-77.0.3865.75-missing-limits.patch # Use lstdc++ on EPEL7 only Patch101: chromium-75.0.3770.100-epel7-stdc++.patch # el7 only patch -Patch102: chromium-77.0.3865.75-el7-noexcept.patch +Patch102: chromium-77.0.3865.90-el7-noexcept.patch # Enable VAAPI support on Linux # NOTE: This patch will never land upstream From 6aa7bda96ed4de25260acb5a9e907d5ff1fa1368 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 23 Sep 2019 17:21:06 +0200 Subject: [PATCH 0564/1449] Fix the icon So the monochromatic icon is being shown even in the GNOME's overview and it's ugly (as it's upscaled from 22x22). Remove it. --- chromium.spec | 2 -- 1 file changed, 2 deletions(-) diff --git a/chromium.spec b/chromium.spec index e426495..a37d653 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1399,8 +1399,6 @@ mkdir -p %{buildroot}%{_datadir}/icons/hicolor/48x48/apps cp -a chrome/app/theme/chromium/product_logo_48.png %{buildroot}%{_datadir}/icons/hicolor/48x48/apps/%{chromium_browser_channel}.png mkdir -p %{buildroot}%{_datadir}/icons/hicolor/24x24/apps cp -a chrome/app/theme/chromium/product_logo_24.png %{buildroot}%{_datadir}/icons/hicolor/24x24/apps/%{chromium_browser_channel}.png -mkdir -p %{buildroot}%{_datadir}/icons/hicolor/symbolic/apps -cp -a chrome/app/theme/chromium/product_logo_22_mono.png %{buildroot}%{_datadir}/icons/hicolor/symbolic/apps/%{chromium_browser_channel}.png # Install the master_preferences file mkdir -p %{buildroot}%{_sysconfdir}/%{name} From 0f0792f310ed8f54ca8bf6b73f6c020253dc5f54 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 23 Sep 2019 17:25:20 +0200 Subject: [PATCH 0565/1449] Fix the icon Remove quite a few of downstream patches Fix the crashes by backporting an upstream bug Resolves: rhbz#1754179 --- chromium-77.0.3865.90-linked-hash-set.patch | 130 ++++++++++++++++++++ chromium.spec | 11 +- 2 files changed, 140 insertions(+), 1 deletion(-) create mode 100644 chromium-77.0.3865.90-linked-hash-set.patch diff --git a/chromium-77.0.3865.90-linked-hash-set.patch b/chromium-77.0.3865.90-linked-hash-set.patch new file mode 100644 index 0000000..f921f1a --- /dev/null +++ b/chromium-77.0.3865.90-linked-hash-set.patch @@ -0,0 +1,130 @@ +From 74138b9febd37eac0fc26b8efb110014a83a52c6 Mon Sep 17 00:00:00 2001 +From: Jeremy Roman +Date: Wed, 07 Aug 2019 13:26:48 +0000 +Subject: [PATCH] WTF: Make LinkedHashSet understand values for which memset initialization would be bad. + +Includes a unit test which fails before, and uses this to fix FontCacheKeyTraits. + +Bug: 980025 +Change-Id: If41f97444c7fd37b9b95d6dadaf3da5689079e9e +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1739948 +Reviewed-by: Kentaro Hara +Reviewed-by: Yutaka Hirano +Commit-Queue: Jeremy Roman +Cr-Commit-Position: refs/heads/master@{#684731} +--- + +diff --git a/third_party/blink/renderer/platform/fonts/font_cache_key.h b/third_party/blink/renderer/platform/fonts/font_cache_key.h +index 0efc8fb..90063cb 100644 +--- a/third_party/blink/renderer/platform/fonts/font_cache_key.h ++++ b/third_party/blink/renderer/platform/fonts/font_cache_key.h +@@ -133,6 +133,10 @@ + + struct FontCacheKeyTraits : WTF::SimpleClassHashTraits { + STATIC_ONLY(FontCacheKeyTraits); ++ ++ // std::string's empty state need not be zero in all implementations, ++ // and it is held within FontFaceCreationParams. ++ static const bool kEmptyValueIsZero = false; + }; + + } // namespace blink +diff --git a/third_party/blink/renderer/platform/wtf/linked_hash_set.h b/third_party/blink/renderer/platform/wtf/linked_hash_set.h +index b35b6e9..77e524c 100644 +--- a/third_party/blink/renderer/platform/wtf/linked_hash_set.h ++++ b/third_party/blink/renderer/platform/wtf/linked_hash_set.h +@@ -146,6 +146,11 @@ + LinkedHashSetNodeBase* next) + : LinkedHashSetNodeBase(prev, next), value_(value) {} + ++ LinkedHashSetNode(ValueArg&& value, ++ LinkedHashSetNodeBase* prev, ++ LinkedHashSetNodeBase* next) ++ : LinkedHashSetNodeBase(prev, next), value_(std::move(value)) {} ++ + LinkedHashSetNode(LinkedHashSetNode&& other) + : LinkedHashSetNodeBase(std::move(other)), + value_(std::move(other.value_)) {} +@@ -445,10 +450,13 @@ + + // The slot is empty when the next_ field is zero so it's safe to zero + // the backing. +- static const bool kEmptyValueIsZero = true; ++ static const bool kEmptyValueIsZero = ValueTraits::kEmptyValueIsZero; + + static const bool kHasIsEmptyValueFunction = true; + static bool IsEmptyValue(const Node& node) { return !node.next_; } ++ static Node EmptyValue() { ++ return Node(ValueTraits::EmptyValue(), nullptr, nullptr); ++ } + + static const int kDeletedValue = -1; + +diff --git a/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc b/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc +index 4c3f899..cd1be00 100644 +--- a/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc ++++ b/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc +@@ -487,6 +487,7 @@ + }; + + struct Complicated { ++ Complicated() : Complicated(0) {} + Complicated(int value) : simple_(value) { objects_constructed_++; } + + Complicated(const Complicated& other) : simple_(other.simple_) { +@@ -495,9 +496,6 @@ + + Simple simple_; + static int objects_constructed_; +- +- private: +- Complicated() = delete; + }; + + int Complicated::objects_constructed_ = 0; +@@ -731,4 +729,45 @@ + + } // anonymous namespace + ++// A unit type which objects to its state being initialized wrong. ++struct InvalidZeroValue { ++ InvalidZeroValue() = default; ++ InvalidZeroValue(WTF::HashTableDeletedValueType) : deleted_(true) {} ++ ~InvalidZeroValue() { CHECK(ok_); } ++ bool IsHashTableDeletedValue() const { return deleted_; } ++ ++ bool ok_ = true; ++ bool deleted_ = false; ++}; ++ ++template <> ++struct HashTraits : SimpleClassHashTraits { ++ static const bool kEmptyValueIsZero = false; ++}; ++ ++template <> ++struct DefaultHash { ++ struct Hash { ++ static unsigned GetHash(const InvalidZeroValue&) { return 0; } ++ static bool Equal(const InvalidZeroValue&, const InvalidZeroValue&) { ++ return true; ++ } ++ }; ++}; ++ ++template ++class ListOrLinkedHashSetInvalidZeroTest : public testing::Test {}; ++ ++using InvalidZeroValueSetTypes = ++ testing::Types, ++ ListHashSet, ++ LinkedHashSet>; ++TYPED_TEST_SUITE(ListOrLinkedHashSetInvalidZeroTest, InvalidZeroValueSetTypes); ++ ++TYPED_TEST(ListOrLinkedHashSetInvalidZeroTest, InvalidZeroValue) { ++ using Set = TypeParam; ++ Set set; ++ set.insert(InvalidZeroValue()); ++} ++ + } // namespace WTF diff --git a/chromium.spec b/chromium.spec index a37d653..1542845 100644 --- a/chromium.spec +++ b/chromium.spec @@ -162,7 +162,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3865.90 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -222,6 +222,8 @@ Patch58: chromium-77.0.3865.75-harfbuzz-subset.patch Patch59: chromium-77.0.3865.75-gcc-abstract-class.patch # https://chromium.googlesource.com/chromium/src/+/5baf7df7f4c5971dab552897eeef94b194650ce5 Patch60: chromium-77.0.3865.75-missing-limits.patch +# https://chromium.googlesource.com/chromium/src/+/74138b9febd37eac0fc26b8efb110014a83a52c6 +Patch61: chromium-77.0.3865.90-linked-hash-set.patch # Use lstdc++ on EPEL7 only Patch101: chromium-75.0.3770.100-epel7-stdc++.patch @@ -739,6 +741,7 @@ udev. %patch58 -p1 -b .harfbuzz-subset %patch59 -p1 -b .gcc-abstract-class %patch60 -p1 -b .missing-limits +%patch61 -p1 -b .linked-hash-set # Fedora branded user agent %if 0%{?fedora} @@ -1643,6 +1646,12 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Mon Sep 23 2019 Tomas Popela - 77.0.3865.90-2 +- Fix the icon +- Remove quite a few of downstream patches +- Fix the crashes by backporting an upstream bug +- Resolves: rhbz#1754179 + * Thu Sep 19 2019 Tomas Popela - 77.0.3865.90-1 - Update to 77.0.3865.90 From 400a4a328245087c53483ccc5d9d67be95e9c4dc Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 23 Sep 2019 17:21:06 +0200 Subject: [PATCH 0566/1449] Fix the icon So the monochromatic icon is being shown even in the GNOME's overview and it's ugly (as it's upscaled from 22x22). Remove it. --- chromium.spec | 2 -- 1 file changed, 2 deletions(-) diff --git a/chromium.spec b/chromium.spec index 8f9e7ee..809833f 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1388,8 +1388,6 @@ mkdir -p %{buildroot}%{_datadir}/icons/hicolor/48x48/apps cp -a chrome/app/theme/chromium/product_logo_48.png %{buildroot}%{_datadir}/icons/hicolor/48x48/apps/%{chromium_browser_channel}.png mkdir -p %{buildroot}%{_datadir}/icons/hicolor/24x24/apps cp -a chrome/app/theme/chromium/product_logo_24.png %{buildroot}%{_datadir}/icons/hicolor/24x24/apps/%{chromium_browser_channel}.png -mkdir -p %{buildroot}%{_datadir}/icons/hicolor/symbolic/apps -cp -a chrome/app/theme/chromium/product_logo_22_mono.png %{buildroot}%{_datadir}/icons/hicolor/symbolic/apps/%{chromium_browser_channel}.png # Install the master_preferences file mkdir -p %{buildroot}%{_sysconfdir}/%{name} From dacf053f6350030abd80f6e3d62a4708890ba2d1 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 23 Sep 2019 17:25:20 +0200 Subject: [PATCH 0567/1449] Fix the icon Remove quite a few of downstream patches Fix the crashes by backporting an upstream bug Resolves: rhbz#1754179 --- chromium-77.0.3865.90-linked-hash-set.patch | 130 ++++++++++++++++++++ chromium.spec | 11 +- 2 files changed, 140 insertions(+), 1 deletion(-) create mode 100644 chromium-77.0.3865.90-linked-hash-set.patch diff --git a/chromium-77.0.3865.90-linked-hash-set.patch b/chromium-77.0.3865.90-linked-hash-set.patch new file mode 100644 index 0000000..f921f1a --- /dev/null +++ b/chromium-77.0.3865.90-linked-hash-set.patch @@ -0,0 +1,130 @@ +From 74138b9febd37eac0fc26b8efb110014a83a52c6 Mon Sep 17 00:00:00 2001 +From: Jeremy Roman +Date: Wed, 07 Aug 2019 13:26:48 +0000 +Subject: [PATCH] WTF: Make LinkedHashSet understand values for which memset initialization would be bad. + +Includes a unit test which fails before, and uses this to fix FontCacheKeyTraits. + +Bug: 980025 +Change-Id: If41f97444c7fd37b9b95d6dadaf3da5689079e9e +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1739948 +Reviewed-by: Kentaro Hara +Reviewed-by: Yutaka Hirano +Commit-Queue: Jeremy Roman +Cr-Commit-Position: refs/heads/master@{#684731} +--- + +diff --git a/third_party/blink/renderer/platform/fonts/font_cache_key.h b/third_party/blink/renderer/platform/fonts/font_cache_key.h +index 0efc8fb..90063cb 100644 +--- a/third_party/blink/renderer/platform/fonts/font_cache_key.h ++++ b/third_party/blink/renderer/platform/fonts/font_cache_key.h +@@ -133,6 +133,10 @@ + + struct FontCacheKeyTraits : WTF::SimpleClassHashTraits { + STATIC_ONLY(FontCacheKeyTraits); ++ ++ // std::string's empty state need not be zero in all implementations, ++ // and it is held within FontFaceCreationParams. ++ static const bool kEmptyValueIsZero = false; + }; + + } // namespace blink +diff --git a/third_party/blink/renderer/platform/wtf/linked_hash_set.h b/third_party/blink/renderer/platform/wtf/linked_hash_set.h +index b35b6e9..77e524c 100644 +--- a/third_party/blink/renderer/platform/wtf/linked_hash_set.h ++++ b/third_party/blink/renderer/platform/wtf/linked_hash_set.h +@@ -146,6 +146,11 @@ + LinkedHashSetNodeBase* next) + : LinkedHashSetNodeBase(prev, next), value_(value) {} + ++ LinkedHashSetNode(ValueArg&& value, ++ LinkedHashSetNodeBase* prev, ++ LinkedHashSetNodeBase* next) ++ : LinkedHashSetNodeBase(prev, next), value_(std::move(value)) {} ++ + LinkedHashSetNode(LinkedHashSetNode&& other) + : LinkedHashSetNodeBase(std::move(other)), + value_(std::move(other.value_)) {} +@@ -445,10 +450,13 @@ + + // The slot is empty when the next_ field is zero so it's safe to zero + // the backing. +- static const bool kEmptyValueIsZero = true; ++ static const bool kEmptyValueIsZero = ValueTraits::kEmptyValueIsZero; + + static const bool kHasIsEmptyValueFunction = true; + static bool IsEmptyValue(const Node& node) { return !node.next_; } ++ static Node EmptyValue() { ++ return Node(ValueTraits::EmptyValue(), nullptr, nullptr); ++ } + + static const int kDeletedValue = -1; + +diff --git a/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc b/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc +index 4c3f899..cd1be00 100644 +--- a/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc ++++ b/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc +@@ -487,6 +487,7 @@ + }; + + struct Complicated { ++ Complicated() : Complicated(0) {} + Complicated(int value) : simple_(value) { objects_constructed_++; } + + Complicated(const Complicated& other) : simple_(other.simple_) { +@@ -495,9 +496,6 @@ + + Simple simple_; + static int objects_constructed_; +- +- private: +- Complicated() = delete; + }; + + int Complicated::objects_constructed_ = 0; +@@ -731,4 +729,45 @@ + + } // anonymous namespace + ++// A unit type which objects to its state being initialized wrong. ++struct InvalidZeroValue { ++ InvalidZeroValue() = default; ++ InvalidZeroValue(WTF::HashTableDeletedValueType) : deleted_(true) {} ++ ~InvalidZeroValue() { CHECK(ok_); } ++ bool IsHashTableDeletedValue() const { return deleted_; } ++ ++ bool ok_ = true; ++ bool deleted_ = false; ++}; ++ ++template <> ++struct HashTraits : SimpleClassHashTraits { ++ static const bool kEmptyValueIsZero = false; ++}; ++ ++template <> ++struct DefaultHash { ++ struct Hash { ++ static unsigned GetHash(const InvalidZeroValue&) { return 0; } ++ static bool Equal(const InvalidZeroValue&, const InvalidZeroValue&) { ++ return true; ++ } ++ }; ++}; ++ ++template ++class ListOrLinkedHashSetInvalidZeroTest : public testing::Test {}; ++ ++using InvalidZeroValueSetTypes = ++ testing::Types, ++ ListHashSet, ++ LinkedHashSet>; ++TYPED_TEST_SUITE(ListOrLinkedHashSetInvalidZeroTest, InvalidZeroValueSetTypes); ++ ++TYPED_TEST(ListOrLinkedHashSetInvalidZeroTest, InvalidZeroValue) { ++ using Set = TypeParam; ++ Set set; ++ set.insert(InvalidZeroValue()); ++} ++ + } // namespace WTF diff --git a/chromium.spec b/chromium.spec index 809833f..a1a519d 100644 --- a/chromium.spec +++ b/chromium.spec @@ -158,7 +158,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3865.90 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -218,6 +218,8 @@ Patch58: chromium-77.0.3865.75-harfbuzz-subset.patch Patch59: chromium-77.0.3865.75-gcc-abstract-class.patch # https://chromium.googlesource.com/chromium/src/+/5baf7df7f4c5971dab552897eeef94b194650ce5 Patch60: chromium-77.0.3865.75-missing-limits.patch +# https://chromium.googlesource.com/chromium/src/+/74138b9febd37eac0fc26b8efb110014a83a52c6 +Patch61: chromium-77.0.3865.90-linked-hash-set.patch # Use lstdc++ on EPEL7 only Patch101: chromium-75.0.3770.100-epel7-stdc++.patch @@ -730,6 +732,7 @@ udev. %patch58 -p1 -b .harfbuzz-subset %patch59 -p1 -b .gcc-abstract-class %patch60 -p1 -b .missing-limits +%patch61 -p1 -b .linked-hash-set # Fedora branded user agent %if 0%{?fedora} @@ -1632,6 +1635,12 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Mon Sep 23 2019 Tomas Popela - 77.0.3865.90-2 +- Fix the icon +- Remove quite a few of downstream patches +- Fix the crashes by backporting an upstream bug +- Resolves: rhbz#1754179 + * Thu Sep 19 2019 Tomas Popela - 77.0.3865.90-1 - Update to 77.0.3865.90 From 47afdc42ed500067d2e4cc5b3df8295c0e08eac6 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Sun, 15 Sep 2019 13:36:44 +0200 Subject: [PATCH 0568/1449] Don't try to revert a previously removed patch --- chromium.spec | 2 -- 1 file changed, 2 deletions(-) diff --git a/chromium.spec b/chromium.spec index 6b2691a..38d8c20 100644 --- a/chromium.spec +++ b/chromium.spec @@ -862,8 +862,6 @@ udev. %patch100 -p1 -b .kmaxskip %patch101 -p1 -b .epel7 %patch102 -p1 -b .el7-noexcept -# Revert patch58 because it's breaking the build on el7 -%patch58 -R -p1 %endif # Feature specific patches From 51e320816fc4959c841fc78bb7ef205c79024064 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 20 Sep 2019 09:37:33 +0200 Subject: [PATCH 0569/1449] Remove support for (p)NaCL We don't build it for quite some time and will by killed by Google in Spring 2020. Let's drop the support for it from the SPEC file. We can revert this patch if needed. --- ...526.80-nacl-ignore-broken-fd-counter.patch | 27 --- ...m-47.0.2526.80-pnacl-fgnu-inline-asm.patch | 11 -- chromium.spec | 187 ------------------ 3 files changed, 225 deletions(-) delete mode 100644 chromium-47.0.2526.80-nacl-ignore-broken-fd-counter.patch delete mode 100644 chromium-47.0.2526.80-pnacl-fgnu-inline-asm.patch diff --git a/chromium-47.0.2526.80-nacl-ignore-broken-fd-counter.patch b/chromium-47.0.2526.80-nacl-ignore-broken-fd-counter.patch deleted file mode 100644 index c422957..0000000 --- a/chromium-47.0.2526.80-nacl-ignore-broken-fd-counter.patch +++ /dev/null @@ -1,27 +0,0 @@ -diff -up chromium-47.0.2526.80/components/nacl/loader/sandbox_linux/nacl_sandbox_linux.cc.ignore-fd-count chromium-47.0.2526.80/components/nacl/loader/sandbox_linux/nacl_sandbox_linux.cc ---- chromium-47.0.2526.80/components/nacl/loader/sandbox_linux/nacl_sandbox_linux.cc.ignore-fd-count 2015-12-15 14:48:07.119011866 -0500 -+++ chromium-47.0.2526.80/components/nacl/loader/sandbox_linux/nacl_sandbox_linux.cc 2015-12-15 14:48:14.151850055 -0500 -@@ -153,6 +153,14 @@ void NaClSandbox::InitializeLayerOneSand - } - - void NaClSandbox::CheckForExpectedNumberOfOpenFds() { -+ // Whatever logic this code is using is wrong more often than it is right. -+ // If you set expected_num_fds to 6, it finds 7. -+ // If you set expected_num_fds to 7, it finds 6. -+ // Code like this makes a packager drink. And not the good stuff either. -+ // Instead, we're just going to smile and tell it to never care about the -+ // number of FDs open. Stupid code. We hates it. -+ -+#if 0 - // We expect to have the following FDs open: - // 1-3) stdin, stdout, stderr. - // 4) The /dev/urandom FD used by base::GetUrandomFD(). -@@ -171,6 +179,8 @@ void NaClSandbox::CheckForExpectedNumber - } - - CHECK_EQ(expected_num_fds, sandbox::ProcUtil::CountOpenFds(proc_fd_.get())); -+#endif -+ - } - - void NaClSandbox::InitializeLayerTwoSandbox(bool uses_nonsfi_mode) { diff --git a/chromium-47.0.2526.80-pnacl-fgnu-inline-asm.patch b/chromium-47.0.2526.80-pnacl-fgnu-inline-asm.patch deleted file mode 100644 index bfe0422..0000000 --- a/chromium-47.0.2526.80-pnacl-fgnu-inline-asm.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-47.0.2526.80/native_client/build/untrusted.gypi.fixme chromium-47.0.2526.80/native_client/build/untrusted.gypi ---- chromium-47.0.2526.80/native_client/build/untrusted.gypi.fixme 2015-12-09 11:54:27.584962337 -0500 -+++ chromium-47.0.2526.80/native_client/build/untrusted.gypi 2015-12-09 11:54:45.033571750 -0500 -@@ -1564,6 +1564,7 @@ - '-Wno-char-subscripts', - '-Wno-unused-function', - '-std=gnu++11', -+ '-fgnu-inline-asm', - ], - 'native_irt_compile_flags': [ - # IRT compile/link flags to make the binary smaller. diff --git a/chromium.spec b/chromium.spec index 38d8c20..7fe074d 100644 --- a/chromium.spec +++ b/chromium.spec @@ -70,32 +70,11 @@ # If we build with shared on, then chrome-remote-desktop depends on chromium libs. # If we build with shared off, then users cannot swap out libffmpeg (and i686 gets a lot harder to build) %global shared 1 -# We should not need to turn this on. The app in the webstore _should_ work. -%global build_remoting_app 0 # AddressSanitizer mode # https://www.chromium.org/developers/testing/addresssanitizer %global asan 0 -# nacl/pnacl are soon to be dead. We're just killing them off early. -%global killnacl 1 - -%if 0%{?killnacl} - %global nacl 0 - %global nonacl 1 -%else -# TODO: Try arm (nacl disabled) -%if 0%{?fedora} - %ifarch i686 - %global nacl 0 - %global nonacl 1 - %else - %global nacl 1 - %global nonacl 0 - %endif -%endif -%endif - %if 0 # Chromium's fork of ICU is now something we can't unbundle. # This is left here to ease the change if that ever switches. @@ -298,16 +277,6 @@ Patch101: chromium-75.0.3770.100-epel7-stdc++.patch # el7 only patch Patch102: chromium-77.0.3865.75-el7-noexcept.patch -# In file included from ../linux/directory.c:21: -# In file included from ../../../../native_client/src/nonsfi/linux/abi_conversion.h:20: -# ../../../../native_client/src/nonsfi/linux/linux_syscall_structs.h:44:13: error: GNU-style inline assembly is disabled -# __asm__ __volatile__("mov %%gs, %0" : "=r"(gs)); -# ^ -# 1 error generated. -Patch200: chromium-47.0.2526.80-pnacl-fgnu-inline-asm.patch -# Ignore broken nacl open fd counter -Patch201: chromium-47.0.2526.80-nacl-ignore-broken-fd-counter.patch - # Enable VAAPI support on Linux # NOTE: This patch will never land upstream Patch202: enable-vaapi.patch @@ -415,24 +384,6 @@ BuildRequires: libappstream-glib # gn needs these BuildRequires: libstdc++-static BuildRequires: libstdc++-devel, openssl-devel -%if 0%{?nacl} -BuildRequires: nacl-gcc, nacl-binutils, nacl-newlib -BuildRequires: nacl-arm-gcc, nacl-arm-binutils, nacl-arm-newlib -# pNaCl needs this monster -# It's possible that someday this dep will stabilize, but -# right now, it needs to be updated everytime chromium bumps -# a major version. -BuildRequires: chromium-native_client >= 52.0.2743.82 -BuildRequires: clang -BuildRequires: llvm -%ifarch x86_64 -# Really, this is what we want: -# BuildRequires: glibc-devel(x86-32) libgcc(x86-32) -# But, koji only offers glibc32. Maybe that's enough. -# This BR will pull in either glibc.i686 or glibc32. -BuildRequires: /lib/libc.so.6 /usr/lib/libc.so -%endif -%endif # Fedora tries to use system libs whenever it can. BuildRequires: bzip2-devel BuildRequires: dbus-glib-devel @@ -865,11 +816,6 @@ udev. %endif # Feature specific patches -%if ! 0%{?killnacl} -%patch200 -p1 -b .gnu-inline -%patch201 -p1 -b .ignore-fd-count -%endif - %if %{use_vaapi} %patch202 -p1 -b .vaapi %ifarch i686 @@ -898,101 +844,6 @@ export RANLIB="ranlib" rm -rf buildtools/third_party/libc++/BUILD.gn -%if 0%{?nacl} -# prep the nacl tree -mkdir -p out/Release/gen/sdk/linux_x86/nacl_x86_newlib -cp -a --no-preserve=context /usr/%{_arch}-nacl/* out/Release/gen/sdk/linux_x86/nacl_x86_newlib - -mkdir -p out/Release/gen/sdk/linux_x86/nacl_arm_newlib -cp -a --no-preserve=context /usr/arm-nacl/* out/Release/gen/sdk/linux_x86/nacl_arm_newlib - -# Not sure if we need this or not, but better safe than sorry. -pushd out/Release/gen/sdk/linux_x86 -ln -s nacl_x86_newlib nacl_x86_newlib_raw -ln -s nacl_arm_newlib nacl_arm_newlib_raw -popd - -mkdir -p out/Release/gen/sdk/linux_x86/nacl_x86_newlib/bin -pushd out/Release/gen/sdk/linux_x86/nacl_x86_newlib/bin -ln -s /usr/bin/x86_64-nacl-gcc gcc -ln -s /usr/bin/x86_64-nacl-gcc x86_64-nacl-gcc -ln -s /usr/bin/x86_64-nacl-g++ g++ -ln -s /usr/bin/x86_64-nacl-g++ x86_64-nacl-g++ -# ln -s /usr/bin/x86_64-nacl-ar ar -ln -s /usr/bin/x86_64-nacl-ar x86_64-nacl-ar -# ln -s /usr/bin/x86_64-nacl-as as -ln -s /usr/bin/x86_64-nacl-as x86_64-nacl-as -# ln -s /usr/bin/x86_64-nacl-ranlib ranlib -ln -s /usr/bin/x86_64-nacl-ranlib x86_64-nacl-ranlib -# Cleanups -rm addr2line -ln -s /usr/bin/x86_64-nacl-addr2line addr2line -rm c++filt -ln -s /usr/bin/x86_64-nacl-c++filt c++filt -rm gprof -ln -s /usr/bin/x86_64-nacl-gprof gprof -rm readelf -ln -s /usr/bin/x86_64-nacl-readelf readelf -rm size -ln -s /usr/bin/x86_64-nacl-size size -rm strings -ln -s /usr/bin/x86_64-nacl-strings strings -popd - -mkdir -p out/Release/gen/sdk/linux_x86/nacl_arm_newlib/bin -pushd out/Release/gen/sdk/linux_x86/nacl_arm_newlib/bin -ln -s /usr/bin/arm-nacl-gcc gcc -ln -s /usr/bin/arm-nacl-gcc arm-nacl-gcc -ln -s /usr/bin/arm-nacl-g++ g++ -ln -s /usr/bin/arm-nacl-g++ arm-nacl-g++ -ln -s /usr/bin/arm-nacl-ar arm-nacl-ar -ln -s /usr/bin/arm-nacl-as arm-nacl-as -ln -s /usr/bin/arm-nacl-ranlib arm-nacl-ranlib -popd - -touch out/Release/gen/sdk/linux_x86/nacl_x86_newlib/stamp.untar out/Release/gen/sdk/linux_x86/nacl_x86_newlib/stamp.prep -touch out/Release/gen/sdk/linux_x86/nacl_x86_newlib/nacl_x86_newlib.json -touch out/Release/gen/sdk/linux_x86/nacl_arm_newlib/stamp.untar out/Release/gen/sdk/linux_x86/nacl_arm_newlib/stamp.prep -touch out/Release/gen/sdk/linux_x86/nacl_arm_newlib/nacl_arm_newlib.json - -pushd out/Release/gen/sdk/linux_x86/ -mkdir -p pnacl_newlib pnacl_translator -# Might be able to do symlinks here, but eh. -cp -a --no-preserve=context /usr/pnacl_newlib/* pnacl_newlib/ -cp -a --no-preserve=context /usr/pnacl_translator/* pnacl_translator/ -for i in lib/libc.a lib/libc++.a lib/libg.a lib/libm.a; do - /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/x86_64_bc-nacl/$i - /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/i686_bc-nacl/$i - /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/le32-nacl/$i -done - -for i in lib/libpthread.a lib/libnacl.a; do - /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/le32-nacl/$i -done - -for i in lib/clang/3.7.0/lib/x86_64_bc-nacl/libpnaclmm.a lib/clang/3.7.0/lib/i686_bc-nacl/libpnaclmm.a; do - /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/$i -done - -for i in lib/clang/3.7.0/lib/le32-nacl/libpnaclmm.a lib/clang/3.7.0/lib/le32-nacl/libgcc.a; do - /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/$i -done - -popd - -mkdir -p native_client/toolchain/.tars/linux_x86 -touch native_client/toolchain/.tars/linux_x86/pnacl_translator.json - -pushd native_client/toolchain -ln -s ../../out/Release/gen/sdk/linux_x86 linux_x86 -popd - -mkdir -p third_party/llvm-build/Release+Asserts/bin -pushd third_party/llvm-build/Release+Asserts/bin -ln -s /usr/bin/clang clang -popd -%endif - # Unpack fonts %if %{freeworld} # no font fun needed. @@ -1063,9 +914,7 @@ export CHROMIUM_CORE_GN_DEFINES CHROMIUM_BROWSER_GN_DEFINES="" CHROMIUM_BROWSER_GN_DEFINES+=' use_gio=true use_pulseaudio=true icu_use_data_file=true' -%if 0%{?nonacl} CHROMIUM_BROWSER_GN_DEFINES+=' enable_nacl=false' -%endif %if 0%{?shared} CHROMIUM_BROWSER_GN_DEFINES+=' is_component_ffmpeg=true is_component_build=true' %else @@ -1227,9 +1076,6 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/libwebm' \ 'third_party/libwebp' \ 'third_party/libyuv' \ -%if 0%{?nacl} - 'third_party/llvm-build' \ -%endif 'third_party/lss' \ 'third_party/lzma_sdk' \ %if 0 @@ -1460,19 +1306,7 @@ echo # remote client # ../../depot_tools/ninja -C ../%{builddir} -vvv remoting_me2me_host remoting_start_host remoting_it2me_native_messaging_host remoting_me2me_native_messaging_host remoting_native_messaging_manifests remoting_resources %build_target %{remotingbuilddir} remoting_all -%if 0%{?build_remoting_app} -%if 0%{?nacl} -export GOOGLE_CLIENT_ID_REMOTING_IDENTITY_API=%{chromoting_client_id} -%build_target %{builddir} remoting_webapp %endif -%endif - -%endif - -# Nuke nacl/pnacl bits at the end of the build -rm -rf %{builddir}/gen/sdk -rm -rf native_client/toolchain -rm -rf third_party/llvm-build/* %install rm -rf %{buildroot} @@ -1511,10 +1345,6 @@ mkdir -p %{buildroot}%{_mandir}/man1/ pushd %{builddir} cp -a *.pak locales resources icudtl.dat %{buildroot}%{chromium_path} -%if 0%{?nacl} -cp -a nacl_helper* *.nexe pnacl tls_edit %{buildroot}%{chromium_path} -chmod -x %{buildroot}%{chromium_path}/nacl_helper_bootstrap* *.nexe -%endif # Reasonably sure we don't need this anymore. Chrome doesn't include it. %if 0 cp -a protoc pyproto %{buildroot}%{chromium_path} @@ -1596,12 +1426,6 @@ pushd %{buildroot}%{_sysconfdir}/pam.d/ ln -s system-auth chrome-remote-desktop popd -%if 0%{?build_remoting_app} -%if 0%{?nacl} -cp -a remoting_client_plugin_newlib.* %{buildroot}%{chromium_path} -%endif -%endif - %if %{build_headless} pushd %{headlessbuilddir} cp -a headless_lib.pak headless_shell %{buildroot}%{chromium_path} @@ -1742,12 +1566,6 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %ifarch x86_64 i686 aarch64 %{chromium_path}/swiftshader/ %endif -%if 0%{?nacl} -%{chromium_path}/nacl_helper* -%{chromium_path}/*.nexe -%{chromium_path}/pnacl/ -%{chromium_path}/tls_edit -%endif %dir %{chromium_path}/PepperFlash/ %if 0 %{chromium_path}/protoc @@ -1861,11 +1679,6 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{crd_path}/user-session %{_unitdir}/chrome-remote-desktop@.service /var/lib/chrome-remote-desktop/ -%if 0%{?build_remoting_app} -%if 0%{?nacl} -%{chromium_path}/remoting_client_plugin_newlib.* -%endif -%endif %files -n chromedriver %doc AUTHORS From 3eaa3be79d851bec300e909dcb9093bd045f3964 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 20 Sep 2019 09:45:43 +0200 Subject: [PATCH 0570/1449] Fix how the arguments are passed to GN's bootstrap.py I don't know why, but previously it was failing only on aarch64. --- chromium.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 7fe074d..c41439f 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1256,7 +1256,7 @@ if python2 -c 'import google ; print google.__path__' 2> /dev/null ; then \ exit 1 ; \ fi -tools/gn/bootstrap/bootstrap.py -v "$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" +tools/gn/bootstrap/bootstrap.py -v --no-clean --gn-gen-args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{builddir}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{builddir} %if %{freeworld} From 3c95810693ba39059f8b50d3d59b713c0df0fd87 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 20 Sep 2019 09:57:18 +0200 Subject: [PATCH 0571/1449] Remove the unused patches or patches that are not needed anymore Also replace some patches with changes in the SPEC file. --- chromium-45.0.2454.101-linux-path-max.patch | 44 ---- ...mium-53.0.2785.92-boringssl-time-fix.patch | 11 - chromium-54.0.2840.59-jpeg-include-dir.patch | 11 - chromium-55.0.2883.75-addrfix.patch | 11 - ...m-59.0.3071.86-i686-ld-memory-tricks.patch | 12 -- ...113-libavutil-timer-include-path-fix.patch | 21 -- ...mium-62.0.3202.62-kmaxskip-constexpr.patch | 12 -- chromium-63.0.3289.84-nullfix.patch | 43 ---- chromium-64.0.3282.119-ffmpeg-stdatomic.patch | 17 -- chromium-65.0.3325.146-gcc-round-fix.patch | 12 -- chromium-65.0.3325.146-memcpy-fix.patch | 12 -- ...-declare-ConfigurationPolicyProvider.patch | 18 -- chromium-66.0.3359.117-system-clang.patch | 12 -- chromium-67.0.3396.62-gcc5.patch | 12 -- ...440.106-fix-default-on-redeclaration.patch | 30 --- ...ium-69.0.3497.81-build-sanely-please.patch | 33 --- ...0.3538.77-aarch64-arch-want-new-stat.patch | 12 -- ...m-71.0.3578.98-skia-aarch64-buildfix.patch | 21 -- chromium-72.0.3626.121-notest.patch | 11 - ...sable-fno-delete-null-pointer-checks.patch | 48 ----- chromium-75.0.3770.100-git00281713.patch | 34 --- chromium-75.0.3770.80-SIOCGSTAMP.patch | 15 -- ...5.0.3770.80-aeed4d-gcc-dcheck_ne-fix.patch | 14 -- chromium-75.0.3770.80-gcc-no-assume.patch | 21 -- chromium-75.0.3770.80-revert-daff6b.patch | 13 -- ...9.100-libusb_interrupt_event_handler.patch | 15 -- chromium-77.0.3865.75-boolfix.patch | 24 --- ...um-77.0.3865.75-gcc-no-opt-safe-math.patch | 15 -- chromium-77.0.3865.75-gcc5-r3.patch | 36 ---- chromium.spec | 198 ++++++------------ 30 files changed, 65 insertions(+), 723 deletions(-) delete mode 100644 chromium-45.0.2454.101-linux-path-max.patch delete mode 100644 chromium-53.0.2785.92-boringssl-time-fix.patch delete mode 100644 chromium-54.0.2840.59-jpeg-include-dir.patch delete mode 100644 chromium-55.0.2883.75-addrfix.patch delete mode 100644 chromium-59.0.3071.86-i686-ld-memory-tricks.patch delete mode 100644 chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch delete mode 100644 chromium-62.0.3202.62-kmaxskip-constexpr.patch delete mode 100644 chromium-63.0.3289.84-nullfix.patch delete mode 100644 chromium-64.0.3282.119-ffmpeg-stdatomic.patch delete mode 100644 chromium-65.0.3325.146-gcc-round-fix.patch delete mode 100644 chromium-65.0.3325.146-memcpy-fix.patch delete mode 100644 chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch delete mode 100644 chromium-66.0.3359.117-system-clang.patch delete mode 100644 chromium-67.0.3396.62-gcc5.patch delete mode 100644 chromium-68.0.3440.106-fix-default-on-redeclaration.patch delete mode 100644 chromium-69.0.3497.81-build-sanely-please.patch delete mode 100644 chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch delete mode 100644 chromium-71.0.3578.98-skia-aarch64-buildfix.patch delete mode 100644 chromium-72.0.3626.121-notest.patch delete mode 100644 chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch delete mode 100644 chromium-75.0.3770.100-git00281713.patch delete mode 100644 chromium-75.0.3770.80-SIOCGSTAMP.patch delete mode 100644 chromium-75.0.3770.80-aeed4d-gcc-dcheck_ne-fix.patch delete mode 100644 chromium-75.0.3770.80-gcc-no-assume.patch delete mode 100644 chromium-75.0.3770.80-revert-daff6b.patch delete mode 100644 chromium-76.0.3809.100-libusb_interrupt_event_handler.patch delete mode 100644 chromium-77.0.3865.75-boolfix.patch delete mode 100644 chromium-77.0.3865.75-gcc-no-opt-safe-math.patch delete mode 100644 chromium-77.0.3865.75-gcc5-r3.patch diff --git a/chromium-45.0.2454.101-linux-path-max.patch b/chromium-45.0.2454.101-linux-path-max.patch deleted file mode 100644 index 3146349..0000000 --- a/chromium-45.0.2454.101-linux-path-max.patch +++ /dev/null @@ -1,44 +0,0 @@ -diff -up chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/path.h.pathmax chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/path.h ---- chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/path.h.pathmax 2015-10-07 11:26:11.813477839 -0400 -+++ chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/path.h 2015-10-07 11:26:40.845845054 -0400 -@@ -12,6 +12,11 @@ - - #include "sdk_util/macros.h" - -+/* Needed for PATH_MAX */ -+#ifndef PATH_MAX -+#define PATH_MAX 4096 -+#endif -+ - namespace nacl_io { - - class Path { -diff -up chromium-45.0.2454.101/native_client/src/untrusted/nacl/getcwd.c.pathmax chromium-45.0.2454.101/native_client/src/untrusted/nacl/getcwd.c ---- chromium-45.0.2454.101/native_client/src/untrusted/nacl/getcwd.c.pathmax 2015-08-22 15:02:08.000000000 -0400 -+++ chromium-45.0.2454.101/native_client/src/untrusted/nacl/getcwd.c 2015-10-07 10:58:56.172018783 -0400 -@@ -11,6 +11,10 @@ - - #include - #include -+/* Needed for PATH_MAX */ -+#ifndef PATH_MAX -+#define PATH_MAX 4096 -+#endif - #include - #include - #include -diff -up chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/syscalls/realpath.c.pathmax chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/syscalls/realpath.c ---- chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/syscalls/realpath.c.pathmax 2015-10-09 10:57:38.424348662 -0400 -+++ chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/syscalls/realpath.c 2015-10-09 10:57:51.541059938 -0400 -@@ -13,6 +13,11 @@ - - #include "sdk_util/macros.h" - -+/* Needed for PATH_MAX */ -+#ifndef PATH_MAX -+#define PATH_MAX 4096 -+#endif -+ - EXTERN_C_BEGIN - - #if defined(__native_client__) diff --git a/chromium-53.0.2785.92-boringssl-time-fix.patch b/chromium-53.0.2785.92-boringssl-time-fix.patch deleted file mode 100644 index 8d67957..0000000 --- a/chromium-53.0.2785.92-boringssl-time-fix.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-53.0.2785.92/third_party/boringssl/src/crypto/x509/by_dir.c.timefix chromium-53.0.2785.92/third_party/boringssl/src/crypto/x509/by_dir.c ---- chromium-53.0.2785.92/third_party/boringssl/src/crypto/x509/by_dir.c.timefix 2016-09-06 15:20:06.094396255 -0400 -+++ chromium-53.0.2785.92/third_party/boringssl/src/crypto/x509/by_dir.c 2016-09-06 15:20:16.893187930 -0400 -@@ -56,6 +56,7 @@ - * [including the GNU Public Licence.] */ - - #include -+#include - #include - #include - diff --git a/chromium-54.0.2840.59-jpeg-include-dir.patch b/chromium-54.0.2840.59-jpeg-include-dir.patch deleted file mode 100644 index f96a56c..0000000 --- a/chromium-54.0.2840.59-jpeg-include-dir.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-54.0.2840.59/third_party/BUILD.gn.jpegfix chromium-54.0.2840.59/third_party/BUILD.gn ---- chromium-54.0.2840.59/third_party/BUILD.gn.jpegfix 2016-10-17 11:45:44.995340495 -0400 -+++ chromium-54.0.2840.59/third_party/BUILD.gn 2016-10-17 11:46:35.254289872 -0400 -@@ -20,6 +20,7 @@ declare_args() { - config("system_libjpeg_config") { - libs = [ "jpeg" ] - defines = [ "USE_SYSTEM_LIBJPEG" ] -+ include_dirs = [ "/usr/include/" ] - } - - config("libjpeg_turbo_config") { diff --git a/chromium-55.0.2883.75-addrfix.patch b/chromium-55.0.2883.75-addrfix.patch deleted file mode 100644 index 00c214c..0000000 --- a/chromium-55.0.2883.75-addrfix.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-55.0.2883.75/third_party/boringssl/BUILD.gn.addrfix chromium-55.0.2883.75/third_party/boringssl/BUILD.gn ---- chromium-55.0.2883.75/third_party/boringssl/BUILD.gn.addrfix 2016-12-12 15:30:27.727834891 -0500 -+++ chromium-55.0.2883.75/third_party/boringssl/BUILD.gn 2016-12-12 15:30:53.095709352 -0500 -@@ -24,6 +24,7 @@ config("internal_config") { - "BORINGSSL_IMPLEMENTATION", - "BORINGSSL_NO_STATIC_INITIALIZER", - "OPENSSL_SMALL", -+ "_POSIX_C_SOURCE=200112L", - ] - configs = [ - # TODO(davidben): Fix size_t truncations in BoringSSL. diff --git a/chromium-59.0.3071.86-i686-ld-memory-tricks.patch b/chromium-59.0.3071.86-i686-ld-memory-tricks.patch deleted file mode 100644 index 9dde4c5..0000000 --- a/chromium-59.0.3071.86-i686-ld-memory-tricks.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn.ldmemory chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn ---- chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn.ldmemory 2017-06-07 15:37:09.436616113 -0400 -+++ chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn 2017-06-07 15:38:04.508519102 -0400 -@@ -93,7 +93,7 @@ gcc_toolchain("x86") { - nm = "nm" - ar = "ar" - ld = cxx -- extra_cppflags = "-fno-delete-null-pointer-checks" -+ extra_cppflags = "-fno-delete-null-pointer-checks -g1" - - # Output linker map files for binary size analysis. - enable_linker_map = true diff --git a/chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch b/chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch deleted file mode 100644 index 7248825..0000000 --- a/chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -up chromium-60.0.3112.113/third_party/ffmpeg/libavutil/timer.h.pathfix chromium-60.0.3112.113/third_party/ffmpeg/libavutil/timer.h ---- chromium-60.0.3112.113/third_party/ffmpeg/libavutil/timer.h.pathfix 2017-08-25 15:29:12.143242471 -0400 -+++ chromium-60.0.3112.113/third_party/ffmpeg/libavutil/timer.h 2017-08-25 15:29:36.941835865 -0400 -@@ -39,13 +39,13 @@ - #include "log.h" - - #if ARCH_AARCH64 --# include "aarch64/timer.h" -+# include "libavutil/aarch64/timer.h" - #elif ARCH_ARM --# include "arm/timer.h" -+# include "libavutil/arm/timer.h" - #elif ARCH_PPC --# include "ppc/timer.h" -+# include "libavutil/ppc/timer.h" - #elif ARCH_X86 --# include "x86/timer.h" -+# include "libavutil/x86/timer.h" - #endif - - #if !defined(AV_READ_TIME) diff --git a/chromium-62.0.3202.62-kmaxskip-constexpr.patch b/chromium-62.0.3202.62-kmaxskip-constexpr.patch deleted file mode 100644 index d4f8250..0000000 --- a/chromium-62.0.3202.62-kmaxskip-constexpr.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-62.0.3202.62/cc/paint/paint_op_buffer.cc.kmaxskip chromium-62.0.3202.62/cc/paint/paint_op_buffer.cc ---- chromium-62.0.3202.62/cc/paint/paint_op_buffer.cc.kmaxskip 2017-10-18 10:00:28.503714392 -0400 -+++ chromium-62.0.3202.62/cc/paint/paint_op_buffer.cc 2017-10-18 10:00:43.153430212 -0400 -@@ -336,7 +336,7 @@ TYPES(M); - #undef TYPES - - const SkRect PaintOp::kUnsetRect = {SK_ScalarInfinity, 0, 0, 0}; --const size_t PaintOp::kMaxSkip; -+constexpr size_t PaintOp::kMaxSkip; - - std::string PaintOpTypeToString(PaintOpType type) { - switch (type) { diff --git a/chromium-63.0.3289.84-nullfix.patch b/chromium-63.0.3289.84-nullfix.patch deleted file mode 100644 index c66aff1..0000000 --- a/chromium-63.0.3289.84-nullfix.patch +++ /dev/null @@ -1,43 +0,0 @@ -diff -up chromium-63.0.3239.84/build/toolchain/linux/BUILD.gn.nullfix chromium-63.0.3239.84/build/toolchain/linux/BUILD.gn ---- chromium-63.0.3239.84/build/toolchain/linux/BUILD.gn.nullfix 2017-12-06 15:05:21.000000000 -0500 -+++ chromium-63.0.3239.84/build/toolchain/linux/BUILD.gn 2017-12-07 10:44:34.507207080 -0500 -@@ -31,6 +31,7 @@ gcc_toolchain("arm64") { - ld = cxx - readelf = "${toolprefix}readelf" - nm = "${toolprefix}nm" -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - toolchain_args = { - current_cpu = "arm64" -@@ -49,6 +50,7 @@ gcc_toolchain("arm") { - ld = cxx - readelf = "${toolprefix}readelf" - nm = "${toolprefix}nm" -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - toolchain_args = { - current_cpu = "arm" -@@ -99,6 +101,7 @@ gcc_toolchain("x86") { - nm = "nm" - ar = "ar" - ld = cxx -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - # Output linker map files for binary size analysis. - enable_linker_map = true -@@ -152,6 +155,7 @@ gcc_toolchain("x64") { - nm = "nm" - ar = "ar" - ld = cxx -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - # Output linker map files for binary size analysis. - enable_linker_map = true -@@ -186,6 +190,7 @@ gcc_toolchain("mipsel") { - ld = cxx - readelf = "${toolprefix}readelf" - nm = "${toolprefix}nm" -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - toolchain_args = { - cc_wrapper = "" diff --git a/chromium-64.0.3282.119-ffmpeg-stdatomic.patch b/chromium-64.0.3282.119-ffmpeg-stdatomic.patch deleted file mode 100644 index 64c5f26..0000000 --- a/chromium-64.0.3282.119-ffmpeg-stdatomic.patch +++ /dev/null @@ -1,17 +0,0 @@ -diff -up chromium-64.0.3282.119/third_party/ffmpeg/libavutil/cpu.c.ffmpeg-stdatomic chromium-64.0.3282.119/third_party/ffmpeg/libavutil/cpu.c ---- chromium-64.0.3282.119/third_party/ffmpeg/libavutil/cpu.c.ffmpeg-stdatomic 2018-01-25 11:55:57.880936815 -0500 -+++ chromium-64.0.3282.119/third_party/ffmpeg/libavutil/cpu.c 2018-01-25 11:57:18.456787888 -0500 -@@ -18,7 +18,13 @@ - - #include - #include -+// GCC 4.8 didn't have stdatomic, but was advertising it. -+// https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58016 -+#if !defined(__clang__) && defined(__GNUC__) && (__GNUC__ == 4 || (__GNUC__ == 4 && (__GNUC_MINOR__ == 8))) -+#include -+#else - #include -+#endif - - #include "attributes.h" - #include "cpu.h" diff --git a/chromium-65.0.3325.146-gcc-round-fix.patch b/chromium-65.0.3325.146-gcc-round-fix.patch deleted file mode 100644 index a29779d..0000000 --- a/chromium-65.0.3325.146-gcc-round-fix.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-65.0.3325.146/third_party/webrtc/p2p/base/port.cc.gcc-round-fix chromium-65.0.3325.146/third_party/webrtc/p2p/base/port.cc ---- chromium-65.0.3325.146/third_party/webrtc/p2p/base/port.cc.gcc-round-fix 2018-03-07 10:57:11.284376048 -0500 -+++ chromium-65.0.3325.146/third_party/webrtc/p2p/base/port.cc 2018-03-07 10:58:16.590742636 -0500 -@@ -10,7 +10,7 @@ - - #include "p2p/base/port.h" - --#include -+#include - - #include - #include diff --git a/chromium-65.0.3325.146-memcpy-fix.patch b/chromium-65.0.3325.146-memcpy-fix.patch deleted file mode 100644 index b2b2cd4..0000000 --- a/chromium-65.0.3325.146-memcpy-fix.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-65.0.3325.146/cc/paint/raw_memory_transfer_cache_entry.cc.memcpyfix chromium-65.0.3325.146/cc/paint/raw_memory_transfer_cache_entry.cc ---- chromium-65.0.3325.146/cc/paint/raw_memory_transfer_cache_entry.cc.memcpyfix 2018-03-07 11:04:14.690379817 -0500 -+++ chromium-65.0.3325.146/cc/paint/raw_memory_transfer_cache_entry.cc 2018-03-07 11:06:04.339878069 -0500 -@@ -3,7 +3,7 @@ - // found in the LICENSE file. - - #include "cc/paint/raw_memory_transfer_cache_entry.h" -- -+#include - #include - - namespace cc { diff --git a/chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch b/chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch deleted file mode 100644 index d5b19cf..0000000 --- a/chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch +++ /dev/null @@ -1,18 +0,0 @@ -diff -up chromium-66.0.3359.117/components/policy/core/browser/browser_policy_connector_base.h.gcc-cpolicyprovider chromium-66.0.3359.117/components/policy/core/browser/browser_policy_connector_base.h ---- chromium-66.0.3359.117/components/policy/core/browser/browser_policy_connector_base.h.gcc-cpolicyprovider 2018-04-25 16:33:40.872222779 -0400 -+++ chromium-66.0.3359.117/components/policy/core/browser/browser_policy_connector_base.h 2018-04-25 16:37:23.175883637 -0400 -@@ -11,13 +11,13 @@ - #include "base/callback_forward.h" - #include "base/macros.h" - #include "components/policy/core/browser/configuration_policy_handler_list.h" -+#include "components/policy/core/common/configuration_policy_provider.h" - #include "components/policy/core/common/schema.h" - #include "components/policy/core/common/schema_registry.h" - #include "components/policy/policy_export.h" - - namespace policy { - --class ConfigurationPolicyProvider; - class PolicyService; - class PolicyServiceImpl; - diff --git a/chromium-66.0.3359.117-system-clang.patch b/chromium-66.0.3359.117-system-clang.patch deleted file mode 100644 index e90dc58..0000000 --- a/chromium-66.0.3359.117-system-clang.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-66.0.3359.117/build/config/clang/clang.gni.system-clang chromium-66.0.3359.117/build/config/clang/clang.gni ---- chromium-66.0.3359.117/build/config/clang/clang.gni.system-clang 2018-04-18 12:08:45.658190297 -0400 -+++ chromium-66.0.3359.117/build/config/clang/clang.gni 2018-04-18 12:09:37.612032982 -0400 -@@ -4,7 +4,7 @@ - - import("//build/toolchain/toolchain.gni") - --default_clang_base_path = "//third_party/llvm-build/Release+Asserts" -+default_clang_base_path = "/usr" - - declare_args() { - # Indicates if the build should use the Chrome-specific plugins for enforcing diff --git a/chromium-67.0.3396.62-gcc5.patch b/chromium-67.0.3396.62-gcc5.patch deleted file mode 100644 index ceef85d..0000000 --- a/chromium-67.0.3396.62-gcc5.patch +++ /dev/null @@ -1,12 +0,0 @@ -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-68.0.3440.106-fix-default-on-redeclaration.patch b/chromium-68.0.3440.106-fix-default-on-redeclaration.patch deleted file mode 100644 index 4a92fba..0000000 --- a/chromium-68.0.3440.106-fix-default-on-redeclaration.patch +++ /dev/null @@ -1,30 +0,0 @@ -diff -up chromium-68.0.3440.106/components/search_provider_logos/logo_common.cc.122692c chromium-68.0.3440.106/components/search_provider_logos/logo_common.cc ---- chromium-68.0.3440.106/components/search_provider_logos/logo_common.cc.122692c 2018-08-17 14:54:30.587338865 -0400 -+++ chromium-68.0.3440.106/components/search_provider_logos/logo_common.cc 2018-08-17 14:55:20.461184298 -0400 -@@ -14,22 +14,22 @@ LogoMetadata::LogoMetadata() = default; - LogoMetadata::LogoMetadata(const LogoMetadata&) = default; - LogoMetadata::LogoMetadata(LogoMetadata&&) noexcept = default; - LogoMetadata& LogoMetadata::operator=(const LogoMetadata&) = default; --LogoMetadata& LogoMetadata::operator=(LogoMetadata&&) noexcept = default; -+LogoMetadata& LogoMetadata::operator=(LogoMetadata&&) = default; - LogoMetadata::~LogoMetadata() = default; - - EncodedLogo::EncodedLogo() = default; - EncodedLogo::EncodedLogo(const EncodedLogo&) = default; - EncodedLogo::EncodedLogo(EncodedLogo&&) noexcept = default; - EncodedLogo& EncodedLogo::operator=(const EncodedLogo&) = default; --EncodedLogo& EncodedLogo::operator=(EncodedLogo&&) noexcept = default; -+EncodedLogo& EncodedLogo::operator=(EncodedLogo&&) = default; - EncodedLogo::~EncodedLogo() = default; - - Logo::Logo() = default; - Logo::~Logo() = default; - - LogoCallbacks::LogoCallbacks() = default; --LogoCallbacks::LogoCallbacks(LogoCallbacks&&) noexcept = default; --LogoCallbacks& LogoCallbacks::operator=(LogoCallbacks&&) noexcept = default; -+LogoCallbacks::LogoCallbacks(LogoCallbacks&&) = default; -+LogoCallbacks& LogoCallbacks::operator=(LogoCallbacks&&) = default; - LogoCallbacks::~LogoCallbacks() = default; - - } // namespace search_provider_logos diff --git a/chromium-69.0.3497.81-build-sanely-please.patch b/chromium-69.0.3497.81-build-sanely-please.patch deleted file mode 100644 index 6241a97..0000000 --- a/chromium-69.0.3497.81-build-sanely-please.patch +++ /dev/null @@ -1,33 +0,0 @@ -diff -up chromium-69.0.3497.81/build/config/BUILD.gn.fyoursysroot chromium-69.0.3497.81/build/config/BUILD.gn ---- chromium-69.0.3497.81/build/config/BUILD.gn.fyoursysroot 2018-09-06 13:43:44.863375238 -0400 -+++ chromium-69.0.3497.81/build/config/BUILD.gn 2018-09-06 13:43:58.377083290 -0400 -@@ -284,9 +284,9 @@ group("executable_and_loadable_module_an - public_deps += [ "//build/config/sanitizers:deps" ] - } - -- if (use_custom_libcxx) { -- public_deps += [ "//buildtools/third_party/libc++" ] -- } -+ # if (use_custom_libcxx) { -+ # public_deps += [ "//buildtools/third_party/libc++" ] -+ # } - - if (use_afl) { - public_deps += [ "//third_party/afl" ] -diff -up chromium-69.0.3497.81/build/config/sysroot.gni.fyoursysroot chromium-69.0.3497.81/build/config/sysroot.gni ---- chromium-69.0.3497.81/build/config/sysroot.gni.fyoursysroot 2018-09-06 13:40:46.212232232 -0400 -+++ chromium-69.0.3497.81/build/config/sysroot.gni 2018-09-06 13:41:02.421882529 -0400 -@@ -15,9 +15,10 @@ declare_args() { - # The absolute path to directory containing linux sysroot images - target_sysroot_dir = "//build/linux" - -- use_sysroot = current_cpu == "x86" || current_cpu == "x64" || -- current_cpu == "arm" || current_cpu == "arm64" || -- current_cpu == "mipsel" || current_cpu == "mips64el" -+ use_sysroot = false -+ # use_sysroot = current_cpu == "x86" || current_cpu == "x64" || -+ # current_cpu == "arm" || current_cpu == "arm64" || -+ # current_cpu == "mipsel" || current_cpu == "mips64el" - } - - if (current_os == target_os && current_cpu == target_cpu && diff --git a/chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch b/chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch deleted file mode 100644 index ccecfcb..0000000 --- a/chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-70.0.3538.77/sandbox/linux/system_headers/arm64_linux_syscalls.h.aarch64-new-stat chromium-70.0.3538.77/sandbox/linux/system_headers/arm64_linux_syscalls.h ---- chromium-70.0.3538.77/sandbox/linux/system_headers/arm64_linux_syscalls.h.aarch64-new-stat 2018-11-06 13:27:05.118766581 -0500 -+++ chromium-70.0.3538.77/sandbox/linux/system_headers/arm64_linux_syscalls.h 2018-11-06 13:27:34.575204504 -0500 -@@ -5,6 +5,8 @@ - #ifndef SANDBOX_LINUX_SYSTEM_HEADERS_ARM64_LINUX_SYSCALLS_H_ - #define SANDBOX_LINUX_SYSTEM_HEADERS_ARM64_LINUX_SYSCALLS_H_ - -+#define __ARCH_WANT_NEW_STAT -+ - #include - - #if !defined(__NR_io_setup) diff --git a/chromium-71.0.3578.98-skia-aarch64-buildfix.patch b/chromium-71.0.3578.98-skia-aarch64-buildfix.patch deleted file mode 100644 index 5da1674..0000000 --- a/chromium-71.0.3578.98-skia-aarch64-buildfix.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -up chromium-71.0.3578.98/third_party/skia/src/opts/SkRasterPipeline_opts.h.aarch64fix chromium-71.0.3578.98/third_party/skia/src/opts/SkRasterPipeline_opts.h ---- chromium-71.0.3578.98/third_party/skia/src/opts/SkRasterPipeline_opts.h.aarch64fix 2018-12-14 11:17:43.249121756 -0500 -+++ chromium-71.0.3578.98/third_party/skia/src/opts/SkRasterPipeline_opts.h 2018-12-14 11:20:07.770030234 -0500 -@@ -658,7 +658,7 @@ SI F approx_powf(F x, F y) { - } - - SI F from_half(U16 h) { --#if defined(SK_CPU_ARM64) && !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) -@@ -678,7 +678,7 @@ SI F from_half(U16 h) { - } - - SI U16 to_half(F f) { --#if defined(SK_CPU_ARM64) && !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) diff --git a/chromium-72.0.3626.121-notest.patch b/chromium-72.0.3626.121-notest.patch deleted file mode 100644 index e8b7bf4..0000000 --- a/chromium-72.0.3626.121-notest.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-72.0.3626.121/chrome/test/data/webui_test_resources.grd.notest chromium-72.0.3626.121/chrome/test/data/webui_test_resources.grd ---- chromium-72.0.3626.121/chrome/test/data/webui_test_resources.grd.notest 2019-03-10 13:54:17.843583876 -0400 -+++ chromium-72.0.3626.121/chrome/test/data/webui_test_resources.grd 2019-03-10 14:03:29.302063637 -0400 -@@ -8,7 +8,6 @@ - - - -- - - - diff --git a/chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch b/chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch deleted file mode 100644 index f8abb52..0000000 --- a/chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch +++ /dev/null @@ -1,48 +0,0 @@ -diff -up chromium-73.0.3683.75/build/toolchain/linux/BUILD.gn.disable-ndnpc chromium-73.0.3683.75/build/toolchain/linux/BUILD.gn ---- chromium-73.0.3683.75/build/toolchain/linux/BUILD.gn.disable-ndnpc 2019-03-13 10:29:00.331009643 -0400 -+++ chromium-73.0.3683.75/build/toolchain/linux/BUILD.gn 2019-03-13 10:29:28.344458746 -0400 -@@ -31,7 +31,7 @@ gcc_toolchain("arm64") { - ld = cxx - readelf = "${toolprefix}readelf" - nm = "${toolprefix}nm" -- extra_cppflags = "-fno-delete-null-pointer-checks" -+ extra_cppflags = "" - - toolchain_args = { - current_cpu = "arm64" -@@ -50,7 +50,7 @@ gcc_toolchain("arm") { - ld = cxx - readelf = "${toolprefix}readelf" - nm = "${toolprefix}nm" -- extra_cppflags = "-fno-delete-null-pointer-checks" -+ extra_cppflags = "" - - toolchain_args = { - current_cpu = "arm" -@@ -101,7 +101,7 @@ gcc_toolchain("x86") { - nm = "nm" - ar = "ar" - ld = cxx -- extra_cppflags = "-fno-delete-null-pointer-checks -g1" -+ extra_cppflags = "-g1" - - # Output linker map files for binary size analysis. - enable_linker_map = true -@@ -155,7 +155,7 @@ gcc_toolchain("x64") { - nm = "nm" - ar = "ar" - ld = cxx -- extra_cppflags = "-fno-delete-null-pointer-checks" -+ extra_cppflags = "" - - # Output linker map files for binary size analysis. - enable_linker_map = true -@@ -190,7 +190,7 @@ gcc_toolchain("mipsel") { - ld = cxx - readelf = "${toolprefix}readelf" - nm = "${toolprefix}nm" -- extra_cppflags = "-fno-delete-null-pointer-checks" -+ extra_cppflags = "" - - toolchain_args = { - cc_wrapper = "" diff --git a/chromium-75.0.3770.100-git00281713.patch b/chromium-75.0.3770.100-git00281713.patch deleted file mode 100644 index 4356435..0000000 --- a/chromium-75.0.3770.100-git00281713.patch +++ /dev/null @@ -1,34 +0,0 @@ -diff -up chromium-75.0.3770.100/chrome/browser/performance_manager/chrome_content_browser_client_performance_manager_part.cc.git00281713 chromium-75.0.3770.100/chrome/browser/performance_manager/chrome_content_browser_client_performance_manager_part.cc ---- chromium-75.0.3770.100/chrome/browser/performance_manager/chrome_content_browser_client_performance_manager_part.cc.git00281713 2019-07-02 09:10:38.951369854 -0400 -+++ chromium-75.0.3770.100/chrome/browser/performance_manager/chrome_content_browser_client_performance_manager_part.cc 2019-07-02 09:11:59.864642942 -0400 -@@ -12,13 +12,19 @@ - #include "chrome/browser/performance_manager/graph/process_node_impl.h" - #include "chrome/browser/performance_manager/performance_manager.h" - #include "chrome/browser/performance_manager/render_process_user_data.h" -+#include "content/public/browser/render_process_host.h" - #include "services/resource_coordinator/public/mojom/coordination_unit.mojom.h" - - namespace { - - void BindProcessNode( -- content::RenderProcessHost* render_process_host, -+ int render_process_host_id, - resource_coordinator::mojom::ProcessCoordinationUnitRequest request) { -+ content::RenderProcessHost* render_process_host = -+ content::RenderProcessHost::FromID(render_process_host_id); -+ if (!render_process_host) -+ return; -+ - performance_manager::RenderProcessUserData* user_data = - performance_manager::RenderProcessUserData::GetForRenderProcessHost( - render_process_host); -@@ -47,8 +53,7 @@ void ChromeContentBrowserClientPerforman - blink::AssociatedInterfaceRegistry* associated_registry, - content::RenderProcessHost* render_process_host) { - registry->AddInterface( -- base::BindRepeating(&BindProcessNode, -- base::Unretained(render_process_host)), -+ base::BindRepeating(&BindProcessNode, render_process_host->GetID()), - base::SequencedTaskRunnerHandle::Get()); - - // Ideally this would strictly be a "CreateForRenderProcess", but when a diff --git a/chromium-75.0.3770.80-SIOCGSTAMP.patch b/chromium-75.0.3770.80-SIOCGSTAMP.patch deleted file mode 100644 index 0ef1e7f..0000000 --- a/chromium-75.0.3770.80-SIOCGSTAMP.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -up chromium-75.0.3770.80/third_party/webrtc/rtc_base/physical_socket_server.h.SIOCGSTAMP chromium-75.0.3770.80/third_party/webrtc/rtc_base/physical_socket_server.h ---- chromium-75.0.3770.80/third_party/webrtc/rtc_base/physical_socket_server.h.SIOCGSTAMP 2019-06-06 10:04:57.050403639 -0400 -+++ chromium-75.0.3770.80/third_party/webrtc/rtc_base/physical_socket_server.h 2019-06-06 10:06:03.975121688 -0400 -@@ -16,6 +16,11 @@ - #define WEBRTC_USE_EPOLL 1 - #endif - -+// for SIOCGSTAMP in Linux 5.2 -+#if defined(WEBRTC_LINUX) -+#include -+#endif -+ - #include - #include - #include diff --git a/chromium-75.0.3770.80-aeed4d-gcc-dcheck_ne-fix.patch b/chromium-75.0.3770.80-aeed4d-gcc-dcheck_ne-fix.patch deleted file mode 100644 index 2a8ac2f..0000000 --- a/chromium-75.0.3770.80-aeed4d-gcc-dcheck_ne-fix.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -up chromium-75.0.3770.80/cc/scheduler/compositor_frame_reporting_controller.cc.gcc-dcheck_ne-fix chromium-75.0.3770.80/cc/scheduler/compositor_frame_reporting_controller.cc ---- chromium-75.0.3770.80/cc/scheduler/compositor_frame_reporting_controller.cc.gcc-dcheck_ne-fix 2019-06-06 12:42:27.431575032 -0400 -+++ chromium-75.0.3770.80/cc/scheduler/compositor_frame_reporting_controller.cc 2019-06-06 12:43:05.692848409 -0400 -@@ -31,8 +31,8 @@ void CompositorFrameReportingController: - - 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, diff --git a/chromium-75.0.3770.80-gcc-no-assume.patch b/chromium-75.0.3770.80-gcc-no-assume.patch deleted file mode 100644 index 0bbb08f..0000000 --- a/chromium-75.0.3770.80-gcc-no-assume.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -up chromium-75.0.3770.80/third_party/angle/src/common/debug.h.gcc-assume chromium-75.0.3770.80/third_party/angle/src/common/debug.h ---- chromium-75.0.3770.80/third_party/angle/src/common/debug.h.gcc-assume 2019-06-06 17:38:01.876631704 -0400 -+++ chromium-75.0.3770.80/third_party/angle/src/common/debug.h 2019-06-07 09:30:06.205446547 -0400 -@@ -248,7 +248,7 @@ std::ostream &FmtHex(std::ostream &os, T - # define EVENT(message, ...) (void(0)) - #endif - --#if defined(COMPILER_GCC) || defined(__clang__) -+#if defined(__GNUC__) - # define ANGLE_CRASH() __builtin_trap() - #else - # define ANGLE_CRASH() ((void)(*(volatile char *)0 = 0)), __assume(0) -@@ -336,7 +336,7 @@ std::ostream &FmtHex(std::ostream &os, T - # 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") diff --git a/chromium-75.0.3770.80-revert-daff6b.patch b/chromium-75.0.3770.80-revert-daff6b.patch deleted file mode 100644 index f996898..0000000 --- a/chromium-75.0.3770.80-revert-daff6b.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -up chromium-75.0.3770.80/components/omnibox/browser/autocomplete_match.cc.revert-daff6b chromium-75.0.3770.80/components/omnibox/browser/autocomplete_match.cc ---- chromium-75.0.3770.80/components/omnibox/browser/autocomplete_match.cc.revert-daff6b 2019-06-06 14:54:13.819190586 -0400 -+++ chromium-75.0.3770.80/components/omnibox/browser/autocomplete_match.cc 2019-06-06 14:54:31.892839991 -0400 -@@ -154,8 +154,7 @@ AutocompleteMatch::AutocompleteMatch(con - additional_info(match.additional_info), - duplicate_matches(match.duplicate_matches) {} - --AutocompleteMatch::AutocompleteMatch(AutocompleteMatch&& match) noexcept = -- default; -+AutocompleteMatch::AutocompleteMatch(AutocompleteMatch&& match) = default; - - AutocompleteMatch::~AutocompleteMatch() { - } diff --git a/chromium-76.0.3809.100-libusb_interrupt_event_handler.patch b/chromium-76.0.3809.100-libusb_interrupt_event_handler.patch deleted file mode 100644 index 690f0f9..0000000 --- a/chromium-76.0.3809.100-libusb_interrupt_event_handler.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -up chromium-76.0.3809.100/services/device/usb/usb_context.cc.modern-libusbx chromium-76.0.3809.100/services/device/usb/usb_context.cc ---- chromium-76.0.3809.100/services/device/usb/usb_context.cc.modern-libusbx 2019-08-12 15:40:49.034170484 +0200 -+++ chromium-76.0.3809.100/services/device/usb/usb_context.cc 2019-08-12 15:41:23.775558867 +0200 -@@ -58,7 +58,11 @@ void UsbContext::UsbEventHandler::Run() - - void UsbContext::UsbEventHandler::Stop() { - base::subtle::Release_Store(&running_, 0); -+#ifdef LIBUSB_API_VERSION >= 0x01000105 -+ libusb_interrupt_event_handler(context_); -+#else - libusb_interrupt_handle_event(context_); -+#endif - } - - UsbContext::UsbContext(PlatformUsbContext context) : context_(context) { diff --git a/chromium-77.0.3865.75-boolfix.patch b/chromium-77.0.3865.75-boolfix.patch deleted file mode 100644 index c836214..0000000 --- a/chromium-77.0.3865.75-boolfix.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff -up chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_ptr_info.h ---- chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix 2019-09-09 23:55:20.000000000 +0200 -+++ chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_ptr_info.h 2019-09-12 15:43:30.025360946 +0200 -@@ -45,7 +45,7 @@ class AssociatedInterfacePtrInfo { - - bool is_valid() const { return handle_.is_valid(); } - -- explicit operator bool() const { return handle_.is_valid(); } -+ explicit operator bool() const { return (bool) handle_.is_valid(); } - - ScopedInterfaceEndpointHandle PassHandle() { - return std::move(handle_); -diff -up chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_request.h.boolfix chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_request.h ---- chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_request.h.boolfix 2019-09-09 23:55:20.000000000 +0200 -+++ chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_request.h 2019-09-12 15:43:30.025360946 +0200 -@@ -51,7 +51,7 @@ class AssociatedInterfaceRequest { - // handle. - 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(); } - - ScopedInterfaceEndpointHandle PassHandle() { return std::move(handle_); } - diff --git a/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch b/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch deleted file mode 100644 index 920a53e..0000000 --- a/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -up chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h.nogccoptmath chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h ---- chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h.nogccoptmath 2019-09-13 14:17:22.726738088 +0200 -+++ chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h 2019-09-13 14:31:37.686898493 +0200 -@@ -23,9 +23,8 @@ - // Where available use builtin math overflow support on Clang and GCC. - #elif !defined(__native_client__) && \ - ((defined(__clang__) && \ -- ((__clang_major__ > 3) || \ -- (__clang_major__ == 3 && __clang_minor__ >= 4))) || \ -- (defined(__GNUC__) && __GNUC__ >= 5)) -+ (__clang_major__ > 3) || \ -+ (__clang_major__ == 3 && __clang_minor__ >= 4))) - #include "base/numerics/safe_math_clang_gcc_impl.h" - #define BASE_HAS_OPTIMIZED_SAFE_MATH (1) - #else diff --git a/chromium-77.0.3865.75-gcc5-r3.patch b/chromium-77.0.3865.75-gcc5-r3.patch deleted file mode 100644 index 34b858a..0000000 --- a/chromium-77.0.3865.75-gcc5-r3.patch +++ /dev/null @@ -1,36 +0,0 @@ -diff -up chromium-77.0.3865.75/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 chromium-77.0.3865.75/gpu/ipc/common/mailbox_struct_traits.h ---- chromium-77.0.3865.75/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 2019-09-09 23:55:18.000000000 +0200 -+++ chromium-77.0.3865.75/gpu/ipc/common/mailbox_struct_traits.h 2019-09-12 10:13:16.710206500 +0200 -@@ -15,7 +15,7 @@ namespace mojo { - template <> - struct StructTraits { - static base::span name(const gpu::Mailbox& mailbox) { -- return mailbox.name; -+ return base::make_span(mailbox.name); - } - static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out); - }; -diff -up chromium-77.0.3865.75/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 chromium-77.0.3865.75/services/viz/public/cpp/compositing/quads_struct_traits.h ---- chromium-77.0.3865.75/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 2019-09-09 23:55:23.000000000 +0200 -+++ chromium-77.0.3865.75/services/viz/public/cpp/compositing/quads_struct_traits.h 2019-09-12 10:13:16.710206500 +0200 -@@ -391,7 +391,7 @@ struct StructTraits vertex_opacity(const viz::DrawQuad& input) { - const viz::TextureDrawQuad* quad = - viz::TextureDrawQuad::MaterialCast(&input); -- return quad->vertex_opacity; -+ return base::make_span(quad->vertex_opacity); - } - - static bool y_flipped(const viz::DrawQuad& input) { -diff -up chromium-77.0.3865.75/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 chromium-77.0.3865.75/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc ---- chromium-77.0.3865.75/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 2019-09-12 10:13:16.711206509 +0200 -+++ chromium-77.0.3865.75/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2019-09-12 15:41:15.300158849 +0200 -@@ -10,7 +10,7 @@ - - #include "modules/audio_processing/aec3/aec_state.h" - --#include -+#include - - #include - #include diff --git a/chromium.spec b/chromium.spec index c41439f..e6a6f88 100644 --- a/chromium.spec +++ b/chromium.spec @@ -164,114 +164,61 @@ Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) ### Chromium Fedora Patches ### -Patch0: chromium-67.0.3396.62-gcc5.patch -Patch1: chromium-45.0.2454.101-linux-path-max.patch -Patch2: chromium-55.0.2883.75-addrfix.patch -Patch3: chromium-72.0.3626.121-notest.patch -# Use libusb_interrupt_event_handler from current libusbx (1.0.21-0.1.git448584a) -Patch4: chromium-76.0.3809.100-libusb_interrupt_event_handler.patch -# Use PIE in the Linux sandbox (from openSUSE via Russian Fedora) -Patch6: chromium-70.0.3538.67-sandbox-pie.patch +Patch0: chromium-70.0.3538.67-sandbox-pie.patch # Use /etc/chromium for master_prefs -Patch7: chromium-68.0.3440.106-master-prefs-path.patch +Patch1: chromium-68.0.3440.106-master-prefs-path.patch # Use gn system files -Patch8: chromium-67.0.3396.62-gn-system.patch -# Fix issue where timespec is not defined when sys/stat.h is included. -Patch9: chromium-53.0.2785.92-boringssl-time-fix.patch -# I wouldn't have to do this if there was a standard way to append extra compiler flags -Patch10: chromium-63.0.3289.84-nullfix.patch -# Add explicit includedir for jpeglib.h -Patch11: chromium-54.0.2840.59-jpeg-include-dir.patch -# On i686, pass --no-keep-memory --reduce-memory-overheads to ld. -Patch12: chromium-59.0.3071.86-i686-ld-memory-tricks.patch +Patch2: chromium-67.0.3396.62-gn-system.patch # Revert https://chromium.googlesource.com/chromium/src/+/b794998819088f76b4cf44c8db6940240c563cf4%5E%21/#F0 # https://bugs.chromium.org/p/chromium/issues/detail?id=712737 # https://bugzilla.redhat.com/show_bug.cgi?id=1446851 -Patch13: chromium-58.0.3029.96-revert-b794998819088f76b4cf44c8db6940240c563cf4.patch -# Correctly compile the stdatomic.h in ffmpeg with gcc 4.8 -Patch14: chromium-64.0.3282.119-ffmpeg-stdatomic.patch -# Nacl can't die soon enough -Patch15: chromium-66.0.3359.117-system-clang.patch +Patch3: chromium-58.0.3029.96-revert-b794998819088f76b4cf44c8db6940240c563cf4.patch # Do not prefix libpng functions -Patch16: chromium-60.0.3112.78-no-libpng-prefix.patch +Patch4: chromium-60.0.3112.78-no-libpng-prefix.patch # Do not mangle libjpeg -Patch17: chromium-60.0.3112.78-jpeg-nomangle.patch +Patch5: chromium-60.0.3112.78-jpeg-nomangle.patch # Do not mangle zlib -Patch18: chromium-77.0.3865.75-no-zlib-mangle.patch -# Fix libavutil include pathing to find arch specific timer.h -# For some reason, this only fails on aarch64. No idea why. -Patch19: chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch -# from gentoo -Patch20: chromium-77.0.3865.75-gcc-no-opt-safe-math.patch -# From gentoo -Patch21: chromium-77.0.3865.75-gcc5-r3.patch -# To use round with gcc, you need to #include -Patch22: chromium-65.0.3325.146-gcc-round-fix.patch -# Include proper headers to invoke memcpy() -Patch23: chromium-65.0.3325.146-memcpy-fix.patch -# ../../mojo/public/cpp/bindings/associated_interface_ptr_info.h:48:43: error: cannot convert 'const mojo::ScopedInterfaceEndpointHandle' to 'bool' in return -Patch24: chromium-77.0.3865.75-boolfix.patch -# From Debian -Patch25: chromium-71.0.3578.98-skia-aarch64-buildfix.patch +Patch6: chromium-77.0.3865.75-no-zlib-mangle.patch # Do not use unrar code, it is non-free -Patch27: chromium-73.0.3683.75-norar.patch -# Upstream GCC fixes -Patch28: chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch -# Add "Fedora" to the user agent string -Patch29: chromium-77.0.3865.75-fedora-user-agent.patch -# Try to fix version.py for Rawhide -Patch30: chromium-71.0.3578.98-py2-bootstrap.patch -# Fix default on redeclaration error -# https://chromium.googlesource.com/chromium/src/+/122692ccee62223f266a988c575ae687e3f4c056%5E%21/#F0 -Patch31: chromium-68.0.3440.106-fix-default-on-redeclaration.patch +Patch7: chromium-73.0.3683.75-norar.patch # Use Gentoo's Widevine hack # https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-widevine-r3.patch -Patch32: chromium-71.0.3578.98-widevine-r3.patch -# Do not require sysroot -# Forget about trying to make libc++ -# BUILD SANELY PLEASE -Patch33: chromium-69.0.3497.81-build-sanely-please.patch +Patch8: chromium-71.0.3578.98-widevine-r3.patch # Disable fontconfig cache magic that breaks remoting -Patch34: chromium-70.0.3538.67-disable-fontconfig-cache-magic.patch -# Fix aarch64 build against latest linux kernel headers -Patch35: chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch +Patch9: chromium-70.0.3538.67-disable-fontconfig-cache-magic.patch # drop rsp clobber, which breaks gcc9 (thanks to Jeff Law) -Patch36: chromium-71.0.3578.98-gcc9-drop-rsp-clobber.patch +Patch10: chromium-71.0.3578.98-gcc9-drop-rsp-clobber.patch # Try to load widevine from other places -Patch37: chromium-widevine-other-locations.patch -# Disable -fno-delete-null-pointer-checks -Patch38: chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch -# Linux 5.2 defines SIOCGSTAMP in a slightly different way, so we need to teach chromium where to find it -Patch41: chromium-75.0.3770.80-SIOCGSTAMP.patch -# Revert https://chromium.googlesource.com/chromium/src/+/daff6b66faae53a0cefb88987c9ff4843629b728%5E%21/#F0 -# It might make clang happy but it breaks gcc. F*** clang. -Patch43: chromium-75.0.3770.80-revert-daff6b.patch +Patch11: chromium-widevine-other-locations.patch +# Try to fix version.py for Rawhide +Patch12: chromium-71.0.3578.98-py2-bootstrap.patch +# Add "Fedora" to the user agent string +Patch13: chromium-77.0.3865.75-fedora-user-agent.patch + # rename function to avoid conflict with rawhide glibc "gettid()" -Patch45: chromium-75.0.3770.80-grpc-gettid-fix.patch +Patch50: chromium-75.0.3770.80-grpc-gettid-fix.patch # In GCC one can't use alignas() for exported classes # https://chromium.googlesource.com/chromium/src.git/+/8148fd96ae04a1150a9c6012634dcd2a7335f87a -Patch61: chromium-76.0.3809.100-gcc-no-alignas-and-export.patch +Patch51: chromium-76.0.3809.100-gcc-no-alignas-and-export.patch # Needs to be submitted.. -Patch62: chromium-76.0.3809.100-gcc-remoting-constexpr.patch +Patch52: chromium-76.0.3809.100-gcc-remoting-constexpr.patch # Needs to be submitted.. (ugly hack, needs to be added properly to GN files) -Patch63: chromium-76.0.3809.100-vtable-symbol-undefined.patch +Patch53: chromium-76.0.3809.100-vtable-symbol-undefined.patch # https://chromium.googlesource.com/chromium/src.git/+/3c9720245e440c4b7222f8348d2a2a3c25e098ae -Patch64: chromium-77.0.3865.75-certificate-transparency.patch +Patch54: chromium-77.0.3865.75-certificate-transparency.patch # https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-unbundle-zlib.patch -Patch65: chromium-77.0.3865.75-unbundle-zlib.patch +Patch55: chromium-77.0.3865.75-unbundle-zlib.patch # Needs to be submitted.. -Patch66: chromium-77.0.3865.75-gcc-include-memory.patch -# Needs to be submitted.. -Patch67: chromium-77.0.3865.75-base-gcc-no-alignas.patch +Patch56: chromium-77.0.3865.75-gcc-include-memory.patch +# https://chromium.googlesource.com/chromium/src/+/6b633c4b14850df376d5cec571699018772f358e +Patch57: chromium-77.0.3865.75-base-gcc-no-alignas.patch # https://chromium.googlesource.com/chromium/src/+/27e25336b8316ff3ec4e464058682ed85801fd06 -Patch68: chromium-77.0.3865.75-harfbuzz-subset.patch +Patch58: chromium-77.0.3865.75-harfbuzz-subset.patch # https://chromium.googlesource.com/chromium/src.git/+/f08cb0022527081c078e8b96062e6c9b4fbda151 -Patch69: chromium-77.0.3865.75-gcc-abstract-class.patch +Patch59: chromium-77.0.3865.75-gcc-abstract-class.patch # https://chromium.googlesource.com/chromium/src/+/5baf7df7f4c5971dab552897eeef94b194650ce5 -Patch70: chromium-77.0.3865.75-missing-limits.patch +Patch60: chromium-77.0.3865.75-missing-limits.patch -# Apply these changes to work around EPEL7 compiler issues -Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch # Use lstdc++ on EPEL7 only Patch101: chromium-75.0.3770.100-epel7-stdc++.patch # el7 only patch @@ -757,60 +704,40 @@ udev. %setup -q -n chromium-%{version} ### Chromium Fedora Patches ### -%patch0 -p1 -b .gcc5 -%patch1 -p1 -b .pathmax -%patch2 -p1 -b .addrfix -%patch3 -p1 -b .notest -%patch4 -p1 -b .modern-libusbx -%patch6 -p1 -b .sandboxpie -%patch7 -p1 -b .etc -%patch8 -p1 -b .gnsystem -%patch9 -p1 -b .timefix -%patch10 -p1 -b .nullfix -%patch11 -p1 -b .jpegfix -%patch12 -p1 -b .ldmemory -%patch13 -p1 -b .revert -%patch14 -p1 -b .ffmpeg-stdatomic -%patch15 -p1 -b .system-clang -%patch16 -p1 -b .noprefix -%patch17 -p1 -b .nomangle -%patch18 -p1 -b .nozmangle -%patch19 -p1 -b .pathfix -%patch20 -p1 -b .nogccoptmath -%patch21 -p1 -b .gcc5-r3 -%patch22 -p1 -b .gcc-round-fix -%patch23 -p1 -b .memcpyfix -%patch24 -p1 -b .boolfix -#%patch25 -p1 -b .aarch64fix -%patch27 -p1 -b .nounrar -%patch28 -p1 -b .gcc-cpolicyprovider -%patch29 -p1 -b .fedora-user-agent -%patch30 -p1 -b .py2 -%patch31 -p1 -b .fix-default-redeclaration -%patch32 -p1 -b .wvhack -%patch33 -p1 -b .sanebuild -%patch34 -p1 -b .nofc -%patch35 -p1 -b .aarch64-new-stat -%patch36 -p1 -b .gcc9 -%patch37 -p1 -b .widevine-other-locations -%patch38 -p1 -b .disable-ndnpc -%patch41 -p1 -b .SIOCGSTAMP -%patch43 -p1 -b .revert-daff6b -%patch45 -p1 -b .gettid-fix -%patch61 -p1 -b .gcc-no-alignas-and-export -%patch62 -p1 -b .gcc-remoting-constexpr -%patch63 -p1 -b .vtable-symbol-undefined -%patch64 -p1 -b .certificate-transparency -%patch65 -p1 -b .unbundle-zlib -%patch66 -p1 -b .gcc-include-memory -%patch67 -p1 -b .base-gcc-no-alignas -%patch68 -p1 -b .harfbuzz-subset -%patch69 -p1 -b .gcc-abstract-class -%patch70 -p1 -b .missing-limits +%patch0 -p1 -b .sandboxpie +%patch1 -p1 -b .etc +%patch2 -p1 -b .gnsystem +%patch3 -p1 -b .revert +%patch4 -p1 -b .nolibpngprefix +%patch5 -p1 -b .nolibjpegmangle +%patch6 -p1 -b .nozlibmangle +%patch7 -p1 -b .nounrar +%patch8 -p1 -b .widevine-hack +%patch9 -p1 -b .nofontconfigcache +%patch10 -p1 -b .gcc9 +%patch11 -p1 -b .widevine-other-locations +%patch12 -p1 -b .py2 + +# Short term fixes (usually gcc and backports) +%patch50 -p1 -b .gettid-fix +%patch51 -p1 -b .gcc-no-alignas-and-export +%patch52 -p1 -b .gcc-remoting-constexpr +%patch53 -p1 -b .vtable-symbol-undefined +%patch54 -p1 -b .certificate-transparency +%patch55 -p1 -b .unbundle-zlib +%patch56 -p1 -b .gcc-include-memory +%patch57 -p1 -b .base-gcc-no-alignas +%patch58 -p1 -b .harfbuzz-subset +%patch59 -p1 -b .gcc-abstract-class +%patch60 -p1 -b .missing-limits + +# Fedora branded user agent +%if 0%{?fedora} +%patch13 -p1 -b .fedora-user-agent +%endif # EPEL specific patches %if 0%{?rhel} == 7 -%patch100 -p1 -b .kmaxskip %patch101 -p1 -b .epel7 %patch102 -p1 -b .el7-noexcept %endif @@ -1287,6 +1214,11 @@ sed -i.orig -e 's/getenv("CHROME_VERSION_EXTRA")/"Fedora Project"/' $FILE . /opt/rh/devtoolset-%{dts_version}/enable %endif +# Decrease the debuginfo verbosity, so it compiles in koji +%ifarch %{ix86} +%global optflags %(echo %{optflags} | sed 's/-g /-g1 /') +%endif + echo # Now do the full browser %if 0%{freeworld} From 67e04f35f09abe468100109658f02b424c59286c Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 23 Sep 2019 17:21:06 +0200 Subject: [PATCH 0572/1449] Fix the icon So the monochromatic icon is being shown even in the GNOME's overview and it's ugly (as it's upscaled from 22x22). Remove it. --- chromium.spec | 2 -- 1 file changed, 2 deletions(-) diff --git a/chromium.spec b/chromium.spec index e6a6f88..930b750 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1388,8 +1388,6 @@ mkdir -p %{buildroot}%{_datadir}/icons/hicolor/48x48/apps cp -a chrome/app/theme/chromium/product_logo_48.png %{buildroot}%{_datadir}/icons/hicolor/48x48/apps/%{chromium_browser_channel}.png mkdir -p %{buildroot}%{_datadir}/icons/hicolor/24x24/apps cp -a chrome/app/theme/chromium/product_logo_24.png %{buildroot}%{_datadir}/icons/hicolor/24x24/apps/%{chromium_browser_channel}.png -mkdir -p %{buildroot}%{_datadir}/icons/hicolor/symbolic/apps -cp -a chrome/app/theme/chromium/product_logo_22_mono.png %{buildroot}%{_datadir}/icons/hicolor/symbolic/apps/%{chromium_browser_channel}.png # Install the master_preferences file mkdir -p %{buildroot}%{_sysconfdir}/%{name} From 58128e168f2cad680db52f8be0d98a2bbd85b556 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 23 Sep 2019 17:25:20 +0200 Subject: [PATCH 0573/1449] Fix the icon Remove quite a few of downstream patches Fix the crashes by backporting an upstream bug Resolves: rhbz#1754179 --- chromium-77.0.3865.90-linked-hash-set.patch | 130 ++++++++++++++++++++ chromium.spec | 11 +- 2 files changed, 140 insertions(+), 1 deletion(-) create mode 100644 chromium-77.0.3865.90-linked-hash-set.patch diff --git a/chromium-77.0.3865.90-linked-hash-set.patch b/chromium-77.0.3865.90-linked-hash-set.patch new file mode 100644 index 0000000..f921f1a --- /dev/null +++ b/chromium-77.0.3865.90-linked-hash-set.patch @@ -0,0 +1,130 @@ +From 74138b9febd37eac0fc26b8efb110014a83a52c6 Mon Sep 17 00:00:00 2001 +From: Jeremy Roman +Date: Wed, 07 Aug 2019 13:26:48 +0000 +Subject: [PATCH] WTF: Make LinkedHashSet understand values for which memset initialization would be bad. + +Includes a unit test which fails before, and uses this to fix FontCacheKeyTraits. + +Bug: 980025 +Change-Id: If41f97444c7fd37b9b95d6dadaf3da5689079e9e +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1739948 +Reviewed-by: Kentaro Hara +Reviewed-by: Yutaka Hirano +Commit-Queue: Jeremy Roman +Cr-Commit-Position: refs/heads/master@{#684731} +--- + +diff --git a/third_party/blink/renderer/platform/fonts/font_cache_key.h b/third_party/blink/renderer/platform/fonts/font_cache_key.h +index 0efc8fb..90063cb 100644 +--- a/third_party/blink/renderer/platform/fonts/font_cache_key.h ++++ b/third_party/blink/renderer/platform/fonts/font_cache_key.h +@@ -133,6 +133,10 @@ + + struct FontCacheKeyTraits : WTF::SimpleClassHashTraits { + STATIC_ONLY(FontCacheKeyTraits); ++ ++ // std::string's empty state need not be zero in all implementations, ++ // and it is held within FontFaceCreationParams. ++ static const bool kEmptyValueIsZero = false; + }; + + } // namespace blink +diff --git a/third_party/blink/renderer/platform/wtf/linked_hash_set.h b/third_party/blink/renderer/platform/wtf/linked_hash_set.h +index b35b6e9..77e524c 100644 +--- a/third_party/blink/renderer/platform/wtf/linked_hash_set.h ++++ b/third_party/blink/renderer/platform/wtf/linked_hash_set.h +@@ -146,6 +146,11 @@ + LinkedHashSetNodeBase* next) + : LinkedHashSetNodeBase(prev, next), value_(value) {} + ++ LinkedHashSetNode(ValueArg&& value, ++ LinkedHashSetNodeBase* prev, ++ LinkedHashSetNodeBase* next) ++ : LinkedHashSetNodeBase(prev, next), value_(std::move(value)) {} ++ + LinkedHashSetNode(LinkedHashSetNode&& other) + : LinkedHashSetNodeBase(std::move(other)), + value_(std::move(other.value_)) {} +@@ -445,10 +450,13 @@ + + // The slot is empty when the next_ field is zero so it's safe to zero + // the backing. +- static const bool kEmptyValueIsZero = true; ++ static const bool kEmptyValueIsZero = ValueTraits::kEmptyValueIsZero; + + static const bool kHasIsEmptyValueFunction = true; + static bool IsEmptyValue(const Node& node) { return !node.next_; } ++ static Node EmptyValue() { ++ return Node(ValueTraits::EmptyValue(), nullptr, nullptr); ++ } + + static const int kDeletedValue = -1; + +diff --git a/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc b/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc +index 4c3f899..cd1be00 100644 +--- a/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc ++++ b/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc +@@ -487,6 +487,7 @@ + }; + + struct Complicated { ++ Complicated() : Complicated(0) {} + Complicated(int value) : simple_(value) { objects_constructed_++; } + + Complicated(const Complicated& other) : simple_(other.simple_) { +@@ -495,9 +496,6 @@ + + Simple simple_; + static int objects_constructed_; +- +- private: +- Complicated() = delete; + }; + + int Complicated::objects_constructed_ = 0; +@@ -731,4 +729,45 @@ + + } // anonymous namespace + ++// A unit type which objects to its state being initialized wrong. ++struct InvalidZeroValue { ++ InvalidZeroValue() = default; ++ InvalidZeroValue(WTF::HashTableDeletedValueType) : deleted_(true) {} ++ ~InvalidZeroValue() { CHECK(ok_); } ++ bool IsHashTableDeletedValue() const { return deleted_; } ++ ++ bool ok_ = true; ++ bool deleted_ = false; ++}; ++ ++template <> ++struct HashTraits : SimpleClassHashTraits { ++ static const bool kEmptyValueIsZero = false; ++}; ++ ++template <> ++struct DefaultHash { ++ struct Hash { ++ static unsigned GetHash(const InvalidZeroValue&) { return 0; } ++ static bool Equal(const InvalidZeroValue&, const InvalidZeroValue&) { ++ return true; ++ } ++ }; ++}; ++ ++template ++class ListOrLinkedHashSetInvalidZeroTest : public testing::Test {}; ++ ++using InvalidZeroValueSetTypes = ++ testing::Types, ++ ListHashSet, ++ LinkedHashSet>; ++TYPED_TEST_SUITE(ListOrLinkedHashSetInvalidZeroTest, InvalidZeroValueSetTypes); ++ ++TYPED_TEST(ListOrLinkedHashSetInvalidZeroTest, InvalidZeroValue) { ++ using Set = TypeParam; ++ Set set; ++ set.insert(InvalidZeroValue()); ++} ++ + } // namespace WTF diff --git a/chromium.spec b/chromium.spec index 930b750..ff76b24 100644 --- a/chromium.spec +++ b/chromium.spec @@ -158,7 +158,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3865.90 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -218,6 +218,8 @@ Patch58: chromium-77.0.3865.75-harfbuzz-subset.patch Patch59: chromium-77.0.3865.75-gcc-abstract-class.patch # https://chromium.googlesource.com/chromium/src/+/5baf7df7f4c5971dab552897eeef94b194650ce5 Patch60: chromium-77.0.3865.75-missing-limits.patch +# https://chromium.googlesource.com/chromium/src/+/74138b9febd37eac0fc26b8efb110014a83a52c6 +Patch61: chromium-77.0.3865.90-linked-hash-set.patch # Use lstdc++ on EPEL7 only Patch101: chromium-75.0.3770.100-epel7-stdc++.patch @@ -730,6 +732,7 @@ udev. %patch58 -p1 -b .harfbuzz-subset %patch59 -p1 -b .gcc-abstract-class %patch60 -p1 -b .missing-limits +%patch61 -p1 -b .linked-hash-set # Fedora branded user agent %if 0%{?fedora} @@ -1632,6 +1635,12 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Mon Sep 23 2019 Tomas Popela - 77.0.3865.90-2 +- Fix the icon +- Remove quite a few of downstream patches +- Fix the crashes by backporting an upstream bug +- Resolves: rhbz#1754179 + * Thu Sep 19 2019 Tomas Popela - 77.0.3865.90-1 - Update to 77.0.3865.90 From 18d61f508bd415e9adebb31e5c76f67049d6e5dc Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Sun, 15 Sep 2019 13:36:44 +0200 Subject: [PATCH 0574/1449] Don't try to revert a previously removed patch --- chromium.spec | 2 -- 1 file changed, 2 deletions(-) diff --git a/chromium.spec b/chromium.spec index 883277c..838e4b8 100644 --- a/chromium.spec +++ b/chromium.spec @@ -862,8 +862,6 @@ udev. %patch100 -p1 -b .kmaxskip %patch101 -p1 -b .epel7 %patch102 -p1 -b .el7-noexcept -# Revert patch58 because it's breaking the build on el7 -%patch58 -R -p1 %endif # Feature specific patches From 5e096a366bc3f459996bda46f118e8fa681496a0 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 20 Sep 2019 09:37:33 +0200 Subject: [PATCH 0575/1449] Remove support for (p)NaCL We don't build it for quite some time and will by killed by Google in Spring 2020. Let's drop the support for it from the SPEC file. We can revert this patch if needed. --- ...526.80-nacl-ignore-broken-fd-counter.patch | 27 --- ...m-47.0.2526.80-pnacl-fgnu-inline-asm.patch | 11 -- chromium.spec | 187 ------------------ 3 files changed, 225 deletions(-) delete mode 100644 chromium-47.0.2526.80-nacl-ignore-broken-fd-counter.patch delete mode 100644 chromium-47.0.2526.80-pnacl-fgnu-inline-asm.patch diff --git a/chromium-47.0.2526.80-nacl-ignore-broken-fd-counter.patch b/chromium-47.0.2526.80-nacl-ignore-broken-fd-counter.patch deleted file mode 100644 index c422957..0000000 --- a/chromium-47.0.2526.80-nacl-ignore-broken-fd-counter.patch +++ /dev/null @@ -1,27 +0,0 @@ -diff -up chromium-47.0.2526.80/components/nacl/loader/sandbox_linux/nacl_sandbox_linux.cc.ignore-fd-count chromium-47.0.2526.80/components/nacl/loader/sandbox_linux/nacl_sandbox_linux.cc ---- chromium-47.0.2526.80/components/nacl/loader/sandbox_linux/nacl_sandbox_linux.cc.ignore-fd-count 2015-12-15 14:48:07.119011866 -0500 -+++ chromium-47.0.2526.80/components/nacl/loader/sandbox_linux/nacl_sandbox_linux.cc 2015-12-15 14:48:14.151850055 -0500 -@@ -153,6 +153,14 @@ void NaClSandbox::InitializeLayerOneSand - } - - void NaClSandbox::CheckForExpectedNumberOfOpenFds() { -+ // Whatever logic this code is using is wrong more often than it is right. -+ // If you set expected_num_fds to 6, it finds 7. -+ // If you set expected_num_fds to 7, it finds 6. -+ // Code like this makes a packager drink. And not the good stuff either. -+ // Instead, we're just going to smile and tell it to never care about the -+ // number of FDs open. Stupid code. We hates it. -+ -+#if 0 - // We expect to have the following FDs open: - // 1-3) stdin, stdout, stderr. - // 4) The /dev/urandom FD used by base::GetUrandomFD(). -@@ -171,6 +179,8 @@ void NaClSandbox::CheckForExpectedNumber - } - - CHECK_EQ(expected_num_fds, sandbox::ProcUtil::CountOpenFds(proc_fd_.get())); -+#endif -+ - } - - void NaClSandbox::InitializeLayerTwoSandbox(bool uses_nonsfi_mode) { diff --git a/chromium-47.0.2526.80-pnacl-fgnu-inline-asm.patch b/chromium-47.0.2526.80-pnacl-fgnu-inline-asm.patch deleted file mode 100644 index bfe0422..0000000 --- a/chromium-47.0.2526.80-pnacl-fgnu-inline-asm.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-47.0.2526.80/native_client/build/untrusted.gypi.fixme chromium-47.0.2526.80/native_client/build/untrusted.gypi ---- chromium-47.0.2526.80/native_client/build/untrusted.gypi.fixme 2015-12-09 11:54:27.584962337 -0500 -+++ chromium-47.0.2526.80/native_client/build/untrusted.gypi 2015-12-09 11:54:45.033571750 -0500 -@@ -1564,6 +1564,7 @@ - '-Wno-char-subscripts', - '-Wno-unused-function', - '-std=gnu++11', -+ '-fgnu-inline-asm', - ], - 'native_irt_compile_flags': [ - # IRT compile/link flags to make the binary smaller. diff --git a/chromium.spec b/chromium.spec index 838e4b8..41a43d1 100644 --- a/chromium.spec +++ b/chromium.spec @@ -70,32 +70,11 @@ # If we build with shared on, then chrome-remote-desktop depends on chromium libs. # If we build with shared off, then users cannot swap out libffmpeg (and i686 gets a lot harder to build) %global shared 1 -# We should not need to turn this on. The app in the webstore _should_ work. -%global build_remoting_app 0 # AddressSanitizer mode # https://www.chromium.org/developers/testing/addresssanitizer %global asan 0 -# nacl/pnacl are soon to be dead. We're just killing them off early. -%global killnacl 1 - -%if 0%{?killnacl} - %global nacl 0 - %global nonacl 1 -%else -# TODO: Try arm (nacl disabled) -%if 0%{?fedora} - %ifarch i686 - %global nacl 0 - %global nonacl 1 - %else - %global nacl 1 - %global nonacl 0 - %endif -%endif -%endif - %if 0 # Chromium's fork of ICU is now something we can't unbundle. # This is left here to ease the change if that ever switches. @@ -298,16 +277,6 @@ Patch101: chromium-75.0.3770.100-epel7-stdc++.patch # el7 only patch Patch102: chromium-77.0.3865.75-el7-noexcept.patch -# In file included from ../linux/directory.c:21: -# In file included from ../../../../native_client/src/nonsfi/linux/abi_conversion.h:20: -# ../../../../native_client/src/nonsfi/linux/linux_syscall_structs.h:44:13: error: GNU-style inline assembly is disabled -# __asm__ __volatile__("mov %%gs, %0" : "=r"(gs)); -# ^ -# 1 error generated. -Patch200: chromium-47.0.2526.80-pnacl-fgnu-inline-asm.patch -# Ignore broken nacl open fd counter -Patch201: chromium-47.0.2526.80-nacl-ignore-broken-fd-counter.patch - # Enable VAAPI support on Linux # NOTE: This patch will never land upstream Patch202: enable-vaapi.patch @@ -415,24 +384,6 @@ BuildRequires: libappstream-glib # gn needs these BuildRequires: libstdc++-static BuildRequires: libstdc++-devel, openssl-devel -%if 0%{?nacl} -BuildRequires: nacl-gcc, nacl-binutils, nacl-newlib -BuildRequires: nacl-arm-gcc, nacl-arm-binutils, nacl-arm-newlib -# pNaCl needs this monster -# It's possible that someday this dep will stabilize, but -# right now, it needs to be updated everytime chromium bumps -# a major version. -BuildRequires: chromium-native_client >= 52.0.2743.82 -BuildRequires: clang -BuildRequires: llvm -%ifarch x86_64 -# Really, this is what we want: -# BuildRequires: glibc-devel(x86-32) libgcc(x86-32) -# But, koji only offers glibc32. Maybe that's enough. -# This BR will pull in either glibc.i686 or glibc32. -BuildRequires: /lib/libc.so.6 /usr/lib/libc.so -%endif -%endif # Fedora tries to use system libs whenever it can. BuildRequires: bzip2-devel BuildRequires: dbus-glib-devel @@ -865,11 +816,6 @@ udev. %endif # Feature specific patches -%if ! 0%{?killnacl} -%patch200 -p1 -b .gnu-inline -%patch201 -p1 -b .ignore-fd-count -%endif - %if %{use_vaapi} %patch202 -p1 -b .vaapi %ifarch i686 @@ -898,101 +844,6 @@ export RANLIB="ranlib" rm -rf buildtools/third_party/libc++/BUILD.gn -%if 0%{?nacl} -# prep the nacl tree -mkdir -p out/Release/gen/sdk/linux_x86/nacl_x86_newlib -cp -a --no-preserve=context /usr/%{_arch}-nacl/* out/Release/gen/sdk/linux_x86/nacl_x86_newlib - -mkdir -p out/Release/gen/sdk/linux_x86/nacl_arm_newlib -cp -a --no-preserve=context /usr/arm-nacl/* out/Release/gen/sdk/linux_x86/nacl_arm_newlib - -# Not sure if we need this or not, but better safe than sorry. -pushd out/Release/gen/sdk/linux_x86 -ln -s nacl_x86_newlib nacl_x86_newlib_raw -ln -s nacl_arm_newlib nacl_arm_newlib_raw -popd - -mkdir -p out/Release/gen/sdk/linux_x86/nacl_x86_newlib/bin -pushd out/Release/gen/sdk/linux_x86/nacl_x86_newlib/bin -ln -s /usr/bin/x86_64-nacl-gcc gcc -ln -s /usr/bin/x86_64-nacl-gcc x86_64-nacl-gcc -ln -s /usr/bin/x86_64-nacl-g++ g++ -ln -s /usr/bin/x86_64-nacl-g++ x86_64-nacl-g++ -# ln -s /usr/bin/x86_64-nacl-ar ar -ln -s /usr/bin/x86_64-nacl-ar x86_64-nacl-ar -# ln -s /usr/bin/x86_64-nacl-as as -ln -s /usr/bin/x86_64-nacl-as x86_64-nacl-as -# ln -s /usr/bin/x86_64-nacl-ranlib ranlib -ln -s /usr/bin/x86_64-nacl-ranlib x86_64-nacl-ranlib -# Cleanups -rm addr2line -ln -s /usr/bin/x86_64-nacl-addr2line addr2line -rm c++filt -ln -s /usr/bin/x86_64-nacl-c++filt c++filt -rm gprof -ln -s /usr/bin/x86_64-nacl-gprof gprof -rm readelf -ln -s /usr/bin/x86_64-nacl-readelf readelf -rm size -ln -s /usr/bin/x86_64-nacl-size size -rm strings -ln -s /usr/bin/x86_64-nacl-strings strings -popd - -mkdir -p out/Release/gen/sdk/linux_x86/nacl_arm_newlib/bin -pushd out/Release/gen/sdk/linux_x86/nacl_arm_newlib/bin -ln -s /usr/bin/arm-nacl-gcc gcc -ln -s /usr/bin/arm-nacl-gcc arm-nacl-gcc -ln -s /usr/bin/arm-nacl-g++ g++ -ln -s /usr/bin/arm-nacl-g++ arm-nacl-g++ -ln -s /usr/bin/arm-nacl-ar arm-nacl-ar -ln -s /usr/bin/arm-nacl-as arm-nacl-as -ln -s /usr/bin/arm-nacl-ranlib arm-nacl-ranlib -popd - -touch out/Release/gen/sdk/linux_x86/nacl_x86_newlib/stamp.untar out/Release/gen/sdk/linux_x86/nacl_x86_newlib/stamp.prep -touch out/Release/gen/sdk/linux_x86/nacl_x86_newlib/nacl_x86_newlib.json -touch out/Release/gen/sdk/linux_x86/nacl_arm_newlib/stamp.untar out/Release/gen/sdk/linux_x86/nacl_arm_newlib/stamp.prep -touch out/Release/gen/sdk/linux_x86/nacl_arm_newlib/nacl_arm_newlib.json - -pushd out/Release/gen/sdk/linux_x86/ -mkdir -p pnacl_newlib pnacl_translator -# Might be able to do symlinks here, but eh. -cp -a --no-preserve=context /usr/pnacl_newlib/* pnacl_newlib/ -cp -a --no-preserve=context /usr/pnacl_translator/* pnacl_translator/ -for i in lib/libc.a lib/libc++.a lib/libg.a lib/libm.a; do - /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/x86_64_bc-nacl/$i - /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/i686_bc-nacl/$i - /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/le32-nacl/$i -done - -for i in lib/libpthread.a lib/libnacl.a; do - /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/le32-nacl/$i -done - -for i in lib/clang/3.7.0/lib/x86_64_bc-nacl/libpnaclmm.a lib/clang/3.7.0/lib/i686_bc-nacl/libpnaclmm.a; do - /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/$i -done - -for i in lib/clang/3.7.0/lib/le32-nacl/libpnaclmm.a lib/clang/3.7.0/lib/le32-nacl/libgcc.a; do - /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/$i -done - -popd - -mkdir -p native_client/toolchain/.tars/linux_x86 -touch native_client/toolchain/.tars/linux_x86/pnacl_translator.json - -pushd native_client/toolchain -ln -s ../../out/Release/gen/sdk/linux_x86 linux_x86 -popd - -mkdir -p third_party/llvm-build/Release+Asserts/bin -pushd third_party/llvm-build/Release+Asserts/bin -ln -s /usr/bin/clang clang -popd -%endif - # Unpack fonts %if %{freeworld} # no font fun needed. @@ -1063,9 +914,7 @@ export CHROMIUM_CORE_GN_DEFINES CHROMIUM_BROWSER_GN_DEFINES="" CHROMIUM_BROWSER_GN_DEFINES+=' use_gio=true use_pulseaudio=true icu_use_data_file=true' -%if 0%{?nonacl} CHROMIUM_BROWSER_GN_DEFINES+=' enable_nacl=false' -%endif %if 0%{?shared} CHROMIUM_BROWSER_GN_DEFINES+=' is_component_ffmpeg=true is_component_build=true' %else @@ -1227,9 +1076,6 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/libwebm' \ 'third_party/libwebp' \ 'third_party/libyuv' \ -%if 0%{?nacl} - 'third_party/llvm-build' \ -%endif 'third_party/lss' \ 'third_party/lzma_sdk' \ %if 0 @@ -1460,19 +1306,7 @@ echo # remote client # ../../depot_tools/ninja -C ../%{builddir} -vvv remoting_me2me_host remoting_start_host remoting_it2me_native_messaging_host remoting_me2me_native_messaging_host remoting_native_messaging_manifests remoting_resources %build_target %{remotingbuilddir} remoting_all -%if 0%{?build_remoting_app} -%if 0%{?nacl} -export GOOGLE_CLIENT_ID_REMOTING_IDENTITY_API=%{chromoting_client_id} -%build_target %{builddir} remoting_webapp %endif -%endif - -%endif - -# Nuke nacl/pnacl bits at the end of the build -rm -rf %{builddir}/gen/sdk -rm -rf native_client/toolchain -rm -rf third_party/llvm-build/* %install rm -rf %{buildroot} @@ -1511,10 +1345,6 @@ mkdir -p %{buildroot}%{_mandir}/man1/ pushd %{builddir} cp -a *.pak locales resources icudtl.dat %{buildroot}%{chromium_path} -%if 0%{?nacl} -cp -a nacl_helper* *.nexe pnacl tls_edit %{buildroot}%{chromium_path} -chmod -x %{buildroot}%{chromium_path}/nacl_helper_bootstrap* *.nexe -%endif # Reasonably sure we don't need this anymore. Chrome doesn't include it. %if 0 cp -a protoc pyproto %{buildroot}%{chromium_path} @@ -1596,12 +1426,6 @@ pushd %{buildroot}%{_sysconfdir}/pam.d/ ln -s system-auth chrome-remote-desktop popd -%if 0%{?build_remoting_app} -%if 0%{?nacl} -cp -a remoting_client_plugin_newlib.* %{buildroot}%{chromium_path} -%endif -%endif - %if %{build_headless} pushd %{headlessbuilddir} cp -a headless_lib.pak headless_shell %{buildroot}%{chromium_path} @@ -1742,12 +1566,6 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %ifarch x86_64 i686 aarch64 %{chromium_path}/swiftshader/ %endif -%if 0%{?nacl} -%{chromium_path}/nacl_helper* -%{chromium_path}/*.nexe -%{chromium_path}/pnacl/ -%{chromium_path}/tls_edit -%endif %dir %{chromium_path}/PepperFlash/ %if 0 %{chromium_path}/protoc @@ -1861,11 +1679,6 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{crd_path}/user-session %{_unitdir}/chrome-remote-desktop@.service /var/lib/chrome-remote-desktop/ -%if 0%{?build_remoting_app} -%if 0%{?nacl} -%{chromium_path}/remoting_client_plugin_newlib.* -%endif -%endif %files -n chromedriver %doc AUTHORS From 1fb9b47fde081c17a41b77000d2b13167a6ef630 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 20 Sep 2019 09:45:43 +0200 Subject: [PATCH 0576/1449] Fix how the arguments are passed to GN's bootstrap.py I don't know why, but previously it was failing only on aarch64. --- chromium.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 41a43d1..f0af194 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1256,7 +1256,7 @@ if python2 -c 'import google ; print google.__path__' 2> /dev/null ; then \ exit 1 ; \ fi -tools/gn/bootstrap/bootstrap.py -v "$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" +tools/gn/bootstrap/bootstrap.py -v --no-clean --gn-gen-args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{builddir}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{builddir} %if %{freeworld} From 35521ebaf47120dd5860f1810946ed48cbe28bab Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 20 Sep 2019 09:57:18 +0200 Subject: [PATCH 0577/1449] Remove the unused patches or patches that are not needed anymore Also replace some patches with changes in the SPEC file. --- chromium-45.0.2454.101-linux-path-max.patch | 44 ---- ...mium-53.0.2785.92-boringssl-time-fix.patch | 11 - chromium-54.0.2840.59-jpeg-include-dir.patch | 11 - chromium-55.0.2883.75-addrfix.patch | 11 - ...m-59.0.3071.86-i686-ld-memory-tricks.patch | 12 -- ...113-libavutil-timer-include-path-fix.patch | 21 -- ...mium-62.0.3202.62-kmaxskip-constexpr.patch | 12 -- chromium-63.0.3289.84-nullfix.patch | 43 ---- chromium-64.0.3282.119-ffmpeg-stdatomic.patch | 17 -- chromium-65.0.3325.146-gcc-round-fix.patch | 12 -- chromium-65.0.3325.146-memcpy-fix.patch | 12 -- ...-declare-ConfigurationPolicyProvider.patch | 18 -- chromium-66.0.3359.117-system-clang.patch | 12 -- chromium-67.0.3396.62-gcc5.patch | 12 -- ...440.106-fix-default-on-redeclaration.patch | 30 --- ...ium-69.0.3497.81-build-sanely-please.patch | 33 --- ...0.3538.77-aarch64-arch-want-new-stat.patch | 12 -- ...m-71.0.3578.98-skia-aarch64-buildfix.patch | 21 -- chromium-72.0.3626.121-notest.patch | 11 - ...sable-fno-delete-null-pointer-checks.patch | 48 ----- chromium-75.0.3770.100-git00281713.patch | 34 --- chromium-75.0.3770.80-SIOCGSTAMP.patch | 15 -- ...5.0.3770.80-aeed4d-gcc-dcheck_ne-fix.patch | 14 -- chromium-75.0.3770.80-gcc-no-assume.patch | 21 -- chromium-75.0.3770.80-revert-daff6b.patch | 13 -- ...9.100-libusb_interrupt_event_handler.patch | 15 -- chromium-77.0.3865.75-boolfix.patch | 24 --- ...um-77.0.3865.75-gcc-no-opt-safe-math.patch | 15 -- chromium-77.0.3865.75-gcc5-r3.patch | 36 ---- chromium.spec | 198 ++++++------------ 30 files changed, 65 insertions(+), 723 deletions(-) delete mode 100644 chromium-45.0.2454.101-linux-path-max.patch delete mode 100644 chromium-53.0.2785.92-boringssl-time-fix.patch delete mode 100644 chromium-54.0.2840.59-jpeg-include-dir.patch delete mode 100644 chromium-55.0.2883.75-addrfix.patch delete mode 100644 chromium-59.0.3071.86-i686-ld-memory-tricks.patch delete mode 100644 chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch delete mode 100644 chromium-62.0.3202.62-kmaxskip-constexpr.patch delete mode 100644 chromium-63.0.3289.84-nullfix.patch delete mode 100644 chromium-64.0.3282.119-ffmpeg-stdatomic.patch delete mode 100644 chromium-65.0.3325.146-gcc-round-fix.patch delete mode 100644 chromium-65.0.3325.146-memcpy-fix.patch delete mode 100644 chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch delete mode 100644 chromium-66.0.3359.117-system-clang.patch delete mode 100644 chromium-67.0.3396.62-gcc5.patch delete mode 100644 chromium-68.0.3440.106-fix-default-on-redeclaration.patch delete mode 100644 chromium-69.0.3497.81-build-sanely-please.patch delete mode 100644 chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch delete mode 100644 chromium-71.0.3578.98-skia-aarch64-buildfix.patch delete mode 100644 chromium-72.0.3626.121-notest.patch delete mode 100644 chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch delete mode 100644 chromium-75.0.3770.100-git00281713.patch delete mode 100644 chromium-75.0.3770.80-SIOCGSTAMP.patch delete mode 100644 chromium-75.0.3770.80-aeed4d-gcc-dcheck_ne-fix.patch delete mode 100644 chromium-75.0.3770.80-gcc-no-assume.patch delete mode 100644 chromium-75.0.3770.80-revert-daff6b.patch delete mode 100644 chromium-76.0.3809.100-libusb_interrupt_event_handler.patch delete mode 100644 chromium-77.0.3865.75-boolfix.patch delete mode 100644 chromium-77.0.3865.75-gcc-no-opt-safe-math.patch delete mode 100644 chromium-77.0.3865.75-gcc5-r3.patch diff --git a/chromium-45.0.2454.101-linux-path-max.patch b/chromium-45.0.2454.101-linux-path-max.patch deleted file mode 100644 index 3146349..0000000 --- a/chromium-45.0.2454.101-linux-path-max.patch +++ /dev/null @@ -1,44 +0,0 @@ -diff -up chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/path.h.pathmax chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/path.h ---- chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/path.h.pathmax 2015-10-07 11:26:11.813477839 -0400 -+++ chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/path.h 2015-10-07 11:26:40.845845054 -0400 -@@ -12,6 +12,11 @@ - - #include "sdk_util/macros.h" - -+/* Needed for PATH_MAX */ -+#ifndef PATH_MAX -+#define PATH_MAX 4096 -+#endif -+ - namespace nacl_io { - - class Path { -diff -up chromium-45.0.2454.101/native_client/src/untrusted/nacl/getcwd.c.pathmax chromium-45.0.2454.101/native_client/src/untrusted/nacl/getcwd.c ---- chromium-45.0.2454.101/native_client/src/untrusted/nacl/getcwd.c.pathmax 2015-08-22 15:02:08.000000000 -0400 -+++ chromium-45.0.2454.101/native_client/src/untrusted/nacl/getcwd.c 2015-10-07 10:58:56.172018783 -0400 -@@ -11,6 +11,10 @@ - - #include - #include -+/* Needed for PATH_MAX */ -+#ifndef PATH_MAX -+#define PATH_MAX 4096 -+#endif - #include - #include - #include -diff -up chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/syscalls/realpath.c.pathmax chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/syscalls/realpath.c ---- chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/syscalls/realpath.c.pathmax 2015-10-09 10:57:38.424348662 -0400 -+++ chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/syscalls/realpath.c 2015-10-09 10:57:51.541059938 -0400 -@@ -13,6 +13,11 @@ - - #include "sdk_util/macros.h" - -+/* Needed for PATH_MAX */ -+#ifndef PATH_MAX -+#define PATH_MAX 4096 -+#endif -+ - EXTERN_C_BEGIN - - #if defined(__native_client__) diff --git a/chromium-53.0.2785.92-boringssl-time-fix.patch b/chromium-53.0.2785.92-boringssl-time-fix.patch deleted file mode 100644 index 8d67957..0000000 --- a/chromium-53.0.2785.92-boringssl-time-fix.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-53.0.2785.92/third_party/boringssl/src/crypto/x509/by_dir.c.timefix chromium-53.0.2785.92/third_party/boringssl/src/crypto/x509/by_dir.c ---- chromium-53.0.2785.92/third_party/boringssl/src/crypto/x509/by_dir.c.timefix 2016-09-06 15:20:06.094396255 -0400 -+++ chromium-53.0.2785.92/third_party/boringssl/src/crypto/x509/by_dir.c 2016-09-06 15:20:16.893187930 -0400 -@@ -56,6 +56,7 @@ - * [including the GNU Public Licence.] */ - - #include -+#include - #include - #include - diff --git a/chromium-54.0.2840.59-jpeg-include-dir.patch b/chromium-54.0.2840.59-jpeg-include-dir.patch deleted file mode 100644 index f96a56c..0000000 --- a/chromium-54.0.2840.59-jpeg-include-dir.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-54.0.2840.59/third_party/BUILD.gn.jpegfix chromium-54.0.2840.59/third_party/BUILD.gn ---- chromium-54.0.2840.59/third_party/BUILD.gn.jpegfix 2016-10-17 11:45:44.995340495 -0400 -+++ chromium-54.0.2840.59/third_party/BUILD.gn 2016-10-17 11:46:35.254289872 -0400 -@@ -20,6 +20,7 @@ declare_args() { - config("system_libjpeg_config") { - libs = [ "jpeg" ] - defines = [ "USE_SYSTEM_LIBJPEG" ] -+ include_dirs = [ "/usr/include/" ] - } - - config("libjpeg_turbo_config") { diff --git a/chromium-55.0.2883.75-addrfix.patch b/chromium-55.0.2883.75-addrfix.patch deleted file mode 100644 index 00c214c..0000000 --- a/chromium-55.0.2883.75-addrfix.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-55.0.2883.75/third_party/boringssl/BUILD.gn.addrfix chromium-55.0.2883.75/third_party/boringssl/BUILD.gn ---- chromium-55.0.2883.75/third_party/boringssl/BUILD.gn.addrfix 2016-12-12 15:30:27.727834891 -0500 -+++ chromium-55.0.2883.75/third_party/boringssl/BUILD.gn 2016-12-12 15:30:53.095709352 -0500 -@@ -24,6 +24,7 @@ config("internal_config") { - "BORINGSSL_IMPLEMENTATION", - "BORINGSSL_NO_STATIC_INITIALIZER", - "OPENSSL_SMALL", -+ "_POSIX_C_SOURCE=200112L", - ] - configs = [ - # TODO(davidben): Fix size_t truncations in BoringSSL. diff --git a/chromium-59.0.3071.86-i686-ld-memory-tricks.patch b/chromium-59.0.3071.86-i686-ld-memory-tricks.patch deleted file mode 100644 index 9dde4c5..0000000 --- a/chromium-59.0.3071.86-i686-ld-memory-tricks.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn.ldmemory chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn ---- chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn.ldmemory 2017-06-07 15:37:09.436616113 -0400 -+++ chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn 2017-06-07 15:38:04.508519102 -0400 -@@ -93,7 +93,7 @@ gcc_toolchain("x86") { - nm = "nm" - ar = "ar" - ld = cxx -- extra_cppflags = "-fno-delete-null-pointer-checks" -+ extra_cppflags = "-fno-delete-null-pointer-checks -g1" - - # Output linker map files for binary size analysis. - enable_linker_map = true diff --git a/chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch b/chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch deleted file mode 100644 index 7248825..0000000 --- a/chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -up chromium-60.0.3112.113/third_party/ffmpeg/libavutil/timer.h.pathfix chromium-60.0.3112.113/third_party/ffmpeg/libavutil/timer.h ---- chromium-60.0.3112.113/third_party/ffmpeg/libavutil/timer.h.pathfix 2017-08-25 15:29:12.143242471 -0400 -+++ chromium-60.0.3112.113/third_party/ffmpeg/libavutil/timer.h 2017-08-25 15:29:36.941835865 -0400 -@@ -39,13 +39,13 @@ - #include "log.h" - - #if ARCH_AARCH64 --# include "aarch64/timer.h" -+# include "libavutil/aarch64/timer.h" - #elif ARCH_ARM --# include "arm/timer.h" -+# include "libavutil/arm/timer.h" - #elif ARCH_PPC --# include "ppc/timer.h" -+# include "libavutil/ppc/timer.h" - #elif ARCH_X86 --# include "x86/timer.h" -+# include "libavutil/x86/timer.h" - #endif - - #if !defined(AV_READ_TIME) diff --git a/chromium-62.0.3202.62-kmaxskip-constexpr.patch b/chromium-62.0.3202.62-kmaxskip-constexpr.patch deleted file mode 100644 index d4f8250..0000000 --- a/chromium-62.0.3202.62-kmaxskip-constexpr.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-62.0.3202.62/cc/paint/paint_op_buffer.cc.kmaxskip chromium-62.0.3202.62/cc/paint/paint_op_buffer.cc ---- chromium-62.0.3202.62/cc/paint/paint_op_buffer.cc.kmaxskip 2017-10-18 10:00:28.503714392 -0400 -+++ chromium-62.0.3202.62/cc/paint/paint_op_buffer.cc 2017-10-18 10:00:43.153430212 -0400 -@@ -336,7 +336,7 @@ TYPES(M); - #undef TYPES - - const SkRect PaintOp::kUnsetRect = {SK_ScalarInfinity, 0, 0, 0}; --const size_t PaintOp::kMaxSkip; -+constexpr size_t PaintOp::kMaxSkip; - - std::string PaintOpTypeToString(PaintOpType type) { - switch (type) { diff --git a/chromium-63.0.3289.84-nullfix.patch b/chromium-63.0.3289.84-nullfix.patch deleted file mode 100644 index c66aff1..0000000 --- a/chromium-63.0.3289.84-nullfix.patch +++ /dev/null @@ -1,43 +0,0 @@ -diff -up chromium-63.0.3239.84/build/toolchain/linux/BUILD.gn.nullfix chromium-63.0.3239.84/build/toolchain/linux/BUILD.gn ---- chromium-63.0.3239.84/build/toolchain/linux/BUILD.gn.nullfix 2017-12-06 15:05:21.000000000 -0500 -+++ chromium-63.0.3239.84/build/toolchain/linux/BUILD.gn 2017-12-07 10:44:34.507207080 -0500 -@@ -31,6 +31,7 @@ gcc_toolchain("arm64") { - ld = cxx - readelf = "${toolprefix}readelf" - nm = "${toolprefix}nm" -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - toolchain_args = { - current_cpu = "arm64" -@@ -49,6 +50,7 @@ gcc_toolchain("arm") { - ld = cxx - readelf = "${toolprefix}readelf" - nm = "${toolprefix}nm" -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - toolchain_args = { - current_cpu = "arm" -@@ -99,6 +101,7 @@ gcc_toolchain("x86") { - nm = "nm" - ar = "ar" - ld = cxx -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - # Output linker map files for binary size analysis. - enable_linker_map = true -@@ -152,6 +155,7 @@ gcc_toolchain("x64") { - nm = "nm" - ar = "ar" - ld = cxx -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - # Output linker map files for binary size analysis. - enable_linker_map = true -@@ -186,6 +190,7 @@ gcc_toolchain("mipsel") { - ld = cxx - readelf = "${toolprefix}readelf" - nm = "${toolprefix}nm" -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - toolchain_args = { - cc_wrapper = "" diff --git a/chromium-64.0.3282.119-ffmpeg-stdatomic.patch b/chromium-64.0.3282.119-ffmpeg-stdatomic.patch deleted file mode 100644 index 64c5f26..0000000 --- a/chromium-64.0.3282.119-ffmpeg-stdatomic.patch +++ /dev/null @@ -1,17 +0,0 @@ -diff -up chromium-64.0.3282.119/third_party/ffmpeg/libavutil/cpu.c.ffmpeg-stdatomic chromium-64.0.3282.119/third_party/ffmpeg/libavutil/cpu.c ---- chromium-64.0.3282.119/third_party/ffmpeg/libavutil/cpu.c.ffmpeg-stdatomic 2018-01-25 11:55:57.880936815 -0500 -+++ chromium-64.0.3282.119/third_party/ffmpeg/libavutil/cpu.c 2018-01-25 11:57:18.456787888 -0500 -@@ -18,7 +18,13 @@ - - #include - #include -+// GCC 4.8 didn't have stdatomic, but was advertising it. -+// https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58016 -+#if !defined(__clang__) && defined(__GNUC__) && (__GNUC__ == 4 || (__GNUC__ == 4 && (__GNUC_MINOR__ == 8))) -+#include -+#else - #include -+#endif - - #include "attributes.h" - #include "cpu.h" diff --git a/chromium-65.0.3325.146-gcc-round-fix.patch b/chromium-65.0.3325.146-gcc-round-fix.patch deleted file mode 100644 index a29779d..0000000 --- a/chromium-65.0.3325.146-gcc-round-fix.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-65.0.3325.146/third_party/webrtc/p2p/base/port.cc.gcc-round-fix chromium-65.0.3325.146/third_party/webrtc/p2p/base/port.cc ---- chromium-65.0.3325.146/third_party/webrtc/p2p/base/port.cc.gcc-round-fix 2018-03-07 10:57:11.284376048 -0500 -+++ chromium-65.0.3325.146/third_party/webrtc/p2p/base/port.cc 2018-03-07 10:58:16.590742636 -0500 -@@ -10,7 +10,7 @@ - - #include "p2p/base/port.h" - --#include -+#include - - #include - #include diff --git a/chromium-65.0.3325.146-memcpy-fix.patch b/chromium-65.0.3325.146-memcpy-fix.patch deleted file mode 100644 index b2b2cd4..0000000 --- a/chromium-65.0.3325.146-memcpy-fix.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-65.0.3325.146/cc/paint/raw_memory_transfer_cache_entry.cc.memcpyfix chromium-65.0.3325.146/cc/paint/raw_memory_transfer_cache_entry.cc ---- chromium-65.0.3325.146/cc/paint/raw_memory_transfer_cache_entry.cc.memcpyfix 2018-03-07 11:04:14.690379817 -0500 -+++ chromium-65.0.3325.146/cc/paint/raw_memory_transfer_cache_entry.cc 2018-03-07 11:06:04.339878069 -0500 -@@ -3,7 +3,7 @@ - // found in the LICENSE file. - - #include "cc/paint/raw_memory_transfer_cache_entry.h" -- -+#include - #include - - namespace cc { diff --git a/chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch b/chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch deleted file mode 100644 index d5b19cf..0000000 --- a/chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch +++ /dev/null @@ -1,18 +0,0 @@ -diff -up chromium-66.0.3359.117/components/policy/core/browser/browser_policy_connector_base.h.gcc-cpolicyprovider chromium-66.0.3359.117/components/policy/core/browser/browser_policy_connector_base.h ---- chromium-66.0.3359.117/components/policy/core/browser/browser_policy_connector_base.h.gcc-cpolicyprovider 2018-04-25 16:33:40.872222779 -0400 -+++ chromium-66.0.3359.117/components/policy/core/browser/browser_policy_connector_base.h 2018-04-25 16:37:23.175883637 -0400 -@@ -11,13 +11,13 @@ - #include "base/callback_forward.h" - #include "base/macros.h" - #include "components/policy/core/browser/configuration_policy_handler_list.h" -+#include "components/policy/core/common/configuration_policy_provider.h" - #include "components/policy/core/common/schema.h" - #include "components/policy/core/common/schema_registry.h" - #include "components/policy/policy_export.h" - - namespace policy { - --class ConfigurationPolicyProvider; - class PolicyService; - class PolicyServiceImpl; - diff --git a/chromium-66.0.3359.117-system-clang.patch b/chromium-66.0.3359.117-system-clang.patch deleted file mode 100644 index e90dc58..0000000 --- a/chromium-66.0.3359.117-system-clang.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-66.0.3359.117/build/config/clang/clang.gni.system-clang chromium-66.0.3359.117/build/config/clang/clang.gni ---- chromium-66.0.3359.117/build/config/clang/clang.gni.system-clang 2018-04-18 12:08:45.658190297 -0400 -+++ chromium-66.0.3359.117/build/config/clang/clang.gni 2018-04-18 12:09:37.612032982 -0400 -@@ -4,7 +4,7 @@ - - import("//build/toolchain/toolchain.gni") - --default_clang_base_path = "//third_party/llvm-build/Release+Asserts" -+default_clang_base_path = "/usr" - - declare_args() { - # Indicates if the build should use the Chrome-specific plugins for enforcing diff --git a/chromium-67.0.3396.62-gcc5.patch b/chromium-67.0.3396.62-gcc5.patch deleted file mode 100644 index ceef85d..0000000 --- a/chromium-67.0.3396.62-gcc5.patch +++ /dev/null @@ -1,12 +0,0 @@ -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-68.0.3440.106-fix-default-on-redeclaration.patch b/chromium-68.0.3440.106-fix-default-on-redeclaration.patch deleted file mode 100644 index 4a92fba..0000000 --- a/chromium-68.0.3440.106-fix-default-on-redeclaration.patch +++ /dev/null @@ -1,30 +0,0 @@ -diff -up chromium-68.0.3440.106/components/search_provider_logos/logo_common.cc.122692c chromium-68.0.3440.106/components/search_provider_logos/logo_common.cc ---- chromium-68.0.3440.106/components/search_provider_logos/logo_common.cc.122692c 2018-08-17 14:54:30.587338865 -0400 -+++ chromium-68.0.3440.106/components/search_provider_logos/logo_common.cc 2018-08-17 14:55:20.461184298 -0400 -@@ -14,22 +14,22 @@ LogoMetadata::LogoMetadata() = default; - LogoMetadata::LogoMetadata(const LogoMetadata&) = default; - LogoMetadata::LogoMetadata(LogoMetadata&&) noexcept = default; - LogoMetadata& LogoMetadata::operator=(const LogoMetadata&) = default; --LogoMetadata& LogoMetadata::operator=(LogoMetadata&&) noexcept = default; -+LogoMetadata& LogoMetadata::operator=(LogoMetadata&&) = default; - LogoMetadata::~LogoMetadata() = default; - - EncodedLogo::EncodedLogo() = default; - EncodedLogo::EncodedLogo(const EncodedLogo&) = default; - EncodedLogo::EncodedLogo(EncodedLogo&&) noexcept = default; - EncodedLogo& EncodedLogo::operator=(const EncodedLogo&) = default; --EncodedLogo& EncodedLogo::operator=(EncodedLogo&&) noexcept = default; -+EncodedLogo& EncodedLogo::operator=(EncodedLogo&&) = default; - EncodedLogo::~EncodedLogo() = default; - - Logo::Logo() = default; - Logo::~Logo() = default; - - LogoCallbacks::LogoCallbacks() = default; --LogoCallbacks::LogoCallbacks(LogoCallbacks&&) noexcept = default; --LogoCallbacks& LogoCallbacks::operator=(LogoCallbacks&&) noexcept = default; -+LogoCallbacks::LogoCallbacks(LogoCallbacks&&) = default; -+LogoCallbacks& LogoCallbacks::operator=(LogoCallbacks&&) = default; - LogoCallbacks::~LogoCallbacks() = default; - - } // namespace search_provider_logos diff --git a/chromium-69.0.3497.81-build-sanely-please.patch b/chromium-69.0.3497.81-build-sanely-please.patch deleted file mode 100644 index 6241a97..0000000 --- a/chromium-69.0.3497.81-build-sanely-please.patch +++ /dev/null @@ -1,33 +0,0 @@ -diff -up chromium-69.0.3497.81/build/config/BUILD.gn.fyoursysroot chromium-69.0.3497.81/build/config/BUILD.gn ---- chromium-69.0.3497.81/build/config/BUILD.gn.fyoursysroot 2018-09-06 13:43:44.863375238 -0400 -+++ chromium-69.0.3497.81/build/config/BUILD.gn 2018-09-06 13:43:58.377083290 -0400 -@@ -284,9 +284,9 @@ group("executable_and_loadable_module_an - public_deps += [ "//build/config/sanitizers:deps" ] - } - -- if (use_custom_libcxx) { -- public_deps += [ "//buildtools/third_party/libc++" ] -- } -+ # if (use_custom_libcxx) { -+ # public_deps += [ "//buildtools/third_party/libc++" ] -+ # } - - if (use_afl) { - public_deps += [ "//third_party/afl" ] -diff -up chromium-69.0.3497.81/build/config/sysroot.gni.fyoursysroot chromium-69.0.3497.81/build/config/sysroot.gni ---- chromium-69.0.3497.81/build/config/sysroot.gni.fyoursysroot 2018-09-06 13:40:46.212232232 -0400 -+++ chromium-69.0.3497.81/build/config/sysroot.gni 2018-09-06 13:41:02.421882529 -0400 -@@ -15,9 +15,10 @@ declare_args() { - # The absolute path to directory containing linux sysroot images - target_sysroot_dir = "//build/linux" - -- use_sysroot = current_cpu == "x86" || current_cpu == "x64" || -- current_cpu == "arm" || current_cpu == "arm64" || -- current_cpu == "mipsel" || current_cpu == "mips64el" -+ use_sysroot = false -+ # use_sysroot = current_cpu == "x86" || current_cpu == "x64" || -+ # current_cpu == "arm" || current_cpu == "arm64" || -+ # current_cpu == "mipsel" || current_cpu == "mips64el" - } - - if (current_os == target_os && current_cpu == target_cpu && diff --git a/chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch b/chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch deleted file mode 100644 index ccecfcb..0000000 --- a/chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-70.0.3538.77/sandbox/linux/system_headers/arm64_linux_syscalls.h.aarch64-new-stat chromium-70.0.3538.77/sandbox/linux/system_headers/arm64_linux_syscalls.h ---- chromium-70.0.3538.77/sandbox/linux/system_headers/arm64_linux_syscalls.h.aarch64-new-stat 2018-11-06 13:27:05.118766581 -0500 -+++ chromium-70.0.3538.77/sandbox/linux/system_headers/arm64_linux_syscalls.h 2018-11-06 13:27:34.575204504 -0500 -@@ -5,6 +5,8 @@ - #ifndef SANDBOX_LINUX_SYSTEM_HEADERS_ARM64_LINUX_SYSCALLS_H_ - #define SANDBOX_LINUX_SYSTEM_HEADERS_ARM64_LINUX_SYSCALLS_H_ - -+#define __ARCH_WANT_NEW_STAT -+ - #include - - #if !defined(__NR_io_setup) diff --git a/chromium-71.0.3578.98-skia-aarch64-buildfix.patch b/chromium-71.0.3578.98-skia-aarch64-buildfix.patch deleted file mode 100644 index 5da1674..0000000 --- a/chromium-71.0.3578.98-skia-aarch64-buildfix.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -up chromium-71.0.3578.98/third_party/skia/src/opts/SkRasterPipeline_opts.h.aarch64fix chromium-71.0.3578.98/third_party/skia/src/opts/SkRasterPipeline_opts.h ---- chromium-71.0.3578.98/third_party/skia/src/opts/SkRasterPipeline_opts.h.aarch64fix 2018-12-14 11:17:43.249121756 -0500 -+++ chromium-71.0.3578.98/third_party/skia/src/opts/SkRasterPipeline_opts.h 2018-12-14 11:20:07.770030234 -0500 -@@ -658,7 +658,7 @@ SI F approx_powf(F x, F y) { - } - - SI F from_half(U16 h) { --#if defined(SK_CPU_ARM64) && !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) -@@ -678,7 +678,7 @@ SI F from_half(U16 h) { - } - - SI U16 to_half(F f) { --#if defined(SK_CPU_ARM64) && !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) diff --git a/chromium-72.0.3626.121-notest.patch b/chromium-72.0.3626.121-notest.patch deleted file mode 100644 index e8b7bf4..0000000 --- a/chromium-72.0.3626.121-notest.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-72.0.3626.121/chrome/test/data/webui_test_resources.grd.notest chromium-72.0.3626.121/chrome/test/data/webui_test_resources.grd ---- chromium-72.0.3626.121/chrome/test/data/webui_test_resources.grd.notest 2019-03-10 13:54:17.843583876 -0400 -+++ chromium-72.0.3626.121/chrome/test/data/webui_test_resources.grd 2019-03-10 14:03:29.302063637 -0400 -@@ -8,7 +8,6 @@ - - - -- - - - diff --git a/chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch b/chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch deleted file mode 100644 index f8abb52..0000000 --- a/chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch +++ /dev/null @@ -1,48 +0,0 @@ -diff -up chromium-73.0.3683.75/build/toolchain/linux/BUILD.gn.disable-ndnpc chromium-73.0.3683.75/build/toolchain/linux/BUILD.gn ---- chromium-73.0.3683.75/build/toolchain/linux/BUILD.gn.disable-ndnpc 2019-03-13 10:29:00.331009643 -0400 -+++ chromium-73.0.3683.75/build/toolchain/linux/BUILD.gn 2019-03-13 10:29:28.344458746 -0400 -@@ -31,7 +31,7 @@ gcc_toolchain("arm64") { - ld = cxx - readelf = "${toolprefix}readelf" - nm = "${toolprefix}nm" -- extra_cppflags = "-fno-delete-null-pointer-checks" -+ extra_cppflags = "" - - toolchain_args = { - current_cpu = "arm64" -@@ -50,7 +50,7 @@ gcc_toolchain("arm") { - ld = cxx - readelf = "${toolprefix}readelf" - nm = "${toolprefix}nm" -- extra_cppflags = "-fno-delete-null-pointer-checks" -+ extra_cppflags = "" - - toolchain_args = { - current_cpu = "arm" -@@ -101,7 +101,7 @@ gcc_toolchain("x86") { - nm = "nm" - ar = "ar" - ld = cxx -- extra_cppflags = "-fno-delete-null-pointer-checks -g1" -+ extra_cppflags = "-g1" - - # Output linker map files for binary size analysis. - enable_linker_map = true -@@ -155,7 +155,7 @@ gcc_toolchain("x64") { - nm = "nm" - ar = "ar" - ld = cxx -- extra_cppflags = "-fno-delete-null-pointer-checks" -+ extra_cppflags = "" - - # Output linker map files for binary size analysis. - enable_linker_map = true -@@ -190,7 +190,7 @@ gcc_toolchain("mipsel") { - ld = cxx - readelf = "${toolprefix}readelf" - nm = "${toolprefix}nm" -- extra_cppflags = "-fno-delete-null-pointer-checks" -+ extra_cppflags = "" - - toolchain_args = { - cc_wrapper = "" diff --git a/chromium-75.0.3770.100-git00281713.patch b/chromium-75.0.3770.100-git00281713.patch deleted file mode 100644 index 4356435..0000000 --- a/chromium-75.0.3770.100-git00281713.patch +++ /dev/null @@ -1,34 +0,0 @@ -diff -up chromium-75.0.3770.100/chrome/browser/performance_manager/chrome_content_browser_client_performance_manager_part.cc.git00281713 chromium-75.0.3770.100/chrome/browser/performance_manager/chrome_content_browser_client_performance_manager_part.cc ---- chromium-75.0.3770.100/chrome/browser/performance_manager/chrome_content_browser_client_performance_manager_part.cc.git00281713 2019-07-02 09:10:38.951369854 -0400 -+++ chromium-75.0.3770.100/chrome/browser/performance_manager/chrome_content_browser_client_performance_manager_part.cc 2019-07-02 09:11:59.864642942 -0400 -@@ -12,13 +12,19 @@ - #include "chrome/browser/performance_manager/graph/process_node_impl.h" - #include "chrome/browser/performance_manager/performance_manager.h" - #include "chrome/browser/performance_manager/render_process_user_data.h" -+#include "content/public/browser/render_process_host.h" - #include "services/resource_coordinator/public/mojom/coordination_unit.mojom.h" - - namespace { - - void BindProcessNode( -- content::RenderProcessHost* render_process_host, -+ int render_process_host_id, - resource_coordinator::mojom::ProcessCoordinationUnitRequest request) { -+ content::RenderProcessHost* render_process_host = -+ content::RenderProcessHost::FromID(render_process_host_id); -+ if (!render_process_host) -+ return; -+ - performance_manager::RenderProcessUserData* user_data = - performance_manager::RenderProcessUserData::GetForRenderProcessHost( - render_process_host); -@@ -47,8 +53,7 @@ void ChromeContentBrowserClientPerforman - blink::AssociatedInterfaceRegistry* associated_registry, - content::RenderProcessHost* render_process_host) { - registry->AddInterface( -- base::BindRepeating(&BindProcessNode, -- base::Unretained(render_process_host)), -+ base::BindRepeating(&BindProcessNode, render_process_host->GetID()), - base::SequencedTaskRunnerHandle::Get()); - - // Ideally this would strictly be a "CreateForRenderProcess", but when a diff --git a/chromium-75.0.3770.80-SIOCGSTAMP.patch b/chromium-75.0.3770.80-SIOCGSTAMP.patch deleted file mode 100644 index 0ef1e7f..0000000 --- a/chromium-75.0.3770.80-SIOCGSTAMP.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -up chromium-75.0.3770.80/third_party/webrtc/rtc_base/physical_socket_server.h.SIOCGSTAMP chromium-75.0.3770.80/third_party/webrtc/rtc_base/physical_socket_server.h ---- chromium-75.0.3770.80/third_party/webrtc/rtc_base/physical_socket_server.h.SIOCGSTAMP 2019-06-06 10:04:57.050403639 -0400 -+++ chromium-75.0.3770.80/third_party/webrtc/rtc_base/physical_socket_server.h 2019-06-06 10:06:03.975121688 -0400 -@@ -16,6 +16,11 @@ - #define WEBRTC_USE_EPOLL 1 - #endif - -+// for SIOCGSTAMP in Linux 5.2 -+#if defined(WEBRTC_LINUX) -+#include -+#endif -+ - #include - #include - #include diff --git a/chromium-75.0.3770.80-aeed4d-gcc-dcheck_ne-fix.patch b/chromium-75.0.3770.80-aeed4d-gcc-dcheck_ne-fix.patch deleted file mode 100644 index 2a8ac2f..0000000 --- a/chromium-75.0.3770.80-aeed4d-gcc-dcheck_ne-fix.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -up chromium-75.0.3770.80/cc/scheduler/compositor_frame_reporting_controller.cc.gcc-dcheck_ne-fix chromium-75.0.3770.80/cc/scheduler/compositor_frame_reporting_controller.cc ---- chromium-75.0.3770.80/cc/scheduler/compositor_frame_reporting_controller.cc.gcc-dcheck_ne-fix 2019-06-06 12:42:27.431575032 -0400 -+++ chromium-75.0.3770.80/cc/scheduler/compositor_frame_reporting_controller.cc 2019-06-06 12:43:05.692848409 -0400 -@@ -31,8 +31,8 @@ void CompositorFrameReportingController: - - 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, diff --git a/chromium-75.0.3770.80-gcc-no-assume.patch b/chromium-75.0.3770.80-gcc-no-assume.patch deleted file mode 100644 index 0bbb08f..0000000 --- a/chromium-75.0.3770.80-gcc-no-assume.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -up chromium-75.0.3770.80/third_party/angle/src/common/debug.h.gcc-assume chromium-75.0.3770.80/third_party/angle/src/common/debug.h ---- chromium-75.0.3770.80/third_party/angle/src/common/debug.h.gcc-assume 2019-06-06 17:38:01.876631704 -0400 -+++ chromium-75.0.3770.80/third_party/angle/src/common/debug.h 2019-06-07 09:30:06.205446547 -0400 -@@ -248,7 +248,7 @@ std::ostream &FmtHex(std::ostream &os, T - # define EVENT(message, ...) (void(0)) - #endif - --#if defined(COMPILER_GCC) || defined(__clang__) -+#if defined(__GNUC__) - # define ANGLE_CRASH() __builtin_trap() - #else - # define ANGLE_CRASH() ((void)(*(volatile char *)0 = 0)), __assume(0) -@@ -336,7 +336,7 @@ std::ostream &FmtHex(std::ostream &os, T - # 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") diff --git a/chromium-75.0.3770.80-revert-daff6b.patch b/chromium-75.0.3770.80-revert-daff6b.patch deleted file mode 100644 index f996898..0000000 --- a/chromium-75.0.3770.80-revert-daff6b.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -up chromium-75.0.3770.80/components/omnibox/browser/autocomplete_match.cc.revert-daff6b chromium-75.0.3770.80/components/omnibox/browser/autocomplete_match.cc ---- chromium-75.0.3770.80/components/omnibox/browser/autocomplete_match.cc.revert-daff6b 2019-06-06 14:54:13.819190586 -0400 -+++ chromium-75.0.3770.80/components/omnibox/browser/autocomplete_match.cc 2019-06-06 14:54:31.892839991 -0400 -@@ -154,8 +154,7 @@ AutocompleteMatch::AutocompleteMatch(con - additional_info(match.additional_info), - duplicate_matches(match.duplicate_matches) {} - --AutocompleteMatch::AutocompleteMatch(AutocompleteMatch&& match) noexcept = -- default; -+AutocompleteMatch::AutocompleteMatch(AutocompleteMatch&& match) = default; - - AutocompleteMatch::~AutocompleteMatch() { - } diff --git a/chromium-76.0.3809.100-libusb_interrupt_event_handler.patch b/chromium-76.0.3809.100-libusb_interrupt_event_handler.patch deleted file mode 100644 index 690f0f9..0000000 --- a/chromium-76.0.3809.100-libusb_interrupt_event_handler.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -up chromium-76.0.3809.100/services/device/usb/usb_context.cc.modern-libusbx chromium-76.0.3809.100/services/device/usb/usb_context.cc ---- chromium-76.0.3809.100/services/device/usb/usb_context.cc.modern-libusbx 2019-08-12 15:40:49.034170484 +0200 -+++ chromium-76.0.3809.100/services/device/usb/usb_context.cc 2019-08-12 15:41:23.775558867 +0200 -@@ -58,7 +58,11 @@ void UsbContext::UsbEventHandler::Run() - - void UsbContext::UsbEventHandler::Stop() { - base::subtle::Release_Store(&running_, 0); -+#ifdef LIBUSB_API_VERSION >= 0x01000105 -+ libusb_interrupt_event_handler(context_); -+#else - libusb_interrupt_handle_event(context_); -+#endif - } - - UsbContext::UsbContext(PlatformUsbContext context) : context_(context) { diff --git a/chromium-77.0.3865.75-boolfix.patch b/chromium-77.0.3865.75-boolfix.patch deleted file mode 100644 index c836214..0000000 --- a/chromium-77.0.3865.75-boolfix.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff -up chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_ptr_info.h ---- chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix 2019-09-09 23:55:20.000000000 +0200 -+++ chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_ptr_info.h 2019-09-12 15:43:30.025360946 +0200 -@@ -45,7 +45,7 @@ class AssociatedInterfacePtrInfo { - - bool is_valid() const { return handle_.is_valid(); } - -- explicit operator bool() const { return handle_.is_valid(); } -+ explicit operator bool() const { return (bool) handle_.is_valid(); } - - ScopedInterfaceEndpointHandle PassHandle() { - return std::move(handle_); -diff -up chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_request.h.boolfix chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_request.h ---- chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_request.h.boolfix 2019-09-09 23:55:20.000000000 +0200 -+++ chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_request.h 2019-09-12 15:43:30.025360946 +0200 -@@ -51,7 +51,7 @@ class AssociatedInterfaceRequest { - // handle. - 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(); } - - ScopedInterfaceEndpointHandle PassHandle() { return std::move(handle_); } - diff --git a/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch b/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch deleted file mode 100644 index 920a53e..0000000 --- a/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -up chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h.nogccoptmath chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h ---- chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h.nogccoptmath 2019-09-13 14:17:22.726738088 +0200 -+++ chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h 2019-09-13 14:31:37.686898493 +0200 -@@ -23,9 +23,8 @@ - // Where available use builtin math overflow support on Clang and GCC. - #elif !defined(__native_client__) && \ - ((defined(__clang__) && \ -- ((__clang_major__ > 3) || \ -- (__clang_major__ == 3 && __clang_minor__ >= 4))) || \ -- (defined(__GNUC__) && __GNUC__ >= 5)) -+ (__clang_major__ > 3) || \ -+ (__clang_major__ == 3 && __clang_minor__ >= 4))) - #include "base/numerics/safe_math_clang_gcc_impl.h" - #define BASE_HAS_OPTIMIZED_SAFE_MATH (1) - #else diff --git a/chromium-77.0.3865.75-gcc5-r3.patch b/chromium-77.0.3865.75-gcc5-r3.patch deleted file mode 100644 index 34b858a..0000000 --- a/chromium-77.0.3865.75-gcc5-r3.patch +++ /dev/null @@ -1,36 +0,0 @@ -diff -up chromium-77.0.3865.75/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 chromium-77.0.3865.75/gpu/ipc/common/mailbox_struct_traits.h ---- chromium-77.0.3865.75/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 2019-09-09 23:55:18.000000000 +0200 -+++ chromium-77.0.3865.75/gpu/ipc/common/mailbox_struct_traits.h 2019-09-12 10:13:16.710206500 +0200 -@@ -15,7 +15,7 @@ namespace mojo { - template <> - struct StructTraits { - static base::span name(const gpu::Mailbox& mailbox) { -- return mailbox.name; -+ return base::make_span(mailbox.name); - } - static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out); - }; -diff -up chromium-77.0.3865.75/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 chromium-77.0.3865.75/services/viz/public/cpp/compositing/quads_struct_traits.h ---- chromium-77.0.3865.75/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 2019-09-09 23:55:23.000000000 +0200 -+++ chromium-77.0.3865.75/services/viz/public/cpp/compositing/quads_struct_traits.h 2019-09-12 10:13:16.710206500 +0200 -@@ -391,7 +391,7 @@ struct StructTraits vertex_opacity(const viz::DrawQuad& input) { - const viz::TextureDrawQuad* quad = - viz::TextureDrawQuad::MaterialCast(&input); -- return quad->vertex_opacity; -+ return base::make_span(quad->vertex_opacity); - } - - static bool y_flipped(const viz::DrawQuad& input) { -diff -up chromium-77.0.3865.75/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 chromium-77.0.3865.75/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc ---- chromium-77.0.3865.75/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 2019-09-12 10:13:16.711206509 +0200 -+++ chromium-77.0.3865.75/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2019-09-12 15:41:15.300158849 +0200 -@@ -10,7 +10,7 @@ - - #include "modules/audio_processing/aec3/aec_state.h" - --#include -+#include - - #include - #include diff --git a/chromium.spec b/chromium.spec index f0af194..e32ff17 100644 --- a/chromium.spec +++ b/chromium.spec @@ -164,114 +164,61 @@ Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) ### Chromium Fedora Patches ### -Patch0: chromium-67.0.3396.62-gcc5.patch -Patch1: chromium-45.0.2454.101-linux-path-max.patch -Patch2: chromium-55.0.2883.75-addrfix.patch -Patch3: chromium-72.0.3626.121-notest.patch -# Use libusb_interrupt_event_handler from current libusbx (1.0.21-0.1.git448584a) -Patch4: chromium-76.0.3809.100-libusb_interrupt_event_handler.patch -# Use PIE in the Linux sandbox (from openSUSE via Russian Fedora) -Patch6: chromium-70.0.3538.67-sandbox-pie.patch +Patch0: chromium-70.0.3538.67-sandbox-pie.patch # Use /etc/chromium for master_prefs -Patch7: chromium-68.0.3440.106-master-prefs-path.patch +Patch1: chromium-68.0.3440.106-master-prefs-path.patch # Use gn system files -Patch8: chromium-67.0.3396.62-gn-system.patch -# Fix issue where timespec is not defined when sys/stat.h is included. -Patch9: chromium-53.0.2785.92-boringssl-time-fix.patch -# I wouldn't have to do this if there was a standard way to append extra compiler flags -Patch10: chromium-63.0.3289.84-nullfix.patch -# Add explicit includedir for jpeglib.h -Patch11: chromium-54.0.2840.59-jpeg-include-dir.patch -# On i686, pass --no-keep-memory --reduce-memory-overheads to ld. -Patch12: chromium-59.0.3071.86-i686-ld-memory-tricks.patch +Patch2: chromium-67.0.3396.62-gn-system.patch # Revert https://chromium.googlesource.com/chromium/src/+/b794998819088f76b4cf44c8db6940240c563cf4%5E%21/#F0 # https://bugs.chromium.org/p/chromium/issues/detail?id=712737 # https://bugzilla.redhat.com/show_bug.cgi?id=1446851 -Patch13: chromium-58.0.3029.96-revert-b794998819088f76b4cf44c8db6940240c563cf4.patch -# Correctly compile the stdatomic.h in ffmpeg with gcc 4.8 -Patch14: chromium-64.0.3282.119-ffmpeg-stdatomic.patch -# Nacl can't die soon enough -Patch15: chromium-66.0.3359.117-system-clang.patch +Patch3: chromium-58.0.3029.96-revert-b794998819088f76b4cf44c8db6940240c563cf4.patch # Do not prefix libpng functions -Patch16: chromium-60.0.3112.78-no-libpng-prefix.patch +Patch4: chromium-60.0.3112.78-no-libpng-prefix.patch # Do not mangle libjpeg -Patch17: chromium-60.0.3112.78-jpeg-nomangle.patch +Patch5: chromium-60.0.3112.78-jpeg-nomangle.patch # Do not mangle zlib -Patch18: chromium-77.0.3865.75-no-zlib-mangle.patch -# Fix libavutil include pathing to find arch specific timer.h -# For some reason, this only fails on aarch64. No idea why. -Patch19: chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch -# from gentoo -Patch20: chromium-77.0.3865.75-gcc-no-opt-safe-math.patch -# From gentoo -Patch21: chromium-77.0.3865.75-gcc5-r3.patch -# To use round with gcc, you need to #include -Patch22: chromium-65.0.3325.146-gcc-round-fix.patch -# Include proper headers to invoke memcpy() -Patch23: chromium-65.0.3325.146-memcpy-fix.patch -# ../../mojo/public/cpp/bindings/associated_interface_ptr_info.h:48:43: error: cannot convert 'const mojo::ScopedInterfaceEndpointHandle' to 'bool' in return -Patch24: chromium-77.0.3865.75-boolfix.patch -# From Debian -Patch25: chromium-71.0.3578.98-skia-aarch64-buildfix.patch +Patch6: chromium-77.0.3865.75-no-zlib-mangle.patch # Do not use unrar code, it is non-free -Patch27: chromium-73.0.3683.75-norar.patch -# Upstream GCC fixes -Patch28: chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch -# Add "Fedora" to the user agent string -Patch29: chromium-77.0.3865.75-fedora-user-agent.patch -# Try to fix version.py for Rawhide -Patch30: chromium-71.0.3578.98-py2-bootstrap.patch -# Fix default on redeclaration error -# https://chromium.googlesource.com/chromium/src/+/122692ccee62223f266a988c575ae687e3f4c056%5E%21/#F0 -Patch31: chromium-68.0.3440.106-fix-default-on-redeclaration.patch +Patch7: chromium-73.0.3683.75-norar.patch # Use Gentoo's Widevine hack # https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-widevine-r3.patch -Patch32: chromium-71.0.3578.98-widevine-r3.patch -# Do not require sysroot -# Forget about trying to make libc++ -# BUILD SANELY PLEASE -Patch33: chromium-69.0.3497.81-build-sanely-please.patch +Patch8: chromium-71.0.3578.98-widevine-r3.patch # Disable fontconfig cache magic that breaks remoting -Patch34: chromium-70.0.3538.67-disable-fontconfig-cache-magic.patch -# Fix aarch64 build against latest linux kernel headers -Patch35: chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch +Patch9: chromium-70.0.3538.67-disable-fontconfig-cache-magic.patch # drop rsp clobber, which breaks gcc9 (thanks to Jeff Law) -Patch36: chromium-71.0.3578.98-gcc9-drop-rsp-clobber.patch +Patch10: chromium-71.0.3578.98-gcc9-drop-rsp-clobber.patch # Try to load widevine from other places -Patch37: chromium-widevine-other-locations.patch -# Disable -fno-delete-null-pointer-checks -Patch38: chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch -# Linux 5.2 defines SIOCGSTAMP in a slightly different way, so we need to teach chromium where to find it -Patch41: chromium-75.0.3770.80-SIOCGSTAMP.patch -# Revert https://chromium.googlesource.com/chromium/src/+/daff6b66faae53a0cefb88987c9ff4843629b728%5E%21/#F0 -# It might make clang happy but it breaks gcc. F*** clang. -Patch43: chromium-75.0.3770.80-revert-daff6b.patch +Patch11: chromium-widevine-other-locations.patch +# Try to fix version.py for Rawhide +Patch12: chromium-71.0.3578.98-py2-bootstrap.patch +# Add "Fedora" to the user agent string +Patch13: chromium-77.0.3865.75-fedora-user-agent.patch + # rename function to avoid conflict with rawhide glibc "gettid()" -Patch45: chromium-75.0.3770.80-grpc-gettid-fix.patch +Patch50: chromium-75.0.3770.80-grpc-gettid-fix.patch # In GCC one can't use alignas() for exported classes # https://chromium.googlesource.com/chromium/src.git/+/8148fd96ae04a1150a9c6012634dcd2a7335f87a -Patch61: chromium-76.0.3809.100-gcc-no-alignas-and-export.patch +Patch51: chromium-76.0.3809.100-gcc-no-alignas-and-export.patch # Needs to be submitted.. -Patch62: chromium-76.0.3809.100-gcc-remoting-constexpr.patch +Patch52: chromium-76.0.3809.100-gcc-remoting-constexpr.patch # Needs to be submitted.. (ugly hack, needs to be added properly to GN files) -Patch63: chromium-76.0.3809.100-vtable-symbol-undefined.patch +Patch53: chromium-76.0.3809.100-vtable-symbol-undefined.patch # https://chromium.googlesource.com/chromium/src.git/+/3c9720245e440c4b7222f8348d2a2a3c25e098ae -Patch64: chromium-77.0.3865.75-certificate-transparency.patch +Patch54: chromium-77.0.3865.75-certificate-transparency.patch # https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-unbundle-zlib.patch -Patch65: chromium-77.0.3865.75-unbundle-zlib.patch +Patch55: chromium-77.0.3865.75-unbundle-zlib.patch # Needs to be submitted.. -Patch66: chromium-77.0.3865.75-gcc-include-memory.patch -# Needs to be submitted.. -Patch67: chromium-77.0.3865.75-base-gcc-no-alignas.patch +Patch56: chromium-77.0.3865.75-gcc-include-memory.patch +# https://chromium.googlesource.com/chromium/src/+/6b633c4b14850df376d5cec571699018772f358e +Patch57: chromium-77.0.3865.75-base-gcc-no-alignas.patch # https://chromium.googlesource.com/chromium/src/+/27e25336b8316ff3ec4e464058682ed85801fd06 -Patch68: chromium-77.0.3865.75-harfbuzz-subset.patch +Patch58: chromium-77.0.3865.75-harfbuzz-subset.patch # https://chromium.googlesource.com/chromium/src.git/+/f08cb0022527081c078e8b96062e6c9b4fbda151 -Patch69: chromium-77.0.3865.75-gcc-abstract-class.patch +Patch59: chromium-77.0.3865.75-gcc-abstract-class.patch # https://chromium.googlesource.com/chromium/src/+/5baf7df7f4c5971dab552897eeef94b194650ce5 -Patch70: chromium-77.0.3865.75-missing-limits.patch +Patch60: chromium-77.0.3865.75-missing-limits.patch -# Apply these changes to work around EPEL7 compiler issues -Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch # Use lstdc++ on EPEL7 only Patch101: chromium-75.0.3770.100-epel7-stdc++.patch # el7 only patch @@ -757,60 +704,40 @@ udev. %setup -q -n chromium-%{version} ### Chromium Fedora Patches ### -%patch0 -p1 -b .gcc5 -%patch1 -p1 -b .pathmax -%patch2 -p1 -b .addrfix -%patch3 -p1 -b .notest -%patch4 -p1 -b .modern-libusbx -%patch6 -p1 -b .sandboxpie -%patch7 -p1 -b .etc -%patch8 -p1 -b .gnsystem -%patch9 -p1 -b .timefix -%patch10 -p1 -b .nullfix -%patch11 -p1 -b .jpegfix -%patch12 -p1 -b .ldmemory -%patch13 -p1 -b .revert -%patch14 -p1 -b .ffmpeg-stdatomic -%patch15 -p1 -b .system-clang -%patch16 -p1 -b .noprefix -%patch17 -p1 -b .nomangle -%patch18 -p1 -b .nozmangle -%patch19 -p1 -b .pathfix -%patch20 -p1 -b .nogccoptmath -%patch21 -p1 -b .gcc5-r3 -%patch22 -p1 -b .gcc-round-fix -%patch23 -p1 -b .memcpyfix -%patch24 -p1 -b .boolfix -#%patch25 -p1 -b .aarch64fix -%patch27 -p1 -b .nounrar -%patch28 -p1 -b .gcc-cpolicyprovider -%patch29 -p1 -b .fedora-user-agent -%patch30 -p1 -b .py2 -%patch31 -p1 -b .fix-default-redeclaration -%patch32 -p1 -b .wvhack -%patch33 -p1 -b .sanebuild -%patch34 -p1 -b .nofc -%patch35 -p1 -b .aarch64-new-stat -%patch36 -p1 -b .gcc9 -%patch37 -p1 -b .widevine-other-locations -%patch38 -p1 -b .disable-ndnpc -%patch41 -p1 -b .SIOCGSTAMP -%patch43 -p1 -b .revert-daff6b -%patch45 -p1 -b .gettid-fix -%patch61 -p1 -b .gcc-no-alignas-and-export -%patch62 -p1 -b .gcc-remoting-constexpr -%patch63 -p1 -b .vtable-symbol-undefined -%patch64 -p1 -b .certificate-transparency -%patch65 -p1 -b .unbundle-zlib -%patch66 -p1 -b .gcc-include-memory -%patch67 -p1 -b .base-gcc-no-alignas -%patch68 -p1 -b .harfbuzz-subset -%patch69 -p1 -b .gcc-abstract-class -%patch70 -p1 -b .missing-limits +%patch0 -p1 -b .sandboxpie +%patch1 -p1 -b .etc +%patch2 -p1 -b .gnsystem +%patch3 -p1 -b .revert +%patch4 -p1 -b .nolibpngprefix +%patch5 -p1 -b .nolibjpegmangle +%patch6 -p1 -b .nozlibmangle +%patch7 -p1 -b .nounrar +%patch8 -p1 -b .widevine-hack +%patch9 -p1 -b .nofontconfigcache +%patch10 -p1 -b .gcc9 +%patch11 -p1 -b .widevine-other-locations +%patch12 -p1 -b .py2 + +# Short term fixes (usually gcc and backports) +%patch50 -p1 -b .gettid-fix +%patch51 -p1 -b .gcc-no-alignas-and-export +%patch52 -p1 -b .gcc-remoting-constexpr +%patch53 -p1 -b .vtable-symbol-undefined +%patch54 -p1 -b .certificate-transparency +%patch55 -p1 -b .unbundle-zlib +%patch56 -p1 -b .gcc-include-memory +%patch57 -p1 -b .base-gcc-no-alignas +%patch58 -p1 -b .harfbuzz-subset +%patch59 -p1 -b .gcc-abstract-class +%patch60 -p1 -b .missing-limits + +# Fedora branded user agent +%if 0%{?fedora} +%patch13 -p1 -b .fedora-user-agent +%endif # EPEL specific patches %if 0%{?rhel} == 7 -%patch100 -p1 -b .kmaxskip %patch101 -p1 -b .epel7 %patch102 -p1 -b .el7-noexcept %endif @@ -1287,6 +1214,11 @@ sed -i.orig -e 's/getenv("CHROME_VERSION_EXTRA")/"Fedora Project"/' $FILE . /opt/rh/devtoolset-%{dts_version}/enable %endif +# Decrease the debuginfo verbosity, so it compiles in koji +%ifarch %{ix86} +%global optflags %(echo %{optflags} | sed 's/-g /-g1 /') +%endif + echo # Now do the full browser %if 0%{freeworld} From 6bae3df5bc0ae8a223b79879956160aebf252b8b Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 23 Sep 2019 17:21:06 +0200 Subject: [PATCH 0578/1449] Fix the icon So the monochromatic icon is being shown even in the GNOME's overview and it's ugly (as it's upscaled from 22x22). Remove it. --- chromium.spec | 2 -- 1 file changed, 2 deletions(-) diff --git a/chromium.spec b/chromium.spec index e32ff17..d9399c5 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1388,8 +1388,6 @@ mkdir -p %{buildroot}%{_datadir}/icons/hicolor/48x48/apps cp -a chrome/app/theme/chromium/product_logo_48.png %{buildroot}%{_datadir}/icons/hicolor/48x48/apps/%{chromium_browser_channel}.png mkdir -p %{buildroot}%{_datadir}/icons/hicolor/24x24/apps cp -a chrome/app/theme/chromium/product_logo_24.png %{buildroot}%{_datadir}/icons/hicolor/24x24/apps/%{chromium_browser_channel}.png -mkdir -p %{buildroot}%{_datadir}/icons/hicolor/symbolic/apps -cp -a chrome/app/theme/chromium/product_logo_22_mono.png %{buildroot}%{_datadir}/icons/hicolor/symbolic/apps/%{chromium_browser_channel}.png # Install the master_preferences file mkdir -p %{buildroot}%{_sysconfdir}/%{name} From 3d796422d5a4839b4a085c5ff26b57e3d2fc531d Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 23 Sep 2019 17:25:20 +0200 Subject: [PATCH 0579/1449] Fix the icon Remove quite a few of downstream patches Fix the crashes by backporting an upstream bug Resolves: rhbz#1754179 --- chromium-77.0.3865.90-linked-hash-set.patch | 130 ++++++++++++++++++++ chromium.spec | 11 +- 2 files changed, 140 insertions(+), 1 deletion(-) create mode 100644 chromium-77.0.3865.90-linked-hash-set.patch diff --git a/chromium-77.0.3865.90-linked-hash-set.patch b/chromium-77.0.3865.90-linked-hash-set.patch new file mode 100644 index 0000000..f921f1a --- /dev/null +++ b/chromium-77.0.3865.90-linked-hash-set.patch @@ -0,0 +1,130 @@ +From 74138b9febd37eac0fc26b8efb110014a83a52c6 Mon Sep 17 00:00:00 2001 +From: Jeremy Roman +Date: Wed, 07 Aug 2019 13:26:48 +0000 +Subject: [PATCH] WTF: Make LinkedHashSet understand values for which memset initialization would be bad. + +Includes a unit test which fails before, and uses this to fix FontCacheKeyTraits. + +Bug: 980025 +Change-Id: If41f97444c7fd37b9b95d6dadaf3da5689079e9e +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1739948 +Reviewed-by: Kentaro Hara +Reviewed-by: Yutaka Hirano +Commit-Queue: Jeremy Roman +Cr-Commit-Position: refs/heads/master@{#684731} +--- + +diff --git a/third_party/blink/renderer/platform/fonts/font_cache_key.h b/third_party/blink/renderer/platform/fonts/font_cache_key.h +index 0efc8fb..90063cb 100644 +--- a/third_party/blink/renderer/platform/fonts/font_cache_key.h ++++ b/third_party/blink/renderer/platform/fonts/font_cache_key.h +@@ -133,6 +133,10 @@ + + struct FontCacheKeyTraits : WTF::SimpleClassHashTraits { + STATIC_ONLY(FontCacheKeyTraits); ++ ++ // std::string's empty state need not be zero in all implementations, ++ // and it is held within FontFaceCreationParams. ++ static const bool kEmptyValueIsZero = false; + }; + + } // namespace blink +diff --git a/third_party/blink/renderer/platform/wtf/linked_hash_set.h b/third_party/blink/renderer/platform/wtf/linked_hash_set.h +index b35b6e9..77e524c 100644 +--- a/third_party/blink/renderer/platform/wtf/linked_hash_set.h ++++ b/third_party/blink/renderer/platform/wtf/linked_hash_set.h +@@ -146,6 +146,11 @@ + LinkedHashSetNodeBase* next) + : LinkedHashSetNodeBase(prev, next), value_(value) {} + ++ LinkedHashSetNode(ValueArg&& value, ++ LinkedHashSetNodeBase* prev, ++ LinkedHashSetNodeBase* next) ++ : LinkedHashSetNodeBase(prev, next), value_(std::move(value)) {} ++ + LinkedHashSetNode(LinkedHashSetNode&& other) + : LinkedHashSetNodeBase(std::move(other)), + value_(std::move(other.value_)) {} +@@ -445,10 +450,13 @@ + + // The slot is empty when the next_ field is zero so it's safe to zero + // the backing. +- static const bool kEmptyValueIsZero = true; ++ static const bool kEmptyValueIsZero = ValueTraits::kEmptyValueIsZero; + + static const bool kHasIsEmptyValueFunction = true; + static bool IsEmptyValue(const Node& node) { return !node.next_; } ++ static Node EmptyValue() { ++ return Node(ValueTraits::EmptyValue(), nullptr, nullptr); ++ } + + static const int kDeletedValue = -1; + +diff --git a/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc b/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc +index 4c3f899..cd1be00 100644 +--- a/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc ++++ b/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc +@@ -487,6 +487,7 @@ + }; + + struct Complicated { ++ Complicated() : Complicated(0) {} + Complicated(int value) : simple_(value) { objects_constructed_++; } + + Complicated(const Complicated& other) : simple_(other.simple_) { +@@ -495,9 +496,6 @@ + + Simple simple_; + static int objects_constructed_; +- +- private: +- Complicated() = delete; + }; + + int Complicated::objects_constructed_ = 0; +@@ -731,4 +729,45 @@ + + } // anonymous namespace + ++// A unit type which objects to its state being initialized wrong. ++struct InvalidZeroValue { ++ InvalidZeroValue() = default; ++ InvalidZeroValue(WTF::HashTableDeletedValueType) : deleted_(true) {} ++ ~InvalidZeroValue() { CHECK(ok_); } ++ bool IsHashTableDeletedValue() const { return deleted_; } ++ ++ bool ok_ = true; ++ bool deleted_ = false; ++}; ++ ++template <> ++struct HashTraits : SimpleClassHashTraits { ++ static const bool kEmptyValueIsZero = false; ++}; ++ ++template <> ++struct DefaultHash { ++ struct Hash { ++ static unsigned GetHash(const InvalidZeroValue&) { return 0; } ++ static bool Equal(const InvalidZeroValue&, const InvalidZeroValue&) { ++ return true; ++ } ++ }; ++}; ++ ++template ++class ListOrLinkedHashSetInvalidZeroTest : public testing::Test {}; ++ ++using InvalidZeroValueSetTypes = ++ testing::Types, ++ ListHashSet, ++ LinkedHashSet>; ++TYPED_TEST_SUITE(ListOrLinkedHashSetInvalidZeroTest, InvalidZeroValueSetTypes); ++ ++TYPED_TEST(ListOrLinkedHashSetInvalidZeroTest, InvalidZeroValue) { ++ using Set = TypeParam; ++ Set set; ++ set.insert(InvalidZeroValue()); ++} ++ + } // namespace WTF diff --git a/chromium.spec b/chromium.spec index d9399c5..f962e02 100644 --- a/chromium.spec +++ b/chromium.spec @@ -158,7 +158,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3865.90 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -218,6 +218,8 @@ Patch58: chromium-77.0.3865.75-harfbuzz-subset.patch Patch59: chromium-77.0.3865.75-gcc-abstract-class.patch # https://chromium.googlesource.com/chromium/src/+/5baf7df7f4c5971dab552897eeef94b194650ce5 Patch60: chromium-77.0.3865.75-missing-limits.patch +# https://chromium.googlesource.com/chromium/src/+/74138b9febd37eac0fc26b8efb110014a83a52c6 +Patch61: chromium-77.0.3865.90-linked-hash-set.patch # Use lstdc++ on EPEL7 only Patch101: chromium-75.0.3770.100-epel7-stdc++.patch @@ -730,6 +732,7 @@ udev. %patch58 -p1 -b .harfbuzz-subset %patch59 -p1 -b .gcc-abstract-class %patch60 -p1 -b .missing-limits +%patch61 -p1 -b .linked-hash-set # Fedora branded user agent %if 0%{?fedora} @@ -1632,6 +1635,12 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Mon Sep 23 2019 Tomas Popela - 77.0.3865.90-2 +- Fix the icon +- Remove quite a few of downstream patches +- Fix the crashes by backporting an upstream bug +- Resolves: rhbz#1754179 + * Thu Sep 19 2019 Tomas Popela - 77.0.3865.90-1 - Update to 77.0.3865.90 From 430c02ae6ec1d4dd86bfb77883f2448bafa73216 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Sun, 15 Sep 2019 13:36:44 +0200 Subject: [PATCH 0580/1449] Don't try to revert a previously removed patch --- chromium.spec | 2 -- 1 file changed, 2 deletions(-) diff --git a/chromium.spec b/chromium.spec index 6b2691a..38d8c20 100644 --- a/chromium.spec +++ b/chromium.spec @@ -862,8 +862,6 @@ udev. %patch100 -p1 -b .kmaxskip %patch101 -p1 -b .epel7 %patch102 -p1 -b .el7-noexcept -# Revert patch58 because it's breaking the build on el7 -%patch58 -R -p1 %endif # Feature specific patches From 20eba058de554633ffb2d407e25fa2a0190f050b Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 20 Sep 2019 09:37:33 +0200 Subject: [PATCH 0581/1449] Remove support for (p)NaCL We don't build it for quite some time and will by killed by Google in Spring 2020. Let's drop the support for it from the SPEC file. We can revert this patch if needed. --- ...526.80-nacl-ignore-broken-fd-counter.patch | 27 --- ...m-47.0.2526.80-pnacl-fgnu-inline-asm.patch | 11 -- chromium.spec | 187 ------------------ 3 files changed, 225 deletions(-) delete mode 100644 chromium-47.0.2526.80-nacl-ignore-broken-fd-counter.patch delete mode 100644 chromium-47.0.2526.80-pnacl-fgnu-inline-asm.patch diff --git a/chromium-47.0.2526.80-nacl-ignore-broken-fd-counter.patch b/chromium-47.0.2526.80-nacl-ignore-broken-fd-counter.patch deleted file mode 100644 index c422957..0000000 --- a/chromium-47.0.2526.80-nacl-ignore-broken-fd-counter.patch +++ /dev/null @@ -1,27 +0,0 @@ -diff -up chromium-47.0.2526.80/components/nacl/loader/sandbox_linux/nacl_sandbox_linux.cc.ignore-fd-count chromium-47.0.2526.80/components/nacl/loader/sandbox_linux/nacl_sandbox_linux.cc ---- chromium-47.0.2526.80/components/nacl/loader/sandbox_linux/nacl_sandbox_linux.cc.ignore-fd-count 2015-12-15 14:48:07.119011866 -0500 -+++ chromium-47.0.2526.80/components/nacl/loader/sandbox_linux/nacl_sandbox_linux.cc 2015-12-15 14:48:14.151850055 -0500 -@@ -153,6 +153,14 @@ void NaClSandbox::InitializeLayerOneSand - } - - void NaClSandbox::CheckForExpectedNumberOfOpenFds() { -+ // Whatever logic this code is using is wrong more often than it is right. -+ // If you set expected_num_fds to 6, it finds 7. -+ // If you set expected_num_fds to 7, it finds 6. -+ // Code like this makes a packager drink. And not the good stuff either. -+ // Instead, we're just going to smile and tell it to never care about the -+ // number of FDs open. Stupid code. We hates it. -+ -+#if 0 - // We expect to have the following FDs open: - // 1-3) stdin, stdout, stderr. - // 4) The /dev/urandom FD used by base::GetUrandomFD(). -@@ -171,6 +179,8 @@ void NaClSandbox::CheckForExpectedNumber - } - - CHECK_EQ(expected_num_fds, sandbox::ProcUtil::CountOpenFds(proc_fd_.get())); -+#endif -+ - } - - void NaClSandbox::InitializeLayerTwoSandbox(bool uses_nonsfi_mode) { diff --git a/chromium-47.0.2526.80-pnacl-fgnu-inline-asm.patch b/chromium-47.0.2526.80-pnacl-fgnu-inline-asm.patch deleted file mode 100644 index bfe0422..0000000 --- a/chromium-47.0.2526.80-pnacl-fgnu-inline-asm.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-47.0.2526.80/native_client/build/untrusted.gypi.fixme chromium-47.0.2526.80/native_client/build/untrusted.gypi ---- chromium-47.0.2526.80/native_client/build/untrusted.gypi.fixme 2015-12-09 11:54:27.584962337 -0500 -+++ chromium-47.0.2526.80/native_client/build/untrusted.gypi 2015-12-09 11:54:45.033571750 -0500 -@@ -1564,6 +1564,7 @@ - '-Wno-char-subscripts', - '-Wno-unused-function', - '-std=gnu++11', -+ '-fgnu-inline-asm', - ], - 'native_irt_compile_flags': [ - # IRT compile/link flags to make the binary smaller. diff --git a/chromium.spec b/chromium.spec index 38d8c20..7fe074d 100644 --- a/chromium.spec +++ b/chromium.spec @@ -70,32 +70,11 @@ # If we build with shared on, then chrome-remote-desktop depends on chromium libs. # If we build with shared off, then users cannot swap out libffmpeg (and i686 gets a lot harder to build) %global shared 1 -# We should not need to turn this on. The app in the webstore _should_ work. -%global build_remoting_app 0 # AddressSanitizer mode # https://www.chromium.org/developers/testing/addresssanitizer %global asan 0 -# nacl/pnacl are soon to be dead. We're just killing them off early. -%global killnacl 1 - -%if 0%{?killnacl} - %global nacl 0 - %global nonacl 1 -%else -# TODO: Try arm (nacl disabled) -%if 0%{?fedora} - %ifarch i686 - %global nacl 0 - %global nonacl 1 - %else - %global nacl 1 - %global nonacl 0 - %endif -%endif -%endif - %if 0 # Chromium's fork of ICU is now something we can't unbundle. # This is left here to ease the change if that ever switches. @@ -298,16 +277,6 @@ Patch101: chromium-75.0.3770.100-epel7-stdc++.patch # el7 only patch Patch102: chromium-77.0.3865.75-el7-noexcept.patch -# In file included from ../linux/directory.c:21: -# In file included from ../../../../native_client/src/nonsfi/linux/abi_conversion.h:20: -# ../../../../native_client/src/nonsfi/linux/linux_syscall_structs.h:44:13: error: GNU-style inline assembly is disabled -# __asm__ __volatile__("mov %%gs, %0" : "=r"(gs)); -# ^ -# 1 error generated. -Patch200: chromium-47.0.2526.80-pnacl-fgnu-inline-asm.patch -# Ignore broken nacl open fd counter -Patch201: chromium-47.0.2526.80-nacl-ignore-broken-fd-counter.patch - # Enable VAAPI support on Linux # NOTE: This patch will never land upstream Patch202: enable-vaapi.patch @@ -415,24 +384,6 @@ BuildRequires: libappstream-glib # gn needs these BuildRequires: libstdc++-static BuildRequires: libstdc++-devel, openssl-devel -%if 0%{?nacl} -BuildRequires: nacl-gcc, nacl-binutils, nacl-newlib -BuildRequires: nacl-arm-gcc, nacl-arm-binutils, nacl-arm-newlib -# pNaCl needs this monster -# It's possible that someday this dep will stabilize, but -# right now, it needs to be updated everytime chromium bumps -# a major version. -BuildRequires: chromium-native_client >= 52.0.2743.82 -BuildRequires: clang -BuildRequires: llvm -%ifarch x86_64 -# Really, this is what we want: -# BuildRequires: glibc-devel(x86-32) libgcc(x86-32) -# But, koji only offers glibc32. Maybe that's enough. -# This BR will pull in either glibc.i686 or glibc32. -BuildRequires: /lib/libc.so.6 /usr/lib/libc.so -%endif -%endif # Fedora tries to use system libs whenever it can. BuildRequires: bzip2-devel BuildRequires: dbus-glib-devel @@ -865,11 +816,6 @@ udev. %endif # Feature specific patches -%if ! 0%{?killnacl} -%patch200 -p1 -b .gnu-inline -%patch201 -p1 -b .ignore-fd-count -%endif - %if %{use_vaapi} %patch202 -p1 -b .vaapi %ifarch i686 @@ -898,101 +844,6 @@ export RANLIB="ranlib" rm -rf buildtools/third_party/libc++/BUILD.gn -%if 0%{?nacl} -# prep the nacl tree -mkdir -p out/Release/gen/sdk/linux_x86/nacl_x86_newlib -cp -a --no-preserve=context /usr/%{_arch}-nacl/* out/Release/gen/sdk/linux_x86/nacl_x86_newlib - -mkdir -p out/Release/gen/sdk/linux_x86/nacl_arm_newlib -cp -a --no-preserve=context /usr/arm-nacl/* out/Release/gen/sdk/linux_x86/nacl_arm_newlib - -# Not sure if we need this or not, but better safe than sorry. -pushd out/Release/gen/sdk/linux_x86 -ln -s nacl_x86_newlib nacl_x86_newlib_raw -ln -s nacl_arm_newlib nacl_arm_newlib_raw -popd - -mkdir -p out/Release/gen/sdk/linux_x86/nacl_x86_newlib/bin -pushd out/Release/gen/sdk/linux_x86/nacl_x86_newlib/bin -ln -s /usr/bin/x86_64-nacl-gcc gcc -ln -s /usr/bin/x86_64-nacl-gcc x86_64-nacl-gcc -ln -s /usr/bin/x86_64-nacl-g++ g++ -ln -s /usr/bin/x86_64-nacl-g++ x86_64-nacl-g++ -# ln -s /usr/bin/x86_64-nacl-ar ar -ln -s /usr/bin/x86_64-nacl-ar x86_64-nacl-ar -# ln -s /usr/bin/x86_64-nacl-as as -ln -s /usr/bin/x86_64-nacl-as x86_64-nacl-as -# ln -s /usr/bin/x86_64-nacl-ranlib ranlib -ln -s /usr/bin/x86_64-nacl-ranlib x86_64-nacl-ranlib -# Cleanups -rm addr2line -ln -s /usr/bin/x86_64-nacl-addr2line addr2line -rm c++filt -ln -s /usr/bin/x86_64-nacl-c++filt c++filt -rm gprof -ln -s /usr/bin/x86_64-nacl-gprof gprof -rm readelf -ln -s /usr/bin/x86_64-nacl-readelf readelf -rm size -ln -s /usr/bin/x86_64-nacl-size size -rm strings -ln -s /usr/bin/x86_64-nacl-strings strings -popd - -mkdir -p out/Release/gen/sdk/linux_x86/nacl_arm_newlib/bin -pushd out/Release/gen/sdk/linux_x86/nacl_arm_newlib/bin -ln -s /usr/bin/arm-nacl-gcc gcc -ln -s /usr/bin/arm-nacl-gcc arm-nacl-gcc -ln -s /usr/bin/arm-nacl-g++ g++ -ln -s /usr/bin/arm-nacl-g++ arm-nacl-g++ -ln -s /usr/bin/arm-nacl-ar arm-nacl-ar -ln -s /usr/bin/arm-nacl-as arm-nacl-as -ln -s /usr/bin/arm-nacl-ranlib arm-nacl-ranlib -popd - -touch out/Release/gen/sdk/linux_x86/nacl_x86_newlib/stamp.untar out/Release/gen/sdk/linux_x86/nacl_x86_newlib/stamp.prep -touch out/Release/gen/sdk/linux_x86/nacl_x86_newlib/nacl_x86_newlib.json -touch out/Release/gen/sdk/linux_x86/nacl_arm_newlib/stamp.untar out/Release/gen/sdk/linux_x86/nacl_arm_newlib/stamp.prep -touch out/Release/gen/sdk/linux_x86/nacl_arm_newlib/nacl_arm_newlib.json - -pushd out/Release/gen/sdk/linux_x86/ -mkdir -p pnacl_newlib pnacl_translator -# Might be able to do symlinks here, but eh. -cp -a --no-preserve=context /usr/pnacl_newlib/* pnacl_newlib/ -cp -a --no-preserve=context /usr/pnacl_translator/* pnacl_translator/ -for i in lib/libc.a lib/libc++.a lib/libg.a lib/libm.a; do - /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/x86_64_bc-nacl/$i - /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/i686_bc-nacl/$i - /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/le32-nacl/$i -done - -for i in lib/libpthread.a lib/libnacl.a; do - /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/le32-nacl/$i -done - -for i in lib/clang/3.7.0/lib/x86_64_bc-nacl/libpnaclmm.a lib/clang/3.7.0/lib/i686_bc-nacl/libpnaclmm.a; do - /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/$i -done - -for i in lib/clang/3.7.0/lib/le32-nacl/libpnaclmm.a lib/clang/3.7.0/lib/le32-nacl/libgcc.a; do - /usr/pnacl_newlib/bin/pnacl-ranlib pnacl_newlib/$i -done - -popd - -mkdir -p native_client/toolchain/.tars/linux_x86 -touch native_client/toolchain/.tars/linux_x86/pnacl_translator.json - -pushd native_client/toolchain -ln -s ../../out/Release/gen/sdk/linux_x86 linux_x86 -popd - -mkdir -p third_party/llvm-build/Release+Asserts/bin -pushd third_party/llvm-build/Release+Asserts/bin -ln -s /usr/bin/clang clang -popd -%endif - # Unpack fonts %if %{freeworld} # no font fun needed. @@ -1063,9 +914,7 @@ export CHROMIUM_CORE_GN_DEFINES CHROMIUM_BROWSER_GN_DEFINES="" CHROMIUM_BROWSER_GN_DEFINES+=' use_gio=true use_pulseaudio=true icu_use_data_file=true' -%if 0%{?nonacl} CHROMIUM_BROWSER_GN_DEFINES+=' enable_nacl=false' -%endif %if 0%{?shared} CHROMIUM_BROWSER_GN_DEFINES+=' is_component_ffmpeg=true is_component_build=true' %else @@ -1227,9 +1076,6 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/libwebm' \ 'third_party/libwebp' \ 'third_party/libyuv' \ -%if 0%{?nacl} - 'third_party/llvm-build' \ -%endif 'third_party/lss' \ 'third_party/lzma_sdk' \ %if 0 @@ -1460,19 +1306,7 @@ echo # remote client # ../../depot_tools/ninja -C ../%{builddir} -vvv remoting_me2me_host remoting_start_host remoting_it2me_native_messaging_host remoting_me2me_native_messaging_host remoting_native_messaging_manifests remoting_resources %build_target %{remotingbuilddir} remoting_all -%if 0%{?build_remoting_app} -%if 0%{?nacl} -export GOOGLE_CLIENT_ID_REMOTING_IDENTITY_API=%{chromoting_client_id} -%build_target %{builddir} remoting_webapp %endif -%endif - -%endif - -# Nuke nacl/pnacl bits at the end of the build -rm -rf %{builddir}/gen/sdk -rm -rf native_client/toolchain -rm -rf third_party/llvm-build/* %install rm -rf %{buildroot} @@ -1511,10 +1345,6 @@ mkdir -p %{buildroot}%{_mandir}/man1/ pushd %{builddir} cp -a *.pak locales resources icudtl.dat %{buildroot}%{chromium_path} -%if 0%{?nacl} -cp -a nacl_helper* *.nexe pnacl tls_edit %{buildroot}%{chromium_path} -chmod -x %{buildroot}%{chromium_path}/nacl_helper_bootstrap* *.nexe -%endif # Reasonably sure we don't need this anymore. Chrome doesn't include it. %if 0 cp -a protoc pyproto %{buildroot}%{chromium_path} @@ -1596,12 +1426,6 @@ pushd %{buildroot}%{_sysconfdir}/pam.d/ ln -s system-auth chrome-remote-desktop popd -%if 0%{?build_remoting_app} -%if 0%{?nacl} -cp -a remoting_client_plugin_newlib.* %{buildroot}%{chromium_path} -%endif -%endif - %if %{build_headless} pushd %{headlessbuilddir} cp -a headless_lib.pak headless_shell %{buildroot}%{chromium_path} @@ -1742,12 +1566,6 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %ifarch x86_64 i686 aarch64 %{chromium_path}/swiftshader/ %endif -%if 0%{?nacl} -%{chromium_path}/nacl_helper* -%{chromium_path}/*.nexe -%{chromium_path}/pnacl/ -%{chromium_path}/tls_edit -%endif %dir %{chromium_path}/PepperFlash/ %if 0 %{chromium_path}/protoc @@ -1861,11 +1679,6 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{crd_path}/user-session %{_unitdir}/chrome-remote-desktop@.service /var/lib/chrome-remote-desktop/ -%if 0%{?build_remoting_app} -%if 0%{?nacl} -%{chromium_path}/remoting_client_plugin_newlib.* -%endif -%endif %files -n chromedriver %doc AUTHORS From 94ec5c2f5bdd33d4ab71b6fc0d7e2a9b7d1fa55e Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 20 Sep 2019 09:45:43 +0200 Subject: [PATCH 0582/1449] Fix how the arguments are passed to GN's bootstrap.py I don't know why, but previously it was failing only on aarch64. --- chromium.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 7fe074d..c41439f 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1256,7 +1256,7 @@ if python2 -c 'import google ; print google.__path__' 2> /dev/null ; then \ exit 1 ; \ fi -tools/gn/bootstrap/bootstrap.py -v "$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" +tools/gn/bootstrap/bootstrap.py -v --no-clean --gn-gen-args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{builddir}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{builddir} %if %{freeworld} From a472406f7f0e3316065738abf4a1f0d7d56a5d56 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 20 Sep 2019 09:57:18 +0200 Subject: [PATCH 0583/1449] Remove the unused patches or patches that are not needed anymore Also replace some patches with changes in the SPEC file. --- chromium-45.0.2454.101-linux-path-max.patch | 44 ---- ...mium-53.0.2785.92-boringssl-time-fix.patch | 11 - chromium-54.0.2840.59-jpeg-include-dir.patch | 11 - chromium-55.0.2883.75-addrfix.patch | 11 - ...m-59.0.3071.86-i686-ld-memory-tricks.patch | 12 -- ...113-libavutil-timer-include-path-fix.patch | 21 -- ...mium-62.0.3202.62-kmaxskip-constexpr.patch | 12 -- chromium-63.0.3289.84-nullfix.patch | 43 ---- chromium-64.0.3282.119-ffmpeg-stdatomic.patch | 17 -- chromium-65.0.3325.146-gcc-round-fix.patch | 12 -- chromium-65.0.3325.146-memcpy-fix.patch | 12 -- ...-declare-ConfigurationPolicyProvider.patch | 18 -- chromium-66.0.3359.117-system-clang.patch | 12 -- chromium-67.0.3396.62-gcc5.patch | 12 -- ...440.106-fix-default-on-redeclaration.patch | 30 --- ...ium-69.0.3497.81-build-sanely-please.patch | 33 --- ...0.3538.77-aarch64-arch-want-new-stat.patch | 12 -- ...m-71.0.3578.98-skia-aarch64-buildfix.patch | 21 -- chromium-72.0.3626.121-notest.patch | 11 - ...sable-fno-delete-null-pointer-checks.patch | 48 ----- chromium-75.0.3770.100-git00281713.patch | 34 --- chromium-75.0.3770.80-SIOCGSTAMP.patch | 15 -- ...5.0.3770.80-aeed4d-gcc-dcheck_ne-fix.patch | 14 -- chromium-75.0.3770.80-gcc-no-assume.patch | 21 -- chromium-75.0.3770.80-revert-daff6b.patch | 13 -- ...9.100-libusb_interrupt_event_handler.patch | 15 -- chromium-77.0.3865.75-boolfix.patch | 24 --- ...um-77.0.3865.75-gcc-no-opt-safe-math.patch | 15 -- chromium-77.0.3865.75-gcc5-r3.patch | 36 ---- chromium.spec | 198 ++++++------------ 30 files changed, 65 insertions(+), 723 deletions(-) delete mode 100644 chromium-45.0.2454.101-linux-path-max.patch delete mode 100644 chromium-53.0.2785.92-boringssl-time-fix.patch delete mode 100644 chromium-54.0.2840.59-jpeg-include-dir.patch delete mode 100644 chromium-55.0.2883.75-addrfix.patch delete mode 100644 chromium-59.0.3071.86-i686-ld-memory-tricks.patch delete mode 100644 chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch delete mode 100644 chromium-62.0.3202.62-kmaxskip-constexpr.patch delete mode 100644 chromium-63.0.3289.84-nullfix.patch delete mode 100644 chromium-64.0.3282.119-ffmpeg-stdatomic.patch delete mode 100644 chromium-65.0.3325.146-gcc-round-fix.patch delete mode 100644 chromium-65.0.3325.146-memcpy-fix.patch delete mode 100644 chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch delete mode 100644 chromium-66.0.3359.117-system-clang.patch delete mode 100644 chromium-67.0.3396.62-gcc5.patch delete mode 100644 chromium-68.0.3440.106-fix-default-on-redeclaration.patch delete mode 100644 chromium-69.0.3497.81-build-sanely-please.patch delete mode 100644 chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch delete mode 100644 chromium-71.0.3578.98-skia-aarch64-buildfix.patch delete mode 100644 chromium-72.0.3626.121-notest.patch delete mode 100644 chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch delete mode 100644 chromium-75.0.3770.100-git00281713.patch delete mode 100644 chromium-75.0.3770.80-SIOCGSTAMP.patch delete mode 100644 chromium-75.0.3770.80-aeed4d-gcc-dcheck_ne-fix.patch delete mode 100644 chromium-75.0.3770.80-gcc-no-assume.patch delete mode 100644 chromium-75.0.3770.80-revert-daff6b.patch delete mode 100644 chromium-76.0.3809.100-libusb_interrupt_event_handler.patch delete mode 100644 chromium-77.0.3865.75-boolfix.patch delete mode 100644 chromium-77.0.3865.75-gcc-no-opt-safe-math.patch delete mode 100644 chromium-77.0.3865.75-gcc5-r3.patch diff --git a/chromium-45.0.2454.101-linux-path-max.patch b/chromium-45.0.2454.101-linux-path-max.patch deleted file mode 100644 index 3146349..0000000 --- a/chromium-45.0.2454.101-linux-path-max.patch +++ /dev/null @@ -1,44 +0,0 @@ -diff -up chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/path.h.pathmax chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/path.h ---- chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/path.h.pathmax 2015-10-07 11:26:11.813477839 -0400 -+++ chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/path.h 2015-10-07 11:26:40.845845054 -0400 -@@ -12,6 +12,11 @@ - - #include "sdk_util/macros.h" - -+/* Needed for PATH_MAX */ -+#ifndef PATH_MAX -+#define PATH_MAX 4096 -+#endif -+ - namespace nacl_io { - - class Path { -diff -up chromium-45.0.2454.101/native_client/src/untrusted/nacl/getcwd.c.pathmax chromium-45.0.2454.101/native_client/src/untrusted/nacl/getcwd.c ---- chromium-45.0.2454.101/native_client/src/untrusted/nacl/getcwd.c.pathmax 2015-08-22 15:02:08.000000000 -0400 -+++ chromium-45.0.2454.101/native_client/src/untrusted/nacl/getcwd.c 2015-10-07 10:58:56.172018783 -0400 -@@ -11,6 +11,10 @@ - - #include - #include -+/* Needed for PATH_MAX */ -+#ifndef PATH_MAX -+#define PATH_MAX 4096 -+#endif - #include - #include - #include -diff -up chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/syscalls/realpath.c.pathmax chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/syscalls/realpath.c ---- chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/syscalls/realpath.c.pathmax 2015-10-09 10:57:38.424348662 -0400 -+++ chromium-45.0.2454.101/native_client_sdk/src/libraries/nacl_io/syscalls/realpath.c 2015-10-09 10:57:51.541059938 -0400 -@@ -13,6 +13,11 @@ - - #include "sdk_util/macros.h" - -+/* Needed for PATH_MAX */ -+#ifndef PATH_MAX -+#define PATH_MAX 4096 -+#endif -+ - EXTERN_C_BEGIN - - #if defined(__native_client__) diff --git a/chromium-53.0.2785.92-boringssl-time-fix.patch b/chromium-53.0.2785.92-boringssl-time-fix.patch deleted file mode 100644 index 8d67957..0000000 --- a/chromium-53.0.2785.92-boringssl-time-fix.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-53.0.2785.92/third_party/boringssl/src/crypto/x509/by_dir.c.timefix chromium-53.0.2785.92/third_party/boringssl/src/crypto/x509/by_dir.c ---- chromium-53.0.2785.92/third_party/boringssl/src/crypto/x509/by_dir.c.timefix 2016-09-06 15:20:06.094396255 -0400 -+++ chromium-53.0.2785.92/third_party/boringssl/src/crypto/x509/by_dir.c 2016-09-06 15:20:16.893187930 -0400 -@@ -56,6 +56,7 @@ - * [including the GNU Public Licence.] */ - - #include -+#include - #include - #include - diff --git a/chromium-54.0.2840.59-jpeg-include-dir.patch b/chromium-54.0.2840.59-jpeg-include-dir.patch deleted file mode 100644 index f96a56c..0000000 --- a/chromium-54.0.2840.59-jpeg-include-dir.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-54.0.2840.59/third_party/BUILD.gn.jpegfix chromium-54.0.2840.59/third_party/BUILD.gn ---- chromium-54.0.2840.59/third_party/BUILD.gn.jpegfix 2016-10-17 11:45:44.995340495 -0400 -+++ chromium-54.0.2840.59/third_party/BUILD.gn 2016-10-17 11:46:35.254289872 -0400 -@@ -20,6 +20,7 @@ declare_args() { - config("system_libjpeg_config") { - libs = [ "jpeg" ] - defines = [ "USE_SYSTEM_LIBJPEG" ] -+ include_dirs = [ "/usr/include/" ] - } - - config("libjpeg_turbo_config") { diff --git a/chromium-55.0.2883.75-addrfix.patch b/chromium-55.0.2883.75-addrfix.patch deleted file mode 100644 index 00c214c..0000000 --- a/chromium-55.0.2883.75-addrfix.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-55.0.2883.75/third_party/boringssl/BUILD.gn.addrfix chromium-55.0.2883.75/third_party/boringssl/BUILD.gn ---- chromium-55.0.2883.75/third_party/boringssl/BUILD.gn.addrfix 2016-12-12 15:30:27.727834891 -0500 -+++ chromium-55.0.2883.75/third_party/boringssl/BUILD.gn 2016-12-12 15:30:53.095709352 -0500 -@@ -24,6 +24,7 @@ config("internal_config") { - "BORINGSSL_IMPLEMENTATION", - "BORINGSSL_NO_STATIC_INITIALIZER", - "OPENSSL_SMALL", -+ "_POSIX_C_SOURCE=200112L", - ] - configs = [ - # TODO(davidben): Fix size_t truncations in BoringSSL. diff --git a/chromium-59.0.3071.86-i686-ld-memory-tricks.patch b/chromium-59.0.3071.86-i686-ld-memory-tricks.patch deleted file mode 100644 index 9dde4c5..0000000 --- a/chromium-59.0.3071.86-i686-ld-memory-tricks.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn.ldmemory chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn ---- chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn.ldmemory 2017-06-07 15:37:09.436616113 -0400 -+++ chromium-59.0.3071.86/build/toolchain/linux/BUILD.gn 2017-06-07 15:38:04.508519102 -0400 -@@ -93,7 +93,7 @@ gcc_toolchain("x86") { - nm = "nm" - ar = "ar" - ld = cxx -- extra_cppflags = "-fno-delete-null-pointer-checks" -+ extra_cppflags = "-fno-delete-null-pointer-checks -g1" - - # Output linker map files for binary size analysis. - enable_linker_map = true diff --git a/chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch b/chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch deleted file mode 100644 index 7248825..0000000 --- a/chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -up chromium-60.0.3112.113/third_party/ffmpeg/libavutil/timer.h.pathfix chromium-60.0.3112.113/third_party/ffmpeg/libavutil/timer.h ---- chromium-60.0.3112.113/third_party/ffmpeg/libavutil/timer.h.pathfix 2017-08-25 15:29:12.143242471 -0400 -+++ chromium-60.0.3112.113/third_party/ffmpeg/libavutil/timer.h 2017-08-25 15:29:36.941835865 -0400 -@@ -39,13 +39,13 @@ - #include "log.h" - - #if ARCH_AARCH64 --# include "aarch64/timer.h" -+# include "libavutil/aarch64/timer.h" - #elif ARCH_ARM --# include "arm/timer.h" -+# include "libavutil/arm/timer.h" - #elif ARCH_PPC --# include "ppc/timer.h" -+# include "libavutil/ppc/timer.h" - #elif ARCH_X86 --# include "x86/timer.h" -+# include "libavutil/x86/timer.h" - #endif - - #if !defined(AV_READ_TIME) diff --git a/chromium-62.0.3202.62-kmaxskip-constexpr.patch b/chromium-62.0.3202.62-kmaxskip-constexpr.patch deleted file mode 100644 index d4f8250..0000000 --- a/chromium-62.0.3202.62-kmaxskip-constexpr.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-62.0.3202.62/cc/paint/paint_op_buffer.cc.kmaxskip chromium-62.0.3202.62/cc/paint/paint_op_buffer.cc ---- chromium-62.0.3202.62/cc/paint/paint_op_buffer.cc.kmaxskip 2017-10-18 10:00:28.503714392 -0400 -+++ chromium-62.0.3202.62/cc/paint/paint_op_buffer.cc 2017-10-18 10:00:43.153430212 -0400 -@@ -336,7 +336,7 @@ TYPES(M); - #undef TYPES - - const SkRect PaintOp::kUnsetRect = {SK_ScalarInfinity, 0, 0, 0}; --const size_t PaintOp::kMaxSkip; -+constexpr size_t PaintOp::kMaxSkip; - - std::string PaintOpTypeToString(PaintOpType type) { - switch (type) { diff --git a/chromium-63.0.3289.84-nullfix.patch b/chromium-63.0.3289.84-nullfix.patch deleted file mode 100644 index c66aff1..0000000 --- a/chromium-63.0.3289.84-nullfix.patch +++ /dev/null @@ -1,43 +0,0 @@ -diff -up chromium-63.0.3239.84/build/toolchain/linux/BUILD.gn.nullfix chromium-63.0.3239.84/build/toolchain/linux/BUILD.gn ---- chromium-63.0.3239.84/build/toolchain/linux/BUILD.gn.nullfix 2017-12-06 15:05:21.000000000 -0500 -+++ chromium-63.0.3239.84/build/toolchain/linux/BUILD.gn 2017-12-07 10:44:34.507207080 -0500 -@@ -31,6 +31,7 @@ gcc_toolchain("arm64") { - ld = cxx - readelf = "${toolprefix}readelf" - nm = "${toolprefix}nm" -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - toolchain_args = { - current_cpu = "arm64" -@@ -49,6 +50,7 @@ gcc_toolchain("arm") { - ld = cxx - readelf = "${toolprefix}readelf" - nm = "${toolprefix}nm" -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - toolchain_args = { - current_cpu = "arm" -@@ -99,6 +101,7 @@ gcc_toolchain("x86") { - nm = "nm" - ar = "ar" - ld = cxx -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - # Output linker map files for binary size analysis. - enable_linker_map = true -@@ -152,6 +155,7 @@ gcc_toolchain("x64") { - nm = "nm" - ar = "ar" - ld = cxx -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - # Output linker map files for binary size analysis. - enable_linker_map = true -@@ -186,6 +190,7 @@ gcc_toolchain("mipsel") { - ld = cxx - readelf = "${toolprefix}readelf" - nm = "${toolprefix}nm" -+ extra_cppflags = "-fno-delete-null-pointer-checks" - - toolchain_args = { - cc_wrapper = "" diff --git a/chromium-64.0.3282.119-ffmpeg-stdatomic.patch b/chromium-64.0.3282.119-ffmpeg-stdatomic.patch deleted file mode 100644 index 64c5f26..0000000 --- a/chromium-64.0.3282.119-ffmpeg-stdatomic.patch +++ /dev/null @@ -1,17 +0,0 @@ -diff -up chromium-64.0.3282.119/third_party/ffmpeg/libavutil/cpu.c.ffmpeg-stdatomic chromium-64.0.3282.119/third_party/ffmpeg/libavutil/cpu.c ---- chromium-64.0.3282.119/third_party/ffmpeg/libavutil/cpu.c.ffmpeg-stdatomic 2018-01-25 11:55:57.880936815 -0500 -+++ chromium-64.0.3282.119/third_party/ffmpeg/libavutil/cpu.c 2018-01-25 11:57:18.456787888 -0500 -@@ -18,7 +18,13 @@ - - #include - #include -+// GCC 4.8 didn't have stdatomic, but was advertising it. -+// https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58016 -+#if !defined(__clang__) && defined(__GNUC__) && (__GNUC__ == 4 || (__GNUC__ == 4 && (__GNUC_MINOR__ == 8))) -+#include -+#else - #include -+#endif - - #include "attributes.h" - #include "cpu.h" diff --git a/chromium-65.0.3325.146-gcc-round-fix.patch b/chromium-65.0.3325.146-gcc-round-fix.patch deleted file mode 100644 index a29779d..0000000 --- a/chromium-65.0.3325.146-gcc-round-fix.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-65.0.3325.146/third_party/webrtc/p2p/base/port.cc.gcc-round-fix chromium-65.0.3325.146/third_party/webrtc/p2p/base/port.cc ---- chromium-65.0.3325.146/third_party/webrtc/p2p/base/port.cc.gcc-round-fix 2018-03-07 10:57:11.284376048 -0500 -+++ chromium-65.0.3325.146/third_party/webrtc/p2p/base/port.cc 2018-03-07 10:58:16.590742636 -0500 -@@ -10,7 +10,7 @@ - - #include "p2p/base/port.h" - --#include -+#include - - #include - #include diff --git a/chromium-65.0.3325.146-memcpy-fix.patch b/chromium-65.0.3325.146-memcpy-fix.patch deleted file mode 100644 index b2b2cd4..0000000 --- a/chromium-65.0.3325.146-memcpy-fix.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-65.0.3325.146/cc/paint/raw_memory_transfer_cache_entry.cc.memcpyfix chromium-65.0.3325.146/cc/paint/raw_memory_transfer_cache_entry.cc ---- chromium-65.0.3325.146/cc/paint/raw_memory_transfer_cache_entry.cc.memcpyfix 2018-03-07 11:04:14.690379817 -0500 -+++ chromium-65.0.3325.146/cc/paint/raw_memory_transfer_cache_entry.cc 2018-03-07 11:06:04.339878069 -0500 -@@ -3,7 +3,7 @@ - // found in the LICENSE file. - - #include "cc/paint/raw_memory_transfer_cache_entry.h" -- -+#include - #include - - namespace cc { diff --git a/chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch b/chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch deleted file mode 100644 index d5b19cf..0000000 --- a/chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch +++ /dev/null @@ -1,18 +0,0 @@ -diff -up chromium-66.0.3359.117/components/policy/core/browser/browser_policy_connector_base.h.gcc-cpolicyprovider chromium-66.0.3359.117/components/policy/core/browser/browser_policy_connector_base.h ---- chromium-66.0.3359.117/components/policy/core/browser/browser_policy_connector_base.h.gcc-cpolicyprovider 2018-04-25 16:33:40.872222779 -0400 -+++ chromium-66.0.3359.117/components/policy/core/browser/browser_policy_connector_base.h 2018-04-25 16:37:23.175883637 -0400 -@@ -11,13 +11,13 @@ - #include "base/callback_forward.h" - #include "base/macros.h" - #include "components/policy/core/browser/configuration_policy_handler_list.h" -+#include "components/policy/core/common/configuration_policy_provider.h" - #include "components/policy/core/common/schema.h" - #include "components/policy/core/common/schema_registry.h" - #include "components/policy/policy_export.h" - - namespace policy { - --class ConfigurationPolicyProvider; - class PolicyService; - class PolicyServiceImpl; - diff --git a/chromium-66.0.3359.117-system-clang.patch b/chromium-66.0.3359.117-system-clang.patch deleted file mode 100644 index e90dc58..0000000 --- a/chromium-66.0.3359.117-system-clang.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-66.0.3359.117/build/config/clang/clang.gni.system-clang chromium-66.0.3359.117/build/config/clang/clang.gni ---- chromium-66.0.3359.117/build/config/clang/clang.gni.system-clang 2018-04-18 12:08:45.658190297 -0400 -+++ chromium-66.0.3359.117/build/config/clang/clang.gni 2018-04-18 12:09:37.612032982 -0400 -@@ -4,7 +4,7 @@ - - import("//build/toolchain/toolchain.gni") - --default_clang_base_path = "//third_party/llvm-build/Release+Asserts" -+default_clang_base_path = "/usr" - - declare_args() { - # Indicates if the build should use the Chrome-specific plugins for enforcing diff --git a/chromium-67.0.3396.62-gcc5.patch b/chromium-67.0.3396.62-gcc5.patch deleted file mode 100644 index ceef85d..0000000 --- a/chromium-67.0.3396.62-gcc5.patch +++ /dev/null @@ -1,12 +0,0 @@ -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-68.0.3440.106-fix-default-on-redeclaration.patch b/chromium-68.0.3440.106-fix-default-on-redeclaration.patch deleted file mode 100644 index 4a92fba..0000000 --- a/chromium-68.0.3440.106-fix-default-on-redeclaration.patch +++ /dev/null @@ -1,30 +0,0 @@ -diff -up chromium-68.0.3440.106/components/search_provider_logos/logo_common.cc.122692c chromium-68.0.3440.106/components/search_provider_logos/logo_common.cc ---- chromium-68.0.3440.106/components/search_provider_logos/logo_common.cc.122692c 2018-08-17 14:54:30.587338865 -0400 -+++ chromium-68.0.3440.106/components/search_provider_logos/logo_common.cc 2018-08-17 14:55:20.461184298 -0400 -@@ -14,22 +14,22 @@ LogoMetadata::LogoMetadata() = default; - LogoMetadata::LogoMetadata(const LogoMetadata&) = default; - LogoMetadata::LogoMetadata(LogoMetadata&&) noexcept = default; - LogoMetadata& LogoMetadata::operator=(const LogoMetadata&) = default; --LogoMetadata& LogoMetadata::operator=(LogoMetadata&&) noexcept = default; -+LogoMetadata& LogoMetadata::operator=(LogoMetadata&&) = default; - LogoMetadata::~LogoMetadata() = default; - - EncodedLogo::EncodedLogo() = default; - EncodedLogo::EncodedLogo(const EncodedLogo&) = default; - EncodedLogo::EncodedLogo(EncodedLogo&&) noexcept = default; - EncodedLogo& EncodedLogo::operator=(const EncodedLogo&) = default; --EncodedLogo& EncodedLogo::operator=(EncodedLogo&&) noexcept = default; -+EncodedLogo& EncodedLogo::operator=(EncodedLogo&&) = default; - EncodedLogo::~EncodedLogo() = default; - - Logo::Logo() = default; - Logo::~Logo() = default; - - LogoCallbacks::LogoCallbacks() = default; --LogoCallbacks::LogoCallbacks(LogoCallbacks&&) noexcept = default; --LogoCallbacks& LogoCallbacks::operator=(LogoCallbacks&&) noexcept = default; -+LogoCallbacks::LogoCallbacks(LogoCallbacks&&) = default; -+LogoCallbacks& LogoCallbacks::operator=(LogoCallbacks&&) = default; - LogoCallbacks::~LogoCallbacks() = default; - - } // namespace search_provider_logos diff --git a/chromium-69.0.3497.81-build-sanely-please.patch b/chromium-69.0.3497.81-build-sanely-please.patch deleted file mode 100644 index 6241a97..0000000 --- a/chromium-69.0.3497.81-build-sanely-please.patch +++ /dev/null @@ -1,33 +0,0 @@ -diff -up chromium-69.0.3497.81/build/config/BUILD.gn.fyoursysroot chromium-69.0.3497.81/build/config/BUILD.gn ---- chromium-69.0.3497.81/build/config/BUILD.gn.fyoursysroot 2018-09-06 13:43:44.863375238 -0400 -+++ chromium-69.0.3497.81/build/config/BUILD.gn 2018-09-06 13:43:58.377083290 -0400 -@@ -284,9 +284,9 @@ group("executable_and_loadable_module_an - public_deps += [ "//build/config/sanitizers:deps" ] - } - -- if (use_custom_libcxx) { -- public_deps += [ "//buildtools/third_party/libc++" ] -- } -+ # if (use_custom_libcxx) { -+ # public_deps += [ "//buildtools/third_party/libc++" ] -+ # } - - if (use_afl) { - public_deps += [ "//third_party/afl" ] -diff -up chromium-69.0.3497.81/build/config/sysroot.gni.fyoursysroot chromium-69.0.3497.81/build/config/sysroot.gni ---- chromium-69.0.3497.81/build/config/sysroot.gni.fyoursysroot 2018-09-06 13:40:46.212232232 -0400 -+++ chromium-69.0.3497.81/build/config/sysroot.gni 2018-09-06 13:41:02.421882529 -0400 -@@ -15,9 +15,10 @@ declare_args() { - # The absolute path to directory containing linux sysroot images - target_sysroot_dir = "//build/linux" - -- use_sysroot = current_cpu == "x86" || current_cpu == "x64" || -- current_cpu == "arm" || current_cpu == "arm64" || -- current_cpu == "mipsel" || current_cpu == "mips64el" -+ use_sysroot = false -+ # use_sysroot = current_cpu == "x86" || current_cpu == "x64" || -+ # current_cpu == "arm" || current_cpu == "arm64" || -+ # current_cpu == "mipsel" || current_cpu == "mips64el" - } - - if (current_os == target_os && current_cpu == target_cpu && diff --git a/chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch b/chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch deleted file mode 100644 index ccecfcb..0000000 --- a/chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-70.0.3538.77/sandbox/linux/system_headers/arm64_linux_syscalls.h.aarch64-new-stat chromium-70.0.3538.77/sandbox/linux/system_headers/arm64_linux_syscalls.h ---- chromium-70.0.3538.77/sandbox/linux/system_headers/arm64_linux_syscalls.h.aarch64-new-stat 2018-11-06 13:27:05.118766581 -0500 -+++ chromium-70.0.3538.77/sandbox/linux/system_headers/arm64_linux_syscalls.h 2018-11-06 13:27:34.575204504 -0500 -@@ -5,6 +5,8 @@ - #ifndef SANDBOX_LINUX_SYSTEM_HEADERS_ARM64_LINUX_SYSCALLS_H_ - #define SANDBOX_LINUX_SYSTEM_HEADERS_ARM64_LINUX_SYSCALLS_H_ - -+#define __ARCH_WANT_NEW_STAT -+ - #include - - #if !defined(__NR_io_setup) diff --git a/chromium-71.0.3578.98-skia-aarch64-buildfix.patch b/chromium-71.0.3578.98-skia-aarch64-buildfix.patch deleted file mode 100644 index 5da1674..0000000 --- a/chromium-71.0.3578.98-skia-aarch64-buildfix.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -up chromium-71.0.3578.98/third_party/skia/src/opts/SkRasterPipeline_opts.h.aarch64fix chromium-71.0.3578.98/third_party/skia/src/opts/SkRasterPipeline_opts.h ---- chromium-71.0.3578.98/third_party/skia/src/opts/SkRasterPipeline_opts.h.aarch64fix 2018-12-14 11:17:43.249121756 -0500 -+++ chromium-71.0.3578.98/third_party/skia/src/opts/SkRasterPipeline_opts.h 2018-12-14 11:20:07.770030234 -0500 -@@ -658,7 +658,7 @@ SI F approx_powf(F x, F y) { - } - - SI F from_half(U16 h) { --#if defined(SK_CPU_ARM64) && !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) -@@ -678,7 +678,7 @@ SI F from_half(U16 h) { - } - - SI U16 to_half(F f) { --#if defined(SK_CPU_ARM64) && !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) diff --git a/chromium-72.0.3626.121-notest.patch b/chromium-72.0.3626.121-notest.patch deleted file mode 100644 index e8b7bf4..0000000 --- a/chromium-72.0.3626.121-notest.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-72.0.3626.121/chrome/test/data/webui_test_resources.grd.notest chromium-72.0.3626.121/chrome/test/data/webui_test_resources.grd ---- chromium-72.0.3626.121/chrome/test/data/webui_test_resources.grd.notest 2019-03-10 13:54:17.843583876 -0400 -+++ chromium-72.0.3626.121/chrome/test/data/webui_test_resources.grd 2019-03-10 14:03:29.302063637 -0400 -@@ -8,7 +8,6 @@ - - - -- - - - diff --git a/chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch b/chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch deleted file mode 100644 index f8abb52..0000000 --- a/chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch +++ /dev/null @@ -1,48 +0,0 @@ -diff -up chromium-73.0.3683.75/build/toolchain/linux/BUILD.gn.disable-ndnpc chromium-73.0.3683.75/build/toolchain/linux/BUILD.gn ---- chromium-73.0.3683.75/build/toolchain/linux/BUILD.gn.disable-ndnpc 2019-03-13 10:29:00.331009643 -0400 -+++ chromium-73.0.3683.75/build/toolchain/linux/BUILD.gn 2019-03-13 10:29:28.344458746 -0400 -@@ -31,7 +31,7 @@ gcc_toolchain("arm64") { - ld = cxx - readelf = "${toolprefix}readelf" - nm = "${toolprefix}nm" -- extra_cppflags = "-fno-delete-null-pointer-checks" -+ extra_cppflags = "" - - toolchain_args = { - current_cpu = "arm64" -@@ -50,7 +50,7 @@ gcc_toolchain("arm") { - ld = cxx - readelf = "${toolprefix}readelf" - nm = "${toolprefix}nm" -- extra_cppflags = "-fno-delete-null-pointer-checks" -+ extra_cppflags = "" - - toolchain_args = { - current_cpu = "arm" -@@ -101,7 +101,7 @@ gcc_toolchain("x86") { - nm = "nm" - ar = "ar" - ld = cxx -- extra_cppflags = "-fno-delete-null-pointer-checks -g1" -+ extra_cppflags = "-g1" - - # Output linker map files for binary size analysis. - enable_linker_map = true -@@ -155,7 +155,7 @@ gcc_toolchain("x64") { - nm = "nm" - ar = "ar" - ld = cxx -- extra_cppflags = "-fno-delete-null-pointer-checks" -+ extra_cppflags = "" - - # Output linker map files for binary size analysis. - enable_linker_map = true -@@ -190,7 +190,7 @@ gcc_toolchain("mipsel") { - ld = cxx - readelf = "${toolprefix}readelf" - nm = "${toolprefix}nm" -- extra_cppflags = "-fno-delete-null-pointer-checks" -+ extra_cppflags = "" - - toolchain_args = { - cc_wrapper = "" diff --git a/chromium-75.0.3770.100-git00281713.patch b/chromium-75.0.3770.100-git00281713.patch deleted file mode 100644 index 4356435..0000000 --- a/chromium-75.0.3770.100-git00281713.patch +++ /dev/null @@ -1,34 +0,0 @@ -diff -up chromium-75.0.3770.100/chrome/browser/performance_manager/chrome_content_browser_client_performance_manager_part.cc.git00281713 chromium-75.0.3770.100/chrome/browser/performance_manager/chrome_content_browser_client_performance_manager_part.cc ---- chromium-75.0.3770.100/chrome/browser/performance_manager/chrome_content_browser_client_performance_manager_part.cc.git00281713 2019-07-02 09:10:38.951369854 -0400 -+++ chromium-75.0.3770.100/chrome/browser/performance_manager/chrome_content_browser_client_performance_manager_part.cc 2019-07-02 09:11:59.864642942 -0400 -@@ -12,13 +12,19 @@ - #include "chrome/browser/performance_manager/graph/process_node_impl.h" - #include "chrome/browser/performance_manager/performance_manager.h" - #include "chrome/browser/performance_manager/render_process_user_data.h" -+#include "content/public/browser/render_process_host.h" - #include "services/resource_coordinator/public/mojom/coordination_unit.mojom.h" - - namespace { - - void BindProcessNode( -- content::RenderProcessHost* render_process_host, -+ int render_process_host_id, - resource_coordinator::mojom::ProcessCoordinationUnitRequest request) { -+ content::RenderProcessHost* render_process_host = -+ content::RenderProcessHost::FromID(render_process_host_id); -+ if (!render_process_host) -+ return; -+ - performance_manager::RenderProcessUserData* user_data = - performance_manager::RenderProcessUserData::GetForRenderProcessHost( - render_process_host); -@@ -47,8 +53,7 @@ void ChromeContentBrowserClientPerforman - blink::AssociatedInterfaceRegistry* associated_registry, - content::RenderProcessHost* render_process_host) { - registry->AddInterface( -- base::BindRepeating(&BindProcessNode, -- base::Unretained(render_process_host)), -+ base::BindRepeating(&BindProcessNode, render_process_host->GetID()), - base::SequencedTaskRunnerHandle::Get()); - - // Ideally this would strictly be a "CreateForRenderProcess", but when a diff --git a/chromium-75.0.3770.80-SIOCGSTAMP.patch b/chromium-75.0.3770.80-SIOCGSTAMP.patch deleted file mode 100644 index 0ef1e7f..0000000 --- a/chromium-75.0.3770.80-SIOCGSTAMP.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -up chromium-75.0.3770.80/third_party/webrtc/rtc_base/physical_socket_server.h.SIOCGSTAMP chromium-75.0.3770.80/third_party/webrtc/rtc_base/physical_socket_server.h ---- chromium-75.0.3770.80/third_party/webrtc/rtc_base/physical_socket_server.h.SIOCGSTAMP 2019-06-06 10:04:57.050403639 -0400 -+++ chromium-75.0.3770.80/third_party/webrtc/rtc_base/physical_socket_server.h 2019-06-06 10:06:03.975121688 -0400 -@@ -16,6 +16,11 @@ - #define WEBRTC_USE_EPOLL 1 - #endif - -+// for SIOCGSTAMP in Linux 5.2 -+#if defined(WEBRTC_LINUX) -+#include -+#endif -+ - #include - #include - #include diff --git a/chromium-75.0.3770.80-aeed4d-gcc-dcheck_ne-fix.patch b/chromium-75.0.3770.80-aeed4d-gcc-dcheck_ne-fix.patch deleted file mode 100644 index 2a8ac2f..0000000 --- a/chromium-75.0.3770.80-aeed4d-gcc-dcheck_ne-fix.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -up chromium-75.0.3770.80/cc/scheduler/compositor_frame_reporting_controller.cc.gcc-dcheck_ne-fix chromium-75.0.3770.80/cc/scheduler/compositor_frame_reporting_controller.cc ---- chromium-75.0.3770.80/cc/scheduler/compositor_frame_reporting_controller.cc.gcc-dcheck_ne-fix 2019-06-06 12:42:27.431575032 -0400 -+++ chromium-75.0.3770.80/cc/scheduler/compositor_frame_reporting_controller.cc 2019-06-06 12:43:05.692848409 -0400 -@@ -31,8 +31,8 @@ void CompositorFrameReportingController: - - 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, diff --git a/chromium-75.0.3770.80-gcc-no-assume.patch b/chromium-75.0.3770.80-gcc-no-assume.patch deleted file mode 100644 index 0bbb08f..0000000 --- a/chromium-75.0.3770.80-gcc-no-assume.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -up chromium-75.0.3770.80/third_party/angle/src/common/debug.h.gcc-assume chromium-75.0.3770.80/third_party/angle/src/common/debug.h ---- chromium-75.0.3770.80/third_party/angle/src/common/debug.h.gcc-assume 2019-06-06 17:38:01.876631704 -0400 -+++ chromium-75.0.3770.80/third_party/angle/src/common/debug.h 2019-06-07 09:30:06.205446547 -0400 -@@ -248,7 +248,7 @@ std::ostream &FmtHex(std::ostream &os, T - # define EVENT(message, ...) (void(0)) - #endif - --#if defined(COMPILER_GCC) || defined(__clang__) -+#if defined(__GNUC__) - # define ANGLE_CRASH() __builtin_trap() - #else - # define ANGLE_CRASH() ((void)(*(volatile char *)0 = 0)), __assume(0) -@@ -336,7 +336,7 @@ std::ostream &FmtHex(std::ostream &os, T - # 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") diff --git a/chromium-75.0.3770.80-revert-daff6b.patch b/chromium-75.0.3770.80-revert-daff6b.patch deleted file mode 100644 index f996898..0000000 --- a/chromium-75.0.3770.80-revert-daff6b.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -up chromium-75.0.3770.80/components/omnibox/browser/autocomplete_match.cc.revert-daff6b chromium-75.0.3770.80/components/omnibox/browser/autocomplete_match.cc ---- chromium-75.0.3770.80/components/omnibox/browser/autocomplete_match.cc.revert-daff6b 2019-06-06 14:54:13.819190586 -0400 -+++ chromium-75.0.3770.80/components/omnibox/browser/autocomplete_match.cc 2019-06-06 14:54:31.892839991 -0400 -@@ -154,8 +154,7 @@ AutocompleteMatch::AutocompleteMatch(con - additional_info(match.additional_info), - duplicate_matches(match.duplicate_matches) {} - --AutocompleteMatch::AutocompleteMatch(AutocompleteMatch&& match) noexcept = -- default; -+AutocompleteMatch::AutocompleteMatch(AutocompleteMatch&& match) = default; - - AutocompleteMatch::~AutocompleteMatch() { - } diff --git a/chromium-76.0.3809.100-libusb_interrupt_event_handler.patch b/chromium-76.0.3809.100-libusb_interrupt_event_handler.patch deleted file mode 100644 index 690f0f9..0000000 --- a/chromium-76.0.3809.100-libusb_interrupt_event_handler.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -up chromium-76.0.3809.100/services/device/usb/usb_context.cc.modern-libusbx chromium-76.0.3809.100/services/device/usb/usb_context.cc ---- chromium-76.0.3809.100/services/device/usb/usb_context.cc.modern-libusbx 2019-08-12 15:40:49.034170484 +0200 -+++ chromium-76.0.3809.100/services/device/usb/usb_context.cc 2019-08-12 15:41:23.775558867 +0200 -@@ -58,7 +58,11 @@ void UsbContext::UsbEventHandler::Run() - - void UsbContext::UsbEventHandler::Stop() { - base::subtle::Release_Store(&running_, 0); -+#ifdef LIBUSB_API_VERSION >= 0x01000105 -+ libusb_interrupt_event_handler(context_); -+#else - libusb_interrupt_handle_event(context_); -+#endif - } - - UsbContext::UsbContext(PlatformUsbContext context) : context_(context) { diff --git a/chromium-77.0.3865.75-boolfix.patch b/chromium-77.0.3865.75-boolfix.patch deleted file mode 100644 index c836214..0000000 --- a/chromium-77.0.3865.75-boolfix.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff -up chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_ptr_info.h ---- chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_ptr_info.h.boolfix 2019-09-09 23:55:20.000000000 +0200 -+++ chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_ptr_info.h 2019-09-12 15:43:30.025360946 +0200 -@@ -45,7 +45,7 @@ class AssociatedInterfacePtrInfo { - - bool is_valid() const { return handle_.is_valid(); } - -- explicit operator bool() const { return handle_.is_valid(); } -+ explicit operator bool() const { return (bool) handle_.is_valid(); } - - ScopedInterfaceEndpointHandle PassHandle() { - return std::move(handle_); -diff -up chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_request.h.boolfix chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_request.h ---- chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_request.h.boolfix 2019-09-09 23:55:20.000000000 +0200 -+++ chromium-77.0.3865.75/mojo/public/cpp/bindings/associated_interface_request.h 2019-09-12 15:43:30.025360946 +0200 -@@ -51,7 +51,7 @@ class AssociatedInterfaceRequest { - // handle. - 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(); } - - ScopedInterfaceEndpointHandle PassHandle() { return std::move(handle_); } - diff --git a/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch b/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch deleted file mode 100644 index 920a53e..0000000 --- a/chromium-77.0.3865.75-gcc-no-opt-safe-math.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -up chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h.nogccoptmath chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h ---- chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h.nogccoptmath 2019-09-13 14:17:22.726738088 +0200 -+++ chromium-77.0.3865.75/base/numerics/safe_math_shared_impl.h 2019-09-13 14:31:37.686898493 +0200 -@@ -23,9 +23,8 @@ - // Where available use builtin math overflow support on Clang and GCC. - #elif !defined(__native_client__) && \ - ((defined(__clang__) && \ -- ((__clang_major__ > 3) || \ -- (__clang_major__ == 3 && __clang_minor__ >= 4))) || \ -- (defined(__GNUC__) && __GNUC__ >= 5)) -+ (__clang_major__ > 3) || \ -+ (__clang_major__ == 3 && __clang_minor__ >= 4))) - #include "base/numerics/safe_math_clang_gcc_impl.h" - #define BASE_HAS_OPTIMIZED_SAFE_MATH (1) - #else diff --git a/chromium-77.0.3865.75-gcc5-r3.patch b/chromium-77.0.3865.75-gcc5-r3.patch deleted file mode 100644 index 34b858a..0000000 --- a/chromium-77.0.3865.75-gcc5-r3.patch +++ /dev/null @@ -1,36 +0,0 @@ -diff -up chromium-77.0.3865.75/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 chromium-77.0.3865.75/gpu/ipc/common/mailbox_struct_traits.h ---- chromium-77.0.3865.75/gpu/ipc/common/mailbox_struct_traits.h.gcc5-r3 2019-09-09 23:55:18.000000000 +0200 -+++ chromium-77.0.3865.75/gpu/ipc/common/mailbox_struct_traits.h 2019-09-12 10:13:16.710206500 +0200 -@@ -15,7 +15,7 @@ namespace mojo { - template <> - struct StructTraits { - static base::span name(const gpu::Mailbox& mailbox) { -- return mailbox.name; -+ return base::make_span(mailbox.name); - } - static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out); - }; -diff -up chromium-77.0.3865.75/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 chromium-77.0.3865.75/services/viz/public/cpp/compositing/quads_struct_traits.h ---- chromium-77.0.3865.75/services/viz/public/cpp/compositing/quads_struct_traits.h.gcc5-r3 2019-09-09 23:55:23.000000000 +0200 -+++ chromium-77.0.3865.75/services/viz/public/cpp/compositing/quads_struct_traits.h 2019-09-12 10:13:16.710206500 +0200 -@@ -391,7 +391,7 @@ struct StructTraits vertex_opacity(const viz::DrawQuad& input) { - const viz::TextureDrawQuad* quad = - viz::TextureDrawQuad::MaterialCast(&input); -- return quad->vertex_opacity; -+ return base::make_span(quad->vertex_opacity); - } - - static bool y_flipped(const viz::DrawQuad& input) { -diff -up chromium-77.0.3865.75/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 chromium-77.0.3865.75/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc ---- chromium-77.0.3865.75/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.gcc5-r3 2019-09-12 10:13:16.711206509 +0200 -+++ chromium-77.0.3865.75/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2019-09-12 15:41:15.300158849 +0200 -@@ -10,7 +10,7 @@ - - #include "modules/audio_processing/aec3/aec_state.h" - --#include -+#include - - #include - #include diff --git a/chromium.spec b/chromium.spec index c41439f..e6a6f88 100644 --- a/chromium.spec +++ b/chromium.spec @@ -164,114 +164,61 @@ Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) ### Chromium Fedora Patches ### -Patch0: chromium-67.0.3396.62-gcc5.patch -Patch1: chromium-45.0.2454.101-linux-path-max.patch -Patch2: chromium-55.0.2883.75-addrfix.patch -Patch3: chromium-72.0.3626.121-notest.patch -# Use libusb_interrupt_event_handler from current libusbx (1.0.21-0.1.git448584a) -Patch4: chromium-76.0.3809.100-libusb_interrupt_event_handler.patch -# Use PIE in the Linux sandbox (from openSUSE via Russian Fedora) -Patch6: chromium-70.0.3538.67-sandbox-pie.patch +Patch0: chromium-70.0.3538.67-sandbox-pie.patch # Use /etc/chromium for master_prefs -Patch7: chromium-68.0.3440.106-master-prefs-path.patch +Patch1: chromium-68.0.3440.106-master-prefs-path.patch # Use gn system files -Patch8: chromium-67.0.3396.62-gn-system.patch -# Fix issue where timespec is not defined when sys/stat.h is included. -Patch9: chromium-53.0.2785.92-boringssl-time-fix.patch -# I wouldn't have to do this if there was a standard way to append extra compiler flags -Patch10: chromium-63.0.3289.84-nullfix.patch -# Add explicit includedir for jpeglib.h -Patch11: chromium-54.0.2840.59-jpeg-include-dir.patch -# On i686, pass --no-keep-memory --reduce-memory-overheads to ld. -Patch12: chromium-59.0.3071.86-i686-ld-memory-tricks.patch +Patch2: chromium-67.0.3396.62-gn-system.patch # Revert https://chromium.googlesource.com/chromium/src/+/b794998819088f76b4cf44c8db6940240c563cf4%5E%21/#F0 # https://bugs.chromium.org/p/chromium/issues/detail?id=712737 # https://bugzilla.redhat.com/show_bug.cgi?id=1446851 -Patch13: chromium-58.0.3029.96-revert-b794998819088f76b4cf44c8db6940240c563cf4.patch -# Correctly compile the stdatomic.h in ffmpeg with gcc 4.8 -Patch14: chromium-64.0.3282.119-ffmpeg-stdatomic.patch -# Nacl can't die soon enough -Patch15: chromium-66.0.3359.117-system-clang.patch +Patch3: chromium-58.0.3029.96-revert-b794998819088f76b4cf44c8db6940240c563cf4.patch # Do not prefix libpng functions -Patch16: chromium-60.0.3112.78-no-libpng-prefix.patch +Patch4: chromium-60.0.3112.78-no-libpng-prefix.patch # Do not mangle libjpeg -Patch17: chromium-60.0.3112.78-jpeg-nomangle.patch +Patch5: chromium-60.0.3112.78-jpeg-nomangle.patch # Do not mangle zlib -Patch18: chromium-77.0.3865.75-no-zlib-mangle.patch -# Fix libavutil include pathing to find arch specific timer.h -# For some reason, this only fails on aarch64. No idea why. -Patch19: chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch -# from gentoo -Patch20: chromium-77.0.3865.75-gcc-no-opt-safe-math.patch -# From gentoo -Patch21: chromium-77.0.3865.75-gcc5-r3.patch -# To use round with gcc, you need to #include -Patch22: chromium-65.0.3325.146-gcc-round-fix.patch -# Include proper headers to invoke memcpy() -Patch23: chromium-65.0.3325.146-memcpy-fix.patch -# ../../mojo/public/cpp/bindings/associated_interface_ptr_info.h:48:43: error: cannot convert 'const mojo::ScopedInterfaceEndpointHandle' to 'bool' in return -Patch24: chromium-77.0.3865.75-boolfix.patch -# From Debian -Patch25: chromium-71.0.3578.98-skia-aarch64-buildfix.patch +Patch6: chromium-77.0.3865.75-no-zlib-mangle.patch # Do not use unrar code, it is non-free -Patch27: chromium-73.0.3683.75-norar.patch -# Upstream GCC fixes -Patch28: chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch -# Add "Fedora" to the user agent string -Patch29: chromium-77.0.3865.75-fedora-user-agent.patch -# Try to fix version.py for Rawhide -Patch30: chromium-71.0.3578.98-py2-bootstrap.patch -# Fix default on redeclaration error -# https://chromium.googlesource.com/chromium/src/+/122692ccee62223f266a988c575ae687e3f4c056%5E%21/#F0 -Patch31: chromium-68.0.3440.106-fix-default-on-redeclaration.patch +Patch7: chromium-73.0.3683.75-norar.patch # Use Gentoo's Widevine hack # https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-widevine-r3.patch -Patch32: chromium-71.0.3578.98-widevine-r3.patch -# Do not require sysroot -# Forget about trying to make libc++ -# BUILD SANELY PLEASE -Patch33: chromium-69.0.3497.81-build-sanely-please.patch +Patch8: chromium-71.0.3578.98-widevine-r3.patch # Disable fontconfig cache magic that breaks remoting -Patch34: chromium-70.0.3538.67-disable-fontconfig-cache-magic.patch -# Fix aarch64 build against latest linux kernel headers -Patch35: chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch +Patch9: chromium-70.0.3538.67-disable-fontconfig-cache-magic.patch # drop rsp clobber, which breaks gcc9 (thanks to Jeff Law) -Patch36: chromium-71.0.3578.98-gcc9-drop-rsp-clobber.patch +Patch10: chromium-71.0.3578.98-gcc9-drop-rsp-clobber.patch # Try to load widevine from other places -Patch37: chromium-widevine-other-locations.patch -# Disable -fno-delete-null-pointer-checks -Patch38: chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch -# Linux 5.2 defines SIOCGSTAMP in a slightly different way, so we need to teach chromium where to find it -Patch41: chromium-75.0.3770.80-SIOCGSTAMP.patch -# Revert https://chromium.googlesource.com/chromium/src/+/daff6b66faae53a0cefb88987c9ff4843629b728%5E%21/#F0 -# It might make clang happy but it breaks gcc. F*** clang. -Patch43: chromium-75.0.3770.80-revert-daff6b.patch +Patch11: chromium-widevine-other-locations.patch +# Try to fix version.py for Rawhide +Patch12: chromium-71.0.3578.98-py2-bootstrap.patch +# Add "Fedora" to the user agent string +Patch13: chromium-77.0.3865.75-fedora-user-agent.patch + # rename function to avoid conflict with rawhide glibc "gettid()" -Patch45: chromium-75.0.3770.80-grpc-gettid-fix.patch +Patch50: chromium-75.0.3770.80-grpc-gettid-fix.patch # In GCC one can't use alignas() for exported classes # https://chromium.googlesource.com/chromium/src.git/+/8148fd96ae04a1150a9c6012634dcd2a7335f87a -Patch61: chromium-76.0.3809.100-gcc-no-alignas-and-export.patch +Patch51: chromium-76.0.3809.100-gcc-no-alignas-and-export.patch # Needs to be submitted.. -Patch62: chromium-76.0.3809.100-gcc-remoting-constexpr.patch +Patch52: chromium-76.0.3809.100-gcc-remoting-constexpr.patch # Needs to be submitted.. (ugly hack, needs to be added properly to GN files) -Patch63: chromium-76.0.3809.100-vtable-symbol-undefined.patch +Patch53: chromium-76.0.3809.100-vtable-symbol-undefined.patch # https://chromium.googlesource.com/chromium/src.git/+/3c9720245e440c4b7222f8348d2a2a3c25e098ae -Patch64: chromium-77.0.3865.75-certificate-transparency.patch +Patch54: chromium-77.0.3865.75-certificate-transparency.patch # https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-unbundle-zlib.patch -Patch65: chromium-77.0.3865.75-unbundle-zlib.patch +Patch55: chromium-77.0.3865.75-unbundle-zlib.patch # Needs to be submitted.. -Patch66: chromium-77.0.3865.75-gcc-include-memory.patch -# Needs to be submitted.. -Patch67: chromium-77.0.3865.75-base-gcc-no-alignas.patch +Patch56: chromium-77.0.3865.75-gcc-include-memory.patch +# https://chromium.googlesource.com/chromium/src/+/6b633c4b14850df376d5cec571699018772f358e +Patch57: chromium-77.0.3865.75-base-gcc-no-alignas.patch # https://chromium.googlesource.com/chromium/src/+/27e25336b8316ff3ec4e464058682ed85801fd06 -Patch68: chromium-77.0.3865.75-harfbuzz-subset.patch +Patch58: chromium-77.0.3865.75-harfbuzz-subset.patch # https://chromium.googlesource.com/chromium/src.git/+/f08cb0022527081c078e8b96062e6c9b4fbda151 -Patch69: chromium-77.0.3865.75-gcc-abstract-class.patch +Patch59: chromium-77.0.3865.75-gcc-abstract-class.patch # https://chromium.googlesource.com/chromium/src/+/5baf7df7f4c5971dab552897eeef94b194650ce5 -Patch70: chromium-77.0.3865.75-missing-limits.patch +Patch60: chromium-77.0.3865.75-missing-limits.patch -# Apply these changes to work around EPEL7 compiler issues -Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch # Use lstdc++ on EPEL7 only Patch101: chromium-75.0.3770.100-epel7-stdc++.patch # el7 only patch @@ -757,60 +704,40 @@ udev. %setup -q -n chromium-%{version} ### Chromium Fedora Patches ### -%patch0 -p1 -b .gcc5 -%patch1 -p1 -b .pathmax -%patch2 -p1 -b .addrfix -%patch3 -p1 -b .notest -%patch4 -p1 -b .modern-libusbx -%patch6 -p1 -b .sandboxpie -%patch7 -p1 -b .etc -%patch8 -p1 -b .gnsystem -%patch9 -p1 -b .timefix -%patch10 -p1 -b .nullfix -%patch11 -p1 -b .jpegfix -%patch12 -p1 -b .ldmemory -%patch13 -p1 -b .revert -%patch14 -p1 -b .ffmpeg-stdatomic -%patch15 -p1 -b .system-clang -%patch16 -p1 -b .noprefix -%patch17 -p1 -b .nomangle -%patch18 -p1 -b .nozmangle -%patch19 -p1 -b .pathfix -%patch20 -p1 -b .nogccoptmath -%patch21 -p1 -b .gcc5-r3 -%patch22 -p1 -b .gcc-round-fix -%patch23 -p1 -b .memcpyfix -%patch24 -p1 -b .boolfix -#%patch25 -p1 -b .aarch64fix -%patch27 -p1 -b .nounrar -%patch28 -p1 -b .gcc-cpolicyprovider -%patch29 -p1 -b .fedora-user-agent -%patch30 -p1 -b .py2 -%patch31 -p1 -b .fix-default-redeclaration -%patch32 -p1 -b .wvhack -%patch33 -p1 -b .sanebuild -%patch34 -p1 -b .nofc -%patch35 -p1 -b .aarch64-new-stat -%patch36 -p1 -b .gcc9 -%patch37 -p1 -b .widevine-other-locations -%patch38 -p1 -b .disable-ndnpc -%patch41 -p1 -b .SIOCGSTAMP -%patch43 -p1 -b .revert-daff6b -%patch45 -p1 -b .gettid-fix -%patch61 -p1 -b .gcc-no-alignas-and-export -%patch62 -p1 -b .gcc-remoting-constexpr -%patch63 -p1 -b .vtable-symbol-undefined -%patch64 -p1 -b .certificate-transparency -%patch65 -p1 -b .unbundle-zlib -%patch66 -p1 -b .gcc-include-memory -%patch67 -p1 -b .base-gcc-no-alignas -%patch68 -p1 -b .harfbuzz-subset -%patch69 -p1 -b .gcc-abstract-class -%patch70 -p1 -b .missing-limits +%patch0 -p1 -b .sandboxpie +%patch1 -p1 -b .etc +%patch2 -p1 -b .gnsystem +%patch3 -p1 -b .revert +%patch4 -p1 -b .nolibpngprefix +%patch5 -p1 -b .nolibjpegmangle +%patch6 -p1 -b .nozlibmangle +%patch7 -p1 -b .nounrar +%patch8 -p1 -b .widevine-hack +%patch9 -p1 -b .nofontconfigcache +%patch10 -p1 -b .gcc9 +%patch11 -p1 -b .widevine-other-locations +%patch12 -p1 -b .py2 + +# Short term fixes (usually gcc and backports) +%patch50 -p1 -b .gettid-fix +%patch51 -p1 -b .gcc-no-alignas-and-export +%patch52 -p1 -b .gcc-remoting-constexpr +%patch53 -p1 -b .vtable-symbol-undefined +%patch54 -p1 -b .certificate-transparency +%patch55 -p1 -b .unbundle-zlib +%patch56 -p1 -b .gcc-include-memory +%patch57 -p1 -b .base-gcc-no-alignas +%patch58 -p1 -b .harfbuzz-subset +%patch59 -p1 -b .gcc-abstract-class +%patch60 -p1 -b .missing-limits + +# Fedora branded user agent +%if 0%{?fedora} +%patch13 -p1 -b .fedora-user-agent +%endif # EPEL specific patches %if 0%{?rhel} == 7 -%patch100 -p1 -b .kmaxskip %patch101 -p1 -b .epel7 %patch102 -p1 -b .el7-noexcept %endif @@ -1287,6 +1214,11 @@ sed -i.orig -e 's/getenv("CHROME_VERSION_EXTRA")/"Fedora Project"/' $FILE . /opt/rh/devtoolset-%{dts_version}/enable %endif +# Decrease the debuginfo verbosity, so it compiles in koji +%ifarch %{ix86} +%global optflags %(echo %{optflags} | sed 's/-g /-g1 /') +%endif + echo # Now do the full browser %if 0%{freeworld} From b5420298f462ec8637355b087d0d9bf5141f692c Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 23 Sep 2019 17:21:06 +0200 Subject: [PATCH 0584/1449] Fix the icon So the monochromatic icon is being shown even in the GNOME's overview and it's ugly (as it's upscaled from 22x22). Remove it. --- chromium.spec | 2 -- 1 file changed, 2 deletions(-) diff --git a/chromium.spec b/chromium.spec index e6a6f88..930b750 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1388,8 +1388,6 @@ mkdir -p %{buildroot}%{_datadir}/icons/hicolor/48x48/apps cp -a chrome/app/theme/chromium/product_logo_48.png %{buildroot}%{_datadir}/icons/hicolor/48x48/apps/%{chromium_browser_channel}.png mkdir -p %{buildroot}%{_datadir}/icons/hicolor/24x24/apps cp -a chrome/app/theme/chromium/product_logo_24.png %{buildroot}%{_datadir}/icons/hicolor/24x24/apps/%{chromium_browser_channel}.png -mkdir -p %{buildroot}%{_datadir}/icons/hicolor/symbolic/apps -cp -a chrome/app/theme/chromium/product_logo_22_mono.png %{buildroot}%{_datadir}/icons/hicolor/symbolic/apps/%{chromium_browser_channel}.png # Install the master_preferences file mkdir -p %{buildroot}%{_sysconfdir}/%{name} From 64608c7b853bd7fda974d4b6013159e6df15cdf9 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 23 Sep 2019 17:25:20 +0200 Subject: [PATCH 0585/1449] Fix the icon Remove quite a few of downstream patches Fix the crashes by backporting an upstream bug Resolves: rhbz#1754179 --- chromium-77.0.3865.90-linked-hash-set.patch | 130 ++++++++++++++++++++ chromium.spec | 11 +- 2 files changed, 140 insertions(+), 1 deletion(-) create mode 100644 chromium-77.0.3865.90-linked-hash-set.patch diff --git a/chromium-77.0.3865.90-linked-hash-set.patch b/chromium-77.0.3865.90-linked-hash-set.patch new file mode 100644 index 0000000..f921f1a --- /dev/null +++ b/chromium-77.0.3865.90-linked-hash-set.patch @@ -0,0 +1,130 @@ +From 74138b9febd37eac0fc26b8efb110014a83a52c6 Mon Sep 17 00:00:00 2001 +From: Jeremy Roman +Date: Wed, 07 Aug 2019 13:26:48 +0000 +Subject: [PATCH] WTF: Make LinkedHashSet understand values for which memset initialization would be bad. + +Includes a unit test which fails before, and uses this to fix FontCacheKeyTraits. + +Bug: 980025 +Change-Id: If41f97444c7fd37b9b95d6dadaf3da5689079e9e +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1739948 +Reviewed-by: Kentaro Hara +Reviewed-by: Yutaka Hirano +Commit-Queue: Jeremy Roman +Cr-Commit-Position: refs/heads/master@{#684731} +--- + +diff --git a/third_party/blink/renderer/platform/fonts/font_cache_key.h b/third_party/blink/renderer/platform/fonts/font_cache_key.h +index 0efc8fb..90063cb 100644 +--- a/third_party/blink/renderer/platform/fonts/font_cache_key.h ++++ b/third_party/blink/renderer/platform/fonts/font_cache_key.h +@@ -133,6 +133,10 @@ + + struct FontCacheKeyTraits : WTF::SimpleClassHashTraits { + STATIC_ONLY(FontCacheKeyTraits); ++ ++ // std::string's empty state need not be zero in all implementations, ++ // and it is held within FontFaceCreationParams. ++ static const bool kEmptyValueIsZero = false; + }; + + } // namespace blink +diff --git a/third_party/blink/renderer/platform/wtf/linked_hash_set.h b/third_party/blink/renderer/platform/wtf/linked_hash_set.h +index b35b6e9..77e524c 100644 +--- a/third_party/blink/renderer/platform/wtf/linked_hash_set.h ++++ b/third_party/blink/renderer/platform/wtf/linked_hash_set.h +@@ -146,6 +146,11 @@ + LinkedHashSetNodeBase* next) + : LinkedHashSetNodeBase(prev, next), value_(value) {} + ++ LinkedHashSetNode(ValueArg&& value, ++ LinkedHashSetNodeBase* prev, ++ LinkedHashSetNodeBase* next) ++ : LinkedHashSetNodeBase(prev, next), value_(std::move(value)) {} ++ + LinkedHashSetNode(LinkedHashSetNode&& other) + : LinkedHashSetNodeBase(std::move(other)), + value_(std::move(other.value_)) {} +@@ -445,10 +450,13 @@ + + // The slot is empty when the next_ field is zero so it's safe to zero + // the backing. +- static const bool kEmptyValueIsZero = true; ++ static const bool kEmptyValueIsZero = ValueTraits::kEmptyValueIsZero; + + static const bool kHasIsEmptyValueFunction = true; + static bool IsEmptyValue(const Node& node) { return !node.next_; } ++ static Node EmptyValue() { ++ return Node(ValueTraits::EmptyValue(), nullptr, nullptr); ++ } + + static const int kDeletedValue = -1; + +diff --git a/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc b/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc +index 4c3f899..cd1be00 100644 +--- a/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc ++++ b/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc +@@ -487,6 +487,7 @@ + }; + + struct Complicated { ++ Complicated() : Complicated(0) {} + Complicated(int value) : simple_(value) { objects_constructed_++; } + + Complicated(const Complicated& other) : simple_(other.simple_) { +@@ -495,9 +496,6 @@ + + Simple simple_; + static int objects_constructed_; +- +- private: +- Complicated() = delete; + }; + + int Complicated::objects_constructed_ = 0; +@@ -731,4 +729,45 @@ + + } // anonymous namespace + ++// A unit type which objects to its state being initialized wrong. ++struct InvalidZeroValue { ++ InvalidZeroValue() = default; ++ InvalidZeroValue(WTF::HashTableDeletedValueType) : deleted_(true) {} ++ ~InvalidZeroValue() { CHECK(ok_); } ++ bool IsHashTableDeletedValue() const { return deleted_; } ++ ++ bool ok_ = true; ++ bool deleted_ = false; ++}; ++ ++template <> ++struct HashTraits : SimpleClassHashTraits { ++ static const bool kEmptyValueIsZero = false; ++}; ++ ++template <> ++struct DefaultHash { ++ struct Hash { ++ static unsigned GetHash(const InvalidZeroValue&) { return 0; } ++ static bool Equal(const InvalidZeroValue&, const InvalidZeroValue&) { ++ return true; ++ } ++ }; ++}; ++ ++template ++class ListOrLinkedHashSetInvalidZeroTest : public testing::Test {}; ++ ++using InvalidZeroValueSetTypes = ++ testing::Types, ++ ListHashSet, ++ LinkedHashSet>; ++TYPED_TEST_SUITE(ListOrLinkedHashSetInvalidZeroTest, InvalidZeroValueSetTypes); ++ ++TYPED_TEST(ListOrLinkedHashSetInvalidZeroTest, InvalidZeroValue) { ++ using Set = TypeParam; ++ Set set; ++ set.insert(InvalidZeroValue()); ++} ++ + } // namespace WTF diff --git a/chromium.spec b/chromium.spec index 930b750..ff76b24 100644 --- a/chromium.spec +++ b/chromium.spec @@ -158,7 +158,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3865.90 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -218,6 +218,8 @@ Patch58: chromium-77.0.3865.75-harfbuzz-subset.patch Patch59: chromium-77.0.3865.75-gcc-abstract-class.patch # https://chromium.googlesource.com/chromium/src/+/5baf7df7f4c5971dab552897eeef94b194650ce5 Patch60: chromium-77.0.3865.75-missing-limits.patch +# https://chromium.googlesource.com/chromium/src/+/74138b9febd37eac0fc26b8efb110014a83a52c6 +Patch61: chromium-77.0.3865.90-linked-hash-set.patch # Use lstdc++ on EPEL7 only Patch101: chromium-75.0.3770.100-epel7-stdc++.patch @@ -730,6 +732,7 @@ udev. %patch58 -p1 -b .harfbuzz-subset %patch59 -p1 -b .gcc-abstract-class %patch60 -p1 -b .missing-limits +%patch61 -p1 -b .linked-hash-set # Fedora branded user agent %if 0%{?fedora} @@ -1632,6 +1635,12 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Mon Sep 23 2019 Tomas Popela - 77.0.3865.90-2 +- Fix the icon +- Remove quite a few of downstream patches +- Fix the crashes by backporting an upstream bug +- Resolves: rhbz#1754179 + * Thu Sep 19 2019 Tomas Popela - 77.0.3865.90-1 - Update to 77.0.3865.90 From f7aa602c50e32afa459f34444a03f40bb7e111a2 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 9 Oct 2019 12:48:48 -0400 Subject: [PATCH 0586/1449] here we go again --- ...ium-77.0.3865.75-base-gcc-no-alignas.patch | 12 + ...7.0.3865.75-certificate-transparency.patch | 539 ++++++++++++++++++ chromium-77.0.3865.75-el7-noexcept.patch | 165 ++++++ chromium-77.0.3865.75-fedora-user-agent.patch | 12 + ...mium-77.0.3865.75-gcc-abstract-class.patch | 61 ++ ...mium-77.0.3865.75-gcc-include-memory.patch | 12 + chromium-77.0.3865.75-harfbuzz-subset.patch | 49 ++ chromium-77.0.3865.75-missing-limits.patch | 28 + chromium-77.0.3865.75-no-zlib-mangle.patch | 22 + chromium-77.0.3865.75-unbundle-zlib.patch | 25 + chromium-77.0.3865.90-linked-hash-set.patch | 130 +++++ chromium.spec | 440 ++++++-------- sources | 2 +- 13 files changed, 1217 insertions(+), 280 deletions(-) create mode 100644 chromium-77.0.3865.75-base-gcc-no-alignas.patch create mode 100644 chromium-77.0.3865.75-certificate-transparency.patch create mode 100644 chromium-77.0.3865.75-el7-noexcept.patch create mode 100644 chromium-77.0.3865.75-fedora-user-agent.patch create mode 100644 chromium-77.0.3865.75-gcc-abstract-class.patch create mode 100644 chromium-77.0.3865.75-gcc-include-memory.patch create mode 100644 chromium-77.0.3865.75-harfbuzz-subset.patch create mode 100644 chromium-77.0.3865.75-missing-limits.patch create mode 100644 chromium-77.0.3865.75-no-zlib-mangle.patch create mode 100644 chromium-77.0.3865.75-unbundle-zlib.patch create mode 100644 chromium-77.0.3865.90-linked-hash-set.patch diff --git a/chromium-77.0.3865.75-base-gcc-no-alignas.patch b/chromium-77.0.3865.75-base-gcc-no-alignas.patch new file mode 100644 index 0000000..86a2271 --- /dev/null +++ b/chromium-77.0.3865.75-base-gcc-no-alignas.patch @@ -0,0 +1,12 @@ +diff -up chromium-77.0.3865.75/base/task/promise/dependent_list.h.base-gcc-no-alignas chromium-77.0.3865.75/base/task/promise/dependent_list.h +--- chromium-77.0.3865.75/base/task/promise/dependent_list.h.base-gcc-no-alignas 2019-09-13 21:45:51.873172347 +0200 ++++ chromium-77.0.3865.75/base/task/promise/dependent_list.h 2019-09-13 21:46:21.661522514 +0200 +@@ -59,7 +59,7 @@ class BASE_EXPORT DependentList { + + // Align Node on an 8-byte boundary to ensure the first 3 bits are 0 and can + // be used to store additional state (see static_asserts below). +- class BASE_EXPORT alignas(8) Node { ++ class BASE_EXPORT ALIGNAS(8) Node { + public: + Node(); + explicit Node(Node&& other) noexcept; diff --git a/chromium-77.0.3865.75-certificate-transparency.patch b/chromium-77.0.3865.75-certificate-transparency.patch new file mode 100644 index 0000000..82e2958 --- /dev/null +++ b/chromium-77.0.3865.75-certificate-transparency.patch @@ -0,0 +1,539 @@ +diff -up chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager_browsertest.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager_browsertest.cc +--- chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager_browsertest.cc.certificate-transparency 2019-09-12 16:09:52.818635106 +0200 ++++ chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager_browsertest.cc 2019-09-12 16:11:07.662562005 +0200 +@@ -21,6 +21,7 @@ + #include "components/version_info/version_info.h" + #include "content/public/common/content_switches.h" + #include "content/public/common/user_agent.h" ++#include "services/network/public/cpp/network_service_buildflags.h" + #include "services/network/public/mojom/network_context.mojom.h" + #include "services/network/public/mojom/network_service.mojom.h" + #include "testing/gmock/include/gmock/gmock.h" +@@ -356,3 +357,55 @@ IN_PROC_BROWSER_TEST_P(SystemNetworkCont + INSTANTIATE_TEST_SUITE_P(, + SystemNetworkContextManagerFreezeQUICUaBrowsertest, + ::testing::Values(true, false)); ++ ++class SystemNetworkContextManagerCertificateTransparencyBrowsertest ++ : public SystemNetworkContextManagerBrowsertest, ++ public testing::WithParamInterface> { ++ public: ++ SystemNetworkContextManagerCertificateTransparencyBrowsertest() { ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ GetParam()); ++ } ++ ~SystemNetworkContextManagerCertificateTransparencyBrowsertest() override { ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ base::nullopt); ++ } ++}; ++ ++#if BUILDFLAG(IS_CT_SUPPORTED) ++IN_PROC_BROWSER_TEST_P( ++ SystemNetworkContextManagerCertificateTransparencyBrowsertest, ++ CertificateTransparencyConfig) { ++ network::mojom::NetworkContextParamsPtr context_params = ++ g_browser_process->system_network_context_manager() ++ ->CreateDefaultNetworkContextParams(); ++ ++ const bool kDefault = ++#if defined(GOOGLE_CHROME_BUILD) && defined(OFFICIAL_BUILD) && \ ++ !defined(OS_ANDROID) ++ true; ++#else ++ false; ++#endif ++ ++ EXPECT_EQ(GetParam().value_or(kDefault), ++ context_params->enforce_chrome_ct_policy); ++ EXPECT_NE(GetParam().value_or(kDefault), context_params->ct_logs.empty()); ++ ++ if (GetParam().value_or(kDefault)) { ++ bool has_google_log = false; ++ bool has_disqualified_log = false; ++ for (const auto& ct_log : context_params->ct_logs) { ++ has_google_log |= ct_log->operated_by_google; ++ has_disqualified_log |= ct_log->disqualified_at.has_value(); ++ } ++ EXPECT_TRUE(has_google_log); ++ EXPECT_TRUE(has_disqualified_log); ++ } ++} ++#endif ++ ++INSTANTIATE_TEST_SUITE_P( ++ , ++ SystemNetworkContextManagerCertificateTransparencyBrowsertest, ++ ::testing::Values(base::nullopt, true, false)); +diff -up chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.cc +--- chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.cc.certificate-transparency 2019-09-09 23:55:09.000000000 +0200 ++++ chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.cc 2019-09-12 16:09:52.819635118 +0200 +@@ -4,11 +4,13 @@ + + #include "chrome/browser/net/system_network_context_manager.h" + ++#include + #include + #include + #include + + #include "base/bind.h" ++#include "base/build_time.h" + #include "base/command_line.h" + #include "base/feature_list.h" + #include "base/logging.h" +@@ -50,6 +52,7 @@ + #include "content/public/common/mime_handler_view_mode.h" + #include "content/public/common/service_names.mojom.h" + #include "content/public/common/user_agent.h" ++#include "crypto/sha2.h" + #include "mojo/public/cpp/bindings/associated_interface_ptr.h" + #include "net/dns/public/util.h" + #include "net/net_buildflags.h" +@@ -79,6 +82,20 @@ + + namespace { + ++constexpr bool kCertificateTransparencyEnabled = ++#if defined(GOOGLE_CHROME_BUILD) && defined(OFFICIAL_BUILD) && \ ++ !defined(OS_ANDROID) ++ // Certificate Transparency is only enabled if: ++ // - Desktop (!OS_ANDROID); OS_IOS does not use this file ++ // - base::GetBuildTime() is deterministic to the source (OFFICIAL_BUILD) ++ // - The build in reliably updatable (GOOGLE_CHROME_BUILD) ++ true; ++#else ++ false; ++#endif ++ ++bool g_enable_certificate_transparency = kCertificateTransparencyEnabled; ++ + // The global instance of the SystemNetworkContextmanager. + SystemNetworkContextManager* g_system_network_context_manager = nullptr; + +@@ -658,14 +675,35 @@ SystemNetworkContextManager::CreateDefau + + bool http_09_on_non_default_ports_enabled = false; + #if !defined(OS_ANDROID) +- // CT is only enabled on Desktop platforms for now. +- network_context_params->enforce_chrome_ct_policy = true; +- for (const auto& ct_log : certificate_transparency::GetKnownLogs()) { +- // TODO(rsleevi): https://crbug.com/702062 - Remove this duplication. +- network::mojom::CTLogInfoPtr log_info = network::mojom::CTLogInfo::New(); +- log_info->public_key = std::string(ct_log.log_key, ct_log.log_key_length); +- log_info->name = ct_log.log_name; +- network_context_params->ct_logs.push_back(std::move(log_info)); ++ ++ if (g_enable_certificate_transparency) { ++ network_context_params->enforce_chrome_ct_policy = true; ++ network_context_params->ct_log_update_time = base::GetBuildTime(); ++ ++ std::vector operated_by_google_logs = ++ certificate_transparency::GetLogsOperatedByGoogle(); ++ std::vector> disqualified_logs = ++ certificate_transparency::GetDisqualifiedLogs(); ++ for (const auto& ct_log : certificate_transparency::GetKnownLogs()) { ++ // TODO(rsleevi): https://crbug.com/702062 - Remove this duplication. ++ network::mojom::CTLogInfoPtr log_info = network::mojom::CTLogInfo::New(); ++ log_info->public_key = std::string(ct_log.log_key, ct_log.log_key_length); ++ log_info->name = ct_log.log_name; ++ ++ std::string log_id = crypto::SHA256HashString(log_info->public_key); ++ log_info->operated_by_google = ++ std::binary_search(std::begin(operated_by_google_logs), ++ std::end(operated_by_google_logs), log_id); ++ auto it = std::lower_bound( ++ std::begin(disqualified_logs), std::end(disqualified_logs), log_id, ++ [](const auto& disqualified_log, const std::string& log_id) { ++ return disqualified_log.first < log_id; ++ }); ++ if (it != std::end(disqualified_logs) && it->first == log_id) { ++ log_info->disqualified_at = it->second; ++ } ++ network_context_params->ct_logs.push_back(std::move(log_info)); ++ } + } + + const base::Value* value = +@@ -723,6 +761,12 @@ SystemNetworkContextManager::GetHttpAuth + return CreateHttpAuthDynamicParams(g_browser_process->local_state()); + } + ++void SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ base::Optional enabled) { ++ g_enable_certificate_transparency = ++ enabled.value_or(kCertificateTransparencyEnabled); ++} ++ + network::mojom::NetworkContextParamsPtr + SystemNetworkContextManager::CreateNetworkContextParams() { + // TODO(mmenke): Set up parameters here (in memory cookie store, etc). +diff -up chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.h.certificate-transparency chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.h +--- chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.h.certificate-transparency 2019-09-09 23:55:09.000000000 +0200 ++++ chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.h 2019-09-12 16:09:52.819635118 +0200 +@@ -139,6 +139,12 @@ class SystemNetworkContextManager { + static network::mojom::HttpAuthDynamicParamsPtr + GetHttpAuthDynamicParamsForTesting(); + ++ // Enables Certificate Transparency and enforcing the Chrome Certificate ++ // Transparency Policy. For test use only. Use base::nullopt_t to reset to ++ // the default state. ++ static void SetEnableCertificateTransparencyForTesting( ++ base::Optional enabled); ++ + private: + class URLLoaderFactoryForSystem; + +diff -up chromium-77.0.3865.75/chrome/browser/policy/policy_browsertest.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/policy/policy_browsertest.cc +--- chromium-77.0.3865.75/chrome/browser/policy/policy_browsertest.cc.certificate-transparency 2019-09-09 23:55:10.000000000 +0200 ++++ chromium-77.0.3865.75/chrome/browser/policy/policy_browsertest.cc 2019-09-12 16:09:52.820635131 +0200 +@@ -4836,7 +4836,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, + browser()->tab_strip_model()->GetActiveWebContents()->GetTitle()); + } + +-IN_PROC_BROWSER_TEST_F(PolicyTest, ++IN_PROC_BROWSER_TEST_F(CertificateTransparencyPolicyTest, + CertificateTransparencyEnforcementDisabledForCas) { + net::EmbeddedTestServer https_server_ok(net::EmbeddedTestServer::TYPE_HTTPS); + https_server_ok.SetSSLConfig(net::EmbeddedTestServer::CERT_OK); +diff -up chromium-77.0.3865.75/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc +--- chromium-77.0.3865.75/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc.certificate-transparency 2019-09-09 23:55:10.000000000 +0200 ++++ chromium-77.0.3865.75/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc 2019-09-12 16:09:52.821635143 +0200 +@@ -8,6 +8,7 @@ + #include "base/callback.h" + #include "base/run_loop.h" + #include "base/test/scoped_feature_list.h" ++#include "chrome/browser/net/system_network_context_manager.h" + #include "chrome/browser/profiles/profile.h" + #include "chrome/browser/ssl/cert_verifier_browser_test.h" + #include "chrome/browser/ui/browser.h" +@@ -27,7 +28,17 @@ namespace { + // received by a server. + class ExpectCTBrowserTest : public CertVerifierBrowserTest { + public: +- ExpectCTBrowserTest() : CertVerifierBrowserTest() {} ++ ExpectCTBrowserTest() : CertVerifierBrowserTest() { ++ // Expect-CT reporting depends on actually enforcing Certificate ++ // Transparency. ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ true); ++ } ++ ++ ~ExpectCTBrowserTest() override { ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ base::nullopt); ++ } + + void SetUpOnMainThread() override { + run_loop_ = std::make_unique(); +diff -up chromium-77.0.3865.75/chrome/browser/ssl/security_state_tab_helper_browsertest.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/ssl/security_state_tab_helper_browsertest.cc +--- chromium-77.0.3865.75/chrome/browser/ssl/security_state_tab_helper_browsertest.cc.certificate-transparency 2019-09-09 23:55:10.000000000 +0200 ++++ chromium-77.0.3865.75/chrome/browser/ssl/security_state_tab_helper_browsertest.cc 2019-09-12 16:09:52.821635143 +0200 +@@ -433,6 +433,13 @@ class SecurityStateTabHelperTest : publi + SecurityStateTabHelperTest() + : https_server_(net::EmbeddedTestServer::TYPE_HTTPS) { + https_server_.ServeFilesFromSourceDirectory(GetChromeTestDataDir()); ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ true); ++ } ++ ++ ~SecurityStateTabHelperTest() override { ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ base::nullopt); + } + + void SetUpOnMainThread() override { +diff -up chromium-77.0.3865.75/chrome/browser/ssl/ssl_browsertest.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/ssl/ssl_browsertest.cc +--- chromium-77.0.3865.75/chrome/browser/ssl/ssl_browsertest.cc.certificate-transparency 2019-09-09 23:55:10.000000000 +0200 ++++ chromium-77.0.3865.75/chrome/browser/ssl/ssl_browsertest.cc 2019-09-12 16:09:52.822635155 +0200 +@@ -1853,8 +1853,14 @@ class CertificateTransparencySSLUITest : + public: + CertificateTransparencySSLUITest() + : CertVerifierBrowserTest(), +- https_server_(net::EmbeddedTestServer::TYPE_HTTPS) {} +- ~CertificateTransparencySSLUITest() override {} ++ https_server_(net::EmbeddedTestServer::TYPE_HTTPS) { ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ true); ++ } ++ ~CertificateTransparencySSLUITest() override { ++ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( ++ base::nullopt); ++ } + + void SetUpOnMainThread() override { + CertVerifierBrowserTest::SetUpOnMainThread(); +diff -up chromium-77.0.3865.75/components/certificate_transparency/chrome_ct_policy_enforcer.h.certificate-transparency chromium-77.0.3865.75/components/certificate_transparency/chrome_ct_policy_enforcer.h +--- chromium-77.0.3865.75/components/certificate_transparency/chrome_ct_policy_enforcer.h.certificate-transparency 2019-09-09 23:55:14.000000000 +0200 ++++ chromium-77.0.3865.75/components/certificate_transparency/chrome_ct_policy_enforcer.h 2019-09-12 16:09:52.823635168 +0200 +@@ -45,6 +45,19 @@ class ChromeCTPolicyEnforcer : public ne + + void SetClockForTesting(const base::Clock* clock) { clock_ = clock; } + ++ // TODO(https://crbug.com/999240): These are exposed to allow end-to-end ++ // testing by higher layers (i.e. that the ChromeCTPolicyEnforcer is ++ // correctly constructed). When either this issue or https://crbug.com/848277 ++ // are fixed, the configuration can be tested independently, and these can ++ // be removed. ++ const std::vector& operated_by_google_logs_for_testing() { ++ return operated_by_google_logs_; ++ } ++ const std::vector>& ++ disqualified_logs_for_testing() { ++ return disqualified_logs_; ++ } ++ + private: + // Returns true if the log identified by |log_id| (the SHA-256 hash of the + // log's DER-encoded SPKI) has been disqualified, and sets +diff -up chromium-77.0.3865.75/services/network/network_context.cc.certificate-transparency chromium-77.0.3865.75/services/network/network_context.cc +--- chromium-77.0.3865.75/services/network/network_context.cc.certificate-transparency 2019-09-09 23:55:22.000000000 +0200 ++++ chromium-77.0.3865.75/services/network/network_context.cc 2019-09-12 16:09:52.823635168 +0200 +@@ -36,6 +36,7 @@ + #include "components/prefs/pref_registry_simple.h" + #include "components/prefs/pref_service.h" + #include "components/prefs/pref_service_factory.h" ++#include "crypto/sha2.h" + #include "mojo/public/cpp/bindings/strong_binding.h" + #include "net/base/layered_network_delegate.h" + #include "net/base/load_flags.h" +@@ -1877,16 +1878,6 @@ URLRequestContextOwner NetworkContext::A + base::FeatureList::IsEnabled(features::kNetworkErrorLogging)); + #endif // BUILDFLAG(ENABLE_REPORTING) + +-#if BUILDFLAG(IS_CT_SUPPORTED) +- if (params_->enforce_chrome_ct_policy) { +- builder->set_ct_policy_enforcer( +- std::make_unique( +- base::GetBuildTime(), +- certificate_transparency::GetDisqualifiedLogs(), +- certificate_transparency::GetLogsOperatedByGoogle())); +- } +-#endif // BUILDFLAG(IS_CT_SUPPORTED) +- + net::HttpNetworkSession::Params session_params; + bool is_quic_force_disabled = false; + if (network_service_ && network_service_->quic_disabled()) +@@ -1936,8 +1927,20 @@ URLRequestContextOwner NetworkContext::A + + #if BUILDFLAG(IS_CT_SUPPORTED) + std::vector> ct_logs; ++ std::vector> disqualified_logs; ++ std::vector operated_by_google_logs; ++ + if (!params_->ct_logs.empty()) { + for (const auto& log : params_->ct_logs) { ++ if (log->operated_by_google || log->disqualified_at) { ++ std::string log_id = crypto::SHA256HashString(log->public_key); ++ if (log->operated_by_google) ++ operated_by_google_logs.push_back(log_id); ++ if (log->disqualified_at) { ++ disqualified_logs.push_back( ++ std::make_pair(log_id, log->disqualified_at.value())); ++ } ++ } + scoped_refptr log_verifier = + net::CTLogVerifier::Create(log->public_key, log->name); + if (!log_verifier) { +@@ -1950,6 +1953,17 @@ URLRequestContextOwner NetworkContext::A + ct_verifier->AddLogs(ct_logs); + builder->set_ct_verifier(std::move(ct_verifier)); + } ++ ++ if (params_->enforce_chrome_ct_policy) { ++ std::sort(std::begin(operated_by_google_logs), ++ std::end(operated_by_google_logs)); ++ std::sort(std::begin(disqualified_logs), std::end(disqualified_logs)); ++ ++ builder->set_ct_policy_enforcer( ++ std::make_unique( ++ params_->ct_log_update_time, disqualified_logs, ++ operated_by_google_logs)); ++ } + #endif // BUILDFLAG(IS_CT_SUPPORTED) + + const base::CommandLine* command_line = +diff -up chromium-77.0.3865.75/services/network/network_context_unittest.cc.certificate-transparency chromium-77.0.3865.75/services/network/network_context_unittest.cc +--- chromium-77.0.3865.75/services/network/network_context_unittest.cc.certificate-transparency 2019-09-09 23:55:22.000000000 +0200 ++++ chromium-77.0.3865.75/services/network/network_context_unittest.cc 2019-09-12 16:13:10.479056669 +0200 +@@ -2,6 +2,7 @@ + // Use of this source code is governed by a BSD-style license that can be + // found in the LICENSE file. + ++#include + #include + #include + #include +@@ -38,10 +39,12 @@ + #include "base/threading/thread_task_runner_handle.h" + #include "base/time/default_clock.h" + #include "base/time/default_tick_clock.h" ++#include "base/time/time.h" + #include "build/build_config.h" + #include "components/network_session_configurator/browser/network_session_configurator.h" + #include "components/network_session_configurator/common/network_switches.h" + #include "components/prefs/testing_pref_service.h" ++#include "crypto/sha2.h" + #include "mojo/public/cpp/bindings/remote.h" + #include "mojo/public/cpp/bindings/self_owned_receiver.h" + #include "mojo/public/cpp/system/data_pipe_utils.h" +@@ -115,6 +118,11 @@ + #include "url/scheme_host_port.h" + #include "url/url_constants.h" + ++#if BUILDFLAG(IS_CT_SUPPORTED) ++#include "components/certificate_transparency/chrome_ct_policy_enforcer.h" ++#include "services/network/public/mojom/ct_log_info.mojom.h" ++#endif ++ + #if !BUILDFLAG(DISABLE_FTP_SUPPORT) + #include "net/ftp/ftp_auth_cache.h" + #endif // !BUILDFLAG(DISABLE_FTP_SUPPORT) +@@ -5958,6 +5966,72 @@ TEST_F(NetworkContextSplitCacheTest, + true /* was_cached */, true /* is_navigation */); + } + ++#if BUILDFLAG(IS_CT_SUPPORTED) ++TEST_F(NetworkContextTest, CertificateTransparencyConfig) { ++ mojom::NetworkContextParamsPtr params = CreateContextParams(); ++ params->enforce_chrome_ct_policy = true; ++ params->ct_log_update_time = base::Time::Now(); ++ ++ // The log public keys do not matter for the test, so invalid keys are used. ++ // However, because the log IDs are derived from the SHA-256 hash of the log ++ // key, the log keys are generated such that qualified logs are in the form ++ // of four digits (e.g. "0000", "1111"), while disqualified logs are in the ++ // form of four letters (e.g. "AAAA", "BBBB"). ++ ++ for (int i = 0; i < 6; ++i) { ++ network::mojom::CTLogInfoPtr log_info = network::mojom::CTLogInfo::New(); ++ // Shift to ASCII '0' (0x30) ++ log_info->public_key = std::string(4, 0x30 + static_cast(i)); ++ log_info->name = std::string(4, 0x30 + static_cast(i)); ++ log_info->operated_by_google = i % 2; ++ ++ params->ct_logs.push_back(std::move(log_info)); ++ } ++ for (int i = 0; i < 3; ++i) { ++ network::mojom::CTLogInfoPtr log_info = network::mojom::CTLogInfo::New(); ++ // Shift to ASCII 'A' (0x41) ++ log_info->public_key = std::string(4, 0x41 + static_cast(i)); ++ log_info->name = std::string(4, 0x41 + static_cast(i)); ++ log_info->operated_by_google = false; ++ log_info->disqualified_at = base::TimeDelta::FromSeconds(i); ++ ++ params->ct_logs.push_back(std::move(log_info)); ++ } ++ std::unique_ptr network_context = ++ CreateContextWithParams(std::move(params)); ++ ++ net::CTPolicyEnforcer* request_enforcer = ++ network_context->url_request_context()->ct_policy_enforcer(); ++ ASSERT_TRUE(request_enforcer); ++ ++ // Completely unsafe if |enforce_chrome_ct_policy| is false. ++ certificate_transparency::ChromeCTPolicyEnforcer* policy_enforcer = ++ reinterpret_cast( ++ request_enforcer); ++ ++ EXPECT_TRUE(std::is_sorted( ++ policy_enforcer->operated_by_google_logs_for_testing().begin(), ++ policy_enforcer->operated_by_google_logs_for_testing().end())); ++ EXPECT_TRUE( ++ std::is_sorted(policy_enforcer->disqualified_logs_for_testing().begin(), ++ policy_enforcer->disqualified_logs_for_testing().end())); ++ ++ EXPECT_THAT( ++ policy_enforcer->operated_by_google_logs_for_testing(), ++ ::testing::UnorderedElementsAreArray({crypto::SHA256HashString("1111"), ++ crypto::SHA256HashString("3333"), ++ crypto::SHA256HashString("5555")})); ++ EXPECT_THAT(policy_enforcer->disqualified_logs_for_testing(), ++ ::testing::UnorderedElementsAre( ++ ::testing::Pair(crypto::SHA256HashString("AAAA"), ++ base::TimeDelta::FromSeconds(0)), ++ ::testing::Pair(crypto::SHA256HashString("BBBB"), ++ base::TimeDelta::FromSeconds(1)), ++ ::testing::Pair(crypto::SHA256HashString("CCCC"), ++ base::TimeDelta::FromSeconds(2)))); ++} ++#endif ++ + } // namespace + + } // namespace network +diff -up chromium-77.0.3865.75/services/network/public/mojom/ct_log_info.mojom.certificate-transparency chromium-77.0.3865.75/services/network/public/mojom/ct_log_info.mojom +--- chromium-77.0.3865.75/services/network/public/mojom/ct_log_info.mojom.certificate-transparency 2019-09-09 23:55:22.000000000 +0200 ++++ chromium-77.0.3865.75/services/network/public/mojom/ct_log_info.mojom 2019-09-12 16:09:52.824635180 +0200 +@@ -4,6 +4,8 @@ + + module network.mojom; + ++import "mojo/public/mojom/base/time.mojom"; ++ + // A single Certificate Transparency Log configuration. + struct CTLogInfo { + // The DER-encoded SubjectPublicKeyInfo of the log. +@@ -14,4 +16,13 @@ struct CTLogInfo { + // The human-readable, log-supplied log name. Note that this will not be + // translated. + string name; ++ ++ // Whether or not the log should should be considered a Google Log for the ++ // purposes of enforcing the "Certificate Transparency in Chrome" policy. ++ bool operated_by_google = false; ++ ++ // If set, the time since the Unix Epoch when the log was disqualified. This ++ // is used to determine the "once or currently qualified" status of the log. ++ // If the log is currently qualified, this will not be set. ++ mojo_base.mojom.TimeDelta? disqualified_at; + }; +diff -up chromium-77.0.3865.75/services/network/public/mojom/network_context.mojom.certificate-transparency chromium-77.0.3865.75/services/network/public/mojom/network_context.mojom +--- chromium-77.0.3865.75/services/network/public/mojom/network_context.mojom.certificate-transparency 2019-09-09 23:55:22.000000000 +0200 ++++ chromium-77.0.3865.75/services/network/public/mojom/network_context.mojom 2019-09-12 16:09:52.825635192 +0200 +@@ -239,15 +239,6 @@ struct NetworkContextParams { + [EnableIf=is_android] + bool check_clear_text_permitted = false; + +- // True if the "Certificate Transparency in Chrome" policy (see +- // https://github.com/chromium/ct-policy/blob/master/ct_policy.md) should +- // be enforced for certificates and connections. +- // +- // See //net/docs/certificate-transparency.md before setting this flag to +- // true. +- [EnableIf=is_ct_supported] +- bool enforce_chrome_ct_policy = false; +- + // Enables HTTP/0.9 on ports other than 80 for HTTP and 443 for HTTPS. + bool http_09_on_non_default_ports_enabled = false; + +@@ -300,6 +291,15 @@ struct NetworkContextParams { + // servers, so they can discover misconfigurations. + bool enable_certificate_reporting = false; + ++ // True if the "Certificate Transparency in Chrome" policy (see ++ // https://github.com/chromium/ct-policy/blob/master/ct_policy.md) should ++ // be enforced for certificates and connections. ++ // ++ // See //net/docs/certificate-transparency.md before setting this flag to ++ // true. ++ [EnableIf=is_ct_supported] ++ bool enforce_chrome_ct_policy = false; ++ + // Enables Expect CT reporting, which sends reports for opted-in sites that + // don't serve sufficient Certificate Transparency information. + [EnableIf=is_ct_supported] +@@ -311,6 +311,13 @@ struct NetworkContextParams { + [EnableIf=is_ct_supported] + array ct_logs; + ++ // When the Certificate Transparency logs in |ct_logs| were last updated. If ++ // |enforce_chrome_ct_policy| is set, and |ct_log_update_time| is not ++ // sufficiently recent, enforcement of the "Certificate Transparency in ++ // Chrome" policy will be disabled. ++ [EnableIf=is_ct_supported] ++ mojo_base.mojom.Time ct_log_update_time; ++ + // Specifies the path to the directory where NSS will store its database. + [EnableIf=is_chromeos] + mojo_base.mojom.FilePath? nss_path; diff --git a/chromium-77.0.3865.75-el7-noexcept.patch b/chromium-77.0.3865.75-el7-noexcept.patch new file mode 100644 index 0000000..366c139 --- /dev/null +++ b/chromium-77.0.3865.75-el7-noexcept.patch @@ -0,0 +1,165 @@ +diff -up chromium-77.0.3865.75/chrome/common/media_router/media_sink.cc.el7-noexcept chromium-77.0.3865.75/chrome/common/media_router/media_sink.cc +--- chromium-77.0.3865.75/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-09-17 18:42:37.137393137 +0200 ++++ chromium-77.0.3865.75/chrome/common/media_router/media_sink.cc 2019-09-17 18:42:37.145393201 +0200 +@@ -19,12 +19,12 @@ MediaSink::MediaSink(const MediaSink::Id + provider_id_(provider_id) {} + + MediaSink::MediaSink(const MediaSink& other) = default; +-MediaSink::MediaSink(MediaSink&& other) noexcept = default; ++MediaSink::MediaSink(MediaSink&& other) = default; + MediaSink::MediaSink() = default; + MediaSink::~MediaSink() = default; + + MediaSink& MediaSink::operator=(const MediaSink& other) = default; +-MediaSink& MediaSink::operator=(MediaSink&& other) noexcept = default; ++MediaSink& MediaSink::operator=(MediaSink&& other) = default; + + bool MediaSink::IsMaybeCloudSink() const { + switch (icon_type_) { +diff -up chromium-77.0.3865.75/components/history/core/browser/history_types.cc.el7-noexcept chromium-77.0.3865.75/components/history/core/browser/history_types.cc +--- chromium-77.0.3865.75/components/history/core/browser/history_types.cc.el7-noexcept 2019-09-17 18:42:09.417172829 +0200 ++++ chromium-77.0.3865.75/components/history/core/browser/history_types.cc 2019-09-17 18:42:09.385172574 +0200 +@@ -42,7 +42,7 @@ QueryResults::QueryResults(QueryResults& + Swap(&other); + } + +-QueryResults& QueryResults::operator=(QueryResults&& other) noexcept { ++QueryResults& QueryResults::operator=(QueryResults&& other) { + Swap(&other); + return *this; + } +@@ -186,7 +186,7 @@ QueryURLResult::QueryURLResult(QueryURLR + + QueryURLResult& QueryURLResult::operator=(const QueryURLResult&) = default; + +-QueryURLResult& QueryURLResult::operator=(QueryURLResult&&) noexcept = default; ++QueryURLResult& QueryURLResult::operator=(QueryURLResult&&) = default; + + // MostVisitedURL -------------------------------------------------------------- + +diff -up chromium-77.0.3865.75/components/history/core/browser/history_types.h.el7-noexcept chromium-77.0.3865.75/components/history/core/browser/history_types.h +--- chromium-77.0.3865.75/components/history/core/browser/history_types.h.el7-noexcept 2019-09-17 18:42:09.437172988 +0200 ++++ chromium-77.0.3865.75/components/history/core/browser/history_types.h 2019-09-17 18:42:09.365172415 +0200 +@@ -143,7 +143,7 @@ class QueryResults { + ~QueryResults(); + + QueryResults(QueryResults&& other) noexcept; +- QueryResults& operator=(QueryResults&& other) noexcept; ++ QueryResults& operator=(QueryResults&& other); + + void set_reached_beginning(bool reached) { reached_beginning_ = reached; } + bool reached_beginning() { return reached_beginning_; } +@@ -278,7 +278,7 @@ struct QueryURLResult { + QueryURLResult(const QueryURLResult&); + QueryURLResult(QueryURLResult&&) noexcept; + QueryURLResult& operator=(const QueryURLResult&); +- QueryURLResult& operator=(QueryURLResult&&) noexcept; ++ QueryURLResult& operator=(QueryURLResult&&); + ~QueryURLResult(); + + // Indicates whether the call to HistoryBackend::QueryURL was successfull +diff -up chromium-77.0.3865.75/components/history/core/browser/url_row.cc.el7-noexcept chromium-77.0.3865.75/components/history/core/browser/url_row.cc +--- chromium-77.0.3865.75/components/history/core/browser/url_row.cc.el7-noexcept 2019-09-18 08:03:25.458138423 +0200 ++++ chromium-77.0.3865.75/components/history/core/browser/url_row.cc 2019-09-18 08:03:34.363234155 +0200 +@@ -26,7 +26,7 @@ URLRow::~URLRow() { + } + + URLRow& URLRow::operator=(const URLRow& other) = default; +-URLRow& URLRow::operator=(URLRow&& other) noexcept = default; ++URLRow& URLRow::operator=(URLRow&& other) = default; + + void URLRow::Swap(URLRow* other) { + std::swap(id_, other->id_); +diff -up chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc.el7-noexcept chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc +--- chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc.el7-noexcept 2019-09-17 22:00:18.670108528 +0200 ++++ chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc 2019-09-17 22:00:32.518272148 +0200 +@@ -60,7 +60,7 @@ SuggestionAnswer::TextField::TextField(T + SuggestionAnswer::TextField& SuggestionAnswer::TextField::operator=( + const TextField&) = default; + SuggestionAnswer::TextField& SuggestionAnswer::TextField::operator=( +- TextField&&) noexcept = default; ++ TextField&&) = default; + + // static + bool SuggestionAnswer::TextField::ParseTextField(const base::Value& field_json, +diff -up chromium-77.0.3865.75/components/policy/core/common/policy_map.cc.el7-noexcept chromium-77.0.3865.75/components/policy/core/common/policy_map.cc +--- chromium-77.0.3865.75/components/policy/core/common/policy_map.cc.el7-noexcept 2019-09-17 18:42:14.622214197 +0200 ++++ chromium-77.0.3865.75/components/policy/core/common/policy_map.cc 2019-09-17 18:42:14.556213673 +0200 +@@ -52,7 +52,7 @@ PolicyMap::Entry::Entry( + PolicyMap::Entry::~Entry() = default; + + PolicyMap::Entry::Entry(Entry&&) noexcept = default; +-PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) noexcept = default; ++PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) = default; + + PolicyMap::Entry PolicyMap::Entry::DeepCopy() const { + Entry copy; +diff -up chromium-77.0.3865.75/components/signin/public/identity_manager/account_info.cc.el7-noexcept chromium-77.0.3865.75/components/signin/public/identity_manager/account_info.cc +--- chromium-77.0.3865.75/components/signin/public/identity_manager/account_info.cc.el7-noexcept 2019-09-17 21:06:27.037828110 +0200 ++++ chromium-77.0.3865.75/components/signin/public/identity_manager/account_info.cc 2019-09-17 21:07:20.726472932 +0200 +@@ -52,7 +52,7 @@ CoreAccountInfo::CoreAccountInfo(CoreAcc + CoreAccountInfo& CoreAccountInfo::operator=(const CoreAccountInfo& other) = + default; + +-CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) noexcept = ++CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) = + default; + + bool CoreAccountInfo::IsEmpty() const { +@@ -69,7 +69,7 @@ AccountInfo::AccountInfo(AccountInfo&& o + + AccountInfo& AccountInfo::operator=(const AccountInfo& other) = default; + +-AccountInfo& AccountInfo::operator=(AccountInfo&& other) noexcept = default; ++AccountInfo& AccountInfo::operator=(AccountInfo&& other) = default; + + bool AccountInfo::IsEmpty() const { + return CoreAccountInfo::IsEmpty() && hosted_domain.empty() && +diff -up chromium-77.0.3865.75/google_apis/gaia/core_account_id.cc.el7-noexcept chromium-77.0.3865.75/google_apis/gaia/core_account_id.cc +--- chromium-77.0.3865.75/google_apis/gaia/core_account_id.cc.el7-noexcept 2019-09-17 18:43:12.969677930 +0200 ++++ chromium-77.0.3865.75/google_apis/gaia/core_account_id.cc 2019-09-17 18:43:12.989678089 +0200 +@@ -14,7 +14,7 @@ CoreAccountId::~CoreAccountId() = defaul + + CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; + +-CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) noexcept = default; ++CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) = default; + + CoreAccountId::CoreAccountId(const char* id) : id(id) {} + +diff -up chromium-77.0.3865.75/google_apis/gaia/core_account_id.h.el7-noexcept chromium-77.0.3865.75/google_apis/gaia/core_account_id.h +--- chromium-77.0.3865.75/google_apis/gaia/core_account_id.h.el7-noexcept 2019-09-17 18:43:12.978678001 +0200 ++++ chromium-77.0.3865.75/google_apis/gaia/core_account_id.h 2019-09-17 18:43:12.983678041 +0200 +@@ -20,7 +20,7 @@ struct CoreAccountId { + ~CoreAccountId(); + + CoreAccountId& operator=(const CoreAccountId&); +- CoreAccountId& operator=(CoreAccountId&&) noexcept; ++ CoreAccountId& operator=(CoreAccountId&&); + + // Those implicit constructor and conversion operator allow to + // progressively migrate the code to use this struct. Removing +diff -up chromium-77.0.3865.75/gpu/config/gpu_info.cc.el7-noexcept chromium-77.0.3865.75/gpu/config/gpu_info.cc +--- chromium-77.0.3865.75/gpu/config/gpu_info.cc.el7-noexcept 2019-09-17 18:42:25.049297073 +0200 ++++ chromium-77.0.3865.75/gpu/config/gpu_info.cc 2019-09-17 18:42:25.049297073 +0200 +@@ -170,7 +170,7 @@ GPUInfo::GPUDevice& GPUInfo::GPUDevice:: + const GPUInfo::GPUDevice& other) = default; + + GPUInfo::GPUDevice& GPUInfo::GPUDevice::operator=( +- GPUInfo::GPUDevice&& other) noexcept = default; ++ GPUInfo::GPUDevice&& other) = default; + + GPUInfo::GPUInfo() + : optimus(false), +diff -up chromium-77.0.3865.75/third_party/openscreen/src/osp/public/service_info.h.el7-noexcept chromium-77.0.3865.75/third_party/openscreen/src/osp/public/service_info.h +--- chromium-77.0.3865.75/third_party/openscreen/src/osp/public/service_info.h.el7-noexcept 2019-09-17 21:46:46.378655525 +0200 ++++ chromium-77.0.3865.75/third_party/openscreen/src/osp/public/service_info.h 2019-09-17 21:47:16.897035418 +0200 +@@ -21,7 +21,7 @@ struct ServiceInfo { + ServiceInfo(ServiceInfo&&) MAYBE_NOEXCEPT = default; + ServiceInfo(const ServiceInfo&) MAYBE_NOEXCEPT = default; + +- ServiceInfo& operator=(ServiceInfo&&) MAYBE_NOEXCEPT = default; ++ ServiceInfo& operator=(ServiceInfo&&) = default; + ServiceInfo& operator=(const ServiceInfo&) MAYBE_NOEXCEPT = default; + + bool operator==(const ServiceInfo& other) const; diff --git a/chromium-77.0.3865.75-fedora-user-agent.patch b/chromium-77.0.3865.75-fedora-user-agent.patch new file mode 100644 index 0000000..8f6de51 --- /dev/null +++ b/chromium-77.0.3865.75-fedora-user-agent.patch @@ -0,0 +1,12 @@ +diff -up chromium-77.0.3865.75/content/common/user_agent.cc.fedora-user-agent chromium-77.0.3865.75/content/common/user_agent.cc +--- chromium-77.0.3865.75/content/common/user_agent.cc.fedora-user-agent 2019-09-12 15:49:11.902270729 +0200 ++++ chromium-77.0.3865.75/content/common/user_agent.cc 2019-09-12 15:50:11.555732044 +0200 +@@ -35,7 +35,7 @@ std::string GetUserAgentPlatform() { + #elif defined(OS_MACOSX) + return "Macintosh; "; + #elif defined(USE_X11) || defined(USE_OZONE) +- return "X11; "; // strange, but that's what Firefox uses ++ return "X11; Fedora; "; // strange, but that's what Firefox uses + #elif defined(OS_ANDROID) + return "Linux; "; + #elif defined(OS_POSIX) diff --git a/chromium-77.0.3865.75-gcc-abstract-class.patch b/chromium-77.0.3865.75-gcc-abstract-class.patch new file mode 100644 index 0000000..6d77299 --- /dev/null +++ b/chromium-77.0.3865.75-gcc-abstract-class.patch @@ -0,0 +1,61 @@ +From f08cb0022527081c078e8b96062e6c9b4fbda151 Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Fri, 26 Jul 2019 16:48:06 +0000 +Subject: [PATCH] BinaryUploadService: change parameter passing that cannot afford abstract class + +The method UploadForDeepScanning gets a Request as parameter. But Request is an +abstract class, so GCC will not allow that declaration (polimorphycs should be +passed by reference). Use std::unique_ptr so BinaryUploadService can assume +ownership. + +Bug: 819294 +Change-Id: I9e8c75cc92b01abd704d9049b0421555377da5ba +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1713550 +Reviewed-by: Daniel Rubery +Commit-Queue: José Dapena Paz +Cr-Commit-Position: refs/heads/master@{#681333} +--- + +diff --git a/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc b/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc +index 6430c89..4e90487 100644 +--- a/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc ++++ b/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc +@@ -10,7 +10,7 @@ + namespace safe_browsing { + + void BinaryUploadService::UploadForDeepScanning( +- BinaryUploadService::Request request) { ++ std::unique_ptr request) { + DCHECK_CURRENTLY_ON(content::BrowserThread::UI); + NOTREACHED(); + } +diff --git a/chrome/browser/safe_browsing/download_protection/binary_upload_service.h b/chrome/browser/safe_browsing/download_protection/binary_upload_service.h +index d2dfd83..9b6f395 100644 +--- a/chrome/browser/safe_browsing/download_protection/binary_upload_service.h ++++ b/chrome/browser/safe_browsing/download_protection/binary_upload_service.h +@@ -5,6 +5,8 @@ + #ifndef CHROME_BROWSER_SAFE_BROWSING_DOWNLOAD_PROTECTION_BINARY_UPLOAD_SERVICE_H_ + #define CHROME_BROWSER_SAFE_BROWSING_DOWNLOAD_PROTECTION_BINARY_UPLOAD_SERVICE_H_ + ++#include ++ + #include "base/callback.h" + #include "components/safe_browsing/proto/webprotect.pb.h" + +@@ -40,6 +42,7 @@ + public: + // |callback| will run on the UI thread. + explicit Request(Callback callback); ++ virtual ~Request() = default; + Request(const Request&) = delete; + Request& operator=(const Request&) = delete; + +@@ -67,7 +70,7 @@ + // Upload the given file contents for deep scanning. The results will be + // returned asynchronously by calling |request|'s |callback|. This must be + // called on the UI thread. +- void UploadForDeepScanning(Request request); ++ void UploadForDeepScanning(std::unique_ptr request); + }; + + } // namespace safe_browsing diff --git a/chromium-77.0.3865.75-gcc-include-memory.patch b/chromium-77.0.3865.75-gcc-include-memory.patch new file mode 100644 index 0000000..93b4399 --- /dev/null +++ b/chromium-77.0.3865.75-gcc-include-memory.patch @@ -0,0 +1,12 @@ +diff -up chromium-77.0.3865.75/third_party/one_euro_filter/src/one_euro_filter.h.gcc-include-memory chromium-77.0.3865.75/third_party/one_euro_filter/src/one_euro_filter.h +--- chromium-77.0.3865.75/third_party/one_euro_filter/src/one_euro_filter.h.gcc-include-memory 2019-09-13 14:44:24.962770079 +0200 ++++ chromium-77.0.3865.75/third_party/one_euro_filter/src/one_euro_filter.h 2019-09-13 14:44:45.347073612 +0200 +@@ -3,6 +3,8 @@ + + #include "low_pass_filter.h" + ++#include ++ + namespace one_euro_filter { + namespace test { + class OneEuroFilterTest; diff --git a/chromium-77.0.3865.75-harfbuzz-subset.patch b/chromium-77.0.3865.75-harfbuzz-subset.patch new file mode 100644 index 0000000..55d78d1 --- /dev/null +++ b/chromium-77.0.3865.75-harfbuzz-subset.patch @@ -0,0 +1,49 @@ +From 27e25336b8316ff3ec4e464058682ed85801fd06 Mon Sep 17 00:00:00 2001 +From: Raphael Kubo da Costa +Date: Mon, 29 Jul 2019 10:54:28 +0000 +Subject: [PATCH] Also link against libharfbuzz-subset when use_system_harfbuzz is true + +When building HarfBuzz as part of Chromium, there is a single source set +with all the files we need in the build. + +Upstream HarfBuzz, on the other hand, produces a few different libraries: +harfbuzz, harfbuzz-icu and harfbuzz-subset. When |use_system_harfbuzz| is +true, we were only looking for (and using) harfbuzz.pc with pkg-config even +though we also use symbols from libharfbuzz-subset.so. This resulted in +errors when linking: + + ld: obj/skia/skia/SkPDFSubsetFont.o: in function `SkPDFSubsetFont(sk_sp, SkPDFGlyphUse const&, SkPDF::Metadata::Subsetter, char const*, int)': + SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x48a): undefined reference to `hb_subset_input_create_or_fail' + ld: SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x4af): undefined reference to `hb_subset_input_glyph_set' + ld: SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x5d7): undefined reference to `hb_subset_input_set_retain_gids' + ld: SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x5e4): undefined reference to `hb_subset_input_set_drop_hints' + ld: SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x5f3): undefined reference to `hb_subset' + ld: SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x66f): undefined reference to `hb_subset_input_destroy' + +as reported in +https://groups.google.com/a/chromium.org/d/msg/chromium-packagers/UyJsVJ5QqWo/jSv5z7-rEQAJ + +Change-Id: I997af075c7b7263cd7cc71a63db5b0f93bd1ab59 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1715288 +Auto-Submit: Raphael Kubo da Costa +Commit-Queue: Dominik Röttsches +Reviewed-by: Dominik Röttsches +Cr-Commit-Position: refs/heads/master@{#681760} +--- + +diff --git a/third_party/harfbuzz-ng/BUILD.gn b/third_party/harfbuzz-ng/BUILD.gn +index 37d8e33..72013eb1d 100644 +--- a/third_party/harfbuzz-ng/BUILD.gn ++++ b/third_party/harfbuzz-ng/BUILD.gn +@@ -16,7 +16,10 @@ + "//third_party:freetype_harfbuzz", + "//third_party/freetype:freetype_source", + ] +- packages = [ "harfbuzz" ] ++ packages = [ ++ "harfbuzz", ++ "harfbuzz-subset", ++ ] + } + } else { + config("harfbuzz_config") { diff --git a/chromium-77.0.3865.75-missing-limits.patch b/chromium-77.0.3865.75-missing-limits.patch new file mode 100644 index 0000000..3ac1770 --- /dev/null +++ b/chromium-77.0.3865.75-missing-limits.patch @@ -0,0 +1,28 @@ +From 5baf7df7f4c5971dab552897eeef94b194650ce5 Mon Sep 17 00:00:00 2001 +From: Dave Tapuska +Date: Mon, 12 Aug 2019 22:30:13 +0000 +Subject: [PATCH] Fix build failure due to missing include for std::numeric_limits usage. + +Some configurations fail to build, limits should have been included. + +BUG=992832 + +Change-Id: I894ba0543bfcef101c93259e39a31d12ae6d035c +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1747981 +Commit-Queue: Dave Tapuska +Reviewed-by: Mostyn Bramley-Moore +Cr-Commit-Position: refs/heads/master@{#686214} +--- + +diff --git a/third_party/blink/renderer/platform/exported/web_time_range.cc b/third_party/blink/renderer/platform/exported/web_time_range.cc +index 384566a..68d83e1 100644 +--- a/third_party/blink/renderer/platform/exported/web_time_range.cc ++++ b/third_party/blink/renderer/platform/exported/web_time_range.cc +@@ -31,6 +31,7 @@ + #include "third_party/blink/public/platform/web_time_range.h" + + #include ++#include + + namespace blink { + diff --git a/chromium-77.0.3865.75-no-zlib-mangle.patch b/chromium-77.0.3865.75-no-zlib-mangle.patch new file mode 100644 index 0000000..c32d226 --- /dev/null +++ b/chromium-77.0.3865.75-no-zlib-mangle.patch @@ -0,0 +1,22 @@ +diff -up chromium-77.0.3865.75/third_party/zlib/zconf.h.nozmangle chromium-77.0.3865.75/third_party/zlib/zconf.h +--- chromium-77.0.3865.75/third_party/zlib/zconf.h.nozmangle 2019-09-12 09:36:37.924086850 +0200 ++++ chromium-77.0.3865.75/third_party/zlib/zconf.h 2019-09-12 09:53:01.623958551 +0200 +@@ -9,18 +9,6 @@ + #define ZCONF_H + + /* +- * This library is also built as a part of AOSP, which does not need to include +- * chromeconf.h. This config does not want chromeconf.h, so it can set this +- * macro to opt out. While this works today, there's no guarantee that building +- * zlib outside of Chromium keeps working in the future. +- */ +-#if !defined(CHROMIUM_ZLIB_NO_CHROMECONF) +-/* This include does prefixing as below, but with an updated set of names. Also +- * sets up export macros in component builds. */ +-#include "chromeconf.h" +-#endif +- +-/* + * If you *really* need a unique prefix for all types and library functions, + * compile with -DZ_PREFIX. The "standard" zlib should be compiled without it. + * Even better than compiling with -DZ_PREFIX would be to use configure to set diff --git a/chromium-77.0.3865.75-unbundle-zlib.patch b/chromium-77.0.3865.75-unbundle-zlib.patch new file mode 100644 index 0000000..d6c45ad --- /dev/null +++ b/chromium-77.0.3865.75-unbundle-zlib.patch @@ -0,0 +1,25 @@ +From e1bbdec720a333937bd1b990ae0f7ee97db0d3b0 Mon Sep 17 00:00:00 2001 +From: Your Name +Date: Fri, 28 Jun 2019 15:56:23 +0000 +Subject: [PATCH] update zlib + +--- + third_party/perfetto/gn/BUILD.gn | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/third_party/perfetto/gn/BUILD.gn b/third_party/perfetto/gn/BUILD.gn +index c951f5f..297eee3 100644 +--- a/third_party/perfetto/gn/BUILD.gn ++++ b/third_party/perfetto/gn/BUILD.gn +@@ -200,7 +200,7 @@ group("zlib") { + "//buildtools:zlib", + ] + } else if (build_with_chromium) { +- public_configs = [ "//third_party/zlib:zlib_config" ] ++ public_configs = [ "//third_party/zlib:system_zlib" ] + public_deps = [ + "//third_party/zlib", + ] +-- +2.21.0 + diff --git a/chromium-77.0.3865.90-linked-hash-set.patch b/chromium-77.0.3865.90-linked-hash-set.patch new file mode 100644 index 0000000..f921f1a --- /dev/null +++ b/chromium-77.0.3865.90-linked-hash-set.patch @@ -0,0 +1,130 @@ +From 74138b9febd37eac0fc26b8efb110014a83a52c6 Mon Sep 17 00:00:00 2001 +From: Jeremy Roman +Date: Wed, 07 Aug 2019 13:26:48 +0000 +Subject: [PATCH] WTF: Make LinkedHashSet understand values for which memset initialization would be bad. + +Includes a unit test which fails before, and uses this to fix FontCacheKeyTraits. + +Bug: 980025 +Change-Id: If41f97444c7fd37b9b95d6dadaf3da5689079e9e +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1739948 +Reviewed-by: Kentaro Hara +Reviewed-by: Yutaka Hirano +Commit-Queue: Jeremy Roman +Cr-Commit-Position: refs/heads/master@{#684731} +--- + +diff --git a/third_party/blink/renderer/platform/fonts/font_cache_key.h b/third_party/blink/renderer/platform/fonts/font_cache_key.h +index 0efc8fb..90063cb 100644 +--- a/third_party/blink/renderer/platform/fonts/font_cache_key.h ++++ b/third_party/blink/renderer/platform/fonts/font_cache_key.h +@@ -133,6 +133,10 @@ + + struct FontCacheKeyTraits : WTF::SimpleClassHashTraits { + STATIC_ONLY(FontCacheKeyTraits); ++ ++ // std::string's empty state need not be zero in all implementations, ++ // and it is held within FontFaceCreationParams. ++ static const bool kEmptyValueIsZero = false; + }; + + } // namespace blink +diff --git a/third_party/blink/renderer/platform/wtf/linked_hash_set.h b/third_party/blink/renderer/platform/wtf/linked_hash_set.h +index b35b6e9..77e524c 100644 +--- a/third_party/blink/renderer/platform/wtf/linked_hash_set.h ++++ b/third_party/blink/renderer/platform/wtf/linked_hash_set.h +@@ -146,6 +146,11 @@ + LinkedHashSetNodeBase* next) + : LinkedHashSetNodeBase(prev, next), value_(value) {} + ++ LinkedHashSetNode(ValueArg&& value, ++ LinkedHashSetNodeBase* prev, ++ LinkedHashSetNodeBase* next) ++ : LinkedHashSetNodeBase(prev, next), value_(std::move(value)) {} ++ + LinkedHashSetNode(LinkedHashSetNode&& other) + : LinkedHashSetNodeBase(std::move(other)), + value_(std::move(other.value_)) {} +@@ -445,10 +450,13 @@ + + // The slot is empty when the next_ field is zero so it's safe to zero + // the backing. +- static const bool kEmptyValueIsZero = true; ++ static const bool kEmptyValueIsZero = ValueTraits::kEmptyValueIsZero; + + static const bool kHasIsEmptyValueFunction = true; + static bool IsEmptyValue(const Node& node) { return !node.next_; } ++ static Node EmptyValue() { ++ return Node(ValueTraits::EmptyValue(), nullptr, nullptr); ++ } + + static const int kDeletedValue = -1; + +diff --git a/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc b/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc +index 4c3f899..cd1be00 100644 +--- a/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc ++++ b/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc +@@ -487,6 +487,7 @@ + }; + + struct Complicated { ++ Complicated() : Complicated(0) {} + Complicated(int value) : simple_(value) { objects_constructed_++; } + + Complicated(const Complicated& other) : simple_(other.simple_) { +@@ -495,9 +496,6 @@ + + Simple simple_; + static int objects_constructed_; +- +- private: +- Complicated() = delete; + }; + + int Complicated::objects_constructed_ = 0; +@@ -731,4 +729,45 @@ + + } // anonymous namespace + ++// A unit type which objects to its state being initialized wrong. ++struct InvalidZeroValue { ++ InvalidZeroValue() = default; ++ InvalidZeroValue(WTF::HashTableDeletedValueType) : deleted_(true) {} ++ ~InvalidZeroValue() { CHECK(ok_); } ++ bool IsHashTableDeletedValue() const { return deleted_; } ++ ++ bool ok_ = true; ++ bool deleted_ = false; ++}; ++ ++template <> ++struct HashTraits : SimpleClassHashTraits { ++ static const bool kEmptyValueIsZero = false; ++}; ++ ++template <> ++struct DefaultHash { ++ struct Hash { ++ static unsigned GetHash(const InvalidZeroValue&) { return 0; } ++ static bool Equal(const InvalidZeroValue&, const InvalidZeroValue&) { ++ return true; ++ } ++ }; ++}; ++ ++template ++class ListOrLinkedHashSetInvalidZeroTest : public testing::Test {}; ++ ++using InvalidZeroValueSetTypes = ++ testing::Types, ++ ListHashSet, ++ LinkedHashSet>; ++TYPED_TEST_SUITE(ListOrLinkedHashSetInvalidZeroTest, InvalidZeroValueSetTypes); ++ ++TYPED_TEST(ListOrLinkedHashSetInvalidZeroTest, InvalidZeroValue) { ++ using Set = TypeParam; ++ Set set; ++ set.insert(InvalidZeroValue()); ++} ++ + } // namespace WTF diff --git a/chromium.spec b/chromium.spec index 81982e2..96c8f36 100644 --- a/chromium.spec +++ b/chromium.spec @@ -2,6 +2,13 @@ # https://fedoraproject.org/wiki/Changes/No_more_automagic_Python_bytecompilation_phase_2 %global _python_bytecompile_extra 1 +# Fancy build status, so we at least know, where we are.. +# %1 where +# %2 what +%global build_target() \ + export NINJA_STATUS="[%2:%f/%t] " ; \ + ../depot_tools/ninja -C '%1' -vvv '%2' + # This is faster when it works, but it doesn't always. %ifarch aarch64 %global use_jumbo 0 @@ -28,9 +35,9 @@ %global useapikeys 1 # Leave this alone, please. -%global target out/Release -%global headlesstarget out/Headless -%global remotingtarget out/Remoting +%global builddir out/Release +%global headlessbuilddir out/Headless +%global remotingbuilddir out/Remoting # Debuginfo packages aren't very useful here. If you need to debug # you should do a proper debug build (not implemented in this spec yet) @@ -45,7 +52,7 @@ %global crd_path %{_libdir}/chrome-remote-desktop # We don't want any libs in these directories to generate Provides -# Requires is trickier. +# Requires is trickier. # To generate this list, go into %%{buildroot}%%{chromium_path} and run # for i in `find . -name "*.so"`; do NAME=`basename -s .so $i`; printf "$NAME|"; done @@ -54,17 +61,15 @@ %global __provides_exclude_from %{chromium_path}/.*\\.so|%{chromium_path}/lib/.*\\.so|%{chromium_path}/lib/.*\\.so.* %if 0%{?rhel} == 7 -%global privlibs libevents_devices_x11|libgfx_x11|libevents_x|libgl_wrapper|libmemory_instrumentation|libdevice_vr_mojo_bindings|libdiscardable_memory_common|libui_base_ime_init|libnetwork_cpp_base|libos_crypt|libmessage_center|libmanager|libdevice_gamepad|libembedder|libGLESv2|libtracing|libskia|libgl_in_process_context|libapdu|libbluetooth|libviz_resource_format_utils|libmojo_mojom_bindings|libblink_platform|libmojom_modules_shared|libwebdata_common|libshell_dialogs|libresource_coordinator_public_mojom_blink|libgles2_utils|libgpu_ipc_service|libcaptive_portal|libvr_common|libgles2|libdisplay|libgfx_ipc_geometry|libcc_paint|libandroid_mojo_bindings_shared|libipc_mojom_shared|libffmpeg|liburl_matcher|libbindings|libservice|libwtf|libcommon|libleveldatabase|libnetwork_session_configurator|libaura|libcloud_policy_proto_generated_compile|libservice_manager_mojom_constants|libui_touch_selection|libmojo_base_lib|libservice_manager_cpp_types|libservice_manager_mojom_blink|libmojo_core_embedder|libblink_embedded_frame_sink_mojo_bindings_shared|libgesture_detection|liburl_ipc|libweb_feature_mojo_bindings_mojom|libscheduling_metrics|libresource_coordinator_cpp_features|libcc|libdiscardable_memory_client|libsessions|libblink_common|libipc|libvulkan_init|libblink_mojom_broadcastchannel_bindings_shared|libheadless_non_renderer|libcbor|libmojo_core_embedder_internal|libmojo_public_system_cpp|libmojom_core_shared|libgfx|libusb_shared|libtracing_mojom|libuser_manager|libnet|libwebgpu|libplatform_window_handler_libs|libmojo_base_mojom_shared|libui_base|libprinting|libcontent_service_mojom_shared|libstartup_tracing|libdevice_vr_mojo_bindings_blink|libraster|libsandbox|libv8_libbase|libevents|libui_base_idle|libgles2_implementation|libkeyed_service_content|libprefs|libVkLayer_core_validation|libchrome_features|libdiscardable_memory_service|libcapture_lib|libperfetto|libicui18n|libdomain_reliability|libweb_dialogs|libcc_animation|libbase|libtracing_cpp|libGLESv2|libEGL|libVkLayer_thread_safety|libmedia_gpu|libparsers|libservice_manager_cpp|liblearning_common|libdevices|libvulkan_wrapper|libservice_manager_mojom_shared|libgfx_switches|libkeycodes_x11|libweb_feature_mojo_bindings_mojom_shared|liburl|libmpris|libppapi_proxy|libmojo_base_mojom|libprotobuf_lite|libui_base_features|libdevice_vr|libwm_public|libcolor_space|libseccomp_bpf|libinterfaces_shared|libui_base_x|libicuuc|libwebview|libdevice_event_log|libVkLayer_object_lifetimes|libvulkan_x11|libproxy_config|libnetwork_cpp|libextras|libVkICD_mock_icd|libv8_libplatform|libresource_coordinator_public_mojom|libwm|libviews|libsuid_sandbox_client|libEGL|libcapture_base|libnative_theme|libcrcrypto|libmojo_public_system|libservice_manager_mojom_constants_shared|libui_accessibility_ax_mojom_blink|libplatform|libui_data_pack|libgfx_ipc_buffer_types|libclearkeycdm|libmetrics_cpp|libmojo_base_shared_typemap_traits|libx11_events_platform|libcrash_key|libclient|libblink_controller|libfido|libfreetype_harfbuzz|libmojo_mojom_bindings_shared|libaccessibility|libstub_window|libui_base_ime|libpolicy_component|libweb_bluetooth_mojo_bindings_shared|libmojo_core_ports|libsandbox_services|libstorage_common|libviz_vulkan_context_provider|libcontent_common_mojo_bindings_shared|libgamepad_mojom_blink|libkeyed_service_core|libmedia_mojo_services|libmojo_ime_lib|libblink_modules|libgcm|libsql|libgeometry_skia|libVkLayer_unique_objects|libweb_feature_mojo_bindings_mojom_blink|libui_base_ime_linux|libdisplay_types|libdevice_vr_mojo_bindings_shared|libcc_base|libtracing_mojom_shared|libmedia_blink|libcc_mojo_embedder|libpdfium|libevents_ozone_layout|libgfx_ipc_color|libgtkui|libpolicy_proto|libcodec|libgpu|libcontent_service_cpp|libmojom_mhtml_load_result_shared|libdisplay_util|libcontent_service_mojom|libbase_i18n|libservice_manager_mojom_constants_blink|libcompositor|libmojo_base_mojom_blink|libui_message_center_cpp|libsnapshot|libdbus_thread_linux|libtab_count_metrics|libpublic|libui_accessibility_ax_mojom|liblearning_impl|librange|libbrowser_ui_views|libcontent|libvr_base|libppapi_host|libservice_manager_mojom_traits|libgamepad_mojom|libcertificate_matching|libgfx_ipc|libgl_init|libVkLayer_stateless_validation|libshared_with_blink|libshared_memory_support|libevents_base|libnet_with_v8|libmedia_webrtc|libsurface|libcontent_public_common_mojo_bindings_shared|libaura_extra|libdevice_base|libonc|libcdm_manager|libmojom_platform_shared|libui_accessibility_ax_mojom_shared|libhost|libblink_features|libdevice_features|libmirroring_service|libdbus|libgeometry|libchromium_sqlite3|libgamepad_mojom_shared|libauthenticator_test_mojo_bindings_shared|libboringssl|libembedder_switches|libgfx_ipc_skia|libzygote|libmedia_session_cpp|libv8|libnetwork_service|libx11_window|libui_base_clipboard|libanimation|libmessage_support|libui_devtools|libgamepad_shared_typemap_traits|libfingerprint|libviz_common|libppapi_shared|libstorage_browser|libbindings_base|libservice_manager_mojom|libblink_core|libgin|libresource_coordinator_public_mojom_shared|libuser_prefs|libui_base_ime_types|libipc_mojom|libmidi|libmojo_cpp_platform|libcc_debug|libui_base_clipboard_types|libmedia|libfontconfig +%global privlibs libservice|libui_accessibility_ax_mojom_blink|libmojo_mojom_bindings_shared|libcolor_space|libui_base_ime_linux|libv8|libtracing_cpp|libprotobuf_lite|librange|libui_touch_selection|libgtkui|libraster|libstub_window|libmessage_center|libv8_libplatform|libtab_count_metrics|libclient|libaura|libresource_coordinator_public_mojom_shared|libbluetooth|libipc_mojom_shared|libdevice_event_log|libcc_debug|libnet_with_v8|libcc_paint|libwm_public|libnetwork_cpp_base|libservice_manager_mojom|libaura_extra|libmojo_public_system|libpdfium|libui_base_ime_init|libmpris|libcc|libservice_manager_cpp|libblink_mojom_broadcastchannel_bindings_shared|libinterfaces_shared|libservice_manager_cpp_types|libservice_manager_mojom_shared|libwm|libbase_i18n|libnetwork_session_configurator|libwebview|libplatform_window_handler_libs|libx11_events_platform|libmojo_cpp_platform|libandroid_mojo_bindings_shared|libpublic|libmirroring_service|libmedia_session_cpp|libblink_platform|libicui18n|libwebdata_common|libgin|libdevice_gamepad|libdevice_vr_mojo_bindings|libffmpeg|libmetrics_cpp|liburl_matcher|libpolicy_proto|libshared_memory_support|libparsers|libgles2_utils|libweb_feature_mojo_bindings_mojom|libui_base_idle|libmojo_public_system_cpp|libsuid_sandbox_client|libgfx_ipc_skia|libmojo_base_shared_typemap_traits|libcapture_lib|libgl_init|libblink_common|libcc_base|libmojo_base_mojom|libtracing_mojom_shared|libgpu_ipc_service|libui_accessibility_ax_mojom|libweb_feature_mojo_bindings_mojom_shared|libgfx_switches|libmedia_session_base_cpp|libmessage_support|libvulkan_init|libonc|libgpu|libmojom_modules_shared|libnative_theme|libgcm|libvr_base|libmojo_core_embedder_internal|libuser_prefs|libweb_bluetooth_mojo_bindings_shared|libos_crypt|libbrowser_ui_views|libembedder_switches|libcontent_service_mojom_shared|libsandbox|libvulkan_x11|libdevice_vr_test_mojo_bindings|libmojo_core_ports|libblink_core|libx11_window|libmojo_mojom_bindings|libipc|libmojo_base_mojom_blink|libgl_wrapper|libprinting|libgesture_detection|libdiscardable_memory_service|libmojom_core_shared|libviz_vulkan_context_provider|libpolicy_component|libdisplay|libvr_common|libdevice_vr_test_mojo_bindings_shared|libui_accessibility_ax_mojom_shared|libresource_coordinator_public_mojom|libvulkan_wrapper|libcrcrypto|libGLESv2|libv8_libbase|libcrash_key|libchrome_features|libdiscardable_memory_common|libbindings|libfreetype_harfbuzz|libcapture_base|libmojo_core_embedder|libprefs|libdevice_features|libresource_coordinator_cpp_features|libgfx_ipc_geometry|libgfx|libui_devtools|libweb_dialogs|libkeyed_service_core|libcontent|libgeometry_skia|libdisplay_util|libservice_manager_mojom_traits|libkeycodes_x11|libipc_mojom|libmojo_base_lib|libui_base_clipboard_types|libtracing_mojom|libmanager|libmedia_webrtc|libmedia_mojo_services|libcontent_public_common_mojo_bindings_shared|libgfx_ipc|libdiscardable_memory_client|libmemory_instrumentation|libui_base_ime|libskia|libgfx_ipc_color|libshell_dialogs|libEGL|libmedia_blink|libmedia_message_center|libblink_controller|libdevice_vr_mojo_bindings_shared|libmidi|libapdu|libseccomp_bpf|libboringssl|libcolor_utils|libdbus|libproxy_config|libblink_features|libmojom_platform_shared|libshared_with_blink|libui_data_pack|libevents_x|libleveldatabase|libevents_ozone_layout|libgfx_x11|libsurface|liblearning_impl|libgamepad_mojom|libcontent_service_cpp|libui_base|libzygote|libevents|libvulkan|libGLESv2|libEGL|libcertificate_matching|libusb_shared|libbindings_base|libgfx_ipc_buffer_types|libcodec|libmojom_mhtml_load_result_shared|libstorage_common|libdevice_vr|libviz_resource_format_utils|libservice_manager_mojom_blink|libgles2|libauthenticator_test_mojo_bindings_shared|libui_base_clipboard|libgamepad_mojom_shared|libdomain_reliability|libmenu|libblink_embedded_frame_sink_mojo_bindings_shared|libwebgpu|liburl_ipc|libnet|libmedia_gpu|libservice_manager_mojom_constants_shared|libaccessibility|libservice_manager_mojom_constants|libembedder|libgamepad_mojom_blink|libcc_animation|libplatform|libdevice_base|libanimation|libgamepad_shared_typemap_traits|libwtf|libthread_linux|libui_base_x|libcloud_policy_proto_generated_compile|libsql|libhost|libextras|libchromium_sqlite3|libnetwork_cpp|libmojo_base_mojom_shared|libgeometry|libppapi_proxy|libweb_feature_mojo_bindings_mojom_blink|libcontent_common_mojo_bindings_shared|libVkICD_mock_icd|libdevice_vr_mojo_bindings_blink|libservice_manager_mojom_constants_blink|libevents_base|liburl|libresource_coordinator_public_mojom_blink|libppapi_host|libppapi_shared|libmedia|libtracing|libsandbox_services|libcontent_service_mojom|libevents_devices_x11|libcompositor|libfingerprint|libuser_manager|libstorage_browser|libbase|libkeyed_service_content|libviews|libcaptive_portal|libcbor|libviz_common|libcc_mojo_embedder|libheadless_non_renderer|libui_base_features|libsnapshot|libcommon|libnetwork_service|liblearning_common|libblink_modules|libscheduling_metrics|libperfetto|libgles2_implementation|libsessions|libdevices|libstartup_tracing|libdisplay_types|libgl_in_process_context|libui_base_ime_types|libui_message_center_cpp|libclearkeycdm|libicuuc|libfido|libfontconfig %else -%global privlibs libevents_devices_x11|libgfx_x11|libevents_x|libgl_wrapper|libmemory_instrumentation|libdevice_vr_mojo_bindings|libdiscardable_memory_common|libui_base_ime_init|libnetwork_cpp_base|libos_crypt|libmessage_center|libmanager|libdevice_gamepad|libembedder|libGLESv2|libtracing|libskia|libgl_in_process_context|libapdu|libbluetooth|libviz_resource_format_utils|libmojo_mojom_bindings|libblink_platform|libmojom_modules_shared|libwebdata_common|libshell_dialogs|libresource_coordinator_public_mojom_blink|libgles2_utils|libgpu_ipc_service|libcaptive_portal|libvr_common|libgles2|libdisplay|libgfx_ipc_geometry|libcc_paint|libandroid_mojo_bindings_shared|libipc_mojom_shared|libffmpeg|liburl_matcher|libbindings|libservice|libwtf|libcommon|libleveldatabase|libnetwork_session_configurator|libaura|libcloud_policy_proto_generated_compile|libservice_manager_mojom_constants|libui_touch_selection|libmojo_base_lib|libservice_manager_cpp_types|libservice_manager_mojom_blink|libmojo_core_embedder|libblink_embedded_frame_sink_mojo_bindings_shared|libgesture_detection|liburl_ipc|libweb_feature_mojo_bindings_mojom|libscheduling_metrics|libresource_coordinator_cpp_features|libcc|libdiscardable_memory_client|libsessions|libblink_common|libipc|libvulkan_init|libblink_mojom_broadcastchannel_bindings_shared|libheadless_non_renderer|libcbor|libmojo_core_embedder_internal|libmojo_public_system_cpp|libmojom_core_shared|libgfx|libusb_shared|libtracing_mojom|libuser_manager|libnet|libwebgpu|libplatform_window_handler_libs|libmojo_base_mojom_shared|libui_base|libprinting|libcontent_service_mojom_shared|libstartup_tracing|libdevice_vr_mojo_bindings_blink|libraster|libsandbox|libv8_libbase|libevents|libui_base_idle|libgles2_implementation|libkeyed_service_content|libprefs|libVkLayer_core_validation|libchrome_features|libdiscardable_memory_service|libcapture_lib|libperfetto|libicui18n|libdomain_reliability|libweb_dialogs|libcc_animation|libbase|libtracing_cpp|libGLESv2|libEGL|libVkLayer_thread_safety|libmedia_gpu|libparsers|libservice_manager_cpp|liblearning_common|libdevices|libvulkan_wrapper|libservice_manager_mojom_shared|libgfx_switches|libkeycodes_x11|libweb_feature_mojo_bindings_mojom_shared|liburl|libmpris|libppapi_proxy|libmojo_base_mojom|libprotobuf_lite|libui_base_features|libdevice_vr|libwm_public|libcolor_space|libseccomp_bpf|libinterfaces_shared|libui_base_x|libicuuc|libwebview|libdevice_event_log|libVkLayer_object_lifetimes|libvulkan_x11|libproxy_config|libnetwork_cpp|libextras|libVkICD_mock_icd|libv8_libplatform|libresource_coordinator_public_mojom|libwm|libviews|libsuid_sandbox_client|libEGL|libcapture_base|libnative_theme|libcrcrypto|libmojo_public_system|libservice_manager_mojom_constants_shared|libui_accessibility_ax_mojom_blink|libplatform|libui_data_pack|libgfx_ipc_buffer_types|libclearkeycdm|libmetrics_cpp|libmojo_base_shared_typemap_traits|libx11_events_platform|libcrash_key|libclient|libblink_controller|libfido|libfreetype_harfbuzz|libmojo_mojom_bindings_shared|libaccessibility|libstub_window|libui_base_ime|libpolicy_component|libweb_bluetooth_mojo_bindings_shared|libmojo_core_ports|libsandbox_services|libstorage_common|libviz_vulkan_context_provider|libcontent_common_mojo_bindings_shared|libgamepad_mojom_blink|libkeyed_service_core|libmedia_mojo_services|libmojo_ime_lib|libblink_modules|libgcm|libsql|libgeometry_skia|libVkLayer_unique_objects|libweb_feature_mojo_bindings_mojom_blink|libui_base_ime_linux|libdisplay_types|libdevice_vr_mojo_bindings_shared|libcc_base|libtracing_mojom_shared|libmedia_blink|libcc_mojo_embedder|libpdfium|libevents_ozone_layout|libgfx_ipc_color|libgtkui|libpolicy_proto|libcodec|libgpu|libcontent_service_cpp|libmojom_mhtml_load_result_shared|libdisplay_util|libcontent_service_mojom|libbase_i18n|libservice_manager_mojom_constants_blink|libcompositor|libmojo_base_mojom_blink|libui_message_center_cpp|libsnapshot|libdbus_thread_linux|libtab_count_metrics|libpublic|libui_accessibility_ax_mojom|liblearning_impl|librange|libbrowser_ui_views|libcontent|libvr_base|libppapi_host|libservice_manager_mojom_traits|libgamepad_mojom|libcertificate_matching|libgfx_ipc|libgl_init|libVkLayer_stateless_validation|libshared_with_blink|libshared_memory_support|libevents_base|libnet_with_v8|libmedia_webrtc|libsurface|libcontent_public_common_mojo_bindings_shared|libaura_extra|libdevice_base|libonc|libcdm_manager|libmojom_platform_shared|libui_accessibility_ax_mojom_shared|libhost|libblink_features|libdevice_features|libmirroring_service|libdbus|libgeometry|libchromium_sqlite3|libgamepad_mojom_shared|libauthenticator_test_mojo_bindings_shared|libboringssl|libembedder_switches|libgfx_ipc_skia|libzygote|libmedia_session_cpp|libv8|libnetwork_service|libx11_window|libui_base_clipboard|libanimation|libmessage_support|libui_devtools|libgamepad_shared_typemap_traits|libfingerprint|libviz_common|libppapi_shared|libstorage_browser|libbindings_base|libservice_manager_mojom|libblink_core|libgin|libresource_coordinator_public_mojom_shared|libuser_prefs|libui_base_ime_types|libipc_mojom|libmidi|libmojo_cpp_platform|libcc_debug|libui_base_clipboard_types|libmedia +%global privlibs libservice|libui_accessibility_ax_mojom_blink|libmojo_mojom_bindings_shared|libcolor_space|libui_base_ime_linux|libv8|libtracing_cpp|libprotobuf_lite|librange|libui_touch_selection|libgtkui|libraster|libstub_window|libmessage_center|libv8_libplatform|libtab_count_metrics|libclient|libaura|libresource_coordinator_public_mojom_shared|libbluetooth|libipc_mojom_shared|libdevice_event_log|libcc_debug|libnet_with_v8|libcc_paint|libwm_public|libnetwork_cpp_base|libservice_manager_mojom|libaura_extra|libmojo_public_system|libpdfium|libui_base_ime_init|libmpris|libcc|libservice_manager_cpp|libblink_mojom_broadcastchannel_bindings_shared|libinterfaces_shared|libservice_manager_cpp_types|libservice_manager_mojom_shared|libwm|libbase_i18n|libnetwork_session_configurator|libwebview|libplatform_window_handler_libs|libx11_events_platform|libmojo_cpp_platform|libandroid_mojo_bindings_shared|libpublic|libmirroring_service|libmedia_session_cpp|libblink_platform|libicui18n|libwebdata_common|libgin|libdevice_gamepad|libdevice_vr_mojo_bindings|libffmpeg|libmetrics_cpp|liburl_matcher|libpolicy_proto|libshared_memory_support|libparsers|libgles2_utils|libweb_feature_mojo_bindings_mojom|libui_base_idle|libmojo_public_system_cpp|libsuid_sandbox_client|libgfx_ipc_skia|libmojo_base_shared_typemap_traits|libcapture_lib|libgl_init|libblink_common|libcc_base|libmojo_base_mojom|libtracing_mojom_shared|libgpu_ipc_service|libui_accessibility_ax_mojom|libweb_feature_mojo_bindings_mojom_shared|libgfx_switches|libmedia_session_base_cpp|libmessage_support|libvulkan_init|libonc|libgpu|libmojom_modules_shared|libnative_theme|libgcm|libvr_base|libmojo_core_embedder_internal|libuser_prefs|libweb_bluetooth_mojo_bindings_shared|libos_crypt|libbrowser_ui_views|libembedder_switches|libcontent_service_mojom_shared|libsandbox|libvulkan_x11|libdevice_vr_test_mojo_bindings|libmojo_core_ports|libblink_core|libx11_window|libmojo_mojom_bindings|libipc|libmojo_base_mojom_blink|libgl_wrapper|libprinting|libgesture_detection|libdiscardable_memory_service|libmojom_core_shared|libviz_vulkan_context_provider|libpolicy_component|libdisplay|libvr_common|libdevice_vr_test_mojo_bindings_shared|libui_accessibility_ax_mojom_shared|libresource_coordinator_public_mojom|libvulkan_wrapper|libcrcrypto|libGLESv2|libv8_libbase|libcrash_key|libchrome_features|libdiscardable_memory_common|libbindings|libfreetype_harfbuzz|libcapture_base|libmojo_core_embedder|libprefs|libdevice_features|libresource_coordinator_cpp_features|libgfx_ipc_geometry|libgfx|libui_devtools|libweb_dialogs|libkeyed_service_core|libcontent|libgeometry_skia|libdisplay_util|libservice_manager_mojom_traits|libkeycodes_x11|libipc_mojom|libmojo_base_lib|libui_base_clipboard_types|libtracing_mojom|libmanager|libmedia_webrtc|libmedia_mojo_services|libcontent_public_common_mojo_bindings_shared|libgfx_ipc|libdiscardable_memory_client|libmemory_instrumentation|libui_base_ime|libskia|libgfx_ipc_color|libshell_dialogs|libEGL|libmedia_blink|libmedia_message_center|libblink_controller|libdevice_vr_mojo_bindings_shared|libmidi|libapdu|libseccomp_bpf|libboringssl|libcolor_utils|libdbus|libproxy_config|libblink_features|libmojom_platform_shared|libshared_with_blink|libui_data_pack|libevents_x|libleveldatabase|libevents_ozone_layout|libgfx_x11|libsurface|liblearning_impl|libgamepad_mojom|libcontent_service_cpp|libui_base|libzygote|libevents|libvulkan|libGLESv2|libEGL|libcertificate_matching|libusb_shared|libbindings_base|libgfx_ipc_buffer_types|libcodec|libmojom_mhtml_load_result_shared|libstorage_common|libdevice_vr|libviz_resource_format_utils|libservice_manager_mojom_blink|libgles2|libauthenticator_test_mojo_bindings_shared|libui_base_clipboard|libgamepad_mojom_shared|libdomain_reliability|libmenu|libblink_embedded_frame_sink_mojo_bindings_shared|libwebgpu|liburl_ipc|libnet|libmedia_gpu|libservice_manager_mojom_constants_shared|libaccessibility|libservice_manager_mojom_constants|libembedder|libgamepad_mojom_blink|libcc_animation|libplatform|libdevice_base|libanimation|libgamepad_shared_typemap_traits|libwtf|libthread_linux|libui_base_x|libcloud_policy_proto_generated_compile|libsql|libhost|libextras|libchromium_sqlite3|libnetwork_cpp|libmojo_base_mojom_shared|libgeometry|libppapi_proxy|libweb_feature_mojo_bindings_mojom_blink|libcontent_common_mojo_bindings_shared|libVkICD_mock_icd|libdevice_vr_mojo_bindings_blink|libservice_manager_mojom_constants_blink|libevents_base|liburl|libresource_coordinator_public_mojom_blink|libppapi_host|libppapi_shared|libmedia|libtracing|libsandbox_services|libcontent_service_mojom|libevents_devices_x11|libcompositor|libfingerprint|libuser_manager|libstorage_browser|libbase|libkeyed_service_content|libviews|libcaptive_portal|libcbor|libviz_common|libcc_mojo_embedder|libheadless_non_renderer|libui_base_features|libsnapshot|libcommon|libnetwork_service|liblearning_common|libblink_modules|libscheduling_metrics|libperfetto|libgles2_implementation|libsessions|libdevices|libstartup_tracing|libdisplay_types|libgl_in_process_context|libui_base_ime_types|libui_message_center_cpp|libclearkeycdm|libicuuc|libfido %endif %global __requires_exclude ^(%{privlibs})\\.so* # If we build with shared on, then chrome-remote-desktop depends on chromium libs. # If we build with shared off, then users cannot swap out libffmpeg (and i686 gets a lot harder to build) %global shared 1 -# We should not need to turn this on. The app in the webstore _should_ work. -%global build_remoting_app 0 # AddressSanitizer mode # https://www.chromium.org/developers/testing/addresssanitizer @@ -118,9 +123,9 @@ BuildRequires: libicu-devel >= 5.4 %global bundlefontconfig 0 %endif -# Needs at least harfbuzz 2.3.0 now. -# 2019-03-13 -%if 0%{?fedora} < 30 +# Needs at least harfbuzz 2.4.0 now. +# 2019-09-13 +%if 0%{?fedora} < 31 %global bundleharfbuzz 1 %else %global bundleharfbuzz 0 @@ -133,13 +138,6 @@ BuildRequires: libicu-devel >= 5.4 %global pulseaudioapichange 0 %endif -# RHEL 8 doesn't have minizip -%if 0%{?rhel} == 8 -%global bundleminizip 1 -%else -%global bundleminizip 0 -%endif - ### Google API keys (see http://www.chromium.org/developers/how-tos/api-keys) ### Note: These are for Fedora use ONLY. ### For your own distribution, please get your own set of keys. @@ -156,156 +154,80 @@ BuildRequires: libicu-devel >= 5.4 %global chromoting_client_id %nil %endif -%global majorversion 76 +%global majorversion 77 %if %{freeworld} -Name: chromium%{chromium_channel}%{?freeworld:-libs-media-freeworld} -Summary: Chromium media libraries built with all possible codecs +Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} -Summary: A WebKit (Blink) powered web browser %endif -Version: %{majorversion}.0.3809.132 +Version: %{majorversion}.0.3865.90 Release: 3%{?dist} +Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) ### Chromium Fedora Patches ### -Patch0: chromium-67.0.3396.62-gcc5.patch -Patch1: chromium-45.0.2454.101-linux-path-max.patch -Patch2: chromium-55.0.2883.75-addrfix.patch -Patch3: chromium-72.0.3626.121-notest.patch -# Use libusb_interrupt_event_handler from current libusbx (1.0.21-0.1.git448584a) -Patch4: chromium-76.0.3809.100-libusb_interrupt_event_handler.patch -# Use PIE in the Linux sandbox (from openSUSE via Russian Fedora) -Patch6: chromium-70.0.3538.67-sandbox-pie.patch +Patch0: chromium-70.0.3538.67-sandbox-pie.patch # Use /etc/chromium for master_prefs -Patch7: chromium-68.0.3440.106-master-prefs-path.patch +Patch1: chromium-68.0.3440.106-master-prefs-path.patch # Use gn system files -Patch8: chromium-67.0.3396.62-gn-system.patch -# Fix issue where timespec is not defined when sys/stat.h is included. -Patch9: chromium-53.0.2785.92-boringssl-time-fix.patch -# I wouldn't have to do this if there was a standard way to append extra compiler flags -Patch10: chromium-63.0.3289.84-nullfix.patch -# Add explicit includedir for jpeglib.h -Patch11: chromium-54.0.2840.59-jpeg-include-dir.patch -# On i686, pass --no-keep-memory --reduce-memory-overheads to ld. -Patch12: chromium-59.0.3071.86-i686-ld-memory-tricks.patch +Patch2: chromium-67.0.3396.62-gn-system.patch # Revert https://chromium.googlesource.com/chromium/src/+/b794998819088f76b4cf44c8db6940240c563cf4%5E%21/#F0 # https://bugs.chromium.org/p/chromium/issues/detail?id=712737 # https://bugzilla.redhat.com/show_bug.cgi?id=1446851 -Patch13: chromium-58.0.3029.96-revert-b794998819088f76b4cf44c8db6940240c563cf4.patch -# Correctly compile the stdatomic.h in ffmpeg with gcc 4.8 -Patch14: chromium-64.0.3282.119-ffmpeg-stdatomic.patch -# Nacl can't die soon enough -Patch15: chromium-66.0.3359.117-system-clang.patch +Patch3: chromium-58.0.3029.96-revert-b794998819088f76b4cf44c8db6940240c563cf4.patch # Do not prefix libpng functions -Patch16: chromium-60.0.3112.78-no-libpng-prefix.patch +Patch4: chromium-60.0.3112.78-no-libpng-prefix.patch # Do not mangle libjpeg -Patch17: chromium-60.0.3112.78-jpeg-nomangle.patch +Patch5: chromium-60.0.3112.78-jpeg-nomangle.patch # Do not mangle zlib -Patch18: chromium-75.0.3770.80-no-zlib-mangle.patch -# Fix libavutil include pathing to find arch specific timer.h -# For some reason, this only fails on aarch64. No idea why. -Patch19: chromium-60.0.3112.113-libavutil-timer-include-path-fix.patch -# from gentoo -Patch20: chromium-61.0.3163.79-gcc-no-opt-safe-math.patch -# From gentoo -Patch21: chromium-72.0.3626.121-gcc5-r3.patch -# To use round with gcc, you need to #include -Patch22: chromium-65.0.3325.146-gcc-round-fix.patch -# Include proper headers to invoke memcpy() -Patch23: chromium-65.0.3325.146-memcpy-fix.patch -# ../../mojo/public/cpp/bindings/associated_interface_ptr_info.h:48:43: error: cannot convert 'const mojo::ScopedInterfaceEndpointHandle' to 'bool' in return -Patch24: chromium-68.0.3440.106-boolfix.patch -# From Debian -Patch25: chromium-71.0.3578.98-skia-aarch64-buildfix.patch +Patch6: chromium-77.0.3865.75-no-zlib-mangle.patch # Do not use unrar code, it is non-free -Patch27: chromium-73.0.3683.75-norar.patch -# Upstream GCC fixes -Patch28: chromium-66.0.3359.117-GCC-fully-declare-ConfigurationPolicyProvider.patch -# Add "Fedora" to the user agent string -Patch29: chromium-72.0.3626.121-fedora-user-agent.patch -# Try to fix version.py for Rawhide -Patch30: chromium-71.0.3578.98-py2-bootstrap.patch -# Fix default on redeclaration error -# https://chromium.googlesource.com/chromium/src/+/122692ccee62223f266a988c575ae687e3f4c056%5E%21/#F0 -Patch31: chromium-68.0.3440.106-fix-default-on-redeclaration.patch +Patch7: chromium-73.0.3683.75-norar.patch # Use Gentoo's Widevine hack # https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-widevine-r3.patch -Patch32: chromium-71.0.3578.98-widevine-r3.patch -# Do not require sysroot -# Forget about trying to make libc++ -# BUILD SANELY PLEASE -Patch33: chromium-69.0.3497.81-build-sanely-please.patch +Patch8: chromium-71.0.3578.98-widevine-r3.patch # Disable fontconfig cache magic that breaks remoting -Patch34: chromium-70.0.3538.67-disable-fontconfig-cache-magic.patch -# Fix aarch64 build against latest linux kernel headers -Patch35: chromium-70.0.3538.77-aarch64-arch-want-new-stat.patch +Patch9: chromium-70.0.3538.67-disable-fontconfig-cache-magic.patch # drop rsp clobber, which breaks gcc9 (thanks to Jeff Law) -Patch36: chromium-71.0.3578.98-gcc9-drop-rsp-clobber.patch +Patch10: chromium-71.0.3578.98-gcc9-drop-rsp-clobber.patch # Try to load widevine from other places -Patch37: chromium-widevine-other-locations.patch -# Disable -fno-delete-null-pointer-checks -Patch38: chromium-73.0.3683.75-disable-fno-delete-null-pointer-checks.patch -# Linux 5.2 defines SIOCGSTAMP in a slightly different way, so we need to teach chromium where to find it -Patch41: chromium-75.0.3770.80-SIOCGSTAMP.patch -# Revert https://chromium.googlesource.com/chromium/src/+/daff6b66faae53a0cefb88987c9ff4843629b728%5E%21/#F0 -# It might make clang happy but it breaks gcc. F*** clang. -Patch43: chromium-75.0.3770.80-revert-daff6b.patch -# Avoid pure virtual crash destroying RenderProcessUserData -# https://chromium.googlesource.com/chromium/src/+/cdf306db81efaaaa954487585d5a5a16205a5ebd%5E%21/ -Patch44: chromium-75.0.3770.80-pure-virtual-crash-fix.patch +Patch11: chromium-widevine-other-locations.patch +# Try to fix version.py for Rawhide +Patch12: chromium-71.0.3578.98-py2-bootstrap.patch +# Add "Fedora" to the user agent string +Patch13: chromium-77.0.3865.75-fedora-user-agent.patch # rename function to avoid conflict with rawhide glibc "gettid()" -Patch45: chromium-75.0.3770.80-grpc-gettid-fix.patch -# fix v8 compile with gcc -# https://chromium.googlesource.com/v8/v8/+/3b8c624bda58d05aea80dd9626cd550537d6ac3f%5E%21/#F1 -Patch46: chromium-75.0.3770.100-fix-v8-gcc.patch -# Fix Vulkan compilation with gcc -# https://chromium.googlesource.com/chromium/src/+/fdb3bb1f8c41d044a5b0cb80257a26dd3c8f83a3 -Patch47: chromium-76.0.3809.100-gcc-vulkan.patch -# https://chromium-review.googlesource.com/c/chromium/src/+/1645297 -Patch48: chromium-76.0.3809.100-gcc-cc-no-except.patch -# https://chromium.googlesource.com/chromium/src.git/+/502e6e42633d2571c8236c8649b031fe9915eb5b -Patch49: chromium-76.0.3809.100-gcc-net-fetcher.patch -# https://quiche.googlesource.com/quiche.git/+/9424add9d73432a794b7944790253213cce6dcb8 -Patch50: chromium-76.0.3809.100-quiche-compile-fix.patch -# https://chromium.googlesource.com/chromium/src/+/53bb5a463ee956c70230eaa5450022185d0ddc3c -Patch51: chromium-76.0.3809.100-throttling-dead-beef.patch -# https://chromium.googlesource.com/chromium/src/+/52b5ceac95b67491b1c71f0ef9a32b778bbbaa2e -Patch52: chromium-76.0.3809.132-gcc-ambigous-instantiation.patch -# https://chromium.googlesource.com/chromium/src.git/+/715cb38eac889625de0c429d2672562188b4107e -Patch53: chromium-76.0.3809.100-weak-ptr-no-except.patch -# https://chromium.googlesource.com/chromium/src.git/+/c6afbd59c997c2b64f11abdd1eaef71ae8ea2ddc -Patch54: chromium-76.0.3809.100-gcc-feature-policy-parser.patch -# https://chromium.googlesource.com/chromium/src.git/+/cf6d6b40d711fce93a24a2cf517fa3becdbae8bb -Patch55: chromium-76.0.3809.100-gcc-hasfraction-constexpr.patch -# https://chromium.googlesource.com/chromium/src.git/+/dcb55fb8f18abe5f43d260aa67b14b2dc996f992 -Patch56: chromium-76.0.3809.100-gcc-move-explicit-initialization.patch -# https://chromium.googlesource.com/chromium/src.git/+/7dc76c8d9f4cfbce7cf11424120aa6f6094916dc -Patch57: chromium-76.0.3809.100-gcc-initialization-order.patch -# https://chromium.googlesource.com/chromium/src.git/+/138904af5d6a4158ef4247fda816a8035e621e59 -Patch58: chromium-76.0.3809.100-gcc-history-move-noexcept.patch -# https://chromium.googlesource.com/chromium/src.git/+/bdc24128b75008743d819e298557a53205706e7c -Patch59: chromium-76.0.3809.100-gcc-accountinfo-move-noexcept.patch -# https://chromium.googlesource.com/chromium/src.git/+/5d7f227fa844e79568df64e495e7ef958c12d7b2 -Patch60: chromium-76.0.3809.100-gcc-themeservice-includes.patch +Patch50: chromium-75.0.3770.80-grpc-gettid-fix.patch # In GCC one can't use alignas() for exported classes # https://chromium.googlesource.com/chromium/src.git/+/8148fd96ae04a1150a9c6012634dcd2a7335f87a -Patch61: chromium-76.0.3809.100-gcc-no-alignas-and-export.patch +Patch51: chromium-76.0.3809.100-gcc-no-alignas-and-export.patch # Needs to be submitted.. -Patch62: chromium-76.0.3809.100-gcc-remoting-constexpr.patch +Patch52: chromium-76.0.3809.100-gcc-remoting-constexpr.patch # Needs to be submitted.. (ugly hack, needs to be added properly to GN files) -Patch63: chromium-76.0.3809.100-vtable-symbol-undefined.patch +Patch53: chromium-76.0.3809.100-vtable-symbol-undefined.patch # https://chromium.googlesource.com/chromium/src.git/+/3c9720245e440c4b7222f8348d2a2a3c25e098ae -Patch64: chromium-76.0.3809.132-certificate-transparency.patch +Patch54: chromium-77.0.3865.75-certificate-transparency.patch +# https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-unbundle-zlib.patch +Patch55: chromium-77.0.3865.75-unbundle-zlib.patch +# Needs to be submitted.. +Patch56: chromium-77.0.3865.75-gcc-include-memory.patch +# https://chromium.googlesource.com/chromium/src/+/6b633c4b14850df376d5cec571699018772f358e +Patch57: chromium-77.0.3865.75-base-gcc-no-alignas.patch +# https://chromium.googlesource.com/chromium/src/+/27e25336b8316ff3ec4e464058682ed85801fd06 +Patch58: chromium-77.0.3865.75-harfbuzz-subset.patch +# https://chromium.googlesource.com/chromium/src.git/+/f08cb0022527081c078e8b96062e6c9b4fbda151 +Patch59: chromium-77.0.3865.75-gcc-abstract-class.patch +# https://chromium.googlesource.com/chromium/src/+/5baf7df7f4c5971dab552897eeef94b194650ce5 +Patch60: chromium-77.0.3865.75-missing-limits.patch +# https://chromium.googlesource.com/chromium/src/+/74138b9febd37eac0fc26b8efb110014a83a52c6 +Patch61: chromium-77.0.3865.90-linked-hash-set.patch -# Apply these changes to work around EPEL7 compiler issues -Patch100: chromium-62.0.3202.62-kmaxskip-constexpr.patch # Use lstdc++ on EPEL7 only Patch101: chromium-75.0.3770.100-epel7-stdc++.patch # el7 only patch -Patch102: chromium-76.0.3809.100-el7-noexcept.patch +Patch102: chromium-77.0.3865.75-el7-noexcept.patch # Enable VAAPI support on Linux # NOTE: This patch will never land upstream @@ -318,7 +240,6 @@ Patch205: chromium-76.0.3809.100-pulse-api-change.patch # Apply these patches to work around EPEL8 issues Patch300: chromium-76.0.3809.132-rhel8-force-disable-use_gnome_keyring.patch -Patch301: chromium-76.0.3809.132-chromedriver-zlib-fix.patch # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ @@ -370,12 +291,15 @@ BuildRequires: flex BuildRequires: fontconfig-devel BuildRequires: GConf2-devel BuildRequires: glib2-devel +%if 0%{?fedora} <= 27 +BuildRequires: gnome-keyring-devel +%endif BuildRequires: glibc-devel BuildRequires: gperf %if 0%{?bundleharfbuzz} #nothing %else -BuildRequires: harfbuzz-devel >= 2.3.0 +BuildRequires: harfbuzz-devel >= 2.4.0 %endif BuildRequires: libatomic BuildRequires: libcap-devel @@ -391,15 +315,11 @@ BuildRequires: libusb-devel BuildRequires: libXdamage-devel BuildRequires: libXScrnSaver-devel BuildRequires: libXtst-devel -%if %{bundleminizip} -# We're using the bundle, baby. -%else %if 0%{?fedora} >= 30 BuildRequires: minizip-compat-devel %else BuildRequires: minizip-devel %endif -%endif # RHEL 7's nodejs is too old %if 0%{?fedora} BuildRequires: nodejs @@ -540,9 +460,9 @@ Source109: https://github.com/google/fonts/blob/master/apache/tinos/Tinos-BoldIt Source110: https://github.com/google/fonts/blob/master/apache/tinos/Tinos-Italic.ttf Source111: https://github.com/google/fonts/blob/master/apache/tinos/Tinos-Regular.ttf %else -BuildRequires: google-croscore-arimo-fonts -BuildRequires: google-croscore-cousine-fonts -BuildRequires: google-croscore-tinos-fonts +BuildRequires: google-croscore-arimo-fonts +BuildRequires: google-croscore-cousine-fonts +BuildRequires: google-croscore-tinos-fonts %endif %if 0%{?rhel} == 7 Source112: https://releases.pagure.org/lohit/lohit-gurmukhi-ttf-2.91.2.tar.gz @@ -633,7 +553,7 @@ Provides: bundled(freetype) = 2.9.3 %endif Provides: bundled(gperftools) = svn144 %if 0%{?bundleharfbuzz} -Provides: bundled(harfbuzz) = 2.3.0 +Provides: bundled(harfbuzz) = 2.4.0 %endif Provides: bundled(hunspell) = 1.6.0 Provides: bundled(iccjpeg) @@ -703,36 +623,18 @@ Provides: bundled(xdg-user-dirs) Requires(post): /usr/sbin/semanage Requires(post): /usr/sbin/restorecon -%if %{freeworld} -Provides: chromium-libs-media = %{version}-%{release} -Provides: chromium-libs-media%{_isa} = %{version}-%{release} -Requires: chromium-libs%{_isa} = %{version} -Requires(post): %{_sbindir}/update-alternatives -Requires(preun): %{_sbindir}/update-alternatives - -%description -Chromium media libraries built with all possible codecs. Chromium is an -open-source web browser, powered by WebKit (Blink). This package replaces -the default chromium-libs-media package, which is limited in what it -can include. -%else %description Chromium is an open-source web browser, powered by WebKit (Blink). -%endif %package common Summary: Files needed for both the headless_shell and full Chromium # Chromium needs an explicit Requires: minizip-compat # We put it here to cover headless too. -%if %{bundleminizip} -# Using the bundle. No Requires needed. -%else %if 0%{?fedora} >= 30 Requires: minizip-compat%{_isa} %else Requires: minizip%{_isa} %endif -%endif %description common %{summary}. @@ -749,6 +651,19 @@ Requires(preun): %{_sbindir}/update-alternatives Shared libraries used by chromium (and chrome-remote-desktop). %if %{freeworld} +%package -n chromium-libs-media-freeworld +Summary: Chromium media libraries built with all possible codecs +Provides: chromium-libs-media = %{version}-%{release} +Provides: chromium-libs-media%{_isa} = %{version}-%{release} +Requires: chromium-libs%{_isa} = %{version} +Requires(post): %{_sbindir}/update-alternatives +Requires(preun): %{_sbindir}/update-alternatives + +%description -n chromium-libs-media-freeworld +Chromium media libraries built with all possible codecs. Chromium is an +open-source web browser, powered by WebKit (Blink). This package replaces +the default chromium-libs-media package, which is limited in what it +can include. %else %package libs-media Summary: Shared libraries used by the chromium media subsystem @@ -807,80 +722,46 @@ udev. %setup -q -n chromium-%{version} ### Chromium Fedora Patches ### -%patch0 -p1 -b .gcc5 -%patch1 -p1 -b .pathmax -%patch2 -p1 -b .addrfix -%patch3 -p1 -b .notest -%patch4 -p1 -b .modern-libusbx -%patch6 -p1 -b .sandboxpie -%patch7 -p1 -b .etc -%patch8 -p1 -b .gnsystem -%patch9 -p1 -b .timefix -%patch10 -p1 -b .nullfix -%patch11 -p1 -b .jpegfix -%patch12 -p1 -b .ldmemory -%patch13 -p1 -b .revert -%patch14 -p1 -b .ffmpeg-stdatomic -%patch15 -p1 -b .system-clang -%patch16 -p1 -b .noprefix -%patch17 -p1 -b .nomangle -%if %{bundleminizip} -# Leave zlib mangling in place -%else -%patch18 -p1 -b .nozmangle +%patch0 -p1 -b .sandboxpie +%patch1 -p1 -b .etc +%patch2 -p1 -b .gnsystem +%patch3 -p1 -b .revert +%patch4 -p1 -b .nolibpngprefix +%patch5 -p1 -b .nolibjpegmangle +%patch6 -p1 -b .nozlibmangle +%patch7 -p1 -b .nounrar +%patch8 -p1 -b .widevine-hack +%patch9 -p1 -b .nofontconfigcache +%patch10 -p1 -b .gcc9 +%patch11 -p1 -b .widevine-other-locations +%patch12 -p1 -b .py2 + +# Short term fixes (usually gcc and backports) +%patch50 -p1 -b .gettid-fix +%patch51 -p1 -b .gcc-no-alignas-and-export +%patch52 -p1 -b .gcc-remoting-constexpr +%patch53 -p1 -b .vtable-symbol-undefined +%patch54 -p1 -b .certificate-transparency +%patch55 -p1 -b .unbundle-zlib +%patch56 -p1 -b .gcc-include-memory +%patch57 -p1 -b .base-gcc-no-alignas +%patch58 -p1 -b .harfbuzz-subset +%patch59 -p1 -b .gcc-abstract-class +%patch60 -p1 -b .missing-limits +%patch61 -p1 -b .linked-hash-set + +# Fedora branded user agent +%if 0%{?fedora} +%patch13 -p1 -b .fedora-user-agent %endif -%patch19 -p1 -b .pathfix -%patch20 -p1 -b .nogccoptmath -%patch21 -p1 -b .gcc5-r3 -%patch22 -p1 -b .gcc-round-fix -%patch23 -p1 -b .memcpyfix -%patch24 -p1 -b .boolfix -%patch25 -p1 -b .aarch64fix -%patch27 -p1 -b .nounrar -%patch28 -p1 -b .gcc-cpolicyprovider -%patch29 -p1 -b .fedora-user-agent -%patch30 -p1 -b .py2 -%patch31 -p1 -b .fix-default-redeclaration -%patch32 -p1 -b .wvhack -%patch33 -p1 -b .sanebuild -%patch34 -p1 -b .nofc -%patch35 -p1 -b .aarch64-new-stat -%patch36 -p1 -b .gcc9 -%patch37 -p1 -b .widevine-other-locations -%patch38 -p1 -b .disable-ndnpc -%patch41 -p1 -b .SIOCGSTAMP -%patch43 -p1 -b .revert-daff6b -%patch44 -p1 -b .pure-virtual-fix -%patch45 -p1 -b .gettid-fix -%patch46 -p1 -b .fix-v8-gcc -%patch47 -p1 -b .gcc-vulkan -%patch48 -p1 -b .gcc-cc-no-except -%patch49 -p1 -b .gcc-net-fetcher -%patch50 -p1 -b .quiche-compile-fix -%patch51 -p1 -b .throttling-dead-beef -%patch52 -p1 -b .gcc-ambigous-instantiation -%patch53 -p1 -b .weak-ptr-no-except -%patch54 -p1 -b .gcc-feature-policy-parser -%patch55 -p1 -b .gcc-hasfraction-constexpr -%patch56 -p1 -b .gcc-move-explicit-initialization -%patch57 -p1 -b .gcc-initialization-order -%patch58 -p1 -b .gcc-history-move-noexcept -%patch59 -p1 -b .gcc-accountinfo-move-noexcept -%patch60 -p1 -b .gcc-themeservice-includes -%patch61 -p1 -b .gcc-no-alignas-and-export -%patch62 -p1 -b .gcc-remoting-constexpr -%patch63 -p1 -b .vtable-symbol-undefined -%patch64 -p1 -b .certificate-transparency # EPEL specific patches %if 0%{?rhel} == 7 -%patch100 -p1 -b .kmaxskip %patch101 -p1 -b .epel7 %patch102 -p1 -b .el7-noexcept -# Revert patch58 because it's breaking the build on el7 -%patch58 -R -p1 %endif +# Feature specific patches %if %{use_vaapi} %patch202 -p1 -b .vaapi %ifarch i686 @@ -897,10 +778,6 @@ udev. %patch300 -p1 -b .disblegnomekeyring %endif -%if %{bundleminizip} -%patch301 -p1 -b .chromedriver-zlib -%endif - # Change shebang in all relevant files in this directory and all subdirectories # See `man find` for how the `-exec command {} +` syntax works find -type f -exec sed -iE '1s=^#! */usr/bin/\(python\|env python\)[23]\?=#!%{__python2}=' {} + @@ -1162,9 +1039,6 @@ build/linux/unbundle/remove_bundled_libraries.py \ %endif 'third_party/mesa' \ 'third_party/metrics_proto' \ -%if %{bundleminizip} - 'third_party/minizip' \ -%endif 'third_party/modp_b64' \ 'third_party/nasm' \ 'third_party/node' \ @@ -1173,7 +1047,9 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/openh264' \ %endif 'third_party/openscreen' \ + 'third_party/openscreen/src/third_party/tinycbor' \ 'third_party/opus' \ + 'third_party/one_euro_filter' \ 'third_party/ots' \ 'third_party/pdfium' \ 'third_party/pdfium/third_party/agg23' \ @@ -1218,6 +1094,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/swiftshader/third_party/subzero' \ 'third_party/swiftshader/third_party/llvm-subzero' \ 'third_party/swiftshader/third_party/llvm-7.0' \ + 'third_party/swiftshader/third_party/SPIRV-Headers' \ 'third_party/tcmalloc' \ 'third_party/test_fonts' \ 'third_party/usb_ids' \ @@ -1311,12 +1188,8 @@ build/linux/unbundle/replace_gn_files.py --system-libraries \ %else re2 \ %endif -%if %{bundleminizip} - yasm -%else yasm \ zlib -%endif # fix arm gcc sed -i 's|arm-linux-gnueabihf-|arm-linux-gnu-|g' build/toolchain/linux/BUILD.gn @@ -1341,18 +1214,18 @@ if python2 -c 'import google ; print google.__path__' 2> /dev/null ; then \ exit 1 ; \ fi -tools/gn/bootstrap/bootstrap.py -v "$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" -%{target}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{target} +tools/gn/bootstrap/bootstrap.py -v --no-clean --gn-gen-args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" +%{builddir}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{builddir} %if %{freeworld} # do not need to do headless gen %else %if %{build_headless} -%{target}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_HEADLESS_GN_DEFINES" %{headlesstarget} +%{builddir}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_HEADLESS_GN_DEFINES" %{headlessbuilddir} %endif %endif -%{target}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{remotingtarget} +%{builddir}/gn --script-executable=/usr/bin/python2 gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{remotingbuilddir} %if %{bundlelibusbx} # no hackity hack hack @@ -1372,33 +1245,31 @@ sed -i.orig -e 's/getenv("CHROME_VERSION_EXTRA")/"Fedora Project"/' $FILE . /opt/rh/devtoolset-%{dts_version}/enable %endif +# Decrease the debuginfo verbosity, so it compiles in koji +%ifarch %{ix86} +%global optflags %(echo %{optflags} | sed 's/-g /-g1 /') +%endif + +echo # Now do the full browser %if 0%{freeworld} -../depot_tools/ninja -C %{target} -vvv media +%build_target %{builddir} media %else %if %{build_headless} -# Do headless first. -../depot_tools/ninja -C %{headlesstarget} -vvv headless_shell +# Do headless first. +%build_target %{headlessbuilddir} headless_shell %endif -../depot_tools/ninja -C %{target} -vvv chrome chrome_sandbox chromedriver clear_key_cdm policy_templates +%build_target %{builddir} chrome +%build_target %{builddir} chrome_sandbox +%build_target %{builddir} chromedriver +%build_target %{builddir} clear_key_cdm +%build_target %{builddir} policy_templates # remote client -pushd remoting - -# ../../depot_tools/ninja -C ../%{target} -vvv remoting_me2me_host remoting_start_host remoting_it2me_native_messaging_host remoting_me2me_native_messaging_host remoting_native_messaging_manifests remoting_resources -../../depot_tools/ninja -C ../%{remotingtarget} -vvv remoting_all -%if 0%{?build_remoting_app} -GOOGLE_CLIENT_ID_REMOTING_IDENTITY_API=%{chromoting_client_id} ../../depot_tools/ninja -vv -C ../out/Release/ remoting_webapp +# ../../depot_tools/ninja -C ../%{builddir} -vvv remoting_me2me_host remoting_start_host remoting_it2me_native_messaging_host remoting_me2me_native_messaging_host remoting_native_messaging_manifests remoting_resources +%build_target %{remotingbuilddir} remoting_all %endif -popd - -%endif - -# Nuke nacl/pnacl bits at the end of the build -rm -rf out/Release/gen/sdk -rm -rf native_client/toolchain -rm -rf third_party/llvm-build/* %install rm -rf %{buildroot} @@ -1406,7 +1277,7 @@ rm -rf %{buildroot} %if 0%{freeworld} mkdir -p %{buildroot}%{chromium_path} -pushd %{target} +pushd %{builddir} cp -a libffmpeg.so* %{buildroot}%{chromium_path} cp -a libmedia.so* %{buildroot}%{chromium_path} mv %{buildroot}%{chromium_path}/libffmpeg.so{,.%{lsuffix}} @@ -1435,9 +1306,12 @@ sed -i "s|@@EXTRA_FLAGS@@|$EXTRA_FLAGS|g" %{buildroot}%{chromium_path}/%{chromiu ln -s %{chromium_path}/%{chromium_browser_channel}.sh %{buildroot}%{_bindir}/%{chromium_browser_channel} mkdir -p %{buildroot}%{_mandir}/man1/ -pushd %{target} +pushd %{builddir} cp -a *.pak locales resources icudtl.dat %{buildroot}%{chromium_path} # Reasonably sure we don't need this anymore. Chrome doesn't include it. +%if 0 +cp -a protoc pyproto %{buildroot}%{chromium_path} +%endif %ifarch x86_64 i686 aarch64 cp -a swiftshader %{buildroot}%{chromium_path} %endif @@ -1479,7 +1353,7 @@ popd %endif popd -pushd %{remotingtarget} +pushd %{remotingbuilddir} # See remoting/host/installer/linux/Makefile for logic cp -a remoting_native_messaging_host %{buildroot}%{crd_path}/native-messaging-host @@ -1515,12 +1389,8 @@ pushd %{buildroot}%{_sysconfdir}/pam.d/ ln -s system-auth chrome-remote-desktop popd -%if 0%{?build_remoting_app} -cp -a remoting_client_plugin_newlib.* %{buildroot}%{chromium_path} -%endif - %if %{build_headless} -pushd %{headlesstarget} +pushd %{headlessbuilddir} cp -a headless_lib.pak headless_shell %{buildroot}%{chromium_path} popd %endif @@ -1549,8 +1419,6 @@ mkdir -p %{buildroot}%{_datadir}/icons/hicolor/48x48/apps cp -a chrome/app/theme/chromium/product_logo_48.png %{buildroot}%{_datadir}/icons/hicolor/48x48/apps/%{chromium_browser_channel}.png mkdir -p %{buildroot}%{_datadir}/icons/hicolor/24x24/apps cp -a chrome/app/theme/chromium/product_logo_24.png %{buildroot}%{_datadir}/icons/hicolor/24x24/apps/%{chromium_browser_channel}.png -mkdir -p %{buildroot}%{_datadir}/icons/hicolor/22x22/apps -cp -a chrome/app/theme/chromium/product_logo_22.png %{buildroot}%{_datadir}/icons/hicolor/22x22/apps/%{chromium_browser_channel}.png # Install the master_preferences file mkdir -p %{buildroot}%{_sysconfdir}/%{name} @@ -1588,7 +1456,7 @@ if st and st.type == "link" then end %if %{freeworld} -%posttrans +%posttrans -n chromium-libs-media-freeworld %{_sbindir}/update-alternatives --install \ %{_libdir}/chromium-browser/libffmpeg.so libffmpeg.so \ %{_libdir}/chromium-browser/libffmpeg.so.freeworld 20 \ @@ -1599,7 +1467,7 @@ end --slave %{_libdir}/chromium-browser/libmedia.so.TOC libmedia.so.TOC \ %{_libdir}/chromium-browser/libmedia.so.TOC.freeworld -%preun +%preun -n chromium-libs-media-freeworld if [ $1 = 0 ]; then %{_sbindir}/alternatives --remove libffmpeg.so \ %{_libdir}/chromium-browser/libffmpeg.so.freeworld @@ -1660,6 +1528,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{chromium_path}/swiftshader/ %endif %dir %{chromium_path}/PepperFlash/ +%if 0 +%{chromium_path}/protoc +%endif # %%{chromium_path}/remoting_locales/ # %%{chromium_path}/pseudo_locales/ # %%{chromium_path}/plugins/ @@ -1769,9 +1640,6 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %{crd_path}/user-session %{_unitdir}/chrome-remote-desktop@.service /var/lib/chrome-remote-desktop/ -%if 0%{?build_remoting_app} -%{chromium_path}/remoting_client_plugin_newlib.* -%endif %files -n chromedriver %doc AUTHORS @@ -1783,7 +1651,7 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %if 0%{?shared} %if %{freeworld} -%files +%files -n chromium-libs-media-freeworld %else %files libs-media %endif @@ -1795,9 +1663,23 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog -* Fri Sep 6 2019 Tom Callaway - 76.0.3809.132-3 +* Wed Oct 9 2019 Tom Callaway - 77.0.3865.90-3 - spec cleanups and changes to make EPEL8 try to build -- freeworld changes from Nicolas Chauvet + +* Mon Sep 23 2019 Tomas Popela - 77.0.3865.90-2 +- Fix the icon +- Remove quite a few of downstream patches +- Fix the crashes by backporting an upstream bug +- Resolves: rhbz#1754179 + +* Thu Sep 19 2019 Tomas Popela - 77.0.3865.90-1 +- Update to 77.0.3865.90 + +* Mon Sep 16 2019 Tomas Popela - 77.0.3865.75-2 +- Update the list of private libraries + +* Fri Sep 13 2019 Tomas Popela - 77.0.3865.75-1 +- Update to 77.0.3865.75 * Tue Sep 03 2019 Tomas Popela - 76.0.3809.132-2 - Backport patch to fix certificate transparency diff --git a/sources b/sources index 2d38a7c..13e91e7 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-76.0.3809.132-clean.tar.xz) = fbc5f989945adfaffb9fb5199ccb988accdc53f41a03bba9c4ab3df8585b9267b1f34cd7a6ac487eff34ebb6e65865e32ceea4ad945eec30f871d8eed41f3e6f +SHA512 (chromium-77.0.3865.90-clean.tar.xz) = 696c5b01756fb720645512fc997f4c378001a01f74bb61fe2b27722b7a3c6bbef782af82ec5678e8fe7ff76285164a331b3a99eff9c5f605ff477b3795c968c4 From 9f278441f32523a894c98970d5fe0b8da3fa3572 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 9 Oct 2019 14:15:13 -0400 Subject: [PATCH 0587/1449] drop explicit BR: gnome-keyring-devel --- chromium.spec | 3 --- 1 file changed, 3 deletions(-) diff --git a/chromium.spec b/chromium.spec index 96c8f36..5d75c4c 100644 --- a/chromium.spec +++ b/chromium.spec @@ -291,9 +291,6 @@ BuildRequires: flex BuildRequires: fontconfig-devel BuildRequires: GConf2-devel BuildRequires: glib2-devel -%if 0%{?fedora} <= 27 -BuildRequires: gnome-keyring-devel -%endif BuildRequires: glibc-devel BuildRequires: gperf %if 0%{?bundleharfbuzz} From e29905e4b9a9c57e4dad84e2572912d2cf1a1e4b Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 10 Oct 2019 08:42:35 -0400 Subject: [PATCH 0588/1449] enable aarch64 for EPEL-8 --- chromium.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/chromium.spec b/chromium.spec index 5d75c4c..a5cf1bf 100644 --- a/chromium.spec +++ b/chromium.spec @@ -162,7 +162,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3865.90 -Release: 3%{?dist} +Release: 4%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -520,7 +520,7 @@ Provides: chromium-libs = %{version}-%{release} Obsoletes: chromium-libs <= %{version}-%{release} %endif -%if 0%{?rhel} +%if 0%{?rhel} == 7 ExclusiveArch: x86_64 i686 %else ExclusiveArch: x86_64 i686 aarch64 @@ -1660,6 +1660,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Thu Oct 10 2019 Tom Callaway - 77.0.3865.90-4 +- enable aarch64 for EPEL-8 + * Wed Oct 9 2019 Tom Callaway - 77.0.3865.90-3 - spec cleanups and changes to make EPEL8 try to build From 78eda85f26a14e5dceb6c667850cd6b930bf26bf Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 14 Oct 2019 08:23:03 +0200 Subject: [PATCH 0589/1449] Move another python script to python3 --- get_free_ffmpeg_source_files.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/get_free_ffmpeg_source_files.py b/get_free_ffmpeg_source_files.py index f2225ea..9081e90 100755 --- a/get_free_ffmpeg_source_files.py +++ b/get_free_ffmpeg_source_files.py @@ -1,4 +1,4 @@ -#!/usr/bin/python +#!/usr/bin/python3 # Copyright 2015 Tomas Popela # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the @@ -73,7 +73,7 @@ def parse_ffmpeg_gni_file(gni_path, arch_not_arm): sys.stderr.write("Something went wrong, no sources parsed!\n") sys.exit(1) - print ' '.join(output_sources) + print(' '.join(output_sources)) if __name__ == "__main__": From e67a39d749de4beb65ff66eb76d899da5e1de4b2 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 14 Oct 2019 13:51:46 +0200 Subject: [PATCH 0590/1449] Update to 77.0.3865.120 --- chromium.spec | 7 +++++-- sources | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/chromium.spec b/chromium.spec index 1542845..6083fe2 100644 --- a/chromium.spec +++ b/chromium.spec @@ -161,8 +161,8 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3865.90 -Release: 2%{?dist} +Version: %{majorversion}.0.3865.120 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1646,6 +1646,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Mon Oct 14 2019 Tomas Popela - 77.0.3865.120-1 +- Update to 77.0.3865.120 + * Mon Sep 23 2019 Tomas Popela - 77.0.3865.90-2 - Fix the icon - Remove quite a few of downstream patches diff --git a/sources b/sources index 13e91e7..978a610 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-77.0.3865.90-clean.tar.xz) = 696c5b01756fb720645512fc997f4c378001a01f74bb61fe2b27722b7a3c6bbef782af82ec5678e8fe7ff76285164a331b3a99eff9c5f605ff477b3795c968c4 +SHA512 (chromium-77.0.3865.120-clean.tar.xz) = 018702b53bafeb5fe8a297b8efb4805419555acb80a22b9f5f5fe2a3484f838f6ffa06655229466aca5a9de7f8b0497b9d387da4a1ba2dbc7c62ec3d1d0ffbb9 From c4d9ecbb70f00e1510c3b752a8443ea974b41e67 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 14 Oct 2019 08:23:03 +0200 Subject: [PATCH 0591/1449] Move another python script to python3 --- get_free_ffmpeg_source_files.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/get_free_ffmpeg_source_files.py b/get_free_ffmpeg_source_files.py index f2225ea..9081e90 100755 --- a/get_free_ffmpeg_source_files.py +++ b/get_free_ffmpeg_source_files.py @@ -1,4 +1,4 @@ -#!/usr/bin/python +#!/usr/bin/python3 # Copyright 2015 Tomas Popela # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the @@ -73,7 +73,7 @@ def parse_ffmpeg_gni_file(gni_path, arch_not_arm): sys.stderr.write("Something went wrong, no sources parsed!\n") sys.exit(1) - print ' '.join(output_sources) + print(' '.join(output_sources)) if __name__ == "__main__": From e7f437fd182ccfa4ac99976f5bb810b93a0cd998 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 14 Oct 2019 13:51:46 +0200 Subject: [PATCH 0592/1449] Update to 77.0.3865.120 --- chromium.spec | 7 +++++-- sources | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/chromium.spec b/chromium.spec index ff76b24..0b74407 100644 --- a/chromium.spec +++ b/chromium.spec @@ -157,8 +157,8 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3865.90 -Release: 2%{?dist} +Version: %{majorversion}.0.3865.120 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1635,6 +1635,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Mon Oct 14 2019 Tomas Popela - 77.0.3865.120-1 +- Update to 77.0.3865.120 + * Mon Sep 23 2019 Tomas Popela - 77.0.3865.90-2 - Fix the icon - Remove quite a few of downstream patches diff --git a/sources b/sources index 13e91e7..978a610 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-77.0.3865.90-clean.tar.xz) = 696c5b01756fb720645512fc997f4c378001a01f74bb61fe2b27722b7a3c6bbef782af82ec5678e8fe7ff76285164a331b3a99eff9c5f605ff477b3795c968c4 +SHA512 (chromium-77.0.3865.120-clean.tar.xz) = 018702b53bafeb5fe8a297b8efb4805419555acb80a22b9f5f5fe2a3484f838f6ffa06655229466aca5a9de7f8b0497b9d387da4a1ba2dbc7c62ec3d1d0ffbb9 From 3ffc8fd208d5e52f3d83f51404ba7f6905fc32b7 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 14 Oct 2019 08:23:03 +0200 Subject: [PATCH 0593/1449] Move another python script to python3 --- get_free_ffmpeg_source_files.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/get_free_ffmpeg_source_files.py b/get_free_ffmpeg_source_files.py index f2225ea..9081e90 100755 --- a/get_free_ffmpeg_source_files.py +++ b/get_free_ffmpeg_source_files.py @@ -1,4 +1,4 @@ -#!/usr/bin/python +#!/usr/bin/python3 # Copyright 2015 Tomas Popela # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the @@ -73,7 +73,7 @@ def parse_ffmpeg_gni_file(gni_path, arch_not_arm): sys.stderr.write("Something went wrong, no sources parsed!\n") sys.exit(1) - print ' '.join(output_sources) + print(' '.join(output_sources)) if __name__ == "__main__": From 286dfc8bb4be903f78be26124338c895fb3062be Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 14 Oct 2019 13:51:46 +0200 Subject: [PATCH 0594/1449] Update to 77.0.3865.120 --- chromium.spec | 7 +++++-- sources | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/chromium.spec b/chromium.spec index f962e02..163731f 100644 --- a/chromium.spec +++ b/chromium.spec @@ -157,8 +157,8 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3865.90 -Release: 2%{?dist} +Version: %{majorversion}.0.3865.120 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1635,6 +1635,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Mon Oct 14 2019 Tomas Popela - 77.0.3865.120-1 +- Update to 77.0.3865.120 + * Mon Sep 23 2019 Tomas Popela - 77.0.3865.90-2 - Fix the icon - Remove quite a few of downstream patches diff --git a/sources b/sources index 13e91e7..978a610 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-77.0.3865.90-clean.tar.xz) = 696c5b01756fb720645512fc997f4c378001a01f74bb61fe2b27722b7a3c6bbef782af82ec5678e8fe7ff76285164a331b3a99eff9c5f605ff477b3795c968c4 +SHA512 (chromium-77.0.3865.120-clean.tar.xz) = 018702b53bafeb5fe8a297b8efb4805419555acb80a22b9f5f5fe2a3484f838f6ffa06655229466aca5a9de7f8b0497b9d387da4a1ba2dbc7c62ec3d1d0ffbb9 From e968b763b501504ecda23508e616abf770a58f16 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 14 Oct 2019 08:23:03 +0200 Subject: [PATCH 0595/1449] Move another python script to python3 --- get_free_ffmpeg_source_files.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/get_free_ffmpeg_source_files.py b/get_free_ffmpeg_source_files.py index f2225ea..9081e90 100755 --- a/get_free_ffmpeg_source_files.py +++ b/get_free_ffmpeg_source_files.py @@ -1,4 +1,4 @@ -#!/usr/bin/python +#!/usr/bin/python3 # Copyright 2015 Tomas Popela # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the @@ -73,7 +73,7 @@ def parse_ffmpeg_gni_file(gni_path, arch_not_arm): sys.stderr.write("Something went wrong, no sources parsed!\n") sys.exit(1) - print ' '.join(output_sources) + print(' '.join(output_sources)) if __name__ == "__main__": From 0e5b248a5fe1a0ead7219af1ddeee7be477f0f89 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 14 Oct 2019 13:51:46 +0200 Subject: [PATCH 0596/1449] Update to 77.0.3865.120 --- chromium.spec | 7 +++++-- sources | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/chromium.spec b/chromium.spec index ff76b24..0b74407 100644 --- a/chromium.spec +++ b/chromium.spec @@ -157,8 +157,8 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3865.90 -Release: 2%{?dist} +Version: %{majorversion}.0.3865.120 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1635,6 +1635,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Mon Oct 14 2019 Tomas Popela - 77.0.3865.120-1 +- Update to 77.0.3865.120 + * Mon Sep 23 2019 Tomas Popela - 77.0.3865.90-2 - Fix the icon - Remove quite a few of downstream patches diff --git a/sources b/sources index 13e91e7..978a610 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-77.0.3865.90-clean.tar.xz) = 696c5b01756fb720645512fc997f4c378001a01f74bb61fe2b27722b7a3c6bbef782af82ec5678e8fe7ff76285164a331b3a99eff9c5f605ff477b3795c968c4 +SHA512 (chromium-77.0.3865.120-clean.tar.xz) = 018702b53bafeb5fe8a297b8efb4805419555acb80a22b9f5f5fe2a3484f838f6ffa06655229466aca5a9de7f8b0497b9d387da4a1ba2dbc7c62ec3d1d0ffbb9 From 41dc1261456500f7df39c08459a8273525a81cfc Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 14 Oct 2019 08:23:03 +0200 Subject: [PATCH 0597/1449] Move another python script to python3 --- get_free_ffmpeg_source_files.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/get_free_ffmpeg_source_files.py b/get_free_ffmpeg_source_files.py index f2225ea..9081e90 100755 --- a/get_free_ffmpeg_source_files.py +++ b/get_free_ffmpeg_source_files.py @@ -1,4 +1,4 @@ -#!/usr/bin/python +#!/usr/bin/python3 # Copyright 2015 Tomas Popela # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the @@ -73,7 +73,7 @@ def parse_ffmpeg_gni_file(gni_path, arch_not_arm): sys.stderr.write("Something went wrong, no sources parsed!\n") sys.exit(1) - print ' '.join(output_sources) + print(' '.join(output_sources)) if __name__ == "__main__": From 15f9caa3d7d923d43514cea73fe4da86f81a8071 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 14 Oct 2019 13:51:46 +0200 Subject: [PATCH 0598/1449] Update to 77.0.3865.120 --- chromium.spec | 7 +++++-- sources | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/chromium.spec b/chromium.spec index a1a519d..ed67491 100644 --- a/chromium.spec +++ b/chromium.spec @@ -157,8 +157,8 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3865.90 -Release: 2%{?dist} +Version: %{majorversion}.0.3865.120 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1635,6 +1635,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Mon Oct 14 2019 Tomas Popela - 77.0.3865.120-1 +- Update to 77.0.3865.120 + * Mon Sep 23 2019 Tomas Popela - 77.0.3865.90-2 - Fix the icon - Remove quite a few of downstream patches diff --git a/sources b/sources index 13e91e7..978a610 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-77.0.3865.90-clean.tar.xz) = 696c5b01756fb720645512fc997f4c378001a01f74bb61fe2b27722b7a3c6bbef782af82ec5678e8fe7ff76285164a331b3a99eff9c5f605ff477b3795c968c4 +SHA512 (chromium-77.0.3865.120-clean.tar.xz) = 018702b53bafeb5fe8a297b8efb4805419555acb80a22b9f5f5fe2a3484f838f6ffa06655229466aca5a9de7f8b0497b9d387da4a1ba2dbc7c62ec3d1d0ffbb9 From a5557a189a12aa8c2654787bd6dbb367211ccdfe Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 15 Oct 2019 17:09:08 -0400 Subject: [PATCH 0599/1449] fix node handling --- chromium.spec | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/chromium.spec b/chromium.spec index a5cf1bf..4f78c67 100644 --- a/chromium.spec +++ b/chromium.spec @@ -272,8 +272,8 @@ Source15: http://download.savannah.nongnu.org/releases/freebangfont/MuktiNarrow- Source16: https://github.com/web-platform-tests/wpt/raw/master/fonts/Ahem.ttf Source17: GardinerModBug.ttf Source18: GardinerModCat.ttf -# RHEL needs newer nodejs -%if 0%{?rhel} +# RHEL 7 needs newer nodejs +%if 0%{?rhel} == 7 Source19: node-v8.9.1-linux-x64.tar.gz %endif @@ -318,7 +318,9 @@ BuildRequires: minizip-compat-devel BuildRequires: minizip-devel %endif # RHEL 7's nodejs is too old -%if 0%{?fedora} +%if 0%{?rhel} == 7 +# Use bundled. +%else BuildRequires: nodejs %endif BuildRequires: nss-devel >= 3.26 @@ -894,7 +896,7 @@ CHROMIUM_HEADLESS_GN_DEFINES+=' use_cups=false use_dbus=false use_gio=false use_ CHROMIUM_HEADLESS_GN_DEFINES+=' use_pulseaudio=false use_udev=false' export CHROMIUM_HEADLESS_GN_DEFINES -%if 0%{?rhel} +%if 0%{?rhel} == 7 pushd third_party/node/linux tar xf %{SOURCE19} mv node-v8.9.1-linux-x64 node-linux-x64 From e4f20afdcc3e2ad605003c6cdc2ce7b0aaabc6af Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 15 Oct 2019 17:14:29 -0400 Subject: [PATCH 0600/1449] fix node handling for EPEL-8, merge changes from 120 --- chromium.spec | 10 ++++++++-- get_free_ffmpeg_source_files.py | 4 ++-- sources | 2 +- 3 files changed, 11 insertions(+), 5 deletions(-) diff --git a/chromium.spec b/chromium.spec index 4f78c67..a3aba32 100644 --- a/chromium.spec +++ b/chromium.spec @@ -161,8 +161,8 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3865.90 -Release: 4%{?dist} +Version: %{majorversion}.0.3865.120 +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -1662,6 +1662,12 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Tue Oct 15 2019 Tom Callaway - 77.0.3865.120-2 +- fix node handling for EPEL-8 + +* Mon Oct 14 2019 Tomas Popela - 77.0.3865.120-1 +- Update to 77.0.3865.120 + * Thu Oct 10 2019 Tom Callaway - 77.0.3865.90-4 - enable aarch64 for EPEL-8 diff --git a/get_free_ffmpeg_source_files.py b/get_free_ffmpeg_source_files.py index f2225ea..9081e90 100755 --- a/get_free_ffmpeg_source_files.py +++ b/get_free_ffmpeg_source_files.py @@ -1,4 +1,4 @@ -#!/usr/bin/python +#!/usr/bin/python3 # Copyright 2015 Tomas Popela # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the @@ -73,7 +73,7 @@ def parse_ffmpeg_gni_file(gni_path, arch_not_arm): sys.stderr.write("Something went wrong, no sources parsed!\n") sys.exit(1) - print ' '.join(output_sources) + print(' '.join(output_sources)) if __name__ == "__main__": diff --git a/sources b/sources index 13e91e7..978a610 100644 --- a/sources +++ b/sources @@ -17,4 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-77.0.3865.90-clean.tar.xz) = 696c5b01756fb720645512fc997f4c378001a01f74bb61fe2b27722b7a3c6bbef782af82ec5678e8fe7ff76285164a331b3a99eff9c5f605ff477b3795c968c4 +SHA512 (chromium-77.0.3865.120-clean.tar.xz) = 018702b53bafeb5fe8a297b8efb4805419555acb80a22b9f5f5fe2a3484f838f6ffa06655229466aca5a9de7f8b0497b9d387da4a1ba2dbc7c62ec3d1d0ffbb9 From 527091eafb9fc8e8a1a8ae1aac53d19a929156b5 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 15 Oct 2019 17:18:40 -0400 Subject: [PATCH 0601/1449] merge epel8 changes --- ...hel8-force-disable-use_gnome_keyring.patch | 10 +++ chromium.spec | 61 +++++++++++++------ 2 files changed, 53 insertions(+), 18 deletions(-) create mode 100644 chromium-76.0.3809.132-rhel8-force-disable-use_gnome_keyring.patch diff --git a/chromium-76.0.3809.132-rhel8-force-disable-use_gnome_keyring.patch b/chromium-76.0.3809.132-rhel8-force-disable-use_gnome_keyring.patch new file mode 100644 index 0000000..ff6c523 --- /dev/null +++ b/chromium-76.0.3809.132-rhel8-force-disable-use_gnome_keyring.patch @@ -0,0 +1,10 @@ +diff -up chromium-76.0.3809.132/components/os_crypt/features.gni.rhel8 chromium-76.0.3809.132/components/os_crypt/features.gni +--- chromium-76.0.3809.132/components/os_crypt/features.gni.rhel8 2019-09-06 17:08:01.242314126 -0400 ++++ chromium-76.0.3809.132/components/os_crypt/features.gni 2019-09-06 17:08:10.139134707 -0400 +@@ -7,5 +7,5 @@ import("//build/config/ui.gni") + declare_args() { + # Whether to use libgnome-keyring (deprecated by libsecret). + # See http://crbug.com/466975 and http://crbug.com/355223. +- use_gnome_keyring = is_desktop_linux && use_glib ++ use_gnome_keyring = false + } diff --git a/chromium.spec b/chromium.spec index 6083fe2..a3aba32 100644 --- a/chromium.spec +++ b/chromium.spec @@ -162,7 +162,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3865.120 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -198,7 +198,6 @@ Patch11: chromium-widevine-other-locations.patch Patch12: chromium-71.0.3578.98-py2-bootstrap.patch # Add "Fedora" to the user agent string Patch13: chromium-77.0.3865.75-fedora-user-agent.patch - # rename function to avoid conflict with rawhide glibc "gettid()" Patch50: chromium-75.0.3770.80-grpc-gettid-fix.patch # In GCC one can't use alignas() for exported classes @@ -239,6 +238,9 @@ Patch204: chromium-75.0.3770.80-vaapi-libva1-compatibility.patch # Pulseaudio changed the API a little in 12.99.1 Patch205: chromium-76.0.3809.100-pulse-api-change.patch +# Apply these patches to work around EPEL8 issues +Patch300: chromium-76.0.3809.132-rhel8-force-disable-use_gnome_keyring.patch + # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: # http://build.chromium.org/buildbot/official/ # For Chromium Fedora use chromium-latest.py --stable --ffmpegclean --ffmpegarm @@ -270,8 +272,8 @@ Source15: http://download.savannah.nongnu.org/releases/freebangfont/MuktiNarrow- Source16: https://github.com/web-platform-tests/wpt/raw/master/fonts/Ahem.ttf Source17: GardinerModBug.ttf Source18: GardinerModCat.ttf -# RHEL needs newer nodejs -%if 0%{?rhel} +# RHEL 7 needs newer nodejs +%if 0%{?rhel} == 7 Source19: node-v8.9.1-linux-x64.tar.gz %endif @@ -289,9 +291,6 @@ BuildRequires: flex BuildRequires: fontconfig-devel BuildRequires: GConf2-devel BuildRequires: glib2-devel -%if 0%{?fedora} <= 27 -BuildRequires: gnome-keyring-devel -%endif BuildRequires: glibc-devel BuildRequires: gperf %if 0%{?bundleharfbuzz} @@ -319,7 +318,9 @@ BuildRequires: minizip-compat-devel BuildRequires: minizip-devel %endif # RHEL 7's nodejs is too old -%if 0%{?fedora} +%if 0%{?rhel} == 7 +# Use bundled. +%else BuildRequires: nodejs %endif BuildRequires: nss-devel >= 3.26 @@ -434,7 +435,9 @@ BuildRequires: re2-devel >= 20160401 BuildRequires: speech-dispatcher-devel BuildRequires: yasm BuildRequires: zlib-devel +%if 0%{?rhel} < 8 BuildRequires: pkgconfig(gnome-keyring-1) +%endif # remote desktop needs this BuildRequires: pam-devel BuildRequires: systemd @@ -442,7 +445,7 @@ BuildRequires: systemd %if %{freeworld} # dont need fonts for this %else -%if 0%{?rhel} == 7 +%if 0%{?rhel} >= 7 Source100: https://github.com/google/fonts/blob/master/apache/arimo/Arimo-Bold.ttf Source101: https://github.com/google/fonts/blob/master/apache/arimo/Arimo-BoldItalic.ttf Source102: https://github.com/google/fonts/blob/master/apache/arimo/Arimo-Italic.ttf @@ -455,12 +458,15 @@ Source108: https://github.com/google/fonts/blob/master/apache/tinos/Tinos-Bold.t Source109: https://github.com/google/fonts/blob/master/apache/tinos/Tinos-BoldItalic.ttf Source110: https://github.com/google/fonts/blob/master/apache/tinos/Tinos-Italic.ttf Source111: https://github.com/google/fonts/blob/master/apache/tinos/Tinos-Regular.ttf -Source112: https://releases.pagure.org/lohit/lohit-gurmukhi-ttf-2.91.2.tar.gz -Source113: https://noto-website-2.storage.googleapis.com/pkgs/NotoSansCJKjp-hinted.zip %else BuildRequires: google-croscore-arimo-fonts BuildRequires: google-croscore-cousine-fonts -BuildRequires: google-croscore-tinos-fonts +BuildRequires: google-croscore-tinos-fonts +%endif +%if 0%{?rhel} == 7 +Source112: https://releases.pagure.org/lohit/lohit-gurmukhi-ttf-2.91.2.tar.gz +Source113: https://noto-website-2.storage.googleapis.com/pkgs/NotoSansCJKjp-hinted.zip +%else BuildRequires: google-noto-sans-cjk-jp-fonts BuildRequires: lohit-gurmukhi-fonts %endif @@ -516,7 +522,7 @@ Provides: chromium-libs = %{version}-%{release} Obsoletes: chromium-libs <= %{version}-%{release} %endif -%if 0%{?rhel} +%if 0%{?rhel} == 7 ExclusiveArch: x86_64 i686 %else ExclusiveArch: x86_64 i686 aarch64 @@ -767,6 +773,10 @@ udev. %patch205 -p1 -b .pulseaudioapichange %endif +%if 0%{?rhel} == 8 +%patch300 -p1 -b .disblegnomekeyring +%endif + # Change shebang in all relevant files in this directory and all subdirectories # See `man find` for how the `-exec command {} +` syntax works find -type f -exec sed -iE '1s=^#! */usr/bin/\(python\|env python\)[23]\?=#!%{__python2}=' {} + @@ -797,7 +807,7 @@ rm -rf MuktiNarrow0.94 cp %{SOURCE16} . cp %{SOURCE17} . cp %{SOURCE18} . -%if 0%{?rhel} == 7 +%if 0%{?rhel} >= 7 cp %{SOURCE100} . cp %{SOURCE101} . cp %{SOURCE102} . @@ -810,14 +820,17 @@ cp %{SOURCE108} . cp %{SOURCE109} . cp %{SOURCE110} . cp %{SOURCE111} . +%else +cp -a /usr/share/fonts/google-croscore/Arimo-*.ttf . +cp -a /usr/share/fonts/google-croscore/Cousine-*.ttf . +cp -a /usr/share/fonts/google-croscore/Tinos-*.ttf . +%endif +%if 0%{?rhel} == 7 tar xf %{SOURCE112} mv lohit-gurmukhi-ttf-2.91.2/Lohit-Gurmukhi.ttf . rm -rf lohit-gurmukhi-ttf-2.91.2 unzip %{SOURCE113} %else -cp -a /usr/share/fonts/google-croscore/Arimo-*.ttf . -cp -a /usr/share/fonts/google-croscore/Cousine-*.ttf . -cp -a /usr/share/fonts/google-croscore/Tinos-*.ttf . cp -a /usr/share/fonts/lohit-gurmukhi/Lohit-Gurmukhi.ttf . cp -a /usr/share/fonts/google-noto-cjk/NotoSansCJKjp-Regular.otf . %endif @@ -849,6 +862,9 @@ CHROMIUM_CORE_GN_DEFINES+=' target_cpu="arm64"' %if %{?use_jumbo} CHROMIUM_CORE_GN_DEFINES+=' use_jumbo_build=true jumbo_file_merge_limit=8' %endif +%if 0%{?rhel} == 8 +CHROMIUM_CORE_GN_DEFINES+=' use_gnome_keyring=false use_glib=true' +%endif export CHROMIUM_CORE_GN_DEFINES CHROMIUM_BROWSER_GN_DEFINES="" @@ -880,7 +896,7 @@ CHROMIUM_HEADLESS_GN_DEFINES+=' use_cups=false use_dbus=false use_gio=false use_ CHROMIUM_HEADLESS_GN_DEFINES+=' use_pulseaudio=false use_udev=false' export CHROMIUM_HEADLESS_GN_DEFINES -%if 0%{?rhel} +%if 0%{?rhel} == 7 pushd third_party/node/linux tar xf %{SOURCE19} mv node-v8.9.1-linux-x64 node-linux-x64 @@ -1646,9 +1662,18 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Tue Oct 15 2019 Tom Callaway - 77.0.3865.120-2 +- fix node handling for EPEL-8 + * Mon Oct 14 2019 Tomas Popela - 77.0.3865.120-1 - Update to 77.0.3865.120 +* Thu Oct 10 2019 Tom Callaway - 77.0.3865.90-4 +- enable aarch64 for EPEL-8 + +* Wed Oct 9 2019 Tom Callaway - 77.0.3865.90-3 +- spec cleanups and changes to make EPEL8 try to build + * Mon Sep 23 2019 Tomas Popela - 77.0.3865.90-2 - Fix the icon - Remove quite a few of downstream patches From 35b2732605020b2627e971ef38a6cb1cd0a4adf6 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 16 Oct 2019 09:40:03 -0400 Subject: [PATCH 0602/1449] silence outdated build noise (bz1745745) --- ...865.120-silence-outdated-build-noise.patch | 59 +++++++++++++++++++ chromium.spec | 8 ++- 2 files changed, 66 insertions(+), 1 deletion(-) create mode 100644 chromium-77.0.3865.120-silence-outdated-build-noise.patch diff --git a/chromium-77.0.3865.120-silence-outdated-build-noise.patch b/chromium-77.0.3865.120-silence-outdated-build-noise.patch new file mode 100644 index 0000000..22e1e78 --- /dev/null +++ b/chromium-77.0.3865.120-silence-outdated-build-noise.patch @@ -0,0 +1,59 @@ +From e79d9d0e06b825d2e62b38db03248c0e6ceec7e4 Mon Sep 17 00:00:00 2001 +From: Greg Thompson +Date: Sat, 5 Oct 2019 03:47:05 +0000 +Subject: [PATCH] Only detect outdated builds on Google Chrome. + +Prior to https://crrev.com/643864, they weren't detected for Chromium on +account of the way google_brand worked. That CL changed behavior and +accidentally started showing the outdated build bubble for Linux +Chromium users. + +BUG=1010592 + +Change-Id: I069ac36166e2ae720d58b1b9aa85605792be8684 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1841635 +Reviewed-by: Thomas Anderson +Reviewed-by: Lei Zhang +Commit-Queue: Greg Thompson +Cr-Commit-Position: refs/heads/master@{#703131} +--- + .../upgrade_detector/upgrade_detector_impl.cc | 12 ++++++++++++ + 1 file changed, 12 insertions(+) + +diff --git a/chrome/browser/upgrade_detector/upgrade_detector_impl.cc b/chrome/browser/upgrade_detector/upgrade_detector_impl.cc +index 432e3789eced0..07850fdf80cd7 100644 +--- a/chrome/browser/upgrade_detector/upgrade_detector_impl.cc ++++ b/chrome/browser/upgrade_detector/upgrade_detector_impl.cc +@@ -31,6 +31,7 @@ + #include "base/time/default_tick_clock.h" + #include "base/time/tick_clock.h" + #include "base/time/time.h" ++#include "build/branding_buildflags.h" + #include "chrome/browser/browser_process.h" + #include "chrome/browser/google/google_brand.h" + #include "chrome/common/chrome_switches.h" +@@ -74,6 +75,14 @@ constexpr base::TimeDelta kNotifyCycleTimeForTesting = + // The number of days after which we identify a build/install as outdated. + constexpr base::TimeDelta kOutdatedBuildAge = base::TimeDelta::FromDays(12 * 7); + ++constexpr bool ShouldDetectOutdatedBuilds() { ++#if BUILDFLAG(GOOGLE_CHROME_BRANDING) ++ return true; ++#else // BUILDFLAG(GOOGLE_CHROME_BRANDING) ++ return false; ++#endif // BUILDFLAG(GOOGLE_CHROME_BRANDING) ++} ++ + // Return the string that was passed as a value for the + // kCheckForUpdateIntervalSec switch. + std::string CmdLineInterval() { +@@ -403,6 +412,9 @@ bool UpgradeDetectorImpl::DetectOutdated + if (base::IsMachineExternallyManaged()) + return false; + #endif ++ ++ if (!ShouldDetectOutdatedBuilds()) ++ return false; + } + + base::Time network_time; diff --git a/chromium.spec b/chromium.spec index a3aba32..f6a5873 100644 --- a/chromium.spec +++ b/chromium.spec @@ -162,7 +162,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3865.120 -Release: 2%{?dist} +Release: 3%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -223,6 +223,8 @@ Patch59: chromium-77.0.3865.75-gcc-abstract-class.patch Patch60: chromium-77.0.3865.75-missing-limits.patch # https://chromium.googlesource.com/chromium/src/+/74138b9febd37eac0fc26b8efb110014a83a52c6 Patch61: chromium-77.0.3865.90-linked-hash-set.patch +# https://chromium.googlesource.com/chromium/src/+/e79d9d0e06b825d2e62b38db03248c0e6ceec7e4 +Patch62: chromium-77.0.3865.120-silence-outdated-build-noise.patch # Use lstdc++ on EPEL7 only Patch101: chromium-75.0.3770.100-epel7-stdc++.patch @@ -748,6 +750,7 @@ udev. %patch59 -p1 -b .gcc-abstract-class %patch60 -p1 -b .missing-limits %patch61 -p1 -b .linked-hash-set +%patch62 -p1 -b .silence-outdated-build-noise # Fedora branded user agent %if 0%{?fedora} @@ -1662,6 +1665,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Wed Oct 16 2019 Tom Callaway - 77.0.3865.120-3 +- silence outdated build noise (bz1745745) + * Tue Oct 15 2019 Tom Callaway - 77.0.3865.120-2 - fix node handling for EPEL-8 From 5cbc3dd135bf2caa310a6cfafd85a72f5b89f959 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 16 Oct 2019 11:03:38 -0400 Subject: [PATCH 0603/1449] upstream fix for zlib symbol exports with gcc --- ...5.120-gcc-fix-zlib-symbol-visibility.patch | 36 +++++++++++++++++++ chromium.spec | 9 ++++- 2 files changed, 44 insertions(+), 1 deletion(-) create mode 100644 chromium-77.0.3865.120-gcc-fix-zlib-symbol-visibility.patch diff --git a/chromium-77.0.3865.120-gcc-fix-zlib-symbol-visibility.patch b/chromium-77.0.3865.120-gcc-fix-zlib-symbol-visibility.patch new file mode 100644 index 0000000..47fd97d --- /dev/null +++ b/chromium-77.0.3865.120-gcc-fix-zlib-symbol-visibility.patch @@ -0,0 +1,36 @@ +From 9c3aed099b010a75594a0efd523774c4c9a5e3d2 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?J=C3=BCri=20Valdmann?= +Date: Tue, 15 Oct 2019 12:10:55 +0000 +Subject: [PATCH] GCC: Fix zlib symbol visibility macro + +GCC parses the function __attribute__ syntax a bit differently from Clang, +associating the attribute with the return type instead of the function if the +return type is a pointer. This leads to certain zlib symbols, such as +Cr_z_zError, to fail to be properly exported from the shared library. Fix by +using ZEXTERN instead of ZEXPORT for the attribute which works the same for both +GCC and Clang. + +Bug: 819294 +Change-Id: I5707d1b0627a503df08df9ac0bb65fda69453989 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1859788 +Reviewed-by: Thomas Anderson +Reviewed-by: Nico Weber +Commit-Queue: Nico Weber +Cr-Commit-Position: refs/heads/master@{#705917} +--- + third_party/zlib/chromeconf.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/third_party/zlib/chromeconf.h b/third_party/zlib/chromeconf.h +index e9aa3867d8512..666093d696a58 100644 +--- a/third_party/zlib/chromeconf.h ++++ b/third_party/zlib/chromeconf.h +@@ -13,7 +13,7 @@ + #define ZEXTERN __declspec(dllimport) + #endif + #elif defined(ZLIB_IMPLEMENTATION) +-#define ZEXPORT __attribute__((visibility("default"))) ++#define ZEXTERN __attribute__((visibility("default"))) + #endif + #endif + diff --git a/chromium.spec b/chromium.spec index f6a5873..8994527 100644 --- a/chromium.spec +++ b/chromium.spec @@ -162,7 +162,7 @@ Name: chromium%{chromium_channel}%{?freeworld:-freeworld} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3865.120 -Release: 3%{?dist} +Release: 4%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -225,6 +225,9 @@ Patch60: chromium-77.0.3865.75-missing-limits.patch Patch61: chromium-77.0.3865.90-linked-hash-set.patch # https://chromium.googlesource.com/chromium/src/+/e79d9d0e06b825d2e62b38db03248c0e6ceec7e4 Patch62: chromium-77.0.3865.120-silence-outdated-build-noise.patch +# https://chromium.googlesource.com/chromium/src/+/9c3aed099b010a75594a0efd523774c4c9a5e3d2 +Patch63: chromium-77.0.3865.120-gcc-fix-zlib-symbol-visibility.patch + # Use lstdc++ on EPEL7 only Patch101: chromium-75.0.3770.100-epel7-stdc++.patch @@ -751,6 +754,7 @@ udev. %patch60 -p1 -b .missing-limits %patch61 -p1 -b .linked-hash-set %patch62 -p1 -b .silence-outdated-build-noise +%patch63 -p1 -b .gcc-fix-zlib-symbol-visibility # Fedora branded user agent %if 0%{?fedora} @@ -1665,6 +1669,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Wed Oct 16 2019 Tom Callaway - 77.0.3865.120-4 +- upstream fix for zlib symbol exports with gcc + * Wed Oct 16 2019 Tom Callaway - 77.0.3865.120-3 - silence outdated build noise (bz1745745) From 6944f231efaf722f2d99cae67145721be2eb8826 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 23 Oct 2019 10:20:43 -0400 Subject: [PATCH 0604/1449] initial v78 commit, note, NOT READY FOR BUILD YET --- ...m-71.0.3578.98-gcc9-drop-rsp-clobber.patch | 12 - ...0.3809.100-gcc-no-alignas-and-export.patch | 14 - ...6.0.3809.100-vtable-symbol-undefined.patch | 11 - ...865.120-silence-outdated-build-noise.patch | 7 +- ...7.0.3865.75-certificate-transparency.patch | 539 ------------------ ...mium-77.0.3865.75-gcc-abstract-class.patch | 61 -- chromium-77.0.3865.75-harfbuzz-subset.patch | 49 -- chromium-77.0.3865.75-missing-limits.patch | 28 - chromium-77.0.3865.75-unbundle-zlib.patch | 25 - chromium-77.0.3865.90-linked-hash-set.patch | 130 ----- ...-78.0.3904.70-gcc-fix-invalid-pragma.patch | 16 + ....70-gcc-mark-CheckOpResult-constexpr.patch | 12 + ...m-78.0.3904.70-gcc9-drop-rsp-clobber.patch | 24 + chromium-78.0.3904.70-unbundle-zlib.patch | 12 + ...78.0.3904.70-vtable-symbol-undefined.patch | 11 + chromium.spec | 65 +-- sources | 1 + 17 files changed, 107 insertions(+), 910 deletions(-) delete mode 100644 chromium-71.0.3578.98-gcc9-drop-rsp-clobber.patch delete mode 100644 chromium-76.0.3809.100-gcc-no-alignas-and-export.patch delete mode 100644 chromium-76.0.3809.100-vtable-symbol-undefined.patch delete mode 100644 chromium-77.0.3865.75-certificate-transparency.patch delete mode 100644 chromium-77.0.3865.75-gcc-abstract-class.patch delete mode 100644 chromium-77.0.3865.75-harfbuzz-subset.patch delete mode 100644 chromium-77.0.3865.75-missing-limits.patch delete mode 100644 chromium-77.0.3865.75-unbundle-zlib.patch delete mode 100644 chromium-77.0.3865.90-linked-hash-set.patch create mode 100644 chromium-78.0.3904.70-gcc-fix-invalid-pragma.patch create mode 100644 chromium-78.0.3904.70-gcc-mark-CheckOpResult-constexpr.patch create mode 100644 chromium-78.0.3904.70-gcc9-drop-rsp-clobber.patch create mode 100644 chromium-78.0.3904.70-unbundle-zlib.patch create mode 100644 chromium-78.0.3904.70-vtable-symbol-undefined.patch diff --git a/chromium-71.0.3578.98-gcc9-drop-rsp-clobber.patch b/chromium-71.0.3578.98-gcc9-drop-rsp-clobber.patch deleted file mode 100644 index d071e81..0000000 --- a/chromium-71.0.3578.98-gcc9-drop-rsp-clobber.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-71.0.3578.98/third_party/tcmalloc/gperftools-2.0/chromium/src/base/linux_syscall_support.h.gcc9 chromium-71.0.3578.98/third_party/tcmalloc/gperftools-2.0/chromium/src/base/linux_syscall_support.h ---- chromium-71.0.3578.98/third_party/tcmalloc/gperftools-2.0/chromium/src/base/linux_syscall_support.h.gcc9 2019-01-08 13:27:25.193614727 -0500 -+++ chromium-71.0.3578.98/third_party/tcmalloc/gperftools-2.0/chromium/src/base/linux_syscall_support.h 2019-01-08 13:27:35.161392234 -0500 -@@ -1231,7 +1231,7 @@ typedef unsigned long int ulong; - "d"(LSS_SYSCALL_ARG(parent_tidptr)), - "r"(LSS_SYSCALL_ARG(newtls)), - "r"(LSS_SYSCALL_ARG(child_tidptr)) -- : "rsp", "memory", "r8", "r10", "r11", "rcx"); -+ : "memory", "r8", "r10", "r11", "rcx"); - } - LSS_RETURN(int, __res); - } diff --git a/chromium-76.0.3809.100-gcc-no-alignas-and-export.patch b/chromium-76.0.3809.100-gcc-no-alignas-and-export.patch deleted file mode 100644 index cc91d1e..0000000 --- a/chromium-76.0.3809.100-gcc-no-alignas-and-export.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -up chromium-76.0.3809.100/third_party/blink/renderer/core/css/css_property_value_set.h.gcc-no-alignas chromium-76.0.3809.100/third_party/blink/renderer/core/css/css_property_value_set.h ---- chromium-76.0.3809.100/third_party/blink/renderer/core/css/css_property_value_set.h.gcc-no-alignas 2019-08-09 16:48:13.000000000 +0200 -+++ chromium-76.0.3809.100/third_party/blink/renderer/core/css/css_property_value_set.h 2019-08-15 21:04:30.231532746 +0200 -@@ -176,8 +176,8 @@ class CSSLazyPropertyParser - DISALLOW_COPY_AND_ASSIGN(CSSLazyPropertyParser); - }; - --class CORE_EXPORT alignas(Member) alignas( -- CSSPropertyValueMetadata) ImmutableCSSPropertyValueSet -+class CORE_EXPORT ALIGNAS(alignof(Member)) -+ ALIGNAS(alignof(CSSPropertyValueMetadata)) ImmutableCSSPropertyValueSet - : public CSSPropertyValueSet { - public: - ImmutableCSSPropertyValueSet(const CSSPropertyValue*, diff --git a/chromium-76.0.3809.100-vtable-symbol-undefined.patch b/chromium-76.0.3809.100-vtable-symbol-undefined.patch deleted file mode 100644 index 64532df..0000000 --- a/chromium-76.0.3809.100-vtable-symbol-undefined.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-76.0.3809.100/net/quic/platform/impl/quic_default_proof_providers_impl.cc.vtable-symbol-undefined chromium-76.0.3809.100/net/quic/platform/impl/quic_default_proof_providers_impl.cc ---- chromium-76.0.3809.100/net/quic/platform/impl/quic_default_proof_providers_impl.cc.vtable-symbol-undefined 2019-08-20 21:21:24.901899270 +0200 -+++ chromium-76.0.3809.100/net/quic/platform/impl/quic_default_proof_providers_impl.cc 2019-08-20 21:19:30.361746211 +0200 -@@ -18,6 +18,7 @@ - #include "net/quic/crypto/proof_verifier_chromium.h" - #include "net/third_party/quiche/src/quic/platform/api/quic_flags.h" - #include "net/third_party/quiche/src/quic/platform/api/quic_ptr_util.h" -+#include "net/quic/platform/impl/quic_flags_impl.cc" - - DEFINE_QUIC_COMMAND_LINE_FLAG(std::string, - certificate_file, diff --git a/chromium-77.0.3865.120-silence-outdated-build-noise.patch b/chromium-77.0.3865.120-silence-outdated-build-noise.patch index 22e1e78..f2d4735 100644 --- a/chromium-77.0.3865.120-silence-outdated-build-noise.patch +++ b/chromium-77.0.3865.120-silence-outdated-build-noise.patch @@ -32,7 +32,7 @@ index 432e3789eced0..07850fdf80cd7 100644 #include "chrome/browser/browser_process.h" #include "chrome/browser/google/google_brand.h" #include "chrome/common/chrome_switches.h" -@@ -74,6 +75,14 @@ constexpr base::TimeDelta kNotifyCycleTimeForTesting = +@@ -73,6 +74,14 @@ constexpr base::TimeDelta kNotifyCycleTimeForTesting = // The number of days after which we identify a build/install as outdated. constexpr base::TimeDelta kOutdatedBuildAge = base::TimeDelta::FromDays(12 * 7); @@ -47,13 +47,14 @@ index 432e3789eced0..07850fdf80cd7 100644 // Return the string that was passed as a value for the // kCheckForUpdateIntervalSec switch. std::string CmdLineInterval() { -@@ -403,6 +412,9 @@ bool UpgradeDetectorImpl::DetectOutdated - if (base::IsMachineExternallyManaged()) +@@ -406,6 +415,10 @@ bool UpgradeDetectorImpl::DetectOutdated return false; + } #endif + + if (!ShouldDetectOutdatedBuilds()) + return false; ++ } base::Time network_time; diff --git a/chromium-77.0.3865.75-certificate-transparency.patch b/chromium-77.0.3865.75-certificate-transparency.patch deleted file mode 100644 index 82e2958..0000000 --- a/chromium-77.0.3865.75-certificate-transparency.patch +++ /dev/null @@ -1,539 +0,0 @@ -diff -up chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager_browsertest.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager_browsertest.cc ---- chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager_browsertest.cc.certificate-transparency 2019-09-12 16:09:52.818635106 +0200 -+++ chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager_browsertest.cc 2019-09-12 16:11:07.662562005 +0200 -@@ -21,6 +21,7 @@ - #include "components/version_info/version_info.h" - #include "content/public/common/content_switches.h" - #include "content/public/common/user_agent.h" -+#include "services/network/public/cpp/network_service_buildflags.h" - #include "services/network/public/mojom/network_context.mojom.h" - #include "services/network/public/mojom/network_service.mojom.h" - #include "testing/gmock/include/gmock/gmock.h" -@@ -356,3 +357,55 @@ IN_PROC_BROWSER_TEST_P(SystemNetworkCont - INSTANTIATE_TEST_SUITE_P(, - SystemNetworkContextManagerFreezeQUICUaBrowsertest, - ::testing::Values(true, false)); -+ -+class SystemNetworkContextManagerCertificateTransparencyBrowsertest -+ : public SystemNetworkContextManagerBrowsertest, -+ public testing::WithParamInterface> { -+ public: -+ SystemNetworkContextManagerCertificateTransparencyBrowsertest() { -+ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( -+ GetParam()); -+ } -+ ~SystemNetworkContextManagerCertificateTransparencyBrowsertest() override { -+ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( -+ base::nullopt); -+ } -+}; -+ -+#if BUILDFLAG(IS_CT_SUPPORTED) -+IN_PROC_BROWSER_TEST_P( -+ SystemNetworkContextManagerCertificateTransparencyBrowsertest, -+ CertificateTransparencyConfig) { -+ network::mojom::NetworkContextParamsPtr context_params = -+ g_browser_process->system_network_context_manager() -+ ->CreateDefaultNetworkContextParams(); -+ -+ const bool kDefault = -+#if defined(GOOGLE_CHROME_BUILD) && defined(OFFICIAL_BUILD) && \ -+ !defined(OS_ANDROID) -+ true; -+#else -+ false; -+#endif -+ -+ EXPECT_EQ(GetParam().value_or(kDefault), -+ context_params->enforce_chrome_ct_policy); -+ EXPECT_NE(GetParam().value_or(kDefault), context_params->ct_logs.empty()); -+ -+ if (GetParam().value_or(kDefault)) { -+ bool has_google_log = false; -+ bool has_disqualified_log = false; -+ for (const auto& ct_log : context_params->ct_logs) { -+ has_google_log |= ct_log->operated_by_google; -+ has_disqualified_log |= ct_log->disqualified_at.has_value(); -+ } -+ EXPECT_TRUE(has_google_log); -+ EXPECT_TRUE(has_disqualified_log); -+ } -+} -+#endif -+ -+INSTANTIATE_TEST_SUITE_P( -+ , -+ SystemNetworkContextManagerCertificateTransparencyBrowsertest, -+ ::testing::Values(base::nullopt, true, false)); -diff -up chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.cc ---- chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.cc.certificate-transparency 2019-09-09 23:55:09.000000000 +0200 -+++ chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.cc 2019-09-12 16:09:52.819635118 +0200 -@@ -4,11 +4,13 @@ - - #include "chrome/browser/net/system_network_context_manager.h" - -+#include - #include - #include - #include - - #include "base/bind.h" -+#include "base/build_time.h" - #include "base/command_line.h" - #include "base/feature_list.h" - #include "base/logging.h" -@@ -50,6 +52,7 @@ - #include "content/public/common/mime_handler_view_mode.h" - #include "content/public/common/service_names.mojom.h" - #include "content/public/common/user_agent.h" -+#include "crypto/sha2.h" - #include "mojo/public/cpp/bindings/associated_interface_ptr.h" - #include "net/dns/public/util.h" - #include "net/net_buildflags.h" -@@ -79,6 +82,20 @@ - - namespace { - -+constexpr bool kCertificateTransparencyEnabled = -+#if defined(GOOGLE_CHROME_BUILD) && defined(OFFICIAL_BUILD) && \ -+ !defined(OS_ANDROID) -+ // Certificate Transparency is only enabled if: -+ // - Desktop (!OS_ANDROID); OS_IOS does not use this file -+ // - base::GetBuildTime() is deterministic to the source (OFFICIAL_BUILD) -+ // - The build in reliably updatable (GOOGLE_CHROME_BUILD) -+ true; -+#else -+ false; -+#endif -+ -+bool g_enable_certificate_transparency = kCertificateTransparencyEnabled; -+ - // The global instance of the SystemNetworkContextmanager. - SystemNetworkContextManager* g_system_network_context_manager = nullptr; - -@@ -658,14 +675,35 @@ SystemNetworkContextManager::CreateDefau - - bool http_09_on_non_default_ports_enabled = false; - #if !defined(OS_ANDROID) -- // CT is only enabled on Desktop platforms for now. -- network_context_params->enforce_chrome_ct_policy = true; -- for (const auto& ct_log : certificate_transparency::GetKnownLogs()) { -- // TODO(rsleevi): https://crbug.com/702062 - Remove this duplication. -- network::mojom::CTLogInfoPtr log_info = network::mojom::CTLogInfo::New(); -- log_info->public_key = std::string(ct_log.log_key, ct_log.log_key_length); -- log_info->name = ct_log.log_name; -- network_context_params->ct_logs.push_back(std::move(log_info)); -+ -+ if (g_enable_certificate_transparency) { -+ network_context_params->enforce_chrome_ct_policy = true; -+ network_context_params->ct_log_update_time = base::GetBuildTime(); -+ -+ std::vector operated_by_google_logs = -+ certificate_transparency::GetLogsOperatedByGoogle(); -+ std::vector> disqualified_logs = -+ certificate_transparency::GetDisqualifiedLogs(); -+ for (const auto& ct_log : certificate_transparency::GetKnownLogs()) { -+ // TODO(rsleevi): https://crbug.com/702062 - Remove this duplication. -+ network::mojom::CTLogInfoPtr log_info = network::mojom::CTLogInfo::New(); -+ log_info->public_key = std::string(ct_log.log_key, ct_log.log_key_length); -+ log_info->name = ct_log.log_name; -+ -+ std::string log_id = crypto::SHA256HashString(log_info->public_key); -+ log_info->operated_by_google = -+ std::binary_search(std::begin(operated_by_google_logs), -+ std::end(operated_by_google_logs), log_id); -+ auto it = std::lower_bound( -+ std::begin(disqualified_logs), std::end(disqualified_logs), log_id, -+ [](const auto& disqualified_log, const std::string& log_id) { -+ return disqualified_log.first < log_id; -+ }); -+ if (it != std::end(disqualified_logs) && it->first == log_id) { -+ log_info->disqualified_at = it->second; -+ } -+ network_context_params->ct_logs.push_back(std::move(log_info)); -+ } - } - - const base::Value* value = -@@ -723,6 +761,12 @@ SystemNetworkContextManager::GetHttpAuth - return CreateHttpAuthDynamicParams(g_browser_process->local_state()); - } - -+void SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( -+ base::Optional enabled) { -+ g_enable_certificate_transparency = -+ enabled.value_or(kCertificateTransparencyEnabled); -+} -+ - network::mojom::NetworkContextParamsPtr - SystemNetworkContextManager::CreateNetworkContextParams() { - // TODO(mmenke): Set up parameters here (in memory cookie store, etc). -diff -up chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.h.certificate-transparency chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.h ---- chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.h.certificate-transparency 2019-09-09 23:55:09.000000000 +0200 -+++ chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.h 2019-09-12 16:09:52.819635118 +0200 -@@ -139,6 +139,12 @@ class SystemNetworkContextManager { - static network::mojom::HttpAuthDynamicParamsPtr - GetHttpAuthDynamicParamsForTesting(); - -+ // Enables Certificate Transparency and enforcing the Chrome Certificate -+ // Transparency Policy. For test use only. Use base::nullopt_t to reset to -+ // the default state. -+ static void SetEnableCertificateTransparencyForTesting( -+ base::Optional enabled); -+ - private: - class URLLoaderFactoryForSystem; - -diff -up chromium-77.0.3865.75/chrome/browser/policy/policy_browsertest.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/policy/policy_browsertest.cc ---- chromium-77.0.3865.75/chrome/browser/policy/policy_browsertest.cc.certificate-transparency 2019-09-09 23:55:10.000000000 +0200 -+++ chromium-77.0.3865.75/chrome/browser/policy/policy_browsertest.cc 2019-09-12 16:09:52.820635131 +0200 -@@ -4836,7 +4836,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, - browser()->tab_strip_model()->GetActiveWebContents()->GetTitle()); - } - --IN_PROC_BROWSER_TEST_F(PolicyTest, -+IN_PROC_BROWSER_TEST_F(CertificateTransparencyPolicyTest, - CertificateTransparencyEnforcementDisabledForCas) { - net::EmbeddedTestServer https_server_ok(net::EmbeddedTestServer::TYPE_HTTPS); - https_server_ok.SetSSLConfig(net::EmbeddedTestServer::CERT_OK); -diff -up chromium-77.0.3865.75/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc ---- chromium-77.0.3865.75/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc.certificate-transparency 2019-09-09 23:55:10.000000000 +0200 -+++ chromium-77.0.3865.75/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc 2019-09-12 16:09:52.821635143 +0200 -@@ -8,6 +8,7 @@ - #include "base/callback.h" - #include "base/run_loop.h" - #include "base/test/scoped_feature_list.h" -+#include "chrome/browser/net/system_network_context_manager.h" - #include "chrome/browser/profiles/profile.h" - #include "chrome/browser/ssl/cert_verifier_browser_test.h" - #include "chrome/browser/ui/browser.h" -@@ -27,7 +28,17 @@ namespace { - // received by a server. - class ExpectCTBrowserTest : public CertVerifierBrowserTest { - public: -- ExpectCTBrowserTest() : CertVerifierBrowserTest() {} -+ ExpectCTBrowserTest() : CertVerifierBrowserTest() { -+ // Expect-CT reporting depends on actually enforcing Certificate -+ // Transparency. -+ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( -+ true); -+ } -+ -+ ~ExpectCTBrowserTest() override { -+ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( -+ base::nullopt); -+ } - - void SetUpOnMainThread() override { - run_loop_ = std::make_unique(); -diff -up chromium-77.0.3865.75/chrome/browser/ssl/security_state_tab_helper_browsertest.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/ssl/security_state_tab_helper_browsertest.cc ---- chromium-77.0.3865.75/chrome/browser/ssl/security_state_tab_helper_browsertest.cc.certificate-transparency 2019-09-09 23:55:10.000000000 +0200 -+++ chromium-77.0.3865.75/chrome/browser/ssl/security_state_tab_helper_browsertest.cc 2019-09-12 16:09:52.821635143 +0200 -@@ -433,6 +433,13 @@ class SecurityStateTabHelperTest : publi - SecurityStateTabHelperTest() - : https_server_(net::EmbeddedTestServer::TYPE_HTTPS) { - https_server_.ServeFilesFromSourceDirectory(GetChromeTestDataDir()); -+ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( -+ true); -+ } -+ -+ ~SecurityStateTabHelperTest() override { -+ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( -+ base::nullopt); - } - - void SetUpOnMainThread() override { -diff -up chromium-77.0.3865.75/chrome/browser/ssl/ssl_browsertest.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/ssl/ssl_browsertest.cc ---- chromium-77.0.3865.75/chrome/browser/ssl/ssl_browsertest.cc.certificate-transparency 2019-09-09 23:55:10.000000000 +0200 -+++ chromium-77.0.3865.75/chrome/browser/ssl/ssl_browsertest.cc 2019-09-12 16:09:52.822635155 +0200 -@@ -1853,8 +1853,14 @@ class CertificateTransparencySSLUITest : - public: - CertificateTransparencySSLUITest() - : CertVerifierBrowserTest(), -- https_server_(net::EmbeddedTestServer::TYPE_HTTPS) {} -- ~CertificateTransparencySSLUITest() override {} -+ https_server_(net::EmbeddedTestServer::TYPE_HTTPS) { -+ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( -+ true); -+ } -+ ~CertificateTransparencySSLUITest() override { -+ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( -+ base::nullopt); -+ } - - void SetUpOnMainThread() override { - CertVerifierBrowserTest::SetUpOnMainThread(); -diff -up chromium-77.0.3865.75/components/certificate_transparency/chrome_ct_policy_enforcer.h.certificate-transparency chromium-77.0.3865.75/components/certificate_transparency/chrome_ct_policy_enforcer.h ---- chromium-77.0.3865.75/components/certificate_transparency/chrome_ct_policy_enforcer.h.certificate-transparency 2019-09-09 23:55:14.000000000 +0200 -+++ chromium-77.0.3865.75/components/certificate_transparency/chrome_ct_policy_enforcer.h 2019-09-12 16:09:52.823635168 +0200 -@@ -45,6 +45,19 @@ class ChromeCTPolicyEnforcer : public ne - - void SetClockForTesting(const base::Clock* clock) { clock_ = clock; } - -+ // TODO(https://crbug.com/999240): These are exposed to allow end-to-end -+ // testing by higher layers (i.e. that the ChromeCTPolicyEnforcer is -+ // correctly constructed). When either this issue or https://crbug.com/848277 -+ // are fixed, the configuration can be tested independently, and these can -+ // be removed. -+ const std::vector& operated_by_google_logs_for_testing() { -+ return operated_by_google_logs_; -+ } -+ const std::vector>& -+ disqualified_logs_for_testing() { -+ return disqualified_logs_; -+ } -+ - private: - // Returns true if the log identified by |log_id| (the SHA-256 hash of the - // log's DER-encoded SPKI) has been disqualified, and sets -diff -up chromium-77.0.3865.75/services/network/network_context.cc.certificate-transparency chromium-77.0.3865.75/services/network/network_context.cc ---- chromium-77.0.3865.75/services/network/network_context.cc.certificate-transparency 2019-09-09 23:55:22.000000000 +0200 -+++ chromium-77.0.3865.75/services/network/network_context.cc 2019-09-12 16:09:52.823635168 +0200 -@@ -36,6 +36,7 @@ - #include "components/prefs/pref_registry_simple.h" - #include "components/prefs/pref_service.h" - #include "components/prefs/pref_service_factory.h" -+#include "crypto/sha2.h" - #include "mojo/public/cpp/bindings/strong_binding.h" - #include "net/base/layered_network_delegate.h" - #include "net/base/load_flags.h" -@@ -1877,16 +1878,6 @@ URLRequestContextOwner NetworkContext::A - base::FeatureList::IsEnabled(features::kNetworkErrorLogging)); - #endif // BUILDFLAG(ENABLE_REPORTING) - --#if BUILDFLAG(IS_CT_SUPPORTED) -- if (params_->enforce_chrome_ct_policy) { -- builder->set_ct_policy_enforcer( -- std::make_unique( -- base::GetBuildTime(), -- certificate_transparency::GetDisqualifiedLogs(), -- certificate_transparency::GetLogsOperatedByGoogle())); -- } --#endif // BUILDFLAG(IS_CT_SUPPORTED) -- - net::HttpNetworkSession::Params session_params; - bool is_quic_force_disabled = false; - if (network_service_ && network_service_->quic_disabled()) -@@ -1936,8 +1927,20 @@ URLRequestContextOwner NetworkContext::A - - #if BUILDFLAG(IS_CT_SUPPORTED) - std::vector> ct_logs; -+ std::vector> disqualified_logs; -+ std::vector operated_by_google_logs; -+ - if (!params_->ct_logs.empty()) { - for (const auto& log : params_->ct_logs) { -+ if (log->operated_by_google || log->disqualified_at) { -+ std::string log_id = crypto::SHA256HashString(log->public_key); -+ if (log->operated_by_google) -+ operated_by_google_logs.push_back(log_id); -+ if (log->disqualified_at) { -+ disqualified_logs.push_back( -+ std::make_pair(log_id, log->disqualified_at.value())); -+ } -+ } - scoped_refptr log_verifier = - net::CTLogVerifier::Create(log->public_key, log->name); - if (!log_verifier) { -@@ -1950,6 +1953,17 @@ URLRequestContextOwner NetworkContext::A - ct_verifier->AddLogs(ct_logs); - builder->set_ct_verifier(std::move(ct_verifier)); - } -+ -+ if (params_->enforce_chrome_ct_policy) { -+ std::sort(std::begin(operated_by_google_logs), -+ std::end(operated_by_google_logs)); -+ std::sort(std::begin(disqualified_logs), std::end(disqualified_logs)); -+ -+ builder->set_ct_policy_enforcer( -+ std::make_unique( -+ params_->ct_log_update_time, disqualified_logs, -+ operated_by_google_logs)); -+ } - #endif // BUILDFLAG(IS_CT_SUPPORTED) - - const base::CommandLine* command_line = -diff -up chromium-77.0.3865.75/services/network/network_context_unittest.cc.certificate-transparency chromium-77.0.3865.75/services/network/network_context_unittest.cc ---- chromium-77.0.3865.75/services/network/network_context_unittest.cc.certificate-transparency 2019-09-09 23:55:22.000000000 +0200 -+++ chromium-77.0.3865.75/services/network/network_context_unittest.cc 2019-09-12 16:13:10.479056669 +0200 -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style license that can be - // found in the LICENSE file. - -+#include - #include - #include - #include -@@ -38,10 +39,12 @@ - #include "base/threading/thread_task_runner_handle.h" - #include "base/time/default_clock.h" - #include "base/time/default_tick_clock.h" -+#include "base/time/time.h" - #include "build/build_config.h" - #include "components/network_session_configurator/browser/network_session_configurator.h" - #include "components/network_session_configurator/common/network_switches.h" - #include "components/prefs/testing_pref_service.h" -+#include "crypto/sha2.h" - #include "mojo/public/cpp/bindings/remote.h" - #include "mojo/public/cpp/bindings/self_owned_receiver.h" - #include "mojo/public/cpp/system/data_pipe_utils.h" -@@ -115,6 +118,11 @@ - #include "url/scheme_host_port.h" - #include "url/url_constants.h" - -+#if BUILDFLAG(IS_CT_SUPPORTED) -+#include "components/certificate_transparency/chrome_ct_policy_enforcer.h" -+#include "services/network/public/mojom/ct_log_info.mojom.h" -+#endif -+ - #if !BUILDFLAG(DISABLE_FTP_SUPPORT) - #include "net/ftp/ftp_auth_cache.h" - #endif // !BUILDFLAG(DISABLE_FTP_SUPPORT) -@@ -5958,6 +5966,72 @@ TEST_F(NetworkContextSplitCacheTest, - true /* was_cached */, true /* is_navigation */); - } - -+#if BUILDFLAG(IS_CT_SUPPORTED) -+TEST_F(NetworkContextTest, CertificateTransparencyConfig) { -+ mojom::NetworkContextParamsPtr params = CreateContextParams(); -+ params->enforce_chrome_ct_policy = true; -+ params->ct_log_update_time = base::Time::Now(); -+ -+ // The log public keys do not matter for the test, so invalid keys are used. -+ // However, because the log IDs are derived from the SHA-256 hash of the log -+ // key, the log keys are generated such that qualified logs are in the form -+ // of four digits (e.g. "0000", "1111"), while disqualified logs are in the -+ // form of four letters (e.g. "AAAA", "BBBB"). -+ -+ for (int i = 0; i < 6; ++i) { -+ network::mojom::CTLogInfoPtr log_info = network::mojom::CTLogInfo::New(); -+ // Shift to ASCII '0' (0x30) -+ log_info->public_key = std::string(4, 0x30 + static_cast(i)); -+ log_info->name = std::string(4, 0x30 + static_cast(i)); -+ log_info->operated_by_google = i % 2; -+ -+ params->ct_logs.push_back(std::move(log_info)); -+ } -+ for (int i = 0; i < 3; ++i) { -+ network::mojom::CTLogInfoPtr log_info = network::mojom::CTLogInfo::New(); -+ // Shift to ASCII 'A' (0x41) -+ log_info->public_key = std::string(4, 0x41 + static_cast(i)); -+ log_info->name = std::string(4, 0x41 + static_cast(i)); -+ log_info->operated_by_google = false; -+ log_info->disqualified_at = base::TimeDelta::FromSeconds(i); -+ -+ params->ct_logs.push_back(std::move(log_info)); -+ } -+ std::unique_ptr network_context = -+ CreateContextWithParams(std::move(params)); -+ -+ net::CTPolicyEnforcer* request_enforcer = -+ network_context->url_request_context()->ct_policy_enforcer(); -+ ASSERT_TRUE(request_enforcer); -+ -+ // Completely unsafe if |enforce_chrome_ct_policy| is false. -+ certificate_transparency::ChromeCTPolicyEnforcer* policy_enforcer = -+ reinterpret_cast( -+ request_enforcer); -+ -+ EXPECT_TRUE(std::is_sorted( -+ policy_enforcer->operated_by_google_logs_for_testing().begin(), -+ policy_enforcer->operated_by_google_logs_for_testing().end())); -+ EXPECT_TRUE( -+ std::is_sorted(policy_enforcer->disqualified_logs_for_testing().begin(), -+ policy_enforcer->disqualified_logs_for_testing().end())); -+ -+ EXPECT_THAT( -+ policy_enforcer->operated_by_google_logs_for_testing(), -+ ::testing::UnorderedElementsAreArray({crypto::SHA256HashString("1111"), -+ crypto::SHA256HashString("3333"), -+ crypto::SHA256HashString("5555")})); -+ EXPECT_THAT(policy_enforcer->disqualified_logs_for_testing(), -+ ::testing::UnorderedElementsAre( -+ ::testing::Pair(crypto::SHA256HashString("AAAA"), -+ base::TimeDelta::FromSeconds(0)), -+ ::testing::Pair(crypto::SHA256HashString("BBBB"), -+ base::TimeDelta::FromSeconds(1)), -+ ::testing::Pair(crypto::SHA256HashString("CCCC"), -+ base::TimeDelta::FromSeconds(2)))); -+} -+#endif -+ - } // namespace - - } // namespace network -diff -up chromium-77.0.3865.75/services/network/public/mojom/ct_log_info.mojom.certificate-transparency chromium-77.0.3865.75/services/network/public/mojom/ct_log_info.mojom ---- chromium-77.0.3865.75/services/network/public/mojom/ct_log_info.mojom.certificate-transparency 2019-09-09 23:55:22.000000000 +0200 -+++ chromium-77.0.3865.75/services/network/public/mojom/ct_log_info.mojom 2019-09-12 16:09:52.824635180 +0200 -@@ -4,6 +4,8 @@ - - module network.mojom; - -+import "mojo/public/mojom/base/time.mojom"; -+ - // A single Certificate Transparency Log configuration. - struct CTLogInfo { - // The DER-encoded SubjectPublicKeyInfo of the log. -@@ -14,4 +16,13 @@ struct CTLogInfo { - // The human-readable, log-supplied log name. Note that this will not be - // translated. - string name; -+ -+ // Whether or not the log should should be considered a Google Log for the -+ // purposes of enforcing the "Certificate Transparency in Chrome" policy. -+ bool operated_by_google = false; -+ -+ // If set, the time since the Unix Epoch when the log was disqualified. This -+ // is used to determine the "once or currently qualified" status of the log. -+ // If the log is currently qualified, this will not be set. -+ mojo_base.mojom.TimeDelta? disqualified_at; - }; -diff -up chromium-77.0.3865.75/services/network/public/mojom/network_context.mojom.certificate-transparency chromium-77.0.3865.75/services/network/public/mojom/network_context.mojom ---- chromium-77.0.3865.75/services/network/public/mojom/network_context.mojom.certificate-transparency 2019-09-09 23:55:22.000000000 +0200 -+++ chromium-77.0.3865.75/services/network/public/mojom/network_context.mojom 2019-09-12 16:09:52.825635192 +0200 -@@ -239,15 +239,6 @@ struct NetworkContextParams { - [EnableIf=is_android] - bool check_clear_text_permitted = false; - -- // True if the "Certificate Transparency in Chrome" policy (see -- // https://github.com/chromium/ct-policy/blob/master/ct_policy.md) should -- // be enforced for certificates and connections. -- // -- // See //net/docs/certificate-transparency.md before setting this flag to -- // true. -- [EnableIf=is_ct_supported] -- bool enforce_chrome_ct_policy = false; -- - // Enables HTTP/0.9 on ports other than 80 for HTTP and 443 for HTTPS. - bool http_09_on_non_default_ports_enabled = false; - -@@ -300,6 +291,15 @@ struct NetworkContextParams { - // servers, so they can discover misconfigurations. - bool enable_certificate_reporting = false; - -+ // True if the "Certificate Transparency in Chrome" policy (see -+ // https://github.com/chromium/ct-policy/blob/master/ct_policy.md) should -+ // be enforced for certificates and connections. -+ // -+ // See //net/docs/certificate-transparency.md before setting this flag to -+ // true. -+ [EnableIf=is_ct_supported] -+ bool enforce_chrome_ct_policy = false; -+ - // Enables Expect CT reporting, which sends reports for opted-in sites that - // don't serve sufficient Certificate Transparency information. - [EnableIf=is_ct_supported] -@@ -311,6 +311,13 @@ struct NetworkContextParams { - [EnableIf=is_ct_supported] - array ct_logs; - -+ // When the Certificate Transparency logs in |ct_logs| were last updated. If -+ // |enforce_chrome_ct_policy| is set, and |ct_log_update_time| is not -+ // sufficiently recent, enforcement of the "Certificate Transparency in -+ // Chrome" policy will be disabled. -+ [EnableIf=is_ct_supported] -+ mojo_base.mojom.Time ct_log_update_time; -+ - // Specifies the path to the directory where NSS will store its database. - [EnableIf=is_chromeos] - mojo_base.mojom.FilePath? nss_path; diff --git a/chromium-77.0.3865.75-gcc-abstract-class.patch b/chromium-77.0.3865.75-gcc-abstract-class.patch deleted file mode 100644 index 6d77299..0000000 --- a/chromium-77.0.3865.75-gcc-abstract-class.patch +++ /dev/null @@ -1,61 +0,0 @@ -From f08cb0022527081c078e8b96062e6c9b4fbda151 Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Fri, 26 Jul 2019 16:48:06 +0000 -Subject: [PATCH] BinaryUploadService: change parameter passing that cannot afford abstract class - -The method UploadForDeepScanning gets a Request as parameter. But Request is an -abstract class, so GCC will not allow that declaration (polimorphycs should be -passed by reference). Use std::unique_ptr so BinaryUploadService can assume -ownership. - -Bug: 819294 -Change-Id: I9e8c75cc92b01abd704d9049b0421555377da5ba -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1713550 -Reviewed-by: Daniel Rubery -Commit-Queue: José Dapena Paz -Cr-Commit-Position: refs/heads/master@{#681333} ---- - -diff --git a/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc b/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc -index 6430c89..4e90487 100644 ---- a/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc -+++ b/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc -@@ -10,7 +10,7 @@ - namespace safe_browsing { - - void BinaryUploadService::UploadForDeepScanning( -- BinaryUploadService::Request request) { -+ std::unique_ptr request) { - DCHECK_CURRENTLY_ON(content::BrowserThread::UI); - NOTREACHED(); - } -diff --git a/chrome/browser/safe_browsing/download_protection/binary_upload_service.h b/chrome/browser/safe_browsing/download_protection/binary_upload_service.h -index d2dfd83..9b6f395 100644 ---- a/chrome/browser/safe_browsing/download_protection/binary_upload_service.h -+++ b/chrome/browser/safe_browsing/download_protection/binary_upload_service.h -@@ -5,6 +5,8 @@ - #ifndef CHROME_BROWSER_SAFE_BROWSING_DOWNLOAD_PROTECTION_BINARY_UPLOAD_SERVICE_H_ - #define CHROME_BROWSER_SAFE_BROWSING_DOWNLOAD_PROTECTION_BINARY_UPLOAD_SERVICE_H_ - -+#include -+ - #include "base/callback.h" - #include "components/safe_browsing/proto/webprotect.pb.h" - -@@ -40,6 +42,7 @@ - public: - // |callback| will run on the UI thread. - explicit Request(Callback callback); -+ virtual ~Request() = default; - Request(const Request&) = delete; - Request& operator=(const Request&) = delete; - -@@ -67,7 +70,7 @@ - // Upload the given file contents for deep scanning. The results will be - // returned asynchronously by calling |request|'s |callback|. This must be - // called on the UI thread. -- void UploadForDeepScanning(Request request); -+ void UploadForDeepScanning(std::unique_ptr request); - }; - - } // namespace safe_browsing diff --git a/chromium-77.0.3865.75-harfbuzz-subset.patch b/chromium-77.0.3865.75-harfbuzz-subset.patch deleted file mode 100644 index 55d78d1..0000000 --- a/chromium-77.0.3865.75-harfbuzz-subset.patch +++ /dev/null @@ -1,49 +0,0 @@ -From 27e25336b8316ff3ec4e464058682ed85801fd06 Mon Sep 17 00:00:00 2001 -From: Raphael Kubo da Costa -Date: Mon, 29 Jul 2019 10:54:28 +0000 -Subject: [PATCH] Also link against libharfbuzz-subset when use_system_harfbuzz is true - -When building HarfBuzz as part of Chromium, there is a single source set -with all the files we need in the build. - -Upstream HarfBuzz, on the other hand, produces a few different libraries: -harfbuzz, harfbuzz-icu and harfbuzz-subset. When |use_system_harfbuzz| is -true, we were only looking for (and using) harfbuzz.pc with pkg-config even -though we also use symbols from libharfbuzz-subset.so. This resulted in -errors when linking: - - ld: obj/skia/skia/SkPDFSubsetFont.o: in function `SkPDFSubsetFont(sk_sp, SkPDFGlyphUse const&, SkPDF::Metadata::Subsetter, char const*, int)': - SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x48a): undefined reference to `hb_subset_input_create_or_fail' - ld: SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x4af): undefined reference to `hb_subset_input_glyph_set' - ld: SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x5d7): undefined reference to `hb_subset_input_set_retain_gids' - ld: SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x5e4): undefined reference to `hb_subset_input_set_drop_hints' - ld: SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x5f3): undefined reference to `hb_subset' - ld: SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x66f): undefined reference to `hb_subset_input_destroy' - -as reported in -https://groups.google.com/a/chromium.org/d/msg/chromium-packagers/UyJsVJ5QqWo/jSv5z7-rEQAJ - -Change-Id: I997af075c7b7263cd7cc71a63db5b0f93bd1ab59 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1715288 -Auto-Submit: Raphael Kubo da Costa -Commit-Queue: Dominik Röttsches -Reviewed-by: Dominik Röttsches -Cr-Commit-Position: refs/heads/master@{#681760} ---- - -diff --git a/third_party/harfbuzz-ng/BUILD.gn b/third_party/harfbuzz-ng/BUILD.gn -index 37d8e33..72013eb1d 100644 ---- a/third_party/harfbuzz-ng/BUILD.gn -+++ b/third_party/harfbuzz-ng/BUILD.gn -@@ -16,7 +16,10 @@ - "//third_party:freetype_harfbuzz", - "//third_party/freetype:freetype_source", - ] -- packages = [ "harfbuzz" ] -+ packages = [ -+ "harfbuzz", -+ "harfbuzz-subset", -+ ] - } - } else { - config("harfbuzz_config") { diff --git a/chromium-77.0.3865.75-missing-limits.patch b/chromium-77.0.3865.75-missing-limits.patch deleted file mode 100644 index 3ac1770..0000000 --- a/chromium-77.0.3865.75-missing-limits.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 5baf7df7f4c5971dab552897eeef94b194650ce5 Mon Sep 17 00:00:00 2001 -From: Dave Tapuska -Date: Mon, 12 Aug 2019 22:30:13 +0000 -Subject: [PATCH] Fix build failure due to missing include for std::numeric_limits usage. - -Some configurations fail to build, limits should have been included. - -BUG=992832 - -Change-Id: I894ba0543bfcef101c93259e39a31d12ae6d035c -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1747981 -Commit-Queue: Dave Tapuska -Reviewed-by: Mostyn Bramley-Moore -Cr-Commit-Position: refs/heads/master@{#686214} ---- - -diff --git a/third_party/blink/renderer/platform/exported/web_time_range.cc b/third_party/blink/renderer/platform/exported/web_time_range.cc -index 384566a..68d83e1 100644 ---- a/third_party/blink/renderer/platform/exported/web_time_range.cc -+++ b/third_party/blink/renderer/platform/exported/web_time_range.cc -@@ -31,6 +31,7 @@ - #include "third_party/blink/public/platform/web_time_range.h" - - #include -+#include - - namespace blink { - diff --git a/chromium-77.0.3865.75-unbundle-zlib.patch b/chromium-77.0.3865.75-unbundle-zlib.patch deleted file mode 100644 index d6c45ad..0000000 --- a/chromium-77.0.3865.75-unbundle-zlib.patch +++ /dev/null @@ -1,25 +0,0 @@ -From e1bbdec720a333937bd1b990ae0f7ee97db0d3b0 Mon Sep 17 00:00:00 2001 -From: Your Name -Date: Fri, 28 Jun 2019 15:56:23 +0000 -Subject: [PATCH] update zlib - ---- - third_party/perfetto/gn/BUILD.gn | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/third_party/perfetto/gn/BUILD.gn b/third_party/perfetto/gn/BUILD.gn -index c951f5f..297eee3 100644 ---- a/third_party/perfetto/gn/BUILD.gn -+++ b/third_party/perfetto/gn/BUILD.gn -@@ -200,7 +200,7 @@ group("zlib") { - "//buildtools:zlib", - ] - } else if (build_with_chromium) { -- public_configs = [ "//third_party/zlib:zlib_config" ] -+ public_configs = [ "//third_party/zlib:system_zlib" ] - public_deps = [ - "//third_party/zlib", - ] --- -2.21.0 - diff --git a/chromium-77.0.3865.90-linked-hash-set.patch b/chromium-77.0.3865.90-linked-hash-set.patch deleted file mode 100644 index f921f1a..0000000 --- a/chromium-77.0.3865.90-linked-hash-set.patch +++ /dev/null @@ -1,130 +0,0 @@ -From 74138b9febd37eac0fc26b8efb110014a83a52c6 Mon Sep 17 00:00:00 2001 -From: Jeremy Roman -Date: Wed, 07 Aug 2019 13:26:48 +0000 -Subject: [PATCH] WTF: Make LinkedHashSet understand values for which memset initialization would be bad. - -Includes a unit test which fails before, and uses this to fix FontCacheKeyTraits. - -Bug: 980025 -Change-Id: If41f97444c7fd37b9b95d6dadaf3da5689079e9e -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1739948 -Reviewed-by: Kentaro Hara -Reviewed-by: Yutaka Hirano -Commit-Queue: Jeremy Roman -Cr-Commit-Position: refs/heads/master@{#684731} ---- - -diff --git a/third_party/blink/renderer/platform/fonts/font_cache_key.h b/third_party/blink/renderer/platform/fonts/font_cache_key.h -index 0efc8fb..90063cb 100644 ---- a/third_party/blink/renderer/platform/fonts/font_cache_key.h -+++ b/third_party/blink/renderer/platform/fonts/font_cache_key.h -@@ -133,6 +133,10 @@ - - struct FontCacheKeyTraits : WTF::SimpleClassHashTraits { - STATIC_ONLY(FontCacheKeyTraits); -+ -+ // std::string's empty state need not be zero in all implementations, -+ // and it is held within FontFaceCreationParams. -+ static const bool kEmptyValueIsZero = false; - }; - - } // namespace blink -diff --git a/third_party/blink/renderer/platform/wtf/linked_hash_set.h b/third_party/blink/renderer/platform/wtf/linked_hash_set.h -index b35b6e9..77e524c 100644 ---- a/third_party/blink/renderer/platform/wtf/linked_hash_set.h -+++ b/third_party/blink/renderer/platform/wtf/linked_hash_set.h -@@ -146,6 +146,11 @@ - LinkedHashSetNodeBase* next) - : LinkedHashSetNodeBase(prev, next), value_(value) {} - -+ LinkedHashSetNode(ValueArg&& value, -+ LinkedHashSetNodeBase* prev, -+ LinkedHashSetNodeBase* next) -+ : LinkedHashSetNodeBase(prev, next), value_(std::move(value)) {} -+ - LinkedHashSetNode(LinkedHashSetNode&& other) - : LinkedHashSetNodeBase(std::move(other)), - value_(std::move(other.value_)) {} -@@ -445,10 +450,13 @@ - - // The slot is empty when the next_ field is zero so it's safe to zero - // the backing. -- static const bool kEmptyValueIsZero = true; -+ static const bool kEmptyValueIsZero = ValueTraits::kEmptyValueIsZero; - - static const bool kHasIsEmptyValueFunction = true; - static bool IsEmptyValue(const Node& node) { return !node.next_; } -+ static Node EmptyValue() { -+ return Node(ValueTraits::EmptyValue(), nullptr, nullptr); -+ } - - static const int kDeletedValue = -1; - -diff --git a/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc b/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc -index 4c3f899..cd1be00 100644 ---- a/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc -+++ b/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc -@@ -487,6 +487,7 @@ - }; - - struct Complicated { -+ Complicated() : Complicated(0) {} - Complicated(int value) : simple_(value) { objects_constructed_++; } - - Complicated(const Complicated& other) : simple_(other.simple_) { -@@ -495,9 +496,6 @@ - - Simple simple_; - static int objects_constructed_; -- -- private: -- Complicated() = delete; - }; - - int Complicated::objects_constructed_ = 0; -@@ -731,4 +729,45 @@ - - } // anonymous namespace - -+// A unit type which objects to its state being initialized wrong. -+struct InvalidZeroValue { -+ InvalidZeroValue() = default; -+ InvalidZeroValue(WTF::HashTableDeletedValueType) : deleted_(true) {} -+ ~InvalidZeroValue() { CHECK(ok_); } -+ bool IsHashTableDeletedValue() const { return deleted_; } -+ -+ bool ok_ = true; -+ bool deleted_ = false; -+}; -+ -+template <> -+struct HashTraits : SimpleClassHashTraits { -+ static const bool kEmptyValueIsZero = false; -+}; -+ -+template <> -+struct DefaultHash { -+ struct Hash { -+ static unsigned GetHash(const InvalidZeroValue&) { return 0; } -+ static bool Equal(const InvalidZeroValue&, const InvalidZeroValue&) { -+ return true; -+ } -+ }; -+}; -+ -+template -+class ListOrLinkedHashSetInvalidZeroTest : public testing::Test {}; -+ -+using InvalidZeroValueSetTypes = -+ testing::Types, -+ ListHashSet, -+ LinkedHashSet>; -+TYPED_TEST_SUITE(ListOrLinkedHashSetInvalidZeroTest, InvalidZeroValueSetTypes); -+ -+TYPED_TEST(ListOrLinkedHashSetInvalidZeroTest, InvalidZeroValue) { -+ using Set = TypeParam; -+ Set set; -+ set.insert(InvalidZeroValue()); -+} -+ - } // namespace WTF diff --git a/chromium-78.0.3904.70-gcc-fix-invalid-pragma.patch b/chromium-78.0.3904.70-gcc-fix-invalid-pragma.patch new file mode 100644 index 0000000..eb0efbd --- /dev/null +++ b/chromium-78.0.3904.70-gcc-fix-invalid-pragma.patch @@ -0,0 +1,16 @@ +diff -up chromium-78.0.3904.70/base/allocator/debugallocation_shim.cc.invalid-pragma chromium-78.0.3904.70/base/allocator/debugallocation_shim.cc +--- chromium-78.0.3904.70/base/allocator/debugallocation_shim.cc.invalid-pragma 2019-10-23 10:00:41.361932768 -0400 ++++ chromium-78.0.3904.70/base/allocator/debugallocation_shim.cc 2019-10-23 10:02:09.778100948 -0400 +@@ -7,9 +7,10 @@ + // AFDO can mess with them. Better not to use AFDO there. This is a + // temporary hack. We will add a mechanism in the build system to + // avoid using -fauto-profile for tcmalloc files. +-#if !defined(__clang__) && (defined(OS_CHROMEOS) || __GNUC__ > 5) ++#if !defined(__clang__) && \ ++ (defined(OS_CHROMEOS) || (__GNUC__ > 5 && __GNUC__ < 7)) + // Note that this option only seems to be available in the chromeos GCC 4.9 +-// toolchain, and stock GCC 5 and up. ++// toolchain, and stock GCC 5 upto 7. + #pragma GCC optimize ("no-auto-profile") + #endif + diff --git a/chromium-78.0.3904.70-gcc-mark-CheckOpResult-constexpr.patch b/chromium-78.0.3904.70-gcc-mark-CheckOpResult-constexpr.patch new file mode 100644 index 0000000..e5502cf --- /dev/null +++ b/chromium-78.0.3904.70-gcc-mark-CheckOpResult-constexpr.patch @@ -0,0 +1,12 @@ +diff -up chromium-78.0.3904.70/base/logging.h.constexpr chromium-78.0.3904.70/base/logging.h +--- chromium-78.0.3904.70/base/logging.h.constexpr 2019-10-23 10:06:53.434313793 -0400 ++++ chromium-78.0.3904.70/base/logging.h 2019-10-23 10:07:17.490853038 -0400 +@@ -530,7 +530,7 @@ BASE_EXPORT extern std::ostream* g_swall + class CheckOpResult { + public: + // |message| must be non-null if and only if the check failed. +- CheckOpResult(std::string* message) : message_(message) {} ++ constexpr CheckOpResult(std::string* message) : message_(message) {} + // Returns true if the check succeeded. + operator bool() const { return !message_; } + // Returns the message. diff --git a/chromium-78.0.3904.70-gcc9-drop-rsp-clobber.patch b/chromium-78.0.3904.70-gcc9-drop-rsp-clobber.patch new file mode 100644 index 0000000..6785b09 --- /dev/null +++ b/chromium-78.0.3904.70-gcc9-drop-rsp-clobber.patch @@ -0,0 +1,24 @@ +diff -up chromium-78.0.3904.70/third_party/tcmalloc/chromium/src/base/linux_syscall_support.h.gcc9 chromium-78.0.3904.70/third_party/tcmalloc/chromium/src/base/linux_syscall_support.h +--- chromium-78.0.3904.70/third_party/tcmalloc/chromium/src/base/linux_syscall_support.h.gcc9 2019-10-23 08:58:16.153251961 -0400 ++++ chromium-78.0.3904.70/third_party/tcmalloc/chromium/src/base/linux_syscall_support.h 2019-10-23 08:58:36.896862347 -0400 +@@ -1486,7 +1486,7 @@ struct kernel_stat { + "d"(LSS_SYSCALL_ARG(parent_tidptr)), + "r"(LSS_SYSCALL_ARG(newtls)), + "r"(LSS_SYSCALL_ARG(child_tidptr)) +- : "rsp", "memory", "r8", "r10", "r11", "rcx"); ++ : "memory", "r8", "r10", "r11", "rcx"); + } + LSS_RETURN(int, __res); + } +diff -up chromium-78.0.3904.70/third_party/tcmalloc/vendor/src/base/linux_syscall_support.h.gcc9 chromium-78.0.3904.70/third_party/tcmalloc/vendor/src/base/linux_syscall_support.h +--- chromium-78.0.3904.70/third_party/tcmalloc/vendor/src/base/linux_syscall_support.h.gcc9 2019-10-23 08:58:59.623435488 -0400 ++++ chromium-78.0.3904.70/third_party/tcmalloc/vendor/src/base/linux_syscall_support.h 2019-10-23 08:59:16.113125772 -0400 +@@ -1485,7 +1485,7 @@ struct kernel_stat { + "d"(LSS_SYSCALL_ARG(parent_tidptr)), + "r"(LSS_SYSCALL_ARG(newtls)), + "r"(LSS_SYSCALL_ARG(child_tidptr)) +- : "rsp", "memory", "r8", "r10", "r11", "rcx"); ++ : "memory", "r8", "r10", "r11", "rcx"); + } + LSS_RETURN(int, __res); + } diff --git a/chromium-78.0.3904.70-unbundle-zlib.patch b/chromium-78.0.3904.70-unbundle-zlib.patch new file mode 100644 index 0000000..155990e --- /dev/null +++ b/chromium-78.0.3904.70-unbundle-zlib.patch @@ -0,0 +1,12 @@ +diff -up chromium-78.0.3904.70/third_party/perfetto/gn/BUILD.gn.unbundle-zlib chromium-78.0.3904.70/third_party/perfetto/gn/BUILD.gn +--- chromium-78.0.3904.70/third_party/perfetto/gn/BUILD.gn.unbundle-zlib 2019-10-23 09:25:44.419884187 -0400 ++++ chromium-78.0.3904.70/third_party/perfetto/gn/BUILD.gn 2019-10-23 09:29:53.553442745 -0400 +@@ -276,7 +276,7 @@ if (enable_perfetto_trace_processor || e + "//buildtools:zlib", + ] + } else { +- public_configs = [ "//third_party/zlib:zlib_config" ] ++ public_configs = [ "//third_party/zlib:system_zlib" ] + public_deps = [ + "//third_party/zlib", + ] diff --git a/chromium-78.0.3904.70-vtable-symbol-undefined.patch b/chromium-78.0.3904.70-vtable-symbol-undefined.patch new file mode 100644 index 0000000..13751a2 --- /dev/null +++ b/chromium-78.0.3904.70-vtable-symbol-undefined.patch @@ -0,0 +1,11 @@ +diff -up chromium-78.0.3904.70/net/quic/platform/impl/quic_default_proof_providers_impl.cc.vtable-symbol-undefined chromium-78.0.3904.70/net/quic/platform/impl/quic_default_proof_providers_impl.cc +--- chromium-78.0.3904.70/net/quic/platform/impl/quic_default_proof_providers_impl.cc.vtable-symbol-undefined 2019-10-23 09:12:08.754351798 -0400 ++++ chromium-78.0.3904.70/net/quic/platform/impl/quic_default_proof_providers_impl.cc 2019-10-23 09:19:28.278431430 -0400 +@@ -18,6 +18,7 @@ + #include "net/quic/crypto/proof_verifier_chromium.h" + #include "net/third_party/quiche/src/quic/platform/api/quic_flags.h" + #include "net/third_party/quiche/src/quic/platform/api/quic_ptr_util.h" ++#include "net/quic/platform/impl/quic_flags_impl.cc" + + DEFINE_QUIC_COMMAND_LINE_FLAG( + bool, diff --git a/chromium.spec b/chromium.spec index 8994527..675a54b 100644 --- a/chromium.spec +++ b/chromium.spec @@ -154,15 +154,15 @@ BuildRequires: libicu-devel >= 5.4 %global chromoting_client_id %nil %endif -%global majorversion 77 +%global majorversion 78 %if %{freeworld} Name: chromium%{chromium_channel}%{?freeworld:-freeworld} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3865.120 -Release: 4%{?dist} +Version: %{majorversion}.0.3904.70 +Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -191,7 +191,7 @@ Patch8: chromium-71.0.3578.98-widevine-r3.patch # Disable fontconfig cache magic that breaks remoting Patch9: chromium-70.0.3538.67-disable-fontconfig-cache-magic.patch # drop rsp clobber, which breaks gcc9 (thanks to Jeff Law) -Patch10: chromium-71.0.3578.98-gcc9-drop-rsp-clobber.patch +Patch10: chromium-78.0.3904.70-gcc9-drop-rsp-clobber.patch # Try to load widevine from other places Patch11: chromium-widevine-other-locations.patch # Try to fix version.py for Rawhide @@ -200,34 +200,24 @@ Patch12: chromium-71.0.3578.98-py2-bootstrap.patch Patch13: chromium-77.0.3865.75-fedora-user-agent.patch # rename function to avoid conflict with rawhide glibc "gettid()" Patch50: chromium-75.0.3770.80-grpc-gettid-fix.patch -# In GCC one can't use alignas() for exported classes -# https://chromium.googlesource.com/chromium/src.git/+/8148fd96ae04a1150a9c6012634dcd2a7335f87a -Patch51: chromium-76.0.3809.100-gcc-no-alignas-and-export.patch # Needs to be submitted.. -Patch52: chromium-76.0.3809.100-gcc-remoting-constexpr.patch +Patch51: chromium-76.0.3809.100-gcc-remoting-constexpr.patch # Needs to be submitted.. (ugly hack, needs to be added properly to GN files) -Patch53: chromium-76.0.3809.100-vtable-symbol-undefined.patch -# https://chromium.googlesource.com/chromium/src.git/+/3c9720245e440c4b7222f8348d2a2a3c25e098ae -Patch54: chromium-77.0.3865.75-certificate-transparency.patch +Patch52: chromium-78.0.3904.70-vtable-symbol-undefined.patch # https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-unbundle-zlib.patch -Patch55: chromium-77.0.3865.75-unbundle-zlib.patch +Patch53: chromium-78.0.3904.70-unbundle-zlib.patch # Needs to be submitted.. -Patch56: chromium-77.0.3865.75-gcc-include-memory.patch +Patch54: chromium-77.0.3865.75-gcc-include-memory.patch # https://chromium.googlesource.com/chromium/src/+/6b633c4b14850df376d5cec571699018772f358e -Patch57: chromium-77.0.3865.75-base-gcc-no-alignas.patch -# https://chromium.googlesource.com/chromium/src/+/27e25336b8316ff3ec4e464058682ed85801fd06 -Patch58: chromium-77.0.3865.75-harfbuzz-subset.patch -# https://chromium.googlesource.com/chromium/src.git/+/f08cb0022527081c078e8b96062e6c9b4fbda151 -Patch59: chromium-77.0.3865.75-gcc-abstract-class.patch -# https://chromium.googlesource.com/chromium/src/+/5baf7df7f4c5971dab552897eeef94b194650ce5 -Patch60: chromium-77.0.3865.75-missing-limits.patch -# https://chromium.googlesource.com/chromium/src/+/74138b9febd37eac0fc26b8efb110014a83a52c6 -Patch61: chromium-77.0.3865.90-linked-hash-set.patch +Patch55: chromium-77.0.3865.75-base-gcc-no-alignas.patch # https://chromium.googlesource.com/chromium/src/+/e79d9d0e06b825d2e62b38db03248c0e6ceec7e4 -Patch62: chromium-77.0.3865.120-silence-outdated-build-noise.patch +Patch56: chromium-77.0.3865.120-silence-outdated-build-noise.patch # https://chromium.googlesource.com/chromium/src/+/9c3aed099b010a75594a0efd523774c4c9a5e3d2 -Patch63: chromium-77.0.3865.120-gcc-fix-zlib-symbol-visibility.patch - +Patch57: chromium-77.0.3865.120-gcc-fix-zlib-symbol-visibility.patch +# https://chromium.googlesource.com/chromium/src/+/7358ea985cb496fa7fd1a5266f915d98ed4e22e6 +Patch58: chromium-78.0.3904.70-gcc-fix-invalid-pragma.patch +# https://chromium.googlesource.com/chromium/src/+/2db67d40ef766c63a73896866a2d66e834cb9716 +Patch59: chromium-78.0.3904.70-gcc-mark-CheckOpResult-constexpr.patch # Use lstdc++ on EPEL7 only Patch101: chromium-75.0.3770.100-epel7-stdc++.patch @@ -742,19 +732,15 @@ udev. # Short term fixes (usually gcc and backports) %patch50 -p1 -b .gettid-fix -%patch51 -p1 -b .gcc-no-alignas-and-export -%patch52 -p1 -b .gcc-remoting-constexpr -%patch53 -p1 -b .vtable-symbol-undefined -%patch54 -p1 -b .certificate-transparency -%patch55 -p1 -b .unbundle-zlib -%patch56 -p1 -b .gcc-include-memory -%patch57 -p1 -b .base-gcc-no-alignas -%patch58 -p1 -b .harfbuzz-subset -%patch59 -p1 -b .gcc-abstract-class -%patch60 -p1 -b .missing-limits -%patch61 -p1 -b .linked-hash-set -%patch62 -p1 -b .silence-outdated-build-noise -%patch63 -p1 -b .gcc-fix-zlib-symbol-visibility +%patch51 -p1 -b .gcc-remoting-constexpr +%patch52 -p1 -b .vtable-symbol-undefined +%patch53 -p1 -b .unbundle-zlib +%patch54 -p1 -b .gcc-include-memory +%patch55 -p1 -b .base-gcc-no-alignas +%patch56 -p1 -b .silence-outdated-build-noise +%patch57 -p1 -b .gcc-fix-zlib-symbol-visibility +%patch58 -p1 -b .gcc-invalid-pragma +%patch59 -p1 -b .gcc-mark-CheckOpResult-constexpr # Fedora branded user agent %if 0%{?fedora} @@ -1669,6 +1655,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Wed Oct 23 2019 Tom Callaway - 78.0.3904.80-1 +- update to 78.0.3904.80 + * Wed Oct 16 2019 Tom Callaway - 77.0.3865.120-4 - upstream fix for zlib symbol exports with gcc diff --git a/sources b/sources index 978a610..c18b1d0 100644 --- a/sources +++ b/sources @@ -18,3 +18,4 @@ SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb874 SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 SHA512 (chromium-77.0.3865.120-clean.tar.xz) = 018702b53bafeb5fe8a297b8efb4805419555acb80a22b9f5f5fe2a3484f838f6ffa06655229466aca5a9de7f8b0497b9d387da4a1ba2dbc7c62ec3d1d0ffbb9 +SHA512 (chromium-78.0.3904.70-clean.tar.xz) = f702bc3c084a69adc81f47300d00f0b8cf46ee721dbb4986bfc5ba7fc95129172d021da0514350fe77591a209ec050307eead8e9bf309b70e46eb26d29d88509 From d3e96e671b46f81f9fa7d5bd17631e7f06199b83 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 23 Oct 2019 11:19:54 -0400 Subject: [PATCH 0605/1449] more 78 fixes --- chromium-78.0.3904.70-gcc-sizet-fix.patch | 20 ++++++++++++++++++++ chromium.spec | 5 ++++- 2 files changed, 24 insertions(+), 1 deletion(-) create mode 100644 chromium-78.0.3904.70-gcc-sizet-fix.patch diff --git a/chromium-78.0.3904.70-gcc-sizet-fix.patch b/chromium-78.0.3904.70-gcc-sizet-fix.patch new file mode 100644 index 0000000..b95b0ed --- /dev/null +++ b/chromium-78.0.3904.70-gcc-sizet-fix.patch @@ -0,0 +1,20 @@ +diff -up chromium-78.0.3904.70/base/containers/intrusive_heap.h.gcc-sizet chromium-78.0.3904.70/base/containers/intrusive_heap.h +--- chromium-78.0.3904.70/base/containers/intrusive_heap.h.gcc-sizet 2019-10-23 11:02:56.767907986 -0400 ++++ chromium-78.0.3904.70/base/containers/intrusive_heap.h 2019-10-23 11:04:58.317351636 -0400 +@@ -131,6 +131,7 @@ + + #include + #include ++#include + #include + #include + #include +@@ -149,7 +150,7 @@ namespace base { + // in place. + class BASE_EXPORT HeapHandle { + public: +- enum : size_t { kInvalidIndex = -1 }; ++ enum : size_t { kInvalidIndex = std::numeric_limits::max() }; + + constexpr HeapHandle() = default; + constexpr HeapHandle(const HeapHandle& other) = default; diff --git a/chromium.spec b/chromium.spec index 675a54b..3f62331 100644 --- a/chromium.spec +++ b/chromium.spec @@ -218,6 +218,8 @@ Patch57: chromium-77.0.3865.120-gcc-fix-zlib-symbol-visibility.patch Patch58: chromium-78.0.3904.70-gcc-fix-invalid-pragma.patch # https://chromium.googlesource.com/chromium/src/+/2db67d40ef766c63a73896866a2d66e834cb9716 Patch59: chromium-78.0.3904.70-gcc-mark-CheckOpResult-constexpr.patch +# https://chromium.googlesource.com/chromium/src/+/9662ec844017690d5fd56bf0f05ef6a540dd29c1 +Patch60: chromium-78.0.3904.70-gcc-sizet-fix.patch # Use lstdc++ on EPEL7 only Patch101: chromium-75.0.3770.100-epel7-stdc++.patch @@ -741,6 +743,7 @@ udev. %patch57 -p1 -b .gcc-fix-zlib-symbol-visibility %patch58 -p1 -b .gcc-invalid-pragma %patch59 -p1 -b .gcc-mark-CheckOpResult-constexpr +%patch60 -p1 -b .gcc-sizet # Fedora branded user agent %if 0%{?fedora} @@ -903,7 +906,7 @@ ln -s %{_bindir}/node third_party/node/linux/node-linux-x64/bin/node # Gentoo's Chromium ebuild) are the libraries that needs to be preserved. build/linux/unbundle/remove_bundled_libraries.py \ 'base/third_party/cityhash' \ - 'base/third_party/dmg_fp' \ + 'base/third_party/double_conversion' \ 'base/third_party/dynamic_annotations' \ 'base/third_party/icu' \ 'base/third_party/libevent' \ From e4b93e833781790c8f0a03f103354e7ee8b97245 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 23 Oct 2019 11:26:02 -0400 Subject: [PATCH 0606/1449] another gcc fix from upstream --- ...3904.70-gcc-DohUpgradeEntry-nonconst.patch | 47 +++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 chromium-78.0.3904.70-gcc-DohUpgradeEntry-nonconst.patch diff --git a/chromium-78.0.3904.70-gcc-DohUpgradeEntry-nonconst.patch b/chromium-78.0.3904.70-gcc-DohUpgradeEntry-nonconst.patch new file mode 100644 index 0000000..6ffe580 --- /dev/null +++ b/chromium-78.0.3904.70-gcc-DohUpgradeEntry-nonconst.patch @@ -0,0 +1,47 @@ +diff -up chromium-78.0.3904.70/net/dns/dns_util.cc.gcc-DohUpgradeEntry-nonconst chromium-78.0.3904.70/net/dns/dns_util.cc +--- chromium-78.0.3904.70/net/dns/dns_util.cc.gcc-DohUpgradeEntry-nonconst 2019-10-23 11:21:55.805646136 -0400 ++++ chromium-78.0.3904.70/net/dns/dns_util.cc 2019-10-23 11:23:52.693140706 -0400 +@@ -139,11 +139,11 @@ struct DohUpgradeEntry { + const DnsConfig::DnsOverHttpsServerConfig dns_over_https_config; + }; + +-const std::vector& GetDohUpgradeList() { ++const std::vector& GetDohUpgradeList() { + // The provider names in these entries should be kept in sync with the + // DohProviderId histogram suffix list in + // tools/metrics/histograms/histograms.xml. +- static const base::NoDestructor> ++ static const base::NoDestructor> + upgradable_servers({ + DohUpgradeEntry( + "CleanBrowsingAdult", +@@ -222,8 +222,7 @@ const std::vector + std::vector GetDohUpgradeEntriesFromNameservers( + const std::vector& dns_servers, + const std::vector& excluded_providers) { +- const std::vector& upgradable_servers = +- GetDohUpgradeList(); ++ const std::vector& upgradable_servers = GetDohUpgradeList(); + std::vector entries; + + for (const auto& server : dns_servers) { +@@ -417,8 +416,7 @@ std::vector& excluded_providers) { +- const std::vector& upgradable_servers = +- GetDohUpgradeList(); ++ const std::vector& upgradable_servers = GetDohUpgradeList(); + std::vector doh_servers; + + if (dot_server.empty()) +@@ -451,8 +449,7 @@ GetDohUpgradeServersFromNameservers( + + std::string GetDohProviderIdForHistogramFromDohConfig( + const DnsConfig::DnsOverHttpsServerConfig& doh_server) { +- const std::vector& upgradable_servers = +- GetDohUpgradeList(); ++ const std::vector& upgradable_servers = GetDohUpgradeList(); + for (const auto& upgrade_entry : upgradable_servers) { + if (doh_server.server_template == + upgrade_entry.dns_over_https_config.server_template) { From dd5dd20f917b27c6596de8344b9553ad545e71bb Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 23 Oct 2019 12:02:13 -0400 Subject: [PATCH 0607/1449] preserve third_party/catapult/tracing/third_party/jpeg-js, add another upstream gcc fix --- chromium.spec | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/chromium.spec b/chromium.spec index 3f62331..bfa6fe8 100644 --- a/chromium.spec +++ b/chromium.spec @@ -220,6 +220,8 @@ Patch58: chromium-78.0.3904.70-gcc-fix-invalid-pragma.patch Patch59: chromium-78.0.3904.70-gcc-mark-CheckOpResult-constexpr.patch # https://chromium.googlesource.com/chromium/src/+/9662ec844017690d5fd56bf0f05ef6a540dd29c1 Patch60: chromium-78.0.3904.70-gcc-sizet-fix.patch +# https://chromium.googlesource.com/chromium/src/+/f4c3c329588b78af63aad8b401da767242b86709 +Patch61: chromium-78.0.3904.70-gcc-DohUpgradeEntry-nonconst.patch # Use lstdc++ on EPEL7 only Patch101: chromium-75.0.3770.100-epel7-stdc++.patch @@ -744,6 +746,7 @@ udev. %patch58 -p1 -b .gcc-invalid-pragma %patch59 -p1 -b .gcc-mark-CheckOpResult-constexpr %patch60 -p1 -b .gcc-sizet +%patch61 -p1 -b .gcc-DohUpgradeEntry-nonconst # Fedora branded user agent %if 0%{?fedora} @@ -962,6 +965,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/catapult/third_party/six' \ 'third_party/catapult/tracing/third_party/d3' \ 'third_party/catapult/tracing/third_party/gl-matrix' \ + 'third_party/catapult/tracing/third_party/jpeg-js' \ 'third_party/catapult/tracing/third_party/jszip' \ 'third_party/catapult/tracing/third_party/mannwhitneyu' \ 'third_party/catapult/tracing/third_party/oboe' \ From 5d755bc2f71af8bed245840799ff57636a192074 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 23 Oct 2019 13:09:01 -0400 Subject: [PATCH 0608/1449] fix issue in my manual patch, apply other gentoo 78 fixes --- chromium-78-gcc-noexcept.patch | 32 ++++++++++++++ chromium-78-include.patch | 40 +++++++++++++++++ chromium-78-pm-crash.patch | 43 +++++++++++++++++++ chromium-78-protobuf-export.patch | 13 ++++++ ...3904.70-gcc-DohUpgradeEntry-nonconst.patch | 10 +++-- chromium.spec | 12 ++++++ 6 files changed, 146 insertions(+), 4 deletions(-) create mode 100644 chromium-78-gcc-noexcept.patch create mode 100644 chromium-78-include.patch create mode 100644 chromium-78-pm-crash.patch create mode 100644 chromium-78-protobuf-export.patch diff --git a/chromium-78-gcc-noexcept.patch b/chromium-78-gcc-noexcept.patch new file mode 100644 index 0000000..8ddb53f --- /dev/null +++ b/chromium-78-gcc-noexcept.patch @@ -0,0 +1,32 @@ +From d16cda8fc3476cc534a756873cc8aa2692a57054 Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Thu, 22 Aug 2019 13:13:36 +0200 +Subject: [PATCH] GCC: declare noexcept move constructor/assign operators of V8StackTraceId + +blink::BlinkCloneableMessage declares default implementation of +move operator/assign operator that requires v8_inspector::V8StackTraceId +to declare its move constructor/assign operator too. + +Bug: chromium:819294 +Change-Id: Iaf626ee8245efcba372a17cdf2de448e691d41d6 +Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1796062 +Commit-Queue: José Dapena Paz +Reviewed-by: Yang Guo +Cr-Commit-Position: refs/heads/master@{#63799} +--- + +diff --git a/v8/include/v8-inspector.h b/v8/include/v8-inspector.h +index ce5b777..ed4cdec 100644 +--- a/v8/include/v8-inspector.h ++++ b/v8/include/v8-inspector.h +@@ -231,7 +231,10 @@ struct V8_EXPORT V8StackTraceId { + std::pair debugger_id; + + V8StackTraceId(); ++ V8StackTraceId(const V8StackTraceId&) = default; + V8StackTraceId(uintptr_t id, const std::pair debugger_id); ++ V8StackTraceId& operator=(const V8StackTraceId&) = default; ++ V8StackTraceId& operator=(V8StackTraceId&&) noexcept = default; + ~V8StackTraceId() = default; + + bool IsInvalid() const; diff --git a/chromium-78-include.patch b/chromium-78-include.patch new file mode 100644 index 0000000..3db38ea --- /dev/null +++ b/chromium-78-include.patch @@ -0,0 +1,40 @@ +From bbfe2665923225b4a7c436ba2b6c7e5f695f2e52 Mon Sep 17 00:00:00 2001 +From: David Landell +Date: Fri, 13 Sep 2019 12:24:13 +0000 +Subject: [PATCH] Add missing include for unique_ptr + +Change-Id: I614d2f42868d563eb6a92dfb2aae08286e20d687 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1803137 +Reviewed-by: Henrik Boström +Commit-Queue: Henrik Boström +Cr-Commit-Position: refs/heads/master@{#696355} +--- + +diff --git a/third_party/blink/public/platform/web_rtc_rtp_source.h b/third_party/blink/public/platform/web_rtc_rtp_source.h +index 959440f..c3fd542 100644 +--- a/third_party/blink/public/platform/web_rtc_rtp_source.h ++++ b/third_party/blink/public/platform/web_rtc_rtp_source.h +@@ -5,6 +5,8 @@ + #ifndef THIRD_PARTY_BLINK_PUBLIC_PLATFORM_WEB_RTC_RTP_SOURCE_H_ + #define THIRD_PARTY_BLINK_PUBLIC_PLATFORM_WEB_RTC_RTP_SOURCE_H_ + ++#include ++ + #include "base/optional.h" + #include "third_party/blink/public/platform/web_common.h" + +Missing include due to reverting ProfileManagerObserver +--- + +diff --git a/chrome/browser/web_applications/extensions/bookmark_app_util.cc b/chrome/browser/web_applications/extensions/bookmark_app_util.cc +index ee4b70a..b31e5f5 100644 +--- a/chrome/browser/web_applications/extensions/bookmark_app_util.cc ++++ b/chrome/browser/web_applications/extensions/bookmark_app_util.cc +@@ -7,6 +7,7 @@ + #include "base/strings/string_piece.h" + #include "base/values.h" + #include "chrome/browser/extensions/extension_service.h" ++#include "chrome/browser/profiles/profile.h" + #include "chrome/browser/web_applications/components/app_registrar.h" + #include "chrome/browser/web_applications/components/web_app_provider_base.h" + #include "chrome/common/chrome_features.h" diff --git a/chromium-78-pm-crash.patch b/chromium-78-pm-crash.patch new file mode 100644 index 0000000..ada2661 --- /dev/null +++ b/chromium-78-pm-crash.patch @@ -0,0 +1,43 @@ +From e73aed9a5ef15102f29ac31b70290faf5c90f9fe Mon Sep 17 00:00:00 2001 +From: Evan Stade +Date: Wed, 16 Oct 2019 16:01:32 +0000 +Subject: [PATCH] Fix shutdown crash in ProfileManager. + +OnProfileMarkedForPermanentDeletion should move from +ProfileManagerObserver to ProfileObserver, which would also +fix this bug. However, changing the order of members is the +quickest and most cherry-pick-able way to avoid the crash. + +Bug: 1005244 +Change-Id: If2db68c846dd418cd02864b57b9b543687fa1e03 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1863518 +Auto-Submit: Evan Stade +Reviewed-by: David Roger +Commit-Queue: Evan Stade +Cr-Commit-Position: refs/heads/master@{#706467} +--- + +diff --git a/chrome/browser/profiles/profile_manager.h b/chrome/browser/profiles/profile_manager.h +index b60df76d..7d02af7 100644 +--- a/chrome/browser/profiles/profile_manager.h ++++ b/chrome/browser/profiles/profile_manager.h +@@ -409,6 +409,10 @@ class ProfileManager : public content::NotificationObserver, + const base::FilePath& profile_dir); + #endif // !defined(OS_ANDROID) + ++ // Destroy after |profile_info_cache_| since Profile destruction may trigger ++ // some observers to unregister themselves. ++ base::ObserverList observers_; ++ + // Object to cache various information about profiles. Contains information + // about every profile which has been created for this instance of Chrome, + // if it has not been explicitly deleted. It must be destroyed after +@@ -450,8 +454,6 @@ class ProfileManager : public content::NotificationObserver, + // Controls whether to initialize some services. Only disabled for testing. + bool do_final_services_init_ = true; + +- base::ObserverList observers_; +- + // TODO(chrome/browser/profiles/OWNERS): Usage of this in profile_manager.cc + // should likely be turned into DCHECK_CURRENTLY_ON(BrowserThread::UI) for + // consistency with surrounding code in the same file but that wasn't trivial diff --git a/chromium-78-protobuf-export.patch b/chromium-78-protobuf-export.patch new file mode 100644 index 0000000..ddb9e80 --- /dev/null +++ b/chromium-78-protobuf-export.patch @@ -0,0 +1,13 @@ +diff --git a/third_party/protobuf/src/google/protobuf/repeated_field.h b/third_party/protobuf/src/google/protobuf/repeated_field.h +index b5b193c..4434854 100644 +--- a/third_party/protobuf/src/google/protobuf/repeated_field.h ++++ b/third_party/protobuf/src/google/protobuf/repeated_field.h +@@ -804,7 +804,7 @@ class StringTypeHandler { + // RepeatedPtrField is like RepeatedField, but used for repeated strings or + // Messages. + template +-class RepeatedPtrField final : private internal::RepeatedPtrFieldBase { ++class PROTOBUF_EXPORT RepeatedPtrField final : private internal::RepeatedPtrFieldBase { + public: + RepeatedPtrField(); + explicit RepeatedPtrField(Arena* arena); diff --git a/chromium-78.0.3904.70-gcc-DohUpgradeEntry-nonconst.patch b/chromium-78.0.3904.70-gcc-DohUpgradeEntry-nonconst.patch index 6ffe580..cb436ec 100644 --- a/chromium-78.0.3904.70-gcc-DohUpgradeEntry-nonconst.patch +++ b/chromium-78.0.3904.70-gcc-DohUpgradeEntry-nonconst.patch @@ -1,7 +1,7 @@ diff -up chromium-78.0.3904.70/net/dns/dns_util.cc.gcc-DohUpgradeEntry-nonconst chromium-78.0.3904.70/net/dns/dns_util.cc ---- chromium-78.0.3904.70/net/dns/dns_util.cc.gcc-DohUpgradeEntry-nonconst 2019-10-23 11:21:55.805646136 -0400 -+++ chromium-78.0.3904.70/net/dns/dns_util.cc 2019-10-23 11:23:52.693140706 -0400 -@@ -139,11 +139,11 @@ struct DohUpgradeEntry { +--- chromium-78.0.3904.70/net/dns/dns_util.cc.gcc-DohUpgradeEntry-nonconst 2019-10-21 15:06:38.000000000 -0400 ++++ chromium-78.0.3904.70/net/dns/dns_util.cc 2019-10-23 12:55:27.886546918 -0400 +@@ -139,12 +139,12 @@ struct DohUpgradeEntry { const DnsConfig::DnsOverHttpsServerConfig dns_over_https_config; }; @@ -11,10 +11,12 @@ diff -up chromium-78.0.3904.70/net/dns/dns_util.cc.gcc-DohUpgradeEntry-nonconst // DohProviderId histogram suffix list in // tools/metrics/histograms/histograms.xml. - static const base::NoDestructor> +- upgradable_servers({ + static const base::NoDestructor> - upgradable_servers({ ++ upgradable_servers(std::initializer_list{ DohUpgradeEntry( "CleanBrowsingAdult", + {"185.228.168.10", "185.228.169.11", "2a0d:2a00:1::1", @@ -222,8 +222,7 @@ const std::vector std::vector GetDohUpgradeEntriesFromNameservers( const std::vector& dns_servers, diff --git a/chromium.spec b/chromium.spec index bfa6fe8..764e85d 100644 --- a/chromium.spec +++ b/chromium.spec @@ -222,6 +222,14 @@ Patch59: chromium-78.0.3904.70-gcc-mark-CheckOpResult-constexpr.patch Patch60: chromium-78.0.3904.70-gcc-sizet-fix.patch # https://chromium.googlesource.com/chromium/src/+/f4c3c329588b78af63aad8b401da767242b86709 Patch61: chromium-78.0.3904.70-gcc-DohUpgradeEntry-nonconst.patch +# https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-78-gcc-noexcept.patch +Patch62: chromium-78-gcc-noexcept.patch +# https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-78-pm-crash.patch +Patch63: chromium-78-pm-crash.patch +# https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-78-protobuf-export.patch +Patch64: chromium-78-protobuf-export.patch +# https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-78-include.patch +Patch65: chromium-78-include.patch # Use lstdc++ on EPEL7 only Patch101: chromium-75.0.3770.100-epel7-stdc++.patch @@ -747,6 +755,10 @@ udev. %patch59 -p1 -b .gcc-mark-CheckOpResult-constexpr %patch60 -p1 -b .gcc-sizet %patch61 -p1 -b .gcc-DohUpgradeEntry-nonconst +%patch62 -p1 -b .gcc-v8-noexcept +%patch63 -p1 -b .pm-crash +%patch64 -p1 -b .protobuf-export +%patch65 -p1 -b .missing-includes # Fedora branded user agent %if 0%{?fedora} From 5a0ab7571f0c7dd5eb02385589150ab3c958bfe3 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 28 Oct 2019 08:57:05 -0400 Subject: [PATCH 0609/1449] last bit of fixes --- chromium-77-clang.patch | 13 + chromium-78-revert-noexcept-r1.patch | 1471 +++++++++++++++++ ...ium-78.0.3904.70-base-gcc-no-alignas.patch | 68 + ...-78.0.3904.70-v8-tracedreference-fix.patch | 302 ++++ chromium.spec | 23 +- v8-implement-tracedreference.patch | 796 +++++++++ 6 files changed, 2669 insertions(+), 4 deletions(-) create mode 100644 chromium-77-clang.patch create mode 100644 chromium-78-revert-noexcept-r1.patch create mode 100644 chromium-78.0.3904.70-base-gcc-no-alignas.patch create mode 100644 chromium-78.0.3904.70-v8-tracedreference-fix.patch create mode 100644 v8-implement-tracedreference.patch diff --git a/chromium-77-clang.patch b/chromium-77-clang.patch new file mode 100644 index 0000000..a57b5a4 --- /dev/null +++ b/chromium-77-clang.patch @@ -0,0 +1,13 @@ +diff --git a/base/location.h b/base/location.h +index c07e747..924db1c 100644 +--- a/base/location.h ++++ b/base/location.h +@@ -18,7 +18,7 @@ + + namespace base { + +-#if defined(__has_builtin) ++#if defined(__clang__) + // Clang allows detection of these builtins. + #define SUPPORTS_LOCATION_BUILTINS \ + (__has_builtin(__builtin_FUNCTION) && __has_builtin(__builtin_FILE) && \ diff --git a/chromium-78-revert-noexcept-r1.patch b/chromium-78-revert-noexcept-r1.patch new file mode 100644 index 0000000..408d618 --- /dev/null +++ b/chromium-78-revert-noexcept-r1.patch @@ -0,0 +1,1471 @@ +From 37a95dd93e553888c00cf9443a5ec738ce658e65 Mon Sep 17 00:00:00 2001 +From: Zinovy Nis +Date: Mon, 16 Sep 2019 13:08:17 +0000 +Subject: [PATCH] Revert "[clang-tidy] add noexcept for move ctors and operator= in blink" + +This reverts commit 8f3eea10fe63a64ac67dc21542ebee6b896156a3. + +Reason for revert: code bloating + +Original change's description: +> [clang-tidy] add noexcept for move ctors and operator= in blink +> +> Bug: 994915 +> Change-Id: I2e1bcf286a2d2fa6613e18b5268098a0d258fb2e +> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1759163 +> Commit-Queue: Zinovy Nis +> Reviewed-by: Jeremy Roman +> Reviewed-by: Mike West +> Cr-Commit-Position: refs/heads/master@{#688676} + +TBR=jbroman@chromium.org,foolip@chromium.org,mkwst@chromium.org,zynis@yandex-team.ru + +# Not skipping CQ checks because original CL landed > 1 day ago. + +Bug: 994915 +Change-Id: I12b3ecc1186e27809082dc399c6d6864109ce307 +--- + +diff --git a/third_party/blink/common/indexeddb/indexeddb_key_path.cc b/third_party/blink/common/indexeddb/indexeddb_key_path.cc +index ec2b618..552d541 100644 +--- a/third_party/blink/common/indexeddb/indexeddb_key_path.cc ++++ b/third_party/blink/common/indexeddb/indexeddb_key_path.cc +@@ -18,12 +18,12 @@ + : type_(mojom::IDBKeyPathType::Array), array_(array) {} + + IndexedDBKeyPath::IndexedDBKeyPath(const IndexedDBKeyPath& other) = default; +-IndexedDBKeyPath::IndexedDBKeyPath(IndexedDBKeyPath&& other) noexcept = default; ++IndexedDBKeyPath::IndexedDBKeyPath(IndexedDBKeyPath&& other) = default; + IndexedDBKeyPath::~IndexedDBKeyPath() = default; + IndexedDBKeyPath& IndexedDBKeyPath::operator=(const IndexedDBKeyPath& other) = + default; +-IndexedDBKeyPath& IndexedDBKeyPath::operator=( +- IndexedDBKeyPath&& other) noexcept = default; ++IndexedDBKeyPath& IndexedDBKeyPath::operator=(IndexedDBKeyPath&& other) = ++ default; + + const std::vector& IndexedDBKeyPath::array() const { + DCHECK(type_ == blink::mojom::IDBKeyPathType::Array); +diff --git a/third_party/blink/common/indexeddb/indexeddb_metadata.cc b/third_party/blink/common/indexeddb/indexeddb_metadata.cc +index 50d5845..9349732 100644 +--- a/third_party/blink/common/indexeddb/indexeddb_metadata.cc ++++ b/third_party/blink/common/indexeddb/indexeddb_metadata.cc +@@ -23,15 +23,15 @@ + + IndexedDBIndexMetadata::IndexedDBIndexMetadata( + const IndexedDBIndexMetadata& other) = default; +-IndexedDBIndexMetadata::IndexedDBIndexMetadata( +- IndexedDBIndexMetadata&& other) noexcept = default; ++IndexedDBIndexMetadata::IndexedDBIndexMetadata(IndexedDBIndexMetadata&& other) = ++ default; + + IndexedDBIndexMetadata::~IndexedDBIndexMetadata() = default; + + IndexedDBIndexMetadata& IndexedDBIndexMetadata::operator=( + const IndexedDBIndexMetadata& other) = default; + IndexedDBIndexMetadata& IndexedDBIndexMetadata::operator=( +- IndexedDBIndexMetadata&& other) noexcept = default; ++ IndexedDBIndexMetadata&& other) = default; + + bool IndexedDBIndexMetadata::operator==( + const IndexedDBIndexMetadata& other) const { +@@ -56,14 +56,14 @@ + IndexedDBObjectStoreMetadata::IndexedDBObjectStoreMetadata( + const IndexedDBObjectStoreMetadata& other) = default; + IndexedDBObjectStoreMetadata::IndexedDBObjectStoreMetadata( +- IndexedDBObjectStoreMetadata&& other) noexcept = default; ++ IndexedDBObjectStoreMetadata&& other) = default; + + IndexedDBObjectStoreMetadata::~IndexedDBObjectStoreMetadata() = default; + + IndexedDBObjectStoreMetadata& IndexedDBObjectStoreMetadata::operator=( + const IndexedDBObjectStoreMetadata& other) = default; + IndexedDBObjectStoreMetadata& IndexedDBObjectStoreMetadata::operator=( +- IndexedDBObjectStoreMetadata&& other) noexcept = default; ++ IndexedDBObjectStoreMetadata&& other) = default; + + bool IndexedDBObjectStoreMetadata::operator==( + const IndexedDBObjectStoreMetadata& other) const { +@@ -87,14 +87,14 @@ + IndexedDBDatabaseMetadata::IndexedDBDatabaseMetadata( + const IndexedDBDatabaseMetadata& other) = default; + IndexedDBDatabaseMetadata::IndexedDBDatabaseMetadata( +- IndexedDBDatabaseMetadata&& other) noexcept = default; ++ IndexedDBDatabaseMetadata&& other) = default; + + IndexedDBDatabaseMetadata::~IndexedDBDatabaseMetadata() = default; + + IndexedDBDatabaseMetadata& IndexedDBDatabaseMetadata::operator=( + const IndexedDBDatabaseMetadata& other) = default; + IndexedDBDatabaseMetadata& IndexedDBDatabaseMetadata::operator=( +- IndexedDBDatabaseMetadata&& other) noexcept = default; ++ IndexedDBDatabaseMetadata&& other) = default; + + bool IndexedDBDatabaseMetadata::operator==( + const IndexedDBDatabaseMetadata& other) const { +diff --git a/third_party/blink/common/mediastream/media_devices.cc b/third_party/blink/common/mediastream/media_devices.cc +index 93df201..3661b4b 100644 +--- a/third_party/blink/common/mediastream/media_devices.cc ++++ b/third_party/blink/common/mediastream/media_devices.cc +@@ -13,8 +13,7 @@ + WebMediaDeviceInfo::WebMediaDeviceInfo(const WebMediaDeviceInfo& other) = + default; + +-WebMediaDeviceInfo::WebMediaDeviceInfo(WebMediaDeviceInfo&& other) noexcept = +- default; ++WebMediaDeviceInfo::WebMediaDeviceInfo(WebMediaDeviceInfo&& other) = default; + + WebMediaDeviceInfo::WebMediaDeviceInfo(const std::string& device_id, + const std::string& label, +@@ -36,8 +35,8 @@ + WebMediaDeviceInfo& WebMediaDeviceInfo::operator=( + const WebMediaDeviceInfo& other) = default; + +-WebMediaDeviceInfo& WebMediaDeviceInfo::operator=( +- WebMediaDeviceInfo&& other) noexcept = default; ++WebMediaDeviceInfo& WebMediaDeviceInfo::operator=(WebMediaDeviceInfo&& other) = ++ default; + + bool operator==(const WebMediaDeviceInfo& first, + const WebMediaDeviceInfo& second) { +diff --git a/third_party/blink/common/messaging/cloneable_message.cc b/third_party/blink/common/messaging/cloneable_message.cc +index 2984fd1..5c3ee7e 100644 +--- a/third_party/blink/common/messaging/cloneable_message.cc ++++ b/third_party/blink/common/messaging/cloneable_message.cc +@@ -12,9 +12,8 @@ + namespace blink { + + CloneableMessage::CloneableMessage() = default; +-CloneableMessage::CloneableMessage(CloneableMessage&&) noexcept = default; +-CloneableMessage& CloneableMessage::operator=(CloneableMessage&&) noexcept = +- default; ++CloneableMessage::CloneableMessage(CloneableMessage&&) = default; ++CloneableMessage& CloneableMessage::operator=(CloneableMessage&&) = default; + CloneableMessage::~CloneableMessage() = default; + + CloneableMessage CloneableMessage::ShallowClone() const { +diff --git a/third_party/blink/common/messaging/transferable_message.cc b/third_party/blink/common/messaging/transferable_message.cc +index 07ac9bb..4a69d0a 100644 +--- a/third_party/blink/common/messaging/transferable_message.cc ++++ b/third_party/blink/common/messaging/transferable_message.cc +@@ -9,10 +9,9 @@ + namespace blink { + + TransferableMessage::TransferableMessage() = default; +-TransferableMessage::TransferableMessage(TransferableMessage&&) noexcept = ++TransferableMessage::TransferableMessage(TransferableMessage&&) = default; ++TransferableMessage& TransferableMessage::operator=(TransferableMessage&&) = + default; +-TransferableMessage& TransferableMessage::operator=( +- TransferableMessage&&) noexcept = default; + TransferableMessage::~TransferableMessage() = default; + + } // namespace blink +diff --git a/third_party/blink/public/common/indexeddb/indexeddb_key_path.h b/third_party/blink/public/common/indexeddb/indexeddb_key_path.h +index 8ebe10c..9f5422c 100644 +--- a/third_party/blink/public/common/indexeddb/indexeddb_key_path.h ++++ b/third_party/blink/public/common/indexeddb/indexeddb_key_path.h +@@ -22,10 +22,10 @@ + explicit IndexedDBKeyPath(const base::string16&); + explicit IndexedDBKeyPath(const std::vector&); + IndexedDBKeyPath(const IndexedDBKeyPath& other); +- IndexedDBKeyPath(IndexedDBKeyPath&& other) noexcept; ++ IndexedDBKeyPath(IndexedDBKeyPath&& other); + ~IndexedDBKeyPath(); + IndexedDBKeyPath& operator=(const IndexedDBKeyPath& other); +- IndexedDBKeyPath& operator=(IndexedDBKeyPath&& other) noexcept; ++ IndexedDBKeyPath& operator=(IndexedDBKeyPath&& other); + + bool IsNull() const { return type_ == blink::mojom::IDBKeyPathType::Null; } + bool operator==(const IndexedDBKeyPath& other) const; +diff --git a/third_party/blink/public/common/indexeddb/indexeddb_metadata.h b/third_party/blink/public/common/indexeddb/indexeddb_metadata.h +index 15663f6..7bb37c9 100644 +--- a/third_party/blink/public/common/indexeddb/indexeddb_metadata.h ++++ b/third_party/blink/public/common/indexeddb/indexeddb_metadata.h +@@ -26,10 +26,10 @@ + bool unique, + bool multi_entry); + IndexedDBIndexMetadata(const IndexedDBIndexMetadata& other); +- IndexedDBIndexMetadata(IndexedDBIndexMetadata&& other) noexcept; ++ IndexedDBIndexMetadata(IndexedDBIndexMetadata&& other); + ~IndexedDBIndexMetadata(); + IndexedDBIndexMetadata& operator=(const IndexedDBIndexMetadata& other); +- IndexedDBIndexMetadata& operator=(IndexedDBIndexMetadata&& other) noexcept; ++ IndexedDBIndexMetadata& operator=(IndexedDBIndexMetadata&& other); + bool operator==(const IndexedDBIndexMetadata& other) const; + + base::string16 name; +@@ -50,12 +50,11 @@ + bool auto_increment, + int64_t max_index_id); + IndexedDBObjectStoreMetadata(const IndexedDBObjectStoreMetadata& other); +- IndexedDBObjectStoreMetadata(IndexedDBObjectStoreMetadata&& other) noexcept; ++ IndexedDBObjectStoreMetadata(IndexedDBObjectStoreMetadata&& other); + ~IndexedDBObjectStoreMetadata(); + IndexedDBObjectStoreMetadata& operator=( + const IndexedDBObjectStoreMetadata& other); +- IndexedDBObjectStoreMetadata& operator=( +- IndexedDBObjectStoreMetadata&& other) noexcept; ++ IndexedDBObjectStoreMetadata& operator=(IndexedDBObjectStoreMetadata&& other); + bool operator==(const IndexedDBObjectStoreMetadata& other) const; + + base::string16 name; +@@ -77,11 +76,10 @@ + int64_t version, + int64_t max_object_store_id); + IndexedDBDatabaseMetadata(const IndexedDBDatabaseMetadata& other); +- IndexedDBDatabaseMetadata(IndexedDBDatabaseMetadata&& other) noexcept; ++ IndexedDBDatabaseMetadata(IndexedDBDatabaseMetadata&& other); + ~IndexedDBDatabaseMetadata(); + IndexedDBDatabaseMetadata& operator=(const IndexedDBDatabaseMetadata& other); +- IndexedDBDatabaseMetadata& operator=( +- IndexedDBDatabaseMetadata&& other) noexcept; ++ IndexedDBDatabaseMetadata& operator=(IndexedDBDatabaseMetadata&& other); + bool operator==(const IndexedDBDatabaseMetadata& other) const; + + base::string16 name; +diff --git a/third_party/blink/public/common/mediastream/media_devices.h b/third_party/blink/public/common/mediastream/media_devices.h +index 0d63e575..d87affe 100644 +--- a/third_party/blink/public/common/mediastream/media_devices.h ++++ b/third_party/blink/public/common/mediastream/media_devices.h +@@ -27,7 +27,7 @@ + struct BLINK_COMMON_EXPORT WebMediaDeviceInfo { + WebMediaDeviceInfo(); + WebMediaDeviceInfo(const WebMediaDeviceInfo& other); +- WebMediaDeviceInfo(WebMediaDeviceInfo&& other) noexcept; ++ WebMediaDeviceInfo(WebMediaDeviceInfo&& other); + WebMediaDeviceInfo( + const std::string& device_id, + const std::string& label, +@@ -37,7 +37,7 @@ + const media::VideoCaptureDeviceDescriptor& descriptor); + ~WebMediaDeviceInfo(); + WebMediaDeviceInfo& operator=(const WebMediaDeviceInfo& other); +- WebMediaDeviceInfo& operator=(WebMediaDeviceInfo&& other) noexcept; ++ WebMediaDeviceInfo& operator=(WebMediaDeviceInfo&& other); + + std::string device_id; + std::string label; +diff --git a/third_party/blink/public/common/messaging/cloneable_message.h b/third_party/blink/public/common/messaging/cloneable_message.h +index de9952d..8dbd910 100644 +--- a/third_party/blink/public/common/messaging/cloneable_message.h ++++ b/third_party/blink/public/common/messaging/cloneable_message.h +@@ -21,8 +21,8 @@ + // This type can be serialized as a blink::mojom::CloneableMessage struct. + struct BLINK_COMMON_EXPORT CloneableMessage { + CloneableMessage(); +- CloneableMessage(CloneableMessage&&) noexcept; +- CloneableMessage& operator=(CloneableMessage&&) noexcept; ++ CloneableMessage(CloneableMessage&&); ++ CloneableMessage& operator=(CloneableMessage&&); + ~CloneableMessage(); + + // Returns a shallow clone of this message. |encoded_message| in the clone +diff --git a/third_party/blink/public/common/messaging/transferable_message.h b/third_party/blink/public/common/messaging/transferable_message.h +index 5eef63c..2d87363 100644 +--- a/third_party/blink/public/common/messaging/transferable_message.h ++++ b/third_party/blink/public/common/messaging/transferable_message.h +@@ -22,8 +22,8 @@ + // type can be serialized as a blink::mojom::TransferableMessage struct. + struct BLINK_COMMON_EXPORT TransferableMessage : public CloneableMessage { + TransferableMessage(); +- TransferableMessage(TransferableMessage&&) noexcept; +- TransferableMessage& operator=(TransferableMessage&&) noexcept; ++ TransferableMessage(TransferableMessage&&); ++ TransferableMessage& operator=(TransferableMessage&&); + ~TransferableMessage(); + + // Any ports being transferred as part of this message. +diff --git a/third_party/blink/public/platform/scheduler/web_scoped_virtual_time_pauser.h b/third_party/blink/public/platform/scheduler/web_scoped_virtual_time_pauser.h +index 75f3ae16..81edd69 100644 +--- a/third_party/blink/public/platform/scheduler/web_scoped_virtual_time_pauser.h ++++ b/third_party/blink/public/platform/scheduler/web_scoped_virtual_time_pauser.h +@@ -42,9 +42,8 @@ + WebScopedVirtualTimePauser(); + ~WebScopedVirtualTimePauser(); + +- WebScopedVirtualTimePauser(WebScopedVirtualTimePauser&& other) noexcept; +- WebScopedVirtualTimePauser& operator=( +- WebScopedVirtualTimePauser&& other) noexcept; ++ WebScopedVirtualTimePauser(WebScopedVirtualTimePauser&& other); ++ WebScopedVirtualTimePauser& operator=(WebScopedVirtualTimePauser&& other); + + WebScopedVirtualTimePauser(const WebScopedVirtualTimePauser&) = delete; + WebScopedVirtualTimePauser& operator=(const WebScopedVirtualTimePauser&) = +diff --git a/third_party/blink/public/platform/web_string.h b/third_party/blink/public/platform/web_string.h +index e4fda4f..ffd1da0 100644 +--- a/third_party/blink/public/platform/web_string.h ++++ b/third_party/blink/public/platform/web_string.h +@@ -102,10 +102,10 @@ + BLINK_PLATFORM_EXPORT WebString(const WebUChar* data, size_t len); + + BLINK_PLATFORM_EXPORT WebString(const WebString&); +- BLINK_PLATFORM_EXPORT WebString(WebString&&) noexcept; ++ BLINK_PLATFORM_EXPORT WebString(WebString&&); + + BLINK_PLATFORM_EXPORT WebString& operator=(const WebString&); +- BLINK_PLATFORM_EXPORT WebString& operator=(WebString&&) noexcept; ++ BLINK_PLATFORM_EXPORT WebString& operator=(WebString&&); + + BLINK_PLATFORM_EXPORT void Reset(); + +diff --git a/third_party/blink/public/web/modules/mediastream/media_stream_constraints_util.h b/third_party/blink/public/web/modules/mediastream/media_stream_constraints_util.h +index 99f47f5..8451b86 100644 +--- a/third_party/blink/public/web/modules/mediastream/media_stream_constraints_util.h ++++ b/third_party/blink/public/web/modules/mediastream/media_stream_constraints_util.h +@@ -73,8 +73,8 @@ + + VideoCaptureSettings(const VideoCaptureSettings& other); + VideoCaptureSettings& operator=(const VideoCaptureSettings& other); +- VideoCaptureSettings(VideoCaptureSettings&& other) noexcept; +- VideoCaptureSettings& operator=(VideoCaptureSettings&& other) noexcept; ++ VideoCaptureSettings(VideoCaptureSettings&& other); ++ VideoCaptureSettings& operator=(VideoCaptureSettings&& other); + ~VideoCaptureSettings(); + + bool HasValue() const { return !failed_constraint_name_; } +@@ -193,8 +193,8 @@ + const AudioProcessingProperties& audio_processing_properties); + AudioCaptureSettings(const AudioCaptureSettings& other); + AudioCaptureSettings& operator=(const AudioCaptureSettings& other); +- AudioCaptureSettings(AudioCaptureSettings&& other) noexcept; +- AudioCaptureSettings& operator=(AudioCaptureSettings&& other) noexcept; ++ AudioCaptureSettings(AudioCaptureSettings&& other); ++ AudioCaptureSettings& operator=(AudioCaptureSettings&& other); + + bool HasValue() const { return !failed_constraint_name_; } + +diff --git a/third_party/blink/public/web/modules/mediastream/media_stream_constraints_util_sets.h b/third_party/blink/public/web/modules/mediastream/media_stream_constraints_util_sets.h +index 199bdeb..c89e6e9 100644 +--- a/third_party/blink/public/web/modules/mediastream/media_stream_constraints_util_sets.h ++++ b/third_party/blink/public/web/modules/mediastream/media_stream_constraints_util_sets.h +@@ -159,8 +159,8 @@ + + DiscreteSet(const DiscreteSet& other) = default; + DiscreteSet& operator=(const DiscreteSet& other) = default; +- DiscreteSet(DiscreteSet&& other) noexcept = default; +- DiscreteSet& operator=(DiscreteSet&& other) noexcept = default; ++ DiscreteSet(DiscreteSet&& other) = default; ++ DiscreteSet& operator=(DiscreteSet&& other) = default; + ~DiscreteSet() = default; + + bool Contains(const T& value) const { +diff --git a/third_party/blink/public/web/modules/mediastream/media_stream_video_source.h b/third_party/blink/public/web/modules/mediastream/media_stream_video_source.h +index 5e50d1b..ed5967f 100644 +--- a/third_party/blink/public/web/modules/mediastream/media_stream_video_source.h ++++ b/third_party/blink/public/web/modules/mediastream/media_stream_video_source.h +@@ -285,8 +285,8 @@ + const VideoTrackFormatCallback& format_callback, + std::unique_ptr adapter_settings, + const ConstraintsCallback& callback); +- PendingTrackInfo(PendingTrackInfo&& other) noexcept; +- PendingTrackInfo& operator=(PendingTrackInfo&& other) noexcept; ++ PendingTrackInfo(PendingTrackInfo&& other); ++ PendingTrackInfo& operator=(PendingTrackInfo&& other); + ~PendingTrackInfo(); + + MediaStreamVideoTrack* track; +diff --git a/third_party/blink/renderer/core/animation/interpolation_value.h b/third_party/blink/renderer/core/animation/interpolation_value.h +index 75c5d35..17ccf02 100644 +--- a/third_party/blink/renderer/core/animation/interpolation_value.h ++++ b/third_party/blink/renderer/core/animation/interpolation_value.h +@@ -27,11 +27,11 @@ + + InterpolationValue(std::nullptr_t) {} + +- InterpolationValue(InterpolationValue&& other) noexcept ++ InterpolationValue(InterpolationValue&& other) + : interpolable_value(std::move(other.interpolable_value)), + non_interpolable_value(std::move(other.non_interpolable_value)) {} + +- void operator=(InterpolationValue&& other) noexcept { ++ void operator=(InterpolationValue&& other) { + interpolable_value = std::move(other.interpolable_value); + non_interpolable_value = std::move(other.non_interpolable_value); + } +diff --git a/third_party/blink/renderer/core/animation/pairwise_interpolation_value.h b/third_party/blink/renderer/core/animation/pairwise_interpolation_value.h +index 39e6c57..87bb431 100644 +--- a/third_party/blink/renderer/core/animation/pairwise_interpolation_value.h ++++ b/third_party/blink/renderer/core/animation/pairwise_interpolation_value.h +@@ -28,7 +28,7 @@ + + PairwiseInterpolationValue(std::nullptr_t) {} + +- PairwiseInterpolationValue(PairwiseInterpolationValue&& other) noexcept ++ PairwiseInterpolationValue(PairwiseInterpolationValue&& other) + : start_interpolable_value(std::move(other.start_interpolable_value)), + end_interpolable_value(std::move(other.end_interpolable_value)), + non_interpolable_value(std::move(other.non_interpolable_value)) {} +diff --git a/third_party/blink/renderer/core/css/css_selector_list.h b/third_party/blink/renderer/core/css/css_selector_list.h +index 4d38b09..51f354b 100644 +--- a/third_party/blink/renderer/core/css/css_selector_list.h ++++ b/third_party/blink/renderer/core/css/css_selector_list.h +@@ -67,8 +67,7 @@ + public: + CSSSelectorList() : selector_array_(nullptr) {} + +- CSSSelectorList(CSSSelectorList&& o) noexcept +- : selector_array_(o.selector_array_) { ++ CSSSelectorList(CSSSelectorList&& o) : selector_array_(o.selector_array_) { + o.selector_array_ = nullptr; + } + +@@ -82,7 +81,7 @@ + bool HasPseudoWhere() const; + bool RequiresExpansion() const; + +- CSSSelectorList& operator=(CSSSelectorList&& o) noexcept { ++ CSSSelectorList& operator=(CSSSelectorList&& o) { + DCHECK(this != &o); + DeleteSelectorsIfNeeded(); + selector_array_ = o.selector_array_; +diff --git a/third_party/blink/renderer/core/display_lock/display_lock_context.cc b/third_party/blink/renderer/core/display_lock/display_lock_context.cc +index 0e6b6cb..79f281a 100644 +--- a/third_party/blink/renderer/core/display_lock/display_lock_context.cc ++++ b/third_party/blink/renderer/core/display_lock/display_lock_context.cc +@@ -1033,7 +1033,7 @@ + : context_(context) {} + + DisplayLockContext::ScopedForcedUpdate::ScopedForcedUpdate( +- ScopedForcedUpdate&& other) noexcept ++ ScopedForcedUpdate&& other) + : context_(other.context_) { + other.context_ = nullptr; + } +diff --git a/third_party/blink/renderer/core/display_lock/display_lock_context.h b/third_party/blink/renderer/core/display_lock/display_lock_context.h +index 1a38b2af..f890b432 100644 +--- a/third_party/blink/renderer/core/display_lock/display_lock_context.h ++++ b/third_party/blink/renderer/core/display_lock/display_lock_context.h +@@ -76,7 +76,7 @@ + DISALLOW_NEW(); + + public: +- ScopedForcedUpdate(ScopedForcedUpdate&&) noexcept; ++ ScopedForcedUpdate(ScopedForcedUpdate&&); + ~ScopedForcedUpdate(); + + private: +diff --git a/third_party/blink/renderer/core/editing/layout_selection.cc b/third_party/blink/renderer/core/editing/layout_selection.cc +index 00040d2..73cfe0f 100644 +--- a/third_party/blink/renderer/core/editing/layout_selection.cc ++++ b/third_party/blink/renderer/core/editing/layout_selection.cc +@@ -178,7 +178,7 @@ + public: + OldSelectedNodes() + : paint_range(MakeGarbageCollected()) {} +- OldSelectedNodes(OldSelectedNodes&& other) noexcept { ++ OldSelectedNodes(OldSelectedNodes&& other) { + paint_range = other.paint_range; + selected_map = std::move(other.selected_map); + } +@@ -205,8 +205,7 @@ + HeapHashSet>&& passed_selected_objects) + : paint_range(passed_paint_range), + selected_objects(std::move(passed_selected_objects)) {} +- NewPaintRangeAndSelectedNodes( +- NewPaintRangeAndSelectedNodes&& other) noexcept { ++ NewPaintRangeAndSelectedNodes(NewPaintRangeAndSelectedNodes&& other) { + paint_range = other.paint_range; + selected_objects = std::move(other.selected_objects); + } +diff --git a/third_party/blink/renderer/core/frame/local_frame_ukm_aggregator.cc b/third_party/blink/renderer/core/frame/local_frame_ukm_aggregator.cc +index f0ac3c4..81f47ab 100644 +--- a/third_party/blink/renderer/core/frame/local_frame_ukm_aggregator.cc ++++ b/third_party/blink/renderer/core/frame/local_frame_ukm_aggregator.cc +@@ -24,7 +24,7 @@ + start_time_(clock_->NowTicks()) {} + + LocalFrameUkmAggregator::ScopedUkmHierarchicalTimer::ScopedUkmHierarchicalTimer( +- ScopedUkmHierarchicalTimer&& other) noexcept ++ ScopedUkmHierarchicalTimer&& other) + : aggregator_(other.aggregator_), + metric_index_(other.metric_index_), + clock_(other.clock_), +diff --git a/third_party/blink/renderer/core/frame/local_frame_ukm_aggregator.h b/third_party/blink/renderer/core/frame/local_frame_ukm_aggregator.h +index 44c3f87..dc06091 100644 +--- a/third_party/blink/renderer/core/frame/local_frame_ukm_aggregator.h ++++ b/third_party/blink/renderer/core/frame/local_frame_ukm_aggregator.h +@@ -195,7 +195,7 @@ + STACK_ALLOCATED(); + + public: +- ScopedUkmHierarchicalTimer(ScopedUkmHierarchicalTimer&&) noexcept; ++ ScopedUkmHierarchicalTimer(ScopedUkmHierarchicalTimer&&); + ~ScopedUkmHierarchicalTimer(); + + private: +diff --git a/third_party/blink/renderer/core/layout/ng/inline/ng_line_box_fragment_builder.h b/third_party/blink/renderer/core/layout/ng/inline/ng_line_box_fragment_builder.h +index 2af19ca..498e42e 100644 +--- a/third_party/blink/renderer/core/layout/ng/inline/ng_line_box_fragment_builder.h ++++ b/third_party/blink/renderer/core/layout/ng/inline/ng_line_box_fragment_builder.h +@@ -181,7 +181,7 @@ + + public: + ChildList() = default; +- void operator=(ChildList&& other) noexcept { ++ void operator=(ChildList&& other) { + children_ = std::move(other.children_); + } + +diff --git a/third_party/blink/renderer/core/layout/ng/ng_constraint_space.h b/third_party/blink/renderer/core/layout/ng/ng_constraint_space.h +index 8f77b90..833b0d2 100644 +--- a/third_party/blink/renderer/core/layout/ng/ng_constraint_space.h ++++ b/third_party/blink/renderer/core/layout/ng/ng_constraint_space.h +@@ -86,7 +86,7 @@ + else + bfc_offset_ = other.bfc_offset_; + } +- NGConstraintSpace(NGConstraintSpace&& other) noexcept ++ NGConstraintSpace(NGConstraintSpace&& other) + : available_size_(other.available_size_), + exclusion_space_(std::move(other.exclusion_space_)), + bitfields_(other.bitfields_) { +@@ -110,7 +110,7 @@ + bitfields_ = other.bitfields_; + return *this; + } +- NGConstraintSpace& operator=(NGConstraintSpace&& other) noexcept { ++ NGConstraintSpace& operator=(NGConstraintSpace&& other) { + available_size_ = other.available_size_; + if (HasRareData()) + delete rare_data_; +diff --git a/third_party/blink/renderer/core/messaging/blink_cloneable_message.cc b/third_party/blink/renderer/core/messaging/blink_cloneable_message.cc +index b6c8768..7423930 100644 +--- a/third_party/blink/renderer/core/messaging/blink_cloneable_message.cc ++++ b/third_party/blink/renderer/core/messaging/blink_cloneable_message.cc +@@ -9,9 +9,8 @@ + BlinkCloneableMessage::BlinkCloneableMessage() = default; + BlinkCloneableMessage::~BlinkCloneableMessage() = default; + +-BlinkCloneableMessage::BlinkCloneableMessage(BlinkCloneableMessage&&) noexcept = +- default; ++BlinkCloneableMessage::BlinkCloneableMessage(BlinkCloneableMessage&&) = default; + BlinkCloneableMessage& BlinkCloneableMessage::operator=( +- BlinkCloneableMessage&&) noexcept = default; ++ BlinkCloneableMessage&&) = default; + + } // namespace blink +diff --git a/third_party/blink/renderer/core/messaging/blink_cloneable_message.h b/third_party/blink/renderer/core/messaging/blink_cloneable_message.h +index 337b0f8..a51e888 100644 +--- a/third_party/blink/renderer/core/messaging/blink_cloneable_message.h ++++ b/third_party/blink/renderer/core/messaging/blink_cloneable_message.h +@@ -21,8 +21,8 @@ + BlinkCloneableMessage(); + ~BlinkCloneableMessage(); + +- BlinkCloneableMessage(BlinkCloneableMessage&&) noexcept; +- BlinkCloneableMessage& operator=(BlinkCloneableMessage&&) noexcept; ++ BlinkCloneableMessage(BlinkCloneableMessage&&); ++ BlinkCloneableMessage& operator=(BlinkCloneableMessage&&); + + scoped_refptr message; + v8_inspector::V8StackTraceId sender_stack_trace_id; +diff --git a/third_party/blink/renderer/core/messaging/blink_transferable_message.cc b/third_party/blink/renderer/core/messaging/blink_transferable_message.cc +index 909ddb0..b5cdfda 100644 +--- a/third_party/blink/renderer/core/messaging/blink_transferable_message.cc ++++ b/third_party/blink/renderer/core/messaging/blink_transferable_message.cc +@@ -16,10 +16,10 @@ + BlinkTransferableMessage::BlinkTransferableMessage() = default; + BlinkTransferableMessage::~BlinkTransferableMessage() = default; + +-BlinkTransferableMessage::BlinkTransferableMessage( +- BlinkTransferableMessage&&) noexcept = default; ++BlinkTransferableMessage::BlinkTransferableMessage(BlinkTransferableMessage&&) = ++ default; + BlinkTransferableMessage& BlinkTransferableMessage::operator=( +- BlinkTransferableMessage&&) noexcept = default; ++ BlinkTransferableMessage&&) = default; + + scoped_refptr ToStaticBitmapImage( + const SkBitmap& sk_bitmap) { +diff --git a/third_party/blink/renderer/core/messaging/blink_transferable_message.h b/third_party/blink/renderer/core/messaging/blink_transferable_message.h +index edf4fab..3957bed 100644 +--- a/third_party/blink/renderer/core/messaging/blink_transferable_message.h ++++ b/third_party/blink/renderer/core/messaging/blink_transferable_message.h +@@ -24,8 +24,8 @@ + BlinkTransferableMessage(); + ~BlinkTransferableMessage(); + +- BlinkTransferableMessage(BlinkTransferableMessage&&) noexcept; +- BlinkTransferableMessage& operator=(BlinkTransferableMessage&&) noexcept; ++ BlinkTransferableMessage(BlinkTransferableMessage&&); ++ BlinkTransferableMessage& operator=(BlinkTransferableMessage&&); + + Vector ports; + +diff --git a/third_party/blink/renderer/modules/imagecapture/image_capture_frame_grabber.h b/third_party/blink/renderer/modules/imagecapture/image_capture_frame_grabber.h +index 85b46e1..f050a85 100644 +--- a/third_party/blink/renderer/modules/imagecapture/image_capture_frame_grabber.h ++++ b/third_party/blink/renderer/modules/imagecapture/image_capture_frame_grabber.h +@@ -92,10 +92,10 @@ + std::move(destruction_callback_).Run(std::move(callbacks_)); + } + +- ScopedWebCallbacks(ScopedWebCallbacks&& other) noexcept = default; ++ ScopedWebCallbacks(ScopedWebCallbacks&& other) = default; + ScopedWebCallbacks(const ScopedWebCallbacks& other) = delete; + +- ScopedWebCallbacks& operator=(ScopedWebCallbacks&& other) noexcept = default; ++ ScopedWebCallbacks& operator=(ScopedWebCallbacks&& other) = default; + ScopedWebCallbacks& operator=(const ScopedWebCallbacks& other) = delete; + + std::unique_ptr PassCallbacks() { +diff --git a/third_party/blink/renderer/modules/indexeddb/idb_request.h b/third_party/blink/renderer/modules/indexeddb/idb_request.h +index f85b864..d3f1132 100644 +--- a/third_party/blink/renderer/modules/indexeddb/idb_request.h ++++ b/third_party/blink/renderer/modules/indexeddb/idb_request.h +@@ -110,13 +110,13 @@ + ~AsyncTraceState(); + + // Used to transfer the trace end event state to an IDBRequest. +- AsyncTraceState(AsyncTraceState&& other) noexcept { ++ AsyncTraceState(AsyncTraceState&& other) { + DCHECK(IsEmpty()); + this->trace_event_name_ = other.trace_event_name_; + this->id_ = other.id_; + other.trace_event_name_ = nullptr; + } +- AsyncTraceState& operator=(AsyncTraceState&& rhs) noexcept { ++ AsyncTraceState& operator=(AsyncTraceState&& rhs) { + DCHECK(IsEmpty()); + this->trace_event_name_ = rhs.trace_event_name_; + this->id_ = rhs.id_; +diff --git a/third_party/blink/renderer/modules/indexeddb/idb_request_test.cc b/third_party/blink/renderer/modules/indexeddb/idb_request_test.cc +index 84de726..2d3d4de5 100644 +--- a/third_party/blink/renderer/modules/indexeddb/idb_request_test.cc ++++ b/third_party/blink/renderer/modules/indexeddb/idb_request_test.cc +@@ -434,10 +434,9 @@ + class AsyncTraceStateForTesting : public IDBRequest::AsyncTraceState { + public: + AsyncTraceStateForTesting() : IDBRequest::AsyncTraceState() {} +- AsyncTraceStateForTesting(AsyncTraceStateForTesting&& other) noexcept ++ AsyncTraceStateForTesting(AsyncTraceStateForTesting&& other) + : IDBRequest::AsyncTraceState(std::move(other)) {} +- AsyncTraceStateForTesting& operator=( +- AsyncTraceStateForTesting&& rhs) noexcept { ++ AsyncTraceStateForTesting& operator=(AsyncTraceStateForTesting&& rhs) { + AsyncTraceState::operator=(std::move(rhs)); + return *this; + } +diff --git a/third_party/blink/renderer/modules/mediastream/media_stream_constraints_util.cc b/third_party/blink/renderer/modules/mediastream/media_stream_constraints_util.cc +index 24499bd..3bf00e9 100644 +--- a/third_party/blink/renderer/modules/mediastream/media_stream_constraints_util.cc ++++ b/third_party/blink/renderer/modules/mediastream/media_stream_constraints_util.cc +@@ -134,13 +134,13 @@ + + VideoCaptureSettings::VideoCaptureSettings(const VideoCaptureSettings& other) = + default; +-VideoCaptureSettings::VideoCaptureSettings( +- VideoCaptureSettings&& other) noexcept = default; ++VideoCaptureSettings::VideoCaptureSettings(VideoCaptureSettings&& other) = ++ default; + VideoCaptureSettings::~VideoCaptureSettings() = default; + VideoCaptureSettings& VideoCaptureSettings::operator=( + const VideoCaptureSettings& other) = default; + VideoCaptureSettings& VideoCaptureSettings::operator=( +- VideoCaptureSettings&& other) noexcept = default; ++ VideoCaptureSettings&& other) = default; + + AudioCaptureSettings::AudioCaptureSettings() : AudioCaptureSettings("") {} + +@@ -166,10 +166,10 @@ + default; + AudioCaptureSettings& AudioCaptureSettings::operator=( + const AudioCaptureSettings& other) = default; +-AudioCaptureSettings::AudioCaptureSettings( +- AudioCaptureSettings&& other) noexcept = default; ++AudioCaptureSettings::AudioCaptureSettings(AudioCaptureSettings&& other) = ++ default; + AudioCaptureSettings& AudioCaptureSettings::operator=( +- AudioCaptureSettings&& other) noexcept = default; ++ AudioCaptureSettings&& other) = default; + + bool GetConstraintValueAsBoolean( + const WebMediaConstraints& constraints, +diff --git a/third_party/blink/renderer/modules/mediastream/media_stream_constraints_util_video_device.cc b/third_party/blink/renderer/modules/mediastream/media_stream_constraints_util_video_device.cc +index 96992217..67c8bab 100644 +--- a/third_party/blink/renderer/modules/mediastream/media_stream_constraints_util_video_device.cc ++++ b/third_party/blink/renderer/modules/mediastream/media_stream_constraints_util_video_device.cc +@@ -529,9 +529,9 @@ + facing_mode(facing_mode) {} + + VideoInputDeviceCapabilities::VideoInputDeviceCapabilities( +- VideoInputDeviceCapabilities&& other) noexcept = default; ++ VideoInputDeviceCapabilities&& other) = default; + VideoInputDeviceCapabilities& VideoInputDeviceCapabilities::operator=( +- VideoInputDeviceCapabilities&& other) noexcept = default; ++ VideoInputDeviceCapabilities&& other) = default; + + VideoInputDeviceCapabilities::~VideoInputDeviceCapabilities() = default; + +@@ -557,10 +557,10 @@ + + VideoDeviceCaptureCapabilities::VideoDeviceCaptureCapabilities() = default; + VideoDeviceCaptureCapabilities::VideoDeviceCaptureCapabilities( +- VideoDeviceCaptureCapabilities&& other) noexcept = default; ++ VideoDeviceCaptureCapabilities&& other) = default; + VideoDeviceCaptureCapabilities::~VideoDeviceCaptureCapabilities() = default; + VideoDeviceCaptureCapabilities& VideoDeviceCaptureCapabilities::operator=( +- VideoDeviceCaptureCapabilities&& other) noexcept = default; ++ VideoDeviceCaptureCapabilities&& other) = default; + + VideoCaptureSettings SelectSettingsVideoDeviceCapture( + const VideoDeviceCaptureCapabilities& capabilities, +diff --git a/third_party/blink/renderer/modules/mediastream/media_stream_constraints_util_video_device.h b/third_party/blink/renderer/modules/mediastream/media_stream_constraints_util_video_device.h +index 66ae103..94d8ed9 100644 +--- a/third_party/blink/renderer/modules/mediastream/media_stream_constraints_util_video_device.h ++++ b/third_party/blink/renderer/modules/mediastream/media_stream_constraints_util_video_device.h +@@ -34,9 +34,8 @@ + Vector formats, + media::VideoFacingMode facing_mode); + VideoInputDeviceCapabilities(); +- VideoInputDeviceCapabilities(VideoInputDeviceCapabilities&& other) noexcept; +- VideoInputDeviceCapabilities& operator=( +- VideoInputDeviceCapabilities&& other) noexcept; ++ VideoInputDeviceCapabilities(VideoInputDeviceCapabilities&& other); ++ VideoInputDeviceCapabilities& operator=(VideoInputDeviceCapabilities&& other); + ~VideoInputDeviceCapabilities(); + + String device_id; +@@ -47,11 +46,10 @@ + + struct MODULES_EXPORT VideoDeviceCaptureCapabilities { + VideoDeviceCaptureCapabilities(); +- VideoDeviceCaptureCapabilities( +- VideoDeviceCaptureCapabilities&& other) noexcept; ++ VideoDeviceCaptureCapabilities(VideoDeviceCaptureCapabilities&& other); + ~VideoDeviceCaptureCapabilities(); + VideoDeviceCaptureCapabilities& operator=( +- VideoDeviceCaptureCapabilities&& other) noexcept; ++ VideoDeviceCaptureCapabilities&& other); + + // Each capabilities field is independent of each other. + // TODO(crbug.com/704136): Replace VideoInputDeviceCapabilities in the +diff --git a/third_party/blink/renderer/modules/mediastream/media_stream_video_source.cc b/third_party/blink/renderer/modules/mediastream/media_stream_video_source.cc +index 7651e47..99759c1 100644 +--- a/third_party/blink/renderer/modules/mediastream/media_stream_video_source.cc ++++ b/third_party/blink/renderer/modules/mediastream/media_stream_video_source.cc +@@ -461,10 +461,10 @@ + callback(callback) {} + + MediaStreamVideoSource::PendingTrackInfo::PendingTrackInfo( +- PendingTrackInfo&& other) noexcept = default; ++ PendingTrackInfo&& other) = default; + MediaStreamVideoSource::PendingTrackInfo& + MediaStreamVideoSource::PendingTrackInfo::operator=( +- MediaStreamVideoSource::PendingTrackInfo&& other) noexcept = default; ++ MediaStreamVideoSource::PendingTrackInfo&& other) = default; + + MediaStreamVideoSource::PendingTrackInfo::~PendingTrackInfo() {} + +diff --git a/third_party/blink/renderer/platform/bindings/dom_data_store.h b/third_party/blink/renderer/platform/bindings/dom_data_store.h +index d660b67..0660dd18 100644 +--- a/third_party/blink/renderer/platform/bindings/dom_data_store.h ++++ b/third_party/blink/renderer/platform/bindings/dom_data_store.h +@@ -230,12 +230,11 @@ + : TraceWrapperV8Reference(isolate, handle) {} + + // Move support without write barrier. +- DOMWorldWrapperReference(DOMWorldWrapperReference&& other) noexcept ++ DOMWorldWrapperReference(DOMWorldWrapperReference&& other) + : TraceWrapperV8Reference() { + handle_ = std::move(other.handle_); + } +- DOMWorldWrapperReference& operator=( +- DOMWorldWrapperReference&& rhs) noexcept { ++ DOMWorldWrapperReference& operator=(DOMWorldWrapperReference&& rhs) { + handle_ = std::move(rhs.handle_); + return *this; + } +diff --git a/third_party/blink/renderer/platform/exported/web_string.cc b/third_party/blink/renderer/platform/exported/web_string.cc +index 71d4c07..fbe4828 100644 +--- a/third_party/blink/renderer/platform/exported/web_string.cc ++++ b/third_party/blink/renderer/platform/exported/web_string.cc +@@ -51,9 +51,9 @@ + WebString::~WebString() = default; + WebString::WebString() = default; + WebString::WebString(const WebString&) = default; +-WebString::WebString(WebString&&) noexcept = default; ++WebString::WebString(WebString&&) = default; + WebString& WebString::operator=(const WebString&) = default; +-WebString& WebString::operator=(WebString&&) noexcept = default; ++WebString& WebString::operator=(WebString&&) = default; + + WebString::WebString(const WebUChar* data, size_t len) + : impl_(StringImpl::Create8BitIfPossible(data, len)) {} +diff --git a/third_party/blink/renderer/platform/graphics/contiguous_container.cc b/third_party/blink/renderer/platform/graphics/contiguous_container.cc +index fd01c00..19cb6f2 100644 +--- a/third_party/blink/renderer/platform/graphics/contiguous_container.cc ++++ b/third_party/blink/renderer/platform/graphics/contiguous_container.cc +@@ -69,7 +69,7 @@ + : end_index_(0), max_object_size_(max_object_size) {} + + ContiguousContainerBase::ContiguousContainerBase( +- ContiguousContainerBase&& source) noexcept ++ ContiguousContainerBase&& source) + : ContiguousContainerBase(source.max_object_size_) { + Swap(source); + } +@@ -77,7 +77,7 @@ + ContiguousContainerBase::~ContiguousContainerBase() = default; + + ContiguousContainerBase& ContiguousContainerBase::operator=( +- ContiguousContainerBase&& source) noexcept { ++ ContiguousContainerBase&& source) { + Swap(source); + return *this; + } +diff --git a/third_party/blink/renderer/platform/graphics/contiguous_container.h b/third_party/blink/renderer/platform/graphics/contiguous_container.h +index 867e59c..3eee558 100644 +--- a/third_party/blink/renderer/platform/graphics/contiguous_container.h ++++ b/third_party/blink/renderer/platform/graphics/contiguous_container.h +@@ -42,10 +42,10 @@ + + protected: + explicit ContiguousContainerBase(size_t max_object_size); +- ContiguousContainerBase(ContiguousContainerBase&&) noexcept; ++ ContiguousContainerBase(ContiguousContainerBase&&); + ~ContiguousContainerBase(); + +- ContiguousContainerBase& operator=(ContiguousContainerBase&&) noexcept; ++ ContiguousContainerBase& operator=(ContiguousContainerBase&&); + + size_t size() const { return elements_.size(); } + bool IsEmpty() const { return !size(); } +@@ -147,7 +147,7 @@ + WTF_HEAP_PROFILER_TYPE_NAME(BaseElementType)); + } + +- ContiguousContainer(ContiguousContainer&& source) noexcept ++ ContiguousContainer(ContiguousContainer&& source) + : ContiguousContainerBase(std::move(source)) {} + + ~ContiguousContainer() { +@@ -157,7 +157,7 @@ + } + } + +- ContiguousContainer& operator=(ContiguousContainer&& source) noexcept { ++ ContiguousContainer& operator=(ContiguousContainer&& source) { + // Must clear in the derived class to ensure that element destructors + // care called. + Clear(); +diff --git a/third_party/blink/renderer/platform/graphics/gpu/image_layer_bridge.cc b/third_party/blink/renderer/platform/graphics/gpu/image_layer_bridge.cc +index ad10c54..4edbf7f 100644 +--- a/third_party/blink/renderer/platform/graphics/gpu/image_layer_bridge.cc ++++ b/third_party/blink/renderer/platform/graphics/gpu/image_layer_bridge.cc +@@ -247,9 +247,9 @@ + } + + ImageLayerBridge::RegisteredBitmap::RegisteredBitmap() = default; +-ImageLayerBridge::RegisteredBitmap::RegisteredBitmap( +- RegisteredBitmap&& other) noexcept = default; ++ImageLayerBridge::RegisteredBitmap::RegisteredBitmap(RegisteredBitmap&& other) = ++ default; + ImageLayerBridge::RegisteredBitmap& ImageLayerBridge::RegisteredBitmap:: +-operator=(RegisteredBitmap&& other) noexcept = default; ++operator=(RegisteredBitmap&& other) = default; + + } // namespace blink +diff --git a/third_party/blink/renderer/platform/graphics/gpu/image_layer_bridge.h b/third_party/blink/renderer/platform/graphics/gpu/image_layer_bridge.h +index bea81dfb..b6879f9 100644 +--- a/third_party/blink/renderer/platform/graphics/gpu/image_layer_bridge.h ++++ b/third_party/blink/renderer/platform/graphics/gpu/image_layer_bridge.h +@@ -65,8 +65,8 @@ + // only with software compositing. + struct RegisteredBitmap { + RegisteredBitmap(); +- RegisteredBitmap(RegisteredBitmap&& other) noexcept; +- RegisteredBitmap& operator=(RegisteredBitmap&& other) noexcept; ++ RegisteredBitmap(RegisteredBitmap&& other); ++ RegisteredBitmap& operator=(RegisteredBitmap&& other); + + scoped_refptr bitmap; + cc::SharedBitmapIdRegistration registration; +diff --git a/third_party/blink/renderer/platform/graphics/paint/display_item_list.h b/third_party/blink/renderer/platform/graphics/paint/display_item_list.h +index cd3ed2f..9ee2571 100644 +--- a/third_party/blink/renderer/platform/graphics/paint/display_item_list.h ++++ b/third_party/blink/renderer/platform/graphics/paint/display_item_list.h +@@ -28,10 +28,10 @@ + public: + DisplayItemList(size_t initial_size_bytes) + : ContiguousContainer(kMaximumDisplayItemSize, initial_size_bytes) {} +- DisplayItemList(DisplayItemList&& source) noexcept ++ DisplayItemList(DisplayItemList&& source) + : ContiguousContainer(std::move(source)) {} + +- DisplayItemList& operator=(DisplayItemList&& source) noexcept { ++ DisplayItemList& operator=(DisplayItemList&& source) { + ContiguousContainer::operator=(std::move(source)); + return *this; + } +diff --git a/third_party/blink/renderer/platform/heap/heap_test.cc b/third_party/blink/renderer/platform/heap/heap_test.cc +index dad0ca0..e94cbc95 100644 +--- a/third_party/blink/renderer/platform/heap/heap_test.cc ++++ b/third_party/blink/renderer/platform/heap/heap_test.cc +@@ -145,7 +145,7 @@ + } + KeyWithCopyingMoveConstructor(const KeyWithCopyingMoveConstructor&) = default; + // The move constructor delegates to the copy constructor intentionally. +- KeyWithCopyingMoveConstructor(KeyWithCopyingMoveConstructor&& x) noexcept ++ KeyWithCopyingMoveConstructor(KeyWithCopyingMoveConstructor&& x) + : KeyWithCopyingMoveConstructor(x) {} + KeyWithCopyingMoveConstructor& operator=( + const KeyWithCopyingMoveConstructor&) = default; +diff --git a/third_party/blink/renderer/platform/image-decoders/segment_stream.cc b/third_party/blink/renderer/platform/image-decoders/segment_stream.cc +index 4024f9c..5a98701 100644 +--- a/third_party/blink/renderer/platform/image-decoders/segment_stream.cc ++++ b/third_party/blink/renderer/platform/image-decoders/segment_stream.cc +@@ -10,10 +10,10 @@ + + SegmentStream::SegmentStream() = default; + +-SegmentStream::SegmentStream(SegmentStream&& rhs) noexcept ++SegmentStream::SegmentStream(SegmentStream&& rhs) + : reader_(std::move(rhs.reader_)), position_(rhs.position_) {} + +-SegmentStream& SegmentStream::operator=(SegmentStream&& rhs) noexcept { ++SegmentStream& SegmentStream::operator=(SegmentStream&& rhs) { + reader_ = std::move(rhs.reader_); + position_ = rhs.position_; + +diff --git a/third_party/blink/renderer/platform/image-decoders/segment_stream.h b/third_party/blink/renderer/platform/image-decoders/segment_stream.h +index f49f551..fa1ccf2 100644 +--- a/third_party/blink/renderer/platform/image-decoders/segment_stream.h ++++ b/third_party/blink/renderer/platform/image-decoders/segment_stream.h +@@ -19,8 +19,8 @@ + SegmentStream(); + SegmentStream(const SegmentStream&) = delete; + SegmentStream& operator=(const SegmentStream&) = delete; +- SegmentStream(SegmentStream&&) noexcept; +- SegmentStream& operator=(SegmentStream&&) noexcept; ++ SegmentStream(SegmentStream&&); ++ SegmentStream& operator=(SegmentStream&&); + + ~SegmentStream() override; + +diff --git a/third_party/blink/renderer/platform/mojo/revocable_interface_ptr.h b/third_party/blink/renderer/platform/mojo/revocable_interface_ptr.h +index 555be28..34bad3f 100644 +--- a/third_party/blink/renderer/platform/mojo/revocable_interface_ptr.h ++++ b/third_party/blink/renderer/platform/mojo/revocable_interface_ptr.h +@@ -41,7 +41,7 @@ + RevocableInterfacePtr(std::nullptr_t) {} + + // Takes over the binding of another RevocableInterfacePtr. +- RevocableInterfacePtr(RevocableInterfacePtr&& other) noexcept { ++ RevocableInterfacePtr(RevocableInterfacePtr&& other) { + interface_ptr_ = std::move(other.interface_ptr_); + SetInvalidator(other.invalidator_.get()); + // Reset the other interface ptr to remove it as an observer of the +@@ -58,7 +58,7 @@ + + // Takes over the binding of another RevocableInterfacePtr, and closes any + // message pipe already bound to this pointer. +- RevocableInterfacePtr& operator=(RevocableInterfacePtr&& other) noexcept { ++ RevocableInterfacePtr& operator=(RevocableInterfacePtr&& other) { + reset(); + interface_ptr_ = std::move(other.interface_ptr_); + SetInvalidator(other.invalidator_.get()); +diff --git a/third_party/blink/renderer/platform/network/encoded_form_data.cc b/third_party/blink/renderer/platform/network/encoded_form_data.cc +index bc4ec14..1b660e6 100644 +--- a/third_party/blink/renderer/platform/network/encoded_form_data.cc ++++ b/third_party/blink/renderer/platform/network/encoded_form_data.cc +@@ -61,11 +61,10 @@ + : type_(kDataPipe), data_pipe_getter_(std::move(data_pipe_getter)) {} + + FormDataElement::FormDataElement(const FormDataElement&) = default; +-FormDataElement::FormDataElement(FormDataElement&&) noexcept = default; ++FormDataElement::FormDataElement(FormDataElement&&) = default; + FormDataElement::~FormDataElement() = default; + FormDataElement& FormDataElement::operator=(const FormDataElement&) = default; +-FormDataElement& FormDataElement::operator=(FormDataElement&&) noexcept = +- default; ++FormDataElement& FormDataElement::operator=(FormDataElement&&) = default; + + bool operator==(const FormDataElement& a, const FormDataElement& b) { + if (&a == &b) +diff --git a/third_party/blink/renderer/platform/network/encoded_form_data.h b/third_party/blink/renderer/platform/network/encoded_form_data.h +index 48f84c8..865f664 100644 +--- a/third_party/blink/renderer/platform/network/encoded_form_data.h ++++ b/third_party/blink/renderer/platform/network/encoded_form_data.h +@@ -61,12 +61,12 @@ + explicit FormDataElement(scoped_refptr); + + FormDataElement(const FormDataElement&); +- FormDataElement(FormDataElement&&) noexcept; ++ FormDataElement(FormDataElement&&); + + ~FormDataElement(); + + FormDataElement& operator=(const FormDataElement&); +- FormDataElement& operator=(FormDataElement&&) noexcept; ++ FormDataElement& operator=(FormDataElement&&); + + bool IsSafeToSendToAnotherThread() const; + +diff --git a/third_party/blink/renderer/platform/scheduler/common/frame_or_worker_scheduler.cc b/third_party/blink/renderer/platform/scheduler/common/frame_or_worker_scheduler.cc +index ebe99ff..e971856 100644 +--- a/third_party/blink/renderer/platform/scheduler/common/frame_or_worker_scheduler.cc ++++ b/third_party/blink/renderer/platform/scheduler/common/frame_or_worker_scheduler.cc +@@ -28,15 +28,14 @@ + } + + FrameOrWorkerScheduler::SchedulingAffectingFeatureHandle:: +- SchedulingAffectingFeatureHandle( +- SchedulingAffectingFeatureHandle&& other) noexcept ++ SchedulingAffectingFeatureHandle(SchedulingAffectingFeatureHandle&& other) + : feature_(other.feature_), scheduler_(std::move(other.scheduler_)) { + other.scheduler_ = nullptr; + } + + FrameOrWorkerScheduler::SchedulingAffectingFeatureHandle& + FrameOrWorkerScheduler::SchedulingAffectingFeatureHandle::operator=( +- SchedulingAffectingFeatureHandle&& other) noexcept { ++ SchedulingAffectingFeatureHandle&& other) { + feature_ = other.feature_; + policy_ = std::move(other.policy_); + scheduler_ = std::move(other.scheduler_); +diff --git a/third_party/blink/renderer/platform/scheduler/common/post_cancellable_task.cc b/third_party/blink/renderer/platform/scheduler/common/post_cancellable_task.cc +index 2c84d70..fad56ee1 100644 +--- a/third_party/blink/renderer/platform/scheduler/common/post_cancellable_task.cc ++++ b/third_party/blink/renderer/platform/scheduler/common/post_cancellable_task.cc +@@ -103,9 +103,9 @@ + Cancel(); + } + +-TaskHandle::TaskHandle(TaskHandle&&) noexcept = default; ++TaskHandle::TaskHandle(TaskHandle&&) = default; + +-TaskHandle& TaskHandle::operator=(TaskHandle&& other) noexcept { ++TaskHandle& TaskHandle::operator=(TaskHandle&& other) { + TaskHandle tmp(std::move(other)); + runner_.swap(tmp.runner_); + return *this; +diff --git a/third_party/blink/renderer/platform/scheduler/main_thread/web_scoped_virtual_time_pauser.cc b/third_party/blink/renderer/platform/scheduler/main_thread/web_scoped_virtual_time_pauser.cc +index f55730a..b64ec9d 100644 +--- a/third_party/blink/renderer/platform/scheduler/main_thread/web_scoped_virtual_time_pauser.cc ++++ b/third_party/blink/renderer/platform/scheduler/main_thread/web_scoped_virtual_time_pauser.cc +@@ -28,7 +28,7 @@ + } + + WebScopedVirtualTimePauser::WebScopedVirtualTimePauser( +- WebScopedVirtualTimePauser&& other) noexcept { ++ WebScopedVirtualTimePauser&& other) { + virtual_time_when_paused_ = other.virtual_time_when_paused_; + paused_ = other.paused_; + duration_ = other.duration_; +@@ -39,7 +39,7 @@ + } + + WebScopedVirtualTimePauser& WebScopedVirtualTimePauser::operator=( +- WebScopedVirtualTimePauser&& other) noexcept { ++ WebScopedVirtualTimePauser&& other) { + if (scheduler_ && paused_) + DecrementVirtualTimePauseCount(); + virtual_time_when_paused_ = other.virtual_time_when_paused_; +diff --git a/third_party/blink/renderer/platform/scheduler/public/frame_or_worker_scheduler.h b/third_party/blink/renderer/platform/scheduler/public/frame_or_worker_scheduler.h +index 56915ee..3fdb8cf 100644 +--- a/third_party/blink/renderer/platform/scheduler/public/frame_or_worker_scheduler.h ++++ b/third_party/blink/renderer/platform/scheduler/public/frame_or_worker_scheduler.h +@@ -57,12 +57,11 @@ + + public: + SchedulingAffectingFeatureHandle() = default; +- SchedulingAffectingFeatureHandle( +- SchedulingAffectingFeatureHandle&&) noexcept; ++ SchedulingAffectingFeatureHandle(SchedulingAffectingFeatureHandle&&); + inline ~SchedulingAffectingFeatureHandle() { reset(); } + + SchedulingAffectingFeatureHandle& operator=( +- SchedulingAffectingFeatureHandle&&) noexcept; ++ SchedulingAffectingFeatureHandle&&); + + inline void reset() { + if (scheduler_) +diff --git a/third_party/blink/renderer/platform/scheduler/public/post_cancellable_task.h b/third_party/blink/renderer/platform/scheduler/public/post_cancellable_task.h +index 38cbf63..ae66c73 100644 +--- a/third_party/blink/renderer/platform/scheduler/public/post_cancellable_task.h ++++ b/third_party/blink/renderer/platform/scheduler/public/post_cancellable_task.h +@@ -28,8 +28,8 @@ + TaskHandle(); + ~TaskHandle(); + +- TaskHandle(TaskHandle&&) noexcept; +- TaskHandle& operator=(TaskHandle&&) noexcept; ++ TaskHandle(TaskHandle&&); ++ TaskHandle& operator=(TaskHandle&&); + + // Returns true if the task will run later. Returns false if the task is + // cancelled or the task is run already. +diff --git a/third_party/blink/renderer/platform/weborigin/origin_access_entry.cc b/third_party/blink/renderer/platform/weborigin/origin_access_entry.cc +index 2e9a9d1..c9d777e7 100644 +--- a/third_party/blink/renderer/platform/weborigin/origin_access_entry.cc ++++ b/third_party/blink/renderer/platform/weborigin/origin_access_entry.cc +@@ -59,8 +59,7 @@ + network::mojom::CorsPortMatchMode::kAllowOnlySpecifiedPort, + priority) {} + +-OriginAccessEntry::OriginAccessEntry(OriginAccessEntry&& from) noexcept = +- default; ++OriginAccessEntry::OriginAccessEntry(OriginAccessEntry&& from) = default; + + network::cors::OriginAccessEntry::MatchResult OriginAccessEntry::MatchesOrigin( + const SecurityOrigin& origin) const { +diff --git a/third_party/blink/renderer/platform/weborigin/origin_access_entry.h b/third_party/blink/renderer/platform/weborigin/origin_access_entry.h +index b3e5674..5113a40 100644 +--- a/third_party/blink/renderer/platform/weborigin/origin_access_entry.h ++++ b/third_party/blink/renderer/platform/weborigin/origin_access_entry.h +@@ -58,7 +58,7 @@ + network::mojom::CorsDomainMatchMode, + network::mojom::CorsOriginAccessMatchPriority priority = + network::mojom::CorsOriginAccessMatchPriority::kDefaultPriority); +- OriginAccessEntry(OriginAccessEntry&& from) noexcept; ++ OriginAccessEntry(OriginAccessEntry&& from); + + network::cors::OriginAccessEntry::MatchResult MatchesOrigin( + const SecurityOrigin&) const; +diff --git a/third_party/blink/renderer/platform/wtf/deque.h b/third_party/blink/renderer/platform/wtf/deque.h +index c6fe1b9..4a98ffb 100644 +--- a/third_party/blink/renderer/platform/wtf/deque.h ++++ b/third_party/blink/renderer/platform/wtf/deque.h +@@ -64,8 +64,8 @@ class Deque { + Deque(); + Deque(const Deque&); + Deque& operator=(const Deque&); +- Deque(Deque&&) noexcept; +- Deque& operator=(Deque&&) noexcept; ++ Deque(Deque&&); ++ Deque& operator=(Deque&&); + ~Deque(); + + void FinalizeGarbageCollectedObject() { NOTREACHED(); } +@@ -343,14 +343,14 @@ + } + + template +-inline Deque::Deque(Deque&& other) noexcept ++inline Deque::Deque(Deque&& other) + : start_(0), end_(0) { + Swap(other); + } + + template + inline Deque& +-Deque::operator=(Deque&& other) noexcept { ++Deque::operator=(Deque&& other) { + Swap(other); + return *this; + } +diff --git a/third_party/blink/renderer/platform/wtf/functional.h b/third_party/blink/renderer/platform/wtf/functional.h +index 2c5aeea..5e4b373 100644 +--- a/third_party/blink/renderer/platform/wtf/functional.h ++++ b/third_party/blink/renderer/platform/wtf/functional.h +@@ -117,8 +117,7 @@ + class PassedWrapper final { + public: + explicit PassedWrapper(T&& scoper) : scoper_(std::move(scoper)) {} +- PassedWrapper(PassedWrapper&& other) noexcept +- : scoper_(std::move(other.scoper_)) {} ++ PassedWrapper(PassedWrapper&& other) : scoper_(std::move(other.scoper_)) {} + T MoveOut() const { return std::move(scoper_); } + + private: +@@ -319,9 +318,8 @@ + CrossThreadFunction(const CrossThreadFunction&) = delete; + CrossThreadFunction& operator=(const CrossThreadFunction&) = delete; + +- CrossThreadFunction(CrossThreadFunction&& other) noexcept = default; +- CrossThreadFunction& operator=(CrossThreadFunction&& other) noexcept = +- default; ++ CrossThreadFunction(CrossThreadFunction&& other) = default; ++ CrossThreadFunction& operator=(CrossThreadFunction&& other) = default; + + R Run(Args... args) const & { + return callback_.Run(std::forward(args)...); +@@ -356,9 +354,8 @@ + CrossThreadOnceFunction(const CrossThreadOnceFunction&) = delete; + CrossThreadOnceFunction& operator=(const CrossThreadOnceFunction&) = delete; + +- CrossThreadOnceFunction(CrossThreadOnceFunction&& other) noexcept = default; +- CrossThreadOnceFunction& operator=(CrossThreadOnceFunction&& other) noexcept = +- default; ++ CrossThreadOnceFunction(CrossThreadOnceFunction&& other) = default; ++ CrossThreadOnceFunction& operator=(CrossThreadOnceFunction&& other) = default; + + R Run(Args... args) && { + return std::move(callback_).Run(std::forward(args)...); +diff --git a/third_party/blink/renderer/platform/wtf/hash_map.h b/third_party/blink/renderer/platform/wtf/hash_map.h +index 8a002a8..46b39e0 100644 +--- a/third_party/blink/renderer/platform/wtf/hash_map.h ++++ b/third_party/blink/renderer/platform/wtf/hash_map.h +@@ -106,8 +106,8 @@ + #endif + HashMap(const HashMap&) = default; + HashMap& operator=(const HashMap&) = default; +- HashMap(HashMap&&) noexcept = default; +- HashMap& operator=(HashMap&&) noexcept = default; ++ HashMap(HashMap&&) = default; ++ HashMap& operator=(HashMap&&) = default; + + // For example, HashMap({{1, 11}, {2, 22}, {3, 33}}) will give you + // a HashMap containing a mapping {1 -> 11, 2 -> 22, 3 -> 33}. +diff --git a/third_party/blink/renderer/platform/wtf/hash_set.h b/third_party/blink/renderer/platform/wtf/hash_set.h +index c79e45f1..d7cdeed 100644 +--- a/third_party/blink/renderer/platform/wtf/hash_set.h ++++ b/third_party/blink/renderer/platform/wtf/hash_set.h +@@ -74,8 +74,8 @@ + } + HashSet(const HashSet&) = default; + HashSet& operator=(const HashSet&) = default; +- HashSet(HashSet&&) noexcept = default; +- HashSet& operator=(HashSet&&) noexcept = default; ++ HashSet(HashSet&&) = default; ++ HashSet& operator=(HashSet&&) = default; + + HashSet(std::initializer_list elements); + HashSet& operator=(std::initializer_list elements); +diff --git a/third_party/blink/renderer/platform/wtf/hash_table.h b/third_party/blink/renderer/platform/wtf/hash_table.h +index 373280f..52483ec5 100644 +--- a/third_party/blink/renderer/platform/wtf/hash_table.h ++++ b/third_party/blink/renderer/platform/wtf/hash_table.h +@@ -747,10 +747,10 @@ + } + + HashTable(const HashTable&); +- HashTable(HashTable&&) noexcept; ++ HashTable(HashTable&&); + void swap(HashTable&); + HashTable& operator=(const HashTable&); +- HashTable& operator=(HashTable&&) noexcept; ++ HashTable& operator=(HashTable&&); + + // When the hash table is empty, just return the same iterator for end as + // for begin. This is more efficient because we don't have to skip all the +@@ -1929,7 +1929,7 @@ + typename KeyTraits, + typename Allocator> + HashTable:: +- HashTable(HashTable&& other) noexcept ++ HashTable(HashTable&& other) + : table_(nullptr), + table_size_(0), + key_count_(0), +@@ -2008,7 +2008,7 @@ + typename Allocator> + HashTable& + HashTable:: +-operator=(HashTable&& other) noexcept { ++operator=(HashTable&& other) { + swap(other); + return *this; + } +diff --git a/third_party/blink/renderer/platform/wtf/linked_hash_set.h b/third_party/blink/renderer/platform/wtf/linked_hash_set.h +index 79c3d76d..71ef37a 100644 +--- a/third_party/blink/renderer/platform/wtf/linked_hash_set.h ++++ b/third_party/blink/renderer/platform/wtf/linked_hash_set.h +@@ -121,7 +121,7 @@ + LinkedHashSetNodeBase(const LinkedHashSetNodeBase& other) + : prev_(nullptr), next_(nullptr) {} + +- LinkedHashSetNodeBase(LinkedHashSetNodeBase&& other) noexcept ++ LinkedHashSetNodeBase(LinkedHashSetNodeBase&& other) + : prev_(other.prev_), next_(other.next_) { + other.prev_ = nullptr; + other.next_ = nullptr; +@@ -151,7 +151,7 @@ + LinkedHashSetNodeBase* next) + : LinkedHashSetNodeBase(prev, next), value_(std::move(value)) {} + +- LinkedHashSetNode(LinkedHashSetNode&& other) noexcept ++ LinkedHashSetNode(LinkedHashSetNode&& other) + : LinkedHashSetNodeBase(std::move(other)), + value_(std::move(other.value_)) {} + +@@ -214,9 +214,9 @@ + + LinkedHashSet(); + LinkedHashSet(const LinkedHashSet&); +- LinkedHashSet(LinkedHashSet&&) noexcept; ++ LinkedHashSet(LinkedHashSet&&); + LinkedHashSet& operator=(const LinkedHashSet&); +- LinkedHashSet& operator=(LinkedHashSet&&) noexcept; ++ LinkedHashSet& operator=(LinkedHashSet&&); + + // Needs finalization. The anchor needs to unlink itself from the chain. + ~LinkedHashSet(); +@@ -748,7 +748,7 @@ + } + + template +-inline LinkedHashSet::LinkedHashSet(LinkedHashSet&& other) noexcept ++inline LinkedHashSet::LinkedHashSet(LinkedHashSet&& other) + : anchor_() { + Swap(other); + } +@@ -763,7 +763,7 @@ + + template + inline LinkedHashSet& LinkedHashSet::operator=( +- LinkedHashSet&& other) noexcept { ++ LinkedHashSet&& other) { + Swap(other); + return *this; + } +diff --git a/third_party/blink/renderer/platform/wtf/list_hash_set.h b/third_party/blink/renderer/platform/wtf/list_hash_set.h +index ead6a87..78bd279 100644 +--- a/third_party/blink/renderer/platform/wtf/list_hash_set.h ++++ b/third_party/blink/renderer/platform/wtf/list_hash_set.h +@@ -145,9 +145,9 @@ class ListHashSet { + + ListHashSet(); + ListHashSet(const ListHashSet&); +- ListHashSet(ListHashSet&&) noexcept; ++ ListHashSet(ListHashSet&&); + ListHashSet& operator=(const ListHashSet&); +- ListHashSet& operator=(ListHashSet&&) noexcept; ++ ListHashSet& operator=(ListHashSet&&); + ~ListHashSet(); + + void Swap(ListHashSet&); +@@ -780,8 +780,7 @@ + } + + template +-inline ListHashSet::ListHashSet( +- ListHashSet&& other) noexcept ++inline ListHashSet::ListHashSet(ListHashSet&& other) + : head_(nullptr), tail_(nullptr) { + Swap(other); + } +@@ -796,7 +795,7 @@ + + template + inline ListHashSet& +-ListHashSet::operator=(ListHashSet&& other) noexcept { ++ListHashSet::operator=(ListHashSet&& other) { + Swap(other); + return *this; + } +diff --git a/third_party/blink/renderer/platform/wtf/type_traits_test.cc b/third_party/blink/renderer/platform/wtf/type_traits_test.cc +index 0930b73..1b45d55 100644 +--- a/third_party/blink/renderer/platform/wtf/type_traits_test.cc ++++ b/third_party/blink/renderer/platform/wtf/type_traits_test.cc +@@ -158,7 +158,7 @@ + STACK_ALLOCATED(); + + public: +- CopyAssignmentDeleted& operator=(CopyAssignmentDeleted&&) noexcept; ++ CopyAssignmentDeleted& operator=(CopyAssignmentDeleted&&); + + private: + CopyAssignmentDeleted& operator=(const CopyAssignmentDeleted&) = delete; +@@ -173,7 +173,7 @@ + STACK_ALLOCATED(); + + public: +- CopyAssignmentPrivate& operator=(CopyAssignmentPrivate&&) noexcept; ++ CopyAssignmentPrivate& operator=(CopyAssignmentPrivate&&); + + private: + CopyAssignmentPrivate& operator=(const CopyAssignmentPrivate&); +@@ -188,7 +188,7 @@ + STACK_ALLOCATED(); + + public: +- CopyAssignmentUndeclared& operator=(CopyAssignmentUndeclared&&) noexcept; ++ CopyAssignmentUndeclared& operator=(CopyAssignmentUndeclared&&); + }; + + static_assert(!std::is_copy_assignable::value, +diff --git a/third_party/blink/renderer/platform/wtf/typed_arrays/array_buffer_contents.h b/third_party/blink/renderer/platform/wtf/typed_arrays/array_buffer_contents.h +index 3f44cd2..ee7c89a 100644 +--- a/third_party/blink/renderer/platform/wtf/typed_arrays/array_buffer_contents.h ++++ b/third_party/blink/renderer/platform/wtf/typed_arrays/array_buffer_contents.h +@@ -68,7 +68,7 @@ + deleter_(deleter), + deleter_info_(deleter_info) {} + // Move constructor +- DataHandle(DataHandle&& other) noexcept { *this = std::move(other); } ++ DataHandle(DataHandle&& other) { *this = std::move(other); } + ~DataHandle() { + if (!data_) + return; +diff --git a/third_party/blink/renderer/platform/wtf/vector.h b/third_party/blink/renderer/platform/wtf/vector.h +index 2783c2b..43a27f7 100644 +--- a/third_party/blink/renderer/platform/wtf/vector.h ++++ b/third_party/blink/renderer/platform/wtf/vector.h +@@ -1018,8 +1018,8 @@ + Vector& operator=(const Vector&); + + // Moving. +- Vector(Vector&&) noexcept; +- Vector& operator=(Vector&&) noexcept; ++ Vector(Vector&&); ++ Vector& operator=(Vector&&); + + // Construct with an initializer list. You can do e.g. + // Vector v({1, 2, 3}); +@@ -1459,7 +1459,7 @@ + + template + Vector::Vector( +- Vector&& other) noexcept { ++ Vector&& other) { + size_ = 0; + // It's a little weird to implement a move constructor using swap but this + // way we don't have to add a move constructor to VectorBuffer. +@@ -1468,7 +1468,7 @@ + + template + Vector& Vector:: +-operator=(Vector&& other) noexcept { ++operator=(Vector&& other) { + swap(other); + return *this; + } +diff --git a/third_party/blink/renderer/platform/wtf/vector_test.cc b/third_party/blink/renderer/platform/wtf/vector_test.cc +index aa8a138..788cc2bb 100644 +--- a/third_party/blink/renderer/platform/wtf/vector_test.cc ++++ b/third_party/blink/renderer/platform/wtf/vector_test.cc +@@ -420,8 +420,8 @@ + class MojoMoveOnlyType final { + public: + MojoMoveOnlyType(); +- MojoMoveOnlyType(MojoMoveOnlyType&&) noexcept; +- MojoMoveOnlyType& operator=(MojoMoveOnlyType&&) noexcept; ++ MojoMoveOnlyType(MojoMoveOnlyType&&); ++ MojoMoveOnlyType& operator=(MojoMoveOnlyType&&); + ~MojoMoveOnlyType(); + + private: +diff --git a/third_party/blink/renderer/platform/wtf/wtf_test_helper.h b/third_party/blink/renderer/platform/wtf/wtf_test_helper.h +index e797445..8f31365 100644 +--- a/third_party/blink/renderer/platform/wtf/wtf_test_helper.h ++++ b/third_party/blink/renderer/platform/wtf/wtf_test_helper.h +@@ -36,9 +36,9 @@ + public: + explicit MoveOnly(int i = 0) : i_(i) {} + +- MoveOnly(MoveOnly&& other) noexcept : i_(other.i_) { other.i_ = 0; } ++ MoveOnly(MoveOnly&& other) : i_(other.i_) { other.i_ = 0; } + +- MoveOnly& operator=(MoveOnly&& other) noexcept { ++ MoveOnly& operator=(MoveOnly&& other) { + if (this != &other) { + i_ = other.i_; + other.i_ = 0; +@@ -62,12 +62,12 @@ + + explicit MoveOnlyHashValue(int value = kEmpty, int id = 0) + : value_(value), id_(id) {} +- MoveOnlyHashValue(MoveOnlyHashValue&& other) noexcept ++ MoveOnlyHashValue(MoveOnlyHashValue&& other) + : value_(other.value_), id_(other.id_) { + other.value_ = kMovedOut; + other.id_ = 0; + } +- MoveOnlyHashValue& operator=(MoveOnlyHashValue&& other) noexcept { ++ MoveOnlyHashValue& operator=(MoveOnlyHashValue&& other) { + value_ = other.value_; + id_ = other.id_; + other.value_ = kMovedOut; diff --git a/chromium-78.0.3904.70-base-gcc-no-alignas.patch b/chromium-78.0.3904.70-base-gcc-no-alignas.patch new file mode 100644 index 0000000..4856c36 --- /dev/null +++ b/chromium-78.0.3904.70-base-gcc-no-alignas.patch @@ -0,0 +1,68 @@ +diff -up chromium-77.0.3865.75/base/task/promise/dependent_list.h.base-gcc-no-alignas chromium-77.0.3865.75/base/task/promise/dependent_list.h +--- chromium-77.0.3865.75/base/task/promise/dependent_list.h.base-gcc-no-alignas 2019-09-13 21:45:51.873172347 +0200 ++++ chromium-77.0.3865.75/base/task/promise/dependent_list.h 2019-09-13 21:46:21.661522514 +0200 +@@ -59,7 +59,7 @@ class BASE_EXPORT DependentList { + + // Align Node on an 8-byte boundary to ensure the first 3 bits are 0 and can + // be used to store additional state (see static_asserts below). +- class BASE_EXPORT alignas(8) Node { ++ class BASE_EXPORT ALIGNAS(8) Node { + public: + Node(); + explicit Node(Node&& other) noexcept; +--- a/third_party/protobuf/src/google/protobuf/arena.h ++++ b/third_party/protobuf/src/google/protobuf/arena.h +@@ -245,7 +245,7 @@ struct ArenaOptions { + // well as protobuf container types like RepeatedPtrField and Map. The protocol + // is internal to protobuf and is not guaranteed to be stable. Non-proto types + // should not rely on this protocol. +-class PROTOBUF_EXPORT alignas(8) Arena final { ++class PROTOBUF_EXPORT PROTOBUF_ALIGNAS(8) Arena final { + public: + // Arena constructor taking custom options. See ArenaOptions below for + // descriptions of the options available. +--- a/third_party/protobuf/src/google/protobuf/port_def.inc ++++ b/third_party/protobuf/src/google/protobuf/port_def.inc +@@ -528,6 +528,35 @@ PROTOBUF_EXPORT_TEMPLATE_TEST(DEFAULT, __declspec(dllimport)); + #undef IN + #endif // _MSC_VER + ++// Specify memory alignment for structs, classes, etc. ++// Use like: ++// class PROTOBUF_ALIGNAS(16) MyClass { ... } ++// PROTOBUF_ALIGNAS(16) int array[4]; ++// ++// In most places you can use the C++11 keyword "alignas", which is preferred. ++// ++// But compilers have trouble mixing __attribute__((...)) syntax with ++// alignas(...) syntax. ++// ++// Doesn't work in clang or gcc: ++// struct alignas(16) __attribute__((packed)) S { char c; }; ++// Works in clang but not gcc: ++// struct __attribute__((packed)) alignas(16) S2 { char c; }; ++// Works in clang and gcc: ++// struct alignas(16) S3 { char c; } __attribute__((packed)); ++// ++// There are also some attributes that must be specified *before* a class ++// definition: visibility (used for exporting functions/classes) is one of ++// these attributes. This means that it is not possible to use alignas() with a ++// class that is marked as exported. ++#if defined(_MSC_VER) ++#define PROTOBUF_ALIGNAS(byte_alignment) __declspec(align(byte_alignment)) ++#elif defined(__GNUC__) ++#define PROTOBUF_ALIGNAS(byte_alignment) __attribute__((aligned(byte_alignment))) ++#else ++#define PROTOBUF_ALIGNAS(byte_alignment) alignas(byte_alignment) ++#endif ++ + #if defined(__clang__) + #pragma clang diagnostic push + // TODO(gerbens) ideally we cleanup the code. But a cursory try shows many +--- a/third_party/protobuf/src/google/protobuf/port_undef.inc ++++ b/third_party/protobuf/src/google/protobuf/port_undef.inc +@@ -80,6 +80,7 @@ + #undef PROTOBUF_EXPORT_TEMPLATE_STYLE_MATCH_foj3FJo5StF0OvIzl7oMxA__declspec + #undef PROTOBUF_EXPORT_TEMPLATE_STYLE_MATCH_DECLSPEC_dllexport + #undef PROTOBUF_EXPORT_TEMPLATE_STYLE_MATCH_DECLSPEC_dllimport ++#undef PROTOBUF_ALIGNAS diff --git a/chromium-78.0.3904.70-v8-tracedreference-fix.patch b/chromium-78.0.3904.70-v8-tracedreference-fix.patch new file mode 100644 index 0000000..789bdd0 --- /dev/null +++ b/chromium-78.0.3904.70-v8-tracedreference-fix.patch @@ -0,0 +1,302 @@ +diff -up chromium-78.0.3904.70/third_party/blink/renderer/bindings/core/v8/v8_embedder_graph_builder.cc.v8-tracedreference-fix chromium-78.0.3904.70/third_party/blink/renderer/bindings/core/v8/v8_embedder_graph_builder.cc +--- chromium-78.0.3904.70/third_party/blink/renderer/bindings/core/v8/v8_embedder_graph_builder.cc.v8-tracedreference-fix 2019-10-21 15:06:42.000000000 -0400 ++++ chromium-78.0.3904.70/third_party/blink/renderer/bindings/core/v8/v8_embedder_graph_builder.cc 2019-10-23 14:30:25.679541652 -0400 +@@ -173,8 +173,9 @@ class GC_PLUGIN_IGNORE( + uint16_t class_id) override; + + // v8::EmbedderHeapTracer::TracedGlobalHandleVisitor override. +- void VisitTracedGlobalHandle( +- const v8::TracedGlobal& value) override; ++ void VisitTracedReference( ++ const v8::TracedReference& value) override; ++ void VisitTracedGlobalHandle(const v8::TracedGlobal&) override; + + // Visitor overrides. + void VisitRoot(void*, TraceDescriptor, const base::Location&) final; +@@ -508,8 +509,8 @@ void V8EmbedderGraphBuilder::VisitPersis + } + } + +-void V8EmbedderGraphBuilder::VisitTracedGlobalHandle( +- const v8::TracedGlobal& value) { ++void V8EmbedderGraphBuilder::VisitTracedReference( ++ const v8::TracedReference& value) { + const uint16_t class_id = value.WrapperClassId(); + if (class_id != WrapperTypeInfo::kNodeClassId && + class_id != WrapperTypeInfo::kObjectClassId) +@@ -517,6 +518,11 @@ void V8EmbedderGraphBuilder::VisitTraced + VisitPersistentHandleInternal(value.As().Get(isolate_), class_id); + } + ++void V8EmbedderGraphBuilder::VisitTracedGlobalHandle( ++ const v8::TracedGlobal&) { ++ CHECK(false) << "Blink does not use v8::TracedGlobal."; ++} ++ + void V8EmbedderGraphBuilder::VisitPersistentHandle( + v8::Persistent* value, + uint16_t class_id) { +diff -up chromium-78.0.3904.70/third_party/blink/renderer/bindings/core/v8/v8_gc_controller.cc.v8-tracedreference-fix chromium-78.0.3904.70/third_party/blink/renderer/bindings/core/v8/v8_gc_controller.cc +--- chromium-78.0.3904.70/third_party/blink/renderer/bindings/core/v8/v8_gc_controller.cc.v8-tracedreference-fix 2019-10-21 15:06:42.000000000 -0400 ++++ chromium-78.0.3904.70/third_party/blink/renderer/bindings/core/v8/v8_gc_controller.cc 2019-10-23 14:30:25.683541568 -0400 +@@ -260,7 +260,11 @@ class DOMWrapperForwardingVisitor final + VisitHandle(value, class_id); + } + +- void VisitTracedGlobalHandle(const v8::TracedGlobal& value) final { ++ void VisitTracedGlobalHandle(const v8::TracedGlobal&) final { ++ CHECK(false) << "Blink does not use v8::TracedGlobal."; ++ } ++ ++ void VisitTracedReference(const v8::TracedReference& value) final { + VisitHandle(&value, value.WrapperClassId()); + } + +diff -up chromium-78.0.3904.70/third_party/blink/renderer/platform/bindings/dom_data_store.h.v8-tracedreference-fix chromium-78.0.3904.70/third_party/blink/renderer/platform/bindings/dom_data_store.h +--- chromium-78.0.3904.70/third_party/blink/renderer/platform/bindings/dom_data_store.h.v8-tracedreference-fix 2019-10-21 15:06:44.000000000 -0400 ++++ chromium-78.0.3904.70/third_party/blink/renderer/platform/bindings/dom_data_store.h 2019-10-23 14:30:25.685541526 -0400 +@@ -229,6 +229,11 @@ class DOMDataStore { + DOMWorldWrapperReference(v8::Isolate* isolate, v8::Local handle) + : TraceWrapperV8Reference(isolate, handle) {} + ++ ~DOMWorldWrapperReference() { ++ // Destruction of a reference should clear it immediately. ++ Clear(); ++ } ++ + // Move support without write barrier. + DOMWorldWrapperReference(DOMWorldWrapperReference&& other) + : TraceWrapperV8Reference() { +diff -up chromium-78.0.3904.70/third_party/blink/renderer/platform/bindings/script_wrappable.h.v8-tracedreference-fix chromium-78.0.3904.70/third_party/blink/renderer/platform/bindings/script_wrappable.h +--- chromium-78.0.3904.70/third_party/blink/renderer/platform/bindings/script_wrappable.h.v8-tracedreference-fix 2019-10-21 15:06:44.000000000 -0400 ++++ chromium-78.0.3904.70/third_party/blink/renderer/platform/bindings/script_wrappable.h 2019-10-23 14:30:25.687541484 -0400 +@@ -161,6 +161,11 @@ class PLATFORM_EXPORT ScriptWrappable + return main_world_wrapper_.NewLocal(isolate); + } + ++ static_assert( ++ std::is_trivially_destructible< ++ TraceWrapperV8Reference>::value, ++ "TraceWrapperV8Reference should be trivially destructible."); ++ + TraceWrapperV8Reference main_world_wrapper_; + + DISALLOW_COPY_AND_ASSIGN(ScriptWrappable); +diff -up chromium-78.0.3904.70/third_party/blink/renderer/platform/bindings/trace_wrapper_v8_reference.h.v8-tracedreference-fix chromium-78.0.3904.70/third_party/blink/renderer/platform/bindings/trace_wrapper_v8_reference.h +--- chromium-78.0.3904.70/third_party/blink/renderer/platform/bindings/trace_wrapper_v8_reference.h.v8-tracedreference-fix 2019-10-21 15:06:44.000000000 -0400 ++++ chromium-78.0.3904.70/third_party/blink/renderer/platform/bindings/trace_wrapper_v8_reference.h 2019-10-23 14:30:25.688541463 -0400 +@@ -11,15 +11,6 @@ + #include "third_party/blink/renderer/platform/heap/unified_heap_marking_visitor.h" + #include "v8/include/v8.h" + +-namespace v8 { +- +-template +-struct TracedGlobalTrait> { +- static constexpr bool kRequiresExplicitDestruction = false; +-}; +- +-} // namespace v8 +- + namespace blink { + + /** +@@ -50,8 +41,8 @@ class TraceWrapperV8Reference { + + bool IsEmpty() const { return handle_.IsEmpty(); } + void Clear() { handle_.Reset(); } +- ALWAYS_INLINE const v8::TracedGlobal& Get() const { return handle_; } +- ALWAYS_INLINE v8::TracedGlobal& Get() { return handle_; } ++ ALWAYS_INLINE const v8::TracedReference& Get() const { return handle_; } ++ ALWAYS_INLINE v8::TracedReference& Get() { return handle_; } + + template + const TraceWrapperV8Reference& Cast() const { +@@ -124,7 +115,7 @@ class TraceWrapperV8Reference { + UnifiedHeapMarkingVisitor::WriteBarrier(UnsafeCast()); + } + +- v8::TracedGlobal handle_; ++ v8::TracedReference handle_; + }; + + } // namespace blink +diff -up chromium-78.0.3904.70/third_party/blink/renderer/platform/bindings/wrapper_type_info.h.v8-tracedreference-fix chromium-78.0.3904.70/third_party/blink/renderer/platform/bindings/wrapper_type_info.h +--- chromium-78.0.3904.70/third_party/blink/renderer/platform/bindings/wrapper_type_info.h.v8-tracedreference-fix 2019-10-21 15:06:44.000000000 -0400 ++++ chromium-78.0.3904.70/third_party/blink/renderer/platform/bindings/wrapper_type_info.h 2019-10-23 14:30:25.689541442 -0400 +@@ -122,7 +122,7 @@ struct WrapperTypeInfo { + wrapper->SetWrapperClassId(wrapper_class_id); + } + +- void ConfigureWrapper(v8::TracedGlobal* wrapper) const { ++ void ConfigureWrapper(v8::TracedReference* wrapper) const { + wrapper->SetWrapperClassId(wrapper_class_id); + } + +@@ -177,7 +177,7 @@ inline T* GetInternalField(const v8::Per + } + + template +-inline T* GetInternalField(const v8::TracedGlobal& global) { ++inline T* GetInternalField(const v8::TracedReference& global) { + DCHECK_LT(offset, v8::Object::InternalFieldCount(global)); + return reinterpret_cast( + v8::Object::GetAlignedPointerFromInternalField(global, offset)); +@@ -198,7 +198,7 @@ inline ScriptWrappable* ToScriptWrappabl + } + + inline ScriptWrappable* ToScriptWrappable( +- const v8::TracedGlobal& wrapper) { ++ const v8::TracedReference& wrapper) { + return GetInternalField(wrapper); + } + +@@ -219,7 +219,8 @@ inline void* ToUntypedWrappable(const v8 + return GetInternalField(wrapper); + } + +-inline void* ToUntypedWrappable(const v8::TracedGlobal& wrapper) { ++inline void* ToUntypedWrappable( ++ const v8::TracedReference& wrapper) { + return GetInternalField(wrapper); + } + +@@ -233,7 +234,7 @@ inline const WrapperTypeInfo* ToWrapperT + } + + inline const WrapperTypeInfo* ToWrapperTypeInfo( +- const v8::TracedGlobal& wrapper) { ++ const v8::TracedReference& wrapper) { + return GetInternalField(wrapper); + } + +diff -up chromium-78.0.3904.70/third_party/blink/renderer/platform/heap/thread_state.cc.v8-tracedreference-fix chromium-78.0.3904.70/third_party/blink/renderer/platform/heap/thread_state.cc +--- chromium-78.0.3904.70/third_party/blink/renderer/platform/heap/thread_state.cc.v8-tracedreference-fix 2019-10-21 15:06:45.000000000 -0400 ++++ chromium-78.0.3904.70/third_party/blink/renderer/platform/heap/thread_state.cc 2019-10-23 14:30:25.693541359 -0400 +@@ -1451,11 +1451,15 @@ class ClearReferencesInDeadObjectsVisito + value->Reset(); + } + +- void VisitTracedGlobalHandle(const v8::TracedGlobal& value) final { ++ void VisitTracedGlobalHandle(const v8::TracedGlobal&) final { ++ CHECK(false) << "Blink does not use v8::TracedGlobal."; ++ } ++ ++ void VisitTracedReference(const v8::TracedReference& value) final { + // TODO(mlippautz): Avoid const_cast after changing the API to allow +- // modificaton of the TracedGlobal handle. +- if (InDeadObject(&const_cast&>(value))) +- const_cast&>(value).Reset(); ++ // modificaton of the handle. ++ if (InDeadObject(&const_cast&>(value))) ++ const_cast&>(value).Reset(); + } + + private: +@@ -1584,11 +1588,15 @@ class UnpoisonHandlesVisitor final + VisitSlot(value, sizeof(v8::Persistent)); + } + +- void VisitTracedGlobalHandle(const v8::TracedGlobal& value) final { ++ void VisitTracedGlobalHandle(const v8::TracedGlobal&) final { ++ CHECK(false) << "Blink does not use v8::TracedGlobal."; ++ } ++ ++ void VisitTracedReference(const v8::TracedReference& value) final { + // TODO(mlippautz): Avoid const_cast after changing the API to allow +- // modificaton of the TracedGlobal handle. +- VisitSlot(&const_cast&>(value), +- sizeof(v8::TracedGlobal)); ++ // modificaton of the handle. ++ VisitSlot(&const_cast&>(value), ++ sizeof(v8::TracedReference)); + } + + private: +diff -up chromium-78.0.3904.70/third_party/blink/renderer/platform/heap/unified_heap_controller.cc.v8-tracedreference-fix chromium-78.0.3904.70/third_party/blink/renderer/platform/heap/unified_heap_controller.cc +--- chromium-78.0.3904.70/third_party/blink/renderer/platform/heap/unified_heap_controller.cc.v8-tracedreference-fix 2019-10-21 15:06:45.000000000 -0400 ++++ chromium-78.0.3904.70/third_party/blink/renderer/platform/heap/unified_heap_controller.cc 2019-10-23 14:32:34.722840885 -0400 +@@ -147,16 +147,19 @@ bool UnifiedHeapController::IsTracingDon + return is_tracing_done_; + } + +-bool UnifiedHeapController::IsRootForNonTracingGCInternal( +- const v8::TracedGlobal& handle) { ++namespace { ++ ++bool IsRootForNonTracingGCInternal( ++ const v8::TracedReference& handle) { + const uint16_t class_id = handle.WrapperClassId(); +- // Stand-alone TracedGlobal reference or kCustomWrappableId. Keep as root as ++ // Stand-alone reference or kCustomWrappableId. Keep as root as + // we don't know better. + if (class_id != WrapperTypeInfo::kNodeClassId && + class_id != WrapperTypeInfo::kObjectClassId) + return true; + +- const v8::TracedGlobal& traced = handle.As(); ++ const v8::TracedReference& traced = ++ handle.template As(); + if (ToWrapperTypeInfo(traced)->IsActiveScriptWrappable() && + ToScriptWrappable(traced)->HasPendingActivity()) { + return true; +@@ -169,8 +172,10 @@ bool UnifiedHeapController::IsRootForNon + return false; + } + ++} // namespace ++ + void UnifiedHeapController::ResetHandleInNonTracingGC( +- const v8::TracedGlobal& handle) { ++ const v8::TracedReference& handle) { + const uint16_t class_id = handle.WrapperClassId(); + // Only consider handles that have not been treated as roots, see + // IsRootForNonTracingGCInternal. +@@ -178,15 +183,21 @@ void UnifiedHeapController::ResetHandleI + class_id != WrapperTypeInfo::kObjectClassId) + return; + +- const v8::TracedGlobal& traced = handle.As(); ++ const v8::TracedReference& traced = handle.As(); + ToScriptWrappable(traced)->UnsetWrapperIfAny(); + } + + bool UnifiedHeapController::IsRootForNonTracingGC( +- const v8::TracedGlobal& handle) { ++ const v8::TracedReference& handle) { + return IsRootForNonTracingGCInternal(handle); + } + ++bool UnifiedHeapController::IsRootForNonTracingGC( ++ const v8::TracedGlobal& handle) { ++ CHECK(false) << "Blink does not use v8::TracedGlobal."; ++ return false; ++} ++ + void UnifiedHeapController::ReportBufferedAllocatedSizeIfPossible() { + DCHECK(base::FeatureList::IsEnabled( + blink::features::kBlinkHeapUnifiedGCScheduling)); +diff -up chromium-78.0.3904.70/third_party/blink/renderer/platform/heap/unified_heap_controller.h.v8-tracedreference-fix chromium-78.0.3904.70/third_party/blink/renderer/platform/heap/unified_heap_controller.h +--- chromium-78.0.3904.70/third_party/blink/renderer/platform/heap/unified_heap_controller.h.v8-tracedreference-fix 2019-10-21 15:06:45.000000000 -0400 ++++ chromium-78.0.3904.70/third_party/blink/renderer/platform/heap/unified_heap_controller.h 2019-10-23 14:30:25.695541317 -0400 +@@ -45,8 +45,9 @@ class PLATFORM_EXPORT UnifiedHeapControl + void RegisterV8References(const std::vector>&) final; + bool AdvanceTracing(double) final; + bool IsTracingDone() final; ++ bool IsRootForNonTracingGC(const v8::TracedReference&) final; + bool IsRootForNonTracingGC(const v8::TracedGlobal&) final; +- void ResetHandleInNonTracingGC(const v8::TracedGlobal&) final; ++ void ResetHandleInNonTracingGC(const v8::TracedReference&) final; + + ThreadState* thread_state() const { return thread_state_; } + +@@ -59,9 +60,6 @@ class PLATFORM_EXPORT UnifiedHeapControl + void DecreaseAllocatedSpace(size_t) final {} + + private: +- static bool IsRootForNonTracingGCInternal( +- const v8::TracedGlobal& handle); +- + void ReportBufferedAllocatedSizeIfPossible(); + + ThreadState* const thread_state_; diff --git a/chromium.spec b/chromium.spec index 764e85d..c03e832 100644 --- a/chromium.spec +++ b/chromium.spec @@ -55,15 +55,15 @@ # Requires is trickier. # To generate this list, go into %%{buildroot}%%{chromium_path} and run -# for i in `find . -name "*.so"`; do NAME=`basename -s .so $i`; printf "$NAME|"; done +# for i in `find . -name "*.so" | sort`; do NAME=`basename -s .so $i`; printf "$NAME|"; done # for RHEL7, append libfontconfig to the end # make sure there is not a trailing | at the end of the list %global __provides_exclude_from %{chromium_path}/.*\\.so|%{chromium_path}/lib/.*\\.so|%{chromium_path}/lib/.*\\.so.* %if 0%{?rhel} == 7 -%global privlibs libservice|libui_accessibility_ax_mojom_blink|libmojo_mojom_bindings_shared|libcolor_space|libui_base_ime_linux|libv8|libtracing_cpp|libprotobuf_lite|librange|libui_touch_selection|libgtkui|libraster|libstub_window|libmessage_center|libv8_libplatform|libtab_count_metrics|libclient|libaura|libresource_coordinator_public_mojom_shared|libbluetooth|libipc_mojom_shared|libdevice_event_log|libcc_debug|libnet_with_v8|libcc_paint|libwm_public|libnetwork_cpp_base|libservice_manager_mojom|libaura_extra|libmojo_public_system|libpdfium|libui_base_ime_init|libmpris|libcc|libservice_manager_cpp|libblink_mojom_broadcastchannel_bindings_shared|libinterfaces_shared|libservice_manager_cpp_types|libservice_manager_mojom_shared|libwm|libbase_i18n|libnetwork_session_configurator|libwebview|libplatform_window_handler_libs|libx11_events_platform|libmojo_cpp_platform|libandroid_mojo_bindings_shared|libpublic|libmirroring_service|libmedia_session_cpp|libblink_platform|libicui18n|libwebdata_common|libgin|libdevice_gamepad|libdevice_vr_mojo_bindings|libffmpeg|libmetrics_cpp|liburl_matcher|libpolicy_proto|libshared_memory_support|libparsers|libgles2_utils|libweb_feature_mojo_bindings_mojom|libui_base_idle|libmojo_public_system_cpp|libsuid_sandbox_client|libgfx_ipc_skia|libmojo_base_shared_typemap_traits|libcapture_lib|libgl_init|libblink_common|libcc_base|libmojo_base_mojom|libtracing_mojom_shared|libgpu_ipc_service|libui_accessibility_ax_mojom|libweb_feature_mojo_bindings_mojom_shared|libgfx_switches|libmedia_session_base_cpp|libmessage_support|libvulkan_init|libonc|libgpu|libmojom_modules_shared|libnative_theme|libgcm|libvr_base|libmojo_core_embedder_internal|libuser_prefs|libweb_bluetooth_mojo_bindings_shared|libos_crypt|libbrowser_ui_views|libembedder_switches|libcontent_service_mojom_shared|libsandbox|libvulkan_x11|libdevice_vr_test_mojo_bindings|libmojo_core_ports|libblink_core|libx11_window|libmojo_mojom_bindings|libipc|libmojo_base_mojom_blink|libgl_wrapper|libprinting|libgesture_detection|libdiscardable_memory_service|libmojom_core_shared|libviz_vulkan_context_provider|libpolicy_component|libdisplay|libvr_common|libdevice_vr_test_mojo_bindings_shared|libui_accessibility_ax_mojom_shared|libresource_coordinator_public_mojom|libvulkan_wrapper|libcrcrypto|libGLESv2|libv8_libbase|libcrash_key|libchrome_features|libdiscardable_memory_common|libbindings|libfreetype_harfbuzz|libcapture_base|libmojo_core_embedder|libprefs|libdevice_features|libresource_coordinator_cpp_features|libgfx_ipc_geometry|libgfx|libui_devtools|libweb_dialogs|libkeyed_service_core|libcontent|libgeometry_skia|libdisplay_util|libservice_manager_mojom_traits|libkeycodes_x11|libipc_mojom|libmojo_base_lib|libui_base_clipboard_types|libtracing_mojom|libmanager|libmedia_webrtc|libmedia_mojo_services|libcontent_public_common_mojo_bindings_shared|libgfx_ipc|libdiscardable_memory_client|libmemory_instrumentation|libui_base_ime|libskia|libgfx_ipc_color|libshell_dialogs|libEGL|libmedia_blink|libmedia_message_center|libblink_controller|libdevice_vr_mojo_bindings_shared|libmidi|libapdu|libseccomp_bpf|libboringssl|libcolor_utils|libdbus|libproxy_config|libblink_features|libmojom_platform_shared|libshared_with_blink|libui_data_pack|libevents_x|libleveldatabase|libevents_ozone_layout|libgfx_x11|libsurface|liblearning_impl|libgamepad_mojom|libcontent_service_cpp|libui_base|libzygote|libevents|libvulkan|libGLESv2|libEGL|libcertificate_matching|libusb_shared|libbindings_base|libgfx_ipc_buffer_types|libcodec|libmojom_mhtml_load_result_shared|libstorage_common|libdevice_vr|libviz_resource_format_utils|libservice_manager_mojom_blink|libgles2|libauthenticator_test_mojo_bindings_shared|libui_base_clipboard|libgamepad_mojom_shared|libdomain_reliability|libmenu|libblink_embedded_frame_sink_mojo_bindings_shared|libwebgpu|liburl_ipc|libnet|libmedia_gpu|libservice_manager_mojom_constants_shared|libaccessibility|libservice_manager_mojom_constants|libembedder|libgamepad_mojom_blink|libcc_animation|libplatform|libdevice_base|libanimation|libgamepad_shared_typemap_traits|libwtf|libthread_linux|libui_base_x|libcloud_policy_proto_generated_compile|libsql|libhost|libextras|libchromium_sqlite3|libnetwork_cpp|libmojo_base_mojom_shared|libgeometry|libppapi_proxy|libweb_feature_mojo_bindings_mojom_blink|libcontent_common_mojo_bindings_shared|libVkICD_mock_icd|libdevice_vr_mojo_bindings_blink|libservice_manager_mojom_constants_blink|libevents_base|liburl|libresource_coordinator_public_mojom_blink|libppapi_host|libppapi_shared|libmedia|libtracing|libsandbox_services|libcontent_service_mojom|libevents_devices_x11|libcompositor|libfingerprint|libuser_manager|libstorage_browser|libbase|libkeyed_service_content|libviews|libcaptive_portal|libcbor|libviz_common|libcc_mojo_embedder|libheadless_non_renderer|libui_base_features|libsnapshot|libcommon|libnetwork_service|liblearning_common|libblink_modules|libscheduling_metrics|libperfetto|libgles2_implementation|libsessions|libdevices|libstartup_tracing|libdisplay_types|libgl_in_process_context|libui_base_ime_types|libui_message_center_cpp|libclearkeycdm|libicuuc|libfido|libfontconfig +%global privlibs libaccessibility|libandroid_mojo_bindings_shared|libanimation|libapdu|libaura_extra|libaura|libauthenticator_test_mojo_bindings_shared|libbase_i18n|libbase|libbindings_base|libbindings|libblink_common|libblink_controller|libblink_core|libblink_embedded_frame_sink_mojo_bindings_shared|libblink_features|libblink_modules|libblink_mojom_broadcastchannel_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcbor|libcc_animation|libcc_base|libcc_debug|libcc_mojo_embedder|libcc_paint|libcc|libcertificate_matching|libchrome_features|libchromium_sqlite3|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcolor_utils|libcommon|libcompositor|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom_shared|libcontent_service_mojom|libcontent_settings_features|libcontent|libcrash_key|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevices|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevice_vr_mojo_bindings|libdevice_vr|libdevice_vr_test_mojo_bindings_blink|libdevice_vr_test_mojo_bindings_shared|libdevice_vr_test_mojo_bindings|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libembedder|libembedder_switches|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents|libevents_x|libextras|libffmpeg|libfido|libfingerprint|libfreetype_harfbuzz|libgamepad_mojom_blink|libgamepad_mojom_shared|libgamepad_mojom|libgamepad_shared_typemap_traits|libgcm|libgeometry_skia|libgeometry|libgesture_detection|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_switches|libgfx_x11|libgin|libgles2_implementation|libgles2|libgles2_utils|libGLESv2|libgl_init|libgl_in_process_context|libgl_wrapper|libgpu_ipc_service|libgpu|libgtkui|libheadless_non_renderer|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc_mojom_shared|libipc_mojom|libipc|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|liblearning_common|liblearning_impl|libleveldatabase|libleveldb_proto|libmanager|libmedia_blink|libmedia_gpu|libmedia_learning_mojo_impl|libmedia_message_center|libmedia_mojo_services|libmedia_session_base_cpp|libmedia_session_cpp|libmedia|libmedia_webrtc|libmemory_instrumentation|libmenu|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirroring_service|libmojo_base_lib|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_mojom|libmojo_base_shared_typemap_traits|libmojo_core_embedder_internal|libmojo_core_embedder|libmojo_core_ports|libmojo_cpp_platform|libmojom_core_shared|libmojom_mhtml_load_result_shared|libmojom_modules_shared|libmojo_mojom_bindings_shared|libmojo_mojom_bindings|libmojom_platform_shared|libmojo_public_system_cpp|libmojo_public_system|libmpris|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp_base|libnetwork_cpp|libnetwork_service|libnetwork_session_configurator|libonc|libos_crypt|libparsers|libpdfium|libperfetto|libplatform|libplatform_window_handler_libs|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libresource_coordinator_public_mojom|libsandbox_services|libsandbox|libscheduling_metrics|libseccomp_bpf|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom_blink|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_constants|libservice_manager_mojom_shared|libservice_manager_mojom|libservice_manager_mojom_traits|libservice|libsessions|libshared_memory_support|libshared_with_blink|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtab_count_metrics|libthread_linux|libtracing_cpp|libtracing_mojom_shared|libtracing_mojom|libtracing|libui_accessibility_ax_mojom_blink|libui_accessibility_ax_mojom_shared|libui_accessibility_ax_mojom|libui_base_clipboard|libui_base_clipboard_types|libui_base_features|libui_base_idle|libui_base_ime_init|libui_base_ime_linux|libui_base_ime|libui_base_ime_types|libui_base|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|liburl_ipc|liburl_matcher|liburl|libusb_shared|libuser_manager|libuser_prefs|libv8_libbase|libv8_libplatform|libv8|libviews|libviz_common|libviz_resource_format_utils|libviz_vulkan_context_provider|libVkICD_mock_icd|libvr_base|libvr_common|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libweb_bluetooth_mojo_bindings_shared|libwebdata_common|libweb_dialogs|libweb_feature_mojo_bindings_mojom_blink|libweb_feature_mojo_bindings_mojom_shared|libweb_feature_mojo_bindings_mojom|libwebgpu|libwebview|libwm_public|libwm|libwtf|libx11_events_platform|libx11_window|libzygote|libEGL|libGLESv2|libvk_swiftshader|libfontconfig %else -%global privlibs libservice|libui_accessibility_ax_mojom_blink|libmojo_mojom_bindings_shared|libcolor_space|libui_base_ime_linux|libv8|libtracing_cpp|libprotobuf_lite|librange|libui_touch_selection|libgtkui|libraster|libstub_window|libmessage_center|libv8_libplatform|libtab_count_metrics|libclient|libaura|libresource_coordinator_public_mojom_shared|libbluetooth|libipc_mojom_shared|libdevice_event_log|libcc_debug|libnet_with_v8|libcc_paint|libwm_public|libnetwork_cpp_base|libservice_manager_mojom|libaura_extra|libmojo_public_system|libpdfium|libui_base_ime_init|libmpris|libcc|libservice_manager_cpp|libblink_mojom_broadcastchannel_bindings_shared|libinterfaces_shared|libservice_manager_cpp_types|libservice_manager_mojom_shared|libwm|libbase_i18n|libnetwork_session_configurator|libwebview|libplatform_window_handler_libs|libx11_events_platform|libmojo_cpp_platform|libandroid_mojo_bindings_shared|libpublic|libmirroring_service|libmedia_session_cpp|libblink_platform|libicui18n|libwebdata_common|libgin|libdevice_gamepad|libdevice_vr_mojo_bindings|libffmpeg|libmetrics_cpp|liburl_matcher|libpolicy_proto|libshared_memory_support|libparsers|libgles2_utils|libweb_feature_mojo_bindings_mojom|libui_base_idle|libmojo_public_system_cpp|libsuid_sandbox_client|libgfx_ipc_skia|libmojo_base_shared_typemap_traits|libcapture_lib|libgl_init|libblink_common|libcc_base|libmojo_base_mojom|libtracing_mojom_shared|libgpu_ipc_service|libui_accessibility_ax_mojom|libweb_feature_mojo_bindings_mojom_shared|libgfx_switches|libmedia_session_base_cpp|libmessage_support|libvulkan_init|libonc|libgpu|libmojom_modules_shared|libnative_theme|libgcm|libvr_base|libmojo_core_embedder_internal|libuser_prefs|libweb_bluetooth_mojo_bindings_shared|libos_crypt|libbrowser_ui_views|libembedder_switches|libcontent_service_mojom_shared|libsandbox|libvulkan_x11|libdevice_vr_test_mojo_bindings|libmojo_core_ports|libblink_core|libx11_window|libmojo_mojom_bindings|libipc|libmojo_base_mojom_blink|libgl_wrapper|libprinting|libgesture_detection|libdiscardable_memory_service|libmojom_core_shared|libviz_vulkan_context_provider|libpolicy_component|libdisplay|libvr_common|libdevice_vr_test_mojo_bindings_shared|libui_accessibility_ax_mojom_shared|libresource_coordinator_public_mojom|libvulkan_wrapper|libcrcrypto|libGLESv2|libv8_libbase|libcrash_key|libchrome_features|libdiscardable_memory_common|libbindings|libfreetype_harfbuzz|libcapture_base|libmojo_core_embedder|libprefs|libdevice_features|libresource_coordinator_cpp_features|libgfx_ipc_geometry|libgfx|libui_devtools|libweb_dialogs|libkeyed_service_core|libcontent|libgeometry_skia|libdisplay_util|libservice_manager_mojom_traits|libkeycodes_x11|libipc_mojom|libmojo_base_lib|libui_base_clipboard_types|libtracing_mojom|libmanager|libmedia_webrtc|libmedia_mojo_services|libcontent_public_common_mojo_bindings_shared|libgfx_ipc|libdiscardable_memory_client|libmemory_instrumentation|libui_base_ime|libskia|libgfx_ipc_color|libshell_dialogs|libEGL|libmedia_blink|libmedia_message_center|libblink_controller|libdevice_vr_mojo_bindings_shared|libmidi|libapdu|libseccomp_bpf|libboringssl|libcolor_utils|libdbus|libproxy_config|libblink_features|libmojom_platform_shared|libshared_with_blink|libui_data_pack|libevents_x|libleveldatabase|libevents_ozone_layout|libgfx_x11|libsurface|liblearning_impl|libgamepad_mojom|libcontent_service_cpp|libui_base|libzygote|libevents|libvulkan|libGLESv2|libEGL|libcertificate_matching|libusb_shared|libbindings_base|libgfx_ipc_buffer_types|libcodec|libmojom_mhtml_load_result_shared|libstorage_common|libdevice_vr|libviz_resource_format_utils|libservice_manager_mojom_blink|libgles2|libauthenticator_test_mojo_bindings_shared|libui_base_clipboard|libgamepad_mojom_shared|libdomain_reliability|libmenu|libblink_embedded_frame_sink_mojo_bindings_shared|libwebgpu|liburl_ipc|libnet|libmedia_gpu|libservice_manager_mojom_constants_shared|libaccessibility|libservice_manager_mojom_constants|libembedder|libgamepad_mojom_blink|libcc_animation|libplatform|libdevice_base|libanimation|libgamepad_shared_typemap_traits|libwtf|libthread_linux|libui_base_x|libcloud_policy_proto_generated_compile|libsql|libhost|libextras|libchromium_sqlite3|libnetwork_cpp|libmojo_base_mojom_shared|libgeometry|libppapi_proxy|libweb_feature_mojo_bindings_mojom_blink|libcontent_common_mojo_bindings_shared|libVkICD_mock_icd|libdevice_vr_mojo_bindings_blink|libservice_manager_mojom_constants_blink|libevents_base|liburl|libresource_coordinator_public_mojom_blink|libppapi_host|libppapi_shared|libmedia|libtracing|libsandbox_services|libcontent_service_mojom|libevents_devices_x11|libcompositor|libfingerprint|libuser_manager|libstorage_browser|libbase|libkeyed_service_content|libviews|libcaptive_portal|libcbor|libviz_common|libcc_mojo_embedder|libheadless_non_renderer|libui_base_features|libsnapshot|libcommon|libnetwork_service|liblearning_common|libblink_modules|libscheduling_metrics|libperfetto|libgles2_implementation|libsessions|libdevices|libstartup_tracing|libdisplay_types|libgl_in_process_context|libui_base_ime_types|libui_message_center_cpp|libclearkeycdm|libicuuc|libfido +%global privlibs libaccessibility|libandroid_mojo_bindings_shared|libanimation|libapdu|libaura_extra|libaura|libauthenticator_test_mojo_bindings_shared|libbase_i18n|libbase|libbindings_base|libbindings|libblink_common|libblink_controller|libblink_core|libblink_embedded_frame_sink_mojo_bindings_shared|libblink_features|libblink_modules|libblink_mojom_broadcastchannel_bindings_shared|libblink_platform|libbluetooth|libboringssl|libbrowser_ui_views|libcaptive_portal|libcapture_base|libcapture_lib|libcbor|libcc_animation|libcc_base|libcc_debug|libcc_mojo_embedder|libcc_paint|libcc|libcertificate_matching|libchrome_features|libchromium_sqlite3|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcolor_utils|libcommon|libcompositor|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom_shared|libcontent_service_mojom|libcontent_settings_features|libcontent|libcrash_key|libcrcrypto|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevices|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevice_vr_mojo_bindings|libdevice_vr|libdevice_vr_test_mojo_bindings_blink|libdevice_vr_test_mojo_bindings_shared|libdevice_vr_test_mojo_bindings|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libEGL|libembedder|libembedder_switches|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents|libevents_x|libextras|libffmpeg|libfido|libfingerprint|libfreetype_harfbuzz|libgamepad_mojom_blink|libgamepad_mojom_shared|libgamepad_mojom|libgamepad_shared_typemap_traits|libgcm|libgeometry_skia|libgeometry|libgesture_detection|libgfx_ipc_buffer_types|libgfx_ipc_color|libgfx_ipc_geometry|libgfx_ipc_skia|libgfx_ipc|libgfx|libgfx_switches|libgfx_x11|libgin|libgles2_implementation|libgles2|libgles2_utils|libGLESv2|libgl_init|libgl_in_process_context|libgl_wrapper|libgpu_ipc_service|libgpu|libgtkui|libheadless_non_renderer|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc_mojom_shared|libipc_mojom|libipc|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|liblearning_common|liblearning_impl|libleveldatabase|libleveldb_proto|libmanager|libmedia_blink|libmedia_gpu|libmedia_learning_mojo_impl|libmedia_message_center|libmedia_mojo_services|libmedia_session_base_cpp|libmedia_session_cpp|libmedia|libmedia_webrtc|libmemory_instrumentation|libmenu|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|libmirroring_service|libmojo_base_lib|libmojo_base_mojom_blink|libmojo_base_mojom_shared|libmojo_base_mojom|libmojo_base_shared_typemap_traits|libmojo_core_embedder_internal|libmojo_core_embedder|libmojo_core_ports|libmojo_cpp_platform|libmojom_core_shared|libmojom_mhtml_load_result_shared|libmojom_modules_shared|libmojo_mojom_bindings_shared|libmojo_mojom_bindings|libmojom_platform_shared|libmojo_public_system_cpp|libmojo_public_system|libmpris|libnative_theme|libnet|libnet_with_v8|libnetwork_cpp_base|libnetwork_cpp|libnetwork_service|libnetwork_session_configurator|libonc|libos_crypt|libparsers|libpdfium|libperfetto|libplatform|libplatform_window_handler_libs|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libresource_coordinator_public_mojom|libsandbox_services|libsandbox|libscheduling_metrics|libseccomp_bpf|libservice_manager_cpp|libservice_manager_cpp_types|libservice_manager_mojom_blink|libservice_manager_mojom_constants_blink|libservice_manager_mojom_constants_shared|libservice_manager_mojom_constants|libservice_manager_mojom_shared|libservice_manager_mojom|libservice_manager_mojom_traits|libservice|libsessions|libshared_memory_support|libshared_with_blink|libshell_dialogs|libskia|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstub_window|libsuid_sandbox_client|libsurface|libtab_count_metrics|libthread_linux|libtracing_cpp|libtracing_mojom_shared|libtracing_mojom|libtracing|libui_accessibility_ax_mojom_blink|libui_accessibility_ax_mojom_shared|libui_accessibility_ax_mojom|libui_base_clipboard|libui_base_clipboard_types|libui_base_features|libui_base_idle|libui_base_ime_init|libui_base_ime_linux|libui_base_ime|libui_base_ime_types|libui_base|libui_base_x|libui_data_pack|libui_devtools|libui_message_center_cpp|libui_touch_selection|liburl_ipc|liburl_matcher|liburl|libusb_shared|libuser_manager|libuser_prefs|libv8_libbase|libv8_libplatform|libv8|libviews|libviz_common|libviz_resource_format_utils|libviz_vulkan_context_provider|libVkICD_mock_icd|libvr_base|libvr_common|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libweb_bluetooth_mojo_bindings_shared|libwebdata_common|libweb_dialogs|libweb_feature_mojo_bindings_mojom_blink|libweb_feature_mojo_bindings_mojom_shared|libweb_feature_mojo_bindings_mojom|libwebgpu|libwebview|libwm_public|libwm|libwtf|libx11_events_platform|libx11_window|libzygote|libEGL|libGLESv2|libvk_swiftshader %endif %global __requires_exclude ^(%{privlibs})\\.so* @@ -209,7 +209,8 @@ Patch53: chromium-78.0.3904.70-unbundle-zlib.patch # Needs to be submitted.. Patch54: chromium-77.0.3865.75-gcc-include-memory.patch # https://chromium.googlesource.com/chromium/src/+/6b633c4b14850df376d5cec571699018772f358e -Patch55: chromium-77.0.3865.75-base-gcc-no-alignas.patch +# https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-78-gcc-alignas.patch +Patch55: chromium-78.0.3904.70-base-gcc-no-alignas.patch # https://chromium.googlesource.com/chromium/src/+/e79d9d0e06b825d2e62b38db03248c0e6ceec7e4 Patch56: chromium-77.0.3865.120-silence-outdated-build-noise.patch # https://chromium.googlesource.com/chromium/src/+/9c3aed099b010a75594a0efd523774c4c9a5e3d2 @@ -230,6 +231,14 @@ Patch63: chromium-78-pm-crash.patch Patch64: chromium-78-protobuf-export.patch # https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-78-include.patch Patch65: chromium-78-include.patch +# https://dev.gentoo.org/~floppym/dist/chromium-78-revert-noexcept-r1.patch.gz +Patch66: chromium-78-revert-noexcept-r1.patch +# https://chromium.googlesource.com/chromium/src/+/9d01bb7f93ba4837b4430417feff845d27a66543 +Patch67: chromium-78.0.3904.70-v8-tracedreference-fix.patch +# https://chromium.googlesource.com/v8/v8/+/3677468397fa7f9fad9bbd71e9fb3120bdf67620 +Patch68: v8-implement-tracedreference.patch +# https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client/chromium/files/chromium-77-clang.patch +Patch69: chromium-77-clang.patch # Use lstdc++ on EPEL7 only Patch101: chromium-75.0.3770.100-epel7-stdc++.patch @@ -759,6 +768,10 @@ udev. %patch63 -p1 -b .pm-crash %patch64 -p1 -b .protobuf-export %patch65 -p1 -b .missing-includes +%patch66 -p1 -b .gentoo-revert-noexcept +%patch67 -p1 -b .implement-TraceWrapperV8Reference-without-destructor +%patch68 -p1 -b .v8-implement-tracedreference +%patch69 -p1 -b .clang-supports-location-builtins # Fedora branded user agent %if 0%{?fedora} @@ -992,6 +1005,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/cros_system_api' \ 'third_party/dav1d' \ 'third_party/dawn' \ + 'third_party/depot_tools' \ 'third_party/devscripts' \ 'third_party/dom_distiller_js' \ 'third_party/emoji-segmenter' \ @@ -1076,6 +1090,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/pffft' \ 'third_party/ply' \ 'third_party/polymer' \ + 'third_party/private-join-and-compute' \ 'third_party/protobuf' \ 'third_party/protobuf/third_party/six' \ 'third_party/pyjson5' \ diff --git a/v8-implement-tracedreference.patch b/v8-implement-tracedreference.patch new file mode 100644 index 0000000..7dc7487 --- /dev/null +++ b/v8-implement-tracedreference.patch @@ -0,0 +1,796 @@ +diff -up chromium-78.0.3904.70/v8/include/v8.h.implement-tracedreference chromium-78.0.3904.70/v8/include/v8.h +--- chromium-78.0.3904.70/v8/include/v8.h.implement-tracedreference 2019-10-24 08:58:26.185640117 -0400 ++++ chromium-78.0.3904.70/v8/include/v8.h 2019-10-24 09:18:33.719546481 -0400 +@@ -96,6 +96,10 @@ template + class Global; + template + class TracedGlobal; ++template ++class TracedReference; ++template ++class TracedReferenceBase; + template class PersistentValueMap; + template + class PersistentValueMapBase; +@@ -281,7 +285,8 @@ class Local { + V8_INLINE static Local New(Isolate* isolate, Local that); + V8_INLINE static Local New(Isolate* isolate, + const PersistentBase& that); +- V8_INLINE static Local New(Isolate* isolate, const TracedGlobal& that); ++ V8_INLINE static Local New(Isolate* isolate, ++ const TracedReferenceBase& that); + + private: + friend class Utils; +@@ -311,7 +316,13 @@ class Local { + template + friend class ReturnValue; + template ++ friend class Traced; ++ template + friend class TracedGlobal; ++ template ++ friend class TracedReferenceBase; ++ template ++ friend class TracedReference; + + explicit V8_INLINE Local(T* that) : val_(that) {} + V8_INLINE static Local New(Isolate* isolate, T* that); +@@ -792,22 +803,10 @@ template + using UniquePersistent = Global; + + /** +- * Trait specifying behavior of |TracedGlobal|. ++ * Deprecated. Use |TracedReference| instead. + */ + template +-struct TracedGlobalTrait { +- /** +- * Specifies whether |TracedGlobal| should clear its handle on destruction. +- * +- * V8 will *not* clear the embedder-side memory of the handle. The embedder is +- * expected to report all |TracedGlobal| handles through +- * |EmbedderHeapTracer| upon garabge collection. +- * +- * See |EmbedderHeapTracer::IsRootForNonTracingGC| for handling with +- * non-tracing GCs in V8. +- */ +- static constexpr bool kRequiresExplicitDestruction = true; +-}; ++struct TracedGlobalTrait {}; + + /** + * A traced handle with copy and move semantics. The handle is to be used +@@ -820,15 +819,131 @@ struct TracedGlobalTrait { + * |v8::EmbedderHeapTracer::IsRootForNonTracingGC()| whether the handle should + * be treated as root or not. + * +- * For destruction semantics see |TracedGlobalTrait|. ++ * Note that the base class cannot be instantiated itself. Choose from ++ * - TracedGlobal ++ * - TracedReference + */ + template +-class TracedGlobal { ++class TracedReferenceBase { + public: + /** ++ * Returns true if this TracedReferenceBase is empty, i.e., has not been ++ * assigned an object. ++ */ ++ bool IsEmpty() const { return val_ == nullptr; } ++ ++ /** ++ * If non-empty, destroy the underlying storage cell. |IsEmpty| will return ++ * true after this call. ++ */ ++ V8_INLINE void Reset(); ++ ++ /** ++ * Construct a Local from this handle. ++ */ ++ Local Get(Isolate* isolate) const { return Local::New(isolate, *this); } ++ ++ template ++ V8_INLINE bool operator==(const TracedReferenceBase& that) const { ++ internal::Address* a = reinterpret_cast(val_); ++ internal::Address* b = reinterpret_cast(that.val_); ++ if (a == nullptr) return b == nullptr; ++ if (b == nullptr) return false; ++ return *a == *b; ++ } ++ ++ template ++ V8_INLINE bool operator==(const Local& that) const { ++ internal::Address* a = reinterpret_cast(val_); ++ internal::Address* b = reinterpret_cast(that.val_); ++ if (a == nullptr) return b == nullptr; ++ if (b == nullptr) return false; ++ return *a == *b; ++ } ++ ++ template ++ V8_INLINE bool operator!=(const TracedReferenceBase& that) const { ++ return !operator==(that); ++ } ++ ++ template ++ V8_INLINE bool operator!=(const Local& that) const { ++ return !operator==(that); ++ } ++ ++ /** ++ * Assigns a wrapper class ID to the handle. ++ */ ++ V8_INLINE void SetWrapperClassId(uint16_t class_id); ++ ++ /** ++ * Returns the class ID previously assigned to this handle or 0 if no class ID ++ * was previously assigned. ++ */ ++ V8_INLINE uint16_t WrapperClassId() const; ++ ++ /** ++ * Adds a finalization callback to the handle. The type of this callback is ++ * similar to WeakCallbackType::kInternalFields, i.e., it will pass the ++ * parameter and the first two internal fields of the object. ++ * ++ * The callback is then supposed to reset the handle in the callback. No ++ * further V8 API may be called in this callback. In case additional work ++ * involving V8 needs to be done, a second callback can be scheduled using ++ * WeakCallbackInfo::SetSecondPassCallback. ++ */ ++ V8_INLINE void SetFinalizationCallback( ++ void* parameter, WeakCallbackInfo::Callback callback); ++ ++ template ++ V8_INLINE TracedReferenceBase& As() const { ++ return reinterpret_cast&>( ++ const_cast&>(*this)); ++ } ++ ++ private: ++ enum DestructionMode { kWithDestructor, kWithoutDestructor }; ++ ++ /** ++ * An empty TracedReferenceBase without storage cell. ++ */ ++ TracedReferenceBase() = default; ++ ++ V8_INLINE static T* New(Isolate* isolate, T* that, void* slot, ++ DestructionMode destruction_mode); ++ ++ T* val_ = nullptr; ++ ++ friend class EmbedderHeapTracer; ++ template ++ friend class Local; ++ friend class Object; ++ template ++ friend class TracedGlobal; ++ template ++ friend class TracedReference; ++ template ++ friend class ReturnValue; ++}; ++ ++/** ++ * A traced handle with destructor that clears the handle. For more details see ++ * TracedReferenceBase. ++ */ ++template ++class TracedGlobal : public TracedReferenceBase { ++ public: ++ using TracedReferenceBase::Reset; ++ ++ /** ++ * Destructor resetting the handle. ++ */ ++ ~TracedGlobal() { this->Reset(); } ++ ++ /** + * An empty TracedGlobal without storage cell. + */ +- TracedGlobal() = default; ++ TracedGlobal() : TracedReferenceBase() {} + + /** + * Construct a TracedGlobal from a Local. +@@ -837,8 +952,9 @@ class TracedGlobal { + * pointing to the same object. + */ + template +- TracedGlobal(Isolate* isolate, Local that) +- : val_(New(isolate, *that, &val_)) { ++ TracedGlobal(Isolate* isolate, Local that) : TracedReferenceBase() { ++ this->val_ = this->New(isolate, that.val_, &this->val_, ++ TracedReferenceBase::kWithDestructor); + TYPE_CHECK(T, S); + } + +@@ -905,121 +1021,126 @@ class TracedGlobal { + V8_INLINE TracedGlobal& operator=(const TracedGlobal& rhs); + + /** +- * Returns true if this TracedGlobal is empty, i.e., has not been assigned an +- * object. +- */ +- bool IsEmpty() const { return val_ == nullptr; } +- +- /** +- * If non-empty, destroy the underlying storage cell. |IsEmpty| will return +- * true after this call. +- */ +- V8_INLINE void Reset(); +- +- /** + * If non-empty, destroy the underlying storage cell and create a new one with + * the contents of other if other is non empty + */ + template + V8_INLINE void Reset(Isolate* isolate, const Local& other); + +- /** +- * Construct a Local from this handle. +- */ +- Local Get(Isolate* isolate) const { return Local::New(isolate, *this); } +- + template + V8_INLINE TracedGlobal& As() const { + return reinterpret_cast&>( + const_cast&>(*this)); + } ++}; + +- template +- V8_INLINE bool operator==(const TracedGlobal& that) const { +- internal::Address* a = reinterpret_cast(**this); +- internal::Address* b = reinterpret_cast(*that); +- if (a == nullptr) return b == nullptr; +- if (b == nullptr) return false; +- return *a == *b; +- } ++/** ++ * A traced handle without destructor that clears the handle. The embedder needs ++ * to ensure that the handle is not accessed once the V8 object has been ++ * reclaimed. This can happen when the handle is not passed through the ++ * EmbedderHeapTracer. For more details see TracedReferenceBase. ++ */ ++template ++class TracedReference : public TracedReferenceBase { ++ public: ++ using TracedReferenceBase::Reset; ++ ++ /** ++ * An empty TracedReference without storage cell. ++ */ ++ TracedReference() : TracedReferenceBase() {} + ++ /** ++ * Construct a TracedReference from a Local. ++ * ++ * When the Local is non-empty, a new storage cell is created ++ * pointing to the same object. ++ */ + template +- V8_INLINE bool operator==(const Local& that) const { +- internal::Address* a = reinterpret_cast(**this); +- internal::Address* b = reinterpret_cast(*that); +- if (a == nullptr) return b == nullptr; +- if (b == nullptr) return false; +- return *a == *b; ++ TracedReference(Isolate* isolate, Local that) : TracedReferenceBase() { ++ this->val_ = this->New(isolate, that.val_, &this->val_, ++ TracedReferenceBase::kWithoutDestructor); ++ TYPE_CHECK(T, S); + } + +- template +- V8_INLINE bool operator!=(const TracedGlobal& that) const { +- return !operator==(that); ++ /** ++ * Move constructor initializing TracedReference from an ++ * existing one. ++ */ ++ V8_INLINE TracedReference(TracedReference&& other) { ++ // Forward to operator=. ++ *this = std::move(other); + } + +- template +- V8_INLINE bool operator!=(const Local& that) const { +- return !operator==(that); ++ /** ++ * Move constructor initializing TracedReference from an ++ * existing one. ++ */ ++ template ++ V8_INLINE TracedReference(TracedReference&& other) { ++ // Forward to operator=. ++ *this = std::move(other); + } + + /** +- * Assigns a wrapper class ID to the handle. ++ * Copy constructor initializing TracedReference from an ++ * existing one. + */ +- V8_INLINE void SetWrapperClassId(uint16_t class_id); ++ V8_INLINE TracedReference(const TracedReference& other) { ++ // Forward to operator=; ++ *this = other; ++ } + + /** +- * Returns the class ID previously assigned to this handle or 0 if no class ID +- * was previously assigned. ++ * Copy constructor initializing TracedReference from an ++ * existing one. + */ +- V8_INLINE uint16_t WrapperClassId() const; ++ template ++ V8_INLINE TracedReference(const TracedReference& other) { ++ // Forward to operator=; ++ *this = other; ++ } + + /** +- * Adds a finalization callback to the handle. The type of this callback is +- * similar to WeakCallbackType::kInternalFields, i.e., it will pass the +- * parameter and the first two internal fields of the object. +- * +- * The callback is then supposed to reset the handle in the callback. No +- * further V8 API may be called in this callback. In case additional work +- * involving V8 needs to be done, a second callback can be scheduled using +- * WeakCallbackInfo::SetSecondPassCallback. ++ * Move assignment operator initializing TracedGlobal from an existing one. + */ +- V8_INLINE void SetFinalizationCallback( +- void* parameter, WeakCallbackInfo::Callback callback); ++ V8_INLINE TracedReference& operator=(TracedReference&& rhs); + +- private: +- // Wrapping type used when clearing on destruction is required. +- struct WrappedForDestruction { +- T* value; +- +- explicit WrappedForDestruction(T* val) : value(val) {} +- ~WrappedForDestruction(); +- operator T*() const { return value; } +- T* operator*() const { return value; } +- T* operator->() const { return value; } +- WrappedForDestruction& operator=(const WrappedForDestruction& other) { +- value = other.value; +- return *this; +- } +- WrappedForDestruction& operator=(T* val) { +- value = val; +- return *this; +- } +- }; ++ /** ++ * Move assignment operator initializing TracedGlobal from an existing one. ++ */ ++ template ++ V8_INLINE TracedReference& operator=(TracedReference&& rhs); + +- V8_INLINE static T* New(Isolate* isolate, T* that, void* slot); ++ /** ++ * Copy assignment operator initializing TracedGlobal from an existing one. ++ * ++ * Note: Prohibited when |other| has a finalization callback set through ++ * |SetFinalizationCallback|. ++ */ ++ V8_INLINE TracedReference& operator=(const TracedReference& rhs); + +- T* operator*() const { return this->val_; } ++ /** ++ * Copy assignment operator initializing TracedGlobal from an existing one. ++ * ++ * Note: Prohibited when |other| has a finalization callback set through ++ * |SetFinalizationCallback|. ++ */ ++ template ++ V8_INLINE TracedReference& operator=(const TracedReference& rhs); + +- typename std::conditional< +- TracedGlobalTrait>::kRequiresExplicitDestruction, +- WrappedForDestruction, T*>::type val_{nullptr}; ++ /** ++ * If non-empty, destroy the underlying storage cell and create a new one with ++ * the contents of other if other is non empty ++ */ ++ template ++ V8_INLINE void Reset(Isolate* isolate, const Local& other); + +- friend class EmbedderHeapTracer; +- template +- friend class Local; +- friend class Object; +- template +- friend class ReturnValue; ++ template ++ V8_INLINE TracedReference& As() const { ++ return reinterpret_cast&>( ++ const_cast&>(*this)); ++ } + }; + + /** +@@ -3640,8 +3761,9 @@ class V8_EXPORT Object : public Value { + return object.val_->InternalFieldCount(); + } + +- /** Same as above, but works for TracedGlobal. */ +- V8_INLINE static int InternalFieldCount(const TracedGlobal& object) { ++ /** Same as above, but works for TracedReferenceBase. */ ++ V8_INLINE static int InternalFieldCount( ++ const TracedReferenceBase& object) { + return object.val_->InternalFieldCount(); + } + +@@ -3666,7 +3788,7 @@ class V8_EXPORT Object : public Value { + + /** Same as above, but works for TracedGlobal. */ + V8_INLINE static void* GetAlignedPointerFromInternalField( +- const TracedGlobal& object, int index) { ++ const TracedReferenceBase& object, int index) { + return object.val_->GetAlignedPointerFromInternalField(index); + } + +@@ -3956,7 +4078,7 @@ class ReturnValue { + template + V8_INLINE void Set(const Global& handle); + template +- V8_INLINE void Set(const TracedGlobal& handle); ++ V8_INLINE void Set(const TracedReferenceBase& handle); + template + V8_INLINE void Set(const Local handle); + // Fast primitive setters +@@ -7376,7 +7498,8 @@ class V8_EXPORT EmbedderHeapTracer { + class V8_EXPORT TracedGlobalHandleVisitor { + public: + virtual ~TracedGlobalHandleVisitor() = default; +- virtual void VisitTracedGlobalHandle(const TracedGlobal& value) = 0; ++ virtual void VisitTracedGlobalHandle(const TracedGlobal& handle) {} ++ virtual void VisitTracedReference(const TracedReference& handle) {} + }; + + /** +@@ -7414,7 +7537,7 @@ class V8_EXPORT EmbedderHeapTracer { + virtual void RegisterV8References( + const std::vector >& embedder_fields) = 0; + +- void RegisterEmbedderReference(const TracedGlobal& ref); ++ void RegisterEmbedderReference(const TracedReferenceBase& ref); + + /** + * Called at the beginning of a GC cycle. +@@ -7475,32 +7598,35 @@ class V8_EXPORT EmbedderHeapTracer { + * + * If this returns false, then V8 may decide that the object referred to by + * such a handle is reclaimed. In that case: +- * - No action is required if handles are used with destructors. +- * - When run without destructors (by specializing +- * |TracedGlobalTrait::kRequiresExplicitDestruction|) V8 calls +- * |ResetHandleInNonTracingGC|. +- * +- * Note that the |handle| is different from the |TracedGlobal| handle that +- * the embedder holds for retaining the object. The embedder may use +- * |TracedGlobal::WrapperClassId()| to distinguish cases where it wants +- * handles to be treated as roots from not being treated as roots. ++ * - No action is required if handles are used with destructors, i.e., by just ++ * using |TracedGlobal|. ++ * - When run without destructors, i.e., by using ++ * |TracedReference|, V8 calls |ResetHandleInNonTracingGC|. ++ * ++ * Note that the |handle| is different from the handle that the embedder holds ++ * for retaining the object. The embedder may use |WrapperClassId()| to ++ * distinguish cases where it wants handles to be treated as roots from not ++ * being treated as roots. + */ + virtual bool IsRootForNonTracingGC( +- const v8::TracedGlobal& handle) { +- return true; +- } ++ const v8::TracedReference& handle); ++ virtual bool IsRootForNonTracingGC(const v8::TracedGlobal& handle); + + /** + * Used in combination with |IsRootForNonTracingGC|. Called by V8 when an + * object that is backed by a handle is reclaimed by a non-tracing garbage + * collection. It is up to the embedder to reset the original handle. + * +- * Note that the |handle| is different from the |TracedGlobal| handle that +- * the embedder holds for retaining the object. It is up to the embedder to +- * find the orignal |TracedGlobal| handle via the object or class id. ++ * Note that the |handle| is different from the handle that the embedder holds ++ * for retaining the object. It is up to the embedder to find the original ++ * handle via the object or class id. + */ + virtual void ResetHandleInNonTracingGC( +- const v8::TracedGlobal& handle) {} ++ const v8::TracedReference& handle); ++ V8_DEPRECATE_SOON( ++ "Use TracedReference version when not requiring destructors.", ++ virtual void ResetHandleInNonTracingGC( ++ const v8::TracedGlobal& handle)); + + /* + * Called by the embedder to immediately perform a full garbage collection. +@@ -9103,8 +9229,12 @@ class V8_EXPORT V8 { + template + friend class Maybe; + template ++ friend class TracedReferenceBase; ++ template + friend class TracedGlobal; + template ++ friend class TracedReference; ++ template + friend class WeakCallbackInfo; + template friend class Eternal; + template friend class PersistentBase; +@@ -9975,7 +10105,7 @@ Local Local::New(Isolate* isolate, + } + + template +-Local Local::New(Isolate* isolate, const TracedGlobal& that) { ++Local Local::New(Isolate* isolate, const TracedReferenceBase& that) { + return New(isolate, that.val_); + } + +@@ -10156,26 +10286,20 @@ Global& Global::operator=(Global +-TracedGlobal::WrappedForDestruction::~WrappedForDestruction() { +- if (value == nullptr) return; +- V8::DisposeTracedGlobal(reinterpret_cast(value)); +- value = nullptr; +-} +- +-template +-T* TracedGlobal::New(Isolate* isolate, T* that, void* slot) { ++T* TracedReferenceBase::New(Isolate* isolate, T* that, void* slot, ++ DestructionMode destruction_mode) { + if (that == nullptr) return nullptr; + internal::Address* p = reinterpret_cast(that); + return reinterpret_cast(V8::GlobalizeTracedReference( + reinterpret_cast(isolate), p, + reinterpret_cast(slot), +- TracedGlobalTrait>::kRequiresExplicitDestruction)); ++ destruction_mode == kWithDestructor)); + } + + template +-void TracedGlobal::Reset() { ++void TracedReferenceBase::Reset() { + if (IsEmpty()) return; +- V8::DisposeTracedGlobal(reinterpret_cast(**this)); ++ V8::DisposeTracedGlobal(reinterpret_cast(val_)); + val_ = nullptr; + } + +@@ -10185,7 +10309,8 @@ void TracedGlobal::Reset(Isolate* iso + TYPE_CHECK(T, S); + Reset(); + if (other.IsEmpty()) return; +- this->val_ = New(isolate, other.val_, &val_); ++ this->val_ = this->New(isolate, other.val_, &this->val_, ++ TracedReferenceBase::kWithDestructor); + } + + template +@@ -10233,28 +10358,83 @@ TracedGlobal& TracedGlobal::operat + } + + template +-void TracedGlobal::SetWrapperClassId(uint16_t class_id) { ++template ++void TracedReference::Reset(Isolate* isolate, const Local& other) { ++ TYPE_CHECK(T, S); ++ Reset(); ++ if (other.IsEmpty()) return; ++ this->val_ = this->New(isolate, other.val_, &this->val_, ++ TracedReferenceBase::kWithoutDestructor); ++} ++ ++template ++template ++TracedReference& TracedReference::operator=(TracedReference&& rhs) { ++ TYPE_CHECK(T, S); ++ *this = std::move(rhs.template As()); ++ return *this; ++} ++ ++template ++template ++TracedReference& TracedReference::operator=( ++ const TracedReference& rhs) { ++ TYPE_CHECK(T, S); ++ *this = rhs.template As(); ++ return *this; ++} ++ ++template ++TracedReference& TracedReference::operator=(TracedReference&& rhs) { ++ if (this != &rhs) { ++ this->Reset(); ++ if (rhs.val_ != nullptr) { ++ this->val_ = rhs.val_; ++ V8::MoveTracedGlobalReference( ++ reinterpret_cast(&rhs.val_), ++ reinterpret_cast(&this->val_)); ++ rhs.val_ = nullptr; ++ } ++ } ++ return *this; ++} ++ ++template ++TracedReference& TracedReference::operator=(const TracedReference& rhs) { ++ if (this != &rhs) { ++ this->Reset(); ++ if (rhs.val_ != nullptr) { ++ V8::CopyTracedGlobalReference( ++ reinterpret_cast(&rhs.val_), ++ reinterpret_cast(&this->val_)); ++ } ++ } ++ return *this; ++} ++ ++template ++void TracedReferenceBase::SetWrapperClassId(uint16_t class_id) { + typedef internal::Internals I; + if (IsEmpty()) return; +- internal::Address* obj = reinterpret_cast(**this); ++ internal::Address* obj = reinterpret_cast(val_); + uint8_t* addr = reinterpret_cast(obj) + I::kNodeClassIdOffset; + *reinterpret_cast(addr) = class_id; + } + + template +-uint16_t TracedGlobal::WrapperClassId() const { ++uint16_t TracedReferenceBase::WrapperClassId() const { + typedef internal::Internals I; + if (IsEmpty()) return 0; +- internal::Address* obj = reinterpret_cast(**this); ++ internal::Address* obj = reinterpret_cast(val_); + uint8_t* addr = reinterpret_cast(obj) + I::kNodeClassIdOffset; + return *reinterpret_cast(addr); + } + + template +-void TracedGlobal::SetFinalizationCallback( ++void TracedReferenceBase::SetFinalizationCallback( + void* parameter, typename WeakCallbackInfo::Callback callback) { +- V8::SetFinalizationCallbackTraced( +- reinterpret_cast(**this), parameter, callback); ++ V8::SetFinalizationCallbackTraced(reinterpret_cast(val_), ++ parameter, callback); + } + + template +@@ -10273,12 +10453,12 @@ void ReturnValue::Set(const Global + + template + template +-void ReturnValue::Set(const TracedGlobal& handle) { ++void ReturnValue::Set(const TracedReferenceBase& handle) { + TYPE_CHECK(T, S); + if (V8_UNLIKELY(handle.IsEmpty())) { + *value_ = GetDefaultValue(); + } else { +- *value_ = *reinterpret_cast(*handle); ++ *value_ = *reinterpret_cast(handle.val_); + } + } + +diff -up chromium-78.0.3904.70/v8/src/api/api.cc.implement-tracedreference chromium-78.0.3904.70/v8/src/api/api.cc +--- chromium-78.0.3904.70/v8/src/api/api.cc.implement-tracedreference 2019-10-24 09:18:56.712105100 -0400 ++++ chromium-78.0.3904.70/v8/src/api/api.cc 2019-10-24 09:20:17.428555637 -0400 +@@ -10346,11 +10346,12 @@ void EmbedderHeapTracer::DecreaseAllocat + } + + void EmbedderHeapTracer::RegisterEmbedderReference( +- const TracedGlobal& ref) { ++ const TracedReferenceBase& ref) { + if (ref.IsEmpty()) return; + + i::Heap* const heap = reinterpret_cast(isolate_)->heap(); +- heap->RegisterExternallyReferencedObject(reinterpret_cast(*ref)); ++ heap->RegisterExternallyReferencedObject( ++ reinterpret_cast(ref.val_)); + } + + void EmbedderHeapTracer::IterateTracedGlobalHandles( +@@ -10360,6 +10361,26 @@ void EmbedderHeapTracer::IterateTracedGl + isolate->global_handles()->IterateTracedNodes(visitor); + } + ++bool EmbedderHeapTracer::IsRootForNonTracingGC( ++ const v8::TracedReference& handle) { ++ return true; ++} ++ ++bool EmbedderHeapTracer::IsRootForNonTracingGC( ++ const v8::TracedGlobal& handle) { ++ return true; ++} ++ ++void EmbedderHeapTracer::ResetHandleInNonTracingGC( ++ const v8::TracedReference& handle) { ++ UNREACHABLE(); ++} ++ ++void EmbedderHeapTracer::ResetHandleInNonTracingGC( ++ const v8::TracedGlobal& handle) { ++ UNREACHABLE(); ++} ++ + namespace internal { + + const size_t HandleScopeImplementer::kEnteredContextsOffset = +diff -up chromium-78.0.3904.70/v8/src/handles/global-handles.cc.implement-tracedreference chromium-78.0.3904.70/v8/src/handles/global-handles.cc +--- chromium-78.0.3904.70/v8/src/handles/global-handles.cc.implement-tracedreference 2019-10-24 09:20:39.954123225 -0400 ++++ chromium-78.0.3904.70/v8/src/handles/global-handles.cc 2019-10-24 09:21:45.911857072 -0400 +@@ -901,8 +901,13 @@ void GlobalHandles::IdentifyWeakUnmodifi + DCHECK(node->is_root()); + if (is_unmodified(node->location())) { + v8::Value* value = ToApi(node->handle()); +- node->set_root(tracer->IsRootForNonTracingGC( +- *reinterpret_cast*>(&value))); ++ if (node->has_destructor()) { ++ node->set_root(tracer->IsRootForNonTracingGC( ++ *reinterpret_cast*>(&value))); ++ } else { ++ node->set_root(tracer->IsRootForNonTracingGC( ++ *reinterpret_cast*>(&value))); ++ } + } + } + } +@@ -990,7 +995,7 @@ void GlobalHandles::IterateYoungWeakUnmo + } else { + v8::Value* value = ToApi(node->handle()); + tracer->ResetHandleInNonTracingGC( +- *reinterpret_cast*>(&value)); ++ *reinterpret_cast*>(&value)); + DCHECK(!node->IsInUse()); + } + +@@ -1271,8 +1276,13 @@ void GlobalHandles::IterateTracedNodes( + for (TracedNode* node : *traced_nodes_) { + if (node->IsInUse()) { + v8::Value* value = ToApi(node->handle()); +- visitor->VisitTracedGlobalHandle( +- *reinterpret_cast*>(&value)); ++ if (node->has_destructor()) { ++ visitor->VisitTracedGlobalHandle( ++ *reinterpret_cast*>(&value)); ++ } else { ++ visitor->VisitTracedReference( ++ *reinterpret_cast*>(&value)); ++ } + } + } + } +diff -up chromium-78.0.3904.70/v8/src/heap/embedder-tracing.h.implement-tracedreference chromium-78.0.3904.70/v8/src/heap/embedder-tracing.h +--- chromium-78.0.3904.70/v8/src/heap/embedder-tracing.h.implement-tracedreference 2019-10-24 09:22:03.664519559 -0400 ++++ chromium-78.0.3904.70/v8/src/heap/embedder-tracing.h 2019-10-24 09:22:45.197729964 -0400 +@@ -57,7 +57,12 @@ class V8_EXPORT_PRIVATE LocalEmbedderHea + bool IsRootForNonTracingGC(const v8::TracedGlobal& handle) { + return !InUse() || remote_tracer_->IsRootForNonTracingGC(handle); + } +- void ResetHandleInNonTracingGC(const v8::TracedGlobal& handle) { ++ ++ bool IsRootForNonTracingGC(const v8::TracedReference& handle) { ++ return !InUse() || remote_tracer_->IsRootForNonTracingGC(handle); ++ } ++ ++ void ResetHandleInNonTracingGC(const v8::TracedReference& handle) { + // Resetting is only called when IsRootForNonTracingGC returns false which + // can only happen the EmbedderHeapTracer is set on API level. + DCHECK(InUse()); From 3cab112113f3555efe30f3ed364889b7ba9626d9 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 29 Oct 2019 13:45:16 -0400 Subject: [PATCH 0610/1449] preserve one of the MANY copies of six --- chromium.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/chromium.spec b/chromium.spec index c03e832..6c43be5 100644 --- a/chromium.spec +++ b/chromium.spec @@ -1143,6 +1143,7 @@ build/linux/unbundle/remove_bundled_libraries.py \ 'third_party/zlib' \ 'third_party/zlib/google' \ 'tools/gn/base/third_party/icu' \ + 'tools/grit/third_party/six' \ 'url/third_party/mozilla' \ 'v8/src/third_party/siphash' \ 'v8/src/third_party/utf8-decoder' \ From 85e58a0c252514666ff33a0c4358ea51aeed04a4 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 29 Oct 2019 15:05:04 -0400 Subject: [PATCH 0611/1449] always BR: python2-devel --- chromium.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index 6c43be5..e5d2fd6 100644 --- a/chromium.spec +++ b/chromium.spec @@ -423,6 +423,7 @@ BuildRequires: pkgconfig(gtk+-3.0) BuildRequires: pkgconfig(gtk+-2.0) %endif BuildRequires: /usr/bin/python2 +BuildRequires: python2-devel %if 0%{?bundlepylibs} # Using bundled bits, do nothing. %else @@ -440,7 +441,6 @@ BuildRequires: python-markupsafe BuildRequires: python-ply %endif BuildRequires: python2-simplejson -BuildRequires: python2-devel %endif %if 0%{?bundlere2} # Using bundled bits, do nothing. From 8544391c64211dc8c590e9b56148eb18f300a854 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 29 Oct 2019 15:25:57 -0400 Subject: [PATCH 0612/1449] drop the patches we dragged with the f29 merge --- ...0.3809.100-gcc-no-alignas-and-export.patch | 14 - ...6.0.3809.100-vtable-symbol-undefined.patch | 11 - ...7.0.3865.75-certificate-transparency.patch | 539 ------------------ ...mium-77.0.3865.75-gcc-abstract-class.patch | 61 -- chromium-77.0.3865.75-harfbuzz-subset.patch | 49 -- chromium-77.0.3865.75-missing-limits.patch | 28 - chromium-77.0.3865.75-unbundle-zlib.patch | 25 - chromium-77.0.3865.90-linked-hash-set.patch | 130 ----- 8 files changed, 857 deletions(-) delete mode 100644 chromium-76.0.3809.100-gcc-no-alignas-and-export.patch delete mode 100644 chromium-76.0.3809.100-vtable-symbol-undefined.patch delete mode 100644 chromium-77.0.3865.75-certificate-transparency.patch delete mode 100644 chromium-77.0.3865.75-gcc-abstract-class.patch delete mode 100644 chromium-77.0.3865.75-harfbuzz-subset.patch delete mode 100644 chromium-77.0.3865.75-missing-limits.patch delete mode 100644 chromium-77.0.3865.75-unbundle-zlib.patch delete mode 100644 chromium-77.0.3865.90-linked-hash-set.patch diff --git a/chromium-76.0.3809.100-gcc-no-alignas-and-export.patch b/chromium-76.0.3809.100-gcc-no-alignas-and-export.patch deleted file mode 100644 index cc91d1e..0000000 --- a/chromium-76.0.3809.100-gcc-no-alignas-and-export.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -up chromium-76.0.3809.100/third_party/blink/renderer/core/css/css_property_value_set.h.gcc-no-alignas chromium-76.0.3809.100/third_party/blink/renderer/core/css/css_property_value_set.h ---- chromium-76.0.3809.100/third_party/blink/renderer/core/css/css_property_value_set.h.gcc-no-alignas 2019-08-09 16:48:13.000000000 +0200 -+++ chromium-76.0.3809.100/third_party/blink/renderer/core/css/css_property_value_set.h 2019-08-15 21:04:30.231532746 +0200 -@@ -176,8 +176,8 @@ class CSSLazyPropertyParser - DISALLOW_COPY_AND_ASSIGN(CSSLazyPropertyParser); - }; - --class CORE_EXPORT alignas(Member) alignas( -- CSSPropertyValueMetadata) ImmutableCSSPropertyValueSet -+class CORE_EXPORT ALIGNAS(alignof(Member)) -+ ALIGNAS(alignof(CSSPropertyValueMetadata)) ImmutableCSSPropertyValueSet - : public CSSPropertyValueSet { - public: - ImmutableCSSPropertyValueSet(const CSSPropertyValue*, diff --git a/chromium-76.0.3809.100-vtable-symbol-undefined.patch b/chromium-76.0.3809.100-vtable-symbol-undefined.patch deleted file mode 100644 index 64532df..0000000 --- a/chromium-76.0.3809.100-vtable-symbol-undefined.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-76.0.3809.100/net/quic/platform/impl/quic_default_proof_providers_impl.cc.vtable-symbol-undefined chromium-76.0.3809.100/net/quic/platform/impl/quic_default_proof_providers_impl.cc ---- chromium-76.0.3809.100/net/quic/platform/impl/quic_default_proof_providers_impl.cc.vtable-symbol-undefined 2019-08-20 21:21:24.901899270 +0200 -+++ chromium-76.0.3809.100/net/quic/platform/impl/quic_default_proof_providers_impl.cc 2019-08-20 21:19:30.361746211 +0200 -@@ -18,6 +18,7 @@ - #include "net/quic/crypto/proof_verifier_chromium.h" - #include "net/third_party/quiche/src/quic/platform/api/quic_flags.h" - #include "net/third_party/quiche/src/quic/platform/api/quic_ptr_util.h" -+#include "net/quic/platform/impl/quic_flags_impl.cc" - - DEFINE_QUIC_COMMAND_LINE_FLAG(std::string, - certificate_file, diff --git a/chromium-77.0.3865.75-certificate-transparency.patch b/chromium-77.0.3865.75-certificate-transparency.patch deleted file mode 100644 index 82e2958..0000000 --- a/chromium-77.0.3865.75-certificate-transparency.patch +++ /dev/null @@ -1,539 +0,0 @@ -diff -up chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager_browsertest.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager_browsertest.cc ---- chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager_browsertest.cc.certificate-transparency 2019-09-12 16:09:52.818635106 +0200 -+++ chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager_browsertest.cc 2019-09-12 16:11:07.662562005 +0200 -@@ -21,6 +21,7 @@ - #include "components/version_info/version_info.h" - #include "content/public/common/content_switches.h" - #include "content/public/common/user_agent.h" -+#include "services/network/public/cpp/network_service_buildflags.h" - #include "services/network/public/mojom/network_context.mojom.h" - #include "services/network/public/mojom/network_service.mojom.h" - #include "testing/gmock/include/gmock/gmock.h" -@@ -356,3 +357,55 @@ IN_PROC_BROWSER_TEST_P(SystemNetworkCont - INSTANTIATE_TEST_SUITE_P(, - SystemNetworkContextManagerFreezeQUICUaBrowsertest, - ::testing::Values(true, false)); -+ -+class SystemNetworkContextManagerCertificateTransparencyBrowsertest -+ : public SystemNetworkContextManagerBrowsertest, -+ public testing::WithParamInterface> { -+ public: -+ SystemNetworkContextManagerCertificateTransparencyBrowsertest() { -+ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( -+ GetParam()); -+ } -+ ~SystemNetworkContextManagerCertificateTransparencyBrowsertest() override { -+ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( -+ base::nullopt); -+ } -+}; -+ -+#if BUILDFLAG(IS_CT_SUPPORTED) -+IN_PROC_BROWSER_TEST_P( -+ SystemNetworkContextManagerCertificateTransparencyBrowsertest, -+ CertificateTransparencyConfig) { -+ network::mojom::NetworkContextParamsPtr context_params = -+ g_browser_process->system_network_context_manager() -+ ->CreateDefaultNetworkContextParams(); -+ -+ const bool kDefault = -+#if defined(GOOGLE_CHROME_BUILD) && defined(OFFICIAL_BUILD) && \ -+ !defined(OS_ANDROID) -+ true; -+#else -+ false; -+#endif -+ -+ EXPECT_EQ(GetParam().value_or(kDefault), -+ context_params->enforce_chrome_ct_policy); -+ EXPECT_NE(GetParam().value_or(kDefault), context_params->ct_logs.empty()); -+ -+ if (GetParam().value_or(kDefault)) { -+ bool has_google_log = false; -+ bool has_disqualified_log = false; -+ for (const auto& ct_log : context_params->ct_logs) { -+ has_google_log |= ct_log->operated_by_google; -+ has_disqualified_log |= ct_log->disqualified_at.has_value(); -+ } -+ EXPECT_TRUE(has_google_log); -+ EXPECT_TRUE(has_disqualified_log); -+ } -+} -+#endif -+ -+INSTANTIATE_TEST_SUITE_P( -+ , -+ SystemNetworkContextManagerCertificateTransparencyBrowsertest, -+ ::testing::Values(base::nullopt, true, false)); -diff -up chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.cc ---- chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.cc.certificate-transparency 2019-09-09 23:55:09.000000000 +0200 -+++ chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.cc 2019-09-12 16:09:52.819635118 +0200 -@@ -4,11 +4,13 @@ - - #include "chrome/browser/net/system_network_context_manager.h" - -+#include - #include - #include - #include - - #include "base/bind.h" -+#include "base/build_time.h" - #include "base/command_line.h" - #include "base/feature_list.h" - #include "base/logging.h" -@@ -50,6 +52,7 @@ - #include "content/public/common/mime_handler_view_mode.h" - #include "content/public/common/service_names.mojom.h" - #include "content/public/common/user_agent.h" -+#include "crypto/sha2.h" - #include "mojo/public/cpp/bindings/associated_interface_ptr.h" - #include "net/dns/public/util.h" - #include "net/net_buildflags.h" -@@ -79,6 +82,20 @@ - - namespace { - -+constexpr bool kCertificateTransparencyEnabled = -+#if defined(GOOGLE_CHROME_BUILD) && defined(OFFICIAL_BUILD) && \ -+ !defined(OS_ANDROID) -+ // Certificate Transparency is only enabled if: -+ // - Desktop (!OS_ANDROID); OS_IOS does not use this file -+ // - base::GetBuildTime() is deterministic to the source (OFFICIAL_BUILD) -+ // - The build in reliably updatable (GOOGLE_CHROME_BUILD) -+ true; -+#else -+ false; -+#endif -+ -+bool g_enable_certificate_transparency = kCertificateTransparencyEnabled; -+ - // The global instance of the SystemNetworkContextmanager. - SystemNetworkContextManager* g_system_network_context_manager = nullptr; - -@@ -658,14 +675,35 @@ SystemNetworkContextManager::CreateDefau - - bool http_09_on_non_default_ports_enabled = false; - #if !defined(OS_ANDROID) -- // CT is only enabled on Desktop platforms for now. -- network_context_params->enforce_chrome_ct_policy = true; -- for (const auto& ct_log : certificate_transparency::GetKnownLogs()) { -- // TODO(rsleevi): https://crbug.com/702062 - Remove this duplication. -- network::mojom::CTLogInfoPtr log_info = network::mojom::CTLogInfo::New(); -- log_info->public_key = std::string(ct_log.log_key, ct_log.log_key_length); -- log_info->name = ct_log.log_name; -- network_context_params->ct_logs.push_back(std::move(log_info)); -+ -+ if (g_enable_certificate_transparency) { -+ network_context_params->enforce_chrome_ct_policy = true; -+ network_context_params->ct_log_update_time = base::GetBuildTime(); -+ -+ std::vector operated_by_google_logs = -+ certificate_transparency::GetLogsOperatedByGoogle(); -+ std::vector> disqualified_logs = -+ certificate_transparency::GetDisqualifiedLogs(); -+ for (const auto& ct_log : certificate_transparency::GetKnownLogs()) { -+ // TODO(rsleevi): https://crbug.com/702062 - Remove this duplication. -+ network::mojom::CTLogInfoPtr log_info = network::mojom::CTLogInfo::New(); -+ log_info->public_key = std::string(ct_log.log_key, ct_log.log_key_length); -+ log_info->name = ct_log.log_name; -+ -+ std::string log_id = crypto::SHA256HashString(log_info->public_key); -+ log_info->operated_by_google = -+ std::binary_search(std::begin(operated_by_google_logs), -+ std::end(operated_by_google_logs), log_id); -+ auto it = std::lower_bound( -+ std::begin(disqualified_logs), std::end(disqualified_logs), log_id, -+ [](const auto& disqualified_log, const std::string& log_id) { -+ return disqualified_log.first < log_id; -+ }); -+ if (it != std::end(disqualified_logs) && it->first == log_id) { -+ log_info->disqualified_at = it->second; -+ } -+ network_context_params->ct_logs.push_back(std::move(log_info)); -+ } - } - - const base::Value* value = -@@ -723,6 +761,12 @@ SystemNetworkContextManager::GetHttpAuth - return CreateHttpAuthDynamicParams(g_browser_process->local_state()); - } - -+void SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( -+ base::Optional enabled) { -+ g_enable_certificate_transparency = -+ enabled.value_or(kCertificateTransparencyEnabled); -+} -+ - network::mojom::NetworkContextParamsPtr - SystemNetworkContextManager::CreateNetworkContextParams() { - // TODO(mmenke): Set up parameters here (in memory cookie store, etc). -diff -up chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.h.certificate-transparency chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.h ---- chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.h.certificate-transparency 2019-09-09 23:55:09.000000000 +0200 -+++ chromium-77.0.3865.75/chrome/browser/net/system_network_context_manager.h 2019-09-12 16:09:52.819635118 +0200 -@@ -139,6 +139,12 @@ class SystemNetworkContextManager { - static network::mojom::HttpAuthDynamicParamsPtr - GetHttpAuthDynamicParamsForTesting(); - -+ // Enables Certificate Transparency and enforcing the Chrome Certificate -+ // Transparency Policy. For test use only. Use base::nullopt_t to reset to -+ // the default state. -+ static void SetEnableCertificateTransparencyForTesting( -+ base::Optional enabled); -+ - private: - class URLLoaderFactoryForSystem; - -diff -up chromium-77.0.3865.75/chrome/browser/policy/policy_browsertest.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/policy/policy_browsertest.cc ---- chromium-77.0.3865.75/chrome/browser/policy/policy_browsertest.cc.certificate-transparency 2019-09-09 23:55:10.000000000 +0200 -+++ chromium-77.0.3865.75/chrome/browser/policy/policy_browsertest.cc 2019-09-12 16:09:52.820635131 +0200 -@@ -4836,7 +4836,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, - browser()->tab_strip_model()->GetActiveWebContents()->GetTitle()); - } - --IN_PROC_BROWSER_TEST_F(PolicyTest, -+IN_PROC_BROWSER_TEST_F(CertificateTransparencyPolicyTest, - CertificateTransparencyEnforcementDisabledForCas) { - net::EmbeddedTestServer https_server_ok(net::EmbeddedTestServer::TYPE_HTTPS); - https_server_ok.SetSSLConfig(net::EmbeddedTestServer::CERT_OK); -diff -up chromium-77.0.3865.75/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc ---- chromium-77.0.3865.75/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc.certificate-transparency 2019-09-09 23:55:10.000000000 +0200 -+++ chromium-77.0.3865.75/chrome/browser/ssl/chrome_expect_ct_reporter_browsertest.cc 2019-09-12 16:09:52.821635143 +0200 -@@ -8,6 +8,7 @@ - #include "base/callback.h" - #include "base/run_loop.h" - #include "base/test/scoped_feature_list.h" -+#include "chrome/browser/net/system_network_context_manager.h" - #include "chrome/browser/profiles/profile.h" - #include "chrome/browser/ssl/cert_verifier_browser_test.h" - #include "chrome/browser/ui/browser.h" -@@ -27,7 +28,17 @@ namespace { - // received by a server. - class ExpectCTBrowserTest : public CertVerifierBrowserTest { - public: -- ExpectCTBrowserTest() : CertVerifierBrowserTest() {} -+ ExpectCTBrowserTest() : CertVerifierBrowserTest() { -+ // Expect-CT reporting depends on actually enforcing Certificate -+ // Transparency. -+ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( -+ true); -+ } -+ -+ ~ExpectCTBrowserTest() override { -+ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( -+ base::nullopt); -+ } - - void SetUpOnMainThread() override { - run_loop_ = std::make_unique(); -diff -up chromium-77.0.3865.75/chrome/browser/ssl/security_state_tab_helper_browsertest.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/ssl/security_state_tab_helper_browsertest.cc ---- chromium-77.0.3865.75/chrome/browser/ssl/security_state_tab_helper_browsertest.cc.certificate-transparency 2019-09-09 23:55:10.000000000 +0200 -+++ chromium-77.0.3865.75/chrome/browser/ssl/security_state_tab_helper_browsertest.cc 2019-09-12 16:09:52.821635143 +0200 -@@ -433,6 +433,13 @@ class SecurityStateTabHelperTest : publi - SecurityStateTabHelperTest() - : https_server_(net::EmbeddedTestServer::TYPE_HTTPS) { - https_server_.ServeFilesFromSourceDirectory(GetChromeTestDataDir()); -+ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( -+ true); -+ } -+ -+ ~SecurityStateTabHelperTest() override { -+ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( -+ base::nullopt); - } - - void SetUpOnMainThread() override { -diff -up chromium-77.0.3865.75/chrome/browser/ssl/ssl_browsertest.cc.certificate-transparency chromium-77.0.3865.75/chrome/browser/ssl/ssl_browsertest.cc ---- chromium-77.0.3865.75/chrome/browser/ssl/ssl_browsertest.cc.certificate-transparency 2019-09-09 23:55:10.000000000 +0200 -+++ chromium-77.0.3865.75/chrome/browser/ssl/ssl_browsertest.cc 2019-09-12 16:09:52.822635155 +0200 -@@ -1853,8 +1853,14 @@ class CertificateTransparencySSLUITest : - public: - CertificateTransparencySSLUITest() - : CertVerifierBrowserTest(), -- https_server_(net::EmbeddedTestServer::TYPE_HTTPS) {} -- ~CertificateTransparencySSLUITest() override {} -+ https_server_(net::EmbeddedTestServer::TYPE_HTTPS) { -+ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( -+ true); -+ } -+ ~CertificateTransparencySSLUITest() override { -+ SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting( -+ base::nullopt); -+ } - - void SetUpOnMainThread() override { - CertVerifierBrowserTest::SetUpOnMainThread(); -diff -up chromium-77.0.3865.75/components/certificate_transparency/chrome_ct_policy_enforcer.h.certificate-transparency chromium-77.0.3865.75/components/certificate_transparency/chrome_ct_policy_enforcer.h ---- chromium-77.0.3865.75/components/certificate_transparency/chrome_ct_policy_enforcer.h.certificate-transparency 2019-09-09 23:55:14.000000000 +0200 -+++ chromium-77.0.3865.75/components/certificate_transparency/chrome_ct_policy_enforcer.h 2019-09-12 16:09:52.823635168 +0200 -@@ -45,6 +45,19 @@ class ChromeCTPolicyEnforcer : public ne - - void SetClockForTesting(const base::Clock* clock) { clock_ = clock; } - -+ // TODO(https://crbug.com/999240): These are exposed to allow end-to-end -+ // testing by higher layers (i.e. that the ChromeCTPolicyEnforcer is -+ // correctly constructed). When either this issue or https://crbug.com/848277 -+ // are fixed, the configuration can be tested independently, and these can -+ // be removed. -+ const std::vector& operated_by_google_logs_for_testing() { -+ return operated_by_google_logs_; -+ } -+ const std::vector>& -+ disqualified_logs_for_testing() { -+ return disqualified_logs_; -+ } -+ - private: - // Returns true if the log identified by |log_id| (the SHA-256 hash of the - // log's DER-encoded SPKI) has been disqualified, and sets -diff -up chromium-77.0.3865.75/services/network/network_context.cc.certificate-transparency chromium-77.0.3865.75/services/network/network_context.cc ---- chromium-77.0.3865.75/services/network/network_context.cc.certificate-transparency 2019-09-09 23:55:22.000000000 +0200 -+++ chromium-77.0.3865.75/services/network/network_context.cc 2019-09-12 16:09:52.823635168 +0200 -@@ -36,6 +36,7 @@ - #include "components/prefs/pref_registry_simple.h" - #include "components/prefs/pref_service.h" - #include "components/prefs/pref_service_factory.h" -+#include "crypto/sha2.h" - #include "mojo/public/cpp/bindings/strong_binding.h" - #include "net/base/layered_network_delegate.h" - #include "net/base/load_flags.h" -@@ -1877,16 +1878,6 @@ URLRequestContextOwner NetworkContext::A - base::FeatureList::IsEnabled(features::kNetworkErrorLogging)); - #endif // BUILDFLAG(ENABLE_REPORTING) - --#if BUILDFLAG(IS_CT_SUPPORTED) -- if (params_->enforce_chrome_ct_policy) { -- builder->set_ct_policy_enforcer( -- std::make_unique( -- base::GetBuildTime(), -- certificate_transparency::GetDisqualifiedLogs(), -- certificate_transparency::GetLogsOperatedByGoogle())); -- } --#endif // BUILDFLAG(IS_CT_SUPPORTED) -- - net::HttpNetworkSession::Params session_params; - bool is_quic_force_disabled = false; - if (network_service_ && network_service_->quic_disabled()) -@@ -1936,8 +1927,20 @@ URLRequestContextOwner NetworkContext::A - - #if BUILDFLAG(IS_CT_SUPPORTED) - std::vector> ct_logs; -+ std::vector> disqualified_logs; -+ std::vector operated_by_google_logs; -+ - if (!params_->ct_logs.empty()) { - for (const auto& log : params_->ct_logs) { -+ if (log->operated_by_google || log->disqualified_at) { -+ std::string log_id = crypto::SHA256HashString(log->public_key); -+ if (log->operated_by_google) -+ operated_by_google_logs.push_back(log_id); -+ if (log->disqualified_at) { -+ disqualified_logs.push_back( -+ std::make_pair(log_id, log->disqualified_at.value())); -+ } -+ } - scoped_refptr log_verifier = - net::CTLogVerifier::Create(log->public_key, log->name); - if (!log_verifier) { -@@ -1950,6 +1953,17 @@ URLRequestContextOwner NetworkContext::A - ct_verifier->AddLogs(ct_logs); - builder->set_ct_verifier(std::move(ct_verifier)); - } -+ -+ if (params_->enforce_chrome_ct_policy) { -+ std::sort(std::begin(operated_by_google_logs), -+ std::end(operated_by_google_logs)); -+ std::sort(std::begin(disqualified_logs), std::end(disqualified_logs)); -+ -+ builder->set_ct_policy_enforcer( -+ std::make_unique( -+ params_->ct_log_update_time, disqualified_logs, -+ operated_by_google_logs)); -+ } - #endif // BUILDFLAG(IS_CT_SUPPORTED) - - const base::CommandLine* command_line = -diff -up chromium-77.0.3865.75/services/network/network_context_unittest.cc.certificate-transparency chromium-77.0.3865.75/services/network/network_context_unittest.cc ---- chromium-77.0.3865.75/services/network/network_context_unittest.cc.certificate-transparency 2019-09-09 23:55:22.000000000 +0200 -+++ chromium-77.0.3865.75/services/network/network_context_unittest.cc 2019-09-12 16:13:10.479056669 +0200 -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style license that can be - // found in the LICENSE file. - -+#include - #include - #include - #include -@@ -38,10 +39,12 @@ - #include "base/threading/thread_task_runner_handle.h" - #include "base/time/default_clock.h" - #include "base/time/default_tick_clock.h" -+#include "base/time/time.h" - #include "build/build_config.h" - #include "components/network_session_configurator/browser/network_session_configurator.h" - #include "components/network_session_configurator/common/network_switches.h" - #include "components/prefs/testing_pref_service.h" -+#include "crypto/sha2.h" - #include "mojo/public/cpp/bindings/remote.h" - #include "mojo/public/cpp/bindings/self_owned_receiver.h" - #include "mojo/public/cpp/system/data_pipe_utils.h" -@@ -115,6 +118,11 @@ - #include "url/scheme_host_port.h" - #include "url/url_constants.h" - -+#if BUILDFLAG(IS_CT_SUPPORTED) -+#include "components/certificate_transparency/chrome_ct_policy_enforcer.h" -+#include "services/network/public/mojom/ct_log_info.mojom.h" -+#endif -+ - #if !BUILDFLAG(DISABLE_FTP_SUPPORT) - #include "net/ftp/ftp_auth_cache.h" - #endif // !BUILDFLAG(DISABLE_FTP_SUPPORT) -@@ -5958,6 +5966,72 @@ TEST_F(NetworkContextSplitCacheTest, - true /* was_cached */, true /* is_navigation */); - } - -+#if BUILDFLAG(IS_CT_SUPPORTED) -+TEST_F(NetworkContextTest, CertificateTransparencyConfig) { -+ mojom::NetworkContextParamsPtr params = CreateContextParams(); -+ params->enforce_chrome_ct_policy = true; -+ params->ct_log_update_time = base::Time::Now(); -+ -+ // The log public keys do not matter for the test, so invalid keys are used. -+ // However, because the log IDs are derived from the SHA-256 hash of the log -+ // key, the log keys are generated such that qualified logs are in the form -+ // of four digits (e.g. "0000", "1111"), while disqualified logs are in the -+ // form of four letters (e.g. "AAAA", "BBBB"). -+ -+ for (int i = 0; i < 6; ++i) { -+ network::mojom::CTLogInfoPtr log_info = network::mojom::CTLogInfo::New(); -+ // Shift to ASCII '0' (0x30) -+ log_info->public_key = std::string(4, 0x30 + static_cast(i)); -+ log_info->name = std::string(4, 0x30 + static_cast(i)); -+ log_info->operated_by_google = i % 2; -+ -+ params->ct_logs.push_back(std::move(log_info)); -+ } -+ for (int i = 0; i < 3; ++i) { -+ network::mojom::CTLogInfoPtr log_info = network::mojom::CTLogInfo::New(); -+ // Shift to ASCII 'A' (0x41) -+ log_info->public_key = std::string(4, 0x41 + static_cast(i)); -+ log_info->name = std::string(4, 0x41 + static_cast(i)); -+ log_info->operated_by_google = false; -+ log_info->disqualified_at = base::TimeDelta::FromSeconds(i); -+ -+ params->ct_logs.push_back(std::move(log_info)); -+ } -+ std::unique_ptr network_context = -+ CreateContextWithParams(std::move(params)); -+ -+ net::CTPolicyEnforcer* request_enforcer = -+ network_context->url_request_context()->ct_policy_enforcer(); -+ ASSERT_TRUE(request_enforcer); -+ -+ // Completely unsafe if |enforce_chrome_ct_policy| is false. -+ certificate_transparency::ChromeCTPolicyEnforcer* policy_enforcer = -+ reinterpret_cast( -+ request_enforcer); -+ -+ EXPECT_TRUE(std::is_sorted( -+ policy_enforcer->operated_by_google_logs_for_testing().begin(), -+ policy_enforcer->operated_by_google_logs_for_testing().end())); -+ EXPECT_TRUE( -+ std::is_sorted(policy_enforcer->disqualified_logs_for_testing().begin(), -+ policy_enforcer->disqualified_logs_for_testing().end())); -+ -+ EXPECT_THAT( -+ policy_enforcer->operated_by_google_logs_for_testing(), -+ ::testing::UnorderedElementsAreArray({crypto::SHA256HashString("1111"), -+ crypto::SHA256HashString("3333"), -+ crypto::SHA256HashString("5555")})); -+ EXPECT_THAT(policy_enforcer->disqualified_logs_for_testing(), -+ ::testing::UnorderedElementsAre( -+ ::testing::Pair(crypto::SHA256HashString("AAAA"), -+ base::TimeDelta::FromSeconds(0)), -+ ::testing::Pair(crypto::SHA256HashString("BBBB"), -+ base::TimeDelta::FromSeconds(1)), -+ ::testing::Pair(crypto::SHA256HashString("CCCC"), -+ base::TimeDelta::FromSeconds(2)))); -+} -+#endif -+ - } // namespace - - } // namespace network -diff -up chromium-77.0.3865.75/services/network/public/mojom/ct_log_info.mojom.certificate-transparency chromium-77.0.3865.75/services/network/public/mojom/ct_log_info.mojom ---- chromium-77.0.3865.75/services/network/public/mojom/ct_log_info.mojom.certificate-transparency 2019-09-09 23:55:22.000000000 +0200 -+++ chromium-77.0.3865.75/services/network/public/mojom/ct_log_info.mojom 2019-09-12 16:09:52.824635180 +0200 -@@ -4,6 +4,8 @@ - - module network.mojom; - -+import "mojo/public/mojom/base/time.mojom"; -+ - // A single Certificate Transparency Log configuration. - struct CTLogInfo { - // The DER-encoded SubjectPublicKeyInfo of the log. -@@ -14,4 +16,13 @@ struct CTLogInfo { - // The human-readable, log-supplied log name. Note that this will not be - // translated. - string name; -+ -+ // Whether or not the log should should be considered a Google Log for the -+ // purposes of enforcing the "Certificate Transparency in Chrome" policy. -+ bool operated_by_google = false; -+ -+ // If set, the time since the Unix Epoch when the log was disqualified. This -+ // is used to determine the "once or currently qualified" status of the log. -+ // If the log is currently qualified, this will not be set. -+ mojo_base.mojom.TimeDelta? disqualified_at; - }; -diff -up chromium-77.0.3865.75/services/network/public/mojom/network_context.mojom.certificate-transparency chromium-77.0.3865.75/services/network/public/mojom/network_context.mojom ---- chromium-77.0.3865.75/services/network/public/mojom/network_context.mojom.certificate-transparency 2019-09-09 23:55:22.000000000 +0200 -+++ chromium-77.0.3865.75/services/network/public/mojom/network_context.mojom 2019-09-12 16:09:52.825635192 +0200 -@@ -239,15 +239,6 @@ struct NetworkContextParams { - [EnableIf=is_android] - bool check_clear_text_permitted = false; - -- // True if the "Certificate Transparency in Chrome" policy (see -- // https://github.com/chromium/ct-policy/blob/master/ct_policy.md) should -- // be enforced for certificates and connections. -- // -- // See //net/docs/certificate-transparency.md before setting this flag to -- // true. -- [EnableIf=is_ct_supported] -- bool enforce_chrome_ct_policy = false; -- - // Enables HTTP/0.9 on ports other than 80 for HTTP and 443 for HTTPS. - bool http_09_on_non_default_ports_enabled = false; - -@@ -300,6 +291,15 @@ struct NetworkContextParams { - // servers, so they can discover misconfigurations. - bool enable_certificate_reporting = false; - -+ // True if the "Certificate Transparency in Chrome" policy (see -+ // https://github.com/chromium/ct-policy/blob/master/ct_policy.md) should -+ // be enforced for certificates and connections. -+ // -+ // See //net/docs/certificate-transparency.md before setting this flag to -+ // true. -+ [EnableIf=is_ct_supported] -+ bool enforce_chrome_ct_policy = false; -+ - // Enables Expect CT reporting, which sends reports for opted-in sites that - // don't serve sufficient Certificate Transparency information. - [EnableIf=is_ct_supported] -@@ -311,6 +311,13 @@ struct NetworkContextParams { - [EnableIf=is_ct_supported] - array ct_logs; - -+ // When the Certificate Transparency logs in |ct_logs| were last updated. If -+ // |enforce_chrome_ct_policy| is set, and |ct_log_update_time| is not -+ // sufficiently recent, enforcement of the "Certificate Transparency in -+ // Chrome" policy will be disabled. -+ [EnableIf=is_ct_supported] -+ mojo_base.mojom.Time ct_log_update_time; -+ - // Specifies the path to the directory where NSS will store its database. - [EnableIf=is_chromeos] - mojo_base.mojom.FilePath? nss_path; diff --git a/chromium-77.0.3865.75-gcc-abstract-class.patch b/chromium-77.0.3865.75-gcc-abstract-class.patch deleted file mode 100644 index 6d77299..0000000 --- a/chromium-77.0.3865.75-gcc-abstract-class.patch +++ /dev/null @@ -1,61 +0,0 @@ -From f08cb0022527081c078e8b96062e6c9b4fbda151 Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Fri, 26 Jul 2019 16:48:06 +0000 -Subject: [PATCH] BinaryUploadService: change parameter passing that cannot afford abstract class - -The method UploadForDeepScanning gets a Request as parameter. But Request is an -abstract class, so GCC will not allow that declaration (polimorphycs should be -passed by reference). Use std::unique_ptr so BinaryUploadService can assume -ownership. - -Bug: 819294 -Change-Id: I9e8c75cc92b01abd704d9049b0421555377da5ba -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1713550 -Reviewed-by: Daniel Rubery -Commit-Queue: José Dapena Paz -Cr-Commit-Position: refs/heads/master@{#681333} ---- - -diff --git a/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc b/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc -index 6430c89..4e90487 100644 ---- a/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc -+++ b/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc -@@ -10,7 +10,7 @@ - namespace safe_browsing { - - void BinaryUploadService::UploadForDeepScanning( -- BinaryUploadService::Request request) { -+ std::unique_ptr request) { - DCHECK_CURRENTLY_ON(content::BrowserThread::UI); - NOTREACHED(); - } -diff --git a/chrome/browser/safe_browsing/download_protection/binary_upload_service.h b/chrome/browser/safe_browsing/download_protection/binary_upload_service.h -index d2dfd83..9b6f395 100644 ---- a/chrome/browser/safe_browsing/download_protection/binary_upload_service.h -+++ b/chrome/browser/safe_browsing/download_protection/binary_upload_service.h -@@ -5,6 +5,8 @@ - #ifndef CHROME_BROWSER_SAFE_BROWSING_DOWNLOAD_PROTECTION_BINARY_UPLOAD_SERVICE_H_ - #define CHROME_BROWSER_SAFE_BROWSING_DOWNLOAD_PROTECTION_BINARY_UPLOAD_SERVICE_H_ - -+#include -+ - #include "base/callback.h" - #include "components/safe_browsing/proto/webprotect.pb.h" - -@@ -40,6 +42,7 @@ - public: - // |callback| will run on the UI thread. - explicit Request(Callback callback); -+ virtual ~Request() = default; - Request(const Request&) = delete; - Request& operator=(const Request&) = delete; - -@@ -67,7 +70,7 @@ - // Upload the given file contents for deep scanning. The results will be - // returned asynchronously by calling |request|'s |callback|. This must be - // called on the UI thread. -- void UploadForDeepScanning(Request request); -+ void UploadForDeepScanning(std::unique_ptr request); - }; - - } // namespace safe_browsing diff --git a/chromium-77.0.3865.75-harfbuzz-subset.patch b/chromium-77.0.3865.75-harfbuzz-subset.patch deleted file mode 100644 index 55d78d1..0000000 --- a/chromium-77.0.3865.75-harfbuzz-subset.patch +++ /dev/null @@ -1,49 +0,0 @@ -From 27e25336b8316ff3ec4e464058682ed85801fd06 Mon Sep 17 00:00:00 2001 -From: Raphael Kubo da Costa -Date: Mon, 29 Jul 2019 10:54:28 +0000 -Subject: [PATCH] Also link against libharfbuzz-subset when use_system_harfbuzz is true - -When building HarfBuzz as part of Chromium, there is a single source set -with all the files we need in the build. - -Upstream HarfBuzz, on the other hand, produces a few different libraries: -harfbuzz, harfbuzz-icu and harfbuzz-subset. When |use_system_harfbuzz| is -true, we were only looking for (and using) harfbuzz.pc with pkg-config even -though we also use symbols from libharfbuzz-subset.so. This resulted in -errors when linking: - - ld: obj/skia/skia/SkPDFSubsetFont.o: in function `SkPDFSubsetFont(sk_sp, SkPDFGlyphUse const&, SkPDF::Metadata::Subsetter, char const*, int)': - SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x48a): undefined reference to `hb_subset_input_create_or_fail' - ld: SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x4af): undefined reference to `hb_subset_input_glyph_set' - ld: SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x5d7): undefined reference to `hb_subset_input_set_retain_gids' - ld: SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x5e4): undefined reference to `hb_subset_input_set_drop_hints' - ld: SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x5f3): undefined reference to `hb_subset' - ld: SkPDFSubsetFont.cpp:(.text._Z15SkPDFSubsetFont5sk_spI6SkDataERK13SkPDFGlyphUseN5SkPDF8Metadata9SubsetterEPKci+0x66f): undefined reference to `hb_subset_input_destroy' - -as reported in -https://groups.google.com/a/chromium.org/d/msg/chromium-packagers/UyJsVJ5QqWo/jSv5z7-rEQAJ - -Change-Id: I997af075c7b7263cd7cc71a63db5b0f93bd1ab59 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1715288 -Auto-Submit: Raphael Kubo da Costa -Commit-Queue: Dominik Röttsches -Reviewed-by: Dominik Röttsches -Cr-Commit-Position: refs/heads/master@{#681760} ---- - -diff --git a/third_party/harfbuzz-ng/BUILD.gn b/third_party/harfbuzz-ng/BUILD.gn -index 37d8e33..72013eb1d 100644 ---- a/third_party/harfbuzz-ng/BUILD.gn -+++ b/third_party/harfbuzz-ng/BUILD.gn -@@ -16,7 +16,10 @@ - "//third_party:freetype_harfbuzz", - "//third_party/freetype:freetype_source", - ] -- packages = [ "harfbuzz" ] -+ packages = [ -+ "harfbuzz", -+ "harfbuzz-subset", -+ ] - } - } else { - config("harfbuzz_config") { diff --git a/chromium-77.0.3865.75-missing-limits.patch b/chromium-77.0.3865.75-missing-limits.patch deleted file mode 100644 index 3ac1770..0000000 --- a/chromium-77.0.3865.75-missing-limits.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 5baf7df7f4c5971dab552897eeef94b194650ce5 Mon Sep 17 00:00:00 2001 -From: Dave Tapuska -Date: Mon, 12 Aug 2019 22:30:13 +0000 -Subject: [PATCH] Fix build failure due to missing include for std::numeric_limits usage. - -Some configurations fail to build, limits should have been included. - -BUG=992832 - -Change-Id: I894ba0543bfcef101c93259e39a31d12ae6d035c -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1747981 -Commit-Queue: Dave Tapuska -Reviewed-by: Mostyn Bramley-Moore -Cr-Commit-Position: refs/heads/master@{#686214} ---- - -diff --git a/third_party/blink/renderer/platform/exported/web_time_range.cc b/third_party/blink/renderer/platform/exported/web_time_range.cc -index 384566a..68d83e1 100644 ---- a/third_party/blink/renderer/platform/exported/web_time_range.cc -+++ b/third_party/blink/renderer/platform/exported/web_time_range.cc -@@ -31,6 +31,7 @@ - #include "third_party/blink/public/platform/web_time_range.h" - - #include -+#include - - namespace blink { - diff --git a/chromium-77.0.3865.75-unbundle-zlib.patch b/chromium-77.0.3865.75-unbundle-zlib.patch deleted file mode 100644 index d6c45ad..0000000 --- a/chromium-77.0.3865.75-unbundle-zlib.patch +++ /dev/null @@ -1,25 +0,0 @@ -From e1bbdec720a333937bd1b990ae0f7ee97db0d3b0 Mon Sep 17 00:00:00 2001 -From: Your Name -Date: Fri, 28 Jun 2019 15:56:23 +0000 -Subject: [PATCH] update zlib - ---- - third_party/perfetto/gn/BUILD.gn | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/third_party/perfetto/gn/BUILD.gn b/third_party/perfetto/gn/BUILD.gn -index c951f5f..297eee3 100644 ---- a/third_party/perfetto/gn/BUILD.gn -+++ b/third_party/perfetto/gn/BUILD.gn -@@ -200,7 +200,7 @@ group("zlib") { - "//buildtools:zlib", - ] - } else if (build_with_chromium) { -- public_configs = [ "//third_party/zlib:zlib_config" ] -+ public_configs = [ "//third_party/zlib:system_zlib" ] - public_deps = [ - "//third_party/zlib", - ] --- -2.21.0 - diff --git a/chromium-77.0.3865.90-linked-hash-set.patch b/chromium-77.0.3865.90-linked-hash-set.patch deleted file mode 100644 index f921f1a..0000000 --- a/chromium-77.0.3865.90-linked-hash-set.patch +++ /dev/null @@ -1,130 +0,0 @@ -From 74138b9febd37eac0fc26b8efb110014a83a52c6 Mon Sep 17 00:00:00 2001 -From: Jeremy Roman -Date: Wed, 07 Aug 2019 13:26:48 +0000 -Subject: [PATCH] WTF: Make LinkedHashSet understand values for which memset initialization would be bad. - -Includes a unit test which fails before, and uses this to fix FontCacheKeyTraits. - -Bug: 980025 -Change-Id: If41f97444c7fd37b9b95d6dadaf3da5689079e9e -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1739948 -Reviewed-by: Kentaro Hara -Reviewed-by: Yutaka Hirano -Commit-Queue: Jeremy Roman -Cr-Commit-Position: refs/heads/master@{#684731} ---- - -diff --git a/third_party/blink/renderer/platform/fonts/font_cache_key.h b/third_party/blink/renderer/platform/fonts/font_cache_key.h -index 0efc8fb..90063cb 100644 ---- a/third_party/blink/renderer/platform/fonts/font_cache_key.h -+++ b/third_party/blink/renderer/platform/fonts/font_cache_key.h -@@ -133,6 +133,10 @@ - - struct FontCacheKeyTraits : WTF::SimpleClassHashTraits { - STATIC_ONLY(FontCacheKeyTraits); -+ -+ // std::string's empty state need not be zero in all implementations, -+ // and it is held within FontFaceCreationParams. -+ static const bool kEmptyValueIsZero = false; - }; - - } // namespace blink -diff --git a/third_party/blink/renderer/platform/wtf/linked_hash_set.h b/third_party/blink/renderer/platform/wtf/linked_hash_set.h -index b35b6e9..77e524c 100644 ---- a/third_party/blink/renderer/platform/wtf/linked_hash_set.h -+++ b/third_party/blink/renderer/platform/wtf/linked_hash_set.h -@@ -146,6 +146,11 @@ - LinkedHashSetNodeBase* next) - : LinkedHashSetNodeBase(prev, next), value_(value) {} - -+ LinkedHashSetNode(ValueArg&& value, -+ LinkedHashSetNodeBase* prev, -+ LinkedHashSetNodeBase* next) -+ : LinkedHashSetNodeBase(prev, next), value_(std::move(value)) {} -+ - LinkedHashSetNode(LinkedHashSetNode&& other) - : LinkedHashSetNodeBase(std::move(other)), - value_(std::move(other.value_)) {} -@@ -445,10 +450,13 @@ - - // The slot is empty when the next_ field is zero so it's safe to zero - // the backing. -- static const bool kEmptyValueIsZero = true; -+ static const bool kEmptyValueIsZero = ValueTraits::kEmptyValueIsZero; - - static const bool kHasIsEmptyValueFunction = true; - static bool IsEmptyValue(const Node& node) { return !node.next_; } -+ static Node EmptyValue() { -+ return Node(ValueTraits::EmptyValue(), nullptr, nullptr); -+ } - - static const int kDeletedValue = -1; - -diff --git a/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc b/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc -index 4c3f899..cd1be00 100644 ---- a/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc -+++ b/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc -@@ -487,6 +487,7 @@ - }; - - struct Complicated { -+ Complicated() : Complicated(0) {} - Complicated(int value) : simple_(value) { objects_constructed_++; } - - Complicated(const Complicated& other) : simple_(other.simple_) { -@@ -495,9 +496,6 @@ - - Simple simple_; - static int objects_constructed_; -- -- private: -- Complicated() = delete; - }; - - int Complicated::objects_constructed_ = 0; -@@ -731,4 +729,45 @@ - - } // anonymous namespace - -+// A unit type which objects to its state being initialized wrong. -+struct InvalidZeroValue { -+ InvalidZeroValue() = default; -+ InvalidZeroValue(WTF::HashTableDeletedValueType) : deleted_(true) {} -+ ~InvalidZeroValue() { CHECK(ok_); } -+ bool IsHashTableDeletedValue() const { return deleted_; } -+ -+ bool ok_ = true; -+ bool deleted_ = false; -+}; -+ -+template <> -+struct HashTraits : SimpleClassHashTraits { -+ static const bool kEmptyValueIsZero = false; -+}; -+ -+template <> -+struct DefaultHash { -+ struct Hash { -+ static unsigned GetHash(const InvalidZeroValue&) { return 0; } -+ static bool Equal(const InvalidZeroValue&, const InvalidZeroValue&) { -+ return true; -+ } -+ }; -+}; -+ -+template -+class ListOrLinkedHashSetInvalidZeroTest : public testing::Test {}; -+ -+using InvalidZeroValueSetTypes = -+ testing::Types, -+ ListHashSet, -+ LinkedHashSet>; -+TYPED_TEST_SUITE(ListOrLinkedHashSetInvalidZeroTest, InvalidZeroValueSetTypes); -+ -+TYPED_TEST(ListOrLinkedHashSetInvalidZeroTest, InvalidZeroValue) { -+ using Set = TypeParam; -+ Set set; -+ set.insert(InvalidZeroValue()); -+} -+ - } // namespace WTF From ba9d82dc689fcc2a3095349eafcfaaea5fb2dcac Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 30 Oct 2019 09:32:24 -0400 Subject: [PATCH 0613/1449] update el7-noexcept patch --- ...> chromium-78.0.3904.70-el7-noexcept.patch | 97 ++++++++----------- chromium.spec | 2 +- 2 files changed, 41 insertions(+), 58 deletions(-) rename chromium-77.0.3865.90-el7-noexcept.patch => chromium-78.0.3904.70-el7-noexcept.patch (52%) diff --git a/chromium-77.0.3865.90-el7-noexcept.patch b/chromium-78.0.3904.70-el7-noexcept.patch similarity index 52% rename from chromium-77.0.3865.90-el7-noexcept.patch rename to chromium-78.0.3904.70-el7-noexcept.patch index 1b7ac61..b4905be 100644 --- a/chromium-77.0.3865.90-el7-noexcept.patch +++ b/chromium-78.0.3904.70-el7-noexcept.patch @@ -1,6 +1,6 @@ -diff -up chromium-77.0.3865.90/chrome/common/media_router/media_sink.cc.el7-noexcept chromium-77.0.3865.90/chrome/common/media_router/media_sink.cc ---- chromium-77.0.3865.90/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-09-19 22:40:27.933863751 +0200 -+++ chromium-77.0.3865.90/chrome/common/media_router/media_sink.cc 2019-09-19 22:40:27.939863796 +0200 +diff -up chromium-78.0.3904.70/chrome/common/media_router/media_sink.cc.el7-noexcept chromium-78.0.3904.70/chrome/common/media_router/media_sink.cc +--- chromium-78.0.3904.70/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-10-21 15:06:26.000000000 -0400 ++++ chromium-78.0.3904.70/chrome/common/media_router/media_sink.cc 2019-10-30 09:26:51.339057055 -0400 @@ -19,12 +19,12 @@ MediaSink::MediaSink(const MediaSink::Id provider_id_(provider_id) {} @@ -16,9 +16,9 @@ diff -up chromium-77.0.3865.90/chrome/common/media_router/media_sink.cc.el7-noex bool MediaSink::IsMaybeCloudSink() const { switch (icon_type_) { -diff -up chromium-77.0.3865.90/components/history/core/browser/history_types.cc.el7-noexcept chromium-77.0.3865.90/components/history/core/browser/history_types.cc ---- chromium-77.0.3865.90/components/history/core/browser/history_types.cc.el7-noexcept 2019-09-19 22:39:59.299649596 +0200 -+++ chromium-77.0.3865.90/components/history/core/browser/history_types.cc 2019-09-19 22:39:59.268649364 +0200 +diff -up chromium-78.0.3904.70/components/history/core/browser/history_types.cc.el7-noexcept chromium-78.0.3904.70/components/history/core/browser/history_types.cc +--- chromium-78.0.3904.70/components/history/core/browser/history_types.cc.el7-noexcept 2019-10-21 15:06:29.000000000 -0400 ++++ chromium-78.0.3904.70/components/history/core/browser/history_types.cc 2019-10-30 09:26:51.358056614 -0400 @@ -42,7 +42,7 @@ QueryResults::QueryResults(QueryResults& Swap(&other); } @@ -37,9 +37,9 @@ diff -up chromium-77.0.3865.90/components/history/core/browser/history_types.cc. // MostVisitedURL -------------------------------------------------------------- -diff -up chromium-77.0.3865.90/components/history/core/browser/history_types.h.el7-noexcept chromium-77.0.3865.90/components/history/core/browser/history_types.h ---- chromium-77.0.3865.90/components/history/core/browser/history_types.h.el7-noexcept 2019-09-19 22:39:59.318649738 +0200 -+++ chromium-77.0.3865.90/components/history/core/browser/history_types.h 2019-09-19 22:39:59.248649215 +0200 +diff -up chromium-78.0.3904.70/components/history/core/browser/history_types.h.el7-noexcept chromium-78.0.3904.70/components/history/core/browser/history_types.h +--- chromium-78.0.3904.70/components/history/core/browser/history_types.h.el7-noexcept 2019-10-21 15:06:29.000000000 -0400 ++++ chromium-78.0.3904.70/components/history/core/browser/history_types.h 2019-10-30 09:26:51.623050465 -0400 @@ -143,7 +143,7 @@ class QueryResults { ~QueryResults(); @@ -58,9 +58,9 @@ diff -up chromium-77.0.3865.90/components/history/core/browser/history_types.h.e ~QueryURLResult(); // Indicates whether the call to HistoryBackend::QueryURL was successfull -diff -up chromium-77.0.3865.90/components/history/core/browser/url_row.cc.el7-noexcept chromium-77.0.3865.90/components/history/core/browser/url_row.cc ---- chromium-77.0.3865.90/components/history/core/browser/url_row.cc.el7-noexcept 2019-09-19 22:39:59.268649364 +0200 -+++ chromium-77.0.3865.90/components/history/core/browser/url_row.cc 2019-09-19 22:39:59.301649611 +0200 +diff -up chromium-78.0.3904.70/components/history/core/browser/url_row.cc.el7-noexcept chromium-78.0.3904.70/components/history/core/browser/url_row.cc +--- chromium-78.0.3904.70/components/history/core/browser/url_row.cc.el7-noexcept 2019-10-21 15:06:29.000000000 -0400 ++++ chromium-78.0.3904.70/components/history/core/browser/url_row.cc 2019-10-30 09:26:51.625050418 -0400 @@ -26,7 +26,7 @@ URLRow::~URLRow() { } @@ -70,9 +70,9 @@ diff -up chromium-77.0.3865.90/components/history/core/browser/url_row.cc.el7-no void URLRow::Swap(URLRow* other) { std::swap(id_, other->id_); -diff -up chromium-77.0.3865.90/components/omnibox/browser/suggestion_answer.cc.el7-noexcept chromium-77.0.3865.90/components/omnibox/browser/suggestion_answer.cc ---- chromium-77.0.3865.90/components/omnibox/browser/suggestion_answer.cc.el7-noexcept 2019-09-19 22:40:04.794690694 +0200 -+++ chromium-77.0.3865.90/components/omnibox/browser/suggestion_answer.cc 2019-09-19 22:40:04.756690409 +0200 +diff -up chromium-78.0.3904.70/components/omnibox/browser/suggestion_answer.cc.el7-noexcept chromium-78.0.3904.70/components/omnibox/browser/suggestion_answer.cc +--- chromium-78.0.3904.70/components/omnibox/browser/suggestion_answer.cc.el7-noexcept 2019-10-21 15:06:29.000000000 -0400 ++++ chromium-78.0.3904.70/components/omnibox/browser/suggestion_answer.cc 2019-10-30 09:26:51.627050372 -0400 @@ -60,7 +60,7 @@ SuggestionAnswer::TextField::TextField(T SuggestionAnswer::TextField& SuggestionAnswer::TextField::operator=( const TextField&) = default; @@ -82,9 +82,9 @@ diff -up chromium-77.0.3865.90/components/omnibox/browser/suggestion_answer.cc.e // static bool SuggestionAnswer::TextField::ParseTextField(const base::Value& field_json, -diff -up chromium-77.0.3865.90/components/policy/core/common/policy_map.cc.el7-noexcept chromium-77.0.3865.90/components/policy/core/common/policy_map.cc ---- chromium-77.0.3865.90/components/policy/core/common/policy_map.cc.el7-noexcept 2019-09-19 22:40:05.476695794 +0200 -+++ chromium-77.0.3865.90/components/policy/core/common/policy_map.cc 2019-09-19 22:40:05.409695293 +0200 +diff -up chromium-78.0.3904.70/components/policy/core/common/policy_map.cc.el7-noexcept chromium-78.0.3904.70/components/policy/core/common/policy_map.cc +--- chromium-78.0.3904.70/components/policy/core/common/policy_map.cc.el7-noexcept 2019-10-21 15:06:29.000000000 -0400 ++++ chromium-78.0.3904.70/components/policy/core/common/policy_map.cc 2019-10-30 09:26:51.628050349 -0400 @@ -52,7 +52,7 @@ PolicyMap::Entry::Entry( PolicyMap::Entry::~Entry() = default; @@ -94,10 +94,10 @@ diff -up chromium-77.0.3865.90/components/policy/core/common/policy_map.cc.el7-n PolicyMap::Entry PolicyMap::Entry::DeepCopy() const { Entry copy; -diff -up chromium-77.0.3865.90/components/search_provider_logos/logo_common.cc.el7-noexcept chromium-77.0.3865.90/components/search_provider_logos/logo_common.cc ---- chromium-77.0.3865.90/components/search_provider_logos/logo_common.cc.el7-noexcept 2019-09-20 08:08:39.129845878 +0200 -+++ chromium-77.0.3865.90/components/search_provider_logos/logo_common.cc 2019-09-20 08:12:58.283828785 +0200 -@@ -14,14 +14,14 @@ LogoMetadata::LogoMetadata() = default; +diff -up chromium-78.0.3904.70/components/search_provider_logos/logo_common.cc.el7-noexcept chromium-78.0.3904.70/components/search_provider_logos/logo_common.cc +--- chromium-78.0.3904.70/components/search_provider_logos/logo_common.cc.el7-noexcept 2019-10-30 09:27:30.773143557 -0400 ++++ chromium-78.0.3904.70/components/search_provider_logos/logo_common.cc 2019-10-30 09:28:32.026733935 -0400 +@@ -14,7 +14,7 @@ LogoMetadata::LogoMetadata() = default; LogoMetadata::LogoMetadata(const LogoMetadata&) = default; LogoMetadata::LogoMetadata(LogoMetadata&&) noexcept = default; LogoMetadata& LogoMetadata::operator=(const LogoMetadata&) = default; @@ -106,27 +106,10 @@ diff -up chromium-77.0.3865.90/components/search_provider_logos/logo_common.cc.e LogoMetadata::~LogoMetadata() = default; EncodedLogo::EncodedLogo() = default; - EncodedLogo::EncodedLogo(const EncodedLogo&) = default; - EncodedLogo::EncodedLogo(EncodedLogo&&) noexcept = default; - EncodedLogo& EncodedLogo::operator=(const EncodedLogo&) = default; --EncodedLogo& EncodedLogo::operator=(EncodedLogo&&) noexcept = default; -+EncodedLogo& EncodedLogo::operator=(EncodedLogo&&) = default; - EncodedLogo::~EncodedLogo() = default; - - Logo::Logo() = default; -@@ -29,7 +29,7 @@ Logo::~Logo() = default; - - LogoCallbacks::LogoCallbacks() = default; - LogoCallbacks::LogoCallbacks(LogoCallbacks&&) noexcept = default; --LogoCallbacks& LogoCallbacks::operator=(LogoCallbacks&&) noexcept = default; -+LogoCallbacks& LogoCallbacks::operator=(LogoCallbacks&&) = default; - LogoCallbacks::~LogoCallbacks() = default; - - } // namespace search_provider_logos -diff -up chromium-77.0.3865.90/components/signin/public/identity_manager/account_info.cc.el7-noexcept chromium-77.0.3865.90/components/signin/public/identity_manager/account_info.cc ---- chromium-77.0.3865.90/components/signin/public/identity_manager/account_info.cc.el7-noexcept 2019-09-19 22:39:59.938654375 +0200 -+++ chromium-77.0.3865.90/components/signin/public/identity_manager/account_info.cc 2019-09-19 22:39:59.946654435 +0200 -@@ -52,7 +52,7 @@ CoreAccountInfo::CoreAccountInfo(CoreAcc +diff -up chromium-78.0.3904.70/components/signin/public/identity_manager/account_info.cc.el7-noexcept chromium-78.0.3904.70/components/signin/public/identity_manager/account_info.cc +--- chromium-78.0.3904.70/components/signin/public/identity_manager/account_info.cc.el7-noexcept 2019-10-21 15:06:30.000000000 -0400 ++++ chromium-78.0.3904.70/components/signin/public/identity_manager/account_info.cc 2019-10-30 09:26:51.629050326 -0400 +@@ -57,7 +57,7 @@ CoreAccountInfo::CoreAccountInfo(CoreAcc CoreAccountInfo& CoreAccountInfo::operator=(const CoreAccountInfo& other) = default; @@ -135,7 +118,7 @@ diff -up chromium-77.0.3865.90/components/signin/public/identity_manager/account default; bool CoreAccountInfo::IsEmpty() const { -@@ -69,7 +69,7 @@ AccountInfo::AccountInfo(AccountInfo&& o +@@ -74,7 +74,7 @@ AccountInfo::AccountInfo(AccountInfo&& o AccountInfo& AccountInfo::operator=(const AccountInfo& other) = default; @@ -144,9 +127,9 @@ diff -up chromium-77.0.3865.90/components/signin/public/identity_manager/account bool AccountInfo::IsEmpty() const { return CoreAccountInfo::IsEmpty() && hosted_domain.empty() && -diff -up chromium-77.0.3865.90/google_apis/gaia/core_account_id.cc.el7-noexcept chromium-77.0.3865.90/google_apis/gaia/core_account_id.cc ---- chromium-77.0.3865.90/google_apis/gaia/core_account_id.cc.el7-noexcept 2019-09-19 22:40:51.185037647 +0200 -+++ chromium-77.0.3865.90/google_apis/gaia/core_account_id.cc 2019-09-19 22:40:51.202037775 +0200 +diff -up chromium-78.0.3904.70/google_apis/gaia/core_account_id.cc.el7-noexcept chromium-78.0.3904.70/google_apis/gaia/core_account_id.cc +--- chromium-78.0.3904.70/google_apis/gaia/core_account_id.cc.el7-noexcept 2019-10-21 15:06:34.000000000 -0400 ++++ chromium-78.0.3904.70/google_apis/gaia/core_account_id.cc 2019-10-30 09:26:51.630050302 -0400 @@ -14,7 +14,7 @@ CoreAccountId::~CoreAccountId() = defaul CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; @@ -156,9 +139,9 @@ diff -up chromium-77.0.3865.90/google_apis/gaia/core_account_id.cc.el7-noexcept CoreAccountId::CoreAccountId(const char* id) : id(id) {} -diff -up chromium-77.0.3865.90/google_apis/gaia/core_account_id.h.el7-noexcept chromium-77.0.3865.90/google_apis/gaia/core_account_id.h ---- chromium-77.0.3865.90/google_apis/gaia/core_account_id.h.el7-noexcept 2019-09-19 22:40:51.193037707 +0200 -+++ chromium-77.0.3865.90/google_apis/gaia/core_account_id.h 2019-09-19 22:40:51.197037737 +0200 +diff -up chromium-78.0.3904.70/google_apis/gaia/core_account_id.h.el7-noexcept chromium-78.0.3904.70/google_apis/gaia/core_account_id.h +--- chromium-78.0.3904.70/google_apis/gaia/core_account_id.h.el7-noexcept 2019-10-21 15:06:34.000000000 -0400 ++++ chromium-78.0.3904.70/google_apis/gaia/core_account_id.h 2019-10-30 09:26:51.631050279 -0400 @@ -20,7 +20,7 @@ struct CoreAccountId { ~CoreAccountId(); @@ -168,10 +151,10 @@ diff -up chromium-77.0.3865.90/google_apis/gaia/core_account_id.h.el7-noexcept c // Those implicit constructor and conversion operator allow to // progressively migrate the code to use this struct. Removing -diff -up chromium-77.0.3865.90/gpu/config/gpu_info.cc.el7-noexcept chromium-77.0.3865.90/gpu/config/gpu_info.cc ---- chromium-77.0.3865.90/gpu/config/gpu_info.cc.el7-noexcept 2019-09-19 22:40:26.755854941 +0200 -+++ chromium-77.0.3865.90/gpu/config/gpu_info.cc 2019-09-19 22:40:26.755854941 +0200 -@@ -170,7 +170,7 @@ GPUInfo::GPUDevice& GPUInfo::GPUDevice:: +diff -up chromium-78.0.3904.70/gpu/config/gpu_info.cc.el7-noexcept chromium-78.0.3904.70/gpu/config/gpu_info.cc +--- chromium-78.0.3904.70/gpu/config/gpu_info.cc.el7-noexcept 2019-10-21 15:06:35.000000000 -0400 ++++ chromium-78.0.3904.70/gpu/config/gpu_info.cc 2019-10-30 09:26:51.633050233 -0400 +@@ -169,7 +169,7 @@ GPUInfo::GPUDevice& GPUInfo::GPUDevice:: const GPUInfo::GPUDevice& other) = default; GPUInfo::GPUDevice& GPUInfo::GPUDevice::operator=( @@ -180,9 +163,9 @@ diff -up chromium-77.0.3865.90/gpu/config/gpu_info.cc.el7-noexcept chromium-77.0 GPUInfo::GPUInfo() : optimus(false), -diff -up chromium-77.0.3865.90/third_party/openscreen/src/osp/public/service_info.h.el7-noexcept chromium-77.0.3865.90/third_party/openscreen/src/osp/public/service_info.h ---- chromium-77.0.3865.90/third_party/openscreen/src/osp/public/service_info.h.el7-noexcept 2019-09-19 22:43:20.726156068 +0200 -+++ chromium-77.0.3865.90/third_party/openscreen/src/osp/public/service_info.h 2019-09-19 22:43:20.728156083 +0200 +diff -up chromium-78.0.3904.70/third_party/openscreen/src/osp/public/service_info.h.el7-noexcept chromium-78.0.3904.70/third_party/openscreen/src/osp/public/service_info.h +--- chromium-78.0.3904.70/third_party/openscreen/src/osp/public/service_info.h.el7-noexcept 2019-10-21 15:09:14.000000000 -0400 ++++ chromium-78.0.3904.70/third_party/openscreen/src/osp/public/service_info.h 2019-10-30 09:26:51.634050210 -0400 @@ -21,7 +21,7 @@ struct ServiceInfo { ServiceInfo(ServiceInfo&&) MAYBE_NOEXCEPT = default; ServiceInfo(const ServiceInfo&) MAYBE_NOEXCEPT = default; diff --git a/chromium.spec b/chromium.spec index 6c43be5..e619049 100644 --- a/chromium.spec +++ b/chromium.spec @@ -243,7 +243,7 @@ Patch69: chromium-77-clang.patch # Use lstdc++ on EPEL7 only Patch101: chromium-75.0.3770.100-epel7-stdc++.patch # el7 only patch -Patch102: chromium-77.0.3865.75-el7-noexcept.patch +Patch102: chromium-78.0.3904.70-el7-noexcept.patch # Enable VAAPI support on Linux # NOTE: This patch will never land upstream From 4383eaa455ead0f1904f1955411c7d9ec7795418 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 30 Oct 2019 13:10:11 -0400 Subject: [PATCH 0614/1449] more noexcept changes --- chromium-78.0.3904.70-el7-noexcept.patch | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/chromium-78.0.3904.70-el7-noexcept.patch b/chromium-78.0.3904.70-el7-noexcept.patch index b4905be..a28b434 100644 --- a/chromium-78.0.3904.70-el7-noexcept.patch +++ b/chromium-78.0.3904.70-el7-noexcept.patch @@ -96,8 +96,8 @@ diff -up chromium-78.0.3904.70/components/policy/core/common/policy_map.cc.el7-n Entry copy; diff -up chromium-78.0.3904.70/components/search_provider_logos/logo_common.cc.el7-noexcept chromium-78.0.3904.70/components/search_provider_logos/logo_common.cc --- chromium-78.0.3904.70/components/search_provider_logos/logo_common.cc.el7-noexcept 2019-10-30 09:27:30.773143557 -0400 -+++ chromium-78.0.3904.70/components/search_provider_logos/logo_common.cc 2019-10-30 09:28:32.026733935 -0400 -@@ -14,7 +14,7 @@ LogoMetadata::LogoMetadata() = default; ++++ chromium-78.0.3904.70/components/search_provider_logos/logo_common.cc 2019-10-30 13:09:43.872691009 -0400 +@@ -14,14 +14,14 @@ LogoMetadata::LogoMetadata() = default; LogoMetadata::LogoMetadata(const LogoMetadata&) = default; LogoMetadata::LogoMetadata(LogoMetadata&&) noexcept = default; LogoMetadata& LogoMetadata::operator=(const LogoMetadata&) = default; @@ -106,6 +106,23 @@ diff -up chromium-78.0.3904.70/components/search_provider_logos/logo_common.cc.e LogoMetadata::~LogoMetadata() = default; EncodedLogo::EncodedLogo() = default; + EncodedLogo::EncodedLogo(const EncodedLogo&) = default; + EncodedLogo::EncodedLogo(EncodedLogo&&) noexcept = default; + EncodedLogo& EncodedLogo::operator=(const EncodedLogo&) = default; +-EncodedLogo& EncodedLogo::operator=(EncodedLogo&&) noexcept = default; ++EncodedLogo& EncodedLogo::operator=(EncodedLogo&&) = default; + EncodedLogo::~EncodedLogo() = default; + + Logo::Logo() = default; +@@ -29,7 +29,7 @@ Logo::~Logo() = default; + + LogoCallbacks::LogoCallbacks() = default; + LogoCallbacks::LogoCallbacks(LogoCallbacks&&) noexcept = default; +-LogoCallbacks& LogoCallbacks::operator=(LogoCallbacks&&) noexcept = default; ++LogoCallbacks& LogoCallbacks::operator=(LogoCallbacks&&) = default; + LogoCallbacks::~LogoCallbacks() = default; + + } // namespace search_provider_logos diff -up chromium-78.0.3904.70/components/signin/public/identity_manager/account_info.cc.el7-noexcept chromium-78.0.3904.70/components/signin/public/identity_manager/account_info.cc --- chromium-78.0.3904.70/components/signin/public/identity_manager/account_info.cc.el7-noexcept 2019-10-21 15:06:30.000000000 -0400 +++ chromium-78.0.3904.70/components/signin/public/identity_manager/account_info.cc 2019-10-30 09:26:51.629050326 -0400 From b8e00f2f8a8925bafb45666ff8d4f34fd338baaa Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 1 Nov 2019 08:34:49 -0400 Subject: [PATCH 0615/1449] el7-noexcept patch --- chromium-78.0.3904.70-el7-noexcept.patch | 194 +++++++++++++++++++++++ 1 file changed, 194 insertions(+) create mode 100644 chromium-78.0.3904.70-el7-noexcept.patch diff --git a/chromium-78.0.3904.70-el7-noexcept.patch b/chromium-78.0.3904.70-el7-noexcept.patch new file mode 100644 index 0000000..a28b434 --- /dev/null +++ b/chromium-78.0.3904.70-el7-noexcept.patch @@ -0,0 +1,194 @@ +diff -up chromium-78.0.3904.70/chrome/common/media_router/media_sink.cc.el7-noexcept chromium-78.0.3904.70/chrome/common/media_router/media_sink.cc +--- chromium-78.0.3904.70/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-10-21 15:06:26.000000000 -0400 ++++ chromium-78.0.3904.70/chrome/common/media_router/media_sink.cc 2019-10-30 09:26:51.339057055 -0400 +@@ -19,12 +19,12 @@ MediaSink::MediaSink(const MediaSink::Id + provider_id_(provider_id) {} + + MediaSink::MediaSink(const MediaSink& other) = default; +-MediaSink::MediaSink(MediaSink&& other) noexcept = default; ++MediaSink::MediaSink(MediaSink&& other) = default; + MediaSink::MediaSink() = default; + MediaSink::~MediaSink() = default; + + MediaSink& MediaSink::operator=(const MediaSink& other) = default; +-MediaSink& MediaSink::operator=(MediaSink&& other) noexcept = default; ++MediaSink& MediaSink::operator=(MediaSink&& other) = default; + + bool MediaSink::IsMaybeCloudSink() const { + switch (icon_type_) { +diff -up chromium-78.0.3904.70/components/history/core/browser/history_types.cc.el7-noexcept chromium-78.0.3904.70/components/history/core/browser/history_types.cc +--- chromium-78.0.3904.70/components/history/core/browser/history_types.cc.el7-noexcept 2019-10-21 15:06:29.000000000 -0400 ++++ chromium-78.0.3904.70/components/history/core/browser/history_types.cc 2019-10-30 09:26:51.358056614 -0400 +@@ -42,7 +42,7 @@ QueryResults::QueryResults(QueryResults& + Swap(&other); + } + +-QueryResults& QueryResults::operator=(QueryResults&& other) noexcept { ++QueryResults& QueryResults::operator=(QueryResults&& other) { + Swap(&other); + return *this; + } +@@ -186,7 +186,7 @@ QueryURLResult::QueryURLResult(QueryURLR + + QueryURLResult& QueryURLResult::operator=(const QueryURLResult&) = default; + +-QueryURLResult& QueryURLResult::operator=(QueryURLResult&&) noexcept = default; ++QueryURLResult& QueryURLResult::operator=(QueryURLResult&&) = default; + + // MostVisitedURL -------------------------------------------------------------- + +diff -up chromium-78.0.3904.70/components/history/core/browser/history_types.h.el7-noexcept chromium-78.0.3904.70/components/history/core/browser/history_types.h +--- chromium-78.0.3904.70/components/history/core/browser/history_types.h.el7-noexcept 2019-10-21 15:06:29.000000000 -0400 ++++ chromium-78.0.3904.70/components/history/core/browser/history_types.h 2019-10-30 09:26:51.623050465 -0400 +@@ -143,7 +143,7 @@ class QueryResults { + ~QueryResults(); + + QueryResults(QueryResults&& other) noexcept; +- QueryResults& operator=(QueryResults&& other) noexcept; ++ QueryResults& operator=(QueryResults&& other); + + void set_reached_beginning(bool reached) { reached_beginning_ = reached; } + bool reached_beginning() { return reached_beginning_; } +@@ -278,7 +278,7 @@ struct QueryURLResult { + QueryURLResult(const QueryURLResult&); + QueryURLResult(QueryURLResult&&) noexcept; + QueryURLResult& operator=(const QueryURLResult&); +- QueryURLResult& operator=(QueryURLResult&&) noexcept; ++ QueryURLResult& operator=(QueryURLResult&&); + ~QueryURLResult(); + + // Indicates whether the call to HistoryBackend::QueryURL was successfull +diff -up chromium-78.0.3904.70/components/history/core/browser/url_row.cc.el7-noexcept chromium-78.0.3904.70/components/history/core/browser/url_row.cc +--- chromium-78.0.3904.70/components/history/core/browser/url_row.cc.el7-noexcept 2019-10-21 15:06:29.000000000 -0400 ++++ chromium-78.0.3904.70/components/history/core/browser/url_row.cc 2019-10-30 09:26:51.625050418 -0400 +@@ -26,7 +26,7 @@ URLRow::~URLRow() { + } + + URLRow& URLRow::operator=(const URLRow& other) = default; +-URLRow& URLRow::operator=(URLRow&& other) noexcept = default; ++URLRow& URLRow::operator=(URLRow&& other) = default; + + void URLRow::Swap(URLRow* other) { + std::swap(id_, other->id_); +diff -up chromium-78.0.3904.70/components/omnibox/browser/suggestion_answer.cc.el7-noexcept chromium-78.0.3904.70/components/omnibox/browser/suggestion_answer.cc +--- chromium-78.0.3904.70/components/omnibox/browser/suggestion_answer.cc.el7-noexcept 2019-10-21 15:06:29.000000000 -0400 ++++ chromium-78.0.3904.70/components/omnibox/browser/suggestion_answer.cc 2019-10-30 09:26:51.627050372 -0400 +@@ -60,7 +60,7 @@ SuggestionAnswer::TextField::TextField(T + SuggestionAnswer::TextField& SuggestionAnswer::TextField::operator=( + const TextField&) = default; + SuggestionAnswer::TextField& SuggestionAnswer::TextField::operator=( +- TextField&&) noexcept = default; ++ TextField&&) = default; + + // static + bool SuggestionAnswer::TextField::ParseTextField(const base::Value& field_json, +diff -up chromium-78.0.3904.70/components/policy/core/common/policy_map.cc.el7-noexcept chromium-78.0.3904.70/components/policy/core/common/policy_map.cc +--- chromium-78.0.3904.70/components/policy/core/common/policy_map.cc.el7-noexcept 2019-10-21 15:06:29.000000000 -0400 ++++ chromium-78.0.3904.70/components/policy/core/common/policy_map.cc 2019-10-30 09:26:51.628050349 -0400 +@@ -52,7 +52,7 @@ PolicyMap::Entry::Entry( + PolicyMap::Entry::~Entry() = default; + + PolicyMap::Entry::Entry(Entry&&) noexcept = default; +-PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) noexcept = default; ++PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) = default; + + PolicyMap::Entry PolicyMap::Entry::DeepCopy() const { + Entry copy; +diff -up chromium-78.0.3904.70/components/search_provider_logos/logo_common.cc.el7-noexcept chromium-78.0.3904.70/components/search_provider_logos/logo_common.cc +--- chromium-78.0.3904.70/components/search_provider_logos/logo_common.cc.el7-noexcept 2019-10-30 09:27:30.773143557 -0400 ++++ chromium-78.0.3904.70/components/search_provider_logos/logo_common.cc 2019-10-30 13:09:43.872691009 -0400 +@@ -14,14 +14,14 @@ LogoMetadata::LogoMetadata() = default; + LogoMetadata::LogoMetadata(const LogoMetadata&) = default; + LogoMetadata::LogoMetadata(LogoMetadata&&) noexcept = default; + LogoMetadata& LogoMetadata::operator=(const LogoMetadata&) = default; +-LogoMetadata& LogoMetadata::operator=(LogoMetadata&&) noexcept = default; ++LogoMetadata& LogoMetadata::operator=(LogoMetadata&&) = default; + LogoMetadata::~LogoMetadata() = default; + + EncodedLogo::EncodedLogo() = default; + EncodedLogo::EncodedLogo(const EncodedLogo&) = default; + EncodedLogo::EncodedLogo(EncodedLogo&&) noexcept = default; + EncodedLogo& EncodedLogo::operator=(const EncodedLogo&) = default; +-EncodedLogo& EncodedLogo::operator=(EncodedLogo&&) noexcept = default; ++EncodedLogo& EncodedLogo::operator=(EncodedLogo&&) = default; + EncodedLogo::~EncodedLogo() = default; + + Logo::Logo() = default; +@@ -29,7 +29,7 @@ Logo::~Logo() = default; + + LogoCallbacks::LogoCallbacks() = default; + LogoCallbacks::LogoCallbacks(LogoCallbacks&&) noexcept = default; +-LogoCallbacks& LogoCallbacks::operator=(LogoCallbacks&&) noexcept = default; ++LogoCallbacks& LogoCallbacks::operator=(LogoCallbacks&&) = default; + LogoCallbacks::~LogoCallbacks() = default; + + } // namespace search_provider_logos +diff -up chromium-78.0.3904.70/components/signin/public/identity_manager/account_info.cc.el7-noexcept chromium-78.0.3904.70/components/signin/public/identity_manager/account_info.cc +--- chromium-78.0.3904.70/components/signin/public/identity_manager/account_info.cc.el7-noexcept 2019-10-21 15:06:30.000000000 -0400 ++++ chromium-78.0.3904.70/components/signin/public/identity_manager/account_info.cc 2019-10-30 09:26:51.629050326 -0400 +@@ -57,7 +57,7 @@ CoreAccountInfo::CoreAccountInfo(CoreAcc + CoreAccountInfo& CoreAccountInfo::operator=(const CoreAccountInfo& other) = + default; + +-CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) noexcept = ++CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) = + default; + + bool CoreAccountInfo::IsEmpty() const { +@@ -74,7 +74,7 @@ AccountInfo::AccountInfo(AccountInfo&& o + + AccountInfo& AccountInfo::operator=(const AccountInfo& other) = default; + +-AccountInfo& AccountInfo::operator=(AccountInfo&& other) noexcept = default; ++AccountInfo& AccountInfo::operator=(AccountInfo&& other) = default; + + bool AccountInfo::IsEmpty() const { + return CoreAccountInfo::IsEmpty() && hosted_domain.empty() && +diff -up chromium-78.0.3904.70/google_apis/gaia/core_account_id.cc.el7-noexcept chromium-78.0.3904.70/google_apis/gaia/core_account_id.cc +--- chromium-78.0.3904.70/google_apis/gaia/core_account_id.cc.el7-noexcept 2019-10-21 15:06:34.000000000 -0400 ++++ chromium-78.0.3904.70/google_apis/gaia/core_account_id.cc 2019-10-30 09:26:51.630050302 -0400 +@@ -14,7 +14,7 @@ CoreAccountId::~CoreAccountId() = defaul + + CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; + +-CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) noexcept = default; ++CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) = default; + + CoreAccountId::CoreAccountId(const char* id) : id(id) {} + +diff -up chromium-78.0.3904.70/google_apis/gaia/core_account_id.h.el7-noexcept chromium-78.0.3904.70/google_apis/gaia/core_account_id.h +--- chromium-78.0.3904.70/google_apis/gaia/core_account_id.h.el7-noexcept 2019-10-21 15:06:34.000000000 -0400 ++++ chromium-78.0.3904.70/google_apis/gaia/core_account_id.h 2019-10-30 09:26:51.631050279 -0400 +@@ -20,7 +20,7 @@ struct CoreAccountId { + ~CoreAccountId(); + + CoreAccountId& operator=(const CoreAccountId&); +- CoreAccountId& operator=(CoreAccountId&&) noexcept; ++ CoreAccountId& operator=(CoreAccountId&&); + + // Those implicit constructor and conversion operator allow to + // progressively migrate the code to use this struct. Removing +diff -up chromium-78.0.3904.70/gpu/config/gpu_info.cc.el7-noexcept chromium-78.0.3904.70/gpu/config/gpu_info.cc +--- chromium-78.0.3904.70/gpu/config/gpu_info.cc.el7-noexcept 2019-10-21 15:06:35.000000000 -0400 ++++ chromium-78.0.3904.70/gpu/config/gpu_info.cc 2019-10-30 09:26:51.633050233 -0400 +@@ -169,7 +169,7 @@ GPUInfo::GPUDevice& GPUInfo::GPUDevice:: + const GPUInfo::GPUDevice& other) = default; + + GPUInfo::GPUDevice& GPUInfo::GPUDevice::operator=( +- GPUInfo::GPUDevice&& other) noexcept = default; ++ GPUInfo::GPUDevice&& other) = default; + + GPUInfo::GPUInfo() + : optimus(false), +diff -up chromium-78.0.3904.70/third_party/openscreen/src/osp/public/service_info.h.el7-noexcept chromium-78.0.3904.70/third_party/openscreen/src/osp/public/service_info.h +--- chromium-78.0.3904.70/third_party/openscreen/src/osp/public/service_info.h.el7-noexcept 2019-10-21 15:09:14.000000000 -0400 ++++ chromium-78.0.3904.70/third_party/openscreen/src/osp/public/service_info.h 2019-10-30 09:26:51.634050210 -0400 +@@ -21,7 +21,7 @@ struct ServiceInfo { + ServiceInfo(ServiceInfo&&) MAYBE_NOEXCEPT = default; + ServiceInfo(const ServiceInfo&) MAYBE_NOEXCEPT = default; + +- ServiceInfo& operator=(ServiceInfo&&) MAYBE_NOEXCEPT = default; ++ ServiceInfo& operator=(ServiceInfo&&) = default; + ServiceInfo& operator=(const ServiceInfo&) MAYBE_NOEXCEPT = default; + + bool operator==(const ServiceInfo& other) const; From 06c6ac201bcbbeee18fccbca1a01a5edcb3e10f1 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 1 Nov 2019 08:35:42 -0400 Subject: [PATCH 0616/1449] el7 fixes --- chromium-77.0.3865.75-el7-noexcept.patch | 165 ----------------------- chromium.spec | 4 +- 2 files changed, 2 insertions(+), 167 deletions(-) delete mode 100644 chromium-77.0.3865.75-el7-noexcept.patch diff --git a/chromium-77.0.3865.75-el7-noexcept.patch b/chromium-77.0.3865.75-el7-noexcept.patch deleted file mode 100644 index 366c139..0000000 --- a/chromium-77.0.3865.75-el7-noexcept.patch +++ /dev/null @@ -1,165 +0,0 @@ -diff -up chromium-77.0.3865.75/chrome/common/media_router/media_sink.cc.el7-noexcept chromium-77.0.3865.75/chrome/common/media_router/media_sink.cc ---- chromium-77.0.3865.75/chrome/common/media_router/media_sink.cc.el7-noexcept 2019-09-17 18:42:37.137393137 +0200 -+++ chromium-77.0.3865.75/chrome/common/media_router/media_sink.cc 2019-09-17 18:42:37.145393201 +0200 -@@ -19,12 +19,12 @@ MediaSink::MediaSink(const MediaSink::Id - provider_id_(provider_id) {} - - MediaSink::MediaSink(const MediaSink& other) = default; --MediaSink::MediaSink(MediaSink&& other) noexcept = default; -+MediaSink::MediaSink(MediaSink&& other) = default; - MediaSink::MediaSink() = default; - MediaSink::~MediaSink() = default; - - MediaSink& MediaSink::operator=(const MediaSink& other) = default; --MediaSink& MediaSink::operator=(MediaSink&& other) noexcept = default; -+MediaSink& MediaSink::operator=(MediaSink&& other) = default; - - bool MediaSink::IsMaybeCloudSink() const { - switch (icon_type_) { -diff -up chromium-77.0.3865.75/components/history/core/browser/history_types.cc.el7-noexcept chromium-77.0.3865.75/components/history/core/browser/history_types.cc ---- chromium-77.0.3865.75/components/history/core/browser/history_types.cc.el7-noexcept 2019-09-17 18:42:09.417172829 +0200 -+++ chromium-77.0.3865.75/components/history/core/browser/history_types.cc 2019-09-17 18:42:09.385172574 +0200 -@@ -42,7 +42,7 @@ QueryResults::QueryResults(QueryResults& - Swap(&other); - } - --QueryResults& QueryResults::operator=(QueryResults&& other) noexcept { -+QueryResults& QueryResults::operator=(QueryResults&& other) { - Swap(&other); - return *this; - } -@@ -186,7 +186,7 @@ QueryURLResult::QueryURLResult(QueryURLR - - QueryURLResult& QueryURLResult::operator=(const QueryURLResult&) = default; - --QueryURLResult& QueryURLResult::operator=(QueryURLResult&&) noexcept = default; -+QueryURLResult& QueryURLResult::operator=(QueryURLResult&&) = default; - - // MostVisitedURL -------------------------------------------------------------- - -diff -up chromium-77.0.3865.75/components/history/core/browser/history_types.h.el7-noexcept chromium-77.0.3865.75/components/history/core/browser/history_types.h ---- chromium-77.0.3865.75/components/history/core/browser/history_types.h.el7-noexcept 2019-09-17 18:42:09.437172988 +0200 -+++ chromium-77.0.3865.75/components/history/core/browser/history_types.h 2019-09-17 18:42:09.365172415 +0200 -@@ -143,7 +143,7 @@ class QueryResults { - ~QueryResults(); - - QueryResults(QueryResults&& other) noexcept; -- QueryResults& operator=(QueryResults&& other) noexcept; -+ QueryResults& operator=(QueryResults&& other); - - void set_reached_beginning(bool reached) { reached_beginning_ = reached; } - bool reached_beginning() { return reached_beginning_; } -@@ -278,7 +278,7 @@ struct QueryURLResult { - QueryURLResult(const QueryURLResult&); - QueryURLResult(QueryURLResult&&) noexcept; - QueryURLResult& operator=(const QueryURLResult&); -- QueryURLResult& operator=(QueryURLResult&&) noexcept; -+ QueryURLResult& operator=(QueryURLResult&&); - ~QueryURLResult(); - - // Indicates whether the call to HistoryBackend::QueryURL was successfull -diff -up chromium-77.0.3865.75/components/history/core/browser/url_row.cc.el7-noexcept chromium-77.0.3865.75/components/history/core/browser/url_row.cc ---- chromium-77.0.3865.75/components/history/core/browser/url_row.cc.el7-noexcept 2019-09-18 08:03:25.458138423 +0200 -+++ chromium-77.0.3865.75/components/history/core/browser/url_row.cc 2019-09-18 08:03:34.363234155 +0200 -@@ -26,7 +26,7 @@ URLRow::~URLRow() { - } - - URLRow& URLRow::operator=(const URLRow& other) = default; --URLRow& URLRow::operator=(URLRow&& other) noexcept = default; -+URLRow& URLRow::operator=(URLRow&& other) = default; - - void URLRow::Swap(URLRow* other) { - std::swap(id_, other->id_); -diff -up chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc.el7-noexcept chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc ---- chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc.el7-noexcept 2019-09-17 22:00:18.670108528 +0200 -+++ chromium-77.0.3865.75/components/omnibox/browser/suggestion_answer.cc 2019-09-17 22:00:32.518272148 +0200 -@@ -60,7 +60,7 @@ SuggestionAnswer::TextField::TextField(T - SuggestionAnswer::TextField& SuggestionAnswer::TextField::operator=( - const TextField&) = default; - SuggestionAnswer::TextField& SuggestionAnswer::TextField::operator=( -- TextField&&) noexcept = default; -+ TextField&&) = default; - - // static - bool SuggestionAnswer::TextField::ParseTextField(const base::Value& field_json, -diff -up chromium-77.0.3865.75/components/policy/core/common/policy_map.cc.el7-noexcept chromium-77.0.3865.75/components/policy/core/common/policy_map.cc ---- chromium-77.0.3865.75/components/policy/core/common/policy_map.cc.el7-noexcept 2019-09-17 18:42:14.622214197 +0200 -+++ chromium-77.0.3865.75/components/policy/core/common/policy_map.cc 2019-09-17 18:42:14.556213673 +0200 -@@ -52,7 +52,7 @@ PolicyMap::Entry::Entry( - PolicyMap::Entry::~Entry() = default; - - PolicyMap::Entry::Entry(Entry&&) noexcept = default; --PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) noexcept = default; -+PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) = default; - - PolicyMap::Entry PolicyMap::Entry::DeepCopy() const { - Entry copy; -diff -up chromium-77.0.3865.75/components/signin/public/identity_manager/account_info.cc.el7-noexcept chromium-77.0.3865.75/components/signin/public/identity_manager/account_info.cc ---- chromium-77.0.3865.75/components/signin/public/identity_manager/account_info.cc.el7-noexcept 2019-09-17 21:06:27.037828110 +0200 -+++ chromium-77.0.3865.75/components/signin/public/identity_manager/account_info.cc 2019-09-17 21:07:20.726472932 +0200 -@@ -52,7 +52,7 @@ CoreAccountInfo::CoreAccountInfo(CoreAcc - CoreAccountInfo& CoreAccountInfo::operator=(const CoreAccountInfo& other) = - default; - --CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) noexcept = -+CoreAccountInfo& CoreAccountInfo::operator=(CoreAccountInfo&& other) = - default; - - bool CoreAccountInfo::IsEmpty() const { -@@ -69,7 +69,7 @@ AccountInfo::AccountInfo(AccountInfo&& o - - AccountInfo& AccountInfo::operator=(const AccountInfo& other) = default; - --AccountInfo& AccountInfo::operator=(AccountInfo&& other) noexcept = default; -+AccountInfo& AccountInfo::operator=(AccountInfo&& other) = default; - - bool AccountInfo::IsEmpty() const { - return CoreAccountInfo::IsEmpty() && hosted_domain.empty() && -diff -up chromium-77.0.3865.75/google_apis/gaia/core_account_id.cc.el7-noexcept chromium-77.0.3865.75/google_apis/gaia/core_account_id.cc ---- chromium-77.0.3865.75/google_apis/gaia/core_account_id.cc.el7-noexcept 2019-09-17 18:43:12.969677930 +0200 -+++ chromium-77.0.3865.75/google_apis/gaia/core_account_id.cc 2019-09-17 18:43:12.989678089 +0200 -@@ -14,7 +14,7 @@ CoreAccountId::~CoreAccountId() = defaul - - CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default; - --CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) noexcept = default; -+CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) = default; - - CoreAccountId::CoreAccountId(const char* id) : id(id) {} - -diff -up chromium-77.0.3865.75/google_apis/gaia/core_account_id.h.el7-noexcept chromium-77.0.3865.75/google_apis/gaia/core_account_id.h ---- chromium-77.0.3865.75/google_apis/gaia/core_account_id.h.el7-noexcept 2019-09-17 18:43:12.978678001 +0200 -+++ chromium-77.0.3865.75/google_apis/gaia/core_account_id.h 2019-09-17 18:43:12.983678041 +0200 -@@ -20,7 +20,7 @@ struct CoreAccountId { - ~CoreAccountId(); - - CoreAccountId& operator=(const CoreAccountId&); -- CoreAccountId& operator=(CoreAccountId&&) noexcept; -+ CoreAccountId& operator=(CoreAccountId&&); - - // Those implicit constructor and conversion operator allow to - // progressively migrate the code to use this struct. Removing -diff -up chromium-77.0.3865.75/gpu/config/gpu_info.cc.el7-noexcept chromium-77.0.3865.75/gpu/config/gpu_info.cc ---- chromium-77.0.3865.75/gpu/config/gpu_info.cc.el7-noexcept 2019-09-17 18:42:25.049297073 +0200 -+++ chromium-77.0.3865.75/gpu/config/gpu_info.cc 2019-09-17 18:42:25.049297073 +0200 -@@ -170,7 +170,7 @@ GPUInfo::GPUDevice& GPUInfo::GPUDevice:: - const GPUInfo::GPUDevice& other) = default; - - GPUInfo::GPUDevice& GPUInfo::GPUDevice::operator=( -- GPUInfo::GPUDevice&& other) noexcept = default; -+ GPUInfo::GPUDevice&& other) = default; - - GPUInfo::GPUInfo() - : optimus(false), -diff -up chromium-77.0.3865.75/third_party/openscreen/src/osp/public/service_info.h.el7-noexcept chromium-77.0.3865.75/third_party/openscreen/src/osp/public/service_info.h ---- chromium-77.0.3865.75/third_party/openscreen/src/osp/public/service_info.h.el7-noexcept 2019-09-17 21:46:46.378655525 +0200 -+++ chromium-77.0.3865.75/third_party/openscreen/src/osp/public/service_info.h 2019-09-17 21:47:16.897035418 +0200 -@@ -21,7 +21,7 @@ struct ServiceInfo { - ServiceInfo(ServiceInfo&&) MAYBE_NOEXCEPT = default; - ServiceInfo(const ServiceInfo&) MAYBE_NOEXCEPT = default; - -- ServiceInfo& operator=(ServiceInfo&&) MAYBE_NOEXCEPT = default; -+ ServiceInfo& operator=(ServiceInfo&&) = default; - ServiceInfo& operator=(const ServiceInfo&) MAYBE_NOEXCEPT = default; - - bool operator==(const ServiceInfo& other) const; diff --git a/chromium.spec b/chromium.spec index e5d2fd6..e619049 100644 --- a/chromium.spec +++ b/chromium.spec @@ -243,7 +243,7 @@ Patch69: chromium-77-clang.patch # Use lstdc++ on EPEL7 only Patch101: chromium-75.0.3770.100-epel7-stdc++.patch # el7 only patch -Patch102: chromium-77.0.3865.75-el7-noexcept.patch +Patch102: chromium-78.0.3904.70-el7-noexcept.patch # Enable VAAPI support on Linux # NOTE: This patch will never land upstream @@ -423,7 +423,6 @@ BuildRequires: pkgconfig(gtk+-3.0) BuildRequires: pkgconfig(gtk+-2.0) %endif BuildRequires: /usr/bin/python2 -BuildRequires: python2-devel %if 0%{?bundlepylibs} # Using bundled bits, do nothing. %else @@ -441,6 +440,7 @@ BuildRequires: python-markupsafe BuildRequires: python-ply %endif BuildRequires: python2-simplejson +BuildRequires: python2-devel %endif %if 0%{?bundlere2} # Using bundled bits, do nothing. From a776f11facd3adb02d178ced2f28b32c9219c00d Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Fri, 1 Nov 2019 12:29:41 -0400 Subject: [PATCH 0617/1449] update to 78.0.3904.87, apply most of the freeworld changes in PR 23/24/25 --- chromium.spec | 74 ++++++++++++++++++++++++++++++++++++--------------- sources | 3 +-- 2 files changed, 54 insertions(+), 23 deletions(-) diff --git a/chromium.spec b/chromium.spec index e619049..d7c8d25 100644 --- a/chromium.spec +++ b/chromium.spec @@ -22,12 +22,22 @@ # We'd like to always have this on. %global use_vaapi 0 +# If we build with shared on, then chrome-remote-desktop depends on chromium libs. +# If we build with shared off, then users cannot swap out libffmpeg (and i686 gets a lot harder to build) +%global shared 1 + # NEVER EVER EVER turn this on in official builds %global freeworld 0 %if %{freeworld} %global lsuffix freeworld +%if 0%{?shared} +%global nsuffix -libs-media-freeworld +%else +%global nsuffix -freeworld +%endif %else %global lsuffix fedora +%global nsuffix %{nil} %endif # Some people wish not to use the Fedora Google API keys. Mmkay. @@ -67,10 +77,6 @@ %endif %global __requires_exclude ^(%{privlibs})\\.so* -# If we build with shared on, then chrome-remote-desktop depends on chromium libs. -# If we build with shared off, then users cannot swap out libffmpeg (and i686 gets a lot harder to build) -%global shared 1 - # AddressSanitizer mode # https://www.chromium.org/developers/testing/addresssanitizer %global asan 0 @@ -157,13 +163,23 @@ BuildRequires: libicu-devel >= 5.4 %global majorversion 78 %if %{freeworld} -Name: chromium%{chromium_channel}%{?freeworld:-freeworld} +Name: chromium%{chromium_channel}%{nsuffix} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3904.70 +Version: %{majorversion}.0.3904.87 Release: 1%{?dist} +%if %{?freeworld} +%if %{?shared} +# chromium-libs-media-freeworld +Summary: Chromium media libraries built with all possible codecs +%else +# chromium-freeworld +Summary: A WebKit (Blink) powered web browser built with all possible codecs +%endif +%else Summary: A WebKit (Blink) powered web browser +%endif Url: http://www.chromium.org/Home License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) @@ -529,9 +545,19 @@ Obsoletes: chromium-v8 <= 3.25.28.18 Provides: webrtc = 0.2 Obsoletes: webrtc <= 0.1 %if 0%{?shared} +%if 0%{?freeworld} +# chromium-libs-media-freeworld case +Provides: chromium-libs-media = %{version}-%{release} +Provides: chromium-libs-media%{_isa} = %{version}-%{release} +Requires: chromium-libs%{_isa} = %{version} +Requires(post): %{_sbindir}/update-alternatives +Requires(preun): %{_sbindir}/update-alternatives +%else +# chromium case with shared libs Requires: chromium-libs%{_isa} = %{version}-%{release} # This is broken out so it can be replaced. Requires: chromium-libs-media%{_isa} = %{version}-%{release} +%endif # Nothing to do here. chromium-libs is real. %else Provides: chromium-libs = %{version}-%{release} @@ -638,8 +664,22 @@ Provides: bundled(xdg-user-dirs) Requires(post): /usr/sbin/semanage Requires(post): /usr/sbin/restorecon +%if %{?freeworld} +%if %{?shared} +%description +Chromium media libraries built with all possible codecs. Chromium is an +open-source web browser, powered by WebKit (Blink). This package replaces +the default chromium-libs-media package, which is limited in what it +can include. +%else +%description +Chromium built with all possible codecs. Chromium is an +open-source web browser, powered by WebKit (Blink). +%endif +%else %description Chromium is an open-source web browser, powered by WebKit (Blink). +%endif %package common Summary: Files needed for both the headless_shell and full Chromium @@ -665,21 +705,7 @@ Requires(preun): %{_sbindir}/update-alternatives %description libs Shared libraries used by chromium (and chrome-remote-desktop). -%if %{freeworld} -%package -n chromium-libs-media-freeworld -Summary: Chromium media libraries built with all possible codecs -Provides: chromium-libs-media = %{version}-%{release} -Provides: chromium-libs-media%{_isa} = %{version}-%{release} -Requires: chromium-libs%{_isa} = %{version} -Requires(post): %{_sbindir}/update-alternatives -Requires(preun): %{_sbindir}/update-alternatives - -%description -n chromium-libs-media-freeworld -Chromium media libraries built with all possible codecs. Chromium is an -open-source web browser, powered by WebKit (Blink). This package replaces -the default chromium-libs-media package, which is limited in what it -can include. -%else +%if ! %{freeworld} %package libs-media Summary: Shared libraries used by the chromium media subsystem Requires: chromium-libs%{_isa} = %{version} @@ -1482,6 +1508,7 @@ if st and st.type == "link" then os.remove(path) end +%if %{shared} %if %{freeworld} %posttrans -n chromium-libs-media-freeworld %{_sbindir}/update-alternatives --install \ @@ -1517,6 +1544,7 @@ if [ $1 = 0 ]; then %{_libdir}/chromium-browser/libffmpeg.so.fedora fi %endif +%endif %pre -n chrome-remote-desktop getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-desktop @@ -1690,6 +1718,10 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Fri Nov 1 2019 Tom Callaway - 78.0.3904.87-1 +- update to 78.0.3904.87 +- apply most of the freeworld changes in PR 23/24/25 + * Wed Oct 23 2019 Tom Callaway - 78.0.3904.80-1 - update to 78.0.3904.80 diff --git a/sources b/sources index c18b1d0..5687005 100644 --- a/sources +++ b/sources @@ -17,5 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-77.0.3865.120-clean.tar.xz) = 018702b53bafeb5fe8a297b8efb4805419555acb80a22b9f5f5fe2a3484f838f6ffa06655229466aca5a9de7f8b0497b9d387da4a1ba2dbc7c62ec3d1d0ffbb9 -SHA512 (chromium-78.0.3904.70-clean.tar.xz) = f702bc3c084a69adc81f47300d00f0b8cf46ee721dbb4986bfc5ba7fc95129172d021da0514350fe77591a209ec050307eead8e9bf309b70e46eb26d29d88509 +SHA512 (chromium-78.0.3904.87-clean.tar.xz) = ebd2a1440c36e9272b52b11ddfa596ce3d7b7a3a914970ebd4ce98d5bb862625ab61c392a9ea277ae8f791185d98d84ff5797db77bb80fa305b847e549035893 From 21080977e30caf8ebdaad0f8d57300876fdab4c4 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 4 Nov 2019 13:47:52 -0500 Subject: [PATCH 0618/1449] always BR: python2-devel --- chromium.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index d7c8d25..2439139 100644 --- a/chromium.spec +++ b/chromium.spec @@ -439,6 +439,7 @@ BuildRequires: pkgconfig(gtk+-3.0) BuildRequires: pkgconfig(gtk+-2.0) %endif BuildRequires: /usr/bin/python2 +BuildRequires: python2-devel %if 0%{?bundlepylibs} # Using bundled bits, do nothing. %else @@ -456,7 +457,6 @@ BuildRequires: python-markupsafe BuildRequires: python-ply %endif BuildRequires: python2-simplejson -BuildRequires: python2-devel %endif %if 0%{?bundlere2} # Using bundled bits, do nothing. From 06fe4fb881e91d27f7d73711f237727d2100ae69 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Wed, 6 Nov 2019 12:04:18 -0500 Subject: [PATCH 0619/1449] use minizip-compat-devel on epel8 too --- chromium.spec | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/chromium.spec b/chromium.spec index 2439139..a6c53a5 100644 --- a/chromium.spec +++ b/chromium.spec @@ -344,11 +344,19 @@ BuildRequires: libusb-devel BuildRequires: libXdamage-devel BuildRequires: libXScrnSaver-devel BuildRequires: libXtst-devel +# Old Fedora (before 30) uses the 1.2 minizip by default. +# Newer Fedora needs to use the compat package %if 0%{?fedora} >= 30 BuildRequires: minizip-compat-devel %else +# RHEL 8 needs to use the compat-minizip (provided by minizip1.2) +%if 0%{?rhel} >= 8 +BuildRequires: minizip-compat-devel +%else +# RHEL 7 and older uses the old minizip BuildRequires: minizip-devel %endif +%endif # RHEL 7's nodejs is too old %if 0%{?rhel} == 7 # Use bundled. From 978a69928b542f3b5c16fcf1fd332487d67c0255 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 7 Nov 2019 09:05:09 -0500 Subject: [PATCH 0620/1449] update to 78.0.3904.97 --- chromium.spec | 5 ++++- sources | 1 + 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/chromium.spec b/chromium.spec index a6c53a5..b2af49f 100644 --- a/chromium.spec +++ b/chromium.spec @@ -167,7 +167,7 @@ Name: chromium%{chromium_channel}%{nsuffix} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3904.87 +Version: %{majorversion}.0.3904.97 Release: 1%{?dist} %if %{?freeworld} %if %{?shared} @@ -1726,6 +1726,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Thu Nov 7 2019 Tom Callaway - 78.0.3904.97-1 +- update to 78.0.3904.97 + * Fri Nov 1 2019 Tom Callaway - 78.0.3904.87-1 - update to 78.0.3904.87 - apply most of the freeworld changes in PR 23/24/25 diff --git a/sources b/sources index 5687005..3900065 100644 --- a/sources +++ b/sources @@ -18,3 +18,4 @@ SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb874 SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 SHA512 (chromium-78.0.3904.87-clean.tar.xz) = ebd2a1440c36e9272b52b11ddfa596ce3d7b7a3a914970ebd4ce98d5bb862625ab61c392a9ea277ae8f791185d98d84ff5797db77bb80fa305b847e549035893 +SHA512 (chromium-78.0.3904.97-clean.tar.xz) = 5872fec9533726e031d41086b008f616a936818ee341ac6818081450b123874cc4dbd20e29afbd4b45acb79a6fb4d2b240b394804d23539c26eedca76d8d2124 From 0dd9dad819588b47b3b389fe7ae9b5596a230244 Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Sun, 17 Nov 2019 16:56:55 -0500 Subject: [PATCH 0621/1449] allow clock_nanosleep through seccomp (bz #1773289) --- ...ium-78.0.3904.97-glibc-clock-nanosleep.patch | 17 +++++++++++++++++ chromium.spec | 9 ++++++++- 2 files changed, 25 insertions(+), 1 deletion(-) create mode 100644 chromium-78.0.3904.97-glibc-clock-nanosleep.patch diff --git a/chromium-78.0.3904.97-glibc-clock-nanosleep.patch b/chromium-78.0.3904.97-glibc-clock-nanosleep.patch new file mode 100644 index 0000000..8aee2aa --- /dev/null +++ b/chromium-78.0.3904.97-glibc-clock-nanosleep.patch @@ -0,0 +1,17 @@ +diff -up chromium-78.0.3904.97/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc.glibc-clock-nanosleep chromium-78.0.3904.97/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc +--- chromium-78.0.3904.97/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc.glibc-clock-nanosleep 2019-11-17 16:48:03.463997928 -0500 ++++ chromium-78.0.3904.97/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc 2019-11-17 16:48:37.057222139 -0500 +@@ -32,12 +32,12 @@ bool SyscallSets::IsAllowedGettime(int s + (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS)) + case __NR_time: + #endif ++ case __NR_clock_nanosleep: + return true; + case __NR_adjtimex: // Privileged. + case __NR_clock_adjtime: // Privileged. + case __NR_clock_getres: // Could be allowed. + case __NR_clock_gettime: +- case __NR_clock_nanosleep: // Could be allowed. + case __NR_clock_settime: // Privileged. + #if defined(__i386__) || \ + (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS)) diff --git a/chromium.spec b/chromium.spec index b2af49f..20e58f9 100644 --- a/chromium.spec +++ b/chromium.spec @@ -168,7 +168,7 @@ Name: chromium%{chromium_channel}%{nsuffix} Name: chromium%{chromium_channel} %endif Version: %{majorversion}.0.3904.97 -Release: 1%{?dist} +Release: 2%{?dist} %if %{?freeworld} %if %{?shared} # chromium-libs-media-freeworld @@ -255,6 +255,9 @@ Patch67: chromium-78.0.3904.70-v8-tracedreference-fix.patch Patch68: v8-implement-tracedreference.patch # https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client/chromium/files/chromium-77-clang.patch Patch69: chromium-77-clang.patch +# Needs upstreaming +Patch70: chromium-78.0.3904.97-glibc-clock-nanosleep.patch + # Use lstdc++ on EPEL7 only Patch101: chromium-75.0.3770.100-epel7-stdc++.patch @@ -806,6 +809,7 @@ udev. %patch67 -p1 -b .implement-TraceWrapperV8Reference-without-destructor %patch68 -p1 -b .v8-implement-tracedreference %patch69 -p1 -b .clang-supports-location-builtins +%patch70 -p1 -b .glibc-clock-nanosleep # Fedora branded user agent %if 0%{?fedora} @@ -1726,6 +1730,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Sun Nov 17 2019 Tom Callaway - 78.0.3904.97-2 +- allow clock_nanosleep through seccomp (bz #1773289) + * Thu Nov 7 2019 Tom Callaway - 78.0.3904.97-1 - update to 78.0.3904.97 From 43425ae37ffeba53e5e13ada3a300dafad288d1c Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Mon, 25 Nov 2019 14:09:36 -0500 Subject: [PATCH 0622/1449] update to 78.0.3904.108 --- chromium.spec | 7 +++++-- sources | 3 +-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/chromium.spec b/chromium.spec index 20e58f9..e17afa9 100644 --- a/chromium.spec +++ b/chromium.spec @@ -167,8 +167,8 @@ Name: chromium%{chromium_channel}%{nsuffix} %else Name: chromium%{chromium_channel} %endif -Version: %{majorversion}.0.3904.97 -Release: 2%{?dist} +Version: %{majorversion}.0.3904.108 +Release: 1%{?dist} %if %{?freeworld} %if %{?shared} # chromium-libs-media-freeworld @@ -1730,6 +1730,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %changelog +* Mon Nov 25 2019 Tom Callaway - 78.0.3904.108-1 +- update to 78.0.3904.108 + * Sun Nov 17 2019 Tom Callaway - 78.0.3904.97-2 - allow clock_nanosleep through seccomp (bz #1773289) diff --git a/sources b/sources index 3900065..53357b4 100644 --- a/sources +++ b/sources @@ -17,5 +17,4 @@ SHA512 (Tinos-Italic.ttf) = d4f4f096110ef98a781a2a0e0d319317e5f84e650fe6f4d4f6b0 SHA512 (Tinos-Regular.ttf) = 58085c5dac6d067d60ba2ab3220c4a0cc1efcf279cadfcfb8746a5e5fa1a6f6daa62750dc2051b3b2d8a51b4d2e9bb0f66594caf2253c0870ed9c7286fa45e8f SHA512 (Ahem.ttf) = aeb64b10ab9c87860714cb60b4900254b13dc52c51319256a1a3722c882026ab7c616bf628fbc2fe14e38a6003f3a481af60b52a7ed62071d28ddaf428e4e3fd SHA512 (node-v8.9.1-linux-x64.tar.gz) = a707fd4567041c56e7f9d415e505e3fa650627f31def7fefdd7ec50f9e7066bb33332b67f479e1159d85e1105a7e6d034aad7429f4f3d034c9161170d7e0b844 -SHA512 (chromium-78.0.3904.87-clean.tar.xz) = ebd2a1440c36e9272b52b11ddfa596ce3d7b7a3a914970ebd4ce98d5bb862625ab61c392a9ea277ae8f791185d98d84ff5797db77bb80fa305b847e549035893 -SHA512 (chromium-78.0.3904.97-clean.tar.xz) = 5872fec9533726e031d41086b008f616a936818ee341ac6818081450b123874cc4dbd20e29afbd4b45acb79a6fb4d2b240b394804d23539c26eedca76d8d2124 +SHA512 (chromium-78.0.3904.108-clean.tar.xz) = 9bc6309309f745119946788e3efe9291511fef6e476022ac297582648ce7de16cad6a1485e132410059c1266ae6791659b927e18727a9c22f07fc52efcf0c907 From a1f6bc44e591caa76f2e13983714b75b4eb1beac Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 3 Dec 2019 15:08:38 -0500 Subject: [PATCH 0623/1449] 79.0.3945.56 beta --- chromium-71.0.3578.98-widevine-r3.patch | 14 +- chromium-76.0.3809.100-pulse-api-change.patch | 47 - ...5.120-gcc-fix-zlib-symbol-visibility.patch | 36 - ...865.120-silence-outdated-build-noise.patch | 60 - chromium-77.0.3865.75-fedora-user-agent.patch | 12 - chromium-78-gcc-noexcept.patch | 32 - chromium-78-include.patch | 40 - chromium-78-pm-crash.patch | 43 - chromium-78-revert-noexcept-r1.patch | 1471 ----------------- ...3904.70-gcc-DohUpgradeEntry-nonconst.patch | 49 - ...-78.0.3904.70-gcc-fix-invalid-pragma.patch | 16 - ....70-gcc-mark-CheckOpResult-constexpr.patch | 12 - chromium-78.0.3904.70-gcc-sizet-fix.patch | 20 - ...-78.0.3904.70-v8-tracedreference-fix.patch | 302 ---- ...m-78.0.3904.97-glibc-clock-nanosleep.patch | 17 - chromium-79-gcc-ambiguous-nodestructor.patch | 39 + chromium-79-gcc-permissive.patch | 79 + chromium-79-include.patch | 131 ++ ...ium-79.0.3945.56-base-gcc-no-alignas.patch | 12 - ...> chromium-79.0.3945.56-el7-noexcept.patch | 84 +- chromium-79.0.3945.56-fedora-user-agent.patch | 12 + chromium-79.0.3945.56-gcc-name-clash.patch | 108 ++ ...m-79.0.3945.56-glibc-clock-nanosleep.patch | 52 + ...9.0.3945.56-widevine-other-locations.patch | 19 + chromium.spec | 104 +- sources | 2 +- v8-implement-tracedreference.patch | 796 --------- 27 files changed, 520 insertions(+), 3089 deletions(-) delete mode 100644 chromium-76.0.3809.100-pulse-api-change.patch delete mode 100644 chromium-77.0.3865.120-gcc-fix-zlib-symbol-visibility.patch delete mode 100644 chromium-77.0.3865.120-silence-outdated-build-noise.patch delete mode 100644 chromium-77.0.3865.75-fedora-user-agent.patch delete mode 100644 chromium-78-gcc-noexcept.patch delete mode 100644 chromium-78-include.patch delete mode 100644 chromium-78-pm-crash.patch delete mode 100644 chromium-78-revert-noexcept-r1.patch delete mode 100644 chromium-78.0.3904.70-gcc-DohUpgradeEntry-nonconst.patch delete mode 100644 chromium-78.0.3904.70-gcc-fix-invalid-pragma.patch delete mode 100644 chromium-78.0.3904.70-gcc-mark-CheckOpResult-constexpr.patch delete mode 100644 chromium-78.0.3904.70-gcc-sizet-fix.patch delete mode 100644 chromium-78.0.3904.70-v8-tracedreference-fix.patch delete mode 100644 chromium-78.0.3904.97-glibc-clock-nanosleep.patch create mode 100644 chromium-79-gcc-ambiguous-nodestructor.patch create mode 100644 chromium-79-gcc-permissive.patch create mode 100644 chromium-79-include.patch rename chromium-78.0.3904.70-base-gcc-no-alignas.patch => chromium-79.0.3945.56-base-gcc-no-alignas.patch (78%) rename chromium-78.0.3904.70-el7-noexcept.patch => chromium-79.0.3945.56-el7-noexcept.patch (58%) create mode 100644 chromium-79.0.3945.56-fedora-user-agent.patch create mode 100644 chromium-79.0.3945.56-gcc-name-clash.patch create mode 100644 chromium-79.0.3945.56-glibc-clock-nanosleep.patch create mode 100644 chromium-79.0.3945.56-widevine-other-locations.patch delete mode 100644 v8-implement-tracedreference.patch diff --git a/chromium-71.0.3578.98-widevine-r3.patch b/chromium-71.0.3578.98-widevine-r3.patch index 75392a7..06b5c7b 100644 --- a/chromium-71.0.3578.98-widevine-r3.patch +++ b/chromium-71.0.3578.98-widevine-r3.patch @@ -1,15 +1,3 @@ -diff -upr chromium-71.0.3578.80.orig/chrome/common/chrome_content_client.cc chromium-71.0.3578.80/chrome/common/chrome_content_client.cc ---- chromium-71.0.3578.80.orig/chrome/common/chrome_content_client.cc 2018-12-21 20:16:43.000000000 +0000 -+++ chromium-71.0.3578.80/chrome/common/chrome_content_client.cc 2018-12-21 21:34:28.658206942 +0000 -@@ -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_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 diff -upr chromium-71.0.3578.80.orig/third_party/widevine/cdm/widevine_cdm_version.h chromium-71.0.3578.80/third_party/widevine/cdm/widevine_cdm_version.h --- chromium-71.0.3578.80.orig/third_party/widevine/cdm/widevine_cdm_version.h 2018-12-21 20:18:01.000000000 +0000 +++ chromium-71.0.3578.80/third_party/widevine/cdm/widevine_cdm_version.h 2018-12-21 21:37:45.635374949 +0000 @@ -17,6 +5,6 @@ diff -upr chromium-71.0.3578.80.orig/third_party/widevine/cdm/widevine_cdm_versi // - 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 "undefined" ++#define WIDEVINE_CDM_VERSION_STRING "unknown" + #endif // WIDEVINE_CDM_VERSION_H_ diff --git a/chromium-76.0.3809.100-pulse-api-change.patch b/chromium-76.0.3809.100-pulse-api-change.patch deleted file mode 100644 index d4e2b46..0000000 --- a/chromium-76.0.3809.100-pulse-api-change.patch +++ /dev/null @@ -1,47 +0,0 @@ -diff -up chromium-76.0.3809.100/media/audio/pulse/pulse.sigs.pulse-api-change chromium-76.0.3809.100/media/audio/pulse/pulse.sigs ---- chromium-76.0.3809.100/media/audio/pulse/pulse.sigs.pulse-api-change 2019-08-14 23:18:59.624627870 +0200 -+++ chromium-76.0.3809.100/media/audio/pulse/pulse.sigs 2019-08-14 23:19:41.258104998 +0200 -@@ -24,11 +24,11 @@ pa_operation* pa_context_get_source_info - pa_operation* pa_context_get_source_info_by_name(pa_context* c, const char* name, pa_source_info_cb_t cb, void *userdata); - pa_operation* pa_context_get_source_info_list(pa_context* c, pa_source_info_cb_t cb, void* userdata); - pa_operation* pa_context_get_sink_info_list(pa_context* c, pa_sink_info_cb_t cb, void* userdata); --pa_context_state_t pa_context_get_state(pa_context* c); -+pa_context_state_t pa_context_get_state(const pa_context* c); - pa_context* pa_context_new(pa_mainloop_api* mainloop, const char* name); - pa_operation* pa_context_set_source_volume_by_index(pa_context* c, uint32_t idx, const pa_cvolume* volume, pa_context_success_cb_t cb, void* userdata); - void pa_context_set_state_callback(pa_context* c, pa_context_notify_cb_t cb, void* userdata); --pa_operation_state_t pa_operation_get_state(pa_operation* o); -+pa_operation_state_t pa_operation_get_state(const pa_operation* o); - void pa_context_unref(pa_context* c); - void pa_operation_unref(pa_operation* o); - int pa_stream_begin_write(pa_stream* p, void** data, size_t* nbytes); -@@ -38,23 +38,23 @@ pa_operation* pa_stream_cork(pa_stream* - int pa_stream_disconnect(pa_stream* s); - int pa_stream_drop(pa_stream *p); - pa_operation* pa_stream_flush(pa_stream* s, pa_stream_success_cb_t cb, void* userdata); --uint32_t pa_stream_get_device_index(pa_stream* s); -+uint32_t pa_stream_get_device_index(const pa_stream* s); - int pa_stream_get_latency(pa_stream* s, pa_usec_t* r_usec, int* negative); --pa_stream_state_t pa_stream_get_state(pa_stream* p); -+pa_stream_state_t pa_stream_get_state(const pa_stream* p); - pa_stream* pa_stream_new(pa_context* c, const char* name, const pa_sample_spec* ss, const pa_channel_map * map); - pa_stream* pa_stream_new_with_proplist(pa_context* c, const char* name, const pa_sample_spec* ss, const pa_channel_map* map, pa_proplist* p); - pa_proplist* pa_proplist_new(void); --int pa_proplist_contains(pa_proplist* p, const char* key); -+int pa_proplist_contains(const pa_proplist* p, const char* key); - void pa_proplist_free(pa_proplist* p); --const char* pa_proplist_gets(pa_proplist* p, const char* key); -+const char* pa_proplist_gets(const pa_proplist* p, const char* key); - int pa_proplist_sets(pa_proplist* p, const char* key, const char* value); --size_t pa_stream_readable_size(pa_stream *p); -+size_t pa_stream_readable_size(const pa_stream *p); - int pa_stream_peek(pa_stream* p, const void** data, size_t* nbytes); - void pa_stream_set_read_callback(pa_stream* p, pa_stream_request_cb_t cb, void* userdata); - void pa_stream_set_state_callback(pa_stream* s, pa_stream_notify_cb_t cb, void* userdata); - int pa_stream_write(pa_stream* p, const void* data, size_t nbytes, pa_free_cb_t free_cb, int64_t offset, pa_seek_mode_t seek); - void pa_stream_set_write_callback(pa_stream *p, pa_stream_request_cb_t cb, void *userdata); - void pa_stream_unref(pa_stream* s); --int pa_context_errno(pa_context *c); -+int pa_context_errno(const pa_context *c); - const char* pa_strerror(int error); - pa_cvolume* pa_cvolume_set(pa_cvolume* a, unsigned channels, pa_volume_t v); diff --git a/chromium-77.0.3865.120-gcc-fix-zlib-symbol-visibility.patch b/chromium-77.0.3865.120-gcc-fix-zlib-symbol-visibility.patch deleted file mode 100644 index 47fd97d..0000000 --- a/chromium-77.0.3865.120-gcc-fix-zlib-symbol-visibility.patch +++ /dev/null @@ -1,36 +0,0 @@ -From 9c3aed099b010a75594a0efd523774c4c9a5e3d2 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?J=C3=BCri=20Valdmann?= -Date: Tue, 15 Oct 2019 12:10:55 +0000 -Subject: [PATCH] GCC: Fix zlib symbol visibility macro - -GCC parses the function __attribute__ syntax a bit differently from Clang, -associating the attribute with the return type instead of the function if the -return type is a pointer. This leads to certain zlib symbols, such as -Cr_z_zError, to fail to be properly exported from the shared library. Fix by -using ZEXTERN instead of ZEXPORT for the attribute which works the same for both -GCC and Clang. - -Bug: 819294 -Change-Id: I5707d1b0627a503df08df9ac0bb65fda69453989 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1859788 -Reviewed-by: Thomas Anderson -Reviewed-by: Nico Weber -Commit-Queue: Nico Weber -Cr-Commit-Position: refs/heads/master@{#705917} ---- - third_party/zlib/chromeconf.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/third_party/zlib/chromeconf.h b/third_party/zlib/chromeconf.h -index e9aa3867d8512..666093d696a58 100644 ---- a/third_party/zlib/chromeconf.h -+++ b/third_party/zlib/chromeconf.h -@@ -13,7 +13,7 @@ - #define ZEXTERN __declspec(dllimport) - #endif - #elif defined(ZLIB_IMPLEMENTATION) --#define ZEXPORT __attribute__((visibility("default"))) -+#define ZEXTERN __attribute__((visibility("default"))) - #endif - #endif - diff --git a/chromium-77.0.3865.120-silence-outdated-build-noise.patch b/chromium-77.0.3865.120-silence-outdated-build-noise.patch deleted file mode 100644 index f2d4735..0000000 --- a/chromium-77.0.3865.120-silence-outdated-build-noise.patch +++ /dev/null @@ -1,60 +0,0 @@ -From e79d9d0e06b825d2e62b38db03248c0e6ceec7e4 Mon Sep 17 00:00:00 2001 -From: Greg Thompson -Date: Sat, 5 Oct 2019 03:47:05 +0000 -Subject: [PATCH] Only detect outdated builds on Google Chrome. - -Prior to https://crrev.com/643864, they weren't detected for Chromium on -account of the way google_brand worked. That CL changed behavior and -accidentally started showing the outdated build bubble for Linux -Chromium users. - -BUG=1010592 - -Change-Id: I069ac36166e2ae720d58b1b9aa85605792be8684 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1841635 -Reviewed-by: Thomas Anderson -Reviewed-by: Lei Zhang -Commit-Queue: Greg Thompson -Cr-Commit-Position: refs/heads/master@{#703131} ---- - .../upgrade_detector/upgrade_detector_impl.cc | 12 ++++++++++++ - 1 file changed, 12 insertions(+) - -diff --git a/chrome/browser/upgrade_detector/upgrade_detector_impl.cc b/chrome/browser/upgrade_detector/upgrade_detector_impl.cc -index 432e3789eced0..07850fdf80cd7 100644 ---- a/chrome/browser/upgrade_detector/upgrade_detector_impl.cc -+++ b/chrome/browser/upgrade_detector/upgrade_detector_impl.cc -@@ -31,6 +31,7 @@ - #include "base/time/default_tick_clock.h" - #include "base/time/tick_clock.h" - #include "base/time/time.h" -+#include "build/branding_buildflags.h" - #include "chrome/browser/browser_process.h" - #include "chrome/browser/google/google_brand.h" - #include "chrome/common/chrome_switches.h" -@@ -73,6 +74,14 @@ constexpr base::TimeDelta kNotifyCycleTimeForTesting = - // The number of days after which we identify a build/install as outdated. - constexpr base::TimeDelta kOutdatedBuildAge = base::TimeDelta::FromDays(12 * 7); - -+constexpr bool ShouldDetectOutdatedBuilds() { -+#if BUILDFLAG(GOOGLE_CHROME_BRANDING) -+ return true; -+#else // BUILDFLAG(GOOGLE_CHROME_BRANDING) -+ return false; -+#endif // BUILDFLAG(GOOGLE_CHROME_BRANDING) -+} -+ - // Return the string that was passed as a value for the - // kCheckForUpdateIntervalSec switch. - std::string CmdLineInterval() { -@@ -406,6 +415,10 @@ bool UpgradeDetectorImpl::DetectOutdated - return false; - } - #endif -+ -+ if (!ShouldDetectOutdatedBuilds()) -+ return false; -+ - } - - base::Time network_time; diff --git a/chromium-77.0.3865.75-fedora-user-agent.patch b/chromium-77.0.3865.75-fedora-user-agent.patch deleted file mode 100644 index 8f6de51..0000000 --- a/chromium-77.0.3865.75-fedora-user-agent.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-77.0.3865.75/content/common/user_agent.cc.fedora-user-agent chromium-77.0.3865.75/content/common/user_agent.cc ---- chromium-77.0.3865.75/content/common/user_agent.cc.fedora-user-agent 2019-09-12 15:49:11.902270729 +0200 -+++ chromium-77.0.3865.75/content/common/user_agent.cc 2019-09-12 15:50:11.555732044 +0200 -@@ -35,7 +35,7 @@ std::string GetUserAgentPlatform() { - #elif defined(OS_MACOSX) - return "Macintosh; "; - #elif defined(USE_X11) || defined(USE_OZONE) -- return "X11; "; // strange, but that's what Firefox uses -+ return "X11; Fedora; "; // strange, but that's what Firefox uses - #elif defined(OS_ANDROID) - return "Linux; "; - #elif defined(OS_POSIX) diff --git a/chromium-78-gcc-noexcept.patch b/chromium-78-gcc-noexcept.patch deleted file mode 100644 index 8ddb53f..0000000 --- a/chromium-78-gcc-noexcept.patch +++ /dev/null @@ -1,32 +0,0 @@ -From d16cda8fc3476cc534a756873cc8aa2692a57054 Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Thu, 22 Aug 2019 13:13:36 +0200 -Subject: [PATCH] GCC: declare noexcept move constructor/assign operators of V8StackTraceId - -blink::BlinkCloneableMessage declares default implementation of -move operator/assign operator that requires v8_inspector::V8StackTraceId -to declare its move constructor/assign operator too. - -Bug: chromium:819294 -Change-Id: Iaf626ee8245efcba372a17cdf2de448e691d41d6 -Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1796062 -Commit-Queue: José Dapena Paz -Reviewed-by: Yang Guo -Cr-Commit-Position: refs/heads/master@{#63799} ---- - -diff --git a/v8/include/v8-inspector.h b/v8/include/v8-inspector.h -index ce5b777..ed4cdec 100644 ---- a/v8/include/v8-inspector.h -+++ b/v8/include/v8-inspector.h -@@ -231,7 +231,10 @@ struct V8_EXPORT V8StackTraceId { - std::pair debugger_id; - - V8StackTraceId(); -+ V8StackTraceId(const V8StackTraceId&) = default; - V8StackTraceId(uintptr_t id, const std::pair debugger_id); -+ V8StackTraceId& operator=(const V8StackTraceId&) = default; -+ V8StackTraceId& operator=(V8StackTraceId&&) noexcept = default; - ~V8StackTraceId() = default; - - bool IsInvalid() const; diff --git a/chromium-78-include.patch b/chromium-78-include.patch deleted file mode 100644 index 3db38ea..0000000 --- a/chromium-78-include.patch +++ /dev/null @@ -1,40 +0,0 @@ -From bbfe2665923225b4a7c436ba2b6c7e5f695f2e52 Mon Sep 17 00:00:00 2001 -From: David Landell -Date: Fri, 13 Sep 2019 12:24:13 +0000 -Subject: [PATCH] Add missing include for unique_ptr - -Change-Id: I614d2f42868d563eb6a92dfb2aae08286e20d687 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1803137 -Reviewed-by: Henrik Boström -Commit-Queue: Henrik Boström -Cr-Commit-Position: refs/heads/master@{#696355} ---- - -diff --git a/third_party/blink/public/platform/web_rtc_rtp_source.h b/third_party/blink/public/platform/web_rtc_rtp_source.h -index 959440f..c3fd542 100644 ---- a/third_party/blink/public/platform/web_rtc_rtp_source.h -+++ b/third_party/blink/public/platform/web_rtc_rtp_source.h -@@ -5,6 +5,8 @@ - #ifndef THIRD_PARTY_BLINK_PUBLIC_PLATFORM_WEB_RTC_RTP_SOURCE_H_ - #define THIRD_PARTY_BLINK_PUBLIC_PLATFORM_WEB_RTC_RTP_SOURCE_H_ - -+#include -+ - #include "base/optional.h" - #include "third_party/blink/public/platform/web_common.h" - -Missing include due to reverting ProfileManagerObserver ---- - -diff --git a/chrome/browser/web_applications/extensions/bookmark_app_util.cc b/chrome/browser/web_applications/extensions/bookmark_app_util.cc -index ee4b70a..b31e5f5 100644 ---- a/chrome/browser/web_applications/extensions/bookmark_app_util.cc -+++ b/chrome/browser/web_applications/extensions/bookmark_app_util.cc -@@ -7,6 +7,7 @@ - #include "base/strings/string_piece.h" - #include "base/values.h" - #include "chrome/browser/extensions/extension_service.h" -+#include "chrome/browser/profiles/profile.h" - #include "chrome/browser/web_applications/components/app_registrar.h" - #include "chrome/browser/web_applications/components/web_app_provider_base.h" - #include "chrome/common/chrome_features.h" diff --git a/chromium-78-pm-crash.patch b/chromium-78-pm-crash.patch deleted file mode 100644 index ada2661..0000000 --- a/chromium-78-pm-crash.patch +++ /dev/null @@ -1,43 +0,0 @@ -From e73aed9a5ef15102f29ac31b70290faf5c90f9fe Mon Sep 17 00:00:00 2001 -From: Evan Stade -Date: Wed, 16 Oct 2019 16:01:32 +0000 -Subject: [PATCH] Fix shutdown crash in ProfileManager. - -OnProfileMarkedForPermanentDeletion should move from -ProfileManagerObserver to ProfileObserver, which would also -fix this bug. However, changing the order of members is the -quickest and most cherry-pick-able way to avoid the crash. - -Bug: 1005244 -Change-Id: If2db68c846dd418cd02864b57b9b543687fa1e03 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1863518 -Auto-Submit: Evan Stade -Reviewed-by: David Roger -Commit-Queue: Evan Stade -Cr-Commit-Position: refs/heads/master@{#706467} ---- - -diff --git a/chrome/browser/profiles/profile_manager.h b/chrome/browser/profiles/profile_manager.h -index b60df76d..7d02af7 100644 ---- a/chrome/browser/profiles/profile_manager.h -+++ b/chrome/browser/profiles/profile_manager.h -@@ -409,6 +409,10 @@ class ProfileManager : public content::NotificationObserver, - const base::FilePath& profile_dir); - #endif // !defined(OS_ANDROID) - -+ // Destroy after |profile_info_cache_| since Profile destruction may trigger -+ // some observers to unregister themselves. -+ base::ObserverList observers_; -+ - // Object to cache various information about profiles. Contains information - // about every profile which has been created for this instance of Chrome, - // if it has not been explicitly deleted. It must be destroyed after -@@ -450,8 +454,6 @@ class ProfileManager : public content::NotificationObserver, - // Controls whether to initialize some services. Only disabled for testing. - bool do_final_services_init_ = true; - -- base::ObserverList observers_; -- - // TODO(chrome/browser/profiles/OWNERS): Usage of this in profile_manager.cc - // should likely be turned into DCHECK_CURRENTLY_ON(BrowserThread::UI) for - // consistency with surrounding code in the same file but that wasn't trivial diff --git a/chromium-78-revert-noexcept-r1.patch b/chromium-78-revert-noexcept-r1.patch deleted file mode 100644 index 408d618..0000000 --- a/chromium-78-revert-noexcept-r1.patch +++ /dev/null @@ -1,1471 +0,0 @@ -From 37a95dd93e553888c00cf9443a5ec738ce658e65 Mon Sep 17 00:00:00 2001 -From: Zinovy Nis -Date: Mon, 16 Sep 2019 13:08:17 +0000 -Subject: [PATCH] Revert "[clang-tidy] add noexcept for move ctors and operator= in blink" - -This reverts commit 8f3eea10fe63a64ac67dc21542ebee6b896156a3. - -Reason for revert: code bloating - -Original change's description: -> [clang-tidy] add noexcept for move ctors and operator= in blink -> -> Bug: 994915 -> Change-Id: I2e1bcf286a2d2fa6613e18b5268098a0d258fb2e -> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1759163 -> Commit-Queue: Zinovy Nis -> Reviewed-by: Jeremy Roman -> Reviewed-by: Mike West -> Cr-Commit-Position: refs/heads/master@{#688676} - -TBR=jbroman@chromium.org,foolip@chromium.org,mkwst@chromium.org,zynis@yandex-team.ru - -# Not skipping CQ checks because original CL landed > 1 day ago. - -Bug: 994915 -Change-Id: I12b3ecc1186e27809082dc399c6d6864109ce307 ---- - -diff --git a/third_party/blink/common/indexeddb/indexeddb_key_path.cc b/third_party/blink/common/indexeddb/indexeddb_key_path.cc -index ec2b618..552d541 100644 ---- a/third_party/blink/common/indexeddb/indexeddb_key_path.cc -+++ b/third_party/blink/common/indexeddb/indexeddb_key_path.cc -@@ -18,12 +18,12 @@ - : type_(mojom::IDBKeyPathType::Array), array_(array) {} - - IndexedDBKeyPath::IndexedDBKeyPath(const IndexedDBKeyPath& other) = default; --IndexedDBKeyPath::IndexedDBKeyPath(IndexedDBKeyPath&& other) noexcept = default; -+IndexedDBKeyPath::IndexedDBKeyPath(IndexedDBKeyPath&& other) = default; - IndexedDBKeyPath::~IndexedDBKeyPath() = default; - IndexedDBKeyPath& IndexedDBKeyPath::operator=(const IndexedDBKeyPath& other) = - default; --IndexedDBKeyPath& IndexedDBKeyPath::operator=( -- IndexedDBKeyPath&& other) noexcept = default; -+IndexedDBKeyPath& IndexedDBKeyPath::operator=(IndexedDBKeyPath&& other) = -+ default; - - const std::vector& IndexedDBKeyPath::array() const { - DCHECK(type_ == blink::mojom::IDBKeyPathType::Array); -diff --git a/third_party/blink/common/indexeddb/indexeddb_metadata.cc b/third_party/blink/common/indexeddb/indexeddb_metadata.cc -index 50d5845..9349732 100644 ---- a/third_party/blink/common/indexeddb/indexeddb_metadata.cc -+++ b/third_party/blink/common/indexeddb/indexeddb_metadata.cc -@@ -23,15 +23,15 @@ - - IndexedDBIndexMetadata::IndexedDBIndexMetadata( - const IndexedDBIndexMetadata& other) = default; --IndexedDBIndexMetadata::IndexedDBIndexMetadata( -- IndexedDBIndexMetadata&& other) noexcept = default; -+IndexedDBIndexMetadata::IndexedDBIndexMetadata(IndexedDBIndexMetadata&& other) = -+ default; - - IndexedDBIndexMetadata::~IndexedDBIndexMetadata() = default; - - IndexedDBIndexMetadata& IndexedDBIndexMetadata::operator=( - const IndexedDBIndexMetadata& other) = default; - IndexedDBIndexMetadata& IndexedDBIndexMetadata::operator=( -- IndexedDBIndexMetadata&& other) noexcept = default; -+ IndexedDBIndexMetadata&& other) = default; - - bool IndexedDBIndexMetadata::operator==( - const IndexedDBIndexMetadata& other) const { -@@ -56,14 +56,14 @@ - IndexedDBObjectStoreMetadata::IndexedDBObjectStoreMetadata( - const IndexedDBObjectStoreMetadata& other) = default; - IndexedDBObjectStoreMetadata::IndexedDBObjectStoreMetadata( -- IndexedDBObjectStoreMetadata&& other) noexcept = default; -+ IndexedDBObjectStoreMetadata&& other) = default; - - IndexedDBObjectStoreMetadata::~IndexedDBObjectStoreMetadata() = default; - - IndexedDBObjectStoreMetadata& IndexedDBObjectStoreMetadata::operator=( - const IndexedDBObjectStoreMetadata& other) = default; - IndexedDBObjectStoreMetadata& IndexedDBObjectStoreMetadata::operator=( -- IndexedDBObjectStoreMetadata&& other) noexcept = default; -+ IndexedDBObjectStoreMetadata&& other) = default; - - bool IndexedDBObjectStoreMetadata::operator==( - const IndexedDBObjectStoreMetadata& other) const { -@@ -87,14 +87,14 @@ - IndexedDBDatabaseMetadata::IndexedDBDatabaseMetadata( - const IndexedDBDatabaseMetadata& other) = default; - IndexedDBDatabaseMetadata::IndexedDBDatabaseMetadata( -- IndexedDBDatabaseMetadata&& other) noexcept = default; -+ IndexedDBDatabaseMetadata&& other) = default; - - IndexedDBDatabaseMetadata::~IndexedDBDatabaseMetadata() = default; - - IndexedDBDatabaseMetadata& IndexedDBDatabaseMetadata::operator=( - const IndexedDBDatabaseMetadata& other) = default; - IndexedDBDatabaseMetadata& IndexedDBDatabaseMetadata::operator=( -- IndexedDBDatabaseMetadata&& other) noexcept = default; -+ IndexedDBDatabaseMetadata&& other) = default; - - bool IndexedDBDatabaseMetadata::operator==( - const IndexedDBDatabaseMetadata& other) const { -diff --git a/third_party/blink/common/mediastream/media_devices.cc b/third_party/blink/common/mediastream/media_devices.cc -index 93df201..3661b4b 100644 ---- a/third_party/blink/common/mediastream/media_devices.cc -+++ b/third_party/blink/common/mediastream/media_devices.cc -@@ -13,8 +13,7 @@ - WebMediaDeviceInfo::WebMediaDeviceInfo(const WebMediaDeviceInfo& other) = - default; - --WebMediaDeviceInfo::WebMediaDeviceInfo(WebMediaDeviceInfo&& other) noexcept = -- default; -+WebMediaDeviceInfo::WebMediaDeviceInfo(WebMediaDeviceInfo&& other) = default; - - WebMediaDeviceInfo::WebMediaDeviceInfo(const std::string& device_id, - const std::string& label, -@@ -36,8 +35,8 @@ - WebMediaDeviceInfo& WebMediaDeviceInfo::operator=( - const WebMediaDeviceInfo& other) = default; - --WebMediaDeviceInfo& WebMediaDeviceInfo::operator=( -- WebMediaDeviceInfo&& other) noexcept = default; -+WebMediaDeviceInfo& WebMediaDeviceInfo::operator=(WebMediaDeviceInfo&& other) = -+ default; - - bool operator==(const WebMediaDeviceInfo& first, - const WebMediaDeviceInfo& second) { -diff --git a/third_party/blink/common/messaging/cloneable_message.cc b/third_party/blink/common/messaging/cloneable_message.cc -index 2984fd1..5c3ee7e 100644 ---- a/third_party/blink/common/messaging/cloneable_message.cc -+++ b/third_party/blink/common/messaging/cloneable_message.cc -@@ -12,9 +12,8 @@ - namespace blink { - - CloneableMessage::CloneableMessage() = default; --CloneableMessage::CloneableMessage(CloneableMessage&&) noexcept = default; --CloneableMessage& CloneableMessage::operator=(CloneableMessage&&) noexcept = -- default; -+CloneableMessage::CloneableMessage(CloneableMessage&&) = default; -+CloneableMessage& CloneableMessage::operator=(CloneableMessage&&) = default; - CloneableMessage::~CloneableMessage() = default; - - CloneableMessage CloneableMessage::ShallowClone() const { -diff --git a/third_party/blink/common/messaging/transferable_message.cc b/third_party/blink/common/messaging/transferable_message.cc -index 07ac9bb..4a69d0a 100644 ---- a/third_party/blink/common/messaging/transferable_message.cc -+++ b/third_party/blink/common/messaging/transferable_message.cc -@@ -9,10 +9,9 @@ - namespace blink { - - TransferableMessage::TransferableMessage() = default; --TransferableMessage::TransferableMessage(TransferableMessage&&) noexcept = -+TransferableMessage::TransferableMessage(TransferableMessage&&) = default; -+TransferableMessage& TransferableMessage::operator=(TransferableMessage&&) = - default; --TransferableMessage& TransferableMessage::operator=( -- TransferableMessage&&) noexcept = default; - TransferableMessage::~TransferableMessage() = default; - - } // namespace blink -diff --git a/third_party/blink/public/common/indexeddb/indexeddb_key_path.h b/third_party/blink/public/common/indexeddb/indexeddb_key_path.h -index 8ebe10c..9f5422c 100644 ---- a/third_party/blink/public/common/indexeddb/indexeddb_key_path.h -+++ b/third_party/blink/public/common/indexeddb/indexeddb_key_path.h -@@ -22,10 +22,10 @@ - explicit IndexedDBKeyPath(const base::string16&); - explicit IndexedDBKeyPath(const std::vector&); - IndexedDBKeyPath(const IndexedDBKeyPath& other); -- IndexedDBKeyPath(IndexedDBKeyPath&& other) noexcept; -+ IndexedDBKeyPath(IndexedDBKeyPath&& other); - ~IndexedDBKeyPath(); - IndexedDBKeyPath& operator=(const IndexedDBKeyPath& other); -- IndexedDBKeyPath& operator=(IndexedDBKeyPath&& other) noexcept; -+ IndexedDBKeyPath& operator=(IndexedDBKeyPath&& other); - - bool IsNull() const { return type_ == blink::mojom::IDBKeyPathType::Null; } - bool operator==(const IndexedDBKeyPath& other) const; -diff --git a/third_party/blink/public/common/indexeddb/indexeddb_metadata.h b/third_party/blink/public/common/indexeddb/indexeddb_metadata.h -index 15663f6..7bb37c9 100644 ---- a/third_party/blink/public/common/indexeddb/indexeddb_metadata.h -+++ b/third_party/blink/public/common/indexeddb/indexeddb_metadata.h -@@ -26,10 +26,10 @@ - bool unique, - bool multi_entry); - IndexedDBIndexMetadata(const IndexedDBIndexMetadata& other); -- IndexedDBIndexMetadata(IndexedDBIndexMetadata&& other) noexcept; -+ IndexedDBIndexMetadata(IndexedDBIndexMetadata&& other); - ~IndexedDBIndexMetadata(); - IndexedDBIndexMetadata& operator=(const IndexedDBIndexMetadata& other); -- IndexedDBIndexMetadata& operator=(IndexedDBIndexMetadata&& other) noexcept; -+ IndexedDBIndexMetadata& operator=(IndexedDBIndexMetadata&& other); - bool operator==(const IndexedDBIndexMetadata& other) const; - - base::string16 name; -@@ -50,12 +50,11 @@ - bool auto_increment, - int64_t max_index_id); - IndexedDBObjectStoreMetadata(const IndexedDBObjectStoreMetadata& other); -- IndexedDBObjectStoreMetadata(IndexedDBObjectStoreMetadata&& other) noexcept; -+ IndexedDBObjectStoreMetadata(IndexedDBObjectStoreMetadata&& other); - ~IndexedDBObjectStoreMetadata(); - IndexedDBObjectStoreMetadata& operator=( - const IndexedDBObjectStoreMetadata& other); -- IndexedDBObjectStoreMetadata& operator=( -- IndexedDBObjectStoreMetadata&& other) noexcept; -+ IndexedDBObjectStoreMetadata& operator=(IndexedDBObjectStoreMetadata&& other); - bool operator==(const IndexedDBObjectStoreMetadata& other) const; - - base::string16 name; -@@ -77,11 +76,10 @@ - int64_t version, - int64_t max_object_store_id); - IndexedDBDatabaseMetadata(const IndexedDBDatabaseMetadata& other); -- IndexedDBDatabaseMetadata(IndexedDBDatabaseMetadata&& other) noexcept; -+ IndexedDBDatabaseMetadata(IndexedDBDatabaseMetadata&& other); - ~IndexedDBDatabaseMetadata(); - IndexedDBDatabaseMetadata& operator=(const IndexedDBDatabaseMetadata& other); -- IndexedDBDatabaseMetadata& operator=( -- IndexedDBDatabaseMetadata&& other) noexcept; -+ IndexedDBDatabaseMetadata& operator=(IndexedDBDatabaseMetadata&& other); - bool operator==(const IndexedDBDatabaseMetadata& other) const; - - base::string16 name; -diff --git a/third_party/blink/public/common/mediastream/media_devices.h b/third_party/blink/public/common/mediastream/media_devices.h -index 0d63e575..d87affe 100644 ---- a/third_party/blink/public/common/mediastream/media_devices.h -+++ b/third_party/blink/public/common/mediastream/media_devices.h -@@ -27,7 +27,7 @@ - struct BLINK_COMMON_EXPORT WebMediaDeviceInfo { - WebMediaDeviceInfo(); - WebMediaDeviceInfo(const WebMediaDeviceInfo& other); -- WebMediaDeviceInfo(WebMediaDeviceInfo&& other) noexcept; -+ WebMediaDeviceInfo(WebMediaDeviceInfo&& other); - WebMediaDeviceInfo( - const std::string& device_id, - const std::string& label, -@@ -37,7 +37,7 @@ - const media::VideoCaptureDeviceDescriptor& descriptor); - ~WebMediaDeviceInfo(); - WebMediaDeviceInfo& operator=(const WebMediaDeviceInfo& other); -- WebMediaDeviceInfo& operator=(WebMediaDeviceInfo&& other) noexcept; -+ WebMediaDeviceInfo& operator=(WebMediaDeviceInfo&& other); - - std::string device_id; - std::string label; -diff --git a/third_party/blink/public/common/messaging/cloneable_message.h b/third_party/blink/public/common/messaging/cloneable_message.h -index de9952d..8dbd910 100644 ---- a/third_party/blink/public/common/messaging/cloneable_message.h -+++ b/third_party/blink/public/common/messaging/cloneable_message.h -@@ -21,8 +21,8 @@ - // This type can be serialized as a blink::mojom::CloneableMessage struct. - struct BLINK_COMMON_EXPORT CloneableMessage { - CloneableMessage(); -- CloneableMessage(CloneableMessage&&) noexcept; -- CloneableMessage& operator=(CloneableMessage&&) noexcept; -+ CloneableMessage(CloneableMessage&&); -+ CloneableMessage& operator=(CloneableMessage&&); - ~CloneableMessage(); - - // Returns a shallow clone of this message. |encoded_message| in the clone -diff --git a/third_party/blink/public/common/messaging/transferable_message.h b/third_party/blink/public/common/messaging/transferable_message.h -index 5eef63c..2d87363 100644 ---- a/third_party/blink/public/common/messaging/transferable_message.h -+++ b/third_party/blink/public/common/messaging/transferable_message.h -@@ -22,8 +22,8 @@ - // type can be serialized as a blink::mojom::TransferableMessage struct. - struct BLINK_COMMON_EXPORT TransferableMessage : public CloneableMessage { - TransferableMessage(); -- TransferableMessage(TransferableMessage&&) noexcept; -- TransferableMessage& operator=(TransferableMessage&&) noexcept; -+ TransferableMessage(TransferableMessage&&); -+ TransferableMessage& operator=(TransferableMessage&&); - ~TransferableMessage(); - - // Any ports being transferred as part of this message. -diff --git a/third_party/blink/public/platform/scheduler/web_scoped_virtual_time_pauser.h b/third_party/blink/public/platform/scheduler/web_scoped_virtual_time_pauser.h -index 75f3ae16..81edd69 100644 ---- a/third_party/blink/public/platform/scheduler/web_scoped_virtual_time_pauser.h -+++ b/third_party/blink/public/platform/scheduler/web_scoped_virtual_time_pauser.h -@@ -42,9 +42,8 @@ - WebScopedVirtualTimePauser(); - ~WebScopedVirtualTimePauser(); - -- WebScopedVirtualTimePauser(WebScopedVirtualTimePauser&& other) noexcept; -- WebScopedVirtualTimePauser& operator=( -- WebScopedVirtualTimePauser&& other) noexcept; -+ WebScopedVirtualTimePauser(WebScopedVirtualTimePauser&& other); -+ WebScopedVirtualTimePauser& operator=(WebScopedVirtualTimePauser&& other); - - WebScopedVirtualTimePauser(const WebScopedVirtualTimePauser&) = delete; - WebScopedVirtualTimePauser& operator=(const WebScopedVirtualTimePauser&) = -diff --git a/third_party/blink/public/platform/web_string.h b/third_party/blink/public/platform/web_string.h -index e4fda4f..ffd1da0 100644 ---- a/third_party/blink/public/platform/web_string.h -+++ b/third_party/blink/public/platform/web_string.h -@@ -102,10 +102,10 @@ - BLINK_PLATFORM_EXPORT WebString(const WebUChar* data, size_t len); - - BLINK_PLATFORM_EXPORT WebString(const WebString&); -- BLINK_PLATFORM_EXPORT WebString(WebString&&) noexcept; -+ BLINK_PLATFORM_EXPORT WebString(WebString&&); - - BLINK_PLATFORM_EXPORT WebString& operator=(const WebString&); -- BLINK_PLATFORM_EXPORT WebString& operator=(WebString&&) noexcept; -+ BLINK_PLATFORM_EXPORT WebString& operator=(WebString&&); - - BLINK_PLATFORM_EXPORT void Reset(); - -diff --git a/third_party/blink/public/web/modules/mediastream/media_stream_constraints_util.h b/third_party/blink/public/web/modules/mediastream/media_stream_constraints_util.h -index 99f47f5..8451b86 100644 ---- a/third_party/blink/public/web/modules/mediastream/media_stream_constraints_util.h -+++ b/third_party/blink/public/web/modules/mediastream/media_stream_constraints_util.h -@@ -73,8 +73,8 @@ - - VideoCaptureSettings(const VideoCaptureSettings& other); - VideoCaptureSettings& operator=(const VideoCaptureSettings& other); -- VideoCaptureSettings(VideoCaptureSettings&& other) noexcept; -- VideoCaptureSettings& operator=(VideoCaptureSettings&& other) noexcept; -+ VideoCaptureSettings(VideoCaptureSettings&& other); -+ VideoCaptureSettings& operator=(VideoCaptureSettings&& other); - ~VideoCaptureSettings(); - - bool HasValue() const { return !failed_constraint_name_; } -@@ -193,8 +193,8 @@ - const AudioProcessingProperties& audio_processing_properties); - AudioCaptureSettings(const AudioCaptureSettings& other); - AudioCaptureSettings& operator=(const AudioCaptureSettings& other); -- AudioCaptureSettings(AudioCaptureSettings&& other) noexcept; -- AudioCaptureSettings& operator=(AudioCaptureSettings&& other) noexcept; -+ AudioCaptureSettings(AudioCaptureSettings&& other); -+ AudioCaptureSettings& operator=(AudioCaptureSettings&& other); - - bool HasValue() const { return !failed_constraint_name_; } - -diff --git a/third_party/blink/public/web/modules/mediastream/media_stream_constraints_util_sets.h b/third_party/blink/public/web/modules/mediastream/media_stream_constraints_util_sets.h -index 199bdeb..c89e6e9 100644 ---- a/third_party/blink/public/web/modules/mediastream/media_stream_constraints_util_sets.h -+++ b/third_party/blink/public/web/modules/mediastream/media_stream_constraints_util_sets.h -@@ -159,8 +159,8 @@ - - DiscreteSet(const DiscreteSet& other) = default; - DiscreteSet& operator=(const DiscreteSet& other) = default; -- DiscreteSet(DiscreteSet&& other) noexcept = default; -- DiscreteSet& operator=(DiscreteSet&& other) noexcept = default; -+ DiscreteSet(DiscreteSet&& other) = default; -+ DiscreteSet& operator=(DiscreteSet&& other) = default; - ~DiscreteSet() = default; - - bool Contains(const T& value) const { -diff --git a/third_party/blink/public/web/modules/mediastream/media_stream_video_source.h b/third_party/blink/public/web/modules/mediastream/media_stream_video_source.h -index 5e50d1b..ed5967f 100644 ---- a/third_party/blink/public/web/modules/mediastream/media_stream_video_source.h -+++ b/third_party/blink/public/web/modules/mediastream/media_stream_video_source.h -@@ -285,8 +285,8 @@ - const VideoTrackFormatCallback& format_callback, - std::unique_ptr adapter_settings, - const ConstraintsCallback& callback); -- PendingTrackInfo(PendingTrackInfo&& other) noexcept; -- PendingTrackInfo& operator=(PendingTrackInfo&& other) noexcept; -+ PendingTrackInfo(PendingTrackInfo&& other); -+ PendingTrackInfo& operator=(PendingTrackInfo&& other); - ~PendingTrackInfo(); - - MediaStreamVideoTrack* track; -diff --git a/third_party/blink/renderer/core/animation/interpolation_value.h b/third_party/blink/renderer/core/animation/interpolation_value.h -index 75c5d35..17ccf02 100644 ---- a/third_party/blink/renderer/core/animation/interpolation_value.h -+++ b/third_party/blink/renderer/core/animation/interpolation_value.h -@@ -27,11 +27,11 @@ - - InterpolationValue(std::nullptr_t) {} - -- InterpolationValue(InterpolationValue&& other) noexcept -+ InterpolationValue(InterpolationValue&& other) - : interpolable_value(std::move(other.interpolable_value)), - non_interpolable_value(std::move(other.non_interpolable_value)) {} - -- void operator=(InterpolationValue&& other) noexcept { -+ void operator=(InterpolationValue&& other) { - interpolable_value = std::move(other.interpolable_value); - non_interpolable_value = std::move(other.non_interpolable_value); - } -diff --git a/third_party/blink/renderer/core/animation/pairwise_interpolation_value.h b/third_party/blink/renderer/core/animation/pairwise_interpolation_value.h -index 39e6c57..87bb431 100644 ---- a/third_party/blink/renderer/core/animation/pairwise_interpolation_value.h -+++ b/third_party/blink/renderer/core/animation/pairwise_interpolation_value.h -@@ -28,7 +28,7 @@ - - PairwiseInterpolationValue(std::nullptr_t) {} - -- PairwiseInterpolationValue(PairwiseInterpolationValue&& other) noexcept -+ PairwiseInterpolationValue(PairwiseInterpolationValue&& other) - : start_interpolable_value(std::move(other.start_interpolable_value)), - end_interpolable_value(std::move(other.end_interpolable_value)), - non_interpolable_value(std::move(other.non_interpolable_value)) {} -diff --git a/third_party/blink/renderer/core/css/css_selector_list.h b/third_party/blink/renderer/core/css/css_selector_list.h -index 4d38b09..51f354b 100644 ---- a/third_party/blink/renderer/core/css/css_selector_list.h -+++ b/third_party/blink/renderer/core/css/css_selector_list.h -@@ -67,8 +67,7 @@ - public: - CSSSelectorList() : selector_array_(nullptr) {} - -- CSSSelectorList(CSSSelectorList&& o) noexcept -- : selector_array_(o.selector_array_) { -+ CSSSelectorList(CSSSelectorList&& o) : selector_array_(o.selector_array_) { - o.selector_array_ = nullptr; - } - -@@ -82,7 +81,7 @@ - bool HasPseudoWhere() const; - bool RequiresExpansion() const; - -- CSSSelectorList& operator=(CSSSelectorList&& o) noexcept { -+ CSSSelectorList& operator=(CSSSelectorList&& o) { - DCHECK(this != &o); - DeleteSelectorsIfNeeded(); - selector_array_ = o.selector_array_; -diff --git a/third_party/blink/renderer/core/display_lock/display_lock_context.cc b/third_party/blink/renderer/core/display_lock/display_lock_context.cc -index 0e6b6cb..79f281a 100644 ---- a/third_party/blink/renderer/core/display_lock/display_lock_context.cc -+++ b/third_party/blink/renderer/core/display_lock/display_lock_context.cc -@@ -1033,7 +1033,7 @@ - : context_(context) {} - - DisplayLockContext::ScopedForcedUpdate::ScopedForcedUpdate( -- ScopedForcedUpdate&& other) noexcept -+ ScopedForcedUpdate&& other) - : context_(other.context_) { - other.context_ = nullptr; - } -diff --git a/third_party/blink/renderer/core/display_lock/display_lock_context.h b/third_party/blink/renderer/core/display_lock/display_lock_context.h -index 1a38b2af..f890b432 100644 ---- a/third_party/blink/renderer/core/display_lock/display_lock_context.h -+++ b/third_party/blink/renderer/core/display_lock/display_lock_context.h -@@ -76,7 +76,7 @@ - DISALLOW_NEW(); - - public: -- ScopedForcedUpdate(ScopedForcedUpdate&&) noexcept; -+ ScopedForcedUpdate(ScopedForcedUpdate&&); - ~ScopedForcedUpdate(); - - private: -diff --git a/third_party/blink/renderer/core/editing/layout_selection.cc b/third_party/blink/renderer/core/editing/layout_selection.cc -index 00040d2..73cfe0f 100644 ---- a/third_party/blink/renderer/core/editing/layout_selection.cc -+++ b/third_party/blink/renderer/core/editing/layout_selection.cc -@@ -178,7 +178,7 @@ - public: - OldSelectedNodes() - : paint_range(MakeGarbageCollected()) {} -- OldSelectedNodes(OldSelectedNodes&& other) noexcept { -+ OldSelectedNodes(OldSelectedNodes&& other) { - paint_range = other.paint_range; - selected_map = std::move(other.selected_map); - } -@@ -205,8 +205,7 @@ - HeapHashSet>&& passed_selected_objects) - : paint_range(passed_paint_range), - selected_objects(std::move(passed_selected_objects)) {} -- NewPaintRangeAndSelectedNodes( -- NewPaintRangeAndSelectedNodes&& other) noexcept { -+ NewPaintRangeAndSelectedNodes(NewPaintRangeAndSelectedNodes&& other) { - paint_range = other.paint_range; - selected_objects = std::move(other.selected_objects); - } -diff --git a/third_party/blink/renderer/core/frame/local_frame_ukm_aggregator.cc b/third_party/blink/renderer/core/frame/local_frame_ukm_aggregator.cc -index f0ac3c4..81f47ab 100644 ---- a/third_party/blink/renderer/core/frame/local_frame_ukm_aggregator.cc -+++ b/third_party/blink/renderer/core/frame/local_frame_ukm_aggregator.cc -@@ -24,7 +24,7 @@ - start_time_(clock_->NowTicks()) {} - - LocalFrameUkmAggregator::ScopedUkmHierarchicalTimer::ScopedUkmHierarchicalTimer( -- ScopedUkmHierarchicalTimer&& other) noexcept -+ ScopedUkmHierarchicalTimer&& other) - : aggregator_(other.aggregator_), - metric_index_(other.metric_index_), - clock_(other.clock_), -diff --git a/third_party/blink/renderer/core/frame/local_frame_ukm_aggregator.h b/third_party/blink/renderer/core/frame/local_frame_ukm_aggregator.h -index 44c3f87..dc06091 100644 ---- a/third_party/blink/renderer/core/frame/local_frame_ukm_aggregator.h -+++ b/third_party/blink/renderer/core/frame/local_frame_ukm_aggregator.h -@@ -195,7 +195,7 @@ - STACK_ALLOCATED(); - - public: -- ScopedUkmHierarchicalTimer(ScopedUkmHierarchicalTimer&&) noexcept; -+ ScopedUkmHierarchicalTimer(ScopedUkmHierarchicalTimer&&); - ~ScopedUkmHierarchicalTimer(); - - private: -diff --git a/third_party/blink/renderer/core/layout/ng/inline/ng_line_box_fragment_builder.h b/third_party/blink/renderer/core/layout/ng/inline/ng_line_box_fragment_builder.h -index 2af19ca..498e42e 100644 ---- a/third_party/blink/renderer/core/layout/ng/inline/ng_line_box_fragment_builder.h -+++ b/third_party/blink/renderer/core/layout/ng/inline/ng_line_box_fragment_builder.h -@@ -181,7 +181,7 @@ - - public: - ChildList() = default; -- void operator=(ChildList&& other) noexcept { -+ void operator=(ChildList&& other) { - children_ = std::move(other.children_); - } - -diff --git a/third_party/blink/renderer/core/layout/ng/ng_constraint_space.h b/third_party/blink/renderer/core/layout/ng/ng_constraint_space.h -index 8f77b90..833b0d2 100644 ---- a/third_party/blink/renderer/core/layout/ng/ng_constraint_space.h -+++ b/third_party/blink/renderer/core/layout/ng/ng_constraint_space.h -@@ -86,7 +86,7 @@ - else - bfc_offset_ = other.bfc_offset_; - } -- NGConstraintSpace(NGConstraintSpace&& other) noexcept -+ NGConstraintSpace(NGConstraintSpace&& other) - : available_size_(other.available_size_), - exclusion_space_(std::move(other.exclusion_space_)), - bitfields_(other.bitfields_) { -@@ -110,7 +110,7 @@ - bitfields_ = other.bitfields_; - return *this; - } -- NGConstraintSpace& operator=(NGConstraintSpace&& other) noexcept { -+ NGConstraintSpace& operator=(NGConstraintSpace&& other) { - available_size_ = other.available_size_; - if (HasRareData()) - delete rare_data_; -diff --git a/third_party/blink/renderer/core/messaging/blink_cloneable_message.cc b/third_party/blink/renderer/core/messaging/blink_cloneable_message.cc -index b6c8768..7423930 100644 ---- a/third_party/blink/renderer/core/messaging/blink_cloneable_message.cc -+++ b/third_party/blink/renderer/core/messaging/blink_cloneable_message.cc -@@ -9,9 +9,8 @@ - BlinkCloneableMessage::BlinkCloneableMessage() = default; - BlinkCloneableMessage::~BlinkCloneableMessage() = default; - --BlinkCloneableMessage::BlinkCloneableMessage(BlinkCloneableMessage&&) noexcept = -- default; -+BlinkCloneableMessage::BlinkCloneableMessage(BlinkCloneableMessage&&) = default; - BlinkCloneableMessage& BlinkCloneableMessage::operator=( -- BlinkCloneableMessage&&) noexcept = default; -+ BlinkCloneableMessage&&) = default; - - } // namespace blink -diff --git a/third_party/blink/renderer/core/messaging/blink_cloneable_message.h b/third_party/blink/renderer/core/messaging/blink_cloneable_message.h -index 337b0f8..a51e888 100644 ---- a/third_party/blink/renderer/core/messaging/blink_cloneable_message.h -+++ b/third_party/blink/renderer/core/messaging/blink_cloneable_message.h -@@ -21,8 +21,8 @@ - BlinkCloneableMessage(); - ~BlinkCloneableMessage(); - -- BlinkCloneableMessage(BlinkCloneableMessage&&) noexcept; -- BlinkCloneableMessage& operator=(BlinkCloneableMessage&&) noexcept; -+ BlinkCloneableMessage(BlinkCloneableMessage&&); -+ BlinkCloneableMessage& operator=(BlinkCloneableMessage&&); - - scoped_refptr message; - v8_inspector::V8StackTraceId sender_stack_trace_id; -diff --git a/third_party/blink/renderer/core/messaging/blink_transferable_message.cc b/third_party/blink/renderer/core/messaging/blink_transferable_message.cc -index 909ddb0..b5cdfda 100644 ---- a/third_party/blink/renderer/core/messaging/blink_transferable_message.cc -+++ b/third_party/blink/renderer/core/messaging/blink_transferable_message.cc -@@ -16,10 +16,10 @@ - BlinkTransferableMessage::BlinkTransferableMessage() = default; - BlinkTransferableMessage::~BlinkTransferableMessage() = default; - --BlinkTransferableMessage::BlinkTransferableMessage( -- BlinkTransferableMessage&&) noexcept = default; -+BlinkTransferableMessage::BlinkTransferableMessage(BlinkTransferableMessage&&) = -+ default; - BlinkTransferableMessage& BlinkTransferableMessage::operator=( -- BlinkTransferableMessage&&) noexcept = default; -+ BlinkTransferableMessage&&) = default; - - scoped_refptr ToStaticBitmapImage( - const SkBitmap& sk_bitmap) { -diff --git a/third_party/blink/renderer/core/messaging/blink_transferable_message.h b/third_party/blink/renderer/core/messaging/blink_transferable_message.h -index edf4fab..3957bed 100644 ---- a/third_party/blink/renderer/core/messaging/blink_transferable_message.h -+++ b/third_party/blink/renderer/core/messaging/blink_transferable_message.h -@@ -24,8 +24,8 @@ - BlinkTransferableMessage(); - ~BlinkTransferableMessage(); - -- BlinkTransferableMessage(BlinkTransferableMessage&&) noexcept; -- BlinkTransferableMessage& operator=(BlinkTransferableMessage&&) noexcept; -+ BlinkTransferableMessage(BlinkTransferableMessage&&); -+ BlinkTransferableMessage& operator=(BlinkTransferableMessage&&); - - Vector ports; - -diff --git a/third_party/blink/renderer/modules/imagecapture/image_capture_frame_grabber.h b/third_party/blink/renderer/modules/imagecapture/image_capture_frame_grabber.h -index 85b46e1..f050a85 100644 ---- a/third_party/blink/renderer/modules/imagecapture/image_capture_frame_grabber.h -+++ b/third_party/blink/renderer/modules/imagecapture/image_capture_frame_grabber.h -@@ -92,10 +92,10 @@ - std::move(destruction_callback_).Run(std::move(callbacks_)); - } - -- ScopedWebCallbacks(ScopedWebCallbacks&& other) noexcept = default; -+ ScopedWebCallbacks(ScopedWebCallbacks&& other) = default; - ScopedWebCallbacks(const ScopedWebCallbacks& other) = delete; - -- ScopedWebCallbacks& operator=(ScopedWebCallbacks&& other) noexcept = default; -+ ScopedWebCallbacks& operator=(ScopedWebCallbacks&& other) = default; - ScopedWebCallbacks& operator=(const ScopedWebCallbacks& other) = delete; - - std::unique_ptr PassCallbacks() { -diff --git a/third_party/blink/renderer/modules/indexeddb/idb_request.h b/third_party/blink/renderer/modules/indexeddb/idb_request.h -index f85b864..d3f1132 100644 ---- a/third_party/blink/renderer/modules/indexeddb/idb_request.h -+++ b/third_party/blink/renderer/modules/indexeddb/idb_request.h -@@ -110,13 +110,13 @@ - ~AsyncTraceState(); - - // Used to transfer the trace end event state to an IDBRequest. -- AsyncTraceState(AsyncTraceState&& other) noexcept { -+ AsyncTraceState(AsyncTraceState&& other) { - DCHECK(IsEmpty()); - this->trace_event_name_ = other.trace_event_name_; - this->id_ = other.id_; - other.trace_event_name_ = nullptr; - } -- AsyncTraceState& operator=(AsyncTraceState&& rhs) noexcept { -+ AsyncTraceState& operator=(AsyncTraceState&& rhs) { - DCHECK(IsEmpty()); - this->trace_event_name_ = rhs.trace_event_name_; - this->id_ = rhs.id_; -diff --git a/third_party/blink/renderer/modules/indexeddb/idb_request_test.cc b/third_party/blink/renderer/modules/indexeddb/idb_request_test.cc -index 84de726..2d3d4de5 100644 ---- a/third_party/blink/renderer/modules/indexeddb/idb_request_test.cc -+++ b/third_party/blink/renderer/modules/indexeddb/idb_request_test.cc -@@ -434,10 +434,9 @@ - class AsyncTraceStateForTesting : public IDBRequest::AsyncTraceState { - public: - AsyncTraceStateForTesting() : IDBRequest::AsyncTraceState() {} -- AsyncTraceStateForTesting(AsyncTraceStateForTesting&& other) noexcept -+ AsyncTraceStateForTesting(AsyncTraceStateForTesting&& other) - : IDBRequest::AsyncTraceState(std::move(other)) {} -- AsyncTraceStateForTesting& operator=( -- AsyncTraceStateForTesting&& rhs) noexcept { -+ AsyncTraceStateForTesting& operator=(AsyncTraceStateForTesting&& rhs) { - AsyncTraceState::operator=(std::move(rhs)); - return *this; - } -diff --git a/third_party/blink/renderer/modules/mediastream/media_stream_constraints_util.cc b/third_party/blink/renderer/modules/mediastream/media_stream_constraints_util.cc -index 24499bd..3bf00e9 100644 ---- a/third_party/blink/renderer/modules/mediastream/media_stream_constraints_util.cc -+++ b/third_party/blink/renderer/modules/mediastream/media_stream_constraints_util.cc -@@ -134,13 +134,13 @@ - - VideoCaptureSettings::VideoCaptureSettings(const VideoCaptureSettings& other) = - default; --VideoCaptureSettings::VideoCaptureSettings( -- VideoCaptureSettings&& other) noexcept = default; -+VideoCaptureSettings::VideoCaptureSettings(VideoCaptureSettings&& other) = -+ default; - VideoCaptureSettings::~VideoCaptureSettings() = default; - VideoCaptureSettings& VideoCaptureSettings::operator=( - const VideoCaptureSettings& other) = default; - VideoCaptureSettings& VideoCaptureSettings::operator=( -- VideoCaptureSettings&& other) noexcept = default; -+ VideoCaptureSettings&& other) = default; - - AudioCaptureSettings::AudioCaptureSettings() : AudioCaptureSettings("") {} - -@@ -166,10 +166,10 @@ - default; - AudioCaptureSettings& AudioCaptureSettings::operator=( - const AudioCaptureSettings& other) = default; --AudioCaptureSettings::AudioCaptureSettings( -- AudioCaptureSettings&& other) noexcept = default; -+AudioCaptureSettings::AudioCaptureSettings(AudioCaptureSettings&& other) = -+ default; - AudioCaptureSettings& AudioCaptureSettings::operator=( -- AudioCaptureSettings&& other) noexcept = default; -+ AudioCaptureSettings&& other) = default; - - bool GetConstraintValueAsBoolean( - const WebMediaConstraints& constraints, -diff --git a/third_party/blink/renderer/modules/mediastream/media_stream_constraints_util_video_device.cc b/third_party/blink/renderer/modules/mediastream/media_stream_constraints_util_video_device.cc -index 96992217..67c8bab 100644 ---- a/third_party/blink/renderer/modules/mediastream/media_stream_constraints_util_video_device.cc -+++ b/third_party/blink/renderer/modules/mediastream/media_stream_constraints_util_video_device.cc -@@ -529,9 +529,9 @@ - facing_mode(facing_mode) {} - - VideoInputDeviceCapabilities::VideoInputDeviceCapabilities( -- VideoInputDeviceCapabilities&& other) noexcept = default; -+ VideoInputDeviceCapabilities&& other) = default; - VideoInputDeviceCapabilities& VideoInputDeviceCapabilities::operator=( -- VideoInputDeviceCapabilities&& other) noexcept = default; -+ VideoInputDeviceCapabilities&& other) = default; - - VideoInputDeviceCapabilities::~VideoInputDeviceCapabilities() = default; - -@@ -557,10 +557,10 @@ - - VideoDeviceCaptureCapabilities::VideoDeviceCaptureCapabilities() = default; - VideoDeviceCaptureCapabilities::VideoDeviceCaptureCapabilities( -- VideoDeviceCaptureCapabilities&& other) noexcept = default; -+ VideoDeviceCaptureCapabilities&& other) = default; - VideoDeviceCaptureCapabilities::~VideoDeviceCaptureCapabilities() = default; - VideoDeviceCaptureCapabilities& VideoDeviceCaptureCapabilities::operator=( -- VideoDeviceCaptureCapabilities&& other) noexcept = default; -+ VideoDeviceCaptureCapabilities&& other) = default; - - VideoCaptureSettings SelectSettingsVideoDeviceCapture( - const VideoDeviceCaptureCapabilities& capabilities, -diff --git a/third_party/blink/renderer/modules/mediastream/media_stream_constraints_util_video_device.h b/third_party/blink/renderer/modules/mediastream/media_stream_constraints_util_video_device.h -index 66ae103..94d8ed9 100644 ---- a/third_party/blink/renderer/modules/mediastream/media_stream_constraints_util_video_device.h -+++ b/third_party/blink/renderer/modules/mediastream/media_stream_constraints_util_video_device.h -@@ -34,9 +34,8 @@ - Vector formats, - media::VideoFacingMode facing_mode); - VideoInputDeviceCapabilities(); -- VideoInputDeviceCapabilities(VideoInputDeviceCapabilities&& other) noexcept; -- VideoInputDeviceCapabilities& operator=( -- VideoInputDeviceCapabilities&& other) noexcept; -+ VideoInputDeviceCapabilities(VideoInputDeviceCapabilities&& other); -+ VideoInputDeviceCapabilities& operator=(VideoInputDeviceCapabilities&& other); - ~VideoInputDeviceCapabilities(); - - String device_id; -@@ -47,11 +46,10 @@ - - struct MODULES_EXPORT VideoDeviceCaptureCapabilities { - VideoDeviceCaptureCapabilities(); -- VideoDeviceCaptureCapabilities( -- VideoDeviceCaptureCapabilities&& other) noexcept; -+ VideoDeviceCaptureCapabilities(VideoDeviceCaptureCapabilities&& other); - ~VideoDeviceCaptureCapabilities(); - VideoDeviceCaptureCapabilities& operator=( -- VideoDeviceCaptureCapabilities&& other) noexcept; -+ VideoDeviceCaptureCapabilities&& other); - - // Each capabilities field is independent of each other. - // TODO(crbug.com/704136): Replace VideoInputDeviceCapabilities in the -diff --git a/third_party/blink/renderer/modules/mediastream/media_stream_video_source.cc b/third_party/blink/renderer/modules/mediastream/media_stream_video_source.cc -index 7651e47..99759c1 100644 ---- a/third_party/blink/renderer/modules/mediastream/media_stream_video_source.cc -+++ b/third_party/blink/renderer/modules/mediastream/media_stream_video_source.cc -@@ -461,10 +461,10 @@ - callback(callback) {} - - MediaStreamVideoSource::PendingTrackInfo::PendingTrackInfo( -- PendingTrackInfo&& other) noexcept = default; -+ PendingTrackInfo&& other) = default; - MediaStreamVideoSource::PendingTrackInfo& - MediaStreamVideoSource::PendingTrackInfo::operator=( -- MediaStreamVideoSource::PendingTrackInfo&& other) noexcept = default; -+ MediaStreamVideoSource::PendingTrackInfo&& other) = default; - - MediaStreamVideoSource::PendingTrackInfo::~PendingTrackInfo() {} - -diff --git a/third_party/blink/renderer/platform/bindings/dom_data_store.h b/third_party/blink/renderer/platform/bindings/dom_data_store.h -index d660b67..0660dd18 100644 ---- a/third_party/blink/renderer/platform/bindings/dom_data_store.h -+++ b/third_party/blink/renderer/platform/bindings/dom_data_store.h -@@ -230,12 +230,11 @@ - : TraceWrapperV8Reference(isolate, handle) {} - - // Move support without write barrier. -- DOMWorldWrapperReference(DOMWorldWrapperReference&& other) noexcept -+ DOMWorldWrapperReference(DOMWorldWrapperReference&& other) - : TraceWrapperV8Reference() { - handle_ = std::move(other.handle_); - } -- DOMWorldWrapperReference& operator=( -- DOMWorldWrapperReference&& rhs) noexcept { -+ DOMWorldWrapperReference& operator=(DOMWorldWrapperReference&& rhs) { - handle_ = std::move(rhs.handle_); - return *this; - } -diff --git a/third_party/blink/renderer/platform/exported/web_string.cc b/third_party/blink/renderer/platform/exported/web_string.cc -index 71d4c07..fbe4828 100644 ---- a/third_party/blink/renderer/platform/exported/web_string.cc -+++ b/third_party/blink/renderer/platform/exported/web_string.cc -@@ -51,9 +51,9 @@ - WebString::~WebString() = default; - WebString::WebString() = default; - WebString::WebString(const WebString&) = default; --WebString::WebString(WebString&&) noexcept = default; -+WebString::WebString(WebString&&) = default; - WebString& WebString::operator=(const WebString&) = default; --WebString& WebString::operator=(WebString&&) noexcept = default; -+WebString& WebString::operator=(WebString&&) = default; - - WebString::WebString(const WebUChar* data, size_t len) - : impl_(StringImpl::Create8BitIfPossible(data, len)) {} -diff --git a/third_party/blink/renderer/platform/graphics/contiguous_container.cc b/third_party/blink/renderer/platform/graphics/contiguous_container.cc -index fd01c00..19cb6f2 100644 ---- a/third_party/blink/renderer/platform/graphics/contiguous_container.cc -+++ b/third_party/blink/renderer/platform/graphics/contiguous_container.cc -@@ -69,7 +69,7 @@ - : end_index_(0), max_object_size_(max_object_size) {} - - ContiguousContainerBase::ContiguousContainerBase( -- ContiguousContainerBase&& source) noexcept -+ ContiguousContainerBase&& source) - : ContiguousContainerBase(source.max_object_size_) { - Swap(source); - } -@@ -77,7 +77,7 @@ - ContiguousContainerBase::~ContiguousContainerBase() = default; - - ContiguousContainerBase& ContiguousContainerBase::operator=( -- ContiguousContainerBase&& source) noexcept { -+ ContiguousContainerBase&& source) { - Swap(source); - return *this; - } -diff --git a/third_party/blink/renderer/platform/graphics/contiguous_container.h b/third_party/blink/renderer/platform/graphics/contiguous_container.h -index 867e59c..3eee558 100644 ---- a/third_party/blink/renderer/platform/graphics/contiguous_container.h -+++ b/third_party/blink/renderer/platform/graphics/contiguous_container.h -@@ -42,10 +42,10 @@ - - protected: - explicit ContiguousContainerBase(size_t max_object_size); -- ContiguousContainerBase(ContiguousContainerBase&&) noexcept; -+ ContiguousContainerBase(ContiguousContainerBase&&); - ~ContiguousContainerBase(); - -- ContiguousContainerBase& operator=(ContiguousContainerBase&&) noexcept; -+ ContiguousContainerBase& operator=(ContiguousContainerBase&&); - - size_t size() const { return elements_.size(); } - bool IsEmpty() const { return !size(); } -@@ -147,7 +147,7 @@ - WTF_HEAP_PROFILER_TYPE_NAME(BaseElementType)); - } - -- ContiguousContainer(ContiguousContainer&& source) noexcept -+ ContiguousContainer(ContiguousContainer&& source) - : ContiguousContainerBase(std::move(source)) {} - - ~ContiguousContainer() { -@@ -157,7 +157,7 @@ - } - } - -- ContiguousContainer& operator=(ContiguousContainer&& source) noexcept { -+ ContiguousContainer& operator=(ContiguousContainer&& source) { - // Must clear in the derived class to ensure that element destructors - // care called. - Clear(); -diff --git a/third_party/blink/renderer/platform/graphics/gpu/image_layer_bridge.cc b/third_party/blink/renderer/platform/graphics/gpu/image_layer_bridge.cc -index ad10c54..4edbf7f 100644 ---- a/third_party/blink/renderer/platform/graphics/gpu/image_layer_bridge.cc -+++ b/third_party/blink/renderer/platform/graphics/gpu/image_layer_bridge.cc -@@ -247,9 +247,9 @@ - } - - ImageLayerBridge::RegisteredBitmap::RegisteredBitmap() = default; --ImageLayerBridge::RegisteredBitmap::RegisteredBitmap( -- RegisteredBitmap&& other) noexcept = default; -+ImageLayerBridge::RegisteredBitmap::RegisteredBitmap(RegisteredBitmap&& other) = -+ default; - ImageLayerBridge::RegisteredBitmap& ImageLayerBridge::RegisteredBitmap:: --operator=(RegisteredBitmap&& other) noexcept = default; -+operator=(RegisteredBitmap&& other) = default; - - } // namespace blink -diff --git a/third_party/blink/renderer/platform/graphics/gpu/image_layer_bridge.h b/third_party/blink/renderer/platform/graphics/gpu/image_layer_bridge.h -index bea81dfb..b6879f9 100644 ---- a/third_party/blink/renderer/platform/graphics/gpu/image_layer_bridge.h -+++ b/third_party/blink/renderer/platform/graphics/gpu/image_layer_bridge.h -@@ -65,8 +65,8 @@ - // only with software compositing. - struct RegisteredBitmap { - RegisteredBitmap(); -- RegisteredBitmap(RegisteredBitmap&& other) noexcept; -- RegisteredBitmap& operator=(RegisteredBitmap&& other) noexcept; -+ RegisteredBitmap(RegisteredBitmap&& other); -+ RegisteredBitmap& operator=(RegisteredBitmap&& other); - - scoped_refptr bitmap; - cc::SharedBitmapIdRegistration registration; -diff --git a/third_party/blink/renderer/platform/graphics/paint/display_item_list.h b/third_party/blink/renderer/platform/graphics/paint/display_item_list.h -index cd3ed2f..9ee2571 100644 ---- a/third_party/blink/renderer/platform/graphics/paint/display_item_list.h -+++ b/third_party/blink/renderer/platform/graphics/paint/display_item_list.h -@@ -28,10 +28,10 @@ - public: - DisplayItemList(size_t initial_size_bytes) - : ContiguousContainer(kMaximumDisplayItemSize, initial_size_bytes) {} -- DisplayItemList(DisplayItemList&& source) noexcept -+ DisplayItemList(DisplayItemList&& source) - : ContiguousContainer(std::move(source)) {} - -- DisplayItemList& operator=(DisplayItemList&& source) noexcept { -+ DisplayItemList& operator=(DisplayItemList&& source) { - ContiguousContainer::operator=(std::move(source)); - return *this; - } -diff --git a/third_party/blink/renderer/platform/heap/heap_test.cc b/third_party/blink/renderer/platform/heap/heap_test.cc -index dad0ca0..e94cbc95 100644 ---- a/third_party/blink/renderer/platform/heap/heap_test.cc -+++ b/third_party/blink/renderer/platform/heap/heap_test.cc -@@ -145,7 +145,7 @@ - } - KeyWithCopyingMoveConstructor(const KeyWithCopyingMoveConstructor&) = default; - // The move constructor delegates to the copy constructor intentionally. -- KeyWithCopyingMoveConstructor(KeyWithCopyingMoveConstructor&& x) noexcept -+ KeyWithCopyingMoveConstructor(KeyWithCopyingMoveConstructor&& x) - : KeyWithCopyingMoveConstructor(x) {} - KeyWithCopyingMoveConstructor& operator=( - const KeyWithCopyingMoveConstructor&) = default; -diff --git a/third_party/blink/renderer/platform/image-decoders/segment_stream.cc b/third_party/blink/renderer/platform/image-decoders/segment_stream.cc -index 4024f9c..5a98701 100644 ---- a/third_party/blink/renderer/platform/image-decoders/segment_stream.cc -+++ b/third_party/blink/renderer/platform/image-decoders/segment_stream.cc -@@ -10,10 +10,10 @@ - - SegmentStream::SegmentStream() = default; - --SegmentStream::SegmentStream(SegmentStream&& rhs) noexcept -+SegmentStream::SegmentStream(SegmentStream&& rhs) - : reader_(std::move(rhs.reader_)), position_(rhs.position_) {} - --SegmentStream& SegmentStream::operator=(SegmentStream&& rhs) noexcept { -+SegmentStream& SegmentStream::operator=(SegmentStream&& rhs) { - reader_ = std::move(rhs.reader_); - position_ = rhs.position_; - -diff --git a/third_party/blink/renderer/platform/image-decoders/segment_stream.h b/third_party/blink/renderer/platform/image-decoders/segment_stream.h -index f49f551..fa1ccf2 100644 ---- a/third_party/blink/renderer/platform/image-decoders/segment_stream.h -+++ b/third_party/blink/renderer/platform/image-decoders/segment_stream.h -@@ -19,8 +19,8 @@ - SegmentStream(); - SegmentStream(const SegmentStream&) = delete; - SegmentStream& operator=(const SegmentStream&) = delete; -- SegmentStream(SegmentStream&&) noexcept; -- SegmentStream& operator=(SegmentStream&&) noexcept; -+ SegmentStream(SegmentStream&&); -+ SegmentStream& operator=(SegmentStream&&); - - ~SegmentStream() override; - -diff --git a/third_party/blink/renderer/platform/mojo/revocable_interface_ptr.h b/third_party/blink/renderer/platform/mojo/revocable_interface_ptr.h -index 555be28..34bad3f 100644 ---- a/third_party/blink/renderer/platform/mojo/revocable_interface_ptr.h -+++ b/third_party/blink/renderer/platform/mojo/revocable_interface_ptr.h -@@ -41,7 +41,7 @@ - RevocableInterfacePtr(std::nullptr_t) {} - - // Takes over the binding of another RevocableInterfacePtr. -- RevocableInterfacePtr(RevocableInterfacePtr&& other) noexcept { -+ RevocableInterfacePtr(RevocableInterfacePtr&& other) { - interface_ptr_ = std::move(other.interface_ptr_); - SetInvalidator(other.invalidator_.get()); - // Reset the other interface ptr to remove it as an observer of the -@@ -58,7 +58,7 @@ - - // Takes over the binding of another RevocableInterfacePtr, and closes any - // message pipe already bound to this pointer. -- RevocableInterfacePtr& operator=(RevocableInterfacePtr&& other) noexcept { -+ RevocableInterfacePtr& operator=(RevocableInterfacePtr&& other) { - reset(); - interface_ptr_ = std::move(other.interface_ptr_); - SetInvalidator(other.invalidator_.get()); -diff --git a/third_party/blink/renderer/platform/network/encoded_form_data.cc b/third_party/blink/renderer/platform/network/encoded_form_data.cc -index bc4ec14..1b660e6 100644 ---- a/third_party/blink/renderer/platform/network/encoded_form_data.cc -+++ b/third_party/blink/renderer/platform/network/encoded_form_data.cc -@@ -61,11 +61,10 @@ - : type_(kDataPipe), data_pipe_getter_(std::move(data_pipe_getter)) {} - - FormDataElement::FormDataElement(const FormDataElement&) = default; --FormDataElement::FormDataElement(FormDataElement&&) noexcept = default; -+FormDataElement::FormDataElement(FormDataElement&&) = default; - FormDataElement::~FormDataElement() = default; - FormDataElement& FormDataElement::operator=(const FormDataElement&) = default; --FormDataElement& FormDataElement::operator=(FormDataElement&&) noexcept = -- default; -+FormDataElement& FormDataElement::operator=(FormDataElement&&) = default; - - bool operator==(const FormDataElement& a, const FormDataElement& b) { - if (&a == &b) -diff --git a/third_party/blink/renderer/platform/network/encoded_form_data.h b/third_party/blink/renderer/platform/network/encoded_form_data.h -index 48f84c8..865f664 100644 ---- a/third_party/blink/renderer/platform/network/encoded_form_data.h -+++ b/third_party/blink/renderer/platform/network/encoded_form_data.h -@@ -61,12 +61,12 @@ - explicit FormDataElement(scoped_refptr); - - FormDataElement(const FormDataElement&); -- FormDataElement(FormDataElement&&) noexcept; -+ FormDataElement(FormDataElement&&); - - ~FormDataElement(); - - FormDataElement& operator=(const FormDataElement&); -- FormDataElement& operator=(FormDataElement&&) noexcept; -+ FormDataElement& operator=(FormDataElement&&); - - bool IsSafeToSendToAnotherThread() const; - -diff --git a/third_party/blink/renderer/platform/scheduler/common/frame_or_worker_scheduler.cc b/third_party/blink/renderer/platform/scheduler/common/frame_or_worker_scheduler.cc -index ebe99ff..e971856 100644 ---- a/third_party/blink/renderer/platform/scheduler/common/frame_or_worker_scheduler.cc -+++ b/third_party/blink/renderer/platform/scheduler/common/frame_or_worker_scheduler.cc -@@ -28,15 +28,14 @@ - } - - FrameOrWorkerScheduler::SchedulingAffectingFeatureHandle:: -- SchedulingAffectingFeatureHandle( -- SchedulingAffectingFeatureHandle&& other) noexcept -+ SchedulingAffectingFeatureHandle(SchedulingAffectingFeatureHandle&& other) - : feature_(other.feature_), scheduler_(std::move(other.scheduler_)) { - other.scheduler_ = nullptr; - } - - FrameOrWorkerScheduler::SchedulingAffectingFeatureHandle& - FrameOrWorkerScheduler::SchedulingAffectingFeatureHandle::operator=( -- SchedulingAffectingFeatureHandle&& other) noexcept { -+ SchedulingAffectingFeatureHandle&& other) { - feature_ = other.feature_; - policy_ = std::move(other.policy_); - scheduler_ = std::move(other.scheduler_); -diff --git a/third_party/blink/renderer/platform/scheduler/common/post_cancellable_task.cc b/third_party/blink/renderer/platform/scheduler/common/post_cancellable_task.cc -index 2c84d70..fad56ee1 100644 ---- a/third_party/blink/renderer/platform/scheduler/common/post_cancellable_task.cc -+++ b/third_party/blink/renderer/platform/scheduler/common/post_cancellable_task.cc -@@ -103,9 +103,9 @@ - Cancel(); - } - --TaskHandle::TaskHandle(TaskHandle&&) noexcept = default; -+TaskHandle::TaskHandle(TaskHandle&&) = default; - --TaskHandle& TaskHandle::operator=(TaskHandle&& other) noexcept { -+TaskHandle& TaskHandle::operator=(TaskHandle&& other) { - TaskHandle tmp(std::move(other)); - runner_.swap(tmp.runner_); - return *this; -diff --git a/third_party/blink/renderer/platform/scheduler/main_thread/web_scoped_virtual_time_pauser.cc b/third_party/blink/renderer/platform/scheduler/main_thread/web_scoped_virtual_time_pauser.cc -index f55730a..b64ec9d 100644 ---- a/third_party/blink/renderer/platform/scheduler/main_thread/web_scoped_virtual_time_pauser.cc -+++ b/third_party/blink/renderer/platform/scheduler/main_thread/web_scoped_virtual_time_pauser.cc -@@ -28,7 +28,7 @@ - } - - WebScopedVirtualTimePauser::WebScopedVirtualTimePauser( -- WebScopedVirtualTimePauser&& other) noexcept { -+ WebScopedVirtualTimePauser&& other) { - virtual_time_when_paused_ = other.virtual_time_when_paused_; - paused_ = other.paused_; - duration_ = other.duration_; -@@ -39,7 +39,7 @@ - } - - WebScopedVirtualTimePauser& WebScopedVirtualTimePauser::operator=( -- WebScopedVirtualTimePauser&& other) noexcept { -+ WebScopedVirtualTimePauser&& other) { - if (scheduler_ && paused_) - DecrementVirtualTimePauseCount(); - virtual_time_when_paused_ = other.virtual_time_when_paused_; -diff --git a/third_party/blink/renderer/platform/scheduler/public/frame_or_worker_scheduler.h b/third_party/blink/renderer/platform/scheduler/public/frame_or_worker_scheduler.h -index 56915ee..3fdb8cf 100644 ---- a/third_party/blink/renderer/platform/scheduler/public/frame_or_worker_scheduler.h -+++ b/third_party/blink/renderer/platform/scheduler/public/frame_or_worker_scheduler.h -@@ -57,12 +57,11 @@ - - public: - SchedulingAffectingFeatureHandle() = default; -- SchedulingAffectingFeatureHandle( -- SchedulingAffectingFeatureHandle&&) noexcept; -+ SchedulingAffectingFeatureHandle(SchedulingAffectingFeatureHandle&&); - inline ~SchedulingAffectingFeatureHandle() { reset(); } - - SchedulingAffectingFeatureHandle& operator=( -- SchedulingAffectingFeatureHandle&&) noexcept; -+ SchedulingAffectingFeatureHandle&&); - - inline void reset() { - if (scheduler_) -diff --git a/third_party/blink/renderer/platform/scheduler/public/post_cancellable_task.h b/third_party/blink/renderer/platform/scheduler/public/post_cancellable_task.h -index 38cbf63..ae66c73 100644 ---- a/third_party/blink/renderer/platform/scheduler/public/post_cancellable_task.h -+++ b/third_party/blink/renderer/platform/scheduler/public/post_cancellable_task.h -@@ -28,8 +28,8 @@ - TaskHandle(); - ~TaskHandle(); - -- TaskHandle(TaskHandle&&) noexcept; -- TaskHandle& operator=(TaskHandle&&) noexcept; -+ TaskHandle(TaskHandle&&); -+ TaskHandle& operator=(TaskHandle&&); - - // Returns true if the task will run later. Returns false if the task is - // cancelled or the task is run already. -diff --git a/third_party/blink/renderer/platform/weborigin/origin_access_entry.cc b/third_party/blink/renderer/platform/weborigin/origin_access_entry.cc -index 2e9a9d1..c9d777e7 100644 ---- a/third_party/blink/renderer/platform/weborigin/origin_access_entry.cc -+++ b/third_party/blink/renderer/platform/weborigin/origin_access_entry.cc -@@ -59,8 +59,7 @@ - network::mojom::CorsPortMatchMode::kAllowOnlySpecifiedPort, - priority) {} - --OriginAccessEntry::OriginAccessEntry(OriginAccessEntry&& from) noexcept = -- default; -+OriginAccessEntry::OriginAccessEntry(OriginAccessEntry&& from) = default; - - network::cors::OriginAccessEntry::MatchResult OriginAccessEntry::MatchesOrigin( - const SecurityOrigin& origin) const { -diff --git a/third_party/blink/renderer/platform/weborigin/origin_access_entry.h b/third_party/blink/renderer/platform/weborigin/origin_access_entry.h -index b3e5674..5113a40 100644 ---- a/third_party/blink/renderer/platform/weborigin/origin_access_entry.h -+++ b/third_party/blink/renderer/platform/weborigin/origin_access_entry.h -@@ -58,7 +58,7 @@ - network::mojom::CorsDomainMatchMode, - network::mojom::CorsOriginAccessMatchPriority priority = - network::mojom::CorsOriginAccessMatchPriority::kDefaultPriority); -- OriginAccessEntry(OriginAccessEntry&& from) noexcept; -+ OriginAccessEntry(OriginAccessEntry&& from); - - network::cors::OriginAccessEntry::MatchResult MatchesOrigin( - const SecurityOrigin&) const; -diff --git a/third_party/blink/renderer/platform/wtf/deque.h b/third_party/blink/renderer/platform/wtf/deque.h -index c6fe1b9..4a98ffb 100644 ---- a/third_party/blink/renderer/platform/wtf/deque.h -+++ b/third_party/blink/renderer/platform/wtf/deque.h -@@ -64,8 +64,8 @@ class Deque { - Deque(); - Deque(const Deque&); - Deque& operator=(const Deque&); -- Deque(Deque&&) noexcept; -- Deque& operator=(Deque&&) noexcept; -+ Deque(Deque&&); -+ Deque& operator=(Deque&&); - ~Deque(); - - void FinalizeGarbageCollectedObject() { NOTREACHED(); } -@@ -343,14 +343,14 @@ - } - - template --inline Deque::Deque(Deque&& other) noexcept -+inline Deque::Deque(Deque&& other) - : start_(0), end_(0) { - Swap(other); - } - - template - inline Deque& --Deque::operator=(Deque&& other) noexcept { -+Deque::operator=(Deque&& other) { - Swap(other); - return *this; - } -diff --git a/third_party/blink/renderer/platform/wtf/functional.h b/third_party/blink/renderer/platform/wtf/functional.h -index 2c5aeea..5e4b373 100644 ---- a/third_party/blink/renderer/platform/wtf/functional.h -+++ b/third_party/blink/renderer/platform/wtf/functional.h -@@ -117,8 +117,7 @@ - class PassedWrapper final { - public: - explicit PassedWrapper(T&& scoper) : scoper_(std::move(scoper)) {} -- PassedWrapper(PassedWrapper&& other) noexcept -- : scoper_(std::move(other.scoper_)) {} -+ PassedWrapper(PassedWrapper&& other) : scoper_(std::move(other.scoper_)) {} - T MoveOut() const { return std::move(scoper_); } - - private: -@@ -319,9 +318,8 @@ - CrossThreadFunction(const CrossThreadFunction&) = delete; - CrossThreadFunction& operator=(const CrossThreadFunction&) = delete; - -- CrossThreadFunction(CrossThreadFunction&& other) noexcept = default; -- CrossThreadFunction& operator=(CrossThreadFunction&& other) noexcept = -- default; -+ CrossThreadFunction(CrossThreadFunction&& other) = default; -+ CrossThreadFunction& operator=(CrossThreadFunction&& other) = default; - - R Run(Args... args) const & { - return callback_.Run(std::forward(args)...); -@@ -356,9 +354,8 @@ - CrossThreadOnceFunction(const CrossThreadOnceFunction&) = delete; - CrossThreadOnceFunction& operator=(const CrossThreadOnceFunction&) = delete; - -- CrossThreadOnceFunction(CrossThreadOnceFunction&& other) noexcept = default; -- CrossThreadOnceFunction& operator=(CrossThreadOnceFunction&& other) noexcept = -- default; -+ CrossThreadOnceFunction(CrossThreadOnceFunction&& other) = default; -+ CrossThreadOnceFunction& operator=(CrossThreadOnceFunction&& other) = default; - - R Run(Args... args) && { - return std::move(callback_).Run(std::forward(args)...); -diff --git a/third_party/blink/renderer/platform/wtf/hash_map.h b/third_party/blink/renderer/platform/wtf/hash_map.h -index 8a002a8..46b39e0 100644 ---- a/third_party/blink/renderer/platform/wtf/hash_map.h -+++ b/third_party/blink/renderer/platform/wtf/hash_map.h -@@ -106,8 +106,8 @@ - #endif - HashMap(const HashMap&) = default; - HashMap& operator=(const HashMap&) = default; -- HashMap(HashMap&&) noexcept = default; -- HashMap& operator=(HashMap&&) noexcept = default; -+ HashMap(HashMap&&) = default; -+ HashMap& operator=(HashMap&&) = default; - - // For example, HashMap({{1, 11}, {2, 22}, {3, 33}}) will give you - // a HashMap containing a mapping {1 -> 11, 2 -> 22, 3 -> 33}. -diff --git a/third_party/blink/renderer/platform/wtf/hash_set.h b/third_party/blink/renderer/platform/wtf/hash_set.h -index c79e45f1..d7cdeed 100644 ---- a/third_party/blink/renderer/platform/wtf/hash_set.h -+++ b/third_party/blink/renderer/platform/wtf/hash_set.h -@@ -74,8 +74,8 @@ - } - HashSet(const HashSet&) = default; - HashSet& operator=(const HashSet&) = default; -- HashSet(HashSet&&) noexcept = default; -- HashSet& operator=(HashSet&&) noexcept = default; -+ HashSet(HashSet&&) = default; -+ HashSet& operator=(HashSet&&) = default; - - HashSet(std::initializer_list elements); - HashSet& operator=(std::initializer_list elements); -diff --git a/third_party/blink/renderer/platform/wtf/hash_table.h b/third_party/blink/renderer/platform/wtf/hash_table.h -index 373280f..52483ec5 100644 ---- a/third_party/blink/renderer/platform/wtf/hash_table.h -+++ b/third_party/blink/renderer/platform/wtf/hash_table.h -@@ -747,10 +747,10 @@ - } - - HashTable(const HashTable&); -- HashTable(HashTable&&) noexcept; -+ HashTable(HashTable&&); - void swap(HashTable&); - HashTable& operator=(const HashTable&); -- HashTable& operator=(HashTable&&) noexcept; -+ HashTable& operator=(HashTable&&); - - // When the hash table is empty, just return the same iterator for end as - // for begin. This is more efficient because we don't have to skip all the -@@ -1929,7 +1929,7 @@ - typename KeyTraits, - typename Allocator> - HashTable:: -- HashTable(HashTable&& other) noexcept -+ HashTable(HashTable&& other) - : table_(nullptr), - table_size_(0), - key_count_(0), -@@ -2008,7 +2008,7 @@ - typename Allocator> - HashTable& - HashTable:: --operator=(HashTable&& other) noexcept { -+operator=(HashTable&& other) { - swap(other); - return *this; - } -diff --git a/third_party/blink/renderer/platform/wtf/linked_hash_set.h b/third_party/blink/renderer/platform/wtf/linked_hash_set.h -index 79c3d76d..71ef37a 100644 ---- a/third_party/blink/renderer/platform/wtf/linked_hash_set.h -+++ b/third_party/blink/renderer/platform/wtf/linked_hash_set.h -@@ -121,7 +121,7 @@ - LinkedHashSetNodeBase(const LinkedHashSetNodeBase& other) - : prev_(nullptr), next_(nullptr) {} - -- LinkedHashSetNodeBase(LinkedHashSetNodeBase&& other) noexcept -+ LinkedHashSetNodeBase(LinkedHashSetNodeBase&& other) - : prev_(other.prev_), next_(other.next_) { - other.prev_ = nullptr; - other.next_ = nullptr; -@@ -151,7 +151,7 @@ - LinkedHashSetNodeBase* next) - : LinkedHashSetNodeBase(prev, next), value_(std::move(value)) {} - -- LinkedHashSetNode(LinkedHashSetNode&& other) noexcept -+ LinkedHashSetNode(LinkedHashSetNode&& other) - : LinkedHashSetNodeBase(std::move(other)), - value_(std::move(other.value_)) {} - -@@ -214,9 +214,9 @@ - - LinkedHashSet(); - LinkedHashSet(const LinkedHashSet&); -- LinkedHashSet(LinkedHashSet&&) noexcept; -+ LinkedHashSet(LinkedHashSet&&); - LinkedHashSet& operator=(const LinkedHashSet&); -- LinkedHashSet& operator=(LinkedHashSet&&) noexcept; -+ LinkedHashSet& operator=(LinkedHashSet&&); - - // Needs finalization. The anchor needs to unlink itself from the chain. - ~LinkedHashSet(); -@@ -748,7 +748,7 @@ - } - - template --inline LinkedHashSet::LinkedHashSet(LinkedHashSet&& other) noexcept -+inline LinkedHashSet::LinkedHashSet(LinkedHashSet&& other) - : anchor_() { - Swap(other); - } -@@ -763,7 +763,7 @@ - - template - inline LinkedHashSet& LinkedHashSet::operator=( -- LinkedHashSet&& other) noexcept { -+ LinkedHashSet&& other) { - Swap(other); - return *this; - } -diff --git a/third_party/blink/renderer/platform/wtf/list_hash_set.h b/third_party/blink/renderer/platform/wtf/list_hash_set.h -index ead6a87..78bd279 100644 ---- a/third_party/blink/renderer/platform/wtf/list_hash_set.h -+++ b/third_party/blink/renderer/platform/wtf/list_hash_set.h -@@ -145,9 +145,9 @@ class ListHashSet { - - ListHashSet(); - ListHashSet(const ListHashSet&); -- ListHashSet(ListHashSet&&) noexcept; -+ ListHashSet(ListHashSet&&); - ListHashSet& operator=(const ListHashSet&); -- ListHashSet& operator=(ListHashSet&&) noexcept; -+ ListHashSet& operator=(ListHashSet&&); - ~ListHashSet(); - - void Swap(ListHashSet&); -@@ -780,8 +780,7 @@ - } - - template --inline ListHashSet::ListHashSet( -- ListHashSet&& other) noexcept -+inline ListHashSet::ListHashSet(ListHashSet&& other) - : head_(nullptr), tail_(nullptr) { - Swap(other); - } -@@ -796,7 +795,7 @@ - - template - inline ListHashSet& --ListHashSet::operator=(ListHashSet&& other) noexcept { -+ListHashSet::operator=(ListHashSet&& other) { - Swap(other); - return *this; - } -diff --git a/third_party/blink/renderer/platform/wtf/type_traits_test.cc b/third_party/blink/renderer/platform/wtf/type_traits_test.cc -index 0930b73..1b45d55 100644 ---- a/third_party/blink/renderer/platform/wtf/type_traits_test.cc -+++ b/third_party/blink/renderer/platform/wtf/type_traits_test.cc -@@ -158,7 +158,7 @@ - STACK_ALLOCATED(); - - public: -- CopyAssignmentDeleted& operator=(CopyAssignmentDeleted&&) noexcept; -+ CopyAssignmentDeleted& operator=(CopyAssignmentDeleted&&); - - private: - CopyAssignmentDeleted& operator=(const CopyAssignmentDeleted&) = delete; -@@ -173,7 +173,7 @@ - STACK_ALLOCATED(); - - public: -- CopyAssignmentPrivate& operator=(CopyAssignmentPrivate&&) noexcept; -+ CopyAssignmentPrivate& operator=(CopyAssignmentPrivate&&); - - private: - CopyAssignmentPrivate& operator=(const CopyAssignmentPrivate&); -@@ -188,7 +188,7 @@ - STACK_ALLOCATED(); - - public: -- CopyAssignmentUndeclared& operator=(CopyAssignmentUndeclared&&) noexcept; -+ CopyAssignmentUndeclared& operator=(CopyAssignmentUndeclared&&); - }; - - static_assert(!std::is_copy_assignable::value, -diff --git a/third_party/blink/renderer/platform/wtf/typed_arrays/array_buffer_contents.h b/third_party/blink/renderer/platform/wtf/typed_arrays/array_buffer_contents.h -index 3f44cd2..ee7c89a 100644 ---- a/third_party/blink/renderer/platform/wtf/typed_arrays/array_buffer_contents.h -+++ b/third_party/blink/renderer/platform/wtf/typed_arrays/array_buffer_contents.h -@@ -68,7 +68,7 @@ - deleter_(deleter), - deleter_info_(deleter_info) {} - // Move constructor -- DataHandle(DataHandle&& other) noexcept { *this = std::move(other); } -+ DataHandle(DataHandle&& other) { *this = std::move(other); } - ~DataHandle() { - if (!data_) - return; -diff --git a/third_party/blink/renderer/platform/wtf/vector.h b/third_party/blink/renderer/platform/wtf/vector.h -index 2783c2b..43a27f7 100644 ---- a/third_party/blink/renderer/platform/wtf/vector.h -+++ b/third_party/blink/renderer/platform/wtf/vector.h -@@ -1018,8 +1018,8 @@ - Vector& operator=(const Vector&); - - // Moving. -- Vector(Vector&&) noexcept; -- Vector& operator=(Vector&&) noexcept; -+ Vector(Vector&&); -+ Vector& operator=(Vector&&); - - // Construct with an initializer list. You can do e.g. - // Vector v({1, 2, 3}); -@@ -1459,7 +1459,7 @@ - - template - Vector::Vector( -- Vector&& other) noexcept { -+ Vector&& other) { - size_ = 0; - // It's a little weird to implement a move constructor using swap but this - // way we don't have to add a move constructor to VectorBuffer. -@@ -1468,7 +1468,7 @@ - - template - Vector& Vector:: --operator=(Vector&& other) noexcept { -+operator=(Vector&& other) { - swap(other); - return *this; - } -diff --git a/third_party/blink/renderer/platform/wtf/vector_test.cc b/third_party/blink/renderer/platform/wtf/vector_test.cc -index aa8a138..788cc2bb 100644 ---- a/third_party/blink/renderer/platform/wtf/vector_test.cc -+++ b/third_party/blink/renderer/platform/wtf/vector_test.cc -@@ -420,8 +420,8 @@ - class MojoMoveOnlyType final { - public: - MojoMoveOnlyType(); -- MojoMoveOnlyType(MojoMoveOnlyType&&) noexcept; -- MojoMoveOnlyType& operator=(MojoMoveOnlyType&&) noexcept; -+ MojoMoveOnlyType(MojoMoveOnlyType&&); -+ MojoMoveOnlyType& operator=(MojoMoveOnlyType&&); - ~MojoMoveOnlyType(); - - private: -diff --git a/third_party/blink/renderer/platform/wtf/wtf_test_helper.h b/third_party/blink/renderer/platform/wtf/wtf_test_helper.h -index e797445..8f31365 100644 ---- a/third_party/blink/renderer/platform/wtf/wtf_test_helper.h -+++ b/third_party/blink/renderer/platform/wtf/wtf_test_helper.h -@@ -36,9 +36,9 @@ - public: - explicit MoveOnly(int i = 0) : i_(i) {} - -- MoveOnly(MoveOnly&& other) noexcept : i_(other.i_) { other.i_ = 0; } -+ MoveOnly(MoveOnly&& other) : i_(other.i_) { other.i_ = 0; } - -- MoveOnly& operator=(MoveOnly&& other) noexcept { -+ MoveOnly& operator=(MoveOnly&& other) { - if (this != &other) { - i_ = other.i_; - other.i_ = 0; -@@ -62,12 +62,12 @@ - - explicit MoveOnlyHashValue(int value = kEmpty, int id = 0) - : value_(value), id_(id) {} -- MoveOnlyHashValue(MoveOnlyHashValue&& other) noexcept -+ MoveOnlyHashValue(MoveOnlyHashValue&& other) - : value_(other.value_), id_(other.id_) { - other.value_ = kMovedOut; - other.id_ = 0; - } -- MoveOnlyHashValue& operator=(MoveOnlyHashValue&& other) noexcept { -+ MoveOnlyHashValue& operator=(MoveOnlyHashValue&& other) { - value_ = other.value_; - id_ = other.id_; - other.value_ = kMovedOut; diff --git a/chromium-78.0.3904.70-gcc-DohUpgradeEntry-nonconst.patch b/chromium-78.0.3904.70-gcc-DohUpgradeEntry-nonconst.patch deleted file mode 100644 index cb436ec..0000000 --- a/chromium-78.0.3904.70-gcc-DohUpgradeEntry-nonconst.patch +++ /dev/null @@ -1,49 +0,0 @@ -diff -up chromium-78.0.3904.70/net/dns/dns_util.cc.gcc-DohUpgradeEntry-nonconst chromium-78.0.3904.70/net/dns/dns_util.cc ---- chromium-78.0.3904.70/net/dns/dns_util.cc.gcc-DohUpgradeEntry-nonconst 2019-10-21 15:06:38.000000000 -0400 -+++ chromium-78.0.3904.70/net/dns/dns_util.cc 2019-10-23 12:55:27.886546918 -0400 -@@ -139,12 +139,12 @@ struct DohUpgradeEntry { - const DnsConfig::DnsOverHttpsServerConfig dns_over_https_config; - }; - --const std::vector& GetDohUpgradeList() { -+const std::vector& GetDohUpgradeList() { - // The provider names in these entries should be kept in sync with the - // DohProviderId histogram suffix list in - // tools/metrics/histograms/histograms.xml. -- static const base::NoDestructor> -- upgradable_servers({ -+ static const base::NoDestructor> -+ upgradable_servers(std::initializer_list{ - DohUpgradeEntry( - "CleanBrowsingAdult", - {"185.228.168.10", "185.228.169.11", "2a0d:2a00:1::1", -@@ -222,8 +222,7 @@ const std::vector - std::vector GetDohUpgradeEntriesFromNameservers( - const std::vector& dns_servers, - const std::vector& excluded_providers) { -- const std::vector& upgradable_servers = -- GetDohUpgradeList(); -+ const std::vector& upgradable_servers = GetDohUpgradeList(); - std::vector entries; - - for (const auto& server : dns_servers) { -@@ -417,8 +416,7 @@ std::vector& excluded_providers) { -- const std::vector& upgradable_servers = -- GetDohUpgradeList(); -+ const std::vector& upgradable_servers = GetDohUpgradeList(); - std::vector doh_servers; - - if (dot_server.empty()) -@@ -451,8 +449,7 @@ GetDohUpgradeServersFromNameservers( - - std::string GetDohProviderIdForHistogramFromDohConfig( - const DnsConfig::DnsOverHttpsServerConfig& doh_server) { -- const std::vector& upgradable_servers = -- GetDohUpgradeList(); -+ const std::vector& upgradable_servers = GetDohUpgradeList(); - for (const auto& upgrade_entry : upgradable_servers) { - if (doh_server.server_template == - upgrade_entry.dns_over_https_config.server_template) { diff --git a/chromium-78.0.3904.70-gcc-fix-invalid-pragma.patch b/chromium-78.0.3904.70-gcc-fix-invalid-pragma.patch deleted file mode 100644 index eb0efbd..0000000 --- a/chromium-78.0.3904.70-gcc-fix-invalid-pragma.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff -up chromium-78.0.3904.70/base/allocator/debugallocation_shim.cc.invalid-pragma chromium-78.0.3904.70/base/allocator/debugallocation_shim.cc ---- chromium-78.0.3904.70/base/allocator/debugallocation_shim.cc.invalid-pragma 2019-10-23 10:00:41.361932768 -0400 -+++ chromium-78.0.3904.70/base/allocator/debugallocation_shim.cc 2019-10-23 10:02:09.778100948 -0400 -@@ -7,9 +7,10 @@ - // AFDO can mess with them. Better not to use AFDO there. This is a - // temporary hack. We will add a mechanism in the build system to - // avoid using -fauto-profile for tcmalloc files. --#if !defined(__clang__) && (defined(OS_CHROMEOS) || __GNUC__ > 5) -+#if !defined(__clang__) && \ -+ (defined(OS_CHROMEOS) || (__GNUC__ > 5 && __GNUC__ < 7)) - // Note that this option only seems to be available in the chromeos GCC 4.9 --// toolchain, and stock GCC 5 and up. -+// toolchain, and stock GCC 5 upto 7. - #pragma GCC optimize ("no-auto-profile") - #endif - diff --git a/chromium-78.0.3904.70-gcc-mark-CheckOpResult-constexpr.patch b/chromium-78.0.3904.70-gcc-mark-CheckOpResult-constexpr.patch deleted file mode 100644 index e5502cf..0000000 --- a/chromium-78.0.3904.70-gcc-mark-CheckOpResult-constexpr.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up chromium-78.0.3904.70/base/logging.h.constexpr chromium-78.0.3904.70/base/logging.h ---- chromium-78.0.3904.70/base/logging.h.constexpr 2019-10-23 10:06:53.434313793 -0400 -+++ chromium-78.0.3904.70/base/logging.h 2019-10-23 10:07:17.490853038 -0400 -@@ -530,7 +530,7 @@ BASE_EXPORT extern std::ostream* g_swall - class CheckOpResult { - public: - // |message| must be non-null if and only if the check failed. -- CheckOpResult(std::string* message) : message_(message) {} -+ constexpr CheckOpResult(std::string* message) : message_(message) {} - // Returns true if the check succeeded. - operator bool() const { return !message_; } - // Returns the message. diff --git a/chromium-78.0.3904.70-gcc-sizet-fix.patch b/chromium-78.0.3904.70-gcc-sizet-fix.patch deleted file mode 100644 index b95b0ed..0000000 --- a/chromium-78.0.3904.70-gcc-sizet-fix.patch +++ /dev/null @@ -1,20 +0,0 @@ -diff -up chromium-78.0.3904.70/base/containers/intrusive_heap.h.gcc-sizet chromium-78.0.3904.70/base/containers/intrusive_heap.h ---- chromium-78.0.3904.70/base/containers/intrusive_heap.h.gcc-sizet 2019-10-23 11:02:56.767907986 -0400 -+++ chromium-78.0.3904.70/base/containers/intrusive_heap.h 2019-10-23 11:04:58.317351636 -0400 -@@ -131,6 +131,7 @@ - - #include - #include -+#include - #include - #include - #include -@@ -149,7 +150,7 @@ namespace base { - // in place. - class BASE_EXPORT HeapHandle { - public: -- enum : size_t { kInvalidIndex = -1 }; -+ enum : size_t { kInvalidIndex = std::numeric_limits::max() }; - - constexpr HeapHandle() = default; - constexpr HeapHandle(const HeapHandle& other) = default; diff --git a/chromium-78.0.3904.70-v8-tracedreference-fix.patch b/chromium-78.0.3904.70-v8-tracedreference-fix.patch deleted file mode 100644 index 789bdd0..0000000 --- a/chromium-78.0.3904.70-v8-tracedreference-fix.patch +++ /dev/null @@ -1,302 +0,0 @@ -diff -up chromium-78.0.3904.70/third_party/blink/renderer/bindings/core/v8/v8_embedder_graph_builder.cc.v8-tracedreference-fix chromium-78.0.3904.70/third_party/blink/renderer/bindings/core/v8/v8_embedder_graph_builder.cc ---- chromium-78.0.3904.70/third_party/blink/renderer/bindings/core/v8/v8_embedder_graph_builder.cc.v8-tracedreference-fix 2019-10-21 15:06:42.000000000 -0400 -+++ chromium-78.0.3904.70/third_party/blink/renderer/bindings/core/v8/v8_embedder_graph_builder.cc 2019-10-23 14:30:25.679541652 -0400 -@@ -173,8 +173,9 @@ class GC_PLUGIN_IGNORE( - uint16_t class_id) override; - - // v8::EmbedderHeapTracer::TracedGlobalHandleVisitor override. -- void VisitTracedGlobalHandle( -- const v8::TracedGlobal& value) override; -+ void VisitTracedReference( -+ const v8::TracedReference& value) override; -+ void VisitTracedGlobalHandle(const v8::TracedGlobal&) override; - - // Visitor overrides. - void VisitRoot(void*, TraceDescriptor, const base::Location&) final; -@@ -508,8 +509,8 @@ void V8EmbedderGraphBuilder::VisitPersis - } - } - --void V8EmbedderGraphBuilder::VisitTracedGlobalHandle( -- const v8::TracedGlobal& value) { -+void V8EmbedderGraphBuilder::VisitTracedReference( -+ const v8::TracedReference& value) { - const uint16_t class_id = value.WrapperClassId(); - if (class_id != WrapperTypeInfo::kNodeClassId && - class_id != WrapperTypeInfo::kObjectClassId) -@@ -517,6 +518,11 @@ void V8EmbedderGraphBuilder::VisitTraced - VisitPersistentHandleInternal(value.As().Get(isolate_), class_id); - } - -+void V8EmbedderGraphBuilder::VisitTracedGlobalHandle( -+ const v8::TracedGlobal&) { -+ CHECK(false) << "Blink does not use v8::TracedGlobal."; -+} -+ - void V8EmbedderGraphBuilder::VisitPersistentHandle( - v8::Persistent* value, - uint16_t class_id) { -diff -up chromium-78.0.3904.70/third_party/blink/renderer/bindings/core/v8/v8_gc_controller.cc.v8-tracedreference-fix chromium-78.0.3904.70/third_party/blink/renderer/bindings/core/v8/v8_gc_controller.cc ---- chromium-78.0.3904.70/third_party/blink/renderer/bindings/core/v8/v8_gc_controller.cc.v8-tracedreference-fix 2019-10-21 15:06:42.000000000 -0400 -+++ chromium-78.0.3904.70/third_party/blink/renderer/bindings/core/v8/v8_gc_controller.cc 2019-10-23 14:30:25.683541568 -0400 -@@ -260,7 +260,11 @@ class DOMWrapperForwardingVisitor final - VisitHandle(value, class_id); - } - -- void VisitTracedGlobalHandle(const v8::TracedGlobal& value) final { -+ void VisitTracedGlobalHandle(const v8::TracedGlobal&) final { -+ CHECK(false) << "Blink does not use v8::TracedGlobal."; -+ } -+ -+ void VisitTracedReference(const v8::TracedReference& value) final { - VisitHandle(&value, value.WrapperClassId()); - } - -diff -up chromium-78.0.3904.70/third_party/blink/renderer/platform/bindings/dom_data_store.h.v8-tracedreference-fix chromium-78.0.3904.70/third_party/blink/renderer/platform/bindings/dom_data_store.h ---- chromium-78.0.3904.70/third_party/blink/renderer/platform/bindings/dom_data_store.h.v8-tracedreference-fix 2019-10-21 15:06:44.000000000 -0400 -+++ chromium-78.0.3904.70/third_party/blink/renderer/platform/bindings/dom_data_store.h 2019-10-23 14:30:25.685541526 -0400 -@@ -229,6 +229,11 @@ class DOMDataStore { - DOMWorldWrapperReference(v8::Isolate* isolate, v8::Local handle) - : TraceWrapperV8Reference(isolate, handle) {} - -+ ~DOMWorldWrapperReference() { -+ // Destruction of a reference should clear it immediately. -+ Clear(); -+ } -+ - // Move support without write barrier. - DOMWorldWrapperReference(DOMWorldWrapperReference&& other) - : TraceWrapperV8Reference() { -diff -up chromium-78.0.3904.70/third_party/blink/renderer/platform/bindings/script_wrappable.h.v8-tracedreference-fix chromium-78.0.3904.70/third_party/blink/renderer/platform/bindings/script_wrappable.h ---- chromium-78.0.3904.70/third_party/blink/renderer/platform/bindings/script_wrappable.h.v8-tracedreference-fix 2019-10-21 15:06:44.000000000 -0400 -+++ chromium-78.0.3904.70/third_party/blink/renderer/platform/bindings/script_wrappable.h 2019-10-23 14:30:25.687541484 -0400 -@@ -161,6 +161,11 @@ class PLATFORM_EXPORT ScriptWrappable - return main_world_wrapper_.NewLocal(isolate); - } - -+ static_assert( -+ std::is_trivially_destructible< -+ TraceWrapperV8Reference>::value, -+ "TraceWrapperV8Reference should be trivially destructible."); -+ - TraceWrapperV8Reference main_world_wrapper_; - - DISALLOW_COPY_AND_ASSIGN(ScriptWrappable); -diff -up chromium-78.0.3904.70/third_party/blink/renderer/platform/bindings/trace_wrapper_v8_reference.h.v8-tracedreference-fix chromium-78.0.3904.70/third_party/blink/renderer/platform/bindings/trace_wrapper_v8_reference.h ---- chromium-78.0.3904.70/third_party/blink/renderer/platform/bindings/trace_wrapper_v8_reference.h.v8-tracedreference-fix 2019-10-21 15:06:44.000000000 -0400 -+++ chromium-78.0.3904.70/third_party/blink/renderer/platform/bindings/trace_wrapper_v8_reference.h 2019-10-23 14:30:25.688541463 -0400 -@@ -11,15 +11,6 @@ - #include "third_party/blink/renderer/platform/heap/unified_heap_marking_visitor.h" - #include "v8/include/v8.h" - --namespace v8 { -- --template --struct TracedGlobalTrait> { -- static constexpr bool kRequiresExplicitDestruction = false; --}; -- --} // namespace v8 -- - namespace blink { - - /** -@@ -50,8 +41,8 @@ class TraceWrapperV8Reference { - - bool IsEmpty() const { return handle_.IsEmpty(); } - void Clear() { handle_.Reset(); } -- ALWAYS_INLINE const v8::TracedGlobal& Get() const { return handle_; } -- ALWAYS_INLINE v8::TracedGlobal& Get() { return handle_; } -+ ALWAYS_INLINE const v8::TracedReference& Get() const { return handle_; } -+ ALWAYS_INLINE v8::TracedReference& Get() { return handle_; } - - template - const TraceWrapperV8Reference& Cast() const { -@@ -124,7 +115,7 @@ class TraceWrapperV8Reference { - UnifiedHeapMarkingVisitor::WriteBarrier(UnsafeCast()); - } - -- v8::TracedGlobal handle_; -+ v8::TracedReference handle_; - }; - - } // namespace blink -diff -up chromium-78.0.3904.70/third_party/blink/renderer/platform/bindings/wrapper_type_info.h.v8-tracedreference-fix chromium-78.0.3904.70/third_party/blink/renderer/platform/bindings/wrapper_type_info.h ---- chromium-78.0.3904.70/third_party/blink/renderer/platform/bindings/wrapper_type_info.h.v8-tracedreference-fix 2019-10-21 15:06:44.000000000 -0400 -+++ chromium-78.0.3904.70/third_party/blink/renderer/platform/bindings/wrapper_type_info.h 2019-10-23 14:30:25.689541442 -0400 -@@ -122,7 +122,7 @@ struct WrapperTypeInfo { - wrapper->SetWrapperClassId(wrapper_class_id); - } - -- void ConfigureWrapper(v8::TracedGlobal* wrapper) const { -+ void ConfigureWrapper(v8::TracedReference* wrapper) const { - wrapper->SetWrapperClassId(wrapper_class_id); - } - -@@ -177,7 +177,7 @@ inline T* GetInternalField(const v8::Per - } - - template --inline T* GetInternalField(const v8::TracedGlobal& global) { -+inline T* GetInternalField(const v8::TracedReference& global) { - DCHECK_LT(offset, v8::Object::InternalFieldCount(global)); - return reinterpret_cast( - v8::Object::GetAlignedPointerFromInternalField(global, offset)); -@@ -198,7 +198,7 @@ inline ScriptWrappable* ToScriptWrappabl - } - - inline ScriptWrappable* ToScriptWrappable( -- const v8::TracedGlobal& wrapper) { -+ const v8::TracedReference& wrapper) { - return GetInternalField(wrapper); - } - -@@ -219,7 +219,8 @@ inline void* ToUntypedWrappable(const v8 - return GetInternalField(wrapper); - } - --inline void* ToUntypedWrappable(const v8::TracedGlobal& wrapper) { -+inline void* ToUntypedWrappable( -+ const v8::TracedReference& wrapper) { - return GetInternalField(wrapper); - } - -@@ -233,7 +234,7 @@ inline const WrapperTypeInfo* ToWrapperT - } - - inline const WrapperTypeInfo* ToWrapperTypeInfo( -- const v8::TracedGlobal& wrapper) { -+ const v8::TracedReference& wrapper) { - return GetInternalField(wrapper); - } - -diff -up chromium-78.0.3904.70/third_party/blink/renderer/platform/heap/thread_state.cc.v8-tracedreference-fix chromium-78.0.3904.70/third_party/blink/renderer/platform/heap/thread_state.cc ---- chromium-78.0.3904.70/third_party/blink/renderer/platform/heap/thread_state.cc.v8-tracedreference-fix 2019-10-21 15:06:45.000000000 -0400 -+++ chromium-78.0.3904.70/third_party/blink/renderer/platform/heap/thread_state.cc 2019-10-23 14:30:25.693541359 -0400 -@@ -1451,11 +1451,15 @@ class ClearReferencesInDeadObjectsVisito - value->Reset(); - } - -- void VisitTracedGlobalHandle(const v8::TracedGlobal& value) final { -+ void VisitTracedGlobalHandle(const v8::TracedGlobal&) final { -+ CHECK(false) << "Blink does not use v8::TracedGlobal."; -+ } -+ -+ void VisitTracedReference(const v8::TracedReference& value) final { - // TODO(mlippautz): Avoid const_cast after changing the API to allow -- // modificaton of the TracedGlobal handle. -- if (InDeadObject(&const_cast&>(value))) -- const_cast&>(value).Reset(); -+ // modificaton of the handle. -+ if (InDeadObject(&const_cast&>(value))) -+ const_cast&>(value).Reset(); - } - - private: -@@ -1584,11 +1588,15 @@ class UnpoisonHandlesVisitor final - VisitSlot(value, sizeof(v8::Persistent)); - } - -- void VisitTracedGlobalHandle(const v8::TracedGlobal& value) final { -+ void VisitTracedGlobalHandle(const v8::TracedGlobal&) final { -+ CHECK(false) << "Blink does not use v8::TracedGlobal."; -+ } -+ -+ void VisitTracedReference(const v8::TracedReference& value) final { - // TODO(mlippautz): Avoid const_cast after changing the API to allow -- // modificaton of the TracedGlobal handle. -- VisitSlot(&const_cast&>(value), -- sizeof(v8::TracedGlobal)); -+ // modificaton of the handle. -+ VisitSlot(&const_cast&>(value), -+ sizeof(v8::TracedReference)); - } - - private: -diff -up chromium-78.0.3904.70/third_party/blink/renderer/platform/heap/unified_heap_controller.cc.v8-tracedreference-fix chromium-78.0.3904.70/third_party/blink/renderer/platform/heap/unified_heap_controller.cc ---- chromium-78.0.3904.70/third_party/blink/renderer/platform/heap/unified_heap_controller.cc.v8-tracedreference-fix 2019-10-21 15:06:45.000000000 -0400 -+++ chromium-78.0.3904.70/third_party/blink/renderer/platform/heap/unified_heap_controller.cc 2019-10-23 14:32:34.722840885 -0400 -@@ -147,16 +147,19 @@ bool UnifiedHeapController::IsTracingDon - return is_tracing_done_; - } - --bool UnifiedHeapController::IsRootForNonTracingGCInternal( -- const v8::TracedGlobal& handle) { -+namespace { -+ -+bool IsRootForNonTracingGCInternal( -+ const v8::TracedReference& handle) { - const uint16_t class_id = handle.WrapperClassId(); -- // Stand-alone TracedGlobal reference or kCustomWrappableId. Keep as root as -+ // Stand-alone reference or kCustomWrappableId. Keep as root as - // we don't know better. - if (class_id != WrapperTypeInfo::kNodeClassId && - class_id != WrapperTypeInfo::kObjectClassId) - return true; - -- const v8::TracedGlobal& traced = handle.As(); -+ const v8::TracedReference& traced = -+ handle.template As(); - if (ToWrapperTypeInfo(traced)->IsActiveScriptWrappable() && - ToScriptWrappable(traced)->HasPendingActivity()) { - return true; -@@ -169,8 +172,10 @@ bool UnifiedHeapController::IsRootForNon - return false; - } - -+} // namespace -+ - void UnifiedHeapController::ResetHandleInNonTracingGC( -- const v8::TracedGlobal& handle) { -+ const v8::TracedReference& handle) { - const uint16_t class_id = handle.WrapperClassId(); - // Only consider handles that have not been treated as roots, see - // IsRootForNonTracingGCInternal. -@@ -178,15 +183,21 @@ void UnifiedHeapController::ResetHandleI - class_id != WrapperTypeInfo::kObjectClassId) - return; - -- const v8::TracedGlobal& traced = handle.As(); -+ const v8::TracedReference& traced = handle.As(); - ToScriptWrappable(traced)->UnsetWrapperIfAny(); - } - - bool UnifiedHeapController::IsRootForNonTracingGC( -- const v8::TracedGlobal& handle) { -+ const v8::TracedReference& handle) { - return IsRootForNonTracingGCInternal(handle); - } - -+bool UnifiedHeapController::IsRootForNonTracingGC( -+ const v8::TracedGlobal& handle) { -+ CHECK(false) << "Blink does not use v8::TracedGlobal."; -+ return false; -+} -+ - void UnifiedHeapController::ReportBufferedAllocatedSizeIfPossible() { - DCHECK(base::FeatureList::IsEnabled( - blink::features::kBlinkHeapUnifiedGCScheduling)); -diff -up chromium-78.0.3904.70/third_party/blink/renderer/platform/heap/unified_heap_controller.h.v8-tracedreference-fix chromium-78.0.3904.70/third_party/blink/renderer/platform/heap/unified_heap_controller.h ---- chromium-78.0.3904.70/third_party/blink/renderer/platform/heap/unified_heap_controller.h.v8-tracedreference-fix 2019-10-21 15:06:45.000000000 -0400 -+++ chromium-78.0.3904.70/third_party/blink/renderer/platform/heap/unified_heap_controller.h 2019-10-23 14:30:25.695541317 -0400 -@@ -45,8 +45,9 @@ class PLATFORM_EXPORT UnifiedHeapControl - void RegisterV8References(const std::vector>&) final; - bool AdvanceTracing(double) final; - bool IsTracingDone() final; -+ bool IsRootForNonTracingGC(const v8::TracedReference&) final; - bool IsRootForNonTracingGC(const v8::TracedGlobal&) final; -- void ResetHandleInNonTracingGC(const v8::TracedGlobal&) final; -+ void ResetHandleInNonTracingGC(const v8::TracedReference&) final; - - ThreadState* thread_state() const { return thread_state_; } - -@@ -59,9 +60,6 @@ class PLATFORM_EXPORT UnifiedHeapControl - void DecreaseAllocatedSpace(size_t) final {} - - private: -- static bool IsRootForNonTracingGCInternal( -- const v8::TracedGlobal& handle); -- - void ReportBufferedAllocatedSizeIfPossible(); - - ThreadState* const thread_state_; diff --git a/chromium-78.0.3904.97-glibc-clock-nanosleep.patch b/chromium-78.0.3904.97-glibc-clock-nanosleep.patch deleted file mode 100644 index 8aee2aa..0000000 --- a/chromium-78.0.3904.97-glibc-clock-nanosleep.patch +++ /dev/null @@ -1,17 +0,0 @@ -diff -up chromium-78.0.3904.97/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc.glibc-clock-nanosleep chromium-78.0.3904.97/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc ---- chromium-78.0.3904.97/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc.glibc-clock-nanosleep 2019-11-17 16:48:03.463997928 -0500 -+++ chromium-78.0.3904.97/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc 2019-11-17 16:48:37.057222139 -0500 -@@ -32,12 +32,12 @@ bool SyscallSets::IsAllowedGettime(int s - (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS)) - case __NR_time: - #endif -+ case __NR_clock_nanosleep: - return true; - case __NR_adjtimex: // Privileged. - case __NR_clock_adjtime: // Privileged. - case __NR_clock_getres: // Could be allowed. - case __NR_clock_gettime: -- case __NR_clock_nanosleep: // Could be allowed. - case __NR_clock_settime: // Privileged. - #if defined(__i386__) || \ - (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS)) diff --git a/chromium-79-gcc-ambiguous-nodestructor.patch b/chromium-79-gcc-ambiguous-nodestructor.patch new file mode 100644 index 0000000..d43a091 --- /dev/null +++ b/chromium-79-gcc-ambiguous-nodestructor.patch @@ -0,0 +1,39 @@ +From af77dc4014ead3d898fdc8a7a70fe5063ac9b102 Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Fri, 25 Oct 2019 19:01:29 +0000 +Subject: [PATCH] GCC: use brace-initializer for DohUpgrade vector + +Constructing NoDestructor with parenthesis constructor is ambiguous +in GCC. Use brace-initializer to avoid that problem. This fixes this +build error: + +Bug: 819294 +Change-Id: I00dda42daa1794d11e022f26ac07f92e599d106d +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1879910 +Reviewed-by: Eric Orth +Commit-Queue: José Dapena Paz +Cr-Commit-Position: refs/heads/master@{#709569} +--- + +diff --git a/net/dns/dns_util.cc b/net/dns/dns_util.cc +index 14997c4..637b6f2 100644 +--- a/net/dns/dns_util.cc ++++ b/net/dns/dns_util.cc +@@ -144,7 +144,7 @@ + // DohProviderId histogram suffix list in + // tools/metrics/histograms/histograms.xml. + static const base::NoDestructor> +- upgradable_servers({ ++ upgradable_servers{{ + DohUpgradeEntry( + "CleanBrowsingAdult", + {"185.228.168.10", "185.228.169.11", "2a0d:2a00:1::1", +@@ -215,7 +215,7 @@ + {"9.9.9.9", "149.112.112.112", "2620:fe::fe", "2620:fe::9"}, + {"dns.quad9.net", "dns9.quad9.net"} /* DoT hostname */, + {"https://dns.quad9.net/dns-query", true /* use_post */}), +- }); ++ }}; + return *upgradable_servers; + } + diff --git a/chromium-79-gcc-permissive.patch b/chromium-79-gcc-permissive.patch new file mode 100644 index 0000000..c42d569 --- /dev/null +++ b/chromium-79-gcc-permissive.patch @@ -0,0 +1,79 @@ +From 528e9a3e1f25bd264549c4c7779748abfd16bb1c Mon Sep 17 00:00:00 2001 +From: Jan Wilken Dörrie +Date: Fri, 18 Oct 2019 11:45:24 +0000 +Subject: [PATCH] Reland "GCC: Fix base::internal::InvokeFuncImpl" + +This is a reland of 9293d5c86eec1c34fc00716645400b44a14e764e + +Original change's description: +> GCC: Fix base::internal::InvokeFuncImpl +> +> GCC doesn't like that the Value data member has no out-of-line +> definition. The problem is triggered specifically only when compiling +> +> components/services/leveldb/leveldb_database_impl.cc +> +> which has lambda functions returning locally-defined classes. +> +> The current code works as-is in C++17 mode which introduces the concept +> of inline variables, but in C++14 we need either an explicit out-of-line +> definition or a function member instead of a data member. +> +> Use std::integral_constant for defining the value. +> +> Bug: 819294 +> Change-Id: I5c68e14ce3fa9d8b4d8a2cb42d7f9b53938aabf3 +> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1862451 +> Reviewed-by: Jan Wilken Dörrie +> Reviewed-by: Daniel Cheng +> Commit-Queue: Jüri Valdmann +> Cr-Commit-Position: refs/heads/master@{#706384} + +Bug: 819294 +Change-Id: I3d5a52ddc6815516e2239f9347c60de06bf765a2 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1865212 +Reviewed-by: Daniel Cheng +Commit-Queue: Jan Wilken Dörrie +Cr-Commit-Position: refs/heads/master@{#707329} +--- + +diff --git a/base/bind.h b/base/bind.h +index 7a400af..1070ce6 100644 +--- a/base/bind.h ++++ b/base/bind.h +@@ -187,18 +187,15 @@ + // well-formed. Using `Invoker::Run` with a OnceCallback triggers a + // static_assert, which is why the ternary expression does not compile. + // TODO(crbug.com/752720): Remove this indirection once we have `if constexpr`. +-template +-struct InvokeFuncImpl; ++template ++constexpr auto GetInvokeFunc(std::true_type) { ++ return Invoker::RunOnce; ++} + + template +-struct InvokeFuncImpl { +- static constexpr auto Value = &Invoker::RunOnce; +-}; +- +-template +-struct InvokeFuncImpl { +- static constexpr auto Value = &Invoker::Run; +-}; ++constexpr auto GetInvokeFunc(std::false_type) { ++ return Invoker::Run; ++} + + template