Skip to content

Commit 05d2d6c

Browse files
committed
enablign cibw free-thread
1 parent f12ff3c commit 05d2d6c

File tree

1 file changed

+125
-125
lines changed

1 file changed

+125
-125
lines changed

.github/workflows/build_wheels.yml

Lines changed: 125 additions & 125 deletions
Original file line numberDiff line numberDiff line change
@@ -16,64 +16,64 @@ on:
1616
workflow_dispatch:
1717

1818
jobs:
19-
build_wheels_linux:
20-
name: Build wheels on Linux
21-
runs-on: ubuntu-latest
22-
steps:
23-
- uses: actions/checkout@v3
24-
with:
25-
submodules: recursive
19+
# build_wheels_linux:
20+
# name: Build wheels on Linux
21+
# runs-on: ubuntu-latest
22+
# steps:
23+
# - uses: actions/checkout@v3
24+
# with:
25+
# submodules: recursive
2626

27-
- name: Set up Python
28-
uses: actions/setup-python@v4
29-
with:
30-
python-version: ">=3.11.0"
27+
# - name: Set up Python
28+
# uses: actions/setup-python@v4
29+
# with:
30+
# python-version: ">=3.11.0"
3131

32-
- name: Verify QuadBLAS submodule
33-
run: |
34-
ls -la quaddtype/numpy_quaddtype/QBLAS/
35-
ls -la quaddtype/numpy_quaddtype/QBLAS/include/quadblas/
32+
# - name: Verify QuadBLAS submodule
33+
# run: |
34+
# ls -la quaddtype/numpy_quaddtype/QBLAS/
35+
# ls -la quaddtype/numpy_quaddtype/QBLAS/include/quadblas/
3636

37-
- name: Install cibuildwheel
38-
run: pip install cibuildwheel==3.1.4
37+
# - name: Install cibuildwheel
38+
# run: pip install cibuildwheel==3.1.4
3939

