aboutsummaryrefslogtreecommitdiff
path: root/ninjabackend.py
diff options
context:
space:
mode:
Diffstat (limited to 'ninjabackend.py')
-rw-r--r--ninjabackend.py5
1 files changed, 3 insertions, 2 deletions
diff --git a/ninjabackend.py b/ninjabackend.py
index 0a5913b..e88c0c8 100644
--- a/ninjabackend.py
+++ b/ninjabackend.py
@@ -732,11 +732,12 @@ class NinjaBackend(backends.Backend):
commands += linker.get_std_link_flags()
else:
raise RuntimeError('Unknown build target type.')
- for dep in target.get_external_deps():
- commands += dep.get_link_flags()
dependencies = target.get_dependencies()
commands += self.build_target_link_arguments(linker, dependencies)
commands += target.link_flags
+ # External deps must be last because target link libraries may depend on them.
+ for dep in target.get_external_deps():
+ commands += dep.get_link_flags()
commands += linker.build_rpath_args(self.environment.get_build_dir(), target.get_rpaths())
if self.environment.coredata.coverage:
commands += linker.get_coverage_link_flags()