summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorfoutrelis2021-11-12 22:34:51 +0000
committersvntogit2021-11-12 22:34:51 +0000
commit283a867d433f6f754a667296fa6c5a931f07c656 (patch)
treea01362b71cd49ee11c7ace38840bce8fbde11fa2
parent53bdc7836b5127af32c577b84f8b251fd24d0658 (diff)
downloadaur-283a867d433f6f754a667296fa6c5a931f07c656.tar.gz
Fix build with gn from Chromium 96
git-svn-id: file:///srv/repos/svn-community/svn@1044873 9fca08f4-af9d-4005-b8df-a31f2cc04f65
-rw-r--r--.SRCINFO8
-rw-r--r--PKGBUILD12
-rw-r--r--gn-visibility-gmock.patch43
-rw-r--r--gn-visibility-mojo.patch36
-rw-r--r--gn-visibility-webrtc.patch45
-rw-r--r--unbundle-fix-visibility-of-build-config-freetype.patch31
6 files changed, 175 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 15008ff16453..17ea6ae26493 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -50,6 +50,10 @@ pkgbase = electron13
source = chromium-glibc-2.33.patch
source = chromium-harfbuzz-3.0.0.patch
source = skia-harfbuzz-3.0.0.patch
+ source = unbundle-fix-visibility-of-build-config-freetype.patch
+ source = gn-visibility-gmock.patch
+ source = gn-visibility-mojo.patch
+ source = gn-visibility-webrtc.patch
source = sql-make-VirtualCursor-standard-layout-type.patch
source = unbundle-use-char16_t-as-UCHAR_TYPE.patch
sha256sums = SKIP
@@ -64,6 +68,10 @@ pkgbase = electron13
sha256sums = 2fccecdcd4509d4c36af873988ca9dbcba7fdb95122894a9fdf502c33a1d7a4b
sha256sums = 7ce947944a139e66774dfc7249bf7c3069f07f83a0f1b2c1a1b14287a7e15928
sha256sums = c9ed1dbadaf4be6097e25bc5577b91751799befc2d0376b143e1bd10def5754e
+ sha256sums = d0b17162211dd49e3a58c16d1697e7d8c322dcfd3b7890f0c2f920b711f52293
+ sha256sums = b9934e01d8f39beafc8b63784fb86e6befe25ca83e9c43224c8374e5a025d8ef
+ sha256sums = cca2d224cf2e9d7cfb4f5729ca76b5b8a7100b1ca39892b41fb296adaced1bf7
+ sha256sums = 574785a21168c3e9b7aa82630713ceb6ced12f699133db66b10fc84b7bb2c631
sha256sums = dd317f85e5abfdcfc89c6f23f4c8edbcdebdd5e083dcec770e5da49ee647d150
sha256sums = 59a59a60a08b335fe8647fdf0f9d2288d236ebf2cc9626396d0c4d032fd2b25d
diff --git a/PKGBUILD b/PKGBUILD
index 9619c11ca3af..f0c1f4cc5c8e 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -32,6 +32,10 @@ source=('git+https://github.com/electron/electron.git'
'chromium-glibc-2.33.patch'
'chromium-harfbuzz-3.0.0.patch'
'skia-harfbuzz-3.0.0.patch'
+ 'unbundle-fix-visibility-of-build-config-freetype.patch'
+ 'gn-visibility-gmock.patch'
+ 'gn-visibility-mojo.patch'
+ 'gn-visibility-webrtc.patch'
'sql-make-VirtualCursor-standard-layout-type.patch'
'unbundle-use-char16_t-as-UCHAR_TYPE.patch'
)
@@ -47,6 +51,10 @@ sha256sums=('SKIP'
'2fccecdcd4509d4c36af873988ca9dbcba7fdb95122894a9fdf502c33a1d7a4b'
'7ce947944a139e66774dfc7249bf7c3069f07f83a0f1b2c1a1b14287a7e15928'
'c9ed1dbadaf4be6097e25bc5577b91751799befc2d0376b143e1bd10def5754e'
+ 'd0b17162211dd49e3a58c16d1697e7d8c322dcfd3b7890f0c2f920b711f52293'
+ 'b9934e01d8f39beafc8b63784fb86e6befe25ca83e9c43224c8374e5a025d8ef'
+ 'cca2d224cf2e9d7cfb4f5729ca76b5b8a7100b1ca39892b41fb296adaced1bf7'
+ '574785a21168c3e9b7aa82630713ceb6ced12f699133db66b10fc84b7bb2c631'
'dd317f85e5abfdcfc89c6f23f4c8edbcdebdd5e083dcec770e5da49ee647d150'
'59a59a60a08b335fe8647fdf0f9d2288d236ebf2cc9626396d0c4d032fd2b25d'
)
@@ -144,6 +152,10 @@ prepare() {
patch -Np1 -i ../chromium-glibc-2.33.patch
patch -Np1 -i ../chromium-harfbuzz-3.0.0.patch
patch -Np1 -d third_party/skia <../skia-harfbuzz-3.0.0.patch
+ patch -Np1 -i ../unbundle-fix-visibility-of-build-config-freetype.patch
+ patch -Np1 -i ../gn-visibility-gmock.patch
+ patch -Np1 -i ../gn-visibility-mojo.patch
+ patch -Np1 -i ../gn-visibility-webrtc.patch
patch -Np1 -i ../sql-make-VirtualCursor-standard-layout-type.patch
patch -Np1 -i ../unbundle-use-char16_t-as-UCHAR_TYPE.patch
patch -Np1 -i ../use-system-libraries-in-node.patch
diff --git a/gn-visibility-gmock.patch b/gn-visibility-gmock.patch
new file mode 100644
index 000000000000..ff242fd96d45
--- /dev/null
+++ b/gn-visibility-gmock.patch
@@ -0,0 +1,43 @@
+From fc3c737210873e9bee311391e9f6b48130e84983 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Tomasz=20=C5=9Aniatowski?= <tsniatowski@vewd.com>
+Date: Sat, 4 Sep 2021 07:13:49 +0000
+Subject: [PATCH] Fix config visibility violation in //testing/gmock
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+//third_party/googletest:gtest_config has restricted visibility, current
+code works by accident because gn only enforces visibility on 'configs'.
+Fix by not referencing the configs at all as it should be unnecessary:
+//testing/gmock gets them via a public dependency chain anyway.
+
+This is one of a few fixes needed to roll gn past the upcoming
+enforcement change, landing in small parts because removing config
+usages feels a bit subtle.
+
+Bug: gn:252
+Change-Id: Ie1438862831ecee49162d9f8f7872a568d69c2fb
+Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3139927
+Reviewed-by: Dirk Pranke <dpranke@google.com>
+Commit-Queue: Tomasz Śniatowski <tsniatowski@vewd.com>
+Cr-Commit-Position: refs/heads/main@{#918357}
+---
+ testing/gmock/BUILD.gn | 5 -----
+ 1 file changed, 5 deletions(-)
+
+diff --git a/testing/gmock/BUILD.gn b/testing/gmock/BUILD.gn
+index 0248d146d7397..e285fb84e471a 100644
+--- a/testing/gmock/BUILD.gn
++++ b/testing/gmock/BUILD.gn
+@@ -14,11 +14,6 @@ source_set("gmock") {
+ "include/gmock/gmock.h",
+ ]
+ public_deps = [ "//third_party/googletest:gmock" ]
+-
+- public_configs = [
+- "//third_party/googletest:gmock_config",
+- "//third_party/googletest:gtest_config",
+- ]
+ }
+
+ # The file/directory layout of Google Test is not yet considered stable. Until
diff --git a/gn-visibility-mojo.patch b/gn-visibility-mojo.patch
new file mode 100644
index 000000000000..cc6db3b43093
--- /dev/null
+++ b/gn-visibility-mojo.patch
@@ -0,0 +1,36 @@
+From 40f10bf0e683f6b499b5c3c7555111193db03abf Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Tomasz=20=C5=9Aniatowski?= <tsniatowski@vewd.com>
+Date: Tue, 7 Sep 2021 20:13:53 +0000
+Subject: [PATCH] Fix config visibility violation in //mojo/public/cpp/bindings
+
+//third_party/blink/renderer:config has restricted visibility, current
+code works by accident because gn only enforces visibility on 'configs'.
+Fix by removing the direct config usage as it looks historical and not
+actually needed.
+
+This is one of a few fixes needed to roll gn past the upcoming
+enforcement change, landing in small parts because removing config
+usages feels a bit subtle.
+
+Bug: gn:252
+Change-Id: I2e0d2e314ef3714dd19b11b7ae29bdcf5074cfda
+Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3140593
+Commit-Queue: Ken Rockot <rockot@google.com>
+Reviewed-by: Ken Rockot <rockot@google.com>
+Cr-Commit-Position: refs/heads/main@{#918914}
+---
+ mojo/public/cpp/bindings/BUILD.gn | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/mojo/public/cpp/bindings/BUILD.gn b/mojo/public/cpp/bindings/BUILD.gn
+index 13ad53b3ed305..d90318de106e4 100644
+--- a/mojo/public/cpp/bindings/BUILD.gn
++++ b/mojo/public/cpp/bindings/BUILD.gn
+@@ -281,7 +281,5 @@ if (!is_ios) {
+ "//third_party/blink/renderer/platform:platform_export",
+ "//third_party/blink/renderer/platform/wtf",
+ ]
+-
+- public_configs = [ "//third_party/blink/renderer:config" ]
+ }
+ }
diff --git a/gn-visibility-webrtc.patch b/gn-visibility-webrtc.patch
new file mode 100644
index 000000000000..6d55754ecefd
--- /dev/null
+++ b/gn-visibility-webrtc.patch
@@ -0,0 +1,45 @@
+From 72c4d9fc95c336f61d7a8417b78f947a400ce792 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Tomasz=20=C5=9Aniatowski?= <tsniatowski@vewd.com>
+Date: Tue, 14 Sep 2021 10:33:37 +0000
+Subject: [PATCH] Relax googletest gn config visibility for webrtc
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+An upcoming gn roll will start enforcing config visibility on
+public_configs and all_dependent_configs. Normally, configs with
+limited visibility have corresponding helper targets that push the
+configs using public_configs and are propagated with public_deps.
+However, webrtc prefers to avoid public_deps, and pushes the gtest
+config using all_dependent_configs. This requires direct visibility,
+so tweak gtest BUILD.gn to make things work.
+
+Bug: gn:252, 1249254
+Change-Id: Ic7be22f7bf129255fb0ac51f437cd6dd3989e3a3
+Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3158065
+Commit-Queue: Tomasz Śniatowski <tsniatowski@vewd.com>
+Reviewed-by: Victor Costan <pwnall@chromium.org>
+Cr-Commit-Position: refs/heads/main@{#921126}
+---
+ third_party/googletest/BUILD.gn | 8 +++++++-
+ 1 file changed, 7 insertions(+), 1 deletion(-)
+
+diff --git a/third_party/googletest/BUILD.gn b/third_party/googletest/BUILD.gn
+index fe240ebe954b6..d2bde47d75eab 100644
+--- a/third_party/googletest/BUILD.gn
++++ b/third_party/googletest/BUILD.gn
+@@ -5,7 +5,13 @@
+ import("//build_overrides/build.gni")
+
+ config("gtest_config") {
+- visibility = [ ":*" ] # gmock also shares this config.
++ # webrtc wants to push this config without a public_dep chain
++ # TODO(crbug.com/1249254): figure out what to do with this
++ visibility = [
++ ":*", # gmock also shares this config.
++ "//test:*", # webrts standalone setup
++ "//third_party/webrtc/test:*",
++ ]
+
+ defines = [
+ # Chromium always links googletest statically, so no API qualifier is
diff --git a/unbundle-fix-visibility-of-build-config-freetype.patch b/unbundle-fix-visibility-of-build-config-freetype.patch
new file mode 100644
index 000000000000..d10023bc0267
--- /dev/null
+++ b/unbundle-fix-visibility-of-build-config-freetype.patch
@@ -0,0 +1,31 @@
+From 271e45339b7b969e98ccef7837cb1b15480b07fc Mon Sep 17 00:00:00 2001
+From: Stephan Hartmann <stha09@googlemail.com>
+Date: Thu, 4 Nov 2021 18:58:34 +0000
+Subject: [PATCH] unbundle: fix visibility of //build/config/freetype
+
+For system freetype //build/linux:freetype_from_pkgconfig is restricted
+to //third_party:freetype_harfbuzz and //third_party/harfbuzz-ng:harfbuzz_source.
+However //build/config/freetype:freetype is accessing it too.
+
+Bug: None
+Change-Id: Ic4a37b01e4ae221372a9220cbad04c598b844c21
+Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3259304
+Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
+Reviewed-by: Thomas Anderson <thomasanderson@chromium.org>
+Cr-Commit-Position: refs/heads/main@{#938388}
+---
+ build/linux/BUILD.gn | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/build/linux/BUILD.gn b/build/linux/BUILD.gn
+index 54314c7687..cd49e3d524 100644
+--- a/build/linux/BUILD.gn
++++ b/build/linux/BUILD.gn
+@@ -23,6 +23,7 @@ if (use_system_freetype) {
+ # the system, use with caution,for details see build/config/freetype/BUILD.gn.
+ pkg_config("freetype_from_pkgconfig") {
+ visibility = [
++ "//build/config/freetype:freetype",
+ "//third_party:freetype_harfbuzz",
+ "//third_party/harfbuzz-ng:harfbuzz_source",
+ ]