Commit Graph

48 Commits

Author SHA1 Message Date
Roland McGrath
c150923988 Tue Jul 9 09:37:55 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* sysdeps/mach/libc-lock.h: New file.
	* sysdeps/unix/readdir.c: Do locking.
	* sysdeps/unix/seekdir.c: Likewise.
	* sysdeps/unix/rewinddir.c:  Likewise.
	* sysdeps/unix/closedir.c: Likewise.
	* sysdeps/unix/bsd/telldir.c: Likewise.
	* sysdeps/mach/hurd/seekdir.c: Likewise.
	* sysdeps/mach/hurd/readdir.c: Likewise.
	* sysdeps/mach/hurd/closedir.c: Likewise.
	* sysdeps/mach/hurd/opendir.c: Initialize the lock.
	* sysdeps/unix/opendir.c: Likewise.
	* sysdeps/mach/hurd/dirstream.h: Include <libc-lock.h>.
	(struct __dirstream): Add lock member using __libc_lock_define.
	* sysdeps/unix/dirstream.h: Likewise.

	* sysdeps/stub/libc-lock.h (__libc_lock_fini): New macro.

	* stdlib/mbstowcs.c: Pass address of pointer to mbsrtowcs.

	* stdlib/wcstombs.c: Use wcsrtombs instead of mbsrtowcs.

Thu Jul  4 01:34:04 1996  Ulrich Drepper  <drepper@cygnus.com>

	* locale/programs/stringtrans.c: Fix typo in copyright.

	* stdio-common/printf-prs.c: Add casts to prevent
        signed<->unsigned warnings.

	* stdio-common/printf-parse.h: Initialize state variable before
	calling mbrlen.
	* stdio-common/printf-prs.c: Don't initialize state variable here.
	* stdio-common/vfprintf.c: Don't initialize state variable.
	(vfprintf): While determining length of multibyte string don't
	try to be clever in determining characters to use for first
	call.

	Add real implementation of multibyte<->wide char conversion
	functions.  The functions always convert between the fixed wide
	char format (ISO 10646 in UCS4) and the UTF8 representation of
	this character set.  Conversion between the currently used
	8bit character set and ISO 10646 will not take place.  This is
	what iconv() is for.
	* wcsmbs/wchar.h (mbstate_t): Define as structure to replace
	dummy definition.
	Add optimized version of `mbrlen' function.
	* wcsmbs/btowc.c (btowc): Restrict range of legal characters
	to 0...0x7f.
	* wcsmbs/wctob.c (wctob): Restrict range of legal characters
	to 0..0x7f.
	* wcsmbs/mbrlen.c: Make mbrlen a weak alias of __mbrlen.
	This is needed in the wchar.h header.
	* wcsmbs/mbrtowc.c: Replace dummy implementation.  Convert UTF8
	encoded character to UCS4.
	* wcsmbs/mbsinit.c: Replace dummy implementation.  Test COUNT
	element of `mbstate_t' for initial state.
	* wcsmbs/mbsrtowcs.c: Replace dummy implementation.  Convert UTF8
	encoded string to UCS4 string.
	* wcsmbs/wcrtomb.c: Replace dummy implementation.  Convert UCS4
	character to UTF8 encoded form.
	* wcsmbs/wcsrtombs.c: Replace dummy implementation.  Convert UCS4
	encoded string to UTF8 encoded form.
1996-07-09 14:49:13 +00:00
Thomas Bushnell, BSG
18c75117c2 *** empty log message ***
Tue Jul  9 00:14:52 1996  Michael I. Bushnell p/BSG  <mib@gnu.ai.mit.edu>

	* sysdeps/mach/hurd/ioctls.h (MDMBUF, ECHO, TOSTOP, FLUSHO,
 	PENDIN, NOFLSH): Undefine these at start if they are already
 	defined to avoid collision with termbits.h.
	* sysdeps/generic/termbits.h (ECHO, TOSTOP, NOFLSH): Likewise.
	(MDMBUF, FLUSHO, PENDIN) [__USE_BSD]: Likewise.


Mon Jul  8 13:10:50 1996  Michael I. Bushnell p/BSG  <mib@gnu.ai.mit.edu>

	* sysdeps/mach/hurd/errnos.awk: Skip entries where the
 	error is 0.  The "placeholder" entries recently added to 
	errno.texi convert to zero since `???/' is at the front of them.
	* sysdeps/gnu/errlist.awk (errnoh): Likewise.

	* sysdeps/stub/setdomain.c (setdomainname): Declare NAME parm 
	__const to conform with unistd.h.

	* posix/regex.c (re_comp, re_exec): Use weak_function as
	keyword in function defns instead of weak_symbol (NAME) after
	the defn.

	* stdlib/stdlib.h (random): Declare return type to be int32_t.
1996-07-09 05:02:06 +00:00
Roland McGrath
503054c0dd Wed Jul 3 16:29:41 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* nss/getXXbyYY_r.c (REENTRANT_NAME): Cast FCT in __nss_next call.

	* sysdeps/generic/sbrk.c: Always call __brk (0) to update __curbrk.

	* malloc/malloc-size.c (malloc_usable_size): Renamed from
	malloc_object_allocation_size.
	* malloc/malloc.h: Fix decl.

	* sys/select.h: New file, wrapper header.

	* posix/sys/types.h [__USE_BSD]: Include <sys/select.h>; remove
	fd_set, associated macros, and select decl.

	* sysdeps/posix/isfdtype.c: New file.

Tue Jul  2 23:45:14 1996  Ulrich Drepper  <drepper@cygnus.com>

	The latest Japanese proposal for POSIX locales renames the
	CHARMAP keyword in locale definition files to CHARCONV.
	* locale/programs/ld-ctype.c, locale/programs/locales.h: Rename
        function ctype_is_charmap to ctype_is_charconv.
	* locale/programs/locfile-kw.gperf: Replace charmap keyword with
        charconv.
	* locale/programs/locfile-token.h: Add definition of token
        charconv.
	* locale/programs/locfile.c: Recognize charconv keyword.  Rename
        lables according to this.

	* locale/weight.h (get_weight): Cast constants to prevent
        warnings.

	* stdlib/strtod.c, stdlib/strtol.c, string/strcoll.c,
	string/strxfrm.c: Add some more casts to prevent signed<->unsigned
	warnings.

	New stuff described in P1003.1g.
	* misc/Makefile (headers): Add sys/select.h.
	(routines): Add pselect.
	* misc/sys/select.h: New file.  Declare select functions and
	needed data types and macros.
	* sysdeps/generic/pselect.c: New file.  Add generic implementation
	of pselect() function which uses select().

	* posix/getconf.c: Recognize new variables from P1003.1g.
	* posix/posix1_lim.h: Define _POSIX_FD_SETSIZE, _POSIX_QLIMIT,
	_POSIX_HIWAT, and _POSIX_UIO_MAXIOV.
	* posix/unistd.h: Add description of the P1003.1g variables.
	* sysdeps/generic/confname.h: Define _SC_* values for new
	variables.
	* sysdeps/posix/fpathconf.c (fpathconf): Add handling of
	_PC_SOCK_MAXBUF.
	* sysdeps/stub/fpathconf.c (fpathconf): Ditto.
	* sysdeps/posix/sysconf.c (sysconf): Add handling of new
	P1003.1g variables.
	* sysdeps/stub/sysconf.c (sysconf): Ditto.
	* sysdeps/unix/sysv/linux/posix_opt.h: Define _POSIX_POLL and
	_POSIX_SELECT since Linux has this.

	* socket/Makefile (routines): Add isfdtype.
	* sysdeps/generic/sys/socket.h: Add prototype for isfdtype.
	* sysdeps/stub/isfdtype.c: New file.  Stub implementation of
	isfdtype.

	* wcsmbs/wcrtomb.c (wcrtomb): Fix typo.
1996-07-04 00:07:18 +00:00
Roland McGrath
3d3ac840ea * Makefile (headers): Add libc-lock.h.
* sysdeps/stub/libc-lock.h: New file.

	* inet/getrpcbynumber.c: Remove _r typo.

	* elf/dl-load.c (_dl_map_object): Fix typo in last change.
1996-06-25 11:59:42 +00:00
Roland McGrath
8882a2dad5 Sun Jun 16 03:22:49 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* Make-dist (subdir): Make empty value really empty.
1996-06-18 02:41:29 +00:00
Roland McGrath
5fbef18864 * hurd/Makefile (routines): Add get-host, set-host.
(distribute): Add hurdhost.h.
	* hurd/hurdhost.h: New file.
	* sysdeps/mach/hurd/gethostname.c: Use _hurd_get_host_config.
	* sysdeps/mach/hurd/gethostid.c: Likewise.
	* sysdeps/mach/hurd/sethostname.c: Use _hurd_set_host_config.
	* sysdeps/mach/hurd/sethostid.c: Likewise.
	* hurd/get-host.c: New file.
	* hurd/set-host.c: New file.

	* math/Makefile (headers): Add fpu_control.h.
	(aux): New variable, list fpu_control and setfpucw.
	* sysdeps/generic/fpu_control.c: New file.
	* sysdeps/stub/fpu_control.h: New file.
	* sysdeps/unix/sysv/linux/m68k/fpu_control.h: Moved to ...
	* sysdeps/m68k/fpu_control.h: here.
	* sysdeps/unix/sysv/linux/i386/fpu_control.h: Moved to ...
	* sysdeps/i386/fpu_control.h: here.
	* sysdeps/unix/sysv/linux/alpha/fpu_control.h: Moved to ...
	* sysdeps/alpha/fpu/fpu_control.h: here.  Fixed copyright.
	* sysdeps/unix/sysv/linux/alpha/Makefile (sysdep_routines): Remove
	setfpucw, fpu_control.
	* sysdeps/unix/sysv/linux/alpha/fpu_control.c: File removed.
	* sysdeps/unix/sysv/linux/setfpucw.c: Moved to ...
	* sysdeps/generic/setfpucw.c: here.
	(__fpu_control): Variable removed.
	(__setfpucw): Use SET even if zero.
1996-06-16 03:49:40 +00:00
Roland McGrath
6d9756c910 * elf/dl-load.c (_dl_map_object_from_fd): Close FD before return.
* sysdeps/mach/mprotect.c: Define with __ name and weak alias.
	* sysdeps/stub/mprotect.c: Likewise.
	* sysdeps/unix/mman/syscalls.list (mprotect): Likewise.
	* sysdeps/generic/sys/mman.h: Declare __mprotect.
	* sysdeps/unix/sysv/irix4/sys/mman.h: Likewise.
	* sysdeps/unix/sysv/linux/sys/mman.h: Likewise.
	* sysdeps/unix/bsd/sun/sunos4/sys/mman.h: Likewise.
	* sysdeps/unix/bsd/osf/sys/mman.h: Likewise.
1996-06-09 22:02:59 +00:00
Roland McGrath
bf668fc8f0 Fri Jun 7 16:48:13 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* sysdeps/unix/sysv/linux/i386/Dist: New file, list sys/perm.h and
	sys/vm86.h.

	Removed old math code no longer used since the fdlibm integration.
	* sysdeps/stub/acos.c: File removed.
	* sysdeps/stub/asin.c: File removed.
	* sysdeps/stub/atan2.c: File removed.
	* sysdeps/stub/cosh.c: File removed.
	* sysdeps/stub/exp.c: File removed.
	* sysdeps/stub/fmod.c: File removed.
	* sysdeps/stub/frexp.c: File removed.
	* sysdeps/stub/log.c: File removed.
	* sysdeps/stub/log10.c: File removed.
	* sysdeps/stub/sinh.c: File removed.
	* sysdeps/stub/tan.c: File removed.
	* sysdeps/stub/tanh.c: File removed.
	* sysdeps/generic/acos.c: File removed.
	* sysdeps/generic/acosh.c: File removed.
	* sysdeps/generic/asin.c: File removed.
	* sysdeps/generic/asinh.c: File removed.
	* sysdeps/generic/atan.c: File removed.
	* sysdeps/generic/atan2.c: File removed.
	* sysdeps/generic/atanh.c: File removed.
	* sysdeps/generic/cabs.c: File removed.
	* sysdeps/generic/ceil.c: File removed.
	* sysdeps/generic/copysign.c: File removed.
	* sysdeps/generic/cosh.c: File removed.
	* sysdeps/generic/exp.c: File removed.
	* sysdeps/generic/expm1.c: File removed.
	* sysdeps/generic/fabs.c: File removed.
	* sysdeps/generic/floor.c: File removed.
	* sysdeps/generic/fmod.c: File removed.
	* sysdeps/generic/frexp.c: File removed.
	* sysdeps/generic/hypot.c: File removed.
	* sysdeps/generic/infnan.c: File removed.
	* sysdeps/generic/isnan.c: File removed.
	* sysdeps/generic/ldexp.c: File removed.
	* sysdeps/generic/log.c: File removed.
	* sysdeps/generic/log10.c: File removed.
	* sysdeps/generic/log1p.c: File removed.
	* sysdeps/generic/modf.c: File removed.
	* sysdeps/generic/pow.c: File removed.
	* sysdeps/generic/rint.c: File removed.
	* sysdeps/generic/sinh.c: File removed.
	* sysdeps/generic/tan.c: File removed.
	* sysdeps/generic/tanh.c: File removed.
	* sysdeps/ieee754/cabs.c: File removed.
	* sysdeps/ieee754/copysign.c: File removed.
	* sysdeps/ieee754/frexp.c: File removed.
	* sysdeps/ieee754/hypot.c: File removed.
	* sysdeps/ieee754/infnan.c: File removed.
	* sysdeps/ieee754/ldexp.c: File removed.
	* sysdeps/ieee754/log10.c: File removed.

	* posix/Makefile (headers): Add schedbits.h.

	* math/Makefile (elided-routines): Add long double routines.

Fri Jun  7 09:11:17 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

	* sysdeps/unix/sysv/linux/Dist: Add sys/sysinfo.h, sys/mount.h,
	sys/kdaemon.h, sys/io.h, sys/mount.h, sysctl.c.

	* gmon/Makefile (distribute): Add profil-counter.h.

	* sysdeps/unix/sysv/linux/alpha/Dist: New file.

	* sysdeps/unix/Dist: Add s-proto.S.

	* sysdeps/unix/common/mk-local_lim.c: Obsolete file removed.

	* Make-dist (+sysdep-tsrcs): Get all syscalls.list files too.

	* csu/Makefile (distribute): Add start.c.

	* elf/Makefile (distribute): Add dl-machine.h.

	* sysdeps/alpha/Dist: Add _mcount.S.

	* sysdeps/alpha/Makefile (sysdep_routines): Append instead of
	resetting; don't add bb_init_func.

	* string/Makefile (routines): Add strerror_r.
	* string/string.h (strerror_r): Use int for BUFLEN arg.

	* Makefile (distribute): Add shlib-versions.

	* po/Makefile (distribute): Add SYS_libc.pot.

	* misc/Makefile (routines): Add lsearch.

	* manual/lang.texi (Consistency Checking): Merge in assert_perror defn
	and other changes inadvertently made to the obsolete assert.texi.
	* manual/assert.texi: File removed.

	* mach/mach_syscalls.c: Obsolete file removed.
	* mach/mach_syscalls.h: Likewise.
	* mach/mach_traps.S: Likewise.
	* mach/msg_destroy.c: Likewise.
	* mach/vm_page_size.c: Likewise.

	* locale/Makefile (distribute): Add weight.h, charset.h.

	* Makefile (distribute): Add version.h.

	* hurd/Makefile (headers): Add hurd/ioctl.h.
	(distribute): Add intr-rpc.d, intr-rpc.h, faultexc.defs.

	* csu/Makefile (distribute): Add gmon-start.c.

	* Makefile (distribute): Add config.h.in.

	sysdeps/m68k/fpu/e_atanhl.c, sysdeps/m68k/fpu/e_coshl.c: New files.
1996-06-07 21:18:34 +00:00
Roland McGrath
ee188d555b Tue Jun 4 21:01:20 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* sysdeps/mach/hurd/getlogin_r.c: New file.

Wed Jun  5 02:11:30 1996  Ulrich Drepper  <drepper@cygnus.com>

	* io/Makefile (routines): Add ttyname_r.

	* resolv/res_debug.c, resolv/resolv.h: Update from bind-4.3.4-T4A.

	* sysdeps/libm-i387/e_asinl.S, sysdeps/libm-i387/e_atan2l.S,
	sysdeps/libm-i387/e_expl.S, sysdeps/libm-i387/e_fmodl.S,
	sysdeps/libm-i387/e_log10l.S, sysdeps/libm-i387/e_logl.S,
	sysdeps/libm-i387/e_remainderl.S, sysdeps/libm-i387/e_scalbl.S,
	sysdeps/libm-i387/e_sqrtl.S, sysdeps/libm-i387/s_atanl.S,
	sysdeps/libm-i387/s_cosl.S, sysdeps/libm-i387/s_ilogbl.S,
	sysdeps/libm-i387/s_log1pl.S, sysdeps/libm-i387/s_logbl.S,
	sysdeps/libm-i387/s_scalbnl.S, sysdeps/libm-i387/s_sinl.S,
	sysdeps/libm-i387/s_tanl.S: New files.  i387 assembler versions
	of `long double' math functions.

	* sysdeps/libm-ieee754/k_standard.c: Add handling for errors
	in long double functions.

	* sysdeps/libm-ieee754/s_ilogbl.c, sysdeps/libm-ieee754/s_logbl.c,
	sysdeps/libm-ieee754/s_modfl.c:  New files.  Generic versions
	of `long double' math functions.

	* sysdeps/libm-ieee754/s_isinf.c [NO_LONG_DOUBLE]: Add string
        alias for __isinfl.

	* sysdeps/libm-ieee754/w_acoshl.c, sysdeps/libm-ieee754/w_acosl.c,
	sysdeps/libm-ieee754/w_asinl.c, sysdeps/libm-ieee754/w_atan2l.c,
	sysdeps/libm-ieee754/w_atanhl.c, sysdeps/libm-ieee754/w_cabsl.c,
	sysdeps/libm-ieee754/w_coshl.c, sysdeps/libm-ieee754/w_dreml.c,
	sysdeps/libm-ieee754/w_expl.c, sysdeps/libm-ieee754/w_fmodl.c,
	sysdeps/libm-ieee754/w_gammal.c, sysdeps/libm-ieee754/w_gammal_r.c,
	sysdeps/libm-ieee754/w_hypotl.c, sysdeps/libm-ieee754/w_j0l.c,
	sysdeps/libm-ieee754/w_j1l.c, sysdeps/libm-ieee754/w_jnl.c,
	sysdeps/libm-ieee754/w_lgammal.c, sysdeps/libm-ieee754/w_lgammal_r.c,
	sysdeps/libm-ieee754/w_log10l.c, sysdeps/libm-ieee754/w_logl.c,
	sysdeps/libm-ieee754/w_powl.c, sysdeps/libm-ieee754/w_remainderl.c,
	sysdeps/libm-ieee754/w_scalbl.c, sysdeps/libm-ieee754/w_sinhl.c,
	sysdeps/libm-ieee754/w_sqrtl.c: New files.  Wrapper functions
	around long double function implementations.

	* sysdeps/posix/ttyname_r.c (ttyname_r): Use _D_EXACT_NAMLEN
	to determine length of directory entry name.

	* posix/Makefile (routines): Add getlogin_r.
	* posix/unistd.h: Add prototype for getlogin_r.
	* sysdeps/stub/getlogin_r.c: New file.  Reentrant version of
	getlogin function, specified in P1003.1c/D6.  Stub version.
	* sysdeps/unix/getlogin.c (getlogin): Use ttyname_r instead of
	ttyname.  This avoids saving and restoring the old content.
	Also use setutent_r, getutline_r and endutent_r instead of
	accing UTMP file directly.
	* sysdeps/unix/getlogin_r.c: New file.  Reentrant version of
	getlogin function, specified in P1003.1c/D6.

Tue Jun  4 20:10:09 1996  J.T. Conklin  <jtc@cygnus.com>

	* sysdeps/libm-i387/s_finitef.S: Fix mask for exponent.

	* elf/dl-lookup.c (_dl_lookup_symbol): Grok magical undefined symbols
	_GNU_libc_dl_{open,close,symbol} and resolve them to dl functions.

	* elf/rtld.c (rtld_map): Renamed to _dl_rtld_map, made global.
	* elf/link.h: Declare _dl_rtld_map.

	* elf/dl-lookup.c (_dl_symbol_value): New function.
	* elf/link.h: Declare it.

	stdio-common/vfscanf.c: Prepare for reentrant libio.
	Used in reentrant libio.
1996-06-05 01:07:21 +00:00
Roland McGrath
710f7bab59 Mon Jun 3 00:30:35 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* elf/dl-lookup.c (_dl_lookup_symbol): Take new arg RELOC_ADDR and
	don't allow a defn resolving to that address.
	* elf/link.h: Update prototype and comment.
	* elf/dl-runtime.c (fixup): Define local `resolve' function and pass
	it to elf_machine_relplt.
	* elf/dl-reloc.c (_dl_relocate_object: resolve): Take new arg
	RELOC_ADDR and pass it through to _dl_lookup_symbol.
	* elf/do-rel.h (elf_dynamic_do_rel): Pass RESOLVE to elf_machine_rel
	instead of calling it ourselves and passing its results.
	(elf_dynamic_do_rel): RESOLVE fn takes new arg RELOC_ADDR.
	* elf/rtld.c (dl_main): Pass 0 for RELOC_ADDR to _dl_lookup_symbol.
	* sysdeps/i386/dl-machine.h (elf_machine_rel): Remove SYM_LOADADDR
	arg.  Add RESOLVE function ptr arg.  Call *RESOLVE as necessary.
	* sysdeps/m68k/dl-machine.h (elf_machine_rela): Likewise.
	* sysdeps/stub/dl-machine.h: Likewise.

	* csu/initfini.c (_fini): Add extern decl for i_am_not_a_leaf.

	* elf/dlfcn.h (dl_open_mode): Enumerated type removed.
	(RTLD_LAZY, RTLD_NOW): Define these as macros instead.
	(RTLD_GLOBAL): New macro.
	(dlopen): Take arg of type int instead of dl_open_mode.
	* elf/dlopen.c: Likewise.

	* math/math.h (_Mldbl): New macro, either produces L suffix or not.
	(M_*): Use it for these constants.
