package/pkgconf: prepend sysroot paths to common gobject-introspection utils
authorAdam Duskett <Aduskett@gmail.com>
Tue, 11 Feb 2020 16:34:03 +0000 (08:34 -0800)
committerYann E. MORIN <yann.morin.1998@free.fr>
Thu, 20 Feb 2020 21:11:16 +0000 (22:11 +0100)
Many autotools packages call pkg-conf to inquire as to where the following
utilities are:

g_ir_scanner
g_ir_compiler
g_ir_generate

Because gobject uses wrappers to call qemu, prepending the sysroot to the paths
of these compilers is necessary.

Signed-off-by: Adam Duskett <Aduskett@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
package/pkgconf/0001-Only-prefix-with-the-sysroot-a-subset-of-variables.patch

index 5a9713d651f225eaaddec1cf0314a686d728d2e3..a7811752d2ff5785426687b55d1c56dc5f8e88d6 100644 (file)
@@ -15,11 +15,13 @@ be prefixed by the sysroot, and which path should not be prefixed by
 the sysroot.
 
 So, let's simply have a whitelist of paths that should be prefixed:
-includedir, libdir, mapdir, pkgdatadir and sdkdir. This list of
-variables was collected over years of Buildroot development. All other
-paths are not prefixed by the sysroot.
+g_ir_scanner, g_ir_compiler, g_ir_generate, includedir, libdir, mapdir,
+pkgdatadir and sdkdir. This list of variables was collected over years of
+Buildroot development. All other paths are not prefixed by the sysroot.
 
 Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
+[Updated to include gobject-introspection paths]
+Signed-off-by: Adam Duskett <aduskett@gmail.com>
 ---
  libpkgconf/tuple.c | 60 ++++++++++++++++++++++++++++++++--------------
  1 file changed, 42 insertions(+), 18 deletions(-)
@@ -28,7 +30,7 @@ diff --git a/libpkgconf/tuple.c b/libpkgconf/tuple.c
 index 8523709..7cd2fff 100644
 --- a/libpkgconf/tuple.c
 +++ b/libpkgconf/tuple.c
-@@ -160,6 +160,18 @@ dequote(const char *value)
+@@ -160,6 +160,21 @@ dequote(const char *value)
        return buf;
  }
  
@@ -36,6 +38,9 @@ index 8523709..7cd2fff 100644
 +pkgconf_tuple_parse_sysroot(const pkgconf_client_t *client, pkgconf_list_t *vars, const char *value, bool add_sysroot);
 +
 +const char *sysrooted_keys[] = {
++      "g_ir_scanner",
++      "g_ir_compiler",
++      "g_ir_generate",
 +      "includedir",
 +      "libdir",
 +      "mapdir",