Commit Graph

4354 Commits

Author SHA1 Message Date
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
Andreas Jaeger
10685cd0fa Remove wildcards from entry for sysdeps/i386/fpu/bits/mathinline.h.
(__inline_mathcodeNP): New macro without prototype
	(__inline_mathcodeNP2): Likewise.
	(__inline_mathcodeNP3): Likewise.
	(__inline_mathcodeNP_): Likewise.
	(__inline_mathcodeNP2_): Likewise.
	(__inline_mathcodeNP3_): Likewise.
	(__inline_mathopNP): Likewise.
	(__inline_mathop_declNP): Likewise.
	(__inline_mathop_declNP_): Likewise.
	(fabsf): Likewise.
	(fabsl): Likewise.
	(__fabsl): Likewise.
2000-03-29 14:18:16 +00:00
Andreas Jaeger
dab715b9fe Update.
* include/unistd.h: Remove duplicate entry for __rmdir.
	Remove declaration of __mkdir since __mkdir is declared in
	sys/stat.h.
2000-03-29 13:07:51 +00:00
Andreas Jaeger
56fbd811cb Update.
* manual/creature.texi (Feature Test Macros): Fix typo, reported
	by Michael Deutschmann <michael@talamasca.ocis.net>.
2000-03-29 12:54:35 +00:00
Andreas Jaeger
689993b2d7 Update.
2000-03-29  Andreas Jaeger  <aj@suse.de>

	* sysdeps/mips/fpu/fclrexcpt.c: Use shlib-compat macros.
	* sysdeps/mips/fpu/fegetenv.c: Likewise.
	* sysdeps/mips/fpu/fesetenv.c: Likewise.
	* sysdeps/mips/fpu/feupdateenv.c: Likewise.
	* sysdeps/mips/fpu/fgetexcptflg.c: Likewise.
2000-03-29 11:19:06 +00:00
Andreas Jaeger
b4f99a5d4b 2000-03-29 Andreas Jaeger <aj@suse.de>
* sysdeps/mips/fpu/fclrexcpt.c: Use shlib-compat macros.
	* sysdeps/mips/fpu/fegetenv.c: Likewise.
	* sysdeps/mips/fpu/fesetenv.c: Likewise.
	* sysdeps/mips/fpu/feupdateenv.c: Likewise.
	* sysdeps/mips/fpu/fgetexcptflg.c: Likewise.
2000-03-29 11:18:48 +00:00
Ulrich Drepper
300583a726 Update.
2000-03-28  Andreas Jaeger  <aj@suse.de>

	* sysdeps/i386/fpu/bits/mathinline.h (__sincos): Remove redundant
	declaration, the prototype is defined via bits/mathcalls.h.
	(__sincosf): Likewise.
	(__sincosl): Likewise.
	(ldexp): Likewise.
	(ldexpf): Likewise.
	(ldexpl): Likewise.
	(__finite): Likewise.
	(__inline_mathcode*NP*): New macros without prototype
	declarations.
	(__inline_mathop*NP*): Likewise.
	(__inline_mathcode_): Use __inline_mathcodeNP_.
	(__inline_mathcode2_): Use __inline_mathcodeNP2_.
	(__inline_mathcode3_): Use __inline_mathcodeNP3_.
	(__inline_mathop_decl_): Use __inline_mathop_declNP__.
	(__expm1l): Don't define prototype, the prototype is defined via
	bits/mathcalls.h.
	(exp): Likewise.
	(__expl): Likewise.
	(tan): Likewise.
	(atan2): Likewise.
	(__atan2l): Likewise.
	(fmod): Likewise.
	(pow): Likewise.
	(*fabs*): Likewise.
	(asin): Likewise.
	(acos): Likewise.
	(sinh): Likewise.
	(cosh): Likewise.
	(tanh): Likewise.
	(floor): Likewise.
	(ceil): Likewise.
	(expm1): Likewise.
	(log1p): Likewise.
	(asinh): Likewise.
	(acosh): Likewise.
	(atanh): Likewise.
	(hypot): Likewise.
	(logb): Likewise.
	(fma): Likewise.
	(drem): Likewise.
	(sqrt): Likewise.
	(__sqrtl): Likewise.
	(sin): Likewise.
	(cos): Likewise.
	(atan): Likewise.
	(log): Likewise.
	(log10): Likewise.
	(asinh): Likewise.
	(log2): Likewise.
	(rint): Likewise.
