Commit Graph

4872 Commits

Author SHA1 Message Date
Jim Meyering
22cbb717d9 Don't include <string.h> at all. HPUX-9.01 and IRIX-4.0.5 vendor C compilers get conflicting dcls for memchr unless one manually arranges for them to define __STDC__. 1995-05-21 06:03:25 +00:00
Roland McGrath
a2fe9c76a9 Fri May 19 17:16:46 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* sysdeps/mach/hurd/i386/init-first.c: In cthreads case, handle
 	args on stack from kernel.

	* posix/Makefile, sysdeps/alpha/Makefile,
	* sysdeps/mach/hurd/Makefile, sysdeps/sparc/Makefile, Makefile,
	* Makerules, Make-dist: Fix "cvs commit" cmds in rules to not fail
	in the absence of CVS dirs.

	* hurd/hurdstartup.c: Don't call __mach_init.  Grok args from the
 	kernel on the stack properly.

	* set-init.c: Never call _init/_fini; just run __libc_subinit.

	* Makerules (LDFLAGS-c.so): Add -nostartfiles.
	* mach/Machrules (LDFLAGS-$(interface.so)): Likewise.

	* configure.in: Move defaulting of --with-elf and --with-gnu-*
 	based on host os outside the AC_CACHE_VAL for the sysdirs
 	calculation.

	* Makeconfig (localedir, nlsdir): New variables.

	* values.h: New file.
	* Makefile (headers): Add values.h.

	* locale/Makefile (distribute): Add error.h.
	* locale/localedef.c: Include "error.h".
	(main): Use error_message_count instead of warning_cntr.
1995-05-20 00:13:43 +00:00
Roland McGrath
99b306dc44 Wed May 10 21:00:47 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* sysdeps/mach/i386/sysdep.h (RETURN_TO): New macro.

	* Makerules (install-lib.so): Add %.so for each %_pic.a.

	* sysdeps/mach/hurd/i386/init-first.c: New file.
1995-05-11 01:02:23 +00:00
Roland McGrath
273d56ce89 (__data_start): Define this symbol as the first thing in .data. 1995-05-09 07:03:38 +00:00
Roland McGrath
421f82e5cc Sat May 6 11:06:47 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* Makeconfig (+gccwarn): Add -Winline.

	* hurd/hurdsig.c (_hurd_internal_post_signal): If SS->context is
 	set, avoid abort_rpcs, and use reply and intr ports saved in
 	SS->context.
	* sysdeps/mach/hurd/i386/trampoline.c: Don't set SS->intr_port
 	from SS->context.  Don't clear SS->context.
	* sysdeps/mach/hurd/i386/sigreturn.c: Don't set SS->intr_port when
 	setting SS->context.  If msg_sig_post returns, re-lock and clear
 	SS->context.

Fri May  5 10:37:09 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>

	* mach/Makefile (errsystems.c): Comment out generation rule.

	* sysdeps/mach/_strerror.c: Consider a system unknown if its
 	bad_sub member is null.

	* mach/mig-alloc.c: Add weak alias to non-__ name.
