Skip to content

Cleanup wheel building yaml and add free threaded wheels #164

Cleanup wheel building yaml and add free threaded wheels

Cleanup wheel building yaml and add free threaded wheels #164

Workflow file for this run

name: wheels
on:
push:
branches: [ master ]
paths:
- "src/viztracer/**"
- "setup.py"
- ".github/workflows/wheels.yml"
pull_request:
paths:
- "src/viztracer/**"
- "setup.py"
- ".github/workflows/wheels.yml"
jobs:
build-wheels-linux:
name: Build wheels on Linux for ${{ matrix.arch }}
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest]
manylinux-image: [manylinux2014]
arch: [auto, aarch64]
steps:
- uses: actions/checkout@v4
- name: Set up QEMU
if: ${{ matrix.arch == 'aarch64' }}
uses: docker/setup-qemu-action@v1
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: 3.11
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install build twine flake8 setuptools wheel
- name: Install cibuildwheel
run: python -m pip install cibuildwheel -U
- name: Build wheels
run: python -m cibuildwheel --output-dir wheelhouse
env:
CIBW_BUILD: cp39-* cp310-* cp311-* cp312-* cp313-* cp313t-*
CIBW_SKIP: '*musllinux*'
CIBW_ARCHS: ${{ matrix.arch }}
CIBW_MANYLINUX_*_IMAGE: ${{ matrix.manylinux-image }}
CIBW_MANYLINUX_I686_IMAGE: ${{ matrix.manylinux-image }}
CIBW_FREE_THREADED_SUPPORT: 1
build-wheels-macos-windows:
name: Build wheels on ${{ matrix.os }}
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [macos-latest, macos-13, windows-latest]
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.11'
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install build twine flake8 setuptools wheel
- name: Install cibuildwheel
run: python -m pip install cibuildwheel -U
- name: Build wheels
if: matrix.os == 'macos-latest'
run: python -m cibuildwheel --output-dir wheelhouse
env:
CIBW_BUILD: cp310-* cp311-* cp312-* cp313-* cp313t-*
CIBW_ENVIRONMENT_MACOS: MACOSX_DEPLOYMENT_TARGET=10.15
CIBW_FREE_THREADED_SUPPORT: 1
- name: Build wheels
if: matrix.os != 'macos-latest'
run: python -m cibuildwheel --output-dir wheelhouse
env:
CIBW_BUILD: cp39-* cp310-* cp311-* cp312-* cp313-* cp313t-*
CIBW_ENVIRONMENT_MACOS: MACOSX_DEPLOYMENT_TARGET=11.0
CIBW_FREE_THREADED_SUPPORT: 1