Find clang's binary include paths.
In cases where we do not have 'installed' clang we should try to find the relevant include directories.
This commit is contained in:
parent
bfb4168dc9
commit
47aa5c23ef
@ -657,8 +657,17 @@ static void stringifyPreprocSetting(PreprocessorOptions& PPOpts,
|
||||
P.resize(ExeIncl.size());
|
||||
// Get foo/include
|
||||
llvm::sys::path::append(P, "include");
|
||||
if (llvm::sys::fs::is_directory(P.str()))
|
||||
if (llvm::sys::fs::is_directory(P.str())) {
|
||||
utils::AddIncludePaths(P.str(), HOpts, nullptr);
|
||||
llvm::sys::path::append(P, "clang");
|
||||
if (!llvm::sys::fs::is_directory(P.str())) {
|
||||
// LLVM is not installed. Try resolving clang from its usual location.
|
||||
P = llvm::sys::path::parent_path(P);
|
||||
llvm::sys::path::append(P, "..", "tools", "clang", "include");
|
||||
if (llvm::sys::fs::is_directory(P.str()))
|
||||
utils::AddIncludePaths(P.str(), HOpts, nullptr);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user