diff -u -r ../binutils-2.26/ld/emultempl/elf32.em ./ld/emultempl/elf32.em
--- ../binutils-2.26/ld/emultempl/elf32.em	2015-11-13 03:27:42.000000000 -0500
+++ ./ld/emultempl/elf32.em	2016-01-28 10:20:11.534910516 -0500
@@ -115,8 +115,13 @@
 static void
 gld${EMULATION_NAME}_after_parse (void)
 {
+#ifndef __ANDROID__
+  /* The Android linker does not support DF_1_PIE:
+     'unsupported flags DT_FLAGS_1=0x8000000'
+     from linker.cpp (see "case DT_FLAGS_1" there. */
   if (bfd_link_pie (&link_info))
     link_info.flags_1 |= (bfd_vma) DF_1_PIE;
+#endif
 
   after_parse_default ();
 }