2000-03-29 03:46:07 +00:00
Ulrich Drepper
d2b9a50e60 Update.
* Makerules: If make variable md5 is defined to yes after
	generating dependencies generate MD5 sum for the object.
2000-03-29 01:29:24 +00:00
Ulrich Drepper
9dfa9a5a4f Update.
* iconv/gconv_builtin.h: Fix length in transformation definition
	for UNICODEBIG.
2000-03-28 17:54:26 +00:00
Ulrich Drepper
77e1d15a1a Update.
2000-03-28  Ulrich Drepper  <drepper@redhat.com>

	* iconvdata/TESTS: Use UCS-2BE instead of UCS2.

	* iconv/loop.c: Define get16, get32, put16, and put32 macros to
	allow as well reading from/writing to unaligned addresses on machines
	which don't support this in hardware.  Use FCTNAME macro to define
	function name.  Include the file a second time for platforms which
	need special unaligned handling.
	* iconv/skeleton.c: Define get16u, get32u, put16u, and put32u macros
	to access potentially unaligned addresses.  These macros are intended
	to be used only outside the loops.
	(unaligned): New definition.  In case the machine can handle unaligned
	access define as zero.  Otherwise as a variable which is initialized
	as nonzero in case the buffer passed in at runtime is unaligned with
	respect to the character set encoding involved.
	Call aligned or unaligned looop functions according to unaligned
	variable.
	* iconvdata/8bit-gap.c: Use get16, get32, put16, and put32 instead
	of direct casting pointer to potentially handle unaligned memory
	accesses.
	* iconvdata/8bit-generic.c: Likewise.
	* iconvdata/ansi_x3.110.c: Likewise.
	* iconvdata/big5.c: Likewise.
	* iconvdata/euc-cn.c: Likewise.
	* iconvdata/euc-jp.c: Likewise.
	* iconvdata/euc-kr.c: Likewise.
	* iconvdata/euc-tw.c: Likewise.
	* iconvdata/gbk.c: Likewise.
	* iconvdata/iso-2022-cn.c: Likewise.
	* iconvdata/iso-2022-jp.c: Likewise.
	* iconvdata/iso-2022-kr.c: Likewise.
	* iconvdata/iso646.c: Likewise.
	* iconvdata/iso_6937-2.c: Likewise.
	* iconvdata/iso_6937.c: Likewise.
	* iconvdata/johab.c: Likewise.
	* iconvdata/sjis.c: Likewise.
	* iconvdata/t.61.c: Likewise.
	* iconvdata/uhc.c: Likewise.
	* iconvdata/unicode.c: Likewise.
	* iconvdata/utf-16.c: Likewise.

	* locale/programs/simple-hash.c: Little optimizations.  Remove K&R
	prototypes.

	* malloc/Versions [libc] (GLIBC_2.2): Add mcheck_check_all.
	* malloc/mcheck.c (mcheck_check_all): Renamed from check_all and made
	public.
	* malloc/mcheck.h (mcheck_check_all): Declare.

	* stdio-common/Makefile (tests): Add tst-obprintf.
2000-03-28 17:33:37 +00:00
Ulrich Drepper
b35e58e479 Define get16, get32, put16, and put32 macros to allow as well reading from/writing to unaligned addresses on machines which don't support this in hardware. Use FCTNAME macro to define function name. Include the file a second time for platforms which need special unaligned handling. 2000-03-28 17:18:18 +00:00
Roland McGrath
26c400e689 * sysdeps/generic/bits/sigthread.h: Clean up conditionals.
Declare pthread_sigmask.

	* csu/version.c: Add 2000 to copyright years.
	Remove Emacs local variables section.
2000-03-28 07:06:08 +00:00
Roland McGrath
6998a04598 2000-03-28 Roland McGrath <roland@baalperazim.frob.com>
* csu/version.c: Add 2000 to copyright years.
	Remove Emacs local variables section.
