From e4a5f77de683578d85fe7621ebdaee76dd3df89c Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Sun, 7 Jan 2001 02:00:21 +0000 Subject: Update. 2001-01-05 H.J. Lu * 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. --- elf/dl-support.c | 23 ++++++++++------------- 1 file changed, 10 insertions(+), 13 deletions(-) (limited to 'elf/dl-support.c') 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 (); -- cgit v1.2.3