Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package nodejs-electron for openSUSE:Factory 
checked in at 2022-08-02 22:08:45
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/nodejs-electron (Old)
 and      /work/SRC/openSUSE:Factory/.nodejs-electron.new.1533 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "nodejs-electron"

Tue Aug  2 22:08:45 2022 rev:29 rq:992258 version:19.0.9

Changes:
--------
--- /work/SRC/openSUSE:Factory/nodejs-electron/nodejs-electron.changes  
2022-07-07 12:58:17.287405746 +0200
+++ 
/work/SRC/openSUSE:Factory/.nodejs-electron.new.1533/nodejs-electron.changes    
    2022-08-02 22:09:06.217757216 +0200
@@ -1,0 +2,29 @@
+Fri Jul 22 09:58:00 UTC 2022 - Bruno Pitrus <brunopit...@hotmail.com>
+- New upstream release 19.0.9
+  * Updated Chromium to 102.0.5005.167
+  * Fixed a potential crash when changing window settings after initializing 
WCO with an invalid titleBarStyle
+  * Fixed alwaysOnTop BrowserWindow option for X11.
+  * Fixed an issue where printing with an invalid deviceName caused silent 
failures.
+  * Fixed empty app_id when running under wayland.
+  * Prevent brief display of "Ozone X11" in window title.
+- Remove some unused huge libraries from third_party in source tarball.
+- Remove process_doc_wrapper-do-not-assume-ABI.patch. The file being patched 
was not getting compiled for a while,
+  and is now removed from the tarball.
+- Add system-gtest.patch
+- Add breakpad-system-curl.patch
+
+-------------------------------------------------------------------
+Tue Jul 12 17:03:39 UTC 2022 - Bruno Pitrus <brunopit...@hotmail.com>
+- Do not require SSE3 (chromium-102-compiler.patch).
+  Both openSUSE and Fedora still support the original Opteron, and
+  package maintainers should not unilaterally require more.
+- Use system node for the typescript compiler (again).
+  We do not need to force node16 (Fedora compiles fine with node18 even),
+  Factory pushes a devel node version as default for a reason,
+  and it accidentally broke build on RISC-V which only has node17.
+- Restore full debuginfo on the C-only code parts.
+- Document all other deviations from recommended compilation options.
+- Remove obsolete chromium-96-CouponDB-include.patch
+- Correct licence in header (Electron bundles Chromium)
+
+-------------------------------------------------------------------

Old:
----
  chromium-96-CouponDB-include.patch
  electron-19.0.8.tar.xz
  process_doc_wrapper-do-not-assume-ABI.patch

New:
----
  breakpad-system-curl.patch
  electron-19.0.9.tar.xz
  system-gtest.patch

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

Other differences:
------------------
++++++ nodejs-electron.spec ++++++
--- /var/tmp/diff_new_pack.CaQfXq/_old  2022-08-02 22:09:18.553792777 +0200
+++ /var/tmp/diff_new_pack.CaQfXq/_new  2022-08-02 22:09:18.561792800 +0200
@@ -40,21 +40,10 @@
 %{expand:%%global optflags %(echo "%optflags") -march=pentium4 -mtune=generic}
 %endif
 
-%ifarch x86_64
-%if 0%{?suse_version} > 1500 || 0%{?fedora}
-# DISABLE LTO AS IT IS BROKEN RIGHT NOW
-#%%bcond_without lto
-%bcond_with lto
-# else suse_version
-%else
-%bcond_with lto
-# endif suse_version
-%endif
-# else arch x86_64
-%else
+
+#Electron built with LTO crashes on selecting any text.
+#See https://gist.github.com/brjsp/80620a5a0be9efbee6b9154cb127879d for the 
stack trace.
 %bcond_with lto
-# endif arch x86_64
-%endif
 
 %bcond_without pipewire
 
@@ -191,10 +180,10 @@
 
 
 Name:           nodejs-electron
-Version:        19.0.8
+Version:        19.0.9
 Release:        0
 Summary:        Build cross platform desktop apps with JavaScript, HTML, and 
CSS
-License:        MIT
+License:        MIT AND BSD-3-Clause AND LGPL-2.1-or-later
 Group:          Productivity/Networking/Web/Browsers
 URL:            https://github.com/electron/electron
 Source0:        %{mod_name}-%{version}.tar.xz
@@ -239,108 +228,108 @@
 
 # Reverse upstream changes to be able to build against system ffmpeg
 Source400:      ffmpeg-new-channel-layout.patch
+
+# PATCHES for openSUSE-specific things
 Patch0:         chromium-102-compiler.patch
-Patch2:         chromium-system-libusb.patch
 Patch3:         gcc-enable-lto.patch
-Patch4:         chromium-gcc11.patch
 Patch5:         chromium-norar.patch
 Patch6:         chromium-vaapi.patch
 Patch7:         chromium-91-java-only-allowed-in-android-builds.patch
 Patch9:         chromium-86-fix-vaapi-on-intel.patch
-Patch10:        chromium-93-ffmpeg-4.4.patch
-Patch11:        chromium-ffmpeg-first-dts.patch
-Patch13:        chromium-96-CouponDB-include.patch
-Patch16:        chromium-98-EnumTable-crash.patch
-Patch17:        system-libdrm.patch
-# Fix building sql recover_module
-Patch20:        electron-13-fix-sql-virtualcursor-type.patch
 # Always disable use_thin_lto which is an lld feature
 Patch21:        electron-13-fix-use-thin-lto.patch
