summaryrefslogtreecommitdiffstats
path: root/patches/gobject-introspection-1.46.0/0002-giscanner-add-a-use-ldd-wrapper-option.patch
blob: a5e140c974a52f6aa310f48e5f3c6b7d7a3efdda (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
From: Alexander Kanavin <alex.kanavin@gmail.com>
Date: Fri, 30 Oct 2015 16:28:46 +0200
Subject: [PATCH] giscanner: add a --use-ldd-wrapper option

This is useful in cross-compile environments where system's ldd
command does not work on binaries built for a different architecture

Upstream-Status: Pending [review in oe-core]
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
 giscanner/scannermain.py | 3 +++
 giscanner/shlibs.py      | 4 +++-
 2 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/giscanner/scannermain.py b/giscanner/scannermain.py
index 2cae03764800..5afcc2895697 100755
--- a/giscanner/scannermain.py
+++ b/giscanner/scannermain.py
@@ -121,6 +121,9 @@ def _get_option_parser():
     parser.add_option("", "--use-binary-wrapper",
                       action="store", dest="wrapper", default=None,
                       help="wrapper to use for running programs (useful when cross-compiling)")
+    parser.add_option("", "--use-ldd-wrapper",
+                      action="store", dest="ldd_wrapper", default=None,
+                      help="wrapper to use instead of ldd (useful when cross-compiling)")
     parser.add_option("", "--program-arg",
                       action="append", dest="program_args", default=[],
                       help="extra arguments to program")
diff --git a/giscanner/shlibs.py b/giscanner/shlibs.py
index 838d34303d90..87a59a90fcb9 100644
--- a/giscanner/shlibs.py
+++ b/giscanner/shlibs.py
@@ -100,7 +100,9 @@ def _resolve_non_libtool(options, binary, libraries):
             args.extend(libtool)
             args.append('--mode=execute')
         platform_system = platform.system()
-        if platform_system == 'Darwin':
+        if options.ldd_wrapper:
+            args.extend([options.ldd_wrapper, binary.args[0]])
+        elif platform_system == 'Darwin':
             args.extend(['otool', '-L', binary.args[0]])
         else:
             args.extend(['ldd', binary.args[0]])