Blame external/pybind11/pybind11/__init__.py

Packit 534379
from ._version import version_info, __version__  # noqa: F401 imported but unused
Packit 534379
Packit 534379
Packit 534379
def get_include(user=False):
Packit 534379
    from distutils.dist import Distribution
Packit 534379
    import os
Packit 534379
    import sys
Packit 534379
Packit 534379
    # Are we running in a virtual environment?
Packit 534379
    virtualenv = hasattr(sys, 'real_prefix') or \
Packit 534379
        sys.prefix != getattr(sys, "base_prefix", sys.prefix)
Packit 534379
Packit 534379
    # Are we running in a conda environment?
Packit 534379
    conda = os.path.exists(os.path.join(sys.prefix, 'conda-meta'))
Packit 534379
Packit 534379
    if virtualenv:
Packit 534379
        return os.path.join(sys.prefix, 'include', 'site',
Packit 534379
                            'python' + sys.version[:3])
Packit 534379
    elif conda:
Packit 534379
        if os.name == 'nt':
Packit 534379
            return os.path.join(sys.prefix, 'Library', 'include')
Packit 534379
        else:
Packit 534379
            return os.path.join(sys.prefix, 'include')
Packit 534379
    else:
Packit 534379
        dist = Distribution({'name': 'pybind11'})
Packit 534379
        dist.parse_config_files()
Packit 534379
Packit 534379
        dist_cobj = dist.get_command_obj('install', create=True)
Packit 534379
Packit 534379
        # Search for packages in user's home directory?
Packit 534379
        if user:
Packit 534379
            dist_cobj.user = user
Packit 534379
            dist_cobj.prefix = ""
Packit 534379
        dist_cobj.finalize_options()
Packit 534379
Packit 534379
        return os.path.dirname(dist_cobj.install_headers)