Commit Graph

187 Commits

Author SHA1 Message Date
Roland McGrath
874f1b9bd8 Tue Jul 25 09:14:53 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* stdio/vfprintf.c (vfprintf): For %s with precision spec, use
 	memchr instead of strlen to limit search for NUL by precision.
1995-07-25 14:47:53 +00:00
Roland McGrath
51813e8065 Mon Jul 24 03:13:16 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* sysdeps/posix/pathconf.c: New file.
1995-07-24 07:14:51 +00:00
Roland McGrath
d7e16e9e83 Sat Jul 22 20:53:18 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* sysdeps/unix/i386/sysdep.h (JUMPTARGET): Use ## to avoid space
 	before @PLT.
	* sysdeps/mach/i386/sysdep.h (JUMPTARGET): New macro.
	* sysdeps/i386/bsd-_setjmp.S: Use JUMPTARGET macro in jmp insn.
	* sysdeps/i386/bsd-setjmp.S: Likewise.
1995-07-23 00:58:43 +00:00
Thomas Bushnell, BSG
9c9022dd4f *** empty log message ***
Sat Jul 22 19:58:54 1995  Michael I Bushnell  <mib@geech.gnu.ai.mit.edu>

	* inet/Makefile (routines): Added `ruserpass'.
	* inet/ruserpass.c: New file, from BSD Net-2 sources for the FTP
	client.  Modified to remove the fourth arg AACCT.  Do nothing for
	the `account' and `macdef' keywords.  Other incidental changes
	because we are not in the FTP source tree.

	* sysdeps/stub/init-posix.c: Removed stub warning.

 	instead of unix/sysv.	
	Fixes to help Linux, inspired by drepper's work:
	* sysdeps/posix/utimes.c: New file.
	* sysdeps/generic/getdomain.c: New file.
	* sysdeps/i386/init-first.c: Removed gratuitous #include <hurd.h>.
	* sysdeps/generic/dl-sysdep.c: Include <unistd.h> and declare
 	externals _dl_argc, _dl_argc, and _environ.
1995-07-23 00:41:45 +00:00
Roland McGrath
587dbc6fe8 * Makefile (autoconf-it): Make it executable and unwritable.
* configure.in (sysnames): Under --enable-debug-configure, spew
 	potential sysnames.
1995-07-22 10:55:44 +00:00
Roland McGrath
439d1d4560 Sat Jul 22 01:56:03 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* sysdeps/unix/i386/sysdep.h (JUMPTARGET): New macro; use name@PLT
 	#ifdef PIC.
	(PSEUDO): Use JUMPTARGET(syscall_error) in jump insn.
	* sysdeps/unix/i386/syscall.S: Use JUMPTARGET(syscall_error) in
 	jump insn.

	* sysdeps/unix/sysv/sysv4/linux/i386/sysdep.h: Rewritten.
	* sysdeps/unix/sysv/sysv4/linux/i386/syscall.S: New file.
	* sysdeps/unix/sysv/sysv4/linux/i386/socket.S: Include
 	<sys/socketcall.h>.  Save %ebx in call-clobbered %edx instead of
 	stack.  Use JUMPTARGET(syscall_error) in jump insn.

	* Makeconfig (+gccwarn): Add -Wbad-function-cast -Wconversion.

	* sysdeps/unix/i386/sysdep.h (ENTRY): Use ASM_GLOBAL_DIRECTIVE and
 	ASM_TYPE_DIRECTIVE.
	(ASM_TYPE_DIRECTIVE): New macro; defined using `.type' #ifdef ELF.

	* sysdeps/unix/sysv/sysv4/linux/i386/sysdep.S (__syscall_error): 
	Rewritten, #include'ing unix/i386/sysdep.S for most of the code.
	* sysdeps/unix/i386/sysdep.S [PIC]: Store into `errno' through the GOT.

	Fixes to help Linux, inspired by drepper's work:
	* configure.in (os=linux*): Use unix/sysv/sysv4 for $base_os,
 	instead of unix/sysv.
	* sysdeps/posix/utimes.c: New file.
	* sysdeps/generic/getdomain.c: New file.
	* sysdeps/i386/init-first.c: Removed gratuitous #include <hurd.h>.
	* sysdeps/generic/dl-sysdep.c: Include <unistd.h> and declare
 	externals _dl_argc, _dl_argc, and _environ.
	* sysdeps/unix/sysv/linux/{accept,connect,getsockname,rename,
	socketpair,waitpid,bind,getpeername,listen,setsid,wait4}.S: Moved
	to new directory sysdeps/unix/sysv/sysv4/linux.
	* sysdeps/unix/sysv/linux: Directory removed.
	* sysdeps/unix/sysv/i386/linux/{socket.S,sysdep.h,sysdep.S}: Moved
	to new directory sysdeps/unix/sysv/sysv4/linux/i386.
	* sysdeps/unix/sysv/linux/i386: Directory removed.
