Add "-M" dependency generation to Slang.

Change-Id: I26d1daf1005de7b3ad297fba5ad0d85a1aab1e45
diff --git a/slang.h b/slang.h
index 84b94d3..a528a6c 100644
--- a/slang.h
+++ b/slang.h
@@ -46,6 +46,7 @@
 
  public:
   typedef enum {
+    OT_Dependency,
     OT_Assembly,
     OT_LLVMAssembly,
     OT_Bitcode,
@@ -92,6 +93,7 @@
   // Input file name
   std::string mInputFileName;
   std::string mOutputFileName;
+  std::string mDepTargetBCFileName;
 
   OutputType mOT;
 
@@ -147,6 +149,9 @@
     return mOutputFileName;
   }
 
+  bool setDepTargetBC(const char *targetBCFile);
+
+  int generateDepFile();
   int compile();
 
   inline const char *getErrorMessage() { return mDiagClient->str().c_str(); }