summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlbert Astals Cid <aacid@kde.org>2011-11-29 18:45:55 +0000
committerColin Walters <walters@verbum.org>2011-11-29 13:57:29 -0500
commit169b6680c0f765ba8a0045a29f2fcf41ea81e80a (patch)
tree1df4f349307d83b104cd2718b1a7daaeaf795890
parent699ad0fec427c79bec1c41b2cf8e2441b9b959bc (diff)
downloadgobject-introspection-169b6680c0f765ba8a0045a29f2fcf41ea81e80a.tar.gz
scanner: Put the -l library names after the .o
That is how gcc expects them. From the gcc man page: -llibrary Search the library named library when linking. It makes a difference where in the command you write this option; the linker searches and processes libraries and object files in the order they are specified. Thus, foo.o -lz bar.o searches library z after file foo.o but before bar.o. If bar.o refers to functions in z, those functions may not be loaded. https://bugzilla.gnome.org/show_bug.cgi?id=664616
-rw-r--r--giscanner/dumper.py10
1 files changed, 5 insertions, 5 deletions
diff --git a/giscanner/dumper.py b/giscanner/dumper.py
index 7c2eba8b..baa51a9f 100644
--- a/giscanner/dumper.py
+++ b/giscanner/dumper.py
@@ -238,17 +238,17 @@ class DumpCompiler(object):
# likely to be uninstalled yet and we want the uninstalled RPATHs have
# priority (or we might run with installed library that is older)
- if not self._options.external_library:
- self._add_link_internal_args(args, libtool)
- else:
- self._add_link_external_args(args)
-
for source in sources:
if not os.path.exists(source):
raise CompilerError(
"Could not find object file: %s" % (source, ))
args.extend(list(sources))
+ if not self._options.external_library:
+ self._add_link_internal_args(args, libtool)
+ else:
+ self._add_link_external_args(args)
+
if not self._options.quiet:
print "g-ir-scanner: link: %s" % (
subprocess.list2cmdline(args), )