Fix Config.h, Android.mk, and IsLittleEndianHost issue.

s/isLittleEndianHost()/IsLittleEndianHost

Change-Id: I7fdd467f65572c8c721cb58130ad9646e547a8af
diff --git a/include/mcld/Config/Config.h b/include/mcld/Config/Config.h
index 8cadee1..94946df 100644
--- a/include/mcld/Config/Config.h
+++ b/include/mcld/Config/Config.h
@@ -23,7 +23,16 @@
 # define MCLD_ON_WIN32 1
 #endif
 
-#define MCLD_VERSION "RockBull - 2.0.0"
+/* Target triple MCLinker will generate code for by default */
+#define MCLD_DEFAULT_TARGET_TRIPLE "x86_64-unknown-linux-gnu"
+
+/* MCLINKER version */
+#define MCLD_VERSION "2.3.0.RC-WhiteStone"
+
+
+/* Version number of package */
+#define VERSION "WhiteStone"
+
 
 #define MCLD_REGION_CHUNK_SIZE 32
 #define MCLD_NUM_OF_INPUTS 32
diff --git a/lib/Core/Android.mk b/lib/Core/Android.mk
index 2fd5781..8036cc5 100644
--- a/lib/Core/Android.mk
+++ b/lib/Core/Android.mk
@@ -8,9 +8,9 @@
   IRBuilder.cpp \
   InputTree.cpp \
   LinkerConfig.cpp  \
+  LinkerScript.cpp  \
   Linker.cpp \
   Module.cpp \
-  ScriptOptions.cpp \
   TargetOptions.cpp
 
 # For the host
diff --git a/lib/Fragment/FragmentLinker.cpp b/lib/Fragment/FragmentLinker.cpp
index 2a183b2..5a4b53f 100644
--- a/lib/Fragment/FragmentLinker.cpp
+++ b/lib/Fragment/FragmentLinker.cpp
@@ -231,7 +231,7 @@
 
   uint8_t* target_addr = pOutput + out_offset;
   // byte swapping if target and host has different endian, and then write back