1995-07-22 10:48:43 +00:00
Thomas Bushnell, BSG
584de3b9d6 *** empty log message ***
Fri Jul 21 12:57:29 1995  Michael I Bushnell  <mib@geech.gnu.ai.mit.edu>

	* sysdeps/mach/hurd/socket.c (socket): Consider MIG_BAD_ID and
 	EOPNOTSUPP as indications that the server has died.
	* sysdeps/mach/hurd/pipe.c (__pipe): Likewise.
	* sysdeps/mach/hurd/socketpair.c (socketpair): Likewise.
1995-07-21 17:03:01 +00:00
Jim Meyering
ac00263ea0 Mon Jul 17 08:45:40 1995 Jim Meyering (meyering@comco.com)
* strtol.c: Portability changes from Uli Drepper.
	[!STDC_HEADERS && !defined(NULL)]: Define NULL.
1995-07-17 13:46:42 +00:00
Roland McGrath
d819080cba Mon Jul 10 05:39:21 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* sysdeps/mach/hurd/i386/init-first.c (init): Take just one arg,
 	DATA for the entry SP; DATA[-1] is always the return address
 	location.  In both cthreads and non-cthreads cases, use asm to
 	force parameters into %eax and %ecx before return, and mutate
 	DATA[-1] to return to specific asm code to set up the user from
 	%eax and %ecx.
	[PIC] (_init): Caller changed.
	(__libc_init_first) [! PIC] (doinit): Use asm to effect call to init
	with SP unwound to argument data ptr.

Thu Jul  6 14:28:56 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>

	* sysdeps/mach/hurd/dl-sysdep.c (fmh): Fixed this kludge to work
 	when 0x08000000 and up are not mapped.

	* Makerules (stamp$o-$(subdir) rule): Remove the timestamp file
 	before touching it.
	(lib%.so): Use -Wl to get -soname to ld.

	* elf/dlsym.c: Pass final arg to _dl_lookup_symbol.

	* elf/Makefile (libdl.so): Pass $(LDFLAGS.so).
1995-07-10 09:40:15 +00:00
Roland McGrath
487253ea1f Tue Jun 20 02:18:19 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* Makerules (lib%.so: lib%_pic.a): Pass -soname switch giving the
 	library's name including $(libprefix) and major version number.

	* locale/locale-ctype.c (allocate_arrays): Use xmalloc and bzero
 	in place of xcalloc.

	* Makeconfig (prefix, exec_prefix, libprefix): Instead of
 	`ifndef', use the $(origin) function to only set these if they are
 	undefined, and not if they are defined to empty.

	* gnu-versions.h: New file.
	* features.h (__GNU_LIBRARY__): Increase value to 5.
1995-06-22 09:00:11 +00:00
Roland McGrath
d6e2f671f7 Wed Jun 14 03:45:24 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* stdio/stdio.h (__validfp): Use ({...}) rather than a comma
 	expression, to avoid gcc's "value computed is not used" warning.

	* libc-symbols.h (_elf_set_element): Give the set-element variable
 	an `unused' attribute.

	* hurd/hurd/threadvar.h (__hurd_threadvar_location): Declare with
 	__attribute__ ((__const__)).
	* hurd/hurd/signal.h (_hurd_self_sigstate): Likewise.

	* hurd/hurd/userlink.h (_hurd_userlink_link): Properly set
 	LINK->resource.next->resource.prevp when appropriate, not
 	LINK->resource.next->thread.prevp!!!
1995-06-14 17:15:57 +00:00
Brendan Kehoe
57ba525e34 undo previous change, not needed w/ configure fix 1995-06-14 00:15:10 +00:00
Roland McGrath
df2a0c93b3 * configure.in (libc_cv_asm_set_directive): Make sure that the
`.set' directive really worked by linking against a reference to
 	the alias.
1995-06-13 22:16:50 +00:00
Roland McGrath
882087b96b Tue Jun 13 15:45:10 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* sysdeps/stub/init-first.c: Don't include <hurd.h>.
	[PIC] (soinit): Renamed to (global) _init.

	* malloc/Makefile (gmalloc-routines): Remove valloc.
	(dist-routines): Add it here.

	* malloc/malloc.h [_MALLOC_INTERNAL] [emacs] (valloc): #define to
 	emacs_loser_valloc to inhibit valloc declaration below.
1995-06-13 19:57:34 +00:00
Brendan Kehoe
bddb308102 * sysdeps/unix/bsd/osf/alpha/sysdep.h (HAVE_ASM_SET_DIRECTIVE): Put in #undef.
Tue Jun 13 12:13:18 1995  Brendan Kehoe  (brendan@zen.org)

	* sysdeps/unix/bsd/osf/alpha/sysdep.h (HAVE_ASM_SET_DIRECTIVE):
	Put in #undef.
1995-06-13 19:35:18 +00:00
Roland McGrath
1a2df358c8 Mon Jun 12 13:15:45 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* Makerules (lib%.so: lib%_pic.a): Moved this rule to after
 	installation rules.

	* sysdeps/mach/sysdep.h [HAVE_ELF] (ENTRY): Redefine this macro so
 	it uses the `.type' directive, which is necessary for shared
 	libraries to work properly.
