about summary refs log tree commit diff
path: root/elf/dl-support.c
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2001-01-07 02:00:21 +0000
committerUlrich Drepper <drepper@redhat.com>2001-01-07 02:00:21 +0000
commite4a5f77de683578d85fe7621ebdaee76dd3df89c (patch)
tree9574d82850d01235549c30c0c68473371a741ef7 /elf/dl-support.c
parentbf798a9534d3d0a374f456dcf2a1b93f15b2849c (diff)
downloadglibc-e4a5f77de683578d85fe7621ebdaee76dd3df89c.tar.gz
glibc-e4a5f77de683578d85fe7621ebdaee76dd3df89c.tar.xz
glibc-e4a5f77de683578d85fe7621ebdaee76dd3df89c.zip
Update.
2001-01-05  H.J. Lu  <hjl@gnu.org>

	* elf/dl-support.c (non_dynamic_init): Move the auxiliary
	vector checking to ...
	(_dl_aux_init): Here. New function. Defined only if
	HAVE_AUX_VECTOR is defined.

	* sysdeps/generic/libc-start.c (__libc_start_main): Call
	_dl_aux_init for static binaries if HAVE_AUX_VECTOR is defined.

	* sysdeps/powerpc/elf/libc-start.c (__libc_start_main): Call
	_dl_aux_init.

	* sysdeps/unix/sysv/linux/ldsodefs.h (DL_FIND_AUXV): Removed.
	(HAVE_AUX_VECTOR): Defined.
	(_dl_aux_init): Declared.
Diffstat (limited to 'elf/dl-support.c')
-rw-r--r--elf/dl-support.c23
1 files changed, 10 insertions, 13 deletions
diff --git a/elf/dl-support.c b/elf/dl-support.c
index 05dcd05d5e..24f598c856 100644
--- a/elf/dl-support.c
+++ b/elf/dl-support.c
@@ -108,34 +108,31 @@ int _dl_starting_up = 1;
 __libc_lock_define_initialized_recursive (, _dl_load_lock)
 
 
+#ifdef HAVE_AUX_VECTOR
 extern int _dl_clktck;
 
-static void non_dynamic_init (int argc, char **argv, char **envp)
-  __attribute__ ((unused));
-
-static void
-non_dynamic_init (int argc, char **argv, char **envp)
+void
+internal_function
+_dl_aux_init (ElfW(auxv_t) *av)
 {
-#ifdef DL_FIND_AUXV
-  ElfW(auxv_t) *av;
-
-  DL_FIND_AUXV (av, envp);
-
   for (; av->a_type != AT_NULL; ++av)
     switch (av->a_type)
       {
       case AT_PAGESZ:
 	_dl_pagesize = av->a_un.a_val;
 	break;
-      case AT_PLATFORM:
-	_dl_platform = av->a_un.a_ptr;
-	break;
       case AT_CLKTCK:
 	_dl_clktck = av->a_un.a_val;
 	break;
       }
+}
 #endif
 
+static void non_dynamic_init (void) __attribute__ ((unused));
+
+static void
+non_dynamic_init (void)
+{
   if (!_dl_pagesize)
     _dl_pagesize = __getpagesize ();