svn commit: trunk/uClibc/ldso: include ldso
vapier at uclibc.org
vapier at uclibc.org
Thu Nov 16 22:07:30 PST 2006
Author: vapier
Date: 2006-11-16 22:07:30 -0800 (Thu, 16 Nov 2006)
New Revision: 16549
Log:
Bernd Schmidt writes:
This reintroduces a mechanism identical to the DL_BOOT macro present in
older versions of uClibc. On Blackfin and FRV, we want to pass more
than one argument to _dl_start. We also want to do something special
before returning, so delete the warning when the START macro is defined.
Modified:
trunk/uClibc/ldso/include/dl-defs.h
trunk/uClibc/ldso/ldso/dl-startup.c
Changeset:
Modified: trunk/uClibc/ldso/include/dl-defs.h
===================================================================
--- trunk/uClibc/ldso/include/dl-defs.h 2006-11-17 05:55:24 UTC (rev 16548)
+++ trunk/uClibc/ldso/include/dl-defs.h 2006-11-17 06:07:30 UTC (rev 16549)
@@ -66,6 +66,12 @@
#endif
+/* Provide a means for a port to pass additional arguments to the _dl_start
+ function. */
+#ifndef DL_START
+# define DL_START(X) static void * __attribute_used__ _dl_start(X)
+#endif
+
/* Machines in which different sections may be relocated by different
* amounts should define this and LD_RELOC_ADDR. If you change this,
* make sure you change struct link_map in include/link.h accordingly
Modified: trunk/uClibc/ldso/ldso/dl-startup.c
===================================================================
--- trunk/uClibc/ldso/ldso/dl-startup.c 2006-11-17 05:55:24 UTC (rev 16548)
+++ trunk/uClibc/ldso/ldso/dl-startup.c 2006-11-17 06:07:30 UTC (rev 16549)
@@ -110,7 +110,7 @@
NULL
auxvt[0...N] Auxiliary Vector Table elements (mixed types)
*/
-static void * __attribute_used__ _dl_start(unsigned long args)
+DL_START(unsigned long args)
{
unsigned int argc;
char **argv, **envp;
@@ -313,7 +313,6 @@
#ifndef START
return _dl_elf_main;
#else
-#warning You need to update your arch ldso code
START();
#endif
}
More information about the uClibc-cvs
mailing list