From 51b99c1b9836f2e6967f1192f16fb639e127df2e Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Thu, 16 Mar 2017 09:02:13 -0700 Subject: [PATCH] clang: Prepend trailing '/' to sysroot This is needed to handle a case where clang isntall and target sysroot are perilously same e.g. sysroot = /mnt/clang/recipe-sysroot clang install = /mnt/clang/recipe-sysroot-native in this case it will mistakenly assume that clang is installed under the same sysroot dir and it will try to add relative ../lib paths to linker steps which would then be wrong since they will become relative to clang installation and not sysroot Upstream-Status: Pending Signed-off-by: Khem Raj --- clang/lib/Driver/ToolChains/Linux.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/clang/lib/Driver/ToolChains/Linux.cpp b/clang/lib/Driver/ToolChains/Linux.cpp index 2a58f876a68d..c68a842b45e0 100644 --- a/clang/lib/Driver/ToolChains/Linux.cpp +++ b/clang/lib/Driver/ToolChains/Linux.cpp @@ -184,7 +184,7 @@ Linux::Linux(const Driver &D, const llvm::Triple &Triple, const ArgList &Args) Multilibs = GCCInstallation.getMultilibs(); SelectedMultilib = GCCInstallation.getMultilib(); llvm::Triple::ArchType Arch = Triple.getArch(); - std::string SysRoot = computeSysRoot(); + std::string SysRoot = computeSysRoot() + "/"; ToolChain::path_list &PPaths = getProgramPaths(); Generic_GCC::PushPPaths(PPaths);