-# Fixe builds with older clang versions that do not allow
-# nomerge attributes on declaration. Otherwise, the following error
-# is produced:
-#     'nomerge' attribute cannot be applied to a declaration
-# See https://reviews.llvm.org/D92800
-Patch22:        electron-13-fix-base-check-nomerge.patch
-# Fix blink nodestructor
-Patch23:        electron-13-blink-gcc-ambiguous-nodestructor.patch
-# Fix electron patched code
-Patch24:        electron-16-std-vector-non-const.patch
 # Fix common.gypi to include /usr/include/electron
 Patch25:        electron-16-system-node-headers.patch
-Patch27:        electron-16-freetype-visibility-list.patch
-Patch28:        electron-16-third_party-symbolize-missing-include.patch
-Patch29:        electron-16-webpack-fix-openssl-3.patch
-# https://bugzilla.redhat.com/show_bug.cgi?id=2052228
-Patch30:        electron-16-fix-swiftshader-template.patch
-# From https://git.droidware.info/wchen342/ungoogled-chromium-fedora
-Patch33:        chromium-94.0.4606.71-InkDropHost-crash.patch
-# 
https://sources.debian.org/patches/chromium/102.0.5005.115-1/upstream/byteswap-constexpr.patch/
-Patch34:        byteswap-constexpr.patch
-# 
https://sources.debian.org/patches/chromium/102.0.5005.115-1/bullseye/byteswap-constexpr2.patch/
-Patch35:        byteswap-constexpr2.patch
-Patch36:        chromium-101-libxml-unbundle.patch
-Patch37:        chromium-102-fenced_frame_utils-include.patch
-# 
http://svnweb.mageia.org/packages/updates/7/chromium-browser-stable/current/SOURCES/chromium-74-pdfium-system-libopenjpeg2.patch?view=markup
-Patch38:        pdfium-fix-system-libs.patch
 # 
https://sources.debian.org/patches/chromium/102.0.5005.115-1/debianization/support-i386.patch/
 Patch39:        support-i386.patch
+Patch49:        abseil-remove-unused-targets.patch
+# from 
https://sources.debian.org/patches/chromium/103.0.5060.53-1/disable/catapult.patch/
+Patch67:        disable-catapult.patch
+
+# PATCHES to use system libs
+Patch1002:      chromium-system-libusb.patch
+Patch1017:      system-libdrm.patch
+Patch1036:      chromium-101-libxml-unbundle.patch
+# 
http://svnweb.mageia.org/packages/updates/7/chromium-browser-stable/current/SOURCES/chromium-74-pdfium-system-libopenjpeg2.patch?view=markup
+Patch1038:      pdfium-fix-system-libs.patch
 %if %{with system_jsoncpp}
 # 
https://sources.debian.org/patches/chromium/102.0.5005.115-1/system/jsoncpp.patch/
-Patch40:        system-jsoncpp.patch
+Patch1040:      system-jsoncpp.patch
 %endif
 # 
https://sources.debian.org/patches/chromium/102.0.5005.115-1/system/zlib.patch/
-Patch41:        system-zlib.patch
-Patch42:        chromium-fix-pac-with-gcc.patch
-Patch43:        node-system-libs.patch
-Patch44:        replace_gn_files-system-libs.patch
-Patch45:        angle-system-xxhash.patch
+Patch1041:      system-zlib.patch
+Patch1043:      node-system-libs.patch
+Patch1044:      replace_gn_files-system-libs.patch
+Patch1045:      angle-system-xxhash.patch
 %if %{with system_tiff}
 # 
https://svnweb.mageia.org/packages/cauldron/chromium-browser-stable/current/SOURCES/chromium-99-pdfium-system-libtiff-libpng.patch
-Patch46:        chromium-99-pdfium-system-libtiff.patch
+Patch1046:      chromium-99-pdfium-system-libtiff.patch
 %endif
-Patch47:        cares_public_headers.patch
-Patch48:        chromium-remove-bundled-roboto-font.patch
-Patch49:        abseil-remove-unused-targets.patch
-# PATCH-FIX-UPSTREAM
-Patch50:        abseil_string_number_conversions-do-not-assume-ABI.patch
-# PATCH-FIX-UPSTREAM
-Patch51:        multi_channel_content_detector-missing-unique_ptr.patch
-# PATCH-FIX-UPSTREAM
-Patch52:        process_doc_wrapper-do-not-assume-ABI.patch
+Patch1047:      cares_public_headers.patch
+Patch1048:      chromium-remove-bundled-roboto-font.patch
 %if %{with system_llvm}
-Patch53:        swiftshader-use-system-llvm.patch
+Patch1053:      swiftshader-use-system-llvm.patch
 %endif
 %if %{with system_abseil}
-Patch54:        thread_annotations-fix-build-with-system-abseil.patch
+Patch1054:      thread_annotations-fix-build-with-system-abseil.patch
 %endif
