Commit Graph

4351 Commits

Author SHA1 Message Date
Ulrich Drepper
f9b798baee Update.
* sysdeps/i386/dl-machine.h: Undo last change.
	* sysdeps/mach/hurd/i386/dl-machine.h (RTLD_START_SPECIAL_INIT):
	Restore %edx register after call here.
2000-04-03 18:20:23 +00:00
Ulrich Drepper
ad085e8a28 Update.
2000-04-03  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/arm/atomicity.h: New file.
	Contributed by Jesper Skov <jskov@redhat.com>.
2000-04-03 18:08:40 +00:00
Ulrich Drepper
80370031b0 Atomic operations for Arm. 2000-04-03 18:06:38 +00:00
Roland McGrath
ca5becb0c5 * Makeconfig (preprocess-versions): Undo last change.
Instead, pass -I$(common-objdir) -I$(..)include instead of $(CPPFLAGS).
2000-04-03 18:01:18 +00:00
Roland McGrath
c6d8020283 * sysdeps/mach/hurd/i386/init-first.c (init): Don't set __environ
here, before we might move the stack.
	(posixland_init): Set __libc_argc, __libc_argc, and __environ here.
	(init1): And not here.

	* sysdeps/i386/dl-machine.h (RTLD_START): Fix code broken by last
	change, to restore argc value in call-clobbered register after
	RTLD_START_SPECIAL_INIT, which will contain a call.

	* elf/dl-deps.c (_dl_map_object_deps): Fix size calculations for
	allocating and initializing L->l_initfini.

	* resolv/Makefile (headers): Add bits/netdb.h, so it gets installed.
2000-04-03 17:13:51 +00:00
Roland McGrath
9129b9874d 2000-04-03 Roland McGrath <roland@baalperazim.frob.com>
* sysdeps/mach/hurd/i386/init-first.c (init): Don't set __environ
	here, before we might move the stack.
	(posixland_init): Set __libc_argc, __libc_argc, and __environ here.
	(init1): And not here.
2000-04-03 17:13:21 +00:00
Ulrich Drepper
152e7964d6 Update.
2000-04-03  Ulrich Drepper  <drepper@redhat.com>

	* elf/dl-load.c (_dl_init_paths): Use (void*) -1 to signal non-existing
	RUNPATH, RPATH, and LD_LIBRARY_PATH.
	(open_path): Change type of fourth parameter.  Make pointer to array
	of pointers.  Create variable dirs with original type.
	Track whether any directory for the object exists and if not,
	change *DIRSP to (void*) -1 to signal there is no such search path.
	(_dl_map_object): Change all calls of open_path.
	Rewrite decompose_rpath calls.
2000-04-03 10:44:36 +00:00
Ulrich Drepper
42ba2c1158 Update.
2000-03-31  Andreas Schwab  <schwab@suse.de>

	* string/strfry.c: Declare STATE as array of char instead of int
	and do not initialize it (done by initstate_r).  Pass correct
	size.

	* sysdeps/generic/ldsodefs.h: Fix typo in comment.
2000-04-03 07:15:10 +00:00
Ulrich Drepper
0a63529d38 Update.
2000-04-03  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/i386/dl-machine.h (RTLD_START): Squeeze one more
	instruction out of the code.
