Update pyproject.toml #25
This file contains hidden or 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: Build install test | |
| on: [push] | |
| jobs: | |
| build: | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: [ubuntu-22.04, macos-14, windows-latest] | |
| build_type: [Release] | |
| c_compiler: [clang] | |
| python-version: ["3.12"] | |
| include: | |
| - os: ubuntu-22.04 | |
| apt: 10 # Linux will install the latest GSL version | |
| - os: macos-14 | |
| brew: 20 # macOS will install the latest GSL version | |
| - os: windows-latest | |
| winget: 30 | |
| gsl_version: "2.6" | |
| - os: windows-latest | |
| winget: 30 | |
| gsl_version: "2.7" | |
| - os: windows-latest | |
| winget: 30 | |
| gsl_version: "2.8" | |
| steps: | |
| - name: mamba-setup | |
| uses: mamba-org/setup-micromamba@v1 | |
| with: | |
| environment-name: moose | |
| cache-environment: true | |
| cache-downloads: true | |
| create-args: >- | |
| python=${{ matrix.python-version }} | |
| pkg-config | |
| clang | |
| hdf5 | |
| pybind11[global] | |
| graphviz | |
| pytables | |
| numpy | |
| matplotlib | |
| vpython | |
| lxml | |
| doxygen | |
| setuptools | |
| wheel | |
| meson | |
| ninja | |
| meson-python | |
| gsl | |
| post-cleanup: all | |
| generate-run-shell: false | |
| - name: Display Python version | |
| run: | | |
| python -c "import sys; print(sys.version)" | |
| - if: ${{ matrix.apt }} | |
| run: | | |
| sudo apt-get update | |
| sudo apt-get -y install libgsl0-dev libgsl-dev libhdf5-dev | |
| - if: ${{ matrix.brew }} | |
| run: | | |
| brew list pkg-config && brew uninstall pkg-config || echo "pkg-config not installed, skipping uninstall." | |
| brew install gsl # Always install the latest GSL version on macOS | |
| brew install hdf5 | |
| - name: checkout | |
| uses: actions/checkout@v4 | |
| - name: Build and install (non-windows) | |
| if: runner.os != 'Windows' | |
| run: | | |
| eval "$(micromamba shell hook --shell bash)" | |
| micromamba activate moose | |
| python -c "import sys; print('#' * 60, sys.version)" | |
| pip install python-libsbml | |
| pip install . | |
| python -c "import moose; moose.le()" | |
| - name: Build and install (windows) | |
| if: runner.os == 'Windows' | |
| run: | | |
| micromamba shell hook -s powershell | Out-String | Invoke-Expression | |
| micromamba activate moose | |
| python -c "import sys; print('#' * 60, sys.version)" | |
| pip install python-libsbml | |
| pip install . | |
| python -c "import moose; moose.le()" |