-#PATCH-FIX-UPSTREAM
-Patch55:        json_generation-missing-unique_ptr.patch
-#PATCH-FIX-UPSTREAM
-Patch56:        
async_shared_storage_database_impl-missing-absl-WrapUnique.patch
-#PATCH-FIX-UPSTREAM
-Patch57:        metrics_recorder-missing-string.patch
-#PATCH-FIX-UPSTREAM
-Patch58:        skia_utils-missing-uint64_t.patch
-#PATCH-FIX-UPSTREAM
-Patch59:        device_perf_info-missing-uint32_t.patch
-# PATCH-FIX-UPSTREAM
-Patch60:        dark_mode_types-uint8_t.patch
-# PATCH-FIX-UPSTREAM
-Patch61:        ax_property_node-missing-unique_ptr-forward.patch
-# PATCH-FIX-UPSTREAM
-Patch62:        attribution_manager_impl-missing-absl-WrapUnique.patch
-Patch63:        system-libbsd.patch
+Patch1063:      system-libbsd.patch
+Patch1065:      base-system-nspr.patch
+Patch1066:      system-gtest.patch
+Patch1067:      breakpad-system-curl.patch
+
+# PATCHES to fix interaction with third-party software
+Patch2004:      chromium-gcc11.patch
+Patch2010:      chromium-93-ffmpeg-4.4.patch
+Patch2011:      chromium-ffmpeg-first-dts.patch
+# Fix building sql recover_module
+Patch2020:      electron-13-fix-sql-virtualcursor-type.patch
+# Fixe builds with older clang versions that do not allow
+# nomerge attributes on declaration. Otherwise, the following error
+# is produced:
+#     'nomerge' attribute cannot be applied to a declaration
+# See https://reviews.llvm.org/D92800
+Patch2022:      electron-13-fix-base-check-nomerge.patch
+# Fix electron patched code
+Patch2024:      electron-16-std-vector-non-const.patch
+Patch2029:      electron-16-webpack-fix-openssl-3.patch
+# https://bugzilla.redhat.com/show_bug.cgi?id=2052228
+Patch2030:      electron-16-fix-swiftshader-template.patch
+
+
+# PATCHES that should be submitted upstream verbatim or near-verbatim
+Patch3016:      chromium-98-EnumTable-crash.patch
+# Fix blink nodestructor
+Patch3023:      electron-13-blink-gcc-ambiguous-nodestructor.patch
+Patch3027:      electron-16-freetype-visibility-list.patch
+Patch3028:      electron-16-third_party-symbolize-missing-include.patch
+# From https://git.droidware.info/wchen342/ungoogled-chromium-fedora
+Patch3033:      chromium-94.0.4606.71-InkDropHost-crash.patch
+# 
https://sources.debian.org/patches/chromium/102.0.5005.115-1/upstream/byteswap-constexpr.patch/
+Patch3034:      byteswap-constexpr.patch
+# 
https://sources.debian.org/patches/chromium/102.0.5005.115-1/bullseye/byteswap-constexpr2.patch/
+Patch3035:      byteswap-constexpr2.patch
+Patch3037:      chromium-102-fenced_frame_utils-include.patch
+Patch3042:      chromium-fix-pac-with-gcc.patch
+Patch3050:      abseil_string_number_conversions-do-not-assume-ABI.patch
+Patch3051:      multi_channel_content_detector-missing-unique_ptr.patch
+Patch3055:      json_generation-missing-unique_ptr.patch
+Patch3056:      
async_shared_storage_database_impl-missing-absl-WrapUnique.patch
+Patch3057:      metrics_recorder-missing-string.patch
+Patch3058:      skia_utils-missing-uint64_t.patch
+Patch3059:      device_perf_info-missing-uint32_t.patch
+Patch3060:      dark_mode_types-uint8_t.patch
+Patch3061:      ax_property_node-missing-unique_ptr-forward.patch
+Patch3062:      attribution_manager_impl-missing-absl-WrapUnique.patch
 # 
https://salsa.debian.org/chromium-team/chromium/-/blob/456851fc808b2a5b5c762921699994e957645917/debian/patches/upstream/nested-nested-nested-nested-nested-nested-regex-patterns.patch
-Patch64:        nested-nested-nested-nested-nested-nested-regex-patterns.patch
-Patch65:        base-system-nspr.patch
-# PATCH-FIX-UPSTREAM ??? Fedora patch to fix build with python3.11
-Patch66:        
chromium-103.0.5060.53-python3-do-not-use-deprecated-mode-U.patch
-# from 
https://sources.debian.org/patches/chromium/103.0.5060.53-1/disable/catapult.patch/
-Patch67:        disable-catapult.patch
+Patch3064:      nested-nested-nested-nested-nested-nested-regex-patterns.patch
+# Fedora patch to fix build with python3.11
+Patch3066:      
chromium-103.0.5060.53-python3-do-not-use-deprecated-mode-U.patch
+
 %if %{with clang}
 BuildRequires:  clang
 BuildRequires:  lld
+BuildRequires:  llvm
 %endif
 %if %{with gold}
 BuildRequires:  binutils-gold
@@ -393,11 +382,11 @@
 %else
 BuildRequires:  ninja-build >= 1.7.2
 %endif
-%if 0%{?suse_version}
+%if 0%{?sle_version} == 150300
 BuildRequires:  nodejs16
 BuildRequires:  npm16
 %else
-BuildRequires:  nodejs >= 16.5.0
+BuildRequires:  nodejs >= 16
 BuildRequires:  npm
 %endif
 BuildRequires:  pkgconfig
@@ -460,6 +449,7 @@
 BuildRequires:  pkgconfig(gbm)
 BuildRequires:  pkgconfig(glib-2.0)
 BuildRequires:  pkgconfig(glproto)
+BuildRequires:  pkgconfig(gtest)
 BuildRequires:  pkgconfig(gtk+-3.0)
 %if %{with system_harfbuzz}
 BuildRequires:  pkgconfig(harfbuzz) >= 3
@@ -510,8 +500,8 @@
 %if 0%{?fedora}
 BuildRequires:  minizip-compat-devel
 # help decide for dependency
-BuildRequires:  pipewire-jack-audio-connection-kit-devel
-BuildRequires:  nodejs-devel >= 17
+# BuildRequires:  pipewire-jack-audio-connection-kit-devel
+# BuildRequires:  nodejs-devel >= 17
 %else
 BuildRequires:  pkgconfig(minizip)
 %endif
@@ -598,8 +588,8 @@
 ln -sf %{_bindir}/node third_party/node/linux/node-linux-x64/bin/node
 
 # Fix eu-strip
