Fix Android.mk and namespace prefix std.
diff --git a/Android.mk b/Android.mk
index b9a19c0..cad2966 100644
--- a/Android.mk
+++ b/Android.mk
@@ -229,7 +229,6 @@
   libLLVMCodeGen \
   libLLVMLinker \
   libLLVMJIT \
-  libLLVMTarget \
   libLLVMMC \
   libLLVMScalarOpts \
   libLLVMInstCombine \
@@ -237,6 +236,7 @@
   libLLVMipa \
   libLLVMTransformUtils \
   libLLVMCore \
+  libLLVMTarget \
   libLLVMSupport \
   libLLVMAnalysis
 
diff --git a/lib/CodeGen/CodeEmitter.cpp b/lib/CodeGen/CodeEmitter.cpp
index 2b7f9ea..7609315 100644
--- a/lib/CodeGen/CodeEmitter.cpp
+++ b/lib/CodeGen/CodeEmitter.cpp
@@ -1392,7 +1392,7 @@
   BufferBegin = CurBufferPtr = 0;
 
   if (F.getFunction()->hasName()) {
-    string const &name = F.getFunction()->getNameStr();
+    std::string const &name = F.getFunction()->getNameStr();
     mpResult->mEmittedFunctions[name] = mpCurEmitFunction;
     mpCurEmitFunction = NULL;
   }
diff --git a/lib/ExecutionEngine/Compiler.cpp b/lib/ExecutionEngine/Compiler.cpp
index 27da775..37cb8e1 100644
--- a/lib/ExecutionEngine/Compiler.cpp
+++ b/lib/ExecutionEngine/Compiler.cpp
@@ -256,8 +256,8 @@
   size_t found1 = objPath.rfind("@");
 
   if (found0 == found1 ||
-      found0 == string::npos ||
-      found1 == string::npos) {
+      found0 == std::string::npos ||
+      found1 == std::string::npos) {
     LOGE("Ill formatted resource name '%s'. The name should contain 2 @s",
          objPath.c_str());
     return false;
diff --git a/lib/ExecutionEngine/Script.cpp b/lib/ExecutionEngine/Script.cpp
index 1019568..0dbb8b6 100644
--- a/lib/ExecutionEngine/Script.cpp
+++ b/lib/ExecutionEngine/Script.cpp
@@ -253,7 +253,7 @@
 
 int Script::internalCompile() {
   // Create the ScriptCompiled object
-  mCompiled = new (nothrow) ScriptCompiled(this);
+  mCompiled = new (std::nothrow) ScriptCompiled(this);
 
   if (!mCompiled) {
     mErrorCode = BCC_OUT_OF_MEMORY;