Merge #31453: meson: library install paths for g-ir-scanner

This commit is contained in:
Vladimír Čunát 2017-11-27 12:13:34 +01:00
commit 6589519174
No known key found for this signature in database
GPG key ID: E747DF1F9575A3AA
2 changed files with 22 additions and 0 deletions

View file

@ -18,6 +18,15 @@ python3Packages.buildPythonApplication rec {
popd
'';
patches = [
# Unlike libtool, vanilla Meson does not pass any information
# about the path library will be installed to to g-ir-scanner,
# breaking the GIR when path other than ${!outputLib}/lib is used.
# We patch Meson to add a --fallback-library-path argument with
# library install_dir to g-ir-scanner.
./gir-fallback-path.patch
];
postPatch = ''
sed -i -e 's|e.fix_rpath(install_rpath)||' mesonbuild/scripts/meson_install.py
'';

View file

@ -0,0 +1,13 @@
--- a/mesonbuild/modules/gnome.py
+++ b/mesonbuild/modules/gnome.py
@@ -427,6 +427,10 @@
scan_command += ['--no-libtool', '--namespace=' + ns, '--nsversion=' + nsversion, '--warn-all',
'--output', '@OUTPUT@']
+ fallback_libpath = girtarget.get_custom_install_dir()[0]
+ if fallback_libpath is not None and isinstance(fallback_libpath, str) and len(fallback_libpath) > 0 and fallback_libpath[0] == "/":
+ scan_command += ['--fallback-library-path=' + fallback_libpath]
+
header = kwargs.pop('header', None)
if header:
if not isinstance(header, str):