-rm buildtools/third_party/eu-strip/bin/eu-strip
-ln -s %{_bindir}/eu-strip buildtools/third_party/eu-strip/bin/eu-strip
+mkdir -p buildtools/third_party/eu-strip/bin
+ln -sf %{_bindir}/eu-strip buildtools/third_party/eu-strip/bin/eu-strip
 
 # Fix shim header generation
 sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
@@ -613,19 +603,16 @@
 # GN sets lto on its own and we need just ldflag options, not cflags
 %define _lto_cflags %{nil}
 
+
 # Make sure python is python3
 install -d -m 0755 python3-path
 ln -sf %{_bindir}/python3 "$(pwd)/python3-path/python"
 export PATH="$(pwd)/python3-path:${PATH}"
 
-# Make sure node is node16 on suse
-export NODE_VERSION=16
+ARCH_FLAGS="%optflags"
 
 
 
-# REDUCE DEBUG as it gets TOO large
-ARCH_FLAGS="$(echo %{optflags} | sed -e 's/-g /-g1 /g' -e 's/-g$/-g1/g')"
-
 
 %if 0%{?fedora}
 # Fix base/allocator/allocator_shim.cc:408:2: error: #error This code cannot be
@@ -635,19 +622,36 @@
 
 
 
-
 # for wayland
 export CXXFLAGS="${ARCH_FLAGS} -I/usr/include/wayland 
-I/usr/include/libxkbcommon"
+export CFLAGS="${CXXFLAGS}"
+
+# Google has a bad coding style, using a macro `NOTREACHED()` that is not 
properly detected by GCC
+# multiple times throughout the codebase. It is not possible to redefine the 
macro to __builtin_unreachable,
+# as it has an astonishing syntax, behaving like an ostream (in debug builds 
it is supposed to trap and print an error message)
+export CXXFLAGS="${CXXFLAGS} -Wno-error=return-type"
+# As of 19.0.8, 
export_gin_v8platform_pageallocator_for_usage_outside_of_the_gin.patch
+# introduces non-conformant C++ code (redefinition of PageAllocator)
+# This is an Electron-specific problem that does not appear in Chromium.
+export CXXFLAGS="${CXXFLAGS} -fpermissive"
+
+# REDUCE DEBUG for C++ as it gets TOO large due to ???heavy hemplate use in 
Blink???
+export CXXFLAGS="$(echo ${CXXFLAGS} | sed -e 's/-g /-g1 /g' -e 's/-g$/-g1/g')"
+
 
 export LDFLAGS="%{?build_ldflags}"
 
 
 
+
 %if %{with clang}
 
-export CFLAGS="${CXXFLAGS}"
+
 export CC=clang
 export CXX=clang++
+export AR=llvm-ar
+export NM=llvm-nm
+export RANLIB=llvm-ranlib
 
 # else with clang
 %else
@@ -663,36 +667,25 @@
 %endif
 
 
-export CXXFLAGS="${CXXFLAGS} -Wno-return-type"
-# extra flags to reduce warnings that aren't very useful
-export CXXFLAGS="${CXXFLAGS} -Wno-pedantic -Wno-unused-result 
-Wno-unused-function -Wno-unused-variable -Wno-unused-but-set-variable 
-Wno-deprecated-declarations"
-# ignore warnings for minor mistakes that are too common
-export CXXFLAGS="${CXXFLAGS} -Wno-return-type -Wno-parentheses 
-Wno-misleading-indentation"
-# ignore warnings that are not supported well until gcc 8
-export CXXFLAGS="${CXXFLAGS} -Wno-attributes"
-# ignore warnings due to gcc bug 
(https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84055)
-export CXXFLAGS="${CXXFLAGS} -Wno-ignored-attributes"
-# ingore new gcc 8 warnings that aren't yet handled upstream
-export CXXFLAGS="${CXXFLAGS} -Wno-address -Wno-dangling-else 
-Wno-packed-not-aligned"
 
-export CFLAGS="${CXXFLAGS}"
-export CXXFLAGS="${CXXFLAGS} -Wno-subobject-linkage -Wno-class-memaccess 
-Wno-invalid-offsetof -fpermissive"
 
 %if 0%{?suse_version} >= 1550 || 0%{?sle_version} >= 150500 || 0%{?fedora}
 export CC=gcc
 export CXX=g++
+export AR=gcc-ar
+export NM=gcc-nm
+export RANLIB=gcc-ranlib
 %else
 export CC=gcc-10
 export CXX=g++-10
+export AR=gcc-ar-10
+export NM=gcc-nm-10
+export RANLIB=gcc-ranlib-10
 %endif
 
 # endif with clang
 %endif
 
-# Needed e.g. for static library creation by 
base/third_party/dynamic_annotations/
-export AR=ar
-export NM=nm
-export RANLIB=ranlib
 
 # do not eat all memory
 %limit_build -m 2600
@@ -879,11 +872,15 @@
 myconf_gn+=" is_component_ffmpeg=true"
 myconf_gn+=" use_cups=true"
 myconf_gn+=" use_aura=true"
+
+
+# These options have been disabled, see chromium-102-compiler.patch
 # symbol_level=2 is full debug
 # symbol_level=1 is enough info for stacktraces
 # symbol_level=0 disable debug
-myconf_gn+=" symbol_level=1"
-myconf_gn+=" blink_symbol_level=0"
+#myconf_gn+=" symbol_level=2"
+#myconf_gn+=" blink_symbol_level=1"
+
 myconf_gn+=" use_kerberos=true"
 myconf_gn+=" enable_vr=false"
 myconf_gn+=" optimize_webui=false"
