NOTICE file and logn:
Apply changes to migrate to LLVM 2010 Nov 10th:

Change-Id: Ib8d3675b4701957f299f249ac72e8a43c2a6bc4c
diff --git a/slang.cpp b/slang.cpp
index 8127e5e..0672c06 100644
--- a/slang.cpp
+++ b/slang.cpp
@@ -25,6 +25,7 @@
 #include "clang/AST/ASTContext.h"
 
 #include "clang/Basic/FileManager.h"
+#include "clang/Basic/FileSystemOptions.h"
 #include "clang/Basic/LangOptions.h"
 #include "clang/Basic/SourceManager.h"
 #include "clang/Basic/TargetInfo.h"
@@ -55,6 +56,7 @@
 #include "llvm/Support/MemoryBuffer.h"
 #include "llvm/Support/ErrorHandling.h"
 #include "llvm/Support/ManagedStatic.h"
+#include "llvm/Support/ToolOutputFile.h"
 
 #include "llvm/System/Path.h"
 
@@ -198,16 +200,19 @@
 
 void Slang::createFileManager() {
   mFileMgr.reset(new clang::FileManager());
+  mFileSysOpt.reset(new clang::FileSystemOptions());
 }
 
 void Slang::createSourceManager() {
-  mSourceMgr.reset(new clang::SourceManager(*mDiagnostics));
+  mSourceMgr.reset(new clang::SourceManager(*mDiagnostics,
+                                            *mFileMgr,
+                                            *mFileSysOpt));
   return;
 }
 
 void Slang::createPreprocessor() {
   // Default only search header file in current dir
-  clang::HeaderSearch *HS = new clang::HeaderSearch(*mFileMgr);
+  clang::HeaderSearch *HS = new clang::HeaderSearch(*mFileMgr, *mFileSysOpt);
 
   mPP.reset(new clang::Preprocessor(*mDiagnostics,
                                     LangOpts,
@@ -223,7 +228,7 @@
   std::vector<clang::DirectoryLookup> SearchList;
   for (unsigned i = 0, e = mIncludePaths.size(); i != e; i++) {
     if (const clang::DirectoryEntry *DE =
-            mFileMgr->getDirectory(mIncludePaths[i])) {
+            mFileMgr->getDirectory(mIncludePaths[i], *mFileSysOpt)) {
       SearchList.push_back(clang::DirectoryLookup(DE,
                                                   clang::SrcMgr::C_System,
                                                   false,
@@ -308,7 +313,7 @@
 
   mSourceMgr->clearIDTables();
 
-  const clang::FileEntry *File = mFileMgr->getFile(InputFile);
+  const clang::FileEntry *File = mFileMgr->getFile(InputFile, *mFileSysOpt);
   if (File)
     mSourceMgr->createMainFileID(File);
 
@@ -428,7 +433,7 @@
   createPreprocessor();
   createASTContext();
 
-  mBackend.reset(createBackend(CodeGenOpts, mOS.get(), mOT));
+  mBackend.reset(createBackend(CodeGenOpts, &mOS->os(), mOT));
 
   // Inform the diagnostic client we are processing a source file
   mDiagClient->BeginSourceFile(LangOpts, mPP.get());