Skip to content

Commit 295d6a7

Browse files
committed
CI: add all other wheel build config files (unmodified from main repo)
1 parent b71b23f commit 295d6a7

File tree

10 files changed

+2995
-0
lines changed

10 files changed

+2995
-0
lines changed
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
name: Build Dependencies(Win-ARM64)
2+
description: "Setup LLVM for Win-ARM64 builds"
3+
4+
runs:
5+
using: "composite"
6+
steps:
7+
- name: Install LLVM with checksum verification
8+
shell: pwsh
9+
run: |
10+
Invoke-WebRequest https://github.com/llvm/llvm-project/releases/download/llvmorg-20.1.6/LLVM-20.1.6-woa64.exe -UseBasicParsing -OutFile LLVM-woa64.exe
11+
$expectedHash = "92f69a1134e32e54b07d51c6e24d9594852f6476f32c3d70471ae00fffc2d462"
12+
$fileHash = (Get-FileHash -Path "LLVM-woa64.exe" -Algorithm SHA256).Hash
13+
if ($fileHash -ne $expectedHash) {
14+
Write-Error "Checksum verification failed. The downloaded file may be corrupted or tampered with."
15+
exit 1
16+
}
17+
Start-Process -FilePath ".\LLVM-woa64.exe" -ArgumentList "/S" -Wait
18+
echo "C:\Program Files\LLVM\bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
19+
echo "CC=clang-cl" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
20+
echo "CXX=clang-cl" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
21+
echo "FC=flang-new" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
22+

cibuildwheel.toml

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
[tool.cibuildwheel]
2+
# Note: the below skip command doesn't do much currently, the platforms to
3+
# build wheels for in CI are controlled in `.github/workflows/wheels.yml` and
4+
# `tools/ci/cirrus_wheels.yml`.
5+
build-frontend = "build"
6+
skip = ["*_i686", "*_ppc64le", "*_s390x", "*_universal2"]
7+
before-build = "bash {project}/tools/wheels/cibw_before_build.sh {project}"
8+
before-test = "pip install -r {project}/requirements/test_requirements.txt"
9+
test-command = "bash {project}/tools/wheels/cibw_test_command.sh {project}"
10+
enable = ["cpython-freethreading", "pypy", "cpython-prerelease"]
11+
12+
# The build will use openblas64 everywhere, except on arm64 macOS >=14.0 (uses Accelerate)
13+
[tool.cibuildwheel.config-settings]
14+
setup-args = ["-Duse-ilp64=true", "-Dallow-noblas=false"]
15+
build-dir = "build"
16+
17+
[tool.cibuildwheel.linux]
18+
manylinux-x86_64-image = "manylinux_2_28"
19+
manylinux-aarch64-image = "manylinux_2_28"
20+
musllinux-x86_64-image = "musllinux_1_2"
21+
musllinux-aarch64-image = "musllinux_1_2"
22+
23+
[tool.cibuildwheel.linux.environment]
24+
# RUNNER_OS is a GitHub Actions specific env var; define it here so it works on Cirrus CI too
25+
RUNNER_OS="Linux"
26+
# /project will be the $PWD equivalent inside the docker used to build the wheel
27+
PKG_CONFIG_PATH="/project/.openblas"
28+
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/project/.openblas/lib"
29+
30+
[tool.cibuildwheel.macos]
31+
# universal2 wheels are not supported (see gh-21233), use `delocate-fuse` if you need them
32+
# note that universal2 wheels are not built, they're listed in the tool.cibuildwheel.skip
33+
# section
34+
# Not clear why the DYLD_LIBRARY_PATH is not passed through from the environment
35+
repair-wheel-command = [
36+
"export DYLD_LIBRARY_PATH=$PWD/.openblas/lib",
37+
"echo DYLD_LIBRARY_PATH $DYLD_LIBRARY_PATH",
38+
"delocate-wheel --require-archs {delocate_archs} -w {dest_dir} -v {wheel}",
39+
]
40+
41+
[tool.cibuildwheel.windows]
42+
config-settings = {setup-args = ["--vsenv", "-Dallow-noblas=false"], build-dir="build"}
43+
repair-wheel-command = "bash -el ./tools/wheels/repair_windows.sh {wheel} {dest_dir}"
44+
# This does not work, use CIBW_ENVIRONMENT_WINDOWS
45+
environment = {PKG_CONFIG_PATH="./.openblas"}
46+
47+
[[tool.cibuildwheel.overrides]]
48+
select = ["*-win32"]
49+
config-settings = {setup-args = ["--vsenv", "-Dallow-noblas=true"], build-dir="build"}
50+
repair-wheel-command = ""

0 commit comments

Comments
 (0)