@@ -1035,7 +1032,7 @@
 rsync -av out/Release/gen/node_headers/include/node/* 
%{buildroot}%{_includedir}/electron
 
 %files
-%license electron/LICENSE
+%license electron/LICENSE electron/chromium_src/LICENSE.chromium 
third_party/blink/LICENSE_FOR_ABOUT_CREDITS
 %doc electron/README.md
 %{_bindir}/electron
 %{_datadir}/pixmaps/electron.png

++++++ breakpad-system-curl.patch ++++++
--- a/third_party/breakpad/breakpad/src/common/linux/libcurl_wrapper.h
+++ b/third_party/breakpad/breakpad/src/common/linux/libcurl_wrapper.h
@@ -37,7 +37,7 @@
 #include <map>
 
 #include "common/using_std_string.h"
-#include "third_party/curl/curl.h"
+#include <curl/curl.h>
 
 namespace google_breakpad {
 class LibcurlWrapper {

++++++ chromium-102-compiler.patch ++++++
--- /var/tmp/diff_new_pack.CaQfXq/_old  2022-08-02 22:09:18.805793504 +0200
+++ /var/tmp/diff_new_pack.CaQfXq/_new  2022-08-02 22:09:18.809793515 +0200
@@ -11,7 +11,7 @@
 index d40843b..b92f03b 100644
 --- a/build/config/compiler/BUILD.gn
 +++ b/build/config/compiler/BUILD.gn
-@@ -286,9 +286,7 @@ config("compiler") {
+@@ -286,9 +286,7 @@
  
    configs += [
      # See the definitions below.
@@ -21,7 +21,7 @@
      ":compiler_codegen",
      ":compiler_deterministic",
    ]
-@@ -522,31 +520,6 @@ config("compiler") {
+@@ -522,31 +520,6 @@
      ldflags += [ "-Wl,-z,keep-text-section-prefix" ]
    }
  
@@ -53,7 +53,17 @@
    # Rust compiler setup (for either clang or rustc).
    if (enable_rust) {
      defines += [ "RUST_ENABLED" ]
-@@ -1232,45 +1205,6 @@ config("compiler_deterministic") {
+@@ -880,7 +853,8 @@
+ # without using everything that "compiler" brings in.  Options that
+ # tweak code generation for a particular CPU do not belong here!
+ # See "compiler_codegen", below.
+-config("compiler_cpu_abi") {
++config("compiler_cpu_abi") { }
++config("xcompiler_cpu_abi") {
+   cflags = []
+   ldflags = []
+   defines = []
+@@ -1232,45 +1206,6 @@
      }
    }
  
@@ -99,7 +109,7 @@
    # Tells the compiler not to use absolute paths when passing the default
    # paths to the tools it invokes. We don't want this because we don't
    # really need it and it can mess up the goma cache entries.
-@@ -1538,15 +1472,6 @@ config("default_warnings") {
+@@ -1538,15 +1473,6 @@
          cflags += [ "-Wno-deprecated-non-prototype" ]
        }
  
@@ -115,7 +125,7 @@
        if (is_fuchsia) {
          # TODO(https://bugs.chromium.org/p/fuchsia/issues/detail?id=77383)
          cflags += [ "-Wno-deprecated-copy" ]
-@@ -1615,7 +1540,7 @@ config("chromium_code") {
+@@ -1615,7 +1541,7 @@
        defines = [ "_HAS_NODISCARD" ]
      }
    } else {
@@ -124,7 +134,7 @@
      if (treat_warnings_as_errors) {
        cflags += [ "-Werror" ]
  
-@@ -1624,10 +1549,6 @@ config("chromium_code") {
+@@ -1624,10 +1550,6 @@
        # well.
        ldflags = [ "-Werror" ]
      }
@@ -135,7 +145,7 @@
  
      # In Chromium code, we define __STDC_foo_MACROS in order to get the
      # C99 macros on Mac and Linux.
-@@ -1636,15 +1557,6 @@ config("chromium_code") {
+@@ -1636,15 +1558,6 @@
        "__STDC_FORMAT_MACROS",
      ]
  
@@ -151,7 +161,7 @@
      if (is_mac) {
        cflags_objc = [ "-Wobjc-missing-property-synthesis" ]
        cflags_objcc = [ "-Wobjc-missing-property-synthesis" ]
-@@ -2035,7 +1947,8 @@ config("default_stack_frames") {
+@@ -2035,7 +1948,8 @@
  }
  
  # Default "optimization on" config.
@@ -161,7 +171,7 @@
    if (is_win) {
      if (chrome_pgo_phase != 2) {
        # Favor size over speed, /O1 must be before the common flags.
-@@ -2073,7 +1986,8 @@ config("optimize") {
+@@ -2073,7 +1987,8 @@
  }
  
  # Turn off optimizations.
@@ -171,7 +181,7 @@
    if (is_win) {
      cflags = [
        "/Od",  # Disable optimization.
-@@ -2113,7 +2027,8 @@ config("no_optimize") {
+@@ -2113,7 +2028,8 @@
  # Turns up the optimization level. On Windows, this implies whole program
  # optimization and link-time code generation which is very expensive and 
should
  # be used sparingly.
@@ -181,7 +191,7 @@
    if (is_nacl && is_nacl_irt) {
      # The NaCl IRT is a special case and always wants its own config.
      # Various components do:
-@@ -2146,7 +2061,8 @@ config("optimize_max") {
+@@ -2146,7 +2062,8 @@
  #
  # TODO(crbug.com/621335) - rework how all of these configs are related
  # so that we don't need this disclaimer.
@@ -191,7 +201,7 @@
    if (is_nacl && is_nacl_irt) {
      # The NaCl IRT is a special case and always wants its own config.
      # Various components do:
-@@ -2172,7 +2088,8 @@ config("optimize_speed") {
+@@ -2172,7 +2089,8 @@
    }
  }
  
@@ -201,7 +211,7 @@
    cflags = [ "-O1" ] + common_optimize_on_cflags
    rustflags = [ "-Copt-level=1" ]
    ldflags = common_optimize_on_ldflags
-@@ -2291,7 +2208,8 @@ config("win_pdbaltpath") {
+@@ -2291,7 +2209,8 @@
  }
  
  # Full symbols.
@@ -211,7 +221,7 @@
    if (is_win) {
      if (is_clang) {
        cflags = [ "/Z7" ]  # Debug information in the .obj files.
-@@ -2419,7 +2337,8 @@ config("symbols") {
+@@ -2419,7 +2338,8 @@
  # Minimal symbols.
  # This config guarantees to hold symbol for stack trace which are shown to 
user
  # when crash happens in unittests running on buildbot.
@@ -221,7 +231,7 @@
    if (is_win) {
      # Functions, files, and line tables only.
      cflags = []
-@@ -2492,7 +2411,8 @@ config("minimal_symbols") {
+@@ -2492,7 +2412,8 @@
  # This configuration contains function names only. That is, the compiler is
  # told to not generate debug information and the linker then just puts 
function
  # names in the final debug information.
@@ -231,7 +241,4 @@
    if (is_win) {
      ldflags = [ "/DEBUG" ]
  
--- 
-2.35.1
-
 

++++++ create_tarball.sh ++++++
--- /var/tmp/diff_new_pack.CaQfXq/_old  2022-08-02 22:09:18.857793654 +0200
+++ /var/tmp/diff_new_pack.CaQfXq/_new  2022-08-02 22:09:18.861793665 +0200
@@ -142,70 +142,69 @@
 
 pushd "${ELECTRON_PATH}" || cleanup_and_exit 1
 
+
+# TODO: Go through every entry on this list and either remove it, or add an 
explanation why it's needed.
 echo ">>>>>> Remove bundled libs"
 keeplibs=(
-    base/third_party/cityhash
-    base/third_party/double_conversion
-    base/third_party/dynamic_annotations
-    base/third_party/icu
-    base/third_party/superfasthash
-    base/third_party/symbolize
-    base/third_party/valgrind
-    base/third_party/xdg_mime
-    base/third_party/xdg_user_dirs
-    buildtools/third_party/libc++
-    buildtools/third_party/libc++abi
-    buildtools/third_party/libunwind
-    buildtools/third_party/eu-strip
-    chrome/third_party/mozilla_security_manager
-    courgette/third_party
-    net/third_party/mozilla_security_manager
-    net/third_party/nss
-    net/third_party/quic
-    net/third_party/uri_template
-    third_party/abseil-cpp
+    base/third_party/cityhash #Derived code, not vendored dependency.
+    base/third_party/dynamic_annotations #Derived code, not vendored 
dependency.
+    base/third_party/icu #Derived code, not vendored dependency.
+    base/third_party/superfasthash #Not a shared library.
+    base/third_party/symbolize #Derived code, not vendored dependency.
+    base/third_party/valgrind #Copy of a private header.
+    base/third_party/xdg_mime #Seems not to be available as a shared library.
+    base/third_party/xdg_user_dirs #Derived code, not vendored dependency.
+    chrome/third_party/mozilla_security_manager #Derived code, not vendored 
dependency.
+    courgette/third_party #Derived code, not vendored dependency.
+    net/third_party/mozilla_security_manager #Derived code, not vendored 
dependency.
+    net/third_party/nss #Derived code, not vendored dependency.
+    net/third_party/quic #Not available as a shared library yet. An old 
version is in Factory (google-quiche-source)
+    net/third_party/uri_template #Derived code, not vendored dependency.
+    third_party/abseil-cpp #15.4 and fc36 too old.
+    # ANGLE is an integral part of chrome and is not available as a shared 
library.
     third_party/angle
     third_party/angle/src/common/third_party/base
     third_party/angle/src/common/third_party/smhasher
-    third_party/angle/src/third_party/libXNVCtrl
-    third_party/angle/src/third_party/trace_event
-    third_party/angle/src/third_party/volk
-    third_party/apple_apsl
+    #
+    third_party/angle/src/third_party/libXNVCtrl #Not in Factory yet
+    third_party/angle/src/third_party/trace_event #Does not seem to be a 
separate library.
+    third_party/angle/src/third_party/volk #Not in Factory or Rawhide. Debian 
has it as vulkan-volk
     third_party/axe-core
-    third_party/blink
-    third_party/boringssl
+    third_party/blink #Integral part of chrome
+    third_party/boringssl #Factory has an ancient version, but upstream seems 
to have gave up on making it a shared library
     third_party/boringssl/src/third_party/fiat
-    third_party/breakpad
-    third_party/breakpad/breakpad/src/third_party/curl
-    third_party/catapult
-    third_party/catapult/common/py_vulcanize/third_party/rcssmin
-    third_party/catapult/common/py_vulcanize/third_party/rjsmin
-    third_party/catapult/third_party/beautifulsoup4
-    third_party/catapult/third_party/html5lib-1.1/
-    third_party/catapult/third_party/html5lib-python
-    third_party/catapult/third_party/polymer
-    third_party/catapult/third_party/six
-    third_party/catapult/tracing/third_party/d3
-    third_party/catapult/tracing/third_party/gl-matrix
-    third_party/catapult/tracing/third_party/jpeg-js
-    third_party/catapult/tracing/third_party/jszip
-    third_party/catapult/tracing/third_party/mannwhitneyu
-    third_party/catapult/tracing/third_party/oboe
-    third_party/catapult/tracing/third_party/pako
+    third_party/breakpad #Integral part of chrome
+    # We don't need it (disable-catapult.patch)
+    #third_party/catapult
+    #third_party/catapult/common/py_vulcanize/third_party/rcssmin
+    #third_party/catapult/common/py_vulcanize/third_party/rjsmin
+    #third_party/catapult/third_party/beautifulsoup4
+    #third_party/catapult/third_party/html5lib-1.1/
+    #third_party/catapult/third_party/html5lib-python
+    #third_party/catapult/third_party/polymer
+    #third_party/catapult/third_party/six
+    #third_party/catapult/tracing/third_party/d3
+    #third_party/catapult/tracing/third_party/gl-matrix
+    #third_party/catapult/tracing/third_party/jpeg-js
+    #third_party/catapult/tracing/third_party/jszip
+    #third_party/catapult/tracing/third_party/mannwhitneyu
+    #third_party/catapult/tracing/third_party/oboe
+    #third_party/catapult/tracing/third_party/pako
     third_party/ced
     third_party/cld_3
     third_party/closure_compiler
-    third_party/crashpad
-    third_party/crashpad/crashpad/third_party/lss
-    third_party/crashpad/crashpad/third_party/zlib
-    third_party/crc32c
-    third_party/cros_system_api
-    third_party/dav1d
-    third_party/dawn
+    third_party/crashpad #Integral part of chrome
+    third_party/crashpad/crashpad/third_party/lss #Derived code, not vendored 
dependency.
+    third_party/crashpad/crashpad/third_party/zlib #Derived code, not vendored 
dependency.
+    third_party/crc32c #Not in Leap
+    third_party/cros_system_api #Integral part of Chrome. Needed.
+    third_party/dav1d #Leap and fc36 too old
+    third_party/dawn #Integral part of chrome
     third_party/dawn/third_party
-    third_party/depot_tools
+    third_party/depot_tools #Integral part of chrome
     third_party/depot_tools/third_party/six
     third_party/devscripts
+    #Javascript code, integral part of chrome
     third_party/devtools-frontend
     third_party/devtools-frontend/src/front_end/third_party
     third_party/devtools-frontend/src/front_end/third_party/acorn
@@ -223,72 +222,63 @@
     third_party/devtools-frontend/src/front_end/third_party/wasmparser
     third_party/devtools-frontend/src/third_party
     third_party/devtools-frontend/src/test/unittests/front_end/third_party/i18n
+    #
     third_party/distributed_point_functions
     third_party/dom_distiller_js
-    third_party/eigen3
-    third_party/electron_node
+    #third_party/eigen3 #Used only by tflite which is not used in electron
+    third_party/electron_node #Integral part of electron
     third_party/emoji-segmenter
     third_party/farmhash
     third_party/fdlibm
     third_party/fft2d
-    third_party/flatbuffers
-    third_party/freetype
+    third_party/flatbuffers #TODO: Consider unbundling this
     third_party/fusejs/dist
     third_party/gemmlowp
-    third_party/google_input_tools
-    third_party/google_input_tools/third_party/closure_library
-    
third_party/google_input_tools/third_party/closure_library/third_party/closure
-    third_party/googletest
-    third_party/harfbuzz-ng
+    third_party/harfbuzz-ng #There are new google files within this directory.
     third_party/harfbuzz-ng/utils
-    third_party/highway
-    third_party/hunspell
+    third_party/highway #Used only by libjxl. Consider unbundling this.
+    third_party/hunspell #heavily forked version
     third_party/iccjpeg
-    third_party/icu
     third_party/inspector_protocol
     third_party/jinja2
-    third_party/jsoncpp
     third_party/jstemplate
     third_party/khronos
-    third_party/leveldatabase
+    third_party/leveldatabase #use of private headers
     third_party/libaddressinput
-    third_party/libaom
+    third_party/libaom #version in Factory is too old
     third_party/libaom/source/libaom/third_party/fastfeat
     third_party/libaom/source/libaom/third_party/vector
     third_party/libaom/source/libaom/third_party/x86inc
-    third_party/libavif
-    third_party/libgav1
+    third_party/libavif #not availabe on 15.3
+    third_party/libgav1 #not in Factory yet
     third_party/libgifcodec
-    third_party/libjingle
-    third_party/libjxl
-    third_party/libphonenumber
-    third_party/libsecret
-    third_party/libsrtp
+    third_party/libjxl #not in Factory yet
+    third_party/libphonenumber #depends on protobuf
+    third_party/libsecret #TODO: Consider unbundling this
+    third_party/libsrtp #Use of private headers
     third_party/libsync/src
     third_party/libudev
     third_party/liburlpattern
     third_party/libva_protected_content
-    third_party/libvpx
+    third_party/libvpx #Use of private headers
     third_party/libvpx/source/libvpx/third_party/x86inc
     third_party/libwebm
     third_party/libx11/src
     third_party/libxcb-keysyms/keysyms
     third_party/libxml/chromium
-    third_party/libyuv
+    third_party/libyuv #The version in Fedora is too old
     third_party/libzip
     third_party/lottie
     third_party/lss
     third_party/mako
-    third_party/maldoca
-    third_party/maldoca/src/third_party
+    #third_party/maldoca #integral part of chrome, but not used in electron.
+    #third_party/maldoca/src/third_party
     third_party/markupsafe
     third_party/mesa
     third_party/metrics_proto
-    third_party/minigbm
     third_party/modp_b64
-    third_party/nasm
-    third_party/nearby
-    third_party/node
+    third_party/nasm #TODO: Check how forked is this and if we can use the 
system version
+    third_party/node #javascript code
     third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
     third_party/one_euro_filter
     third_party/openscreen
@@ -300,7 +290,6 @@
     third_party/pdfium/third_party/base
     third_party/pdfium/third_party/bigint
     third_party/pdfium/third_party/freetype
-    third_party/pdfium/third_party/libtiff
     third_party/pdfium/third_party/skia_shared
     third_party/perfetto
     third_party/perfetto/protos/third_party/chromium
@@ -309,45 +298,43 @@
     third_party/polymer
     third_party/private-join-and-compute
     third_party/private_membership
-    third_party/protobuf
+    third_party/protobuf #Heavily forked.
     third_party/protobuf/third_party/six
     third_party/pyjson5
     third_party/qcms
-    third_party/rnnoise
+    third_party/rnnoise #use of private headers
     third_party/ruy
     third_party/s2cellid
     third_party/securemessage
     third_party/shell-encryption
     third_party/simplejson
-    third_party/skia
+    third_party/skia #integral part of chrome
     third_party/skia/include/third_party/skcms/
     third_party/skia/include/third_party/vulkan/
     third_party/skia/third_party/skcms
     third_party/skia/third_party/vulkan
     third_party/smhasher
-    third_party/speech-dispatcher
-    third_party/sqlite
+    third_party/speech-dispatcher #stub header for a dlopened library
+    third_party/sqlite #heavily forked version
     third_party/swiftshader
-    third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
-    third_party/swiftshader/third_party/SPIRV-Tools
+    third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1 
#FC36 too old
+    third_party/swiftshader/third_party/SPIRV-Tools #FC36 too old
     third_party/swiftshader/third_party/astc-encoder
-    third_party/swiftshader/third_party/llvm-10.0
     third_party/swiftshader/third_party/llvm-subzero
     third_party/swiftshader/third_party/marl
     third_party/swiftshader/third_party/subzero
-    third_party/tensorflow-text
-    third_party/tflite
-    third_party/tflite/src/third_party/eigen3
-    third_party/tflite/src/third_party/fft2d
+    #third_party/tflite #Not used by electron, but chrome needs it.
+    #third_party/tflite/src/third_party/eigen3
+    #third_party/tflite/src/third_party/fft2d
     third_party/ukey2
-    third_party/usb_ids
+    third_party/usb_ids #TODO: Consider unbundling this, the version in chrome 
is ancient
     third_party/utf
     third_party/vulkan
     third_party/wayland
     third_party/web-animations-js
     third_party/webdriver
     third_party/webgpu-cts
-    third_party/webrtc
+    third_party/webrtc #Integral part of chrome
     third_party/webrtc/common_audio/third_party/ooura
     third_party/webrtc/common_audio/third_party/spl_sqrt_floor
     third_party/webrtc/modules/third_party/fft
@@ -355,8 +342,7 @@
     third_party/webrtc/modules/third_party/g722
     third_party/webrtc/rtc_base/third_party/base64
     third_party/webrtc/rtc_base/third_party/sigslot
-    third_party/widevine
-    third_party/woff2
+    third_party/widevine #Integral part of chrome. Needed.
     third_party/wuffs
     third_party/x11proto
     third_party/xcbproto
@@ -381,6 +367,18 @@
 # Remove generatted python bytecode
 find . -type d -name __pycache__ -print0 | xargs -0 rm -rvf
 find . -type f -name '*.pyc' -print -delete
+
+echo ">>>>>> Remove non-free binaries"
+find . -type f -name "*.node" -print -delete
+find . -type f -name "*.dll" -print -delete
+find . -type f -name "*.dylib" -print -delete
+find . -type f -name "*.so" -print -delete
+find . -type f -name "*.o" -print -delete
+find . -type f -name "*.a" -print -delete
+
+find -type f | xargs -P$(nproc) -- sh -c 'file "$@" | grep -v '\'' 
.*script'\'' | grep '\'' .*executable'\'' | tee /dev/stderr | sed '\''s/: 
.*//'\'' | xargs rm -fv'
+
+
 # Remove empty directories
 find . -type d -empty -print -delete
 popd || cleanup_and_exit 1