2000-04-03 07:05:57 +00:00
Ulrich Drepper
cf197e41e7 Update.
2000-04-02  Ulrich Drepper  <drepper@redhat.com>

	* elf/dl-fini.c (_dl_fini): Increment j counter after swapping in
	element at this position.

	* elf/Versions [ld.so] (GLIBC_2.2): Export _dl_load_lock.
	* elf/link.h (struct link_map): Add l_reldepsmax, l_reldepsact, and
	l_reldeps elements.
	* elf/dl-lookup.c (add_dependency): New function.
	(_dl_lookup_symbol): Use it whenever symbol was found in a global,
	dynamically loaded object.
	(_dl_lookup_symbol_skip): Likewise.
	(_dl_lookup_versioned_symbol): Likewise.
	(_dl_lookup_versioned_symbol_skip): Likewise.
	* elf/dl-open.c: Don't define _dl_load_lock here...
	* elf/rtld.c: ...but here...
	* elf/dl-support.c: ...and here.
	* elf/dl-close.c (_dl_close): Close also dependent objects introduce
	through relocation.
	* elf/dl-fini.c (_dl_fini): Also take dependencies introduced through
	relocations.
	* dlfcn/Makefile (glrefmain.out): Test is not expected to fail
	anymore.
	* dlfcn/glrefmain.c: Add one more debug message.

	* Makeconfig (preprocess-versions): Don't add $(CPPFLAGS) to compiler
	command line.
	* Makerules (sysd-versions): Use ( ) instead of { }.

	* elf/dl-load.c: Use __builtin_expect to signal that compiler should
	optimize for the non-debugging case.
	* elf/dl-lookup.c: Likewise.
	* sysdeps/generic/libc-start.c: Likewise.
2000-04-03 03:51:04 +00:00
Ulrich Drepper
ec79422d9e (glrefmain.out): Test is not expected to fail anymore. 2000-04-03 03:36:11 +00:00
Roland McGrath
5879ee9fa1 * sysdeps/mach/hurd/i386/init-first.c: Replace PIC #ifdefs with SHARED.
(init1): Don't initialize __environ here, since init already does it.
	(first_init): New function, broken out of _init.
	(_hurd_stack_setup): Use it.
	[SHARED] (_dl_init_first): New function, renamed from old _init.
	(init1) [SHARED]: Don't call posixland_init here.
	(posixland_init): Take ENVP arg, so signature is usual for initializer.
	[SHARED] (_init): Define as alias for posixland_init.
	[! SHARED] (__libc_first_init): Define as alias for posixland_init.
	* sysdeps/i386/dl-machine.h (RTLD_START): Insert the macro
	RTLD_START_SPECIAL_INIT before calling initializers.
	(RTLD_START_SPECIAL_INIT): Define to empty if undefined.
	* sysdeps/mach/hurd/i386/dl-machine.h: New file.
	* sysdeps/mach/hurd/dl-sysdep.c (_dl_init_first): New weak function.
	* elf/Versions ({libc,ld.so}: GLIBC_2.2): Add _dl_init_first.
