Skip to content

Commit 9e28e06

Browse files
committed
checking linux
1 parent d46a8f7 commit 9e28e06

File tree

1 file changed

+106
-101
lines changed

1 file changed

+106
-101
lines changed

.github/workflows/build_wheels.yml

Lines changed: 106 additions & 101 deletions
Original file line numberDiff line numberDiff line change
@@ -16,72 +16,9 @@ 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
26-
27-
# - name: Set up Python
28-
# uses: actions/setup-python@v4
29-
# with:
30-
# python-version: ">=3.11.0"
31-
32-
# - name: Verify QuadBLAS submodule
33-
# run: |
34-
# ls -la quaddtype/numpy_quaddtype/QBLAS/
35-
# ls -la quaddtype/numpy_quaddtype/QBLAS/include/quadblas/
36-
37-
# - name: Install cibuildwheel
38-
# run: pip install cibuildwheel==3.1.4
39-
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
72-
73-
# - uses: actions/upload-artifact@v4
74-
# with:
75-
# path: ./quaddtype/wheelhouse/*.whl
76-
# name: wheels-linux
77-
78-
build_wheels_macos:
79-
name: Build wheels on ${{ matrix.os }}
80-
runs-on: ${{ matrix.os }}
81-
strategy:
82-
matrix:
83-
os: [macos-13, macos-14]
84-
19+
build_wheels_linux:
20+
name: Build wheels on Linux
21+
runs-on: ubuntu-latest
8522
steps:
8623
- uses: actions/checkout@v3
8724
with:
@@ -92,52 +29,40 @@ jobs:
9229
with:
9330
python-version: ">=3.11.0"
9431

95-
- name: Install dependencies
96-
run: |
97-
brew install cmake libomp git
98-
99-
- name: Install SLEEF
100-
env:
101-
MACOSX_DEPLOYMENT_TARGET: ${{ matrix.os == 'macos-13' && '13.0' || '14.0' }}
102-
run: |
103-
git clone --branch 3.8 https://github.com/shibatch/sleef.git
104-
cd sleef
105-
cmake -S . -B build \
106-
-DSLEEF_BUILD_QUAD:BOOL=ON \
107-
-DSLEEF_BUILD_SHARED_LIBS:BOOL=ON \
108-
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
109-
-DCMAKE_OSX_DEPLOYMENT_TARGET=${{ matrix.os == 'macos-13' && '13.0' || '14.0' }} \
110-
-DCMAKE_INSTALL_RPATH="@loader_path/../lib" \
111-
-DCMAKE_BUILD_WITH_INSTALL_RPATH=ON
112-
cmake --build build/ --clean-first -j
113-
sudo cmake --install build --prefix /usr/local
114-
11532
- name: Verify QuadBLAS submodule
11633
run: |
11734
ls -la quaddtype/numpy_quaddtype/QBLAS/
11835
ls -la quaddtype/numpy_quaddtype/QBLAS/include/quadblas/
11936
120-
- name: Installing Python dependencies
121-
run: |
122-
pip install -U pip
123-
pip install cibuildwheel==3.1.4
124-
pip install pytest-run-parallel
37+
- name: Install cibuildwheel
38+
run: pip install cibuildwheel==3.1.4
12539