1995-06-12 18:26:02 +00:00
Roland McGrath
f2b0f935d7 * elf/dl-load.c (_dl_map_object): Add MAP_INHERIT flag in mmap
from zero fill.

	* elf/dl-lookup.c (_dl_lookup_symbol): Take new flag arg NOSELF;
 	if nonzero, don't let *REF satisfy the reference itself.
	* elf/link.h (_dl_lookup_symbol): Add new arg NOSELF in decl.
	* sysdeps/i386/dl-runtime.c (_dl_runtime_resolve): Pass new arg to
 	_dl_lookup_symbol.
	* elf/do-rel.h (elf_dynamic_do_rel): Pass new second arg of
 	R->r_offset to RESOLVE callback.
	* elf/dl-reloc.c (_dl_relocate_object: resolve): Don't let *REF
 	satisfy the reference itself if its value equals the reloc's
 	offset.

	* elf/rtld.c (dl_main): Write a newline in fatal msg.

	* Makerules (lib%.so: lib%_pic.a): Pass $(LDFLAGS.so).
1995-06-12 09:00:13 +00:00
Roland McGrath
5bf62f2d3a Thu Jun 8 02:50:26 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* elf/rtld.c [! NDEBUG] (__assert_perror_fail): New function.

	* hurd/hurdstartup.c (_hurd_startup): Fancier kludge to guess phdr
 	and user entry point addresses.

	* elf/dl-load.c (open_path): Don't do strlen on DIRPATH if it's null.
	(_dl_map_object): DT_RPATH value is relative to DT_STRTAB value.

	* Makerules (install-lib.so): Don't include libc.so.
	[$(build-shared)=yes] (install): Depend on the installed libc.so file.
	[$(build-shared)=yes] (install-no-libc.a): Make this, rather than
	install, depend on the installed $(install-lib.so) files.
	[$(build-shared)=yes] (install-lib.so): Append libc.so after that rule.

	* sysdeps/mach/hurd/dl-sysdep.c (_dl_sysdep_start): Add kludge to
 	allocate high addresses to avoid random mappings appearing there.
	(mmap): Comment out mask; always pass zero.

