summaryrefslogtreecommitdiffstats
path: root/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-Port-cross-compilation-support-to-meson.patch
diff options
context:
space:
mode:
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.patch163
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)'
-+)