2000-03-28 07:05:51 +00:00
Ulrich Drepper
428bcea4c8 Update.
2000-03-23  Bruno Haible  <haible@clisp.cons.org>

	* iconv/gconv_int.h (__gconv_transform_ucs2little_internal,
	__gconv_transform_internal_ucs2little): Remove declarations.
	* iconv/gconv_simple.c (__gconv_transform_ucs2_internal,
	__gconv_transform_internal_ucs2): Never	need to bswap_16.
	(__gconv_transform_ucs2reverse_internal,
	__gconv_transform_internal_ucs2reverse): Always need to bswap_16.
2000-03-28 05:05:42 +00:00
Ulrich Drepper
d64e704c8f Recognize ia64 platform. Recognize SGI's compiler. 2000-03-28 00:58:22 +00:00
Roland McGrath
65b4f10b89 * include/shlib-compat.h (SHLIB_COMPAT): Make the test handle the
obsoleting version not being defined at all, in which case the
	result is always true.
2000-03-27 23:57:43 +00:00
Roland McGrath
58dc1d4968 * Makeconfig (preprocess-versions): New canned sequence for running
cpp on shlib-versions and the like.
	(soversions.i): Use it.
	* Makerules (Versions.all, sysd-versions): Use it to preprocess the
	Versions.def and Versions files.
2000-03-27 19:43:54 +00:00
Roland McGrath
480d827b66 2000-03-27 Roland McGrath <roland@baalperazim.frob.com>
* Makeconfig (preprocess-versions): New canned sequence for running
	cpp on shlib-versions and the like.
	(soversions.i): Use it.
	* Makerules (Versions.all, sysd-versions): Use it to preprocess the
	Versions.def and Versions files.
2000-03-27 19:42:09 +00:00
Ulrich Drepper
22d5fbfe74 Update.
* stdio-common/tst-obprintf.c (main): Add another check to see
	obstack_printf handling all possible beginnings of the block
	inside an obstack chunk.
2000-03-27 18:36:21 +00:00
Ulrich Drepper
670066c3bd Update.
2000-03-27  Ulrich Drepper  <drepper@redhat.com>

	* locale/programs/localedef.c: Use __malloc_initialize_hook to
	install mcheck handler.

	* libio/obprintf.c (_IO_obstack_vprintf): Fix one more memory
	handling problem.
2000-03-27 18:06:35 +00:00
Ulrich Drepper
a211d17424 (_IO_obstack_vprintf): Fix one more memory handling problem. 2000-03-27 18:03:07 +00:00
Roland McGrath
9010d7f86f * stdio-common/tmpfile.c: Use <shlib-compat.h> macros. 2000-03-27 16:51:19 +00:00
Roland McGrath
3e5155f85a * include/shlib-compat.h: Conditionalize <abi-versions.h> include
on [HAVE_ELF && DO_VERSIONING].
2000-03-27 15:08:19 +00:00
Roland McGrath
9ee80c5249 2000-03-27 Roland McGrath <roland@baalperazim.frob.com>
* include/shlib-compat.h: Conditionalize <abi-versions.h> include
	on [HAVE_ELF && DO_VERSIONING].
2000-03-27 15:07:53 +00:00
Ulrich Drepper
45f52bde66 (main): Make a bit more exciting. 2000-03-27 08:42:51 +00:00
Ulrich Drepper
0c04b91eef Update.
2000-03-27  Ulrich Drepper  <drepper@redhat.com>

	* stdio-common/tst-obprintf.c: New file.
2000-03-27 08:30:50 +00:00
Ulrich Drepper
9202ffe33c Update.
* libio/genops.c (_IO_default_xsputn): Little optimization.  Call
	_IO_OVERFLOW directly instead through __overflow.
2000-03-27 07:36:16 +00:00
Ulrich Drepper
30e0f9c399 Update.
* locale/programs/localedef.c (construct_output_path): If path
	contains a / compute the end of the directory name correctly.
2000-03-27 06:37:56 +00:00
Ulrich Drepper
8e605e789d Update.
2000-03-26  Ulrich Drepper  <drepper@redhat.com>

	* include/features.h: Undef and document __USE_XOPEN2K.

	* malloc/mcheck.c: Implement pedantic checking of all allocated blocks
	whenever a function is called.  Initiated by calling mcheck_pedantic
	instead of mcheck.
	* malloc/mcheck.h: Declare mcheck_pedantic.
	* malloc/Versions [libc] (GLIBC_2.2): Add mcheck_pedantic.
	* locale/programs/localdef.c: Use mcheck_pedantic instead of mcheck
	for now.
