mirror of
https://github.com/pybind/pybind11.git
synced 2024-11-22 05:05:11 +00:00
38 lines
1.2 KiB
Python
38 lines
1.2 KiB
Python
import os
|
|
|
|
DIR = os.path.abspath(os.path.dirname(__file__))
|
|
|
|
|
|
def get_include(user: bool = False) -> str: # noqa: ARG001
|
|
"""
|
|
Return the path to the pybind11 include directory. The historical "user"
|
|
argument is unused, and may be removed.
|
|
"""
|
|
installed_path = os.path.join(DIR, "include")
|
|
source_path = os.path.join(os.path.dirname(DIR), "include")
|
|
return installed_path if os.path.exists(installed_path) else source_path
|
|
|
|
|
|
def get_cmake_dir() -> str:
|
|
"""
|
|
Return the path to the pybind11 CMake module directory.
|
|
"""
|
|
cmake_installed_path = os.path.join(DIR, "share", "cmake", "pybind11")
|
|
if os.path.exists(cmake_installed_path):
|
|
return cmake_installed_path
|
|
|
|
msg = "pybind11 not installed, installation required to access the CMake files"
|
|
raise ImportError(msg)
|
|
|
|
|
|
def get_pkgconfig_dir() -> str:
|
|
"""
|
|
Return the path to the pybind11 pkgconfig directory.
|
|
"""
|
|
pkgconfig_installed_path = os.path.join(DIR, "share", "pkgconfig")
|
|
if os.path.exists(pkgconfig_installed_path):
|
|
return pkgconfig_installed_path
|
|
|
|
msg = "pybind11 not installed, installation required to access the pkgconfig files"
|
|
raise ImportError(msg)
|