40-
- name: Build wheels
41-
env:
42-
CIBW_BUILD: "cp310-manylinux_x86_64 cp311-manylinux_x86_64 cp312-manylinux_x86_64 cp313-manylinux_x86_64 cp314-manylinux_x86_64"
43-
CIBW_MANYLINUX_X86_64_IMAGE: manylinux_2_28
44-
CIBW_BUILD_VERBOSITY: "3"
45-
CIBW_BEFORE_ALL: |
46-
yum update -y
47-
yum install -y cmake gcc gcc-c++ make git pkgconfig
48-
# Install SLEEF in container
49-
git clone --branch 3.8 https://github.com/shibatch/sleef.git
50-
cd sleef
51-
cmake -S . -B build \
52-
-DSLEEF_BUILD_QUAD:BOOL=ON \
53-
-DSLEEF_BUILD_SHARED_LIBS:BOOL=ON \
54-
-DCMAKE_POSITION_INDEPENDENT_CODE=ON
55-
cmake --build build/ --clean-first -j
56-
cmake --install build --prefix /usr/local
57-
CIBW_ENVIRONMENT: >
58-
CFLAGS="-I/usr/local/include -I{project}/numpy_quaddtype/QBLAS/include $CFLAGS"
59-
CXXFLAGS="-I/usr/local/include -I{project}/numpy_quaddtype/QBLAS/include -fext-numeric-literals $CXXFLAGS"
60-
LDFLAGS="-L/usr/local/lib64 -L/usr/local/lib -Wl,-rpath,/usr/local/lib64 -Wl,-rpath,/usr/local/lib -fopenmp $LDFLAGS"
61-
LD_LIBRARY_PATH="/usr/local/lib64:/usr/local/lib:$LD_LIBRARY_PATH"
62-
PKG_CONFIG_PATH="/usr/local/lib64/pkgconfig:/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH"
63-
CIBW_REPAIR_WHEEL_COMMAND: |
64-
auditwheel repair -w {dest_dir} --plat manylinux_2_28_x86_64 {wheel}
65-
CIBW_TEST_COMMAND: |
66-
pip install {package}[test]
67-
pytest -s {project}/tests
68-
CIBW_TEST_EXTRAS: "test"
69-
run: |
70-
python -m cibuildwheel --output-dir wheelhouse
71-
working-directory: ./quaddtype
40+
# - name: Build wheels
41+
# env:
42+
# CIBW_BUILD: "cp310-manylinux_x86_64 cp311-manylinux_x86_64 cp312-manylinux_x86_64 cp313-manylinux_x86_64 cp314-manylinux_x86_64"
43+
# CIBW_MANYLINUX_X86_64_IMAGE: manylinux_2_28
44+
# CIBW_BUILD_VERBOSITY: "3"
45+
# CIBW_BEFORE_ALL: |
46+
# yum update -y
47+
# yum install -y cmake gcc gcc-c++ make git pkgconfig
48+
# # Install SLEEF in container
49+
# git clone --branch 3.8 https://github.com/shibatch/sleef.git
50+
# cd sleef
51+
# cmake -S . -B build \
52+
# -DSLEEF_BUILD_QUAD:BOOL=ON \
53+
# -DSLEEF_BUILD_SHARED_LIBS:BOOL=ON \
54+
# -DCMAKE_POSITION_INDEPENDENT_CODE=ON
55+
# cmake --build build/ --clean-first -j
56+
# cmake --install build --prefix /usr/local
57+
# CIBW_ENVIRONMENT: >
58+
# CFLAGS="-I/usr/local/include -I{project}/numpy_quaddtype/QBLAS/include $CFLAGS"
59+
# CXXFLAGS="-I/usr/local/include -I{project}/numpy_quaddtype/QBLAS/include -fext-numeric-literals $CXXFLAGS"
60+
# LDFLAGS="-L/usr/local/lib64 -L/usr/local/lib -Wl,-rpath,/usr/local/lib64 -Wl,-rpath,/usr/local/lib -fopenmp $LDFLAGS"
61+
# LD_LIBRARY_PATH="/usr/local/lib64:/usr/local/lib:$LD_LIBRARY_PATH"
62+
# PKG_CONFIG_PATH="/usr/local/lib64/pkgconfig:/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH"
63+
# CIBW_REPAIR_WHEEL_COMMAND: |
64+
# auditwheel repair -w {dest_dir} --plat manylinux_2_28_x86_64 {wheel}
65+
# CIBW_TEST_COMMAND: |
66+
# pip install {package}[test]
67+
# pytest -s {project}/tests
68+
# CIBW_TEST_EXTRAS: "test"
69+
# run: |
70+
# python -m cibuildwheel --output-dir wheelhouse
71+
# working-directory: ./quaddtype
7272

