[tool.ivpm-build] Configuration Reference
ivpm-build reads its configuration from the [tool.ivpm-build]
section of pyproject.toml. All keys are optional; the defaults are safe
and backward-compatible.
Key |
Type |
Default |
Description |
|---|---|---|---|
|
bool |
|
When |
|
list[str] |
|
IVPM package names whose include / library directories should be injected into C/C++ extension descriptors. |
|
list of tables |
|
File or directory copy specifications (see below). |
|
list of tables |
|
Extension module rename specifications (see below). |
extra-data entries
Each entry is a TOML table with the following keys:
Key |
Description |
|---|---|
|
Destination Python package name (e.g. |
|
Source path, relative to the project root. Supports template variables (see below). |
|
Destination sub-directory inside the package
(e.g. |
Example:
[[tool.ivpm-build.extra-data]]
pkg = "myproject"
src = "build/{libdir}/{libpref}mylib{dllext}"
dst = "share"
ext-name-map entries
Rename an extension module’s output file after it is built. Useful when
CMake produces a shared library with a different naming convention than
setuptools expects.
Key |
Description |
|---|---|
|
Fully-qualified extension module name (e.g. |
|
Target filename. Supports template variables. |
Example:
[[tool.ivpm-build.ext-name-map]]
module = "myproject._core"
name = "{libpref}core{dllext}"
Template variables
The following variables are expanded in src and name fields:
Variable |
Expansion |
|---|---|
|
|
|
|
|
Same as |
|
|