++++++ electron-19.0.8.tar.xz -> electron-19.0.9.tar.xz ++++++
/work/SRC/openSUSE:Factory/nodejs-electron/electron-19.0.8.tar.xz 
/work/SRC/openSUSE:Factory/.nodejs-electron.new.1533/electron-19.0.9.tar.xz 
differ: char 15, line 1


++++++ gcc-enable-lto.patch ++++++
--- /var/tmp/diff_new_pack.CaQfXq/_old  2022-08-02 22:09:18.949793919 +0200
+++ /var/tmp/diff_new_pack.CaQfXq/_new  2022-08-02 22:09:18.953793930 +0200
@@ -33,7 +33,7 @@
  }
  
 +config("gcc_lto") {
-+  cflags = [ "-flto" ]
++  cflags = [ "-flto=auto" ]
 +}
 +
  config("default_stack_frames") {

++++++ system-gtest.patch ++++++
We don't need this huge test-only dependency in the tarball. Only one header is 
needed in prod code, so unbundling is not a problem even on old targets.

--- a/testing/gtest/include/gtest/gtest_prod.h
+++ b/testing/gtest/include/gtest/gtest_prod.h
@@ -10,6 +10,6 @@
 // and testing/gmock, instead of directly including files in
 // third_party/googletest.
 
-#include "third_party/googletest/src/googletest/include/gtest/gtest_prod.h"
+#include <gtest/gtest_prod.h>
 
 #endif  // TESTING_GTEST_INCLUDE_GTEST_GTEST_PROD_H_
\ No newline at end of file

Reply via email to