2000-04-02 22:01:23 +00:00
Roland McGrath
e1724cd7ef * stdio-common/tmpfile.c [! USE_IN_LIBIO]: No alias needed,
since we define the function with the name `tmpfile'.

	* mach/Versions: Define SHARED instead of PIC to affect shlib-compat.h.
	* hurd/Versions: Likewise.

	* elf/dl-runtime.c (fixup): Fix typo in comment.
	* resolv/netdb.h (getnameinfo): All length parameters are of type
	* elf/dl-init.c: Fix typo in comment.
	anymore, update comment.
2000-04-02 20:15:54 +00:00
Roland McGrath
c2c67d1499 2000-04-02 Roland McGrath <roland@baalperazim.frob.com>
* mach/Versions: Define SHARED instead of PIC to affect shlib-compat.h.
	* hurd/Versions: Likewise.
2000-04-02 20:15:08 +00:00
Ulrich Drepper
d8655fd731 Update.
* elf/dl-runtime.c (ElfW): Fxi typo in comment.
2000-04-02 16:21:24 +00:00
Ulrich Drepper
e10b8512ce Update.
2000-04-02  Ulrich Drepper  <drepper@redhat.com>

	* resolv/netdb.h (getnameinfo): All lenght parameters are of type
	socklen_t.
	* inet/getnameinfo.c: Likewise.
2000-04-02 08:26:29 +00:00
Ulrich Drepper
750f9af619 Update.
* posix/unistd.h (socklen_t): Define if it has not yet happened.
	(gethostname): Change type of second parameter to socklen_t.
	* include/unistd.h (__gethostname): Change type of second
	parameter to socklen_t.
	* sysdeps/generic/gethostname.c (__gethostname): Likewise.
	* sysdeps/mach/hurd/gethostname.c (__gethostname): Likewise.
	* sysdeps/unix/sysv/gethostname.c (__gethostname): Likewise.
	* sysdeps/unix/sysv/sysv4/solaris2/gethostname.c (__gethostname):
	Likewise.
	* sysdeps/unix/sysv/linux/gethostname.c: Removed.
	* sysdeps/generic/bits/socket.h: Use __socklen_t to define socklen_t.
	Allow definition elsewhere.
	* sysdeps/unix/sysv/aix/bits/socket.h: Likewise.
	* sysdeps/unix/sysv/linux/bits/socket.h: Likewise.
	* sysdeps/unix/sysv/linux/mips/bits/socket.h: Likewise.
	* sysdeps/generic/bits/types.h: Define __socklen_t.
	* sysdeps/unix/sysv/aix/bits/types.h: Likewise.
	* sysdeps/unix/sysv/hpux/bits/types.h: Likewise.
	* sysdeps/unix/sysv/linux/alpha/bits/types.h: Likewise.
	* sysdeps/unix/sysv/linux/bits/types.h: Likewise.
	* sysdeps/unix/sysv/linux/mips/bits/types.h: Likewise.
	* sysdeps/unix/sysv/linux/sparc/bits/types.h: Likewise.
	* sysdeps/unix/sysv/sysv4/solaris2/bits/types.h: Likewise.
2000-04-02 08:05:36 +00:00
Ulrich Drepper
ad483238a1 Update.
* inet/arpa/inet.h (inet_addr): Change return type to in_addr_t.
	(inet_lnaof): Likewise.
	(inet_netof): Likewise.
	(inet_network): Likewise.
	(inet_aton): Likewise.
	(inet_makeaddr): Change parameter types to in_addr_t.
	(inet_neta): Likewise.
	(inet_ntop): Change type of last parameter to socklen_t.
	(inet_aton): Only make available if __USE_MISC.
	(inet_neta): Likewise.
	(inet_net_ntop): Likewise.
	(inet_net_pton): Likewise.
	(inet_nsap_ntoa): Likewise.

	* inet/in.h: Define in_port_t type.
	Define in_addr_t type.
	(struct in_addr): Use in_addr_t in definition.
	(IN_CLASSA): Use cast to in_addr_t.
	(IN_CLASSB): Likewise.
	(IN_CLASSC): Likewise.
	(IN_CLASSD): Likewise.
	(IN_EXPERIMENTAL): Likewise.
	(IN_BADCLASS): Likewise.
	(INADDR_ANY): Likewise.
	(INADDR_BROADCAST): Likewise.
	(INADDR_NONE): Likewise.
	(INADDR_LOOPBACK): Likewise.
	(INADDR_UNSPEC_GROUP): Likewise.
	(INADDR_ALLHOSTS_GROUP): Likewise.
	(INADDR_ALLRTRS_GROUP): Likewise.
	(INADDR_MAX_LOCAL_GROUP): Likewise.
	(struct sockaddr_in): Use in_port_t for sin_port element.
	(struct sockaddr_in6): Use in_port_t for sin6_port element.
	Use uint8_t instead of u_int8_t.

	* resolv/inet_addr.c (inet_addr): Change return type to in_addr_t.
	Call __inet_aton instead of inet_aton.
	(__inet_aton): Renamed from inet_aton.  Add weak alias under old name.

	* resolv/netdb.h (gethostbyname2): Define only is __USE_MISC.
	(innetgr): Likewise.
	(struct addrinfo): Use socklen_t for ai_addrlen element.

	* sysdeps/unix/sysv/linux/bits/in.h (IPV6_MTU_DISCOVER, IPV6_MTU,
	IPV6_RECVERR): New defines.
2000-04-02 03:09:41 +00:00
Ulrich Drepper
9b48fa9b41 Update.
* include/netdb.h: Change type of first parameter of __getnetbyaddr_r.
	* inet/getnetbyad.c: Likewise.
	* inet/getnetbyad_r.c: Likewise.
	* nis/nss_nis/nis-network.c: Likewise.
	* nis/nssplus_nis/nisplus-network.c: Likewise.
	* nss/nss_files/files-network.c: Likewise.
	* resolv/netdb.h: Define uint32_t if not already happened.
	Include bits/netdb.h.  Remove definition of struct netent.
	Change type of first parameter of getnetbyaddr_r and getnetbyaddr.
	* sysdeps/generic/stdint.h: Allow definition of uint32_t elsewhere.
	* sysdeps/generic/bits/netdb.h: New file.
	* sysdeps/unix/sysv/linux/alpha/bits/netdb.h: New file.
2000-04-01 22:30:22 +00:00
Ulrich Drepper
4380ef5e29 Update.
* dlfcn/Makefile (distribute): Add glreflib1.c and glreflib2.c.
	(tests): Add glrefmain.
	Add rules to build modules and run tests.  Ignore result of glrefmain
	for now since it fails.
	* dlfcn/glrefmain.c: New file.
	* dlfcn/glreflib1.c: New file.
	* dlfcn/glreflib2.c: New file.

	* test-skeleton.c: Include <string.h> for strsignal prototype.
2000-04-01 21:49:24 +00:00
Ulrich Drepper
289e8e7ea1 Update.
* locale/programs/ld-collate.c (check_duplicate): Allow repertoire
	to be missing.
2000-04-01 17:53:24 +00:00
Ulrich Drepper
0adb8e479b Update.
2000-04-01  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/unix/sysv/linux/init-first.c (init): Add code from
	former init-first.h.  Initialize __libc_multiple_libcs.
2000-04-01 17:43:53 +00:00
Ulrich Drepper
6674e127c9 Update.
* iconv/loop.c: Undefined `unaligned' before recursive inclusion.
2000-03-31 20:49:41 +00:00
Ulrich Drepper
c1db8b0ddf Update.
* iconv/skeleton.c: Define access macros with u suffix.  Adjust
	#if expression for use of unaligned function to the one used in
	the definition of these functions.
	* iconv/gconv_simple.c (internal_ucs4_loop_unaligned): New function.
	(internal_ucs4le_loop_unaligned): New function.

	    Ralf Baechle <ralf@uni-koblenz.de>