12640
- name: Build wheels
12741
env:
128-
CIBW_BUILD: "cp314-* cp313t-* cp314t-*"
42+
CIBW_BUILD: "cp310-manylinux_x86_64 cp311-manylinux_x86_64 cp312-manylinux_x86_64 cp313-manylinux_x86_64 cp313t-manylinux_x86_64 cp314-manylinux_x86_64 cp314t-manylinux_x86_64"
12943
CIBW_ENABLE: cpython-prerelease cpython-freethreading
130-
CIBW_ARCHS_MACOS: ${{ matrix.os == 'macos-13' && 'x86_64' || 'arm64' }}
44+
CIBW_MANYLINUX_X86_64_IMAGE: manylinux_2_28
13145
CIBW_BUILD_VERBOSITY: "3"
46+
CIBW_BEFORE_ALL: |
47+
yum update -y
48+
yum install -y cmake gcc gcc-c++ make git pkgconfig
49+
# Install SLEEF in container
50+
git clone --branch 3.8 https://github.com/shibatch/sleef.git
51+
cd sleef
52+
cmake -S . -B build \
53+
-DSLEEF_BUILD_QUAD:BOOL=ON \
54+
-DSLEEF_BUILD_SHARED_LIBS:BOOL=ON \
55+
-DCMAKE_POSITION_INDEPENDENT_CODE=ON
56+
cmake --build build/ --clean-first -j
57+
cmake --install build --prefix /usr/local
13258
CIBW_ENVIRONMENT: >
133-
MACOSX_DEPLOYMENT_TARGET="${{ matrix.os == 'macos-13' && '13.0' || '14.0' }}"
134-
DYLD_LIBRARY_PATH="/usr/local/lib:$DYLD_LIBRARY_PATH"
13559
CFLAGS="-I/usr/local/include -I{project}/numpy_quaddtype/QBLAS/include $CFLAGS"
136-
CXXFLAGS="-I/usr/local/include -I{project}/numpy_quaddtype/QBLAS/include $CXXFLAGS"
137-
LDFLAGS="-L/usr/local/lib $LDFLAGS"
138-
PKG_CONFIG_PATH="/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH"
139-
CIBW_REPAIR_WHEEL_COMMAND: >
140-
delocate-wheel --require-archs {delocate_archs} -w {dest_dir} -v {wheel}
60+
CXXFLAGS="-I/usr/local/include -I{project}/numpy_quaddtype/QBLAS/include -fext-numeric-literals $CXXFLAGS"
61+
LDFLAGS="-L/usr/local/lib64 -L/usr/local/lib -Wl,-rpath,/usr/local/lib64 -Wl,-rpath,/usr/local/lib -fopenmp $LDFLAGS"
62+
LD_LIBRARY_PATH="/usr/local/lib64:/usr/local/lib:$LD_LIBRARY_PATH"
63+
PKG_CONFIG_PATH="/usr/local/lib64/pkgconfig:/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH"
64+
CIBW_REPAIR_WHEEL_COMMAND: |
65+
auditwheel repair -w {dest_dir} --plat manylinux_2_28_x86_64 {wheel}
14166
CIBW_TEST_COMMAND: |
14267
pip install {package}[test]
14368
if python -c "import sys; exit(0 if hasattr(sys, '_is_gil_enabled') and not sys._is_gil_enabled() else 1)"; then
@@ -153,7 +78,87 @@ jobs:
15378
- uses: actions/upload-artifact@v4
15479
with:
15580
path: ./quaddtype/wheelhouse/*.whl
156-
name: wheels-${{ matrix.os }}
81+
name: wheels-linux
82+
83+
# build_wheels_macos:
84+
# name: Build wheels on ${{ matrix.os }}
85+
# runs-on: ${{ matrix.os }}
86+
# strategy:
87+
# matrix:
88+
# os: [macos-13, macos-14]
89+
90+
# steps:
91+
# - uses: actions/checkout@v3
92+
# with:
93+
# submodules: recursive
94+
95+
# - name: Set up Python
96+
# uses: actions/setup-python@v4
97+
# with:
98+
# python-version: ">=3.11.0"
99+
100+
# - name: Install dependencies
101+
# run: |
102+
# brew install cmake libomp git
103+
104+
# - name: Install SLEEF
105+
# env:
106+
# MACOSX_DEPLOYMENT_TARGET: ${{ matrix.os == 'macos-13' && '13.0' || '14.0' }}
107+
# run: |
108+
# git clone --branch 3.8 https://github.com/shibatch/sleef.git
109+
# cd sleef
110+
# cmake -S . -B build \
111+
# -DSLEEF_BUILD_QUAD:BOOL=ON \
112+
# -DSLEEF_BUILD_SHARED_LIBS:BOOL=ON \
113+
# -DCMAKE_POSITION_INDEPENDENT_CODE=ON \
114+
# -DCMAKE_OSX_DEPLOYMENT_TARGET=${{ matrix.os == 'macos-13' && '13.0' || '14.0' }} \
115+
# -DCMAKE_INSTALL_RPATH="@loader_path/../lib" \
116+
# -DCMAKE_BUILD_WITH_INSTALL_RPATH=ON
117+
# cmake --build build/ --clean-first -j
118+
# sudo cmake --install build --prefix /usr/local
119+
120+
# - name: Verify QuadBLAS submodule
121+
# run: |
122+
# ls -la quaddtype/numpy_quaddtype/QBLAS/
123+
# ls -la quaddtype/numpy_quaddtype/QBLAS/include/quadblas/
124+
125+
# - name: Installing Python dependencies
126+
# run: |
127+
# pip install -U pip
128+
# pip install cibuildwheel==3.1.4
129+
# pip install pytest-run-parallel
130+
131+
# - name: Build wheels
132+
# env:
133+
# CIBW_BUILD: "cp310-* cp311-* cp312-* cp313-* cp314-* cp313t-* cp314t-*"
134+
# CIBW_ENABLE: cpython-prerelease cpython-freethreading
135+
# CIBW_ARCHS_MACOS: ${{ matrix.os == 'macos-13' && 'x86_64' || 'arm64' }}
136+
# CIBW_BUILD_VERBOSITY: "3"
137+
# CIBW_ENVIRONMENT: >
138+
# MACOSX_DEPLOYMENT_TARGET="${{ matrix.os == 'macos-13' && '13.0' || '14.0' }}"
139+
# DYLD_LIBRARY_PATH="/usr/local/lib:$DYLD_LIBRARY_PATH"
140+
# CFLAGS="-I/usr/local/include -I{project}/numpy_quaddtype/QBLAS/include $CFLAGS"
141+
# CXXFLAGS="-I/usr/local/include -I{project}/numpy_quaddtype/QBLAS/include $CXXFLAGS"
142+
# LDFLAGS="-L/usr/local/lib $LDFLAGS"
143+
# PKG_CONFIG_PATH="/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH"
144+
# CIBW_REPAIR_WHEEL_COMMAND: >
145+
# delocate-wheel --require-archs {delocate_archs} -w {dest_dir} -v {wheel}
146+
# CIBW_TEST_COMMAND: |
147+
# pip install {package}[test]
148+
# if python -c "import sys; exit(0 if hasattr(sys, '_is_gil_enabled') and not sys._is_gil_enabled() else 1)"; then
149+
# pytest --parallel-threads=10 --iterations=10 {project}/tests
150+
# else
151+
# pytest -s {project}/tests
152+
# fi
153+
# CIBW_TEST_EXTRAS: "test"
154+
# run: |
155+
# python -m cibuildwheel --output-dir wheelhouse
156+
# working-directory: ./quaddtype
157+
158+
# - uses: actions/upload-artifact@v4
159+
# with:
160+
# path: ./quaddtype/wheelhouse/*.whl
161+
# name: wheels-${{ matrix.os }}
157162

158163
# disabling QBLAS optimization for windows due to incompatibility with MSVC
159164
# build_wheels_windows:

0 commit comments

Comments
 (0)