12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- # -*- coding: utf-8 -*-
- from __future__ import print_function
- import argparse
- import sys
- import sysconfig
- from .commands import get_include, get_cmake_dir
- def print_includes():
- # type: () -> None
- dirs = [
- sysconfig.get_path("include"),
- sysconfig.get_path("platinclude"),
- get_include(),
- ]
- # Make unique but preserve order
- unique_dirs = []
- for d in dirs:
- if d and d not in unique_dirs:
- unique_dirs.append(d)
- print(" ".join("-I" + d for d in unique_dirs))
- def main():
- # type: () -> None
- parser = argparse.ArgumentParser()
- parser.add_argument(
- "--includes",
- action="store_true",
- help="Include flags for both pybind11 and Python headers.",
- )
- parser.add_argument(
- "--cmakedir",
- action="store_true",
- help="Print the CMake module directory, ideal for setting -Dpybind11_ROOT in CMake.",
- )
- args = parser.parse_args()
- if not sys.argv[1:]:
- parser.print_help()
- if args.includes:
- print_includes()
- if args.cmakedir:
- print(get_cmake_dir())
- if __name__ == "__main__":
- main()
|