aboutsummaryrefslogtreecommitdiff
path: root/tools/shared.py
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2012-05-21 21:27:39 +0200
committerAlon Zakai <alonzakai@gmail.com>2012-05-21 21:27:39 +0200
commitea5994e88b8bd9ca8409cea73fc78c622f937d5d (patch)
treef05e89deb3d57070c29f0fe37bc374aa7e9bb442 /tools/shared.py
parent6f7d5fab337259b2b59efb01a2a64dbb75316304 (diff)
ignore non-bitcode files when linking
Diffstat (limited to 'tools/shared.py')
-rw-r--r--tools/shared.py9
1 files changed, 5 insertions, 4 deletions
diff --git a/tools/shared.py b/tools/shared.py
index c3833035..6cba451d 100644
--- a/tools/shared.py
+++ b/tools/shared.py
@@ -523,10 +523,11 @@ set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY)''' % { 'winfix': '' if not WINDOWS e
resolved_symbols = set()
for f in files:
if not Building.is_ar(f):
- new_symbols = Building.llvm_nm(f)
- resolved_symbols = resolved_symbols.union(new_symbols.defs)
- unresolved_symbols = unresolved_symbols.union(new_symbols.undefs.difference(resolved_symbols)).difference(new_symbols.defs)
- actual_files.append(f)
+ if Building.is_bitcode(f):
+ new_symbols = Building.llvm_nm(f)
+ resolved_symbols = resolved_symbols.union(new_symbols.defs)
+ unresolved_symbols = unresolved_symbols.union(new_symbols.undefs.difference(resolved_symbols)).difference(new_symbols.defs)
+ actual_files.append(f)
else:
# Extract object files from ar archives, and link according to gnu ld semantics
# (link in an entire .o from the archive if it supplies symbols still unresolved)