1996-06-03 04:46:40 +00:00
Roland McGrath
6c03c2cf27 * elf/dl-lookup.c (_dl_lookup_symbol): Arg NOSELF renamed to NOPLT.
Reject SHN_UNDEF defns iff NOPLT is nonzero.
	* elf/link.h (_dl_lookup_symbol): Update prototype and comment.
	* elf/dl-runtime.c (fixup): Pass 1 to _dl_lookup_symbol for NOPLT.
	* elf/dlsym.c (dlsym): Pass 0.
	* elf/rtld.c (dl_main): Likewise.
	* elf/dl-reloc.c (_dl_relocate_object: resolve): Second arg R_OFFSET
	replaced with NOPLT flag.  Pass it through to _dl_lookup_symbol.
	* elf/do-rel.h (elf_dynamic_do_rel): Update prototype of RESOLVE arg.
	Pass `elf_machine_pltrel_p (R->r_type)' result as NOPLT flag value.
	* sysdeps/i386/dl-machine.h (elf_machine_pltrel_p): New macro.
	* sysdeps/m68k/dl-machine.h (elf_machine_pltrel_p): Likewise.
	* sysdeps/stub/dl-machine.h (elf_machine_pltrel_p): Likewise.
1996-06-02 21:35:43 +00:00
Roland McGrath
f8cac037ee Fri May 10 18:36:14 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* FAQ: New file contributed by drepper.

	* time/Makefile (headers): Add timebits.h.
	* sysdeps/unix/sysv/linux/timebits.h: New file.
	* sysdeps/stub/timebits.h: New file.
	* time/time.h (CLK_TCK): Define to CLOCKS_PER_SEC.
	(CLOCKS_PER_SEC): Remove this macro.  Instead #include <timebits.h>.
1996-05-10 22:55:26 +00:00
Roland McGrath
0e3426bbcf Tue May 7 19:00:01 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* string/argz-extract.c: Remove const from decl.
	* string/argz.h: Here too.

	* Makeconfig (version.mk): Fix regexp in sed cmd.
	Depend on $(..)Makeconfig.

	* GMP code updated from gmp-2.0 release.
	* stdlib/Makefile (mpn-routines): Removed add_1, added inlines.
	* sysdeps/generic/add_1.c: File removed.
	* stdlib/strtod.c: mp_limb is now mp_limb_t.
	* stdlib/fpioconst.c, stdlib/fpioconst.h: Likewise.
	* stdio-common/_itoa.c: Likewise.
	* stdio-common/printf_fp.c: Likewise.
	Don't include ansidecl.h.

	* sysdeps/mach/hurd/getcwd.c: Use io_identity instead of io_stat.

	* shlib-versions: New file.
	* Makerules (soversions.mk): New target, include file generated from
	shlib-versions.  Moved shared library rules before installation rules.
	Rewrote shared library installation rules for versioned libraries.
	* math/Makefile (libm.so-version): Variable removed.

	* sysdeps/mach/hurd/i386/exc2signal.c: Use struct hurd_signal_detail.

	* hurd/report-wait.c (_S_msg_describe_ports): New function.

	* configure.in: Add AC_PROG_LN_S check.
	* config.make.in (LN_S): New variable.

Sun May  5 03:10:44 1996  Ulrich Drepper  <drepper@cygnus.com>

	* misc/efgcvt_r.c (ecvt_r): Work aroung gcc bug.  gcc does
	not know about weak aliases now and optimizes necessary `if'
	statement away.

	* posix/unistd.h: Add swapoff prototype.

	* sysdeps/generic/confname.h: Add even more POSIX.4 symbols.

	* sysdeps/posix/fpathconf.c (__fpathconf): Get information
	for _PC_PATH_MAX from fstatfs function if available.

	* sysdeps/posix/sysconf.c: Add code to handle _SC_AIO_LISTIO_MAX,
	_SC_AIO_MAX, _SC_AIO_PRIO_DELTA_MAX, _SC_DELAYTIMER_MAX,
	_SC_MQ_OPEN_MAX, _SC_MQ_PRIO_MAX, _SC_RTSIG_MAX,
	_SC_SEM_NSEMS_MAX, _SC_SEM_VALUE_MAX, _SC_SIGQUEUE_MAX, and
	_SC_TIMER_MAX.
	* sysdeps/unix/sysv/sysv4/sysconf.c: Ditto.

	* sysdeps/stub/swapoff.c: New file.  Stub version for swapoff
	function.

	* sysdeps/unix/syscalls.list:  Add swapoff.

	* sysdeps/unix/sysv/linux/Dist: Add sys/acct.h.

	* sysdeps/unix/sysv/linux/Makefile [$(subdir) == misc]
	(sysdep_routines): Add mount, umount, llseek, setfsgid, setfsuid,
	sysinfo, and uselib.
	(headers): Add sys/sysinfo.h.

	* sysdeps/unix/sysv/linux/gethostid.c: Prevent warning.

	* sysdeps/unix/sysv/linux/i386/Makefile [$(subdir) == misc]
	(sysdep_routines): Add ioperm, iopl, and vm86.
	(headers): Add sys/perm.h and sys/vm86.h.

	* sysdeps/unix/sysv/linux/i386/sys/perm.h: New file.  Contains
	prototypes for iopl and ioperm.

	* sysdeps/unix/sysv/linux/i386/sys/vm86.h:  New file.  Contains
	prototype for vm86.

	* sysdeps/unix/sysv/linux/i386/syscalls.list: New file.  Add
	vm86 system call.

	* sysdeps/unix/sysv/linux/sys/acct.h: New file.  Contains
	prototypes for acct function.

	* sysdeps/unix/sysv/linux/sys/socket.h: Provide real header
	file with prototypes.

	* sysdeps/unix/sysv/linux/sys/sysinfo.h: New file.  Contains
	prototype for sysinfo function.

	* sysdeps/unix/sysv/linux/syscalls.list: Add flock, ioperm, iopl,
	llseek, setfsgid, setfsuid, sysinfo, and uselib.

	* sysdeps/unix/sysv/linux/sysconf.c: Instead of duplicating
	posix/sysconf.c now only handle cases different to that
	implementation.