Tue Jun  6 13:34:53 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>

	* sysdeps/i386/dl-machine.h (ELF_MACHINE_USER_ADDRESS_MASK): New macro.
	* sysdeps/mach/hurd/dl-sysdep.c (mmap): Use it as mask in vm_map call.

	* elf/dl-error.c (_dl_catch_error): Clear *ERRSTRING and *OBJNAME
 	when successful.

	* sysdeps/mach/hurd/dl-sysdep.c (threadvars): New static variable.
	(__hurd_threadvar_max, __hurd_threadvar_stack_offset): Define these
	variables, using the `threadvars' buffer.

	* elf/dl-reloc.c: Don't dereference L->l_prev when it's null.
	* sysdeps/i386/dl-runtime.c: Likewise.

	* elf/rtld.c (dl_main): Add missing NULL terminating argument in
 	_dl_sysdep_fatal call.
	(__assert_fail): Likewise.

	* locale/Makefile (localedef-modules): Renamed ctype to
 	locale-ctype so as not to conflict with the object file for
 	ctype/ctype.c in the build directory.

	* sysdeps/i386/dl-machine.h (elf_machine_rel): If MAP->l_type is
 	lt_interpreter, first undo relocation done during bootstrapping.
1995-06-08 09:00:23 +00:00
Roland McGrath
75598ca67e Mon Jun 5 04:02:26 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* elf/elf.h (ELFMAG): Use \177 instead of \x7f.  It seems GCC
 	insists on seeing the following E as part of hex 7FE, and
 	complaining that is wider than a byte.
1995-06-05 09:00:14 +00:00
Roland McGrath
ded291197c Sun Jun 4 22:14:11 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* hurd/Makefile (sig): Added thread-self.
	* hurd/hurd.h: Declare hurd_thread_self.
	* hurd/thread-self.c: New file.

Thu Jun  1 12:17:52 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>

	* elf/rtld.c: Initialize RTLD_MAP.l_type.
	* elf/dl-reloc.c (_dl_relocate_object): Clear LAZY if relocating
 	the dynamic linker itself.
1995-06-05 03:04:45 +00:00
Roland McGrath
a1a9d21596 Tue May 30 15:52:32 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* mach/Makefile (server-interfaces): Removed notify and
 	device_reply.  For shlibs with eager binding, libmachuser.so must
 	not refer to any functions not defined in libc.
1995-05-31 13:23:14 +00:00
Jim Meyering
6f6ce652f0 Sat May 27 16:23:22 1995 Jim Meyering (meyering@comco.com)
* sysdeps/generic/memchr.c: Cast RHS to const unsigned char *
	to avoid error from Irix-4.0.5's C compiler.  From Kaveh Ghazi.
1995-05-27 20:25:22 +00:00
Roland McGrath
7cc645ed27 Fri May 26 13:00:08 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* hurd/hurdsig.c (_hurd_internal_post_signal): Don't loop to check
 	pending signals if the thread is in a critical section.  It will
 	send us a msg when it finishes.

	* sysdeps/mach/hurd/pathconf.c: New file.
	* sysdeps/mach/hurd/fpathconf.c: New file.

	* sysdeps/mach/hurd/sigaction.c: Only notify the proc server for
 	SIGCHLD when the SA_NOCLDSTOP bit actually changes.
1995-05-27 07:18:52 +00:00
Roland McGrath
a692d00365 Sun May 21 05:05:37 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* elf/Makefile (ld.so): Use -nostartfiles in addition to
 	-nostdlib.
1995-05-25 09:00:08 +00:00
Jim Meyering
3b5a810700 Sun May 21 02:01:29 1995 Jim Meyering (meyering@comco.com)
* sysdeps/generic/memchr.c: 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:08:30 +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
2b83a2a4d9 Wed May 17 16:50:21 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
Merged 1003.2 locale and localedef programs by Ulrich Drepper.
	* locale/charmap.c: New file.
	* locale/collate.c: New file.
	* locale/config.h: New file.
	* locale/ctype.c: New file.
	* locale/ctypedump.c: New file.
	* locale/hash.c: New file.
	* locale/hash.h: New file.
	* locale/iso-4217.def: New file.
	* locale/keyword.gperf: New file.
	* locale/keyword.h: New file.
	* locale/libintl.h: New file.
	* locale/locale.c: New file.
	* locale/localedef.c: New file.
	* locale/localedef.h: New file.
	* locale/locfile-lex.c: New file.
	* locale/locfile-parse.c: New file.
	* locale/messages.c: New file.
	* locale/monetary.c: New file.
	* locale/numeric.c: New file.
	* locale/token.h: New file.

	* posix/regex.c, posix/regex.h: New files, incorporated from GNU regex.
	* posix/Makefile (headers): Add regex.h.
	(routines): Add regex.
	(gpl2lgpl): Add regex.c and regex.h.

Tue May 16 17:35:07 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>

	* locale/loadlocale.c: Expect macro LOCALE_PATH to be defined,
 	instead of hard-coding "/share/locale".
1995-05-18 09:00:09 +00:00
Roland McGrath
74aa5ce576 Sat May 13 02:16:42 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* configure.in (os=gnu*): Always set elf=yes, not just for os=gnu*elf*.

Fri May 12 15:31:22 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>

	* elf/elf.h (ELFMAG, SELFMAG): New macros.

Fri May 12 11:24:53 1995  Michael I Bushnell  <mib@duality.gnu.ai.mit.edu>

	* hurd/alloc-fd.c (_hurd_alloc_fd): Don't reduce FIRST_FD in
	the case where it starts out less than _hurd_dtablesize.

Thu May 11 20:51:05 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>

	* hurd/alloc-fd.c (_hurd_alloc_fd): When expanding the dtable,
 	make sure the new size exceeds FIRST_FD.
1995-05-15 09:00:08 +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
1d26b22c83 Tue May 9 01:26:52 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* sysdeps/i386/elf/start.S (__data_start): Define this symbol as
 	the first thing in .data.

	* sysdeps/mach/_strerror.c (_strerror_internal): Eschew sprintf.

	* hurd/hurdstartup.h: New file.

	* sysdeps/i386/elf/start.S: Give two operands to `testl' when they
 	are the same.  Use `jz' instead of `jeq'.

	* Makeconfig (config.make): Depend on config.status, and run it to
 	update.
	(config.status): New target; depend on configure.
	If target (config.status) exists, run it with --recheck to update;
 	if not, give error msg saying to run confiugre by hand.
	* Makerules [$(sysd-Makefile-sysdirs) != $(sysdirs)]
 	(sysd-Makefile-force): Set this variable to FORCE in this case, to
 	force a rebuild of sysd-Makefile.
	(sysd-Makefile): Depend on $(sysd-Makefile-force).
	Write into the file sysd-Makefile-sysdirs:=$(sysdirs).
	[$(sysd-rules-sysdirs) != $(sysdirs)] (sysd-rules-force): Set this
	variable to FORCE in this case, to force a rebuild of sysd-rules.
	(sysd-rules): Depend on $(sysd-rules-force).
	Write into the file sysd-rules-sysdirs:=$(sysdirs).
	
	* Makerules (LDFLAGS-c.so): Change ld option -interp to
	-dynamic-linker.	

	* Makerules (do-install-program): New canned sequence.
	(install-bin, install-sbin): Use it.
	(install for lib*.so): Use it instead of $(do-install).
	Fix .so installation rules to handle lib*.so and *.so, deal with
 	$(libprefix) right, and install *.so as *.so$($(*.so)-version);
 	i.e. "libc.so-version = .1".

