1
0

Accepting request 1005070 from home:dziobian:gulgul-ultron:19

Package Electron 20.
Please check if it works with element-desktop (my prior is that it should as upstream already uses this version)

OBS-URL: https://build.opensuse.org/request/show/1005070
OBS-URL: https://build.opensuse.org/package/show/devel:languages:nodejs/nodejs-electron?expand=0&rev=33
This commit is contained in:
2022-09-21 09:00:14 +00:00
committed by Git OBS Bridge
parent dbace1a89c
commit 52df3eda55
33 changed files with 521 additions and 292 deletions

View File

@@ -0,0 +1,71 @@
From 3ae42771de56d60148b2d70dd2793d6db9b43b71 Mon Sep 17 00:00:00 2001
From: Frank Tang <ftang@chromium.org>
Date: Thu, 21 Apr 2022 10:26:54 -0700
Subject: [PATCH] [intl] Fix arm64-N5X failure in NumberFormat v3 due to
precision issue
Use the new ICU 71-1 API
Precision::incrementExact
https://unicode-org.github.io/icu-docs/apidoc/dev/icu4c/classicu_1_1number_1_1Precision.html#aedfb413e5a37c69868594c870a87134b
Change-Id: I6d8841e5a07972d1be36026ce150eb83dbf300e7
Cq-Include-Trybots: luci.v8.try:v8_android_arm64_n5x_rel_ng
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3430378
Reviewed-by: Shu-yu Guo <syg@chromium.org>
Commit-Queue: Frank Tang <ftang@chromium.org>
Cr-Commit-Position: refs/heads/main@{#80126}
---
src/objects/intl-objects.h | 2 +-
src/objects/js-number-format.cc | 5 ++---
test/test262/test262.status | 8 --------
3 files changed, 3 insertions(+), 12 deletions(-)
diff --git a/src/objects/intl-objects.h b/src/objects/intl-objects.h
index 0541cd0ba5c..15e7e4d7fd3 100644
--- a/v8/src/objects/intl-objects.h
+++ b/v8/src/objects/intl-objects.h
@@ -21,7 +21,7 @@
#include "unicode/locid.h"
#include "unicode/uversion.h"
-#define V8_MINIMUM_ICU_VERSION 69
+#define V8_MINIMUM_ICU_VERSION 71
namespace U_ICU_NAMESPACE {
class BreakIterator;
diff --git a/src/objects/js-number-format.cc b/src/objects/js-number-format.cc
index ebfa5528a3a..633942aa2f7 100644
--- a/v8/src/objects/js-number-format.cc
+++ b/v8/src/objects/js-number-format.cc
@@ -884,9 +884,8 @@ icu::number::UnlocalizedNumberFormatter SetDigitOptionsToFormatterV3(
break;
}
if (rounding_increment != 1) {
- double icu_increment = rounding_increment *
- std::pow(10, -digit_options.maximum_fraction_digits);
- precision = ::icu::number::Precision::increment(icu_increment)
+ precision = ::icu::number::Precision::incrementExact(
+ rounding_increment, -digit_options.maximum_fraction_digits)
.withMinFraction(digit_options.minimum_fraction_digits);
}
if (trailing_zeros == JSNumberFormat::ShowTrailingZeros::kHide) {
diff --git a/test/test262/test262.status b/test/test262/test262.status
index d47d96c9dae..8d1e39d65d4 100644
--- a/v8/test/test262/test262.status
+++ b/v8/test/test262/test262.status
@@ -3128,14 +3128,6 @@
'language/identifiers/start-unicode-9*': [FAIL],
}], # no_i18n == True
-['arch == arm64', {
- # Problem in V8 Android Arm64 - N5X
- 'intl402/NumberFormat/prototype/format/format-rounding-increment-1000': [SKIP],
- 'intl402/NumberFormat/prototype/format/format-rounding-increment-2000': [SKIP],
- 'intl402/NumberFormat/prototype/format/format-rounding-increment-2500': [SKIP],
- 'intl402/NumberFormat/prototype/format/format-rounding-increment-5000': [SKIP],
-}], # 'arch == arm64'
-
['arch == arm or arch == mipsel or arch == mips or arch == arm64 or arch == mips64 or arch == mips64el', {
# Causes stack overflow on simulators due to eager compilation of

View File

@@ -18,7 +18,7 @@ Make test targets invisible to GN to enable building with system abseil
config("absl_include_config") {
include_dirs = [ "." ]
@@ -174,62 +165,3 @@
@@ -174,63 +165,3 @@
}
}
@@ -32,6 +32,7 @@ Make test targets invisible to GN to enable building with system abseil
- "absl/algorithm:algorithm_test",
- "absl/algorithm:container_test",
- "absl/base:config_test",
- "absl/base:prefetch_test",
- "absl/cleanup:cleanup_test",
- "absl/container:inlined_vector_test",
- "absl/container:node_slot_policy_test",

View File

@@ -15,3 +15,18 @@ source_set("bind_front") {
deps = [ ":bind_front_shim" ]
public_configs = [ ":system_absl_bind_front" ]
}
pkg_config("system_absl_function_ref") {
packages = [ "absl_function_ref" ]
}
shim_headers("function_ref_shim") {
root_path = "."
prefix = "absl/functional/"
headers = [ "function_ref.h" ]
}
source_set("function_ref") {
deps = [ ":function_ref_shim" ]
public_configs = [ ":system_absl_function_ref" ]
}

17
absl_utility.gn Normal file
View File

@@ -0,0 +1,17 @@
import("//build/config/linux/pkg_config.gni")
import("//build/shim_headers.gni")
pkg_config("system_absl_utility") {
packages = [ "absl_utility" ]
}
shim_headers("utility_shim") {
root_path = "."
prefix = "absl/utility/"
headers = [ "utility.h" ]
}
source_set("utility") {
deps = [ ":utility_shim" ]
public_configs = [ ":system_absl_utility" ]
}

View File

@@ -0,0 +1,15 @@
--- a/content/browser/attribution_reporting/aggregatable_attribution_utils.h
+++ b/content/browser/attribution_reporting/aggregatable_attribution_utils.h
@@ -9,11 +9,9 @@
#include <vector>
#include "content/common/content_export.h"
+#include "third_party/abseil-cpp/absl/numeric/int128.h"
#include "third_party/abseil-cpp/absl/types/optional.h"
-namespace absl {
-class uint128;
-} // namespace absl
namespace content {

View File

@@ -0,0 +1,20 @@
--- a/third_party/blink/renderer/core/frame/attribution_response_parsing.h 2022-09-16 12:44:45.672390800 +0200
+++ b/third_party/blink/renderer/core/frame/attribution_response_parsing.h 2022-09-17 16:01:55.554818800 +0200
@@ -7,16 +7,13 @@
#include <stdint.h>
+#include "third_party/abseil-cpp/absl/numeric/int128.h"
#include "third_party/blink/public/mojom/conversions/attribution_data_host.mojom-blink-forward.h"
#include "third_party/blink/renderer/core/core_export.h"
#include "third_party/blink/renderer/platform/wtf/forward.h"
#include "third_party/blink/renderer/platform/wtf/hash_map.h"
#include "third_party/blink/renderer/platform/wtf/text/wtf_string.h"
-namespace absl {
-class uint128;
-} // namespace absl
-
namespace blink {
class JSONValue;

View File

@@ -1,8 +1,8 @@
--- a/base/time/time.cc 2022-06-21 21:52:33.367987695 +0200
+++ b/base/time/time.cc 2022-06-30 13:15:58.619513336 +0200
@@ -21,7 +21,7 @@
#include <utility>
#include "base/check.h"
#include "base/strings/stringprintf.h"
-#include "base/third_party/nspr/prtime.h"
+#include <prtime.h>
@@ -30,8 +30,8 @@
"thread_annotations.h",
"threading/hang_watcher.cc",
@@ -1414,6 +1417,7 @@
":base_implementation",
"//build/config:precompiled_headers",
"//build/config/compiler:wexit_time_destructors",
"//build/config/compiler:wglobal_constructors",
+ ":system_nspr",
]

View File

@@ -1,43 +0,0 @@
description: fix a build error on 32-bit platforms
As described in https://bugs.debian.org/1011096 , recent versions of
chromium fail to build on i386 and armhf. This patch, pulled from
upstream, should fix it.
commit e334ce2c23f02f0cc0bfde9e335fd50ec6143b62
Author: Chisoon Jeong <chisoon.jeong@lge.com>
Date: Thu Apr 28 21:00:50 2022 +0000
GCC: Fixed build error by adding constexpr to base::ByteSwap(unit32_t)
Without this change build fails on compile step with error:
In file included from //components/variations/hashing.cc:10:
//base/sys_byteorder.h: In function 'constexpr uintptr_t base::ByteSwapUintPtrT(uintptr_t)':
//base/sys_byteorder.h:66:20: error: call to non-'constexpr' function 'uint32_t base::ByteSwap(uint32_t)'
66 | return ByteSwap(static_cast<uint32_t>(x));
| ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
Bug:819294
Change-Id: I05134e02020e38433fe8bbe94f8f6870dac76390
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3600155
Reviewed-by: Nico Weber <thakis@chromium.org>
Commit-Queue: Nico Weber <thakis@chromium.org>
Cr-Commit-Position: refs/heads/main@{#997404}
diff --git a/base/sys_byteorder.h b/base/sys_byteorder.h
index b001cc60c5e65..5516be76b13e3 100644
--- a/base/sys_byteorder.h
+++ b/base/sys_byteorder.h
@@ -30,7 +30,7 @@ inline uint16_t ByteSwap(uint16_t x) {
#endif
}
-inline uint32_t ByteSwap(uint32_t x) {
+inline constexpr uint32_t ByteSwap(uint32_t x) {
#if defined(COMPILER_MSVC) && !defined(__clang__)
return _byteswap_ulong(x);
#else

View File

@@ -10,8 +10,8 @@ it also needs to be marked as constexpr. Ideally the calling code needs
to be changed to only have one copy of sys_byteorder.h.
--- a/base/allocator/partition_allocator/base/sys_byteorder.h
+++ b/base/allocator/partition_allocator/base/sys_byteorder.h
--- a/base/allocator/partition_allocator/partition_alloc_base/sys_byteorder.h
+++ b/base/allocator/partition_allocator/partition_alloc_base/sys_byteorder.h
@@ -31,7 +31,7 @@ inline uint16_t ByteSwap(uint16_t x) {
#endif
}

View File

@@ -1,10 +0,0 @@
--- a/build/linux/unbundle/libxml.gn
+++ b/build/linux/unbundle/libxml.gn
@@ -19,6 +19,7 @@ static_library("libxml_utils") {
":xml_reader",
":xml_writer",
"//base/test:test_support",
+ "//services/data_decoder:lib",
"//services/data_decoder:xml_parser_fuzzer_deps",
]
sources = [

View File

@@ -110,12 +110,12 @@ index d40843b..b92f03b 100644
# 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 +1473,6 @@
cflags += [ "-Wno-deprecated-non-prototype" ]
cflags += [ "-Wno-unqualified-std-cast-call" ]
}
- if (!is_nacl && !(is_chromeos ||
- default_toolchain == "//build/toolchain/cros:target")) {
- # TODO(https://crbug.com/1316298): Re-enable once test failure is figured out
- # TODO(https://crbug.com/1322823): Remove flags once potential miscompile is investigated.
- cflags += [
- "-Xclang",
- "-no-opaque-pointers",

View File

@@ -1,25 +0,0 @@
From 7c135a291184b59a59643ed6a8c40b4405ac0175 Mon Sep 17 00:00:00 2001
From: Stephan Hartmann <stha09@googlemail.com>
Date: Wed, 27 Apr 2022 16:01:01 +0000
Subject: [PATCH] IWYU: add cstring for std::strlen in fenced_frame_utils
---
third_party/blink/common/fenced_frame/fenced_frame_utils.cc | 2 ++
1 file changed, 2 insertions(+)
diff --git a/third_party/blink/common/fenced_frame/fenced_frame_utils.cc b/third_party/blink/common/fenced_frame/fenced_frame_utils.cc
index 9e2d3ad..68f4823 100644
--- a/third_party/blink/common/fenced_frame/fenced_frame_utils.cc
+++ b/third_party/blink/common/fenced_frame/fenced_frame_utils.cc
@@ -4,6 +4,8 @@
#include "third_party/blink/public/common/fenced_frame/fenced_frame_utils.h"
+#include <cstring>
+
#include "base/guid.h"
#include "base/strings/string_util.h"
--
2.35.1

View File

@@ -3,7 +3,7 @@ This font is already available in opensuse and can be installed systemwide
--- a/ui/webui/resources/BUILD.gn 2022-06-15 15:58:23.822426713 +0200
+++ b/ui/webui/resources/BUILD.gn 2022-06-21 15:51:23.647223308 +0200
@@ -36,17 +36,6 @@
"$root_gen_dir/third_party/jstemplate/resources.grdp",
"$root_gen_dir/ui/webui/resources/cr_components/color_change_listener/resources.grdp",
]
- if (!is_chromeos_ash && !is_android) {
@@ -19,7 +19,7 @@ This font is already available in opensuse and can be installed systemwide
- }
if (include_polymer) {
deps += [
public_deps += [
'roboto.css' -> 'roboto.css.new'
--- a/ui/webui/resources/css/roboto.css 2022-06-15 15:58:23.846426661 +0200
+++ b/ui/webui/resources/css/roboto.css 2022-06-21 15:53:08.931243442 +0200
@@ -27,7 +27,7 @@ This font is already available in opensuse and can be installed systemwide
* Use of this source code is governed by a BSD-style license that can be
* found in the LICENSE file. */
-<if expr="not chromeos and not is_android">
-<if expr="not chromeos_ash and not is_android">
-@font-face {
- font-family: 'Roboto';
- font-style: normal;

View File

@@ -44,9 +44,9 @@ Index: electron-17.1.0/chrome/browser/flag_descriptions.cc
+
+#if BUILDFLAG(IS_CHROMEOS_ASH)
+
const char kAllowDisableTouchpadHapticFeedbackName[] =
"Allow disabling touchpad haptic feedback";
const char kAllowDisableTouchpadHapticFeedbackDescription[] =
const char kAdaptiveChargingForTestingName[] =
"Show adaptive charging notifications for testing";
const char kAdaptiveChargingForTestingDescription[] =
Index: electron-17.1.0/chrome/browser/flag_descriptions.h
===================================================================
--- electron-17.1.0.orig/chrome/browser/flag_descriptions.h 2022-03-07 17:20:30.960813654 +0100
@@ -70,6 +70,6 @@ Index: electron-17.1.0/chrome/browser/flag_descriptions.h
+
+// Chrome OS ------------------------------------------------------------------
+
extern const char kAllowDisableTouchpadHapticFeedbackName[];
extern const char kAllowDisableTouchpadHapticFeedbackDescription[];
extern const char kAdaptiveChargingName[];
extern const char kAdaptiveChargingDescription[];

View File

@@ -0,0 +1,36 @@
With c++14 compiling anything against these headers gets the following error:
npm ERR! /usr/include/electron/v8-maybe.h:106:45: error: 'is_lvalue_reference_v' is not a member of 'std'; did you mean 'is_lvalue_reference'?
npm ERR! 106 | template <class U, std::enable_if_t<!std::is_lvalue_reference_v<U>>*>
npm ERR! | ^~~~~~~~~~~~~~~~~~~~~
--- a/third_party/electron_node/common.gypi 2022-09-16 12:49:53.208366401 +0200
+++ b/third_party/electron_node/common.gypi 2022-09-19 12:14:32.359490504 +0200
@@ -440,7 +440,7 @@
}],
[ 'OS in "linux freebsd openbsd solaris android aix cloudabi"', {
'cflags': [ '-Wall', '-Wextra', '-Wno-unused-parameter', ],
- 'cflags_cc': [ '-fno-rtti', '-fno-exceptions', '-std=gnu++14' ],
+ 'cflags_cc': [ '-fno-rtti', '-fno-exceptions', '-std=gnu++17' ],
'defines': [ '__STDC_FORMAT_MACROS' ],
'ldflags': [ '-rdynamic' ],
'target_conditions': [
@@ -580,7 +580,7 @@
['clang==1', {
'xcode_settings': {
'GCC_VERSION': 'com.apple.compilers.llvm.clang.1_0',
- 'CLANG_CXX_LANGUAGE_STANDARD': 'gnu++14', # -std=gnu++14
+ 'CLANG_CXX_LANGUAGE_STANDARD': 'gnu++17', # -std=gnu++17
'CLANG_CXX_LIBRARY': 'libc++',
},
}],
@@ -653,7 +653,7 @@
'-qASM',
],
'cflags_cc': [
- '-qxclang=-std=c++14',
+ '-qxclang=-std=c++17',
],
'ldflags': [
'-q64',

View File

@@ -0,0 +1,10 @@
--- a/services/network/public/cpp/content_language_parser.h
+++ b/services/network/public/cpp/content_language_parser.h
@@ -5,6 +5,7 @@
#ifndef SERVICES_NETWORK_PUBLIC_CPP_CONTENT_LANGUAGE_PARSER_H_
#define SERVICES_NETWORK_PUBLIC_CPP_CONTENT_LANGUAGE_PARSER_H_
+#include <string>
#include <vector>
#include "base/component_export.h"

View File

@@ -0,0 +1,59 @@
From de893f1b7bc9c2f221b102145e1a15f4b2521954 Mon Sep 17 00:00:00 2001
From: Ivan Murashov <ivan.murashov@lge.com>
Date: Tue, 21 Jun 2022 19:29:30 +0000
Subject: [PATCH] [Cast Streaming] libstdc++: Fix incomplete type of
cast_streaming::ResourceProvider
Destructor of std::unique_ptr in libstdc++ uses sizeof() which requires
full definition of cast_streaming::ResourceProvider for return type of
ContentRendererClient::CreateCastStreamingResourceProvider().
Added required include and deps to fix the issue.
Bug: b/228081914, 957519
Change-Id: I1f12d104a090460f5d2ffbb78c72f59279a63b33
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3672799
Commit-Queue: Ivan Murashov <ivan.murashov@lge.com>
Reviewed-by: Jordan Bayles <jophba@chromium.org>
Reviewed-by: Fabrice de Gans <fdegans@chromium.org>
Reviewed-by: Alex Moshchuk <alexmos@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1016345}
---
content/public/renderer/BUILD.gn | 1 +
content/public/renderer/DEPS | 1 +
content/public/renderer/content_renderer_client.cc | 1 +
3 files changed, 3 insertions(+)
diff --git a/content/public/renderer/BUILD.gn b/content/public/renderer/BUILD.gn
index 1eab7f35738a7..fecca01152929 100644
--- a/content/public/renderer/BUILD.gn
+++ b/content/public/renderer/BUILD.gn
@@ -58,6 +58,7 @@ target(link_target_type, "renderer_sources") {
]
deps = [
+ "//components/cast_streaming/renderer:resource_provider",
"//content/public/child:child_sources",
"//content/public/common:common_sources",
"//content/renderer",
diff --git a/content/public/renderer/DEPS b/content/public/renderer/DEPS
index 12f044c8b6dbf..9e762d37425d9 100644
--- a/content/public/renderer/DEPS
+++ b/content/public/renderer/DEPS
@@ -1,4 +1,5 @@
include_rules = [
+ "+components/cast_streaming/renderer/public",
"+content/common/media",
"+content/public/child",
"+gin",
diff --git a/content/public/renderer/content_renderer_client.cc b/content/public/renderer/content_renderer_client.cc
index de7f7113f06c9..8eeeee0178f52 100644
--- a/content/public/renderer/content_renderer_client.cc
+++ b/content/public/renderer/content_renderer_client.cc
@@ -6,6 +6,7 @@
#include "base/command_line.h"
#include "build/build_config.h"
+#include "components/cast_streaming/renderer/public/resource_provider.h"
#include "content/public/common/content_switches.h"
#include "media/base/demuxer.h"
#include "media/base/renderer_factory.h"

View File

@@ -136,7 +136,7 @@ rm -v src/third_party/node/node_modules.tar.gz
echo ">>>>>> Get node modules for electron"
pushd src/electron || cleanup_and_exit 1
yarn install --frozen-lockfile --ignore-engines --ignore-scripts
yarn install --frozen-lockfile --ignore-engines --ignore-scripts --link-duplicates
if [ $? -ne 0 ]; then
echo "ERROR: yarn install failed"
cleanup_and_exit 1
@@ -284,7 +284,7 @@ keeplibs=(
third_party/swiftshader/third_party/astc-encoder #not in rawhide or factory. Debian has it (astc-encoder)
third_party/swiftshader/third_party/llvm-subzero #heavily forked version of libLLVM for use in subzero
third_party/swiftshader/third_party/marl #not on any distro
third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1 #FC36 too old
third_party/swiftshader/third_party/SPIRV-Headers #FC36 too old
third_party/swiftshader/third_party/SPIRV-Tools #FC36 too old
third_party/swiftshader/third_party/subzero #integral part of swiftshader
#third_party/tflite #Not used by electron, but chrome needs it.
@@ -333,6 +333,7 @@ fi
rm -rf third_party/electron_node/deps/{googletest/{include,src},icu-small} #292MB and vendored
find third_party/electron_node/deps/brotli -type f ! -name "*.gn" -a ! -name "*.gni" -a ! -name "*.gyp" -a ! -name "*.gypi" -delete
find third_party/electron_node/deps/cares -type f ! -name "*.gn" -a ! -name "*.gni" -a ! -name "*.gyp" -a ! -name "*.gypi" -delete
find third_party/electron_node/deps/nghttp2 -type f ! -name "*.gn" -a ! -name "*.gni" -a ! -name "*.gyp" -a ! -name "*.gypi" -delete
find third_party/electron_node/deps/openssl -type f ! -name "*.gn" -a ! -name "*.gni" -a ! -name "*.gyp" -a ! -name "*.gypi" -delete
find third_party/electron_node/deps/v8 -type f ! -name "*.gn" -a ! -name "*.gni" -a ! -name "*.gyp" -a ! -name "*.gypi" -delete
find third_party/electron_node/deps/zlib -type f ! -name "*.gn" -a ! -name "*.gni" -a ! -name "*.gyp" -a ! -name "*.gypi" -delete
@@ -379,9 +380,14 @@ find -type f | sponge | xargs -P$(nproc) -- sh -c 'file "$@" | grep -v '\'' .*sc
# Remove empty directories
echo ">>>>>> Remove empty directories"
find . -type d -empty -print -delete
popd || cleanup_and_exit 1
echo ">>>>>> Hardlink duplicate files to reduce extraction time"
fdupes -Sr src
echo ">>>>>> Create tarball"
#I would like to use zst, as it decompresses MUCH faster, but unfortunately it is not supported by OBS diff view yet
XZ_OPT="-T$(nproc) -e9 -vv" tar -vvcJf "${ELECTRON_PKGDIR}/${ELECTRON_PKGNAME}-${ELECTRON_PKGVERSION}.tar.xz" src

View File

@@ -96,14 +96,6 @@ author: Michael Gilbert <mgilbert@debian.org>
"//tools/perf/run_telemetry_tests",
"//testing/scripts/run_telemetry_as_googletest.py",
]
@@ -10307,7 +10304,6 @@ if (is_mac || is_win || is_android) {
"//chrome/test/data/perf",
"//components/variations/service/generate_ui_string_overrider.py",
"//testing/scripts",
- "//third_party/catapult",
"//tools/perf",
]
data_deps = [ "//testing:test_scripts_shared" ]
--- a/tools/grit/BUILD.gn
+++ b/tools/grit/BUILD.gn
@@ -33,7 +33,6 @@ group("grit_python_unittests") {
@@ -156,13 +148,13 @@ author: Michael Gilbert <mgilbert@debian.org>
+++ b/tools/gritsettings/resource_ids.spec
@@ -755,12 +755,6 @@
"content/test/web_ui_mojo_test_resources.grd": {
"includes": [3860],
"includes": [3840],
},
-
- # This file is generated during the build.
- "<(SHARED_INTERMEDIATE_DIR)/content/browser/tracing/tracing_resources.grd": {
- "META": {"sizes": {"includes": [20],}},
- "includes": [3880],
- "includes": [3860],
- },
# END content/ section.
@@ -177,28 +169,10 @@ author: Michael Gilbert <mgilbert@debian.org>
]
sources += [
# Non-Android platforms that don't presently support
--- a/fuchsia/engine/BUILD.gn
+++ b/fuchsia/engine/BUILD.gn
@@ -27,7 +27,6 @@ repack("web_engine_pak") {
sources = [
"$root_gen_dir/components/components_resources.pak",
"$root_gen_dir/content/app/resources/content_resources_100_percent.pak",
- "$root_gen_dir/content/browser/tracing/tracing_resources.pak",
"$root_gen_dir/content/content_resources.pak",
"$root_gen_dir/content/dev_ui_content_resources.pak",
"$root_gen_dir/mojo/public/js/mojo_bindings_resources.pak",
@@ -42,7 +41,6 @@ repack("web_engine_pak") {
"//content:content_resources",
"//content:dev_ui_content_resources",
"//content/app/resources",
- "//content/browser/tracing:resources",
"//gpu/command_buffer/service",
"//mojo/public/js:resources",
"//net:net_resources",
--- a/chrome/chrome_paks.gni
+++ b/chrome/chrome_paks.gni
@@ -168,7 +168,6 @@ template("chrome_extra_paks") {
"$root_gen_dir/chrome/webid_resources_100_percent.pak",
"$root_gen_dir/chrome/webui_gallery_resources.pak",
"$root_gen_dir/chrome/whats_new_resources.pak",
"$root_gen_dir/content/browser/devtools/devtools_resources.pak",
- "$root_gen_dir/content/browser/tracing/tracing_resources.pak",
@@ -206,7 +180,7 @@ author: Michael Gilbert <mgilbert@debian.org>
deps += [
"//chrome/browser/resources:component_extension_resources",
@@ -198,7 +297,6 @@ template("chrome_extra_paks") {
"//chrome/browser/resources/tab_search:resources",
"//chrome/browser/resources/webui_gallery:resources",
"//chrome/browser/resources/whats_new:resources",
"//content/browser/devtools:devtools_resources",
- "//content/browser/tracing:resources",
@@ -301,7 +275,7 @@ author: Michael Gilbert <mgilbert@debian.org>
--- a/mojo/public/tools/BUILD.gn
+++ b/mojo/public/tools/BUILD.gn
@@ -13,6 +13,5 @@ group("mojo_python_unittests") {
deps = [ "//mojo/public/tools/mojom/mojom:tests" ]
]
data_deps = [
"//testing:test_scripts_shared",
- "//third_party/catapult/third_party/typ/",

View File

@@ -6,7 +6,7 @@ Index: electron-17.1.0/base/compiler_specific.h
#endif // defined(__clang_analyzer__)
// Use nomerge attribute to disable optimization of merging multiple same calls.
-#if defined(__clang__) && __has_attribute(nomerge)
-#if defined(__clang__) && HAS_ATTRIBUTE(nomerge)
+#if defined(__clang__) && (__clang_major__ >= 12) && \
+ __has_attribute(nomerge) && !defined(OS_CHROMEOS)
#define NOMERGE [[clang::nomerge]]

View File

@@ -1,70 +0,0 @@
Index: electron-16.0.9/third_party/swiftshader/third_party/subzero/src/IceInstX8664.cpp
===================================================================
--- electron-16.0.9.orig/third_party/swiftshader/third_party/subzero/src/IceInstX8664.cpp 2022-02-16 18:11:13.517899468 +0100
+++ electron-16.0.9/third_party/swiftshader/third_party/subzero/src/IceInstX8664.cpp 2022-02-24 14:35:08.328190810 +0100
@@ -659,6 +659,7 @@ void emitIASOpTyGPR(const Cfg *Func, Typ
}
}
+#if 0
template <bool VarCanBeByte, bool SrcCanBeByte>
void emitIASRegOpTyGPR(const Cfg *Func, Type Ty, const Variable *Var,
const Operand *Src, const GPREmitterRegOp &Emitter) {
@@ -697,6 +698,7 @@ void emitIASRegOpTyGPR(const Cfg *Func,
llvm_unreachable("Unexpected operand type");
}
}
+#endif
void emitIASAddrOpTyGPR(const Cfg *Func, Type Ty, const AsmAddress &Addr,
const Operand *Src, const GPREmitterAddrOp &Emitter) {
Index: electron-16.0.9/third_party/swiftshader/third_party/subzero/src/IceInstX8664.h
===================================================================
--- electron-16.0.9.orig/third_party/swiftshader/third_party/subzero/src/IceInstX8664.h 2022-02-16 18:11:13.517899468 +0100
+++ electron-16.0.9/third_party/swiftshader/third_party/subzero/src/IceInstX8664.h 2022-02-24 15:14:53.316809270 +0100
@@ -576,8 +576,43 @@ void emitIASXmmShift(const Cfg *Func, Ty
/// Emit a two-operand (GPR) instruction, where the dest operand is a Variable
/// that's guaranteed to be a register.
template <bool VarCanBeByte = true, bool SrcCanBeByte = true>
-void emitIASRegOpTyGPR(const Cfg *Func, Type Ty, const Variable *Dst,
- const Operand *Src, const GPREmitterRegOp &Emitter);
+void emitIASRegOpTyGPR(const Cfg *Func, Type Ty, const Variable *Var,
+ const Operand *Src, const GPREmitterRegOp &Emitter) {
+ auto *Target = InstX86Base::getTarget(Func);
+ Assembler *Asm = Func->getAssembler<Assembler>();
+ assert(Var->hasReg());
+ // We cheat a little and use GPRRegister even for byte operations.
+ GPRRegister VarReg = VarCanBeByte ? RegX8664::getEncodedGPR(Var->getRegNum())
+ : RegX8664::getEncodedGPR(Var->getRegNum());
+ if (const auto *SrcVar = llvm::dyn_cast<Variable>(Src)) {
+ if (SrcVar->hasReg()) {
+ GPRRegister SrcReg = SrcCanBeByte
+ ? RegX8664::getEncodedGPR(SrcVar->getRegNum())
+ : RegX8664::getEncodedGPR(SrcVar->getRegNum());
+ (Asm->*(Emitter.GPRGPR))(Ty, VarReg, SrcReg);
+ } else {
+ AsmAddress SrcStackAddr = AsmAddress(SrcVar, Target);
+ (Asm->*(Emitter.GPRAddr))(Ty, VarReg, SrcStackAddr);
+ }
+ } else if (const auto *Mem = llvm::dyn_cast<X86OperandMem>(Src)) {
+ Mem->emitSegmentOverride(Asm);
+ (Asm->*(Emitter.GPRAddr))(Ty, VarReg, AsmAddress(Mem, Asm, Target));
+ } else if (const auto *Imm = llvm::dyn_cast<ConstantInteger32>(Src)) {
+ (Asm->*(Emitter.GPRImm))(Ty, VarReg, AssemblerImmediate(Imm->getValue()));
+ } else if (const auto *Imm = llvm::dyn_cast<ConstantInteger64>(Src)) {
+ assert(Utils::IsInt(32, Imm->getValue()));
+ (Asm->*(Emitter.GPRImm))(Ty, VarReg, AssemblerImmediate(Imm->getValue()));
+ } else if (const auto *Reloc = llvm::dyn_cast<ConstantRelocatable>(Src)) {
+ const auto FixupKind = (Reloc->getName().hasStdString() &&
+ Reloc->getName().toString() == GlobalOffsetTable)
+ ? FK_GotPC
+ : FK_Abs;
+ AssemblerFixup *Fixup = Asm->createFixup(FixupKind, Reloc);
+ (Asm->*(Emitter.GPRImm))(Ty, VarReg, AssemblerImmediate(Fixup));
+ } else {
+ llvm_unreachable("Unexpected operand type");
+ }
+}
/// Instructions of the form x := op(x).
template <typename InstX86Base::InstKindX86 K>

View File

@@ -106,8 +106,8 @@ Index: electron-17.1.0/electron/shell/browser/api/electron_api_app.cc
- const std::vector<const uint8_t> additional_data) {
+ const std::vector<uint8_t> additional_data) {
v8::Isolate* isolate = JavascriptEnvironment::GetIsolate();
v8::Locker locker(isolate);
v8::HandleScope handle_scope(isolate);
v8::Local<v8::Value> data_value =
Index: electron-17.1.0/electron/shell/browser/api/electron_api_app.h
===================================================================
--- electron-17.1.0.orig/electron/shell/browser/api/electron_api_app.h 2022-03-07 16:07:24.343397858 +0100

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:73e9d8188c1ff5f6eddf9d36558d2912b092634f2a0933a102925d1494336c3c
size 528373820

3
electron-20.1.4.tar.xz Normal file
View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:70aa3bf64023dbcc760e47f1ec2ddbedf0334e31a7eac4cb6f8f1536cf40b835
size 534039316

View File

@@ -0,0 +1,34 @@
--- a/electron/shell/browser/serial/electron_serial_delegate.h 2022-09-16 12:31:19.704082600 +0200
+++ b/electron/shell/browser/serial/electron_serial_delegate.h 2022-09-16 21:30:57.247975900 +0200
@@ -38,9 +38,9 @@
device::mojom::SerialPortManager* GetPortManager(
content::RenderFrameHost* frame) override;
void AddObserver(content::RenderFrameHost* frame,
- Observer* observer) override;
+ content::SerialDelegate::Observer* observer) override;
void RemoveObserver(content::RenderFrameHost* frame,
- Observer* observer) override;
+ content::SerialDelegate::Observer* observer) override;
void RevokePortPermissionWebInitiated(
content::RenderFrameHost* frame,
const base::UnguessableToken& token) override;
--- a/electron/shell/browser/serial/electron_serial_delegate.cc 2022-09-16 12:31:19.704082600 +0200
+++ b/electron/shell/browser/serial/electron_serial_delegate.cc 2022-09-17 10:20:59.376161800 +0200
@@ -69,7 +69,7 @@
}
void ElectronSerialDelegate::AddObserver(content::RenderFrameHost* frame,
- Observer* observer) {
+ content::SerialDelegate::Observer* observer) {
observer_list_.AddObserver(observer);
auto* chooser_context = GetChooserContext(frame);
if (!port_observation_.IsObserving())
@@ -77,7 +77,7 @@
}
void ElectronSerialDelegate::RemoveObserver(content::RenderFrameHost* frame,
- Observer* observer) {
+ content::SerialDelegate::Observer* observer) {
observer_list_.RemoveObserver(observer);
}

View File

@@ -0,0 +1,77 @@
From 0fc6592cf8867f0cd6d8d41b43392fb52d359649 Mon Sep 17 00:00:00 2001
From: Jose Dapena Paz <jdapena@igalia.com>
Date: Tue, 7 Jun 2022 15:44:35 +0200
Subject: [PATCH] GCC: fix compilation of NEON64 extract_first_nonzero_index
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
GCC fails to compile extract_first_nonzero_index because of the
signedness type mismatch in the NEON intrinsics.
Bug: chromium:819294
Change-Id: I9b73e5fa1d5fbf161740ab1b5d77f5c494369dfa
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3693709
Reviewed-by: Toon Verwaest <verwaest@chromium.org>
Commit-Queue: José Dapena Paz <jdapena@igalia.com>
Cr-Commit-Position: refs/heads/main@{#81063}
---
src/objects/simd.cc | 27 ++++++++++++---------------
1 file changed, 12 insertions(+), 15 deletions(-)
diff --git a/src/objects/simd.cc b/src/objects/simd.cc
index d3cedfe3302..0a73b9c686d 100644
--- a/v8/src/objects/simd.cc
+++ b/v8/src/objects/simd.cc
@@ -95,24 +95,21 @@ inline int extract_first_nonzero_index(T v) {
}
template <>
-inline int extract_first_nonzero_index(int32x4_t v) {
- int32x4_t mask = {4, 3, 2, 1};
+inline int extract_first_nonzero_index(uint32x4_t v) {
+ uint32x4_t mask = {4, 3, 2, 1};
mask = vandq_u32(mask, v);
return 4 - vmaxvq_u32(mask);
}
template <>
-inline int extract_first_nonzero_index(int64x2_t v) {
- int32x4_t mask = {2, 0, 1, 0}; // Could also be {2,2,1,1} or {0,2,0,1}
- mask = vandq_u32(mask, vreinterpretq_s32_s64(v));
+inline int extract_first_nonzero_index(uint64x2_t v) {
+ uint32x4_t mask = {2, 0, 1, 0}; // Could also be {2,2,1,1} or {0,2,0,1}
+ mask = vandq_u32(mask, vreinterpretq_u32_u64(v));
return 2 - vmaxvq_u32(mask);
}
-template <>
-inline int extract_first_nonzero_index(float64x2_t v) {
- int32x4_t mask = {2, 0, 1, 0}; // Could also be {2,2,1,1} or {0,2,0,1}
- mask = vandq_u32(mask, vreinterpretq_s32_f64(v));
- return 2 - vmaxvq_u32(mask);
+inline int32_t reinterpret_vmaxvq_u64(uint64x2_t v) {
+ return vmaxvq_u32(vreinterpretq_u32_u64(v));
}
#endif
@@ -204,14 +201,14 @@ inline uintptr_t fast_search_noavx(T* array, uintptr_t array_len,
}
#elif defined(NEON64)
if constexpr (std::is_same<T, uint32_t>::value) {
- VECTORIZED_LOOP_Neon(int32x4_t, int32x4_t, vdupq_n_u32, vceqq_u32,
+ VECTORIZED_LOOP_Neon(uint32x4_t, uint32x4_t, vdupq_n_u32, vceqq_u32,
vmaxvq_u32)
} else if constexpr (std::is_same<T, uint64_t>::value) {
- VECTORIZED_LOOP_Neon(int64x2_t, int64x2_t, vdupq_n_u64, vceqq_u64,
- vmaxvq_u32)
+ VECTORIZED_LOOP_Neon(uint64x2_t, uint64x2_t, vdupq_n_u64, vceqq_u64,
+ reinterpret_vmaxvq_u64)
} else if constexpr (std::is_same<T, double>::value) {
- VECTORIZED_LOOP_Neon(float64x2_t, float64x2_t, vdupq_n_f64, vceqq_f64,
- vmaxvq_f64)
+ VECTORIZED_LOOP_Neon(float64x2_t, uint64x2_t, vdupq_n_f64, vceqq_f64,
+ reinterpret_vmaxvq_u64)
}
#else
UNREACHABLE();

View File

@@ -7,4 +7,4 @@
+#include <memory>
#include <string>
#include "components/policy/policy_export.h"
#include "base/values.h"

View File

@@ -7,6 +7,6 @@ Do not try to configure electron's node against vendored ICU headers
configure = os.path.join(NODE_DIR, 'configure.py')
args = ['--dest-cpu', target_cpu]
+ args+= ['--with-intl=system-icu']
# Enabled in Chromium's V8.
if target_cpu in ('arm64', 'x64'):
args += ['--experimental-enable-pointer-compression']
# Enabled in Chromium's V8, will be disabled on 32bit via
# common.gypi rules
args += ['--experimental-enable-pointer-compression']

View File

@@ -1,3 +1,32 @@
-------------------------------------------------------------------
Tue Sep 20 05:37:32 UTC 2022 - Bruno Pitrus <brunopitrus@hotmail.com>
- Update to 20.1.4
* ABI break: NODE_MODULE_VERSION is now 107. Native modules may need recompiling
* Removed the skip-taskbar feature on Linux.
* Renderers are now sandboxed by default unless nodeIntegration: true or sandbox: false is specified.
* Update Chromium to 104.0.5112.114
* Update Node to 16.15.0
- Use ffmpeg-5 on Tumbleweed. Drop ffmpeg-new-channel-layout.patch on Tumbleweed and Rawhide.
- Add NumberFormat-icu71-incrementExact.patch on systems with old icu (Leap and F36).
- Use subzero also on ix86 now that it builds correctly.
- Drop patches applied upstream:
* byteswap-constexpr.patch
* chromium-101-libxml-unbundle.patch
* chromium-102-fenced_frame_utils-include.patch
* electron-16-fix-swiftshader-template.patch
- Add backported patches:
* common.gypi-cpp-version.patch
* content_renderer_client-invalid-application-of-sizeof-to-incomplete-type-cast_streaming-ResourceProvider.patch
* extract_first_nonzero_index-neon64.patch
- Add upstreamable patches:
* absl_utility.gn
* aggregatable_attribution_utils-do-not-assume-abseil-ABI.patch
* attribution_response_parsing-do-not-assume-abseil-ABI.patch
* content_language_parser-missing-string.patch
* electron_serial_delegate-ambiguous-Observer.patch
- Fix build error on armv6hl
- Add %electron_req macro to make it easier to guard against ABI breaks.
-------------------------------------------------------------------
Wed Sep 14 20:08:49 UTC 2022 - Bruno Pitrus <brunopitrus@hotmail.com>
- New upstream release 19.0.17

View File

@@ -22,6 +22,8 @@
%undefine _auto_set_build_flags
%define mod_name electron
# https://github.com/nodejs/node/blob/main/doc/abi_version_registry.json
%define abi_version 107
# Do not provide libEGL.so, etc…
%define __provides_exclude ^lib.*\\.so.*$
@@ -32,31 +34,27 @@
#x86 requires SSE2
#see v8/src/codegen/ia32/assembler-ia32.cc
%ifarch %ix86
ExclusiveArch: i586 i686
BuildArch: i686
%{expand:%%global optflags %(echo "%optflags") -march=pentium4 -mtune=generic}
%endif
#Electron built with LTO crashes on selecting any text.
#See https://gist.github.com/brjsp/80620a5a0be9efbee6b9154cb127879d for the stack trace.
%bcond_with lto
%bcond_without pipewire
%ifarch x86_64 %arm
%ifarch %ix86 x86_64 %arm
#Use subzero as swiftshader backend instead of LLVM
#ix86 is also supposed to support subzero, but as of 19.0.9 we're getting linker error
#undefined symbol: void Ice::X8632::emitIASRegOpTyGPR<true, true>(Ice::Cfg const*, Ice::Type, Ice::Variable const*, Ice::Operand const*, Ice::X8632::AssemblerX8632::GPREmitterRegOp const&)
%bcond_without subzero
%else
%bcond_with subzero
%endif
%bcond_without systemicu
%ifarch x86_64 %ix86 aarch64
%bcond_without vaapi
@@ -98,17 +96,32 @@ BuildArch: i686
%if 0%{?suse_version} >= 1550 || 0%{?sle_version} >= 150400 || 0%{?fedora}
%bcond_without system_harfbuzz
%bcond_without system_avif
%else
%bcond_with system_harfbuzz
%bcond_with system_avif
%endif
%bcond_without system_freetype
%bcond_without system_nghttp2
%bcond_without system_double_conversion
%bcond_without system_jsoncpp
%bcond_without system_woff2
%bcond_without system_tiff
%if 0%{?suse_version} >= 1550 || 0%{?sle_version} >= 150600 || 0%{?fedora} >= 37
%bcond_without system_aom
%bcond_without icu_71
%bcond_without ffmpeg_5
%bcond_without system_dav1d
%bcond_without system_spirv
%else
%bcond_with system_aom
%bcond_with icu_71
%bcond_with ffmpeg_5
%bcond_with system_dav1d
%bcond_with system_spirv
%endif
%if 0%{?suse_version} >= 1550 || 0%{?sle_version} >= 150500 || 0%{?fedora_version}
@@ -125,29 +138,7 @@ BuildArch: i686
%bcond_with system_jxl
%endif
%if 0%{?suse_version} >= 1550 || 0%{?sle_version} >= 150600 || 0%{?fedora} >= 37
%bcond_without system_dav1d
%else
%bcond_with system_dav1d
%endif
%bcond_without system_double_conversion
%bcond_without system_jsoncpp
%bcond_without system_woff2
%if 0%{?suse_version} >= 1550 || 0%{?sle_version} >= 150600 || 0%{?fedora} >= 37
%bcond_without system_spirv
%else
%bcond_with system_spirv
%endif
%if %{without subzero}
%bcond_without system_llvm
%else
%bcond_with system_llvm
%endif
%if 0%{?suse_version} >= 1550 || 0%{?sle_version} >= 150500
%bcond_without system_yuv
@@ -155,7 +146,7 @@ BuildArch: i686
%bcond_with system_yuv
%endif
%bcond_without system_tiff
%if 0%{?fedora}
@@ -168,12 +159,6 @@ BuildArch: i686
%bcond_with system_histogram
%endif
%if 0%{?suse_version} >= 1550 || 0%{?sle_version} >= 150400 || 0%{?fedora}
%bcond_without system_avif
%else
%bcond_with system_avif
%endif
# Abseil is broken in Leap
# enable this when boo#1203378 and boo#1203379 get fixed
%if 0%{?suse_version} >= 1550 || 0%{?sle_version} >= 150600 || 0%{?fedora} >= 37
@@ -203,7 +188,7 @@ BuildArch: i686
Name: nodejs-electron
Version: 19.0.17
Version: 20.1.4
Release: 0
Summary: Build cross platform desktop apps with JavaScript, HTML, and CSS
License: AFL-2.0 AND Apache-2.0 AND blessing AND BSD-2-Clause AND BSD-3-Clause AND BSD-Protection AND BSD-Source-Code AND bzip2-1.0.6 AND IJG AND ISC AND LGPL-2.0-or-later AND LGPL-2.1-or-later AND MIT AND MIT-CMU AND MIT-open-group AND (MPL-1.1 OR GPL-2.0-or-later OR LGPL-2.1-or-later) AND MPL-2.0 AND OpenSSL AND SGI-B-2.0 AND SUSE-Public-Domain AND X11
@@ -250,10 +235,14 @@ Source49: woff2.gn
Source50: flatbuffers.gn
Source51: libsecret.gn
Source52: libyuv.gn
Source53: absl_utility.gn
# Reverse upstream changes to be able to build against system ffmpeg
# Reverse upstream changes to be able to build against ffmpeg-4
Source400: ffmpeg-new-channel-layout.patch
# …and against icu-69
Source401: NumberFormat-icu71-incrementExact.patch
# PATCHES for openSUSE-specific things
Patch0: chromium-102-compiler.patch
@@ -277,7 +266,6 @@ Patch69: nasm-generate-debuginfo.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}
@@ -295,9 +283,7 @@ Patch1046: chromium-99-pdfium-system-libtiff.patch
%endif
Patch1047: cares_public_headers.patch
Patch1048: chromium-remove-bundled-roboto-font.patch
%if %{with system_llvm}
Patch1053: swiftshader-use-system-llvm.patch
%endif
%if %{with system_abseil}
Patch1054: thread_annotations-fix-build-with-system-abseil.patch
%endif
@@ -328,8 +314,6 @@ 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
@@ -340,11 +324,8 @@ 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
@@ -361,6 +342,13 @@ 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
Patch3067: reproducible-config.gypi.patch
Patch3068: content_language_parser-missing-string.patch
Patch3069: aggregatable_attribution_utils-do-not-assume-abseil-ABI.patch
Patch3070: content_renderer_client-invalid-application-of-sizeof-to-incomplete-type-cast_streaming-ResourceProvider.patch
Patch3071: electron_serial_delegate-ambiguous-Observer.patch
Patch3072: attribution_response_parsing-do-not-assume-abseil-ABI.patch
Patch3073: common.gypi-cpp-version.patch
Patch3074: extract_first_nonzero_index-neon64.patch
%if %{with clang}
BuildRequires: clang
@@ -415,7 +403,7 @@ BuildRequires: llhttp-devel
%if %{with lld}
BuildRequires: lld
%endif
%if %{with system_llvm}
%if %{without subzero}
BuildRequires: llvm-devel
%endif
BuildRequires: memory-constraints
@@ -483,6 +471,7 @@ BuildRequires: pkgconfig(absl_symbolize)
BuildRequires: pkgconfig(absl_synchronization)
BuildRequires: pkgconfig(absl_time)
BuildRequires: pkgconfig(absl_type_traits)
BuildRequires: pkgconfig(absl_utility)
BuildRequires: pkgconfig(absl_variant)
%endif
BuildRequires: pkgconfig(alsa)
@@ -505,19 +494,25 @@ BuildRequires: pkgconfig(gtk+-3.0)
%if %{with system_harfbuzz}
BuildRequires: pkgconfig(harfbuzz) >= 3
%endif
%if %{with systemicu}
BuildRequires: pkgconfig(icu-i18n) >= 68.0
%if %{with icu_71}
BuildRequires: pkgconfig(icu-i18n) >= 71
%else
Provides: bundled(icu) = 68.0
BuildRequires: pkgconfig(icu-i18n) >= 68
%endif
%if %{with system_jsoncpp}
BuildRequires: pkgconfig(jsoncpp)
%endif
BuildRequires: pkgconfig(krb5)
BuildRequires: pkgconfig(lcms2)
%if %{with ffmpeg_5}
BuildRequires: pkgconfig(libavcodec) >= 59
BuildRequires: pkgconfig(libavformat) >= 59
BuildRequires: pkgconfig(libavutil) >= 57
%else
BuildRequires: pkgconfig(libavcodec)
BuildRequires: pkgconfig(libavformat) >= 58
BuildRequires: pkgconfig(libavutil)
%endif
%if %{with system_avif}
BuildRequires: pkgconfig(libavif)
%endif
@@ -606,6 +601,7 @@ Requires: libvulkan.so.1()(64bit)
%endif
Provides: electron
Provides: electron%{_isa}(abi) = %{abi_version}
Obsoletes: nodejs-electron-prebuilt < %{version}
Provides: nodejs-electron-prebuilt = %{version}
@@ -627,7 +623,16 @@ Development headers for Electron projects.
# Use stable path to source to make use of ccache
%autosetup -n src -p1
patch -R -p1 < %{SOURCE400}
# Sanity check if macro corresponds to the actual ABI
test $(grep ^node_module_version electron/build/args/all.gn | sed 's/.* = //') = %abi_version
%if %{without ffmpeg_5}
patch -R -p1 < %SOURCE400
%endif
%if %{without icu_71}
patch -R -p1 < %SOURCE401
%endif
# Link system wayland-protocols-devel into where chrome expects them
@@ -650,9 +655,6 @@ ln -sf %{_bindir}/eu-strip buildtools/third_party/eu-strip/bin/eu-strip
sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
tools/generate_shim_headers/generate_shim_headers.py
%if %{with systemicu}
find third_party/icu -type f ! -name "*.gn" -a ! -name "*.gni" -delete
%endif
%build
# GN sets lto on its own and we need just ldflag options, not cflags
@@ -767,6 +769,7 @@ gn_system_libraries=(
flac
flatbuffers
fontconfig
icu
libdrm
libevent
libjpeg
@@ -802,8 +805,8 @@ gn_system_libraries+=(
absl_synchronization
absl_time
absl_types
absl_utility
)
rm third_party/abseil-cpp/absl/utility/BUILD.gn
%endif
@@ -870,10 +873,6 @@ find third_party/freetype -type f ! -name "*.gn" -a ! -name "*.gni" -delete
gn_system_libraries+=( freetype )
%endif
%if %{with systemicu}
gn_system_libraries+=( icu )
%endif
%if %{with system_vpx}
find third_party/libvpx -type f ! -name "*.gn" -a ! -name "*.gni" -delete
gn_system_libraries+=( libvpx )
@@ -905,10 +904,6 @@ find third_party/electron_node/deps/llhttp -type f ! -name "*.gn" -a ! -name "*.
find third_party/electron_node/deps/histogram -type f ! -name "*.gn" -a ! -name "*.gni" -a ! -name "*.gyp" -a ! -name "*.gypi" -delete
%endif
%if %{with system_llvm}
rm -rf third_party/swiftshader/third_party/llvm-10.0
%endif
# Create the configuration for GN
# Available options: out/Release/gn args --list out/Release/
@@ -927,9 +922,22 @@ myconf_gn+=" host_cpu=\"arm64\""
%endif
%ifarch %arm
myconf_gn+=" host_cpu=\"arm\""
# Disable requirement of neon instructions
myconf_gn+=" arm_use_neon=false"
#openSUSE only supports armhf
%ifarch armv7hl armv7hnl
myconf_gn+=" arm_version=7"
%endif
%ifarch armv6hl
myconf_gn+=" arm_version=6"
%endif
myconf_gn+=" arm_float_abi=\"hard\""
# Disable requirement of neon instructions
%ifarch armv7hnl armv8hnl armv8hcnl
myconf_gn+=" arm_use_neon=true"
%else
myconf_gn+=" arm_use_neon=false"
%endif
%endif #ifarch arm
myconf_gn+=" host_os=\"linux\""
myconf_gn+=" is_debug=false"
myconf_gn+=" dcheck_always_on=false"
@@ -1126,9 +1134,6 @@ install -pm 0755 libvk_swiftshader.so -t %{buildroot}%{_libdir}/electron/
install -pm 0644 vk_swiftshader_icd.json -t %{buildroot}%{_libdir}/electron/
popd
%if %{without systemicu}
rsync -av third_party/icu/common/icudtl.dat %{buildroot}%{_libdir}/electron/
%endif
install -pTm644 electron/ELECTRON_VERSION %{buildroot}%{_libdir}/electron/version
@@ -1138,6 +1143,12 @@ mkdir -p "%{buildroot}%{_datadir}/webapps"
rsync -av out/Release/gen/node_headers/include/node/* %{buildroot}%{_includedir}/electron
# Install electron.macros
mkdir -p %{buildroot}%{_rpmconfigdir}/macros.d
cp /dev/stdin %{buildroot}%{_rpmconfigdir}/macros.d/macros.electron <<"EOF"
%%electron_req Requires: electron%{_isa}(abi) = %{abi_version}
EOF
chmod -v 644 %{buildroot}%{_rpmconfigdir}/macros.d/macros.electron
%files
%license electron/LICENSE out/Release/LICENSES.chromium.html
@@ -1155,5 +1166,6 @@ rsync -av out/Release/gen/node_headers/include/node/* %{buildroot}%{_includedir}
%files devel
%{_includedir}/electron
%{_rpmconfigdir}/macros.d/macros.electron
%changelog

View File

@@ -1,6 +1,6 @@
--- chromium-79.0.3945.29/build/linux/unbundle/replace_gn_files.py.system-dav1d 2019-11-09 14:30:17.297016975 +0100
+++ chromium-79.0.3945.29/build/linux/unbundle/replace_gn_files.py 2019-11-10 09:40:19.694662891 +0100
@@ -17,12 +17,40 @@ import sys
@@ -17,12 +17,41 @@ import sys
REPLACEMENTS = {
@@ -21,6 +21,7 @@
+ 'absl_synchronization': 'third_party/abseil-cpp/absl/synchronization/BUILD.gn',
+ 'absl_time': 'third_party/abseil-cpp/absl/time/BUILD.gn',
+ 'absl_types': 'third_party/abseil-cpp/absl/types/BUILD.gn',
+ 'absl_utility': 'third_party/abseil-cpp/absl/utility/BUILD.gn',
+ 'brotli': 'third_party/brotli/BUILD.gn',
+ 'crc32c': 'third_party/crc32c/BUILD.gn',
+ 'dav1d': 'third_party/dav1d/BUILD.gn',
@@ -41,7 +42,7 @@
'libdrm': 'third_party/libdrm/BUILD.gn',
'libevent': 'base/third_party/libevent/BUILD.gn',
'libjpeg': 'third_party/libjpeg.gni',
@@ -33,6 +64,11 @@
@@ -33,6 +65,11 @@
'opus': 'third_party/opus/BUILD.gn',
're2': 'third_party/re2/BUILD.gn',
'snappy': 'third_party/snappy/BUILD.gn',

View File

@@ -45,22 +45,22 @@ Also excluding markupsafe, because jinja2 needs an ancient version. “ImportErr
@@ -1,28 +1,8 @@
# Generated by running:
# build/print_python_deps.py --root third_party/blink/renderer/bindings/scripts --output third_party/blink/renderer/bindings/scripts/generate_bindings.pydeps third_party/blink/renderer/bindings/scripts/generate_bindings.py
-../../../../mako/mako/__init__.py
-../../../../mako/mako/_ast_util.py
-../../../../mako/mako/ast.py
-../../../../mako/mako/cache.py
-../../../../mako/mako/codegen.py
-../../../../mako/mako/compat.py
-../../../../mako/mako/exceptions.py
-../../../../mako/mako/ext/__init__.py
-../../../../mako/mako/filters.py
-../../../../mako/mako/lexer.py
-../../../../mako/mako/parsetree.py
-../../../../mako/mako/pygen.py
-../../../../mako/mako/pyparser.py
-../../../../mako/mako/runtime.py
-../../../../mako/mako/template.py
-../../../../mako/mako/util.py
-../../../../mako/mako/mako/__init__.py
-../../../../mako/mako/mako/_ast_util.py
-../../../../mako/mako/mako/ast.py
-../../../../mako/mako/mako/cache.py
-../../../../mako/mako/mako/codegen.py
-../../../../mako/mako/mako/compat.py
-../../../../mako/mako/mako/exceptions.py
-../../../../mako/mako/mako/ext/__init__.py
-../../../../mako/mako/mako/filters.py
-../../../../mako/mako/mako/lexer.py
-../../../../mako/mako/mako/parsetree.py
-../../../../mako/mako/mako/pygen.py
-../../../../mako/mako/mako/pyparser.py
-../../../../mako/mako/mako/runtime.py
-../../../../mako/mako/mako/template.py
-../../../../mako/mako/mako/util.py
../../../../markupsafe/__init__.py
../../../../markupsafe/_compat.py
../../../../markupsafe/_native.py

View File

@@ -1,7 +1,7 @@
--- a/base/thread_annotations.h 2022-06-21 21:52:33.363987695 +0200
+++ b/base/thread_annotations.h 2022-06-24 16:18:54.238568316 +0200
@@ -40,6 +40,8 @@
#include "base/check_op.h"
#include "base/dcheck_is_on.h"
#include "build/build_config.h"
+#include <absl/base/internal/thread_annotations.h>