1995-05-08 09:11:25 +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
b7eb844540 Sat Apr 29 15:46:57 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* posix/glob.c (S_ISDIR): Define if undefined.
1995-05-01 09:00:07 +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
03c5716f9b [HAVE_UNISTD_H]: Include unistd.h so it can declare sys_siglist. 1995-04-26 21:19:26 +00:00
Roland McGrath
11872325e2 Sat Apr 22 14:48:03 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* mach/Machrules [interface-library]
 	(LDFLAGS-$(interface-library:lib%=%.so)): New variable, set to
 	-nostdlib.

	* sysdeps/mach/hurd/fork.c: Subfunction `unlockss' removed.  Lock
 	_hurd_siglock only around initial task creation in parent.  Use
 	_hurd_critical_section_unlock at end.  Handle dead name rights
 	properly, and deal with a send right dying while we try to copy
 	it.  For the time being, use assert_perror for kernel and proc RPC
 	failures.

Fri Apr 21 01:10:15 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>

	* extra-lib.mk: Don't include $(o-iterator); construct it by hand
 	using $(object-suffixes-$(lib)) instead.

	* sysdeps/mach/hurd/Makefile (LDLIBS-c.so): New variable.

	* Makerules (lib%.so: lib%_pic.a): Pass $(LDFLAGS-$(notdir $*).so).
	(LDFLAGS-c.so): New variable.

	* resolv/res_init.c (res_init): Don't clobber _res.options with
 	RES_DEFAULT.  If RES_INIT is clear, OR in RES_DEFAULT.

	* hurd/hurd.h: Declare _hurd_startup.
	* hurd/hurdstartup.c: New file.
	* hurd/Makefile (routines): Add hurdstartup.
1995-04-24 09:00:07 +00:00
Roland McGrath
11d90def8c Thu Apr 20 22:23:58 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* sysdeps/mach/hurd/i386/trampoline.c (_hurd_setup_sighandler):
 	Point the return address for sigreturn's frame at a "hlt" insn so
 	it will definitely crash if sigreturn returns.

	HAVE_WEAK_SYMBOLS for doing weak_alias.
1995-04-21 02:24:35 +00:00
Roland McGrath
2657da50f0 (main): Don't generate "#ifdef HAVE_WEAK_SYMBOLS" #defns. 1995-04-18 17:59:42 +00:00
Brendan Kehoe
5fa2588651 * sysdeps/alpha/strlen.c (strlen): Fix cmpbge insn, and returning
of the byte that was zero, so we return a valid number.
Mon Apr 17 12:02:49 1995  Brendan Kehoe  (brendan@zen.org)

	* sysdeps/alpha/strlen.c (strlen): Fix cmpbge insn, and returning
	of the byte that was zero, so we return a valid number.

	* sysdeps/unix/bsd/ultrix4/mips/sysdep.h: New file defining
1995-04-17 22:02:01 +00:00
Brendan Kehoe
e0585da111 * /sysdeps/unix/bsd/ultrix4/mips/sysdep.h: New file defining NO_UNDERSCORES then using sysdeps/unix/mips/sysdep.h.
Sun Apr 16 03:23:09 1995  Brendan Kehoe  (brendan@zen.org)

	* /sysdeps/unix/bsd/ultrix4/mips/sysdep.h: New file defining
	NO_UNDERSCORES then using sysdeps/unix/mips/sysdep.h.
1995-04-16 08:24:34 +00:00
Brendan Kehoe
fc40c039a4 * sysdeps/ieee754/mpn2dbl.c (__mpn_construct_double)
[BITS_PER_MP_LIMB == 64]: Refer to `u', not to non-existent `i'. 
* sysdeps/ieee754/mpn2ldbl.c (__mpn_construct_long_double) 
[BITS_PER_MP_LIMB == 64]: Likewise.
	* sysdeps/ieee754/mpn2dbl.c (__mpn_construct_double)
	[BITS_PER_MP_LIMB == 64]: Refer to `u', not to non-existent `i'.
	* sysdeps/ieee754/mpn2ldbl.c (__mpn_construct_long_double)
	[BITS_PER_MP_LIMB == 64]: Likewise.
1995-04-15 16:04:06 +00:00
Brendan Kehoe
d619f2a8a7 * sysdeps/unix/bsd/osf/alpha/killpg.S (killpg): Add .end directive. * sysdeps/unix/bsd/osf/alpha/sigblock.S (__sigblock): Likewise. * sysdeps/unix/bsd/osf/alpha/sigsetmask.S (__sigsetmask): Likewise. * sysdeps/unix/bsd/osf/alpha/sigpause.S (__sigpause): Likewise. * sysdeps/unix/bsd/osf/alpha/sigvec.S (__sigvec): Likewise. * sysdeps/unix/bsd/osf/alpha/getdents.S (__getdirentries): Likewise. * sysdeps/unix/bsd/osf/alpha/fork.S (__fork): Likewise. * sysdeps/unix/bsd/osf/alpha/pipe.S (__pipe): Likewise. * sysdeps/unix/bsd/osf/alpha/recv.S (recv): Likewise. * sysdeps/unix/bsd/osf/alpha/send.S (send): Likewise. * sysdeps/unix/bsd/osf/alpha/vhangup.S (vhangup): Likewise.
* sysdeps/unix/bsd/osf/alpha/killpg.S (killpg): Add .end directive.
	* sysdeps/unix/bsd/osf/alpha/sigblock.S (__sigblock): Likewise.
	* sysdeps/unix/bsd/osf/alpha/sigsetmask.S (__sigsetmask): Likewise.
	* sysdeps/unix/bsd/osf/alpha/sigpause.S (__sigpause): Likewise.
	* sysdeps/unix/bsd/osf/alpha/sigvec.S (__sigvec): Likewise.
	* sysdeps/unix/bsd/osf/alpha/getdents.S (__getdirentries): Likewise.
	* sysdeps/unix/bsd/osf/alpha/fork.S (__fork): Likewise.
	* sysdeps/unix/bsd/osf/alpha/pipe.S (__pipe): Likewise.
	* sysdeps/unix/bsd/osf/alpha/recv.S (recv): Likewise.
	* sysdeps/unix/bsd/osf/alpha/send.S (send): Likewise.
	* sysdeps/unix/bsd/osf/alpha/vhangup.S (vhangup): Likewise.

	* sysdeps/unix/mips/brk.S (__brk, __curbrk): Add .end directive.
