diff --git a/.github/workflows/cibuildwheel.yml b/.github/workflows/cibuildwheel.yml index 60a6219..37a2149 100644 --- a/.github/workflows/cibuildwheel.yml +++ b/.github/workflows/cibuildwheel.yml @@ -25,14 +25,7 @@ jobs: - name: Install dependencies (macOS) if: runner.os == 'macOS' run: | - brew install uv - - - name: Cache vcpkg - if: runner.os == 'Windows' - uses: actions/cache@v4 - with: - path: C:\\vcpkg\\installed - key: vcpkg-openblas-${{ runner.os }} + brew install uv - name: Install cibuildwheel run: python -m pip install --upgrade pip cibuildwheel @@ -40,19 +33,6 @@ jobs: - name: Build wheels env: CIBW_ENVIRONMENT_MACOS: EASYSBA_USE_ACCELERATE=1 EASYSBA_LAPACK_LIBS= - CIBW_BEFORE_ALL_WINDOWS: >- - if not exist C:\vcpkg\vcpkg.exe ( - git clone https://github.com/microsoft/vcpkg.git C:\vcpkg && - C:\vcpkg\bootstrap-vcpkg.bat -disableMetrics - ) && - C:\vcpkg\vcpkg.exe install openblas:x64-windows - CIBW_ENVIRONMENT_WINDOWS: | - EASYSBA_LAPACK_LIBS=openblas - EASYSBA_INCLUDE_DIRS=C:\\vcpkg\\installed\\x64-windows\\include - EASYSBA_LIBRARY_DIRS=C:\\vcpkg\\installed\\x64-windows\\lib - INCLUDE=C:\\vcpkg\\installed\\x64-windows\\include - LIB=C:\\vcpkg\\installed\\x64-windows\\lib - PATH=C:\\vcpkg\\installed\\x64-windows\\bin;{PATH} run: python -m cibuildwheel --output-dir wheelhouse - name: Upload wheels diff --git a/pyproject.toml b/pyproject.toml index c9686db..b203888 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -23,4 +23,13 @@ before-all = "yum -y install openblas-devel lapack-devel" environment = { EASYSBA_USE_ACCELERATE = "1", EASYSBA_LAPACK_LIBS = "" } [tool.cibuildwheel.windows] -environment = { EASYSBA_LAPACK_LIBS = "openblas" } +before-build = [ + "curl -L https://github.com/OpenMathLib/OpenBLAS/releases/download/v0.3.26/OpenBLAS-0.3.26-x64.zip -o openblas.zip", + "powershell Expand-Archive openblas.zip -DestinationPath C:\\openblas -Force" +] +repair-wheel-command = "pip install delvewheel && delvewheel repair --add-path C:\\openblas\\bin -w {dest_dir} {wheel}" + +[tool.cibuildwheel.windows.environment] +EASYSBA_LAPACK_LIBS = "libopenblas" +EASYSBA_INCLUDE_DIRS = "C:\\openblas\\include" +EASYSBA_LIBRARY_DIRS = "C:\\openblas\\lib"