[gtk-vnc] fix invalid use of subprojects



commit 8da5e173ebdccbca60387ef2347c629be3c78dff
Author: Eli Schwartz <eschwartz93 gmail com>
Date:   Mon Jun 27 01:36:07 2022 -0400

    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.

 meson.build              | 6 +++---
 src/meson.build          | 3 ++-
 subprojects/keycodemapdb | 2 +-
 3 files changed, 6 insertions(+), 5 deletions(-)
---
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/src/meson.build b/src/meson.build
index 247c597..67fa8b9 100644
--- a/src/meson.build
+++ b/src/meson.build
@@ -336,9 +336,10 @@ foreach keymap: keymaps
   cmd = [
     python,
     keymapgen,
+    'code-map',
     '--lang', 'glib2',
     '--varname', varname,
-    'code-map', keymapcsv, keymap, 'qnum'
+    keymapcsv, keymap, 'qnum'
   ]
   gtk_vnc_sources += custom_target(
     target,
diff --git a/subprojects/keycodemapdb b/subprojects/keycodemapdb
index 6280c94..e15649b 160000
--- a/subprojects/keycodemapdb
+++ b/subprojects/keycodemapdb
@@ -1 +1 @@
-Subproject commit 6280c94f306df6a20bbc100ba15a5a81af0366e6
+Subproject commit e15649b83a78f89f57205927022115536d2c1698


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]