Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package chromium for openSUSE:Factory checked in at 2026-10-08 11:55:39 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/chromium (Old) and /work/SRC/openSUSE:Factory/.chromium.new.3698736 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "chromium" Thu Oct 8 11:55:39 2026 rev:553 rq:1382961 version:155.0.8059.39 Changes: -------- --- /work/SRC/openSUSE:Factory/chromium/chromium.changes 2026-10-05 12:56:17.431423433 +0200 +++ /work/SRC/openSUSE:Factory/.chromium.new.3698736/chromium.changes 2026-10-08 11:58:13.434063479 +0200 @@ -1,0 +2,291 @@ +Tue Oct 6 17:57:27 UTC 2026 - Andreas Stieger <[email protected]> + +- Chromium 155 promoted to stable - 155.0.8059.39 (boo#1284354): + * CVE-2026-106382: Use after free in Chromecast + * CVE-2026-106197: Use after free in Browser + * CVE-2026-106358: Use after free in Navigation + * CVE-2026-106347: Use after free in Track + * CVE-2026-106245: Uninitialized resource in ANGLE + * CVE-2026-106327: Incorrect authorization in Core + * CVE-2026-106366: Incomplete cleanup in CustomTabs + * CVE-2026-106258: Uninitialized resource in ANGLE + * CVE-2026-106376: Uninitialized resource in ANGLE + * CVE-2026-106308: Incorrect reference resolution in Autofill + * CVE-2026-106215: Uninitialized resource in ANGLE + * CVE-2026-106369: Missing authorization in Translate + * CVE-2026-106293: Type confusion in ANGLE + * CVE-2026-106377: Race condition in Fonts + * CVE-2026-106412: Race condition in Core + * CVE-2026-106243: Incomplete cleanup in Proxy Auth + * CVE-2026-106214: Information leak in Proxy + * CVE-2026-106364: Incorrect authorization in Omnibox + * CVE-2026-106239: Integer overflow in WebGL + * CVE-2026-106426: Race condition in Fonts + * CVE-2026-106419: Use after free in ANGLE + * CVE-2026-106396: Improper input validation in Omnibox + * CVE-2026-106323: Missing authorization in Chrome for iOS + * CVE-2026-106231: Uninitialized resource in Dawn + * CVE-2026-106202: Uninitialized resource in ANGLE + * CVE-2026-106273: Uninitialized resource in Video + * CVE-2026-106203: Incomplete cleanup in Autofill + * CVE-2026-106332: Integer overflow in Compositing + * CVE-2026-106281: Use after free in Tint + * CVE-2026-106298: Use after free in Chrome Tabs + * CVE-2026-106193: Use after free in Parser + * CVE-2026-106255: Race condition in V8 + * CVE-2026-106393: Use after free in Storage + * CVE-2026-106227: Use after free in Core + * CVE-2026-106379: Uninitialized resource in Skia + * CVE-2026-106211: Use after free in TabStrip + * CVE-2026-106329: Incorrect authorization in FileSystem + * CVE-2026-106248: Use after free in Bindings + * CVE-2026-106235: Use after free in WebAudio + * CVE-2026-106257: Use after free in HTML + * CVE-2026-106268: Use after free in WebRTC + * CVE-2026-106278: Use after free in Select + * CVE-2026-106233: Use after free in Metrics + * CVE-2026-106318: Use after free in Media + * CVE-2026-106411: Use after free in Parser + * CVE-2026-106423: Use after free in Media + * CVE-2026-106346: Improper state validation in DevTools + * CVE-2026-106190: Use after free in Media + * CVE-2026-106357: Use after free in WebRTC + * CVE-2026-106240: Type confusion in V8 + * CVE-2026-106184: Uninitialized resource in Media + * CVE-2026-106383: Use after free in Media + * CVE-2026-106349: Use after free in V8 + * CVE-2026-106421: Use after free in PDF + * CVE-2026-106204: Use after free in PDF + * CVE-2026-106200: Use after free in Track + * CVE-2026-106265: UI misrepresentation in File + * CVE-2026-106238: Race condition in Fonts + * CVE-2026-106324: Incorrect authorization in WebAppInstalls + * CVE-2026-106420: Incorrect calculation in API + * CVE-2026-106222: Incorrect authorization in Sync + * CVE-2026-106208: Missing authorization in API + * CVE-2026-106286: Confused deputy in Omnibox + * CVE-2026-106181: Incorrect reference resolution in DevTools + * CVE-2026-106315: Use after free in Modularization + * CVE-2026-106274: Incorrect reference resolution in Browser + * CVE-2026-106365: Missing authorization in Animation + * CVE-2026-106267: Missing authorization in Network + * CVE-2026-106194: Missing authorization in WebAppInstalls + * CVE-2026-106313: Incorrect authorization in Browser + * CVE-2026-106283: Use after free in Streaming + * CVE-2026-106291: Use after free in GarbageCollection + * CVE-2026-106300: Race condition in CacheStorage + * CVE-2026-106314: Incorrect authorization in Bluetooth + * CVE-2026-106223: Uninitialized resource in GPU + * CVE-2026-106242: Information leak in Omnibox + * CVE-2026-106241: Incorrect authorization in Search + * CVE-2026-106381: Incorrect authorization in Passwords + * CVE-2026-106217: Missing authorization in Google Lens + * CVE-2026-106425: Missing authorization in BrowserTag + * CVE-2026-106225: Missing authorization in Autofill + * CVE-2026-106363: Missing authorization in FullScreen + * CVE-2026-106266: Confused deputy in Contextual Tasks + * CVE-2026-106189: Code injection in ReaderMode + * CVE-2026-106335: Use after free in Media + * CVE-2026-106415: Information leak in Enterprise + * CVE-2026-106224: Missing authorization in Google Lens + * CVE-2026-106185: Improper input validation in Viz + * CVE-2026-106244: Incorrect authorization in Permissions + * CVE-2026-106407: Incorrect authorization in GetUserMedia + * CVE-2026-106389: Incorrect authorization in USB + * CVE-2026-106397: Incorrect authorization in Mobile + * CVE-2026-106196: Missing authorization in Navigation + * CVE-2026-106414: Improper input validation in Mobile + * CVE-2026-106408: Protection mechanism failure in Mobile + * CVE-2026-106261: Uninitialized resource in Video + * CVE-2026-106406: Missing authorization in Mobile + * CVE-2026-106290: Uninitialized resource in GPU + * CVE-2026-106378: Privilege elevation in Sandbox + * CVE-2026-106198: Missing authorization in FileSystem + * CVE-2026-106326: Confused deputy in UI + * CVE-2026-106354: Improper resource exposure in Extensions + * CVE-2026-106342: Information leak in Autofill + * CVE-2026-106424: Information leak in Audio + * CVE-2026-106253: Incorrect authorization in Extensions + * CVE-2026-106279: Incorrect reference resolution in Passwords + * CVE-2026-106361: Incorrect provision of specified functionality in Mobile + * CVE-2026-106402: Incorrect authorization in Extensions + * CVE-2026-106311: Clickjacking in PermissionElement + * CVE-2026-106246: Incorrect authorization in Browser + * CVE-2026-106302: UI misrepresentation in PermissionElement + * CVE-2026-106416: Code injection in Extensions + * CVE-2026-106182: UI misrepresentation in Paint + * CVE-2026-106282: UI misrepresentation in WebOTP + * CVE-2026-106392: Information leak in WebAudio + * CVE-2026-106188: Confused deputy in SignIn + * CVE-2026-106370: Uninitialized resource in GPU + * CVE-2026-106356: Clickjacking in EVP + * CVE-2026-106405: Race condition in CustomTabs + * CVE-2026-106322: Open redirect in AppManifest + * CVE-2026-106280: Incorrect authorization in PermissionElement + * CVE-2026-106206: Improper input validation in Mobile + * CVE-2026-106180: Observable discrepancy in Animation + * CVE-2026-106303: Observable discrepancy in Autofill AI + * CVE-2026-106201: Race condition in V8 + * CVE-2026-106333: Incorrect authorization in Input + * CVE-2026-106228: Confused deputy in Google Lens + * CVE-2026-106289: Missing authorization in FedCM + * CVE-2026-106277: Information leak in Animation + * CVE-2026-106410: Missing authorization in Permissions + * CVE-2026-106284: Out of bounds read in Printing + * CVE-2026-106209: UI misrepresentation in Mobile + * CVE-2026-106216: Cross-site request forgery in ReadingList + * CVE-2026-106328: Incorrect authorization in PDF + * CVE-2026-106387: Missing authorization in Mobile + * CVE-2026-106400: Clickjacking in Messages + * CVE-2026-106205: Missing authorization in Passwords + * CVE-2026-106213: Race condition in WebAudio + * CVE-2026-106230: Incorrect reference resolution in Offline + * CVE-2026-106367: Missing authorization in Mobile + * CVE-2026-106226: Improper input validation in Compositing + * CVE-2026-106229: UI misrepresentation in FileSystem + * CVE-2026-106232: UI misrepresentation in Browser + * CVE-2026-106391: Incorrect authorization in WebShare + * CVE-2026-106336: Observable discrepancy in Paint + * CVE-2026-106403: Incorrect authorization in Accessibility + * CVE-2026-106373: Use after free in Fonts + * CVE-2026-106301: Confused deputy in Contextual Tasks + * CVE-2026-106292: Buffer overflow in Fonts + * CVE-2026-106262: Incomplete cleanup in GetUserMedia + * CVE-2026-106360: Information leak in Payments + * CVE-2026-106375: Incomplete cleanup in Dawn + * CVE-2026-106348: Information leak in Animation + * CVE-2026-106307: Incorrect authorization in Network + * CVE-2026-106212: Incorrect authorization in Autofill + * CVE-2026-106398: Incorrect authorization in Media + * CVE-2026-106388: Missing authorization in DataTransfer + * CVE-2026-106271: Missing authorization in Workers + * CVE-2026-106395: Uninitialized resource in Dawn + * CVE-2026-106304: Out of bounds read in ANGLE + * CVE-2026-106401: Out of bounds write in Media + * CVE-2026-106330: Information leak in Paint + * CVE-2026-106295: Incorrect authorization in Unbounded Element + * CVE-2026-106352: Incorrect authorization in WebProtect + * CVE-2026-106337: UI misrepresentation in UI + * CVE-2026-106263: Improper input validation in SignIn + * CVE-2026-106404: Incorrect authorization in FontAccess + * CVE-2026-106183: Missing authorization in Chromoting + * CVE-2026-106386: Uninitialized resource in WebAudio + * CVE-2026-106351: Observable discrepancy in Safebrowsing + * CVE-2026-106384: Missing authorization in SiteIsolation + * CVE-2026-106207: Race condition in V8 + * CVE-2026-106321: Information leak in Editing + * CVE-2026-106210: Observable discrepancy in Scroll + * CVE-2026-106254: Information leak in Mobile + * CVE-2026-106372: Incorrect authorization in UI + * CVE-2026-106341: Type confusion in V8 + * CVE-2026-106409: Incorrect reference resolution in WebAppInstalls + * CVE-2026-106340: Missing authorization in CredentialProvider + * CVE-2026-106276: UI misrepresentation in Payments + * CVE-2026-106338: UI misrepresentation in PictureInPicture + * CVE-2026-106317: UI misrepresentation in FullScreen + * CVE-2026-106344: Missing authorization in Permissions + * CVE-2026-106359: Confused deputy in DeviceBoundSessionCredentials + * CVE-2026-106353: Improper input validation in Mobile + * CVE-2026-106312: Missing authorization in SignIn + * CVE-2026-106191: Missing authorization in Actor + * CVE-2026-106250: Missing authorization in Actor + * CVE-2026-106309: Incorrect authorization in Selection + * CVE-2026-106187: Missing authorization in Permissions + * CVE-2026-106394: Incomplete cleanup in Glic + * CVE-2026-106306: Incorrect authorization in DevTools + * CVE-2026-106427: Confused deputy in Mobile + * CVE-2026-106252: Incorrect comparison in Fonts + * CVE-2026-106287: Information loss in CORS + * CVE-2026-106297: Incorrect authorization in Scheduling + * CVE-2026-106260: Incorrect authorization in DevTools + * CVE-2026-106362: Missing authorization in DevTools + * CVE-2026-106275: Uninitialized resource in GPU + * CVE-2026-106199: Incorrect authorization in Actor + * CVE-2026-106299: Improper input validation in WebAudio + * CVE-2026-106422: Incorrect authorization in API + * CVE-2026-106186: Uncontrolled search path element in CredentialProvider + * CVE-2026-106247: Buffer overflow in ANGLE + * CVE-2026-106192: Information leak in Mobile + * CVE-2026-106399: Out of bounds read in Skia + * CVE-2026-106264: Missing authorization in Web Authentication (Passkeys & Security Keys) + * CVE-2026-106285: UI misrepresentation in WebAppInstalls + * CVE-2026-106220: Information leak in Passwords + * CVE-2026-106417: Integer overflow in Media + * CVE-2026-106221: Confused deputy in WebAPKs + * CVE-2026-106259: Incorrect authorization in PermissionElement + * CVE-2026-106296: Improper privilege management in UI + * CVE-2026-106249: Incorrect authorization in Autofill + * CVE-2026-106374: Type confusion in V8 + * CVE-2026-106380: UI misrepresentation in UI + * CVE-2026-106179: UI misrepresentation in WebAppInstalls + * CVE-2026-106368: UI misrepresentation in UI + * CVE-2026-106237: Information leak in Permissions + * CVE-2026-106331: Improper input validation in Extensions + * CVE-2026-106270: Incorrect authorization in WebAppInstalls + * CVE-2026-106350: Incorrect authorization in Browser + * CVE-2026-106288: Missing authorization in Browser + * CVE-2026-106305: UI misrepresentation in Mobile + * CVE-2026-106418: Missing authorization in Network + * CVE-2026-106343: Improper state validation in Autofill AI + * CVE-2026-106371: Incorrect authorization in Transactions Platform + * CVE-2026-106256: Information leak in Passwords + * CVE-2026-106413: Race condition in Browser + * CVE-2026-106339: Use of released resource in Core + * CVE-2026-106320: Use of released resource in UI + * CVE-2026-106195: Incorrect authorization in Chromoting + * CVE-2026-106316: UI misrepresentation in Chromoting + * CVE-2026-106385: Race condition in Chromoting + * CVE-2026-106325: Incorrect reference resolution in Core + * CVE-2026-106390: Incorrect provision of specified functionality in SanitizerAPI + * CVE-2026-106294: Incomplete cleanup in Chromoting + * CVE-2026-106334: Information leak in Payments + * CVE-2026-106236: UI misrepresentation in Chromoting + * CVE-2026-106251: UI misrepresentation in Chromoting + * CVE-2026-106310: Use of released resource in FontAccess + * CVE-2026-106345: Use of released resource in Session + * CVE-2026-106272: UI misrepresentation in Chromoting + * CVE-2026-106355: Missing authorization in Media + * CVE-2026-106234: Use after free in Network + * CVE-2026-106269: Use after free in CSS + +------------------------------------------------------------------- +Mon Oct 5 10:16:10 UTC 2026 - Ruediger Oertel <[email protected]> + +- Chromium 155.0.8059.12 (beta release 2026-09-23) +- try to build without libstdc++-devel and gcc-c++ + (we are still pulling in libstdc++ headers + by accident in some places) +- pregenerate bytecodes list for v8 to work around coredump + for 15-sp7-ppc64le +- added patches: + * chromium-155-consistently-cxx23.patch + * chromium-155-v8-clang-path.patch + * chromium-153-ftbfs-pipewire-api.patch + * chromium-155-older-clang-bindings.patch + * chromium-155-v8-cxx-include.patch +- modified patches: + * chromium-102-regex_pattern-array.patch + * chromium-127-constexpr.patch + * chromium-133-bring_back_and_disable_allowlist.patch + * chromium-152-rust-cbor.patch + * ppc-debian-0003-third_party-ffmpeg-Add-ppc64-generated-config.patch + * chromium-149-strip-path.patch + * chromium-152-value_or.patch + * chromium-154-revert-crubit_private_verification_tokens.patch + * ppc-fedora-0002-regenerate-xnn-buildgn.patch + * chromium-151-privatefriends.patch + * ppc-fedora-0001-Force-baseline-POWER8-AltiVec-VSX-CPU-features-when-.patch + * ppc-fedora-0001-third_party-libvpx-Properly-generate-gni-on-ppc64.patch +- dropped patches: + * chromium-a0253ec15b3d3072fb35d6be29ba9224c36f9dd7.patch + * chromium-154-fix_split_compilation.patch +- keeplibs: + removed: third_party/bidimapper (gone) +- bump esbuild to 0.28.2 +- set v8 clang path arguments + - v8_metagen_libclang_so + - v8_metagen_libclang_bindings_dir +- drop ppc64le from exclusivearch for code15 + can not find a cure for illegal instructions in new v8 code + +------------------------------------------------------------------- Old: ---- chromium-154-fix_split_compilation.patch chromium-154.0.8037.97-linux.tar.xz chromium-a0253ec15b3d3072fb35d6be29ba9224c36f9dd7.patch esbuild-0.25.1-vendor.tar.gz esbuild-0.25.1.tar.gz New: ---- chromium-153-ftbfs-pipewire-api.patch chromium-155-consistently-cxx23.patch chromium-155-older-clang-bindings.patch chromium-155-v8-clang-path.patch chromium-155-v8-cxx-include.patch chromium-155.0.8059.39-linux.tar.xz esbuild-0.28.2-vendor.tar.gz esbuild-0.28.2.tar.gz ----------(Old B)---------- Old: * chromium-a0253ec15b3d3072fb35d6be29ba9224c36f9dd7.patch * chromium-154-fix_split_compilation.patch - keeplibs: Old:- dropped patches: * chromium-a0253ec15b3d3072fb35d6be29ba9224c36f9dd7.patch * chromium-154-fix_split_compilation.patch ----------(Old E)---------- ----------(New B)---------- New: * chromium-155-v8-clang-path.patch * chromium-153-ftbfs-pipewire-api.patch * chromium-155-older-clang-bindings.patch New:- added patches: * chromium-155-consistently-cxx23.patch * chromium-155-v8-clang-path.patch New: * chromium-153-ftbfs-pipewire-api.patch * chromium-155-older-clang-bindings.patch * chromium-155-v8-cxx-include.patch New: * chromium-155-consistently-cxx23.patch * chromium-155-v8-clang-path.patch * chromium-153-ftbfs-pipewire-api.patch New: * chromium-155-older-clang-bindings.patch * chromium-155-v8-cxx-include.patch - modified patches: ----------(New E)---------- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ chromium.spec ++++++ --- /var/tmp/diff_new_pack.gZepun/_old 2026-10-08 11:58:27.033632379 +0200 +++ /var/tmp/diff_new_pack.gZepun/_new 2026-10-08 11:58:27.036632504 +0200 @@ -79,7 +79,7 @@ # GCC version %define gcc_version 14 # minimal esbuild version -%define esbuild_version 0.25.1 +%define esbuild_version 0.28.2 # minimal gn version %define gn_version 0.20260831 # local rollup override to run without binaries @@ -139,7 +139,7 @@ %global official_build 1 Name: chromium%{n_suffix} -Version: 154.0.8037.97 +Version: 155.0.8059.39 Release: 0 Summary: Google's open source browser project License: BSD-3-Clause AND LGPL-2.1-or-later @@ -220,7 +220,10 @@ Patch407: chromium-153-ignore-typescript-deps.patch Patch408: chromium-154-revert-crubit_web_package.patch Patch409: chromium-154-revert-crubit_private_verification_tokens.patch -Patch410: chromium-154-fix_split_compilation.patch +Patch410: chromium-155-v8-clang-path.patch +Patch411: chromium-153-ftbfs-pipewire-api.patch +Patch412: chromium-155-older-clang-bindings.patch +Patch413: chromium-155-v8-cxx-include.patch # conditionally applied patches ppc64le only # where applicable patch numbers from fedora specfile + 100 Patch452: ppc-fedora-memory-allocator-dcheck-assert-fix.patch @@ -320,10 +323,12 @@ Patch1074: chromium-152-no-lifetime-checks.patch Patch1075: chromium-152-no-warning-suppression-map.patch Patch1080: rollup.patch -# another crubit revert -Patch1081: chromium-493e6c3911e33cc356856bafbffc6cf95521266b.patch -# revert patch needing more recent pipewire -Patch1082: chromium-a0253ec15b3d3072fb35d6be29ba9224c36f9dd7.patch +# more crubit fallout +Patch1082: chromium-493e6c3911e33cc356856bafbffc6cf95521266b.patch +Patch1083: chromium-155-consistently-cxx23.patch +# get v8 to build on code15 +# c++ include limits is found by chance on newer versions, +# try to force the needed include dir into code15 # end conditionally applied patches BuildRequires: SDL-devel @@ -471,7 +476,11 @@ Obsoletes: chromium-ffmpeg < %{version} Obsoletes: chromium-ffmpegsumo < %{version} # no 32bit supported and it takes ages to build +%if 0%{?suse_version} >= 1600 ExclusiveArch: x86_64 aarch64 riscv64 ppc64le +%else +ExclusiveArch: x86_64 aarch64 riscv64 +%endif %if 0%{?suse_version} <= 1500 BuildRequires: pkgconfig(glproto) %endif @@ -540,12 +549,18 @@ BuildRequires: (libc++1 >= %{llvm_version_long} with libc++1 < %{llvm_version_long_plus}) BuildRequires: (libc++abi.so >= %{llvm_version_long} with libc++abi.so < %{llvm_version_long_plus}) BuildRequires: (libc++abi1 >= %{llvm_version_long} with libc++abi1 < %{llvm_version_long_plus}) +#!BuildIgnore: libstdc++6-devel-gcc%{gcc_version} +#!BuildIgnore: libstdc++-devel +#!BuildIgnore: gcc13-c++ +#!BuildIgnore: gcc%{gcc_version}-c++ +#!BuildIgnore: gcc-c++ %endif BuildRequires: lld%{llvm_version} BuildRequires: llvm%{llvm_version} -%ifnarch ppc64le +#ifnarch ppc64le +#needed if regenerating libaom config #!BuildIgnore: gcc -%endif +#endif %else # gcc case BuildRequires: binutils-gold @@ -623,12 +638,12 @@ fi # revert another crubit patch until we get a proper building crubit -%patch -p1 -R -P 1081 - -%if %{without pipewire16} -pushd third_party/webrtc %patch -p1 -R -P 1082 -popd + +%if 0%{?suse_version} < 1600 +%ifarch ppc64le +%patch -p1 -P 1083 +%endif %endif ## ROLLUP_HACK @@ -640,7 +655,7 @@ %patch -p1 -P 1080 # re-enabled if patch is outdated to regenerate in build environment -%ifarch ppc64le +%ifarch ppc64le_disabled pushd third_party/libaom git init git config --global user.email "build@host" @@ -743,6 +758,10 @@ ln -sfn %{_bindir}/$PYTHON $HOME/bin/python3 export PATH="$HOME/bin:$PATH" +# gn binary +rm -f buildtools/linux64/gn +ln -sf %{_bindir}/gn buildtools/linux64/gn + # use our wrapper rm chrome/installer/linux/common/wrapper cp %{SOURCE106} chrome/installer/linux/common/wrapper @@ -759,6 +778,10 @@ # fix lld version ln -snf /usr/bin/ld.lld-%{llvm_version} $HOME/bin/ld.lld +# ugly hack for python clang bindings +mkdir python-clang +cp -av third_party/llvm-libclang/bindings/python/clang python-clang + # Remove bundled libs keeplibs=( base/third_party/cityhash @@ -790,7 +813,6 @@ third_party/anonymous_tokens third_party/apple_apsl third_party/axe-core - third_party/bidimapper third_party/blink third_party/boringssl third_party/boringssl/src/third_party/fiat @@ -1270,6 +1292,8 @@ %endif myconf_gn+=" use_v8_context_snapshot=true" myconf_gn+=" v8_use_external_startup_data=true" +myconf_gn+=" v8_metagen_libclang_so=\"%{_prefix}/lib64/libclang.so\"" +myconf_gn+=" v8_metagen_libclang_bindings_dir=\"$RPM_BUILD_DIR/%{?buildsubdir}/python-clang\"" myconf_gn+=" rust_sysroot_absolute=\"%{_prefix}\"" myconf_gn+=" rust_bindgen_root=\"%{_prefix}\"" myconf_gn+=" rustc_version=\"$rustc_version\"" @@ -1383,6 +1407,8 @@ %files %license LICENSE %doc AUTHORS +# hack to keep the generated file +%doc out/gen/v8/builtins-generated/bytecodes-builtins-list.h %{_datadir}/chromium %dir %{_sysconfdir}/chromium %dir %{_sysconfdir}/chromium/policies ++++++ _scmsync.obsinfo ++++++ --- /var/tmp/diff_new_pack.gZepun/_old 2026-10-08 11:58:27.276642540 +0200 +++ /var/tmp/diff_new_pack.gZepun/_new 2026-10-08 11:58:27.285642916 +0200 @@ -1,7 +1,7 @@ -mtime: 1790959900 -commit: 3aff20372a9e3bede296343659cba0b5e6ee7bb0e7a32889804b134d4713254d +mtime: 1791355254 +commit: 04cc25ec8a1e9a3bdc97e7d136e84bed4da1dd9085f0a83b7bde689cd36ca5ad url: https://src.opensuse.org/chromium/chromium -revision: 3aff20372a9e3bede296343659cba0b5e6ee7bb0e7a32889804b134d4713254d +revision: 04cc25ec8a1e9a3bdc97e7d136e84bed4da1dd9085f0a83b7bde689cd36ca5ad trackingbranch: main projectscmsync: https://src.opensuse.org/chromium/_ObsPrj.git ++++++ build.specials.obscpio ++++++ ++++++ build.specials.obscpio ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/.gitignore new/.gitignore --- old/.gitignore 1970-01-01 01:00:00.000000000 +0100 +++ new/.gitignore 2026-10-07 08:40:54.000000000 +0200 @@ -0,0 +1,4 @@ +.osc +*.patch~ +*-build/ +.*.swp ++++++ chromium-102-regex_pattern-array.patch ++++++ --- /var/tmp/diff_new_pack.gZepun/_old 2026-10-08 11:58:27.543653704 +0200 +++ /var/tmp/diff_new_pack.gZepun/_new 2026-10-08 11:58:27.550653997 +0200 @@ -1,8 +1,6 @@ -Index: chromium-154.0.8037.0/components/autofill/core/browser/BUILD.gn -=================================================================== ---- chromium-154.0.8037.0.orig/components/autofill/core/browser/BUILD.gn -+++ chromium-154.0.8037.0/components/autofill/core/browser/BUILD.gn -@@ -503,6 +503,11 @@ static_library("browser") { +--- chromium-155.0.8040.2/components/autofill/core/browser/BUILD.gn 2026/09/09 23:26:18 1.1 ++++ chromium-155.0.8040.2/components/autofill/core/browser/BUILD.gn 2026/09/09 23:26:49 +@@ -503,6 +503,11 @@ _configs = configs configs = [] configs = [ "//third_party/tflite:tflite_shim_config" ] + _configs ++++++ chromium-127-constexpr.patch ++++++ --- /var/tmp/diff_new_pack.gZepun/_old 2026-10-08 11:58:27.598656004 +0200 +++ /var/tmp/diff_new_pack.gZepun/_new 2026-10-08 11:58:27.603656213 +0200 @@ -10,11 +10,9 @@ 34 | .strict = true}; | ~~~~~~~~~~~~~~~ -Index: chromium-154.0.8037.0/components/url_pattern/simple_url_pattern_matcher.cc -=================================================================== ---- chromium-154.0.8037.0.orig/components/url_pattern/simple_url_pattern_matcher.cc -+++ chromium-154.0.8037.0/components/url_pattern/simple_url_pattern_matcher.cc -@@ -29,17 +29,17 @@ namespace url_pattern { +--- a/components/url_pattern/simple_url_pattern_matcher.cc ++++ b/components/url_pattern/simple_url_pattern_matcher.cc +@@ -29,17 +29,17 @@ namespace { // https://urlpattern.spec.whatwg.org/#default-options @@ -35,11 +33,9 @@ .prefix_list = "/", .sensitive = true, .strict = true}; -Index: chromium-154.0.8037.0/components/autofill/core/browser/data_model/addresses/autofill_i18n_api.h -=================================================================== ---- chromium-154.0.8037.0.orig/components/autofill/core/browser/data_model/addresses/autofill_i18n_api.h -+++ chromium-154.0.8037.0/components/autofill/core/browser/data_model/addresses/autofill_i18n_api.h -@@ -18,8 +18,8 @@ namespace autofill::i18n_model_definitio +--- a/components/autofill/core/browser/data_model/addresses/autofill_i18n_api.h ++++ b/components/autofill/core/browser/data_model/addresses/autofill_i18n_api.h +@@ -16,8 +16,8 @@ namespace autofill::i18n_model_definitio // Country code that represents autofill's legacy address hierarchy model as // stored `kAutofillModelRules`. As a workaround for GCC we declare the // std::string constexpr first. @@ -50,11 +46,9 @@ AddressCountryCode(kLegacyHierarchyCountryCodeString); // Creates an instance of the address hierarchy model corresponding to the -Index: chromium-154.0.8037.0/components/omnibox/browser/on_device_tail_model_service.cc -=================================================================== ---- chromium-154.0.8037.0.orig/components/omnibox/browser/on_device_tail_model_service.cc -+++ chromium-154.0.8037.0/components/omnibox/browser/on_device_tail_model_service.cc -@@ -30,7 +30,7 @@ +--- a/components/omnibox/browser/on_device_tail_model_service.cc ++++ b/components/omnibox/browser/on_device_tail_model_service.cc +@@ -26,7 +26,7 @@ namespace { // Constants for TFlite model validation. @@ -63,11 +57,9 @@ constexpr std::string_view kModelValidationSwitchName = "omnibox-on-device-tail-model-validation"; -Index: chromium-154.0.8037.0/chrome/browser/ui/lens/lens_overlay_url_builder.cc -=================================================================== ---- chromium-154.0.8037.0.orig/chrome/browser/ui/lens/lens_overlay_url_builder.cc -+++ chromium-154.0.8037.0/chrome/browser/ui/lens/lens_overlay_url_builder.cc -@@ -72,7 +72,7 @@ inline constexpr char kXSRFTokenQueryPar +--- a/chrome/browser/ui/lens/lens_overlay_url_builder.cc ++++ b/chrome/browser/ui/lens/lens_overlay_url_builder.cc +@@ -80,7 +80,7 @@ inline constexpr char kSecActQueryParamKey[] = "sec_act"; // The list of query parameters to ignore when comparing search URLs. @@ -76,10 +68,8 @@ kViewportWidthQueryParamKey, kViewportHeightQueryParamKey, kXSRFTokenQueryParamKey, kSecActQueryParamKey, kModeParameterKey, kToolbeltModeParameterKey}; -Index: chromium-154.0.8037.0/content/public/test/prefetch_test_util.h -=================================================================== ---- chromium-154.0.8037.0.orig/content/public/test/prefetch_test_util.h -+++ chromium-154.0.8037.0/content/public/test/prefetch_test_util.h +--- a/content/public/test/prefetch_test_util.h ++++ b/content/public/test/prefetch_test_util.h @@ -15,7 +15,7 @@ namespace content::test { using PrefetchContainerIdForTesting = @@ -89,11 +79,9 @@ InvalidPrefetchContainerIdForTesting = PrefetchContainerIdForTesting(""); class TestPrefetchWatcherImpl; -Index: chromium-154.0.8037.0/components/compose/core/browser/config.cc -=================================================================== ---- chromium-154.0.8037.0.orig/components/compose/core/browser/config.cc -+++ chromium-154.0.8037.0/components/compose/core/browser/config.cc -@@ -47,11 +47,11 @@ std::vector<std::string> GetFieldTrialPa +--- a/components/compose/core/browser/config.cc ++++ b/components/compose/core/browser/config.cc +@@ -46,11 +46,11 @@ } constexpr auto DEFAULT_COMPOSE_ENABLED_COUNTRIES = ++++++ chromium-133-bring_back_and_disable_allowlist.patch ++++++ --- /var/tmp/diff_new_pack.gZepun/_old 2026-10-08 11:58:27.657658471 +0200 +++ /var/tmp/diff_new_pack.gZepun/_new 2026-10-08 11:58:27.661658638 +0200 @@ -2,8 +2,8 @@ =================================================================== --- chromium-147.0.7727.3.orig/media/base/media_switches.h +++ chromium-147.0.7727.3/media/base/media_switches.h -@@ -290,6 +290,7 @@ - MEDIA_EXPORT BASE_DECLARE_FEATURE(kUseSequencedTaskRunnerForMediaService); +@@ -294,6 +294,7 @@ + MEDIA_EXPORT BASE_DECLARE_FEATURE(kUseSharedImageUsageForVideoFrameCopy); MEDIA_EXPORT BASE_DECLARE_FEATURE(kUseTaskRunnerForMojoAudioDecoderService); MEDIA_EXPORT BASE_DECLARE_FEATURE(kUseWindowBoundsForPip); +MEDIA_EXPORT BASE_DECLARE_FEATURE(kFFmpegAllowLists); ++++++ chromium-149-strip-path.patch ++++++ --- /var/tmp/diff_new_pack.gZepun/_old 2026-10-08 11:58:27.821665328 +0200 +++ /var/tmp/diff_new_pack.gZepun/_new 2026-10-08 11:58:27.828665621 +0200 @@ -19,8 +19,8 @@ # # Args: @@ -21,8 +32,8 @@ - "testonly", ]) + action("${target_name}") { - llvm_strip_binary = "${clang_base_path}/bin/llvm-strip" - llvm_objcopy_binary = "${clang_base_path}/bin/llvm-objcopy" ++++++ chromium-151-privatefriends.patch ++++++ --- /var/tmp/diff_new_pack.gZepun/_old 2026-10-08 11:58:27.882667879 +0200 +++ /var/tmp/diff_new_pack.gZepun/_new 2026-10-08 11:58:27.887668088 +0200 @@ -1,17 +1,8 @@ -../../third_party/abseil-cpp/absl/types/source_location.h:112:20: error: calling a private constructor of class 'absl::SourceLocation::PrivateTag' - 112 | PrivateTag = PrivateTag{}, std::uint_least32_t line = __builtin_LINE(), - | ^ - - -clang-19 seems to ignore the friend class declaration. That's okay, access -control is for people using bleeding-edge compilers. - - ---- a/third_party/abseil-cpp/absl/types/source_location.h -+++ b/third_party/abseil-cpp/absl/types/source_location.h -@@ -74,7 +74,7 @@ ABSL_NAMESPACE_BEGIN - // explained above. - class SourceLocation { +--- chromium-155.0.8059.5/third_party/abseil-cpp/absl/types/source_location.h 2026/09/17 13:24:47 1.1 ++++ chromium-155.0.8059.5/third_party/abseil-cpp/absl/types/source_location.h 2026/09/17 13:25:04 +@@ -75,7 +75,7 @@ + class + SourceLocation { struct PrivateTag { - private: + public: ++++++ chromium-152-rust-cbor.patch ++++++ --- /var/tmp/diff_new_pack.gZepun/_old 2026-10-08 11:58:27.931669928 +0200 +++ /var/tmp/diff_new_pack.gZepun/_new 2026-10-08 11:58:27.938670220 +0200 @@ -8,7 +8,7 @@ --- a/components/cbor/BUILD.gn +++ b/components/cbor/BUILD.gn -@@ -12,7 +12,7 @@ buildflag_header("buildflags") { +@@ -12,7 +12,7 @@ # TODO(crbug.com/535682335): Remove `USE_CBOR_RUST` buildflag entirely, # unconditionally enable Rust CBOR parser, and drop `is_cronet_build` check # once Cronet supports Crubit dependencies. @@ -17,7 +17,7 @@ } component("cbor") { -@@ -37,7 +37,7 @@ component("cbor") { +@@ -35,7 +35,7 @@ "//base", ] @@ -26,13 +26,13 @@ public_deps = [ "//build/rust/crubit", "//components/cbor/rust:cbor_rust_bindings", -@@ -63,7 +63,7 @@ source_set("unit_tests") { +@@ -62,7 +62,7 @@ "//testing/gtest", "//third_party/fuzztest", ] - if (!is_cronet_build) { + if (enable_cpp_api_from_rust) { - deps += [ "//components/cbor/rust:cbor_rust_unittests" ] - } - + deps += [ + "//components/cbor/rust:cbor_rust_bindings", + "//components/cbor/rust:cbor_rust_unittests", ++++++ chromium-152-value_or.patch ++++++ --- /var/tmp/diff_new_pack.gZepun/_old 2026-10-08 11:58:27.959671098 +0200 +++ /var/tmp/diff_new_pack.gZepun/_new 2026-10-08 11:58:27.968671475 +0200 @@ -13,6 +13,6 @@ - controller = controller->parent_controller_.value_or({}); + controller = controller->parent_controller_.value_or(base::WeakPtr<AutofillPopupControllerImpl>{}); } - return multi_row_index; + return {.multi_index = std::move(multi_row_index)}; } ++++++ chromium-153-ftbfs-pipewire-api.patch ++++++ Fix FTBFS with old pipewire error: use of undeclared identifier 'spa_pod_type_size' diff -up chromium-153.0.8010.36/third_party/webrtc/modules/video_capture/linux/pipewire_session.cc.me chromium-153.0.8010.36/third_party/webrtc/modules/video_capture/linux/pipewire_session.cc --- chromium-153.0.8010.36/third_party/webrtc/modules/video_capture/linux/pipewire_session.cc.me 2026-09-16 08:52:36.959680086 +0200 +++ chromium-153.0.8010.36/third_party/webrtc/modules/video_capture/linux/pipewire_session.cc 2026-09-16 14:57:45.237435143 +0200 @@ -46,9 +46,36 @@ namespace webrtc { namespace videocapturemodule { +#if defined(PW_MAJOR) && \ + (PW_MAJOR < 1 || \ + (PW_MAJOR == 1 && PW_MINOR < 5)) +// spa_pod_type_size() is not available in the SPA headers shipped with +// older PipeWire versions. These are the only POD types for which this +// file performs size validation. +static uint32_t SpaPodTypeSize(uint32_t type) { + switch (type) { + case SPA_TYPE_Fraction: + return sizeof(struct spa_fraction); + case SPA_TYPE_Rectangle: + return sizeof(struct spa_rectangle); + case SPA_TYPE_Id: + return sizeof(uint32_t); + default: + RTC_DCHECK_NOTREACHED(); + return 0; + } +} +#endif + // Checks that the pod matches the expected type and is large enough to hold it. static bool SpaValueIsType(const spa_pod* val, uint32_t type) { +#if defined(PW_MAJOR) && \ + (PW_MAJOR < 1 || \ + (PW_MAJOR == 1 && PW_MINOR < 5)) + return val->type == type && val->size >= SpaPodTypeSize(type); +#else return val->type == type && val->size >= spa_pod_type_size(type); +#endif } VideoType PipeWireRawFormatToVideoType(uint32_t id) { ++++++ chromium-154-revert-crubit_private_verification_tokens.patch ++++++ ++++ 4122 lines (skipped) ++++ between /work/SRC/openSUSE:Factory/chromium/chromium-154-revert-crubit_private_verification_tokens.patch ++++ and /work/SRC/openSUSE:Factory/.chromium.new.3698736/chromium-154-revert-crubit_private_verification_tokens.patch ++++++ chromium-155-consistently-cxx23.patch ++++++ --- chromium-155.0.8059.5/v8/tools/metagen/compile_flags_test.py 2026/09/28 22:05:43 1.1 +++ chromium-155.0.8059.5/v8/tools/metagen/compile_flags_test.py 2026/09/28 22:06:00 @@ -36,7 +36,7 @@ 'defines': ['PROBE=1'], 'include_dirs': ['//v8/include', str(build_dir / 'gen')], - 'cflags_cc': ['-std=c++20'], + 'cflags_cc': ['-std=c++23'], } } with mock.patch.object( @@ -60,7 +60,7 @@ self.assertTrue(kwargs['check']) self.assertEqual(flags, [ '-DPROBE=1', f'-I{source_root / "v8" / "include"}', - f'-I{build_dir / "gen"}', '-std=c++20' + f'-I{build_dir / "gen"}', '-std=c++23' ]) self.assertEqual(cwd, str(build_dir)) self.assertFalse(cl_mode) --- chromium-155.0.8059.5/v8/bazel/defs.bzl 2026/09/28 22:07:54 1.1 +++ chromium-155.0.8059.5/v8/bazel/defs.bzl 2026/09/28 22:08:06 @@ -142,7 +142,7 @@ "-Wno-deprecated-this-capture", "-Wno-deprecated-declarations", "-Wno-deprecated-attributes", - "-std=c++20", + "-std=c++23", ], "@v8//bazel/config:is_gcc": [ "-Wno-extra", @@ -634,7 +634,7 @@ # a compile_commands.json synthesized from cc_common: the defines / includes # come from the cc_libraries passed via `cc_compilation_context_from`, the # toolchain bits (libc++ -isystem, sysroot, target triple, ...) come from -# the active cc toolchain, and metagen-specific cflags (-std=c++20, +# the active cc toolchain, and metagen-specific cflags (-std=c++23, # -fno-rtti, -fno-exceptions, -fsyntax-only) come from a small list below. # ============================================================================= @@ -642,7 +642,7 @@ # v8_library, not on the `:define_flags` we depend on). Kept tiny on # purpose -- everything else comes from the toolchain or CcInfo. _METAGEN_USER_COPTS = [ - "-std=c++20", + "-std=c++23", "-fno-rtti", "-fno-exceptions", ] --- chromium-155.0.8059.5/v8/tools/gcmole/Makefile 2026/09/28 22:08:52 1.1 +++ chromium-155.0.8059.5/v8/tools/gcmole/Makefile 2026/09/28 22:09:00 @@ -46,7 +46,7 @@ -D__STDC_LIMIT_MACROS -fomit-frame-pointer -fno-exceptions \ -fno-rtti -fPIC -Woverloaded-virtual -Wcast-qual -fno-strict-aliasing \ -pedantic -Wno-long-long -Wall -W -Wno-unused-parameter \ - -Wwrite-strings -static-libstdc++ -std=c++20 -shared -o libgcmole.so \ + -Wwrite-strings -static-libstdc++ -std=c++23 -shared -o libgcmole.so \ gcmole.cc clean: --- chromium-155.0.8059.5/v8/tools/gcmole/gcmole.py 2026/09/28 22:09:05 1.1 +++ chromium-155.0.8059.5/v8/tools/gcmole/gcmole.py 2026/09/28 22:09:11 @@ -91,7 +91,7 @@ log("Using generated files in {}", options.v8_build_dir / 'gen') return ([ options.clang_bin_dir / "clang++", - "-std=c++20", + "-std=c++23", "-c", "-Xclang", "-load", ++++++ chromium-155-older-clang-bindings.patch ++++++ --- chromium-155.0.8059.5/third_party/llvm-libclang/bindings/python/clang/cindex.py 2026/09/21 13:00:14 1.1 +++ chromium-155.0.8059.5/third_party/llvm-libclang/bindings/python/clang/cindex.py 2026/09/21 22:16:44 @@ -354,9 +354,6 @@ def __ne__(self, other: object) -> bool: return not self.__eq__(other) - def __lt__(self, other: SourceLocation) -> bool: - return bool(conf.lib.clang_isBeforeInTranslationUnit(self, other)) - def __le__(self, other: SourceLocation) -> bool: return self < other or self == other @@ -2327,11 +2324,6 @@ return conf.lib.clang_Cursor_getOffsetOfField(self) # type: ignore [no-any-return] @cursor_null_guard - def get_base_offsetof(self, parent: Cursor) -> int: - """Returns the offsetof the CXX_BASE_SPECIFIER pointed by this Cursor.""" - return conf.lib.clang_getOffsetOfBase(parent, self) # type: ignore [no-any-return] - - @cursor_null_guard def is_virtual_base(self) -> bool: """Returns whether the CXX_BASE_SPECIFIER pointed by this Cursor is virtual.""" return bool(conf.lib.clang_isVirtualBase(self)) @@ -2815,21 +2807,6 @@ """ return Type.from_result(conf.lib.clang_getCanonicalType(self), self) - def get_fully_qualified_name( - self, policy: PrintingPolicy, with_global_ns_prefix: bool = False - ) -> str: - """ - Get the fully qualified name for a type. - - This includes full qualification of all template parameters. - - policy - This PrintingPolicy can further refine the type formatting - with_global_ns_prefix - If true, prepend '::' to qualified names - """ - return _CXString.from_result( - conf.lib.clang_getFullyQualifiedName(self, policy, with_global_ns_prefix) - ) - def is_const_qualified(self) -> bool: """Determine whether a Type has the "const" qualifier set. @@ -2953,36 +2930,6 @@ conf.lib.clang_Type_visitFields(self, fields_visit_callback(visitor), fields) return iter(fields) - def get_bases(self) -> Iterator[Cursor]: - """Return an iterator for accessing the base classes of this type.""" - - def visitor(base: Cursor, _: Any) -> Literal[1]: - assert not base.is_null() - - # Create reference to TU so it isn't GC'd before Cursor. - base._tu = self._tu - bases.append(base) - return 1 # continue - - bases: list[Cursor] = [] - conf.lib.clang_visitCXXBaseClasses(self, fields_visit_callback(visitor), bases) - return iter(bases) - - def get_methods(self) -> Iterator[Cursor]: - """Return an iterator for accessing the methods of this type.""" - - def visitor(method: Cursor, _: Any) -> Literal[1]: - assert not method.is_null() - - # Create reference to TU so it isn't GC'd before Cursor. - method._tu = self._tu - methods.append(method) - return 1 # continue - - methods: list[Cursor] = [] - conf.lib.clang_visitCXXMethods(self, fields_visit_callback(visitor), methods) - return iter(methods) - def get_exception_specification_kind(self) -> ExceptionSpecificationKind: """ Return the kind of the exception specification; a value from @@ -2997,10 +2944,6 @@ """Retrieve the spelling of this Type.""" return _CXString.from_result(conf.lib.clang_getTypeSpelling(self)) - def pretty_printed(self, policy: PrintingPolicy) -> str: - """Pretty-prints this Type with the given PrintingPolicy""" - return _CXString.from_result(conf.lib.clang_getTypePrettyPrinted(self, policy)) - def __eq__(self, other: object) -> bool: return isinstance(other, Type) and bool(conf.lib.clang_equalTypes(self, other)) @@ -4281,7 +4224,6 @@ ("clang_getNumDiagnosticsInSet", [c_object_p], c_uint), ("clang_getNumElements", [Type], c_longlong), ("clang_getNumOverloadedDecls", [Cursor], c_uint), - ("clang_getOffsetOfBase", [Cursor, Cursor], c_longlong), ("clang_getOverloadedDecl", [Cursor, c_uint], Cursor), ("clang_getPointeeType", [Type], Type), ("clang_getRange", [SourceLocation, SourceLocation], SourceRange), @@ -4301,11 +4243,9 @@ ("clang_getTypedefDeclUnderlyingType", [Cursor], Type), ("clang_getTypedefName", [Type], _CXString), ("clang_getTypeKindSpelling", [c_uint], _CXString), - ("clang_getTypePrettyPrinted", [Type, PrintingPolicy], _CXString), ("clang_getTypeSpelling", [Type], _CXString), ("clang_hashCursor", [Cursor], c_uint), ("clang_isAttribute", [CursorKind], c_uint), - ("clang_getFullyQualifiedName", [Type, PrintingPolicy, c_uint], _CXString), ("clang_isConstQualifiedType", [Type], c_uint), ("clang_isCursorDefinition", [Cursor], c_uint), ("clang_isDeclaration", [CursorKind], c_uint), @@ -4322,7 +4262,6 @@ ("clang_isUnexposed", [CursorKind], c_uint), ("clang_isVirtualBase", [Cursor], c_uint), ("clang_isVolatileQualifiedType", [Type], c_uint), - ("clang_isBeforeInTranslationUnit", [SourceLocation, SourceLocation], c_uint), ( "clang_parseTranslationUnit", [Index, c_interop_string, c_void_p, c_int, c_void_p, c_int, c_int], @@ -4335,8 +4274,6 @@ [TranslationUnit, SourceRange, POINTER(POINTER(Token)), POINTER(c_uint)], ), ("clang_visitChildren", [Cursor, cursor_visit_callback, py_object], c_uint), - ("clang_visitCXXBaseClasses", [Type, fields_visit_callback, py_object], c_uint), - ("clang_visitCXXMethods", [Type, fields_visit_callback, py_object], c_uint), ("clang_Cursor_getNumArguments", [Cursor], c_int), ("clang_Cursor_getArgument", [Cursor, c_uint], Cursor), ("clang_Cursor_getNumTemplateArguments", [Cursor], c_int), ++++++ chromium-155-v8-clang-path.patch ++++++ --- chromium-155.0.8059.5/v8/BUILD.gn 2026/09/17 12:06:48 1.1 +++ chromium-155.0.8059.5/v8/BUILD.gn 2026/09/17 12:07:16 @@ -2485,7 +2485,7 @@ # The clang toolchain's resource dir contains builting headers # include/{stddef.h,stdarg.h,...}. - _metagen_clang_resource_dir = "$clang_base_path/lib/clang/$clang_version" + _metagen_clang_resource_dir = "$clang_base_path/lib64/clang/$clang_version" _metagen_flags_target = ":v8_base_without_compiler" _metagen_flags_target_ninja = get_label_info(_metagen_flags_target, "target_out_dir") + ++++++ chromium-155-v8-cxx-include.patch ++++++ --- chromium-155.0.8059.5/v8/BUILD.gn 2026/09/22 23:07:26 1.1 +++ chromium-155.0.8059.5/v8/BUILD.gn 2026/09/22 23:09:26 @@ -996,6 +996,7 @@ if (v8_use_perfetto) { include_dirs = [ "//third_party/perfetto/include", + "/usr/include/c++/v1", "$root_gen_dir/third_party/perfetto", "$root_gen_dir/third_party/perfetto/build_config", ] ++++++ chromium-154.0.8037.97-linux.tar.xz -> chromium-155.0.8059.39-linux.tar.xz ++++++ /work/SRC/openSUSE:Factory/chromium/chromium-154.0.8037.97-linux.tar.xz /work/SRC/openSUSE:Factory/.chromium.new.3698736/chromium-155.0.8059.39-linux.tar.xz differ: char 15, line 1 ++++++ chromium-493e6c3911e33cc356856bafbffc6cf95521266b.patch ++++++ --- /var/tmp/diff_new_pack.gZepun/_old 2026-10-08 11:58:28.208681510 +0200 +++ /var/tmp/diff_new_pack.gZepun/_new 2026-10-08 11:58:28.218681928 +0200 @@ -44,49 +44,42 @@ rust_static_library("rustfft_ffi") { allow_unsafe = true # Needed for FFI that underpins the `cxx` crate. crate_root = "audio/rustfft_ffi.rs" -@@ -1806,6 +1794,7 @@ component("platform") { +@@ -711,6 +711,8 @@ + "fonts/generic_font_family_settings.cc", + "fonts/generic_font_family_settings.h", + "fonts/glyph_metrics_map.h", ++ "fonts/ift/ift_patcher.cc", ++ "fonts/ift/ift_patcher.h", + "fonts/opentype/color_table_lookup.cc", + "fonts/opentype/color_table_lookup.h", + "fonts/opentype/font_format_check.cc", +@@ -1803,6 +1803,7 @@ ":allow_discouraged_type", ":blink_platform_public_deps", ":platform_export", + "//build/rust/crubit", + "//components/language_detection/core", "//gpu/command_buffer/client:raster_interface", "//media/capture:capture_lib", - "//mojo/public/cpp/base", -@@ -1832,8 +1821,8 @@ component("platform") { +@@ -1829,8 +1830,9 @@ "//ui/native_theme/features", ] deps = [ - ":font_format_check", ":rustfft_ffi", + "fonts:font_format_bindings", ++ "fonts:ift_patcher_bindings", "//base:base_static", "//base/allocator:buildflags", "//build:chromecast_buildflags", -diff --git a/third_party/blink/renderer/platform/fonts/BUILD.gn b/third_party/blink/renderer/platform/fonts/BUILD.gn -new file mode 100644 -index 0000000000000..51b9b03ba7c85 ---- /dev/null -+++ b/third_party/blink/renderer/platform/fonts/BUILD.gn -@@ -0,0 +1,19 @@ -+# Copyright 2026 The Chromium Authors -+# Use of this source code is governed by a BSD-style license that can be -+# found in the LICENSE file. -+ -+import("//build/rust/rust_static_library.gni") -+ -+rust_static_library("font_format") { -+ crate_root = "opentype/format_check.rs" -+ sources = [ crate_root ] -+ cpp_api_from_rust = { -+ target_name = "font_format_bindings" -+ cpp_namespace = "font_format" -+ } -+ deps = [ -+ "//third_party/rust/font_types/v0_12:lib", -+ "//third_party/rust/read_fonts/v0_43:lib", -+ "//third_party/rust/skrifa/v0_46:lib", -+ ] -+} +@@ -2239,6 +2234,7 @@ + "fonts/font_test.cc", + "fonts/font_test_utilities.cc", + "fonts/generic_font_family_settings_test.cc", ++ "fonts/ift/ift_patcher_test.cc", + "fonts/opentype/color_table_lookup_test.cc", + "fonts/opentype/font_format_check_test.cc", + "fonts/opentype/font_settings_test.cc", diff --git a/third_party/blink/renderer/platform/fonts/opentype/font_format_check.cc b/third_party/blink/renderer/platform/fonts/opentype/font_format_check.cc index b9d2639822bc0..f58e9433d39f4 100644 --- a/third_party/blink/renderer/platform/fonts/opentype/font_format_check.cc ++++++ esbuild-0.25.1-vendor.tar.gz -> esbuild-0.28.2-vendor.tar.gz ++++++ ++++++ esbuild-0.25.1-vendor.tar.gz -> esbuild-0.28.2.tar.gz ++++++ ++++ 429655 lines of diff (skipped) ++++++ ppc-fedora-0001-Add-pregenerated-config-for-libaom-on-ppc64.patch ++++++ --- /var/tmp/diff_new_pack.gZepun/_old 2026-10-08 11:58:29.349729219 +0200 +++ /var/tmp/diff_new_pack.gZepun/_new 2026-10-08 11:58:29.356729512 +0200 @@ -1,17 +1,17 @@ -commit 3144efb3f7d1e34bc20e92b4360e98cdaa9bfb32 +commit df377ebd3f03a28d30672c7154e5c2f34f30d0f3 Author: OBS build <build@host> -Date: Wed May 13 15:58:57 2026 +0000 +Date: Thu Sep 24 06:46:20 2026 +0000 initial -diff --git a/source/config/linux/ppc64/config/aom_config.asm chromium-149.0.7827.3/third_party/libaom/source/config/linux/ppc64/config/aom_config.asm +diff --git a/third_party/libaom/source/config/linux/ppc64/config/aom_config.asm b/third_party/libaom/source/config/linux/ppc64/config/aom_config.asm new file mode 100644 -index 0000000..3053106 +index 0000000..08126c1 --- /dev/null -+++ chromium-149.0.7827.3/third_party/libaom/source/config/linux/ppc64/config/aom_config.asm ++++ b/third_party/libaom/source/config/linux/ppc64/config/aom_config.asm @@ -0,0 +1,100 @@ +; -+; Copyright (c) 2026, Alliance for Open Media. All rights reserved. ++; Copyright (c) 2017, Alliance for Open Media. All rights reserved. +; +; This source code is subject to the terms of the BSD 2 Clause License and +; the Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License @@ -110,14 +110,14 @@ +HAVE_VSX equ 1 +HAVE_WXWIDGETS equ 0 +STATIC_LINK_JXL equ 0 -diff --git a/source/config/linux/ppc64/config/aom_config.c chromium-149.0.7827.3/third_party/libaom/source/config/linux/ppc64/config/aom_config.c +diff --git a/third_party/libaom/source/config/linux/ppc64/config/aom_config.c b/third_party/libaom/source/config/linux/ppc64/config/aom_config.c new file mode 100644 -index 0000000..429274e +index 0000000..e53cf65 --- /dev/null -+++ chromium-149.0.7827.3/third_party/libaom/source/config/linux/ppc64/config/aom_config.c ++++ b/third_party/libaom/source/config/linux/ppc64/config/aom_config.c @@ -0,0 +1,13 @@ +/* -+ * Copyright (c) 2026, Alliance for Open Media. All rights reserved. ++ * Copyright (c) 2016, Alliance for Open Media. All rights reserved. + * + * This source code is subject to the terms of the BSD 2 Clause License and + * the Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License @@ -129,14 +129,14 @@ +#include "aom/aom_codec.h" +static const char* const cfg = "cmake ../source/libaom -G \"Unix Makefiles\" -DCMAKE_TOOLCHAIN_FILE=\"../source/libaom/cmake/toolchains/ppc-linux-gcc.cmake\" -DCONFIG_AV1_DECODER=0 -DCONFIG_AV1_ENCODER=1 -DCONFIG_AV1_HIGHBITDEPTH=0 -DCONFIG_AV1_TEMPORAL_DENOISING=0 -DCONFIG_QUANT_MATRIX=0 -DCONFIG_REALTIME_ONLY=1 -DCONFIG_DENOISE=0 -DCONFIG_SIZE_LIMIT=1 -DDECODE_HEIGHT_LIMIT=16384 -DDECODE_WIDTH_LIMIT=16384"; +const char *aom_codec_build_config(void) {return cfg;} -diff --git a/source/config/linux/ppc64/config/aom_config.h chromium-149.0.7827.3/third_party/libaom/source/config/linux/ppc64/config/aom_config.h +diff --git a/third_party/libaom/source/config/linux/ppc64/config/aom_config.h b/third_party/libaom/source/config/linux/ppc64/config/aom_config.h new file mode 100644 -index 0000000..c374d31 +index 0000000..9a89f28 --- /dev/null -+++ chromium-149.0.7827.3/third_party/libaom/source/config/linux/ppc64/config/aom_config.h ++++ b/third_party/libaom/source/config/linux/ppc64/config/aom_config.h @@ -0,0 +1,103 @@ +/* -+ * Copyright (c) 2026, Alliance for Open Media. All rights reserved. ++ * Copyright (c) 2017, Alliance for Open Media. All rights reserved. + * + * This source code is subject to the terms of the BSD 2 Clause License and + * the Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License @@ -238,12 +238,12 @@ +#define HAVE_WXWIDGETS 0 +#define STATIC_LINK_JXL 0 +#endif // AOM_CONFIG_H_ -diff --git a/source/config/linux/ppc64/config/aom_dsp_rtcd.h chromium-149.0.7827.3/third_party/libaom/source/config/linux/ppc64/config/aom_dsp_rtcd.h +diff --git a/third_party/libaom/source/config/linux/ppc64/config/aom_dsp_rtcd.h b/third_party/libaom/source/config/linux/ppc64/config/aom_dsp_rtcd.h new file mode 100644 -index 0000000..e3bab69 +index 0000000..900c534 --- /dev/null -+++ chromium-149.0.7827.3/third_party/libaom/source/config/linux/ppc64/config/aom_dsp_rtcd.h -@@ -0,0 +1,1177 @@ ++++ b/third_party/libaom/source/config/linux/ppc64/config/aom_dsp_rtcd.h +@@ -0,0 +1,1180 @@ +/* + * Copyright (c) 2017, Alliance for Open Media. All rights reserved. + * @@ -297,6 +297,9 @@ +void aom_blend_a64_vmask_c(uint8_t *dst, uint32_t dst_stride, const uint8_t *src0, uint32_t src0_stride, const uint8_t *src1, uint32_t src1_stride, const uint8_t *mask, int w, int h); +#define aom_blend_a64_vmask aom_blend_a64_vmask_c + ++int64_t aom_calc_variance_stat_c(const uint8_t *src, int stride, int bw, int bh); ++#define aom_calc_variance_stat aom_calc_variance_stat_c ++ +void aom_comp_avg_pred_c(uint8_t *comp_pred, const uint8_t *pred, int width, int height, const uint8_t *ref, int ref_stride); +#define aom_comp_avg_pred aom_comp_avg_pred_c + @@ -1421,11 +1424,11 @@ +#endif + +#endif // AOM_DSP_RTCD_H_ -diff --git a/source/config/linux/ppc64/config/aom_scale_rtcd.h chromium-149.0.7827.3/third_party/libaom/source/config/linux/ppc64/config/aom_scale_rtcd.h +diff --git a/third_party/libaom/source/config/linux/ppc64/config/aom_scale_rtcd.h b/third_party/libaom/source/config/linux/ppc64/config/aom_scale_rtcd.h new file mode 100644 index 0000000..a3dbd73 --- /dev/null -+++ chromium-149.0.7827.3/third_party/libaom/source/config/linux/ppc64/config/aom_scale_rtcd.h ++++ b/third_party/libaom/source/config/linux/ppc64/config/aom_scale_rtcd.h @@ -0,0 +1,88 @@ +/* + * Copyright (c) 2017, Alliance for Open Media. All rights reserved. @@ -1515,12 +1518,12 @@ +#endif + +#endif // AOM_SCALE_RTCD_H_ -diff --git a/source/config/linux/ppc64/config/av1_rtcd.h chromium-149.0.7827.3/third_party/libaom/source/config/linux/ppc64/config/av1_rtcd.h +diff --git a/third_party/libaom/source/config/linux/ppc64/config/av1_rtcd.h b/third_party/libaom/source/config/linux/ppc64/config/av1_rtcd.h new file mode 100644 -index 0000000..e96010f +index 0000000..86b67bd --- /dev/null -+++ chromium-149.0.7827.3/third_party/libaom/source/config/linux/ppc64/config/av1_rtcd.h -@@ -0,0 +1,402 @@ ++++ b/third_party/libaom/source/config/linux/ppc64/config/av1_rtcd.h +@@ -0,0 +1,405 @@ +/* + * Copyright (c) 2017, Alliance for Open Media. All rights reserved. + * @@ -1759,6 +1762,9 @@ +void av1_highbd_iwht4x4_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride, int bd); +#define av1_highbd_iwht4x4_1_add av1_highbd_iwht4x4_1_add_c + ++void av1_interp_cubic_rate_dist_c(const double *p1, const double *p2, double x, double rate_dist_f[2]); ++#define av1_interp_cubic_rate_dist av1_interp_cubic_rate_dist_c ++ +void av1_inv_txfm2d_add_16x16_c(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd); +#define av1_inv_txfm2d_add_16x16 av1_inv_txfm2d_add_16x16_c + ++++++ ppc-fedora-0001-Force-baseline-POWER8-AltiVec-VSX-CPU-features-when-.patch ++++++ --- /var/tmp/diff_new_pack.gZepun/_old 2026-10-08 11:58:29.398731268 +0200 +++ /var/tmp/diff_new_pack.gZepun/_new 2026-10-08 11:58:29.405731561 +0200 @@ -1,22 +1,9 @@ -From ea104a841fca1ff4d5430915f1b7c52c6a642f13 Mon Sep 17 00:00:00 2001 -From: Timothy Pearson <[email protected]> -Date: Fri, 21 Sep 2018 21:44:17 -0500 -Subject: [PATCH] Force baseline POWER8 / AltiVec / VSX CPU features when on a - PPC64 platform in LE mode - ---- - BUILD.gn | 6 ++++++ - 1 file changed, 6 insertions(+) - -Index: chromium-145.0.7632.45/v8/BUILD.gn -=================================================================== ---- chromium-145.0.7632.45.orig/v8/BUILD.gn -+++ chromium-145.0.7632.45/v8/BUILD.gn -@@ -1607,7 +1607,14 @@ config("toolchain") { +--- chromium-155.0.8059.5/v8/BUILD.gn 2026/09/17 13:15:50 1.1 ++++ chromium-155.0.8059.5/v8/BUILD.gn 2026/09/17 13:19:43 +@@ -1775,6 +1775,14 @@ if (v8_current_cpu == "ppc64") { defines += [ "V8_TARGET_ARCH_PPC64" ] cflags += [ "-ffp-contract=off" ] -- if (current_os == "aix" && !is_clang) { + if (current_os == "linux") { + cflags += [ + # Enable usage of AltiVec, VSX, and other POWER8 and higher features @@ -24,8 +11,8 @@ + "-maltivec", + "-mvsx", + ] -+ } else if (current_os == "aix" && !is_clang) { - cflags += [ - # Work around AIX ceil, trunc and round oddities. - "-mcpu=power5+", ++ } + if (!v8_target_is_simulator) { + cflags += [ "-mcpu=pwr9" ] + } ++++++ ppc-fedora-0001-third_party-libvpx-Properly-generate-gni-on-ppc64.patch ++++++ --- /var/tmp/diff_new_pack.gZepun/_old 2026-10-08 11:58:29.478734613 +0200 +++ /var/tmp/diff_new_pack.gZepun/_new 2026-10-08 11:58:29.488735031 +0200 @@ -1,24 +1,12 @@ -From cc613c2e3bac8d4d1ff153700b819f964435923a Mon Sep 17 00:00:00 2001 -From: Shawn Anastasio <[email protected]> -Date: Tue, 4 Sep 2018 18:16:07 -0500 -Subject: [PATCH] third_party/libvpx: Properly generate gni on ppc64 - ---- - third_party/libvpx/BUILD.gn | 2 ++ - third_party/libvpx/generate_gni.sh | 10 ++++++++++ - 2 files changed, 12 insertions(+) - -Index: chromium-144.0.7559.59/third_party/libvpx/BUILD.gn -=================================================================== ---- chromium-144.0.7559.59.orig/third_party/libvpx/BUILD.gn -+++ chromium-144.0.7559.59/third_party/libvpx/BUILD.gn -@@ -297,6 +297,8 @@ if (current_cpu == "x86" || (current_cpu +--- chromium-155.0.8059.5/third_party/libvpx/BUILD.gn 2026/09/17 13:07:05 1.1 ++++ chromium-155.0.8059.5/third_party/libvpx/BUILD.gn 2026/09/17 13:07:44 +@@ -283,6 +283,8 @@ + sources = libvpx_srcs_x86_avx512 } else if (current_cpu == "x64") { - deps = [ ":libvpx_x86_64_headers" ] sources = libvpx_srcs_x86_64_avx512 + } else if (current_cpu == "ppc64") { + sources = libvpx_srcs_ppc64 } + deps = [ ":libvpx_headers" ] } - } ++++++ ppc-fedora-0002-regenerate-xnn-buildgn.patch ++++++ ++++ 65514 lines (skipped) ++++ between /work/SRC/openSUSE:Factory/chromium/ppc-fedora-0002-regenerate-xnn-buildgn.patch ++++ and /work/SRC/openSUSE:Factory/.chromium.new.3698736/ppc-fedora-0002-regenerate-xnn-buildgn.patch
