@@ -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