2000-03-31 20:44:49 +00:00
Ulrich Drepper
c0c2af0799 Update.
2000-03-31  Ulrich Drepper  <drepper@redhat.com>

	* elf/Makefile (distribute): Add dep1.c, dep2.c, dep3.c, and dep4.c.
	(tests): Add order.
	(module-names): Add dep1, dep2, dep3, and dep4.
	Add dependencies for dep* modules and order.
	Define rule for order.out which checks the result.
	* elf/dep1.c: New file.
	* elf/dep2.c: New file.
	* elf/dep3.c: New file.
	* elf/dep4.c: New file.
	* elf/order.c: New file.

	* elf/dl-init.c: Fix type in comment.
2000-03-31 17:09:42 +00:00
Ulrich Drepper
84ddc586f6 (distribute): Add dep1.c, dep2.c, dep3.c, and dep4.c. (tests): Add order. (module-names): Add dep1, dep2, dep3, and dep4. Add dependencies for dep* modules and order. Define rule for order.out which checks the result. 2000-03-31 17:07:47 +00:00
Andreas Jaeger
ad08a5b62b Update.
* sysdeps/mips/dl-machine.h (RTLD_START): Rewritten to match new
	init function interface.
	* sysdeps/mips/mips64/dl-machine.h (RTLD_START): Likewise.

