59 lines
1.7 KiB
TOML
59 lines
1.7 KiB
TOML
[build-system]
|
|
requires = [
|
|
"setuptools>=59.6",
|
|
"pybind11>=2.10.0",
|
|
"cmake>=3.22",
|
|
"numpy==1.25", # this is important to keep fixed. It also means anyone using something other than 1.25 won't be able to use this library
|
|
"wheel",
|
|
"ninja"
|
|
]
|
|
build-backend = "setuptools.build_meta"
|
|
|
|
[project]
|
|
name = "diskannpy"
|
|
version = "0.7.1"
|
|
|
|
description = "DiskANN Python extension module"
|
|
readme = "python/README.md"
|
|
requires-python = ">=3.9"
|
|
license = {text = "MIT License"}
|
|
dependencies = [
|
|
"numpy==1.25"
|
|
]
|
|
authors = [
|
|
{name = "Harsha Vardhan Simhadri", email = "harshasi@microsoft.com"},
|
|
{name = "Dax Pryce", email = "daxpryce@microsoft.com"}
|
|
]
|
|
|
|
[project.optional-dependencies]
|
|
dev = ["black", "isort", "mypy"]
|
|
|
|
[tool.setuptools]
|
|
package-dir = {"" = "python/src"}
|
|
|
|
[tool.isort]
|
|
profile = "black"
|
|
multi_line_output = 3
|
|
|
|
[tool.mypy]
|
|
plugins = "numpy.typing.mypy_plugin"
|
|
|
|
[tool.cibuildwheel]
|
|
manylinux-x86_64-image = "manylinux_2_28"
|
|
test-requires = ["scikit-learn~=1.2"]
|
|
build-frontend = "build"
|
|
skip = ["pp*", "*-win32", "*-manylinux_i686", "*-musllinux*"]
|
|
test-command = "python -m unittest discover {project}/python/tests"
|
|
|
|
[tool.cibuildwheel.linux]
|
|
before-build = [
|
|
"rpm --import https://repo.almalinux.org/almalinux/RPM-GPG-KEY-AlmaLinux",
|
|
"dnf makecache --refresh",
|
|
"dnf upgrade -y almalinux-release",
|
|
"dnf install -y epel-release",
|
|
"dnf config-manager -y --add-repo https://yum.repos.intel.com/mkl/setup/intel-mkl.repo",
|
|
"rpm --import https://yum.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB",
|
|
"dnf makecache --refresh -y",
|
|
"dnf install -y wget make cmake gcc-c++ libaio-devel gperftools-libs libunwind-devel clang-tools-extra boost-devel boost-program-options intel-mkl-2020.4-912"
|
|
]
|