Rework simplex tree options #2073
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: pip build osx | |
on: [push, pull_request] | |
env: | |
MACOSX_DEPLOYMENT_TARGET: 11.7 | |
_PYTHON_HOST_PLATFORM: macosx-11.7-universal2 | |
ARCHFLAGS: "-arch arm64 -arch x86_64" | |
jobs: | |
build: | |
runs-on: macos-latest | |
strategy: | |
max-parallel: 4 | |
matrix: | |
# numpy packages for osx x86 and arm are only available from 1.21.2, but stable for both versions from 1.21.4 | |
# and python 3.8+ | |
python-version: ['3.8'] | |
include: | |
- python-version: '3.8' | |
numpy-version: '1.21.4' | |
name: Build wheels for Python ${{ matrix.python-version }} | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
submodules: true | |
- uses: actions/setup-python@v4 | |
with: | |
python-version: ${{ matrix.python-version }} | |
architecture: x64 | |
- name: Install dependencies | |
run: | | |
brew update || true | |
brew install boost eigen gmp mpfr cgal || true | |
python -m pip install --user numpy~=${{ matrix.numpy-version }} | |
python -m pip install --user -r ext/gudhi-deploy/build-requirements.txt | |
python -m pip install --user delocate | |
./scripts/build_osx_universal_gmpfr.sh | |
# Now the universal libraries are in $PWD/deps-uni/lib | |
- name: Build python wheel | |
run: | | |
export GMP_LIB_DIR=$PWD/deps-uni/lib | |
export GMPXX_LIB_DIR=$PWD/deps-uni/lib | |
export MPFR_LIB_DIR=$PWD/deps-uni/lib | |
python --version | |
mkdir build | |
cd build | |
cmake -DCMAKE_BUILD_TYPE=Release -DPython_ADDITIONAL_VERSIONS=3 .. | |
cd src/python | |
python -m build -n -w | |
export PATH="$PATH:`python -m site --user-base`/bin" | |
delocate-wheel --require-archs universal2 -v dist/*.whl | |
- name: Install and test python wheel | |
run: | | |
python -m pip install --user numpy --upgrade | |
python -m pip install --user pytest build/src/python/dist/*.whl | |
python -c "import gudhi; print(gudhi.__version__)" | |
python -m pytest -v src/python/test/test_alpha_complex.py | |
python -m pytest -v src/python/test/test_bottleneck_distance.py | |
python -m pytest -v src/python/test/test_cubical_complex.py | |
python -m pytest -v src/python/test/test_rips_complex.py | |
- name: Upload OSx python wheel | |
uses: actions/upload-artifact@v3 | |
with: | |
name: osx python wheel | |
path: build/src/python/dist/*.whl |