1995-04-15 04:07:56 +00:00
Brendan Kehoe
fa21d69305 ... changing to use /**/ instead of ! as comments
* sysdeps/unix/bsd/osf/alpha/brk.S: Likewise.
	* sysdeps/unix/bsd/osf/alpha/brk.S: Likewise.
1995-04-15 02:38:17 +00:00
Brendan Kehoe
77162807d7 * sysdeps/unix/mips/brk.S (__brk, __curbrk): Add .end. * sysdeps/unix/mips/fork.S (fork): Likewise. * sysdeps/unix/mips/pipe.S (fork): Likewise. * sysdeps/unix/mips/sigreturn.S (__sigreturn): Likewise. * sysdeps/unix/mips/sysdep.S (sysdep_error): Likewise. * sysdeps/unix/mips/wait.S (__handler): Likewise. * sysdeps/mips/setjmp.S (__sigsetjmp): Likewise. * sysdeps/mips/bsd-setjmp.S (setjmp): Likewise. * sysdeps/unix/bsd/ultrix4/getsysinfo.S (getsysinfo): Likewise. * sysdeps/unix/bsd/ultrix4/wait3.S (waitpid): Likewise. * sysdeps/unix/bsd/ultrix4/waitpid.S (waitpid): Likewise. * sysdeps/unix/bsd/ultrix4/mips/__handler.S (__handler): Likewise. * sysdeps/unix/bsd/ultrix4/mips/sigvec.S (__raw_sigvec): Likewise. * sysdeps/unix/bsd/ultrix4/mips/start.S (__start): Likewise. * sysdeps/unix/bsd/ultrix4/mips/vfork.S (vfork): Likewise. * sysdeps/mips/bsd-_setjmp.S (setjmp): Likewise. Use $0' instead of zero' for the li instruction.
* sysdeps/unix/mips/brk.S (__brk, __curbrk): Add .end.
	* sysdeps/unix/mips/fork.S (fork): Likewise.
	* sysdeps/unix/mips/pipe.S (fork): Likewise.
	* sysdeps/unix/mips/sigreturn.S (__sigreturn): Likewise.
	* sysdeps/unix/mips/sysdep.S (sysdep_error): Likewise.
	* sysdeps/unix/mips/wait.S (__handler): Likewise.
	* sysdeps/mips/setjmp.S (__sigsetjmp): Likewise.
	* sysdeps/mips/bsd-setjmp.S (setjmp): Likewise.
	* sysdeps/unix/bsd/ultrix4/getsysinfo.S (getsysinfo): Likewise.
	* sysdeps/unix/bsd/ultrix4/wait3.S (waitpid): Likewise.
	* sysdeps/unix/bsd/ultrix4/waitpid.S (waitpid): Likewise.
	* sysdeps/unix/bsd/ultrix4/mips/__handler.S (__handler): Likewise.
	* sysdeps/unix/bsd/ultrix4/mips/sigvec.S (__raw_sigvec): Likewise.
	* sysdeps/unix/bsd/ultrix4/mips/start.S (__start): Likewise.
	* sysdeps/unix/bsd/ultrix4/mips/vfork.S (vfork): Likewise.
	* sysdeps/mips/bsd-_setjmp.S (setjmp): Likewise.  Use `$0'
	instead of `zero' for the li instruction.
