[gobject-introspection] scanner: Put the -l library names after the .o



commit 169b6680c0f765ba8a0045a29f2fcf41ea81e80a
Author: Albert Astals Cid <aacid kde org>
Date:   Tue Nov 29 18:45:55 2011 +0000

    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

 giscanner/dumper.py |   10 +++++-----
 1 files changed, 5 insertions(+), 5 deletions(-)
---
diff --git a/giscanner/dumper.py b/giscanner/dumper.py
index 7c2eba8..baa51a9 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), )



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]