diff options
Diffstat (limited to 'meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-Port-cross-compilation-support-to-meson.patch')
-rw-r--r-- | meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-Port-cross-compilation-support-to-meson.patch | 163 |
1 files changed, 0 insertions, 163 deletions
diff --git a/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-Port-cross-compilation-support-to-meson.patch b/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-Port-cross-compilation-support-to-meson.patch deleted file mode 100644 index 5747d61c19..0000000000 --- a/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-Port-cross-compilation-support-to-meson.patch +++ /dev/null @@ -1,163 +0,0 @@ -From 2b3bce1526b538dc2c7fa223eaf9808858aa1b06 Mon Sep 17 00:00:00 2001 -From: Alexander Kanavin <alex.kanavin@gmail.com> -Date: Thu, 15 Nov 2018 15:10:05 +0100 -Subject: [PATCH] Port cross-compilation support to meson - -Upstream-Status: Pending -Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> - ---- - gir/meson.build | 62 ++++++++++++++++++++++++++++++++++------------- - meson.build | 4 ++- - meson_options.txt | 20 +++++++++++++++ - 3 files changed, 68 insertions(+), 18 deletions(-) - -diff --git a/gir/meson.build b/gir/meson.build -index 85ae575..327c134 100644 ---- a/gir/meson.build -+++ b/gir/meson.build -@@ -36,16 +36,29 @@ gir_files = [ - typelibdir = join_paths(get_option('libdir'), 'girepository-1.0') - install_data(gir_files, install_dir: girdir) - --scanner_command = [ -- python, -- girscanner, -- '--output=@OUTPUT@', -- '--no-libtool', -- '--quiet', -- '--reparse-validate', -- '--add-include-path', join_paths(meson.current_build_dir()), -- '--add-include-path', join_paths(meson.current_source_dir()), --] -+if get_option('enable-host-gi') -+ scanner_command = [ -+ 'g-ir-scanner', -+ '--output=@OUTPUT@', -+ '--no-libtool', -+ '--quiet', -+ '--reparse-validate', -+ '--add-include-path', join_paths(meson.current_build_dir()), -+ '--add-include-path', join_paths(meson.current_source_dir()), -+ ] -+else -+ scanner_command = [ -+ python, -+ girscanner, -+ '--output=@OUTPUT@', -+ '--no-libtool', -+ '--quiet', -+ '--reparse-validate', -+ '--add-include-path', join_paths(meson.current_build_dir()), -+ '--add-include-path', join_paths(meson.current_source_dir()), -+ ] -+endif -+ - - dep_type = glib_dep.type_name() - if dep_type == 'internal' -@@ -58,6 +71,12 @@ if dep_type == 'internal' - '--extra-library=glib-2.0', '--extra-library=gobject-2.0'] - endif - -+if get_option('enable-gi-cross-wrapper') != '' -+ scanner_command += ['--use-binary-wrapper=' + get_option('enable-gi-cross-wrapper')] -+endif -+if get_option('enable-gi-ldd-wrapper') != '' -+ scanner_command += ['--use-ldd-wrapper=' + get_option('enable-gi-ldd-wrapper')] -+endif - # Take a glob and print to newlines - globber = ''' - from glob import glob -@@ -84,8 +103,8 @@ glib_command = scanner_command + [ - - if dep_type == 'pkgconfig' - glib_command += ['--external-library', '--pkg=glib-2.0'] -- glib_libdir = glib_dep.get_pkgconfig_variable('libdir') -- glib_incdir = join_paths(glib_dep.get_pkgconfig_variable('includedir'), 'glib-2.0') -+ glib_libdir = get_option('pkgconfig-sysroot-path') + glib_dep.get_pkgconfig_variable('libdir') -+ glib_incdir = get_option('pkgconfig-sysroot-path') + join_paths(glib_dep.get_pkgconfig_variable('includedir'), 'glib-2.0') - glib_libincdir = join_paths(glib_libdir, 'glib-2.0', 'include') - glib_files += join_paths(glib_incdir, 'gobject', 'glib-types.h') - glib_files += join_paths(glib_libincdir, 'glibconfig.h') -@@ -339,7 +358,7 @@ endforeach - if giounix_dep.found() - if dep_type == 'pkgconfig' - gio_command += ['--pkg=gio-unix-2.0'] -- giounix_includedir = join_paths(giounix_dep.get_pkgconfig_variable('includedir'), 'gio-unix-2.0') -+ giounix_includedir = get_option('pkgconfig-sysroot-path') + join_paths(giounix_dep.get_pkgconfig_variable('includedir'), 'gio-unix-2.0') - # Get the installed gio-unix header list - ret = run_command(python, '-c', globber.format(join_paths(giounix_includedir, 'gio', '*.h'))) - if ret.returncode() != 0 -@@ -422,15 +441,24 @@ gir_files += custom_target('gir-girepository', - ) - - typelibs = [] -+if get_option('enable-gi-cross-wrapper') != '' -+ gircompiler_command = [get_option('enable-gi-cross-wrapper'), gircompiler.full_path(), '-o', '@OUTPUT@', '@INPUT@', -+ '--includedir', meson.current_build_dir(), -+ '--includedir', meson.current_source_dir(), -+ ] -+else -+ gircompiler_command = [gircompiler, '-o', '@OUTPUT@', '@INPUT@', -+ '--includedir', meson.current_build_dir(), -+ '--includedir', meson.current_source_dir(), -+ ] -+endif -+ - foreach gir : gir_files - typelibs += custom_target('generate-typelib-@0@'.format(gir).underscorify(), - input: gir, - output: '@BASENAME@.typelib', - depends: [gobject_gir, ], -- command: [gircompiler, '-o', '@OUTPUT@', '@INPUT@', -- '--includedir', meson.current_build_dir(), -- '--includedir', meson.current_source_dir(), -- ], -+ command: gircompiler_command, - install: true, - install_dir: typelibdir, - ) -diff --git a/meson.build b/meson.build -index 95bbd2b..f7baefd 100644 ---- a/meson.build -+++ b/meson.build -@@ -163,7 +163,9 @@ endif - subdir('girepository') - subdir('tools') - subdir('giscanner') --subdir('gir') -+if get_option('enable-introspection-data') == true -+ subdir('gir') -+endif - subdir('examples') - subdir('docs') - subdir('tests') -diff --git a/meson_options.txt b/meson_options.txt -index 445a68a..a325511 100644 ---- a/meson_options.txt -+++ b/meson_options.txt -@@ -25,3 +25,23 @@ option('python', type: 'string', value: 'python3', - option('gir_dir_prefix', type: 'string', - description: 'Intermediate prefix for gir installation under ${prefix}' - ) -+ -+option('enable-host-gi', type: 'boolean', value : false, -+ description: 'Use gobject introspection tools installed in the host system (useful when cross-compiling)' -+) -+ -+option('enable-gi-cross-wrapper', type: 'string', -+ description: 'Use a wrapper to run gicompiler and binaries produced by giscanner (useful when cross-compiling)' -+) -+ -+option('enable-gi-ldd-wrapper', type: 'string', -+ description: 'Use a ldd wrapper instead of system ldd command in giscanner (useful when cross-compiling)' -+) -+ -+option('enable-introspection-data', type: 'boolean', value : true, -+ description: 'Build introspection data (.gir and .typelib files) in addition to library and tools' -+) -+ -+option('pkgconfig-sysroot-path', type: 'string', -+ description: 'Specify a sysroot path to prepend to pkgconfig output (useful when cross-compiling)' -+) |