Fixup pathnames.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@83443 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Driver/HostInfo.cpp b/lib/Driver/HostInfo.cpp
index 08c4ef4..22fe11d 100644
--- a/lib/Driver/HostInfo.cpp
+++ b/lib/Driver/HostInfo.cpp
@@ -42,7 +42,7 @@
   unsigned DarwinVersion[3];
 
   /// GCC version to use on this host.
-  unsigned GCCVersion[3];
+  unsigned GCCVersion[4];
 
   /// Cache of tool chains we have created.
   mutable llvm::DenseMap<unsigned, ToolChain*> ToolChains;
@@ -84,6 +84,12 @@
   GCCVersion[0] = 4;
   GCCVersion[1] = 2;
   GCCVersion[2] = 1;
+  // And we need to select the OS gcc was configured for, darwin10
+#ifdef OS_MAJOR
+  GCCVersion[3] = OS_MAJOR;
+#else
+  GCCVersion[3] = 10;
+#endif
 }
 
 DarwinHostInfo::~DarwinHostInfo() {
diff --git a/lib/Driver/Makefile b/lib/Driver/Makefile
index 6a31e5f..ef7bc60 100644
--- a/lib/Driver/Makefile
+++ b/lib/Driver/Makefile
@@ -11,10 +11,10 @@
 LIBRARYNAME := clangDriver
 BUILD_ARCHIVE = 1
 CXXFLAGS = -fno-rtti
-
+OS_MAJOR := -DOS_MAJOR=$(shell uname -r | sed 's/\..*//')
 # Don't install Clang libraries
 NO_INSTALL = 1
 
-CPPFLAGS += -I$(PROJ_SRC_DIR)/../../include -I$(PROJ_OBJ_DIR)/../../include
+CPPFLAGS += -I$(PROJ_SRC_DIR)/../../include -I$(PROJ_OBJ_DIR)/../../include $(OS_MAJOR)
 
 include $(LEVEL)/Makefile.common
diff --git a/lib/Driver/ToolChains.cpp b/lib/Driver/ToolChains.cpp
index a5a48ad..443ce80 100644
--- a/lib/Driver/ToolChains.cpp
+++ b/lib/Driver/ToolChains.cpp
@@ -46,17 +46,18 @@
 
 DarwinGCC::DarwinGCC(const HostInfo &Host, const llvm::Triple& Triple,
                      const unsigned (&DarwinVersion)[3],
-                     const unsigned (&_GCCVersion)[3], bool IsIPhoneOS)
+                     const unsigned (&_GCCVersion)[4], bool IsIPhoneOS)
   : Darwin(Host, Triple, DarwinVersion, IsIPhoneOS)
 {
   GCCVersion[0] = _GCCVersion[0];
   GCCVersion[1] = _GCCVersion[1];
   GCCVersion[2] = _GCCVersion[2];
+  GCCVersion[3] = _GCCVersion[3];
 
   // Set up the tool chain paths to match gcc.
 
   ToolChainDir = "i686-apple-darwin";
-  ToolChainDir += llvm::utostr(DarwinVersion[0]);
+  ToolChainDir += llvm::utostr(GCCVersion[3]);
   ToolChainDir += "/";
   ToolChainDir += llvm::utostr(GCCVersion[0]);
   ToolChainDir += '.';
diff --git a/lib/Driver/ToolChains.h b/lib/Driver/ToolChains.h
index 6088d96..5934be4 100644
--- a/lib/Driver/ToolChains.h
+++ b/lib/Driver/ToolChains.h
@@ -165,14 +165,14 @@
 /// DarwinGCC - The Darwin toolchain used by GCC.
 class VISIBILITY_HIDDEN DarwinGCC : public Darwin {
   /// GCC version to use.
-  unsigned GCCVersion[3];
+  unsigned GCCVersion[4];
 
   /// The directory suffix for this tool chain.
   std::string ToolChainDir;
 
 public:
   DarwinGCC(const HostInfo &Host, const llvm::Triple& Triple,
-            const unsigned (&DarwinVersion)[3], const unsigned (&GCCVersion)[3],
+            const unsigned (&DarwinVersion)[3], const unsigned (&GCCVersion)[4],
             bool IsIPhoneOS);
 
   /// @name Darwin ToolChain Implementation