1 From cba7807888a4a1f1d630d16c51c89859209334b3 Mon Sep 17 00:00:00 2001
2 From: Alexander Kanavin <alex.kanavin@gmail.com>
3 Date: Fri, 30 Oct 2015 16:28:46 +0200
4 Subject: [PATCH] giscanner: add a --use-ldd-wrapper option
6 This is useful in cross-compile environments where system's ldd
7 command does not work on binaries built for a different architecture
9 Upstream-Status: Pending [review in oe-core]
10 Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
13 giscanner/scannermain.py | 3 +++
14 giscanner/shlibs.py | 4 +++-
15 2 files changed, 6 insertions(+), 1 deletion(-)
17 diff --git a/giscanner/scannermain.py b/giscanner/scannermain.py
18 index 0b6a2d2..9013562 100644
19 --- a/giscanner/scannermain.py
20 +++ b/giscanner/scannermain.py
21 @@ -123,6 +123,9 @@ def _get_option_parser():
22 parser.add_option("", "--use-binary-wrapper",
23 action="store", dest="wrapper", default=None,
24 help="wrapper to use for running programs (useful when cross-compiling)")
25 + parser.add_option("", "--use-ldd-wrapper",
26 + action="store", dest="ldd_wrapper", default=None,
27 + help="wrapper to use instead of ldd (useful when cross-compiling)")
28 parser.add_option("", "--program-arg",
29 action="append", dest="program_args", default=[],
30 help="extra arguments to program")
31 diff --git a/giscanner/shlibs.py b/giscanner/shlibs.py
32 index 2c61f2f..d67df95 100644
33 --- a/giscanner/shlibs.py
34 +++ b/giscanner/shlibs.py
35 @@ -96,7 +96,9 @@ def _resolve_non_libtool(options, binary, libraries):
37 args.append('--mode=execute')
38 platform_system = platform.system()
39 - if platform_system == 'Darwin':
40 + if options.ldd_wrapper:
41 + args.extend([options.ldd_wrapper, binary.args[0]])
42 + elif platform_system == 'Darwin':
43 args.extend(['otool', '-L', binary.args[0]])
45 args.extend(['ldd', binary.args[0]])