mirror of
https://sourceware.org/git/glibc.git
synced 2025-07-07 12:21:14 +03:00
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.
This commit is contained in:
@ -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 ();
|
||||
|
||||
|
Reference in New Issue
Block a user