Tue May  7 15:08:19 1996  Miles Bader  <miles@gnu.ai.mit.edu>

	* stdio/linewrap.c (__line_wrap_output): Renamed from lwoutput
	(all references changed).  Now exported.

	* stdio/linewrap.c (struct data): Type deleted (moved to linewrap.h).
	(wrap_stream, unwrap_stream, lwclose, lwfileno, lwoutput,
	line_wrap_stream, line_unwrap_stream): Use struct line_wrap_data
	instead of struct data.
	(lwoutput, line_wrap_stream, line_unwrap_stream): Rename various
	occurences of `wrap' and `wrapmargin' to `wmargin'.
	(line_wrapped, line_wrap_lmargin, line_wrap_set_lmargin,
	line_wrap_rmargin, line_wrap_set_rmargin, line_wrap_wmargin,
	line_wrap_set_wmargin, line_wrap_point): New functions.
	* stdio/linewrap.h: New file.
	* stdio/Makefile (headers): Add linewrap.h.

Tue May  7 14:19:12 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

	* sysdeps/unix/sysv/linux/i386/Makefile: File removed.

	* stdio/stdio.h: Remove line_wrap_stream, line_unwap_stream decls.

	* sysdeps/unix/sysv/linux/schedbits.h: New file.

Tue May  7 13:47:02 1996  Miles Bader  <miles@gnu.ai.mit.edu>

	* stdio/linewrap.c (struct data): Make margin fields not-pointers.
	(lwoutput): Adjust uses acordingly.

	* sysdeps/mach/hurd/fdatasync.c: New file.
	* sysdeps/mach/hurd/fsync.c: Pass new flag to file_sync.

	* sysdeps/mach/hurd/xmknod.c: Pass new flag to dir_link.
	* sysdeps/mach/hurd/symlink.c: Likewise.
	* sysdeps/mach/hurd/link.c: Likewise.
	* sysdeps/mach/hurd/bind.c: Likewise.
	* hurd/hurdsig.c (write_corefile): Likewise.

	* hurd/hurdsig.c (write_corefile): Pass cttyid port to crash server.

	* sysdeps/mach/hurd/fpathconf.c: RPC takes int pointer, not long int.

	* sysdeps/mach/hurd/_exit.c (_hurd_exit): Pass sigcode arg to
	proc_mark_exit.
	* sysdeps/mach/hurd/dl-sysdep.c (_exit): Likewise.

	* sysdeps/mach/hurd/wait4.c: Pass sigcode arg to proc_wait.

	* sysdeps/mach/hurd/rename.c: Pass new flag to dir_rename.

	* hurd/hurdfault.c (_hurdsig_fault_catch_exception_raise): Use struct
	hurd_signal_detail.
	* hurd/catch-exc.c (_S_catch_exception_raise): Likewise.
	* hurd/hurd-raise.c (_hurd_raise_signal): Likewise.
	* sysdeps/mach/hurd/i386/trampoline.c (_hurd_setup_sighandler):
	Likewise.
	* sysdeps/mach/hurd/setitimer.c (restart_itimer): Likewise.

	* hurd/hurd/signal.h: Fix _hurd_exception2signal prototype.

	* hurd/hurdsig.c (write_corefile): Take const struct
	hurd_signal_detail * arg.  Pass all details to crash_dump_task.
	(_hurd_internal_post_signal): Pass DETAIL to write_corefile.
	(_hurd_internal_post_signal: suspend): Pass code and error to
	proc_mark_stop.

	* hurd/hurdprio.c (_hurd_priority_which_map): Pass flags arg to
	proc_getprocinfo by reference.
1996-05-08 02:07:47 +00:00
Roland McGrath
93a470c71a Tue May 7 10:51:52 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* wcsmbs/wcwidth.c, wcsmbs/wcswidth.c: Fixed typos.

	* sysdeps/unix/sysv/linux/sys/mman.h: Fixed typo.

	* sysdeps/stub/sched_getp.c: Add missing #include <sys/types.h>.
	* sysdeps/stub/sched_sets.c: Likewise.
	* sysdeps/stub/sched_setp.c: Likewise.
	* sysdeps/stub/sched_rr_gi.c: Likewise.
	* sysdeps/stub/sched_gets.c: Likewise.

	* hurd/hurdsig.c: Use struct hurd_signal_detail.
	* hurd/hurd/fd.h (_hurd_fd_error): Likewise.
	* sysdeps/mach/hurd/sysd-stdio.c (fd_fail): Likewise.
1996-05-07 14:57:38 +00:00
Roland McGrath
8f0c527e13 Sat May 4 05:44:25 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* hurd/hurd-raise.c (_hurd_raise_signal): Pass sigcode in msg_sig_post
	rpc.

	* hurd/hurdmsg.c (_S_msg_set_environment): Use argz.h functions
	instead of _hurd_split_args.
	(_S_msg_*_exec_flags): Functions removed.
	(_S_msg_startup_dosync): Stub removed.

Sat May  4 02:11:55 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

	* sysdeps/mach/hurd/ptrace.c: Set _hurdsig_traced instead of
	EXEC_TRACED bit in _hurd_exec_flags.
	Pass sigcode arg in msg_sig_post_untraced rpc.

	* sysdeps/mach/hurd/access.c: Don't pass io port in
	auth_user_authenticate rpc.

	* posix/sched.h: Fix typos.

	* sysdeps/mach/hurd/fork.c: Use new critical section lock.
	Clear _hurdsig_traced instead of EXEC_TRACED.

	* sysdeps/stub/nanosleep.c (nanosleep): Fix typo.

	* wcsmbs/wcstol.c: Find strtol.c in ../stdlib.
	* wcsmbs/wcstof.c: Find strtod.c in ../stdlib.
	* wcsmbs/wcstod.c: Likewise.
	* wcsmbs/wcstold.c: Likewise.

	* wcsmbs/wcwidth.h: Find cname-lookup.h in ../wctype.

	* string/envz.c (envz_entry): Use const.
	(envz_get, envz_remove): Likewise.
	(envz_entry): Return char *, not const char *.

	* string/envz.h: Fix decl.

	* string/argz-create.c: Use const in prototype.
	* string/argz-next.c: Likewise.

	* sysdeps/mach/hurd/sigprocmask.c: Pass sigcode arg to msg_sig_post.
	* sysdeps/mach/hurd/i386/sigreturn.c: Likewise.
	* sysdeps/mach/hurd/sigsuspend.c: Likewise.
	* sysdeps/mach/hurd/kill.c: Likewise.

	* hurd/hurdexec.c (_hurd_exec): Use new critical section lock.
	* hurd/catch-exc.c (_S_catch_exception_raise): Likewise.
	* hurd/sigunwind.c (_hurdsig_longjmp_from_handler): Likewise.
	* hurd/thread-cancel.c (hurd_thread_cancel, hurd_check_cancel):
	Likewise.
	* sysdeps/mach/hurd/jmp-unwind.c (_longjmp_unwind): Likewise.
	* sysdeps/mach/hurd/sigaction.c: Likewise.

	* sysdeps/mach/hurd/errnos.awk: Don't use ARGV in comment; it can
	change meaninglessly.

	* hurd/hurd/signal.h (struct hurd_sigstate): Replace critical section
 	flag with a spin lock.
	(_hurd_critical_section_lock): Use spin_try_lock on that to see if we
 	get it.  No need to take SS->lock at all.
	(_hurd_critical_section_unlock): Unlock SS->critical_section_lock
	instead of clearing the old flag member.
	* hurd/hurdsig.c (_hurd_internal_post_signal): Use spin_lock_locked to
	test the critical section state.

	* hurd/hurdinit.c (_hurd_init): Set _hurdsig_traced from the intarray.

	* hurd/hurdkill.c (_hurd_sig_post): Pass 0 sigcode in msg_sig_post.

	* hurd/hurdsig.c (_hurd_internal_post_signal): Test _hurdsig_traced
 	instead of testing (_hurd_exec_flags & EXEC_TRACED).
	(_S_msg_sig_post): Take sigcode arg and pass it through.
	(_S_msg_sig_post_untraced): Likewise.
	(reauth_proc): Don't pass proc port in auth_user_authenticate.

	* hurd/setauth.c (_hurd_setauth): Don't pass object ports in
	auth_user_authenticate RPCs, just the one-off rendezvous port.
	* hurd/dtable.c (reauth_dtable): Likewise.
	* hurd/hurdlookup.c (__hurd_file_name_lookup_retry): Likewise.

	* hurd/hurdexec.c (_hurd_exec): Pass 0 flags to file_exec.
	Pass sigcode arg to msg_sig_post.

	* string/argz.h (argz_create): Use const in prototype.

	* hurd/hurdinit.c (_hurd_proc_init): Test _hurdsig_traced instead of
	testing (_hurd_exec_flags & EXEC_TRACED).
	Pass sigcode arg to msg_sig_post.

	* hurd/hurd.h: Declare _hurdsig_traced.

	* string/argz.h (__argz_next): Cast ENTRY before returning it.

	* hurd/hurd/signal.h (_hurd_critical_section_unlock): Pass sigcode arg
	to msg_sig_post.

	* hurd/path-lookup.c: New file.
	* hurd/Makefile (routines): Add path-lookup.
	* hurd/hurd/lookup.h: Declare file_name_path_scan,
	hurd_file_name_path_lookup.
	* hurd/hurd.h: Declare file_name_path_lookup.

	* sysdeps/mach/hurd/select.c: The io_select rpc no longer has a TAG_ID
	argument.  Instead, use a separate reply port for each RPC and put them
	all in a port set to wait for slow replies.
1996-05-04 09:46:57 +00:00
Roland McGrath
75cd5204dd Wed May 1 09:10:04 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* time/strftime.c: Use canonical autoconf nugget for time.h+sys/time.h
	include.

