Mercurial > hg
view contrib/packaging/build-linux-wheels.sh @ 51971:69bfd6b242ed
head-revs: merge the two inner_headrevs… variants
Now that there is only one method, it does not make sense to have two different
"inner" method. This is especially true as we are about to add another parameter
to the method. So we clean up before that.
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Fri, 27 Sep 2024 00:55:54 +0200 |
parents | 6f5b4ceea95b |
children | 4b9cf9924cd7 |
line wrap: on
line source
#!/bin/bash # This file is directly inspired by # https://github.com/pypa/python-manylinux-demo/blob/master/travis/build-wheels.sh set -e -x PYTHON_TARGETS=$(ls -d /opt/python/cp27*/bin) # Create an user for the tests useradd hgbuilder # Bypass uid/gid problems cp -R /src /io && chown -R hgbuilder:hgbuilder /io # Compile wheels for Python 2.X for PYBIN in $PYTHON_TARGETS; do "${PYBIN}/pip" wheel /io/ -w wheelhouse/ done # Bundle external shared libraries into the wheels with # auditwheel (https://github.com/pypa/auditwheel) repair. # It also fix the ABI tag on the wheel making it pip installable. for whl in wheelhouse/*.whl; do auditwheel repair "$whl" -w /src/wheelhouse/ done # Install packages and run the tests for all Python versions cd /io/tests/ for PYBIN in $PYTHON_TARGETS; do # Install mercurial wheel as root "${PYBIN}/pip" install mercurial --no-index -f /src/wheelhouse # But run tests as hgbuilder user (non-root) su hgbuilder -c "\"${PYBIN}/python\" /io/tests/run-tests.py --with-hg=\"${PYBIN}/hg\" --blacklist=/io/contrib/packaging/linux-wheel-centos5-blacklist" done