1995-04-15 02:30:20 +00:00
Brendan Kehoe
dfd5ddb713 * sysdeps/unix/bsd/osf/alpha/start.S: Change comments to be preprocessor comments, not assembler comments.
* sysdeps/unix/bsd/osf/alpha/start.S: Change comments to be
	preprocessor comments, not assembler comments.
1995-04-15 02:07:14 +00:00
Brendan Kehoe
dce38123d0 * sysdeps/unix/bsd/osf/alpha/sysdep.h (NO_UNDERSCORES): Define.
Fri Apr 14 18:49:03 1995  Brendan Kehoe  (brendan@zen.org)

	* sysdeps/unix/bsd/osf/alpha/sysdep.h (NO_UNDERSCORES): Define.
1995-04-15 01:56:26 +00:00
Roland McGrath
e215c4786c * Makefile (distribute): Add ChangeLog.[0-9].
* configure.in: Add check for .set directive.
	* config.h.in: Add #undef HAVE_ASM_SET_DIRECTIVE.

	* Makerules [! subdir] (O%-lib): Don't prepend ../.

	* sysdeps/generic/expm1.c: #undef expm1 before weak_alias.


See ChangeLog.4 for earlier changes.
1995-04-14 03:52:54 +00:00
Roland McGrath
335aa3209b * sysdeps/generic/expm1.c: #undef expm1 before weak_alias.
* libc-symbols.h [! HAVE_ASM_SET_DIRECTIVE] (strong_alias,
 	strong_alias_asm): Use `foo = bar' syntax instead.
	* configure.in: Fix AC_ARG_WITH uses; check for --with-fp.  Move
 	$host_os checks to set gnu_ld/as and elf before sysdirs
 	generation.  Fix $with_fp test.
	[$elf=yes]: Prepend MACHINE/elf directory.
1995-04-14 03:27:44 +00:00
Roland McGrath
53afa8d967 Tue Apr 11 20:38:55 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* sysdeps/i386/add_n.S [PIC]: Use self-call to avoid generating reloc.
	* sysdeps/i386/sub_n.S [PIC]: Likewise.

	* libc-symbols.h (_elf_set_element) [PIC]: Don't make the element
 	word `const'.

	* Makeconfig (CPPFLAGS, CFLAGS): Fix swapped references to
 	$(foo-$(suffix $@)).

	* manual/Makefile (chapters-incl): Filter out summary.texi.
1995-04-12 01:03:38 +00:00
Roland McGrath
883bc19b7c * locale/loadlocale.c (_nl_load_locale): Use MAP_INHERIT flag in
mmap call.

	* configure.in (os=freebsd*|bsdi*): Set base_os=unix/bsd/bsd4.4
 	for these too.

	* sysdeps/unix/sysv/tcsetattr.c: Use |= instead of = to properly
 	set c_oflag value.

	* Makeconfig [! objpfx] (csu-objpfx): Add trailing slash.

	* locale/Makefile (categories): Uncomment collate.
	* locale/lc-collate.c: New file.
1995-04-08 19:09:39 +00:00
Roland McGrath
e627021e1b * hurd/hurdinline.c: Include signal.h first, so we don't define
its inlines too.

	* sysdeps/unix/sysv/sysv4/sigset.h (__sigfillset): Use ~0L instead
 	of -1 to avoid compiler warning.

	* configure.in (host_os=linux*): Set elf=yes for this, not just
 	linux*elf*.
1995-04-06 00:37:26 +00:00
Roland McGrath
4bca5a35b8 Wed Apr 5 00:13:45 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* sysdeps/i386/bsd-_setjmp.S: Fix typo in name: setjmp -> _setjmp.
1995-04-05 04:18:44 +00:00
Roland McGrath
fa0ad20487 * sysdeps/unix/start.c: Remove spurious decl and #endif. 1995-04-04 22:18:26 +00:00
Roland McGrath
45b28a8f0b Tue Apr 4 00:48:53 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* misc/progname.c (program_invocation_name,
 	program_invocation_short_name): Make these initialized data
 	definitions.

	* sysdeps/mach/hurd/setitimer.c (fork_itimer): Add self reference
 	so gcc doesn't optimize out the function entirely.
