forked from OSchip/llvm-project
[Driver] Search the toolchain dir with -print-file-name
This is useful when looking for directories or files relative to the toolchain root, e.g. include/c++/v1. This change also adds a test to make sure this functionality doesn't regress in the future. Differential Revision: https://reviews.llvm.org/D62558 llvm-svn: 361903
This commit is contained in:
parent
26212da555
commit
92d706eaca
|
@ -4437,6 +4437,11 @@ std::string Driver::GetFilePath(StringRef Name, const ToolChain &TC) const {
|
|||
if (llvm::sys::fs::exists(Twine(P)))
|
||||
return P.str();
|
||||
|
||||
SmallString<128> D(Dir);
|
||||
llvm::sys::path::append(D, "..", Name);
|
||||
if (llvm::sys::fs::exists(Twine(D)))
|
||||
return D.str();
|
||||
|
||||
if (auto P = SearchPaths(TC.getLibraryPaths()))
|
||||
return *P;
|
||||
|
||||
|
|
|
@ -0,0 +1,19 @@
|
|||
// Test that -print-file-name finds the correct file.
|
||||
|
||||
// RUN: %clang -print-file-name=share/asan_blacklist.txt 2>&1 \
|
||||
// RUN: -resource-dir=%S/Inputs/resource_dir \
|
||||
// RUN: --target=x86_64-linux-gnu \
|
||||
// RUN: | FileCheck --check-prefix=CHECK-RESOURCE-DIR %s
|
||||
// CHECK-RESOURCE-DIR: resource_dir{{/|\\\\}}share{{/|\\\\}}asan_blacklist.txt
|
||||
|
||||
// RUN: %clang -print-file-name=libclang_rt.builtins.a 2>&1 \
|
||||
// RUN: -resource-dir=%S/Inputs/resource_dir_with_per_target_subdir \
|
||||
// RUN: --target=x86_64-linux-gnu \
|
||||
// RUN: | FileCheck --check-prefix=CHECK-COMPILER-RT %s
|
||||
// CHECK-COMPILER-RT: resource_dir_with_per_target_subdir{{/|\\\\}}lib{{/|\\\\}}x86_64-linux-gnu{{/|\\\\}}libclang_rt.builtins.a
|
||||
|
||||
// RUN: %clang -print-file-name=include/c++/v1 2>&1 \
|
||||
// RUN: -ccc-install-dir %S/Inputs/basic_linux_libcxx_tree/usr/bin \
|
||||
// RUN: --target=x86_64-linux-gnu \
|
||||
// RUN: | FileCheck --check-prefix=CHECK-INSTALL-DIR %s
|
||||
// CHECK-INSTALL-DIR: basic_linux_libcxx_tree{{/|\\\\}}usr{{/|\\\\}}bin{{/|\\\\}}..{{/|\\\\}}include{{/|\\\\}}c++{{/|\\\\}}v1
|
Loading…
Reference in New Issue