@@ -145,111 +145,86 @@ jobs:
145145 path : ./quaddtype/wheelhouse/*.whl
146146 name : wheels-${{ matrix.os }}
147147
148- # build_wheels_windows:
149- # name: Build wheels on Windows
150- # runs-on: windows-latest
151- # strategy:
152- # matrix:
153- # architecture: [x64]
154-
155- # steps:
156- # - uses: actions/checkout@v3
157- # with:
158- # submodules: recursive
159-
160- # - name: Setup MSVC
161- # uses: ilammy/msvc-dev-cmd@v1
162- # with:
163- # arch: ${{ matrix.architecture }}
148+ build_wheels_windows :
149+ name : Build wheels on Windows
150+ runs-on : windows-latest
151+ strategy :
152+ matrix :
153+ architecture : [x64]
164154
165- # - name: Set up Python 3.10
166- # uses: actions/setup-python@v4
167- # with:
168- # python-version: "3.10"
169- # architecture: ${{ matrix.architecture }}
155+ steps :
156+ - uses : actions/checkout@v3
157+ with :
158+ submodules : recursive
170159
171- # - name: Install CMake
172- # uses: lukka/get-cmake@latest
160+ - name : Setup MSVC
161+ uses : ilammy/msvc-dev-cmd@v1
162+ with :
163+ arch : ${{ matrix.architecture }}
173164
174- # - name: Verify QuadBLAS submodule
175- # shell: pwsh
176- # run: |
177- # Get-ChildItem quaddtype/numpy_quaddtype/QBLAS/
178- # Get-ChildItem quaddtype/numpy_quaddtype/QBLAS/include/quadblas/
165+ - name : Set up Python 3.10
166+ uses : actions/setup-python@v4
167+ with :
168+ python-version : " 3.10 "
169+ architecture : ${{ matrix.architecture }}
179170
180- # - name: Clone and Build SLEEF
181- # shell: pwsh
182- # run: |
183- # git clone --branch 3.8 --depth 1 https://github.com/shibatch/sleef.git
184- # cd sleef
185- # cmake -S . -B build -G "Visual Studio 17 2022" -A ${{ matrix.architecture == 'x86' && 'Win32' || 'x64' }} -DSLEEF_BUILD_QUAD:BOOL=ON -DSLEEF_BUILD_SHARED_LIBS:BOOL=ON -DCMAKE_POSITION_INDEPENDENT_CODE=ON
186- # cmake --build build --config Release
187- # cmake --install build --prefix "C:/sleef" --config Release
171+ - name : Install CMake
172+ uses : lukka/get-cmake@latest
188173
189- # - name: Install QuadBLAS headers from submodule
190- # shell: pwsh
191- # run: |
192- # New-Item -ItemType Directory -Force -Path "C:/quadblas/include"
193- # Copy-Item -Recurse -Force " quaddtype/numpy_quaddtype/QBLAS/include/quadblas" "C:/quadblas/include/"
174+ - name : Verify QuadBLAS submodule
175+ shell : pwsh
176+ run : |
177+ Get-ChildItem quaddtype/numpy_quaddtype/QBLAS/
178+ Get-ChildItem quaddtype/numpy_quaddtype/QBLAS/include/quadblas/
194179
195- # - name: Setup build environment
196- # shell: pwsh
197- # run: |
198- # $env:INCLUDE += ";C:\sleef\include;C:\quadblas\include"
199- # $env:LIB += ";C:\sleef\lib"
200- # $env:PATH = "C:\sleef\bin;$env:PATH"
201- # echo "INCLUDE=$env:INCLUDE" >> $env:GITHUB_ENV
202- # echo "LIB=$env:LIB" >> $env:GITHUB_ENV
203- # echo "PATH=$env:PATH" >> $env:GITHUB_ENV
180+ - name : Clone and Build SLEEF
181+ shell : pwsh
182+ run : |
183+ git clone --branch 3.8 https://github.com/shibatch/sleef.git
184+ cd sleef
185+ cmake -S . -B build -G "Visual Studio 17 2022" -A ${{ matrix.architecture == 'x86' && 'Win32' || 'x64' }} -DSLEEF_BUILD_QUAD:BOOL=ON -DSLEEF_BUILD_SHARED_LIBS:BOOL=ON -DCMAKE_POSITION_INDEPENDENT_CODE=ON
186+ cmake --build build --config Release
187+ cmake --install build --prefix "C:/sleef" --config Release
204188
205- # - name: Install build dependencies
206- # shell: bash -l {0}
207- # run: |
208- # pip install -U pip
209- # pip install cibuildwheel==2.20.0 ninja meson meson-python numpy delvewheel pytest
189+ - name : Install build dependencies
190+ shell : bash -l {0}
191+ run : |
192+ pip install -U pip
193+ pip install cibuildwheel==2.20.0 ninja meson meson-python numpy delvewheel pytest
210194
211- # - name: Build wheels
212- # env:
213- # CIBW_BUILD: "cp310-* cp311-* cp312-*"
214- # CIBW_SKIP: "pp* cp36-* cp37-* cp38-* cp39-* cp313-*"
215- # CIBW_ARCHS_WINDOWS: ${{ matrix.architecture == 'x86' && 'x86' || 'AMD64' }}
216- # CIBW_BUILD_VERBOSITY: "3"
217- # DISTUTILS_USE_SDK: "1"
218- # MSSdk: "1"
219- # CIBW_BEFORE_ALL: |
220- # git clone --branch 3.8 --depth 1 https://github.com/shibatch/sleef.git
221- # cd sleef
222- # cmake -S . -B build -G "Visual Studio 17 2022" -A ${{ matrix.architecture == 'x86' && 'Win32' || 'x64' }} -DSLEEF_BUILD_QUAD:BOOL=ON -DSLEEF_BUILD_SHARED_LIBS:BOOL=ON -DCMAKE_POSITION_INDEPENDENT_CODE=ON
223- # cmake --build build --config Release
224- # cmake --install build --prefix "C:/sleef" --config Release
225- # cd ..
226- # mkdir -p C:/quadblas/include
227- # cp -r quaddtype/numpy_quaddtype/QBLAS/include/quadblas C:/quadblas/include/
228- # CIBW_BEFORE_BUILD: |
229- # pip install meson meson-python ninja numpy
230- # CIBW_ENVIRONMENT: >
231- # INCLUDE="C:/sleef/include;C:/quadblas/include;$INCLUDE"
232- # LIB="C:/sleef/lib;$LIB"
233- # PATH="C:/sleef/bin;$PATH"
234- # CFLAGS="/IC:/sleef/include /IC:/quadblas/include $CFLAGS"
235- # CXXFLAGS="/IC:/sleef/include /IC:/quadblas/include /std:c++17 $CXXFLAGS"
236- # LDFLAGS="C:/sleef/lib/sleef.lib C:/sleef/lib/sleefquad.lib $LDFLAGS"
237- # CIBW_REPAIR_WHEEL_COMMAND: 'delvewheel repair -w {dest_dir} {wheel} --add-path C:\sleef\bin'
238- # CIBW_TEST_COMMAND: |
239- # pip install {package}[test]
240- # python -m pytest -v {project}/test
241- # CIBW_TEST_EXTRAS: test
242- # CIBW_TEST_FAIL_FAST: 1
243- # shell: pwsh
244- # run: |
245- # python -m cibuildwheel --output-dir wheelhouse
246- # if (-not (Test-Path wheelhouse/*.whl)) { throw "Wheel was not created" }
247- # working-directory: ./quaddtype
195+ - name : Build wheels
196+ env :
197+ CIBW_BUILD : " cp310-* cp311-* cp312-*"
198+ CIBW_SKIP : " pp* cp36-* cp37-* cp38-* cp39-* cp313-*"
199+ CIBW_ARCHS_WINDOWS : ${{ matrix.architecture == 'x86' && 'x86' || 'AMD64' }}
200+ CIBW_BUILD_VERBOSITY : " 3"
201+ DISTUTILS_USE_SDK : " 1"
202+ MSSdk : " 1"
203+ CIBW_BEFORE_BUILD : |
204+ pip install meson meson-python ninja numpy
205+ CIBW_ENVIRONMENT : >
206+ INCLUDE="C:/sleef/include;{project}/numpy_quaddtype/QBLAS/include;$INCLUDE"
207+ LIB="C:/sleef/lib;$LIB"
208+ PATH="C:/sleef/bin;$PATH"
209+ CFLAGS="/IC:/sleef/include /I{project}/numpy_quaddtype/QBLAS/include $CFLAGS"
210+ CXXFLAGS="/IC:/sleef/include /I{project}/numpy_quaddtype/QBLAS/include $CXXFLAGS"
211+ LDFLAGS="C:/sleef/lib/sleef.lib C:/sleef/lib/sleefquad.lib $LDFLAGS"
212+ CIBW_REPAIR_WHEEL_COMMAND : ' delvewheel repair -w {dest_dir} {wheel} --add-path C:\sleef\bin'
213+ CIBW_TEST_COMMAND : |
214+ pip install {package}[test]
215+ pytest -s {project}/tests
216+ CIBW_TEST_EXTRAS : test
217+ CIBW_TEST_FAIL_FAST : 1
218+ shell : pwsh
219+ run : |
220+ python -m cibuildwheel --output-dir wheelhouse
221+ if (-not (Test-Path wheelhouse/*.whl)) { throw "Wheel was not created" }
222+ working-directory : ./quaddtype
248223
249- # - uses: actions/upload-artifact@v4
250- # with:
251- # path: ./quaddtype/wheelhouse/*.whl
252- # name: wheels-windows-${{ matrix.architecture }}
224+ - uses : actions/upload-artifact@v4
225+ with :
226+ path : ./quaddtype/wheelhouse/*.whl
227+ name : wheels-windows-${{ matrix.architecture }}
253228
254229 # publish_to_pypi:
255230 # name: Publish to PyPI
0 commit comments