Skip to content

build-macos-amd64-wheels #1

build-macos-amd64-wheels

build-macos-amd64-wheels #1

name: build-macos-amd64-wheels
'on':
workflow_dispatch:
inputs:
name:
type: string
description: Pkg to build (empty for all)
required: false
graalpy:
type: string
description: GraalPy download url prefix (empty for default)
required: false
jobs:
psutil-macos-amd64:
runs-on: macos-12
if: ${{ !cancelled() && (inputs.name == '' || inputs.name == 'psutil') }}
steps:
- uses: ilammy/msvc-dev-cmd@v1
- name: Checkout
uses: actions/checkout@main
- name: Setup custom GraalPy
if: inputs.graalpy != ''
run: |-
curl -L -o graalpy.tar.gz ${{ inputs.graalpy }}-macos-amd64.tar.gz
mkdir -p graalpy
tar -C $(pwd)/graalpy --strip-components=1 -xzf graalpy.tar.gz
graalpy/bin/graalpy -s -m ensurepip
graalpy/bin/graalpy -m pip install wheel
- name: Setup GraalPy
uses: actions/setup-python@v5
if: inputs.graalpy == ''
with:
python-version: graalpy24.0
- name: Setup local GraalPy venv
if: inputs.graalpy == ''
run: python -m venv graalpy
- name: Build wheel
run: |-
export PIP_FIND_LINKS=$(pwd)
export PATH=$(pwd)/graalpy/bin/:$PATH
graalpy/bin/graalpy -m pip wheel --find-links $(pwd) psutil
- name: Store wheels
uses: actions/upload-artifact@main
with:
name: psutil-macos-amd64
path: psutil*.whl
if-no-files-found: error
numpy-macos-amd64:
runs-on: macos-12
needs: psutil-macos-amd64
if: ${{ !cancelled() && (inputs.name == '' || inputs.name == 'numpy' || inputs.name
== 'pandas' || inputs.name == 'contourpy' || inputs.name == 'matplotlib' ||
inputs.name == 'scipy' || inputs.name == 'scikit-learn' || inputs.name == 'torch')
}}
steps:
- uses: ilammy/msvc-dev-cmd@v1
- name: Install dependencies
run: brew install gcc openblas
- name: Checkout
uses: actions/checkout@main
- name: Setup custom GraalPy
if: inputs.graalpy != ''
run: |-
curl -L -o graalpy.tar.gz ${{ inputs.graalpy }}-macos-amd64.tar.gz
mkdir -p graalpy
tar -C $(pwd)/graalpy --strip-components=1 -xzf graalpy.tar.gz
graalpy/bin/graalpy -s -m ensurepip
graalpy/bin/graalpy -m pip install wheel
- name: Setup GraalPy
uses: actions/setup-python@v5
if: inputs.graalpy == ''
with:
python-version: graalpy24.0
- name: Setup local GraalPy venv
if: inputs.graalpy == ''
run: python -m venv graalpy
- name: Download artifacts from psutil
uses: actions/download-artifact@main
continue-on-error: true
with:
name: psutil-macos-amd64
- name: Build wheel
run: |-
export PIP_FIND_LINKS=$(pwd)
export PATH=$(pwd)/graalpy/bin/:$PATH
graalpy/bin/graalpy -m pip wheel --find-links $(pwd) numpy
- name: Store wheels
uses: actions/upload-artifact@main
with:
name: numpy-macos-amd64
path: numpy*.whl
if-no-files-found: error
pandas-macos-amd64:
runs-on: macos-12
needs: numpy-macos-amd64
if: ${{ !cancelled() && (inputs.name == '' || inputs.name == 'pandas') }}
steps:
- uses: ilammy/msvc-dev-cmd@v1
- name: Install dependencies
run: brew install openblas
- name: Checkout
uses: actions/checkout@main
- name: Setup custom GraalPy
if: inputs.graalpy != ''
run: |-
curl -L -o graalpy.tar.gz ${{ inputs.graalpy }}-macos-amd64.tar.gz
mkdir -p graalpy
tar -C $(pwd)/graalpy --strip-components=1 -xzf graalpy.tar.gz
graalpy/bin/graalpy -s -m ensurepip
graalpy/bin/graalpy -m pip install wheel
- name: Setup GraalPy
uses: actions/setup-python@v5
if: inputs.graalpy == ''
with:
python-version: graalpy24.0
- name: Setup local GraalPy venv
if: inputs.graalpy == ''
run: python -m venv graalpy
- name: Download artifacts from numpy
uses: actions/download-artifact@main
continue-on-error: true
with:
name: numpy-macos-amd64
- name: Build wheel
run: |-
export PIP_FIND_LINKS=$(pwd)
export PATH=$(pwd)/graalpy/bin/:$PATH
graalpy/bin/graalpy -m pip wheel --find-links $(pwd) pandas
- name: Store wheels
uses: actions/upload-artifact@main
with:
name: pandas-macos-amd64
path: pandas*.whl
if-no-files-found: error
pybind11-macos-amd64:
runs-on: macos-12
needs: pandas-macos-amd64
if: ${{ !cancelled() && (inputs.name == '' || inputs.name == 'pybind11' || inputs.name
== 'contourpy' || inputs.name == 'kiwisolver' || inputs.name == 'torch' || inputs.name
== 'matplotlib') }}
steps:
- uses: ilammy/msvc-dev-cmd@v1
- name: Checkout
uses: actions/checkout@main
- name: Setup custom GraalPy
if: inputs.graalpy != ''
run: |-
curl -L -o graalpy.tar.gz ${{ inputs.graalpy }}-macos-amd64.tar.gz
mkdir -p graalpy
tar -C $(pwd)/graalpy --strip-components=1 -xzf graalpy.tar.gz
graalpy/bin/graalpy -s -m ensurepip
graalpy/bin/graalpy -m pip install wheel
- name: Setup GraalPy
uses: actions/setup-python@v5
if: inputs.graalpy == ''
with:
python-version: graalpy24.0
- name: Setup local GraalPy venv
if: inputs.graalpy == ''
run: python -m venv graalpy
- name: Download artifacts from pandas
uses: actions/download-artifact@main
continue-on-error: true
with:
name: pandas-macos-amd64
- name: Build wheel
run: |-
export PIP_FIND_LINKS=$(pwd)
export PATH=$(pwd)/graalpy/bin/:$PATH
graalpy/bin/graalpy -m pip wheel --find-links $(pwd) pybind11
- name: Store wheels
uses: actions/upload-artifact@main
with:
name: pybind11-macos-amd64
path: pybind11*.whl
if-no-files-found: error
ninja-macos-amd64:
runs-on: macos-12
needs: pybind11-macos-amd64
if: ${{ !cancelled() && (inputs.name == '' || inputs.name == 'ninja' || inputs.name
== 'contourpy' || inputs.name == 'torch' || inputs.name == 'matplotlib') }}
steps:
- uses: ilammy/msvc-dev-cmd@v1
- name: Checkout
uses: actions/checkout@main
- name: Setup custom GraalPy
if: inputs.graalpy != ''
run: |-
curl -L -o graalpy.tar.gz ${{ inputs.graalpy }}-macos-amd64.tar.gz
mkdir -p graalpy
tar -C $(pwd)/graalpy --strip-components=1 -xzf graalpy.tar.gz
graalpy/bin/graalpy -s -m ensurepip
graalpy/bin/graalpy -m pip install wheel
- name: Setup GraalPy
uses: actions/setup-python@v5
if: inputs.graalpy == ''
with:
python-version: graalpy24.0
- name: Setup local GraalPy venv
if: inputs.graalpy == ''
run: python -m venv graalpy
- name: Download artifacts from pybind11
uses: actions/download-artifact@main
continue-on-error: true
with:
name: pybind11-macos-amd64
- name: Build wheel
run: |-
export PIP_FIND_LINKS=$(pwd)
export PATH=$(pwd)/graalpy/bin/:$PATH
graalpy/bin/graalpy -m pip wheel --find-links $(pwd) ninja
- name: Store wheels
uses: actions/upload-artifact@main
with:
name: ninja-macos-amd64
path: ninja*.whl
if-no-files-found: error
pillow-macos-amd64:
runs-on: macos-12
needs: ninja-macos-amd64
if: ${{ !cancelled() && (inputs.name == '' || inputs.name == 'pillow' || inputs.name
== 'matplotlib') }}
steps:
- uses: ilammy/msvc-dev-cmd@v1
- name: Install dependencies
run: brew install libjpeg libtiff little-cms2 openjpeg webp
- name: Checkout
uses: actions/checkout@main
- name: Setup custom GraalPy
if: inputs.graalpy != ''
run: |-
curl -L -o graalpy.tar.gz ${{ inputs.graalpy }}-macos-amd64.tar.gz
mkdir -p graalpy
tar -C $(pwd)/graalpy --strip-components=1 -xzf graalpy.tar.gz
graalpy/bin/graalpy -s -m ensurepip
graalpy/bin/graalpy -m pip install wheel
- name: Setup GraalPy
uses: actions/setup-python@v5
if: inputs.graalpy == ''
with:
python-version: graalpy24.0
- name: Setup local GraalPy venv
if: inputs.graalpy == ''
run: python -m venv graalpy
- name: Download artifacts from ninja
uses: actions/download-artifact@main
continue-on-error: true
with:
name: ninja-macos-amd64
- name: Build wheel
run: |-
export PIP_FIND_LINKS=$(pwd)
export PATH=$(pwd)/graalpy/bin/:$PATH
graalpy/bin/graalpy -m pip wheel --find-links $(pwd) pillow
- name: Store wheels
uses: actions/upload-artifact@main
with:
name: pillow-macos-amd64
path: pillow*.whl
if-no-files-found: error
contourpy-macos-amd64:
runs-on: macos-12
needs:
- ninja-macos-amd64
- pybind11-macos-amd64
- numpy-macos-amd64
- pillow-macos-amd64
if: ${{ !cancelled() && (inputs.name == '' || inputs.name == 'contourpy' || inputs.name
== 'matplotlib') }}
steps:
- uses: ilammy/msvc-dev-cmd@v1
- name: Checkout
uses: actions/checkout@main
- name: Setup custom GraalPy
if: inputs.graalpy != ''
run: |-
curl -L -o graalpy.tar.gz ${{ inputs.graalpy }}-macos-amd64.tar.gz
mkdir -p graalpy
tar -C $(pwd)/graalpy --strip-components=1 -xzf graalpy.tar.gz
graalpy/bin/graalpy -s -m ensurepip
graalpy/bin/graalpy -m pip install wheel
- name: Setup GraalPy
uses: actions/setup-python@v5
if: inputs.graalpy == ''
with:
python-version: graalpy24.0
- name: Setup local GraalPy venv
if: inputs.graalpy == ''
run: python -m venv graalpy
- name: Download artifacts from ninja
uses: actions/download-artifact@main
continue-on-error: true
with:
name: ninja-macos-amd64
- name: Download artifacts from pybind11
uses: actions/download-artifact@main
continue-on-error: true
with:
name: pybind11-macos-amd64
- name: Download artifacts from numpy
uses: actions/download-artifact@main
continue-on-error: true
with:
name: numpy-macos-amd64
- name: Download artifacts from pillow
uses: actions/download-artifact@main
continue-on-error: true
with:
name: pillow-macos-amd64
- name: Build wheel
run: |-
export PIP_FIND_LINKS=$(pwd)
export PATH=$(pwd)/graalpy/bin/:$PATH
graalpy/bin/graalpy -m pip wheel --find-links $(pwd) contourpy
- name: Store wheels
uses: actions/upload-artifact@main
with:
name: contourpy-macos-amd64
path: contourpy*.whl
if-no-files-found: error
kiwisolver-macos-amd64:
runs-on: macos-12
needs:
- pybind11-macos-amd64
- contourpy-macos-amd64
if: ${{ !cancelled() && (inputs.name == '' || inputs.name == 'kiwisolver' || inputs.name
== 'matplotlib') }}
steps:
- uses: ilammy/msvc-dev-cmd@v1
- name: Checkout
uses: actions/checkout@main
- name: Setup custom GraalPy
if: inputs.graalpy != ''
run: |-
curl -L -o graalpy.tar.gz ${{ inputs.graalpy }}-macos-amd64.tar.gz
mkdir -p graalpy
tar -C $(pwd)/graalpy --strip-components=1 -xzf graalpy.tar.gz
graalpy/bin/graalpy -s -m ensurepip
graalpy/bin/graalpy -m pip install wheel
- name: Setup GraalPy
uses: actions/setup-python@v5
if: inputs.graalpy == ''
with:
python-version: graalpy24.0
- name: Setup local GraalPy venv
if: inputs.graalpy == ''
run: python -m venv graalpy
- name: Download artifacts from pybind11
uses: actions/download-artifact@main
continue-on-error: true
with:
name: pybind11-macos-amd64
- name: Download artifacts from contourpy
uses: actions/download-artifact@main
continue-on-error: true
with:
name: contourpy-macos-amd64
- name: Build wheel
run: |-
export PIP_FIND_LINKS=$(pwd)
export PATH=$(pwd)/graalpy/bin/:$PATH
graalpy/bin/graalpy -m pip wheel --find-links $(pwd) kiwisolver
- name: Store wheels
uses: actions/upload-artifact@main
with:
name: kiwisolver-macos-amd64
path: kiwisolver*.whl
if-no-files-found: error
matplotlib-macos-amd64:
runs-on: macos-12
needs:
- pillow-macos-amd64
- kiwisolver-macos-amd64
- numpy-macos-amd64
- contourpy-macos-amd64
if: ${{ !cancelled() && (inputs.name == '' || inputs.name == 'matplotlib') }}
steps:
- uses: ilammy/msvc-dev-cmd@v1
- name: Install dependencies
run: brew install openblas
- name: Checkout
uses: actions/checkout@main
- name: Setup custom GraalPy
if: inputs.graalpy != ''
run: |-
curl -L -o graalpy.tar.gz ${{ inputs.graalpy }}-macos-amd64.tar.gz
mkdir -p graalpy
tar -C $(pwd)/graalpy --strip-components=1 -xzf graalpy.tar.gz
graalpy/bin/graalpy -s -m ensurepip
graalpy/bin/graalpy -m pip install wheel
- name: Setup GraalPy
uses: actions/setup-python@v5
if: inputs.graalpy == ''
with:
python-version: graalpy24.0
- name: Setup local GraalPy venv
if: inputs.graalpy == ''
run: python -m venv graalpy
- name: Download artifacts from pillow
uses: actions/download-artifact@main
continue-on-error: true
with:
name: pillow-macos-amd64
- name: Download artifacts from kiwisolver
uses: actions/download-artifact@main
continue-on-error: true
with:
name: kiwisolver-macos-amd64
- name: Download artifacts from numpy
uses: actions/download-artifact@main
continue-on-error: true
with:
name: numpy-macos-amd64
- name: Download artifacts from contourpy
uses: actions/download-artifact@main
continue-on-error: true
with:
name: contourpy-macos-amd64
- name: Build wheel
run: |-
export PIP_FIND_LINKS=$(pwd)
export PATH=$(pwd)/graalpy/bin/:$PATH
graalpy/bin/graalpy -m pip wheel --find-links $(pwd) matplotlib
- name: Store wheels
uses: actions/upload-artifact@main
with:
name: matplotlib-macos-amd64
path: matplotlib*.whl
if-no-files-found: error
scipy-macos-amd64:
runs-on: macos-12
needs:
- numpy-macos-amd64
- matplotlib-macos-amd64
if: ${{ !cancelled() && (inputs.name == '' || inputs.name == 'scipy' || inputs.name
== 'scikit-learn') }}
steps:
- uses: ilammy/msvc-dev-cmd@v1
- name: Install dependencies
run: brew install gcc openblas pkg-config
- name: Checkout
uses: actions/checkout@main
- name: Setup custom GraalPy
if: inputs.graalpy != ''
run: |-
curl -L -o graalpy.tar.gz ${{ inputs.graalpy }}-macos-amd64.tar.gz
mkdir -p graalpy
tar -C $(pwd)/graalpy --strip-components=1 -xzf graalpy.tar.gz
graalpy/bin/graalpy -s -m ensurepip
graalpy/bin/graalpy -m pip install wheel
- name: Setup GraalPy
uses: actions/setup-python@v5
if: inputs.graalpy == ''
with:
python-version: graalpy24.0
- name: Setup local GraalPy venv
if: inputs.graalpy == ''
run: python -m venv graalpy
- name: Download artifacts from numpy
uses: actions/download-artifact@main
continue-on-error: true
with:
name: numpy-macos-amd64
- name: Download artifacts from matplotlib
uses: actions/download-artifact@main
continue-on-error: true
with:
name: matplotlib-macos-amd64
- name: Build wheel
run: |-
export PKG_CONFIG_PATH=/opt/homebrew/opt/openblas/lib/pkgconfig
export FFLAGS=-fallow-argument-mismatch
export PIP_FIND_LINKS=$(pwd)
export PATH=$(pwd)/graalpy/bin/:$PATH
graalpy/bin/graalpy -m pip wheel --find-links $(pwd) scipy
- name: Store wheels
uses: actions/upload-artifact@main
with:
name: scipy-macos-amd64
path: scipy*.whl
if-no-files-found: error
scikit-learn-macos-amd64:
runs-on: macos-12
needs:
- numpy-macos-amd64
- scipy-macos-amd64
if: ${{ !cancelled() && (inputs.name == '' || inputs.name == 'scikit-learn') }}
steps:
- uses: ilammy/msvc-dev-cmd@v1
- name: Install dependencies
run: brew install openblas
- name: Checkout
uses: actions/checkout@main
- name: Setup custom GraalPy
if: inputs.graalpy != ''
run: |-
curl -L -o graalpy.tar.gz ${{ inputs.graalpy }}-macos-amd64.tar.gz
mkdir -p graalpy
tar -C $(pwd)/graalpy --strip-components=1 -xzf graalpy.tar.gz
graalpy/bin/graalpy -s -m ensurepip
graalpy/bin/graalpy -m pip install wheel
- name: Setup GraalPy
uses: actions/setup-python@v5
if: inputs.graalpy == ''
with:
python-version: graalpy24.0
- name: Setup local GraalPy venv
if: inputs.graalpy == ''
run: python -m venv graalpy
- name: Download artifacts from numpy
uses: actions/download-artifact@main
continue-on-error: true
with:
name: numpy-macos-amd64
- name: Download artifacts from scipy
uses: actions/download-artifact@main
continue-on-error: true
with:
name: scipy-macos-amd64
- name: Build wheel
run: |-
export PKG_CONFIG_PATH=/opt/homebrew/opt/openblas/lib/pkgconfig
export FFLAGS=-fallow-argument-mismatch
export PIP_FIND_LINKS=$(pwd)
export PATH=$(pwd)/graalpy/bin/:$PATH
graalpy/bin/graalpy -m pip wheel --find-links $(pwd) scikit-learn
- name: Store wheels
uses: actions/upload-artifact@main
with:
name: scikit-learn-macos-amd64
path: scikit*learn*.whl
if-no-files-found: error
cffi-macos-amd64:
runs-on: macos-12
needs: scikit-learn-macos-amd64
if: ${{ !cancelled() && (inputs.name == '' || inputs.name == 'cffi' || inputs.name
== 'torch') }}
steps:
- uses: ilammy/msvc-dev-cmd@v1
- name: Install dependencies
run: brew install libffi
- name: Checkout
uses: actions/checkout@main
- name: Setup custom GraalPy
if: inputs.graalpy != ''
run: |-
curl -L -o graalpy.tar.gz ${{ inputs.graalpy }}-macos-amd64.tar.gz
mkdir -p graalpy
tar -C $(pwd)/graalpy --strip-components=1 -xzf graalpy.tar.gz
graalpy/bin/graalpy -s -m ensurepip
graalpy/bin/graalpy -m pip install wheel
- name: Setup GraalPy
uses: actions/setup-python@v5
if: inputs.graalpy == ''
with:
python-version: graalpy24.0
- name: Setup local GraalPy venv
if: inputs.graalpy == ''
run: python -m venv graalpy
- name: Download artifacts from scikit-learn
uses: actions/download-artifact@main
continue-on-error: true
with:
name: scikit-learn-macos-amd64
- name: Build wheel
run: |-
graalpy/bin/graalpy -m pip install wheel
export PIP_FIND_LINKS=$(pwd)
export PATH=$(pwd)/graalpy/bin/:$PATH
graalpy/bin/graalpy -m pip wheel --find-links $(pwd) cffi
- name: Store wheels
uses: actions/upload-artifact@main
with:
name: cffi-macos-amd64
path: cffi*.whl
if-no-files-found: error
PyYAML-macos-amd64:
runs-on: macos-12
needs: cffi-macos-amd64
if: ${{ !cancelled() && (inputs.name == '' || inputs.name == 'PyYAML' || inputs.name
== 'torch') }}
steps:
- uses: ilammy/msvc-dev-cmd@v1
- name: Checkout
uses: actions/checkout@main
- name: Setup custom GraalPy
if: inputs.graalpy != ''
run: |-
curl -L -o graalpy.tar.gz ${{ inputs.graalpy }}-macos-amd64.tar.gz
mkdir -p graalpy
tar -C $(pwd)/graalpy --strip-components=1 -xzf graalpy.tar.gz
graalpy/bin/graalpy -s -m ensurepip
graalpy/bin/graalpy -m pip install wheel
- name: Setup GraalPy
uses: actions/setup-python@v5
if: inputs.graalpy == ''
with:
python-version: graalpy24.0
- name: Setup local GraalPy venv
if: inputs.graalpy == ''
run: python -m venv graalpy
- name: Download artifacts from cffi
uses: actions/download-artifact@main
continue-on-error: true
with:
name: cffi-macos-amd64
- name: Build wheel
run: |-
export PIP_FIND_LINKS=$(pwd)
export PATH=$(pwd)/graalpy/bin/:$PATH
graalpy/bin/graalpy -m pip wheel --find-links $(pwd) PyYAML
- name: Store wheels
uses: actions/upload-artifact@main
with:
name: PyYAML-macos-amd64
path: PyYAML*.whl
if-no-files-found: error
cmake-macos-amd64:
runs-on: macos-12
needs: PyYAML-macos-amd64
if: ${{ !cancelled() && (inputs.name == '' || inputs.name == 'cmake' || inputs.name
== 'torch') }}
steps:
- uses: ilammy/msvc-dev-cmd@v1
- name: Checkout
uses: actions/checkout@main
- name: Setup custom GraalPy
if: inputs.graalpy != ''
run: |-
curl -L -o graalpy.tar.gz ${{ inputs.graalpy }}-macos-amd64.tar.gz
mkdir -p graalpy
tar -C $(pwd)/graalpy --strip-components=1 -xzf graalpy.tar.gz
graalpy/bin/graalpy -s -m ensurepip
graalpy/bin/graalpy -m pip install wheel
- name: Setup GraalPy
uses: actions/setup-python@v5
if: inputs.graalpy == ''
with:
python-version: graalpy24.0
- name: Setup local GraalPy venv
if: inputs.graalpy == ''
run: python -m venv graalpy
- name: Download artifacts from PyYAML
uses: actions/download-artifact@main
continue-on-error: true
with:
name: PyYAML-macos-amd64
- name: Build wheel
run: |-
export PIP_FIND_LINKS=$(pwd)
export PATH=$(pwd)/graalpy/bin/:$PATH
graalpy/bin/graalpy -m pip wheel --find-links $(pwd) cmake
- name: Store wheels
uses: actions/upload-artifact@main
with:
name: cmake-macos-amd64
path: cmake*.whl
if-no-files-found: error
ujson-macos-amd64:
runs-on: macos-12
needs: cmake-macos-amd64
if: ${{ !cancelled() && (inputs.name == '' || inputs.name == 'ujson') }}
steps:
- uses: ilammy/msvc-dev-cmd@v1
- name: Checkout
uses: actions/checkout@main
- name: Setup custom GraalPy
if: inputs.graalpy != ''
run: |-
curl -L -o graalpy.tar.gz ${{ inputs.graalpy }}-macos-amd64.tar.gz
mkdir -p graalpy
tar -C $(pwd)/graalpy --strip-components=1 -xzf graalpy.tar.gz
graalpy/bin/graalpy -s -m ensurepip
graalpy/bin/graalpy -m pip install wheel
- name: Setup GraalPy
uses: actions/setup-python@v5
if: inputs.graalpy == ''
with:
python-version: graalpy24.0
- name: Setup local GraalPy venv
if: inputs.graalpy == ''
run: python -m venv graalpy
- name: Download artifacts from cmake
uses: actions/download-artifact@main
continue-on-error: true
with:
name: cmake-macos-amd64
- name: Build wheel
run: |-
export PIP_FIND_LINKS=$(pwd)
export PATH=$(pwd)/graalpy/bin/:$PATH
graalpy/bin/graalpy -m pip wheel --find-links $(pwd) ujson
- name: Store wheels
uses: actions/upload-artifact@main
with:
name: ujson-macos-amd64
path: ujson*.whl
if-no-files-found: error
torch-macos-amd64:
runs-on: macos-12
needs:
- numpy-macos-amd64
- ninja-macos-amd64
- cmake-macos-amd64
- pybind11-macos-amd64
- cffi-macos-amd64
- PyYAML-macos-amd64
- ujson-macos-amd64
if: ${{ !cancelled() && (inputs.name == '' || inputs.name == 'torch') }}
env:
MAX_JOBS: 4
BUILD_TEST: 0
steps:
- uses: ilammy/msvc-dev-cmd@v1
- name: Install dependencies
run: brew install openblas cmake libffi
- name: Checkout
uses: actions/checkout@main
- name: Setup custom GraalPy
if: inputs.graalpy != ''
run: |-
curl -L -o graalpy.tar.gz ${{ inputs.graalpy }}-macos-amd64.tar.gz
mkdir -p graalpy
tar -C $(pwd)/graalpy --strip-components=1 -xzf graalpy.tar.gz
graalpy/bin/graalpy -s -m ensurepip
graalpy/bin/graalpy -m pip install wheel
- name: Setup GraalPy
uses: actions/setup-python@v5
if: inputs.graalpy == ''
with:
python-version: graalpy24.0
- name: Setup local GraalPy venv
if: inputs.graalpy == ''
run: python -m venv graalpy
- name: Download artifacts from numpy
uses: actions/download-artifact@main
continue-on-error: true
with:
name: numpy-macos-amd64
- name: Download artifacts from ninja
uses: actions/download-artifact@main
continue-on-error: true
with:
name: ninja-macos-amd64
- name: Download artifacts from cmake
uses: actions/download-artifact@main
continue-on-error: true
with:
name: cmake-macos-amd64
- name: Download artifacts from pybind11
uses: actions/download-artifact@main
continue-on-error: true
with:
name: pybind11-macos-amd64
- name: Download artifacts from cffi
uses: actions/download-artifact@main
continue-on-error: true
with:
name: cffi-macos-amd64
- name: Download artifacts from PyYAML
uses: actions/download-artifact@main
continue-on-error: true
with:
name: PyYAML-macos-amd64
- name: Download artifacts from ujson
uses: actions/download-artifact@main
continue-on-error: true
with:
name: ujson-macos-amd64
- name: Build wheel
run: |-
export USE_CUDA=0
export PKG_CONFIG_PATH=/opt/homebrew/opt/openblas/lib/pkgconfig
export PIP_FIND_LINKS=$(pwd)
export PATH=$(pwd)/graalpy/bin/:$PATH
graalpy/bin/graalpy -m pip wheel --find-links $(pwd) torch
- name: Store wheels
uses: actions/upload-artifact@main
with:
name: torch-macos-amd64
path: torch*.whl
if-no-files-found: error