-
Notifications
You must be signed in to change notification settings - Fork 215
/
pyproject.toml
82 lines (76 loc) · 2.22 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]
requires = [
"setuptools >= 40",
"scikit-build",
"wheel",
"pybind11",
"pytest-runner",
]
[tool.cibuildwheel]
before-build = [
"""cmake \
-S . \
-B build \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
-DBUILD_TESTING=OFF \
-DBUILD_PYTHON=OFF \
-DBUILD_BIN=OFF \
""",
"""cmake \
--build build \
--parallel \
--target install \
--config Release \
""",
]
test-requires = "pytest"
# Copy out test folder to make sure that tests are runned against the wheel and
# not the source. Test assumes a relative path to the test-data directory, so
# copy that too. segyio's python test-suite doesn't follow common naming
# convensions for filenames. Hence pytest doesn't pick them up by default.
# If not for powershell on windows we could simply run 'pytest test/*.py'.
# Instead we copy setup.cfg which embeds the same pattern but doesn't rely on
# the shell.
test-command = [
"""python {project}/.github/utils.py copy -r \
--src {package}/test \
--dst tmptest/python/test \
""",
"""python {project}/.github/utils.py copy -r \
--src {project}/test-data \
--dst tmptest/test-data \
""",
"""python {project}/.github/utils.py copy \
--src {package}/setup.cfg \
--dst tmptest/python/setup.cfg \
""",
"""cd tmptest/python""",
"""pytest test""",
"""cd ../../""",
"""python {project}/.github/utils.py remove --paths tmptest""",
]
[tool.cibuildwheel.linux]
manylinux-x86_64-image = "manylinux2010"
[[tool.cibuildwheel.overrides]]
select = "cp3{9,10,11,12}*"
manylinux-x86_64-image = "manylinux2014"
[tool.cibuildwheel.macos]
before-build = [
"""sudo cmake \
-S . \
-B build \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
-DBUILD_TESTING=OFF \
-DBUILD_PYTHON=OFF \
-DBUILD_BIN=OFF \
""",
"""sudo cmake \
--build build \
--parallel \
--target install \
--config Release \
""",
]
environment = { CXXFLAGS="-L/usr/local/lib" }