Mon May  8 05:10:25 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>

	* elf/do-rel.h: New file, split out of dynamic-link.h.
	* elf/Makefile (distribute): Add do-rel.h.
1995-05-09 22:52:19 +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
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
b96bdcd7d9 * hurd/hurdsig.c: Use assert_perror for many calls which should
never fail and previously were not checked.
1995-04-21 02:54: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
67be1ecfe5 . 1995-04-20 09:00:09 +00:00
Roland McGrath
f4153e135a Wed Apr 19 18:12:56 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* configure.in: Move $os tests to set $elf et al earlier, before
 	construction of $sysnames.  Instead of prepending MACHINE/elf to
 	$sysnames, append &/elf after each elt appended to $mach.
Tue Apr 18 14:00:19 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1995-04-19 23:46:03 +00:00
Brendan Kehoe
0ac2e7d88b * time/tzset.c (__tzname, __daylight, __timezone): Don't check HAVE_WEAK_SYBMOLS for doing weak_alias.
Wed Apr 19 18:40:11 1995  Brendan Kehoe  (brendan@zen.org)

	* time/tzset.c (__tzname, __daylight, __timezone): Don't check
	HAVE_WEAK_SYBMOLS for doing weak_alias.
1995-04-19 23:41:29 +00:00
Roland McGrath
d02907df8e * libc-symbols.h (strong_alias_asm, strong_alias): Use
ASM_GLOBAL_DIRECTIVE on the alias.
1995-04-18 21:07:40 +00:00
Roland McGrath
65b3cbcba7 Tue Apr 18 14:00:19 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* configure.in (libc_cv_asm_global_directive): New check to define
 	ASM_GLOBAL_DIRECTIVE.
	* config.h.in: Add #undef ASM_GLOBAL_DIRECTIVE.

	* sysdeps/unix/make_errlist.c (main): Don't generate "#ifdef
 	HAVE_WEAK_SYMBOLS" #defns.
1995-04-18 20:16:50 +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
eb712cf192 Fri Apr 14 15:53:46 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* malloc/malloc.c (register_heapinfo) [__GNUC__]: Use __inline__
 	in place of inline.
1995-04-14 20:07:31 +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
6e33fad374 Thu Apr 13 09:45:01 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* elf/libelf.h (elf_hash): Use XOR instead of ANDN when the bits
 	being cleared are already known to be set.  Thanks Ulrich.