73-
- uses: actions/upload-artifact@v4
74-
with:
75-
path: ./quaddtype/wheelhouse/*.whl
76-
name: wheels-linux
73+
# - uses: actions/upload-artifact@v4
74+
# with:
75+
# path: ./quaddtype/wheelhouse/*.whl
76+
# name: wheels-linux
7777

7878
build_wheels_macos:
7979
name: Build wheels on ${{ matrix.os }}
@@ -126,7 +126,7 @@ jobs:
126126
- name: Build wheels
127127
env:
128128
CIBW_BUILD: "cp310-* cp311-* cp312-* cp313-* cp314-* cp313t-* cp314t-*"
129-
CIBW_FREE_THREADED_SUPPORT: true
129+
CIBW_ENABLE: cpython-prerelease cpython-freethreading
130130
CIBW_ARCHS_MACOS: ${{ matrix.os == 'macos-13' && 'x86_64' || 'arm64' }}
131131
CIBW_BUILD_VERBOSITY: "3"
132132
CIBW_ENVIRONMENT: >
@@ -156,86 +156,86 @@ jobs:
156156
name: wheels-${{ matrix.os }}
157157

158158
# disabling QBLAS optimization for windows due to incompatibility with MSVC
159-
build_wheels_windows:
160-
name: Build wheels on Windows
161-
runs-on: windows-latest
162-
strategy:
163-
matrix:
164-
architecture: [x64]
159+
# build_wheels_windows:
160+
# name: Build wheels on Windows
161+
# runs-on: windows-latest
162+
# strategy:
163+
# matrix:
164+
# architecture: [x64]
165165

166-
steps:
167-
- uses: actions/checkout@v3
168-
with:
169-
submodules: recursive
166+
# steps:
167+
# - uses: actions/checkout@v3
168+
# with:
169+
# submodules: recursive
170170

171-
- name: Setup MSVC
172-
uses: ilammy/msvc-dev-cmd@v1
173-
with:
174-
arch: ${{ matrix.architecture }}
171+
# - name: Setup MSVC
172+
# uses: ilammy/msvc-dev-cmd@v1
173+
# with:
174+
# arch: ${{ matrix.architecture }}
175175

176-
- name: Set up Python
177-
uses: actions/setup-python@v4
178-
with:
179-
python-version: ">=3.11.0"
180-
architecture: ${{ matrix.architecture }}
176+
# - name: Set up Python
177+
# uses: actions/setup-python@v4
178+
# with:
179+
# python-version: ">=3.11.0"
180+
# architecture: ${{ matrix.architecture }}
181181

182-
- name: Install CMake
183-
uses: lukka/get-cmake@latest
182+
# - name: Install CMake
183+
# uses: lukka/get-cmake@latest
184184

185-
- name: Verify QuadBLAS submodule
186-
shell: pwsh
187-
run: |
188-
Get-ChildItem quaddtype/numpy_quaddtype/QBLAS/
189-
Get-ChildItem quaddtype/numpy_quaddtype/QBLAS/include/quadblas/
185+
# - name: Verify QuadBLAS submodule
186+
# shell: pwsh
187+
# run: |
188+
# Get-ChildItem quaddtype/numpy_quaddtype/QBLAS/
189+
# Get-ChildItem quaddtype/numpy_quaddtype/QBLAS/include/quadblas/
190190

191-
- name: Clone and Build SLEEF
192-
shell: pwsh
193-
run: |
194-
git clone --branch 3.8 https://github.com/shibatch/sleef.git
195-
cd sleef
196-
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
197-
cmake --build build --config Release
198-
cmake --install build --prefix "C:/sleef" --config Release
191+
# - name: Clone and Build SLEEF
192+
# shell: pwsh
193+
# run: |
194+
# git clone --branch 3.8 https://github.com/shibatch/sleef.git
195+
# cd sleef
196+
# 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
197+
# cmake --build build --config Release
198+
# cmake --install build --prefix "C:/sleef" --config Release
199199

200-
- name: Install build dependencies
201-
shell: bash -l {0}
202-
run: |
203-
pip install -U pip
204-
pip install cibuildwheel==3.1.4 ninja meson meson-python numpy delvewheel pytest
200+
# - name: Install build dependencies
201+
# shell: bash -l {0}
202+
# run: |
203+
# pip install -U pip
204+
# pip install cibuildwheel==3.1.4 ninja meson meson-python numpy delvewheel pytest
205205

206-
- name: Build wheels
207-
env:
208-
CIBW_BUILD: "cp310-* cp311-* cp312-* cp313-* cp314-*"
209-
CIBW_SKIP: "pp* cp36-* cp37-* cp38-* cp39-*"
210-
CIBW_ARCHS_WINDOWS: ${{ matrix.architecture == 'x86' && 'x86' || 'AMD64' }}
211-
CIBW_BUILD_VERBOSITY: "3"
212-
DISTUTILS_USE_SDK: "1"
213-
MSSdk: "1"
214-
CIBW_BEFORE_BUILD: |
215-
pip install meson meson-python ninja numpy
216-
CIBW_ENVIRONMENT: >
217-
INCLUDE="C:/sleef/include;{project}/numpy_quaddtype/QBLAS/include;$INCLUDE"
218-
LIB="C:/sleef/lib;$LIB"
219-
PATH="C:/sleef/bin;$PATH"
220-
CFLAGS="/IC:/sleef/include /I{project}/numpy_quaddtype/QBLAS/include /DDISABLE_QUADBLAS $CFLAGS"
221-
CXXFLAGS="/IC:/sleef/include /I{project}/numpy_quaddtype/QBLAS/include /DDISABLE_QUADBLAS $CXXFLAGS"
222-
LDFLAGS="C:/sleef/lib/sleef.lib C:/sleef/lib/sleefquad.lib $LDFLAGS"
223-
CIBW_REPAIR_WHEEL_COMMAND: 'delvewheel repair -w {dest_dir} {wheel} --add-path C:\sleef\bin'
224-
CIBW_TEST_COMMAND: |
225-
pip install {package}[test]
226-
pytest -s {project}/tests
227-
CIBW_TEST_EXTRAS: test
228-
CIBW_TEST_FAIL_FAST: 1
229-
shell: pwsh
230-
run: |
231-
python -m cibuildwheel --output-dir wheelhouse
232-
if (-not (Test-Path wheelhouse/*.whl)) { throw "Wheel was not created" }
233-
working-directory: ./quaddtype
206+
# - name: Build wheels
207+
# env:
208+
# CIBW_BUILD: "cp310-* cp311-* cp312-* cp313-* cp314-*"
209+
# CIBW_SKIP: "pp* cp36-* cp37-* cp38-* cp39-*"
210+
# CIBW_ARCHS_WINDOWS: ${{ matrix.architecture == 'x86' && 'x86' || 'AMD64' }}
211+
# CIBW_BUILD_VERBOSITY: "3"
212+
# DISTUTILS_USE_SDK: "1"
213+
# MSSdk: "1"
214+
# CIBW_BEFORE_BUILD: |
215+
# pip install meson meson-python ninja numpy
216+
# CIBW_ENVIRONMENT: >
217+
# INCLUDE="C:/sleef/include;{project}/numpy_quaddtype/QBLAS/include;$INCLUDE"
218+
# LIB="C:/sleef/lib;$LIB"
219+
# PATH="C:/sleef/bin;$PATH"
220+
# CFLAGS="/IC:/sleef/include /I{project}/numpy_quaddtype/QBLAS/include /DDISABLE_QUADBLAS $CFLAGS"
221+
# CXXFLAGS="/IC:/sleef/include /I{project}/numpy_quaddtype/QBLAS/include /DDISABLE_QUADBLAS $CXXFLAGS"
222+
# LDFLAGS="C:/sleef/lib/sleef.lib C:/sleef/lib/sleefquad.lib $LDFLAGS"
223+
# CIBW_REPAIR_WHEEL_COMMAND: 'delvewheel repair -w {dest_dir} {wheel} --add-path C:\sleef\bin'
224+
# CIBW_TEST_COMMAND: |
225+
# pip install {package}[test]
226+
# pytest -s {project}/tests
227+
# CIBW_TEST_EXTRAS: test
228+
# CIBW_TEST_FAIL_FAST: 1
229+
# shell: pwsh
230+
# run: |
231+
# python -m cibuildwheel --output-dir wheelhouse
232+
# if (-not (Test-Path wheelhouse/*.whl)) { throw "Wheel was not created" }
233+
# working-directory: ./quaddtype
234234

235-
- uses: actions/upload-artifact@v4
236-
with:
237-
path: ./quaddtype/wheelhouse/*.whl
238-
name: wheels-windows-${{ matrix.architecture }}
235+
# - uses: actions/upload-artifact@v4
236+
# with:
237+
# path: ./quaddtype/wheelhouse/*.whl
238+
# name: wheels-windows-${{ matrix.architecture }}
239239

240240
publish_to_pypi:
241241
name: Publish to PyPI

0 commit comments

Comments
 (0)