//python/cc:py_cc_toolchain.bzl

Implementation of py_cc_toolchain rule.

NOTE: This is a beta-quality feature. APIs subject to change until https://github.com/bazelbuild/rules_python/issues/824 is considered done.

rule py_cc_toolchain(name, headers, libs, python_version)

A toolchain for a Python runtime’s C/C++ information (e.g. headers)

This rule carries information about the C/C++ side of a Python runtime, e.g. headers, shared libraries, etc.

Attributes:
  • name(Name)

    A unique name for this target.

    mandatory

  • headers(label)

    Target that provides the Python headers. Typically this is a cc_library target.

    mandatory

    Required providers: CcInfo

  • libs(label)

    Target that provides the Python runtime libraries for linking. Typically this is a cc_library target of .so files.

    mandatory

    Required providers: CcInfo

  • python_version(str)

    The Major.minor Python version, e.g. 3.11

    mandatory