Driver: Fix include directories when not using libgcc under mingw
authorMartell Malone <martellmalone@gmail.com>
Thu, 13 Aug 2015 15:41:04 +0000 (15:41 +0000)
committerMartell Malone <martellmalone@gmail.com>
Thu, 13 Aug 2015 15:41:04 +0000 (15:41 +0000)
Summary:
When we want to use mingw-w64 and clang with compiler-rt we should not
need to have libgcc installed. This fixes finding includes when libgcc
is not installed

Reviewers: yaron.keren

Subscribers: cfe-commits

Differential Revision: http://reviews.llvm.org/D11808

llvm-svn: 244902

clang/lib/Driver/MinGWToolChain.cpp
clang/test/Driver/Inputs/mingw_clang_tree/mingw32/i686-w64-mingw32/include/.keep [new file with mode: 0644]
clang/test/Driver/Inputs/mingw_clang_tree/mingw32/include/.keep [new file with mode: 0644]
clang/test/Driver/mingw.cpp

index 6de2c50..938440b 100644 (file)
@@ -47,7 +47,7 @@ void MinGW::findGccLibDir() {
   Archs.emplace_back(getTriple().getArchName());
   Archs[0] += "-w64-mingw32";
   Archs.emplace_back("mingw32");
-  Arch = "unknown";
+  Arch = Archs[0].str();
   // lib: Arch Linux, Ubuntu, Windows
   // lib64: openSUSE Linux
   for (StringRef CandidateLib : {"lib", "lib64"}) {
diff --git a/clang/test/Driver/Inputs/mingw_clang_tree/mingw32/i686-w64-mingw32/include/.keep b/clang/test/Driver/Inputs/mingw_clang_tree/mingw32/i686-w64-mingw32/include/.keep
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/clang/test/Driver/Inputs/mingw_clang_tree/mingw32/include/.keep b/clang/test/Driver/Inputs/mingw_clang_tree/mingw32/include/.keep
new file mode 100644 (file)
index 0000000..e69de29
index 5625c88..b638a64 100644 (file)
@@ -1,3 +1,8 @@
+// RUN: %clang -target i686-windows-gnu -c -### --sysroot=%S/Inputs/mingw_clang_tree/mingw32 %s 2>&1 | FileCheck -check-prefix=CHECK_MINGW_CLANG_TREE %s\r
+// CHECK_MINGW_CLANG_TREE: "{{.*}}/Inputs/mingw_clang_tree/mingw32{{/|\\\\}}i686-w64-mingw32{{/|\\\\}}include"\r
+// CHECK_MINGW_CLANG_TREE: "{{.*}}/Inputs/mingw_clang_tree/mingw32{{/|\\\\}}include"\r
+\r
+\r
 // RUN: %clang -target i686-pc-windows-gnu -stdlib=libstdc++ -c -### --sysroot=%S/Inputs/mingw_mingw_org_tree/mingw %s 2>&1 | FileCheck -check-prefix=CHECK_MINGW_ORG_TREE %s\r
 // CHECK_MINGW_ORG_TREE: "{{.*}}/Inputs/mingw_mingw_org_tree/mingw{{/|\\\\}}lib{{/|\\\\}}gcc{{/|\\\\}}mingw32{{/|\\\\}}4.8.1{{/|\\\\}}include{{/|\\\\}}c++"\r
 // CHECK_MINGW_ORG_TREE: "{{.*}}/Inputs/mingw_mingw_org_tree/mingw{{/|\\\\}}lib{{/|\\\\}}gcc{{/|\\\\}}mingw32{{/|\\\\}}4.8.1{{/|\\\\}}include{{/|\\\\}}c++{{/|\\\\}}mingw32"\r