2000-03-27 05:36:34 +00:00
Ulrich Drepper
1edf26ffc6 * semaphore.c (sem_timedwait): New function.
Patch by Carl Mailloux <carlm@oricom.ca>.
	* semaphore.h: Declare sem_timedwait.
2000-03-27 05:31:53 +00:00
Ulrich Drepper
24d6fe58f3 Undef and document __USE_XOPEN2K. 2000-03-27 05:30:59 +00:00
Roland McGrath
16710d5829 * dlfcn/dlopen.c: Use <shlib-compat.h> macros.
* dlfcn/dlopenold.c: Likewise.
	* nss/getXXbyYY_r.c: Likewise.
	* nss/getXXent_r.c: Likewise.
	* hurd/hurdinit.c: Likewise.
	* hurd/compat-20.c: Likewise.
	* libio/oldiofopen.c: Likewise.
	* libio/oldiofclose.c: Likewise.
	* libio/oldiofdopen.c: Likewise.
	* libio/oldfileops.c: Likewise.
	* libio/oldstdfiles.c: Likewise.
	* libio/oldiofsetpos.c: Likewise.
	* libio/oldiofgetpos.c: Likewise.
	* libio/oldiofgetpos64.c: Likewise.
	* libio/oldiofsetpos64.c: Likewise.
	* libio/oldiopopen.c: Likewise.
	* libio/oldpclose.c: Likewise.
	* libio/oldtmpfile.c: Likewise.
	* libio/freopen.c (freopen): Likewise.
	* libio/iofclose.c (_IO_new_fclose): Likewise.
2000-03-27 05:18:47 +00:00
Roland McGrath
54f6cbb379 * sysdeps/mach/sys/reboot.h: Include <features.h>.
(reboot): Declare it.
2000-03-27 04:09:19 +00:00
Roland McGrath
1c479f72fe * libio/Makefile (headers): Add bits/stdio-lock.h here.
* sysdeps/mach/hurd/bits/stdio-lock.h: New file.
2000-03-27 03:57:46 +00:00
Roland McGrath
a7ca88b86b * include/shlib-compat.h: Include <abi-versions.h> unconditionally. 2000-03-27 01:09:25 +00:00
Roland McGrath
9aae89cedc 2000-03-26 Roland McGrath <roland@baalperazim.frob.com>
* include/shlib-compat.h: Include <abi-versions.h> unconditionally.
2000-03-27 01:09:18 +00:00
Ulrich Drepper
4c63ebaa79 Update.
2000-03-26  Roland McGrath  <roland@baalperazim.frob.com>

	* posix/unistd.h (intptr_t): Conditionalize on [__USE_MISC ||
	__USE_XOPEN_EXTENDED] rather than on [__USE_UNIX98].
	We need this for the sbrk decl, which can be included without Unix98.
2000-03-26 21:24:46 +00:00
Ulrich Drepper
c7e41631b2 Update.
2000-03-20  Richard Henderson  <rth@cygnus.com>

	* nis/nss_nis/nis-service.c (_nss_nis_getservbyport_r): Last
	argument to yperr2nss is an int, not size_t.
	* posix/regex.c (print_partial_compiled_pattern): Cast all
	ptrdiff_t to long for printing.
	(print_compiled_pattern): Use Z for printing size_t.
	* posix/testfnm.c (tests): Avoid trigraphs.
	* sysdeps/alpha/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
	Use a C comment, not an assembly comment.

	* sysdeps/unix/sysv/linux/alpha/msgctl.c: Clarify use
	of __ASSUME_32BITUIDS.
2000-03-26 20:35:45 +00:00
Ulrich Drepper
6d2e234a78 Update.
2000-03-26  Ulrich Drepper  <drepper@redhat.com>

	* libio/iofopncook.c: Remove K&R prototypes.
