From f244f056898cc2c2597524327dbe129cfbfdb09a Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 18 Feb 2026 20:52:54 +0000 Subject: [PATCH 1/4] Initial plan From 8797f5115b11ff965ecc19df24024f6d4d43bf7b Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 18 Feb 2026 20:55:14 +0000 Subject: [PATCH 2/4] Move cibuildwheel Windows configuration to pyproject.toml Co-authored-by: alexlib <747110+alexlib@users.noreply.github.com> --- .github/workflows/cibuildwheel.yml | 27 --------------------------- pyproject.toml | 6 +++++- 2 files changed, 5 insertions(+), 28 deletions(-) diff --git a/.github/workflows/cibuildwheel.yml b/.github/workflows/cibuildwheel.yml index 60a6219..da238fd 100644 --- a/.github/workflows/cibuildwheel.yml +++ b/.github/workflows/cibuildwheel.yml @@ -22,37 +22,10 @@ jobs: with: python-version: "3.11" - - 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 }} - - name: Install cibuildwheel run: python -m pip install --upgrade pip cibuildwheel - 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..9940e62 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -23,4 +23,8 @@ 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-all = [ + "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", +] +environment = { EASYSBA_LAPACK_LIBS = "openblas", EASYSBA_INCLUDE_DIRS = "C:\\vcpkg\\installed\\x64-windows\\include", EASYSBA_LIBRARY_DIRS = "C:\\vcpkg\\installed\\x64-windows\\lib" } From 70aed21576e06517f9defd0502d89d75b8947867 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 18 Feb 2026 20:57:32 +0000 Subject: [PATCH 3/4] Fix Windows vcpkg setup and add caching Co-authored-by: alexlib <747110+alexlib@users.noreply.github.com> --- .github/workflows/cibuildwheel.yml | 9 +++++++++ pyproject.toml | 5 +---- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/.github/workflows/cibuildwheel.yml b/.github/workflows/cibuildwheel.yml index da238fd..ae409f4 100644 --- a/.github/workflows/cibuildwheel.yml +++ b/.github/workflows/cibuildwheel.yml @@ -22,6 +22,15 @@ jobs: with: python-version: "3.11" + - name: Cache vcpkg + if: runner.os == 'Windows' + uses: actions/cache@v4 + with: + path: C:\\vcpkg\\installed + key: vcpkg-openblas-${{ runner.os }}-${{ hashFiles('pyproject.toml') }} + restore-keys: | + vcpkg-openblas-${{ runner.os }}- + - name: Install cibuildwheel run: python -m pip install --upgrade pip cibuildwheel diff --git a/pyproject.toml b/pyproject.toml index 9940e62..0fa4e9d 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -23,8 +23,5 @@ before-all = "yum -y install openblas-devel lapack-devel" environment = { EASYSBA_USE_ACCELERATE = "1", EASYSBA_LAPACK_LIBS = "" } [tool.cibuildwheel.windows] -before-all = [ - "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", -] +before-all = "powershell -Command \"if (!(Test-Path 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\"" environment = { EASYSBA_LAPACK_LIBS = "openblas", EASYSBA_INCLUDE_DIRS = "C:\\vcpkg\\installed\\x64-windows\\include", EASYSBA_LIBRARY_DIRS = "C:\\vcpkg\\installed\\x64-windows\\lib" } From 5761f38a5e158e388028f7e680672cb0c14dbf3a Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 18 Feb 2026 20:58:48 +0000 Subject: [PATCH 4/4] Add documentation for Windows vcpkg configuration Co-authored-by: alexlib <747110+alexlib@users.noreply.github.com> --- pyproject.toml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pyproject.toml b/pyproject.toml index 0fa4e9d..0af5ef3 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -22,6 +22,12 @@ before-all = "yum -y install openblas-devel lapack-devel" [tool.cibuildwheel.macos] environment = { EASYSBA_USE_ACCELERATE = "1", EASYSBA_LAPACK_LIBS = "" } +# Windows configuration: Uses vcpkg to install OpenBLAS +# The before-all command: +# 1. Checks if vcpkg is already installed at C:\vcpkg +# 2. If not, clones and bootstraps vcpkg +# 3. Installs openblas for x64-windows architecture +# The environment variables point to the vcpkg installation paths for includes and libraries [tool.cibuildwheel.windows] before-all = "powershell -Command \"if (!(Test-Path 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\"" environment = { EASYSBA_LAPACK_LIBS = "openblas", EASYSBA_INCLUDE_DIRS = "C:\\vcpkg\\installed\\x64-windows\\include", EASYSBA_LIBRARY_DIRS = "C:\\vcpkg\\installed\\x64-windows\\lib" }