-
Notifications
You must be signed in to change notification settings - Fork 34
/
Copy pathpyproject.toml
82 lines (74 loc) · 2.27 KB
/
pyproject.toml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
[build-system]
build-backend = 'mesonpy'
requires = [
"numpy >= 2.0.0; python_version > '3.8'",
"oldest-supported-numpy; python_version <= '3.8'",
"meson-python"
]
[project]
name = 'scs'
version = "3.2.7"
description = 'Splitting conic solver'
readme = 'README.md'
requires-python = '>=3.7'
license = {file = 'LICENSE'}
authors = [
{name = "Brendan O'Donoghue", email = "[email protected]"}]
dependencies = [
'numpy',
'scipy',
]
[tool.cibuildwheel]
# Load SCS source submodule, already done in CI/CD
before-all = "git submodule update --init"
skip = [
"pp*", # Disable building PyPy wheels on all platforms
"*-win32", # fails on locating Python headers, probably meson.build is misconfigured
"cp37*musllinux*", # doesn't install, Scipy seems to be broken
"cp38*musllinux*", # doesn't install, Scipy seems to be broken
"*musllinux*aarch64*" # no Scipy wheels for this
]
# Test
test-requires = "pytest"
test-command = [
"echo wheel installed successfully",
"pytest {package}/test",
]
# we use the newer image for aarch64, for this there are openblas dev libraries
manylinux-aarch64-image = "manylinux_2_28"
[tool.cibuildwheel.linux]
archs = [
"x86_64",
"aarch64",
# "i686", # various issues, may work with some more testing
# "s390x", # haven't tried it
# "ppc64le", # haven't tried it
# "armv7l", # haven't tried it
]
[tool.cibuildwheel.windows]
# This will probably become default in newer cibuildwheels versions
repair-wheel-command = [
"pip install delvewheel",
"delvewheel repair -w {dest_dir} {wheel}"
]
# Openblas installation for 3 different linux images
[[tool.cibuildwheel.overrides]]
select = "*-manylinux_x86_64"
inherit.before-all = "append"
before-all = [
# "yum check-update", "yum search blas",
# netlib blas/lapack fallback compiles and tests (on aarch64) but is super slow
# "((yum install -y openblas-devel) || (yum install -y blas-devel lapack-devel))",
"yum install -y openblas-devel"]
[[tool.cibuildwheel.overrides]]
select = "*-manylinux_aarch64"
inherit.before-all = "append"
before-all = [
# "dnf update", "dnf search blas",
"dnf install -y openblas-devel"]
[[tool.cibuildwheel.overrides]]
select = "*-musllinux*"
inherit.before-all = "append"
before-all = [
# "apk update", "apk search -v '*blas*'",
"apk add openblas-dev"]