Improve dependency file support.
 - Rip out various bits of logic from clang-cc's dependency file gen,
   force driver to provide instead.

 - -MD output now goes to proper location
<rdar://problem/6723948> clang -MD puts dep file in /tmp with wrong name

 - -M and -MM still don't work correctly.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68022 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Driver/Tools.h b/lib/Driver/Tools.h
index cbe7e99..7ad60ed 100644
--- a/lib/Driver/Tools.h
+++ b/lib/Driver/Tools.h
@@ -117,14 +117,16 @@
 
 namespace darwin {
   class VISIBILITY_HIDDEN CC1 : public Tool  {
+  public:
+    static const char *getBaseInputName(const ArgList &Args, 
+                                 const InputInfoList &Input);
+    static const char *getBaseInputStem(const ArgList &Args, 
+                                 const InputInfoList &Input);
+    static const char *getDependencyFileName(const ArgList &Args, 
+                                             const InputInfoList &Inputs);
+
   protected:
     const char *getCC1Name(types::ID Type) const;
-    const char *getBaseInputName(const ArgList &Args, 
-                                 const InputInfoList &Input) const;
-    const char *getBaseInputStem(const ArgList &Args, 
-                                 const InputInfoList &Input) const;
-    const char *getDependencyFileName(const ArgList &Args, 
-                                      const InputInfoList &Inputs) const;
 
     void AddCC1Args(const ArgList &Args, ArgStringList &CmdArgs) const;
     void AddCC1OptionsArgs(const ArgList &Args, ArgStringList &CmdArgs,