Skip to content

Tries inline delocation #40

Tries inline delocation

Tries inline delocation #40

Workflow file for this run

name: Build wheel files
on: [push, pull_request]
jobs:
build_wheels:
name: Build wheels on ${{ matrix.os }} for Python ${{ matrix.pyversions }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest] #, macos-13, macos-12, ubuntu-20.04]
pyversions: ['3.11'] #, '3.10', '3.9', '3.8', '3.7',]
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: ${{ matrix.pyversions }}
- name: Install pip dependencies
run: |
python -m pip install --upgrade pip
python -m pip install forthon mppl numpy h5py
python -m pip install flake8
python -m pip install pytest-isolate pytest-xdist
pip install 'build<0.10.0'
- name: Find path to M1 gfortran
run: which gfortran-13
- name: Symlink gfortran for macOS
if: runner.os == 'macOS'
run: |
# make sure gfortran is available
ln -s /usr/local/bin/gfortran-13 /usr/local/bin/gfortran
gfortran --version
- name: Build wheels
run: python -m build
- name: Delocate macOS wheels
if: runner.os == 'macOS'
run: |
pip install delocate
mkdir delocated_wheels
delocate-wheel -w delocated_wheels dist/*.whl
- name: Delocate Linux wheels
if: runner.os == 'Linux'
run: |
pip install auditwheel
cd dist
auditwheel repair *.whl
- name: Upload maxOS wheels
if: runner.os == 'macOS'
uses: actions/upload-artifact@v4
with:
name: ${{ matrix.os }}-${{ matrix.pyversions }}
path: delocated_wheels/*.whl
- name: Upload Linux wheels
if: runner.os == 'Linux'
uses: actions/upload-artifact@v4
with:
name: ${{ matrix.os }}-${{ matrix.pyversions }}
path: wheelhouse/*.whl
build_arm_wheels:
name: Build wheels on ${{ matrix.os }} for Python ${{ matrix.pyversions }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [macos-14] #, macos-13-arm64]
pyversions: ['3.11'] #, '3.10']
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: ${{ matrix.pyversions }}
- name: Install pip dependencies
run: |
python -m pip install --upgrade pip
python -m pip install forthon mppl numpy h5py
python -m pip install flake8
python -m pip install pytest-isolate pytest-xdist
pip install 'build<0.10.0'
- name: Find path to M1 gfortran
run: which gfortran-13
- name: Symlink gfortran for macOS
run: |
# make sure gfortran is available
ln -s /opt/homebrew/bin/gfortran-13 /opt/homebrew/bin/gfortran
gfortran --version
- name: Build wheels
run: python -m build
- name: Delocate macOS wheels
run: |
pip install delocate
mkdir delocated_wheels
delocate-wheel -w delocated_wheels dist/*.whl
- name: Upload maxOS wheels
uses: actions/upload-artifact@v4
with:
name: ${{ matrix.os }}-${{ matrix.pyversions }}
path: delocated_wheels/*.whl
gather_wheels:
needs: [build_wheels, build_arm_wheels]
name: Gathers built wheels
runs-on: ubuntu-latest
steps:
- uses: actions/download-artifact@v4
with:
path: wheels
merge-multiple: true
- uses: actions/upload-artifact@v4
with:
name: all_wheels
path: wheels