1995-04-04 21:53:15 +00:00
Roland McGrath
e607b492e5 Sun Apr 2 13:13:52 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* sysdeps/mach/hurd/i386/trampoline.c: Add a link to
 	SS->active_resources, so that _hurdsig_longjmp_from_handler will
 	be called when a longjmp unwinds the signal frame.
	* sysdeps/mach/hurd/i386/sigreturn.c: Remove the link on the
 	SS->active_resources chain added by _hurd_setup_sighandler.
	* hurd/sigunwind.c: New file.
	* hurd/Makefile (sig): Add sigunwind.

	* Makerules (lib%.so: lib%_pic.a): Remove dir name from $*.

	* MakeTAGS (tags-sources): Include $(all-dist).
	[subdir] (all-dist): Define to $(distribute).
1995-04-02 22:08:59 +00:00
Brendan Kehoe
0a64805148 * sysdeps/alpha/__longjmp.c (__longjmp): Take out const.
* sysdeps/alpha/__longjmp.c (__longjmp): Take out const.
1995-03-31 03:52:13 +00:00
Brendan Kehoe
67188fe6b0 * sysdeps/mips/__longjmp.c (__longjmp): Take out CONST.
Thu Mar 30 20:43:02 1995  Brendan Kehoe  <brendan@zen.org>

	* sysdeps/mips/__longjmp.c (__longjmp): Take out CONST.
1995-03-31 01:47:52 +00:00
Roland McGrath
a9df882945 Wed Mar 29 11:26:48 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
More changes from Germano Caronni <caronni@tik.ethz.ch>:
	* malloc/free.c: Relocate _heapinfo when that allows us to return
 	core to the system.

	* malloc/malloc.c: Move #include <errno.h> outside #ifndef
	_MALLOC_INTERNAL.
1995-03-29 16:34:21 +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
a04e740593 Fri Mar 24 02:35:37 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* stdio/printf-parse.h: New file, mostly written by drepper.
	* stdio/vfprintf.c: Rewritten, mostly by drepper.
	* stdio/printf-prs.c: Rewritten.
	* stdio/Makefile (distribute): Add printf-parse.h.

Thu Mar 23 22:03:44 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>

	* sysdeps/unix/start.c [! NO_UNDERSCORES]: Don't declare _start
 	with asm name.  Just do a ".set start, __start".

	* malloc/realloc.c: Call _free_internal instead of free.

	* stdlib/Makefile: All the mpn stuff moved here from stdio/Makefile.
1995-03-24 07:44:08 +00:00
Roland McGrath
dd02efa5f5 (signame_init): Define SIGINFO. 1995-03-21 21:44:32 +00:00
Roland McGrath
1e9dc0393c Mon Mar 20 03:19:23 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* stdio/vfscanf.c (%n): Use READ_IN - 1, so as not to count the
 	read-ahead character.

	* hurd/dtable.c, hurd/getdport.c, hurd/hurd.h, hurd/hurdexec.c,
	  hurd/hurdinit.c, hurd/hurdprio.c, hurd/hurdsock.c,
	  hurd/ports-get.c, hurd/ports-set.c, hurd/setauth.c,
	  hurd/setuids.c, sysdeps/mach/hurd/i386/trampoline.c:
	Get anal with unsigned to pacify compiler.
1995-03-20 08:21:38 +00:00
Roland McGrath
be69ea41eb Sat Mar 18 14:07:08 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* stdio/vfscanf.c: Grok positional parameter specs (i.e. %3$d
 	means %d from 3rd arg).

	* sysdeps/mach/hurd/closedir.c: Include hurd/fd.h.

	* stdlib/strtol.c: If !GROUP, set END to null.  In loop, test only
 	END, not GROUP.
