Architecture specific change in rpms/paraview.git
by githook-noreply@fedoraproject.org
The package rpms/paraview.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/paraview.git/commit/?id=13a3655eb....
Change:
+%ifarch ppc64le
Thanks.
Full change:
============
commit 13a3655eb4d4630e28e9b39e20c8c25f60d3b463
Author: Orion Poplawski <orion(a)nwra.com>
Date: Sun Oct 6 15:58:22 2019 -0600
Update to 5.8.0
diff --git a/.gitignore b/.gitignore
index 50be066..be854db 100644
--- a/.gitignore
+++ b/.gitignore
@@ -36,3 +36,5 @@ ParaView-3.8.1.tar.gz
/ParaView-v5.5.1.tar.gz
/ParaView-v5.5.2.tar.gz
/ParaView-v5.6.0.tar.gz
+/ParaView-v5.7.0.tar.gz
+/ParaView-v5.8.0.tar.gz
diff --git a/5883.patch b/5883.patch
deleted file mode 100644
index f7489ce..0000000
--- a/5883.patch
+++ /dev/null
@@ -1,176 +0,0 @@
-From 257b9d7b18d5f3db3fe099dc18f230e23f7dfbab Mon Sep 17 00:00:00 2001
-From: David Gobbi <david.gobbi(a)gmail.com>
-Date: Tue, 20 Aug 2019 17:02:24 -0600
-Subject: [PATCH] Compatibility for Python 3.8
-
-The PyTypeObject struct was modified in Python 3.8, this change is
-required to avoid compile errors.
----
- .../PythonInterpreter/vtkPythonStdStreamCaptureHelper.h | 6 ++++++
- Wrapping/PythonCore/PyVTKMethodDescriptor.cxx | 2 +-
- Wrapping/PythonCore/PyVTKNamespace.cxx | 2 +-
- Wrapping/PythonCore/PyVTKReference.cxx | 8 ++++----
- Wrapping/PythonCore/PyVTKTemplate.cxx | 2 +-
- Wrapping/PythonCore/vtkPythonCompatibility.h | 8 +++++++-
- Wrapping/Tools/vtkWrapPythonClass.c | 2 +-
- Wrapping/Tools/vtkWrapPythonEnum.c | 2 +-
- Wrapping/Tools/vtkWrapPythonType.c | 2 +-
- 9 files changed, 23 insertions(+), 11 deletions(-)
-
-diff --git a/VTK/Utilities/PythonInterpreter/vtkPythonStdStreamCaptureHelper.h b/VTK/Utilities/PythonInterpreter/vtkPythonStdStreamCaptureHelper.h
-index b1c12c83de..14ccfbe928 100644
---- a/VTK/Utilities/PythonInterpreter/vtkPythonStdStreamCaptureHelper.h
-+++ b/VTK/Utilities/PythonInterpreter/vtkPythonStdStreamCaptureHelper.h
-@@ -140,6 +140,12 @@ static PyTypeObject vtkPythonStdStreamCaptureHelperType = {
- #if PY_VERSION_HEX >= 0x03040000
- 0, // tp_finalize
- #endif
-+#if PY_VERSION_HEX >= 0x03080000
-+ 0, // tp_vectorcall
-+#if PY_VERSION_HEX < 0x03090000
-+ 0, // tp_print
-+#endif
-+#endif
- };
-
- static PyObject* vtkWrite(PyObject* self, PyObject* args)
-diff --git a/VTK/Wrapping/PythonCore/PyVTKMethodDescriptor.cxx b/VTK/Wrapping/PythonCore/PyVTKMethodDescriptor.cxx
-index 2b0d443537..3840038498 100644
---- a/VTK/Wrapping/PythonCore/PyVTKMethodDescriptor.cxx
-+++ b/VTK/Wrapping/PythonCore/PyVTKMethodDescriptor.cxx
-@@ -186,7 +186,7 @@ PyTypeObject PyVTKMethodDescriptor_Type = {
- sizeof(PyMethodDescrObject), // tp_basicsize
- 0, // tp_itemsize
- PyVTKMethodDescriptor_Delete, // tp_dealloc
-- nullptr, // tp_print
-+ 0, // tp_vectorcall_offset
- nullptr, // tp_getattr
- nullptr, // tp_setattr
- nullptr, // tp_compare
-diff --git a/VTK/Wrapping/PythonCore/PyVTKNamespace.cxx b/VTK/Wrapping/PythonCore/PyVTKNamespace.cxx
-index 71ee2a3516..5cf5bfbe6b 100644
---- a/VTK/Wrapping/PythonCore/PyVTKNamespace.cxx
-+++ b/VTK/Wrapping/PythonCore/PyVTKNamespace.cxx
-@@ -49,7 +49,7 @@ PyTypeObject PyVTKNamespace_Type = {
- 0, // tp_basicsize
- 0, // tp_itemsize
- PyVTKNamespace_Delete, // tp_dealloc
-- nullptr, // tp_print
-+ 0, // tp_vectorcall_offset
- nullptr, // tp_getattr
- nullptr, // tp_setattr
- nullptr, // tp_compare
-diff --git a/VTK/Wrapping/PythonCore/PyVTKReference.cxx b/VTK/Wrapping/PythonCore/PyVTKReference.cxx
-index 943ac71080..b7104091c0 100644
---- a/VTK/Wrapping/PythonCore/PyVTKReference.cxx
-+++ b/VTK/Wrapping/PythonCore/PyVTKReference.cxx
-@@ -1010,7 +1010,7 @@ PyTypeObject PyVTKReference_Type = {
- sizeof(PyVTKReference), // tp_basicsize
- 0, // tp_itemsize
- PyVTKReference_Delete, // tp_dealloc
-- nullptr, // tp_print
-+ 0, // tp_vectorcall_offset
- nullptr, // tp_getattr
- nullptr, // tp_setattr
- nullptr, // tp_compare
-@@ -1067,7 +1067,7 @@ PyTypeObject PyVTKNumberReference_Type = {
- sizeof(PyVTKReference), // tp_basicsize
- 0, // tp_itemsize
- PyVTKReference_Delete, // tp_dealloc
-- nullptr, // tp_print
-+ 0, // tp_vectorcall_offset
- nullptr, // tp_getattr
- nullptr, // tp_setattr
- nullptr, // tp_compare
-@@ -1124,7 +1124,7 @@ PyTypeObject PyVTKStringReference_Type = {
- sizeof(PyVTKReference), // tp_basicsize
- 0, // tp_itemsize
- PyVTKReference_Delete, // tp_dealloc
-- nullptr, // tp_print
-+ 0, // tp_vectorcall_offset
- nullptr, // tp_getattr
- nullptr, // tp_setattr
- nullptr, // tp_compare
-@@ -1181,7 +1181,7 @@ PyTypeObject PyVTKTupleReference_Type = {
- sizeof(PyVTKReference), // tp_basicsize
- 0, // tp_itemsize
- PyVTKReference_Delete, // tp_dealloc
-- nullptr, // tp_print
-+ 0, // tp_vectorcall_offset
- nullptr, // tp_getattr
- nullptr, // tp_setattr
- nullptr, // tp_compare
-diff --git a/VTK/Wrapping/PythonCore/PyVTKTemplate.cxx b/VTK/Wrapping/PythonCore/PyVTKTemplate.cxx
-index be200985b3..340fe7953b 100644
---- a/VTK/Wrapping/PythonCore/PyVTKTemplate.cxx
-+++ b/VTK/Wrapping/PythonCore/PyVTKTemplate.cxx
-@@ -268,7 +268,7 @@ PyTypeObject PyVTKTemplate_Type = {
- 0, // tp_basicsize
- 0, // tp_itemsize
- nullptr, // tp_dealloc
-- nullptr, // tp_print
-+ 0, // tp_vectorcall_offset
- nullptr, // tp_getattr
- nullptr, // tp_setattr
- nullptr, // tp_compare
-diff --git a/VTK/Wrapping/PythonCore/vtkPythonCompatibility.h b/VTK/Wrapping/PythonCore/vtkPythonCompatibility.h
-index 4a767844a6..be208faeef 100644
---- a/VTK/Wrapping/PythonCore/vtkPythonCompatibility.h
-+++ b/VTK/Wrapping/PythonCore/vtkPythonCompatibility.h
-@@ -64,7 +64,13 @@
- #endif
-
- // PyTypeObject compatibility
--#if PY_VERSION_HEX >= 0x03040000
-+#if PY_VERSION_HEX >= 0x03090000
-+#define VTK_WRAP_PYTHON_SUPPRESS_UNINITIALIZED \
-+ 0, 0, 0, 0,
-+#elif PY_VERSION_HEX >= 0x03080000
-+#define VTK_WRAP_PYTHON_SUPPRESS_UNINITIALIZED \
-+ 0, 0, 0, 0, 0,
-+#elif PY_VERSION_HEX >= 0x03040000
- #define VTK_WRAP_PYTHON_SUPPRESS_UNINITIALIZED \
- 0, 0, 0,
- #else
-diff --git a/VTK/Wrapping/Tools/vtkWrapPythonClass.c b/VTK/Wrapping/Tools/vtkWrapPythonClass.c
-index b1e45f8e80..4d558ea081 100644
---- a/VTK/Wrapping/Tools/vtkWrapPythonClass.c
-+++ b/VTK/Wrapping/Tools/vtkWrapPythonClass.c
-@@ -521,7 +521,7 @@ void vtkWrapPython_GenerateObjectType(
- " sizeof(PyVTKObject), // tp_basicsize\n"
- " 0, // tp_itemsize\n"
- " PyVTKObject_Delete, // tp_dealloc\n"
-- " nullptr, // tp_print\n"
-+ " 0, // tp_vectorcall_offset\n"
- " nullptr, // tp_getattr\n"
- " nullptr, // tp_setattr\n"
- " nullptr, // tp_compare\n"
-diff --git a/VTK/Wrapping/Tools/vtkWrapPythonEnum.c b/VTK/Wrapping/Tools/vtkWrapPythonEnum.c
-index b933702242..1249362854 100644
---- a/VTK/Wrapping/Tools/vtkWrapPythonEnum.c
-+++ b/VTK/Wrapping/Tools/vtkWrapPythonEnum.c
-@@ -145,7 +145,7 @@ void vtkWrapPython_GenerateEnumType(
- " sizeof(PyIntObject), // tp_basicsize\n"
- " 0, // tp_itemsize\n"
- " nullptr, // tp_dealloc\n"
-- " nullptr, // tp_print\n"
-+ " 0, // tp_vectorcall_offset\n"
- " nullptr, // tp_getattr\n"
- " nullptr, // tp_setattr\n"
- " nullptr, // tp_compare\n"
-diff --git a/VTK/Wrapping/Tools/vtkWrapPythonType.c b/VTK/Wrapping/Tools/vtkWrapPythonType.c
-index 744cb1b9d3..0a1375e541 100644
---- a/VTK/Wrapping/Tools/vtkWrapPythonType.c
-+++ b/VTK/Wrapping/Tools/vtkWrapPythonType.c
-@@ -709,7 +709,7 @@ void vtkWrapPython_GenerateSpecialType(
- " sizeof(PyVTKSpecialObject), // tp_basicsize\n"
- " 0, // tp_itemsize\n"
- " Py%s_Delete, // tp_dealloc\n"
-- " nullptr, // tp_print\n"
-+ " 0, // tp_vectorcall_offset\n"
- " nullptr, // tp_getattr\n"
- " nullptr, // tp_setattr\n"
- " nullptr, // tp_compare\n"
---
-2.21.0
-
diff --git a/paraview-cmakedir.patch b/paraview-cmakedir.patch
new file mode 100644
index 0000000..f70792e
--- /dev/null
+++ b/paraview-cmakedir.patch
@@ -0,0 +1,12 @@
+diff -up ParaView-v5.8.0/CMakeLists.txt.cmakedir ParaView-v5.8.0/CMakeLists.txt
+--- ParaView-v5.8.0/CMakeLists.txt.cmakedir 2020-02-26 17:55:43.830906529 -0700
++++ ParaView-v5.8.0/CMakeLists.txt 2020-02-26 18:05:08.407505870 -0700
+@@ -343,7 +343,7 @@ if (PARAVIEW_VERSIONED_INSTALL)
+ endif ()
+
+ set(paraview_cmake_destination
+- "${CMAKE_INSTALL_LIBDIR}/cmake/paraview${paraview_version_suffix}")
++ "${CMAKE_INSTALL_CMAKEDIR}/paraview${paraview_version_suffix}")
+
+ set(PARAVIEW_CUSTOM_LIBRARY_SUFFIX "<DEFAULT>"
+ CACHE STRING "Custom library file name suffix (defaults to the version number)")
diff --git a/paraview-desktop.patch b/paraview-desktop.patch
deleted file mode 100644
index fa59bb2..0000000
--- a/paraview-desktop.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-From a512bb5c01b24f238d8053779a7ca124db064773 Mon Sep 17 00:00:00 2001
-From: Orion Poplawski <orion(a)nwra.com>
-Date: Sat, 9 Mar 2019 15:20:42 -0700
-Subject: [PATCH] Allow paraview to work with "Open With"
-
----
- Applications/ParaView/org.paraview.ParaView.desktop.in | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/Applications/ParaView/org.paraview.ParaView.desktop.in b/Applications/ParaView/org.paraview.ParaView.desktop.in
-index d1da219349..34338f6daa 100644
---- a/Applications/ParaView/paraview.desktop.in
-+++ b/Applications/ParaView/paraview.desktop.in
-@@ -3,6 +3,6 @@ Version=1.0
- Type=Application
- Name=ParaView
- Comment=Parallel visualization application
--Exec=paraview
-+Exec=paraview %f
- TryExec=paraview
- Icon=paraview
---
-2.18.1
-
diff --git a/paraview-metainfo.patch b/paraview-metainfo.patch
deleted file mode 100644
index 1d2e391..0000000
--- a/paraview-metainfo.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-diff -up ParaView-v5.6.0/Applications/ParaView/CMakeLists.txt.orig ParaView-v5.6.0/Applications/ParaView/CMakeLists.txt
---- ParaView-v5.6.0/Applications/ParaView/CMakeLists.txt.orig 2019-02-12 20:25:45.785665391 -0700
-+++ ParaView-v5.6.0/Applications/ParaView/CMakeLists.txt 2019-02-12 20:26:44.877398493 -0700
-@@ -164,6 +164,6 @@ elseif (UNIX)
- endforeach ()
- install(
- FILES paraview.appdata.xml
-- DESTINATION share/appdata
-+ DESTINATION share/metainfo
- COMPONENT runtime)
- endif()
diff --git a/paraview-pegtl.patch b/paraview-pegtl.patch
deleted file mode 100644
index 3dde917..0000000
--- a/paraview-pegtl.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -up ParaView-v5.6.0/VTK/IO/MotionFX/vtkMotionFXCFGGrammar.h.pegtl ParaView-v5.6.0/VTK/IO/MotionFX/vtkMotionFXCFGGrammar.h
---- ParaView-v5.6.0/VTK/IO/MotionFX/vtkMotionFXCFGGrammar.h.pegtl 2018-11-06 12:05:18.000000000 -0700
-+++ ParaView-v5.6.0/VTK/IO/MotionFX/vtkMotionFXCFGGrammar.h 2019-02-06 20:04:55.642987394 -0700
-@@ -22,7 +22,7 @@
- #include <vtk_pegtl.h>
-
- // for debugging
--#include <vtkpegtl/include/tao/pegtl/contrib/tracer.hpp>
-+#include <tao/pegtl/contrib/tracer.hpp>
-
- namespace MotionFX
- {
diff --git a/paraview.spec b/paraview.spec
index 06f8cf8..53af32d 100644
--- a/paraview.spec
+++ b/paraview.spec
@@ -1,7 +1,6 @@
# This package depends on automagic byte compilation
# https://fedoraproject.org/wiki/Changes/No_more_automagic_Python_bytecompi...
%global _python_bytecompile_extra 1
-%global _target_platform %{_vendor}-%{_target_os}
%if 0%{?fedora} && 0%{?fedora} > 31
%define _legacy_common_support 1
@@ -10,10 +9,10 @@
%{!?build_openmpi:%global build_openmpi 1}
%{!?build_mpich:%global build_mpich 1}
%global pv_maj 5
-%global pv_min 6
+%global pv_min 8
%global pv_patch 0
%global pv_majmin %{pv_maj}.%{pv_min}
-#global rcsuf rc3
+#global rcsuf -RC3
%{?rcsuf:%global relsuf .%{rcsuf}}
%{?rcsuf:%global versuf -%{rcsuf}}
@@ -27,7 +26,7 @@
# VTK currently is carrying local modifications to gl2ps
%bcond_with gl2ps
%if !%{with gl2ps}
-%global vtk_use_system_gl2ps -DVTK_USE_SYSTEM_GL2PS:BOOL=OFF
+%global vtk_use_system_gl2ps -DVTK_MODULE_USE_EXTERNAL_VTK_gl2ps:BOOL=OFF
%endif
# Default to Qt5 on Fedora and RHEL 8+
@@ -43,66 +42,57 @@
# We need jsoncpp >= 0.7
%if 0%{?fedora} || 0%{?rhel} >= 8
%global system_jsoncpp 1
-%global vtk_use_system_jsoncpp -DVTK_USE_SYSTEM_JSONCPP:BOOL=ON
+%global vtk_use_system_jsoncpp -DVTK_MODULE_USE_EXTERNAL_VTK_jsoncpp:BOOL=ON
%else
%global system_jsoncpp 0
-%global vtk_use_system_jsoncpp -DVTK_USE_SYSTEM_JSONCPP:BOOL=OFF
+%global vtk_use_system_jsoncpp -DVTK_MODULE_USE_EXTERNAL_VTK_jsoncpp:BOOL=OFF
%endif
%bcond_without protobuf
%if %{with protobuf}
-%global vtk_use_system_protobuf -DVTK_USE_SYSTEM_PROTOBUF:BOOL=ON
+%global vtk_use_system_protobuf -DVTK_MODULE_USE_EXTERNAL_ParaView_protobuf:BOOL=ON
%else
-%global vtk_use_system_protobuf -DVTK_USE_SYSTEM_PROTOBUF:BOOL=OFF
+%global vtk_use_system_protobuf -DVTK_MODULE_USE_EXTERNAL_ParaView_protobuf:BOOL=OFF
%endif
-# We need pugixml >= 1.4
+# We need pugixml >= 1.9
%if 0%{?fedora} || 0%{?rhel} >= 8
+# ParaView 5.7.0 disabled building with external pugixml
%global system_pugixml 1
-%global vtk_use_system_pugixml -DVTK_USE_SYSTEM_PUGIXML:BOOL=ON
+%global vtk_use_system_pugixml -DVTK_MODULE_USE_EXTERNAL_VTK_pugixml:BOOL=ON
%else
%global system_pugixml 0
-%global vtk_use_system_pugixml -DVTK_USE_SYSTEM_PUGIXML:BOOL=OFF
+%global vtk_use_system_pugixml -DVTK_MODULE_USE_EXTERNAL_VTK_pugixml:BOOL=OFF
%endif
Name: paraview
Version: %{pv_majmin}.%{pv_patch}
-Release: 16%{?relsuf}%{?dist}
+Release: 1%{?relsuf}%{?dist}
Summary: Parallel visualization application
License: BSD
-URL: http://www.paraview.org/
-Source0: http://www.paraview.org/files/v%{pv_majmin}/ParaView-v%{version}%{?versuf...
+URL: https://www.paraview.org/
+Source0: https://www.paraview.org/files/v%{pv_majmin}/ParaView-v%{version}%{?versu...
Source1: paraview.xml
Source2: FindPEGTL.cmake
-# Use system pegtl
-Patch0: paraview-pegtl.patch
-# Fix appdata install location
-# https://gitlab.kitware.com/paraview/paraview/merge_requests/3014
-Patch1: paraview-metainfo.patch
-# Allow Open with...
-# https://bugzilla.redhat.com/show_bug.cgi?id=1635276
-# https://gitlab.kitware.com/paraview/paraview/merge_requests/3103
-Patch2: paraview-desktop.patch
-# Python 3.8 support
-Patch3: https://gitlab.kitware.com/vtk/vtk/merge_requests/5883.patch
-# Try to work around issues on wayland
-# https://bugzilla.redhat.com/show_bug.cgi?id=1769060
-# https://gitlab.kitware.com/paraview/paraview/issues/19481
-Patch4: paraview-wayland.patch
+# Fix cmake files install location
+# https://gitlab.kitware.com/paraview/paraview/issues/19724
+Patch0: paraview-cmakedir.patch
BuildRequires: cmake3
-%if 0%{?rhel} && 0%{?rhel} <= 7
-BuildRequires: qt-assistant
-%else
-BuildRequires: qt-assistant-adp-devel
-%endif
+#if 0%{?rhel} && 0%{?rhel} <= 7
+#BuildRequires: qt-assistant
+#else
+#BuildRequires: qt-assistant-adp-devel
+#endif
BuildRequires: lz4-devel
%if %{with qt5}
BuildRequires: cmake(Qt5)
+BuildRequires: cmake(Qt5Svg)
BuildRequires: cmake(Qt5UiPlugin)
BuildRequires: cmake(Qt5X11Extras)
BuildRequires: qt5-qtwebkit-devel
+BuildRequires: /usr/bin/xmlpatterns-qt5
%else
BuildRequires: qt-devel
BuildRequires: qt-webkit-devel
@@ -151,14 +141,16 @@ BuildRequires: libjpeg-devel
BuildRequires: libpng-devel
BuildRequires: libtheora-devel
BuildRequires: libxml2-devel
+BuildRequires: libXt-devel
BuildRequires: netcdf-cxx-devel
BuildRequires: PEGTL-devel
%if %{with protobuf}
BuildRequires: protobuf-devel
%endif
%if %{system_pugixml}
-BuildRequires: pugixml-devel >= 1.4
+BuildRequires: pugixml-devel >= 1.9
%endif
+BuildRequires: utf8cpp-devel
# For validating desktop and appdata files
BuildRequires: desktop-file-utils
%if 0%{?fedora} || 0%{?rhel} >= 8
@@ -169,6 +161,7 @@ BuildRequires: glibc-langpack-en
Requires: hdf5%{?_hdf5_version: = %{_hdf5_version}}
Requires: %{name}-data = %{version}-%{release}
%if 0%{?fedora} || 0%{?rhel} >= 8
+#Recommends: python3-pygments
Requires: python3-pygments
Requires: python3-six
Requires: python3-netcdf4
@@ -210,10 +203,14 @@ Provides: bundled(jsoncpp) = 0.7.0
%if !%{with protobuf}
Provides: bundled(protobuf) = 2.3.0
%endif
+%if !0%{system_pugixml}
+Provides: bundled(pugixml) = 1.9
+%endif
# Bundled vtk
# https://bugzilla.redhat.com/show_bug.cgi?id=697842
Provides: bundled(vtk) = 6.3.0
Provides: bundled(diy2)
+Provides: bundled(h5part) = 1.6.6
Provides: bundled(icet)
Provides: bundled(libharu)
Provides: bundled(libproj4)
@@ -237,23 +234,15 @@ Provides: bundled(xdmf2)
#-- Plugin: VaporPlugin - Plugin to read NCAR VDR files : Disabled - Requires vapor
# We want to build with a system vtk someday, but it doesn't work yet
-# -DUSE_EXTERNAL_VTK:BOOL=ON \\\
+# -DPARAVIEW_USE_EXTERNAL_VTK:BOOL=ON \\\
# -DVTK_DIR=%%{_libdir}/vtk \\\
%global paraview_cmake_options \\\
-DCMAKE_BUILD_TYPE=RelWithDebInfo \\\
-DOpenGL_GL_PREFERENCE=GLVND \\\
- -DPARAVIEW_BUILD_PLUGIN_AdiosReader:BOOL=ON \\\
+ -DPARAVIEW_VERSIONED_INSTALL:BOOL=OFF \\\
-DPARAVIEW_ENABLE_PYTHON:BOOL=ON \\\
-%if %{with qt5} \
- -DPARAVIEW_QT_VERSION:STRING="5" \\\
-%endif \
-%if %{with VisitBridge} \
- -DPARAVIEW_USE_VISITBRIDGE=ON \\\
- -DVTK_USE_SYSTEM_VISITLIB:BOOL=OFF \\\
- -DVISIT_BUILD_READER_CGNS=ON \\\
-%endif \
- -DVTK_CUSTOM_LIBRARY_SUFFIX="" \\\
+ -DPARAVIEW_INSTALL_DEVELOPMENT_FILES:BOOL=ON \\\
-DVTK_INSTALL_DATA_DIR=share/paraview \\\
-DVTK_INSTALL_PACKAGE_DIR=share/cmake/paraview \\\
%if 0%{?fedora} || 0%{?rhel} >= 8 \
@@ -262,17 +251,12 @@ Provides: bundled(xdmf2)
-DVTK_PYTHON_VERSION=2 \\\
%endif \
-DVTK_USE_OGGTHEORA_ENCODER:BOOL=ON \\\
- -DVTK_USE_SYSTEM_LIBRARIES=ON \\\
- -DVTK_USE_SYSTEM_HDF5=ON \\\
+ -DPARAVIEW_BUILD_WITH_EXTERNAL:BOOL=ON \\\
%{?vtk_use_system_gl2ps} \\\
%{?vtk_use_system_jsoncpp} \\\
- -DVTK_USE_SYSTEM_NETCDF=ON \\\
+ -DVTK_MODULE_USE_EXTERNAL_VTK_libharu=OFF \\\
%{?vtk_use_system_protobuf} \\\
%{?vtk_use_system_pugixml} \\\
- -DVTK_USE_SYSTEM_PYGMENTS:BOOL=ON \\\
- -DVTK_USE_SYSTEM_QTTESTING=OFF \\\
- -DVTK_USE_SYSTEM_XDMF2=OFF \\\
- -DXDMF_WRAP_PYTHON:BOOL=ON \\\
-DBUILD_EXAMPLES:BOOL=ON \\\
-DBUILD_TESTING:BOOL=OFF \\\
-DCMAKE_VERBOSE_MAKEFILE:BOOL=ON
@@ -280,23 +264,23 @@ Provides: bundled(xdmf2)
%global paraview_cmake_mpi_options \\\
-DCMAKE_PREFIX_PATH:PATH=$MPI_HOME \\\
-DCMAKE_INSTALL_PREFIX:PATH=$MPI_HOME \\\
+ -DCMAKE_INSTALL_CMAKEDIR:PATH=lib/cmake \\\
+ -DCMAKE_INSTALL_INCLUDEDIR:PATH=../../include/$MPI_COMPILER/%{name} \\\
+ -DCMAKE_INSTALL_LIBDIR:PATH=lib/%{name} \\\
-DHDF5_INCLUDE_DIRS:PATH=$MPI_INCLUDE \\\
- -DINCLUDE_INSTALL_DIR:PATH=$MPI_INCLUDE/paraview \\\
-DPYTHON_INSTALL_DIR=PATH=$MPI_PYTHON2_SITEARCH \\\
- -DVTK_INSTALL_INCLUDE_DIR:PATH=$MPI_INCLUDE/paraview \\\
- -DVTK_INSTALL_ARCHIVE_DIR:PATH=lib/paraview \\\
- -DVTK_INSTALL_LIBRARY_DIR:PATH=lib/paraview \\\
- -DVTK_USE_SYSTEM_DIY2=OFF \\\
- -DVTK_USE_SYSTEM_ICET=OFF \\\
- -DVTK_USE_SYSTEM_MPI4PY:BOOL=ON \\\
- -DPARAVIEW_INSTALL_DEVELOPMENT_FILES:BOOL=ON \\\
- -DQtTesting_INSTALL_LIB_DIR=lib/paraview \\\
- -DQtTesting_INSTALL_CMAKE_DIR=lib/paraview/CMake \\\
+ -DVTK_INSTALL_INCLUDE_DIR:PATH=$MPI_INCLUDE/%{name} \\\
+ -DVTK_INSTALL_ARCHIVE_DIR:PATH=lib/%{name} \\\
+ -DVTK_INSTALL_LIBRARY_DIR:PATH=lib/%{name} \\\
+ -DVTK_MODULE_USE_EXTERNAL_VTK_diy2=OFF \\\
+ -DVTK_MODULE_USE_EXTERNAL_VTK_icet=OFF \\\
+ -DQtTesting_INSTALL_LIB_DIR=lib/%{name} \\\
+ -DQtTesting_INSTALL_CMAKE_DIR=lib/%{name}/CMake \\\
-DPARAVIEW_USE_MPI:BOOL=ON \\\
-DICET_BUILD_TESTING:BOOL=ON \\\
%if %{with VisitBridge} \
-DPARAVIEW_USE_VISITBRIDGE=ON \\\
- -DVTK_USE_SYSTEM_VISITLIB:BOOL=OFF \\\
+ -DVTK_MODULE_USE_EXTERNAL_ParaView_VisItLib:BOOL=OFF \\\
-DVISIT_BUILD_READER_CGNS=ON \\\
%endif \
%{paraview_cmake_options}
@@ -475,7 +459,7 @@ developing applications that use %{name}-mpich.
%prep
-%autosetup -n ParaView-v%{version}%{?versuf} -p 1
+%autosetup -p1 -n ParaView-v%{version}%{?versuf}
%if %{with VisitBridge}
cp -p Utilities/VisItBridge/README.md Utilities/VisItBridge/README-VisItBridge.md
@@ -487,13 +471,14 @@ rm -f Utilities/VisItBridge/databases/readers/Vs/VsStaggeredField.C
# Install python properly
sed -i -s '/VTK_INSTALL_PYTHON_USING_CMAKE/s/TRUE/FALSE/' CMakeLists.txt
#Remove included thirdparty sources just to be sure
-for x in vtkcgns %{?_with_protobuf:vtkprotobuf} vtkpygments
+for x in vtkcgns %{?_with_protobuf:vtkprotobuf}
do
rm -r ThirdParty/*/${x}
done
%if %{system_pugixml}
-rm ThirdParty/pugixml/pugixml.*
+rm -r VTK/ThirdParty/pugixml/vtkpugixml
%endif
+# TODO - loguru
for x in vtk{doubleconversion,eigen,expat,freetype,%{?_with_gl2ps:gl2ps,}glew,hdf5,jpeg,kissfft,libproj,libxml2,lz4,lzma,mpi4py,netcdf,ogg,pegtl,png,sqlite,theora,tiff,zfp,zlib}
do
rm -r VTK/ThirdParty/*/${x}
@@ -509,25 +494,24 @@ cp %SOURCE2 VTK/CMake/FindPEGTL.cmake
#rm -r VTK
%build
+%ifarch ppc64le
+%global _smp_mflags -j1
+%endif
mkdir %{_target_platform}
pushd %{_target_platform}
%cmake3 -Wno-dev .. \
- -DBUILD_DOCUMENTATION:BOOL=ON \
- -DVTK_INSTALL_INCLUDE_DIR:PATH=include/paraview \
- -DVTK_INSTALL_ARCHIVE_DIR:PATH=%{_lib}/paraview \
- -DVTK_INSTALL_LIBRARY_DIR:PATH=%{_lib}/paraview \
- -DPARAVIEW_INSTALL_DEVELOPMENT_FILES:BOOL=ON \
- -DQtTesting_INSTALL_LIB_DIR=%{_lib}/paraview \
- -DQtTesting_INSTALL_CMAKE_DIR=%{_lib}/paraview/CMake \
+ -DCMAKE_INSTALL_CMAKEDIR:PATH=%{_lib}/cmake \
+ -DCMAKE_INSTALL_LIBDIR:PATH=%{_lib}/%{name} \
+ -DPARAVIEW_BUILD_DEVELOPER_DOCUMENTATION:BOOL=ON \
+ -DVTK_INSTALL_INCLUDE_DIR:PATH=include/%{name} \
+ -DVTK_INSTALL_ARCHIVE_DIR:PATH=%{_lib}/%{name} \
+ -DVTK_INSTALL_LIBRARY_DIR:PATH=%{_lib}/%{name} \
+ -DQtTesting_INSTALL_LIB_DIR=%{_lib}/%{name} \
+ -DQtTesting_INSTALL_CMAKE_DIR=%{_lib}/%{name}/CMake \
%{paraview_cmake_options}
%make_build
-#export LD_LIBRARY_PATH="%{buildroot}%{_libdir}:%{_libdir}"
-#export PYTHONPATH="%{buildroot}%{_libdir}/%{name}/site-packages:${PYTHONPATH}"
-#export PYTHONPATH="${PYTHONPATH%:}:%{python2_sitearch}/mpich"
export LANG=en_US.UTF-8
-%make_build DoxygenDoc ParaViewDoc
-#unset LD_LIBRARY_PATH
-#unset PYTHONPATH
+%make_build ParaViewDoxygenDoc ParaViewPythonDoc
popd
%if %{build_openmpi}
mkdir %{_target_platform}-openmpi
@@ -535,8 +519,6 @@ pushd %{_target_platform}-openmpi
%{_openmpi_load}
%cmake3 -Wno-dev .. \
%{paraview_cmake_mpi_options}
-# Fixup forward paths
-sed -i -e 's,../%{_lib}/openmpi,..,' `find -name \*-forward.c`
%make_build
%{_openmpi_unload}
popd
@@ -550,8 +532,6 @@ pushd %{_target_platform}-mpich
[ -z "$PYTHONPATH" ] && export PYTHONPATH=$MPI_PYTHON_SITEARCH
%cmake3 -Wno-dev .. \
%{paraview_cmake_mpi_options}
-# Fixup forward paths
-sed -i -e 's,../%{_lib}/mpich,..,' `find -name \*-forward.c`
%make_build
%{_mpich_unload}
popd
@@ -576,8 +556,6 @@ install -m644 %SOURCE1 %{buildroot}%{_datadir}/mime/packages
#Remove mpi copy of doc and man pages and data
rm -rf %{buildroot}%{_libdir}/openmpi/share/{metainfo,applications,doc,icons,man,mimeinfo,paraview,vtkm-*}
-# Fix shell script permissions
-chmod 0755 %{buildroot}%{_libdir}/openmpi/share/cmake/paraview/pre-commit
%{_openmpi_unload}
%endif
@@ -590,35 +568,27 @@ chmod 0755 %{buildroot}%{_libdir}/openmpi/share/cmake/paraview/pre-commit
#Remove mpi copy of doc and man pages and data
rm -rf %{buildroot}%{_libdir}/mpich/share/{metainfo,applications,doc,icons,man,mimeinfo,paraview,vtkm-*}
-# Fix shell script permissions
-chmod 0755 %{buildroot}%{_libdir}/mpich/share/cmake/paraview/pre-commit
%{_mpich_unload}
%endif
#Install the normal version
%make_install -C %{_target_platform}
-desktop-file-validate %{buildroot}%{_datadir}/applications/paraview.desktop
+desktop-file-validate %{buildroot}%{_datadir}/applications/org.paraview.ParaView.desktop
%if 0%{?fedora} || 0%{?rhel} >= 8
-appstream-util validate-relax --nonet %{buildroot}/%{_datadir}/metainfo/*.appdata.xml
+appstream-util validate-relax --nonet %{buildroot}/%{_datadir}/metainfo/org.paraview.ParaView.appdata.xml
%endif
#Cleanup only vtk conflicting binaries
-rm %{buildroot}%{_bindir}/vtk{LegacyColorMapXMLToJSON,ParseJava,Wrap{Hierarchy,Java,Python}}*
+rm %{buildroot}%{_bindir}/vtk{ParseJava,Wrap{Hierarchy,Java,Python}}*
rm -r %{buildroot}%{_datadir}/vtkm-*
-# Fix shell script permissions
-chmod 0755 %{buildroot}%{_datadir}/cmake/paraview/pre-commit
-
-# Strip build dir from VTKConfig.cmake (bug #917425)
-find %{buildroot} -name VTKConfig.cmake | xargs sed -i -e '/builddir/s/^/#/'
-
# Build autodocs and move documentation-files to proper location
mkdir -p %{buildroot}%{_pkgdocdir}
install -pm 0644 README.md %{buildroot}%{_pkgdocdir}
install -pm 0644 Utilities/VisItBridge/README-VisItBridge.md %{buildroot}%{_pkgdocdir}
-mv %{buildroot}%{_docdir}/paraview-%{pv_majmin}/* %{buildroot}%{_pkgdocdir}
-rm -rf %{buildroot}%{_docdir}/paraview-%{pv_majmin}
+mv %{buildroot}%{_docdir}/ParaView/* %{buildroot}%{_pkgdocdir}
+rm -rf %{buildroot}%{_docdir}/ParaView
find %{buildroot}%{_pkgdocdir} -name '.*' -print0 | xargs -0 rm -frv
find %{buildroot}%{_pkgdocdir} -name '*.map' -or -name '*.md5' -print -delete
hardlink -cfv %{buildroot}%{_pkgdocdir}
@@ -656,6 +626,7 @@ update-mime-database %{_datadir}/mime &> /dev/null || :
%files
%{_bindir}/%{name}
+%{_bindir}/%{name}.conf
%{_bindir}/pvbatch
# Currently disabled upstream
#{_bindir}/pvblot
@@ -672,35 +643,37 @@ update-mime-database %{_datadir}/mime &> /dev/null || :
%dir %{_pkgdocdir}
%{_pkgdocdir}/README.md
%{_pkgdocdir}/README-VisItBridge.md
-%{_datadir}/metainfo/paraview.appdata.xml
-%{_datadir}/applications/*paraview.desktop
+%{_datadir}/metainfo/org.paraview.ParaView.appdata.xml
+%{_datadir}/applications/org.paraview.ParaView.desktop
%{_datadir}/icons/hicolor/*/apps/paraview.png
+%license %{_datadir}/licenses/ParaView/
%{_datadir}/mime/packages/paraview.xml
+%{_datadir}/%{name}/
%files devel
%{_bindir}/paraview-config
%{_bindir}/vtkWrapClientServer
-%{_bindir}/vtkkwProcessXML
+%{_bindir}/vtkProbeOpenGLVersion
+%{_bindir}/vtkProcessXML
%{_includedir}/%{name}/
-%{_datadir}/cmake/
+%{_libdir}/cmake/
%{_libdir}/%{name}/*.a
%files doc
-%license %{_datadir}/licenses/%{name}*
%{_pkgdocdir}
-
%if %{build_openmpi}
%files openmpi
%{_libdir}/openmpi/bin/[ps]*
%{_libdir}/openmpi/lib/%{name}/
%exclude %{_libdir}/openmpi/lib/%{name}/*.a
+%{_libdir}/openmpi/share/licenses/
%files openmpi-devel
%{_includedir}/openmpi-%{_arch}/%{name}/
%{_libdir}/openmpi/bin/vtk*
+%{_libdir}/openmpi/lib/cmake/
%{_libdir}/openmpi/lib/%{name}/*.a
-%{_libdir}/openmpi/share/cmake/
%endif
@@ -709,16 +682,20 @@ update-mime-database %{_datadir}/mime &> /dev/null || :
%{_libdir}/mpich/bin/[ps]*
%{_libdir}/mpich/lib/%{name}/
%exclude %{_libdir}/mpich/lib/%{name}/*.a
+%{_libdir}/mpich/share/licenses/
%files mpich-devel
%{_includedir}/mpich-%{_arch}/%{name}/
%{_libdir}/mpich/bin/vtk*
+%{_libdir}/mpich/lib/cmake/
%{_libdir}/mpich/lib/%{name}/*.a
-%{_libdir}/mpich/share/cmake/
%endif
%changelog
+* Thu Feb 27 2020 Orion Poplawski <orion(a)nwra.com> - 5.8.0-1
+- Update to 5.8.0
+
* Mon Feb 17 2020 Sandro Mani <manisandro(a)gmail.com> - 5.6.0-16
- Rebuild (cgnslib)
diff --git a/sources b/sources
index e30ce27..2530cd6 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (ParaView-v5.6.0.tar.gz) = 4d7c1b9f5781411cdd290a0ef105221deca1af28bb29b8e6e6c077f3377b110e7c86637c11514559d2d826d36f189d5b5c1caa9e5f9c53820cf35c3ade1ae1f6
+SHA512 (ParaView-v5.8.0.tar.gz) = 803ea432f5b56f7d1b3bade78b2b531312034e7e29eaec64c6e122792f8beedc7a61f458f2392550e9ecb0f5ff969c4b11a65f80d19ca32569341c84deedc8cb
4 years, 1 month
Architecture specific change in rpms/paraview.git
by githook-noreply@fedoraproject.org
The package rpms/paraview.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/paraview.git/commit/?id=13a3655eb....
Change:
+%ifarch ppc64le
Thanks.
Full change:
============
commit 13a3655eb4d4630e28e9b39e20c8c25f60d3b463
Author: Orion Poplawski <orion(a)nwra.com>
Date: Sun Oct 6 15:58:22 2019 -0600
Update to 5.8.0
diff --git a/.gitignore b/.gitignore
index 50be066..be854db 100644
--- a/.gitignore
+++ b/.gitignore
@@ -36,3 +36,5 @@ ParaView-3.8.1.tar.gz
/ParaView-v5.5.1.tar.gz
/ParaView-v5.5.2.tar.gz
/ParaView-v5.6.0.tar.gz
+/ParaView-v5.7.0.tar.gz
+/ParaView-v5.8.0.tar.gz
diff --git a/5883.patch b/5883.patch
deleted file mode 100644
index f7489ce..0000000
--- a/5883.patch
+++ /dev/null
@@ -1,176 +0,0 @@
-From 257b9d7b18d5f3db3fe099dc18f230e23f7dfbab Mon Sep 17 00:00:00 2001
-From: David Gobbi <david.gobbi(a)gmail.com>
-Date: Tue, 20 Aug 2019 17:02:24 -0600
-Subject: [PATCH] Compatibility for Python 3.8
-
-The PyTypeObject struct was modified in Python 3.8, this change is
-required to avoid compile errors.
----
- .../PythonInterpreter/vtkPythonStdStreamCaptureHelper.h | 6 ++++++
- Wrapping/PythonCore/PyVTKMethodDescriptor.cxx | 2 +-
- Wrapping/PythonCore/PyVTKNamespace.cxx | 2 +-
- Wrapping/PythonCore/PyVTKReference.cxx | 8 ++++----
- Wrapping/PythonCore/PyVTKTemplate.cxx | 2 +-
- Wrapping/PythonCore/vtkPythonCompatibility.h | 8 +++++++-
- Wrapping/Tools/vtkWrapPythonClass.c | 2 +-
- Wrapping/Tools/vtkWrapPythonEnum.c | 2 +-
- Wrapping/Tools/vtkWrapPythonType.c | 2 +-
- 9 files changed, 23 insertions(+), 11 deletions(-)
-
-diff --git a/VTK/Utilities/PythonInterpreter/vtkPythonStdStreamCaptureHelper.h b/VTK/Utilities/PythonInterpreter/vtkPythonStdStreamCaptureHelper.h
-index b1c12c83de..14ccfbe928 100644
---- a/VTK/Utilities/PythonInterpreter/vtkPythonStdStreamCaptureHelper.h
-+++ b/VTK/Utilities/PythonInterpreter/vtkPythonStdStreamCaptureHelper.h
-@@ -140,6 +140,12 @@ static PyTypeObject vtkPythonStdStreamCaptureHelperType = {
- #if PY_VERSION_HEX >= 0x03040000
- 0, // tp_finalize
- #endif
-+#if PY_VERSION_HEX >= 0x03080000
-+ 0, // tp_vectorcall
-+#if PY_VERSION_HEX < 0x03090000
-+ 0, // tp_print
-+#endif
-+#endif
- };
-
- static PyObject* vtkWrite(PyObject* self, PyObject* args)
-diff --git a/VTK/Wrapping/PythonCore/PyVTKMethodDescriptor.cxx b/VTK/Wrapping/PythonCore/PyVTKMethodDescriptor.cxx
-index 2b0d443537..3840038498 100644
---- a/VTK/Wrapping/PythonCore/PyVTKMethodDescriptor.cxx
-+++ b/VTK/Wrapping/PythonCore/PyVTKMethodDescriptor.cxx
-@@ -186,7 +186,7 @@ PyTypeObject PyVTKMethodDescriptor_Type = {
- sizeof(PyMethodDescrObject), // tp_basicsize
- 0, // tp_itemsize
- PyVTKMethodDescriptor_Delete, // tp_dealloc
-- nullptr, // tp_print
-+ 0, // tp_vectorcall_offset
- nullptr, // tp_getattr
- nullptr, // tp_setattr
- nullptr, // tp_compare
-diff --git a/VTK/Wrapping/PythonCore/PyVTKNamespace.cxx b/VTK/Wrapping/PythonCore/PyVTKNamespace.cxx
-index 71ee2a3516..5cf5bfbe6b 100644
---- a/VTK/Wrapping/PythonCore/PyVTKNamespace.cxx
-+++ b/VTK/Wrapping/PythonCore/PyVTKNamespace.cxx
-@@ -49,7 +49,7 @@ PyTypeObject PyVTKNamespace_Type = {
- 0, // tp_basicsize
- 0, // tp_itemsize
- PyVTKNamespace_Delete, // tp_dealloc
-- nullptr, // tp_print
-+ 0, // tp_vectorcall_offset
- nullptr, // tp_getattr
- nullptr, // tp_setattr
- nullptr, // tp_compare
-diff --git a/VTK/Wrapping/PythonCore/PyVTKReference.cxx b/VTK/Wrapping/PythonCore/PyVTKReference.cxx
-index 943ac71080..b7104091c0 100644
---- a/VTK/Wrapping/PythonCore/PyVTKReference.cxx
-+++ b/VTK/Wrapping/PythonCore/PyVTKReference.cxx
-@@ -1010,7 +1010,7 @@ PyTypeObject PyVTKReference_Type = {
- sizeof(PyVTKReference), // tp_basicsize
- 0, // tp_itemsize
- PyVTKReference_Delete, // tp_dealloc
-- nullptr, // tp_print
-+ 0, // tp_vectorcall_offset
- nullptr, // tp_getattr
- nullptr, // tp_setattr
- nullptr, // tp_compare
-@@ -1067,7 +1067,7 @@ PyTypeObject PyVTKNumberReference_Type = {
- sizeof(PyVTKReference), // tp_basicsize
- 0, // tp_itemsize
- PyVTKReference_Delete, // tp_dealloc
-- nullptr, // tp_print
-+ 0, // tp_vectorcall_offset
- nullptr, // tp_getattr
- nullptr, // tp_setattr
- nullptr, // tp_compare
-@@ -1124,7 +1124,7 @@ PyTypeObject PyVTKStringReference_Type = {
- sizeof(PyVTKReference), // tp_basicsize
- 0, // tp_itemsize
- PyVTKReference_Delete, // tp_dealloc
-- nullptr, // tp_print
-+ 0, // tp_vectorcall_offset
- nullptr, // tp_getattr
- nullptr, // tp_setattr
- nullptr, // tp_compare
-@@ -1181,7 +1181,7 @@ PyTypeObject PyVTKTupleReference_Type = {
- sizeof(PyVTKReference), // tp_basicsize
- 0, // tp_itemsize
- PyVTKReference_Delete, // tp_dealloc
-- nullptr, // tp_print
-+ 0, // tp_vectorcall_offset
- nullptr, // tp_getattr
- nullptr, // tp_setattr
- nullptr, // tp_compare
-diff --git a/VTK/Wrapping/PythonCore/PyVTKTemplate.cxx b/VTK/Wrapping/PythonCore/PyVTKTemplate.cxx
-index be200985b3..340fe7953b 100644
---- a/VTK/Wrapping/PythonCore/PyVTKTemplate.cxx
-+++ b/VTK/Wrapping/PythonCore/PyVTKTemplate.cxx
-@@ -268,7 +268,7 @@ PyTypeObject PyVTKTemplate_Type = {
- 0, // tp_basicsize
- 0, // tp_itemsize
- nullptr, // tp_dealloc
-- nullptr, // tp_print
-+ 0, // tp_vectorcall_offset
- nullptr, // tp_getattr
- nullptr, // tp_setattr
- nullptr, // tp_compare
-diff --git a/VTK/Wrapping/PythonCore/vtkPythonCompatibility.h b/VTK/Wrapping/PythonCore/vtkPythonCompatibility.h
-index 4a767844a6..be208faeef 100644
---- a/VTK/Wrapping/PythonCore/vtkPythonCompatibility.h
-+++ b/VTK/Wrapping/PythonCore/vtkPythonCompatibility.h
-@@ -64,7 +64,13 @@
- #endif
-
- // PyTypeObject compatibility
--#if PY_VERSION_HEX >= 0x03040000
-+#if PY_VERSION_HEX >= 0x03090000
-+#define VTK_WRAP_PYTHON_SUPPRESS_UNINITIALIZED \
-+ 0, 0, 0, 0,
-+#elif PY_VERSION_HEX >= 0x03080000
-+#define VTK_WRAP_PYTHON_SUPPRESS_UNINITIALIZED \
-+ 0, 0, 0, 0, 0,
-+#elif PY_VERSION_HEX >= 0x03040000
- #define VTK_WRAP_PYTHON_SUPPRESS_UNINITIALIZED \
- 0, 0, 0,
- #else
-diff --git a/VTK/Wrapping/Tools/vtkWrapPythonClass.c b/VTK/Wrapping/Tools/vtkWrapPythonClass.c
-index b1e45f8e80..4d558ea081 100644
---- a/VTK/Wrapping/Tools/vtkWrapPythonClass.c
-+++ b/VTK/Wrapping/Tools/vtkWrapPythonClass.c
-@@ -521,7 +521,7 @@ void vtkWrapPython_GenerateObjectType(
- " sizeof(PyVTKObject), // tp_basicsize\n"
- " 0, // tp_itemsize\n"
- " PyVTKObject_Delete, // tp_dealloc\n"
-- " nullptr, // tp_print\n"
-+ " 0, // tp_vectorcall_offset\n"
- " nullptr, // tp_getattr\n"
- " nullptr, // tp_setattr\n"
- " nullptr, // tp_compare\n"
-diff --git a/VTK/Wrapping/Tools/vtkWrapPythonEnum.c b/VTK/Wrapping/Tools/vtkWrapPythonEnum.c
-index b933702242..1249362854 100644
---- a/VTK/Wrapping/Tools/vtkWrapPythonEnum.c
-+++ b/VTK/Wrapping/Tools/vtkWrapPythonEnum.c
-@@ -145,7 +145,7 @@ void vtkWrapPython_GenerateEnumType(
- " sizeof(PyIntObject), // tp_basicsize\n"
- " 0, // tp_itemsize\n"
- " nullptr, // tp_dealloc\n"
-- " nullptr, // tp_print\n"
-+ " 0, // tp_vectorcall_offset\n"
- " nullptr, // tp_getattr\n"
- " nullptr, // tp_setattr\n"
- " nullptr, // tp_compare\n"
-diff --git a/VTK/Wrapping/Tools/vtkWrapPythonType.c b/VTK/Wrapping/Tools/vtkWrapPythonType.c
-index 744cb1b9d3..0a1375e541 100644
---- a/VTK/Wrapping/Tools/vtkWrapPythonType.c
-+++ b/VTK/Wrapping/Tools/vtkWrapPythonType.c
-@@ -709,7 +709,7 @@ void vtkWrapPython_GenerateSpecialType(
- " sizeof(PyVTKSpecialObject), // tp_basicsize\n"
- " 0, // tp_itemsize\n"
- " Py%s_Delete, // tp_dealloc\n"
-- " nullptr, // tp_print\n"
-+ " 0, // tp_vectorcall_offset\n"
- " nullptr, // tp_getattr\n"
- " nullptr, // tp_setattr\n"
- " nullptr, // tp_compare\n"
---
-2.21.0
-
diff --git a/paraview-cmakedir.patch b/paraview-cmakedir.patch
new file mode 100644
index 0000000..f70792e
--- /dev/null
+++ b/paraview-cmakedir.patch
@@ -0,0 +1,12 @@
+diff -up ParaView-v5.8.0/CMakeLists.txt.cmakedir ParaView-v5.8.0/CMakeLists.txt
+--- ParaView-v5.8.0/CMakeLists.txt.cmakedir 2020-02-26 17:55:43.830906529 -0700
++++ ParaView-v5.8.0/CMakeLists.txt 2020-02-26 18:05:08.407505870 -0700
+@@ -343,7 +343,7 @@ if (PARAVIEW_VERSIONED_INSTALL)
+ endif ()
+
+ set(paraview_cmake_destination
+- "${CMAKE_INSTALL_LIBDIR}/cmake/paraview${paraview_version_suffix}")
++ "${CMAKE_INSTALL_CMAKEDIR}/paraview${paraview_version_suffix}")
+
+ set(PARAVIEW_CUSTOM_LIBRARY_SUFFIX "<DEFAULT>"
+ CACHE STRING "Custom library file name suffix (defaults to the version number)")
diff --git a/paraview-desktop.patch b/paraview-desktop.patch
deleted file mode 100644
index fa59bb2..0000000
--- a/paraview-desktop.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-From a512bb5c01b24f238d8053779a7ca124db064773 Mon Sep 17 00:00:00 2001
-From: Orion Poplawski <orion(a)nwra.com>
-Date: Sat, 9 Mar 2019 15:20:42 -0700
-Subject: [PATCH] Allow paraview to work with "Open With"
-
----
- Applications/ParaView/org.paraview.ParaView.desktop.in | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/Applications/ParaView/org.paraview.ParaView.desktop.in b/Applications/ParaView/org.paraview.ParaView.desktop.in
-index d1da219349..34338f6daa 100644
---- a/Applications/ParaView/paraview.desktop.in
-+++ b/Applications/ParaView/paraview.desktop.in
-@@ -3,6 +3,6 @@ Version=1.0
- Type=Application
- Name=ParaView
- Comment=Parallel visualization application
--Exec=paraview
-+Exec=paraview %f
- TryExec=paraview
- Icon=paraview
---
-2.18.1
-
diff --git a/paraview-metainfo.patch b/paraview-metainfo.patch
deleted file mode 100644
index 1d2e391..0000000
--- a/paraview-metainfo.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-diff -up ParaView-v5.6.0/Applications/ParaView/CMakeLists.txt.orig ParaView-v5.6.0/Applications/ParaView/CMakeLists.txt
---- ParaView-v5.6.0/Applications/ParaView/CMakeLists.txt.orig 2019-02-12 20:25:45.785665391 -0700
-+++ ParaView-v5.6.0/Applications/ParaView/CMakeLists.txt 2019-02-12 20:26:44.877398493 -0700
-@@ -164,6 +164,6 @@ elseif (UNIX)
- endforeach ()
- install(
- FILES paraview.appdata.xml
-- DESTINATION share/appdata
-+ DESTINATION share/metainfo
- COMPONENT runtime)
- endif()
diff --git a/paraview-pegtl.patch b/paraview-pegtl.patch
deleted file mode 100644
index 3dde917..0000000
--- a/paraview-pegtl.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -up ParaView-v5.6.0/VTK/IO/MotionFX/vtkMotionFXCFGGrammar.h.pegtl ParaView-v5.6.0/VTK/IO/MotionFX/vtkMotionFXCFGGrammar.h
---- ParaView-v5.6.0/VTK/IO/MotionFX/vtkMotionFXCFGGrammar.h.pegtl 2018-11-06 12:05:18.000000000 -0700
-+++ ParaView-v5.6.0/VTK/IO/MotionFX/vtkMotionFXCFGGrammar.h 2019-02-06 20:04:55.642987394 -0700
-@@ -22,7 +22,7 @@
- #include <vtk_pegtl.h>
-
- // for debugging
--#include <vtkpegtl/include/tao/pegtl/contrib/tracer.hpp>
-+#include <tao/pegtl/contrib/tracer.hpp>
-
- namespace MotionFX
- {
diff --git a/paraview.spec b/paraview.spec
index 06f8cf8..53af32d 100644
--- a/paraview.spec
+++ b/paraview.spec
@@ -1,7 +1,6 @@
# This package depends on automagic byte compilation
# https://fedoraproject.org/wiki/Changes/No_more_automagic_Python_bytecompi...
%global _python_bytecompile_extra 1
-%global _target_platform %{_vendor}-%{_target_os}
%if 0%{?fedora} && 0%{?fedora} > 31
%define _legacy_common_support 1
@@ -10,10 +9,10 @@
%{!?build_openmpi:%global build_openmpi 1}
%{!?build_mpich:%global build_mpich 1}
%global pv_maj 5
-%global pv_min 6
+%global pv_min 8
%global pv_patch 0
%global pv_majmin %{pv_maj}.%{pv_min}
-#global rcsuf rc3
+#global rcsuf -RC3
%{?rcsuf:%global relsuf .%{rcsuf}}
%{?rcsuf:%global versuf -%{rcsuf}}
@@ -27,7 +26,7 @@
# VTK currently is carrying local modifications to gl2ps
%bcond_with gl2ps
%if !%{with gl2ps}
-%global vtk_use_system_gl2ps -DVTK_USE_SYSTEM_GL2PS:BOOL=OFF
+%global vtk_use_system_gl2ps -DVTK_MODULE_USE_EXTERNAL_VTK_gl2ps:BOOL=OFF
%endif
# Default to Qt5 on Fedora and RHEL 8+
@@ -43,66 +42,57 @@
# We need jsoncpp >= 0.7
%if 0%{?fedora} || 0%{?rhel} >= 8
%global system_jsoncpp 1
-%global vtk_use_system_jsoncpp -DVTK_USE_SYSTEM_JSONCPP:BOOL=ON
+%global vtk_use_system_jsoncpp -DVTK_MODULE_USE_EXTERNAL_VTK_jsoncpp:BOOL=ON
%else
%global system_jsoncpp 0
-%global vtk_use_system_jsoncpp -DVTK_USE_SYSTEM_JSONCPP:BOOL=OFF
+%global vtk_use_system_jsoncpp -DVTK_MODULE_USE_EXTERNAL_VTK_jsoncpp:BOOL=OFF
%endif
%bcond_without protobuf
%if %{with protobuf}
-%global vtk_use_system_protobuf -DVTK_USE_SYSTEM_PROTOBUF:BOOL=ON
+%global vtk_use_system_protobuf -DVTK_MODULE_USE_EXTERNAL_ParaView_protobuf:BOOL=ON
%else
-%global vtk_use_system_protobuf -DVTK_USE_SYSTEM_PROTOBUF:BOOL=OFF
+%global vtk_use_system_protobuf -DVTK_MODULE_USE_EXTERNAL_ParaView_protobuf:BOOL=OFF
%endif
-# We need pugixml >= 1.4
+# We need pugixml >= 1.9
%if 0%{?fedora} || 0%{?rhel} >= 8
+# ParaView 5.7.0 disabled building with external pugixml
%global system_pugixml 1
-%global vtk_use_system_pugixml -DVTK_USE_SYSTEM_PUGIXML:BOOL=ON
+%global vtk_use_system_pugixml -DVTK_MODULE_USE_EXTERNAL_VTK_pugixml:BOOL=ON
%else
%global system_pugixml 0
-%global vtk_use_system_pugixml -DVTK_USE_SYSTEM_PUGIXML:BOOL=OFF
+%global vtk_use_system_pugixml -DVTK_MODULE_USE_EXTERNAL_VTK_pugixml:BOOL=OFF
%endif
Name: paraview
Version: %{pv_majmin}.%{pv_patch}
-Release: 16%{?relsuf}%{?dist}
+Release: 1%{?relsuf}%{?dist}
Summary: Parallel visualization application
License: BSD
-URL: http://www.paraview.org/
-Source0: http://www.paraview.org/files/v%{pv_majmin}/ParaView-v%{version}%{?versuf...
+URL: https://www.paraview.org/
+Source0: https://www.paraview.org/files/v%{pv_majmin}/ParaView-v%{version}%{?versu...
Source1: paraview.xml
Source2: FindPEGTL.cmake
-# Use system pegtl
-Patch0: paraview-pegtl.patch
-# Fix appdata install location
-# https://gitlab.kitware.com/paraview/paraview/merge_requests/3014
-Patch1: paraview-metainfo.patch
-# Allow Open with...
-# https://bugzilla.redhat.com/show_bug.cgi?id=1635276
-# https://gitlab.kitware.com/paraview/paraview/merge_requests/3103
-Patch2: paraview-desktop.patch
-# Python 3.8 support
-Patch3: https://gitlab.kitware.com/vtk/vtk/merge_requests/5883.patch
-# Try to work around issues on wayland
-# https://bugzilla.redhat.com/show_bug.cgi?id=1769060
-# https://gitlab.kitware.com/paraview/paraview/issues/19481
-Patch4: paraview-wayland.patch
+# Fix cmake files install location
+# https://gitlab.kitware.com/paraview/paraview/issues/19724
+Patch0: paraview-cmakedir.patch
BuildRequires: cmake3
-%if 0%{?rhel} && 0%{?rhel} <= 7
-BuildRequires: qt-assistant
-%else
-BuildRequires: qt-assistant-adp-devel
-%endif
+#if 0%{?rhel} && 0%{?rhel} <= 7
+#BuildRequires: qt-assistant
+#else
+#BuildRequires: qt-assistant-adp-devel
+#endif
BuildRequires: lz4-devel
%if %{with qt5}
BuildRequires: cmake(Qt5)
+BuildRequires: cmake(Qt5Svg)
BuildRequires: cmake(Qt5UiPlugin)
BuildRequires: cmake(Qt5X11Extras)
BuildRequires: qt5-qtwebkit-devel
+BuildRequires: /usr/bin/xmlpatterns-qt5
%else
BuildRequires: qt-devel
BuildRequires: qt-webkit-devel
@@ -151,14 +141,16 @@ BuildRequires: libjpeg-devel
BuildRequires: libpng-devel
BuildRequires: libtheora-devel
BuildRequires: libxml2-devel
+BuildRequires: libXt-devel
BuildRequires: netcdf-cxx-devel
BuildRequires: PEGTL-devel
%if %{with protobuf}
BuildRequires: protobuf-devel
%endif
%if %{system_pugixml}
-BuildRequires: pugixml-devel >= 1.4
+BuildRequires: pugixml-devel >= 1.9
%endif
+BuildRequires: utf8cpp-devel
# For validating desktop and appdata files
BuildRequires: desktop-file-utils
%if 0%{?fedora} || 0%{?rhel} >= 8
@@ -169,6 +161,7 @@ BuildRequires: glibc-langpack-en
Requires: hdf5%{?_hdf5_version: = %{_hdf5_version}}
Requires: %{name}-data = %{version}-%{release}
%if 0%{?fedora} || 0%{?rhel} >= 8
+#Recommends: python3-pygments
Requires: python3-pygments
Requires: python3-six
Requires: python3-netcdf4
@@ -210,10 +203,14 @@ Provides: bundled(jsoncpp) = 0.7.0
%if !%{with protobuf}
Provides: bundled(protobuf) = 2.3.0
%endif
+%if !0%{system_pugixml}
+Provides: bundled(pugixml) = 1.9
+%endif
# Bundled vtk
# https://bugzilla.redhat.com/show_bug.cgi?id=697842
Provides: bundled(vtk) = 6.3.0
Provides: bundled(diy2)
+Provides: bundled(h5part) = 1.6.6
Provides: bundled(icet)
Provides: bundled(libharu)
Provides: bundled(libproj4)
@@ -237,23 +234,15 @@ Provides: bundled(xdmf2)
#-- Plugin: VaporPlugin - Plugin to read NCAR VDR files : Disabled - Requires vapor
# We want to build with a system vtk someday, but it doesn't work yet
-# -DUSE_EXTERNAL_VTK:BOOL=ON \\\
+# -DPARAVIEW_USE_EXTERNAL_VTK:BOOL=ON \\\
# -DVTK_DIR=%%{_libdir}/vtk \\\
%global paraview_cmake_options \\\
-DCMAKE_BUILD_TYPE=RelWithDebInfo \\\
-DOpenGL_GL_PREFERENCE=GLVND \\\
- -DPARAVIEW_BUILD_PLUGIN_AdiosReader:BOOL=ON \\\
+ -DPARAVIEW_VERSIONED_INSTALL:BOOL=OFF \\\
-DPARAVIEW_ENABLE_PYTHON:BOOL=ON \\\
-%if %{with qt5} \
- -DPARAVIEW_QT_VERSION:STRING="5" \\\
-%endif \
-%if %{with VisitBridge} \
- -DPARAVIEW_USE_VISITBRIDGE=ON \\\
- -DVTK_USE_SYSTEM_VISITLIB:BOOL=OFF \\\
- -DVISIT_BUILD_READER_CGNS=ON \\\
-%endif \
- -DVTK_CUSTOM_LIBRARY_SUFFIX="" \\\
+ -DPARAVIEW_INSTALL_DEVELOPMENT_FILES:BOOL=ON \\\
-DVTK_INSTALL_DATA_DIR=share/paraview \\\
-DVTK_INSTALL_PACKAGE_DIR=share/cmake/paraview \\\
%if 0%{?fedora} || 0%{?rhel} >= 8 \
@@ -262,17 +251,12 @@ Provides: bundled(xdmf2)
-DVTK_PYTHON_VERSION=2 \\\
%endif \
-DVTK_USE_OGGTHEORA_ENCODER:BOOL=ON \\\
- -DVTK_USE_SYSTEM_LIBRARIES=ON \\\
- -DVTK_USE_SYSTEM_HDF5=ON \\\
+ -DPARAVIEW_BUILD_WITH_EXTERNAL:BOOL=ON \\\
%{?vtk_use_system_gl2ps} \\\
%{?vtk_use_system_jsoncpp} \\\
- -DVTK_USE_SYSTEM_NETCDF=ON \\\
+ -DVTK_MODULE_USE_EXTERNAL_VTK_libharu=OFF \\\
%{?vtk_use_system_protobuf} \\\
%{?vtk_use_system_pugixml} \\\
- -DVTK_USE_SYSTEM_PYGMENTS:BOOL=ON \\\
- -DVTK_USE_SYSTEM_QTTESTING=OFF \\\
- -DVTK_USE_SYSTEM_XDMF2=OFF \\\
- -DXDMF_WRAP_PYTHON:BOOL=ON \\\
-DBUILD_EXAMPLES:BOOL=ON \\\
-DBUILD_TESTING:BOOL=OFF \\\
-DCMAKE_VERBOSE_MAKEFILE:BOOL=ON
@@ -280,23 +264,23 @@ Provides: bundled(xdmf2)
%global paraview_cmake_mpi_options \\\
-DCMAKE_PREFIX_PATH:PATH=$MPI_HOME \\\
-DCMAKE_INSTALL_PREFIX:PATH=$MPI_HOME \\\
+ -DCMAKE_INSTALL_CMAKEDIR:PATH=lib/cmake \\\
+ -DCMAKE_INSTALL_INCLUDEDIR:PATH=../../include/$MPI_COMPILER/%{name} \\\
+ -DCMAKE_INSTALL_LIBDIR:PATH=lib/%{name} \\\
-DHDF5_INCLUDE_DIRS:PATH=$MPI_INCLUDE \\\
- -DINCLUDE_INSTALL_DIR:PATH=$MPI_INCLUDE/paraview \\\
-DPYTHON_INSTALL_DIR=PATH=$MPI_PYTHON2_SITEARCH \\\
- -DVTK_INSTALL_INCLUDE_DIR:PATH=$MPI_INCLUDE/paraview \\\
- -DVTK_INSTALL_ARCHIVE_DIR:PATH=lib/paraview \\\
- -DVTK_INSTALL_LIBRARY_DIR:PATH=lib/paraview \\\
- -DVTK_USE_SYSTEM_DIY2=OFF \\\
- -DVTK_USE_SYSTEM_ICET=OFF \\\
- -DVTK_USE_SYSTEM_MPI4PY:BOOL=ON \\\
- -DPARAVIEW_INSTALL_DEVELOPMENT_FILES:BOOL=ON \\\
- -DQtTesting_INSTALL_LIB_DIR=lib/paraview \\\
- -DQtTesting_INSTALL_CMAKE_DIR=lib/paraview/CMake \\\
+ -DVTK_INSTALL_INCLUDE_DIR:PATH=$MPI_INCLUDE/%{name} \\\
+ -DVTK_INSTALL_ARCHIVE_DIR:PATH=lib/%{name} \\\
+ -DVTK_INSTALL_LIBRARY_DIR:PATH=lib/%{name} \\\
+ -DVTK_MODULE_USE_EXTERNAL_VTK_diy2=OFF \\\
+ -DVTK_MODULE_USE_EXTERNAL_VTK_icet=OFF \\\
+ -DQtTesting_INSTALL_LIB_DIR=lib/%{name} \\\
+ -DQtTesting_INSTALL_CMAKE_DIR=lib/%{name}/CMake \\\
-DPARAVIEW_USE_MPI:BOOL=ON \\\
-DICET_BUILD_TESTING:BOOL=ON \\\
%if %{with VisitBridge} \
-DPARAVIEW_USE_VISITBRIDGE=ON \\\
- -DVTK_USE_SYSTEM_VISITLIB:BOOL=OFF \\\
+ -DVTK_MODULE_USE_EXTERNAL_ParaView_VisItLib:BOOL=OFF \\\
-DVISIT_BUILD_READER_CGNS=ON \\\
%endif \
%{paraview_cmake_options}
@@ -475,7 +459,7 @@ developing applications that use %{name}-mpich.
%prep
-%autosetup -n ParaView-v%{version}%{?versuf} -p 1
+%autosetup -p1 -n ParaView-v%{version}%{?versuf}
%if %{with VisitBridge}
cp -p Utilities/VisItBridge/README.md Utilities/VisItBridge/README-VisItBridge.md
@@ -487,13 +471,14 @@ rm -f Utilities/VisItBridge/databases/readers/Vs/VsStaggeredField.C
# Install python properly
sed -i -s '/VTK_INSTALL_PYTHON_USING_CMAKE/s/TRUE/FALSE/' CMakeLists.txt
#Remove included thirdparty sources just to be sure
-for x in vtkcgns %{?_with_protobuf:vtkprotobuf} vtkpygments
+for x in vtkcgns %{?_with_protobuf:vtkprotobuf}
do
rm -r ThirdParty/*/${x}
done
%if %{system_pugixml}
-rm ThirdParty/pugixml/pugixml.*
+rm -r VTK/ThirdParty/pugixml/vtkpugixml
%endif
+# TODO - loguru
for x in vtk{doubleconversion,eigen,expat,freetype,%{?_with_gl2ps:gl2ps,}glew,hdf5,jpeg,kissfft,libproj,libxml2,lz4,lzma,mpi4py,netcdf,ogg,pegtl,png,sqlite,theora,tiff,zfp,zlib}
do
rm -r VTK/ThirdParty/*/${x}
@@ -509,25 +494,24 @@ cp %SOURCE2 VTK/CMake/FindPEGTL.cmake
#rm -r VTK
%build
+%ifarch ppc64le
+%global _smp_mflags -j1
+%endif
mkdir %{_target_platform}
pushd %{_target_platform}
%cmake3 -Wno-dev .. \
- -DBUILD_DOCUMENTATION:BOOL=ON \
- -DVTK_INSTALL_INCLUDE_DIR:PATH=include/paraview \
- -DVTK_INSTALL_ARCHIVE_DIR:PATH=%{_lib}/paraview \
- -DVTK_INSTALL_LIBRARY_DIR:PATH=%{_lib}/paraview \
- -DPARAVIEW_INSTALL_DEVELOPMENT_FILES:BOOL=ON \
- -DQtTesting_INSTALL_LIB_DIR=%{_lib}/paraview \
- -DQtTesting_INSTALL_CMAKE_DIR=%{_lib}/paraview/CMake \
+ -DCMAKE_INSTALL_CMAKEDIR:PATH=%{_lib}/cmake \
+ -DCMAKE_INSTALL_LIBDIR:PATH=%{_lib}/%{name} \
+ -DPARAVIEW_BUILD_DEVELOPER_DOCUMENTATION:BOOL=ON \
+ -DVTK_INSTALL_INCLUDE_DIR:PATH=include/%{name} \
+ -DVTK_INSTALL_ARCHIVE_DIR:PATH=%{_lib}/%{name} \
+ -DVTK_INSTALL_LIBRARY_DIR:PATH=%{_lib}/%{name} \
+ -DQtTesting_INSTALL_LIB_DIR=%{_lib}/%{name} \
+ -DQtTesting_INSTALL_CMAKE_DIR=%{_lib}/%{name}/CMake \
%{paraview_cmake_options}
%make_build
-#export LD_LIBRARY_PATH="%{buildroot}%{_libdir}:%{_libdir}"
-#export PYTHONPATH="%{buildroot}%{_libdir}/%{name}/site-packages:${PYTHONPATH}"
-#export PYTHONPATH="${PYTHONPATH%:}:%{python2_sitearch}/mpich"
export LANG=en_US.UTF-8
-%make_build DoxygenDoc ParaViewDoc
-#unset LD_LIBRARY_PATH
-#unset PYTHONPATH
+%make_build ParaViewDoxygenDoc ParaViewPythonDoc
popd
%if %{build_openmpi}
mkdir %{_target_platform}-openmpi
@@ -535,8 +519,6 @@ pushd %{_target_platform}-openmpi
%{_openmpi_load}
%cmake3 -Wno-dev .. \
%{paraview_cmake_mpi_options}
-# Fixup forward paths
-sed -i -e 's,../%{_lib}/openmpi,..,' `find -name \*-forward.c`
%make_build
%{_openmpi_unload}
popd
@@ -550,8 +532,6 @@ pushd %{_target_platform}-mpich
[ -z "$PYTHONPATH" ] && export PYTHONPATH=$MPI_PYTHON_SITEARCH
%cmake3 -Wno-dev .. \
%{paraview_cmake_mpi_options}
-# Fixup forward paths
-sed -i -e 's,../%{_lib}/mpich,..,' `find -name \*-forward.c`
%make_build
%{_mpich_unload}
popd
@@ -576,8 +556,6 @@ install -m644 %SOURCE1 %{buildroot}%{_datadir}/mime/packages
#Remove mpi copy of doc and man pages and data
rm -rf %{buildroot}%{_libdir}/openmpi/share/{metainfo,applications,doc,icons,man,mimeinfo,paraview,vtkm-*}
-# Fix shell script permissions
-chmod 0755 %{buildroot}%{_libdir}/openmpi/share/cmake/paraview/pre-commit
%{_openmpi_unload}
%endif
@@ -590,35 +568,27 @@ chmod 0755 %{buildroot}%{_libdir}/openmpi/share/cmake/paraview/pre-commit
#Remove mpi copy of doc and man pages and data
rm -rf %{buildroot}%{_libdir}/mpich/share/{metainfo,applications,doc,icons,man,mimeinfo,paraview,vtkm-*}
-# Fix shell script permissions
-chmod 0755 %{buildroot}%{_libdir}/mpich/share/cmake/paraview/pre-commit
%{_mpich_unload}
%endif
#Install the normal version
%make_install -C %{_target_platform}
-desktop-file-validate %{buildroot}%{_datadir}/applications/paraview.desktop
+desktop-file-validate %{buildroot}%{_datadir}/applications/org.paraview.ParaView.desktop
%if 0%{?fedora} || 0%{?rhel} >= 8
-appstream-util validate-relax --nonet %{buildroot}/%{_datadir}/metainfo/*.appdata.xml
+appstream-util validate-relax --nonet %{buildroot}/%{_datadir}/metainfo/org.paraview.ParaView.appdata.xml
%endif
#Cleanup only vtk conflicting binaries
-rm %{buildroot}%{_bindir}/vtk{LegacyColorMapXMLToJSON,ParseJava,Wrap{Hierarchy,Java,Python}}*
+rm %{buildroot}%{_bindir}/vtk{ParseJava,Wrap{Hierarchy,Java,Python}}*
rm -r %{buildroot}%{_datadir}/vtkm-*
-# Fix shell script permissions
-chmod 0755 %{buildroot}%{_datadir}/cmake/paraview/pre-commit
-
-# Strip build dir from VTKConfig.cmake (bug #917425)
-find %{buildroot} -name VTKConfig.cmake | xargs sed -i -e '/builddir/s/^/#/'
-
# Build autodocs and move documentation-files to proper location
mkdir -p %{buildroot}%{_pkgdocdir}
install -pm 0644 README.md %{buildroot}%{_pkgdocdir}
install -pm 0644 Utilities/VisItBridge/README-VisItBridge.md %{buildroot}%{_pkgdocdir}
-mv %{buildroot}%{_docdir}/paraview-%{pv_majmin}/* %{buildroot}%{_pkgdocdir}
-rm -rf %{buildroot}%{_docdir}/paraview-%{pv_majmin}
+mv %{buildroot}%{_docdir}/ParaView/* %{buildroot}%{_pkgdocdir}
+rm -rf %{buildroot}%{_docdir}/ParaView
find %{buildroot}%{_pkgdocdir} -name '.*' -print0 | xargs -0 rm -frv
find %{buildroot}%{_pkgdocdir} -name '*.map' -or -name '*.md5' -print -delete
hardlink -cfv %{buildroot}%{_pkgdocdir}
@@ -656,6 +626,7 @@ update-mime-database %{_datadir}/mime &> /dev/null || :
%files
%{_bindir}/%{name}
+%{_bindir}/%{name}.conf
%{_bindir}/pvbatch
# Currently disabled upstream
#{_bindir}/pvblot
@@ -672,35 +643,37 @@ update-mime-database %{_datadir}/mime &> /dev/null || :
%dir %{_pkgdocdir}
%{_pkgdocdir}/README.md
%{_pkgdocdir}/README-VisItBridge.md
-%{_datadir}/metainfo/paraview.appdata.xml
-%{_datadir}/applications/*paraview.desktop
+%{_datadir}/metainfo/org.paraview.ParaView.appdata.xml
+%{_datadir}/applications/org.paraview.ParaView.desktop
%{_datadir}/icons/hicolor/*/apps/paraview.png
+%license %{_datadir}/licenses/ParaView/
%{_datadir}/mime/packages/paraview.xml
+%{_datadir}/%{name}/
%files devel
%{_bindir}/paraview-config
%{_bindir}/vtkWrapClientServer
-%{_bindir}/vtkkwProcessXML
+%{_bindir}/vtkProbeOpenGLVersion
+%{_bindir}/vtkProcessXML
%{_includedir}/%{name}/
-%{_datadir}/cmake/
+%{_libdir}/cmake/
%{_libdir}/%{name}/*.a
%files doc
-%license %{_datadir}/licenses/%{name}*
%{_pkgdocdir}
-
%if %{build_openmpi}
%files openmpi
%{_libdir}/openmpi/bin/[ps]*
%{_libdir}/openmpi/lib/%{name}/
%exclude %{_libdir}/openmpi/lib/%{name}/*.a
+%{_libdir}/openmpi/share/licenses/
%files openmpi-devel
%{_includedir}/openmpi-%{_arch}/%{name}/
%{_libdir}/openmpi/bin/vtk*
+%{_libdir}/openmpi/lib/cmake/
%{_libdir}/openmpi/lib/%{name}/*.a
-%{_libdir}/openmpi/share/cmake/
%endif
@@ -709,16 +682,20 @@ update-mime-database %{_datadir}/mime &> /dev/null || :
%{_libdir}/mpich/bin/[ps]*
%{_libdir}/mpich/lib/%{name}/
%exclude %{_libdir}/mpich/lib/%{name}/*.a
+%{_libdir}/mpich/share/licenses/
%files mpich-devel
%{_includedir}/mpich-%{_arch}/%{name}/
%{_libdir}/mpich/bin/vtk*
+%{_libdir}/mpich/lib/cmake/
%{_libdir}/mpich/lib/%{name}/*.a
-%{_libdir}/mpich/share/cmake/
%endif
%changelog
+* Thu Feb 27 2020 Orion Poplawski <orion(a)nwra.com> - 5.8.0-1
+- Update to 5.8.0
+
* Mon Feb 17 2020 Sandro Mani <manisandro(a)gmail.com> - 5.6.0-16
- Rebuild (cgnslib)
diff --git a/sources b/sources
index e30ce27..2530cd6 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (ParaView-v5.6.0.tar.gz) = 4d7c1b9f5781411cdd290a0ef105221deca1af28bb29b8e6e6c077f3377b110e7c86637c11514559d2d826d36f189d5b5c1caa9e5f9c53820cf35c3ade1ae1f6
+SHA512 (ParaView-v5.8.0.tar.gz) = 803ea432f5b56f7d1b3bade78b2b531312034e7e29eaec64c6e122792f8beedc7a61f458f2392550e9ecb0f5ff969c4b11a65f80d19ca32569341c84deedc8cb
4 years, 1 month
Architecture specific change in rpms/chromium.git
by githook-noreply@fedoraproject.org
The package rpms/chromium.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/chromium.git/commit/?id=f1db2ee0c....
Change:
-%ifarch aarch64
Thanks.
Full change:
============
commit 101ab2aa05170c443bd114722aab8744977a718f
Merge: 792286d 2fd941b
Author: Tom Callaway <spot(a)fedoraproject.org>
Date: Thu Feb 27 16:45:58 2020 -0500
Merge branch 'master' into f31
commit 2fd941b6658c3665bb8c59a69756c14364203c05
Author: Tom Callaway <spot(a)fedoraproject.org>
Date: Thu Feb 27 13:56:52 2020 -0500
another c++17 fixup
diff --git a/chromium-80.0.3987.87-fix-for-c++17.patch b/chromium-80.0.3987.87-fix-for-c++17.patch
index 8639e82..3a29df9 100644
--- a/chromium-80.0.3987.87-fix-for-c++17.patch
+++ b/chromium-80.0.3987.87-fix-for-c++17.patch
@@ -176,3 +176,15 @@ diff -up chromium-80.0.3987.106/device/bluetooth/bluetooth_adapter.cc.c17fix chr
base::TimeDelta::FromSeconds(180);
} // namespace device
+diff -up chromium-80.0.3987.122/content/browser/web_package/signed_exchange_prologue.cc.c17fix chromium-80.0.3987.122/content/browser/web_package/signed_exchange_prologue.cc
+--- chromium-80.0.3987.122/content/browser/web_package/signed_exchange_prologue.cc.c17fix 2020-02-27 13:48:15.815885662 -0500
++++ chromium-80.0.3987.122/content/browser/web_package/signed_exchange_prologue.cc 2020-02-27 13:48:24.146711682 -0500
+@@ -30,7 +30,7 @@ constexpr size_t kMaximumCBORHeaderLengt
+
+ namespace signed_exchange_prologue {
+
+-constexpr size_t BeforeFallbackUrl::kEncodedSizeInBytes =
++const extern size_t BeforeFallbackUrl::kEncodedSizeInBytes =
+ sizeof(kSignedExchangeMagic) + kFallbackUrlLengthFieldSizeInBytes;
+
+ size_t Parse2BytesEncodedLength(base::span<const uint8_t> input) {
commit 53caa9a1fa32ee12371f7830a714eda8565929a0
Author: Tom Callaway <spot(a)fedoraproject.org>
Date: Thu Feb 27 11:59:27 2020 -0500
fix i686 vaapi permissive patch
diff --git a/chromium-80.0.3987.122-vaapi-i686-fpermissive.patch b/chromium-80.0.3987.122-vaapi-i686-fpermissive.patch
new file mode 100644
index 0000000..ae55668
--- /dev/null
+++ b/chromium-80.0.3987.122-vaapi-i686-fpermissive.patch
@@ -0,0 +1,23 @@
+diff -up chromium-80.0.3987.122/media/gpu/vaapi/BUILD.gn.i686permissive chromium-80.0.3987.122/media/gpu/vaapi/BUILD.gn
+--- chromium-80.0.3987.122/media/gpu/vaapi/BUILD.gn.i686permissive 2020-02-27 11:58:10.534875341 -0500
++++ chromium-80.0.3987.122/media/gpu/vaapi/BUILD.gn 2020-02-27 11:58:17.544736535 -0500
+@@ -13,6 +13,10 @@ import("//ui/ozone/ozone.gni")
+ assert(is_linux)
+ assert(use_vaapi)
+
++config("vaapi_permissive") {
++ cflags = [ "-fpermissive" ]
++}
++
+ generate_stubs("libva_stubs") {
+ extra_header = "va_stub_header.fragment"
+ sigs = [ "va.sigs" ]
+@@ -120,6 +124,8 @@ source_set("vaapi") {
+ ]
+ }
+
++ configs += [ ":vaapi_permissive" ]
++
+ if (use_x11) {
+ configs += [ "//build/config/linux:x11" ]
+ deps += [ "//ui/gfx/x" ]
diff --git a/chromium.spec b/chromium.spec
index 3396a61..2d6767b 100644
--- a/chromium.spec
+++ b/chromium.spec
@@ -261,7 +261,7 @@ Patch102: chromium-79.0.3945.56-el7-noexcept.patch
# Enable VAAPI support on Linux
# NOTE: This patch will never land upstream
Patch202: enable-vaapi.patch
-Patch203: chromium-75.0.3770.80-vaapi-i686-fpermissive.patch
+Patch203: chromium-80.0.3987.122-vaapi-i686-fpermissive.patch
# Fix compatibility with VA-API library (libva) version 1
Patch205: fixvaapionintel.patch
commit 4149dcea63f1a8ef4eddd6dd6641758979e2b391
Merge: f1db2ee da0f899
Author: Tom Callaway <spot(a)fedoraproject.org>
Date: Thu Feb 27 11:28:21 2020 -0500
merge fix
diff --cc chromium.spec
index ac782c0,ea26cba..3396a61
--- a/chromium.spec
+++ b/chromium.spec
@@@ -1725,15 -1697,9 +1725,18 @@@ getent group chrome-remote-desktop >/de
%changelog
+* Thu Feb 27 2020 Tom Callaway <spot(a)fedoraproject.org> - 80.0.3987.122-1
+- update to 80.0.3987.122
+
+* Mon Feb 17 2020 Tom Callaway <spot(a)fedoraproject.org> - 80.0.3987.106-1
+- update to 80.0.3987.106
+
+* Wed Feb 5 2020 Tom Callaway <spot(a)fedoraproject.org> - 80.0.3987.87-1
+- update to 80.0.3987.87
+
+ * Tue Jan 28 2020 Fedora Release Engineering <releng(a)fedoraproject.org> - 79.0.3945.130-2
+ - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
+
* Fri Jan 17 2020 Tom Callaway <spot(a)fedoraproject.org> - 79.0.3945.130-1
- update to 79.0.3945.130
commit f1db2ee0c505063088fa40dfd6e7ae7f8aa022b9
Author: Tom Callaway <spot(a)fedoraproject.org>
Date: Thu Feb 27 11:27:21 2020 -0500
please work
diff --git a/chromium-77.0.3865.75-gcc-include-memory.patch b/chromium-77.0.3865.75-gcc-include-memory.patch
index 93b4399..e1d4bdb 100644
--- a/chromium-77.0.3865.75-gcc-include-memory.patch
+++ b/chromium-77.0.3865.75-gcc-include-memory.patch
@@ -10,3 +10,25 @@ diff -up chromium-77.0.3865.75/third_party/one_euro_filter/src/one_euro_filter.h
namespace one_euro_filter {
namespace test {
class OneEuroFilterTest;
+diff -up chromium-80.0.3987.106/third_party/webrtc/modules/audio_processing/aec3/reverb_model_estimator.h.missing-memory chromium-80.0.3987.106/third_party/webrtc/modules/audio_processing/aec3/reverb_model_estimator.h
+--- chromium-80.0.3987.106/third_party/webrtc/modules/audio_processing/aec3/reverb_model_estimator.h.missing-memory 2020-02-21 12:25:17.206021379 -0500
++++ chromium-80.0.3987.106/third_party/webrtc/modules/audio_processing/aec3/reverb_model_estimator.h 2020-02-21 12:25:31.613759976 -0500
+@@ -12,6 +12,7 @@
+ #define MODULES_AUDIO_PROCESSING_AEC3_REVERB_MODEL_ESTIMATOR_H_
+
+ #include <array>
++#include <memory>
+ #include <vector>
+
+ #include "absl/types/optional.h"
+diff -up chromium-80.0.3987.106/third_party/openscreen/src/util/trace_logging/scoped_trace_operations.h.memory chromium-80.0.3987.106/third_party/openscreen/src/util/trace_logging/scoped_trace_operations.h
+--- chromium-80.0.3987.106/third_party/openscreen/src/util/trace_logging/scoped_trace_operations.h.memory 2020-02-24 11:35:38.283880819 -0500
++++ chromium-80.0.3987.106/third_party/openscreen/src/util/trace_logging/scoped_trace_operations.h 2020-02-24 11:35:48.366670897 -0500
+@@ -7,6 +7,7 @@
+
+ #include <atomic>
+ #include <cstring>
++#include <memory>
+ #include <stack>
+ #include <vector>
+
diff --git a/chromium-79.0.3945.130-gcc10-use-c++17-to-work-around-ugly-angle-code.patch b/chromium-79.0.3945.130-gcc10-use-c++17-to-work-around-ugly-angle-code.patch
new file mode 100644
index 0000000..8401ea2
--- /dev/null
+++ b/chromium-79.0.3945.130-gcc10-use-c++17-to-work-around-ugly-angle-code.patch
@@ -0,0 +1,28 @@
+diff -up chromium-79.0.3945.130/third_party/angle/BUILD.gn.fixme chromium-79.0.3945.130/third_party/angle/BUILD.gn
+--- chromium-79.0.3945.130/third_party/angle/BUILD.gn.fixme 2020-02-05 15:50:58.810040419 -0500
++++ chromium-79.0.3945.130/third_party/angle/BUILD.gn 2020-02-05 15:52:03.720848822 -0500
+@@ -228,6 +228,9 @@ config("angle_common_config") {
+ if (is_android) {
+ libs = [ "log" ]
+ }
++ if (!is_clang) {
++ cflags_cc = [ "-std=c++17" ]
++ }
+ }
+
+ if (is_win && !angle_is_winuwp) {
+diff -up chromium-79.0.3945.130/third_party/angle/src/common/PackedEnums.h.fixme chromium-79.0.3945.130/third_party/angle/src/common/PackedEnums.h
+--- chromium-79.0.3945.130/third_party/angle/src/common/PackedEnums.h.fixme 2020-02-05 15:35:47.473867905 -0500
++++ chromium-79.0.3945.130/third_party/angle/src/common/PackedEnums.h 2020-02-05 15:36:30.362065300 -0500
+@@ -85,8 +85,9 @@ class PackedEnumMap
+ {
+ // This horrible const_cast pattern is necessary to work around a constexpr limitation.
+ // See https://stackoverflow.com/q/34199774/ . Note that it should be fixed with C++17.
+- const_cast<T &>(const_cast<const Storage &>(
+- mPrivateData)[static_cast<UnderlyingType>(it->first)]) = it->second;
++ // const_cast<T &>(const_cast<const Storage &>(
++ // mPrivateData)[static_cast<UnderlyingType>(it->first)]) = it->second;
++ mPrivateData[static_cast<UnderlyingType>(it->first)] = it->second;
+ }
+ }
+
diff --git a/chromium-80-gcc-abstract.patch b/chromium-80-gcc-abstract.patch
new file mode 100644
index 0000000..190a672
--- /dev/null
+++ b/chromium-80-gcc-abstract.patch
@@ -0,0 +1,41 @@
+In file included from ../../third_party/blink/renderer/platform/heap/persistent.h:18,
+ from ../../third_party/blink/public/platform/web_private_ptr.h:40,
+ from ../../third_party/blink/public/platform/web_media_stream_track.h:33,
+ from ../../third_party/blink/public/platform/web_media_stream_source.h:37,
+ from ../../third_party/blink/renderer/modules/peerconnection/rtc_peer_connection_handler.h:19,
+ from ../../third_party/blink/renderer/modules/peerconnection/rtc_peer_connection_handler.cc:5:
+../../third_party/blink/renderer/platform/wtf/cross_thread_copier.h: In instantiation of 'struct WTF::CrossThreadCopierPassThrough<webrtc::VideoTrackInterface>':
+../../third_party/blink/renderer/modules/peerconnection/adapters/web_rtc_cross_thread_copier.h:169:14: required from here
+../../third_party/blink/renderer/platform/wtf/cross_thread_copier.h:80:15: error: invalid abstract return type 'webrtc::VideoTrackInterface'
+ 80 | static Type Copy(const T& parameter) { return parameter; }
+ | ^~~~
+In file included from ../../third_party/webrtc/api/peer_connection_interface.h:88,
+ from ../../third_party/blink/public/platform/web_rtc_peer_connection_handler.h:39,
+ from ../../third_party/blink/renderer/modules/peerconnection/rtc_peer_connection_handler.h:20,
+ from ../../third_party/blink/renderer/modules/peerconnection/rtc_peer_connection_handler.cc:5:
+../../third_party/webrtc/api/media_stream_interface.h:174:18: note: because the following virtual functions are pure within 'webrtc::VideoTrackInterface':
+ 174 | class RTC_EXPORT VideoTrackInterface
+ | ^~~~~~~~~~~~~~~~~~~
+../../third_party/webrtc/api/media_stream_interface.h:48:16: note: 'virtual void webrtc::NotifierInterface::RegisterObserver(webrtc::ObserverInterface*)'
+ 48 | virtual void RegisterObserver(ObserverInterface* observer) = 0;
+ | ^~~~~~~~~~~~~~~~
+../../third_party/webrtc/api/media_stream_interface.h:49:16: note: 'virtual void webrtc::NotifierInterface::UnregisterObserver(webrtc::ObserverInterface*)'
+ 49 | virtual void UnregisterObserver(ObserverInterface* observer) = 0;
+ | ^~~~~~~~~~~~~~~~~~
+
+diff --git a/third_party/blink/renderer/modules/peerconnection/adapters/web_rtc_cross_thread_copier.h b/third_party/blink/renderer/modules/peerconnection/adapters/web_rtc_cross_thread_copier.h
+index 54cb7d1..0d6c40f 100644
+--- a/third_party/blink/renderer/modules/peerconnection/adapters/web_rtc_cross_thread_copier.h
++++ b/third_party/blink/renderer/modules/peerconnection/adapters/web_rtc_cross_thread_copier.h
+@@ -165,8 +165,9 @@ struct CrossThreadCopier<blink::MediaStreamVideoTrack>
+ };
+
+ template <>
+-struct CrossThreadCopier<webrtc::VideoTrackInterface>
+- : public CrossThreadCopierPassThrough<webrtc::VideoTrackInterface> {
++struct CrossThreadCopier<rtc::scoped_refptr<webrtc::VideoTrackInterface>>
++ : public CrossThreadCopierPassThrough<
++ rtc::scoped_refptr<webrtc::VideoTrackInterface>> {
+ STATIC_ONLY(CrossThreadCopier);
+ };
+
diff --git a/chromium-80-gcc-blink.patch b/chromium-80-gcc-blink.patch
new file mode 100644
index 0000000..2118b46
--- /dev/null
+++ b/chromium-80-gcc-blink.patch
@@ -0,0 +1,45 @@
+../../third_party/blink/renderer/core/editing/commands/delete_selection_command.cc: In member function 'void blink::DeleteSelectionCommand::InitializePositionData(blink::EditingState*)':
+../../third_party/blink/renderer/core/editing/commands/delete_selection_command.cc:256:59: error: no matching function for call to 'EnclosingNodeOfType(blink::Position&, <unresolved overloaded function type>)'
+ 256 | EnclosingNodeOfType(start, &IsA<HTMLTableRowElement>));
+ | ^
+In file included from ../../third_party/blink/renderer/core/editing/commands/delete_selection_command.cc:34:
+../../third_party/blink/renderer/core/editing/editing_utilities.h:112:19: note: candidate: 'blink::Node* blink::EnclosingNodeOfType(const Position&, bool (*)(const blink::Node*), blink::EditingBoundaryCrossingRule)'
+ 112 | CORE_EXPORT Node* EnclosingNodeOfType(
+ | ^~~~~~~~~~~~~~~~~~~
+../../third_party/blink/renderer/core/editing/editing_utilities.h:114:12: note: no known conversion for argument 2 from '<unresolved overloaded function type>' to 'bool (*)(const blink::Node*)'
+ 114 | bool (*node_is_of_type)(const Node*),
+ | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+../../third_party/blink/renderer/core/editing/editing_utilities.h:116:19: note: candidate: 'blink::Node* blink::EnclosingNodeOfType(const PositionInFlatTree&, bool (*)(const blink::Node*), blink::EditingBoundaryCrossingRule)'
+ 116 | CORE_EXPORT Node* EnclosingNodeOfType(
+ | ^~~~~~~~~~~~~~~~~~~
+../../third_party/blink/renderer/core/editing/editing_utilities.h:117:5: note: no known conversion for argument 1 from 'blink::Position' {aka 'blink::PositionTemplate<blink::EditingAlgorithm<blink::NodeTraversal> >'} to 'const PositionInFlatTree&' {aka 'const blink::PositionTemplate<blink::EditingAlgorithm<blink::FlatTreeTraversal> >&'}
+ 117 | const PositionInFlatTree&,
+ | ^~~~~~~~~~~~~~~~~~~~~~~~~
+
+diff --git a/third_party/blink/renderer/core/editing/commands/delete_selection_command.cc b/third_party/blink/renderer/core/editing/commands/delete_selection_command.cc
+index 6ff6906..dd531ae 100644
+--- a/third_party/blink/renderer/core/editing/commands/delete_selection_command.cc
++++ b/third_party/blink/renderer/core/editing/commands/delete_selection_command.cc
+@@ -224,6 +224,10 @@ static Position TrailingWhitespacePosition(const Position& position,
+ return Position();
+ }
+
++static bool IsAHTMLTableRowElement(const Node* node) {
++ return IsA<HTMLTableRowElement>(node);
++}
++
+ void DeleteSelectionCommand::InitializePositionData(
+ EditingState* editing_state) {
+ DCHECK(!GetDocument().NeedsLayoutTreeUpdate());
+@@ -253,9 +257,9 @@ void DeleteSelectionCommand::InitializePositionData(
+ end_root_ = RootEditableElementOf(end);
+
+ start_table_row_ = To<HTMLTableRowElement>(
+- EnclosingNodeOfType(start, &IsA<HTMLTableRowElement>));
++ EnclosingNodeOfType(start, &IsAHTMLTableRowElement));
+ end_table_row_ = To<HTMLTableRowElement>(
+- EnclosingNodeOfType(end, &IsA<HTMLTableRowElement>));
++ EnclosingNodeOfType(end, &IsAHTMLTableRowElement));
+
+ // Don't move content out of a table cell.
+ // If the cell is non-editable, enclosingNodeOfType won't return it by
diff --git a/chromium-80-gcc-incomplete-type.patch b/chromium-80-gcc-incomplete-type.patch
new file mode 100644
index 0000000..8d10620
--- /dev/null
+++ b/chromium-80-gcc-incomplete-type.patch
@@ -0,0 +1,229 @@
+From cdf3e81ff49b200213d67d65558f2919222b60ab Mon Sep 17 00:00:00 2001
+From: Raphael Kubo da Costa <raphael.kubo.da.costa(a)intel.com>
+Date: Mon, 16 Dec 2019 11:39:11 +0000
+Subject: [PATCH] BookmarkModelMerger: Move RemoteTreeNode declaration to header.
+
+This fixes the build with libstdc++ after commit 8f5dad93e58 ("Fix CHECK
+failure due to untracked local nodes"):
+
+/usr/lib/gcc/x86_64-redhat-linux/9/../../../../include/c++/9/bits/stl_pair.h:215:11: error: field has incomplete type 'sync_bookmarks::BookmarkModelMerger::RemoteTreeNode'
+ _T2 second; /// @c second is a copy of the second object
+ ^
+/usr/lib/gcc/x86_64-redhat-linux/9/../../../../include/c++/9/ext/aligned_buffer.h:91:28: note: in instantiation of template class 'std::pair<const std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode>' requested here
+ : std::aligned_storage<sizeof(_Tp), __alignof__(_Tp)>
+ ^
+/usr/lib/gcc/x86_64-redhat-linux/9/../../../../include/c++/9/bits/hashtable_policy.h:233:43: note: in instantiation of template class '__gnu_cxx::__aligned_buffer<std::pair<const std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode> >' requested here
+ __gnu_cxx::__aligned_buffer<_Value> _M_storage;
+ ^
+/usr/lib/gcc/x86_64-redhat-linux/9/../../../../include/c++/9/bits/hashtable_policy.h:264:39: note: in instantiation of template class 'std::__detail::_Hash_node_value_base<std::pair<const std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode> >' requested here
+ struct _Hash_node<_Value, true> : _Hash_node_value_base<_Value>
+ ^
+/usr/lib/gcc/x86_64-redhat-linux/9/../../../../include/c++/9/bits/hashtable_policy.h:2028:25: note: in instantiation of template class 'std::__detail::_Hash_node<std::pair<const std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode>, true>' requested here
+ rebind_traits<typename __node_type::value_type>;
+ ^
+/usr/lib/gcc/x86_64-redhat-linux/9/../../../../include/c++/9/bits/hashtable.h:184:15: note: in instantiation of template class 'std::__detail::_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode>, true> > >
+' requested here
+ private __detail::_Hashtable_alloc<
+ ^
+/usr/lib/gcc/x86_64-redhat-linux/9/../../../../include/c++/9/bits/unordered_map.h:105:18: note: in instantiation of template class 'std::_Hashtable<std::__cxx11::basic_string<char>, std::pair<const std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode>, std::allocator<std::pair<con
+st std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode> >, std::__detail::_Select1st, std::equal_to<std::__cxx11::basic_string<char> >, std::hash<std::string>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__deta
+il::_Hashtable_traits<true, false, true> >' requested here
+ _Hashtable _M_h;
+ ^
+../../components/sync_bookmarks/bookmark_model_merger.h:146:22: note: in instantiation of template class 'std::unordered_map<std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode, std::hash<std::string>, std::equal_to<std::__cxx11::basic_string<char> >, std::allocator<std::pair<con
+st std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode> > >' requested here
+ const RemoteForest remote_forest_;
+ ^
+../../components/sync_bookmarks/bookmark_model_merger.h:53:9: note: forward declaration of 'sync_bookmarks::BookmarkModelMerger::RemoteTreeNode'
+ class RemoteTreeNode;
+ ^
+
+Essentially, the problem is that libstdc++'s std::unordered_map<T, U>
+implementation requires both T and U to be fully declared. I raised the
+problem in https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92770, and GCC's
+position is that we are relying on undefined behavior according to the C++
+standard (https://eel.is/c++draft/requirements#res.on.functions-2.5).
+
+Bug: 957519
+Change-Id: Ife7e435e516932a795bfbe05b2c910c3272878f0
+Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1960156
+Commit-Queue: Raphael Kubo da Costa <raphael.kubo.da.costa(a)intel.com>
+Reviewed-by: Mikel Astiz <mastiz(a)chromium.org>
+Auto-Submit: Raphael Kubo da Costa <raphael.kubo.da.costa(a)intel.com>
+Cr-Commit-Position: refs/heads/master@{#725070}
+---
+
+diff --git a/components/sync_bookmarks/bookmark_model_merger.cc b/components/sync_bookmarks/bookmark_model_merger.cc
+index eae153ef..579848e 100644
+--- a/components/sync_bookmarks/bookmark_model_merger.cc
++++ b/components/sync_bookmarks/bookmark_model_merger.cc
+@@ -5,7 +5,6 @@
+ #include "components/sync_bookmarks/bookmark_model_merger.h"
+
+ #include <algorithm>
+-#include <memory>
+ #include <set>
+ #include <string>
+ #include <utility>
+@@ -205,66 +204,44 @@
+
+ } // namespace
+
+-class BookmarkModelMerger::RemoteTreeNode final {
+- public:
+- // Constructs a tree given |update| as root and recursively all descendants by
+- // traversing |*updates_per_parent_id|. |update| and |updates_per_parent_id|
+- // must not be null. All updates |*updates_per_parent_id| must represent valid
+- // updates. Updates corresponding from descendant nodes are moved away from
+- // |*updates_per_parent_id|.
+- static RemoteTreeNode BuildTree(
+- std::unique_ptr<syncer::UpdateResponseData> update,
+- UpdatesPerParentId* updates_per_parent_id);
++BookmarkModelMerger::RemoteTreeNode::RemoteTreeNode() = default;
+
+- ~RemoteTreeNode() = default;
++BookmarkModelMerger::RemoteTreeNode::~RemoteTreeNode() = default;
+
+- // Allow moves, useful during construction.
+- RemoteTreeNode(RemoteTreeNode&&) = default;
+- RemoteTreeNode& operator=(RemoteTreeNode&&) = default;
++BookmarkModelMerger::RemoteTreeNode::RemoteTreeNode(
++ BookmarkModelMerger::RemoteTreeNode&&) = default;
++BookmarkModelMerger::RemoteTreeNode& BookmarkModelMerger::RemoteTreeNode::
++operator=(BookmarkModelMerger::RemoteTreeNode&&) = default;
+
+- const syncer::EntityData& entity() const { return *update_->entity; }
+- int64_t response_version() const { return update_->response_version; }
++void BookmarkModelMerger::RemoteTreeNode::EmplaceSelfAndDescendantsByGUID(
++ std::unordered_map<std::string, const RemoteTreeNode*>*
++ guid_to_remote_node_map) const {
++ DCHECK(guid_to_remote_node_map);
+
+- // Direct children nodes, sorted by ascending unique position. These are
+- // guaranteed to be valid updates (e.g. IsValidBookmarkSpecifics()).
+- const std::vector<RemoteTreeNode>& children() const { return children_; }
++ const std::string& guid = entity().specifics.bookmark().guid();
++ if (!guid.empty()) {
++ DCHECK(base::IsValidGUID(guid));
+
+- // Recursively emplaces all GUIDs (this node and descendants) into
+- // |*guid_to_remote_node_map|, which must not be null.
+- void EmplaceSelfAndDescendantsByGUID(
+- std::unordered_map<std::string, const RemoteTreeNode*>*
+- guid_to_remote_node_map) const {
+- DCHECK(guid_to_remote_node_map);
+-
+- const std::string& guid = entity().specifics.bookmark().guid();
+- if (!guid.empty()) {
+- DCHECK(base::IsValidGUID(guid));
+-
+- // Duplicate GUIDs have been sorted out before.
+- bool success = guid_to_remote_node_map->emplace(guid, this).second;
+- DCHECK(success);
+- }
+-
+- for (const RemoteTreeNode& child : children_) {
+- child.EmplaceSelfAndDescendantsByGUID(guid_to_remote_node_map);
+- }
++ // Duplicate GUIDs have been sorted out before.
++ bool success = guid_to_remote_node_map->emplace(guid, this).second;
++ DCHECK(success);
+ }
+
+- private:
+- static bool UniquePositionLessThan(const RemoteTreeNode& lhs,
+- const RemoteTreeNode& rhs) {
+- const syncer::UniquePosition a_pos =
+- syncer::UniquePosition::FromProto(lhs.entity().unique_position);
+- const syncer::UniquePosition b_pos =
+- syncer::UniquePosition::FromProto(rhs.entity().unique_position);
+- return a_pos.LessThan(b_pos);
++ for (const RemoteTreeNode& child : children_) {
++ child.EmplaceSelfAndDescendantsByGUID(guid_to_remote_node_map);
+ }
++}
+
+- RemoteTreeNode() = default;
+-
+- std::unique_ptr<syncer::UpdateResponseData> update_;
+- std::vector<RemoteTreeNode> children_;
+-};
++// static
++bool BookmarkModelMerger::RemoteTreeNode::UniquePositionLessThan(
++ const RemoteTreeNode& lhs,
++ const RemoteTreeNode& rhs) {
++ const syncer::UniquePosition a_pos =
++ syncer::UniquePosition::FromProto(lhs.entity().unique_position);
++ const syncer::UniquePosition b_pos =
++ syncer::UniquePosition::FromProto(rhs.entity().unique_position);
++ return a_pos.LessThan(b_pos);
++}
+
+ // static
+ BookmarkModelMerger::RemoteTreeNode
+diff --git a/components/sync_bookmarks/bookmark_model_merger.h b/components/sync_bookmarks/bookmark_model_merger.h
+index 9b59200..bf0783ec 100644
+--- a/components/sync_bookmarks/bookmark_model_merger.h
++++ b/components/sync_bookmarks/bookmark_model_merger.h
+@@ -5,6 +5,7 @@
+ #ifndef COMPONENTS_SYNC_BOOKMARKS_BOOKMARK_MODEL_MERGER_H_
+ #define COMPONENTS_SYNC_BOOKMARKS_BOOKMARK_MODEL_MERGER_H_
+
++#include <memory>
+ #include <string>
+ #include <unordered_map>
+ #include <vector>
+@@ -50,7 +51,52 @@
+
+ private:
+ // Internal representation of a remote tree, composed of nodes.
+- class RemoteTreeNode;
++ class RemoteTreeNode final {
++ private:
++ using UpdatesPerParentId =
++ std::unordered_map<base::StringPiece,
++ syncer::UpdateResponseDataList,
++ base::StringPieceHash>;
++
++ public:
++ // Constructs a tree given |update| as root and recursively all descendants
++ // by traversing |*updates_per_parent_id|. |update| and
++ // |updates_per_parent_id| must not be null. All updates
++ // |*updates_per_parent_id| must represent valid updates. Updates
++ // corresponding from descendant nodes are moved away from
++ // |*updates_per_parent_id|.
++ static RemoteTreeNode BuildTree(
++ std::unique_ptr<syncer::UpdateResponseData> update,
++ UpdatesPerParentId* updates_per_parent_id);
++
++ ~RemoteTreeNode();
++
++ // Allow moves, useful during construction.
++ RemoteTreeNode(RemoteTreeNode&&);
++ RemoteTreeNode& operator=(RemoteTreeNode&&);
++
++ const syncer::EntityData& entity() const { return *update_->entity; }
++ int64_t response_version() const { return update_->response_version; }
++
++ // Direct children nodes, sorted by ascending unique position. These are
++ // guaranteed to be valid updates (e.g. IsValidBookmarkSpecifics()).
++ const std::vector<RemoteTreeNode>& children() const { return children_; }
++
++ // Recursively emplaces all GUIDs (this node and descendants) into
++ // |*guid_to_remote_node_map|, which must not be null.
++ void EmplaceSelfAndDescendantsByGUID(
++ std::unordered_map<std::string, const RemoteTreeNode*>*
++ guid_to_remote_node_map) const;
++
++ private:
++ static bool UniquePositionLessThan(const RemoteTreeNode& lhs,
++ const RemoteTreeNode& rhs);
++
++ RemoteTreeNode();
++
++ std::unique_ptr<syncer::UpdateResponseData> update_;
++ std::vector<RemoteTreeNode> children_;
++ };
+
+ // A forest composed of multiple trees where the root of each tree represents
+ // a permanent node, keyed by server-defined unique tag of the root.
diff --git a/chromium-80-gcc-permissive.patch b/chromium-80-gcc-permissive.patch
new file mode 100644
index 0000000..c7aef49
--- /dev/null
+++ b/chromium-80-gcc-permissive.patch
@@ -0,0 +1,33 @@
+In file included from ../../media/base/media_log_properties.h:13,
+ from ../../media/base/media_log.h:23,
+ from ../../media/filters/frame_processor.h:15,
+ from ../../media/filters/frame_processor.cc:5:
+../../media/base/media_log_properties_helper.h:86:8: error: extra qualification not allowed [-fpermissive]
+ 86 | struct internal::MediaLogPropertyTypeConverter<media::AudioDecoderConfig> {
+ | ^~~~~~~~
+../../media/base/media_log_properties_helper.h:86:75: error: explicit specialization of non-template 'media::internal::<unnamed struct>'
+ 86 | struct internal::MediaLogPropertyTypeConverter<media::AudioDecoderConfig> {
+ | ^
+
+diff --git a/media/base/media_log_properties_helper.h b/media/base/media_log_properties_helper.h
+index 95ff70a..549b003 100644
+--- a/media/base/media_log_properties_helper.h
++++ b/media/base/media_log_properties_helper.h
+@@ -83,7 +83,7 @@ struct MediaLogPropertyTypeConverter<std::vector<T>> {
+
+ // Specializer for sending AudioDecoderConfigs to the media tab in devtools.
+ template <>
+-struct internal::MediaLogPropertyTypeConverter<media::AudioDecoderConfig> {
++struct MediaLogPropertyTypeConverter<media::AudioDecoderConfig> {
+ static base::Value Convert(const AudioDecoderConfig& value) {
+ base::Value result(base::Value::Type::DICTIONARY);
+ result.SetStringKey("codec", GetCodecName(value.codec()));
+@@ -114,7 +114,7 @@ struct internal::MediaLogPropertyTypeConverter<media::AudioDecoderConfig> {
+
+ // Specializer for sending VideoDecoderConfigs to the media tab in devtools.
+ template <>
+-struct internal::MediaLogPropertyTypeConverter<VideoDecoderConfig> {
++struct MediaLogPropertyTypeConverter<VideoDecoderConfig> {
+ static base::Value Convert(const VideoDecoderConfig& value) {
+ base::Value result(base::Value::Type::DICTIONARY);
+ result.SetStringKey("codec", GetCodecName(value.codec()));
diff --git a/chromium-80-gcc-quiche.patch b/chromium-80-gcc-quiche.patch
new file mode 100644
index 0000000..aa3d541
--- /dev/null
+++ b/chromium-80-gcc-quiche.patch
@@ -0,0 +1,30 @@
+From 00f47df999c9b19e80fdc01db0ae9ca1b6a12b3a Mon Sep 17 00:00:00 2001
+From: vasilvv <vasilvv(a)google.com>
+Date: Wed, 03 Apr 2019 13:58:53 -0700
+Subject: [PATCH] GCC: do not delete move constructor of QuicStreamSendBuffer
+
+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 <jose.dapena(a)lge.com> at https://quiche-review.googlesource.com/c/quiche/+/2420
+
+PiperOrigin-RevId: 241800134
+Change-Id: I4e3c97d6e5895d85340e8c1b740e6196d9104066
+---
+
+diff --git a/net/third_party/quiche/src/quic/core/quic_stream_send_buffer.h b/net/third_party/quiche/src/quic/core/quic_stream_send_buffer.h
+index e34514b..74e9d0d 100644
+--- a/net/third_party/quiche/src/quic/core/quic_stream_send_buffer.h
++++ b/net/third_party/quiche/src/quic/core/quic_stream_send_buffer.h
+@@ -62,7 +62,7 @@
+ 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.
diff --git a/chromium-80-include.patch b/chromium-80-include.patch
new file mode 100644
index 0000000..dd85de7
--- /dev/null
+++ b/chromium-80-include.patch
@@ -0,0 +1,33 @@
+From 8273f4d3130e06fd8b6bef87b07c936304b971d9 Mon Sep 17 00:00:00 2001
+From: Raphael Kubo da Costa <raphael.kubo.da.costa(a)intel.com>
+Date: Tue, 10 Dec 2019 20:59:57 +0000
+Subject: [PATCH] [cros search service]: Include <cmath> for std::pow()
+
+IWYU. Follow up to commit 2b2ea3c09b ("[cros search service] Move shared
+string matching functions to //chrome"), which broke the libstdc++ build:
+
+ ../../chrome/common/string_matching/fuzzy_tokenized_string_match.cc:199:14: error: no member named 'pow' in namespace 'std'
+ std::pow(partial_match_penalty_rate, long_start - current - 1);
+ ~~~~~^
+
+Bug: 957519
+Change-Id: I66f61cb4f93cfa0bfa3d1b00ba391ddd8f31a7fb
+Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1960310
+Auto-Submit: Raphael Kubo da Costa <raphael.kubo.da.costa(a)intel.com>
+Reviewed-by: Jia Meng <jiameng(a)chromium.org>
+Commit-Queue: Raphael Kubo da Costa <raphael.kubo.da.costa(a)intel.com>
+Cr-Commit-Position: refs/heads/master@{#723499}
+---
+
+diff --git a/chrome/common/string_matching/fuzzy_tokenized_string_match.cc b/chrome/common/string_matching/fuzzy_tokenized_string_match.cc
+index 8351fa7..884ef63 100644
+--- a/chrome/common/string_matching/fuzzy_tokenized_string_match.cc
++++ b/chrome/common/string_matching/fuzzy_tokenized_string_match.cc
+@@ -5,6 +5,7 @@
+ #include "chrome/common/string_matching/fuzzy_tokenized_string_match.h"
+
+ #include <algorithm>
++#include <cmath>
+ #include <iterator>
+
+ #include "base/i18n/case_conversion.h"
diff --git a/chromium-80.0.3987.106-missing-cstddef-header.patch b/chromium-80.0.3987.106-missing-cstddef-header.patch
new file mode 100644
index 0000000..832cf02
--- /dev/null
+++ b/chromium-80.0.3987.106-missing-cstddef-header.patch
@@ -0,0 +1,44 @@
+diff -up chromium-80.0.3987.106/chrome/browser/search/background/ntp_backgrounds.h.missing-cstddef chromium-80.0.3987.106/chrome/browser/search/background/ntp_backgrounds.h
+--- chromium-80.0.3987.106/chrome/browser/search/background/ntp_backgrounds.h.missing-cstddef 2020-02-18 08:42:38.088243182 -0500
++++ chromium-80.0.3987.106/chrome/browser/search/background/ntp_backgrounds.h 2020-02-18 08:42:59.679782858 -0500
+@@ -6,6 +6,7 @@
+ #define CHROME_BROWSER_SEARCH_BACKGROUND_NTP_BACKGROUNDS_H_
+
+ #include <array>
++#include <cstddef>
+
+ class GURL;
+
+diff -up chromium-80.0.3987.106/media/cdm/supported_cdm_versions.h.missing-cstddef chromium-80.0.3987.106/media/cdm/supported_cdm_versions.h
+--- chromium-80.0.3987.106/media/cdm/supported_cdm_versions.h.missing-cstddef 2020-02-17 16:26:51.661246220 -0500
++++ chromium-80.0.3987.106/media/cdm/supported_cdm_versions.h 2020-02-17 16:26:51.662246200 -0500
+@@ -6,6 +6,7 @@
+ #define MEDIA_CDM_SUPPORTED_CDM_VERSIONS_H_
+
+ #include <array>
++#include <cstddef>
+
+ #include "media/base/media_export.h"
+ #include "media/cdm/api/content_decryption_module.h"
+diff -up chromium-80.0.3987.106/third_party/angle/include/platform/Platform.h.missing-cstddef chromium-80.0.3987.106/third_party/angle/include/platform/Platform.h
+--- chromium-80.0.3987.106/third_party/angle/include/platform/Platform.h.missing-cstddef 2020-02-17 16:26:07.433130572 -0500
++++ chromium-80.0.3987.106/third_party/angle/include/platform/Platform.h 2020-02-17 16:26:07.434130552 -0500
+@@ -11,6 +11,7 @@
+
+ #include <stdint.h>
+ #include <array>
++#include <cstddef>
+
+ #define EGL_PLATFORM_ANGLE_PLATFORM_METHODS_ANGLEX 0x3482
+
+diff -up chromium-80.0.3987.106/third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h.missing-cstddef chromium-80.0.3987.106/third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h
+--- chromium-80.0.3987.106/third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h.missing-cstddef 2020-02-17 16:23:41.385050827 -0500
++++ chromium-80.0.3987.106/third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h 2020-02-17 16:23:41.368051167 -0500
+@@ -12,6 +12,7 @@
+ #define MODULES_AUDIO_PROCESSING_AEC3_CLOCKDRIFT_DETECTOR_H_
+
+ #include <array>
++#include <cstddef>
+
+ namespace webrtc {
+
diff --git a/chromium-80.0.3987.106-missing-cstring-header.patch b/chromium-80.0.3987.106-missing-cstring-header.patch
new file mode 100644
index 0000000..646dac6
--- /dev/null
+++ b/chromium-80.0.3987.106-missing-cstring-header.patch
@@ -0,0 +1,34 @@
+diff -up chromium-80.0.3987.106/third_party/webrtc/audio/utility/channel_mixer.cc.missing-cstring chromium-80.0.3987.106/third_party/webrtc/audio/utility/channel_mixer.cc
+--- chromium-80.0.3987.106/third_party/webrtc/audio/utility/channel_mixer.cc.missing-cstring 2020-02-21 13:19:47.077683105 -0500
++++ chromium-80.0.3987.106/third_party/webrtc/audio/utility/channel_mixer.cc 2020-02-21 13:19:47.077683105 -0500
+@@ -8,6 +8,8 @@
+ * be found in the AUTHORS file in the root of the source tree.
+ */
+
++#include <cstring>
++
+ #include "audio/utility/channel_mixer.h"
+
+ #include "audio/utility/channel_mixing_matrix.h"
+diff -up chromium-80.0.3987.106/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc.missing-cstring chromium-80.0.3987.106/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc
+--- chromium-80.0.3987.106/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc.missing-cstring 2020-02-21 13:19:48.171659179 -0500
++++ chromium-80.0.3987.106/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc 2020-02-21 13:19:48.174659113 -0500
+@@ -17,6 +17,7 @@
+ #include <spa/param/video/raw-utils.h>
+ #include <spa/support/type-map.h>
+
++#include <cstring>
+ #include <memory>
+ #include <utility>
+
+diff -up chromium-80.0.3987.106/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc.missing-cstring chromium-80.0.3987.106/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc
+--- chromium-80.0.3987.106/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc.missing-cstring 2020-02-21 13:30:09.609068057 -0500
++++ chromium-80.0.3987.106/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc 2020-02-21 13:30:23.791757875 -0500
+@@ -10,6 +10,7 @@
+
+ #include "modules/video_coding/utility/ivf_file_reader.h"
+
++#include <cstring>
+ #include <string>
+ #include <vector>
+
diff --git a/chromium-80.0.3987.87-fix-for-c++17.patch b/chromium-80.0.3987.87-fix-for-c++17.patch
new file mode 100644
index 0000000..8639e82
--- /dev/null
+++ b/chromium-80.0.3987.87-fix-for-c++17.patch
@@ -0,0 +1,178 @@
+diff -up chromium-80.0.3987.87/base/containers/flat_tree.h.c17 chromium-80.0.3987.87/base/containers/flat_tree.h
+--- chromium-80.0.3987.87/base/containers/flat_tree.h.c17 2020-02-10 10:48:05.982500272 -0500
++++ chromium-80.0.3987.87/base/containers/flat_tree.h 2020-02-10 11:04:42.148507892 -0500
+@@ -776,7 +776,11 @@ template <class Key, class Value, class
+ template <typename K>
+ auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::find(const K& key)
+ -> iterator {
++#ifdef __cpp_lib_as_const
++ return const_cast_it(std::as_const(*this).find(key));
++#else
+ return const_cast_it(as_const(*this).find(key));
++#endif
+ }
+
+ template <class Key, class Value, class GetKeyFromValue, class KeyCompare>
+@@ -799,7 +803,11 @@ template <class Key, class Value, class
+ template <typename K>
+ auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::equal_range(
+ const K& key) -> std::pair<iterator, iterator> {
++#ifdef __cpp_lib_as_const
++ auto res = std::as_const(*this).equal_range(key);
++#else
+ auto res = as_const(*this).equal_range(key);
++#endif
+ return {const_cast_it(res.first), const_cast_it(res.second)};
+ }
+
+@@ -820,7 +828,11 @@ template <class Key, class Value, class
+ template <typename K>
+ auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::lower_bound(
+ const K& key) -> iterator {
++#ifdef __cpp_lib_as_const
++ return const_cast_it(std::as_const(*this).lower_bound(key));
++#else
+ return const_cast_it(as_const(*this).lower_bound(key));
++#endif
+ }
+
+ template <class Key, class Value, class GetKeyFromValue, class KeyCompare>
+@@ -841,7 +853,11 @@ template <class Key, class Value, class
+ template <typename K>
+ auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::upper_bound(
+ const K& key) -> iterator {
++#ifdef __cpp_lib_as_const
++ return const_cast_it(std::as_const(*this).upper_bound(key));
++#else
+ return const_cast_it(as_const(*this).upper_bound(key));
++#endif
+ }
+
+ template <class Key, class Value, class GetKeyFromValue, class KeyCompare>
+diff -up chromium-80.0.3987.106/third_party/webrtc/BUILD.gn.c17fix chromium-80.0.3987.106/third_party/webrtc/BUILD.gn
+--- chromium-80.0.3987.106/third_party/webrtc/BUILD.gn.c17fix 2020-02-20 15:00:23.439563056 -0500
++++ chromium-80.0.3987.106/third_party/webrtc/BUILD.gn 2020-02-20 15:01:36.282355645 -0500
+@@ -237,6 +237,10 @@ config("common_config") {
+ cflags_objc = []
+ defines = []
+
++ if (!is_clang) {
++ cflags_cc += [ "-std=c++17" ]
++ }
++
+ if (rtc_enable_protobuf) {
+ defines += [ "WEBRTC_ENABLE_PROTOBUF=1" ]
+ } else {
+diff -up chromium-80.0.3987.106/third_party/abseil-cpp/BUILD.gn.c17fix chromium-80.0.3987.106/third_party/abseil-cpp/BUILD.gn
+--- chromium-80.0.3987.106/third_party/abseil-cpp/BUILD.gn.c17fix 2020-02-21 15:12:14.413937754 -0500
++++ chromium-80.0.3987.106/third_party/abseil-cpp/BUILD.gn 2020-02-21 15:12:59.128967149 -0500
+@@ -46,6 +46,10 @@ config("absl_default_cflags_cc") {
+ cflags_cc += [ "-Wbitfield-enum-conversion" ]
+ }
+ }
++ if (!is_clang) {
++ cflags_cc = [ "-std=c++17" ]
++ }
++
+ if (is_win) {
+ cflags_cc += [
+ "/wd4005", # macro-redefinition
+diff -up chromium-80.0.3987.106/third_party/openscreen/src/tools/cddl/BUILD.gn.c17fix chromium-80.0.3987.106/third_party/openscreen/src/tools/cddl/BUILD.gn
+--- chromium-80.0.3987.106/third_party/openscreen/src/tools/cddl/BUILD.gn.c17fix 2020-02-21 15:35:56.269180510 -0500
++++ chromium-80.0.3987.106/third_party/openscreen/src/tools/cddl/BUILD.gn 2020-02-21 15:42:12.718900742 -0500
+@@ -22,6 +22,10 @@ if (current_toolchain == host_toolchain)
+ "../../third_party/abseil",
+ ]
+
++ if (!is_clang) {
++ cflags_cc = [ "-std=c++17" ]
++ }
++
+ configs += [ "../../build:openscreen_include_dirs" ]
+ }
+ }
+diff -up chromium-80.0.3987.106/build/config/compiler/BUILD.gn.c17hack chromium-80.0.3987.106/build/config/compiler/BUILD.gn
+--- chromium-80.0.3987.106/build/config/compiler/BUILD.gn.c17hack 2020-02-21 16:09:22.871980103 -0500
++++ chromium-80.0.3987.106/build/config/compiler/BUILD.gn 2020-02-21 16:09:28.606856106 -0500
+@@ -570,7 +570,7 @@ config("compiler") {
+ if (cxx11_override) {
+ cflags_cc += [ "-std=c++11" ]
+ } else {
+- cflags_cc += [ "-std=c++14" ]
++ cflags_cc += [ "-std=c++17" ]
+ }
+ }
+
+diff -up chromium-80.0.3987.106/third_party/openscreen/src/build/config/BUILD.gn.c17fix chromium-80.0.3987.106/third_party/openscreen/src/build/config/BUILD.gn
+--- chromium-80.0.3987.106/third_party/openscreen/src/build/config/BUILD.gn.c17fix 2020-02-24 08:55:52.674819783 -0500
++++ chromium-80.0.3987.106/third_party/openscreen/src/build/config/BUILD.gn 2020-02-24 08:56:08.665466317 -0500
+@@ -67,8 +67,8 @@ config("openscreen_code") {
+ "-fno-strict-aliasing", # See http://crbug.com/32204
+ ]
+
+- cflags_cc = [ "-std=c++14" ]
+- cflags_objcc = [ "-std=c++14" ]
++ cflags_cc = [ "-std=c++17" ]
++ cflags_objcc = [ "-std=c++17" ]
+
+ ldflags = [ "-Werror" ]
+
+diff -up chromium-80.0.3987.106/build/config/compiler/BUILD.gn.c17fix chromium-80.0.3987.106/build/config/compiler/BUILD.gn
+--- chromium-80.0.3987.106/build/config/compiler/BUILD.gn.c17fix 2020-02-24 09:39:14.659536642 -0500
++++ chromium-80.0.3987.106/build/config/compiler/BUILD.gn 2020-02-24 09:39:23.098366657 -0500
+@@ -553,7 +553,7 @@ config("compiler") {
+ # Override Chromium's default for projects that wish to stay on C++11.
+ cflags_cc += [ "-std=${standard_prefix}++11" ]
+ } else {
+- cflags_cc += [ "-std=${standard_prefix}++14" ]
++ cflags_cc += [ "-std=${standard_prefix}++17" ]
+ }
+ } else if (!is_win && !is_nacl) {
+ if (target_os == "android") {
+diff -up chromium-80.0.3987.106/third_party/openscreen/src/platform/api/task_runner.h.spot chromium-80.0.3987.106/third_party/openscreen/src/platform/api/task_runner.h
+--- chromium-80.0.3987.106/third_party/openscreen/src/platform/api/task_runner.h.spot 2020-02-24 10:56:54.645126949 -0500
++++ chromium-80.0.3987.106/third_party/openscreen/src/platform/api/task_runner.h 2020-02-24 10:57:26.788407144 -0500
+@@ -22,7 +22,7 @@ namespace platform {
+ // that A shall run before B.
+ class TaskRunner {
+ public:
+- using Task = std::packaged_task<void() noexcept>;
++ using Task = std::packaged_task<void()>;
+
+ virtual ~TaskRunner() = default;
+
+diff -up chromium-80.0.3987.106/base/containers/circular_deque.h.c17fix chromium-80.0.3987.106/base/containers/circular_deque.h
+--- chromium-80.0.3987.106/base/containers/circular_deque.h.c17fix 2020-02-24 14:42:14.163076162 -0500
++++ chromium-80.0.3987.106/base/containers/circular_deque.h 2020-02-24 14:43:38.393120439 -0500
+@@ -522,11 +522,19 @@ class circular_deque {
+ return buffer_[i - right_size];
+ }
+ value_type& at(size_type i) {
++#ifdef __cpp_lib_as_const
++ return const_cast<value_type&>(std::as_const(*this).at(i));
++#else
+ return const_cast<value_type&>(as_const(*this).at(i));
++#endif
+ }
+
+ value_type& operator[](size_type i) {
++#ifdef __cpp_lib_as_const
++ return const_cast<value_type&>(std::as_const(*this)[i]);
++#else
+ return const_cast<value_type&>(as_const(*this)[i]);
++#endif
+ }
+
+ const value_type& operator[](size_type i) const { return at(i); }
+diff -up chromium-80.0.3987.106/device/bluetooth/bluetooth_adapter.cc.c17fix chromium-80.0.3987.106/device/bluetooth/bluetooth_adapter.cc
+--- chromium-80.0.3987.106/device/bluetooth/bluetooth_adapter.cc.c17fix 2020-02-24 16:09:58.810502665 -0500
++++ chromium-80.0.3987.106/device/bluetooth/bluetooth_adapter.cc 2020-02-24 16:10:35.484705843 -0500
+@@ -638,7 +638,7 @@ void BluetoothAdapter::RecordBluetoothDi
+ }
+
+ // static
+-constexpr base::TimeDelta BluetoothAdapter::timeoutSec =
++const extern base::TimeDelta BluetoothAdapter::timeoutSec =
+ base::TimeDelta::FromSeconds(180);
+
+ } // namespace device
diff --git a/chromium-80.0.3987.87-libpipewire-0.3.patch b/chromium-80.0.3987.87-libpipewire-0.3.patch
new file mode 100644
index 0000000..6de6081
--- /dev/null
+++ b/chromium-80.0.3987.87-libpipewire-0.3.patch
@@ -0,0 +1,12 @@
+diff -up chromium-80.0.3987.87/third_party/webrtc/modules/desktop_capture/BUILD.gn.pipewire03 chromium-80.0.3987.87/third_party/webrtc/modules/desktop_capture/BUILD.gn
+--- chromium-80.0.3987.87/third_party/webrtc/modules/desktop_capture/BUILD.gn.pipewire03 2020-02-11 13:12:07.006990450 -0500
++++ chromium-80.0.3987.87/third_party/webrtc/modules/desktop_capture/BUILD.gn 2020-02-11 13:12:16.294795251 -0500
+@@ -190,7 +190,7 @@ if (is_linux) {
+
+ if (rtc_link_pipewire) {
+ pkg_config("pipewire") {
+- packages = [ "libpipewire-0.2" ]
++ packages = [ "libpipewire-0.3", "libspa-0.2" ]
+ }
+ } else {
+ # When libpipewire is not directly linked, use stubs to allow for dlopening of
diff --git a/chromium-80.0.3987.87-missing-cstddef-header.patch b/chromium-80.0.3987.87-missing-cstddef-header.patch
new file mode 100644
index 0000000..3ea2c22
--- /dev/null
+++ b/chromium-80.0.3987.87-missing-cstddef-header.patch
@@ -0,0 +1,22 @@
+diff -up chromium-80.0.3987.87/media/cdm/supported_cdm_versions.h.missing-cstddef chromium-80.0.3987.87/media/cdm/supported_cdm_versions.h
+--- chromium-80.0.3987.87/media/cdm/supported_cdm_versions.h.missing-cstddef 2020-02-10 12:07:42.863507440 -0500
++++ chromium-80.0.3987.87/media/cdm/supported_cdm_versions.h 2020-02-10 12:07:53.807364746 -0500
+@@ -6,6 +6,7 @@
+ #define MEDIA_CDM_SUPPORTED_CDM_VERSIONS_H_
+
+ #include <array>
++#include <cstddef>
+
+ #include "media/base/media_export.h"
+ #include "media/cdm/api/content_decryption_module.h"
+diff -up chromium-80.0.3987.87/third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h.missing-cstddef chromium-80.0.3987.87/third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h
+--- chromium-80.0.3987.87/third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h.missing-cstddef 2020-02-10 11:11:11.733934021 -0500
++++ chromium-80.0.3987.87/third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h 2020-02-10 11:11:11.724934173 -0500
+@@ -12,6 +12,7 @@
+ #define MODULES_AUDIO_PROCESSING_AEC3_CLOCKDRIFT_DETECTOR_H_
+
+ #include <array>
++#include <cstddef>
+
+ namespace webrtc {
+
diff --git a/chromium-80.0.3987.87-missing-cstdint-header.patch b/chromium-80.0.3987.87-missing-cstdint-header.patch
new file mode 100644
index 0000000..e61042f
--- /dev/null
+++ b/chromium-80.0.3987.87-missing-cstdint-header.patch
@@ -0,0 +1,55 @@
+diff -up chromium-80.0.3987.106/third_party/perfetto/include/perfetto/base/task_runner.h.missing-cstdint chromium-80.0.3987.106/third_party/perfetto/include/perfetto/base/task_runner.h
+--- chromium-80.0.3987.106/third_party/perfetto/include/perfetto/base/task_runner.h.missing-cstdint 2020-02-21 12:29:43.393191877 -0500
++++ chromium-80.0.3987.106/third_party/perfetto/include/perfetto/base/task_runner.h 2020-02-21 12:29:43.393191877 -0500
+@@ -17,6 +17,7 @@
+ #ifndef INCLUDE_PERFETTO_BASE_TASK_RUNNER_H_
+ #define INCLUDE_PERFETTO_BASE_TASK_RUNNER_H_
+
++#include <cstdint>
+ #include <functional>
+
+ #include "perfetto/base/export.h"
+diff -up chromium-80.0.3987.106/third_party/webrtc/call/rtx_receive_stream.h.missing-cstdint chromium-80.0.3987.106/third_party/webrtc/call/rtx_receive_stream.h
+--- chromium-80.0.3987.106/third_party/webrtc/call/rtx_receive_stream.h.missing-cstdint 2020-02-21 12:30:30.739332871 -0500
++++ chromium-80.0.3987.106/third_party/webrtc/call/rtx_receive_stream.h 2020-02-21 12:30:30.747332725 -0500
+@@ -11,6 +11,7 @@
+ #ifndef CALL_RTX_RECEIVE_STREAM_H_
+ #define CALL_RTX_RECEIVE_STREAM_H_
+
++#include <cstdint>
+ #include <map>
+
+ #include "call/rtp_packet_sink_interface.h"
+diff -up chromium-80.0.3987.106/third_party/webrtc/common_video/h264/pps_parser.h.missing-cstdint chromium-80.0.3987.106/third_party/webrtc/common_video/h264/pps_parser.h
+--- chromium-80.0.3987.106/third_party/webrtc/common_video/h264/pps_parser.h.missing-cstdint 2020-02-21 12:30:31.564317903 -0500
++++ chromium-80.0.3987.106/third_party/webrtc/common_video/h264/pps_parser.h 2020-02-21 12:30:31.561317957 -0500
+@@ -11,6 +11,7 @@
+ #ifndef COMMON_VIDEO_H264_PPS_PARSER_H_
+ #define COMMON_VIDEO_H264_PPS_PARSER_H_
+
++#include <cstdint>
+ #include "absl/types/optional.h"
+
+ namespace rtc {
+diff -up chromium-80.0.3987.106/third_party/webrtc/common_video/h264/sps_parser.h.missing-cstdint chromium-80.0.3987.106/third_party/webrtc/common_video/h264/sps_parser.h
+--- chromium-80.0.3987.106/third_party/webrtc/common_video/h264/sps_parser.h.missing-cstdint 2020-02-21 12:30:31.565317885 -0500
++++ chromium-80.0.3987.106/third_party/webrtc/common_video/h264/sps_parser.h 2020-02-21 12:30:31.565317885 -0500
+@@ -11,6 +11,7 @@
+ #ifndef COMMON_VIDEO_H264_SPS_PARSER_H_
+ #define COMMON_VIDEO_H264_SPS_PARSER_H_
+
++#include <cstdint>
+ #include "absl/types/optional.h"
+
+ namespace rtc {
+diff -up chromium-80.0.3987.106/third_party/webrtc/modules/include/module_common_types_public.h.missing-cstdint chromium-80.0.3987.106/third_party/webrtc/modules/include/module_common_types_public.h
+--- chromium-80.0.3987.106/third_party/webrtc/modules/include/module_common_types_public.h.missing-cstdint 2020-02-21 12:52:16.946512744 -0500
++++ chromium-80.0.3987.106/third_party/webrtc/modules/include/module_common_types_public.h 2020-02-21 12:52:26.220312608 -0500
+@@ -11,6 +11,7 @@
+ #ifndef MODULES_INCLUDE_MODULE_COMMON_TYPES_PUBLIC_H_
+ #define MODULES_INCLUDE_MODULE_COMMON_TYPES_PUBLIC_H_
+
++#include <cstdint>
+ #include <limits>
+
+ #include "absl/types/optional.h"
diff --git a/chromium-80.0.3987.87-missing-string-header.patch b/chromium-80.0.3987.87-missing-string-header.patch
new file mode 100644
index 0000000..6bb4c7d
--- /dev/null
+++ b/chromium-80.0.3987.87-missing-string-header.patch
@@ -0,0 +1,11 @@
+diff -up chromium-80.0.3987.87/base/trace_event/trace_event_memory_overhead.h.missing-string chromium-80.0.3987.87/base/trace_event/trace_event_memory_overhead.h
+--- chromium-80.0.3987.87/base/trace_event/trace_event_memory_overhead.h.missing-string 2020-02-06 16:47:15.707676509 -0500
++++ chromium-80.0.3987.87/base/trace_event/trace_event_memory_overhead.h 2020-02-06 16:47:23.782504337 -0500
+@@ -8,6 +8,7 @@
+ #include <stddef.h>
+ #include <stdint.h>
+
++#include <string>
+ #include <unordered_map>
+
+ #include "base/base_export.h"
diff --git a/chromium-browser.sh b/chromium-browser.sh
index 97607b9..d76aabe 100755
--- a/chromium-browser.sh
+++ b/chromium-browser.sh
@@ -39,6 +39,9 @@ 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
+# Disable allow_rgb_configs to fix odd color and vaapi issues with Mesa
+export allow_rgb10_configs=false
+
CHROMIUM_DISTRO_FLAGS=" --enable-plugins \
--enable-extensions \
--enable-user-scripts \
diff --git a/chromium.spec b/chromium.spec
index 6f4a439..ac782c0 100644
--- a/chromium.spec
+++ b/chromium.spec
@@ -9,18 +9,16 @@
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
+
+# This was faster when it worked, but it didn't always.
+# As of chromium 80, it is no longer supported. RIP.
%global use_jumbo 0
-%else
-%global use_jumbo 1
-%endif
# We usually want this.
%global build_headless 1
# We'd like to always have this on.
-%global use_vaapi 0
+%global use_vaapi 1
# 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)
@@ -71,9 +69,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|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_lib|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|libmirclient.so.9|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|libperformace_manager_public_mojom_blink|libperformace_manager_public_mojom_shared|libperformace_manager_public_mojom|libplatform|libplatform_window_handler_libs|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libproperties|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|libvk_swiftshader|libvr_base|libvr_common|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libvulkan_ycbcr_info|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|libfontconfig
+%global privlibs 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_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_ipc|libcc_mojo_embedder|libcc_paint|libcertificate_matching|libcert_verifier|libchrome_features|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcolor_utils|libcommon|libcompositor|libcontent|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom|libcontent_service_mojom_shared|libcontent_settings_features|libcrash_key_lib|libcrcrypto|libcrdtp|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevices|libdevice_vr|libdevice_vr_mojo_bindings|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevice_vr_test_mojo_bindings|libdevice_vr_test_mojo_bindings_blink|libdevice_vr_test_mojo_bindings_shared|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libdom_storage_mojom|libdom_storage_mojom_shared|libEGL|libEGL|libembedder|libembedder_switches|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libextras|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|libgles2|libgles2_implementation|libgles2_utils|libGLESv2|libGLESv2|libgl_init|libgl_in_process_context|libgl_wrapper|libgpu|libgpu_ipc_service|libgtkui|libheadless_non_renderer|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc|libipc_mojom|libipc_mojom_shared|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|liblearning_common|liblearning_impl|libleveldatabase|libleveldb_proto|libmanager|libmedia|libmedia_blink|libmedia_gpu|libmedia_learning_mojo_impl|libmedia_message_center|libmedia_mojo_services|libmedia_session_base_cpp|libmedia_session_cpp|libmedia_webrtc|libmemory_instrumentation|libmenu|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|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|libmojom_core_shared|libmojom_mhtml_load_result_shared|libmojom_modules_shared|libmojo_mojom_bindings|libmojo_mojom_bindings_shared|libmojom_platform_shared|libmojo_public_system|libmojo_public_system_cpp|libnative_theme|libnet|libnetwork_cpp|libnetwork_cpp_base|libnetwork_service|libnetwork_session_configurator|libonc|libos_crypt|libparsers|libpdfium|libperfetto|libperformace_manager_public_mojom|libperformace_manager_public_mojom_blink|libperformace_manager_public_mojom_shared|libplatform|libplatform_window|libplatform_window_common|libplatform_window_handler_libs|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libproperties|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_public_mojom|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libsandbox|libsandbox_services|libscheduling_metrics|libseccomp_bpf|libsecurity_state_features|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|libservice_provider|libsessions|libshared_memory_support|libshared_with_blink|libshell_dialogs|libskia|libskia_shared_typemap_traits|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstorage_service_public|libstub_window|libsuid_sandbox_client|libsurface|libsystem_media_controls|libtab_count_metrics|libthread_linux|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|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|libVkICD_mock_icd|libvk_swiftshader|libvr_base|libvr_common|libvulkan_info|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libvulkan_ycbcr_info|libweb_bluetooth_mojo_bindings_shared|libwebdata_common|libweb_dialogs|libweb_feature_mojo_bindings_mojom|libweb_feature_mojo_bindings_mojom_blink|libweb_feature_mojo_bindings_mojom_shared|libwebgpu|libweb_modal|libwebrtc_component|libwebview|libwm|libwm_public|libwtf|libwtf_support|libx11_events_platform|libx11_window|libzygote|libfontconfig
%else
-%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_lib|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|libmirclient.so.9|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|libperformace_manager_public_mojom_blink|libperformace_manager_public_mojom_shared|libperformace_manager_public_mojom|libplatform|libplatform_window_handler_libs|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libproperties|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|libvk_swiftshader|libvr_base|libvr_common|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libvulkan_ycbcr_info|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
+%global privlibs 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_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_ipc|libcc_mojo_embedder|libcc_paint|libcertificate_matching|libcert_verifier|libchrome_features|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcolor_utils|libcommon|libcompositor|libcontent|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom|libcontent_service_mojom_shared|libcontent_settings_features|libcrash_key_lib|libcrcrypto|libcrdtp|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevices|libdevice_vr|libdevice_vr_mojo_bindings|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevice_vr_test_mojo_bindings|libdevice_vr_test_mojo_bindings_blink|libdevice_vr_test_mojo_bindings_shared|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libdom_storage_mojom|libdom_storage_mojom_shared|libEGL|libEGL|libembedder|libembedder_switches|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libextras|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|libgles2|libgles2_implementation|libgles2_utils|libGLESv2|libGLESv2|libgl_init|libgl_in_process_context|libgl_wrapper|libgpu|libgpu_ipc_service|libgtkui|libheadless_non_renderer|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc|libipc_mojom|libipc_mojom_shared|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|liblearning_common|liblearning_impl|libleveldatabase|libleveldb_proto|libmanager|libmedia|libmedia_blink|libmedia_gpu|libmedia_learning_mojo_impl|libmedia_message_center|libmedia_mojo_services|libmedia_session_base_cpp|libmedia_session_cpp|libmedia_webrtc|libmemory_instrumentation|libmenu|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|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|libmojom_core_shared|libmojom_mhtml_load_result_shared|libmojom_modules_shared|libmojo_mojom_bindings|libmojo_mojom_bindings_shared|libmojom_platform_shared|libmojo_public_system|libmojo_public_system_cpp|libnative_theme|libnet|libnetwork_cpp|libnetwork_cpp_base|libnetwork_service|libnetwork_session_configurator|libonc|libos_crypt|libparsers|libpdfium|libperfetto|libperformace_manager_public_mojom|libperformace_manager_public_mojom_blink|libperformace_manager_public_mojom_shared|libplatform|libplatform_window|libplatform_window_common|libplatform_window_handler_libs|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libproperties|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_public_mojom|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libsandbox|libsandbox_services|libscheduling_metrics|libseccomp_bpf|libsecurity_state_features|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|libservice_provider|libsessions|libshared_memory_support|libshared_with_blink|libshell_dialogs|libskia|libskia_shared_typemap_traits|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstorage_service_public|libstub_window|libsuid_sandbox_client|libsurface|libsystem_media_controls|libtab_count_metrics|libthread_linux|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|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|libVkICD_mock_icd|libvk_swiftshader|libvr_base|libvr_common|libvulkan_info|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libvulkan_ycbcr_info|libweb_bluetooth_mojo_bindings_shared|libwebdata_common|libweb_dialogs|libweb_feature_mojo_bindings_mojom|libweb_feature_mojo_bindings_mojom_blink|libweb_feature_mojo_bindings_mojom_shared|libwebgpu|libweb_modal|libwebrtc_component|libwebview|libwm|libwm_public|libwtf|libwtf_support|libx11_events_platform|libx11_window|libzygote
%endif
%global __requires_exclude ^(%{privlibs})\\.so*
@@ -153,14 +151,14 @@ BuildRequires: libicu-devel >= 5.4
%global chromoting_client_id %nil
%endif
-%global majorversion 79
+%global majorversion 80
%if %{freeworld}
Name: chromium%{chromium_channel}%{nsuffix}
%else
Name: chromium%{chromium_channel}
%endif
-Version: %{majorversion}.0.3945.130
+Version: %{majorversion}.0.3987.122
Release: 1%{?dist}
%if %{?freeworld}
%if %{?shared}
@@ -220,22 +218,39 @@ Patch54: chromium-77.0.3865.75-gcc-include-memory.patch
# https://chromium.googlesource.com/chromium/src/+/6b633c4b14850df376d5cec5...
# https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/...
Patch55: chromium-79.0.3945.56-base-gcc-no-alignas.patch
-# https://chromium.googlesource.com/chromium/src/+/af77dc4014ead3d898fdc8a7...
-Patch56: chromium-79-gcc-ambiguous-nodestructor.patch
# https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/...
Patch57: chromium-78-protobuf-export.patch
-# https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client/chromium/files...
-Patch58: chromium-79-include.patch
# https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client/chromium/files...
Patch59: chromium-77-clang.patch
-# https://chromium.googlesource.com/chromium/src.git/+/54407b422a9cbf775a68...
-Patch60: chromium-79.0.3945.56-glibc-clock-nanosleep.patch
-# https://chromium.googlesource.com/chromium/src/+/e925deab264e5ebc3c5c1341...
-Patch61: chromium-79.0.3945.56-gcc-name-clash.patch
-# https://chromium.googlesource.com/chromium/src/+/528e9a3e1f25bd264549c4c7...
-Patch62: chromium-79-gcc-permissive.patch
# /../../ui/base/cursor/ozone/bitmap_cursor_factory_ozone.cc:53:15: error: 'find_if' is not a member of 'std'; did you mean 'find'?
Patch63: chromium-79.0.3945.56-fix-find_if.patch
+# Work around situation with gcc10 where
+# modifying a const object is not allowed in a constant expression
+# except in a very specific case in c++17
+# https://bugs.chromium.org/p/chromium/issues/detail?id=1045963
+Patch64: chromium-79.0.3945.130-gcc10-use-c++17-to-work-around-ugly-angle-code.patch
+# https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client/chromium/files...
+Patch65: chromium-80-gcc-incomplete-type.patch
+# https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client/chromium/files...
+Patch66: chromium-80-include.patch
+# https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client/chromium/files...
+Patch67: chromium-80-gcc-abstract.patch
+# https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client/chromium/files...
+Patch68: chromium-80-gcc-blink.patch
+# https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client/chromium/files...
+Patch69: chromium-80-gcc-permissive.patch
+# https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client/chromium/files...
+Patch70: chromium-80-gcc-quiche.patch
+# ../../base/trace_event/trace_event_memory_overhead.h:15:1: note: 'std::string' is defined in header '<string>'; did you forget to '#include <string>'?
+Patch71: chromium-80.0.3987.87-missing-string-header.patch
+# ../../third_party/perfetto/include/perfetto/base/task_runner.h:48:55: error: 'uint32_t' has not been declared
+Patch72: chromium-80.0.3987.87-missing-cstdint-header.patch
+# ../../third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h:34:3: error: 'size_t' does not name a type
+Patch73: chromium-80.0.3987.106-missing-cstddef-header.patch
+# Because of Patch64, we need to force std::as_const with c++17
+Patch74: chromium-80.0.3987.87-fix-for-c++17.patch
+# Missing <cstring> (thanks c++17)
+Patch75: chromium-80.0.3987.106-missing-cstring-header.patch
# Use lstdc++ on EPEL7 only
@@ -248,7 +263,7 @@ Patch102: chromium-79.0.3945.56-el7-noexcept.patch
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
+Patch205: fixvaapionintel.patch
# Apply these patches to work around EPEL8 issues
Patch300: chromium-76.0.3809.132-rhel8-force-disable-use_gnome_keyring.patch
@@ -772,14 +787,24 @@ udev.
%patch53 -p1 -b .unbundle-zlib
%patch54 -p1 -b .gcc-include-memory
%patch55 -p1 -b .base-gcc-no-alignas
-%patch56 -p1 -b .gcc-ambiguous-nodestructor
%patch57 -p1 -b .protobuf-export
-%patch58 -p1 -b .missing-includes
%patch59 -p1 -b .clang-supports-location-builtins
-%patch60 -p1 -b .glibc-clock-nanosleep
-%patch61 -p1 -b .gcc-name-clash
-%patch62 -p1 -b .gcc-permissive
%patch63 -p1 -b .fix-find_if
+%if 0%{?fedora} >= 32
+%patch64 -p1 -b .gcc10-angle
+%patch74 -p1 -b .c17
+%endif
+%patch65 -p1 -b .gcc-incomplete-type
+%patch66 -p1 -b .includefix
+%patch67 -p1 -b .gcc-abstract
+%patch68 -p1 -b .gcc-blink
+%patch69 -p1 -b .gcc-permissive
+%patch70 -p1 -b .gcc-quiche
+%patch71 -p1 -b .missing-string
+%patch72 -p1 -b .missing-cstdint
+%patch73 -p1 -b .missing-cstddef
+%patch75 -p1 -b .missing-cstring
+
# Fedora branded user agent
%if 0%{?fedora}
@@ -797,8 +822,8 @@ udev.
%patch202 -p1 -b .vaapi
%ifarch i686
%patch203 -p1 -b .i686permissive
-%patch204 -p1 -b .va1compat
%endif
+%patch205 -p1 -b .vaapi-intel-fix
%endif
%if 0%{?rhel} == 8
@@ -862,7 +887,11 @@ unzip %{SOURCE113}
cp -a /usr/share/fonts/lohit-gurmukhi/Lohit-Gurmukhi.ttf .
cp -a /usr/share/fonts/google-noto-cjk/NotoSansCJKjp-Regular.otf .
%endif
+%if 0%{?fedora} >= 32
+cp -a /usr/share/fonts/dejavu-sans-fonts/DejaVuSans.ttf /usr/share/fonts/dejavu-sans-fonts/DejaVuSans-Bold.ttf .
+%else
cp -a /usr/share/fonts/dejavu/DejaVuSans.ttf /usr/share/fonts/dejavu/DejaVuSans-Bold.ttf .
+%endif
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 .
@@ -876,7 +905,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 use_lld=false'
+CHROMIUM_CORE_GN_DEFINES+=' is_clang=false use_sysroot=false use_gold=false fieldtrial_testing_like_official_build=true use_lld=false rtc_enable_symbol_export=true'
%if %{freeworld}
CHROMIUM_CORE_GN_DEFINES+=' ffmpeg_branding="ChromeOS" proprietary_codecs=true'
%else
@@ -978,9 +1007,6 @@ 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/boringssl/linux-aarch64/crypto/third_party/sike' \
'third_party/breakpad' \
'third_party/breakpad/breakpad/src/third_party/curl' \
'third_party/brotli' \
@@ -1011,13 +1037,14 @@ build/linux/unbundle/remove_bundled_libraries.py \
'third_party/dawn' \
'third_party/depot_tools' \
'third_party/devscripts' \
+ 'third_party/devtools-frontend' \
+ 'third_party/devtools-frontend/src/third_party/axe-core' \
'third_party/dom_distiller_js' \
'third_party/emoji-segmenter' \
'third_party/expat' \
'third_party/ffmpeg' \
'third_party/flac' \
'third_party/flatbuffers' \
- 'third_party/flot' \
'third_party/fontconfig' \
'third_party/freetype' \
'third_party/glslang' \
@@ -1044,6 +1071,7 @@ build/linux/unbundle/remove_bundled_libraries.py \
'third_party/libaom/source/libaom/third_party/vector' \
'third_party/libaom/source/libaom/third_party/x86inc' \
'third_party/libdrm' \
+ 'third_party/libgifcodec' \
'third_party/libjingle' \
'third_party/libjpeg_turbo' \
'third_party/libphonenumber' \
@@ -1111,7 +1139,6 @@ build/linux/unbundle/remove_bundled_libraries.py \
'third_party/skia' \
'third_party/skia/include/third_party/skcms' \
'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' \
'third_party/smhasher' \
@@ -1282,6 +1309,8 @@ sed -i.orig -e 's/getenv("CHROME_VERSION_EXTRA")/"Fedora Project"/' $FILE
%global optflags %(echo %{optflags} | sed 's/-g /-g1 /')
%endif
+export PYTHONPATH="../../third_party/pyjson5/src"
+
echo
# Now do the full browser
%if 0%{freeworld}
@@ -1354,7 +1383,6 @@ sed -i "s|@@PACKAGE@@|%{chromium_browser_channel}|g" %{buildroot}%{_mandir}/man1
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}
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}
@@ -1697,6 +1725,15 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt
%changelog
+* Thu Feb 27 2020 Tom Callaway <spot(a)fedoraproject.org> - 80.0.3987.122-1
+- update to 80.0.3987.122
+
+* Mon Feb 17 2020 Tom Callaway <spot(a)fedoraproject.org> - 80.0.3987.106-1
+- update to 80.0.3987.106
+
+* Wed Feb 5 2020 Tom Callaway <spot(a)fedoraproject.org> - 80.0.3987.87-1
+- update to 80.0.3987.87
+
* Fri Jan 17 2020 Tom Callaway <spot(a)fedoraproject.org> - 79.0.3945.130-1
- update to 79.0.3945.130
diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh
index fd226e8..edab56f 100755
--- a/clean_ffmpeg.sh
+++ b/clean_ffmpeg.sh
@@ -97,6 +97,7 @@ header_files=" libavcodec/x86/inline_asm.h \
libavcodec/mdct15.c \
libavcodec/mdct15.h \
libavcodec/me_cmp.h \
+ libavcodec/mlp_parse.h \
libavcodec/motion_est.h \
libavcodec/mpeg12.h \
libavcodec/mpeg12data.h \
@@ -196,6 +197,7 @@ header_files=" libavcodec/x86/inline_asm.h \
libavutil/thread.h \
libavutil/timer.h \
libavutil/timestamp.h \
+ libavutil/tx_priv.h \
libavutil/version.h \
libswresample/swresample.h \
libswresample/version.h \
@@ -246,6 +248,7 @@ manual_files=" libavcodec/aarch64/fft_neon.S \
libavutil/fixed_dsp.c \
libavutil/float_dsp.c \
libavutil/imgutils.c \
+ libavutil/tx_template.c \
libavutil/x86/cpu.c \
libavutil/x86/float_dsp_init.c \
libavutil/x86/x86inc.asm \
diff --git a/enable-vaapi.patch b/enable-vaapi.patch
index 3286af7..1dd612a 100644
--- a/enable-vaapi.patch
+++ b/enable-vaapi.patch
@@ -1,18 +1,31 @@
-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[] = {
+From e04b52fc9b12f0725e76b889161ea45c776e6da5 Mon Sep 17 00:00:00 2001
+From: Akarshan Biswas <akarshanbiswas(a)fedoraproject.org>
+Date: Fri, 20 Sep 2019 19:55:45 +0530
+Subject: [PATCH] Enable VAAPI 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 ++-
+ 4 files changed, 20 insertions(+), 10 deletions(-)
+
+diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
+index e608f06a2..c0776db45 100644
+--- a/chrome/browser/about_flags.cc
++++ b/chrome/browser/about_flags.cc
+@@ -1738,7 +1738,7 @@ const FeatureEntry kFeatureEntries[] = {
"disable-accelerated-video-decode",
flag_descriptions::kAcceleratedVideoDecodeName,
flag_descriptions::kAcceleratedVideoDecodeDescription,
- kOsMac | kOsWin | kOsCrOS | kOsAndroid,
-+ kOsMac | kOsWin | kOsCrOS | kOsAndroid | kOsLinux,
++ kOsMac | kOsWin | kOsCrOS | kOsAndroid | kOsLinux,
SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedVideoDecode),
},
- #if defined(OS_WIN)
-@@ -1882,12 +1882,12 @@ const FeatureEntry kFeatureEntries[] = {
+ {
+@@ -2216,12 +2216,12 @@ const FeatureEntry kFeatureEntries[] = {
FEATURE_VALUE_TYPE(service_manager::features::kXRSandbox)},
- #endif // ENABLE_ISOLATED_XR_SERVICE
+ #endif // !defined(OS_ANDROID)
#endif // ENABLE_VR
-#if defined(OS_CHROMEOS)
+#if defined(OS_CHROMEOS) || defined(OS_LINUX)
@@ -22,45 +35,47 @@ diff -up chromium-75.0.3770.80/chrome/browser/about_flags.cc.vaapi chromium-75.0
+ 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)},
-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 // OS_CHROMEOS | OS_LINUX
+ {"system-keyboard-lock", flag_descriptions::kSystemKeyboardLockName,
+ flag_descriptions::kSystemKeyboardLockDescription, kOsDesktop,
+ FEATURE_VALUE_TYPE(features::kSystemKeyboardLock)},
+diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc
+index d27bbb28f..1c6542bdd 100644
+--- a/chrome/browser/flag_descriptions.cc
++++ b/chrome/browser/flag_descriptions.cc
+@@ -3071,16 +3071,19 @@ const char kMacSystemMediaPermissionsInfoUiDescription[] =
#endif
-// Chrome OS -------------------------------------------------------------------
-+// Chrome OS & Linux------------------------------------------------------------
-
+-
-#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
++// Chrome OS and Linux -------------------------------------------------------------------
++#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
const char kAcceleratedMjpegDecodeName[] =
"Hardware-accelerated mjpeg decode for captured frame";
const char kAcceleratedMjpegDecodeDescription[] =
"Enable hardware-accelerated mjpeg decode for captured frame where "
"available.";
-+#endif
-+
-+// Chrome OS -------------------------------------------------------------------
++#endif
+
++// Chrome OS -----------------------------------------------------------------------------
+
+#if defined(OS_CHROMEOS)
-
- 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
+ const char kAggregatedMlAppRankingName[] = "Rank suggested apps with ML.";
+ const char kAggregatedMlAppRankingDescription[] =
+ "Use the aggregated ML model to rank the suggested apps.";
+diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
+index 1f8899de1..06544e079 100644
+--- a/chrome/browser/flag_descriptions.h
++++ b/chrome/browser/flag_descriptions.h
+@@ -1822,13 +1822,19 @@ extern const char kPermissionPromptPersistenceToggleDescription[];
#endif // defined(OS_MACOSX)
-// Chrome OS ------------------------------------------------------------------
-+// Chrome OS & Linux ----------------------------------------------------------
++// Chrome OS and Linux ---------------------------------------------------------
-#if defined(OS_CHROMEOS)
+#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
@@ -68,19 +83,20 @@ diff -up chromium-75.0.3770.80/chrome/browser/flag_descriptions.h.vaapi chromium
extern const char kAcceleratedMjpegDecodeName[];
extern const char kAcceleratedMjpegDecodeDescription[];
-+#endif
++#endif
+
-+// Chrome OS ------------------------------------------------------------------
++// Chrome OS -------------------------------------------------------------------
+
+#if defined(OS_CHROMEOS)
+
- extern const char kAppServiceAshName[];
- extern const char kAppServiceAshDescription[];
+ extern const char kAggregatedMlAppRankingName[];
+ extern const char kAggregatedMlAppRankingDescription[];
-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/gpu/config/software_rendering_list.json b/gpu/config/software_rendering_list.json
+index ea1294e4c..bc52cbc8f 100644
+--- a/gpu/config/software_rendering_list.json
++++ b/gpu/config/software_rendering_list.json
+@@ -334,11 +334,12 @@
},
{
"id": 48,
@@ -90,7 +106,10 @@ diff -up chromium-75.0.3770.80/gpu/config/software_rendering_list.json.vaapi chr
"os": {
"type": "linux"
},
-+ "vendor_id": "0x10de",
++ "vendor_id": "0x10de",
"features": [
"accelerated_video_decode"
]
+--
+2.21.0
+
diff --git a/fixvaapionintel.patch b/fixvaapionintel.patch
new file mode 100644
index 0000000..a94886a
--- /dev/null
+++ b/fixvaapionintel.patch
@@ -0,0 +1,49 @@
+From 9ff06536caf7ea51aad9fd2bb649c858eaf7ee84 Mon Sep 17 00:00:00 2001
+From: Akarshan Biswas <akarshanbiswas(a)fedoraproject.org>
+Date: Sat, 26 Oct 2019 10:06:30 +0530
+Subject: [PATCH] Move offending function to chromeos only
+
+---
+ media/gpu/vaapi/vaapi_video_decode_accelerator.cc | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/media/gpu/vaapi/vaapi_video_decode_accelerator.cc b/media/gpu/vaapi/vaapi_video_decode_accelerator.cc
+index f04b60f58..3e7865503 100644
+--- a/media/gpu/vaapi/vaapi_video_decode_accelerator.cc
++++ b/media/gpu/vaapi/vaapi_video_decode_accelerator.cc
+@@ -63,6 +63,7 @@ void ReportToUMA(VAVDADecoderFailure failure) {
+ VAVDA_DECODER_FAILURES_MAX + 1);
+ }
+
++#if defined(OS_ANDROID) || defined(OS_CHROMEOS)
+ // Returns true if the CPU is an Intel Gemini Lake or later (including Kaby
+ // Lake) Cpu platform id's are referenced from the following file in kernel
+ // source arch/x86/include/asm/intel-family.h
+@@ -75,6 +76,7 @@ bool IsGeminiLakeOrLater() {
+ cpuid.model() >= kGeminiLakeModelId;
+ return is_geminilake_or_later;
+ }
++#endif
+
+ } // namespace
+
+@@ -1091,6 +1093,8 @@ VaapiVideoDecodeAccelerator::DecideBufferAllocationMode() {
+ if (output_mode_ == VideoDecodeAccelerator::Config::OutputMode::IMPORT)
+ return BufferAllocationMode::kNormal;
+
++#if defined(OS_ANDROID) || defined(OS_CHROMEOS)
++ // Move this to chromeOs only as it is causing problem in some intel linux drivers
+ // On Gemini Lake, Kaby Lake and later we can pass to libva the client's
+ // PictureBuffers to decode onto, which skips the use of the Vpp unit and its
+ // associated format reconciliation copy, avoiding all internal buffer
+@@ -1107,6 +1111,7 @@ VaapiVideoDecodeAccelerator::DecideBufferAllocationMode() {
+ num_extra_pics_ = 3;
+ return BufferAllocationMode::kNone;
+ }
++#endif
+
+ // If we're here, we have to use the Vpp unit and allocate buffers for
+ // |decoder_|; usually we'd have to allocate the |decoder_|s
+--
+2.21.0
+
diff --git a/sources b/sources
index efaf0ea..6bad0a4 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-79.0.3945.130-clean.tar.xz) = 3b8530492ad76397f479fd4c6a30c7371892be3b60361eb85002295deaffc78766b4d36a5e39398634ca507f0e5d42fdd1ee35e9289310e6d662514a6681df52
+SHA512 (chromium-80.0.3987.122-clean.tar.xz) = 9de43bd70406a8b97ee5177f9983fea68403fa457d599843de423fe910e7f78f659e7e98a077be33f4fb8d288c61ecee28330eabb7cd560ac856bf9a24b58562
commit da0f89975a405d4eab2a6e70a9b206575fc73b18
Author: Fedora Release Engineering <releng(a)fedoraproject.org>
Date: Tue Jan 28 14:00:36 2020 +0000
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng(a)fedoraproject.org>
diff --git a/chromium.spec b/chromium.spec
index 6f4a439..ea26cba 100644
--- a/chromium.spec
+++ b/chromium.spec
@@ -161,7 +161,7 @@ Name: chromium%{chromium_channel}%{nsuffix}
Name: chromium%{chromium_channel}
%endif
Version: %{majorversion}.0.3945.130
-Release: 1%{?dist}
+Release: 2%{?dist}
%if %{?freeworld}
%if %{?shared}
# chromium-libs-media-freeworld
@@ -1697,6 +1697,9 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt
%changelog
+* Tue Jan 28 2020 Fedora Release Engineering <releng(a)fedoraproject.org> - 79.0.3945.130-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
+
* Fri Jan 17 2020 Tom Callaway <spot(a)fedoraproject.org> - 79.0.3945.130-1
- update to 79.0.3945.130
4 years, 1 month
Architecture specific change in rpms/chromium.git
by githook-noreply@fedoraproject.org
The package rpms/chromium.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/chromium.git/commit/?id=f1db2ee0c....
Change:
-%ifarch aarch64
Thanks.
Full change:
============
commit 2fd941b6658c3665bb8c59a69756c14364203c05
Author: Tom Callaway <spot(a)fedoraproject.org>
Date: Thu Feb 27 13:56:52 2020 -0500
another c++17 fixup
diff --git a/chromium-80.0.3987.87-fix-for-c++17.patch b/chromium-80.0.3987.87-fix-for-c++17.patch
index 8639e82..3a29df9 100644
--- a/chromium-80.0.3987.87-fix-for-c++17.patch
+++ b/chromium-80.0.3987.87-fix-for-c++17.patch
@@ -176,3 +176,15 @@ diff -up chromium-80.0.3987.106/device/bluetooth/bluetooth_adapter.cc.c17fix chr
base::TimeDelta::FromSeconds(180);
} // namespace device
+diff -up chromium-80.0.3987.122/content/browser/web_package/signed_exchange_prologue.cc.c17fix chromium-80.0.3987.122/content/browser/web_package/signed_exchange_prologue.cc
+--- chromium-80.0.3987.122/content/browser/web_package/signed_exchange_prologue.cc.c17fix 2020-02-27 13:48:15.815885662 -0500
++++ chromium-80.0.3987.122/content/browser/web_package/signed_exchange_prologue.cc 2020-02-27 13:48:24.146711682 -0500
+@@ -30,7 +30,7 @@ constexpr size_t kMaximumCBORHeaderLengt
+
+ namespace signed_exchange_prologue {
+
+-constexpr size_t BeforeFallbackUrl::kEncodedSizeInBytes =
++const extern size_t BeforeFallbackUrl::kEncodedSizeInBytes =
+ sizeof(kSignedExchangeMagic) + kFallbackUrlLengthFieldSizeInBytes;
+
+ size_t Parse2BytesEncodedLength(base::span<const uint8_t> input) {
commit 53caa9a1fa32ee12371f7830a714eda8565929a0
Author: Tom Callaway <spot(a)fedoraproject.org>
Date: Thu Feb 27 11:59:27 2020 -0500
fix i686 vaapi permissive patch
diff --git a/chromium-80.0.3987.122-vaapi-i686-fpermissive.patch b/chromium-80.0.3987.122-vaapi-i686-fpermissive.patch
new file mode 100644
index 0000000..ae55668
--- /dev/null
+++ b/chromium-80.0.3987.122-vaapi-i686-fpermissive.patch
@@ -0,0 +1,23 @@
+diff -up chromium-80.0.3987.122/media/gpu/vaapi/BUILD.gn.i686permissive chromium-80.0.3987.122/media/gpu/vaapi/BUILD.gn
+--- chromium-80.0.3987.122/media/gpu/vaapi/BUILD.gn.i686permissive 2020-02-27 11:58:10.534875341 -0500
++++ chromium-80.0.3987.122/media/gpu/vaapi/BUILD.gn 2020-02-27 11:58:17.544736535 -0500
+@@ -13,6 +13,10 @@ import("//ui/ozone/ozone.gni")
+ assert(is_linux)
+ assert(use_vaapi)
+
++config("vaapi_permissive") {
++ cflags = [ "-fpermissive" ]
++}
++
+ generate_stubs("libva_stubs") {
+ extra_header = "va_stub_header.fragment"
+ sigs = [ "va.sigs" ]
+@@ -120,6 +124,8 @@ source_set("vaapi") {
+ ]
+ }
+
++ configs += [ ":vaapi_permissive" ]
++
+ if (use_x11) {
+ configs += [ "//build/config/linux:x11" ]
+ deps += [ "//ui/gfx/x" ]
diff --git a/chromium.spec b/chromium.spec
index 3396a61..2d6767b 100644
--- a/chromium.spec
+++ b/chromium.spec
@@ -261,7 +261,7 @@ Patch102: chromium-79.0.3945.56-el7-noexcept.patch
# Enable VAAPI support on Linux
# NOTE: This patch will never land upstream
Patch202: enable-vaapi.patch
-Patch203: chromium-75.0.3770.80-vaapi-i686-fpermissive.patch
+Patch203: chromium-80.0.3987.122-vaapi-i686-fpermissive.patch
# Fix compatibility with VA-API library (libva) version 1
Patch205: fixvaapionintel.patch
commit 4149dcea63f1a8ef4eddd6dd6641758979e2b391
Merge: f1db2ee da0f899
Author: Tom Callaway <spot(a)fedoraproject.org>
Date: Thu Feb 27 11:28:21 2020 -0500
merge fix
diff --cc chromium.spec
index ac782c0,ea26cba..3396a61
--- a/chromium.spec
+++ b/chromium.spec
@@@ -1725,15 -1697,9 +1725,18 @@@ getent group chrome-remote-desktop >/de
%changelog
+* Thu Feb 27 2020 Tom Callaway <spot(a)fedoraproject.org> - 80.0.3987.122-1
+- update to 80.0.3987.122
+
+* Mon Feb 17 2020 Tom Callaway <spot(a)fedoraproject.org> - 80.0.3987.106-1
+- update to 80.0.3987.106
+
+* Wed Feb 5 2020 Tom Callaway <spot(a)fedoraproject.org> - 80.0.3987.87-1
+- update to 80.0.3987.87
+
+ * Tue Jan 28 2020 Fedora Release Engineering <releng(a)fedoraproject.org> - 79.0.3945.130-2
+ - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
+
* Fri Jan 17 2020 Tom Callaway <spot(a)fedoraproject.org> - 79.0.3945.130-1
- update to 79.0.3945.130
commit f1db2ee0c505063088fa40dfd6e7ae7f8aa022b9
Author: Tom Callaway <spot(a)fedoraproject.org>
Date: Thu Feb 27 11:27:21 2020 -0500
please work
diff --git a/chromium-77.0.3865.75-gcc-include-memory.patch b/chromium-77.0.3865.75-gcc-include-memory.patch
index 93b4399..e1d4bdb 100644
--- a/chromium-77.0.3865.75-gcc-include-memory.patch
+++ b/chromium-77.0.3865.75-gcc-include-memory.patch
@@ -10,3 +10,25 @@ diff -up chromium-77.0.3865.75/third_party/one_euro_filter/src/one_euro_filter.h
namespace one_euro_filter {
namespace test {
class OneEuroFilterTest;
+diff -up chromium-80.0.3987.106/third_party/webrtc/modules/audio_processing/aec3/reverb_model_estimator.h.missing-memory chromium-80.0.3987.106/third_party/webrtc/modules/audio_processing/aec3/reverb_model_estimator.h
+--- chromium-80.0.3987.106/third_party/webrtc/modules/audio_processing/aec3/reverb_model_estimator.h.missing-memory 2020-02-21 12:25:17.206021379 -0500
++++ chromium-80.0.3987.106/third_party/webrtc/modules/audio_processing/aec3/reverb_model_estimator.h 2020-02-21 12:25:31.613759976 -0500
+@@ -12,6 +12,7 @@
+ #define MODULES_AUDIO_PROCESSING_AEC3_REVERB_MODEL_ESTIMATOR_H_
+
+ #include <array>
++#include <memory>
+ #include <vector>
+
+ #include "absl/types/optional.h"
+diff -up chromium-80.0.3987.106/third_party/openscreen/src/util/trace_logging/scoped_trace_operations.h.memory chromium-80.0.3987.106/third_party/openscreen/src/util/trace_logging/scoped_trace_operations.h
+--- chromium-80.0.3987.106/third_party/openscreen/src/util/trace_logging/scoped_trace_operations.h.memory 2020-02-24 11:35:38.283880819 -0500
++++ chromium-80.0.3987.106/third_party/openscreen/src/util/trace_logging/scoped_trace_operations.h 2020-02-24 11:35:48.366670897 -0500
+@@ -7,6 +7,7 @@
+
+ #include <atomic>
+ #include <cstring>
++#include <memory>
+ #include <stack>
+ #include <vector>
+
diff --git a/chromium-79.0.3945.130-gcc10-use-c++17-to-work-around-ugly-angle-code.patch b/chromium-79.0.3945.130-gcc10-use-c++17-to-work-around-ugly-angle-code.patch
new file mode 100644
index 0000000..8401ea2
--- /dev/null
+++ b/chromium-79.0.3945.130-gcc10-use-c++17-to-work-around-ugly-angle-code.patch
@@ -0,0 +1,28 @@
+diff -up chromium-79.0.3945.130/third_party/angle/BUILD.gn.fixme chromium-79.0.3945.130/third_party/angle/BUILD.gn
+--- chromium-79.0.3945.130/third_party/angle/BUILD.gn.fixme 2020-02-05 15:50:58.810040419 -0500
++++ chromium-79.0.3945.130/third_party/angle/BUILD.gn 2020-02-05 15:52:03.720848822 -0500
+@@ -228,6 +228,9 @@ config("angle_common_config") {
+ if (is_android) {
+ libs = [ "log" ]
+ }
++ if (!is_clang) {
++ cflags_cc = [ "-std=c++17" ]
++ }
+ }
+
+ if (is_win && !angle_is_winuwp) {
+diff -up chromium-79.0.3945.130/third_party/angle/src/common/PackedEnums.h.fixme chromium-79.0.3945.130/third_party/angle/src/common/PackedEnums.h
+--- chromium-79.0.3945.130/third_party/angle/src/common/PackedEnums.h.fixme 2020-02-05 15:35:47.473867905 -0500
++++ chromium-79.0.3945.130/third_party/angle/src/common/PackedEnums.h 2020-02-05 15:36:30.362065300 -0500
+@@ -85,8 +85,9 @@ class PackedEnumMap
+ {
+ // This horrible const_cast pattern is necessary to work around a constexpr limitation.
+ // See https://stackoverflow.com/q/34199774/ . Note that it should be fixed with C++17.
+- const_cast<T &>(const_cast<const Storage &>(
+- mPrivateData)[static_cast<UnderlyingType>(it->first)]) = it->second;
++ // const_cast<T &>(const_cast<const Storage &>(
++ // mPrivateData)[static_cast<UnderlyingType>(it->first)]) = it->second;
++ mPrivateData[static_cast<UnderlyingType>(it->first)] = it->second;
+ }
+ }
+
diff --git a/chromium-80-gcc-abstract.patch b/chromium-80-gcc-abstract.patch
new file mode 100644
index 0000000..190a672
--- /dev/null
+++ b/chromium-80-gcc-abstract.patch
@@ -0,0 +1,41 @@
+In file included from ../../third_party/blink/renderer/platform/heap/persistent.h:18,
+ from ../../third_party/blink/public/platform/web_private_ptr.h:40,
+ from ../../third_party/blink/public/platform/web_media_stream_track.h:33,
+ from ../../third_party/blink/public/platform/web_media_stream_source.h:37,
+ from ../../third_party/blink/renderer/modules/peerconnection/rtc_peer_connection_handler.h:19,
+ from ../../third_party/blink/renderer/modules/peerconnection/rtc_peer_connection_handler.cc:5:
+../../third_party/blink/renderer/platform/wtf/cross_thread_copier.h: In instantiation of 'struct WTF::CrossThreadCopierPassThrough<webrtc::VideoTrackInterface>':
+../../third_party/blink/renderer/modules/peerconnection/adapters/web_rtc_cross_thread_copier.h:169:14: required from here
+../../third_party/blink/renderer/platform/wtf/cross_thread_copier.h:80:15: error: invalid abstract return type 'webrtc::VideoTrackInterface'
+ 80 | static Type Copy(const T& parameter) { return parameter; }
+ | ^~~~
+In file included from ../../third_party/webrtc/api/peer_connection_interface.h:88,
+ from ../../third_party/blink/public/platform/web_rtc_peer_connection_handler.h:39,
+ from ../../third_party/blink/renderer/modules/peerconnection/rtc_peer_connection_handler.h:20,
+ from ../../third_party/blink/renderer/modules/peerconnection/rtc_peer_connection_handler.cc:5:
+../../third_party/webrtc/api/media_stream_interface.h:174:18: note: because the following virtual functions are pure within 'webrtc::VideoTrackInterface':
+ 174 | class RTC_EXPORT VideoTrackInterface
+ | ^~~~~~~~~~~~~~~~~~~
+../../third_party/webrtc/api/media_stream_interface.h:48:16: note: 'virtual void webrtc::NotifierInterface::RegisterObserver(webrtc::ObserverInterface*)'
+ 48 | virtual void RegisterObserver(ObserverInterface* observer) = 0;
+ | ^~~~~~~~~~~~~~~~
+../../third_party/webrtc/api/media_stream_interface.h:49:16: note: 'virtual void webrtc::NotifierInterface::UnregisterObserver(webrtc::ObserverInterface*)'
+ 49 | virtual void UnregisterObserver(ObserverInterface* observer) = 0;
+ | ^~~~~~~~~~~~~~~~~~
+
+diff --git a/third_party/blink/renderer/modules/peerconnection/adapters/web_rtc_cross_thread_copier.h b/third_party/blink/renderer/modules/peerconnection/adapters/web_rtc_cross_thread_copier.h
+index 54cb7d1..0d6c40f 100644
+--- a/third_party/blink/renderer/modules/peerconnection/adapters/web_rtc_cross_thread_copier.h
++++ b/third_party/blink/renderer/modules/peerconnection/adapters/web_rtc_cross_thread_copier.h
+@@ -165,8 +165,9 @@ struct CrossThreadCopier<blink::MediaStreamVideoTrack>
+ };
+
+ template <>
+-struct CrossThreadCopier<webrtc::VideoTrackInterface>
+- : public CrossThreadCopierPassThrough<webrtc::VideoTrackInterface> {
++struct CrossThreadCopier<rtc::scoped_refptr<webrtc::VideoTrackInterface>>
++ : public CrossThreadCopierPassThrough<
++ rtc::scoped_refptr<webrtc::VideoTrackInterface>> {
+ STATIC_ONLY(CrossThreadCopier);
+ };
+
diff --git a/chromium-80-gcc-blink.patch b/chromium-80-gcc-blink.patch
new file mode 100644
index 0000000..2118b46
--- /dev/null
+++ b/chromium-80-gcc-blink.patch
@@ -0,0 +1,45 @@
+../../third_party/blink/renderer/core/editing/commands/delete_selection_command.cc: In member function 'void blink::DeleteSelectionCommand::InitializePositionData(blink::EditingState*)':
+../../third_party/blink/renderer/core/editing/commands/delete_selection_command.cc:256:59: error: no matching function for call to 'EnclosingNodeOfType(blink::Position&, <unresolved overloaded function type>)'
+ 256 | EnclosingNodeOfType(start, &IsA<HTMLTableRowElement>));
+ | ^
+In file included from ../../third_party/blink/renderer/core/editing/commands/delete_selection_command.cc:34:
+../../third_party/blink/renderer/core/editing/editing_utilities.h:112:19: note: candidate: 'blink::Node* blink::EnclosingNodeOfType(const Position&, bool (*)(const blink::Node*), blink::EditingBoundaryCrossingRule)'
+ 112 | CORE_EXPORT Node* EnclosingNodeOfType(
+ | ^~~~~~~~~~~~~~~~~~~
+../../third_party/blink/renderer/core/editing/editing_utilities.h:114:12: note: no known conversion for argument 2 from '<unresolved overloaded function type>' to 'bool (*)(const blink::Node*)'
+ 114 | bool (*node_is_of_type)(const Node*),
+ | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+../../third_party/blink/renderer/core/editing/editing_utilities.h:116:19: note: candidate: 'blink::Node* blink::EnclosingNodeOfType(const PositionInFlatTree&, bool (*)(const blink::Node*), blink::EditingBoundaryCrossingRule)'
+ 116 | CORE_EXPORT Node* EnclosingNodeOfType(
+ | ^~~~~~~~~~~~~~~~~~~
+../../third_party/blink/renderer/core/editing/editing_utilities.h:117:5: note: no known conversion for argument 1 from 'blink::Position' {aka 'blink::PositionTemplate<blink::EditingAlgorithm<blink::NodeTraversal> >'} to 'const PositionInFlatTree&' {aka 'const blink::PositionTemplate<blink::EditingAlgorithm<blink::FlatTreeTraversal> >&'}
+ 117 | const PositionInFlatTree&,
+ | ^~~~~~~~~~~~~~~~~~~~~~~~~
+
+diff --git a/third_party/blink/renderer/core/editing/commands/delete_selection_command.cc b/third_party/blink/renderer/core/editing/commands/delete_selection_command.cc
+index 6ff6906..dd531ae 100644
+--- a/third_party/blink/renderer/core/editing/commands/delete_selection_command.cc
++++ b/third_party/blink/renderer/core/editing/commands/delete_selection_command.cc
+@@ -224,6 +224,10 @@ static Position TrailingWhitespacePosition(const Position& position,
+ return Position();
+ }
+
++static bool IsAHTMLTableRowElement(const Node* node) {
++ return IsA<HTMLTableRowElement>(node);
++}
++
+ void DeleteSelectionCommand::InitializePositionData(
+ EditingState* editing_state) {
+ DCHECK(!GetDocument().NeedsLayoutTreeUpdate());
+@@ -253,9 +257,9 @@ void DeleteSelectionCommand::InitializePositionData(
+ end_root_ = RootEditableElementOf(end);
+
+ start_table_row_ = To<HTMLTableRowElement>(
+- EnclosingNodeOfType(start, &IsA<HTMLTableRowElement>));
++ EnclosingNodeOfType(start, &IsAHTMLTableRowElement));
+ end_table_row_ = To<HTMLTableRowElement>(
+- EnclosingNodeOfType(end, &IsA<HTMLTableRowElement>));
++ EnclosingNodeOfType(end, &IsAHTMLTableRowElement));
+
+ // Don't move content out of a table cell.
+ // If the cell is non-editable, enclosingNodeOfType won't return it by
diff --git a/chromium-80-gcc-incomplete-type.patch b/chromium-80-gcc-incomplete-type.patch
new file mode 100644
index 0000000..8d10620
--- /dev/null
+++ b/chromium-80-gcc-incomplete-type.patch
@@ -0,0 +1,229 @@
+From cdf3e81ff49b200213d67d65558f2919222b60ab Mon Sep 17 00:00:00 2001
+From: Raphael Kubo da Costa <raphael.kubo.da.costa(a)intel.com>
+Date: Mon, 16 Dec 2019 11:39:11 +0000
+Subject: [PATCH] BookmarkModelMerger: Move RemoteTreeNode declaration to header.
+
+This fixes the build with libstdc++ after commit 8f5dad93e58 ("Fix CHECK
+failure due to untracked local nodes"):
+
+/usr/lib/gcc/x86_64-redhat-linux/9/../../../../include/c++/9/bits/stl_pair.h:215:11: error: field has incomplete type 'sync_bookmarks::BookmarkModelMerger::RemoteTreeNode'
+ _T2 second; /// @c second is a copy of the second object
+ ^
+/usr/lib/gcc/x86_64-redhat-linux/9/../../../../include/c++/9/ext/aligned_buffer.h:91:28: note: in instantiation of template class 'std::pair<const std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode>' requested here
+ : std::aligned_storage<sizeof(_Tp), __alignof__(_Tp)>
+ ^
+/usr/lib/gcc/x86_64-redhat-linux/9/../../../../include/c++/9/bits/hashtable_policy.h:233:43: note: in instantiation of template class '__gnu_cxx::__aligned_buffer<std::pair<const std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode> >' requested here
+ __gnu_cxx::__aligned_buffer<_Value> _M_storage;
+ ^
+/usr/lib/gcc/x86_64-redhat-linux/9/../../../../include/c++/9/bits/hashtable_policy.h:264:39: note: in instantiation of template class 'std::__detail::_Hash_node_value_base<std::pair<const std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode> >' requested here
+ struct _Hash_node<_Value, true> : _Hash_node_value_base<_Value>
+ ^
+/usr/lib/gcc/x86_64-redhat-linux/9/../../../../include/c++/9/bits/hashtable_policy.h:2028:25: note: in instantiation of template class 'std::__detail::_Hash_node<std::pair<const std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode>, true>' requested here
+ rebind_traits<typename __node_type::value_type>;
+ ^
+/usr/lib/gcc/x86_64-redhat-linux/9/../../../../include/c++/9/bits/hashtable.h:184:15: note: in instantiation of template class 'std::__detail::_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode>, true> > >
+' requested here
+ private __detail::_Hashtable_alloc<
+ ^
+/usr/lib/gcc/x86_64-redhat-linux/9/../../../../include/c++/9/bits/unordered_map.h:105:18: note: in instantiation of template class 'std::_Hashtable<std::__cxx11::basic_string<char>, std::pair<const std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode>, std::allocator<std::pair<con
+st std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode> >, std::__detail::_Select1st, std::equal_to<std::__cxx11::basic_string<char> >, std::hash<std::string>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__deta
+il::_Hashtable_traits<true, false, true> >' requested here
+ _Hashtable _M_h;
+ ^
+../../components/sync_bookmarks/bookmark_model_merger.h:146:22: note: in instantiation of template class 'std::unordered_map<std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode, std::hash<std::string>, std::equal_to<std::__cxx11::basic_string<char> >, std::allocator<std::pair<con
+st std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode> > >' requested here
+ const RemoteForest remote_forest_;
+ ^
+../../components/sync_bookmarks/bookmark_model_merger.h:53:9: note: forward declaration of 'sync_bookmarks::BookmarkModelMerger::RemoteTreeNode'
+ class RemoteTreeNode;
+ ^
+
+Essentially, the problem is that libstdc++'s std::unordered_map<T, U>
+implementation requires both T and U to be fully declared. I raised the
+problem in https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92770, and GCC's
+position is that we are relying on undefined behavior according to the C++
+standard (https://eel.is/c++draft/requirements#res.on.functions-2.5).
+
+Bug: 957519
+Change-Id: Ife7e435e516932a795bfbe05b2c910c3272878f0
+Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1960156
+Commit-Queue: Raphael Kubo da Costa <raphael.kubo.da.costa(a)intel.com>
+Reviewed-by: Mikel Astiz <mastiz(a)chromium.org>
+Auto-Submit: Raphael Kubo da Costa <raphael.kubo.da.costa(a)intel.com>
+Cr-Commit-Position: refs/heads/master@{#725070}
+---
+
+diff --git a/components/sync_bookmarks/bookmark_model_merger.cc b/components/sync_bookmarks/bookmark_model_merger.cc
+index eae153ef..579848e 100644
+--- a/components/sync_bookmarks/bookmark_model_merger.cc
++++ b/components/sync_bookmarks/bookmark_model_merger.cc
+@@ -5,7 +5,6 @@
+ #include "components/sync_bookmarks/bookmark_model_merger.h"
+
+ #include <algorithm>
+-#include <memory>
+ #include <set>
+ #include <string>
+ #include <utility>
+@@ -205,66 +204,44 @@
+
+ } // namespace
+
+-class BookmarkModelMerger::RemoteTreeNode final {
+- public:
+- // Constructs a tree given |update| as root and recursively all descendants by
+- // traversing |*updates_per_parent_id|. |update| and |updates_per_parent_id|
+- // must not be null. All updates |*updates_per_parent_id| must represent valid
+- // updates. Updates corresponding from descendant nodes are moved away from
+- // |*updates_per_parent_id|.
+- static RemoteTreeNode BuildTree(
+- std::unique_ptr<syncer::UpdateResponseData> update,
+- UpdatesPerParentId* updates_per_parent_id);
++BookmarkModelMerger::RemoteTreeNode::RemoteTreeNode() = default;
+
+- ~RemoteTreeNode() = default;
++BookmarkModelMerger::RemoteTreeNode::~RemoteTreeNode() = default;
+
+- // Allow moves, useful during construction.
+- RemoteTreeNode(RemoteTreeNode&&) = default;
+- RemoteTreeNode& operator=(RemoteTreeNode&&) = default;
++BookmarkModelMerger::RemoteTreeNode::RemoteTreeNode(
++ BookmarkModelMerger::RemoteTreeNode&&) = default;
++BookmarkModelMerger::RemoteTreeNode& BookmarkModelMerger::RemoteTreeNode::
++operator=(BookmarkModelMerger::RemoteTreeNode&&) = default;
+
+- const syncer::EntityData& entity() const { return *update_->entity; }
+- int64_t response_version() const { return update_->response_version; }
++void BookmarkModelMerger::RemoteTreeNode::EmplaceSelfAndDescendantsByGUID(
++ std::unordered_map<std::string, const RemoteTreeNode*>*
++ guid_to_remote_node_map) const {
++ DCHECK(guid_to_remote_node_map);
+
+- // Direct children nodes, sorted by ascending unique position. These are
+- // guaranteed to be valid updates (e.g. IsValidBookmarkSpecifics()).
+- const std::vector<RemoteTreeNode>& children() const { return children_; }
++ const std::string& guid = entity().specifics.bookmark().guid();
++ if (!guid.empty()) {
++ DCHECK(base::IsValidGUID(guid));
+
+- // Recursively emplaces all GUIDs (this node and descendants) into
+- // |*guid_to_remote_node_map|, which must not be null.
+- void EmplaceSelfAndDescendantsByGUID(
+- std::unordered_map<std::string, const RemoteTreeNode*>*
+- guid_to_remote_node_map) const {
+- DCHECK(guid_to_remote_node_map);
+-
+- const std::string& guid = entity().specifics.bookmark().guid();
+- if (!guid.empty()) {
+- DCHECK(base::IsValidGUID(guid));
+-
+- // Duplicate GUIDs have been sorted out before.
+- bool success = guid_to_remote_node_map->emplace(guid, this).second;
+- DCHECK(success);
+- }
+-
+- for (const RemoteTreeNode& child : children_) {
+- child.EmplaceSelfAndDescendantsByGUID(guid_to_remote_node_map);
+- }
++ // Duplicate GUIDs have been sorted out before.
++ bool success = guid_to_remote_node_map->emplace(guid, this).second;
++ DCHECK(success);
+ }
+
+- private:
+- static bool UniquePositionLessThan(const RemoteTreeNode& lhs,
+- const RemoteTreeNode& rhs) {
+- const syncer::UniquePosition a_pos =
+- syncer::UniquePosition::FromProto(lhs.entity().unique_position);
+- const syncer::UniquePosition b_pos =
+- syncer::UniquePosition::FromProto(rhs.entity().unique_position);
+- return a_pos.LessThan(b_pos);
++ for (const RemoteTreeNode& child : children_) {
++ child.EmplaceSelfAndDescendantsByGUID(guid_to_remote_node_map);
+ }
++}
+
+- RemoteTreeNode() = default;
+-
+- std::unique_ptr<syncer::UpdateResponseData> update_;
+- std::vector<RemoteTreeNode> children_;
+-};
++// static
++bool BookmarkModelMerger::RemoteTreeNode::UniquePositionLessThan(
++ const RemoteTreeNode& lhs,
++ const RemoteTreeNode& rhs) {
++ const syncer::UniquePosition a_pos =
++ syncer::UniquePosition::FromProto(lhs.entity().unique_position);
++ const syncer::UniquePosition b_pos =
++ syncer::UniquePosition::FromProto(rhs.entity().unique_position);
++ return a_pos.LessThan(b_pos);
++}
+
+ // static
+ BookmarkModelMerger::RemoteTreeNode
+diff --git a/components/sync_bookmarks/bookmark_model_merger.h b/components/sync_bookmarks/bookmark_model_merger.h
+index 9b59200..bf0783ec 100644
+--- a/components/sync_bookmarks/bookmark_model_merger.h
++++ b/components/sync_bookmarks/bookmark_model_merger.h
+@@ -5,6 +5,7 @@
+ #ifndef COMPONENTS_SYNC_BOOKMARKS_BOOKMARK_MODEL_MERGER_H_
+ #define COMPONENTS_SYNC_BOOKMARKS_BOOKMARK_MODEL_MERGER_H_
+
++#include <memory>
+ #include <string>
+ #include <unordered_map>
+ #include <vector>
+@@ -50,7 +51,52 @@
+
+ private:
+ // Internal representation of a remote tree, composed of nodes.
+- class RemoteTreeNode;
++ class RemoteTreeNode final {
++ private:
++ using UpdatesPerParentId =
++ std::unordered_map<base::StringPiece,
++ syncer::UpdateResponseDataList,
++ base::StringPieceHash>;
++
++ public:
++ // Constructs a tree given |update| as root and recursively all descendants
++ // by traversing |*updates_per_parent_id|. |update| and
++ // |updates_per_parent_id| must not be null. All updates
++ // |*updates_per_parent_id| must represent valid updates. Updates
++ // corresponding from descendant nodes are moved away from
++ // |*updates_per_parent_id|.
++ static RemoteTreeNode BuildTree(
++ std::unique_ptr<syncer::UpdateResponseData> update,
++ UpdatesPerParentId* updates_per_parent_id);
++
++ ~RemoteTreeNode();
++
++ // Allow moves, useful during construction.
++ RemoteTreeNode(RemoteTreeNode&&);
++ RemoteTreeNode& operator=(RemoteTreeNode&&);
++
++ const syncer::EntityData& entity() const { return *update_->entity; }
++ int64_t response_version() const { return update_->response_version; }
++
++ // Direct children nodes, sorted by ascending unique position. These are
++ // guaranteed to be valid updates (e.g. IsValidBookmarkSpecifics()).
++ const std::vector<RemoteTreeNode>& children() const { return children_; }
++
++ // Recursively emplaces all GUIDs (this node and descendants) into
++ // |*guid_to_remote_node_map|, which must not be null.
++ void EmplaceSelfAndDescendantsByGUID(
++ std::unordered_map<std::string, const RemoteTreeNode*>*
++ guid_to_remote_node_map) const;
++
++ private:
++ static bool UniquePositionLessThan(const RemoteTreeNode& lhs,
++ const RemoteTreeNode& rhs);
++
++ RemoteTreeNode();
++
++ std::unique_ptr<syncer::UpdateResponseData> update_;
++ std::vector<RemoteTreeNode> children_;
++ };
+
+ // A forest composed of multiple trees where the root of each tree represents
+ // a permanent node, keyed by server-defined unique tag of the root.
diff --git a/chromium-80-gcc-permissive.patch b/chromium-80-gcc-permissive.patch
new file mode 100644
index 0000000..c7aef49
--- /dev/null
+++ b/chromium-80-gcc-permissive.patch
@@ -0,0 +1,33 @@
+In file included from ../../media/base/media_log_properties.h:13,
+ from ../../media/base/media_log.h:23,
+ from ../../media/filters/frame_processor.h:15,
+ from ../../media/filters/frame_processor.cc:5:
+../../media/base/media_log_properties_helper.h:86:8: error: extra qualification not allowed [-fpermissive]
+ 86 | struct internal::MediaLogPropertyTypeConverter<media::AudioDecoderConfig> {
+ | ^~~~~~~~
+../../media/base/media_log_properties_helper.h:86:75: error: explicit specialization of non-template 'media::internal::<unnamed struct>'
+ 86 | struct internal::MediaLogPropertyTypeConverter<media::AudioDecoderConfig> {
+ | ^
+
+diff --git a/media/base/media_log_properties_helper.h b/media/base/media_log_properties_helper.h
+index 95ff70a..549b003 100644
+--- a/media/base/media_log_properties_helper.h
++++ b/media/base/media_log_properties_helper.h
+@@ -83,7 +83,7 @@ struct MediaLogPropertyTypeConverter<std::vector<T>> {
+
+ // Specializer for sending AudioDecoderConfigs to the media tab in devtools.
+ template <>
+-struct internal::MediaLogPropertyTypeConverter<media::AudioDecoderConfig> {
++struct MediaLogPropertyTypeConverter<media::AudioDecoderConfig> {
+ static base::Value Convert(const AudioDecoderConfig& value) {
+ base::Value result(base::Value::Type::DICTIONARY);
+ result.SetStringKey("codec", GetCodecName(value.codec()));
+@@ -114,7 +114,7 @@ struct internal::MediaLogPropertyTypeConverter<media::AudioDecoderConfig> {
+
+ // Specializer for sending VideoDecoderConfigs to the media tab in devtools.
+ template <>
+-struct internal::MediaLogPropertyTypeConverter<VideoDecoderConfig> {
++struct MediaLogPropertyTypeConverter<VideoDecoderConfig> {
+ static base::Value Convert(const VideoDecoderConfig& value) {
+ base::Value result(base::Value::Type::DICTIONARY);
+ result.SetStringKey("codec", GetCodecName(value.codec()));
diff --git a/chromium-80-gcc-quiche.patch b/chromium-80-gcc-quiche.patch
new file mode 100644
index 0000000..aa3d541
--- /dev/null
+++ b/chromium-80-gcc-quiche.patch
@@ -0,0 +1,30 @@
+From 00f47df999c9b19e80fdc01db0ae9ca1b6a12b3a Mon Sep 17 00:00:00 2001
+From: vasilvv <vasilvv(a)google.com>
+Date: Wed, 03 Apr 2019 13:58:53 -0700
+Subject: [PATCH] GCC: do not delete move constructor of QuicStreamSendBuffer
+
+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 <jose.dapena(a)lge.com> at https://quiche-review.googlesource.com/c/quiche/+/2420
+
+PiperOrigin-RevId: 241800134
+Change-Id: I4e3c97d6e5895d85340e8c1b740e6196d9104066
+---
+
+diff --git a/net/third_party/quiche/src/quic/core/quic_stream_send_buffer.h b/net/third_party/quiche/src/quic/core/quic_stream_send_buffer.h
+index e34514b..74e9d0d 100644
+--- a/net/third_party/quiche/src/quic/core/quic_stream_send_buffer.h
++++ b/net/third_party/quiche/src/quic/core/quic_stream_send_buffer.h
+@@ -62,7 +62,7 @@
+ 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.
diff --git a/chromium-80-include.patch b/chromium-80-include.patch
new file mode 100644
index 0000000..dd85de7
--- /dev/null
+++ b/chromium-80-include.patch
@@ -0,0 +1,33 @@
+From 8273f4d3130e06fd8b6bef87b07c936304b971d9 Mon Sep 17 00:00:00 2001
+From: Raphael Kubo da Costa <raphael.kubo.da.costa(a)intel.com>
+Date: Tue, 10 Dec 2019 20:59:57 +0000
+Subject: [PATCH] [cros search service]: Include <cmath> for std::pow()
+
+IWYU. Follow up to commit 2b2ea3c09b ("[cros search service] Move shared
+string matching functions to //chrome"), which broke the libstdc++ build:
+
+ ../../chrome/common/string_matching/fuzzy_tokenized_string_match.cc:199:14: error: no member named 'pow' in namespace 'std'
+ std::pow(partial_match_penalty_rate, long_start - current - 1);
+ ~~~~~^
+
+Bug: 957519
+Change-Id: I66f61cb4f93cfa0bfa3d1b00ba391ddd8f31a7fb
+Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1960310
+Auto-Submit: Raphael Kubo da Costa <raphael.kubo.da.costa(a)intel.com>
+Reviewed-by: Jia Meng <jiameng(a)chromium.org>
+Commit-Queue: Raphael Kubo da Costa <raphael.kubo.da.costa(a)intel.com>
+Cr-Commit-Position: refs/heads/master@{#723499}
+---
+
+diff --git a/chrome/common/string_matching/fuzzy_tokenized_string_match.cc b/chrome/common/string_matching/fuzzy_tokenized_string_match.cc
+index 8351fa7..884ef63 100644
+--- a/chrome/common/string_matching/fuzzy_tokenized_string_match.cc
++++ b/chrome/common/string_matching/fuzzy_tokenized_string_match.cc
+@@ -5,6 +5,7 @@
+ #include "chrome/common/string_matching/fuzzy_tokenized_string_match.h"
+
+ #include <algorithm>
++#include <cmath>
+ #include <iterator>
+
+ #include "base/i18n/case_conversion.h"
diff --git a/chromium-80.0.3987.106-missing-cstddef-header.patch b/chromium-80.0.3987.106-missing-cstddef-header.patch
new file mode 100644
index 0000000..832cf02
--- /dev/null
+++ b/chromium-80.0.3987.106-missing-cstddef-header.patch
@@ -0,0 +1,44 @@
+diff -up chromium-80.0.3987.106/chrome/browser/search/background/ntp_backgrounds.h.missing-cstddef chromium-80.0.3987.106/chrome/browser/search/background/ntp_backgrounds.h
+--- chromium-80.0.3987.106/chrome/browser/search/background/ntp_backgrounds.h.missing-cstddef 2020-02-18 08:42:38.088243182 -0500
++++ chromium-80.0.3987.106/chrome/browser/search/background/ntp_backgrounds.h 2020-02-18 08:42:59.679782858 -0500
+@@ -6,6 +6,7 @@
+ #define CHROME_BROWSER_SEARCH_BACKGROUND_NTP_BACKGROUNDS_H_
+
+ #include <array>
++#include <cstddef>
+
+ class GURL;
+
+diff -up chromium-80.0.3987.106/media/cdm/supported_cdm_versions.h.missing-cstddef chromium-80.0.3987.106/media/cdm/supported_cdm_versions.h
+--- chromium-80.0.3987.106/media/cdm/supported_cdm_versions.h.missing-cstddef 2020-02-17 16:26:51.661246220 -0500
++++ chromium-80.0.3987.106/media/cdm/supported_cdm_versions.h 2020-02-17 16:26:51.662246200 -0500
+@@ -6,6 +6,7 @@
+ #define MEDIA_CDM_SUPPORTED_CDM_VERSIONS_H_
+
+ #include <array>
++#include <cstddef>
+
+ #include "media/base/media_export.h"
+ #include "media/cdm/api/content_decryption_module.h"
+diff -up chromium-80.0.3987.106/third_party/angle/include/platform/Platform.h.missing-cstddef chromium-80.0.3987.106/third_party/angle/include/platform/Platform.h
+--- chromium-80.0.3987.106/third_party/angle/include/platform/Platform.h.missing-cstddef 2020-02-17 16:26:07.433130572 -0500
++++ chromium-80.0.3987.106/third_party/angle/include/platform/Platform.h 2020-02-17 16:26:07.434130552 -0500
+@@ -11,6 +11,7 @@
+
+ #include <stdint.h>
+ #include <array>
++#include <cstddef>
+
+ #define EGL_PLATFORM_ANGLE_PLATFORM_METHODS_ANGLEX 0x3482
+
+diff -up chromium-80.0.3987.106/third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h.missing-cstddef chromium-80.0.3987.106/third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h
+--- chromium-80.0.3987.106/third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h.missing-cstddef 2020-02-17 16:23:41.385050827 -0500
++++ chromium-80.0.3987.106/third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h 2020-02-17 16:23:41.368051167 -0500
+@@ -12,6 +12,7 @@
+ #define MODULES_AUDIO_PROCESSING_AEC3_CLOCKDRIFT_DETECTOR_H_
+
+ #include <array>
++#include <cstddef>
+
+ namespace webrtc {
+
diff --git a/chromium-80.0.3987.106-missing-cstring-header.patch b/chromium-80.0.3987.106-missing-cstring-header.patch
new file mode 100644
index 0000000..646dac6
--- /dev/null
+++ b/chromium-80.0.3987.106-missing-cstring-header.patch
@@ -0,0 +1,34 @@
+diff -up chromium-80.0.3987.106/third_party/webrtc/audio/utility/channel_mixer.cc.missing-cstring chromium-80.0.3987.106/third_party/webrtc/audio/utility/channel_mixer.cc
+--- chromium-80.0.3987.106/third_party/webrtc/audio/utility/channel_mixer.cc.missing-cstring 2020-02-21 13:19:47.077683105 -0500
++++ chromium-80.0.3987.106/third_party/webrtc/audio/utility/channel_mixer.cc 2020-02-21 13:19:47.077683105 -0500
+@@ -8,6 +8,8 @@
+ * be found in the AUTHORS file in the root of the source tree.
+ */
+
++#include <cstring>
++
+ #include "audio/utility/channel_mixer.h"
+
+ #include "audio/utility/channel_mixing_matrix.h"
+diff -up chromium-80.0.3987.106/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc.missing-cstring chromium-80.0.3987.106/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc
+--- chromium-80.0.3987.106/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc.missing-cstring 2020-02-21 13:19:48.171659179 -0500
++++ chromium-80.0.3987.106/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc 2020-02-21 13:19:48.174659113 -0500
+@@ -17,6 +17,7 @@
+ #include <spa/param/video/raw-utils.h>
+ #include <spa/support/type-map.h>
+
++#include <cstring>
+ #include <memory>
+ #include <utility>
+
+diff -up chromium-80.0.3987.106/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc.missing-cstring chromium-80.0.3987.106/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc
+--- chromium-80.0.3987.106/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc.missing-cstring 2020-02-21 13:30:09.609068057 -0500
++++ chromium-80.0.3987.106/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc 2020-02-21 13:30:23.791757875 -0500
+@@ -10,6 +10,7 @@
+
+ #include "modules/video_coding/utility/ivf_file_reader.h"
+
++#include <cstring>
+ #include <string>
+ #include <vector>
+
diff --git a/chromium-80.0.3987.87-fix-for-c++17.patch b/chromium-80.0.3987.87-fix-for-c++17.patch
new file mode 100644
index 0000000..8639e82
--- /dev/null
+++ b/chromium-80.0.3987.87-fix-for-c++17.patch
@@ -0,0 +1,178 @@
+diff -up chromium-80.0.3987.87/base/containers/flat_tree.h.c17 chromium-80.0.3987.87/base/containers/flat_tree.h
+--- chromium-80.0.3987.87/base/containers/flat_tree.h.c17 2020-02-10 10:48:05.982500272 -0500
++++ chromium-80.0.3987.87/base/containers/flat_tree.h 2020-02-10 11:04:42.148507892 -0500
+@@ -776,7 +776,11 @@ template <class Key, class Value, class
+ template <typename K>
+ auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::find(const K& key)
+ -> iterator {
++#ifdef __cpp_lib_as_const
++ return const_cast_it(std::as_const(*this).find(key));
++#else
+ return const_cast_it(as_const(*this).find(key));
++#endif
+ }
+
+ template <class Key, class Value, class GetKeyFromValue, class KeyCompare>
+@@ -799,7 +803,11 @@ template <class Key, class Value, class
+ template <typename K>
+ auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::equal_range(
+ const K& key) -> std::pair<iterator, iterator> {
++#ifdef __cpp_lib_as_const
++ auto res = std::as_const(*this).equal_range(key);
++#else
+ auto res = as_const(*this).equal_range(key);
++#endif
+ return {const_cast_it(res.first), const_cast_it(res.second)};
+ }
+
+@@ -820,7 +828,11 @@ template <class Key, class Value, class
+ template <typename K>
+ auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::lower_bound(
+ const K& key) -> iterator {
++#ifdef __cpp_lib_as_const
++ return const_cast_it(std::as_const(*this).lower_bound(key));
++#else
+ return const_cast_it(as_const(*this).lower_bound(key));
++#endif
+ }
+
+ template <class Key, class Value, class GetKeyFromValue, class KeyCompare>
+@@ -841,7 +853,11 @@ template <class Key, class Value, class
+ template <typename K>
+ auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::upper_bound(
+ const K& key) -> iterator {
++#ifdef __cpp_lib_as_const
++ return const_cast_it(std::as_const(*this).upper_bound(key));
++#else
+ return const_cast_it(as_const(*this).upper_bound(key));
++#endif
+ }
+
+ template <class Key, class Value, class GetKeyFromValue, class KeyCompare>
+diff -up chromium-80.0.3987.106/third_party/webrtc/BUILD.gn.c17fix chromium-80.0.3987.106/third_party/webrtc/BUILD.gn
+--- chromium-80.0.3987.106/third_party/webrtc/BUILD.gn.c17fix 2020-02-20 15:00:23.439563056 -0500
++++ chromium-80.0.3987.106/third_party/webrtc/BUILD.gn 2020-02-20 15:01:36.282355645 -0500
+@@ -237,6 +237,10 @@ config("common_config") {
+ cflags_objc = []
+ defines = []
+
++ if (!is_clang) {
++ cflags_cc += [ "-std=c++17" ]
++ }
++
+ if (rtc_enable_protobuf) {
+ defines += [ "WEBRTC_ENABLE_PROTOBUF=1" ]
+ } else {
+diff -up chromium-80.0.3987.106/third_party/abseil-cpp/BUILD.gn.c17fix chromium-80.0.3987.106/third_party/abseil-cpp/BUILD.gn
+--- chromium-80.0.3987.106/third_party/abseil-cpp/BUILD.gn.c17fix 2020-02-21 15:12:14.413937754 -0500
++++ chromium-80.0.3987.106/third_party/abseil-cpp/BUILD.gn 2020-02-21 15:12:59.128967149 -0500
+@@ -46,6 +46,10 @@ config("absl_default_cflags_cc") {
+ cflags_cc += [ "-Wbitfield-enum-conversion" ]
+ }
+ }
++ if (!is_clang) {
++ cflags_cc = [ "-std=c++17" ]
++ }
++
+ if (is_win) {
+ cflags_cc += [
+ "/wd4005", # macro-redefinition
+diff -up chromium-80.0.3987.106/third_party/openscreen/src/tools/cddl/BUILD.gn.c17fix chromium-80.0.3987.106/third_party/openscreen/src/tools/cddl/BUILD.gn
+--- chromium-80.0.3987.106/third_party/openscreen/src/tools/cddl/BUILD.gn.c17fix 2020-02-21 15:35:56.269180510 -0500
++++ chromium-80.0.3987.106/third_party/openscreen/src/tools/cddl/BUILD.gn 2020-02-21 15:42:12.718900742 -0500
+@@ -22,6 +22,10 @@ if (current_toolchain == host_toolchain)
+ "../../third_party/abseil",
+ ]
+
++ if (!is_clang) {
++ cflags_cc = [ "-std=c++17" ]
++ }
++
+ configs += [ "../../build:openscreen_include_dirs" ]
+ }
+ }
+diff -up chromium-80.0.3987.106/build/config/compiler/BUILD.gn.c17hack chromium-80.0.3987.106/build/config/compiler/BUILD.gn
+--- chromium-80.0.3987.106/build/config/compiler/BUILD.gn.c17hack 2020-02-21 16:09:22.871980103 -0500
++++ chromium-80.0.3987.106/build/config/compiler/BUILD.gn 2020-02-21 16:09:28.606856106 -0500
+@@ -570,7 +570,7 @@ config("compiler") {
+ if (cxx11_override) {
+ cflags_cc += [ "-std=c++11" ]
+ } else {
+- cflags_cc += [ "-std=c++14" ]
++ cflags_cc += [ "-std=c++17" ]
+ }
+ }
+
+diff -up chromium-80.0.3987.106/third_party/openscreen/src/build/config/BUILD.gn.c17fix chromium-80.0.3987.106/third_party/openscreen/src/build/config/BUILD.gn
+--- chromium-80.0.3987.106/third_party/openscreen/src/build/config/BUILD.gn.c17fix 2020-02-24 08:55:52.674819783 -0500
++++ chromium-80.0.3987.106/third_party/openscreen/src/build/config/BUILD.gn 2020-02-24 08:56:08.665466317 -0500
+@@ -67,8 +67,8 @@ config("openscreen_code") {
+ "-fno-strict-aliasing", # See http://crbug.com/32204
+ ]
+
+- cflags_cc = [ "-std=c++14" ]
+- cflags_objcc = [ "-std=c++14" ]
++ cflags_cc = [ "-std=c++17" ]
++ cflags_objcc = [ "-std=c++17" ]
+
+ ldflags = [ "-Werror" ]
+
+diff -up chromium-80.0.3987.106/build/config/compiler/BUILD.gn.c17fix chromium-80.0.3987.106/build/config/compiler/BUILD.gn
+--- chromium-80.0.3987.106/build/config/compiler/BUILD.gn.c17fix 2020-02-24 09:39:14.659536642 -0500
++++ chromium-80.0.3987.106/build/config/compiler/BUILD.gn 2020-02-24 09:39:23.098366657 -0500
+@@ -553,7 +553,7 @@ config("compiler") {
+ # Override Chromium's default for projects that wish to stay on C++11.
+ cflags_cc += [ "-std=${standard_prefix}++11" ]
+ } else {
+- cflags_cc += [ "-std=${standard_prefix}++14" ]
++ cflags_cc += [ "-std=${standard_prefix}++17" ]
+ }
+ } else if (!is_win && !is_nacl) {
+ if (target_os == "android") {
+diff -up chromium-80.0.3987.106/third_party/openscreen/src/platform/api/task_runner.h.spot chromium-80.0.3987.106/third_party/openscreen/src/platform/api/task_runner.h
+--- chromium-80.0.3987.106/third_party/openscreen/src/platform/api/task_runner.h.spot 2020-02-24 10:56:54.645126949 -0500
++++ chromium-80.0.3987.106/third_party/openscreen/src/platform/api/task_runner.h 2020-02-24 10:57:26.788407144 -0500
+@@ -22,7 +22,7 @@ namespace platform {
+ // that A shall run before B.
+ class TaskRunner {
+ public:
+- using Task = std::packaged_task<void() noexcept>;
++ using Task = std::packaged_task<void()>;
+
+ virtual ~TaskRunner() = default;
+
+diff -up chromium-80.0.3987.106/base/containers/circular_deque.h.c17fix chromium-80.0.3987.106/base/containers/circular_deque.h
+--- chromium-80.0.3987.106/base/containers/circular_deque.h.c17fix 2020-02-24 14:42:14.163076162 -0500
++++ chromium-80.0.3987.106/base/containers/circular_deque.h 2020-02-24 14:43:38.393120439 -0500
+@@ -522,11 +522,19 @@ class circular_deque {
+ return buffer_[i - right_size];
+ }
+ value_type& at(size_type i) {
++#ifdef __cpp_lib_as_const
++ return const_cast<value_type&>(std::as_const(*this).at(i));
++#else
+ return const_cast<value_type&>(as_const(*this).at(i));
++#endif
+ }
+
+ value_type& operator[](size_type i) {
++#ifdef __cpp_lib_as_const
++ return const_cast<value_type&>(std::as_const(*this)[i]);
++#else
+ return const_cast<value_type&>(as_const(*this)[i]);
++#endif
+ }
+
+ const value_type& operator[](size_type i) const { return at(i); }
+diff -up chromium-80.0.3987.106/device/bluetooth/bluetooth_adapter.cc.c17fix chromium-80.0.3987.106/device/bluetooth/bluetooth_adapter.cc
+--- chromium-80.0.3987.106/device/bluetooth/bluetooth_adapter.cc.c17fix 2020-02-24 16:09:58.810502665 -0500
++++ chromium-80.0.3987.106/device/bluetooth/bluetooth_adapter.cc 2020-02-24 16:10:35.484705843 -0500
+@@ -638,7 +638,7 @@ void BluetoothAdapter::RecordBluetoothDi
+ }
+
+ // static
+-constexpr base::TimeDelta BluetoothAdapter::timeoutSec =
++const extern base::TimeDelta BluetoothAdapter::timeoutSec =
+ base::TimeDelta::FromSeconds(180);
+
+ } // namespace device
diff --git a/chromium-80.0.3987.87-libpipewire-0.3.patch b/chromium-80.0.3987.87-libpipewire-0.3.patch
new file mode 100644
index 0000000..6de6081
--- /dev/null
+++ b/chromium-80.0.3987.87-libpipewire-0.3.patch
@@ -0,0 +1,12 @@
+diff -up chromium-80.0.3987.87/third_party/webrtc/modules/desktop_capture/BUILD.gn.pipewire03 chromium-80.0.3987.87/third_party/webrtc/modules/desktop_capture/BUILD.gn
+--- chromium-80.0.3987.87/third_party/webrtc/modules/desktop_capture/BUILD.gn.pipewire03 2020-02-11 13:12:07.006990450 -0500
++++ chromium-80.0.3987.87/third_party/webrtc/modules/desktop_capture/BUILD.gn 2020-02-11 13:12:16.294795251 -0500
+@@ -190,7 +190,7 @@ if (is_linux) {
+
+ if (rtc_link_pipewire) {
+ pkg_config("pipewire") {
+- packages = [ "libpipewire-0.2" ]
++ packages = [ "libpipewire-0.3", "libspa-0.2" ]
+ }
+ } else {
+ # When libpipewire is not directly linked, use stubs to allow for dlopening of
diff --git a/chromium-80.0.3987.87-missing-cstddef-header.patch b/chromium-80.0.3987.87-missing-cstddef-header.patch
new file mode 100644
index 0000000..3ea2c22
--- /dev/null
+++ b/chromium-80.0.3987.87-missing-cstddef-header.patch
@@ -0,0 +1,22 @@
+diff -up chromium-80.0.3987.87/media/cdm/supported_cdm_versions.h.missing-cstddef chromium-80.0.3987.87/media/cdm/supported_cdm_versions.h
+--- chromium-80.0.3987.87/media/cdm/supported_cdm_versions.h.missing-cstddef 2020-02-10 12:07:42.863507440 -0500
++++ chromium-80.0.3987.87/media/cdm/supported_cdm_versions.h 2020-02-10 12:07:53.807364746 -0500
+@@ -6,6 +6,7 @@
+ #define MEDIA_CDM_SUPPORTED_CDM_VERSIONS_H_
+
+ #include <array>
++#include <cstddef>
+
+ #include "media/base/media_export.h"
+ #include "media/cdm/api/content_decryption_module.h"
+diff -up chromium-80.0.3987.87/third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h.missing-cstddef chromium-80.0.3987.87/third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h
+--- chromium-80.0.3987.87/third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h.missing-cstddef 2020-02-10 11:11:11.733934021 -0500
++++ chromium-80.0.3987.87/third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h 2020-02-10 11:11:11.724934173 -0500
+@@ -12,6 +12,7 @@
+ #define MODULES_AUDIO_PROCESSING_AEC3_CLOCKDRIFT_DETECTOR_H_
+
+ #include <array>
++#include <cstddef>
+
+ namespace webrtc {
+
diff --git a/chromium-80.0.3987.87-missing-cstdint-header.patch b/chromium-80.0.3987.87-missing-cstdint-header.patch
new file mode 100644
index 0000000..e61042f
--- /dev/null
+++ b/chromium-80.0.3987.87-missing-cstdint-header.patch
@@ -0,0 +1,55 @@
+diff -up chromium-80.0.3987.106/third_party/perfetto/include/perfetto/base/task_runner.h.missing-cstdint chromium-80.0.3987.106/third_party/perfetto/include/perfetto/base/task_runner.h
+--- chromium-80.0.3987.106/third_party/perfetto/include/perfetto/base/task_runner.h.missing-cstdint 2020-02-21 12:29:43.393191877 -0500
++++ chromium-80.0.3987.106/third_party/perfetto/include/perfetto/base/task_runner.h 2020-02-21 12:29:43.393191877 -0500
+@@ -17,6 +17,7 @@
+ #ifndef INCLUDE_PERFETTO_BASE_TASK_RUNNER_H_
+ #define INCLUDE_PERFETTO_BASE_TASK_RUNNER_H_
+
++#include <cstdint>
+ #include <functional>
+
+ #include "perfetto/base/export.h"
+diff -up chromium-80.0.3987.106/third_party/webrtc/call/rtx_receive_stream.h.missing-cstdint chromium-80.0.3987.106/third_party/webrtc/call/rtx_receive_stream.h
+--- chromium-80.0.3987.106/third_party/webrtc/call/rtx_receive_stream.h.missing-cstdint 2020-02-21 12:30:30.739332871 -0500
++++ chromium-80.0.3987.106/third_party/webrtc/call/rtx_receive_stream.h 2020-02-21 12:30:30.747332725 -0500
+@@ -11,6 +11,7 @@
+ #ifndef CALL_RTX_RECEIVE_STREAM_H_
+ #define CALL_RTX_RECEIVE_STREAM_H_
+
++#include <cstdint>
+ #include <map>
+
+ #include "call/rtp_packet_sink_interface.h"
+diff -up chromium-80.0.3987.106/third_party/webrtc/common_video/h264/pps_parser.h.missing-cstdint chromium-80.0.3987.106/third_party/webrtc/common_video/h264/pps_parser.h
+--- chromium-80.0.3987.106/third_party/webrtc/common_video/h264/pps_parser.h.missing-cstdint 2020-02-21 12:30:31.564317903 -0500
++++ chromium-80.0.3987.106/third_party/webrtc/common_video/h264/pps_parser.h 2020-02-21 12:30:31.561317957 -0500
+@@ -11,6 +11,7 @@
+ #ifndef COMMON_VIDEO_H264_PPS_PARSER_H_
+ #define COMMON_VIDEO_H264_PPS_PARSER_H_
+
++#include <cstdint>
+ #include "absl/types/optional.h"
+
+ namespace rtc {
+diff -up chromium-80.0.3987.106/third_party/webrtc/common_video/h264/sps_parser.h.missing-cstdint chromium-80.0.3987.106/third_party/webrtc/common_video/h264/sps_parser.h
+--- chromium-80.0.3987.106/third_party/webrtc/common_video/h264/sps_parser.h.missing-cstdint 2020-02-21 12:30:31.565317885 -0500
++++ chromium-80.0.3987.106/third_party/webrtc/common_video/h264/sps_parser.h 2020-02-21 12:30:31.565317885 -0500
+@@ -11,6 +11,7 @@
+ #ifndef COMMON_VIDEO_H264_SPS_PARSER_H_
+ #define COMMON_VIDEO_H264_SPS_PARSER_H_
+
++#include <cstdint>
+ #include "absl/types/optional.h"
+
+ namespace rtc {
+diff -up chromium-80.0.3987.106/third_party/webrtc/modules/include/module_common_types_public.h.missing-cstdint chromium-80.0.3987.106/third_party/webrtc/modules/include/module_common_types_public.h
+--- chromium-80.0.3987.106/third_party/webrtc/modules/include/module_common_types_public.h.missing-cstdint 2020-02-21 12:52:16.946512744 -0500
++++ chromium-80.0.3987.106/third_party/webrtc/modules/include/module_common_types_public.h 2020-02-21 12:52:26.220312608 -0500
+@@ -11,6 +11,7 @@
+ #ifndef MODULES_INCLUDE_MODULE_COMMON_TYPES_PUBLIC_H_
+ #define MODULES_INCLUDE_MODULE_COMMON_TYPES_PUBLIC_H_
+
++#include <cstdint>
+ #include <limits>
+
+ #include "absl/types/optional.h"
diff --git a/chromium-80.0.3987.87-missing-string-header.patch b/chromium-80.0.3987.87-missing-string-header.patch
new file mode 100644
index 0000000..6bb4c7d
--- /dev/null
+++ b/chromium-80.0.3987.87-missing-string-header.patch
@@ -0,0 +1,11 @@
+diff -up chromium-80.0.3987.87/base/trace_event/trace_event_memory_overhead.h.missing-string chromium-80.0.3987.87/base/trace_event/trace_event_memory_overhead.h
+--- chromium-80.0.3987.87/base/trace_event/trace_event_memory_overhead.h.missing-string 2020-02-06 16:47:15.707676509 -0500
++++ chromium-80.0.3987.87/base/trace_event/trace_event_memory_overhead.h 2020-02-06 16:47:23.782504337 -0500
+@@ -8,6 +8,7 @@
+ #include <stddef.h>
+ #include <stdint.h>
+
++#include <string>
+ #include <unordered_map>
+
+ #include "base/base_export.h"
diff --git a/chromium-browser.sh b/chromium-browser.sh
index 97607b9..d76aabe 100755
--- a/chromium-browser.sh
+++ b/chromium-browser.sh
@@ -39,6 +39,9 @@ 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
+# Disable allow_rgb_configs to fix odd color and vaapi issues with Mesa
+export allow_rgb10_configs=false
+
CHROMIUM_DISTRO_FLAGS=" --enable-plugins \
--enable-extensions \
--enable-user-scripts \
diff --git a/chromium.spec b/chromium.spec
index 6f4a439..ac782c0 100644
--- a/chromium.spec
+++ b/chromium.spec
@@ -9,18 +9,16 @@
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
+
+# This was faster when it worked, but it didn't always.
+# As of chromium 80, it is no longer supported. RIP.
%global use_jumbo 0
-%else
-%global use_jumbo 1
-%endif
# We usually want this.
%global build_headless 1
# We'd like to always have this on.
-%global use_vaapi 0
+%global use_vaapi 1
# 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)
@@ -71,9 +69,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|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_lib|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|libmirclient.so.9|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|libperformace_manager_public_mojom_blink|libperformace_manager_public_mojom_shared|libperformace_manager_public_mojom|libplatform|libplatform_window_handler_libs|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libproperties|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|libvk_swiftshader|libvr_base|libvr_common|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libvulkan_ycbcr_info|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|libfontconfig
+%global privlibs 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_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_ipc|libcc_mojo_embedder|libcc_paint|libcertificate_matching|libcert_verifier|libchrome_features|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcolor_utils|libcommon|libcompositor|libcontent|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom|libcontent_service_mojom_shared|libcontent_settings_features|libcrash_key_lib|libcrcrypto|libcrdtp|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevices|libdevice_vr|libdevice_vr_mojo_bindings|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevice_vr_test_mojo_bindings|libdevice_vr_test_mojo_bindings_blink|libdevice_vr_test_mojo_bindings_shared|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libdom_storage_mojom|libdom_storage_mojom_shared|libEGL|libEGL|libembedder|libembedder_switches|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libextras|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|libgles2|libgles2_implementation|libgles2_utils|libGLESv2|libGLESv2|libgl_init|libgl_in_process_context|libgl_wrapper|libgpu|libgpu_ipc_service|libgtkui|libheadless_non_renderer|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc|libipc_mojom|libipc_mojom_shared|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|liblearning_common|liblearning_impl|libleveldatabase|libleveldb_proto|libmanager|libmedia|libmedia_blink|libmedia_gpu|libmedia_learning_mojo_impl|libmedia_message_center|libmedia_mojo_services|libmedia_session_base_cpp|libmedia_session_cpp|libmedia_webrtc|libmemory_instrumentation|libmenu|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|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|libmojom_core_shared|libmojom_mhtml_load_result_shared|libmojom_modules_shared|libmojo_mojom_bindings|libmojo_mojom_bindings_shared|libmojom_platform_shared|libmojo_public_system|libmojo_public_system_cpp|libnative_theme|libnet|libnetwork_cpp|libnetwork_cpp_base|libnetwork_service|libnetwork_session_configurator|libonc|libos_crypt|libparsers|libpdfium|libperfetto|libperformace_manager_public_mojom|libperformace_manager_public_mojom_blink|libperformace_manager_public_mojom_shared|libplatform|libplatform_window|libplatform_window_common|libplatform_window_handler_libs|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libproperties|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_public_mojom|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libsandbox|libsandbox_services|libscheduling_metrics|libseccomp_bpf|libsecurity_state_features|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|libservice_provider|libsessions|libshared_memory_support|libshared_with_blink|libshell_dialogs|libskia|libskia_shared_typemap_traits|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstorage_service_public|libstub_window|libsuid_sandbox_client|libsurface|libsystem_media_controls|libtab_count_metrics|libthread_linux|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|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|libVkICD_mock_icd|libvk_swiftshader|libvr_base|libvr_common|libvulkan_info|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libvulkan_ycbcr_info|libweb_bluetooth_mojo_bindings_shared|libwebdata_common|libweb_dialogs|libweb_feature_mojo_bindings_mojom|libweb_feature_mojo_bindings_mojom_blink|libweb_feature_mojo_bindings_mojom_shared|libwebgpu|libweb_modal|libwebrtc_component|libwebview|libwm|libwm_public|libwtf|libwtf_support|libx11_events_platform|libx11_window|libzygote|libfontconfig
%else
-%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_lib|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|libmirclient.so.9|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|libperformace_manager_public_mojom_blink|libperformace_manager_public_mojom_shared|libperformace_manager_public_mojom|libplatform|libplatform_window_handler_libs|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libproperties|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|libvk_swiftshader|libvr_base|libvr_common|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libvulkan_ycbcr_info|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
+%global privlibs 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_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_ipc|libcc_mojo_embedder|libcc_paint|libcertificate_matching|libcert_verifier|libchrome_features|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcolor_utils|libcommon|libcompositor|libcontent|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom|libcontent_service_mojom_shared|libcontent_settings_features|libcrash_key_lib|libcrcrypto|libcrdtp|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevices|libdevice_vr|libdevice_vr_mojo_bindings|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevice_vr_test_mojo_bindings|libdevice_vr_test_mojo_bindings_blink|libdevice_vr_test_mojo_bindings_shared|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libdom_storage_mojom|libdom_storage_mojom_shared|libEGL|libEGL|libembedder|libembedder_switches|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libextras|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|libgles2|libgles2_implementation|libgles2_utils|libGLESv2|libGLESv2|libgl_init|libgl_in_process_context|libgl_wrapper|libgpu|libgpu_ipc_service|libgtkui|libheadless_non_renderer|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc|libipc_mojom|libipc_mojom_shared|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|liblearning_common|liblearning_impl|libleveldatabase|libleveldb_proto|libmanager|libmedia|libmedia_blink|libmedia_gpu|libmedia_learning_mojo_impl|libmedia_message_center|libmedia_mojo_services|libmedia_session_base_cpp|libmedia_session_cpp|libmedia_webrtc|libmemory_instrumentation|libmenu|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|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|libmojom_core_shared|libmojom_mhtml_load_result_shared|libmojom_modules_shared|libmojo_mojom_bindings|libmojo_mojom_bindings_shared|libmojom_platform_shared|libmojo_public_system|libmojo_public_system_cpp|libnative_theme|libnet|libnetwork_cpp|libnetwork_cpp_base|libnetwork_service|libnetwork_session_configurator|libonc|libos_crypt|libparsers|libpdfium|libperfetto|libperformace_manager_public_mojom|libperformace_manager_public_mojom_blink|libperformace_manager_public_mojom_shared|libplatform|libplatform_window|libplatform_window_common|libplatform_window_handler_libs|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libproperties|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_public_mojom|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libsandbox|libsandbox_services|libscheduling_metrics|libseccomp_bpf|libsecurity_state_features|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|libservice_provider|libsessions|libshared_memory_support|libshared_with_blink|libshell_dialogs|libskia|libskia_shared_typemap_traits|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstorage_service_public|libstub_window|libsuid_sandbox_client|libsurface|libsystem_media_controls|libtab_count_metrics|libthread_linux|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|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|libVkICD_mock_icd|libvk_swiftshader|libvr_base|libvr_common|libvulkan_info|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libvulkan_ycbcr_info|libweb_bluetooth_mojo_bindings_shared|libwebdata_common|libweb_dialogs|libweb_feature_mojo_bindings_mojom|libweb_feature_mojo_bindings_mojom_blink|libweb_feature_mojo_bindings_mojom_shared|libwebgpu|libweb_modal|libwebrtc_component|libwebview|libwm|libwm_public|libwtf|libwtf_support|libx11_events_platform|libx11_window|libzygote
%endif
%global __requires_exclude ^(%{privlibs})\\.so*
@@ -153,14 +151,14 @@ BuildRequires: libicu-devel >= 5.4
%global chromoting_client_id %nil
%endif
-%global majorversion 79
+%global majorversion 80
%if %{freeworld}
Name: chromium%{chromium_channel}%{nsuffix}
%else
Name: chromium%{chromium_channel}
%endif
-Version: %{majorversion}.0.3945.130
+Version: %{majorversion}.0.3987.122
Release: 1%{?dist}
%if %{?freeworld}
%if %{?shared}
@@ -220,22 +218,39 @@ Patch54: chromium-77.0.3865.75-gcc-include-memory.patch
# https://chromium.googlesource.com/chromium/src/+/6b633c4b14850df376d5cec5...
# https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/...
Patch55: chromium-79.0.3945.56-base-gcc-no-alignas.patch
-# https://chromium.googlesource.com/chromium/src/+/af77dc4014ead3d898fdc8a7...
-Patch56: chromium-79-gcc-ambiguous-nodestructor.patch
# https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/...
Patch57: chromium-78-protobuf-export.patch
-# https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client/chromium/files...
-Patch58: chromium-79-include.patch
# https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client/chromium/files...
Patch59: chromium-77-clang.patch
-# https://chromium.googlesource.com/chromium/src.git/+/54407b422a9cbf775a68...
-Patch60: chromium-79.0.3945.56-glibc-clock-nanosleep.patch
-# https://chromium.googlesource.com/chromium/src/+/e925deab264e5ebc3c5c1341...
-Patch61: chromium-79.0.3945.56-gcc-name-clash.patch
-# https://chromium.googlesource.com/chromium/src/+/528e9a3e1f25bd264549c4c7...
-Patch62: chromium-79-gcc-permissive.patch
# /../../ui/base/cursor/ozone/bitmap_cursor_factory_ozone.cc:53:15: error: 'find_if' is not a member of 'std'; did you mean 'find'?
Patch63: chromium-79.0.3945.56-fix-find_if.patch
+# Work around situation with gcc10 where
+# modifying a const object is not allowed in a constant expression
+# except in a very specific case in c++17
+# https://bugs.chromium.org/p/chromium/issues/detail?id=1045963
+Patch64: chromium-79.0.3945.130-gcc10-use-c++17-to-work-around-ugly-angle-code.patch
+# https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client/chromium/files...
+Patch65: chromium-80-gcc-incomplete-type.patch
+# https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client/chromium/files...
+Patch66: chromium-80-include.patch
+# https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client/chromium/files...
+Patch67: chromium-80-gcc-abstract.patch
+# https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client/chromium/files...
+Patch68: chromium-80-gcc-blink.patch
+# https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client/chromium/files...
+Patch69: chromium-80-gcc-permissive.patch
+# https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client/chromium/files...
+Patch70: chromium-80-gcc-quiche.patch
+# ../../base/trace_event/trace_event_memory_overhead.h:15:1: note: 'std::string' is defined in header '<string>'; did you forget to '#include <string>'?
+Patch71: chromium-80.0.3987.87-missing-string-header.patch
+# ../../third_party/perfetto/include/perfetto/base/task_runner.h:48:55: error: 'uint32_t' has not been declared
+Patch72: chromium-80.0.3987.87-missing-cstdint-header.patch
+# ../../third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h:34:3: error: 'size_t' does not name a type
+Patch73: chromium-80.0.3987.106-missing-cstddef-header.patch
+# Because of Patch64, we need to force std::as_const with c++17
+Patch74: chromium-80.0.3987.87-fix-for-c++17.patch
+# Missing <cstring> (thanks c++17)
+Patch75: chromium-80.0.3987.106-missing-cstring-header.patch
# Use lstdc++ on EPEL7 only
@@ -248,7 +263,7 @@ Patch102: chromium-79.0.3945.56-el7-noexcept.patch
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
+Patch205: fixvaapionintel.patch
# Apply these patches to work around EPEL8 issues
Patch300: chromium-76.0.3809.132-rhel8-force-disable-use_gnome_keyring.patch
@@ -772,14 +787,24 @@ udev.
%patch53 -p1 -b .unbundle-zlib
%patch54 -p1 -b .gcc-include-memory
%patch55 -p1 -b .base-gcc-no-alignas
-%patch56 -p1 -b .gcc-ambiguous-nodestructor
%patch57 -p1 -b .protobuf-export
-%patch58 -p1 -b .missing-includes
%patch59 -p1 -b .clang-supports-location-builtins
-%patch60 -p1 -b .glibc-clock-nanosleep
-%patch61 -p1 -b .gcc-name-clash
-%patch62 -p1 -b .gcc-permissive
%patch63 -p1 -b .fix-find_if
+%if 0%{?fedora} >= 32
+%patch64 -p1 -b .gcc10-angle
+%patch74 -p1 -b .c17
+%endif
+%patch65 -p1 -b .gcc-incomplete-type
+%patch66 -p1 -b .includefix
+%patch67 -p1 -b .gcc-abstract
+%patch68 -p1 -b .gcc-blink
+%patch69 -p1 -b .gcc-permissive
+%patch70 -p1 -b .gcc-quiche
+%patch71 -p1 -b .missing-string
+%patch72 -p1 -b .missing-cstdint
+%patch73 -p1 -b .missing-cstddef
+%patch75 -p1 -b .missing-cstring
+
# Fedora branded user agent
%if 0%{?fedora}
@@ -797,8 +822,8 @@ udev.
%patch202 -p1 -b .vaapi
%ifarch i686
%patch203 -p1 -b .i686permissive
-%patch204 -p1 -b .va1compat
%endif
+%patch205 -p1 -b .vaapi-intel-fix
%endif
%if 0%{?rhel} == 8
@@ -862,7 +887,11 @@ unzip %{SOURCE113}
cp -a /usr/share/fonts/lohit-gurmukhi/Lohit-Gurmukhi.ttf .
cp -a /usr/share/fonts/google-noto-cjk/NotoSansCJKjp-Regular.otf .
%endif
+%if 0%{?fedora} >= 32
+cp -a /usr/share/fonts/dejavu-sans-fonts/DejaVuSans.ttf /usr/share/fonts/dejavu-sans-fonts/DejaVuSans-Bold.ttf .
+%else
cp -a /usr/share/fonts/dejavu/DejaVuSans.ttf /usr/share/fonts/dejavu/DejaVuSans-Bold.ttf .
+%endif
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 .
@@ -876,7 +905,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 use_lld=false'
+CHROMIUM_CORE_GN_DEFINES+=' is_clang=false use_sysroot=false use_gold=false fieldtrial_testing_like_official_build=true use_lld=false rtc_enable_symbol_export=true'
%if %{freeworld}
CHROMIUM_CORE_GN_DEFINES+=' ffmpeg_branding="ChromeOS" proprietary_codecs=true'
%else
@@ -978,9 +1007,6 @@ 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/boringssl/linux-aarch64/crypto/third_party/sike' \
'third_party/breakpad' \
'third_party/breakpad/breakpad/src/third_party/curl' \
'third_party/brotli' \
@@ -1011,13 +1037,14 @@ build/linux/unbundle/remove_bundled_libraries.py \
'third_party/dawn' \
'third_party/depot_tools' \
'third_party/devscripts' \
+ 'third_party/devtools-frontend' \
+ 'third_party/devtools-frontend/src/third_party/axe-core' \
'third_party/dom_distiller_js' \
'third_party/emoji-segmenter' \
'third_party/expat' \
'third_party/ffmpeg' \
'third_party/flac' \
'third_party/flatbuffers' \
- 'third_party/flot' \
'third_party/fontconfig' \
'third_party/freetype' \
'third_party/glslang' \
@@ -1044,6 +1071,7 @@ build/linux/unbundle/remove_bundled_libraries.py \
'third_party/libaom/source/libaom/third_party/vector' \
'third_party/libaom/source/libaom/third_party/x86inc' \
'third_party/libdrm' \
+ 'third_party/libgifcodec' \
'third_party/libjingle' \
'third_party/libjpeg_turbo' \
'third_party/libphonenumber' \
@@ -1111,7 +1139,6 @@ build/linux/unbundle/remove_bundled_libraries.py \
'third_party/skia' \
'third_party/skia/include/third_party/skcms' \
'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' \
'third_party/smhasher' \
@@ -1282,6 +1309,8 @@ sed -i.orig -e 's/getenv("CHROME_VERSION_EXTRA")/"Fedora Project"/' $FILE
%global optflags %(echo %{optflags} | sed 's/-g /-g1 /')
%endif
+export PYTHONPATH="../../third_party/pyjson5/src"
+
echo
# Now do the full browser
%if 0%{freeworld}
@@ -1354,7 +1383,6 @@ sed -i "s|@@PACKAGE@@|%{chromium_browser_channel}|g" %{buildroot}%{_mandir}/man1
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}
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}
@@ -1697,6 +1725,15 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt
%changelog
+* Thu Feb 27 2020 Tom Callaway <spot(a)fedoraproject.org> - 80.0.3987.122-1
+- update to 80.0.3987.122
+
+* Mon Feb 17 2020 Tom Callaway <spot(a)fedoraproject.org> - 80.0.3987.106-1
+- update to 80.0.3987.106
+
+* Wed Feb 5 2020 Tom Callaway <spot(a)fedoraproject.org> - 80.0.3987.87-1
+- update to 80.0.3987.87
+
* Fri Jan 17 2020 Tom Callaway <spot(a)fedoraproject.org> - 79.0.3945.130-1
- update to 79.0.3945.130
diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh
index fd226e8..edab56f 100755
--- a/clean_ffmpeg.sh
+++ b/clean_ffmpeg.sh
@@ -97,6 +97,7 @@ header_files=" libavcodec/x86/inline_asm.h \
libavcodec/mdct15.c \
libavcodec/mdct15.h \
libavcodec/me_cmp.h \
+ libavcodec/mlp_parse.h \
libavcodec/motion_est.h \
libavcodec/mpeg12.h \
libavcodec/mpeg12data.h \
@@ -196,6 +197,7 @@ header_files=" libavcodec/x86/inline_asm.h \
libavutil/thread.h \
libavutil/timer.h \
libavutil/timestamp.h \
+ libavutil/tx_priv.h \
libavutil/version.h \
libswresample/swresample.h \
libswresample/version.h \
@@ -246,6 +248,7 @@ manual_files=" libavcodec/aarch64/fft_neon.S \
libavutil/fixed_dsp.c \
libavutil/float_dsp.c \
libavutil/imgutils.c \
+ libavutil/tx_template.c \
libavutil/x86/cpu.c \
libavutil/x86/float_dsp_init.c \
libavutil/x86/x86inc.asm \
diff --git a/enable-vaapi.patch b/enable-vaapi.patch
index 3286af7..1dd612a 100644
--- a/enable-vaapi.patch
+++ b/enable-vaapi.patch
@@ -1,18 +1,31 @@
-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[] = {
+From e04b52fc9b12f0725e76b889161ea45c776e6da5 Mon Sep 17 00:00:00 2001
+From: Akarshan Biswas <akarshanbiswas(a)fedoraproject.org>
+Date: Fri, 20 Sep 2019 19:55:45 +0530
+Subject: [PATCH] Enable VAAPI 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 ++-
+ 4 files changed, 20 insertions(+), 10 deletions(-)
+
+diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
+index e608f06a2..c0776db45 100644
+--- a/chrome/browser/about_flags.cc
++++ b/chrome/browser/about_flags.cc
+@@ -1738,7 +1738,7 @@ const FeatureEntry kFeatureEntries[] = {
"disable-accelerated-video-decode",
flag_descriptions::kAcceleratedVideoDecodeName,
flag_descriptions::kAcceleratedVideoDecodeDescription,
- kOsMac | kOsWin | kOsCrOS | kOsAndroid,
-+ kOsMac | kOsWin | kOsCrOS | kOsAndroid | kOsLinux,
++ kOsMac | kOsWin | kOsCrOS | kOsAndroid | kOsLinux,
SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedVideoDecode),
},
- #if defined(OS_WIN)
-@@ -1882,12 +1882,12 @@ const FeatureEntry kFeatureEntries[] = {
+ {
+@@ -2216,12 +2216,12 @@ const FeatureEntry kFeatureEntries[] = {
FEATURE_VALUE_TYPE(service_manager::features::kXRSandbox)},
- #endif // ENABLE_ISOLATED_XR_SERVICE
+ #endif // !defined(OS_ANDROID)
#endif // ENABLE_VR
-#if defined(OS_CHROMEOS)
+#if defined(OS_CHROMEOS) || defined(OS_LINUX)
@@ -22,45 +35,47 @@ diff -up chromium-75.0.3770.80/chrome/browser/about_flags.cc.vaapi chromium-75.0
+ 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)},
-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 // OS_CHROMEOS | OS_LINUX
+ {"system-keyboard-lock", flag_descriptions::kSystemKeyboardLockName,
+ flag_descriptions::kSystemKeyboardLockDescription, kOsDesktop,
+ FEATURE_VALUE_TYPE(features::kSystemKeyboardLock)},
+diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc
+index d27bbb28f..1c6542bdd 100644
+--- a/chrome/browser/flag_descriptions.cc
++++ b/chrome/browser/flag_descriptions.cc
+@@ -3071,16 +3071,19 @@ const char kMacSystemMediaPermissionsInfoUiDescription[] =
#endif
-// Chrome OS -------------------------------------------------------------------
-+// Chrome OS & Linux------------------------------------------------------------
-
+-
-#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
++// Chrome OS and Linux -------------------------------------------------------------------
++#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
const char kAcceleratedMjpegDecodeName[] =
"Hardware-accelerated mjpeg decode for captured frame";
const char kAcceleratedMjpegDecodeDescription[] =
"Enable hardware-accelerated mjpeg decode for captured frame where "
"available.";
-+#endif
-+
-+// Chrome OS -------------------------------------------------------------------
++#endif
+
++// Chrome OS -----------------------------------------------------------------------------
+
+#if defined(OS_CHROMEOS)
-
- 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
+ const char kAggregatedMlAppRankingName[] = "Rank suggested apps with ML.";
+ const char kAggregatedMlAppRankingDescription[] =
+ "Use the aggregated ML model to rank the suggested apps.";
+diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
+index 1f8899de1..06544e079 100644
+--- a/chrome/browser/flag_descriptions.h
++++ b/chrome/browser/flag_descriptions.h
+@@ -1822,13 +1822,19 @@ extern const char kPermissionPromptPersistenceToggleDescription[];
#endif // defined(OS_MACOSX)
-// Chrome OS ------------------------------------------------------------------
-+// Chrome OS & Linux ----------------------------------------------------------
++// Chrome OS and Linux ---------------------------------------------------------
-#if defined(OS_CHROMEOS)
+#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
@@ -68,19 +83,20 @@ diff -up chromium-75.0.3770.80/chrome/browser/flag_descriptions.h.vaapi chromium
extern const char kAcceleratedMjpegDecodeName[];
extern const char kAcceleratedMjpegDecodeDescription[];
-+#endif
++#endif
+
-+// Chrome OS ------------------------------------------------------------------
++// Chrome OS -------------------------------------------------------------------
+
+#if defined(OS_CHROMEOS)
+
- extern const char kAppServiceAshName[];
- extern const char kAppServiceAshDescription[];
+ extern const char kAggregatedMlAppRankingName[];
+ extern const char kAggregatedMlAppRankingDescription[];
-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/gpu/config/software_rendering_list.json b/gpu/config/software_rendering_list.json
+index ea1294e4c..bc52cbc8f 100644
+--- a/gpu/config/software_rendering_list.json
++++ b/gpu/config/software_rendering_list.json
+@@ -334,11 +334,12 @@
},
{
"id": 48,
@@ -90,7 +106,10 @@ diff -up chromium-75.0.3770.80/gpu/config/software_rendering_list.json.vaapi chr
"os": {
"type": "linux"
},
-+ "vendor_id": "0x10de",
++ "vendor_id": "0x10de",
"features": [
"accelerated_video_decode"
]
+--
+2.21.0
+
diff --git a/fixvaapionintel.patch b/fixvaapionintel.patch
new file mode 100644
index 0000000..a94886a
--- /dev/null
+++ b/fixvaapionintel.patch
@@ -0,0 +1,49 @@
+From 9ff06536caf7ea51aad9fd2bb649c858eaf7ee84 Mon Sep 17 00:00:00 2001
+From: Akarshan Biswas <akarshanbiswas(a)fedoraproject.org>
+Date: Sat, 26 Oct 2019 10:06:30 +0530
+Subject: [PATCH] Move offending function to chromeos only
+
+---
+ media/gpu/vaapi/vaapi_video_decode_accelerator.cc | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/media/gpu/vaapi/vaapi_video_decode_accelerator.cc b/media/gpu/vaapi/vaapi_video_decode_accelerator.cc
+index f04b60f58..3e7865503 100644
+--- a/media/gpu/vaapi/vaapi_video_decode_accelerator.cc
++++ b/media/gpu/vaapi/vaapi_video_decode_accelerator.cc
+@@ -63,6 +63,7 @@ void ReportToUMA(VAVDADecoderFailure failure) {
+ VAVDA_DECODER_FAILURES_MAX + 1);
+ }
+
++#if defined(OS_ANDROID) || defined(OS_CHROMEOS)
+ // Returns true if the CPU is an Intel Gemini Lake or later (including Kaby
+ // Lake) Cpu platform id's are referenced from the following file in kernel
+ // source arch/x86/include/asm/intel-family.h
+@@ -75,6 +76,7 @@ bool IsGeminiLakeOrLater() {
+ cpuid.model() >= kGeminiLakeModelId;
+ return is_geminilake_or_later;
+ }
++#endif
+
+ } // namespace
+
+@@ -1091,6 +1093,8 @@ VaapiVideoDecodeAccelerator::DecideBufferAllocationMode() {
+ if (output_mode_ == VideoDecodeAccelerator::Config::OutputMode::IMPORT)
+ return BufferAllocationMode::kNormal;
+
++#if defined(OS_ANDROID) || defined(OS_CHROMEOS)
++ // Move this to chromeOs only as it is causing problem in some intel linux drivers
+ // On Gemini Lake, Kaby Lake and later we can pass to libva the client's
+ // PictureBuffers to decode onto, which skips the use of the Vpp unit and its
+ // associated format reconciliation copy, avoiding all internal buffer
+@@ -1107,6 +1111,7 @@ VaapiVideoDecodeAccelerator::DecideBufferAllocationMode() {
+ num_extra_pics_ = 3;
+ return BufferAllocationMode::kNone;
+ }
++#endif
+
+ // If we're here, we have to use the Vpp unit and allocate buffers for
+ // |decoder_|; usually we'd have to allocate the |decoder_|s
+--
+2.21.0
+
diff --git a/sources b/sources
index efaf0ea..6bad0a4 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-79.0.3945.130-clean.tar.xz) = 3b8530492ad76397f479fd4c6a30c7371892be3b60361eb85002295deaffc78766b4d36a5e39398634ca507f0e5d42fdd1ee35e9289310e6d662514a6681df52
+SHA512 (chromium-80.0.3987.122-clean.tar.xz) = 9de43bd70406a8b97ee5177f9983fea68403fa457d599843de423fe910e7f78f659e7e98a077be33f4fb8d288c61ecee28330eabb7cd560ac856bf9a24b58562
4 years, 1 month
Architecture specific change in rpms/nodejs-tslib.git
by githook-noreply@fedoraproject.org
The package rpms/nodejs-tslib.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/nodejs-tslib.git/commit/?id=36b07....
Change:
+ExclusiveArch: %{nodejs_arches} noarch
Thanks.
Full change:
============
commit 36b078e2acb4099a113a45da4fb97fe360d379a3
Author: Tom Hughes <tom(a)compton.nu>
Date: Thu Feb 27 21:24:00 2020 +0000
Update to 1.11.1 upstream release
diff --git a/.gitignore b/.gitignore
index 161ee49..2e7f4ee 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1,4 @@
/tslib-1.9.1.tgz
+/tslib-1.10.0.tgz
+/tslib-1.11.0.tgz
+/tslib-1.11.1.tgz
diff --git a/nodejs-tslib.spec b/nodejs-tslib.spec
index 1d0cef0..145cc6c 100644
--- a/nodejs-tslib.spec
+++ b/nodejs-tslib.spec
@@ -4,23 +4,19 @@
%global enable_tests 1
Name: nodejs-tslib
-Version: 1.9.1
-Release: 5%{?dist}
+Version: 1.11.1
+Release: 1%{?dist}
Summary: Runtime library for TypeScript helper functions
License: ASL 2.0
URL: https://github.com/Microsoft/tslib.git
Source0: https://registry.npmjs.org/%{packagename}/-/%{packagename}-%{version}.tgz
-
BuildArch: noarch
-ExclusiveArch: %{nodejs_arches} noarch
+ExclusiveArch: %{nodejs_arches} noarch
BuildRequires: nodejs-packaging
-%if 0%{?enable_tests}
-BuildRequires: mocha
-%endif
%description
Runtime library for TypeScript helper functions
@@ -33,6 +29,7 @@ Runtime library for TypeScript helper functions
%build
# nothing to do
+
%install
mkdir -p %{buildroot}%{nodejs_sitelib}/%{packagename}
cp -pr package.json *.js *.ts \
@@ -40,6 +37,7 @@ cp -pr package.json *.js *.ts \
%nodejs_symlink_deps
+
%check
%nodejs_symlink_deps --check
%{__nodejs} -e 'require("./")'
@@ -49,12 +47,17 @@ cp -pr package.json *.js *.ts \
%{_bindir}/echo -e "\e[101m -=#=- Tests disabled -=#=- \e[0m"
%endif
+
%files
-%doc *.md docs/
+%doc *.md
%license LICENSE.txt CopyrightNotice.txt
%{nodejs_sitelib}/%{packagename}
+
%changelog
+* Thu Feb 27 2020 Tom Hughes <tom(a)compton.nu> - 1.11.1-1
+- Update to 1.11.1 upstream release
+
* Wed Jan 29 2020 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.9.1-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
diff --git a/sources b/sources
index 432b7bb..3edcacc 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (tslib-1.9.1.tgz) = 6af7cf4b6f079862cb736a387a571cd8422ad85707fbe628e58c690598bd630f770424c616d848e073c4e11a5ea7abd261068af1eebd3de94ce38b4f8fe45a42
+SHA512 (tslib-1.11.1.tgz) = 6995bcf1263c9106d4ee0a55d7d94ddb82ed5e1ff20f865983aaa27802430e0f9806c25c4a62c62bd4299d48c02951bfc5e7e6bc919dd565267e94ff83a00918
4 years, 1 month
Architecture specific change in rpms/dotnet-build-reference-packages.git
by githook-noreply@fedoraproject.org
The package rpms/dotnet-build-reference-packages.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/dotnet-build-reference-packages.g....
Change:
+ExclusiveArch: x86_64
Thanks.
Full change:
============
commit 19e4b3e8bf312989014de17e61264caae5f4ed81
Author: Omair Majid <omajid(a)redhat.com>
Date: Thu Feb 27 15:52:18 2020 -0500
Build on x864_64 only and generate the package archive
diff --git a/dotnet-build-reference-packages.spec b/dotnet-build-reference-packages.spec
index 3fb26d5..3b6f5f8 100644
--- a/dotnet-build-reference-packages.spec
+++ b/dotnet-build-reference-packages.spec
@@ -12,6 +12,8 @@ License: MIT
URL: https://github.com/dotnet/source-build-reference-packages
Source0: https://github.com/dotnet/source-build-reference-packages/archive/%{commi...
+ExclusiveArch: x86_64
+
BuildRequires: dotnet-sdk-3.1
BuildRequires: dotnet-sdk-3.1-source-built-artifacts
@@ -36,6 +38,10 @@ find -iname 'nuget.config' -exec echo {} \; -exec cat {} \;
--with-sdk %{_libdir}/dotnet \
--with-packages %{_libdir}/dotnet/source-built-artifacts/*.tar.gz
+pushd artifacts/reference-packages
+tar cvzf Private.SourceBuild.ReferencePackages.%{version}.tar.gz *.nupkg
+popd
+mv artifacts/reference-packages/Private.SourceBuild.ReferencePackages.%{version}.tar.gz .
%install
mkdir -p %{buildroot}/%{_libdir}/dotnet
4 years, 1 month
Architecture specific change in rpms/chromium.git
by githook-noreply@fedoraproject.org
The package rpms/chromium.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/chromium.git/commit/?id=f1db2ee0c....
Change:
-%ifarch aarch64
Thanks.
Full change:
============
commit 4149dcea63f1a8ef4eddd6dd6641758979e2b391
Merge: f1db2ee da0f899
Author: Tom Callaway <spot(a)fedoraproject.org>
Date: Thu Feb 27 11:28:21 2020 -0500
merge fix
diff --cc chromium.spec
index ac782c0,ea26cba..3396a61
--- a/chromium.spec
+++ b/chromium.spec
@@@ -1725,15 -1697,9 +1725,18 @@@ getent group chrome-remote-desktop >/de
%changelog
+* Thu Feb 27 2020 Tom Callaway <spot(a)fedoraproject.org> - 80.0.3987.122-1
+- update to 80.0.3987.122
+
+* Mon Feb 17 2020 Tom Callaway <spot(a)fedoraproject.org> - 80.0.3987.106-1
+- update to 80.0.3987.106
+
+* Wed Feb 5 2020 Tom Callaway <spot(a)fedoraproject.org> - 80.0.3987.87-1
+- update to 80.0.3987.87
+
+ * Tue Jan 28 2020 Fedora Release Engineering <releng(a)fedoraproject.org> - 79.0.3945.130-2
+ - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
+
* Fri Jan 17 2020 Tom Callaway <spot(a)fedoraproject.org> - 79.0.3945.130-1
- update to 79.0.3945.130
commit f1db2ee0c505063088fa40dfd6e7ae7f8aa022b9
Author: Tom Callaway <spot(a)fedoraproject.org>
Date: Thu Feb 27 11:27:21 2020 -0500
please work
diff --git a/chromium-77.0.3865.75-gcc-include-memory.patch b/chromium-77.0.3865.75-gcc-include-memory.patch
index 93b4399..e1d4bdb 100644
--- a/chromium-77.0.3865.75-gcc-include-memory.patch
+++ b/chromium-77.0.3865.75-gcc-include-memory.patch
@@ -10,3 +10,25 @@ diff -up chromium-77.0.3865.75/third_party/one_euro_filter/src/one_euro_filter.h
namespace one_euro_filter {
namespace test {
class OneEuroFilterTest;
+diff -up chromium-80.0.3987.106/third_party/webrtc/modules/audio_processing/aec3/reverb_model_estimator.h.missing-memory chromium-80.0.3987.106/third_party/webrtc/modules/audio_processing/aec3/reverb_model_estimator.h
+--- chromium-80.0.3987.106/third_party/webrtc/modules/audio_processing/aec3/reverb_model_estimator.h.missing-memory 2020-02-21 12:25:17.206021379 -0500
++++ chromium-80.0.3987.106/third_party/webrtc/modules/audio_processing/aec3/reverb_model_estimator.h 2020-02-21 12:25:31.613759976 -0500
+@@ -12,6 +12,7 @@
+ #define MODULES_AUDIO_PROCESSING_AEC3_REVERB_MODEL_ESTIMATOR_H_
+
+ #include <array>
++#include <memory>
+ #include <vector>
+
+ #include "absl/types/optional.h"
+diff -up chromium-80.0.3987.106/third_party/openscreen/src/util/trace_logging/scoped_trace_operations.h.memory chromium-80.0.3987.106/third_party/openscreen/src/util/trace_logging/scoped_trace_operations.h
+--- chromium-80.0.3987.106/third_party/openscreen/src/util/trace_logging/scoped_trace_operations.h.memory 2020-02-24 11:35:38.283880819 -0500
++++ chromium-80.0.3987.106/third_party/openscreen/src/util/trace_logging/scoped_trace_operations.h 2020-02-24 11:35:48.366670897 -0500
+@@ -7,6 +7,7 @@
+
+ #include <atomic>
+ #include <cstring>
++#include <memory>
+ #include <stack>
+ #include <vector>
+
diff --git a/chromium-79.0.3945.130-gcc10-use-c++17-to-work-around-ugly-angle-code.patch b/chromium-79.0.3945.130-gcc10-use-c++17-to-work-around-ugly-angle-code.patch
new file mode 100644
index 0000000..8401ea2
--- /dev/null
+++ b/chromium-79.0.3945.130-gcc10-use-c++17-to-work-around-ugly-angle-code.patch
@@ -0,0 +1,28 @@
+diff -up chromium-79.0.3945.130/third_party/angle/BUILD.gn.fixme chromium-79.0.3945.130/third_party/angle/BUILD.gn
+--- chromium-79.0.3945.130/third_party/angle/BUILD.gn.fixme 2020-02-05 15:50:58.810040419 -0500
++++ chromium-79.0.3945.130/third_party/angle/BUILD.gn 2020-02-05 15:52:03.720848822 -0500
+@@ -228,6 +228,9 @@ config("angle_common_config") {
+ if (is_android) {
+ libs = [ "log" ]
+ }
++ if (!is_clang) {
++ cflags_cc = [ "-std=c++17" ]
++ }
+ }
+
+ if (is_win && !angle_is_winuwp) {
+diff -up chromium-79.0.3945.130/third_party/angle/src/common/PackedEnums.h.fixme chromium-79.0.3945.130/third_party/angle/src/common/PackedEnums.h
+--- chromium-79.0.3945.130/third_party/angle/src/common/PackedEnums.h.fixme 2020-02-05 15:35:47.473867905 -0500
++++ chromium-79.0.3945.130/third_party/angle/src/common/PackedEnums.h 2020-02-05 15:36:30.362065300 -0500
+@@ -85,8 +85,9 @@ class PackedEnumMap
+ {
+ // This horrible const_cast pattern is necessary to work around a constexpr limitation.
+ // See https://stackoverflow.com/q/34199774/ . Note that it should be fixed with C++17.
+- const_cast<T &>(const_cast<const Storage &>(
+- mPrivateData)[static_cast<UnderlyingType>(it->first)]) = it->second;
++ // const_cast<T &>(const_cast<const Storage &>(
++ // mPrivateData)[static_cast<UnderlyingType>(it->first)]) = it->second;
++ mPrivateData[static_cast<UnderlyingType>(it->first)] = it->second;
+ }
+ }
+
diff --git a/chromium-80-gcc-abstract.patch b/chromium-80-gcc-abstract.patch
new file mode 100644
index 0000000..190a672
--- /dev/null
+++ b/chromium-80-gcc-abstract.patch
@@ -0,0 +1,41 @@
+In file included from ../../third_party/blink/renderer/platform/heap/persistent.h:18,
+ from ../../third_party/blink/public/platform/web_private_ptr.h:40,
+ from ../../third_party/blink/public/platform/web_media_stream_track.h:33,
+ from ../../third_party/blink/public/platform/web_media_stream_source.h:37,
+ from ../../third_party/blink/renderer/modules/peerconnection/rtc_peer_connection_handler.h:19,
+ from ../../third_party/blink/renderer/modules/peerconnection/rtc_peer_connection_handler.cc:5:
+../../third_party/blink/renderer/platform/wtf/cross_thread_copier.h: In instantiation of 'struct WTF::CrossThreadCopierPassThrough<webrtc::VideoTrackInterface>':
+../../third_party/blink/renderer/modules/peerconnection/adapters/web_rtc_cross_thread_copier.h:169:14: required from here
+../../third_party/blink/renderer/platform/wtf/cross_thread_copier.h:80:15: error: invalid abstract return type 'webrtc::VideoTrackInterface'
+ 80 | static Type Copy(const T& parameter) { return parameter; }
+ | ^~~~
+In file included from ../../third_party/webrtc/api/peer_connection_interface.h:88,
+ from ../../third_party/blink/public/platform/web_rtc_peer_connection_handler.h:39,
+ from ../../third_party/blink/renderer/modules/peerconnection/rtc_peer_connection_handler.h:20,
+ from ../../third_party/blink/renderer/modules/peerconnection/rtc_peer_connection_handler.cc:5:
+../../third_party/webrtc/api/media_stream_interface.h:174:18: note: because the following virtual functions are pure within 'webrtc::VideoTrackInterface':
+ 174 | class RTC_EXPORT VideoTrackInterface
+ | ^~~~~~~~~~~~~~~~~~~
+../../third_party/webrtc/api/media_stream_interface.h:48:16: note: 'virtual void webrtc::NotifierInterface::RegisterObserver(webrtc::ObserverInterface*)'
+ 48 | virtual void RegisterObserver(ObserverInterface* observer) = 0;
+ | ^~~~~~~~~~~~~~~~
+../../third_party/webrtc/api/media_stream_interface.h:49:16: note: 'virtual void webrtc::NotifierInterface::UnregisterObserver(webrtc::ObserverInterface*)'
+ 49 | virtual void UnregisterObserver(ObserverInterface* observer) = 0;
+ | ^~~~~~~~~~~~~~~~~~
+
+diff --git a/third_party/blink/renderer/modules/peerconnection/adapters/web_rtc_cross_thread_copier.h b/third_party/blink/renderer/modules/peerconnection/adapters/web_rtc_cross_thread_copier.h
+index 54cb7d1..0d6c40f 100644
+--- a/third_party/blink/renderer/modules/peerconnection/adapters/web_rtc_cross_thread_copier.h
++++ b/third_party/blink/renderer/modules/peerconnection/adapters/web_rtc_cross_thread_copier.h
+@@ -165,8 +165,9 @@ struct CrossThreadCopier<blink::MediaStreamVideoTrack>
+ };
+
+ template <>
+-struct CrossThreadCopier<webrtc::VideoTrackInterface>
+- : public CrossThreadCopierPassThrough<webrtc::VideoTrackInterface> {
++struct CrossThreadCopier<rtc::scoped_refptr<webrtc::VideoTrackInterface>>
++ : public CrossThreadCopierPassThrough<
++ rtc::scoped_refptr<webrtc::VideoTrackInterface>> {
+ STATIC_ONLY(CrossThreadCopier);
+ };
+
diff --git a/chromium-80-gcc-blink.patch b/chromium-80-gcc-blink.patch
new file mode 100644
index 0000000..2118b46
--- /dev/null
+++ b/chromium-80-gcc-blink.patch
@@ -0,0 +1,45 @@
+../../third_party/blink/renderer/core/editing/commands/delete_selection_command.cc: In member function 'void blink::DeleteSelectionCommand::InitializePositionData(blink::EditingState*)':
+../../third_party/blink/renderer/core/editing/commands/delete_selection_command.cc:256:59: error: no matching function for call to 'EnclosingNodeOfType(blink::Position&, <unresolved overloaded function type>)'
+ 256 | EnclosingNodeOfType(start, &IsA<HTMLTableRowElement>));
+ | ^
+In file included from ../../third_party/blink/renderer/core/editing/commands/delete_selection_command.cc:34:
+../../third_party/blink/renderer/core/editing/editing_utilities.h:112:19: note: candidate: 'blink::Node* blink::EnclosingNodeOfType(const Position&, bool (*)(const blink::Node*), blink::EditingBoundaryCrossingRule)'
+ 112 | CORE_EXPORT Node* EnclosingNodeOfType(
+ | ^~~~~~~~~~~~~~~~~~~
+../../third_party/blink/renderer/core/editing/editing_utilities.h:114:12: note: no known conversion for argument 2 from '<unresolved overloaded function type>' to 'bool (*)(const blink::Node*)'
+ 114 | bool (*node_is_of_type)(const Node*),
+ | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+../../third_party/blink/renderer/core/editing/editing_utilities.h:116:19: note: candidate: 'blink::Node* blink::EnclosingNodeOfType(const PositionInFlatTree&, bool (*)(const blink::Node*), blink::EditingBoundaryCrossingRule)'
+ 116 | CORE_EXPORT Node* EnclosingNodeOfType(
+ | ^~~~~~~~~~~~~~~~~~~
+../../third_party/blink/renderer/core/editing/editing_utilities.h:117:5: note: no known conversion for argument 1 from 'blink::Position' {aka 'blink::PositionTemplate<blink::EditingAlgorithm<blink::NodeTraversal> >'} to 'const PositionInFlatTree&' {aka 'const blink::PositionTemplate<blink::EditingAlgorithm<blink::FlatTreeTraversal> >&'}
+ 117 | const PositionInFlatTree&,
+ | ^~~~~~~~~~~~~~~~~~~~~~~~~
+
+diff --git a/third_party/blink/renderer/core/editing/commands/delete_selection_command.cc b/third_party/blink/renderer/core/editing/commands/delete_selection_command.cc
+index 6ff6906..dd531ae 100644
+--- a/third_party/blink/renderer/core/editing/commands/delete_selection_command.cc
++++ b/third_party/blink/renderer/core/editing/commands/delete_selection_command.cc
+@@ -224,6 +224,10 @@ static Position TrailingWhitespacePosition(const Position& position,
+ return Position();
+ }
+
++static bool IsAHTMLTableRowElement(const Node* node) {
++ return IsA<HTMLTableRowElement>(node);
++}
++
+ void DeleteSelectionCommand::InitializePositionData(
+ EditingState* editing_state) {
+ DCHECK(!GetDocument().NeedsLayoutTreeUpdate());
+@@ -253,9 +257,9 @@ void DeleteSelectionCommand::InitializePositionData(
+ end_root_ = RootEditableElementOf(end);
+
+ start_table_row_ = To<HTMLTableRowElement>(
+- EnclosingNodeOfType(start, &IsA<HTMLTableRowElement>));
++ EnclosingNodeOfType(start, &IsAHTMLTableRowElement));
+ end_table_row_ = To<HTMLTableRowElement>(
+- EnclosingNodeOfType(end, &IsA<HTMLTableRowElement>));
++ EnclosingNodeOfType(end, &IsAHTMLTableRowElement));
+
+ // Don't move content out of a table cell.
+ // If the cell is non-editable, enclosingNodeOfType won't return it by
diff --git a/chromium-80-gcc-incomplete-type.patch b/chromium-80-gcc-incomplete-type.patch
new file mode 100644
index 0000000..8d10620
--- /dev/null
+++ b/chromium-80-gcc-incomplete-type.patch
@@ -0,0 +1,229 @@
+From cdf3e81ff49b200213d67d65558f2919222b60ab Mon Sep 17 00:00:00 2001
+From: Raphael Kubo da Costa <raphael.kubo.da.costa(a)intel.com>
+Date: Mon, 16 Dec 2019 11:39:11 +0000
+Subject: [PATCH] BookmarkModelMerger: Move RemoteTreeNode declaration to header.
+
+This fixes the build with libstdc++ after commit 8f5dad93e58 ("Fix CHECK
+failure due to untracked local nodes"):
+
+/usr/lib/gcc/x86_64-redhat-linux/9/../../../../include/c++/9/bits/stl_pair.h:215:11: error: field has incomplete type 'sync_bookmarks::BookmarkModelMerger::RemoteTreeNode'
+ _T2 second; /// @c second is a copy of the second object
+ ^
+/usr/lib/gcc/x86_64-redhat-linux/9/../../../../include/c++/9/ext/aligned_buffer.h:91:28: note: in instantiation of template class 'std::pair<const std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode>' requested here
+ : std::aligned_storage<sizeof(_Tp), __alignof__(_Tp)>
+ ^
+/usr/lib/gcc/x86_64-redhat-linux/9/../../../../include/c++/9/bits/hashtable_policy.h:233:43: note: in instantiation of template class '__gnu_cxx::__aligned_buffer<std::pair<const std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode> >' requested here
+ __gnu_cxx::__aligned_buffer<_Value> _M_storage;
+ ^
+/usr/lib/gcc/x86_64-redhat-linux/9/../../../../include/c++/9/bits/hashtable_policy.h:264:39: note: in instantiation of template class 'std::__detail::_Hash_node_value_base<std::pair<const std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode> >' requested here
+ struct _Hash_node<_Value, true> : _Hash_node_value_base<_Value>
+ ^
+/usr/lib/gcc/x86_64-redhat-linux/9/../../../../include/c++/9/bits/hashtable_policy.h:2028:25: note: in instantiation of template class 'std::__detail::_Hash_node<std::pair<const std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode>, true>' requested here
+ rebind_traits<typename __node_type::value_type>;
+ ^
+/usr/lib/gcc/x86_64-redhat-linux/9/../../../../include/c++/9/bits/hashtable.h:184:15: note: in instantiation of template class 'std::__detail::_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode>, true> > >
+' requested here
+ private __detail::_Hashtable_alloc<
+ ^
+/usr/lib/gcc/x86_64-redhat-linux/9/../../../../include/c++/9/bits/unordered_map.h:105:18: note: in instantiation of template class 'std::_Hashtable<std::__cxx11::basic_string<char>, std::pair<const std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode>, std::allocator<std::pair<con
+st std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode> >, std::__detail::_Select1st, std::equal_to<std::__cxx11::basic_string<char> >, std::hash<std::string>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__deta
+il::_Hashtable_traits<true, false, true> >' requested here
+ _Hashtable _M_h;
+ ^
+../../components/sync_bookmarks/bookmark_model_merger.h:146:22: note: in instantiation of template class 'std::unordered_map<std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode, std::hash<std::string>, std::equal_to<std::__cxx11::basic_string<char> >, std::allocator<std::pair<con
+st std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode> > >' requested here
+ const RemoteForest remote_forest_;
+ ^
+../../components/sync_bookmarks/bookmark_model_merger.h:53:9: note: forward declaration of 'sync_bookmarks::BookmarkModelMerger::RemoteTreeNode'
+ class RemoteTreeNode;
+ ^
+
+Essentially, the problem is that libstdc++'s std::unordered_map<T, U>
+implementation requires both T and U to be fully declared. I raised the
+problem in https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92770, and GCC's
+position is that we are relying on undefined behavior according to the C++
+standard (https://eel.is/c++draft/requirements#res.on.functions-2.5).
+
+Bug: 957519
+Change-Id: Ife7e435e516932a795bfbe05b2c910c3272878f0
+Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1960156
+Commit-Queue: Raphael Kubo da Costa <raphael.kubo.da.costa(a)intel.com>
+Reviewed-by: Mikel Astiz <mastiz(a)chromium.org>
+Auto-Submit: Raphael Kubo da Costa <raphael.kubo.da.costa(a)intel.com>
+Cr-Commit-Position: refs/heads/master@{#725070}
+---
+
+diff --git a/components/sync_bookmarks/bookmark_model_merger.cc b/components/sync_bookmarks/bookmark_model_merger.cc
+index eae153ef..579848e 100644
+--- a/components/sync_bookmarks/bookmark_model_merger.cc
++++ b/components/sync_bookmarks/bookmark_model_merger.cc
+@@ -5,7 +5,6 @@
+ #include "components/sync_bookmarks/bookmark_model_merger.h"
+
+ #include <algorithm>
+-#include <memory>
+ #include <set>
+ #include <string>
+ #include <utility>
+@@ -205,66 +204,44 @@
+
+ } // namespace
+
+-class BookmarkModelMerger::RemoteTreeNode final {
+- public:
+- // Constructs a tree given |update| as root and recursively all descendants by
+- // traversing |*updates_per_parent_id|. |update| and |updates_per_parent_id|
+- // must not be null. All updates |*updates_per_parent_id| must represent valid
+- // updates. Updates corresponding from descendant nodes are moved away from
+- // |*updates_per_parent_id|.
+- static RemoteTreeNode BuildTree(
+- std::unique_ptr<syncer::UpdateResponseData> update,
+- UpdatesPerParentId* updates_per_parent_id);
++BookmarkModelMerger::RemoteTreeNode::RemoteTreeNode() = default;
+
+- ~RemoteTreeNode() = default;
++BookmarkModelMerger::RemoteTreeNode::~RemoteTreeNode() = default;
+
+- // Allow moves, useful during construction.
+- RemoteTreeNode(RemoteTreeNode&&) = default;
+- RemoteTreeNode& operator=(RemoteTreeNode&&) = default;
++BookmarkModelMerger::RemoteTreeNode::RemoteTreeNode(
++ BookmarkModelMerger::RemoteTreeNode&&) = default;
++BookmarkModelMerger::RemoteTreeNode& BookmarkModelMerger::RemoteTreeNode::
++operator=(BookmarkModelMerger::RemoteTreeNode&&) = default;
+
+- const syncer::EntityData& entity() const { return *update_->entity; }
+- int64_t response_version() const { return update_->response_version; }
++void BookmarkModelMerger::RemoteTreeNode::EmplaceSelfAndDescendantsByGUID(
++ std::unordered_map<std::string, const RemoteTreeNode*>*
++ guid_to_remote_node_map) const {
++ DCHECK(guid_to_remote_node_map);
+
+- // Direct children nodes, sorted by ascending unique position. These are
+- // guaranteed to be valid updates (e.g. IsValidBookmarkSpecifics()).
+- const std::vector<RemoteTreeNode>& children() const { return children_; }
++ const std::string& guid = entity().specifics.bookmark().guid();
++ if (!guid.empty()) {
++ DCHECK(base::IsValidGUID(guid));
+
+- // Recursively emplaces all GUIDs (this node and descendants) into
+- // |*guid_to_remote_node_map|, which must not be null.
+- void EmplaceSelfAndDescendantsByGUID(
+- std::unordered_map<std::string, const RemoteTreeNode*>*
+- guid_to_remote_node_map) const {
+- DCHECK(guid_to_remote_node_map);
+-
+- const std::string& guid = entity().specifics.bookmark().guid();
+- if (!guid.empty()) {
+- DCHECK(base::IsValidGUID(guid));
+-
+- // Duplicate GUIDs have been sorted out before.
+- bool success = guid_to_remote_node_map->emplace(guid, this).second;
+- DCHECK(success);
+- }
+-
+- for (const RemoteTreeNode& child : children_) {
+- child.EmplaceSelfAndDescendantsByGUID(guid_to_remote_node_map);
+- }
++ // Duplicate GUIDs have been sorted out before.
++ bool success = guid_to_remote_node_map->emplace(guid, this).second;
++ DCHECK(success);
+ }
+
+- private:
+- static bool UniquePositionLessThan(const RemoteTreeNode& lhs,
+- const RemoteTreeNode& rhs) {
+- const syncer::UniquePosition a_pos =
+- syncer::UniquePosition::FromProto(lhs.entity().unique_position);
+- const syncer::UniquePosition b_pos =
+- syncer::UniquePosition::FromProto(rhs.entity().unique_position);
+- return a_pos.LessThan(b_pos);
++ for (const RemoteTreeNode& child : children_) {
++ child.EmplaceSelfAndDescendantsByGUID(guid_to_remote_node_map);
+ }
++}
+
+- RemoteTreeNode() = default;
+-
+- std::unique_ptr<syncer::UpdateResponseData> update_;
+- std::vector<RemoteTreeNode> children_;
+-};
++// static
++bool BookmarkModelMerger::RemoteTreeNode::UniquePositionLessThan(
++ const RemoteTreeNode& lhs,
++ const RemoteTreeNode& rhs) {
++ const syncer::UniquePosition a_pos =
++ syncer::UniquePosition::FromProto(lhs.entity().unique_position);
++ const syncer::UniquePosition b_pos =
++ syncer::UniquePosition::FromProto(rhs.entity().unique_position);
++ return a_pos.LessThan(b_pos);
++}
+
+ // static
+ BookmarkModelMerger::RemoteTreeNode
+diff --git a/components/sync_bookmarks/bookmark_model_merger.h b/components/sync_bookmarks/bookmark_model_merger.h
+index 9b59200..bf0783ec 100644
+--- a/components/sync_bookmarks/bookmark_model_merger.h
++++ b/components/sync_bookmarks/bookmark_model_merger.h
+@@ -5,6 +5,7 @@
+ #ifndef COMPONENTS_SYNC_BOOKMARKS_BOOKMARK_MODEL_MERGER_H_
+ #define COMPONENTS_SYNC_BOOKMARKS_BOOKMARK_MODEL_MERGER_H_
+
++#include <memory>
+ #include <string>
+ #include <unordered_map>
+ #include <vector>
+@@ -50,7 +51,52 @@
+
+ private:
+ // Internal representation of a remote tree, composed of nodes.
+- class RemoteTreeNode;
++ class RemoteTreeNode final {
++ private:
++ using UpdatesPerParentId =
++ std::unordered_map<base::StringPiece,
++ syncer::UpdateResponseDataList,
++ base::StringPieceHash>;
++
++ public:
++ // Constructs a tree given |update| as root and recursively all descendants
++ // by traversing |*updates_per_parent_id|. |update| and
++ // |updates_per_parent_id| must not be null. All updates
++ // |*updates_per_parent_id| must represent valid updates. Updates
++ // corresponding from descendant nodes are moved away from
++ // |*updates_per_parent_id|.
++ static RemoteTreeNode BuildTree(
++ std::unique_ptr<syncer::UpdateResponseData> update,
++ UpdatesPerParentId* updates_per_parent_id);
++
++ ~RemoteTreeNode();
++
++ // Allow moves, useful during construction.
++ RemoteTreeNode(RemoteTreeNode&&);
++ RemoteTreeNode& operator=(RemoteTreeNode&&);
++
++ const syncer::EntityData& entity() const { return *update_->entity; }
++ int64_t response_version() const { return update_->response_version; }
++
++ // Direct children nodes, sorted by ascending unique position. These are
++ // guaranteed to be valid updates (e.g. IsValidBookmarkSpecifics()).
++ const std::vector<RemoteTreeNode>& children() const { return children_; }
++
++ // Recursively emplaces all GUIDs (this node and descendants) into
++ // |*guid_to_remote_node_map|, which must not be null.
++ void EmplaceSelfAndDescendantsByGUID(
++ std::unordered_map<std::string, const RemoteTreeNode*>*
++ guid_to_remote_node_map) const;
++
++ private:
++ static bool UniquePositionLessThan(const RemoteTreeNode& lhs,
++ const RemoteTreeNode& rhs);
++
++ RemoteTreeNode();
++
++ std::unique_ptr<syncer::UpdateResponseData> update_;
++ std::vector<RemoteTreeNode> children_;
++ };
+
+ // A forest composed of multiple trees where the root of each tree represents
+ // a permanent node, keyed by server-defined unique tag of the root.
diff --git a/chromium-80-gcc-permissive.patch b/chromium-80-gcc-permissive.patch
new file mode 100644
index 0000000..c7aef49
--- /dev/null
+++ b/chromium-80-gcc-permissive.patch
@@ -0,0 +1,33 @@
+In file included from ../../media/base/media_log_properties.h:13,
+ from ../../media/base/media_log.h:23,
+ from ../../media/filters/frame_processor.h:15,
+ from ../../media/filters/frame_processor.cc:5:
+../../media/base/media_log_properties_helper.h:86:8: error: extra qualification not allowed [-fpermissive]
+ 86 | struct internal::MediaLogPropertyTypeConverter<media::AudioDecoderConfig> {
+ | ^~~~~~~~
+../../media/base/media_log_properties_helper.h:86:75: error: explicit specialization of non-template 'media::internal::<unnamed struct>'
+ 86 | struct internal::MediaLogPropertyTypeConverter<media::AudioDecoderConfig> {
+ | ^
+
+diff --git a/media/base/media_log_properties_helper.h b/media/base/media_log_properties_helper.h
+index 95ff70a..549b003 100644
+--- a/media/base/media_log_properties_helper.h
++++ b/media/base/media_log_properties_helper.h
+@@ -83,7 +83,7 @@ struct MediaLogPropertyTypeConverter<std::vector<T>> {
+
+ // Specializer for sending AudioDecoderConfigs to the media tab in devtools.
+ template <>
+-struct internal::MediaLogPropertyTypeConverter<media::AudioDecoderConfig> {
++struct MediaLogPropertyTypeConverter<media::AudioDecoderConfig> {
+ static base::Value Convert(const AudioDecoderConfig& value) {
+ base::Value result(base::Value::Type::DICTIONARY);
+ result.SetStringKey("codec", GetCodecName(value.codec()));
+@@ -114,7 +114,7 @@ struct internal::MediaLogPropertyTypeConverter<media::AudioDecoderConfig> {
+
+ // Specializer for sending VideoDecoderConfigs to the media tab in devtools.
+ template <>
+-struct internal::MediaLogPropertyTypeConverter<VideoDecoderConfig> {
++struct MediaLogPropertyTypeConverter<VideoDecoderConfig> {
+ static base::Value Convert(const VideoDecoderConfig& value) {
+ base::Value result(base::Value::Type::DICTIONARY);
+ result.SetStringKey("codec", GetCodecName(value.codec()));
diff --git a/chromium-80-gcc-quiche.patch b/chromium-80-gcc-quiche.patch
new file mode 100644
index 0000000..aa3d541
--- /dev/null
+++ b/chromium-80-gcc-quiche.patch
@@ -0,0 +1,30 @@
+From 00f47df999c9b19e80fdc01db0ae9ca1b6a12b3a Mon Sep 17 00:00:00 2001
+From: vasilvv <vasilvv(a)google.com>
+Date: Wed, 03 Apr 2019 13:58:53 -0700
+Subject: [PATCH] GCC: do not delete move constructor of QuicStreamSendBuffer
+
+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 <jose.dapena(a)lge.com> at https://quiche-review.googlesource.com/c/quiche/+/2420
+
+PiperOrigin-RevId: 241800134
+Change-Id: I4e3c97d6e5895d85340e8c1b740e6196d9104066
+---
+
+diff --git a/net/third_party/quiche/src/quic/core/quic_stream_send_buffer.h b/net/third_party/quiche/src/quic/core/quic_stream_send_buffer.h
+index e34514b..74e9d0d 100644
+--- a/net/third_party/quiche/src/quic/core/quic_stream_send_buffer.h
++++ b/net/third_party/quiche/src/quic/core/quic_stream_send_buffer.h
+@@ -62,7 +62,7 @@
+ 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.
diff --git a/chromium-80-include.patch b/chromium-80-include.patch
new file mode 100644
index 0000000..dd85de7
--- /dev/null
+++ b/chromium-80-include.patch
@@ -0,0 +1,33 @@
+From 8273f4d3130e06fd8b6bef87b07c936304b971d9 Mon Sep 17 00:00:00 2001
+From: Raphael Kubo da Costa <raphael.kubo.da.costa(a)intel.com>
+Date: Tue, 10 Dec 2019 20:59:57 +0000
+Subject: [PATCH] [cros search service]: Include <cmath> for std::pow()
+
+IWYU. Follow up to commit 2b2ea3c09b ("[cros search service] Move shared
+string matching functions to //chrome"), which broke the libstdc++ build:
+
+ ../../chrome/common/string_matching/fuzzy_tokenized_string_match.cc:199:14: error: no member named 'pow' in namespace 'std'
+ std::pow(partial_match_penalty_rate, long_start - current - 1);
+ ~~~~~^
+
+Bug: 957519
+Change-Id: I66f61cb4f93cfa0bfa3d1b00ba391ddd8f31a7fb
+Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1960310
+Auto-Submit: Raphael Kubo da Costa <raphael.kubo.da.costa(a)intel.com>
+Reviewed-by: Jia Meng <jiameng(a)chromium.org>
+Commit-Queue: Raphael Kubo da Costa <raphael.kubo.da.costa(a)intel.com>
+Cr-Commit-Position: refs/heads/master@{#723499}
+---
+
+diff --git a/chrome/common/string_matching/fuzzy_tokenized_string_match.cc b/chrome/common/string_matching/fuzzy_tokenized_string_match.cc
+index 8351fa7..884ef63 100644
+--- a/chrome/common/string_matching/fuzzy_tokenized_string_match.cc
++++ b/chrome/common/string_matching/fuzzy_tokenized_string_match.cc
+@@ -5,6 +5,7 @@
+ #include "chrome/common/string_matching/fuzzy_tokenized_string_match.h"
+
+ #include <algorithm>
++#include <cmath>
+ #include <iterator>
+
+ #include "base/i18n/case_conversion.h"
diff --git a/chromium-80.0.3987.106-missing-cstddef-header.patch b/chromium-80.0.3987.106-missing-cstddef-header.patch
new file mode 100644
index 0000000..832cf02
--- /dev/null
+++ b/chromium-80.0.3987.106-missing-cstddef-header.patch
@@ -0,0 +1,44 @@
+diff -up chromium-80.0.3987.106/chrome/browser/search/background/ntp_backgrounds.h.missing-cstddef chromium-80.0.3987.106/chrome/browser/search/background/ntp_backgrounds.h
+--- chromium-80.0.3987.106/chrome/browser/search/background/ntp_backgrounds.h.missing-cstddef 2020-02-18 08:42:38.088243182 -0500
++++ chromium-80.0.3987.106/chrome/browser/search/background/ntp_backgrounds.h 2020-02-18 08:42:59.679782858 -0500
+@@ -6,6 +6,7 @@
+ #define CHROME_BROWSER_SEARCH_BACKGROUND_NTP_BACKGROUNDS_H_
+
+ #include <array>
++#include <cstddef>
+
+ class GURL;
+
+diff -up chromium-80.0.3987.106/media/cdm/supported_cdm_versions.h.missing-cstddef chromium-80.0.3987.106/media/cdm/supported_cdm_versions.h
+--- chromium-80.0.3987.106/media/cdm/supported_cdm_versions.h.missing-cstddef 2020-02-17 16:26:51.661246220 -0500
++++ chromium-80.0.3987.106/media/cdm/supported_cdm_versions.h 2020-02-17 16:26:51.662246200 -0500
+@@ -6,6 +6,7 @@
+ #define MEDIA_CDM_SUPPORTED_CDM_VERSIONS_H_
+
+ #include <array>
++#include <cstddef>
+
+ #include "media/base/media_export.h"
+ #include "media/cdm/api/content_decryption_module.h"
+diff -up chromium-80.0.3987.106/third_party/angle/include/platform/Platform.h.missing-cstddef chromium-80.0.3987.106/third_party/angle/include/platform/Platform.h
+--- chromium-80.0.3987.106/third_party/angle/include/platform/Platform.h.missing-cstddef 2020-02-17 16:26:07.433130572 -0500
++++ chromium-80.0.3987.106/third_party/angle/include/platform/Platform.h 2020-02-17 16:26:07.434130552 -0500
+@@ -11,6 +11,7 @@
+
+ #include <stdint.h>
+ #include <array>
++#include <cstddef>
+
+ #define EGL_PLATFORM_ANGLE_PLATFORM_METHODS_ANGLEX 0x3482
+
+diff -up chromium-80.0.3987.106/third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h.missing-cstddef chromium-80.0.3987.106/third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h
+--- chromium-80.0.3987.106/third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h.missing-cstddef 2020-02-17 16:23:41.385050827 -0500
++++ chromium-80.0.3987.106/third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h 2020-02-17 16:23:41.368051167 -0500
+@@ -12,6 +12,7 @@
+ #define MODULES_AUDIO_PROCESSING_AEC3_CLOCKDRIFT_DETECTOR_H_
+
+ #include <array>
++#include <cstddef>
+
+ namespace webrtc {
+
diff --git a/chromium-80.0.3987.106-missing-cstring-header.patch b/chromium-80.0.3987.106-missing-cstring-header.patch
new file mode 100644
index 0000000..646dac6
--- /dev/null
+++ b/chromium-80.0.3987.106-missing-cstring-header.patch
@@ -0,0 +1,34 @@
+diff -up chromium-80.0.3987.106/third_party/webrtc/audio/utility/channel_mixer.cc.missing-cstring chromium-80.0.3987.106/third_party/webrtc/audio/utility/channel_mixer.cc
+--- chromium-80.0.3987.106/third_party/webrtc/audio/utility/channel_mixer.cc.missing-cstring 2020-02-21 13:19:47.077683105 -0500
++++ chromium-80.0.3987.106/third_party/webrtc/audio/utility/channel_mixer.cc 2020-02-21 13:19:47.077683105 -0500
+@@ -8,6 +8,8 @@
+ * be found in the AUTHORS file in the root of the source tree.
+ */
+
++#include <cstring>
++
+ #include "audio/utility/channel_mixer.h"
+
+ #include "audio/utility/channel_mixing_matrix.h"
+diff -up chromium-80.0.3987.106/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc.missing-cstring chromium-80.0.3987.106/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc
+--- chromium-80.0.3987.106/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc.missing-cstring 2020-02-21 13:19:48.171659179 -0500
++++ chromium-80.0.3987.106/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc 2020-02-21 13:19:48.174659113 -0500
+@@ -17,6 +17,7 @@
+ #include <spa/param/video/raw-utils.h>
+ #include <spa/support/type-map.h>
+
++#include <cstring>
+ #include <memory>
+ #include <utility>
+
+diff -up chromium-80.0.3987.106/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc.missing-cstring chromium-80.0.3987.106/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc
+--- chromium-80.0.3987.106/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc.missing-cstring 2020-02-21 13:30:09.609068057 -0500
++++ chromium-80.0.3987.106/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc 2020-02-21 13:30:23.791757875 -0500
+@@ -10,6 +10,7 @@
+
+ #include "modules/video_coding/utility/ivf_file_reader.h"
+
++#include <cstring>
+ #include <string>
+ #include <vector>
+
diff --git a/chromium-80.0.3987.87-fix-for-c++17.patch b/chromium-80.0.3987.87-fix-for-c++17.patch
new file mode 100644
index 0000000..8639e82
--- /dev/null
+++ b/chromium-80.0.3987.87-fix-for-c++17.patch
@@ -0,0 +1,178 @@
+diff -up chromium-80.0.3987.87/base/containers/flat_tree.h.c17 chromium-80.0.3987.87/base/containers/flat_tree.h
+--- chromium-80.0.3987.87/base/containers/flat_tree.h.c17 2020-02-10 10:48:05.982500272 -0500
++++ chromium-80.0.3987.87/base/containers/flat_tree.h 2020-02-10 11:04:42.148507892 -0500
+@@ -776,7 +776,11 @@ template <class Key, class Value, class
+ template <typename K>
+ auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::find(const K& key)
+ -> iterator {
++#ifdef __cpp_lib_as_const
++ return const_cast_it(std::as_const(*this).find(key));
++#else
+ return const_cast_it(as_const(*this).find(key));
++#endif
+ }
+
+ template <class Key, class Value, class GetKeyFromValue, class KeyCompare>
+@@ -799,7 +803,11 @@ template <class Key, class Value, class
+ template <typename K>
+ auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::equal_range(
+ const K& key) -> std::pair<iterator, iterator> {
++#ifdef __cpp_lib_as_const
++ auto res = std::as_const(*this).equal_range(key);
++#else
+ auto res = as_const(*this).equal_range(key);
++#endif
+ return {const_cast_it(res.first), const_cast_it(res.second)};
+ }
+
+@@ -820,7 +828,11 @@ template <class Key, class Value, class
+ template <typename K>
+ auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::lower_bound(
+ const K& key) -> iterator {
++#ifdef __cpp_lib_as_const
++ return const_cast_it(std::as_const(*this).lower_bound(key));
++#else
+ return const_cast_it(as_const(*this).lower_bound(key));
++#endif
+ }
+
+ template <class Key, class Value, class GetKeyFromValue, class KeyCompare>
+@@ -841,7 +853,11 @@ template <class Key, class Value, class
+ template <typename K>
+ auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::upper_bound(
+ const K& key) -> iterator {
++#ifdef __cpp_lib_as_const
++ return const_cast_it(std::as_const(*this).upper_bound(key));
++#else
+ return const_cast_it(as_const(*this).upper_bound(key));
++#endif
+ }
+
+ template <class Key, class Value, class GetKeyFromValue, class KeyCompare>
+diff -up chromium-80.0.3987.106/third_party/webrtc/BUILD.gn.c17fix chromium-80.0.3987.106/third_party/webrtc/BUILD.gn
+--- chromium-80.0.3987.106/third_party/webrtc/BUILD.gn.c17fix 2020-02-20 15:00:23.439563056 -0500
++++ chromium-80.0.3987.106/third_party/webrtc/BUILD.gn 2020-02-20 15:01:36.282355645 -0500
+@@ -237,6 +237,10 @@ config("common_config") {
+ cflags_objc = []
+ defines = []
+
++ if (!is_clang) {
++ cflags_cc += [ "-std=c++17" ]
++ }
++
+ if (rtc_enable_protobuf) {
+ defines += [ "WEBRTC_ENABLE_PROTOBUF=1" ]
+ } else {
+diff -up chromium-80.0.3987.106/third_party/abseil-cpp/BUILD.gn.c17fix chromium-80.0.3987.106/third_party/abseil-cpp/BUILD.gn
+--- chromium-80.0.3987.106/third_party/abseil-cpp/BUILD.gn.c17fix 2020-02-21 15:12:14.413937754 -0500
++++ chromium-80.0.3987.106/third_party/abseil-cpp/BUILD.gn 2020-02-21 15:12:59.128967149 -0500
+@@ -46,6 +46,10 @@ config("absl_default_cflags_cc") {
+ cflags_cc += [ "-Wbitfield-enum-conversion" ]
+ }
+ }
++ if (!is_clang) {
++ cflags_cc = [ "-std=c++17" ]
++ }
++
+ if (is_win) {
+ cflags_cc += [
+ "/wd4005", # macro-redefinition
+diff -up chromium-80.0.3987.106/third_party/openscreen/src/tools/cddl/BUILD.gn.c17fix chromium-80.0.3987.106/third_party/openscreen/src/tools/cddl/BUILD.gn
+--- chromium-80.0.3987.106/third_party/openscreen/src/tools/cddl/BUILD.gn.c17fix 2020-02-21 15:35:56.269180510 -0500
++++ chromium-80.0.3987.106/third_party/openscreen/src/tools/cddl/BUILD.gn 2020-02-21 15:42:12.718900742 -0500
+@@ -22,6 +22,10 @@ if (current_toolchain == host_toolchain)
+ "../../third_party/abseil",
+ ]
+
++ if (!is_clang) {
++ cflags_cc = [ "-std=c++17" ]
++ }
++
+ configs += [ "../../build:openscreen_include_dirs" ]
+ }
+ }
+diff -up chromium-80.0.3987.106/build/config/compiler/BUILD.gn.c17hack chromium-80.0.3987.106/build/config/compiler/BUILD.gn
+--- chromium-80.0.3987.106/build/config/compiler/BUILD.gn.c17hack 2020-02-21 16:09:22.871980103 -0500
++++ chromium-80.0.3987.106/build/config/compiler/BUILD.gn 2020-02-21 16:09:28.606856106 -0500
+@@ -570,7 +570,7 @@ config("compiler") {
+ if (cxx11_override) {
+ cflags_cc += [ "-std=c++11" ]
+ } else {
+- cflags_cc += [ "-std=c++14" ]
++ cflags_cc += [ "-std=c++17" ]
+ }
+ }
+
+diff -up chromium-80.0.3987.106/third_party/openscreen/src/build/config/BUILD.gn.c17fix chromium-80.0.3987.106/third_party/openscreen/src/build/config/BUILD.gn
+--- chromium-80.0.3987.106/third_party/openscreen/src/build/config/BUILD.gn.c17fix 2020-02-24 08:55:52.674819783 -0500
++++ chromium-80.0.3987.106/third_party/openscreen/src/build/config/BUILD.gn 2020-02-24 08:56:08.665466317 -0500
+@@ -67,8 +67,8 @@ config("openscreen_code") {
+ "-fno-strict-aliasing", # See http://crbug.com/32204
+ ]
+
+- cflags_cc = [ "-std=c++14" ]
+- cflags_objcc = [ "-std=c++14" ]
++ cflags_cc = [ "-std=c++17" ]
++ cflags_objcc = [ "-std=c++17" ]
+
+ ldflags = [ "-Werror" ]
+
+diff -up chromium-80.0.3987.106/build/config/compiler/BUILD.gn.c17fix chromium-80.0.3987.106/build/config/compiler/BUILD.gn
+--- chromium-80.0.3987.106/build/config/compiler/BUILD.gn.c17fix 2020-02-24 09:39:14.659536642 -0500
++++ chromium-80.0.3987.106/build/config/compiler/BUILD.gn 2020-02-24 09:39:23.098366657 -0500
+@@ -553,7 +553,7 @@ config("compiler") {
+ # Override Chromium's default for projects that wish to stay on C++11.
+ cflags_cc += [ "-std=${standard_prefix}++11" ]
+ } else {
+- cflags_cc += [ "-std=${standard_prefix}++14" ]
++ cflags_cc += [ "-std=${standard_prefix}++17" ]
+ }
+ } else if (!is_win && !is_nacl) {
+ if (target_os == "android") {
+diff -up chromium-80.0.3987.106/third_party/openscreen/src/platform/api/task_runner.h.spot chromium-80.0.3987.106/third_party/openscreen/src/platform/api/task_runner.h
+--- chromium-80.0.3987.106/third_party/openscreen/src/platform/api/task_runner.h.spot 2020-02-24 10:56:54.645126949 -0500
++++ chromium-80.0.3987.106/third_party/openscreen/src/platform/api/task_runner.h 2020-02-24 10:57:26.788407144 -0500
+@@ -22,7 +22,7 @@ namespace platform {
+ // that A shall run before B.
+ class TaskRunner {
+ public:
+- using Task = std::packaged_task<void() noexcept>;
++ using Task = std::packaged_task<void()>;
+
+ virtual ~TaskRunner() = default;
+
+diff -up chromium-80.0.3987.106/base/containers/circular_deque.h.c17fix chromium-80.0.3987.106/base/containers/circular_deque.h
+--- chromium-80.0.3987.106/base/containers/circular_deque.h.c17fix 2020-02-24 14:42:14.163076162 -0500
++++ chromium-80.0.3987.106/base/containers/circular_deque.h 2020-02-24 14:43:38.393120439 -0500
+@@ -522,11 +522,19 @@ class circular_deque {
+ return buffer_[i - right_size];
+ }
+ value_type& at(size_type i) {
++#ifdef __cpp_lib_as_const
++ return const_cast<value_type&>(std::as_const(*this).at(i));
++#else
+ return const_cast<value_type&>(as_const(*this).at(i));
++#endif
+ }
+
+ value_type& operator[](size_type i) {
++#ifdef __cpp_lib_as_const
++ return const_cast<value_type&>(std::as_const(*this)[i]);
++#else
+ return const_cast<value_type&>(as_const(*this)[i]);
++#endif
+ }
+
+ const value_type& operator[](size_type i) const { return at(i); }
+diff -up chromium-80.0.3987.106/device/bluetooth/bluetooth_adapter.cc.c17fix chromium-80.0.3987.106/device/bluetooth/bluetooth_adapter.cc
+--- chromium-80.0.3987.106/device/bluetooth/bluetooth_adapter.cc.c17fix 2020-02-24 16:09:58.810502665 -0500
++++ chromium-80.0.3987.106/device/bluetooth/bluetooth_adapter.cc 2020-02-24 16:10:35.484705843 -0500
+@@ -638,7 +638,7 @@ void BluetoothAdapter::RecordBluetoothDi
+ }
+
+ // static
+-constexpr base::TimeDelta BluetoothAdapter::timeoutSec =
++const extern base::TimeDelta BluetoothAdapter::timeoutSec =
+ base::TimeDelta::FromSeconds(180);
+
+ } // namespace device
diff --git a/chromium-80.0.3987.87-libpipewire-0.3.patch b/chromium-80.0.3987.87-libpipewire-0.3.patch
new file mode 100644
index 0000000..6de6081
--- /dev/null
+++ b/chromium-80.0.3987.87-libpipewire-0.3.patch
@@ -0,0 +1,12 @@
+diff -up chromium-80.0.3987.87/third_party/webrtc/modules/desktop_capture/BUILD.gn.pipewire03 chromium-80.0.3987.87/third_party/webrtc/modules/desktop_capture/BUILD.gn
+--- chromium-80.0.3987.87/third_party/webrtc/modules/desktop_capture/BUILD.gn.pipewire03 2020-02-11 13:12:07.006990450 -0500
++++ chromium-80.0.3987.87/third_party/webrtc/modules/desktop_capture/BUILD.gn 2020-02-11 13:12:16.294795251 -0500
+@@ -190,7 +190,7 @@ if (is_linux) {
+
+ if (rtc_link_pipewire) {
+ pkg_config("pipewire") {
+- packages = [ "libpipewire-0.2" ]
++ packages = [ "libpipewire-0.3", "libspa-0.2" ]
+ }
+ } else {
+ # When libpipewire is not directly linked, use stubs to allow for dlopening of
diff --git a/chromium-80.0.3987.87-missing-cstddef-header.patch b/chromium-80.0.3987.87-missing-cstddef-header.patch
new file mode 100644
index 0000000..3ea2c22
--- /dev/null
+++ b/chromium-80.0.3987.87-missing-cstddef-header.patch
@@ -0,0 +1,22 @@
+diff -up chromium-80.0.3987.87/media/cdm/supported_cdm_versions.h.missing-cstddef chromium-80.0.3987.87/media/cdm/supported_cdm_versions.h
+--- chromium-80.0.3987.87/media/cdm/supported_cdm_versions.h.missing-cstddef 2020-02-10 12:07:42.863507440 -0500
++++ chromium-80.0.3987.87/media/cdm/supported_cdm_versions.h 2020-02-10 12:07:53.807364746 -0500
+@@ -6,6 +6,7 @@
+ #define MEDIA_CDM_SUPPORTED_CDM_VERSIONS_H_
+
+ #include <array>
++#include <cstddef>
+
+ #include "media/base/media_export.h"
+ #include "media/cdm/api/content_decryption_module.h"
+diff -up chromium-80.0.3987.87/third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h.missing-cstddef chromium-80.0.3987.87/third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h
+--- chromium-80.0.3987.87/third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h.missing-cstddef 2020-02-10 11:11:11.733934021 -0500
++++ chromium-80.0.3987.87/third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h 2020-02-10 11:11:11.724934173 -0500
+@@ -12,6 +12,7 @@
+ #define MODULES_AUDIO_PROCESSING_AEC3_CLOCKDRIFT_DETECTOR_H_
+
+ #include <array>
++#include <cstddef>
+
+ namespace webrtc {
+
diff --git a/chromium-80.0.3987.87-missing-cstdint-header.patch b/chromium-80.0.3987.87-missing-cstdint-header.patch
new file mode 100644
index 0000000..e61042f
--- /dev/null
+++ b/chromium-80.0.3987.87-missing-cstdint-header.patch
@@ -0,0 +1,55 @@
+diff -up chromium-80.0.3987.106/third_party/perfetto/include/perfetto/base/task_runner.h.missing-cstdint chromium-80.0.3987.106/third_party/perfetto/include/perfetto/base/task_runner.h
+--- chromium-80.0.3987.106/third_party/perfetto/include/perfetto/base/task_runner.h.missing-cstdint 2020-02-21 12:29:43.393191877 -0500
++++ chromium-80.0.3987.106/third_party/perfetto/include/perfetto/base/task_runner.h 2020-02-21 12:29:43.393191877 -0500
+@@ -17,6 +17,7 @@
+ #ifndef INCLUDE_PERFETTO_BASE_TASK_RUNNER_H_
+ #define INCLUDE_PERFETTO_BASE_TASK_RUNNER_H_
+
++#include <cstdint>
+ #include <functional>
+
+ #include "perfetto/base/export.h"
+diff -up chromium-80.0.3987.106/third_party/webrtc/call/rtx_receive_stream.h.missing-cstdint chromium-80.0.3987.106/third_party/webrtc/call/rtx_receive_stream.h
+--- chromium-80.0.3987.106/third_party/webrtc/call/rtx_receive_stream.h.missing-cstdint 2020-02-21 12:30:30.739332871 -0500
++++ chromium-80.0.3987.106/third_party/webrtc/call/rtx_receive_stream.h 2020-02-21 12:30:30.747332725 -0500
+@@ -11,6 +11,7 @@
+ #ifndef CALL_RTX_RECEIVE_STREAM_H_
+ #define CALL_RTX_RECEIVE_STREAM_H_
+
++#include <cstdint>
+ #include <map>
+
+ #include "call/rtp_packet_sink_interface.h"
+diff -up chromium-80.0.3987.106/third_party/webrtc/common_video/h264/pps_parser.h.missing-cstdint chromium-80.0.3987.106/third_party/webrtc/common_video/h264/pps_parser.h
+--- chromium-80.0.3987.106/third_party/webrtc/common_video/h264/pps_parser.h.missing-cstdint 2020-02-21 12:30:31.564317903 -0500
++++ chromium-80.0.3987.106/third_party/webrtc/common_video/h264/pps_parser.h 2020-02-21 12:30:31.561317957 -0500
+@@ -11,6 +11,7 @@
+ #ifndef COMMON_VIDEO_H264_PPS_PARSER_H_
+ #define COMMON_VIDEO_H264_PPS_PARSER_H_
+
++#include <cstdint>
+ #include "absl/types/optional.h"
+
+ namespace rtc {
+diff -up chromium-80.0.3987.106/third_party/webrtc/common_video/h264/sps_parser.h.missing-cstdint chromium-80.0.3987.106/third_party/webrtc/common_video/h264/sps_parser.h
+--- chromium-80.0.3987.106/third_party/webrtc/common_video/h264/sps_parser.h.missing-cstdint 2020-02-21 12:30:31.565317885 -0500
++++ chromium-80.0.3987.106/third_party/webrtc/common_video/h264/sps_parser.h 2020-02-21 12:30:31.565317885 -0500
+@@ -11,6 +11,7 @@
+ #ifndef COMMON_VIDEO_H264_SPS_PARSER_H_
+ #define COMMON_VIDEO_H264_SPS_PARSER_H_
+
++#include <cstdint>
+ #include "absl/types/optional.h"
+
+ namespace rtc {
+diff -up chromium-80.0.3987.106/third_party/webrtc/modules/include/module_common_types_public.h.missing-cstdint chromium-80.0.3987.106/third_party/webrtc/modules/include/module_common_types_public.h
+--- chromium-80.0.3987.106/third_party/webrtc/modules/include/module_common_types_public.h.missing-cstdint 2020-02-21 12:52:16.946512744 -0500
++++ chromium-80.0.3987.106/third_party/webrtc/modules/include/module_common_types_public.h 2020-02-21 12:52:26.220312608 -0500
+@@ -11,6 +11,7 @@
+ #ifndef MODULES_INCLUDE_MODULE_COMMON_TYPES_PUBLIC_H_
+ #define MODULES_INCLUDE_MODULE_COMMON_TYPES_PUBLIC_H_
+
++#include <cstdint>
+ #include <limits>
+
+ #include "absl/types/optional.h"
diff --git a/chromium-80.0.3987.87-missing-string-header.patch b/chromium-80.0.3987.87-missing-string-header.patch
new file mode 100644
index 0000000..6bb4c7d
--- /dev/null
+++ b/chromium-80.0.3987.87-missing-string-header.patch
@@ -0,0 +1,11 @@
+diff -up chromium-80.0.3987.87/base/trace_event/trace_event_memory_overhead.h.missing-string chromium-80.0.3987.87/base/trace_event/trace_event_memory_overhead.h
+--- chromium-80.0.3987.87/base/trace_event/trace_event_memory_overhead.h.missing-string 2020-02-06 16:47:15.707676509 -0500
++++ chromium-80.0.3987.87/base/trace_event/trace_event_memory_overhead.h 2020-02-06 16:47:23.782504337 -0500
+@@ -8,6 +8,7 @@
+ #include <stddef.h>
+ #include <stdint.h>
+
++#include <string>
+ #include <unordered_map>
+
+ #include "base/base_export.h"
diff --git a/chromium-browser.sh b/chromium-browser.sh
index 97607b9..d76aabe 100755
--- a/chromium-browser.sh
+++ b/chromium-browser.sh
@@ -39,6 +39,9 @@ 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
+# Disable allow_rgb_configs to fix odd color and vaapi issues with Mesa
+export allow_rgb10_configs=false
+
CHROMIUM_DISTRO_FLAGS=" --enable-plugins \
--enable-extensions \
--enable-user-scripts \
diff --git a/chromium.spec b/chromium.spec
index 6f4a439..ac782c0 100644
--- a/chromium.spec
+++ b/chromium.spec
@@ -9,18 +9,16 @@
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
+
+# This was faster when it worked, but it didn't always.
+# As of chromium 80, it is no longer supported. RIP.
%global use_jumbo 0
-%else
-%global use_jumbo 1
-%endif
# We usually want this.
%global build_headless 1
# We'd like to always have this on.
-%global use_vaapi 0
+%global use_vaapi 1
# 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)
@@ -71,9 +69,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|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_lib|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|libmirclient.so.9|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|libperformace_manager_public_mojom_blink|libperformace_manager_public_mojom_shared|libperformace_manager_public_mojom|libplatform|libplatform_window_handler_libs|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libproperties|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|libvk_swiftshader|libvr_base|libvr_common|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libvulkan_ycbcr_info|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|libfontconfig
+%global privlibs 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_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_ipc|libcc_mojo_embedder|libcc_paint|libcertificate_matching|libcert_verifier|libchrome_features|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcolor_utils|libcommon|libcompositor|libcontent|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom|libcontent_service_mojom_shared|libcontent_settings_features|libcrash_key_lib|libcrcrypto|libcrdtp|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevices|libdevice_vr|libdevice_vr_mojo_bindings|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevice_vr_test_mojo_bindings|libdevice_vr_test_mojo_bindings_blink|libdevice_vr_test_mojo_bindings_shared|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libdom_storage_mojom|libdom_storage_mojom_shared|libEGL|libEGL|libembedder|libembedder_switches|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libextras|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|libgles2|libgles2_implementation|libgles2_utils|libGLESv2|libGLESv2|libgl_init|libgl_in_process_context|libgl_wrapper|libgpu|libgpu_ipc_service|libgtkui|libheadless_non_renderer|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc|libipc_mojom|libipc_mojom_shared|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|liblearning_common|liblearning_impl|libleveldatabase|libleveldb_proto|libmanager|libmedia|libmedia_blink|libmedia_gpu|libmedia_learning_mojo_impl|libmedia_message_center|libmedia_mojo_services|libmedia_session_base_cpp|libmedia_session_cpp|libmedia_webrtc|libmemory_instrumentation|libmenu|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|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|libmojom_core_shared|libmojom_mhtml_load_result_shared|libmojom_modules_shared|libmojo_mojom_bindings|libmojo_mojom_bindings_shared|libmojom_platform_shared|libmojo_public_system|libmojo_public_system_cpp|libnative_theme|libnet|libnetwork_cpp|libnetwork_cpp_base|libnetwork_service|libnetwork_session_configurator|libonc|libos_crypt|libparsers|libpdfium|libperfetto|libperformace_manager_public_mojom|libperformace_manager_public_mojom_blink|libperformace_manager_public_mojom_shared|libplatform|libplatform_window|libplatform_window_common|libplatform_window_handler_libs|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libproperties|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_public_mojom|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libsandbox|libsandbox_services|libscheduling_metrics|libseccomp_bpf|libsecurity_state_features|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|libservice_provider|libsessions|libshared_memory_support|libshared_with_blink|libshell_dialogs|libskia|libskia_shared_typemap_traits|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstorage_service_public|libstub_window|libsuid_sandbox_client|libsurface|libsystem_media_controls|libtab_count_metrics|libthread_linux|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|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|libVkICD_mock_icd|libvk_swiftshader|libvr_base|libvr_common|libvulkan_info|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libvulkan_ycbcr_info|libweb_bluetooth_mojo_bindings_shared|libwebdata_common|libweb_dialogs|libweb_feature_mojo_bindings_mojom|libweb_feature_mojo_bindings_mojom_blink|libweb_feature_mojo_bindings_mojom_shared|libwebgpu|libweb_modal|libwebrtc_component|libwebview|libwm|libwm_public|libwtf|libwtf_support|libx11_events_platform|libx11_window|libzygote|libfontconfig
%else
-%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_lib|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|libmirclient.so.9|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|libperformace_manager_public_mojom_blink|libperformace_manager_public_mojom_shared|libperformace_manager_public_mojom|libplatform|libplatform_window_handler_libs|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libproperties|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|libvk_swiftshader|libvr_base|libvr_common|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libvulkan_ycbcr_info|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
+%global privlibs 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_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_ipc|libcc_mojo_embedder|libcc_paint|libcertificate_matching|libcert_verifier|libchrome_features|libchromium_sqlite3|libclearkeycdm|libclient|libcloud_policy_proto_generated_compile|libcodec|libcolor_space|libcolor_utils|libcommon|libcompositor|libcontent|libcontent_common_mojo_bindings_shared|libcontent_public_common_mojo_bindings_shared|libcontent_service_cpp|libcontent_service_mojom|libcontent_service_mojom_shared|libcontent_settings_features|libcrash_key_lib|libcrcrypto|libcrdtp|libdbus|libdevice_base|libdevice_event_log|libdevice_features|libdevice_gamepad|libdevices|libdevice_vr|libdevice_vr_mojo_bindings|libdevice_vr_mojo_bindings_blink|libdevice_vr_mojo_bindings_shared|libdevice_vr_test_mojo_bindings|libdevice_vr_test_mojo_bindings_blink|libdevice_vr_test_mojo_bindings_shared|libdiscardable_memory_client|libdiscardable_memory_common|libdiscardable_memory_service|libdisplay|libdisplay_types|libdisplay_util|libdomain_reliability|libdom_storage_mojom|libdom_storage_mojom_shared|libEGL|libEGL|libembedder|libembedder_switches|libevents|libevents_base|libevents_devices_x11|libevents_ozone_layout|libevents_x|libextras|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|libgles2|libgles2_implementation|libgles2_utils|libGLESv2|libGLESv2|libgl_init|libgl_in_process_context|libgl_wrapper|libgpu|libgpu_ipc_service|libgtkui|libheadless_non_renderer|libhost|libicui18n|libicuuc|libinterfaces_shared|libipc|libipc_mojom|libipc_mojom_shared|libkeycodes_x11|libkeyed_service_content|libkeyed_service_core|liblearning_common|liblearning_impl|libleveldatabase|libleveldb_proto|libmanager|libmedia|libmedia_blink|libmedia_gpu|libmedia_learning_mojo_impl|libmedia_message_center|libmedia_mojo_services|libmedia_session_base_cpp|libmedia_session_cpp|libmedia_webrtc|libmemory_instrumentation|libmenu|libmessage_center|libmessage_support|libmetrics_cpp|libmidi|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|libmojom_core_shared|libmojom_mhtml_load_result_shared|libmojom_modules_shared|libmojo_mojom_bindings|libmojo_mojom_bindings_shared|libmojom_platform_shared|libmojo_public_system|libmojo_public_system_cpp|libnative_theme|libnet|libnetwork_cpp|libnetwork_cpp_base|libnetwork_service|libnetwork_session_configurator|libonc|libos_crypt|libparsers|libpdfium|libperfetto|libperformace_manager_public_mojom|libperformace_manager_public_mojom_blink|libperformace_manager_public_mojom_shared|libplatform|libplatform_window|libplatform_window_common|libplatform_window_handler_libs|libpolicy_component|libpolicy_proto|libppapi_host|libppapi_proxy|libppapi_shared|libprefs|libprinting|libproperties|libprotobuf_lite|libproxy_config|libpublic|librange|libraster|libresource_coordinator_public_mojom|libresource_coordinator_public_mojom_blink|libresource_coordinator_public_mojom_shared|libsandbox|libsandbox_services|libscheduling_metrics|libseccomp_bpf|libsecurity_state_features|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|libservice_provider|libsessions|libshared_memory_support|libshared_with_blink|libshell_dialogs|libskia|libskia_shared_typemap_traits|libsnapshot|libsql|libstartup_tracing|libstorage_browser|libstorage_common|libstorage_service_public|libstub_window|libsuid_sandbox_client|libsurface|libsystem_media_controls|libtab_count_metrics|libthread_linux|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|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|libVkICD_mock_icd|libvk_swiftshader|libvr_base|libvr_common|libvulkan_info|libvulkan_init|libvulkan_wrapper|libvulkan_x11|libvulkan_ycbcr_info|libweb_bluetooth_mojo_bindings_shared|libwebdata_common|libweb_dialogs|libweb_feature_mojo_bindings_mojom|libweb_feature_mojo_bindings_mojom_blink|libweb_feature_mojo_bindings_mojom_shared|libwebgpu|libweb_modal|libwebrtc_component|libwebview|libwm|libwm_public|libwtf|libwtf_support|libx11_events_platform|libx11_window|libzygote
%endif
%global __requires_exclude ^(%{privlibs})\\.so*
@@ -153,14 +151,14 @@ BuildRequires: libicu-devel >= 5.4
%global chromoting_client_id %nil
%endif
-%global majorversion 79
+%global majorversion 80
%if %{freeworld}
Name: chromium%{chromium_channel}%{nsuffix}
%else
Name: chromium%{chromium_channel}
%endif
-Version: %{majorversion}.0.3945.130
+Version: %{majorversion}.0.3987.122
Release: 1%{?dist}
%if %{?freeworld}
%if %{?shared}
@@ -220,22 +218,39 @@ Patch54: chromium-77.0.3865.75-gcc-include-memory.patch
# https://chromium.googlesource.com/chromium/src/+/6b633c4b14850df376d5cec5...
# https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/...
Patch55: chromium-79.0.3945.56-base-gcc-no-alignas.patch
-# https://chromium.googlesource.com/chromium/src/+/af77dc4014ead3d898fdc8a7...
-Patch56: chromium-79-gcc-ambiguous-nodestructor.patch
# https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/...
Patch57: chromium-78-protobuf-export.patch
-# https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client/chromium/files...
-Patch58: chromium-79-include.patch
# https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client/chromium/files...
Patch59: chromium-77-clang.patch
-# https://chromium.googlesource.com/chromium/src.git/+/54407b422a9cbf775a68...
-Patch60: chromium-79.0.3945.56-glibc-clock-nanosleep.patch
-# https://chromium.googlesource.com/chromium/src/+/e925deab264e5ebc3c5c1341...
-Patch61: chromium-79.0.3945.56-gcc-name-clash.patch
-# https://chromium.googlesource.com/chromium/src/+/528e9a3e1f25bd264549c4c7...
-Patch62: chromium-79-gcc-permissive.patch
# /../../ui/base/cursor/ozone/bitmap_cursor_factory_ozone.cc:53:15: error: 'find_if' is not a member of 'std'; did you mean 'find'?
Patch63: chromium-79.0.3945.56-fix-find_if.patch
+# Work around situation with gcc10 where
+# modifying a const object is not allowed in a constant expression
+# except in a very specific case in c++17
+# https://bugs.chromium.org/p/chromium/issues/detail?id=1045963
+Patch64: chromium-79.0.3945.130-gcc10-use-c++17-to-work-around-ugly-angle-code.patch
+# https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client/chromium/files...
+Patch65: chromium-80-gcc-incomplete-type.patch
+# https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client/chromium/files...
+Patch66: chromium-80-include.patch
+# https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client/chromium/files...
+Patch67: chromium-80-gcc-abstract.patch
+# https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client/chromium/files...
+Patch68: chromium-80-gcc-blink.patch
+# https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client/chromium/files...
+Patch69: chromium-80-gcc-permissive.patch
+# https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client/chromium/files...
+Patch70: chromium-80-gcc-quiche.patch
+# ../../base/trace_event/trace_event_memory_overhead.h:15:1: note: 'std::string' is defined in header '<string>'; did you forget to '#include <string>'?
+Patch71: chromium-80.0.3987.87-missing-string-header.patch
+# ../../third_party/perfetto/include/perfetto/base/task_runner.h:48:55: error: 'uint32_t' has not been declared
+Patch72: chromium-80.0.3987.87-missing-cstdint-header.patch
+# ../../third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h:34:3: error: 'size_t' does not name a type
+Patch73: chromium-80.0.3987.106-missing-cstddef-header.patch
+# Because of Patch64, we need to force std::as_const with c++17
+Patch74: chromium-80.0.3987.87-fix-for-c++17.patch
+# Missing <cstring> (thanks c++17)
+Patch75: chromium-80.0.3987.106-missing-cstring-header.patch
# Use lstdc++ on EPEL7 only
@@ -248,7 +263,7 @@ Patch102: chromium-79.0.3945.56-el7-noexcept.patch
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
+Patch205: fixvaapionintel.patch
# Apply these patches to work around EPEL8 issues
Patch300: chromium-76.0.3809.132-rhel8-force-disable-use_gnome_keyring.patch
@@ -772,14 +787,24 @@ udev.
%patch53 -p1 -b .unbundle-zlib
%patch54 -p1 -b .gcc-include-memory
%patch55 -p1 -b .base-gcc-no-alignas
-%patch56 -p1 -b .gcc-ambiguous-nodestructor
%patch57 -p1 -b .protobuf-export
-%patch58 -p1 -b .missing-includes
%patch59 -p1 -b .clang-supports-location-builtins
-%patch60 -p1 -b .glibc-clock-nanosleep
-%patch61 -p1 -b .gcc-name-clash
-%patch62 -p1 -b .gcc-permissive
%patch63 -p1 -b .fix-find_if
+%if 0%{?fedora} >= 32
+%patch64 -p1 -b .gcc10-angle
+%patch74 -p1 -b .c17
+%endif
+%patch65 -p1 -b .gcc-incomplete-type
+%patch66 -p1 -b .includefix
+%patch67 -p1 -b .gcc-abstract
+%patch68 -p1 -b .gcc-blink
+%patch69 -p1 -b .gcc-permissive
+%patch70 -p1 -b .gcc-quiche
+%patch71 -p1 -b .missing-string
+%patch72 -p1 -b .missing-cstdint
+%patch73 -p1 -b .missing-cstddef
+%patch75 -p1 -b .missing-cstring
+
# Fedora branded user agent
%if 0%{?fedora}
@@ -797,8 +822,8 @@ udev.
%patch202 -p1 -b .vaapi
%ifarch i686
%patch203 -p1 -b .i686permissive
-%patch204 -p1 -b .va1compat
%endif
+%patch205 -p1 -b .vaapi-intel-fix
%endif
%if 0%{?rhel} == 8
@@ -862,7 +887,11 @@ unzip %{SOURCE113}
cp -a /usr/share/fonts/lohit-gurmukhi/Lohit-Gurmukhi.ttf .
cp -a /usr/share/fonts/google-noto-cjk/NotoSansCJKjp-Regular.otf .
%endif
+%if 0%{?fedora} >= 32
+cp -a /usr/share/fonts/dejavu-sans-fonts/DejaVuSans.ttf /usr/share/fonts/dejavu-sans-fonts/DejaVuSans-Bold.ttf .
+%else
cp -a /usr/share/fonts/dejavu/DejaVuSans.ttf /usr/share/fonts/dejavu/DejaVuSans-Bold.ttf .
+%endif
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 .
@@ -876,7 +905,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 use_lld=false'
+CHROMIUM_CORE_GN_DEFINES+=' is_clang=false use_sysroot=false use_gold=false fieldtrial_testing_like_official_build=true use_lld=false rtc_enable_symbol_export=true'
%if %{freeworld}
CHROMIUM_CORE_GN_DEFINES+=' ffmpeg_branding="ChromeOS" proprietary_codecs=true'
%else
@@ -978,9 +1007,6 @@ 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/boringssl/linux-aarch64/crypto/third_party/sike' \
'third_party/breakpad' \
'third_party/breakpad/breakpad/src/third_party/curl' \
'third_party/brotli' \
@@ -1011,13 +1037,14 @@ build/linux/unbundle/remove_bundled_libraries.py \
'third_party/dawn' \
'third_party/depot_tools' \
'third_party/devscripts' \
+ 'third_party/devtools-frontend' \
+ 'third_party/devtools-frontend/src/third_party/axe-core' \
'third_party/dom_distiller_js' \
'third_party/emoji-segmenter' \
'third_party/expat' \
'third_party/ffmpeg' \
'third_party/flac' \
'third_party/flatbuffers' \
- 'third_party/flot' \
'third_party/fontconfig' \
'third_party/freetype' \
'third_party/glslang' \
@@ -1044,6 +1071,7 @@ build/linux/unbundle/remove_bundled_libraries.py \
'third_party/libaom/source/libaom/third_party/vector' \
'third_party/libaom/source/libaom/third_party/x86inc' \
'third_party/libdrm' \
+ 'third_party/libgifcodec' \
'third_party/libjingle' \
'third_party/libjpeg_turbo' \
'third_party/libphonenumber' \
@@ -1111,7 +1139,6 @@ build/linux/unbundle/remove_bundled_libraries.py \
'third_party/skia' \
'third_party/skia/include/third_party/skcms' \
'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' \
'third_party/smhasher' \
@@ -1282,6 +1309,8 @@ sed -i.orig -e 's/getenv("CHROME_VERSION_EXTRA")/"Fedora Project"/' $FILE
%global optflags %(echo %{optflags} | sed 's/-g /-g1 /')
%endif
+export PYTHONPATH="../../third_party/pyjson5/src"
+
echo
# Now do the full browser
%if 0%{freeworld}
@@ -1354,7 +1383,6 @@ sed -i "s|@@PACKAGE@@|%{chromium_browser_channel}|g" %{buildroot}%{_mandir}/man1
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}
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}
@@ -1697,6 +1725,15 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt
%changelog
+* Thu Feb 27 2020 Tom Callaway <spot(a)fedoraproject.org> - 80.0.3987.122-1
+- update to 80.0.3987.122
+
+* Mon Feb 17 2020 Tom Callaway <spot(a)fedoraproject.org> - 80.0.3987.106-1
+- update to 80.0.3987.106
+
+* Wed Feb 5 2020 Tom Callaway <spot(a)fedoraproject.org> - 80.0.3987.87-1
+- update to 80.0.3987.87
+
* Fri Jan 17 2020 Tom Callaway <spot(a)fedoraproject.org> - 79.0.3945.130-1
- update to 79.0.3945.130
diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh
index fd226e8..edab56f 100755
--- a/clean_ffmpeg.sh
+++ b/clean_ffmpeg.sh
@@ -97,6 +97,7 @@ header_files=" libavcodec/x86/inline_asm.h \
libavcodec/mdct15.c \
libavcodec/mdct15.h \
libavcodec/me_cmp.h \
+ libavcodec/mlp_parse.h \
libavcodec/motion_est.h \
libavcodec/mpeg12.h \
libavcodec/mpeg12data.h \
@@ -196,6 +197,7 @@ header_files=" libavcodec/x86/inline_asm.h \
libavutil/thread.h \
libavutil/timer.h \
libavutil/timestamp.h \
+ libavutil/tx_priv.h \
libavutil/version.h \
libswresample/swresample.h \
libswresample/version.h \
@@ -246,6 +248,7 @@ manual_files=" libavcodec/aarch64/fft_neon.S \
libavutil/fixed_dsp.c \
libavutil/float_dsp.c \
libavutil/imgutils.c \
+ libavutil/tx_template.c \
libavutil/x86/cpu.c \
libavutil/x86/float_dsp_init.c \
libavutil/x86/x86inc.asm \
diff --git a/enable-vaapi.patch b/enable-vaapi.patch
index 3286af7..1dd612a 100644
--- a/enable-vaapi.patch
+++ b/enable-vaapi.patch
@@ -1,18 +1,31 @@
-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[] = {
+From e04b52fc9b12f0725e76b889161ea45c776e6da5 Mon Sep 17 00:00:00 2001
+From: Akarshan Biswas <akarshanbiswas(a)fedoraproject.org>
+Date: Fri, 20 Sep 2019 19:55:45 +0530
+Subject: [PATCH] Enable VAAPI 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 ++-
+ 4 files changed, 20 insertions(+), 10 deletions(-)
+
+diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
+index e608f06a2..c0776db45 100644
+--- a/chrome/browser/about_flags.cc
++++ b/chrome/browser/about_flags.cc
+@@ -1738,7 +1738,7 @@ const FeatureEntry kFeatureEntries[] = {
"disable-accelerated-video-decode",
flag_descriptions::kAcceleratedVideoDecodeName,
flag_descriptions::kAcceleratedVideoDecodeDescription,
- kOsMac | kOsWin | kOsCrOS | kOsAndroid,
-+ kOsMac | kOsWin | kOsCrOS | kOsAndroid | kOsLinux,
++ kOsMac | kOsWin | kOsCrOS | kOsAndroid | kOsLinux,
SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedVideoDecode),
},
- #if defined(OS_WIN)
-@@ -1882,12 +1882,12 @@ const FeatureEntry kFeatureEntries[] = {
+ {
+@@ -2216,12 +2216,12 @@ const FeatureEntry kFeatureEntries[] = {
FEATURE_VALUE_TYPE(service_manager::features::kXRSandbox)},
- #endif // ENABLE_ISOLATED_XR_SERVICE
+ #endif // !defined(OS_ANDROID)
#endif // ENABLE_VR
-#if defined(OS_CHROMEOS)
+#if defined(OS_CHROMEOS) || defined(OS_LINUX)
@@ -22,45 +35,47 @@ diff -up chromium-75.0.3770.80/chrome/browser/about_flags.cc.vaapi chromium-75.0
+ 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)},
-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 // OS_CHROMEOS | OS_LINUX
+ {"system-keyboard-lock", flag_descriptions::kSystemKeyboardLockName,
+ flag_descriptions::kSystemKeyboardLockDescription, kOsDesktop,
+ FEATURE_VALUE_TYPE(features::kSystemKeyboardLock)},
+diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc
+index d27bbb28f..1c6542bdd 100644
+--- a/chrome/browser/flag_descriptions.cc
++++ b/chrome/browser/flag_descriptions.cc
+@@ -3071,16 +3071,19 @@ const char kMacSystemMediaPermissionsInfoUiDescription[] =
#endif
-// Chrome OS -------------------------------------------------------------------
-+// Chrome OS & Linux------------------------------------------------------------
-
+-
-#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
++// Chrome OS and Linux -------------------------------------------------------------------
++#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
const char kAcceleratedMjpegDecodeName[] =
"Hardware-accelerated mjpeg decode for captured frame";
const char kAcceleratedMjpegDecodeDescription[] =
"Enable hardware-accelerated mjpeg decode for captured frame where "
"available.";
-+#endif
-+
-+// Chrome OS -------------------------------------------------------------------
++#endif
+
++// Chrome OS -----------------------------------------------------------------------------
+
+#if defined(OS_CHROMEOS)
-
- 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
+ const char kAggregatedMlAppRankingName[] = "Rank suggested apps with ML.";
+ const char kAggregatedMlAppRankingDescription[] =
+ "Use the aggregated ML model to rank the suggested apps.";
+diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
+index 1f8899de1..06544e079 100644
+--- a/chrome/browser/flag_descriptions.h
++++ b/chrome/browser/flag_descriptions.h
+@@ -1822,13 +1822,19 @@ extern const char kPermissionPromptPersistenceToggleDescription[];
#endif // defined(OS_MACOSX)
-// Chrome OS ------------------------------------------------------------------
-+// Chrome OS & Linux ----------------------------------------------------------
++// Chrome OS and Linux ---------------------------------------------------------
-#if defined(OS_CHROMEOS)
+#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
@@ -68,19 +83,20 @@ diff -up chromium-75.0.3770.80/chrome/browser/flag_descriptions.h.vaapi chromium
extern const char kAcceleratedMjpegDecodeName[];
extern const char kAcceleratedMjpegDecodeDescription[];
-+#endif
++#endif
+
-+// Chrome OS ------------------------------------------------------------------
++// Chrome OS -------------------------------------------------------------------
+
+#if defined(OS_CHROMEOS)
+
- extern const char kAppServiceAshName[];
- extern const char kAppServiceAshDescription[];
+ extern const char kAggregatedMlAppRankingName[];
+ extern const char kAggregatedMlAppRankingDescription[];
-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/gpu/config/software_rendering_list.json b/gpu/config/software_rendering_list.json
+index ea1294e4c..bc52cbc8f 100644
+--- a/gpu/config/software_rendering_list.json
++++ b/gpu/config/software_rendering_list.json
+@@ -334,11 +334,12 @@
},
{
"id": 48,
@@ -90,7 +106,10 @@ diff -up chromium-75.0.3770.80/gpu/config/software_rendering_list.json.vaapi chr
"os": {
"type": "linux"
},
-+ "vendor_id": "0x10de",
++ "vendor_id": "0x10de",
"features": [
"accelerated_video_decode"
]
+--
+2.21.0
+
diff --git a/fixvaapionintel.patch b/fixvaapionintel.patch
new file mode 100644
index 0000000..a94886a
--- /dev/null
+++ b/fixvaapionintel.patch
@@ -0,0 +1,49 @@
+From 9ff06536caf7ea51aad9fd2bb649c858eaf7ee84 Mon Sep 17 00:00:00 2001
+From: Akarshan Biswas <akarshanbiswas(a)fedoraproject.org>
+Date: Sat, 26 Oct 2019 10:06:30 +0530
+Subject: [PATCH] Move offending function to chromeos only
+
+---
+ media/gpu/vaapi/vaapi_video_decode_accelerator.cc | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/media/gpu/vaapi/vaapi_video_decode_accelerator.cc b/media/gpu/vaapi/vaapi_video_decode_accelerator.cc
+index f04b60f58..3e7865503 100644
+--- a/media/gpu/vaapi/vaapi_video_decode_accelerator.cc
++++ b/media/gpu/vaapi/vaapi_video_decode_accelerator.cc
+@@ -63,6 +63,7 @@ void ReportToUMA(VAVDADecoderFailure failure) {
+ VAVDA_DECODER_FAILURES_MAX + 1);
+ }
+
++#if defined(OS_ANDROID) || defined(OS_CHROMEOS)
+ // Returns true if the CPU is an Intel Gemini Lake or later (including Kaby
+ // Lake) Cpu platform id's are referenced from the following file in kernel
+ // source arch/x86/include/asm/intel-family.h
+@@ -75,6 +76,7 @@ bool IsGeminiLakeOrLater() {
+ cpuid.model() >= kGeminiLakeModelId;
+ return is_geminilake_or_later;
+ }
++#endif
+
+ } // namespace
+
+@@ -1091,6 +1093,8 @@ VaapiVideoDecodeAccelerator::DecideBufferAllocationMode() {
+ if (output_mode_ == VideoDecodeAccelerator::Config::OutputMode::IMPORT)
+ return BufferAllocationMode::kNormal;
+
++#if defined(OS_ANDROID) || defined(OS_CHROMEOS)
++ // Move this to chromeOs only as it is causing problem in some intel linux drivers
+ // On Gemini Lake, Kaby Lake and later we can pass to libva the client's
+ // PictureBuffers to decode onto, which skips the use of the Vpp unit and its
+ // associated format reconciliation copy, avoiding all internal buffer
+@@ -1107,6 +1111,7 @@ VaapiVideoDecodeAccelerator::DecideBufferAllocationMode() {
+ num_extra_pics_ = 3;
+ return BufferAllocationMode::kNone;
+ }
++#endif
+
+ // If we're here, we have to use the Vpp unit and allocate buffers for
+ // |decoder_|; usually we'd have to allocate the |decoder_|s
+--
+2.21.0
+
diff --git a/sources b/sources
index efaf0ea..6bad0a4 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-79.0.3945.130-clean.tar.xz) = 3b8530492ad76397f479fd4c6a30c7371892be3b60361eb85002295deaffc78766b4d36a5e39398634ca507f0e5d42fdd1ee35e9289310e6d662514a6681df52
+SHA512 (chromium-80.0.3987.122-clean.tar.xz) = 9de43bd70406a8b97ee5177f9983fea68403fa457d599843de423fe910e7f78f659e7e98a077be33f4fb8d288c61ecee28330eabb7cd560ac856bf9a24b58562
4 years, 1 month
Architecture specific change in rpms/ghc-prettyprinter-ansi-terminal.git
by githook-noreply@fedoraproject.org
The package rpms/ghc-prettyprinter-ansi-terminal.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/ghc-prettyprinter-ansi-terminal.g....
Change:
+%ifnarch s390x
Thanks.
Full change:
============
commit a45fd39b4080f5604e44015f0e40e68627875a32
Author: Jens Petersen <petersen(a)redhat.com>
Date: Thu Feb 27 18:20:20 2020 +0800
remove from summary
diff --git a/ghc-prettyprinter-ansi-terminal.spec b/ghc-prettyprinter-ansi-terminal.spec
index 976a787..d659b72 100644
--- a/ghc-prettyprinter-ansi-terminal.spec
+++ b/ghc-prettyprinter-ansi-terminal.spec
@@ -12,7 +12,7 @@
Name: ghc-%{pkg_name}
Version: 1.1.1.2
Release: 2%{?dist}
-Summary: ANSI terminal backend for the prettyprinter package
+Summary: ANSI terminal backend for the prettyprinter package
License: BSD
Url: https://hackage.haskell.org/package/%{pkg_name}
commit a56b4ed3b1cac516310049845e087dcf7beea638
Author: Jens Petersen <petersen(a)redhat.com>
Date: Thu Feb 27 18:19:30 2020 +0800
import #1803320
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..0166850
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1 @@
+/prettyprinter-ansi-terminal-1.1.1.2.tar.gz
diff --git a/ghc-prettyprinter-ansi-terminal.spec b/ghc-prettyprinter-ansi-terminal.spec
new file mode 100644
index 0000000..976a787
--- /dev/null
+++ b/ghc-prettyprinter-ansi-terminal.spec
@@ -0,0 +1,139 @@
+# generated by cabal-rpm-2.0.2
+# https://fedoraproject.org/wiki/Packaging:Haskell
+
+%global pkg_name prettyprinter-ansi-terminal
+%global pkgver %{pkg_name}-%{version}
+
+# doctest: unknown RTS option: -N
+%ifnarch s390x
+%bcond_without tests
+%endif
+
+Name: ghc-%{pkg_name}
+Version: 1.1.1.2
+Release: 2%{?dist}
+Summary: ANSI terminal backend for the prettyprinter package
+
+License: BSD
+Url: https://hackage.haskell.org/package/%{pkg_name}
+# Begin cabal-rpm sources:
+Source0: https://hackage.haskell.org/package/%{pkgver}/%{pkgver}.tar.gz
+# End cabal-rpm sources
+
+# Begin cabal-rpm deps:
+BuildRequires: ghc-Cabal-devel
+BuildRequires: ghc-rpm-macros
+BuildRequires: ghc-ansi-terminal-prof
+BuildRequires: ghc-base-prof
+BuildRequires: ghc-prettyprinter-prof
+BuildRequires: ghc-text-prof
+%if %{with tests}
+BuildRequires: ghc-doctest-devel
+%endif
+# End cabal-rpm deps
+
+%description
+This package defines a renderer for documents generated by the `prettyprinter`
+package, suitable for displaying them on ANSI-compatible terminals, including
+colors, boldening, underlining and italication.
+
+For more information about the prettyprinter in general, refer to the main
+`prettyprinter` package documentation.
+
+
+%package devel
+Summary: Haskell %{pkg_name} library development files
+Provides: %{name}-static = %{version}-%{release}
+Provides: %{name}-static%{?_isa} = %{version}-%{release}
+%if %{defined ghc_version}
+Requires: ghc-compiler = %{ghc_version}
+%endif
+Requires: %{name}%{?_isa} = %{version}-%{release}
+
+%description devel
+This package provides the Haskell %{pkg_name} library
+development files.
+
+
+%if %{with haddock}
+%package doc
+Summary: Haskell %{pkg_name} library documentation
+BuildArch: noarch
+
+%description doc
+This package provides the Haskell %{pkg_name} library
+documentation.
+%endif
+
+
+%if %{with ghc_prof}
+%package prof
+Summary: Haskell %{pkg_name} profiling library
+Requires: %{name}-devel%{?_isa} = %{version}-%{release}
+Supplements: (%{name}-devel and ghc-prof)
+
+%description prof
+This package provides the Haskell %{pkg_name} profiling
+library.
+%endif
+
+
+%prep
+# Begin cabal-rpm setup:
+%setup -q -n %{pkgver}
+# End cabal-rpm setup
+
+
+%build
+# Begin cabal-rpm build:
+%ghc_lib_build
+# End cabal-rpm build
+
+
+%install
+# Begin cabal-rpm install
+%ghc_lib_install
+# End cabal-rpm install
+
+
+%check
+%cabal_test
+
+
+%if 0%{?fedora} < 31 || 0%{?rhel} < 8
+%post devel
+%ghc_pkg_recache
+
+
+%postun devel
+%ghc_pkg_recache
+%endif
+
+
+%files -f %{name}.files
+# Begin cabal-rpm files:
+%license LICENSE.md
+# End cabal-rpm files
+
+
+%files devel -f %{name}-devel.files
+%doc CHANGELOG.md README.md
+
+
+%if %{with haddock}
+%files doc -f %{name}-doc.files
+%license LICENSE.md
+%endif
+
+
+%if %{with ghc_prof}
+%files prof -f %{name}-prof.files
+%endif
+
+
+%changelog
+* Sat Feb 15 2020 Jens Petersen <petersen(a)redhat.com> - 1.1.1.2-2
+- doctest failing on s390x
+
+* Sat Feb 15 2020 Fedora Haskell SIG <haskell(a)lists.fedoraproject.org> - 1.1.1.2-1
+- spec file generated by cabal-rpm-2.0.2
diff --git a/sources b/sources
new file mode 100644
index 0000000..0093502
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+SHA512 (prettyprinter-ansi-terminal-1.1.1.2.tar.gz) = b2ac6c76ce6570b285370c9b1a466272aa5a3ba86a9f1de996392d750d212ff62a743e9c3c28f7de7951c9b270d64c97cb695166b65d642751942d682ff1a71b
4 years, 1 month
Architecture specific change in rpms/pcp.git
by githook-noreply@fedoraproject.org
The package rpms/pcp.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/pcp.git/commit/?id=7dd6b3631a5f38....
Change:
+%ifarch x86_64
Thanks.
Full change:
============
commit 7dd6b3631a5f3844eb8d703762f91f10a42e3907
Author: Mark Goodwin <mgoodwin(a)redhat.com>
Date: Thu Feb 27 21:54:04 2020 +1100
Update to pcp-5.0.3 community sources
diff --git a/pcp.spec b/pcp.spec
index 4e302f8..b9cc100 100644
--- a/pcp.spec
+++ b/pcp.spec
@@ -1,6 +1,6 @@
Name: pcp
-Version: 5.0.2
-Release: 2%{?dist}
+Version: 5.0.3
+Release: 1%{?dist}
Summary: System-level performance monitoring and performance management
License: GPLv2+ and LGPLv2+ and CC-BY
URL: https://pcp.io
@@ -14,6 +14,12 @@ Source0: %{bintray}/pcp/source/pcp-%{version}.src.tar.gz
%global __python2 python
%endif
+%if 0%{?rhel} >= 7 || 0%{?fedora} >= 17
+%global _hostname_executable /usr/bin/hostname
+%else
+%global _hostname_executable /bin/hostname
+%endif
+
%if 0%{?fedora} || 0%{?rhel} > 5
%global disable_selinux 0
%else
@@ -75,23 +81,23 @@ Source0: %{bintray}/pcp/source/pcp-%{version}.src.tar.gz
%global perl_interpreter perl
%endif
-# support for pmdabcc
+# support for pmdabcc, check bcc.spec for supported architectures of bcc
%if 0%{?fedora} >= 25 || 0%{?rhel} > 6
-%ifarch s390 s390x armv7hl aarch64 i686
-%global disable_bcc 1
-%else
+%ifarch x86_64 %{power64} aarch64 s390x
%global disable_bcc 0
+%else
+%global disable_bcc 1
%endif
%else
%global disable_bcc 1
%endif
-# support for pmdabpftrace
-%if 0%{?fedora} >= 30 || 0%{?rhel} > 8
-%ifarch s390 s390x armv7hl aarch64 i686
-%global disable_bpftrace 1
-%else
+# support for pmdabpftrace, check bpftrace.spec for supported architectures of bpftrace
+%if 0%{?fedora} >= 30 || 0%{?rhel} > 7
+%ifarch x86_64 %{power64} aarch64 s390x
%global disable_bpftrace 0
+%else
+%global disable_bpftrace 1
%endif
%else
%global disable_bpftrace 1
@@ -108,6 +114,17 @@ Source0: %{bintray}/pcp/source/pcp-%{version}.src.tar.gz
%global disable_json 1
%endif
+# No mssql ODBC driver on non-x86 platforms
+%ifarch x86_64
+%if !%{disable_python2} || !%{disable_python3}
+%global disable_mssql 0
+%else
+%global disable_mssql 1
+%endif
+%else
+%global disable_mssql 1
+%endif
+
# support for pmdanutcracker (perl deps missing on rhel)
%if 0%{?rhel} == 0
%global disable_nutcracker 0
@@ -229,7 +246,7 @@ BuildRequires: perl-generators
BuildRequires: perl-devel perl(strict)
BuildRequires: perl(ExtUtils::MakeMaker) perl(LWP::UserAgent) perl(JSON)
BuildRequires: perl(LWP::UserAgent) perl(Time::HiRes) perl(Digest::MD5)
-BuildRequires: man hostname
+BuildRequires: man %{_hostname_executable}
%if !%{disable_systemd}
BuildRequires: systemd-devel
%endif
@@ -243,7 +260,7 @@ BuildRequires: qt5-qtsvg-devel
%endif
%endif
-Requires: bash xz gawk sed grep findutils which hostname
+Requires: bash xz gawk sed grep findutils which %{_hostname_executable}
Requires: pcp-libs = %{version}-%{release}
%if !%{disable_selinux}
Requires: pcp-selinux = %{version}-%{release}
@@ -482,7 +499,10 @@ Requires: pcp-pmda-bpftrace
%if !%{disable_python2} || !%{disable_python3}
Requires: pcp-pmda-gluster pcp-pmda-zswap pcp-pmda-unbound pcp-pmda-mic
Requires: pcp-pmda-libvirt pcp-pmda-lio pcp-pmda-openmetrics pcp-pmda-haproxy
-Requires: pcp-pmda-lmsensors pcp-pmda-mssql pcp-pmda-netcheck
+Requires: pcp-pmda-lmsensors pcp-pmda-netcheck
+%endif
+%if !%{disable_mssql}
+Requires: pcp-pmda-mssql
%endif
%if !%{disable_snmp}
Requires: pcp-pmda-snmp
@@ -929,6 +949,8 @@ Requires: perl-PCP-PMDA = %{version}-%{release}
Requires: perl(LWP::UserAgent)
Requires: perl(XML::LibXML)
Requires: perl(File::Slurp)
+Requires: perl-autodie
+Requires: perl-Time-HighRes
%description pmda-bind2
This package contains the PCP Performance Metrics Domain Agent (PMDA) for
@@ -943,6 +965,8 @@ License: GPLv2+
Summary: Performance Co-Pilot (PCP) metrics for Redis
URL: https://pcp.io
Requires: perl-PCP-PMDA = %{version}-%{release}
+Requires: perl-autodie
+Requires: perl-Time-HiRes
%description pmda-redis
This package contains the PCP Performance Metrics Domain Agent (PMDA) for
@@ -989,6 +1013,7 @@ License: GPLv2+
Summary: Performance Co-Pilot (PCP) metrics for Database response times and Availablility
URL: https://pcp.io
Requires: perl-PCP-PMDA = %{version}-%{release}
+Requires: perl-DBI
%description pmda-dbping
This package contains the PCP Performance Metrics Domain Agent (PMDA) for
@@ -1021,6 +1046,7 @@ Summary: Performance Co-Pilot (PCP) metrics for 389 Directory Server Loggers
URL: https://pcp.io
Requires: perl-PCP-PMDA = %{version}-%{release}
Requires: perl-Date-Manip
+Requires: 389-ds-base
%description pmda-ds389log
This package contains the PCP Performance Metrics Domain Agent (PMDA) for
@@ -1050,6 +1076,8 @@ License: GPLv2+
Summary: Performance Co-Pilot (PCP) metrics for a GPS Daemon
URL: https://pcp.io
Requires: perl-PCP-PMDA = %{version}-%{release}
+Requires: perl-Time-HiRes
+Requires: perl-JSON
%description pmda-gpsd
This package contains the PCP Performance Metrics Domain Agent (PMDA) for
@@ -1210,6 +1238,7 @@ License: GPLv2+
Summary: Performance Co-Pilot (PCP) metrics for PowerDNS
URL: https://pcp.io
Requires: perl-PCP-PMDA = %{version}-%{release}
+Requires: perl-Time-HiRes
%description pmda-pdns
This package contains the PCP Performance Metrics Domain Agent (PMDA) for
@@ -1608,6 +1637,7 @@ License: GPLv2+
Summary: Performance Co-Pilot (PCP) metrics for hardware sensors
URL: https://pcp.io
Requires: pcp-libs = %{version}-%{release}
+Requires: lm_sensors
%if !%{disable_python3}
Requires: python3-pcp
%else
@@ -1621,11 +1651,11 @@ collecting metrics about the Linux hardware monitoring sensors.
# end pcp-pmda-lmsensors
#
-# pcp-pmda-mssql
+# pcp-pmda-netcheck
#
-%package pmda-mssql
+%package pmda-netcheck
License: GPLv2+
-Summary: Performance Co-Pilot (PCP) metrics for Microsoft SQL Server
+Summary: Performance Co-Pilot (PCP) metrics for simple network checks
URL: https://pcp.io
Requires: pcp-libs = %{version}-%{release}
%if !%{disable_python3}
@@ -1633,17 +1663,20 @@ Requires: python3-pcp
%else
Requires: %{__python2}-pcp
%endif
-%description pmda-mssql
+%description pmda-netcheck
This package contains the PCP Performance Metrics Domain Agent (PMDA) for
-collecting metrics from Microsoft SQL Server.
-# end pcp-pmda-mssql
+collecting metrics from simple network checks.
+# end pcp-pmda-netcheck
+
+%endif
+%if !%{disable_mssql}
#
-# pcp-pmda-netcheck
+# pcp-pmda-mssql
#
-%package pmda-netcheck
+%package pmda-mssql
License: GPLv2+
-Summary: Performance Co-Pilot (PCP) metrics for simple network checks
+Summary: Performance Co-Pilot (PCP) metrics for Microsoft SQL Server
URL: https://pcp.io
Requires: pcp-libs = %{version}-%{release}
%if !%{disable_python3}
@@ -1651,11 +1684,10 @@ Requires: python3-pcp
%else
Requires: %{__python2}-pcp
%endif
-%description pmda-netcheck
+%description pmda-mssql
This package contains the PCP Performance Metrics Domain Agent (PMDA) for
-collecting metrics from simple network checks.
-# end pcp-pmda-netcheck
-
+collecting metrics from Microsoft SQL Server.
+# end pcp-pmda-mssql
%endif
%if !%{disable_json}
@@ -1867,6 +1899,7 @@ License: GPLv2+
Summary: Performance Co-Pilot (PCP) metrics for S.M.A.R.T values
URL: https://pcp.io
Requires: pcp-libs = %{version}-%{release}
+Requires: smartmontools
%description pmda-smart
This package contains the PCP Performance Metric Domain Agent (PMDA) for
collecting metrics of disk S.M.A.R.T values making use of data from the
@@ -2111,6 +2144,11 @@ rm -f $RPM_BUILD_ROOT/%{_pmdasdir}/ib
rm -fr $RPM_BUILD_ROOT/%{_pmdasdir}/infiniband
%endif
+%if %{disable_mssql}
+# remove pmdamssql on platforms lacking MSODBC driver packages.
+rm -fr $RPM_BUILD_ROOT/%{_pmdasdir}/mssql
+%endif
+
%if %{disable_selinux}
rm -fr $RPM_BUILD_ROOT/%{_selinuxdir}
%endif
@@ -2129,6 +2167,10 @@ rm -rf $RPM_BUILD_ROOT/usr/share/doc/pcp-gui
desktop-file-validate $RPM_BUILD_ROOT/%{_datadir}/applications/pmchart.desktop
%endif
+%if %{disable_xlsx}
+rm -f $RPM_BUILD_ROOT/%{_bashcompdir}/pcp2xlsx
+%endif
+
%if 0%{?rhel} || 0%{?fedora}
# Fedora and RHEL default local only access for pmcd and pmlogger
sed -i -e '/^# .*_LOCAL=1/s/^# //' $RPM_BUILD_ROOT/%{_sysconfdir}/sysconfig/{pmcd,pmlogger}
@@ -2214,7 +2256,7 @@ ls -1 $RPM_BUILD_ROOT/%{_pmdasdir} |\
# all base pcp package files except those split out into sub-packages
ls -1 $RPM_BUILD_ROOT/%{_bindir} |\
- grep -E -v 'pmiostat|zabbix|zbxpcp|dstat|pmrep' |\
+ grep -E -v 'pmiostat|zabbix|zbxpcp|dstat|pmrep|pcp2csv' |\
grep -E -v 'pcp2spark|pcp2graphite|pcp2influxdb|pcp2zabbix' |\
grep -E -v 'pcp2elasticsearch|pcp2json|pcp2xlsx|pcp2xml' |\
grep -E -v 'pmdbg|pmclient|pmerr|genpmda' |\
@@ -2222,7 +2264,7 @@ sed -e 's#^#'%{_bindir}'\/#' >base_bin.list
ls -1 $RPM_BUILD_ROOT/%{_bashcompdir} |\
grep -E -v 'pcp2spark|pcp2graphite|pcp2influxdb|pcp2zabbix' |\
grep -E -v 'pcp2elasticsearch|pcp2json|pcp2xlsx|pcp2xml' |\
- grep -E -v 'pmrep|pmdumptext' |\
+ grep -E -v 'pcp2csv|pmrep|pmdumptext' |\
sed -e 's#^#'%{_bashcompdir}'\/#' >base_bashcomp.list
# Separate the pcp-system-tools package files.
@@ -2230,10 +2272,10 @@ sed -e 's#^#'%{_bashcompdir}'\/#' >base_bashcomp.list
# so its also in pcp-system-tools.
%if !%{disable_python2} || !%{disable_python3}
ls -1 $RPM_BUILD_ROOT/%{_bindir} |\
- egrep -e 'pmiostat|pmrep|dstat' |\
+ egrep -e 'pmiostat|pmrep|dstat|pcp2csv' |\
sed -e 's#^#'%{_bindir}'\/#' >pcp-system-tools.list
ls -1 $RPM_BUILD_ROOT/%{_libexecdir}/pcp/bin |\
- egrep -e 'atop|collectl|dmcache|dstat|free|iostat|ipcs|lvmcache|mpstat' \
+ egrep -e 'atop|dmcache|dstat|free|iostat|ipcs|lvmcache|mpstat' \
-e 'numastat|pidstat|shping|tapestat|uptime|verify' |\
sed -e 's#^#'%{_libexecdir}/pcp/bin'\/#' >>pcp-system-tools.list
%endif
@@ -2248,7 +2290,7 @@ ls -1 $RPM_BUILD_ROOT/%{_libexecdir}/pcp/bin |\
ls -1 $RPM_BUILD_ROOT/%{_libexecdir}/pcp/bin |\
%if !%{disable_python2} || !%{disable_python3}
- grep -E -v 'atop|collectl|dmcache|dstat|free|iostat|ipcs|lvmcache|mpstat' |\
+ grep -E -v 'atop|dmcache|dstat|free|iostat|ipcs|lvmcache|mpstat' |\
grep -E -v 'numastat|shping|tapestat|uptime|verify|selinux-setup' |\
%endif
grep -E -v 'pmlogger_daily_report' |\
@@ -2503,8 +2545,10 @@ fi
%preun pmda-lmsensors
%{pmda_remove "$1" "lmsensors"}
+%if !%{disable_mssql}
%preun pmda-mssql
%{pmda_remove "$1" "mssql"}
+%endif
%preun pmda-netcheck
%{pmda_remove "$1" "netcheck"}
@@ -3097,9 +3141,6 @@ cd
%files pmda-lmsensors
%{_pmdasdir}/lmsensors
-%files pmda-mssql
-%{_pmdasdir}/mssql
-
%files pmda-netcheck
%{_pmdasdir}/netcheck
@@ -3109,6 +3150,11 @@ cd
%{_libdir}/zabbix
%{_sysconfdir}/zabbix/zabbix_agentd.d/zbxpcp.conf
+%if !%{disable_mssql}
+%files pmda-mssql
+%{_pmdasdir}/mssql
+%endif
+
%if !%{disable_json}
%files pmda-json
%{_pmdasdir}/json
@@ -3217,6 +3263,13 @@ cd
%endif
%changelog
+* Thu Feb 27 2020 Mark Goodwin <mgoodwin(a)redhat.com> - 5.0.3-1
+- Avoid python ctypes bitfield struct on-stack (BZ 1800685)
+- Add dstat support for DM/MD/part devices (BZ 1794273)
+- Fix compilation with gcc version 10 (BZ 1793495)
+- Fix dstat sub-sample averaging (BZ 1780039)
+- Update to latest PCP sources.
+
* Wed Jan 29 2020 Fedora Release Engineering <releng(a)fedoraproject.org> - 5.0.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
diff --git a/sources b/sources
index 2e2fdc4..6b028b3 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (pcp-5.0.2.src.tar.gz) = 3c4917995413841d813dd17168a7cafc007971e665e5d5a24192e2c03fe31af8bb948d928ceb054d369c0c1ae597bac2b1d7df25b9295a312c85777a2f31c4ec
+SHA512 (pcp-5.0.3.src.tar.gz) = 7b7b8d0df933ae555b2b99ba88e1dfceac06d123a2fbdc700f75b22da307073b090ce56bbff64069e1fe002ee14961aef619a84af57c354ff48ad902e2fc87d1
commit 55d842e7d2b7294f6a71dd7b2c8ff7d65d0ce147
Author: Fedora Release Engineering <releng(a)fedoraproject.org>
Date: Wed Jan 29 21:05:13 2020 +0000
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng(a)fedoraproject.org>
diff --git a/pcp.spec b/pcp.spec
index 12998d1..4e302f8 100644
--- a/pcp.spec
+++ b/pcp.spec
@@ -1,6 +1,6 @@
Name: pcp
Version: 5.0.2
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: System-level performance monitoring and performance management
License: GPLv2+ and LGPLv2+ and CC-BY
URL: https://pcp.io
@@ -3217,6 +3217,9 @@ cd
%endif
%changelog
+* Wed Jan 29 2020 Fedora Release Engineering <releng(a)fedoraproject.org> - 5.0.2-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
+
* Wed Dec 11 2019 Nathan Scott <nathans(a)redhat.com> - 5.0.2-1
- Resolve fresh install pmlogger timeout bug (BZ 1721223)
- Fix dstat exception writing to a closed fd (BZ 1768619)
4 years, 1 month
Architecture specific change in rpms/pcp.git
by githook-noreply@fedoraproject.org
The package rpms/pcp.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/pcp.git/commit/?id=7dd6b3631a5f38....
Change:
+%ifarch x86_64
Thanks.
Full change:
============
commit 7dd6b3631a5f3844eb8d703762f91f10a42e3907
Author: Mark Goodwin <mgoodwin(a)redhat.com>
Date: Thu Feb 27 21:54:04 2020 +1100
Update to pcp-5.0.3 community sources
diff --git a/pcp.spec b/pcp.spec
index 4e302f8..b9cc100 100644
--- a/pcp.spec
+++ b/pcp.spec
@@ -1,6 +1,6 @@
Name: pcp
-Version: 5.0.2
-Release: 2%{?dist}
+Version: 5.0.3
+Release: 1%{?dist}
Summary: System-level performance monitoring and performance management
License: GPLv2+ and LGPLv2+ and CC-BY
URL: https://pcp.io
@@ -14,6 +14,12 @@ Source0: %{bintray}/pcp/source/pcp-%{version}.src.tar.gz
%global __python2 python
%endif
+%if 0%{?rhel} >= 7 || 0%{?fedora} >= 17
+%global _hostname_executable /usr/bin/hostname
+%else
+%global _hostname_executable /bin/hostname
+%endif
+
%if 0%{?fedora} || 0%{?rhel} > 5
%global disable_selinux 0
%else
@@ -75,23 +81,23 @@ Source0: %{bintray}/pcp/source/pcp-%{version}.src.tar.gz
%global perl_interpreter perl
%endif
-# support for pmdabcc
+# support for pmdabcc, check bcc.spec for supported architectures of bcc
%if 0%{?fedora} >= 25 || 0%{?rhel} > 6
-%ifarch s390 s390x armv7hl aarch64 i686
-%global disable_bcc 1
-%else
+%ifarch x86_64 %{power64} aarch64 s390x
%global disable_bcc 0
+%else
+%global disable_bcc 1
%endif
%else
%global disable_bcc 1
%endif
-# support for pmdabpftrace
-%if 0%{?fedora} >= 30 || 0%{?rhel} > 8
-%ifarch s390 s390x armv7hl aarch64 i686
-%global disable_bpftrace 1
-%else
+# support for pmdabpftrace, check bpftrace.spec for supported architectures of bpftrace
+%if 0%{?fedora} >= 30 || 0%{?rhel} > 7
+%ifarch x86_64 %{power64} aarch64 s390x
%global disable_bpftrace 0
+%else
+%global disable_bpftrace 1
%endif
%else
%global disable_bpftrace 1
@@ -108,6 +114,17 @@ Source0: %{bintray}/pcp/source/pcp-%{version}.src.tar.gz
%global disable_json 1
%endif
+# No mssql ODBC driver on non-x86 platforms
+%ifarch x86_64
+%if !%{disable_python2} || !%{disable_python3}
+%global disable_mssql 0
+%else
+%global disable_mssql 1
+%endif
+%else
+%global disable_mssql 1
+%endif
+
# support for pmdanutcracker (perl deps missing on rhel)
%if 0%{?rhel} == 0
%global disable_nutcracker 0
@@ -229,7 +246,7 @@ BuildRequires: perl-generators
BuildRequires: perl-devel perl(strict)
BuildRequires: perl(ExtUtils::MakeMaker) perl(LWP::UserAgent) perl(JSON)
BuildRequires: perl(LWP::UserAgent) perl(Time::HiRes) perl(Digest::MD5)
-BuildRequires: man hostname
+BuildRequires: man %{_hostname_executable}
%if !%{disable_systemd}
BuildRequires: systemd-devel
%endif
@@ -243,7 +260,7 @@ BuildRequires: qt5-qtsvg-devel
%endif
%endif
-Requires: bash xz gawk sed grep findutils which hostname
+Requires: bash xz gawk sed grep findutils which %{_hostname_executable}
Requires: pcp-libs = %{version}-%{release}
%if !%{disable_selinux}
Requires: pcp-selinux = %{version}-%{release}
@@ -482,7 +499,10 @@ Requires: pcp-pmda-bpftrace
%if !%{disable_python2} || !%{disable_python3}
Requires: pcp-pmda-gluster pcp-pmda-zswap pcp-pmda-unbound pcp-pmda-mic
Requires: pcp-pmda-libvirt pcp-pmda-lio pcp-pmda-openmetrics pcp-pmda-haproxy
-Requires: pcp-pmda-lmsensors pcp-pmda-mssql pcp-pmda-netcheck
+Requires: pcp-pmda-lmsensors pcp-pmda-netcheck
+%endif
+%if !%{disable_mssql}
+Requires: pcp-pmda-mssql
%endif
%if !%{disable_snmp}
Requires: pcp-pmda-snmp
@@ -929,6 +949,8 @@ Requires: perl-PCP-PMDA = %{version}-%{release}
Requires: perl(LWP::UserAgent)
Requires: perl(XML::LibXML)
Requires: perl(File::Slurp)
+Requires: perl-autodie
+Requires: perl-Time-HighRes
%description pmda-bind2
This package contains the PCP Performance Metrics Domain Agent (PMDA) for
@@ -943,6 +965,8 @@ License: GPLv2+
Summary: Performance Co-Pilot (PCP) metrics for Redis
URL: https://pcp.io
Requires: perl-PCP-PMDA = %{version}-%{release}
+Requires: perl-autodie
+Requires: perl-Time-HiRes
%description pmda-redis
This package contains the PCP Performance Metrics Domain Agent (PMDA) for
@@ -989,6 +1013,7 @@ License: GPLv2+
Summary: Performance Co-Pilot (PCP) metrics for Database response times and Availablility
URL: https://pcp.io
Requires: perl-PCP-PMDA = %{version}-%{release}
+Requires: perl-DBI
%description pmda-dbping
This package contains the PCP Performance Metrics Domain Agent (PMDA) for
@@ -1021,6 +1046,7 @@ Summary: Performance Co-Pilot (PCP) metrics for 389 Directory Server Loggers
URL: https://pcp.io
Requires: perl-PCP-PMDA = %{version}-%{release}
Requires: perl-Date-Manip
+Requires: 389-ds-base
%description pmda-ds389log
This package contains the PCP Performance Metrics Domain Agent (PMDA) for
@@ -1050,6 +1076,8 @@ License: GPLv2+
Summary: Performance Co-Pilot (PCP) metrics for a GPS Daemon
URL: https://pcp.io
Requires: perl-PCP-PMDA = %{version}-%{release}
+Requires: perl-Time-HiRes
+Requires: perl-JSON
%description pmda-gpsd
This package contains the PCP Performance Metrics Domain Agent (PMDA) for
@@ -1210,6 +1238,7 @@ License: GPLv2+
Summary: Performance Co-Pilot (PCP) metrics for PowerDNS
URL: https://pcp.io
Requires: perl-PCP-PMDA = %{version}-%{release}
+Requires: perl-Time-HiRes
%description pmda-pdns
This package contains the PCP Performance Metrics Domain Agent (PMDA) for
@@ -1608,6 +1637,7 @@ License: GPLv2+
Summary: Performance Co-Pilot (PCP) metrics for hardware sensors
URL: https://pcp.io
Requires: pcp-libs = %{version}-%{release}
+Requires: lm_sensors
%if !%{disable_python3}
Requires: python3-pcp
%else
@@ -1621,11 +1651,11 @@ collecting metrics about the Linux hardware monitoring sensors.
# end pcp-pmda-lmsensors
#
-# pcp-pmda-mssql
+# pcp-pmda-netcheck
#
-%package pmda-mssql
+%package pmda-netcheck
License: GPLv2+
-Summary: Performance Co-Pilot (PCP) metrics for Microsoft SQL Server
+Summary: Performance Co-Pilot (PCP) metrics for simple network checks
URL: https://pcp.io
Requires: pcp-libs = %{version}-%{release}
%if !%{disable_python3}
@@ -1633,17 +1663,20 @@ Requires: python3-pcp
%else
Requires: %{__python2}-pcp
%endif
-%description pmda-mssql
+%description pmda-netcheck
This package contains the PCP Performance Metrics Domain Agent (PMDA) for
-collecting metrics from Microsoft SQL Server.
-# end pcp-pmda-mssql
+collecting metrics from simple network checks.
+# end pcp-pmda-netcheck
+
+%endif
+%if !%{disable_mssql}
#
-# pcp-pmda-netcheck
+# pcp-pmda-mssql
#
-%package pmda-netcheck
+%package pmda-mssql
License: GPLv2+
-Summary: Performance Co-Pilot (PCP) metrics for simple network checks
+Summary: Performance Co-Pilot (PCP) metrics for Microsoft SQL Server
URL: https://pcp.io
Requires: pcp-libs = %{version}-%{release}
%if !%{disable_python3}
@@ -1651,11 +1684,10 @@ Requires: python3-pcp
%else
Requires: %{__python2}-pcp
%endif
-%description pmda-netcheck
+%description pmda-mssql
This package contains the PCP Performance Metrics Domain Agent (PMDA) for
-collecting metrics from simple network checks.
-# end pcp-pmda-netcheck
-
+collecting metrics from Microsoft SQL Server.
+# end pcp-pmda-mssql
%endif
%if !%{disable_json}
@@ -1867,6 +1899,7 @@ License: GPLv2+
Summary: Performance Co-Pilot (PCP) metrics for S.M.A.R.T values
URL: https://pcp.io
Requires: pcp-libs = %{version}-%{release}
+Requires: smartmontools
%description pmda-smart
This package contains the PCP Performance Metric Domain Agent (PMDA) for
collecting metrics of disk S.M.A.R.T values making use of data from the
@@ -2111,6 +2144,11 @@ rm -f $RPM_BUILD_ROOT/%{_pmdasdir}/ib
rm -fr $RPM_BUILD_ROOT/%{_pmdasdir}/infiniband
%endif
+%if %{disable_mssql}
+# remove pmdamssql on platforms lacking MSODBC driver packages.
+rm -fr $RPM_BUILD_ROOT/%{_pmdasdir}/mssql
+%endif
+
%if %{disable_selinux}
rm -fr $RPM_BUILD_ROOT/%{_selinuxdir}
%endif
@@ -2129,6 +2167,10 @@ rm -rf $RPM_BUILD_ROOT/usr/share/doc/pcp-gui
desktop-file-validate $RPM_BUILD_ROOT/%{_datadir}/applications/pmchart.desktop
%endif
+%if %{disable_xlsx}
+rm -f $RPM_BUILD_ROOT/%{_bashcompdir}/pcp2xlsx
+%endif
+
%if 0%{?rhel} || 0%{?fedora}
# Fedora and RHEL default local only access for pmcd and pmlogger
sed -i -e '/^# .*_LOCAL=1/s/^# //' $RPM_BUILD_ROOT/%{_sysconfdir}/sysconfig/{pmcd,pmlogger}
@@ -2214,7 +2256,7 @@ ls -1 $RPM_BUILD_ROOT/%{_pmdasdir} |\
# all base pcp package files except those split out into sub-packages
ls -1 $RPM_BUILD_ROOT/%{_bindir} |\
- grep -E -v 'pmiostat|zabbix|zbxpcp|dstat|pmrep' |\
+ grep -E -v 'pmiostat|zabbix|zbxpcp|dstat|pmrep|pcp2csv' |\
grep -E -v 'pcp2spark|pcp2graphite|pcp2influxdb|pcp2zabbix' |\
grep -E -v 'pcp2elasticsearch|pcp2json|pcp2xlsx|pcp2xml' |\
grep -E -v 'pmdbg|pmclient|pmerr|genpmda' |\
@@ -2222,7 +2264,7 @@ sed -e 's#^#'%{_bindir}'\/#' >base_bin.list
ls -1 $RPM_BUILD_ROOT/%{_bashcompdir} |\
grep -E -v 'pcp2spark|pcp2graphite|pcp2influxdb|pcp2zabbix' |\
grep -E -v 'pcp2elasticsearch|pcp2json|pcp2xlsx|pcp2xml' |\
- grep -E -v 'pmrep|pmdumptext' |\
+ grep -E -v 'pcp2csv|pmrep|pmdumptext' |\
sed -e 's#^#'%{_bashcompdir}'\/#' >base_bashcomp.list
# Separate the pcp-system-tools package files.
@@ -2230,10 +2272,10 @@ sed -e 's#^#'%{_bashcompdir}'\/#' >base_bashcomp.list
# so its also in pcp-system-tools.
%if !%{disable_python2} || !%{disable_python3}
ls -1 $RPM_BUILD_ROOT/%{_bindir} |\
- egrep -e 'pmiostat|pmrep|dstat' |\
+ egrep -e 'pmiostat|pmrep|dstat|pcp2csv' |\
sed -e 's#^#'%{_bindir}'\/#' >pcp-system-tools.list
ls -1 $RPM_BUILD_ROOT/%{_libexecdir}/pcp/bin |\
- egrep -e 'atop|collectl|dmcache|dstat|free|iostat|ipcs|lvmcache|mpstat' \
+ egrep -e 'atop|dmcache|dstat|free|iostat|ipcs|lvmcache|mpstat' \
-e 'numastat|pidstat|shping|tapestat|uptime|verify' |\
sed -e 's#^#'%{_libexecdir}/pcp/bin'\/#' >>pcp-system-tools.list
%endif
@@ -2248,7 +2290,7 @@ ls -1 $RPM_BUILD_ROOT/%{_libexecdir}/pcp/bin |\
ls -1 $RPM_BUILD_ROOT/%{_libexecdir}/pcp/bin |\
%if !%{disable_python2} || !%{disable_python3}
- grep -E -v 'atop|collectl|dmcache|dstat|free|iostat|ipcs|lvmcache|mpstat' |\
+ grep -E -v 'atop|dmcache|dstat|free|iostat|ipcs|lvmcache|mpstat' |\
grep -E -v 'numastat|shping|tapestat|uptime|verify|selinux-setup' |\
%endif
grep -E -v 'pmlogger_daily_report' |\
@@ -2503,8 +2545,10 @@ fi
%preun pmda-lmsensors
%{pmda_remove "$1" "lmsensors"}
+%if !%{disable_mssql}
%preun pmda-mssql
%{pmda_remove "$1" "mssql"}
+%endif
%preun pmda-netcheck
%{pmda_remove "$1" "netcheck"}
@@ -3097,9 +3141,6 @@ cd
%files pmda-lmsensors
%{_pmdasdir}/lmsensors
-%files pmda-mssql
-%{_pmdasdir}/mssql
-
%files pmda-netcheck
%{_pmdasdir}/netcheck
@@ -3109,6 +3150,11 @@ cd
%{_libdir}/zabbix
%{_sysconfdir}/zabbix/zabbix_agentd.d/zbxpcp.conf
+%if !%{disable_mssql}
+%files pmda-mssql
+%{_pmdasdir}/mssql
+%endif
+
%if !%{disable_json}
%files pmda-json
%{_pmdasdir}/json
@@ -3217,6 +3263,13 @@ cd
%endif
%changelog
+* Thu Feb 27 2020 Mark Goodwin <mgoodwin(a)redhat.com> - 5.0.3-1
+- Avoid python ctypes bitfield struct on-stack (BZ 1800685)
+- Add dstat support for DM/MD/part devices (BZ 1794273)
+- Fix compilation with gcc version 10 (BZ 1793495)
+- Fix dstat sub-sample averaging (BZ 1780039)
+- Update to latest PCP sources.
+
* Wed Jan 29 2020 Fedora Release Engineering <releng(a)fedoraproject.org> - 5.0.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
diff --git a/sources b/sources
index 2e2fdc4..6b028b3 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (pcp-5.0.2.src.tar.gz) = 3c4917995413841d813dd17168a7cafc007971e665e5d5a24192e2c03fe31af8bb948d928ceb054d369c0c1ae597bac2b1d7df25b9295a312c85777a2f31c4ec
+SHA512 (pcp-5.0.3.src.tar.gz) = 7b7b8d0df933ae555b2b99ba88e1dfceac06d123a2fbdc700f75b22da307073b090ce56bbff64069e1fe002ee14961aef619a84af57c354ff48ad902e2fc87d1
4 years, 1 month