electron/patches/chromium/resource_file_conflict.patch
electron-roller[bot] 460fc9b452
chore: bump chromium to 132.0.6807.0 (34-x-y) (#44361)
* chore: bump chromium in DEPS to 132.0.6791.1

* 5804481: [UI] Migrate remaining clients of `MenuSourceType`

https://chromium-review.googlesource.com/c/chromium/src/+/5804481

* chore: bump chromium in DEPS to 132.0.6793.1

* chore: bump chromium in DEPS to 132.0.6794.0

* chore: bump chromium in DEPS to 132.0.6797.0

* 5952404: Clean up //ui/base/resource from Lacros code.

https://chromium-review.googlesource.com/c/chromium/src/+/5952404

* 5920842: Generate combined grd for PEPC strings and use them in the element

https://chromium-review.googlesource.com/c/chromium/src/+/5920842

* 5943708: Enable DynamicSafeAreaInsets for eligible users only

https://chromium-review.googlesource.com/c/chromium/src/+/5943708

* 5937004: Remove components/services/language_detection

https://chromium-review.googlesource.com/c/chromium/src/+/5937004

* 5920322: [UI] Use mojo enum for `MenuSourceType` in ui/views/controls/

https://chromium-review.googlesource.com/c/chromium/src/+/5920322

* chore: fixup patch indices

* chore: bump chromium in DEPS to 132.0.6799.0

* chore: bump chromium in DEPS to 132.0.6801.0

* chore: bump chromium in DEPS to 132.0.6803.0

* chore: bump chromium in DEPS to 132.0.6805.1

* chore: bump chromium in DEPS to 132.0.6807.0

* chore: bump chromium in DEPS to 132.0.6809.1

* chore: bump chromium in DEPS to 132.0.6811.1

* chore: bump chromium in DEPS to 132.0.6813.1

* chore: bump chromium in DEPS to 132.0.6815.1

* chore: bump chromium in DEPS to 132.0.6817.1

* 5947724: [ui] Add missing shortcut text for VKEY_COMMAND on linux

https://chromium-review.googlesource.com/c/chromium/src/+/5947724
(cherry picked from commit 0fdf6c6e510752dcfd9d3062dff71aff55c5fdab)

* 5948024: [DNT] Fix NavigationController raw_ptr during WebContents destruction

https://chromium-review.googlesource.com/c/chromium/src/+/5948024
(cherry picked from commit f6662c3b6dd5f40691644911a2d527ae48015ccb)

* 5945209: Roll libc++ from c8eec3629a9e to e2c39ff9388b (1 revision)

https://chromium-review.googlesource.com/c/chromium/src/+/5945209
(cherry picked from commit 55b75a1456ccdb9a9771db741fed14a9706419b7)

* 5942398: Remove some chrome:: namespace from chrome/browser/win/*

Refs: https://chromium-review.googlesource.com/c/chromium/src/+/5942398
(cherry picked from commit d664ce2434e3995b628b3b252877df4efebc6825)

* chore: fixup patch indices

(cherry picked from commit 657cd6ee3470291123e8a8d0f6f189f2a3280c5d)

* 5963016: FSA: Use the profile path for base::DIR_HOME on ChromeOS

Refs: https://chromium-review.googlesource.com/c/chromium/src/+/5963016
(cherry picked from commit 69505baee6d037fe370ec10c0ffa03447a43ab34)

* chore: fixup patch indices

(cherry picked from commit c79c2c8734a82be32cd7ff6f9d70d3be5e08e50b)

* 5924816: [macOS][FSA] Block Access to Application Bundle Path

Refs: https://chromium-review.googlesource.com/c/chromium/src/+/5924816
(cherry picked from commit dbcc24fe26337d063a9623379a8e9c2b5a64ce65)

* 5962517: [media] Apply inside blink to renderer/platform/media

Refs: https://chromium-review.googlesource.com/c/chromium/src/+/5962517
(cherry picked from commit f396860717dc4692c9ee036b91a07d12f3114991)

* 5829616: MPArch based GuestViews basic implementation

Refs: https://chromium-review.googlesource.com/c/chromium/src/+/5829616
(cherry picked from commit b95772daa33fce58e0c09847c60511e8b53eacb2)

* 5953710: Expose a rust_static_library instead of raw rs file from rust_bindgen

Refs: https://chromium-review.googlesource.com/c/chromium/src/+/5953710
(cherry picked from commit 11edc865b578d1596d42a4abfb811360c960e51c)

* chore: fixup patch indices

(cherry picked from commit 7be81bdd02cff8894c4fff141d39408906164a8e)

* chore:  disable ELF CREL on Linux Arm

5938657: Reapply "Enable ELF CREL, which reduces the size of ELF relocatable object files." | https://chromium-review.googlesource.com/c/chromium/src/+/5938657
(cherry picked from commit 48c5efd0b0ab8fdfafb1b8df2ef35150362df410)

* chore: bump chromium in DEPS to 132.0.6807.0

(cherry picked from commit f41da7b5a3b8da6af161ab37c7b6792de1c008d7)

* 5868889: Shared Storage: Support saved queries in selectURL

Refs: https://chromium-review.googlesource.com/c/chromium/src/+/5868889
(cherry picked from commit 4e389ef21ab0e860373b7aab0cc74beee020b2fe)

* Revert "5956408: [fastapi] Promote deprecation of FastApiTypedArray"

Refs: https://chromium-review.googlesource.com/c/v8/v8/+/5956408
(cherry picked from commit a4b8e46b34a01e72dbeeaa4fdbae1939402a4ca6)

* Revert "5962696: [mojo] Force blink headers to only be included in blink"

Refs: https://chromium-review.googlesource.com/c/chromium/src/+/5962696
(cherry picked from commit f0228c286fcb8166ff57cda4dd2b353b4c06b69a)

* chore: update patches

(cherry picked from commit 3a3c527a1de9ee4f6f3e8545a8e4ff7c6ac6fa0c)

* 5973073: [Extensions] Improve warnings parsing (host) permissions in MV3

Refs: https://chromium-review.googlesource.com/c/chromium/src/+/5973073
(cherry picked from commit c571e561e0b4ba06bd40d8ec4e9cfe59ede010c5)

* chore: update filenames.libcxx.gni

(cherry picked from commit 7677e9bfc6b18ac3556b20fd4f4888e9f2d37431)

* Apply suggestions from code review

Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
(cherry picked from commit e8dd8215cff2f3f7216b31ef8edc8a3b24c56e2c)

* chore: update patches after rebase

---------

Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
Co-authored-by: David Sanders <dsanders11@ucsbalum.com>
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
2024-11-04 14:47:15 -05:00

79 lines
2.9 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Jeremy Apthorp <nornagon@nornagon.net>
Date: Thu, 20 Sep 2018 17:48:59 -0700
Subject: resource_file_conflict.patch
Resolve conflict between //chrome's .pak files and //electron's. The paths
that chrome code hardcodes require that we generate resources at these
paths, but GN throws errors if there are multiple targets that generate the
same files.
This is due to the hardcoded names here:
https://chromium.googlesource.com/chromium/src/+/69.0.3497.106/ui/base/resource/resource_bundle.cc#780
and here:
https://chromium.googlesource.com/chromium/src/+/69.0.3497.106/ui/base/resource/resource_bundle_mac.mm#50
This isn't needed on Mac because resource files are copied into the app bundle,
and are built in `$root_out_dir/electron_repack` (while Chromium's resources
target `$root_out_dir/repack`), but on Windows and Linux, the resource files go
directly in `$root_out_dir`, and so they conflict.
We don't actually ever generate Chromium's resource paks, but without this
patch, GN refuses to generate the ninja files:
ERROR at //tools/grit/repack.gni:35:3: Duplicate output file.
action(_repack_target_name) {
^----------------------------
Two or more targets generate the same output:
chrome_100_percent.pak
This is can often be fixed by changing one of the target names, or by
setting an output_name on one of them.
Collisions:
//chrome:packed_resources_100_percent
//electron:packed_resources_100_percent
See //tools/grit/repack.gni:35:3: Collision.
action(_repack_target_name) {
^----------------------------
Some alternatives to this patch:
1. Refactor upstream in such a way that the "chrome" pak names were
configurable, for instance by adding a method to ResourceBundle::Delegate that
LoadChromeResources would check.
2. Pass a Delegate that overrides `GetPathForResourcePack`, check for the
`chrome_{100,200}_percent.pak` filenames, and rewrite them to
`electron_{100,200}_percent.pak`.
3. Initialize the resource bundle with DO_NOT_LOAD_COMMON_RESOURCES and load
the paks ourselves.
None of these options seems like a substantial maintainability win over this patch to me (@nornagon).
diff --git a/chrome/BUILD.gn b/chrome/BUILD.gn
index c785db2fe2a24d33db6499da7806defbdec78a7e..9580623c57cb02f7e924742c6cb1638676881115 100644
--- a/chrome/BUILD.gn
+++ b/chrome/BUILD.gn
@@ -1557,7 +1557,7 @@ if (is_chrome_branded && !is_android) {
}
}
-if (!is_android) {
+if (!is_android && !is_electron_build) {
chrome_paks("packed_resources") {
if (is_mac) {
output_dir = "$root_gen_dir/repack"
@@ -1596,6 +1596,12 @@ if (!is_android) {
}
}
+if (is_electron_build) {
+ group("packed_resources") {
+ public_deps = [ "//electron:packed_resources" ]
+ }
+}
+
if (!is_android) {
repack("browser_tests_pak") {
testonly = true