2000-03-26 19:56:39 +00:00
Ulrich Drepper
572705e4dc Remove K&R prototypes. 2000-03-26 19:56:04 +00:00
Roland McGrath
2e6f096fd9 * hurd/hurdrlimit.c (init_rlimit): Give the RLIMIT_NOFILE soft limit
an initial value of 1024 instead of RLIM_INFINITY.

	* Versions.def (libmachuser, libhurduser): Remove these sections,
	since these libraries do not presently use symbol versions.

	* sysdeps/mach/hurd/getdtsz.c (__getdtablesize): If the resource limit
	is RLIM_INFINITY, return -1 instead.
2000-03-26 19:17:23 +00:00
Roland McGrath
8acd0bf21b 2000-03-26 Roland McGrath <roland@baalperazim.frob.com>
* hurd/hurdrlimit.c (init_rlimit): Give the RLIMIT_NOFILE soft limit
	an initial value of 1024 instead of RLIM_INFINITY.
2000-03-26 19:16:56 +00:00
Ulrich Drepper
4fcddf8e57 Update.
2000-03-24  Andreas Jaeger  <aj@suse.de>

	* Makefile (postclean): Added soversions.i.

2000-03-24  Scott Bambrough  <scottb@netwinder.org>

	* sysdeps/arm/fpu/fpu_control.h: Define _FPU_MASK_IM, _FPU_MASK_ZM,
	_FPU_MASK_OM, _FPU_MASK_UM, _FPU_MASK_PM, _FPU_MASK_DM, _FPU_DEFAULT,
	and _FPU_IEEE.  Change _FPU_RESERVED.

2000-03-24  Scott Bambrough  <scottb@netwinder.org>

	* sysdeps/unix/sysv/linux/arm/sys/ucontext.h: New file.

2000-03-24  Roland McGrath  <roland@baalperazim.frob.com>

	* sysdeps/posix/getaddrinfo.c: Include <net/if.h> for if_nametoindex.
	(gaih_inet): Remove unused duplicate variable.

	* inet/getnameinfo.c (getnameinfo): Use IFNAMSIZ, not MAXHOSTNAMELEN.
	Don't use __libc_sa_len, which only exists for Linux.  Just handle
	AF_INET and AF_INET6 directly as well as AF_LOCAL, since those are the
	only flavors supported by this function anyway.

2000-03-24  Geoff Clare  <gwc@unisoft.com>

	* stdlib/strfmon.c: corrected problems with missing signs and
	missing or extra spaces; allow for sign strings longer than
	one character; add padding to ensure positive and negative
	formats are aligned when a left precision is used.

2000-03-26  Ulrich Drepper  <drepper@redhat.com>

	* stdlib/random_r.c (__setstate_r): Allow RNGs of type 4.
	Patch by John Mizel <John.Mizel@msdw.com>.
2000-03-26 18:48:26 +00:00
Ulrich Drepper
0efadcd9ac Update.
2000-03-25  Ulrich Drepper  <drepper@redhat.com>

	* manual/install.texi: Remove references to crypt add-on.
2000-03-26 06:05:37 +00:00
Ulrich Drepper
62075f0f9a Remove references to crypt add-on. 2000-03-26 06:03:42 +00:00
Roland McGrath
9e3438bee6 * sysdeps/mach/hurd/setrlimit.c (setrlimit): Go into a critical
section while taking the _hurd_rlimit_lock.
	* sysdeps/mach/hurd/getrlimit.c (__getrlimit): Likewise.
2000-03-25 20:20:44 +00:00
Roland McGrath
6a08db097b * Makerules [$(cross-compiling) = yes] (symbolic-link-prog): Define
using $(LN_S).
2000-03-24 21:41:15 +00:00
Roland McGrath
4f173e2c8a * sysdeps/mach/hurd/if_index.c: New file.
* sysdeps/unix/sysv/linux/net/if.h: Moved to ...
	* sysdeps/gnu/net/if.h: here.
	(_IOT_ifconf, _IOT_ifreq): Hurd ioctl type macros moved from ...
	* sysdeps/mach/hurd/net/if.h: ... here; this file now removed.
	* sysdeps/generic/net/if.h: New file.  Declares just the standard
	functions and `struct if_nameindex' type.
	* socket/Makefile (headers): Add net/if.h here.
	* sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Not here.
	* sysdeps/mach/hurd/Dist: Remove it here.
	* sysdeps/unix/sysv/linux/Dist: And here.
	* sysdeps/generic/if_index.c: Include <net/if.h>.
2000-03-24 20:59:00 +00:00