diff --git a/.travis.yml b/.travis.yml index 92a12217e..7301d529c 100644 --- a/.travis.yml +++ b/.travis.yml @@ -9,6 +9,7 @@ env: before_install: - sudo apt-get update -qq - sudo apt-get install -qf python-libxml2 + - python -c 'import libxml2' || .travis/link-libxml2 install: - pip install --use-mirrors -r .travis/requirements-$BUILDENV.txt script: diff --git a/.travis/link-libxml2 b/.travis/link-libxml2 new file mode 100755 index 000000000..22c8b4158 --- /dev/null +++ b/.travis/link-libxml2 @@ -0,0 +1,23 @@ +#!/usr/bin/python +import site, os +from os.path import exists, join +from optparse import OptionParser + + +def _link_libxml2(): + for path in site.getsitepackages(): + if exists(join(path, 'libxml2.py')): + os.symlink(join(path, 'libxml2.py'), 'libxml2.py') + os.symlink(join(path, 'libxml2mod.so'), 'libxml2mod.so') + break + else: + assert False, 'Failed to link libxml2' + +def main(): + op = OptionParser() + opts, args = op.parse_args() + _link_libxml2() + import libxml2 + +if __name__ == '__main__': + main()