1995-04-14 01:13:53 +00:00
Roland McGrath
6432a7793f Wed Apr 12 23:27:22 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* posix/environ.c: Add weak alias `_environ'.
1995-04-13 09:00:11 +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
217d85b9c8 Mon Apr 10 14:53:15 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* stdlib/strtod.c (STRTOF): Use extra macro to make STRTOF's #defn
 	a weak symbol instead of literal "STRTOF".

	* locale/setlocale.c: Work around ld bug: don't weakify refs to
 	_nl_{current,C}_*.
1995-04-10 18:58:00 +00:00
Roland McGrath
8c0dc19cc6 Sun Apr 9 01:24:33 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* Makerules (+depfiles): Translate %.so to %.o in $(extra-objs).

	* malloc/free.c [emacs] (__malloc_safe_bcopy): Define to safe_bcopy.
	* malloc/realloc.c (__malloc_safe_bcopy): Undefine before defining.

	* malloc/free.c (memmove, __malloc_safe_bcopy): Do include these
 	#ifdef emacs, but only #ifndef memmove.
	* malloc/realloc.c [emacs] (__malloc_safe_bcopy): Just #define to
 	safe_bcopy.
	(memmove): Define only if undefined.

	* stdio/_itoa.h (_EXTERN_INLINE): Define if undefined.
	(_itoa): Use it in defn.
1995-04-10 09:00:08 +00:00
Roland McGrath
6aa8372e16 * extra-lib.mk (install-lib, extra-objs, alltypes-$(lib)): Make
sure these are simply-expanded variables.
1995-04-08 19:23:00 +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
8ab69eb330 * malloc/free.c (__malloc_safe_bcopy, memmove): Don't define
#ifdef emacs.
	* malloc/realloc.c: Likewise.

	* stdio/_itoa.c (_EXTERN_INLINE): Define to empty before #include
 	"_itoa.h".
	(_itoa): Function removed.
1995-04-08 16:28:41 +00:00
Roland McGrath
73fbb9a523 Sat Apr 8 00:40:59 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* malloc/free.c: Remove use of `assert'.

	* malloc/realloc.c [! emacs] (safe_bcopy): Renamed to
 	__malloc_safe_bcopy; #define safe_bcopy.
	* malloc/free.c: Cope with systems lacking `memmove'.
	(_free_internal): Cast result of _malloc_internal.
1995-04-08 04:47:54 +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
c0fef53b1e * misc/login_tty.c [! TIOCSCTTY]: Try an emulation using ttyname
and open.
1995-04-05 04:39:51 +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
c4bf5a3e9a * posix/execvp.c: Don't use stat to search path; just try execv
until it works.
1995-04-03 09:00:10 +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
Roland McGrath
193ce8dcd6 * Makerules (lib%.so: lib%_pic.a): Pass -L options for subdir and
parent objdirs.

	* extra-lib.mk (object-suffixes-$(lib)): New variable, produced by
 	filtering out $($(lib)-inhibit-o); use that instead of
 	$(object-suffixes) in all the other variables.
1995-04-01 09:07:31 +00:00
Roland McGrath
2f8033d606 Sat Apr 1 00:08:06 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* locale/loadlocale.c (_nl_load_locale) [MAP_FILE]: Define it zero
 	if undefined.

	* string/strxfrm.c: Just copy the string (for now).
	* string/strcoll.c: Just call strcmp (for now).

	* mach/Makefile (lock): Add mutex-init.
	* mach/mutex-solid.c (_cthread_mutex_lock_routine,
 	_cthread_mutex_unlock_routine): Variables removed.
	(__mutex_lock_solid, __mutex_unlock_solid): Don't use them; just stub.
	(__mutex_init): Function moved to new file mutex-init.c.
	* mach/mutex-init.c: New file, broken out of mutex-solid.c.
1995-04-01 09:01:49 +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
b1f1136175 Thu Mar 30 01:38:00 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* elf/elf.h (STN_UNDEF): New macro (distinct from SHN_UNDEF, though
 	both are zero).

	* elf/dlfcn.h: New file.
1995-03-30 10:00:08 +00:00
Roland McGrath
ea7d993862 * Make-dist (README): Commit it to CVS if there is a CVS directory. 1995-03-29 16:58:35 +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
c316b48636 * mach/Makefile (headers): Add mach/mach_traps.h.
* Makerules ($(installed-libcs) rule): Fix typos.
1995-03-27 17:44:04 +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
d365fd2cfa * misc/Makefile (headers): Add utmp.h.
* misc/utmp.h: New file, incorporated from 4.4-Lite.
1995-03-24 07:59:23 +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
49e522bfb8 Tue Mar 21 00:14:27 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* locale/loadlocale.c (_nl_load_locale): If LOCALE/LC_* is a
 	directory, open LOCALE/LC_*/SYS_LC_* instead.

	* stdio/fpioconst.c, stdio/fpioconst.h, stdio/gmp-impl.h,
	stdio/gmp.h, stdio/longlong.h, stdio/mp_clz_tab.c,
	stdio/gen-mpn-copy: Files moved to stdlib.
	* stdio/Makefile: All mpn stuff moved to stdlib/Makefile.
	* stdio/printf_fp.c: Use ../stdlib to find fpioconst.h and gmp
 	headers.
	* stdlib/strtod.c: Don't use ../stdio to find fpioconst.h and gmp
 	headers.
1995-03-21 07:58:50 +00:00
Roland McGrath
6bf028786c * Makefile (parent-mostlyclean): Don't use $(libc.a).
(parent-clean): Use $(objpfx) to find sysd-*.
	* Rules (generated): Append dummy.o dummy.c.
1995-03-21 04:26:12 +00:00
Roland McGrath
4788ab4637 * Makerules (lib): Depend on lib-noranlib.
(lib-noranlib): Depend on $(install-lib) in objdir.
	(common-mostlyclean): Remove $(install-lib) and stub-$(subdir)
	from objdir.  Don't remove TAGS; it comes in the distribution.

	* malloc/malloc.c (morecore): Save errno around call to
 	_realloc_internal.  Don't account for the additional new blocks of
 	the info table itself when choosing the new table size for the
 	first crack; if it succeeds, the new blocks will have been found
 	in existing free space already described by the existing info
 	table.

	Changes from Germano Caronni <caronni@tik.ethz.ch>:
	Changes from Germano Caronni <caronni@tik.ethz.ch>:
1995-03-21 04:19:38 +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
Roland McGrath
a38f13baf0 * Makefile (subdirs): Put elf last. 1995-03-18 07:23:06 +00:00
Roland McGrath
693e7b964f Fri Mar 17 12:58:37 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* sunrpc/Makefile (install-lib): Variable removed.
	(rpcsvc-objs): Variable removed.
	(extra-objs): Don't include $(rpcsvc-objs).
	(extra-libs): New variable, contains librpcsvc.
	(librpcsvc-routines): New variable.
	(librpcsvc-inhibit-o): New variable, contains .so.
	(omit-deps): Set this to $(librpcsvc-routines).
	($(objpfx)rpcgen): Don't use $(libc.a).
	(lib, $(objpfx)librpcsvc.a): Targets removed.

	* o-iterator.mk, extra-lib.mk: New files.
	* Makerules (o-iterator): New variable.
	[extra-libs]: Include extra-lib.mk to generate rules for each word
	of $(extra-libs).
	* Makefile (distribute): Add extra-lib.mk, o-iterator.mk.

	(IMPLICIT_ONE, *_MAX_10_EXP_LOG): Macros removed; no longer needed.
	* stdio/fpioconst.c, stdio/fpioconst.h: Don't use
 	LDBL_MAX_10_EXP_LOG; LAST_POW10 defines the maximal available
 	exponent.
1995-03-17 18:42:51 +00:00
Roland McGrath
68b3ef49b9 Handle 80-bit denormalized numbers correctly.
* stdlib/strtod.c, stdlib/strtof.c, stdlib/strtold.c:
	* stdlib/strtod.c (RETURN): Add parentheses around return value.
	(round_and_return): Correct handling of denormalized numbers.
1995-03-17 17:40:40 +00:00
Ulrich Drepper
b3fe135050 Fri Mar 17 13:28:04 1995 Ulrich Drepper <drepper@ipd.info.uni-karlsruhe.de>
* sysdeps/ieee754/ldbl2mpn.c (__mpn_extract_long_double):
	Handle 80-bit denormalized numbers correct.

	* stdlib/strtod.c,stdlib/strtof.c,stdlib/strtold.c:
	[IMPLICIT_ONE,*_MAX_10_EXP_LOG]: not needed anymore.
	* stdlib/strtod.c (RETURN): parenthesis around return value.
	(round_and_return): correct handling of denormalized numbers.
	(__strtod_internal): don't check for grouping when not requested
	while returning 0.0.

	* stdio/fpioconst.[ch]: [LDBL_MAX_10_EXP_LOG]: don't use it.
	LAST_POW10 defines the maximal available exponent.

	* stdlib/{atof,atoi,atol}.c: use __strtoX_internal.
1995-03-17 17:15:40 +00:00
Roland McGrath
c45e5aa9a4 * stdlib/strtold.c (STRTOF): Set to strtold, not __strtold.
(strtold): Remove weak alias.
	* stdlib/strtof.c (STRTOF): Set to strtof, not __strtof.
	(strtof): Remove weak alias.
1995-03-16 07:21:33 +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
51f7530228 Support building several flavors of objects and libraries.
* Makerules (libtypes, object-suffixes): New variables.
	(libtype.*, CFLAGS-*, CPPFLAGS-*): New variables for each object
	suffix.
	(CFLAGS, CPPFLAGS): Append $(C{,CPP}FLAGS-$(suffix $@)).
	(%.so, %.po, %.go): New compilation rules for %.S, %.s, %.c.
	(close-check-inhibit-asm): Append a semicolon.
	(sysd-rules): Generate rules for each object suffix.
	(compile.S, compile.c): Always assume gcc.
	(OUTPUT_OPTION): Define unconditionally.
	(+make-deps): In generated rule, produce a dependent for each
	object suffix.
	(.SUFFIXES): Add $(object-suffixes) in place of .o.
	(.PRECIOUS): Make all suffix flavors precious.
	($(libc.a)): Target removed.
	(lib): Depend on each enabled libtype.
	(libobjs, objects, objs): Depend on all the enabled object flavors.
	(lib%.a): New pattern rule.
	[$(build-shared)=yes] (lib%.so: lib%_pic.a): New pattern rule.
	(stamp-$(subdir)): Rewritten to a pattern rule for stamp.%-$(subdir)
	to make one for each flavor; library dep rule likewise rewritten.
	($(libc.a)(__.SYMDEF)): Target replaced with one target for each
	flavor.
	(symdef.%): New pattern rule; helper for __.SYMDEF targets.
	(installed-libcs): New variable.
	(install): Depend on that instead of
	$(libdir)/lib$(libprefix)$(libc-name).a;
	that file's rule rewritten to make each enabled libtype.
	(install-lib.so): New variable, filters lib%.so from $(install-lib).
	(install-lib): Filter out lib%.so after setting install-lib.so.
	[$(build-shared)=yes] (install): Install $(install-lib.so).
	(common-mostlyclean): Remove all flavors of objects.
1995-03-13 07:42: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
424f8c09fa Sun Mar 12 18:21:10 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* malloc/malloc.h (_malloc_internal, _realloc_internal): Declare these.
	* malloc/realloc.c (_realloc_internal): Renamed from realloc;
 	don't use __realloc_hook.
	(realloc): New function; call __realloc_hook ?: _realloc_internal.
	* malloc/malloc.c (_malloc_internal): Renamed from malloc;
	don't use __malloc_hook.
	(malloc): New function; call __malloc_hook ?: _malloc_internal.
	(initialize): Set up _heaplimit to cover the _heapinfo table.
	(morecore_recursing): New static variable.
	(morecore): If that is set, return null immediately.
	When growing the info table, before getting new core from the
 	system for it, set morecore_recursing and try moving _heapinfo
 	with _realloc_internal.  When that fails and we get new core, set
 	_heaplimit to cover the core for the new _heapinfo table.
	(register_heapinfo): New function.  Record the _heapinfo table's
	own blocks in that table and in the statistics variables.
	(initialize, _malloc_internal): Use it after allocating new table.

Fri Mar 10 22:26:28 1995  Jim Meyering  (meyering@comco.com)

	* sysdeps/generic/memchr.c: Remove ansidecl.h and clean up for use
	by other packages.
	[LONG_MAX <= LONG_MAX_32_BITS]: Don't compile 64-bit code.

	* mach/errorlib.h (errors): Use const for decl.

	* time/tzfile.c (uc2ul, _uc2ul): Macros removed.
	(decode): New inline function; decode signed 32-bit integers, and
	sign-extend properly when long is longer than 32 bits.
	(__tzfile_read): Changed all uses of uc2ul to decode.
	Decode the transition times properly when sizeof (time_t) > 4.

	* stdio/vfprintf.c [USE_IN_LIBIO] (PAD): Use return value of _IO_padn.
	(buffered_vfprintf): Remove line buffer when flush failed.
1995-03-13 00:37:23 +00:00
Roland McGrath
cfe33fd938 Fri Mar 10 13:31:29 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* stdio/printf.h: Doc fixes.  Don't #include <stddef.h>.
	(printf_function): Make last arg ARGS a vector of pointers instead of a
	pointer to va_list.

Fri Mar 10 13:46:25 1995  Ulrich Drepper  <drepper@ipd.info.uni-karlsruhe.de>

	* stdio/vfprintf.c (PAD): use return value of _IO_padn.
	(buffered_vfprintf): remove line buffer when flush failed.

Fri Mar 10 00:04:55 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>

	* time/tzfile.c (struct ttinfo): New member `isgmt'.
  	(__tzfile_read): Read isgmt flags for each type.
  	(__tzfile_default): When using TZDEFRULES DST rules, adjust
 	transition times according to the isstd and isgmt flags for the
 	types of each transition, and adjust each transition to point to
 	type index either 0 or 1.  Reset type indices 0 and 1 to describe
 	the user's settings.
1995-03-10 18:32:00 +00:00
Roland McGrath
40deae0847 * locale/categories.def (LC_CTYPE): Merge CLASS_EB and CLASS_EL
into just CLASS.  Add standard/optional flag to all items.

	* locale/localeinfo.h (_NL_CURRENT_DEFINE): Fix typo.

	* ctype/ctype.h [__BYTE_ORDER == __LITTLE_ENDIAN] (_ISbit):
 	Rearrange defn to satisfy compiler.

	* locale/localeinfo.h: Declare _nl_current.
1995-03-10 05:01:07 +00:00