-  if(llvm::sys::isLittleEndianHost() != m_Config.targets().isLittleEndian()) {
+  if(llvm::sys::IsLittleEndianHost != m_Config.targets().isLittleEndian()) {
      uint64_t tmp_data = 0;
 
      switch(pReloc.size(*m_Backend.getRelocator())) {
diff --git a/lib/LD/Android.mk b/lib/LD/Android.mk
index edba1b0..1f46a0b 100644
--- a/lib/LD/Android.mk
+++ b/lib/LD/Android.mk
@@ -37,7 +37,6 @@
   ResolveInfo.cpp \
   Resolver.cpp  \
   SectionData.cpp \
-  SectionRules.cpp \
   SectionSymbolSet.cpp \
   StaticResolver.cpp  \
   StubFactory.cpp  \
diff --git a/lib/LD/ELFReader.cpp b/lib/LD/ELFReader.cpp
index 6a9d8e4..f7b047f 100644
--- a/lib/LD/ELFReader.cpp
+++ b/lib/LD/ELFReader.cpp
@@ -91,7 +91,7 @@
     st_info  = symtab[idx].st_info;
     st_other = symtab[idx].st_other;
 
-    if (llvm::sys::isLittleEndianHost()) {
+    if (llvm::sys::IsLittleEndianHost) {
       st_name  = symtab[idx].st_name;
       st_value = symtab[idx].st_value;
       st_size  = symtab[idx].st_size;
@@ -222,7 +222,7 @@
     uint32_t r_offset = 0x0;
     uint32_t r_info   = 0x0;
     int32_t  r_addend = 0;
-    if (llvm::sys::isLittleEndianHost()) {
+    if (llvm::sys::IsLittleEndianHost) {
       r_offset = relaTab[idx].r_offset;
       r_info   = relaTab[idx].r_info;
       r_addend = relaTab[idx].r_addend;
@@ -258,7 +258,7 @@
   for (size_t idx=0; idx < entsize; ++idx) {
     uint32_t r_offset = 0x0;
     uint32_t r_info   = 0x0;
-    if (llvm::sys::isLittleEndianHost()) {
+    if (llvm::sys::IsLittleEndianHost) {
       r_offset = relTab[idx].r_offset;
       r_info   = relTab[idx].r_info;
     }
@@ -295,7 +295,7 @@
   llvm::ELF::Elf32_Ehdr* hdr =
                           reinterpret_cast<llvm::ELF::Elf32_Ehdr*>(pELFHeader);
 
-  if (llvm::sys::isLittleEndianHost())
+  if (llvm::sys::IsLittleEndianHost)
     return (hdr->e_machine == target().getInfo().machine());
   return (mcld::bswap16(hdr->e_machine) == target().getInfo().machine());
 }
@@ -306,7 +306,7 @@
   llvm::ELF::Elf32_Ehdr* hdr =
                           reinterpret_cast<llvm::ELF::Elf32_Ehdr*>(pELFHeader);
   uint32_t type = 0x0;
-  if (llvm::sys::isLittleEndianHost())
+  if (llvm::sys::IsLittleEndianHost)
     type = hdr->e_type;
   else
     type = mcld::bswap16(hdr->e_type);
@@ -338,7 +338,7 @@
   uint32_t shnum     = 0x0;
   uint32_t shstrtab  = 0x0;
 
-  if (llvm::sys::isLittleEndianHost()) {
+  if (llvm::sys::IsLittleEndianHost) {
     shoff     = ehdr->e_shoff;
     shentsize = ehdr->e_shentsize;
     shnum     = ehdr->e_shnum;
@@ -372,7 +372,7 @@
                                             shentsize);
     shdr = reinterpret_cast<llvm::ELF::Elf32_Shdr*>(shdr_region->start());
 
-    if (llvm::sys::isLittleEndianHost()) {
+    if (llvm::sys::IsLittleEndianHost) {
       sh_size = shdr->sh_size;
       sh_link = shdr->sh_link;
     }
@@ -397,7 +397,7 @@
 
   // get .shstrtab first
   shdr = &shdrTab[shstrtab];
-  if (llvm::sys::isLittleEndianHost()) {
+  if (llvm::sys::IsLittleEndianHost) {
     sh_offset = shdr->sh_offset;
     sh_size   = shdr->sh_size;
   }
@@ -415,7 +415,7 @@
 
   // create all LDSections, including first NULL section.
   for (size_t idx = 0; idx < shnum; ++idx) {
-    if (llvm::sys::isLittleEndianHost()) {
+    if (llvm::sys::IsLittleEndianHost) {
       sh_name      = shdrTab[idx].sh_name;
       sh_type      = shdrTab[idx].sh_type;
       sh_flags     = shdrTab[idx].sh_flags;
@@ -495,7 +495,7 @@
   uint16_t st_shndx = 0x0;
   st_info  = entry->st_info;
   st_other = entry->st_other;
-  if (llvm::sys::isLittleEndianHost()) {
+  if (llvm::sys::IsLittleEndianHost) {
     st_name  = entry->st_name;
     st_shndx = entry->st_shndx;
   }
@@ -557,7 +557,7 @@
     llvm::ELF::Elf32_Sword d_tag = 0x0;
     llvm::ELF::Elf32_Word d_val = 0x0;
 
-    if (llvm::sys::isLittleEndianHost()) {
+    if (llvm::sys::IsLittleEndianHost) {
       d_tag = dynamic[idx].d_tag;
       d_val = dynamic[idx].d_un.d_val;
     } else {
@@ -652,7 +652,7 @@
     st_info  = symtab[idx].st_info;
     st_other = symtab[idx].st_other;
 
-    if (llvm::sys::isLittleEndianHost()) {
+    if (llvm::sys::IsLittleEndianHost) {
       st_name  = symtab[idx].st_name;
       st_value = symtab[idx].st_value;
       st_size  = symtab[idx].st_size;
@@ -778,7 +778,7 @@
     uint64_t r_offset = 0x0;
     uint64_t r_info   = 0x0;
     int64_t  r_addend = 0;
-    if (llvm::sys::isLittleEndianHost()) {
+    if (llvm::sys::IsLittleEndianHost) {
       r_offset = relaTab[idx].r_offset;
       r_info   = relaTab[idx].r_info;
       r_addend = relaTab[idx].r_addend;
@@ -814,7 +814,7 @@
   for (size_t idx=0; idx < entsize; ++idx) {
     uint64_t r_offset = 0x0;
     uint64_t r_info   = 0x0;
-    if (llvm::sys::isLittleEndianHost()) {
+    if (llvm::sys::IsLittleEndianHost) {
       r_offset = relTab[idx].r_offset;
       r_info   = relTab[idx].r_info;
     }
@@ -851,7 +851,7 @@
   llvm::ELF::Elf64_Ehdr* hdr =
                           reinterpret_cast<llvm::ELF::Elf64_Ehdr*>(pELFHeader);
 
-  if (llvm::sys::isLittleEndianHost())
+  if (llvm::sys::IsLittleEndianHost)
     return (hdr->e_machine == target().getInfo().machine());
   return (mcld::bswap16(hdr->e_machine) == target().getInfo().machine());
 }
@@ -862,7 +862,7 @@
   llvm::ELF::Elf64_Ehdr* hdr =
                           reinterpret_cast<llvm::ELF::Elf64_Ehdr*>(pELFHeader);
   uint32_t type = 0x0;
-  if (llvm::sys::isLittleEndianHost())
+  if (llvm::sys::IsLittleEndianHost)
     type = hdr->e_type;
   else
     type = mcld::bswap16(hdr->e_type);
@@ -894,7 +894,7 @@
   uint32_t shnum     = 0x0;
   uint32_t shstrtab  = 0x0;
 
-  if (llvm::sys::isLittleEndianHost()) {
+  if (llvm::sys::IsLittleEndianHost) {
     shoff     = ehdr->e_shoff;
     shentsize = ehdr->e_shentsize;
     shnum     = ehdr->e_shnum;
@@ -928,7 +928,7 @@
                                             shentsize);
     shdr = reinterpret_cast<llvm::ELF::Elf64_Shdr*>(shdr_region->start());
 
-    if (llvm::sys::isLittleEndianHost()) {
+    if (llvm::sys::IsLittleEndianHost) {
       sh_size = shdr->sh_size;
       sh_link = shdr->sh_link;
     }
@@ -953,7 +953,7 @@
 
   // get .shstrtab first
   shdr = &shdrTab[shstrtab];
-  if (llvm::sys::isLittleEndianHost()) {
+  if (llvm::sys::IsLittleEndianHost) {
     sh_offset = shdr->sh_offset;
     sh_size   = shdr->sh_size;
   }
@@ -971,7 +971,7 @@
 
   // create all LDSections, including first NULL section.
   for (size_t idx = 0; idx < shnum; ++idx) {
-    if (llvm::sys::isLittleEndianHost()) {
+    if (llvm::sys::IsLittleEndianHost) {
       sh_name      = shdrTab[idx].sh_name;
       sh_type      = shdrTab[idx].sh_type;
       sh_flags     = shdrTab[idx].sh_flags;
@@ -1051,7 +1051,7 @@
   uint16_t st_shndx = 0x0;
   st_info  = entry->st_info;
   st_other = entry->st_other;
-  if (llvm::sys::isLittleEndianHost()) {
+  if (llvm::sys::IsLittleEndianHost) {
     st_name  = entry->st_name;
     st_shndx = entry->st_shndx;
   }
@@ -1113,7 +1113,7 @@
     llvm::ELF::Elf64_Sxword d_tag = 0x0;
     llvm::ELF::Elf64_Xword d_val = 0x0;
 
-    if (llvm::sys::isLittleEndianHost()) {
+    if (llvm::sys::IsLittleEndianHost) {
       d_tag = dynamic[idx].d_tag;
       d_val = dynamic[idx].d_un.d_val;
     } else {
diff --git a/lib/LD/GNUArchiveReader.cpp b/lib/LD/GNUArchiveReader.cpp
index 6324824..e391b20 100644
--- a/lib/LD/GNUArchiveReader.cpp
+++ b/lib/LD/GNUArchiveReader.cpp
@@ -265,7 +265,7 @@
 
     // read the number of symbols
     uint32_t number = 0;
-    if (llvm::sys::isLittleEndianHost())
+    if (llvm::sys::IsLittleEndianHost)
       number = mcld::bswap32(*data);
     else
       number = *data;
@@ -276,7 +276,7 @@
 
     // add the archive symbols
     for (uint32_t i = 0; i < number; ++i) {
-      if (llvm::sys::isLittleEndianHost())
+      if (llvm::sys::IsLittleEndianHost)
         pArchive.addSymbol(name, mcld::bswap32(*data));
       else
         pArchive.addSymbol(name, *data);
diff --git a/lib/LD/RelocationFactory.cpp b/lib/LD/RelocationFactory.cpp
index 8a065a8..bb56cdd 100644
--- a/lib/LD/RelocationFactory.cpp
+++ b/lib/LD/RelocationFactory.cpp
@@ -45,7 +45,7 @@
   DWord target_data = 0;
 
   // byte swapping if the host and target have different endian
-  if(llvm::sys::isLittleEndianHost() != m_pConfig->targets().isLittleEndian()) {
+  if(llvm::sys::IsLittleEndianHost != m_pConfig->targets().isLittleEndian()) {
      uint32_t tmp_data;
 
      switch (m_pConfig->targets().bitclass()) {
diff --git a/lib/Support/Android.mk b/lib/Support/Android.mk
index b503a3d..ce9c6f1 100644
--- a/lib/Support/Android.mk
+++ b/lib/Support/Android.mk
@@ -2,6 +2,7 @@
 
 mcld_support_SRC_FILES := \
   CommandLine.cpp \
+  DefSymParser.cpp \
   Directory.cpp \
   FileHandle.cpp  \
   FileSystem.cpp  \