gtk-vnc/fix-invalid-use-of-subprojects.patch
yangchenguang 0de37ed45c fix invalid use of subprojects
Signed-off-by: yangchenguang <yangchenguang@uniontech.com>
2023-01-16 16:32:39 +08:00

56 lines
1.9 KiB
Diff

From 8da5e173ebdccbca60387ef2347c629be3c78dff Mon Sep 17 00:00:00 2001
From: Eli Schwartz <eschwartz93@gmail.com>
Date: Mon, 27 Jun 2022 01:36:07 -0400
Subject: [PATCH 01/11] fix invalid use of subprojects
The keycodemapdb Meson subproject provides a program and a source input.
Since it is a subproject, Meson wants to sandbox that and requires it to
be explicitly exported. But this never happened -- instead, we manually
poked at files using the actual string path "subprojects/......"
This was always a Meson sandbox violation, but Meson 0.63.0 started
noticing it and erroring out.
Instead, do the right thing. Update the subproject to a version that has
a meson.build with actually meaningful contents -- namely, a files
variable and a found program. Then use these in order to run the needed
custom_target.
In the process, it is also necessary to correct the argument ordering
when running keymap-gen.
diff --git a/meson.build b/meson.build
index 299113a..bf72f13 100644
--- a/meson.build
+++ b/meson.build
@@ -133,10 +133,10 @@ gtk_vnc_version_check_flags = gvnc_version_check_flags + [
'-DGDK_VERSION_MAX_ALLOWED=@0@'.format(gtk_min_version_symbol),
]
-subproject('keycodemapdb')
+keycodemapdb = subproject('keycodemapdb')
-keymapgen = files('subprojects/keycodemapdb/tools/keymap-gen')
-keymapcsv = files('subprojects/keycodemapdb/data/keymaps.csv')
+keymapgen = find_program('keymap-gen')
+keymapcsv = keycodemapdb.get_variable('keymaps_csv')
gnome = import('gnome')
diff --git a/subprojects/keycodemapdb/meson.build b/subprojects/keycodemapdb/meson.build
index eb9416b..ea05720 100644
--- a/subprojects/keycodemapdb/meson.build
+++ b/subprojects/keycodemapdb/meson.build
@@ -1 +1,7 @@
-project('keycodemapdb')
+project('keycodemapdb', meson_version: '>=0.46.0')
+
+keymap_gen = find_program('tools/keymap-gen')
+meson.override_find_program('keymap-gen', keymap_gen)
+
+keymaps_csv = files('data/keymaps.csv')
+
--
2.36.1