2000-03-31  Andreas Jaeger  <aj@suse.de>
2000-03-31 12:35:44 +00:00
Andreas Jaeger
36d043300f Update.
* sysdeps/mips/fpu/fgetexcptflg.c: Fix last patch to use #if.
	* sysdeps/mips/fpu/fegetenv.c: Likewise.
	* sysdeps/mips/fpu/feupdateenv.c: Likewise.
	* sysdeps/mips/fpu/fclrexcpt.c: Likewise.
	* sysdeps/mips/fpu/fesetenv.c: Likewise.
2000-03-31 11:11:25 +00:00
Andreas Jaeger
88fdf42fbb Update.
* sysdeps/generic/ldsodefs.h: DT_INIT_ARRAY is not relocated
	  anymore, update comment.
2000-03-31 10:47:17 +00:00
Andreas Jaeger
e7960df50c Update.
2000-03-31  Andreas Jaeger  <aj@suse.de>

	* sysdeps/unix/sysv/linux/shmctl.c: Likewise.

	* sysdeps/unix/sysv/linux/semctl.c (struct __old_semid_ds): Remove
	SHLIB_COMPAT - the struct is always needed.
2000-03-31 10:22:07 +00:00
Andreas Jaeger
93f9ef01e3 2000-03-31 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/sysv/linux/shmctl.c: Likewise.

	* sysdeps/unix/sysv/linux/semctl.c (struct __old_semid_ds): Remove
	SHLIB_COMPAT - the struct is always needed.
2000-03-31 10:21:40 +00:00
Ulrich Drepper
9ad04ff7e0 Update.
2000-03-31  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/i386/dl-machine.h (RTLD_START): Optimize for i686.
	* elf/dl-support.c: Define _dl_starting_up.

	* elf/dl-init.c (_dl_init): Clear _dl_starting_up at end of function.
	* misc/sys/cdefs.h: Don't allow gcc in traditional mode to be used.
	elements.
2000-03-31 08:21:01 +00:00
Ulrich Drepper
7688db9129 Update.
* elf/dl-init.c (_dl_init): Clear _dl_starting_up at end of
	with size of dynamic sectionfunction.
	* sysdeps/i386/dl-machine.h: Remove code to clear _dl_starting_up.

	* misc/sys/cdefs.h: Don't allow gcc in traditional mode to be
	with size of dynamic sectionused.
2000-03-31 07:24:09 +00:00
Ulrich Drepper
758cb06107 Update.
* sysdeps/i386/dl-machine.h (RTLD_START): Remove call to _dl_preinit.
2000-03-31 07:15:47 +00:00
Ulrich Drepper
d7926ed9fe Update.
* elf/Makefile (dl-routines): Remove preinit.
	* elf/Versions: Remove _dl_preinit.
	* elf/dl-preinit.c: Removed.  Move content into...
	* elf/dl-init.c: ...here.
2000-03-31 07:14:42 +00:00
Ulrich Drepper
924c3f5972 Update.
2000-03-30  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/generic/bits/shm.h (struct shmid_ds): Correct names of
	with size of dynamic sectionelements.
2000-03-31 07:03:48 +00:00
Ulrich Drepper
9e9e0532a4 Update.
2000-03-29  Geoff Clare  <gwc@unisoft.com>

	* stdlib/strfmon.c: Corrected problems with the code that
	sets default values for [np]_sep_by_space and
	[np]_sign_posn; also the new positive/negative alignment
	code from the previous patch was not quite right for
	[np]_sign_posn = 0.

	* localedata/tst-fmon.data: Changes corresponding to the
	two sets of fixes made to stdlib/strfmon.c.
2000-03-31 06:57:36 +00:00
Ulrich Drepper
b5567b2af6 Update.
2000-03-29  Jes Sorensen  <jes@pcatls01.cern.ch>

	* malloc/malloc.c: Declare bit flags UL so that they will not
	default to int size when being inverted.

