Skip to content

Commit 5cb0267

Browse files
and2345Andreas Kunze
andauthored
feat: add capability to add clang and c++ include dirs per environment variable (#12)
Co-authored-by: Andreas Kunze <andreas.kunze@watttron.com>
1 parent 956b3f9 commit 5cb0267

File tree

1 file changed

+11
-3
lines changed

1 file changed

+11
-3
lines changed

pybind11_mkdoc/mkdoc_lib.py

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -306,15 +306,23 @@ def folder_version(d):
306306
if '-stdlib=libc++' in args:
307307
parameters.extend(['-isystem', os.path.join(llvm_dir, 'include', 'c++', 'v1')])
308308

309-
clang_include_dir = max(
310-
glob(os.path.join(llvm_dir, 'lib', 'clang', '*')
311-
), default=None, key=folder_version)
309+
if 'CLANG_INCLUDE_DIR' in os.environ:
310+
clang_include_dir = os.environ['CLANG_INCLUDE_DIR']
311+
else:
312+
clang_include_dir = max(
313+
glob(os.path.join(llvm_dir, 'lib', 'clang', '*')
314+
), default=None, key=folder_version)
312315

313316
parameters.extend(['-isystem', clang_include_dir])
314317

315318
# Add additional C++ include directories
316319
cpp_dirs = []
317320

321+
# capability to specify more cpp include dirs manually
322+
if 'CPP_INCLUDE_DIRS' in os.environ:
323+
cpp_dirs.extend([cpp_dir for cpp_dir in os.environ['CPP_INCLUDE_DIRS'].split()
324+
if os.path.exists(cpp_dir)])
325+
318326
cpp_dirs.append(max(
319327
glob('/usr/include/c++/*'
320328
), default=None, key=folder_version))

0 commit comments

Comments
 (0)