[chromium-libs-media-freeworld: 36/259] Fix the policy templates handling
by Nicolas Chauvet
commit d8f6aaaf5dc74a2e3cd63a06629fb5232f73d861
Author: Tomas Popela <tpopela(a)redhat.com>
Date: Wed Oct 25 10:30:34 2017 +0200
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
5 years
[chromium-libs-media-freeworld: 35/259] Fix the policy templates handling
by Nicolas Chauvet
commit d02ac4e7be3c27a112f917f3bb3348410dea0862
Author: Tomas Popela <tpopela(a)redhat.com>
Date: Wed Oct 25 10:30:34 2017 +0200
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
5 years
[chromium-libs-media-freeworld: 34/259] Fix the policy templates handling
by Nicolas Chauvet
commit 2abf30d2cca743fd4e3e0ed01d4b9df315aad65d
Author: Tomas Popela <tpopela(a)redhat.com>
Date: Wed Oct 25 10:30:34 2017 +0200
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
5 years
[chromium-libs-media-freeworld: 33/259] do not attempt to use std=c++14 on epel7
by Nicolas Chauvet
commit 7abe45ef20659a9277d79093f4e1d8d96194f779
Author: Tom Callaway <spot(a)fedoraproject.org>
Date: Tue Oct 24 22:25:28 2017 -0400
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(-)
---
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 <spot(a)fedoraproject.org> 62.0.3202.62-1.1
+- do not attempt std=c++14 on epel7
+
* Wed Oct 18 2017 Tom Callaway <spot(a)fedoraproject.org> 62.0.3202.62-1
- update to 62.0.3202.62
5 years
[chromium-libs-media-freeworld: 32/259] Merge branch 'master' into epel7
by Nicolas Chauvet
commit 12bdf54b389cf5395cdccba7e7b85953881f8170
Merge: b36884a 3f324a0
Author: Tom Callaway <spot(a)fedoraproject.org>
Date: Tue Oct 24 17:03:05 2017 -0400
Merge branch 'master' into epel7
...mium-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 +++++++++++++++++++++
...-epel7-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-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(-)
---
5 years
[chromium-libs-media-freeworld: 31/259] Merge branch 'master' into f26
by Nicolas Chauvet
commit c28ea780441f1b559607cc8a5645f21078d41dfa
Merge: 07728cd 3f324a0
Author: Tom Callaway <spot(a)fedoraproject.org>
Date: Tue Oct 24 17:02:27 2017 -0400
Merge branch 'master' into f26
...mium-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 +++++++++++++++++++++
...-epel7-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-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(-)
---
5 years
[chromium-libs-media-freeworld: 29/259] 62.0.3202.62
by Nicolas Chauvet
commit 69e53044ee20b1d5d79eb03f4303b5cf922d92e8
Author: Tom Callaway <spot(a)fedoraproject.org>
Date: Tue Oct 24 16:59:02 2017 -0400
62.0.3202.62
...mium-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 +++++++++++++++++++++
...-epel7-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-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(-)
---
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 <string_view> 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 <string_view>
+
+ // 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(<string_view>)
+ #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<service_manager::Service
+ auto resource_coordinator_service =
+ base::MakeUnique<ResourceCoordinatorService>();
+
+- return resource_coordinator_service;
++ return std::unique_ptr<service_manager::Service>(
++ 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-pars
er='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-pars
er='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-pars
er='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-pars
er='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-pars
er='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-pars
er='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_li
nux_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_li
nux_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<DataElementPtr> elements;
+- const DataElementPtr null_element = nullptr;
++ const DataElementPtr null_element;
+ BlobBytesProvider* last_bytes_provider = nullptr;
+ RefPtr<WebTaskRunner> 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<NetworkContext>(this, std::move(request),
+ std::move(params), std::move(builder));
+ *url_request_context = network_context->url_request_context();
++ return std::unique_ptr<content::NetworkContext>(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 <functional>
+ #include <memory>
+
+ 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<base::Value> 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<InkDropImpl> InkDropHost
+ base::MakeUnique<InkDropImpl>(this, size());
+ ink_drop->SetAutoHighlightMode(
+ views::InkDropImpl::AutoHighlightMode::HIDE_ON_RIPPLE);
+- return ink_drop;
++ return std:move(ink_drop);
+ }
+
+ std::unique_ptr<InkDropImpl>
+@@ -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<InkDrop> Checkbox::Creat
+ std::unique_ptr<InkDropImpl> ink_drop = CreateDefaultInkDropImpl();
+ ink_drop->SetShowHighlightOnHover(false);
+ ink_drop->SetAutoHighlightMode(InkDropImpl::AutoHighlightMode::NONE);
+- return ink_drop;
++ return std::move(ink_drop);
+ }
+
+ std::unique_ptr<InkDropRipple> 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<uintptr_t>(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 <math.h>
++#include <cmath>
+ #include <numeric>
+ #include <vector>
+
+--- 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<gpu::mojom::MailboxDataView, gpu::Mailbox> {
+ static base::span<const int8_t> 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<viz::mojom::FilterOperationDataView, cc::FilterOperation> {
+ static base::span<const float> matrix(const cc::FilterOperation& operation) {
+ if (operation.type() != cc::FilterOperation::COLOR_MATRIX)
+ return base::span<const float>();
+- return operation.matrix();
++ return base::make_span(operation.matrix());
+ }
+
+ static base::span<const gfx::Rect> 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<const float> 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|libdispla
y|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|libpoli
cy_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_t
racker|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/+/b794998819088f76b4cf44c8...
# 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/+/9c77470ff34bac937ceb765a...
-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/+/84d9cc2d5491706d638a...
-Patch51: chromium-61.0.3163.79-fix-gn-again.patch
-# more gcc fixes
-# https://chromium.googlesource.com/chromium/src.git/+/cbe6845263215e0f3981...
-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 <spot(a)fedoraproject.org> 62.0.3202.62-1
+- update to 62.0.3202.62
+
* Fri Sep 22 2017 Tom Callaway <spot(a)fedoraproject.org> 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
5 years
[chromium-libs-media-freeworld: 28/259] Improve the chromium-latest.py script
by Nicolas Chauvet
commit 07728cdf8251f5fab60de9e48e5cee5bb5fc9cf4
Author: Tomas Popela <tpopela(a)redhat.com>
Date: Thu Oct 19 14:08:03 2017 +0200
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)
5 years
[chromium-libs-media-freeworld: 27/259] Improve the chromium-latest.py script
by Nicolas Chauvet
commit 404a6d24141497f551e18ee40e448d65715eddcc
Author: Tomas Popela <tpopela(a)redhat.com>
Date: Thu Oct 19 14:08:03 2017 +0200
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)
5 years