summaryrefslogtreecommitdiff
path: root/buildlibxml.py
diff options
context:
space:
mode:
authorSteve <sc08121@citi.com>2015-04-29 18:31:29 -0400
committerSteve <sc08121@citi.com>2015-04-29 18:31:29 -0400
commit87a9d3da9285a38c9cb8a17620b354c28d60361d (patch)
tree45b28bf22d1d10a1c90636f1d1b5e7e657eafb18 /buildlibxml.py
parent117e38ed5bb6ac6620b637fc75e952b38521a2f5 (diff)
downloadpython-lxml-87a9d3da9285a38c9cb8a17620b354c28d60361d.tar.gz
Fix undefined symbol: libiconv when using --static-deps
Link ordering should be specified by library dependencies (eg, libxml2 depends on libiconv) instead of os.listdir ordering
Diffstat (limited to 'buildlibxml.py')
-rw-r--r--buildlibxml.py9
1 files changed, 5 insertions, 4 deletions
diff --git a/buildlibxml.py b/buildlibxml.py
index 8b883652..0fcf2a66 100644
--- a/buildlibxml.py
+++ b/buildlibxml.py
@@ -381,9 +381,10 @@ def build_libxml2xslt(download_dir, build_dir,
os.path.join(prefix, 'include', 'libexslt')])
static_library_dirs.append(lib_dir)
- for filename in os.listdir(lib_dir):
- if [l for l in ['iconv', 'libxml2', 'libxslt', 'libexslt'] if l in filename]:
- if [ext for ext in ['.a'] if filename.endswith(ext)]:
- static_binaries.append(os.path.join(lib_dir,filename))
+ listdir = os.listdir(lib_dir)
+ static_binaries += [os.path.join(lib_dir, filename)
+ for lib in ['libxml2', 'libexslt', 'libxslt', 'iconv']
+ for filename in listdir
+ if lib in filename and filename.endswith('.a')]
return (xml2_config, xslt_config)