Source code for skbuild.platform_specifics.cygwin

"""This module defines object specific to Cygwin platform."""

from __future__ import annotations

import sys
import textwrap

from . import abstract
from .abstract import CMakeGenerator


[docs] class CygwinPlatform(abstract.CMakePlatform): """Cygwin implementation of :class:`.abstract.CMakePlatform`.""" def __init__(self) -> None: super().__init__() self.default_generators = [CMakeGenerator("Ninja"), CMakeGenerator("Unix Makefiles")] @property def generator_installation_help(self) -> str: """Return message guiding the user for installing a valid toolchain.""" pyver = ".".join(str(v) for v in sys.version_info[:2]) return textwrap.dedent( f"""\ Building Cygwin wheels for Python {pyver} requires Cygwin packages ninja or make and compilers from e.g. gcc-core and gcc-g++. Get them here: https://cygwin.com/packages/package_list.html""" )