@@ -16,179 +16,179 @@ on:
1616 workflow_dispatch :
1717
1818jobs :
19- build_wheels_linux :
20- name : Build wheels on Linux
21- runs-on : ubuntu-latest
22- steps :
23- - uses : actions/checkout@v6
24-
25- - name : Set up Python
26- uses : actions/setup-python@v6
27- with :
28- python-version : " >=3.11.0"
29-
30- - name : Install cibuildwheel
31- run : pip install cibuildwheel==3.1.4
32-
33- - name : Build wheels
34- env :
35- CIBW_BUILD : " cp311-manylinux_x86_64 cp312-manylinux_x86_64 cp313-manylinux_x86_64 cp313t-manylinux_x86_64 cp314-manylinux_x86_64 cp314t-manylinux_x86_64"
36- CIBW_ENABLE : cpython-prerelease cpython-freethreading
37- CIBW_MANYLINUX_X86_64_IMAGE : manylinux_2_28
38- CIBW_BUILD_VERBOSITY : " 3"
39- CIBW_BEFORE_ALL : |
40- yum update -y
41- yum install -y cmake gcc gcc-c++ make git pkgconfig
42- CIBW_BEFORE_BUILD : |
43- pip install meson>=1.3.2 meson-python>=0.18.0 wheel ninja
44- pip install --pre --upgrade --timeout=60 --extra-index-url https://pypi.anaconda.org/scientific-python-nightly-wheels/simple numpy
45- CIBW_BUILD_FRONTEND : " pip; args: --no-build-isolation"
46- CIBW_ENVIRONMENT : >
47- LDFLAGS="-fopenmp"
48- CIBW_REPAIR_WHEEL_COMMAND : |
49- auditwheel repair -w {dest_dir} --plat manylinux_2_28_x86_64 {wheel}
50- CIBW_TEST_COMMAND : |
51- pip install --pre --upgrade --extra-index-url https://pypi.anaconda.org/scientific-python-nightly-wheels/simple numpy
52- pip install --no-deps {wheel}
53- pip install pytest pytest-run-parallel
54- if python -c "import sys; exit(0 if hasattr(sys, '_is_gil_enabled') and not sys._is_gil_enabled() else 1)"; then
55- pytest --parallel-threads=10 --iterations=10 {project}/tests
56- else
57- pytest -s {project}/tests
58- fi
59- CIBW_TEST_EXTRAS : " test"
60- run : |
61- python -m cibuildwheel --output-dir wheelhouse
62- working-directory : ./quaddtype
63-
64- - uses : actions/upload-artifact@v6
65- with :
66- path : ./quaddtype/wheelhouse/*.whl
67- name : wheels-linux
68-
69- build_wheels_macos :
70- name : Build wheels on ${{ matrix.os }}
71- runs-on : ${{ matrix.os }}
72- strategy :
73- matrix :
74- os : [macos-14, macos-15, macos-15-intel]
75-
76- steps :
77- - uses : actions/checkout@v6
78-
79- - name : Set up Python
80- uses : actions/setup-python@v6
81- with :
82- python-version : " >=3.11.0"
83-
84- - name : Install dependencies
85- run : |
86- packages="cmake libomp git"
87- echo "Remove preinstalled dependencies"
88- for pkg in $packages; do
89- brew uninstall --ignore-dependencies $pkg 2>/dev/null || true
90- done
91- brew cleanup
92- brew install $packages
93-
94- - name : Installing Python dependencies
95- run : |
96- pip install -U pip
97- pip install cibuildwheel==3.1.4
98- pip install pytest-run-parallel
99-
100- - name : Build wheels
101- env :
102- CIBW_BUILD : " cp311-* cp312-* cp313-* cp314-* cp313t-* cp314t-*"
103- CIBW_ENABLE : cpython-prerelease cpython-freethreading
104- # CIBW_ARCHS_MACOS: ${{ matrix.os == 'macos-13' && 'x86_64' || 'arm64' }}
105- CIBW_BUILD_VERBOSITY : " 3"
106- CIBW_BEFORE_BUILD : |
107- pip install meson>=1.3.2 meson-python>=0.18.0 wheel ninja
108- pip install --pre --upgrade --timeout=60 --extra-index-url https://pypi.anaconda.org/scientific-python-nightly-wheels/simple numpy
109- CIBW_BUILD_FRONTEND : " pip; args: --no-build-isolation"
110- CIBW_ENVIRONMENT : >
111- MACOSX_DEPLOYMENT_TARGET="${{ matrix.os == 'macos-14' && '14.0' || '15.0' }}"
112- CIBW_REPAIR_WHEEL_COMMAND : >
113- delocate-wheel --require-archs {delocate_archs} -w {dest_dir} -v {wheel}
114- CIBW_TEST_COMMAND : |
115- pip install --pre --upgrade --extra-index-url https://pypi.anaconda.org/scientific-python-nightly-wheels/simple numpy
116- pip install --no-deps {wheel}
117- pip install pytest pytest-run-parallel
118- if python -c "import sys; exit(0 if hasattr(sys, '_is_gil_enabled') and not sys._is_gil_enabled() else 1)"; then
119- pytest --parallel-threads=10 --iterations=10 {project}/tests
120- else
121- pytest -s {project}/tests
122- fi
123- CIBW_TEST_EXTRAS : " test"
124- run : |
125- python -m cibuildwheel --output-dir wheelhouse
126- working-directory : ./quaddtype
127-
128- - uses : actions/upload-artifact@v6
129- with :
130- path : ./quaddtype/wheelhouse/*.whl
131- name : wheels-${{ matrix.os }}
132-
133- # disabling QBLAS optimization for windows due to incompatibility with MSVC
134- build_wheels_windows :
135- name : Build wheels on Windows
136- runs-on : windows-latest
137- strategy :
138- matrix :
139- architecture : [x64]
140-
141- steps :
142- - uses : actions/checkout@v6
143-
144- - name : Setup MSVC
145- uses : ilammy/msvc-dev-cmd@v1
146- with :
147- arch : ${{ matrix.architecture }}
148-
149- - name : Set up Python
150- uses : actions/setup-python@v6
151- with :
152- python-version : " >=3.11.0"
153- architecture : ${{ matrix.architecture }}
154-
155- - name : Install CMake
156- uses : lukka/get-cmake@latest
157-
158- - name : Install build dependencies
159- shell : bash -l {0}
160- run : |
161- pip install -U pip
162- pip install cibuildwheel==3.1.4 ninja meson meson-python numpy delvewheel pytest
163-
164- - name : Build wheels
165- env :
166- CIBW_BUILD : " cp311-* cp312-* cp313-* cp314-* cp313t-* cp314t-*"
167- CIBW_ENABLE : cpython-prerelease cpython-freethreading
168- CIBW_ARCHS_WINDOWS : ${{ matrix.architecture == 'x86' && 'x86' || 'AMD64' }}
169- CIBW_BUILD_VERBOSITY : " 3"
170- DISTUTILS_USE_SDK : " 1"
171- MSSdk : " 1"
172- CIBW_BEFORE_BUILD : >-
173- pip install meson meson-python ninja wheel &&
174- pip install --pre --upgrade --timeout=60 --extra-index-url https://pypi.anaconda.org/scientific-python-nightly-wheels/simple numpy
175- CIBW_BUILD_FRONTEND : " pip; args: --no-build-isolation"
176- CIBW_ENVIRONMENT : >
177- CFLAGS="/DDISABLE_QUADBLAS $CFLAGS"
178- CXXFLAGS="/DDISABLE_QUADBLAS $CXXFLAGS"
179- CIBW_REPAIR_WHEEL_COMMAND : ' delvewheel repair -w {dest_dir} {wheel} --add-path C:\sleef\bin'
180- CIBW_TEST_COMMAND_WINDOWS : pip install --pre --upgrade --extra-index-url https://pypi.anaconda.org/scientific-python-nightly-wheels/simple numpy && pip install --no-deps {wheel} && pip install pytest pytest-run-parallel && pytest -s {project}/tests
181- CIBW_TEST_EXTRAS : test
182- shell : pwsh
183- run : |
184- python -m cibuildwheel --output-dir wheelhouse
185- if (-not (Test-Path wheelhouse/*.whl)) { throw "Wheel was not created" }
186- working-directory : ./quaddtype
187-
188- - uses : actions/upload-artifact@v6
189- with :
190- path : ./quaddtype/wheelhouse/*.whl
191- name : wheels-windows-${{ matrix.architecture }}
19+ # build_wheels_linux:
20+ # name: Build wheels on Linux
21+ # runs-on: ubuntu-latest
22+ # steps:
23+ # - uses: actions/checkout@v6
24+
25+ # - name: Set up Python
26+ # uses: actions/setup-python@v6
27+ # with:
28+ # python-version: ">=3.11.0"
29+
30+ # - name: Install cibuildwheel
31+ # run: pip install cibuildwheel==3.1.4
32+
33+ # - name: Build wheels
34+ # env:
35+ # CIBW_BUILD: "cp311-manylinux_x86_64 cp312-manylinux_x86_64 cp313-manylinux_x86_64 cp313t-manylinux_x86_64 cp314-manylinux_x86_64 cp314t-manylinux_x86_64"
36+ # CIBW_ENABLE: cpython-prerelease cpython-freethreading
37+ # CIBW_MANYLINUX_X86_64_IMAGE: manylinux_2_28
38+ # CIBW_BUILD_VERBOSITY: "3"
39+ # CIBW_BEFORE_ALL: |
40+ # yum update -y
41+ # yum install -y cmake gcc gcc-c++ make git pkgconfig
42+ # CIBW_BEFORE_BUILD: |
43+ # pip install meson>=1.3.2 meson-python>=0.18.0 wheel ninja
44+ # pip install --pre --upgrade --timeout=60 --extra-index-url https://pypi.anaconda.org/scientific-python-nightly-wheels/simple numpy
45+ # CIBW_BUILD_FRONTEND: "pip; args: --no-build-isolation"
46+ # CIBW_ENVIRONMENT: >
47+ # LDFLAGS="-fopenmp"
48+ # CIBW_REPAIR_WHEEL_COMMAND: |
49+ # auditwheel repair -w {dest_dir} --plat manylinux_2_28_x86_64 {wheel}
50+ # CIBW_TEST_COMMAND: |
51+ # pip install --pre --upgrade --extra-index-url https://pypi.anaconda.org/scientific-python-nightly-wheels/simple numpy
52+ # pip install --no-deps {wheel}
53+ # pip install pytest pytest-run-parallel
54+ # if python -c "import sys; exit(0 if hasattr(sys, '_is_gil_enabled') and not sys._is_gil_enabled() else 1)"; then
55+ # pytest --parallel-threads=10 --iterations=10 {project}/tests
56+ # else
57+ # pytest -s {project}/tests
58+ # fi
59+ # CIBW_TEST_EXTRAS: "test"
60+ # run: |
61+ # python -m cibuildwheel --output-dir wheelhouse
62+ # working-directory: ./quaddtype
63+
64+ # - uses: actions/upload-artifact@v6
65+ # with:
66+ # path: ./quaddtype/wheelhouse/*.whl
67+ # name: wheels-linux
68+
69+ # build_wheels_macos:
70+ # name: Build wheels on ${{ matrix.os }}
71+ # runs-on: ${{ matrix.os }}
72+ # strategy:
73+ # matrix:
74+ # os: [macos-14, macos-15, macos-15-intel]
75+
76+ # steps:
77+ # - uses: actions/checkout@v6
78+
79+ # - name: Set up Python
80+ # uses: actions/setup-python@v6
81+ # with:
82+ # python-version: ">=3.11.0"
83+
84+ # - name: Install dependencies
85+ # run: |
86+ # packages="cmake libomp git"
87+ # echo "Remove preinstalled dependencies"
88+ # for pkg in $packages; do
89+ # brew uninstall --ignore-dependencies $pkg 2>/dev/null || true
90+ # done
91+ # brew cleanup
92+ # brew install $packages
93+
94+ # - name: Installing Python dependencies
95+ # run: |
96+ # pip install -U pip
97+ # pip install cibuildwheel==3.1.4
98+ # pip install pytest-run-parallel
99+
100+ # - name: Build wheels
101+ # env:
102+ # CIBW_BUILD: "cp311-* cp312-* cp313-* cp314-* cp313t-* cp314t-*"
103+ # CIBW_ENABLE: cpython-prerelease cpython-freethreading
104+ # # CIBW_ARCHS_MACOS: ${{ matrix.os == 'macos-13' && 'x86_64' || 'arm64' }}
105+ # CIBW_BUILD_VERBOSITY: "3"
106+ # CIBW_BEFORE_BUILD: |
107+ # pip install meson>=1.3.2 meson-python>=0.18.0 wheel ninja
108+ # pip install --pre --upgrade --timeout=60 --extra-index-url https://pypi.anaconda.org/scientific-python-nightly-wheels/simple numpy
109+ # CIBW_BUILD_FRONTEND: "pip; args: --no-build-isolation"
110+ # CIBW_ENVIRONMENT: >
111+ # MACOSX_DEPLOYMENT_TARGET="${{ matrix.os == 'macos-14' && '14.0' || '15.0' }}"
112+ # CIBW_REPAIR_WHEEL_COMMAND: >
113+ # delocate-wheel --require-archs {delocate_archs} -w {dest_dir} -v {wheel}
114+ # CIBW_TEST_COMMAND: |
115+ # pip install --pre --upgrade --extra-index-url https://pypi.anaconda.org/scientific-python-nightly-wheels/simple numpy
116+ # pip install --no-deps {wheel}
117+ # pip install pytest pytest-run-parallel
118+ # if python -c "import sys; exit(0 if hasattr(sys, '_is_gil_enabled') and not sys._is_gil_enabled() else 1)"; then
119+ # pytest --parallel-threads=10 --iterations=10 {project}/tests
120+ # else
121+ # pytest -s {project}/tests
122+ # fi
123+ # CIBW_TEST_EXTRAS: "test"
124+ # run: |
125+ # python -m cibuildwheel --output-dir wheelhouse
126+ # working-directory: ./quaddtype
127+
128+ # - uses: actions/upload-artifact@v6
129+ # with:
130+ # path: ./quaddtype/wheelhouse/*.whl
131+ # name: wheels-${{ matrix.os }}
132+
133+ # # disabling QBLAS optimization for windows due to incompatibility with MSVC
134+ # build_wheels_windows:
135+ # name: Build wheels on Windows
136+ # runs-on: windows-latest
137+ # strategy:
138+ # matrix:
139+ # architecture: [x64]
140+
141+ # steps:
142+ # - uses: actions/checkout@v6
143+
144+ # - name: Setup MSVC
145+ # uses: ilammy/msvc-dev-cmd@v1
146+ # with:
147+ # arch: ${{ matrix.architecture }}
148+
149+ # - name: Set up Python
150+ # uses: actions/setup-python@v6
151+ # with:
152+ # python-version: ">=3.11.0"
153+ # architecture: ${{ matrix.architecture }}
154+
155+ # - name: Install CMake
156+ # uses: lukka/get-cmake@latest
157+
158+ # - name: Install build dependencies
159+ # shell: bash -l {0}
160+ # run: |
161+ # pip install -U pip
162+ # pip install cibuildwheel==3.1.4 ninja meson meson-python numpy delvewheel pytest
163+
164+ # - name: Build wheels
165+ # env:
166+ # CIBW_BUILD: "cp311-* cp312-* cp313-* cp314-* cp313t-* cp314t-*"
167+ # CIBW_ENABLE: cpython-prerelease cpython-freethreading
168+ # CIBW_ARCHS_WINDOWS: ${{ matrix.architecture == 'x86' && 'x86' || 'AMD64' }}
169+ # CIBW_BUILD_VERBOSITY: "3"
170+ # DISTUTILS_USE_SDK: "1"
171+ # MSSdk: "1"
172+ # CIBW_BEFORE_BUILD: >-
173+ # pip install meson meson-python ninja wheel &&
174+ # pip install --pre --upgrade --timeout=60 --extra-index-url https://pypi.anaconda.org/scientific-python-nightly-wheels/simple numpy
175+ # CIBW_BUILD_FRONTEND: "pip; args: --no-build-isolation"
176+ # CIBW_ENVIRONMENT: >
177+ # CFLAGS="/DDISABLE_QUADBLAS $CFLAGS"
178+ # CXXFLAGS="/DDISABLE_QUADBLAS $CXXFLAGS"
179+ # CIBW_REPAIR_WHEEL_COMMAND: 'delvewheel repair -w {dest_dir} {wheel} --add-path C:\sleef\bin'
180+ # CIBW_TEST_COMMAND_WINDOWS: pip install --pre --upgrade --extra-index-url https://pypi.anaconda.org/scientific-python-nightly-wheels/simple numpy && pip install --no-deps {wheel} && pip install pytest pytest-run-parallel && pytest -s {project}/tests
181+ # CIBW_TEST_EXTRAS: test
182+ # shell: pwsh
183+ # run: |
184+ # python -m cibuildwheel --output-dir wheelhouse
185+ # if (-not (Test-Path wheelhouse/*.whl)) { throw "Wheel was not created" }
186+ # working-directory: ./quaddtype
187+
188+ # - uses: actions/upload-artifact@v6
189+ # with:
190+ # path: ./quaddtype/wheelhouse/*.whl
191+ # name: wheels-windows-${{ matrix.architecture }}
192192
193193 build_sdist :
194194 name : Build SDist
0 commit comments