2000-03-29  Andreas Jaeger  <aj@suse.de>

	* sysdeps/unix/sysv/linux/arm/errlist.c: Use shlib-compat macros.
	* sysdeps/unix/sysv/linux/arm/siglist.c: Likewise.

2000-03-29  Andreas Jaeger  <aj@suse.de>,
            Ralf Baechle <ralf@uni-koblenz.de>

	* Makeconfig: Introduce new variable SHARED to mark code used in
	the shared library.
	* elf/dl-close.c: Use it instead of PIC.
	* elf/dl-load.c: Likewise.
	* elf/dl-open.c: Likewise.
	* hurd/geteuids.c: Likewise.
	* include/libc-symbols.h: Likewise.
	* include/shlib-compat.h: Likewise.
	* libio/freopen.c: Likewise.
	* linuxthreads/cancel.c: Likewise.
	* linuxthreads/pthread.c: Likewise.
	* linuxthreads/wrapsyscall.c: Likewise.
	* nss/nsswitch.c: Likewise.
	* stdio-common/vfprintf.c: Likewise.
	* sysdeps/arm/init-first.c: Likewise.
	* sysdeps/i386/init-first.c: Likewise
	* sysdeps/generic/init-first.c: Likewise.
	* sysdeps/generic/libc-start.c: Likewise.
	* sysdeps/mips/init-first.c: Likewise.
	* sysdeps/powerpc/elf/libc-start.c: Likewise.
	* sysdeps/unix/sysv/linux/init-first.c: Likewise.
	* sysdeps/unix/sysv/linux/arm/siglist.c: Likewise.
	* sysdeps/unix/sysv/linux/arm/errlist.c: Likewise.
	* sysdeps/unix/sysv/linux/i386/chown.c: Likewise.

	* sysdeps/mips/machine-gmon.h (asm): Use __PIC__ as check.
2000-03-31 05:50:02 +00:00
Ulrich Drepper
b86120ed68 Update.
2000-03-29  Andreas Jaeger  <aj@suse.de>

	* sysdeps/sparc/sparc64/dl-machine.h (elf_machine_runtime_setup):
	Use D_PTR to access relocated entries in l_info.
	(elf_machine_rela): Likewise.

	* sysdeps/sparc/sparc32/dl-machine.h (elf_machine_runtime_setup):
	Likewise.
	(elf_machine_rela): Likewise.

	* sysdeps/powerpc/dl-machine.c (__elf_machine_runtime_setup):
	Likewise.
	(__elf_machine_fixup_plt): Likewise.
	(__process_machine_rela): Likewise.

	* sysdeps/m68k/dl-machine.h (elf_machine_runtime_setup): Likewise.
	(elf_machine_rela): Likewise.

	* sysdeps/arm/dl-machine.h (elf_machine_runtime_setup): Likewise.
	(elf_machine_rel): Likewise.

	* sysdeps/alpha/dl-machine.h (elf_machine_runtime_setup): Likewise.
	(elf_machine_fixup_plt): Likewise.
	(elf_machine_rela): Likewise.

2000-03-29  Andreas Jaeger  <aj@suse.de>

	* sysdeps/unix/sysv/linux/msgctl.c: Use shlib-compat macros.
	* sysdeps/unix/sysv/linux/semctl.c: Likewise.
	* sysdeps/unix/sysv/linux/shmctl.c: Likewise.
	* sysdeps/unix/sysv/linux/i386/getrlimit.c: Likewise.
	* sysdeps/unix/sysv/linux/i386/getrlimit64.c: Likewise.
	* sysdeps/unix/sysv/linux/i386/msgctl.c: Likewise.
	* sysdeps/unix/sysv/linux/i386/oldgetrlimit64.c: Likewise.
	* sysdeps/unix/sysv/linux/i386/semctl.c: Likewise.
	* sysdeps/unix/sysv/linux/i386/setrlimit.c: Likewise.
	* sysdeps/unix/sysv/linux/i386/shmctl.c: Likewise.
	* sysdeps/unix/sysv/linux/alpha/msgctl.c: Likewise.
	* sysdeps/unix/sysv/linux/alpha/semctl.c: Likewise.
	* sysdeps/unix/sysv/linux/alpha/shmctl.c: Likewise.
	* sysdeps/unix/sysv/linux/alpha/adjtime.c: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/chown.c: Likewise.

	* sysdeps/unix/sysv/linux/alpha/oldglob.c: Use shlib-compat
	macros, remove K&R prototypes.
