bundle.pybind.specs

Submodules

Classes

PkgConfigSpec

This class defines the configuration options for the pkg-config dependency of a pybind11 extension module.

ModuleSpec

This class defines the configuration options required to build a pybind11 extension module.

ProjectSpec

Root configuration holding all ModuleConfig entries.

Package Contents

class bundle.pybind.specs.PkgConfigSpec(/, **data: Any)[source]

Bases: bundle.core.data.Data

This class defines the configuration options for the pkg-config dependency of a pybind11 extension module. .. attribute:: packages

A list of package names to be resolved using pkg-config.

type:

list[str]

extra_dirs

A list of directories to search for pkg-config files.

Type:

list[str]

packages: list[str] = None
extra_dirs: list[str] = None
class bundle.pybind.specs.ModuleSpec(/, **data: Any)[source]

Bases: bundle.core.data.Data

This class defines the configuration options required to build a pybind11 extension module. It encapsulates all relevant build parameters, such as source files, language standard, compiler and linker arguments, and package configuration dependencies.

name: str
sources: list[str]
language: str = 'c++'
cpp_std: str = '20'
pkgconfig: bundle.pybind.specs.PkgConfigSpec = None
include_dirs: list[str] = None
extra_compile_args: list[str] = None
class bundle.pybind.specs.ProjectSpec(/, **data: Any)[source]

Bases: bundle.core.data.Data

Root configuration holding all ModuleConfig entries.

modules: list[bundle.pybind.specs.module.ModuleSpec] = None