Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package chromium for openSUSE:Factory 
checked in at 2021-12-24 20:23:17
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/chromium (Old)
 and      /work/SRC/openSUSE:Factory/.chromium.new.2520 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "chromium"

Fri Dec 24 20:23:17 2021 rev:312 rq:942340 version:96.0.4664.110

Changes:
--------
--- /work/SRC/openSUSE:Factory/chromium/chromium.changes        2021-12-16 
21:20:41.794552844 +0100
+++ /work/SRC/openSUSE:Factory/.chromium.new.2520/chromium.changes      
2021-12-24 20:23:36.938033112 +0100
@@ -1,0 +2,11 @@
+Fri Dec 24 11:24:13 UTC 2021 - Callum Farmer <gm...@opensuse.org>
+
+- Added patches:
+  * chromium-96-freetype-unbundle.patch
+  * chromium-96-EnumTable-crash.patch
+- Unbundle freetype on TW
+- Unbundle icu on 15.4
+- Disable lto and update _constraints on aarch64
+- Remove MEIPreload: it gets installed through component updater
+
+-------------------------------------------------------------------

New:
----
  chromium-96-EnumTable-crash.patch
  chromium-96-freetype-unbundle.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ chromium.spec ++++++
--- /var/tmp/diff_new_pack.jJUiGD/_old  2021-12-24 20:23:41.146035317 +0100
+++ /var/tmp/diff_new_pack.jJUiGD/_new  2021-12-24 20:23:41.150035319 +0100
@@ -20,12 +20,10 @@
 %define outputdir ${TMPOUT}
 # bsc#1108175
 %define __provides_exclude ^lib.*\\.so.*$
-%if 0%{?suse_version} >= 1550
+%if 0%{?suse_version} >= 1550 || 0%{?sle_version} >= 150400
 %bcond_without system_icu
-%bcond_with system_vpx
 %else
 %bcond_with system_icu
-%bcond_with system_vpx
 %endif
 %if 0%{?suse_version} >= 1550 || 0%{?sle_version} >= 150200
 %bcond_without pipewire
@@ -34,18 +32,21 @@
 %endif
 %bcond_without system_ffmpeg
 %bcond_without system_zlib
-%bcond_with system_freetype
-%ifarch %{arm} aarch64
+%bcond_with system_vpx
+%ifarch aarch64
 %bcond_with swiftshader
+%bcond_with lto
 %else
 %bcond_without swiftshader
+%bcond_without lto
 %endif
 %if 0%{?suse_version} >= 1550
 %bcond_without system_harfbuzz
+%bcond_without system_freetype
 %else
 %bcond_with system_harfbuzz
+%bcond_with system_freetype
 %endif
-%bcond_without lto
 %bcond_with clang
 Name:           chromium
 Version:        96.0.4664.110
@@ -104,6 +105,8 @@
 Patch74:        chromium-96-RestrictedCookieManager-tuple.patch
 Patch75:        chromium-96-DrmRenderNodePathFinder-include.patch
 Patch76:        chromium-96-CouponDB-include.patch
+Patch77:        chromium-96-freetype-unbundle.patch
+Patch78:        chromium-96-EnumTable-crash.patch
 # Google seem not too keen on merging this but GPU accel is quite important
 #  https://chromium-review.googlesource.com/c/chromium/src/+/532294
 #  
https://github.com/saiarcot895/chromium-ubuntu-build/tree/master/debian/patches
@@ -269,7 +272,10 @@
 BuildRequires:  lld12
 BuildRequires:  llvm12
 %else
+#!BuildIgnore:  gcc
 BuildRequires:  clang
+BuildRequires:  gcc10
+BuildRequires:  libstdc++6-devel-gcc10
 BuildRequires:  lld
 BuildRequires:  llvm
 %endif
@@ -743,9 +749,11 @@
 %endif
 %if %{with clang}
 myconf_gn+=" is_clang=true clang_base_path=\"/usr\" 
clang_use_chrome_plugins=false"
+%if %{with lto} && %{with clang}
 %if 0%{?suse_version} >= 1550 || 0%{?sle_version} >= 150300
 myconf_gn+=" use_thin_lto=true"
 %endif
+%endif
 myconf_gn+=" use_lld=true"
 %else
 myconf_gn+=" is_clang=false"

++++++ INSTALL.sh ++++++
--- /var/tmp/diff_new_pack.jJUiGD/_old  2021-12-24 20:23:41.174035331 +0100
+++ /var/tmp/diff_new_pack.jJUiGD/_new  2021-12-24 20:23:41.182035336 +0100
@@ -53,13 +53,6 @@
     cp -a {} "${STAGEDIR}/${INSTALLDIR}/locales/" \;
 find "${STAGEDIR}/${INSTALLDIR}/locales" -type f -print -exec chmod 644 {} \;
 
