diff --git a/electron/APKBUILD b/electron/APKBUILD index b691c99..20637f8 100644 --- a/electron/APKBUILD +++ b/electron/APKBUILD @@ -1,6 +1,6 @@ # Maintainer: psykose pkgname=electron -pkgver=19.0.5 +pkgver=19.0.6 pkgrel=0 _gitrev=c0588770eac69e56c457063d29a5e4077b9a188a _chromium=102.0.5005.115 @@ -122,6 +122,7 @@ source="chromium-102-fenced_frame_utils-include.patch.chromium revert-use-ffile-compilation-dir.patch.chromium roll-src-third_party-ffmpeg.patch.chromium scoped-file.patch.chromium + shut-the-fuck-up.patch.chromium system-node.patch.electron python-jinja-3.10.patch.electron vector-const.patch.electron @@ -129,6 +130,20 @@ source="chromium-102-fenced_frame_utils-include.patch.chromium builddir="$srcdir" options="!check suid" +export CHROMIUM_BUILDTOOLS_PATH="$srcdir/src/buildtools" +export CC=clang +export CXX=clang++ +export AR=ar +export NM=nm +export LD=clang +export CFLAGS="-O2 -fomit-frame-pointer -march=x86-64-v2 -Wno-unknown-warning-option" +export CXXFLAGS="$CFLAGS -Wno-unknown-warning-option" +export CPPFLAGS="$CFLAGS -Wno-unknown-warning-option" + +_gn_flags() { + echo "$@" +} + prepare() { git clone --branch=${_chromium} --depth=1 \ https://chromium.googlesource.com/chromium/src.git @@ -252,24 +267,6 @@ prepare() { sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \ tools/generate_shim_headers/generate_shim_headers.py ) -} - -_gn_flags() { - echo "$@" -} - -build() { - cd src - - export CHROMIUM_BUILDTOOLS_PATH="$srcdir/src/buildtools" - export CC=clang - export CXX=clang++ - export AR=ar - export NM=nm - export LD=clang - - export CFLAGS="$CFLAGS -Wno-unknown-warning-option" - export CXXFLAGS="$CXXFLAGS -Wno-unknown-warning-option" _gn_args=$(_gn_flags \ import\(\"//electron/build/args/release.gn\"\) \ @@ -320,6 +317,11 @@ build() { gn gen out/Release --args="$_gn_args" +} + +build() { + cd src + # ninja -C out/Release electron # strip -s out/Release/electron ninja -C out/Release electron_dist_zip @@ -371,7 +373,8 @@ cd7719c30518aeb659e9b7dc126241f897afe1a231e601271b63ba170e811a93b514c4d2a77680cd 2fdd0b2fd403dd4440533288f7e08bb8480702c42c7571ea764aac18ba5eaf72494793c77e4244991d12f45e5acfceae0772995b11d323916c07cb53c43a2f59 revert-use-ffile-compilation-dir.patch.chromium 128ec0fd14349e065c8bb0910d53cbea7423182a06e06f7b7765f3cba1e5ba5e7a8bccbcdab079335b5235abb7bf0d46dee21ecc8c221be7e1c5c6d9795f958e roll-src-third_party-ffmpeg.patch.chromium 8d11b2ba811fdd6280784bfafcef073238324941b4c33e7c9a5ccfde8506242d06e5136d697f047bab3838b43a666f1da404af7b4f4ff9a0c6bf6bdb8448e5b2 scoped-file.patch.chromium +d0929ac97552b40ca420c8d5f35de249441e6dfd92bb59a8146cc6f141835c8e675e3c5baaee74730dec1c025dcef7020fa514a6446f716dacd72f7423a368e3 shut-the-fuck-up.patch.chromium 26a8e4040e69f335a7104f42d012b9d933a40985b33a7be02add27a801c097c5a2be4c6e69faf9175ce8945210ae4c5592ecad2123ccff2beee5473194a765e3 system-node.patch.electron e05180199ee1d559e4e577cedd3e589844ecf40d98a86321bf1bea5607b02eeb5feb486deddae40e1005b644550331f6b8500177aa7e79bcb3750d3c1ceb76c3 python-jinja-3.10.patch.electron -4594b6f270b5b8d96904bf9befef3cfe54579b27559779694337e02ae5dfb02ab25525e90d0d075b65825605ffed6cb499be564139855a9e7693c27961b247f4 vector-const.patch.electron +71571b15cf8bd6259b7fd22bea0e46b64890f3db776365de33fe539f26ce9ef99459e05c3dde9434c3657225bc67160abc915acd93033cb487c770c6a2a5975f vector-const.patch.electron " diff --git a/electron/shut-the-fuck-up.patch.chromium b/electron/shut-the-fuck-up.patch.chromium new file mode 100644 index 0000000..50891ee --- /dev/null +++ b/electron/shut-the-fuck-up.patch.chromium @@ -0,0 +1,70 @@ +--- a/build/config/compiler/BUILD.gn ++++ b/build/config/compiler/BUILD.gn +@@ -1650,9 +1650,9 @@ + + # TODO(thakis): Enable this more often, https://crbug.com/346399 + # use_libfuzzer: https://crbug.com/1063180 +- if ((!is_nacl || is_nacl_saigo) && !use_libfuzzer) { +- cflags += [ "-Wunreachable-code-aggressive" ] +- } ++ #if ((!is_nacl || is_nacl_saigo) && !use_libfuzzer) { ++ # cflags += [ "-Wunreachable-code-aggressive" ] ++ #} + + # Thread safety analysis is broken under nacl: https://crbug.com/982423. + if (!is_nacl || is_nacl_saigo) { +--- a/third_party/electron_node/deps/v8/BUILD.gn ++++ b/third_party/electron_node/deps/v8/BUILD.gn +@@ -1190,7 +1190,7 @@ + + if (v8_current_cpu != "mips" && v8_current_cpu != "mipsel") { + # We exclude MIPS because the IsMipsArchVariant macro causes trouble. +- cflags += [ "-Wunreachable-code" ] ++ #cflags += [ "-Wunreachable-code" ] + } + + if (v8_current_cpu == "x64" || v8_current_cpu == "arm64" || +--- a/v8/BUILD.gn ++++ b/v8/BUILD.gn +@@ -1277,7 +1277,7 @@ + + if (v8_current_cpu != "mips" && v8_current_cpu != "mipsel") { + # We exclude MIPS because the IsMipsArchVariant macro causes trouble. +- cflags += [ "-Wunreachable-code" ] ++ # cflags += [ "-Wunreachable-code" ] + } + + if (v8_current_cpu == "x64" || v8_current_cpu == "arm64" || +--- a/third_party/angle/BUILD.gn ++++ b/third_party/angle/BUILD.gn +@@ -222,7 +222,7 @@ + "-Wparentheses", + "-Wrange-loop-analysis", + "-Wstrict-prototypes", +- "-Wunreachable-code-aggressive", ++ #"-Wunreachable-code-aggressive", + "-Wshorten-64-to-32", + ] + } +--- a/third_party/dawn/src/dawn/common/BUILD.gn ++++ b/third_party/dawn/src/dawn/common/BUILD.gn +@@ -119,7 +119,7 @@ + "-Wshadow-field", + "-Wstrict-prototypes", + "-Wtautological-unsigned-zero-compare", +- "-Wunreachable-code-aggressive", ++ #"-Wunreachable-code-aggressive", + "-Wunused-but-set-variable", + ] + +--- a/third_party/openscreen/src/build/config/BUILD.gn ++++ b/third_party/openscreen/src/build/config/BUILD.gn +@@ -165,7 +165,7 @@ + "-Wloop-analysis", + + # Warn on unreachable code. +- "-Wunreachable-code-aggressive", ++ #"-Wunreachable-code-aggressive", + + # Warn on undefined variable usage. + "-Wundefined-var-template", diff --git a/electron/vector-const.patch.electron b/electron/vector-const.patch.electron index 5a1f15c..cb65e12 100644 --- a/electron/vector-const.patch.electron +++ b/electron/vector-const.patch.electron @@ -76,3 +76,38 @@ if (!ParseCommandLine(cds, &parsed_command_line, ¤t_directory, &additional_data)) { *result = TRUE; return true; +--- a/electron/shell/browser/api/electron_api_app.cc ++++ b/electron/shell/browser/api/electron_api_app.cc +@@ -519,10 +519,10 @@ + const base::RepeatingCallback< + void(const base::CommandLine& command_line, + const base::FilePath& current_directory, +- const std::vector additional_data)>& callback, ++ const std::vector additional_data)>& callback, + const base::CommandLine& cmd, + const base::FilePath& cwd, +- const std::vector additional_data) { ++ const std::vector additional_data) { + // Make sure the callback is called after app gets ready. + if (Browser::Get()->is_ready()) { + callback.Run(cmd, cwd, std::move(additional_data)); +@@ -1082,7 +1082,7 @@ + + void App::OnSecondInstance(const base::CommandLine& cmd, + const base::FilePath& cwd, +- const std::vector additional_data) { ++ const std::vector additional_data) { + v8::Isolate* isolate = JavascriptEnvironment::GetIsolate(); + v8::Locker locker(isolate); + v8::HandleScope handle_scope(isolate); +--- a/electron/shell/browser/api/electron_api_app.h ++++ b/electron/shell/browser/api/electron_api_app.h +@@ -195,7 +195,7 @@ + std::string GetLocaleCountryCode(); + void OnSecondInstance(const base::CommandLine& cmd, + const base::FilePath& cwd, +- const std::vector additional_data); ++ const std::vector additional_data); + bool HasSingleInstanceLock() const; + bool RequestSingleInstanceLock(gin::Arguments* args); + void ReleaseSingleInstanceLock();