Skip to content

Cleanup CI and Support NumPy 2.0 #289

Cleanup CI and Support NumPy 2.0

Cleanup CI and Support NumPy 2.0 #289

Workflow file for this run

name: Build CUDA
on:
push:
branches:
- master
tags:
- '*'
pull_request:
branches:
- master
jobs:
build_wheels:
name: Build wheel on ${{ matrix.os }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, windows-2022]
steps:
- uses: actions/checkout@master
- name: Add msbuild to PATH
uses: microsoft/setup-msbuild@v2.0.0
if: runner.os == 'Windows'
- name: Add Windows SDK
shell: cmd
if: runner.os == 'Windows'
run: |
choco install windows-sdk-8.1
- name: Build wheels
uses: pypa/cibuildwheel@v2.19
with:
package-dir: backend/cuda
output-dir: wheelhouse
env:
CIBW_BUILD: "cp3*"
CIBW_SKIP: "*-win32 *-manylinux_i686 *-musllinux_* *-macosx_*"
CIBW_BUILD_VERBOSITY: 1
# Clean the build directory between builds
CIBW_BEFORE_BUILD: >-
rm -rf {package}/osqp_sources/build
CIBW_ENVIRONMENT_LINUX: CMAKE_CUDA_COMPILER=/usr/local/cuda-11.7/bin/nvcc
CIBW_BEFORE_ALL_LINUX: bash .github/workflows/prepare_build_environment_linux_cuda.sh
CIBW_REPAIR_WHEEL_COMMAND_LINUX: ""
CIBW_ENVIRONMENT_WINDOWS: CMAKE_CUDA_COMPILER="C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v11.6/bin/nvcc.exe" CUDA_TOOLKIT_ROOT_DIR="C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v11.6" CMAKE_GENERATOR_TOOLSET="cuda=C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v11.6" CUDA_NVCC_FLAGS="--allow-unsupported-compiler"
CIBW_BEFORE_ALL_WINDOWS: bash .github/workflows/prepare_build_environment_windows_cuda.sh
CIBW_REPAIR_WHEEL_COMMAND_WINDOWS: ""
- name: Upload artifacts to github
uses: actions/upload-artifact@v4
with:
name: wheels-cuda-${{ matrix.os }}
path: ./wheelhouse