Mon Apr 29 02:48:26 1996  Ulrich Drepper  <drepper@cygnus.com>

	* ctype/ctype-info.c: (__ctype_width): New variable.
	(__ctype_names): Initialize correctly without offset.

	* locale/C-collate.c, locale/C-ctype.c,
	locale/C-messages.c, locale/C-monetary.c,
	locale/C-numeric.c, locale/C-time.c: Change copyright.

	* locale/C-ctype.c (_nl_C_LC_CTYPE_class32): Correct
	endianess for initialization value.

	* locale/lc-ctype.c (current): Add parameter for offset.
	(__ctype32_b, __ctype_width): Add initialization for these
	variables.

	* locale/programs/charmap.c: Finish support for WIDTH information.
	(new_width): New function.

	* locale/programs/charset.h (width_rule): new data structure.
	(charset_t): Add elements for width information.

	* locale/programs/ld-ctype.c (locale_ctype_t): Add element
	for width information.
	(allocate_arrays): Add new argument for charset.
	(ctype_finish): Make sure all characters named in charset
	width table are known to name table.
	(ctype_output): Correct handling of class and map name
	information and write out width information.
	(find_idx): Prepare for being called with NULL pointer as
	TABLE argument.  This means only allocate name entry.
	(allocate_arrays): Correct handling of array element -1.
	Because EOF == -1 the value of element 127 must *not* be
	mirrored here.
	Fill width information from charset tables.

	* locale/programs/localedef.c (main): Correct loop over all
	categories after change of order from Thu Mar 28 14:22:51 1996.
	Add new charset argument to call of `write_all_categories'.

	* locale/programs/locales.h (ctype_finish, ctype_output): New
	charset argument.

	* locale/programs/locfile.c (write_all_categories): Call
	`ctype_output' with additional argument charset.

	* posix/getconf.c (vars): Add _POSIX_SYNC_IO, _POSIX_ASYNC_IO,
	and _POSIX_PRIO_IO definitions.

	* posix/posix2_lim.h: Add definition of _POSIX2_CHARCLASS_NAME_MAX
	and CHARCLASS_NAME_MAX.

	* posix/unistd.h: Document _POSIX_SYNC_IO, _POSIX_ASYNC_IO,
	and _POSIX_PRIO_IO.

	* stdlib/grouping.h: Prepare for use in wide string functions.

	* stdlib/stdlib.h: Correct prototypes for __strto*_internal
	functions.

	* stdlib/strtod.c: Extend for use as `wcsto{f,d,ld}'.

	* stdlib/strtol.c: Extend for use as `wcsto{l,ul,q,uq}'.

	* string/strcoll.c: Extend for use as `wcscoll'.

	* string/strxfrm.c: Extend for use as `wcsxfrm'.

	* sysdeps/generic/confname.h: Add definition of _PC_SYNC_IO,
	_PC_ASYNC_IO, _PC_PRIO_IO and _SC_CHARCLASS_NAME_MAX.

	* sysdeps/generic/stpncpy.c: Correct return value.

	* sysdeps/posix/fpathconf.c: Add handling of _PC_SYNC_IO,
	_PC_ASYNC_IO, and _PC_PRIO_IO.

	* sysdeps/posix/sysconf.c: Add handling of _SC_REALTIME_SIGNALS,
	_SC_PRIORITY_SCHEDULING, _SC_TIMERS, _SC_ASYNCHRONOUS_IO,
	_SC_PRIORITIZED_IO, _SC_SYNCHRONIZED_IO, _SC_FSYNC,
	_SC_MAPPED_FILES, _SC_MEMLOCK, _SC_MEMLOCK_RANGE,
	_SC_MEMORY_PROTECTION, _SC_MESSAGE_PASSING, _SC_SEMAPHORES,
	_SC_SHARED_MEMORY_OBJECTS, and _SC_CHARCLASS_NAME_MAX.
	* sysdeps/stub/sysconf.c: Ditto.
	* sysdeps/unix/sysv/sysv4/sysconf.c: Ditto.

	* sysdeps/unix/sysv/linux/Dist: Add sys/sysctl.h.

	* sysdeps/unix/sysv/linux/Makefile [subdir == misc]
	(sysdep_routines): Add s_sysctl and sysctl.

	* sysdeps/unix/sysv/linux/sys/mman.h: Add declaration of mremap.

	* sysdeps/unix/sysv/linux/sys/socket.h: New file.  Wrapper
	around kernel header.

	* sysdeps/unix/sysv/linux/sys/sysctl.h: New file.  Define
	interface to `sysctl' function.

	* sysdeps/unix/sysv/linux/syscalls.list: Add mremap and _sysctl.

	* sysdeps/unix/sysv/linux/sysconf.c: Add handling of
	_SC_CHARCLASS_NAME_MAX.

	* sysdeps/unix/sysv/linux/sysctl.c: new file.  Implement caller
	of _sysctl system call.

	* sysvipc/Makefile (routines): Add ftok.

	* sysvipc/ftok.c: use variable `proj_id' not `id'.  Patch by
	David Mosberger-Tang.

	* wcsmbs/Makefile (routines): Add wcpcpy, wcpncpy, wcstol,
        wcstoul, wcstoq, wcstouq, wcstod, wcstold, wcstof, wcscoll,
        wcsxfrm, wcwidth, and wcswidth.

	* wcsmbs/wchar.h: Add declarations for wcpcpy, wcpncpy, wcstol,
        wcstoul, wcstoq, wcstouq, wcstod, wcstold, wcstof, wcscoll,
        wcsxfrm, wcwidth, and wcswidth.
	Declare internal interfaces for wcsto* functions.
	[OPTIMIZE]: Define inline functions for wcsto* functions to
	call internal interface functions.

	* wcsmbs/wcpcpy.c, wcsmbs/wcpncpy.c: New files.  Implement non-
	standard function equivalent to stpcpy/stpncpy.

	* wcsmbs/wcscoll.c: Implement `wcscoll' function by using
        `strcoll' implementation.

	* wcsmbs/wcscpy.c, wcsmbs/wcsncpy.c: Use wint_t instead of
        wchar_t.

	* wcsmbs/wcstod.c: Implement `wcstod' function by using `strtod'
        implementation.
	* wcsmbs/wcstof.c: Same for `wcstof'.
	* wcsmbs/wcstold.c: Same for `strtold'.

	* wcsmbs/wcstol.c: Implement `wcstol' function by using `strtol'
        implementation.
	* wcsmbs/wcstoq.c: Same for `wcstoq'.
	* wcsmbs/wcstoul.c: Same for `wcstoul'.
	* wcsmbs/wcstouq.c: Same for `wcstouq'.

	* wcsmbs/wcswidth.c: Implement `wcswidth' function from X/Open
        CAE.
	* wcsmbs/wcwidth.c: Ditto for `wcwidth'.
	* wcsmbs/wcwidth.h: Common function for definitions of above two
	functions.

	* wcsmbs/wcsxfrm.c: Implement `wcsxfrm function by using
        `strxfrm implementation.

	* wctype/wctype.c: Remove case for `wctype_t' being 16 bit type.

	* wctype/wctype.h (wint_t): Protect against multiple definition.
	(wctype_t): Always define as `unsigned long int'.

	* wctype.h: New file.  Wrapper around wctype/wctype.h.

	* hurd/hurdstartup.c (_hurd_split_args): Function removed.
	(_hurd_startup): Use argz functions.

	* hurd/hurdexec.c: Use argz functions.
1996-05-01 13:55:18 +00:00
Roland McGrath
7b3547eb0f Sun Apr 28 14:14:35 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* sysdeps/unix/sysv/linux/i386/Makefile: New file.

Wed Apr 24 17:35:30  Ulrich Drepper  <drepper@cygnus.com>

	* inet/netinet/in.h, socket/sys/socket.h: Move to
	sysdeps/generic/netinet/in.h, sysdeps/generic/sys/socket.h.
	* netinet/in.h, sys/socket.h: Remove file.

	* misc/Makefile (routines): Add fdatasync.

	* posix/Makefile (headers): Add sched.h.
	(routines): Add nanosleep, sched_setp, sched_getp, sched_sets,
	sched_gets, sched_yield, sched_primax, sched_primin, sched_rr_gi.

	* posix/getconf.c (vars): Add entries for _POSIX_REALTIME_SIGNALS,
	_POSIX_PRIORITY_SCHEDULING, _POSIX_TIMERS, _POSIX_ASYNCHRONOUS_IO,
	_POSIX_PRIORITIZED_IO, _POSIX_SYNCHRONIZED_IO, _POSIX_FSYNC,
	_POSIX_MAPPED_FILES, _POSIX_MEMLOCK, _POSIX_MEMLOCK_RANGE,
	_POSIX_MEMORY_PROTECTION, _POSIX_MESSAGE_PASSING,
	_POSIX_SEMAPHORES, _POSIX_SHARED_MEMORY_OBJECTS.

	* posix/sched.h: New file.  Header for POSIX scheduling interface.

	* posix/unistd.h: Describe options from POSIX.4.
	Add declaration of fdatasync.

	* sysdeps/generic/confname.h: Add definition for
	 _SC_REALTIME_SIGNALS, _SC_PRIORITY_SCHEDULING, _SC_TIMERS,
	_SC_ASYNCHRONOUS_IO, _SC_PRIORITIZED_IO, _SC_SYNCHRONIZED_IO,
	_SC_FSYNC, _SC_MAPPED_FILES, _SC_MEMLOCK, _SC_MEMLOCK_RANGE,
	_SC_MEMORY_PROTECTION, _SC_MESSAGE_PASSING,
	_SC_SEMAPHORES, _SC_SHARED_MEMORY_OBJECTS.

	* sysdeps/generic/fdatasync.c: New file.  Default implementation
	simply uses fsync.

	* sysdeps/generic/netinit/in.h: Moved to here from inet/netinet/in.h.

	* sysdeps/generic/schedbits.h: New file.  System dependent
	defintion for POSIX.4 scheduling interface.

	* sysdeps/generic/sys/socket.h: Moved to here from socket/sys/socket.h.

	* sysdeps/stub/nanosleep.c, sysdeps/stub/sched_getp.c,
	sysdeps/stub/sched_gets.c, sysdeps/stub/sched_primax.c,
	sysdeps/stub/sched_primin.c, sysdeps/stub/sched_rr_gi.c,
	sysdeps/stub/sched_setp.c, sysdeps/stub/sched_sets.c,
	sysdeps/stub/sched_yield.c: New file:  Stub implementation
	for systems missing these POSIX.4 system calls.

	* sysdeps/unix/sysv/linux/gnu/types.h,
	sysdeps/unix/sysv/linux/ioctls.h: Use kernel header for
	data type definitions.

	* sysdeps/unix/sysv/linux/netinet/in.h: New file.  Linux
	specific version.

	* sysdeps/unix/sysv/linux/posix_opt.h: New file.  Define POSIX
	options applicable for Linux.

	* sysdeps/unix/sysv/linux/syscalls.list: Add definitions for
	fdatasync, nanosleep, sched_setparam, sched_getparam,
	sched_setscheduler, sched_getscheduler, sched_yield,
	sched_get_priority_max, sched_get_priority_min, and
	sched_rr_get_interval.

	* sysdeps/unix/sysv/linux/sysconf.c: Add handling of POSIX.4
	options.

	* sysdeps/unix/sysv/linux/termbits.h: Use kernel headers.

	* time/sys/time.h: Remove definition of `struct timespec'.

	* time/time.h (struct timespec): Move definition to here.

 	variable, LUCKY, to use instead of setting D to -1 (which fouls
1996-04-28 18:25:22 +00:00
Roland McGrath
9a8c0d4f41 Tue Apr 23 15:56:56 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* config.h.in (HAVE_REGEX): New macro.

	* sysdeps/unix/syscalls.list: Add statfs, fstatfs.
	* io/Makefile (headers): Add sys/statfs.h, statfsbuf.h.
	(routines): Add statfs, fstatfs.
	* sysdeps/mach/hurd/statfs.c: New file.
	* sysdeps/mach/hurd/fstatfs.c: New file.
	* sysdeps/stub/fstatfs.c: New file.
	* sysdeps/stub/statfs.c: New file.
	* io/sys/statfs.h: New file.
	* sysdeps/generic/statfsbuf.h: New file.
	* sysdeps/unix/sysv/linux/statfsbuf.h: New file.

Tue Apr 23 00:06:47 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

	* malloc/Makefile (gmalloc-routines): Add valloc back here.
	(dist-routines): Remove it here.
	* malloc/valloc.c [_MALLOC_INTERNAL && GMALLOC_INHIBIT_VALLOC]
	(ELIDE_VALLOC): Define it.
	[! ELIDE_VALLOC]: Make whole file conditional on this.
	* malloc/malloc.h (valloc): Make decl conditional on
	[!GMALLOC_INHIBIT_VALLOC] instead of [!emacs].

Mon Apr 22 00:02:19 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

	* MakeTAGS: Include version.mk.
	(po/SYS_libc.pot): Add missing / in sed s cmd.
1996-04-24 00:58:47 +00:00
Roland McGrath
b20e47cb14 Tue Mar 19 14:18:42 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu>
* sysdeps/unix/bsd/pause.c: Moved to sysdeps/unix/common/pause.c.

Mon Mar  4 20:17:28 1996  David Mosberger-Tang  <davidm@azstarnet.com>

	* sysdeps/unix/sysv/linux/adjtime.c: Use INT_MAX instead of LONG_MAX.

	* sysdeps/unix/sysv/Makefile (sysdep_routines): Don't add s_getdents.

	* sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Don't add mount,
	umount.

	* sysdeps/alpha/__math.h (atan, cabs): New functions.

	* sysdeps/unix/sysv/linux/alpha/sigsuspend.S: new file (syscall
 	expects set-value, not pointer to it).

Sun Feb 25 22:36:10 1996  David Mosberger-Tang  <davidm@azstarnet.com>

	* sysdeps/unix/sysv/linux/alpha/profil-counter.h: New file.

	* gmon/gmon.c (__bb_head): new variable.
	(write_hist, write_call_graph, write_bb_counts): new functions.
	(_mcleanup): modified to call above functions instead of directly
 	writing out gmon.out.
	* gmon/sys/gmon.h (struct __bb): New type.
	(struct gmonhdr): Type removed.
	(struct gmonparam): New member `log_hashfraction'.
	(GMONVERSION): Macro removed.

	* gmon/sys/gmon_out.h, gmon/bb_exit_func.c,
 	sysdeps/generic/bb_init_func.c, sysdeps/alpha/bb_init_func.S: new
 	files.
	* gmon/Makefile (headers): Add sys/gmon_out.h.
	(routines): Add bb_init_func, bb_exit_func.

	* gmon/mcount.c: Avoid integer division.

Wed Feb 21 23:56:41 1996  David Mosberger-Tang  <davidm@azstarnet.com>

	* sysdeps/alpha/setjmp.S: switched order in which sp and fp are
 	passed to match what __sigsetjmp_aux() expects.

Tue Feb 20 11:33:46 1996  David Mosberger-Tang  <davidm@azstarnet.com>

	* sysdeps/unix/sysv/linux/alpha/syscalls.list (select, bind,
 	connect, getpeername, getsockname, listen, recv, recvfrom,
 	recvmsg, send, sendmsg, sendto, setsockopt, shutdown, socketpair):
 	added to override same-name assembly file in the parent directory.

	* stdlib/stdlib.h: add include of sys/types.h in front of random
 	etc declarations to ensure int32_t is declared.

	* stdlib/random.c, stdlib/random_r.c: replaced "long int" by int32_t
	where 32 bit integers are required.  Also change LONG_MAX into
	0x7fffffff since the intent is to turn off the sign bit in a
	32 bit integer.

	* time/offtime.c (__offtime): Use Paul Eggert's code to deal
	with very large values for "days" (e.g., 64 bit values).

Mon Feb 19 22:22:12 1996  David Mosberger-Tang  <davidm@azstarnet.com>

	* stdlib/stdlib.h (__random, __random_r, random_r, struct
 	random_data): use int32_t instead of `long int'.

Sat Feb 17 11:29:29 1996  David Mosberger-Tang  <davidm@azstarnet.com>

	* sysdeps/unix/sysv/linux/alpha/ioperm.c: new file.

	* sysdeps/alpha/ffs.S: new file.

	* sysdeps/alpha/fabs.c: File removed.

	* time/tzfile.c (__tzfile_read): counter variable is i, *not*
	num_transitions!

	* time/offtime.c: make capable of dealing with very large (64 bit)
 	time_t values.  Use old algorithm until a year is reached that
	is an integer multiple of 400, then use DAYS_PER_400_YEARS to
	do the remainder in a single division.

	* sysdeps/generic/ffs.c (ffs): fix variable declarations to
	be unsigned int, not unsigned long.

	* string/test-ffs.c (main): add test case with all upper bits
	set.

	* stdlib/tst-strtol.c: add tests cases for machines where
	sizeof(long)==8.

	* stdlib/testrand.c (main): disallow rand() to return negative
 	integers.

	* stdlib/testmb.c (main): fix format to use %lx instead of %x.

	* stdlib/stdlib.h: on 64 bit machines, declare
	struct random_data, __random(),  __random_r, and random_r to
	return "int" instead of "long int".

	* stdlib/random_r.c: 64 bit machines use "int" instead of "long
 	int".  Similarly, use INT_MAX instead of LONG_MAX.

	* stdlib/random.c: on 64 bit machines, randtbl[] and __random[]
 	need to operate on "int" instead of "long int".

	* locale/locfile-hash.c (compute_hashval): make shifted constant
	a long to avoid loosing bits on 64 bit machines.

	* dirent/tst-seekdir.c (main): fix confusing comment; print
	a line to mark point where directory is rewound.

Fri Feb 16 15:01:49 1996  David Mosberger-Tang  <davidm@azstarnet.com>

	* time/strftime.c (strftime): any hour > 11 is PM (not > 12!).

Wed Feb 14 00:21:17 1996  David Mosberger-Tang  <davidm@azstarnet.com>

	* sysdeps/unix/sysv/linux/alpha/Makefile,
	sysdeps/unix/sysv/linux/alpha/brk.S,
	sysdeps/unix/sysv/linux/alpha/fpu_control.c,
	sysdeps/unix/sysv/linux/alpha/fpu_control.h,
	sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S,
	sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S,
	sysdeps/unix/sysv/linux/alpha/pipe.S,
	sysdeps/unix/sysv/linux/alpha/setfpucw.c,
	sysdeps/unix/sysv/linux/alpha/sigprocmask.c,
	sysdeps/unix/sysv/linux/alpha/speed.c,
	sysdeps/unix/sysv/linux/alpha/start.S,
	sysdeps/unix/sysv/linux/alpha/syscall.S,
	sysdeps/unix/sysv/linux/alpha/syscalls.list,
	sysdeps/unix/sysv/linux/alpha/alpha/regdef.h,
	sysdeps/unix/sysv/linux/alpha/sysdep.S,
	sysdeps/unix/sysv/linux/alpha/sysdep.h: New files.

	* sysdeps/alpha/setjmp_aux.c (__sigsetjmp_aux): restore return
 	address register before returning (gcc 2.7.1 doesn't do it,
 	presumably because $26 is declared as a global variable).

	* sysdeps/unix/sysv/linux/sys/mman.h: msync was missing "flags"
	argument.

	* sysdeps/unix/alarm.c (alarm): do roundup using test & increment
	instead of multiplication.

	* sysdeps/posix/sleep.c (sleep): initialize sa_mask to mask of
	currently blocked signals instead of the empty mask to ensure
	that execution of alarm handler occurs with none of the currently
	blocked signals enabled.

	* sysdeps/unix/alpha/sysdep.h: new file (adapted from OSF/1 version).

	* sysdeps/unix/bsd/osf/alpha/sysdep.h: include
 	sysdeps/unix/alpha/sysdep.h and removed definitions now in that file.

	* sysdeps/alpha/divrem.S, sysdeps/alpha/htonl.S,
	sysdeps/alpha/htons.S, sysdeps/alpha/machine-gmon.h,
	sysdeps/alpha/_mcount.S, sysdeps/alpha/ntohl.s, sysdeps/alpha/ntohs.s,
	sysdeps/alpha/strlen.S: New files.

	* sysdeps/alpha/divl.S, sysdeps/alpha/divlu.S, sysdeps/alpha/divq.S,
	sysdeps/alpha/divqu.S, sysdeps/alpha/divrem.m4,
	sysdeps/alpha/macros.m4, sysdeps/alpha/reml.S, sysdeps/alpha/remlu.S,
	sysdeps/alpha/remq.S, sysdeps/alpha/remqu.S, sysdeps/alpha/strlen.c:
 	Removed.

	* sysdeps/generic/sbrk.c (__sbrk): argument is of type ptrdiff_t, not
	int.

	* sysdeps/alpha/__longjmp.c (__longjmp): moved dummy while loop
	to end of function to avoid a jump across NOPs.

	* sysdeps/alpha/Makefile (sysdep_routines): Removed all rules
 	pertaining to integer division/remainder routines since new code
 	doesn't require them.

	* sunrpc/xdr_mem.c, sunrpc/xdr_stdio.c: Use 4 instead of sizeof(long)
	where 32 bit quantities are consumed/stored.  Various other minor
	64-bit cleanups (casting).

	* sunrpc/xdr.c (xdr_int): test for sizeof(int)==4 to determine
 	whether xdr_long or xdr_short should be used to encode an int.
  	Notice that an xdr_long is 4 bytes independent of the architecture
	(otherwise no Alpha could interoperate with existing NFS servers,
 	for example).  Ditto for enums.

	* sunrpc/svc_udp.c (svcudp_recv): changed test from 4*sizeof(u_long)
	to 16 since it really wants 16 bytes.

	* sunrpc/svc.c (maskp): changed from u_long* to u_int32*.

	* sunrpc/rpc_cmsg.c (xdr_callmsg), sunrpc/svc_authux.c: increment
	"buf" pointer by casting it to a char* first since a long* may be 8
 	bytes or more and oa->oa_length may be any multiple of 4.

	* sunrpc/rpc/xdr.h (IXDR_GET_LONG, IXDR_PUT_LONG): change casts to
 	u_int32_t (instead of u_long).

	* sunrpc/clnt_udp.c (clntudp_call): replaced sizeof(u_long) by 4
	since it really is testing for 32 bits.  Fixed casts to use
	u_int32 instead of u_long.
	* sunrpc/xdr_rec.c: Likewise.

	* sunrpc/clnt_tcp.c (clnttcp_call): replaced u_long by u_int32.
	* sunrpc/rpc/auth.h: Likewise.

	* limits.h (LONG_MAX, LONG_MIN, ULONG_MAX): use 64 bit values
	for Alpha.

Tue Mar 19 13:27:49 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>

	* sysdeps/i386/fpu/__math.h: New file.
	Contributed by John C. Bowman <bowman@hagar.ph.utexas.edu>.

Sun Mar 17 00:28:16 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* sysdeps/posix/clock.c: Don't multiply the return value by
	CLOCKS_PER_SEC or CLK_TCK.

	* sysdeps/mach/hurd/getcwd.c: Fail with ENOENT if a parent directory
	scan finds no match.

	* posix/unistd.h (setpgrp): Declare no-arg version unless __FAVOR_BSD.
	* misc/bsd-compat.c (setpgrp): New function, two arg version.
	* sysdeps/stub/setpgid.c: Remove setpgrp alias.
	* sysdeps/mach/hurd/setpgid.c: Likewise.
	* sysdeps/unix/sysv/sysv4/setpgid.c: Likewise.
	* sysdeps/unix/common/syscalls.list (setpgid): Remove setpgrp alias.
	* sysdeps/unix/sysv/irix4/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/setpgrp.c: Obsolete file removed.
	* posix/setpgrp.c (setpgrp): New file.
	* posix/Makefile (routines): Add setpgrp.

Tue Feb  6 12:46:29 1996  David Mosberger-Tang  <davidm@azstarnet.com>

	* libc-symbols.h (weak_alias, weak_symbol): added definitions
	for ECOFF (HAVE_ECOFF).
1996-03-19 20:21:54 +00:00
Roland McGrath
b7459e56bd Tue Feb 27 12:14:59 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu>
* time/strftime.c: Support - and _ flags to affect number padding.

	* sysdeps/unix/common/tcsendbrk.c: New file.
1996-02-27 19:19:12 +00:00
Roland McGrath
92777700d2 Mon Feb 26 10:22:30 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu>
* sysdeps/unix/dirstream.h: Rewritten.
	* sysdeps/unix/readdir.c: Rewritten.
	* sysdeps/unix/telldir.c: Rewritten.
	* sysdeps/unix/closedir.c: Use <...> instead of "..." for dirstream.h.
	Remove __ from DIR struct member names.
	* sysdeps/unix/dirfd.c: Likewise.
	* sysdeps/unix/seekdir.c: Likewise.
	* sysdeps/unix/rewinddir.c: Likewise.
	* sysdeps/unix/opendir.c: Likewise.  Don't allocate extra space after
	DIR structure.
	* sysdeps/stub/direct.h: File removed.
	* sysdeps/unix/bsd/bsd4.4/direct.h: File removed.
	* sysdeps/unix/bsd/direct.h: File removed.
	* sysdeps/unix/common/direct.h: File removed.
	* sysdeps/unix/sysv/irix4/direct.h: File removed.
	* sysdeps/unix/sysv/isc3/direct.h: File removed.
	* sysdeps/unix/sysv/sco3.2.4/direct.h: File removed.
	* sysdeps/unix/sysv/sysv4/solaris2/direct.h: File removed.
	* sysdeps/unix/common/direntry.h: New file.
	* sysdeps/unix/bsd/direntry.h: New file.
	* sysdeps/unix/bsd/bsd4.4/direntry.h: New file.
	* sysdeps/unix/sysv/direntry.h: New file.
	* sysdeps/stub/direntry.h: New file.
	* dirent/dirent.h (struct dirent): Type removed.  Include <direntry.h>
	to define it.
	(_D_EXACT_NAMLEN, _D_ALLOC_NAMLEN): New macros.
	* dirent/Makefile (headers): Add direntry.h.
	(distribute): Remove direct.h.
	* sysdeps/posix/getcwd.c: Use new macros instead of d_namlen.
	* dirent/scandir.c: Likewise.
	* io/fts.c (fts_build): Likewise.
	* io/ftw.c (ftw_dir): Likewise.
	* sysdeps/posix/ttyname.c: Likewise.

	* sysdeps/unix/sysv/sysv4/solaris2/syscalls.list: New file.

	* sysdeps/mach/hurd/profil.c (MAX_PC_SAMPLES): New macro.
	(collector_timeout): New static variable.
	(update_waiter): Actually call __task_enable_pc_sampling.
	Set collector_timeout based on the `tick' count returned.
	(profile_waiter): Use MAX_PC_SAMPLES.  Set nsamples before RPC.
	Use collector_timeout in __mach_msg call.

	* gmon/Makefile (noprof): New variable containing mcount.
	Append profil unless it is in $(unix-syscalls).
	(mcount.po): Use $(noprof) for list of targets in this rule.

	* libc-symbols.h: Define _LIBC before #include <config.h>.

Sun Feb 25 12:29:23 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>

	* config.h.in [_LIBC] (HAVE_STRERROR): Define it.
	Protect 2nd page of #undef's for generator programs with #ifndef _LIBC.

	* time/zic.c, time/zdump.c, time/private.h: Updated from ADO's latest.

Fri Feb  9 12:40:19 1996  Brendan Kehoe  <brendan@lisa.cygnus.com>

 	* libio/cleanup.c (_IO_cleanup_registration_needed)
	[!_G_HAVE_ATEXIT]: Init to NULL.
	* libio/filedoalloc.c (_IO_cleanup_registration_needed): Remove decl.

Thu Feb  8 08:12:50 1996  Brendan Kehoe  <brendan@cygnus.com>

	* libio/filedoalloc.c (_IO_cleanup_registration_needed): Revert
	previous change, since cleanup.c only defines it if _G_HAVE_ATEXIT.

Wed Feb  7 15:10:17 1996  Brendan Kehoe  <brendan@lisa.cygnus.com>

	* libio/filedoalloc.c (_IO_cleanup_registration_needed): Declare as
	extern.

Sat Feb 24 11:34:13 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>

	* sysdeps/i386/memcmp.S: Fix argument %esp offsets.

	* time/sys/time.h (timeradd, timersub): New macros; BSD has these.
1996-02-27 00:55:03 +00:00
Roland McGrath
bfc04a9ff1 Sun Feb 18 15:08:10 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/posix/utimes.c (__utimes): There are 1000000 usecs in a
	sec.

Sun Feb 18 13:56:00 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* elf/Makefile, time/Makefile: Make `all' the default target.

Mon Feb 19 18:09:04 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>

	* misc/sys/ptrace.h: Moved to ...
	* sysdeps/generic/sys/ptrace.h: ... here.
	* sys/ptrace.h: File removed.

Sun Feb 18 12:13:07 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* sysdeps/unix/sysv/linux/Makefile (headers): Add fpu_control.h.

	* sysdeps/unix/sysv/linux/i386/sysdep.S (errno): Put it into .bss
 	so that the symbol alias works.

	* sysdeps/unix/sysv/linux/m68k/fpu_control.h (_FPU_SETCW): Corrected.

	* sysdeps/unix/sysv/linux/resourcebits.h: New file.

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

	* sysdeps/unix/sysv/linux/syscalls.list: Add getegid, geteuid,
	getppid and reboot.

	* sysdeps/unix/sysv/linux/sysconf.c: Special version that does not
	use getdtablesize.

Sat Feb 17 10:30:21 1996  David Mosberger-Tang  <davidm@AZStarNet.com>

	* stdio-common/printf_fp.c, stdlib/strtod.c, sysdeps/ieee754/dbl2mpn.c,
	sysdeps/ieee754/ldbl2mpn.c, sysdeps/ieee754/mpn2dbl.c,
	sysdeps/ieee754/mpn2ldbl.c: Cast left operands of shift instructions
	to `long' where necessary.

Thu Feb 15 20:04:50 1996  Ulrich Drepper  <drepper@gnu.ai.mit.edu>

	* stdlib/fpioconst.h: Introduce new constant _FPIO_CONST_OFFSET.
	* stdio-common/printf_fp.c, stdlib/strtod.c: Use _FPIO_CONST_OFFSET
	to correctly access MPN array depending on architecture.
1996-02-19 23:14:44 +00:00
Roland McGrath
38334018ff Tue Feb 13 00:12:12 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu>
* sysdeps/i386/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE,
	elf_machine_relplt): New macros.
	* elf/dl-runtime.c: New file.
	* sysdeps/i386/dl-runtime.c, sysdeps/stub/dl-runtime.c: Files removed.
	* sysdeps/i386/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE,
	elf_machine_relplt): New macros.
	* elf/dl-runtime.c: New file.
	* sysdeps/i386/dl-runtime.c, sysdeps/stub/dl-runtime.c: Files removed.
1996-02-13 07:05:16 +00:00
Roland McGrath
dbdb6189d5 Tue Feb 13 00:12:12 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu>
* gmon/Makefile (headers): Remove machine-gmon.h.
	* sysdeps/stub/machine-gmon.h, sysdeps/i386/machine-gmon.h: Removed.
	* gmon/mcount.c [! NO_UNDERSCORES] (_mcount): Specify "mcount" as
	the asm name.
	(_mcount): Define normally, taking no args.
	Use __builtin_return_address to fetch PC values of caller and caller's
	caller.
Tue Feb 13 00:12:12 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>

	* gmon/Makefile (headers): Remove machine-gmon.h.
	* sysdeps/stub/machine-gmon.h, sysdeps/i386/machine-gmon.h: Removed.
	* gmon/mcount.c [! NO_UNDERSCORES] (_mcount): Specify "mcount" as
	the asm name.
	(_mcount): Define normally, taking no args.
	Use __builtin_return_address to fetch PC values of caller and caller's
	caller.

	* Makerules: Rewrote rules to update libc archives of all flavors.
	Define separate specific rules for each flavor using o-iterator.

	* sysdeps/unix/Makefile: Include s-proto.d only ifdef subdir.

Sat Feb 10 11:35:16 1996 Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* Makerules (ar-symtab-name): New macro.  Replace all occurences
	of __.SYMDEF by $(ar-symtab-name).
	* sysdeps/unix/sysv/Makefile (ar-symtab-name): Define as empty.

	* Makefile (configure, %/configure): Depend on aclocal.m4.
	* Make-dist (configure, %/configure): Likewise.

	* sysdeps/unix/Makefile: Include s-proto.d for its deps.

	* gmon/sys/gmon.h: Don't include machine-gmon.h; those defns are
	only needed in the implementation, not for any users.

	* time/northamerica: Updated from ADO 96c, new rules for Mexico in
	1996.
1996-02-13 05:46:59 +00:00
Roland McGrath
4ca84cff3b Wed Feb 7 18:48:30 1996 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* hurd/hurdmsg.c (_S_msg_report_wait): Function removed.
	* hurd/report-wait.c: New file.
	* hurd/Makefile (routines): Added report-wait.

	* sysdeps/mach/hurd/Makefile (inhibit-unix-syscalls): New variable.

	* sysdeps/mach/hurd/i386/intr-msg.h (struct mach_msg_trap_args):
	New type.
	(SYSCALL_EXAMINE, MSG_EXAMINE): New inline functions.
	* sysdeps/mach/hurd/i386/trampoline.c (struct mach_msg_trap_args):
	Structure moved to intr-msg.h; include that.

	* time/Makefile (CFLAGS-ialloc.c): Add -Wno-unused.
	(CFLAGS-scheck.c): New variable.

	* sysdeps/mach/hurd/dl-sysdep.c (__hurd_sigthread_stack_base,
	__hurd_sigthread_stack_end, __hurd_sigthread_variables,
	__hurd_threadvar_stack_mask): New variables.

	* sysdeps/mach/hurd/fork.c: Set the new task's exception port to
	its new message port.

	* misc/init-misc.c: Put __init_misc in the __libc_subinit set.

	* configure.in (uname): Add quoting.

	* sysdeps/mach/hurd/fchdir.c: Don't consult errno unless lookup fails.
	* hurd/fchroot.c: Likewise.

	* posix/sys/types.h [GCC >= 2.7]: Define intN_t/u_intN_t using
	__attribute__ ((__mode__ (__XX__))).

Wed Feb 7 03:24:05 1996 Torbjorn Granlund  <tege@tmg.se>

	* sysdeps/i386/i586/memcopy.h (WORD_COPY_FWD): Manually allocate
	destination cache lines.
	(WORD_COPY_BWD): Likewise.

Wed Feb  7 14:16:36 1996  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>

	* sysdeps/generic/Makefile (make_siglist): Get signum.h absolute
	file name first thing, before $(native-compile) changes directories.

	From Gord Matzigkeit <gord@enci.ucalgary.ca>:
	* sysdeps/unix/make_errlist.c: Use strerror if available.
	* sysdeps/unix/configure.in: New file

	* sysdeps/unix/bsd/sun/syscalls.list: Added sigvec.
	* sysdeps/unix/bsd/sun/sigvec.S: File removed.

	* sysdeps/stub/sendto.c: Make sockaddr arg pointer to const.
	* sysdeps/stub/connect.c: Likewise.
	* sysdeps/stub/bind.c: Likewise.

	* hurd/hurdlookup.c (__hurd_file_name_lookup_retry): RETRYNAME of
	"" is only special for FS_RETRY_NORMAL; for FS_RETRY_REAUTH, do
	another dir_lookup of "".
1996-02-08 02:10:15 +00:00
Roland McGrath
f0b1101835 Mon Jan 29 21:53:40 1996 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* sysdeps/stub/msync.c (msync): Declare third arg FLAGS.

	* resolv/Makefile (+cflags): Append to this instead of CFLAGS.

Mon Jan 29 16:29:16 1996  Miles Bader  <miles@gnu.ai.mit.edu>

	* sysdeps/mach/hurd/select.c (__select): Recalculate GOT to
 	include an increment for each operation allowed on each fd.

Mon Jan 29 11:44:38 1996  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>

	* sysdeps/unix/sysv/linux/configure: Set $inhibit_glue.

	* Makefile: Use -include for sysd-dirs.

	* configure.in (uname): Check for uname in syscalls.list files.
	* sysdeps/unix/sysv/syscalls.list: Remove uname.
	* sysdeps/unix/syscalls.list: Add uname.

	* stdlib/strtol.c (weak1): New macro, to get the right name declared
	weak.

	* sysdeps/posix/getcwd.c (size_t): Don't define #ifdef __GNU_LIBRARY__.

	* db/hash/ndbm.c: Change all uses of `errno' struct member to `errnum'.
	(dbm_open): Use dynamic allocation for file name buffer, instead of
	limitting its size to MAXPATHLEN.

	* db/btree/bt_open.c (tmp): Use dynamic allocation for file name
	buffer, instead of limitting its size to MAXPATHLEN.

	* db/hash/hash.h (HTAB): Rename member `errno' to `errnum'.
	* db/hash/hash.c: Change all uses of `errno' struct member to `errnum'.
1996-01-30 10:00:24 +00:00
Roland McGrath
c43b8c4bea Wed Jan 17 11:04:58 1996 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* io/sys/stat.h (_STAT_VER, _MKNOD_VER): New macros.
	(__xstat, __fxstat, __lxstat, __xmknod): Declare new functions.
	[__GNUC__] (stat, fstat, lstat, mknod): Define these (and __ names)
	as `extern inline's calling the `x' functions.
	* io/fstat.c: New file.
	* io/lstat.c: New file.
	* io/stat.c: New file.
	* sysdeps/generic/lstat.c: File removed.
	* sysdeps/generic/lxstat.c: New file.
	* sysdeps/mach/hurd/fstat.c: File removed.
	* sysdeps/mach/hurd/fxstat.c: New file.
	* sysdeps/mach/hurd/lstat.c: File removed.
	* sysdeps/mach/hurd/lxstat.c: New file.
	* sysdeps/mach/hurd/mknod.c: File removed.
	* sysdeps/mach/hurd/stat.c: File removed.
	* sysdeps/mach/hurd/xmknod.c: New file.
	* sysdeps/mach/hurd/xstat.c: New file.
	* sysdeps/stub/fstat.c: File removed.
	* sysdeps/stub/fxstat.c: New file.
	* sysdeps/stub/lstat.c: File removed.
	* sysdeps/stub/lxstat.c: New file.
	* sysdeps/stub/mknod.c: File removed.
	* sysdeps/stub/stat.c: File removed.
	* sysdeps/stub/xmknod.c: New file.
	* sysdeps/stub/xstat.c: New file.
	* sysdeps/unix/common/lstat.S: File removed.
	* sysdeps/unix/common/lxstat.c: New file.
	* sysdeps/unix/fstat.S: File removed.
	* sysdeps/unix/fxstat.c: New file.
	* sysdeps/unix/mknod.S: File removed.
	* sysdeps/unix/stat.S: File removed.
	* sysdeps/unix/sysv/linux/fstat.c: File removed.
	* sysdeps/unix/sysv/linux/i386/fxstat.S: File removed.
	* sysdeps/unix/sysv/linux/i386/lxstat.S: File removed.
	* sysdeps/unix/sysv/linux/i386/xmknod.S: File removed.
	* sysdeps/unix/sysv/linux/i386/xstat.S: File removed.
	* sysdeps/unix/sysv/linux/lstat.c: File removed.
	* sysdeps/unix/sysv/linux/mknod.c: File removed.
	* sysdeps/unix/sysv/linux/stat.c: File removed.
	* sysdeps/unix/sysv/sysv4/i386/fstat.S: File removed.
	* sysdeps/unix/sysv/sysv4/i386/lstat.S: File removed.
	* sysdeps/unix/sysv/sysv4/i386/mknod.S: File removed.
	* sysdeps/unix/sysv/sysv4/i386/stat.S: File removed.
	* sysdeps/unix/xmknod.c: New file.
	* sysdeps/unix/xstat.c: New file.
	* sysdeps/unix/mkfifo.c: Use __xmknod instead of __mknod.
	* misc/Makefile (routines): Remove mknod.
	* io/sys/stat.h (_STAT_VER, _MKNOD_VER): New macros.
	(__xstat, __fxstat, __lxstat, __xmknod): Declare new functions.
	[__GNUC__] (stat, fstat, lstat, mknod): Define these (and __ names)
	as `extern inline's calling the `x' functions.
	* io/fstat.c: New file.
	* io/lstat.c: New file.
	* io/stat.c: New file.
	* sysdeps/generic/lstat.c: File removed.
	* sysdeps/generic/lxstat.c: New file.
	* sysdeps/mach/hurd/fstat.c: File removed.
	* sysdeps/mach/hurd/fxstat.c: New file.
	* sysdeps/mach/hurd/lstat.c: File removed.
	* sysdeps/mach/hurd/lxstat.c: New file.
	* sysdeps/mach/hurd/mknod.c: File removed.
	* sysdeps/mach/hurd/stat.c: File removed.
	* sysdeps/mach/hurd/xmknod.c: New file.
	* sysdeps/mach/hurd/xstat.c: New file.
	* sysdeps/stub/fstat.c: File removed.
	* sysdeps/stub/fxstat.c: New file.
	* sysdeps/stub/lstat.c: File removed.
	* sysdeps/stub/lxstat.c: New file.
	* sysdeps/stub/mknod.c: File removed.
	* sysdeps/stub/stat.c: File removed.
	* sysdeps/stub/xmknod.c: New file.
	* sysdeps/stub/xstat.c: New file.
	* sysdeps/unix/common/lstat.S: File removed.
	* sysdeps/unix/common/lxstat.c: New file.
	* sysdeps/unix/fstat.S: File removed.
	* sysdeps/unix/fxstat.c: New file.
	* sysdeps/unix/mknod.S: File removed.
	* sysdeps/unix/stat.S: File removed.
	* sysdeps/unix/sysv/linux/fstat.c: File removed.
	* sysdeps/unix/sysv/linux/i386/fxstat.S: File removed.
	* sysdeps/unix/sysv/linux/i386/lxstat.S: File removed.
	* sysdeps/unix/sysv/linux/i386/xmknod.S: File removed.
	* sysdeps/unix/sysv/linux/i386/xstat.S: File removed.
	* sysdeps/unix/sysv/linux/lstat.c: File removed.
	* sysdeps/unix/sysv/linux/mknod.c: File removed.
	* sysdeps/unix/sysv/linux/stat.c: File removed.
	* sysdeps/unix/sysv/sysv4/i386/fstat.S: File removed.
	* sysdeps/unix/sysv/sysv4/i386/lstat.S: File removed.
	* sysdeps/unix/sysv/sysv4/i386/mknod.S: File removed.
	* sysdeps/unix/sysv/sysv4/i386/stat.S: File removed.
	* sysdeps/unix/xmknod.c: New file.
	* sysdeps/unix/xstat.c: New file.
	* sysdeps/unix/mkfifo.c: Use __xmknod instead of __mknod.
	* misc/Makefile (routines): Remove mknod.

	* sysdeps/ieee754/ieee754.h (union ieee854_long_double.ieee_nan):
	Add missing ; in little-endian case.
1996-01-18 00:35:55 +00:00
Roland McGrath
b7843ea9ff Mon Nov 27 19:24:18 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* posix/Makefile (routines): Add getsid.
	* sysdeps/unix/sysv/linux/getsid.S: New file.
	* sysdeps/mach/hurd/getsid.c: New file.
	* sysdeps/stub/getsid.c: New file.
	* posix/unistd.h [__USE_GNU]: Declare getsid.
1995-11-28 10:00:22 +00:00
Roland McGrath
b122c7038e Mon Oct 9 02:54:14 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* Makeconfig (config-LDFLAGS): Define to
	-Wl-dynamic-linker=$(libdir)$(rtld-installed-name).
	(rtld-installed-name): New variable.
	* elf/Makefile (install-lib): Variable removed.
	(install-others): Define this instead, to
	$(libdir)(rtld-installed-name). 
	($(libdir)(rtld-installed-name)): New target; install from ld.so.

	* elf/ldd.sh.in: New file.
	* elf/Makefile (distribute): Add ldd.sh.in.
	(install-bin): Add ldd.
	($(objpfx)ldd: ldd.sh.in): New rule.

	* sysdeps/mach/hurd/dl-sysdep.c: Use __hurd_fail throughout.
	* hurd/hurd.h (__hurd_fail): Replace macro with inline function.
	Translate some Mach errors to Hurd errors.

	* elf/rtld.c (dl_main): Under --list, print msg if executable is
	statically linked.

	* elf/dl-load.c (_dl_map_object_from_fd): Rewrote program header
	table processing.

Sat Oct  7 01:25:48 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>

	* sysdeps/stub/machine-gmon.h: Add #error.

Fri Oct  6 01:49:48 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>

	* elf/dynamic-link.h (elf_get_dynamic_info): If DYN is null, don't
	examine it.
1995-10-09 07:06:29 +00:00
Roland McGrath
3ec41e0302 * sysdeps/mach/hurd/getcwd.c (__getcwd): Renamed from getcwd.
(getcwd): Define as weak alias.
	* sysdeps/posix/getcwd.c: Likewise.
	* sysdeps/stub/getcwd.c: Likewise.
	* posix/unistd.h: Declare __getcwd.

	* string/string.h: Declare __strcasecmp.
	* sysdeps/generic/strcasecmp.c (__strcasecmp): Renamed from
	strcasecmp.
	(strcasecmp): Define as weak alias.

	* string/string.h: Declare __stpcpy.
	* sysdeps/generic/stpcpy.c (__stpcpy): Renamed from stpcpy.
	(stpcpy): Define as weak alias.
1995-09-28 09:00:19 +00:00
Roland McGrath
3f33a4ce76 * sysdeps/unix/i386/sysdep.h [HAVE_ELF] (ASM_TYPE_DIRECTIVE):
Don't use `type' for arg name, since we are using it as a keyword
	in the rhs. 

	* sysdeps/unix/configure.in: Check for syscalls getpriority,
	setpriority, getrlimit, setrlimit.

	* sysdeps/posix/truncate.c: Include fcntl.h.

	* sysdeps/generic/getdomain.c: Include string.h for strncpy decl.

	* sysdeps/stub/getpriority.c: Don't include obsolete gnu-stabs.h;
	use new stub_warning syntax.
	* sysdeps/stub/setpriority.c: Likewise.
	* sysdeps/stub/__longjmp.c: Likewise.
	* sysdeps/stub/_exit.c: Likewise.
	* sysdeps/stub/accept.c: Likewise.
	* sysdeps/stub/acos.c: Likewise.
	* sysdeps/stub/alarm.c: Likewise.
	* sysdeps/stub/asin.c: Likewise.
	* sysdeps/stub/atan2.c: Likewise.
	* sysdeps/stub/bind.c: Likewise.
	* sysdeps/stub/cbrt.c: Likewise.
	* sysdeps/stub/chroot.c: Likewise.
	* sysdeps/stub/closedir.c: Likewise.
	* sysdeps/stub/connect.c: Likewise.
	* sysdeps/stub/cos.c: Likewise.
	* sysdeps/stub/cosh.c: Likewise.
	* sysdeps/stub/ctermid.c: Likewise.
	* sysdeps/stub/cuserid.c: Likewise.
	* sysdeps/stub/defs.c: Likewise.
	* sysdeps/stub/exp.c: Likewise.
	* sysdeps/stub/fmod.c: Likewise.
	* sysdeps/stub/frexp.c: Likewise.
	* sysdeps/stub/fsync.c: Likewise.
	* sysdeps/stub/getcwd.c: Likewise.
	* sysdeps/stub/getenv.c: Likewise.
	* sysdeps/stub/gethostid.c: Likewise.
	* sysdeps/stub/getlogin.c: Likewise.
	* sysdeps/stub/getpeername.c: Likewise.
	* sysdeps/stub/getrlimit.c: Likewise.
	* sysdeps/stub/getsockname.c: Likewise.
	* sysdeps/stub/getsockopt.c: Likewise.
	* sysdeps/stub/listen.c: Likewise.
	* sysdeps/stub/log.c: Likewise.
	* sysdeps/stub/log10.c: Likewise.
	* sysdeps/stub/mkfifo.c: Likewise.
	* sysdeps/stub/morecore.c: Likewise.
	* sysdeps/stub/nice.c: Likewise.
	* sysdeps/stub/nlist.c: Likewise.
	* sysdeps/stub/opendir.c: Likewise.
	* sysdeps/stub/pipestream.c: Likewise.
	* sysdeps/stub/ptrace.c: Likewise.
	* sysdeps/stub/putenv.c: Likewise.
	* sysdeps/stub/readdir.c: Likewise.
	* sysdeps/stub/reboot.c: Likewise.
	* sysdeps/stub/recv.c: Likewise.
	* sysdeps/stub/recvfrom.c: Likewise.
	* sysdeps/stub/rename.c: Likewise.
	* sysdeps/stub/rewinddir.c: Likewise.
	* sysdeps/stub/seekdir.c: Likewise.
	* sysdeps/stub/send.c: Likewise.
	* sysdeps/stub/sendto.c: Likewise.
	* sysdeps/stub/setegid.c: Likewise.
	* sysdeps/stub/seteuid.c: Likewise.
	* sysdeps/stub/setgroups.c: Likewise.
	* sysdeps/stub/sethostid.c: Likewise.
	* sysdeps/stub/sethostname.c: Likewise.
	* sysdeps/stub/setjmp.c: Likewise.
	* sysdeps/stub/setrlimit.c: Likewise.
	* sysdeps/stub/setsockopt.c: Likewise.
	* sysdeps/stub/shutdown.c: Likewise.
	* sysdeps/stub/signal.c: Likewise.
	* sysdeps/stub/sigsuspend.c: Likewise.
	* sysdeps/stub/sin.c: Likewise.
	* sysdeps/stub/sinh.c: Likewise.
	* sysdeps/stub/socket.c: Likewise.
	* sysdeps/stub/socketpair.c: Likewise.
	* sysdeps/stub/sqrt.c: Likewise.
	* sysdeps/stub/sync.c: Likewise.
M sysd-stdio.c
	* sysdeps/stub/system.c: Likewise.
	* sysdeps/stub/tan.c: Likewise.
	* sysdeps/stub/tanh.c: Likewise.
	* sysdeps/stub/tcdrain.c: Likewise.
	* sysdeps/stub/tcflow.c: Likewise.
	* sysdeps/stub/tcgetpgrp.c: Likewise.
	* sysdeps/stub/tcsendbrk.c: Likewise.
	* sysdeps/stub/tcsetattr.c: Likewise.
	* sysdeps/stub/tcsetpgrp.c: Likewise.
	* sysdeps/stub/telldir.c: Likewise.
	* sysdeps/stub/tempname.c: Likewise.
	* sysdeps/stub/ttyname.c: Likewise.
	* sysdeps/stub/ttyname_r.c: Likewise.
	* sysdeps/stub/utime.c: Likewise.

	* gmon/gmon.c (moncontrol): Don't cast buffer arg to profil.

	* time/mktime.c (localtime_r): Use 0 instead of NULL.
1995-09-27 16:05:25 +00:00
Roland McGrath
11c981a96d Tue Sep 26 16:50:17 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* gmon: New directory of profiling code, incorporated from
	4.4BSD-Lite and modified.
	* sysdeps/i386/machine-gmon.h: New file.
	* sysdeps/stub/machine-gmon.h: New file.
	* sysdeps/mach/hurd/profil.c: New file.
	* sysdeps/stub/profil.c: New file.
	* sysdeps/unix/bsd/profil.S: New file.
	* Makefile (subdirs): Add gmon.
	* csu/gmon-start.c: New file.
	* csu/Makefile (extra-objs): Add gmon-start.o,
	g$(start-installed-name).
	(install-lib, omit-deps): Add g$(start-installed-name).
	($(objpfx)g$(start-installed-name)): New target.
1995-09-26 20:59:38 +00:00
Roland McGrath
0324daa005 Thu Sep 21 00:03:53 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* sysdeps/stub/sys/sem_buf.h (union semun): New type.

	* sysdeps/mach/hurd/i386/init-first.c (init1) [PIC]: Call
	__libc_global_ctors.
	* sysdeps/i386/init-first.c: Rewritten.
	* sysdeps/unix/sysv/linux/i386/init-first.S: File removed.
	* sysdeps/unix/sysv/linux/i386/init-first.c: New file.

	* sysdeps/unix/sysv/linux/i386/fpu_control.h: Fix name in decl of
	___fpu_control.

	* Makerules (build-shlib): New canned sequence, broken out of
	lib%.so rule.  Link in $^ instead of just $<.
	(lib%.so: lib%_pic.a): Use it.
	(libc.so): New target; use $(build-shlib) for cmds, but also depend
	on soinit.so first and sofini.so last.

	* elf/soinit.c: New file.
	* elf/sofini.c: New file.
	* elf/Makefile (distribute): Add soinit.c and sofini.c.
	(extra-objs): Add soinit.so and sofini.so.

	* sysvipc/sys/shm.h (shmat): Fix return type to char *.
	* sysdeps/stub/sys/ipc_buf.h (key_t): Type removed.

	* misc/syslog.c (vsyslog): Rewritten using open_memstream to
	dynamically allocate buffers.

	* Makerules (install-lib-nosubdir): Make this, rather than
	install-no-libc.a, depend on the installed shared libraries.
1995-09-21 06:24:21 +00:00
Roland McGrath
60478656fa Sat Sep 16 17:47:19 1995 Ulrich Drepper <drepper@ipd.info.uni-karlsruhe.de>
* elf/elf.h (AT_GID): Fix typo: Read -> Real.

	* misc/efgvt_r.c: New file.  Reentrant version of [efg]cvt functions.
	* misc/efgcvt.c: Rewrite to use reentrant functions.
	* misc/hsearch_r.c: New file.  Reentrant version of functions from
	hsearch family.
	* misc/hsearch.c, misc/tsearch.c: New files.
	* misc/Makefile (routines): Add efgcvt_r, hsearch_r, hsearch, tsearch.

	* posix/unistd.h (ttyname_r): Add prototype for new function.

	* stdlib/drand48_r.c, stdlib/erand48_r.c, stdlib/jrand48_r.c,
	stdlib/lrand48_r.c, stdlib/mrand48_r.c, stdlib/nrand48_r.c,
	stdlib/seed48_r.c, stdlib/srand48_r.c, stdlib/lcong48_r.c,
	stdlib/drand48-iter.c: New files implementing reentrant versions
	of functions from drand48 family.
	* stdlib/seed48.c, stdlib/drand48.c, stdlib/erand48.c,
	stdlib/jrand48.c, stdlib/lrand48.c, stdlib/mrand48.c,
	stdlib/nrand48.c, stdlib/srand48.c, stdlib/lcong48.c:
	Rewrite to use reentrant versions.
	* stdlib/a64l.c, stdlib/l64a.c: New files.  Implement a64l()
	and l64a() functions from SysV library.
	* stdlib/Makefile (routines): Add drand48_r, erand48_r, lrand48_r,
	nrand48_r, mrand48_r, jrand48_r, srand48_r, seed48_r, lcong48_r,
	drand48-iter, a64l, l64a.
	* stdlib/stdlib.h: Declare them.

	* stdlib/random_r.c: New file.  Reentrant version of functions
	from random family.
	* stdlib/stdlib.h: Declare them.
	* stdlib/random.c: Rewrite to use reentrant functions.

	* string/strerror_r.c: New file.  Reentrant version.
	* string/strerror.c: Change for new _strerror_internal form.
	* string/Makefile (routines): Add strerror_r.

	* sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Set default
	value of user_entry to `_start'.
	Close AT_ENTRY case with `break'.

	* sysdeps/generic/strstr.c: New and much faster implementation
	by Stephen R. van den Berg.

	* sysdeps/generic/_strerror.c: _strerror_internal now takes
	three argument and has and explicit buffer length.
	* sysdeps/mach/_strerror.c: Change for new interface with three
	arguments.
	* stdio/perror.c, stdio/vfprintf.c: Callers changed.
	
	* sysdeps/mach/hurd/ttyname_r.c: New file.  Reentrant version.
	* sysdeps/posix/ttyname_r.c: New file.  Reentrant version.
	* sysdeps/stub/ttyname_r: New file.  Define as dummy function.

	* sysdeps/posix/utimes.c: Include <utime.h> for prototype.
	(utimes): First parameter to utime must be file, not path.

	* sysdeps/posix/sysconf.c (__sysconf): Test for CLK_TCK in case
	_SC_CLK_TCK and return it when available.
	Test for STREAM_MAX in case _SC_STREAM_MAX and return it when
	available.
	Add case for _SC_2_LOCALEDEF which is now available.

	* posix/sys/types.h [__USE_SVID] (key_t): New type.
	* sysvipc/Makefile, sysvipc/ftok.c, sysvipc/sys/ipc.h,
	sysvipc/sys/msg.h, sysvipc/sys/sem.h, sysvipc/sys/shm.h,
	sysdeps/stub/sys/msq_buf.h, sysdeps/stub/sys/sem_buf.h,
	sysdeps/stub/sys/shm_buf.h, sysdeps/stub/sys/ipc_buf.h,
	sysdeps/stub/semctl.c, sysdeps/stub/semget.c, sysdeps/stub/semop.c,
	sysdeps/stub/shmat.c, sysdeps/stub/shmctl.c, sysdeps/stub/shmdt.c,
	sysdeps/stub/shmget.c, sysdeps/stub/msgctl.c, sysdeps/stub/msgget.c,
	sysdeps/stub/msgrcv.c, sysdeps/stub/msgsnd.c: New files.
	Add implementation of System V IPC.
1995-09-17 20:23:15 +00:00
Roland McGrath
9e865adecf * sysdeps/mach/hurd/dirstream.h: Define `struct __dirstream'
instead of `DIR'.
	* sysdeps/unix/bsd/dirstream.h: Likewise.
	* sysdeps/stub/dirstream.h: Likewise.
	* sysdeps/unix/dirstream.h: Likewise.
	* sysdeps/mach/hurd/telldir.c: Include "dirstream.h".
	* sysdeps/mach/hurd/seekdir.c: Likewise.
	* sysdeps/mach/hurd/opendir.c: Likewise.
	* sysdeps/mach/hurd/closedir.c: Likewise.
	* sysdeps/mach/hurd/readdir.c: Likewise.
	* sysdeps/unix/telldir.c: Likewise.
	* sysdeps/unix/seekdir.c: Likewise.
	* sysdeps/unix/rewinddir.c: Likewise.
	* sysdeps/unix/readdir.c: Likewise.
	* sysdeps/unix/opendir.c: Likewise.
	* sysdeps/unix/closedir.c: Likewise.
	* sysdeps/unix/bsd/telldir.c: Likewise.
	* sysdeps/unix/bsd/readdir.c: Likewise.
	* dirent/Makefile (headers): Remove dirstream.h.
	(distribute): Put it here instead.
1995-08-28 09:00:05 +00:00
Roland McGrath
24e0f77bc6 Removed stub warning. 1995-07-22 11:17:58 +00:00
Roland McGrath
0e7725ccd8 Don't include <hurd.h>. [PIC] (soinit): Renamed to (global) _init. 1995-06-13 19:43:57 +00:00
Roland McGrath
e4448b6f58 Wed May 3 11:56:35 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* sysdeps/mach/hurd/dup2.c: Fixed broken test in last change.

	* elf/dl-error.c (_dl_catch_error): Actually call the OPERATE
 	function.  Duh.

	* hurd/Makefile (distribute): Added hurdstartup.h.
	* hurd/hurd.h: Remove _hurd_startup decl.

	* hurd/hurd/ioctl.h (_HURD_HANDLE_IOCTLS): Use __attribute__
 	((__unused__)) instead of gratuitous self reference.

	* sysdeps/mach/hurd/dup2.c: Call _hurd_alloc_fd to expand the
 	table if FD2 doesn't fit.

	* sysdeps/mach/hurd/getdtsz.c: Return the RLIM_NOFILE soft limit,
 	not the current table size.

	* sysdeps/i386/init-first.c: New file.
	* sysdeps/stub/init-first.c: New file.
1995-05-04 09:00:10 +00:00
Roland McGrath
d66e34cd42 * sysdeps/mach/i386/sysdep.h (SNARF_ARGS, CALL_WITH_SP): Rewritten.
* sysdeps/i386/dl-machine.h: New file.
	* sysdeps/stub/dl-machine.h: New file.
	* sysdeps/i386/dl-runtime.c: New file.
	* sysdeps/stub/dl-runtime.c: New file.
	* sysdeps/i386/elf/start.S: New file.
	* sysdeps/generic/dl-sysdep.c: New file.
	* sysdeps/mach/hurd/dl-sysdep.c: New file.
1995-05-02 06:35:55 +00:00
Roland McGrath
08162fa888 Tue May 2 01:52:58 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
Implemented runtime dynamic linker to support ELF shared libraries.
	* elf/Makefile: Added rules to make ld.so and libdl.
	* elf/dl-error.c: New file.
	* elf/dl-fini.c: New file.
	* elf/dl-init.c: New file.
	* elf/dl-load.c: New file.
	* elf/dl-lookup.c: New file.
	* elf/dl-object.c: New file.
	* elf/dl-reloc.c: New file.
	* elf/dlclose.c: New file.
	* elf/dlerror.c: New file.
	* elf/dlopen.c: New file.
	* elf/dlsym.c: New file.
	* elf/dynamic-link.h: New file.
	* elf/link.h: New file.
	* elf/rtld.c: New file.

Mon May  1 18:48:30 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>

	* Makerules (LDFLAGS-c.so): Add -interp and -e switches to make
 	libc.so runnable.
	* version.c (__libc_print_version): Add "et al" and missing NL to
 	author credit.
1995-05-02 05:56:40 +00:00
Roland McGrath
10ceac89f9 Thu Apr 27 01:24:09 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* configure.in: Unless --without-fp, prepend */fpu before each
 	machine dir in $mach; don't prepend FPU dirs at end.  If
 	--with-elf, prepend MACHINE/elf directories at end; don't insert
 	them into $mach.

	* Makerules (dist): Filter out *.[cSs] from $(distribute) in deps.

	* sysdeps/stub/clock.c: Added stub warning.
	* sysdeps/stub/dirfd.c: Likewise.
	* sysdeps/stub/exc2signal.c: Likewise.
	* sysdeps/stub/fdopen.c: Likewise.
	* sysdeps/stub/flock.c: Likewise.
	* sysdeps/stub/fpathconf.c: Likewise.
	* sysdeps/stub/ftruncate.c: Likewise.
	* sysdeps/stub/gtty.c: Likewise.
	* sysdeps/stub/isatty.c: Likewise.
	* sysdeps/stub/killpg.c: Likewise.
	* sysdeps/stub/madvise.c: Likewise.
	* sysdeps/stub/mkstemp.c: Likewise.
	* sysdeps/stub/mktemp.c: Likewise.
	* sysdeps/stub/mprotect.c: Likewise.
	* sysdeps/stub/msync.c: Likewise.
	* sysdeps/stub/pathconf.c: Likewise.
	* sysdeps/stub/poll.c: Likewise.
	* sysdeps/stub/raise.c: Likewise.
	* sysdeps/stub/readv.c: Likewise.
	* sysdeps/stub/setenv.c: Likewise.
	* sysdeps/stub/setlogin.c: Likewise.
	* sysdeps/stub/sigaltstack.c: Likewise.
	* sysdeps/stub/sigintr.c: Likewise.
	* sysdeps/stub/sigstack.c: Likewise.
	* sysdeps/stub/sleep.c: Likewise.
	* sysdeps/stub/sstk.c: Likewise.
	* sysdeps/stub/stime.c: Likewise.
	* sysdeps/stub/stty.c: Likewise.
	* sysdeps/stub/syscall.c: Likewise.
	* sysdeps/stub/sysconf.c: Likewise.
	* sysdeps/stub/truncate.c: Likewise.
	* sysdeps/stub/ualarm.c: Likewise.
	* sysdeps/stub/usleep.c: Likewise.
	* sysdeps/stub/utimes.c: Likewise.
	* sysdeps/stub/writev.c: Likewise.

	* sysdeps/stub/libc_fatal.c: Remove __NORETURN keyword.

Wed Apr 26 16:06:42 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>

	* locale/loadlocale.c (_nl_free_locale): Do nothing if DATA is null.

Tue Apr 25 17:17:19 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>

	* posix/glob.c (glob): If GLOB_MARK set, stat names to find
 	directories and append slashes to them in final pass before
 	sorting.
	(glob_in_dir): If GLOB_MARK set, just allocate the extra char for the
	slash; never append it here.
1995-04-27 05:47:52 +00:00
Roland McGrath
342414a6e0 * sysdeps/unix/bsd/bsd4.4/revoke.S: New file.
* sysdeps/stub/revoke.c: New file.
	* misc/Makefile (routines): Add revoke.
	* posix/unistd.h [__USE_BSD] (revoke): Declare it.
	* sysdeps/generic/pty.c (openpty, forkpty): Declare return types.
	(forkpty): Declare login_tty.
	* misc/logwtmp.c (logwtmp): Declare to return void.
	* misc/login_tty.c (login_tty): Include unistd.h.  Declare return type.
1995-03-27 10:24:00 +00:00
Roland McGrath
1474b80f01 Mon Mar 27 02:23:15 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* posix/unistd.h [__USE_BSD] (ttyslot): Declare it.

	* posix/unistd.h [__USE_BSD] (L_SET, L_INCR, L_XTND): Define
 	unless L_SET already defined.
	* misc/sys/file.h (L_SET, L_INCR, L_XTND): Don't define if L_SET
 	already defined.

	Incorporated -lutil library from 4.4-Lite.
	* misc/Makefile (extra-libs, libutil-routines): New variables.
	* misc/login.c, misc/login_tty.c, misc/logout.c, misc/logwtmp.c,
	sysdeps/generic/pty.c: New files for -lutil incorporated from 4.4-Lite.

	Support simple, light-weight unwind-protect mechanism for longjmp.
	* setjmp/longjmp.c: Call _longjmp_unwind first thing.
	* sysdeps/mach/hurd/jmp-unwind.c: New file.
	* sysdeps/stub/jmp-unwind.c: New file.
	* sysdeps/i386/jmp_buf.h (_JMPBUF_UNWINDS): New macro.
	* sysdeps/mips/jmp_buf.h (_JMPBUF_UNWINDS): New macro.
	* setjmp/Makefile (routines): Add jmp-unwind.
	* hurd/hurd/userlink.h (struct hurd_userlink): Move `next' and
 	`prevp' members into new substructure `resource'; add another such
 	substructure `thread' and members `cleanup' (function ptr) and
 	`cleanup_data' (generic ptr).
	(_hurd_userlink_link, _hurd_userlink_unlink): Insert/remove LINK
	into the `_hurd_self_sigstate ()->active_resources' list via the
	`thread' substructure.
	* hurd/hurd/port.h (_hurd_port_cleanup): Declare it.
	(_hurd_port_locked_get): Set LINK->cleanup to _hurd_port_cleanup and
	LINK->cleanup_data' to the port extracted.
	* hurd/hurd/signal.h (struct hurd_sigstate): New member
	`active_resources'.
	* hurd/port-cleanup.c: New file.
	* hurd/Makefile (routines): Add port-cleanup.

	* malloc/malloc.c: Include errno.h.

Sat Mar 25 18:24:21 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>

	* locale/loadlocale.c (_nl_load_locale): Avoid */ inside comment.
1995-03-27 10:00:09 +00:00
Roland McGrath
01a36ad307 Mon Mar 13 01:48:16 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* Makefile ($(libc.a)(__.SYMDEF)): Target removed.
	[$(build-shared)=yes] (lib): Depend on $(common-objpfx)libc.so.

	* sysdeps/stub/ulimit.c: Don't include gnu-stabs.h.
	* sysdeps/stub/pause.c: Likewise.
	* sysdeps/stub/time.c: Likewise.

	* stdlib/mbtowc.c: #if 0 out code for non-ASCII chars until the
 	locale data format is implemented.
	* stdlib/wctomb.c: Likewise.

	* mach/Makefile ($(objpfx)errsystems.c): Reenable this rule; the
 	gcc bug is fixed.
	* mach/errsystems.c: File removed.

	* Makeconfig (libc.a): Variable removed.
	(+link): Don't use it.

	* configure.in (AC_ARG_ENABLE calls): Use $enableval instead of
 	assuming `yes'.
1995-03-13 06:51:32 +00:00
Roland McGrath
6408bdde65 Fri Mar 3 12:24:52 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* sysdeps/generic/sys/mman.h (__mmap, __munmap): Declare these.
	* sysdeps/unix/sysv/irix4/sys/mman.h: Likewise.
	* sysdeps/unix/bsd/ultrix4/sys/mman.h: Likewise.
	* sysdeps/unix/bsd/osf1/sys/mman.h: Likewise.
	* sysdeps/unix/bsd/sun/sunos4/sys/mman.h: Likewise.
	* sysdeps/stub/munmap.c (munmap): Rename to __munmap, add weak
 	alias munmap.
	* sysdeps/unix/mman/munmap.S: Likewise.
	* sysdeps/mach/munmap.c: Likewise.
	* sysdeps/mach/hurd/mmap.c (mmap): Rename to __mmap, add weak
 	alias mmap.
	* sysdeps/unix/mman/mmap.S: Likewise.
	* sysdeps/unix/bsd/sun/sunos4/mmap.c: Likewise.
	* sysdeps/stub/mmap.c: Likewise.

	* sysdeps/unix/bsd/setsid.c: Use __getpgid instead of __getpgrp.

	* sysdeps/unix/dirfd.c: #undef dirfd before function defn.

Thu Mar  2 12:15:24 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>

	* misc/search.h: Add missing semicolon.

	* sysdeps/unix/dirfd.c: Fix typo.

	* sysdeps/generic/sys/mman.h (mmap): Use __off_t instead of off_t
 	in decl.

	* stdio/vfscanf.c (%c): In no-assign case, fix loop to decrement
 	WIDTH before test.
1995-03-06 00:27:08 +00:00
Roland McGrath
22a1292a42 * io/Makefile (routines): Add euidaccess.
* sysdeps/mach/hurd/euidaccess.c: New file.
	* sysdeps/stub/euidaccess.c: New file.
	* posix/unistd.h [__USE_GNU] (euidaccess): Declare it.

	* dirent/Makefile (routines): Add dirfd.
	* sysdeps/stub/dirfd.c: New file.
	* sysdeps/unix/dirfd.c: New file.
	* sysdeps/unix/dirstream.h (_DIR_dirfd): New macro.
	* dirent/dirent.h (dirfd): Declare new function.  Define as macro
 	_DIR_dirfd if that is defined.
	* sysdeps/mach/hurd/dirstream.h (DIR): Replace `__port' member
 	with `void *__fd'.
	* sysdeps/mach/hurd/opendir.c: Use DIRP->__fd instead of DIRP->__port.
	Open the file with `open'; set FD_CLOEXEC on the fd.
	* sysdeps/mach/hurd/closedir.c: Likewise.
	* sysdeps/mach/hurd/readdir.c: Likewise.
	* sysdeps/mach/hurd/dirfd.c: New file.

	* posix/Makefile (glob/configure): Do cvs commit if there is a CVS
 	directory.
	(glob/ChangeLog): Likewise.

	* locale/locale.h (LC_*): Use small integers instead of bit masks.
1995-02-25 01:23:32 +00:00
Roland McGrath
5f9e57babe Sun Feb 19 17:46:13 1995 Roland McGrath <roland@duality.gnu.ai.mit.edu>
* posix/Makefile (aux): Add environ.
	* posix/environ.c: New file.
	* sysdeps/unix/sparc/start.c: Remove __environ definition.
	* sysdeps/unix/start.c: Likewise.
	* sysdeps/unix/sysv/irix4/start.c: Likewise.
	* sysdeps/mach/hurd/start.c: Likewise.
	* sysdeps/mach/start.c: Likewise.
	* sysdeps/stub/start.c: Likewise.

	* sysdeps/unix/make_errlist.c: In produced program, test
 	HAVE_WEAK_SYMBOLS instead of HAVE_GNU_LD.
	* sysdeps/unix/sysv/sysv4/dup2.c: Fix #include of renamed file.
  	Remove extra weak alias.

	* sysdeps/unix/sysv/sysv4/sigaltstack.S: Fix unsquashed file name
 	in #include.

	* libc-symbols.h: Put comment around ^L to pacify Solaris as.

	* sysdeps/posix/Makefile (cded-objdir-includes): New variable
 	replaced cded-objdir-CPPFLAGS; transform $(+includes) instead of
 	$(CPPFLAGS).
	(mk-stdiolim): Use it instead.

	* mach/mach_init.c (__vm_page_size): Make it initialized.  It does
 	not work to make a weak alias to a bss symbol.

	* stdio/Makefile (distribute): Remove mpn-copy.mk; add gen-mpn-copy.
	(tests): Add test-fwrite.
	* stdio/test-fwrite.c: New file.

	* stdlib/stdlib.h [__USE_GNU]: Declare strtof, strtold, __strtof,
 	__strtold.

	* Makefile (autoconf-it): New canned sequence.  Do cvs commit if
 	there is a CVS directory.
	(configure, %/configure): Use $(autoconf-it) for cmds.
	* Make-dist: Likewise.
	* Makerules ($(gpl2lgpl)): Likewise.
 	inlines cause trouble for files defining global register variables.
	* stdio/vfprintf.c: Set PREC to zero for %. without following digit.
1995-02-20 01:08:14 +00:00
Roland McGrath
28f540f45b initial import 1995-02-18 01:27:10 +00:00