1995-03-18 20:44:21 +00:00
Ulrich Drepper
61cd9516c2 (__mpn_extract_long_double): Handle 80-bit denormalized numbers correct. 1995-03-17 12:28:47 +00:00
Roland McGrath
f0bf9cb92c Thu Mar 16 00:04:41 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* locale/C-ctype.c: New correct data generated by drepper.

	* Rules: Don't use $(libc.a).

	Parsing of grouped numbers contributed by Ulrich Drepper.
	* stdlib/strtol.c (__strtol_internal): Renamed from strtol.  Take
 	new flag arg; if nonzero, parse locale-dependent thousands
 	grouping and interpret only the prefix that is correctly grouped.
	(strtol): Define this to call _strtol_internal with zero for the flag.
	Use a weak symbol for the definition.
	* stdlib/strtod.c (strtod, __strtod_internal): Likewise.
  	Check for the exponent of the number overflowing the float format.
	* stdlib/stdlib.h (__strtof, __strtold): Declarations removed.
	(__strto{f,d,ld,l,ul,q,uq}_internal): Declare these functions.
	[__OPTIMIZE__]: Define inline functions calling those.
	* stdlib/grouping.h: New file, written by drepper.
	* stdlib/Makefile (distribute): Add grouping.h.
	* stdio/vfscanf.c: Grok %' modifier to numeric conversions.  Call
 	__strtoX_internal with the grouping flag set iff the modifier is
 	present.

Wed Mar 15 00:40:54 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>

	* sysdeps/generic/memchr.c: Fix typos: limit.h -> limits.h.

	* mach/Machrules: Produce static deps for all object flavors.
	[interface-library]: Remove all these variables and rules.
	($(interface-library)-routines): Define this variable.
	(extra-libs): Append $(interface-library) to this.
	* mach/Makefile (interface-library): Omit .a suffix.
	* hurd/Makefile: Likewise.

