[MIPS] Rewrite MIPS crtbegin* as C files.
This updates the MIPS arch to be much more in
sync with the commit Nick Kralevich made last
June; see 9d40326830c2bd407427889c554adeb915ee6b4a.
Rewrite
crtbegin.S -> crtbegin.c
crtbegin_so.S -> crtbegin_so.c
__dso_handle.S -> __dso_handle.c
__dso_handle_so.S -> __dso_handle_so.c
atexit.S -> atexit.c
Previously __do_global_dtors_aux was in the tasks
__FINI_ARRAY__ linked with crtbegin.S and it now being
removed as there is no need to call a destructor just
before terminating a process.
Shared libraries, on the other hand, are linked with
crtbegin_so.c and have a hidden destructor declared
to allow the bionic linker to call __on_dlclose().
Change-Id: Ieb4da5199b54573de05743990e309db381a11cb8
Signed-off-by: Pete Delaney <piet.delaney@imgtec.com>
Signed-off-by: Chao-Ying Fu <chao-ying.fu@imgtec.com>
Signed-off-by: Chris Dearman <chris.dearman@imgtec.com>
diff --git a/libc/Android.mk b/libc/Android.mk
index 0e93acd..4206020 100644
--- a/libc/Android.mk
+++ b/libc/Android.mk
@@ -573,7 +573,7 @@
libc_crt_target_so_cflags :=
endif
ifeq ($(TARGET_ARCH),mips)
- libc_crtbegin_extension := S
+ libc_crtbegin_extension := c
libc_crt_target_so_cflags := -fPIC
endif
ifeq ($(TARGET_ARCH),x86)