diff options
author | Eric Andersen <andersen@codepoet.org> | 2003-01-23 17:55:27 +0000 |
---|---|---|
committer | Eric Andersen <andersen@codepoet.org> | 2003-01-23 17:55:27 +0000 |
commit | a3560dc47b3cf2eef3ebf0e0c9765e11bdf66b6a (patch) | |
tree | b6a67f0d5748f0f69cb2b0a971e6f2c74da3065f /libc/sysdeps/linux/mips | |
parent | 100cc918a944bd0d40ecb2afc635f2b76d7cb577 (diff) |
Update architecture specific support to consistantly
generate a crt0 and crt1 file. Most arches still need
to be updated to call __uClibc_start_main() rather than
__uClibc_main().
Diffstat (limited to 'libc/sysdeps/linux/mips')
-rw-r--r-- | libc/sysdeps/linux/mips/Makefile | 7 | ||||
-rw-r--r-- | libc/sysdeps/linux/mips/crt0.S | 21 |
2 files changed, 14 insertions, 14 deletions
diff --git a/libc/sysdeps/linux/mips/Makefile b/libc/sysdeps/linux/mips/Makefile index 1fba4ef74..53b3031b8 100644 --- a/libc/sysdeps/linux/mips/Makefile +++ b/libc/sysdeps/linux/mips/Makefile @@ -1,7 +1,6 @@ # Makefile for uClibc # -# Copyright (C) 2001 by Lineo, inc. -# Copyright (C) 2000-2002 Erik Andersen <andersen@uclibc.org> +# Copyright (C) 2000-2003 Erik Andersen <andersen@uclibc.org> # # This program is free software; you can redistribute it and/or modify it under # the terms of the GNU Library General Public License as published by the Free @@ -16,10 +15,6 @@ # You should have received a copy of the GNU Library General Public License # along with this program; if not, write to the Free Software Foundation, Inc., # 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# Derived in part from the Linux-8086 C library, the GNU C Library, and several -# other sundry sources. Files within this library are copyright by their -# respective copyright holders. TOPDIR=../../../../ include $(TOPDIR)Rules.mak diff --git a/libc/sysdeps/linux/mips/crt0.S b/libc/sysdeps/linux/mips/crt0.S index fdb997b73..b24fe1d84 100644 --- a/libc/sysdeps/linux/mips/crt0.S +++ b/libc/sysdeps/linux/mips/crt0.S @@ -12,8 +12,19 @@ #include <sys/regdef.h> .text -.global __start -.type __start,@function + .global __start + .type __start,%function +#if defined L_crt0 || ! defined __UCLIBC_CTOR_DTOR__ + .type __uClibc_main,%function +#else + .weak _init + .weak _fini + .type __uClibc_start_main,%function +#endif +/* Stick in a dummy reference to main(), so that if an application + * is linking when the main() function is in a static library (.a) + * we can be sure that main() actually gets linked in */ + .type main,%function __start: #ifdef __PIC__ @@ -49,9 +60,3 @@ __start: hlt: b hlt -/* Stick in a dummy reference to main(), so that if an application - * is linking when the main() function is in a static library (.a) - * we can be sure that main() actually gets linked in */ -L_dummy_main_reference: - .long main - |