Tue Mar 14 23:40:31 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>

	* stdio/internals.c (flushbuf): If !FLUSH_ONLY, don't skip out
 	early if no new data in buffer after priming.

	* Makerules (object-suffixes, libtypes): Move all these variables
 	to Makeconfig.
	* Makeconfig (object-suffixes, libtypes): Moved here from Makerules.

	* Makerules (build-extra-lib): New canned sequence.

	* sysdeps/mach/hurd/euidaccess.c: Include fcntl.h.  Declare ERR;
 	fix uses of FILE and PORT.  Remove bogus weak alias for `access'.

	* sysdeps/mach/hurd/dirfd.c: Include hurd/fd.h and errno.h.
	Add missing semicolon.
	* sysdeps/mach/hurd/opendir.c: Include hurd/fd.h.  Use a `struct
 	hurd_fd *' temp var, since DIRP->__fd is a `void *'.
	* sysdeps/mach/hurd/readdir.c: Include hurd/fd.h.

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

	* sysdeps/mach/hurd/i386/trampoline.c (_hurd_setup_sighandler):
 	Pass &__sigreturn on the stack to the trampoline code, so it is
 	not position-dependent.

	* stdio/printf_fp.c (NDEBUG): Define this to disable assert.
  	Don't include <stdarg.h>.
	(__printf_fp): Last arg ARGS is now `const void **const'; 
	dereference ARGS[0] instead of using va_arg.

	* locale/setlocale.c: In LC_ALL case, initialize CATEGORY before
 	loop to install data.

	* locale/loadlocale.c (_nl_category_num_items): Use _NL_ITEM_INDEX
 	to extract number from item code.
	(_nl_load_locale): Close the descriptor when finished.

	* malloc/realloc.c (_realloc_internal): Call _malloc_internal in
 	place of malloc.

	* time/tzfile.c (__tzfile_default): Initialize RULE_STDOFF to zero.
1995-03-16 05:32:45 +00:00
Roland McGrath
67a3a8ac7f * stdio/printf_fp.c (group_number): Cast *GROUPING to unsigned int
to avoid warning.
	* sysdeps/generic/sigset.h (__SIGSETFN): Cast result of sizeof to
 	int to avoid warning.
1995-03-13 10:00:11 +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
Jim Meyering
7782ca54e1 Remove ansidecl.h and clean up for use by other packages. [LONG_MAX <= LONG_MAX_32_BITS]: Don't compile 64-bit code. 1995-03-13 03:38:06 +00:00
Brendan Kehoe
29b687bd18 newly generated ones 1995-03-10 02:59:52 +00:00
Brendan Kehoe
06c48879d8 * sysdeps/alpha/divrem.m4: Undefine `ret' to avoid the definition that's used inside the alpha sysdep.h.
* sysdeps/alpha/divrem.m4: Undefine `ret' to avoid the definition
	that's used inside the alpha sysdep.h.
1995-03-10 02:59:06 +00:00
Brendan Kehoe
eded85e01e duh, don't need __attribute__ in the alpha header, it's in the toplevel one
* sysdeps/alpha/__math.h (__copysign): Remove obsolete __CONSTVALUE.
1995-03-10 02:44:20 +00:00
Brendan Kehoe
5638ea42cb * sysdeps/alpha/__longjmp.c (__longjmp): Remove obsolete __NORETURN keyword.
* sysdeps/alpha/__longjmp.c (__longjmp): Remove obsolete __NORETURN
	keyword.
1995-03-10 02:16:23 +00:00
Brendan Kehoe
127b3c3596 * sysdeps/alpha/__math.h (__copysign): Use attribute instead of old __CONSTVALUE by adding forward decl first with the const attribute.
* sysdeps/alpha/__math.h (__copysign): Use attribute instead of old
	__CONSTVALUE by adding forward decl first with the const attribute.
1995-03-10 02:10:40 +00:00
Brendan Kehoe
222c4e717a * configure.in: Match osf*', not osf1*'. * configure: Likewise. * sysdeps/unix/bsd/osf: Renamed to `sysdeps/unix/bsd/osf1'.
Thu Mar  9 17:16:53 1995  Brendan Kehoe  (brendan@zen.org)

	* configure.in: Match `osf*', not `osf1*'.
	* configure: Likewise.
	* sysdeps/unix/bsd/osf: Renamed to `sysdeps/unix/bsd/osf1'.
1995-03-10 01:56:19 +00:00
Brendan Kehoe
feebe869ae moved to ../osf 1995-03-10 01:22:39 +00:00
Roland McGrath
6c2f050742 Wed Mar 8 13:38:13 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* posix/glob/configure.bat: Fixes from DJ.

	* time/backward, time/europe, time/northamerica, time/pacificnew,
	time/zdump.c, time/zic.c, time/tzfile.h, time/private.h,
	time/ialloc.c: Code and data updated from ADO's 95b.
	* time/emkdir.c: File removed.
	* time/Makefile (distribute, extra-objs, zic): Omit it.
	
	* time/localtime.c: Deansideclized.  Never #define __tzname et al
 	to non-__ names.

	* locale/lc-ctype.c (__ctype_tolower, __ctype_toupper): Use int *
 	instead of short int *.
	* ctype/ctype-info.c: Likewise.
	* ctype/ctype.h: Likewise.

	* locale/langinfo.h (_NL_CTYPE_CLASS): Use this (just one) instead
 	of EB and EL versions.
1995-03-09 10:00:12 +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
3c46a92d40 Sat Feb 25 02:17:52 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* sysdeps/mach/hurd/kill.c: When the process has no message port
 	registered and we have its task port, translate a few signals to
 	task_suspend/task_resume/task_terminate.
1995-02-25 11:33:49 +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
e66f63fb63 Fri Feb 24 14:40:48 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* stdio/bug4.c: Put temporary files in /tmp.
	* stdio/bug3.c: Likewise.
	* stdio/bug5.c: Likewise.
	* stdio/test-fseek.c: Likewise.
	* stdio/test-popen.c: Likewise.
1995-02-24 19:47:17 +00:00
Roland McGrath
50843ff068 Wed Feb 22 00:44:41 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* sysdeps/mach/hurd/i386/sigreturn.c: Restore the FPU state.

	* stdlib/random.c (__srandom): Change algorithm used to populate
 	the state array.
	(randtbl): Recomputed with new algorithm.
1995-02-22 05:47:15 +00:00
Roland McGrath
23ad311df0 Tue Feb 21 21:53:30 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* sysdeps/sparc/Makefile [subdir=crypt] (crypt): Reset only if set
 	to original value of `crypt'.
	* sysdeps/unix/sysv/sysv4/solaris2/sparc/Makefile [subdir=crypt]
 	(crypt): New variable, set to crypt.solar.
