Mercurial > hg
view contrib/packaging/build-linux-wheels.sh @ 45983:97205cf0ee4d
packaging: don't use plain 'python' if another python has been specified
Before this change, packaging on CentOS 8 failed because 'python'
is used instead of 'python3'.
Change was tested with:
- make docker-centos7
- make docker-centos8
- make docker-ubuntu-bionic
Differential Revision: https://phab.mercurial-scm.org/D9464
author | Mathias De Mare <mathias.de_mare@nokia.com> |
---|---|
date | Mon, 30 Nov 2020 10:18:36 +0100 |
parents | 6f5b4ceea95b |
children |
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