2000-03-31 05:16:38 +00:00
Ulrich Drepper
05c54d4c8e Update.
2000-03-30  Ulrich Drepper  <drepper@redhat.com>

	* posix/getopt.c (_getopt_internal): Return -1 if argc < 1.
	Reported by Andrew Wiseman <a.wiseman@bandc.dircon.co.uk>
	(PR libc/1677).
2000-03-31 05:03:53 +00:00
Ulrich Drepper
7f4e0e5886 Update.
2000-03-30  Andreas Jaeger  <aj@suse.de>

	* misc/sys/cdefs.h: Remove K&R support.
2000-03-31 04:17:54 +00:00
Ulrich Drepper
fdf6455589 Update.
2000-03-30  Ulrich Drepper  <drepper@redhat.com>

	* iconv/skeleton.c: Avoid compiling unaligned versions in some
	with size of dynamic sectionmore cases.
	* iconv/loop.c: Likewise.
2000-03-31 04:10:36 +00:00
Ulrich Drepper
99a7e0656c Update.
2000-03-29  Bruno Haible  <haible@clisp.cons.org>

	* iconv/loop.c (put16): Remove __const. Fix access index.
	(put32): Remove __const. Use uint32_t instead of uint16_t.
	* iconv/skeleton.c: Likewise.
2000-03-31 03:44:44 +00:00
Ulrich Drepper
cb2c55018f (put16): Remove __const. Fix access index. (put32): Remove __const. Use uint32_t instead of uint16_t. 2000-03-31 03:43:13 +00:00
Roland McGrath
9a95cd1c9c * mach/Versions (libc: GLIBC_2.0)
[SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)]: Conditionalize
	__vm_allocate on this.
	[SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_2)]: Conditionalize
	mutex- and spinlock-related symbols on this.
	[!SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_2)] (libc: HURD_CTHREADS_0.3):
	New version set.  Lock-related symbols go here instead in this case.
	* sysdeps/mach/hurd/Versions (libc: GLIBC_2.0): Remove
	_cthread_exit_routine, _cthread_init_routine, cthread_keycreate,
	cthread_getspecific, cthread_setspecific, __libc_getspecific.
	* hurd/Versions
	[SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_2)] (libc: GLIBC_2.0):
	Put them here instead.
	[!SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_2)] (libc: HURD_CTHREADS_0.3):
	New version set.  Those cthreads symbols go here instead in this case.
	* Versions.def (libc) [USE_IN_LIBIO]: Add HURD_CTHREADS_0.3 version.
2000-03-30 19:26:59 +00:00
Roland McGrath
693ef46bb1 2000-03-30 Roland McGrath <roland@baalperazim.frob.com>
* mach/Versions (libc: GLIBC_2.0)
	[SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)]: Conditionalize
	__vm_allocate on this.
	[SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_2)]: Conditionalize
	mutex- and spinlock-related symbols on this.
	[!SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_2)] (libc: HURD_CTHREADS_0.3):
	New version set.  Lock-related symbols go here instead in this case.
	* sysdeps/mach/hurd/Versions (libc: GLIBC_2.0): Remove
	_cthread_exit_routine, _cthread_init_routine, cthread_keycreate,
	cthread_getspecific, cthread_setspecific, __libc_getspecific.
	* hurd/Versions
	[SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_2)] (libc: GLIBC_2.0):
	Put them here instead.
	[!SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_2)] (libc: HURD_CTHREADS_0.3):
	New version set.  Those cthreads symbols go here instead in this case.
	* Versions.def (libc) [USE_IN_LIBIO]: Add HURD_CTHREADS_0.3 version.
