Skip to content

Commit

Permalink
Update.
Browse files Browse the repository at this point in the history
2002-02-24  Ulrich Drepper  <drepper@redhat.com>

	* elf/dl-support.c (_dl_non_dynamic_init): Renamed from
	non_dynamic_init and exported now.
	* sysdeps/unix/sysv/linux/ldsodefs.h: Declare _dl_non_dynamic_init.
	* sysdeps/unix/sysv/linux/init-first.c: Call _dl_non_dynamic_init for
	!SHARED.
	* sysdeps/mach/hurd/i386/init-first.c: Likewise.
	* sysdeps/mach/hurd/powerpc/init-first.c: Likewise.
	* sysdeps/mach/hurd/mips/init-first.c: Likewise.
  • Loading branch information
Ulrich Drepper committed Feb 24, 2002
1 parent 69f0c4d commit d417e0f
Show file tree
Hide file tree
Showing 7 changed files with 41 additions and 5 deletions.
11 changes: 11 additions & 0 deletions ChangeLog
Original file line number Diff line number Diff line change
@@ -1,3 +1,14 @@
2002-02-24 Ulrich Drepper <drepper@redhat.com>

* elf/dl-support.c (_dl_non_dynamic_init): Renamed from
non_dynamic_init and exported now.
* sysdeps/unix/sysv/linux/ldsodefs.h: Declare _dl_non_dynamic_init.
* sysdeps/unix/sysv/linux/init-first.c: Call _dl_non_dynamic_init for
!SHARED.
* sysdeps/mach/hurd/i386/init-first.c: Likewise.
* sysdeps/mach/hurd/powerpc/init-first.c: Likewise.
* sysdeps/mach/hurd/mips/init-first.c: Likewise.

2002-02-23 Ulrich Drepper <drepper@redhat.com>

* elf/dl-close.c (free_slotinfo): Check for end of list and return
Expand Down
8 changes: 4 additions & 4 deletions elf/dl-support.c
Original file line number Diff line number Diff line change
Expand Up @@ -177,10 +177,10 @@ _dl_aux_init (ElfW(auxv_t) *av)
}
#endif

static void non_dynamic_init (void) __attribute__ ((unused));

static void
non_dynamic_init (void)
void
internal_function
_dl_non_dynamic_init (void)
{
if (HP_TIMING_AVAIL)
HP_TIMING_NOW (_dl_cpuclock_offset);
Expand Down Expand Up @@ -228,7 +228,7 @@ non_dynamic_init (void)
if (_dl_platform != NULL)
_dl_platformlen = strlen (_dl_platform);
}
text_set_element (__libc_subinit, non_dynamic_init);


const struct r_strlenpair *
internal_function
Expand Down
6 changes: 6 additions & 0 deletions sysdeps/mach/hurd/i386/init-first.c
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,9 @@ extern void __init_misc (int, char **, char **);
#ifdef USE_NONOPTION_FLAGS
extern void __getopt_clean_environment (char **);
#endif
#ifndef SHARED
extern void _dl_non_dynamic_init (void) internal_function;
#endif
extern void __libc_global_ctors (void);

unsigned int __hurd_threadvar_max;
Expand Down Expand Up @@ -65,6 +68,9 @@ posixland_init (int argc, char **argv, char **envp)
__libc_argv = argv;
__environ = envp;

#ifndef SHARED
_dl_non_dynamic_init ();
#endif
__init_misc (argc, argv, envp);
__libc_init (argc, argv, envp);

Expand Down
6 changes: 6 additions & 0 deletions sysdeps/mach/hurd/mips/init-first.c
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,9 @@ extern void __init_misc (int, char **, char **);
#ifdef USE_NONOPTION_FLAGS
extern void __getopt_clean_environment (char **);
#endif
#ifndef SHARED
extern void _dl_non_dynamic_init (void) internal_function;
#endif
extern void __libc_global_ctors (void);

unsigned int __hurd_threadvar_max;
Expand Down Expand Up @@ -107,6 +110,9 @@ init1 (int argc, char *arg0, ...)
d->portarray, d->portarraysize,
d->intarray, d->intarraysize);

#ifndef SHARED
_dl_non_dynamic_init ();
#endif
__init_misc (argc, argv, __environ);
__libc_init (argc, argv, __environ);

Expand Down
6 changes: 6 additions & 0 deletions sysdeps/mach/hurd/powerpc/init-first.c
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,9 @@ extern void __init_misc (int, char **, char **);
#ifdef USE_NONOPTION_FLAGS
extern void __getopt_clean_environment (char **);
#endif
#ifndef SHARED
extern void _dl_non_dynamic_init (void) internal_function;
#endif
extern void __libc_global_ctors (void);

unsigned int __hurd_threadvar_max;
Expand Down Expand Up @@ -70,6 +73,9 @@ posixland_init (int argc, char **argv, char **envp)
__libc_argv = argv;
__environ = envp;

#ifndef SHARED
_dl_non_dynamic_init ();
#endif
__init_misc (argc, argv, envp);
__libc_init (argc, argv, envp);

Expand Down
4 changes: 4 additions & 0 deletions sysdeps/unix/sysv/linux/init-first.c
Original file line number Diff line number Diff line change
Expand Up @@ -87,6 +87,10 @@ init (int argc, char **argv, char **envp)

#ifndef SHARED
__libc_init_secure ();

/* First the initialization which normally would be done by the
dynamic linker. */
_dl_non_dynamic_init ();
#endif

__init_misc (argc, argv, envp);
Expand Down
5 changes: 4 additions & 1 deletion sysdeps/unix/sysv/linux/ldsodefs.h
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* Run-time dynamic linker data structures for loaded ELF shared objects.
Copyright (C) 2001 Free Software Foundation, Inc.
Copyright (C) 2001, 2002 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
Expand Down Expand Up @@ -32,6 +32,9 @@
/* Used by static binaries to check the auxiliary vector. */
extern void _dl_aux_init (ElfW(auxv_t) *av) internal_function;

/* Initialization which is normally done by the dynamic linker. */
extern void _dl_non_dynamic_init (void) internal_function;

/* We can assume that the kernel always provides the AT_UID, AT_EUID,
AT_GID, and AT_EGID values in the auxiliary vector. */
#define HAVE_AUX_XID
Expand Down

0 comments on commit d417e0f

Please sign in to comment.