-# MEI Preload
-if [ -f "${OUTPUTDIR}/MEIPreload/manifest.json" ]; then
-    install -m 755 -d "${STAGEDIR}/${INSTALLDIR}/MEIPreload/"
-    install -m 644 "${OUTPUTDIR}/MEIPreload/manifest.json" 
"${STAGEDIR}/${INSTALLDIR}/MEIPreload/"
-    install -m 644 "${OUTPUTDIR}/MEIPreload/preloaded_data.pb" 
"${STAGEDIR}/${INSTALLDIR}/MEIPreload/"
-fi
-
 # ANGLE
 if [ -f "${OUTPUTDIR}/libEGL.so" ]; then
     for file in libEGL.so libGLESv2.so;

++++++ _constraints ++++++
--- /var/tmp/diff_new_pack.jJUiGD/_old  2021-12-24 20:23:41.222035356 +0100
+++ /var/tmp/diff_new_pack.jJUiGD/_new  2021-12-24 20:23:41.226035359 +0100
@@ -26,6 +26,9 @@
       <cpu>
       <flag>asimdrdm</flag>
       </cpu>
+      <memory>
+        <size unit="G">12</size>
+      </memory>
     </hardware>
   </overwrite>
 </constraints>

++++++ chromium-96-EnumTable-crash.patch ++++++
diff --git a/components/cast_channel/enum_table.h 
b/components/cast_channel/enum_table.h
index aad9e08..2f3fcad 100644
--- a/components/cast_channel/enum_table.h
+++ b/components/cast_channel/enum_table.h
@@ -8,6 +8,7 @@
 #include <cstdint>
 #include <cstring>
 #include <ostream>
+#include <vector>
 
 #include "base/check_op.h"
 #include "base/macros.h"
@@ -188,7 +189,6 @@ class
   inline constexpr GenericEnumTableEntry(int32_t value);
   inline constexpr GenericEnumTableEntry(int32_t value, base::StringPiece str);
 
-  GenericEnumTableEntry(const GenericEnumTableEntry&) = delete;
   GenericEnumTableEntry& operator=(const GenericEnumTableEntry&) = delete;
 
  private:
@@ -254,7 +254,6 @@ class EnumTable {
     constexpr Entry(E value, base::StringPiece str)
         : GenericEnumTableEntry(static_cast<int32_t>(value), str) {}
 
-    Entry(const Entry&) = delete;
     Entry& operator=(const Entry&) = delete;
   };
 
@@ -313,15 +312,14 @@ class EnumTable {
     if (is_sorted_) {
       const std::size_t index = static_cast<std::size_t>(value);
       if (ANALYZER_ASSUME_TRUE(index < data_.size())) {
-        const auto& entry = data_.begin()[index];
+        const auto& entry = data_[index];
         if (ANALYZER_ASSUME_TRUE(entry.has_str()))
           return entry.str();
       }
       return absl::nullopt;
     }
     return GenericEnumTableEntry::FindByValue(
-        reinterpret_cast<const GenericEnumTableEntry*>(data_.begin()),
-        data_.size(), static_cast<int32_t>(value));
+        &data_[0], data_.size(), static_cast<int32_t>(value));
   }
 
   // This overload of GetString is designed for cases where the argument is a
@@ -349,8 +347,7 @@ class EnumTable {
   // enum value directly.
   absl::optional<E> GetEnum(base::StringPiece str) const {
     auto* entry = GenericEnumTableEntry::FindByString(
-        reinterpret_cast<const GenericEnumTableEntry*>(data_.begin()),
-        data_.size(), str);
+        &data_[0], data_.size(), str);
     return entry ? static_cast<E>(entry->value) : absl::optional<E>();
   }
 
@@ -365,7 +362,7 @@ class EnumTable {
   // Align the data on a cache line boundary.
   alignas(64)
 #endif
-      std::initializer_list<Entry> data_;
+      const std::vector<Entry> data_;
   bool is_sorted_;
 
   constexpr EnumTable(std::initializer_list<Entry> data, bool is_sorted)
@@ -377,8 +374,8 @@ class EnumTable {
 
     for (std::size_t i = 0; i < data.size(); i++) {
       for (std::size_t j = i + 1; j < data.size(); j++) {
-        const Entry& ei = data.begin()[i];
-        const Entry& ej = data.begin()[j];
+        const Entry& ei = data[i];
+        const Entry& ej = data[j];
         DCHECK(ei.value != ej.value)
             << "Found duplicate enum values at indices " << i << " and " << j;
         DCHECK(!(ei.has_str() && ej.has_str() && ei.str() == ej.str()))

++++++ chromium-96-freetype-unbundle.patch ++++++
--- a/build/linux/BUILD.gn
+++ b/build/linux/BUILD.gn
@@ -23,6 +23,7 @@
   # the system, use with caution,for details see 
build/config/freetype/BUILD.gn.
   pkg_config("freetype_from_pkgconfig") {
     visibility = [
+      "//build/config/freetype:freetype",
       "//third_party:freetype_harfbuzz",
       "//third_party/harfbuzz-ng:harfbuzz_source",
     ]

Reply via email to