-
Notifications
You must be signed in to change notification settings - Fork 32
/
pyproject.toml
55 lines (46 loc) · 2.43 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
[build-system]
requires = ["setuptools>=42", "wheel", "cmake>=3.22", "pybind11-stubgen", "pyarrow>=10.0.1,<11"]
build-backend = "setuptools.build_meta"
[tool.pytest.ini_options]
minversion = "6.0"
addopts = ["-ra", "--showlocals", "--strict-markers", "--strict-config"]
xfail_strict = true
filterwarnings = ["error"]
testpaths = ["python/tests"]
[tool.cibuildwheel]
build-verbosity = 0
#manylinux-x86_64-image = "manylinux_2_28"
environment = "CMAKE_ARGS_F=/tmp/cmake_args"
before-all = [
"yum install -y wget python3-devel bzip2-devel libffi-devel zlib-devel perl-IPC-Cmd perl-Test-Simple",
]
before-build = [
# Removing the contents of previous builds from project if they exist
"cd {project}",
"rm -rf {project}/CMakeCache.txt {project}/build {project}/CMakeFiles.txt {project}/_deps",
"pip install pyarrow==10.0.1 auditwheel",
"export PYST=$(python -c 'import site; print(site.getsitepackages()[0])')",
# Install dependency using conan
"pip install cmake conan==1.60.1",
"conan profile new --detect default",
"conan profile update settings.compiler=gcc default",
"conan profile update settings.compiler.version=11 default",
"conan profile update settings.compiler.libcxx=libstdc++11 default",
"arch=$(rpm --eval '%{_arch}')",
"if [ $arch == 'x86_64' ]; then export package_name='ustore_deps_x86_linux_python'; elif [ $arch == 'aarch64' ]; then export package_name='ustore_deps_arm_linux_python'; fi",
"last_tag=$(curl https://api.github.com/repos/unum-cloud/ustore-deps/releases/latest | grep -i 'tag_name' | awk -F '\"' '{print $4}')",
"wget -q https://github.com/unum-cloud/ustore-deps/releases/download/${last_tag}/${package_name}.tar.gz",
"tar -xzf {project}/${package_name}.tar.gz -C ~/.conan",
"package_version=$(ls ~/.conan/data/ustore_deps/)",
"if [ $arch == 'x86_64' ]; then export package_arch='x86_linux'; elif [ $arch == 'aarch64' ]; then export package_arch='arm_linux'; fi",
"conan install ustore_deps/${package_version}@unum/${package_arch} -g cmake",
"rm -rf {project}/${package_name}.tar.gz",
"echo \"-DCMAKE_BUILD_TYPE=Release -DPYARROW_DIR=${PYST}/pyarrow/\" > ${CMAKE_ARGS_F}",
"mkdir -p build/ustore",
]
skip = ["*musllinux*", "*i686*", "pp*", "cp36-*"]
# test-command = "pytest {project}/python/tests/"
# test-requires = ["pandas"]
# test-extras = ["test"]
[tool.cibuildwheel.linux]
repair-wheel-command = "auditwheel repair --lib-sdir . -w {dest_dir} {wheel}"