1995-02-22 03:00:48 +00:00
Roland McGrath
6b08e0a455 [subdir=crypt] (crypt): New variable, set to crypt.solar. 1995-02-22 02:53:16 +00:00
Brendan Kehoe
d53f392b18 * sysdeps/sparc/Makefile (routines): Reference dotmul', not mul'.
* sysdeps/sparc/Makefile (routines): Reference `dotmul', not `mul'.
1995-02-21 20:42:55 +00:00
Roland McGrath
caa8cd20fd . 1995-02-21 20:27:45 +00:00
Roland McGrath
67a87b936e * string/Makefile (distribute): Add pagecopy.h.
* sysdeps/mach/pagecopy.h: New file.
	* sysdeps/generic/pagecopy.h: New file.
	* sysdeps/generic/memcpy.c: Include pagecopy.h; call
 	PAGE_COPY_FWD_MAYBE first when word aligned.
	* sysdeps/generic/memmove.c: Likewise.
1995-02-21 08:07:34 +00:00
Roland McGrath
37f91d336d Tue Feb 21 00:10:50 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* csu/Makefile (crtstuff): New variable consolidates crti, crtn;
 	add crti_s, crtn_s.
	(install-lib, extra-objs, generated-, omit-deps): Use that.
	(initfini): New canned sequence, broken out of crt[in].s rule.
	(crt[in].s rule): Use it.
	(crt[in]_s.s): New rule.
	* csu/initfini.c (GLOBAL): New macro; define it to empty if undefined.
	(_init, _fini): Use GLOBAL as storage class.
	Add self reference to avoid GCC optimizing out the functions.

	* Makefile (headers): Remove $(stddef.h).
	* Makeconfig (stddef.h): Variable removed; now require gcc version
 	>= 2.2.
	* stddef.h: File removed.

Mon Feb 20 19:42:31 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>

	* sysdeps/unix/bsd/ultrix4/mips/start.S: Remove `__environ'
 	definition.
	* sysdeps/unix/bsd/osf1/alpha/start.S: Likewise.

	* stdlib/strtod.c: Allow the string to start with a decimal point
 	without a leading zero.
1995-02-21 06:02:58 +00:00
Roland McGrath
f8e960f1b0 Include unistd.h for __environ decl. 1995-02-20 20:32:42 +00:00
Roland McGrath
0923c7a543 Mon Feb 20 04:04:57 1995 Roland McGrath <roland@duality.gnu.ai.mit.edu>
* config.h.in [HAVE_ELF || HAVE_GNU_LD]: Define HAVE_WEAK_SYMBOLS.

	* stdlib/strtod.c (PASTE, PASTE1): New helper macros; use these in
 	access to float.h macros.

	* misc/efgcvt.c: New file.
	* misc/Makefile (routines): Add efgcvt.
1995-02-20 09:50:50 +00:00
Brendan Kehoe
5ace96c814 Sun Feb 19 20:10:43 1995 Brendan Kehoe <brendan@zen.org>
* sysdeps/sparc/mul.S: Renamed to `dotmul.S'.
        * sysdeps/sparc/Makefile (routines): Reference `dotmul.S', not `mul.S',
        to avoid a misreference that would override sysdeps/generic/mul.c.
	* sysdeps/sparc/Dist: Likewise.
1995-02-20 08:49:29 +00:00
Brendan Kehoe
94259083e4 * sysdeps/sparc/Makefile (routines): Reference dotmul.S', not mul.S', to avoid a misreference that would override sysdeps/generic/mul.c. 1995-02-20 01:10:10 +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
50de467103 (cded-objdir-includes): New variable replaced cded-objdir-CPPFLAGS; transform $(+includes) instead of $(CPPFLAGS). (mk-stdiolim): Use it instead. 1995-02-19 22:45:57 +00:00
Roland McGrath
0ad4617705 Updated from ../gpl2lgpl.sed /home/gd/gnu/lib/getopt.c 1995-02-18 03:51:45 +00:00
Roland McGrath
28f540f45b initial import 1995-02-18 01:27:10 +00:00