2000-03-30 19:26:35 +00:00
Ulrich Drepper
841288ec53 Update.
* elf/dl-init.c (_dl_init): We don't need to call constructors
	recursively.  Fold _dl_init_rec in _dl_init and optimize a bit more.
2000-03-30 17:59:33 +00:00
Ulrich Drepper
dacc8ffa42 Update.
2000-03-30  Ulrich Drepper  <drepper@redhat.com>

	Implement dynamic determination of constructor/destructor order in
	the dynamic linker.
	* elf/Versions [ld.so] (GLIBC_2.0): Remove _dl_init_next.
	(GLIBC_2.2): Add _dl_init.
	* elf/dl-close.c: Also call all destructors in FINI_ARRAY.
	r_duplist is not anymore allocated separately.  l_initfini is and
	therefore free it if necessary.
	* elf/dl-deps.c: If a searchlist has to be allocated, put all in one
	malloc block.  Otherwise allocate l_initfini list only.
	Put dependencies for the object in l_initfini list.
	Sort dependencies for the object to be loaded topologically.
	* elf/dl-fini.c: Before running the destructors sort the topologically.
	* elf/dl-init.c (_dl_init): Renamed from _dl_init_next.  Rewrite to
	call constructors instead of iterating over the pointers.  Get list of
	objects for which to run constructors from l_initfini element. Accept
	argc, argv, and env as parameters and pass them to the constructors.
	* elf/ld-load.c (_dl_map_object_from_fd): Initialize l_ldnum member
	with size of dynamic section.
	* elf/dl-open.c (dl_open_worker): Only call _dl_init instead of
	_dl_init_next and calling constructors ourself.
	* elf/dl-preinit.c (_dl_preinit): Renamed from _dl_preinit_next.
	Take argc, argv, and env as parameters and pass them to the
	constructors.  Rewrite to call all constructors and not iterate over
	the pointers.
	* elf/dynamic-link.h: Don't relocate DT_FINI_ARRAY entry.  Don't
	precompute l_initcount and l_preinitcount.
	* elf/link.h (struct link_map): Add l_ldnum member.
	Make l_phdr_allocated part of the bitfield.  Remove l_runcount,
	l_initcount, and l_preinitcount.  Add l_initfini.
	* sysdeps/generic/ldsodefs.h: Replace _dl_init_next prototype with
	one for _dl_init.
	* sysdeps/i386/dl-machine (RTLD_START): Rewrite to match new init
	function interface.
	* sysdeps/unix/sysv/linux/init-first.h: Removed.
	* sysdeps/unix/sysv/linux/Dist: Delete file here as well.
	* sysdeps/unix/sysv/linux/init-first.c [PIC]: Don't use
	SYSDEP_CALL_INIT.  Make _init a strong alias of init.  The calling
	conventions now match.

	* sysdeps/generic/libc-start.c: Calling __libc_init_first has no
	effect for shared objects.  Don't emit message and call only for
	static library.
2000-03-30 16:30:49 +00:00
Ulrich Drepper
38e986ecd8 Update.
2000-03-29  Ulrich Drepper  <drepper@redhat.com>

	* iconvdata/testdata/CSA_Z243.4-1985-1..UCS-2BE: Renamed from
	CSA_Z243.4-1985-1..UCS2.
	* iconvdata/testdata/ISO-8859-10..UCS-2BE: Renamed from
	ISO-8859-10..UCS2.
2000-03-29 16:06:35 +00:00
Ulrich Drepper
baccec31c0 Renamed to CSA_Z243.4-1985-1..UCS-2BE. 2000-03-29 16:03:05 +00:00