For PR780:
1. Move IncludeFile.h to System library
2. Move IncludeFile.cpp to System library
3. #1 and #2 required to prevent cyclic library dependencies for libSystem
4. Convert all existing uses of Support/IncludeFile.h to System/IncludeFile.h
5. Add IncludeFile support to various lib/System classes.
6. Add new lib/System classes to LinkAllVMCore.h
All this in an attempt to pull in lib/System to what's required for VMCore


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29287 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/System/IncludeFile.cpp b/lib/System/IncludeFile.cpp
index d472917..2ba9595 100644
--- a/lib/System/IncludeFile.cpp
+++ b/lib/System/IncludeFile.cpp
@@ -1,4 +1,4 @@
-//===- lib/Support/IncludeFile.cpp - Ensure Linking Of Implementation -----===//
+//===- lib/System/IncludeFile.cpp - Ensure Linking Of Implementation -----===//
 //
 //                     The LLVM Compiler Infrastructure
 //
@@ -11,10 +11,10 @@
 //
 //===----------------------------------------------------------------------===//
 
-#include "llvm/Support/IncludeFile.h"
+#include "llvm/System/IncludeFile.h"
 
 using namespace llvm;
 
 // This constructor is used to ensure linking of other modules. See the
-// llvm/Support/IncludeFile.h header for details. 
+// llvm/System/IncludeFile.h header for details. 
 IncludeFile::IncludeFile(void*) {}
diff --git a/lib/System/Memory.cpp b/lib/System/Memory.cpp
index e951e3c..3788abe 100644
--- a/lib/System/Memory.cpp
+++ b/lib/System/Memory.cpp
@@ -14,6 +14,7 @@
 
 #include "llvm/System/Memory.h"
 #include "llvm/Config/config.h"
+#include "llvm/System/IncludeFile.h"
 
 namespace llvm {
 using namespace sys;
@@ -33,3 +34,4 @@
 #include "Win32/Memory.inc"
 #endif
 
+DEFINING_FILE_FOR(SystemMemory)
diff --git a/lib/System/Mutex.cpp b/lib/System/Mutex.cpp
index abcf77e..44e3332 100644
--- a/lib/System/Mutex.cpp
+++ b/lib/System/Mutex.cpp
@@ -13,6 +13,7 @@
 
 #include "llvm/Config/config.h"
 #include "llvm/System/Mutex.h"
+#include "llvm/System/IncludeFile.h"
 
 //===----------------------------------------------------------------------===//
 //=== WARNING: Implementation here must contain only TRULY operating system
@@ -157,3 +158,5 @@
 #warning Neither LLVM_ON_UNIX nor LLVM_ON_WIN32 was set in System/Mutex.cpp
 #endif
 #endif
+
+DEFINING_FILE_FOR(SystemMutex)